blob: 70f25f9548455fec902cd232599caf19a460f4be [file] [log] [blame]
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +01001#!/bin/bash
Pierre-Hugues Hussonbfff2a32018-06-04 21:19:12 +02002set -e
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +01003
4repo="https://f-droid.org/repo/"
q0kHaNed934742019-11-11 13:59:50 +00005reponano="https://nanolx.org/fdroid/repo/"
q0kHaNa940a1a2019-11-11 22:15:26 +00006repomicrog="https://microg.org/fdroid/repo/"
kisekinopureyabb4217d2019-12-10 20:47:31 +03007repobromite="https://fdroid.bromite.org/fdroid/repo/"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +01008
9addCopy() {
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010010cat >> Android.mk <<EOF
11include \$(CLEAR_VARS)
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010012LOCAL_MODULE := $2
13LOCAL_MODULE_TAGS := optional
14LOCAL_SRC_FILES := bin/$1
15LOCAL_MODULE_CLASS := APPS
Pierre-Hugues Hussonea4517b2017-12-04 16:45:04 +010016LOCAL_CERTIFICATE := PRESIGNED
Pierre-Hugues Husson3811d162017-12-04 23:07:00 +010017LOCAL_OVERRIDES_PACKAGES := $3
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010018include \$(BUILD_PREBUILT)
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010019
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010020EOF
21echo -e "\t$2 \\" >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010022}
23
24rm -Rf bin apps.mk
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010025cat > Android.mk <<EOF
26LOCAL_PATH := \$(my-dir)
27
28EOF
29echo -e 'PRODUCT_PACKAGES += \\' > apps.mk
30
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010031mkdir -p bin
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010032#downloadFromFdroid packageName overrides
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010033downloadFromFdroid() {
34 mkdir -p tmp
35 if [ ! -f tmp/index.xml ];then
36 #TODO: Check security keys
Pierre-Hugues Husson3db36f72019-04-01 23:14:30 +020037 wget --connect-timeout=10 $repo/index.jar -O tmp/index.jar
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010038 unzip -p tmp/index.jar index.xml > tmp/index.xml
39 fi
Pierre-Hugues Husson33295452018-06-04 21:19:47 +020040 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
41 apk="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[versioncode="'"$marketvercode"'"]' -v ./apkname tmp/index.xml || xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[1]' -v ./apkname tmp/index.xml)"
Pierre-Hugues Husson50fcfc22019-04-03 00:01:24 +020042 while ! wget --connect-timeout=10 $repo/$apk -O bin/$apk;do sleep 1;done
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010043 addCopy $apk $1 "$2"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010044}
45
q0kHaNed934742019-11-11 13:59:50 +000046#downloadFromNanodroid packageName overrides
47downloadFromNanodroid() {
q0kHaNed934742019-11-11 13:59:50 +000048 if [ ! -f tmp/index.xml ];then
49 #TODO: Check security keys
50 wget --connect-timeout=10 $reponano/index.jar -O tmp/index.jar
51 unzip -p tmp/index.jar index.xml > tmp/index.xml
52 fi
Gokhan Ozdemire9f7f962019-11-11 17:03:39 +030053 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
54 apk="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[versioncode="'"$marketvercode"'"]' -v ./apkname tmp/index.xml || xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[1]' -v ./apkname tmp/index.xml)"
q0kHaNed934742019-11-11 13:59:50 +000055 while ! wget --connect-timeout=10 $reponano/$apk -O bin/$apk;do sleep 1;done
56 addCopy $apk $1 "$2"
57}
58
59#downloadFromNanodroid packageName overrides
60downloadFrommicrog() {
q0kHaNed934742019-11-11 13:59:50 +000061 if [ ! -f tmp/index.xml ];then
62 #TODO: Check security keys
q0kHaNa940a1a2019-11-11 22:15:26 +000063 wget --connect-timeout=10 $repomicrog/index.jar -O tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +000064 unzip -p tmp/index.jar index.xml > tmp/index.xml
65 fi
q0kHaNa940a1a2019-11-11 22:15:26 +000066 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
Gokhan Ozdemire9f7f962019-11-11 17:03:39 +030067 apk="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[versioncode="'"$marketvercode"'"]' -v ./apkname tmp/index.xml || xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[1]' -v ./apkname tmp/index.xml)"
q0kHaNa940a1a2019-11-11 22:15:26 +000068 while ! wget --connect-timeout=10 $repomicrog/$apk -O bin/$apk;do sleep 1;done
q0kHaNed934742019-11-11 13:59:50 +000069 addCopy $apk $1 "$2"
70}
kisekinopureyabb4217d2019-12-10 20:47:31 +030071#downloadFromFdroid packageName overrides
72downloadFromBromite() {
73 mkdir -p tmp
74 if [ ! -f tmp/index.xml ];then
75 #TODO: Check security keys
76 wget --connect-timeout=10 $repobromite/index.jar -O tmp/index.jar
77 unzip -p tmp/index.jar index.xml > tmp/index.xml
78 fi
79 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
80 apk="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[versioncode="'"$marketvercode"'"]' -v ./apkname tmp/index.xml || xmlstarlet sel -t -m '//application[id="'"$1"'"]/package[1]' -v ./apkname tmp/index.xml)"
81 while ! wget --connect-timeout=10 $repobromite/$apk -O bin/$apk;do sleep 1;done
82 addCopy $apk $1 "$2"
83}
q0kHaNed934742019-11-11 13:59:50 +000084
85
q0kHaNa940a1a2019-11-11 22:15:26 +000086downloadFromFdroid org.fdroid.fdroid
kisekinopureyabb4217d2019-12-10 20:47:31 +030087
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010088#YouTube viewer
89downloadFromFdroid org.schabi.newpipe
q0kHaN77f09432019-11-11 12:36:35 +000090#QKSMS
91downloadFromFdroid com.moez.QKSMS "messaging"
kisekinopureyabb4217d2019-12-10 20:47:31 +030092
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010093#Navigation
94downloadFromFdroid net.osmand.plus
kisekinopureyabb4217d2019-12-10 20:47:31 +030095
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010096#Calendar
q0kHaN77f09432019-11-11 12:36:35 +000097downloadFromFdroid ws.xsoh.etar "Calendar"
kisekinopureyabb4217d2019-12-10 20:47:31 +030098
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010099#Keyboard/IME
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +0100100downloadFromFdroid com.menny.android.anysoftkeyboard "LatinIME OpenWnn"
Pierre-Hugues Hussonac9e4d92017-12-04 16:47:37 +0100101#Play Store download
kisekinopureyabb4217d2019-12-10 20:47:31 +0300102downloadFromFdroid com.aurora.store
103
q0kHaN77f09432019-11-11 12:36:35 +0000104#Phonograph
105downloadFromFdroid com.kabouzeid.gramophone "Eleven"
q0kHaNa940a1a2019-11-11 22:15:26 +0000106#Alarmio
kisekinopureya13634d72019-12-12 01:23:53 +0300107downloadFromFdroid me.jfenn.alarmio "GoogleClock DeskClock"
q0kHaNa940a1a2019-11-11 22:15:26 +0000108#Simple Gallery
109downloadFromFdroid com.simplemobiletools.gallery.pro "Gallery2"
110#Simple Calculator
111downloadFromFdroid com.simplemobiletools.calculator "ExactCalculator"
kisekinopureya13634d72019-12-12 01:23:53 +0300112#Mozilla Nlp
113downloadFromFdroid org.microg.nlp.backed.ichnaea
kisekinopureyabb4217d2019-12-10 20:47:31 +0300114#Nominatim Nlp
115downloadFromFdroid org.microg.nlp.backend.nominatim
q0kHaNa940a1a2019-11-11 22:15:26 +0000116
117rm -rf tmp/index.xml
118rm -rf tmp/index.jar
kisekinopureyabb4217d2019-12-10 20:47:31 +0300119
q0kHaNed934742019-11-11 13:59:50 +0000120#MPV
q0kHaNa940a1a2019-11-11 22:15:26 +0000121downloadFromNanodroid is.xyz.mpv
122rm -rf tmp/index.xml
123rm -rf tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +0000124#MicroG service core
q0kHaNa940a1a2019-11-11 22:15:26 +0000125downloadFrommicrog com.google.android.gms
q0kHaNed934742019-11-11 13:59:50 +0000126#MicroG droidguard helper
127downloadFrommicrog org.microg.gms.droidguard
q0kHaNa940a1a2019-11-11 22:15:26 +0000128#MicroG services framework proxy
q0kHaNed934742019-11-11 13:59:50 +0000129downloadFrommicrog com.google.android.gsf
kisekinopureya13634d72019-12-12 01:23:53 +0300130#Fakestore
131downloadFrommicrog com.android.vending
kisekinopureyabb4217d2019-12-10 20:47:31 +0300132
133rm -rf tmp/index.xml
134rm -rf tmp/index.jar
135#Web browser
136downloadFromBromite org.bromite.bromite "Browser2 QuickSearchBox Jelly"
137
138
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +0100139#TODO: Some social network?
140#Facebook? Twitter? Reddit? Mastodon?
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +0100141echo >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100142
143rm -Rf tmp
kisekinopureya13634d72019-12-12 01:23:53 +0300144
145