blob: 6155af735d4825460b5cb27a85d9a6c4868f01fd [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}
kisekinopureyae47d0882020-01-19 21:44:48 +030084#FDroid
q0kHaNa940a1a2019-11-11 22:15:26 +000085downloadFromFdroid org.fdroid.fdroid
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010086#YouTube viewer
87downloadFromFdroid org.schabi.newpipe
q0kHaN77f09432019-11-11 12:36:35 +000088#QKSMS
89downloadFromFdroid com.moez.QKSMS "messaging"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010090#Navigation
91downloadFromFdroid net.osmand.plus
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010092#Calendar
q0kHaN77f09432019-11-11 12:36:35 +000093downloadFromFdroid ws.xsoh.etar "Calendar"
kisekinopureyae47d0882020-01-19 21:44:48 +030094#DAV sync
95downloadFromFdroid at.bitfire.davdroid
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010096#Keyboard/IME
kisekinopureyae47d0882020-01-19 21:44:48 +030097#downloadFromFdroid com.menny.android.anysoftkeyboard "LatinIME OpenWnn"
Pierre-Hugues Hussonac9e4d92017-12-04 16:47:37 +010098#Play Store download
kisekinopureyabb4217d2019-12-10 20:47:31 +030099downloadFromFdroid com.aurora.store
q0kHaN77f09432019-11-11 12:36:35 +0000100#Phonograph
101downloadFromFdroid com.kabouzeid.gramophone "Eleven"
kisekinopureya6a3d0362020-01-19 21:35:08 +0300102#Alarmio
103downloadFromFdroid me.jfenn.alarmio "GoogleClock DeskClock"
q0kHaNa940a1a2019-11-11 22:15:26 +0000104#Simple Gallery
105downloadFromFdroid com.simplemobiletools.gallery.pro "Gallery2"
106#Simple Calculator
107downloadFromFdroid com.simplemobiletools.calculator "ExactCalculator"
kisekinopureya13634d72019-12-12 01:23:53 +0300108#Mozilla Nlp
kisekinopureyae47d0882020-01-19 21:44:48 +0300109downloadFromFdroid org.microg.nlp.backend.ichnaea
kisekinopureyabb4217d2019-12-10 20:47:31 +0300110#Nominatim Nlp
111downloadFromFdroid org.microg.nlp.backend.nominatim
q0kHaNa940a1a2019-11-11 22:15:26 +0000112
113rm -rf tmp/index.xml
114rm -rf tmp/index.jar
kisekinopureyabb4217d2019-12-10 20:47:31 +0300115
q0kHaNed934742019-11-11 13:59:50 +0000116#MPV
q0kHaNa940a1a2019-11-11 22:15:26 +0000117downloadFromNanodroid is.xyz.mpv
118rm -rf tmp/index.xml
119rm -rf tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +0000120#MicroG service core
q0kHaNa940a1a2019-11-11 22:15:26 +0000121downloadFrommicrog com.google.android.gms
q0kHaNed934742019-11-11 13:59:50 +0000122#MicroG droidguard helper
123downloadFrommicrog org.microg.gms.droidguard
q0kHaNa940a1a2019-11-11 22:15:26 +0000124#MicroG services framework proxy
q0kHaNed934742019-11-11 13:59:50 +0000125downloadFrommicrog com.google.android.gsf
kisekinopureya13634d72019-12-12 01:23:53 +0300126#Fakestore
127downloadFrommicrog com.android.vending
kisekinopureyabb4217d2019-12-10 20:47:31 +0300128
129rm -rf tmp/index.xml
130rm -rf tmp/index.jar
131#Web browser
Jon Westbb76e422020-05-16 19:06:04 -0400132# downloadFromBromite org.bromite.bromite "Browser2 QuickSearchBox Jelly"
kisekinopureyabb4217d2019-12-10 20:47:31 +0300133
134
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +0100135#TODO: Some social network?
136#Facebook? Twitter? Reddit? Mastodon?
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +0100137echo >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100138
139rm -Rf tmp
kisekinopureya13634d72019-12-12 01:23:53 +0300140
141