Cubapk, a repomaker for two years

repo

#1

Hello Guys, my name is Raul. Recently i discover the repomaker in the Fdroid repository. I would like to share with you that i have a very similar approach running in production for about two years now hosting Cuban apps.
The address is Cubapk.com, it is basically a Django processing the apk using fdroidserver into a script. This was build from scratch.
I have added other thinks you can browse, like jailbreaks IOs apps and soon ill have another section.

I have an fdroid clone with the logo that can be downloaded two.

I will be pleased to share my experiences.


#2

What’s your repo address to add to F-Droid?


#3

this one:

http://cubapk.com/repo/


#4

Some context about software distribution in Cuba: https://www.f-droid.org/en/2017/07/03/cuba.html


#5

There’s actually a Spanish translation of it, to mention it here.


#6

Hola @raulperezalejo:

welcome to the forum! That’s pretty nice to hear that you built this kind of app store powered by F-Droid. Did you know the article about F-Droid in Cuba one year ago linked by @relan in a previous post? We would be happy to hear from you how you go with F-Droid, what kind of problems you encountered and how you’ve solved them. Is the source code of the website or the F-Droid fork published somewhere? Feel free to talk about your experiences here!


#7

http://cubapk.com/repo/

“Server Error (500)”? Also, not httpS://cubapk.com/repo/ ? https://letsencrypt.org/ may be useful.…


#8

Very interesting, thanks for sharing @raulperezalejo! We want to support more projects like yours, so hearing about your experience is very useful to us. Do you think it would ever make sense to merge your work and Repomaker?


#9

That’s because directory listing is deactivated. Cubapk seems to still use a older version of F-Droid because there’s only an index of the former version available.


#10

Hello Guys, sorry for the late replay, ill share with you a little bit of history.

before star, the address i gave was for adding to you fdroid client and fetch the apps, i am using the new version of fdroidserver (i think): http://cubapk.com/repo/index.jar.

my stack:
Python 3.5
Django 1.11
Grappelli for the admin(no responsive gggggrrrrrr)
FdroidServer (updated to the latest version some weeks ago)
FdroidClient (a little unupdated)

I started this project two years ago with a friend, i had the idea and he help me to implemented since my knowledge about python was very poor or none, my experience as software development has been mostly with Ruby. My role was taking to developers, marketing(if so), getting as much cuban apps as possible, etc. At that time we where only using fdroid server to strip the app, taking out the metadata and store it into our database. Then after three month my friend left to Germany and i had to get my hand dirty with the code, maintaining it, adding new features, fixing others and so far…
After about a year i had the idea of incorporate F-Droid client into my ecosystem, and challenges start to raise.
The distribution of the stored icons did not fit the fdroid client structure and i had to fix that so support former uploaded apps. Writing the metadata file was also challenging i had to create them in an after save callback, but i had some troubles to update it when enabling or disabling and app.

the client app was very challenging, i haven’t ever written a line of code for any mobile app, this was my first experience. I wanted to have it as com.cubapk.app and i have to change a lot of file with no idea if this could be made easier or any other way, i also wired the url of the jar file to and change the icon. this was one of the things that force me to update FdroidServer because i wanted to have support for screen shoots of apps and had to update it in a spring. I haven’'t published the code but not for any particular reason other than not been shame for my code signs…hahahaha.

At the begging was a hobby but with a wife and two kids every cent count, the cost is very low, but anyway cost me something so i decided to put ads into my site after a year or so, and this is one of my question. Can i add ADS to the fdroid client? does the license allow me that? In order to been able to maintain the site i have to make it autosustentable since publishing and downloading apps is free and no plan to have paid apps since the embargo does not allow Cuba to have any or that.

I also figurated out a similar way to strip jailbraked IOs apps, i knew there where a few but i wanted to support them, since everyone deserve a place in the world. there is a python software that help me with that. I am having some troubles processing the images inside IPAs because they are coded a different way but no time to look closer.

Next chapter is, this project inspired a clone software named Apklis only viewable from inside Cuba, and created by a University(read goverment), the facebook page with some images can be found in here they are an open competitor of my website and not a paired one. the cost of accessing *.cu is 0.10cuc/h and accessing Internet(my site) is 1cuc/h, Apkis has count with all media inside Cuba with a big intention of boosting it. But anyway no problem, are the rules and my project have to leave with it…

Next Chapter: Last section i added only a month ago is for cuban youtubers, the main idea here to curate the list from youtube with a filtered one, mine, this can be viewed in here. I am fetching the data from the api with a cron task, and here is where i am putting more effort in, since i have pending to create my own formula for a ranking and creating an app. There are some open source apps in github i could use but not sure with one to use.

Yes, i discovered letsencrypt some time ago, it is something that i have in todo.

Concluding i have a running software that works with minimum interaction that is the objective, with good and bad things like any software. Google Analitys says that bout 50% of my visit are by organic search that please me a lot…

well guys this is more or less the history of a website that has a lot to greed to Fdroid, describing more less all i have done is kind of honoring the code and all the people that has contributed to this wonderful project.

hope to hear from you.
Best, Raul


#11

By the way:

@NicoAlt, yes i read the article about the use of F-Droid, but not sure if it is been used now, no the website code is not published

@hans, yes i have in plan take a closer look at repomaker and if it feets me, ill use, it for sure, but will take me a little time


#12

we’re here to answer any questions you might have when looking at Repomaker.


#13

And to answer your other questions:

  • custom builds of F-Droid are also known as “whitelabel” builds. We have recently done a bunch of work to make that a lot easier to do: https://f-droid.org/docs/Whitelabel_Builds/

  • there are also now clean methods for including graphics and screenshots for apps: https://f-droid.org/docs/All_About_Descriptions_Graphics_and_Screenshots/

  • the GPLv3 license does allow putting ads in. It would also allow you to put in a payment mechanism. An very simple way to start trying to get some revenue would be to include donation URLs in the apps. I’d really like to have a way to push users to donate more in the client app, but still allow them to skip it as needed.

  • I’ve never worked with iOS IPA files, but any file can be included in an fdroid repo. We’d love to have automatic metadata reading for any file type.