blob: ceeba00fa521a1463935ac47db79c5b9b258b2b6 [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/"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +01007
8addCopy() {
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +01009cat >> Android.mk <<EOF
10include \$(CLEAR_VARS)
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010011LOCAL_MODULE := $2
12LOCAL_MODULE_TAGS := optional
13LOCAL_SRC_FILES := bin/$1
14LOCAL_MODULE_CLASS := APPS
Pierre-Hugues Hussonea4517b2017-12-04 16:45:04 +010015LOCAL_CERTIFICATE := PRESIGNED
Pierre-Hugues Husson3811d162017-12-04 23:07:00 +010016LOCAL_OVERRIDES_PACKAGES := $3
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010017include \$(BUILD_PREBUILT)
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010018
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010019EOF
20echo -e "\t$2 \\" >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010021}
22
23rm -Rf bin apps.mk
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010024cat > Android.mk <<EOF
25LOCAL_PATH := \$(my-dir)
26
27EOF
28echo -e 'PRODUCT_PACKAGES += \\' > apps.mk
29
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010030mkdir -p bin
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010031#downloadFromFdroid packageName overrides
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010032downloadFromFdroid() {
33 mkdir -p tmp
34 if [ ! -f tmp/index.xml ];then
35 #TODO: Check security keys
Pierre-Hugues Husson3db36f72019-04-01 23:14:30 +020036 wget --connect-timeout=10 $repo/index.jar -O tmp/index.jar
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010037 unzip -p tmp/index.jar index.xml > tmp/index.xml
38 fi
Pierre-Hugues Husson33295452018-06-04 21:19:47 +020039 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
40 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 +020041 while ! wget --connect-timeout=10 $repo/$apk -O bin/$apk;do sleep 1;done
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010042 addCopy $apk $1 "$2"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010043}
44
q0kHaNed934742019-11-11 13:59:50 +000045#downloadFromNanodroid packageName overrides
46downloadFromNanodroid() {
q0kHaNed934742019-11-11 13:59:50 +000047 if [ ! -f tmp/index.xml ];then
48 #TODO: Check security keys
49 wget --connect-timeout=10 $reponano/index.jar -O tmp/index.jar
50 unzip -p tmp/index.jar index.xml > tmp/index.xml
51 fi
Gokhan Ozdemire9f7f962019-11-11 17:03:39 +030052 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
53 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 +000054 while ! wget --connect-timeout=10 $reponano/$apk -O bin/$apk;do sleep 1;done
55 addCopy $apk $1 "$2"
56}
57
58#downloadFromNanodroid packageName overrides
59downloadFrommicrog() {
q0kHaNed934742019-11-11 13:59:50 +000060 if [ ! -f tmp/index.xml ];then
61 #TODO: Check security keys
q0kHaNa940a1a2019-11-11 22:15:26 +000062 wget --connect-timeout=10 $repomicrog/index.jar -O tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +000063 unzip -p tmp/index.jar index.xml > tmp/index.xml
64 fi
q0kHaNa940a1a2019-11-11 22:15:26 +000065 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
Gokhan Ozdemire9f7f962019-11-11 17:03:39 +030066 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 +000067 while ! wget --connect-timeout=10 $repomicrog/$apk -O bin/$apk;do sleep 1;done
q0kHaNed934742019-11-11 13:59:50 +000068 addCopy $apk $1 "$2"
69}
70
71
q0kHaNa940a1a2019-11-11 22:15:26 +000072downloadFromFdroid org.fdroid.fdroid
Pierre-Hugues Hussonfdb2bba2018-09-04 16:58:59 +020073#phh's Superuser
q0kHaN77f09432019-11-11 12:36:35 +000074#downloadFromFdroid me.phh.superuser
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010075#YouTube viewer
76downloadFromFdroid org.schabi.newpipe
q0kHaN77f09432019-11-11 12:36:35 +000077#QKSMS
78downloadFromFdroid com.moez.QKSMS "messaging"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010079#Ciphered SMS
q0kHaN77f09432019-11-11 12:36:35 +000080#downloadFromFdroid org.smssecure.smssecure "messaging"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010081#Navigation
82downloadFromFdroid net.osmand.plus
83#Web browser
Pierre-Hugues Husson9b013b12017-12-04 23:07:17 +010084#downloadFromFdroid org.mozilla.fennec_fdroid "Browser2 QuickSearchBox"
q0kHaNa940a1a2019-11-11 22:15:26 +000085downloadFromFdroid acr.browser.lightning "Browser2 QuickSearchBox Jelly"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010086#Calendar
q0kHaN77f09432019-11-11 12:36:35 +000087downloadFromFdroid ws.xsoh.etar "Calendar"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010088#Public transportation
89downloadFromFdroid de.grobox.liberario
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010090#Pdf viewer
q0kHaNa940a1a2019-11-11 22:15:26 +000091#downloadFromFdroid com.artifex.mupdf.viewer.app
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010092#Keyboard/IME
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010093downloadFromFdroid com.menny.android.anysoftkeyboard "LatinIME OpenWnn"
Pierre-Hugues Hussonac9e4d92017-12-04 16:47:37 +010094#Play Store download
q0kHaNed934742019-11-11 13:59:50 +000095#downloadFromFdroid com.github.yeriomin.yalpstore
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +010096#Mail client
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010097downloadFromFdroid com.fsck.k9 "Email"
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +010098#Ciphered Instant Messaging
Pierre-Hugues Hussonf27765a2019-01-07 23:39:55 +010099#downloadFromFdroid im.vector.alpha
Pierre-Hugues Hussone46e3702018-06-04 21:19:57 +0200100#Calendar/Contacts sync
q0kHaNed934742019-11-11 13:59:50 +0000101#downloadFromFdroid at.bitfire.davdroid
Pierre-Hugues Hussone46e3702018-06-04 21:19:57 +0200102#Nextcloud client
q0kHaNa940a1a2019-11-11 22:15:26 +0000103#downloadFromFdroid com.nextcloud.client
Pierre-Hugues Husson1d522692019-07-03 09:17:32 +0200104#Lawnchair launcher
q0kHaNa940a1a2019-11-11 22:15:26 +0000105#downloadFromFdroid ch.deletescape.lawnchair.plah "Launcher3QuickStep Launcher2 Launcher3 TrebuchetQuickStep"
q0kHaN77f09432019-11-11 12:36:35 +0000106#Phonograph
107downloadFromFdroid com.kabouzeid.gramophone "Eleven"
q0kHaNa940a1a2019-11-11 22:15:26 +0000108#Alarmio
109downloadFromFdroid me.jfenn.alarmio
110#Simple Gallery
111downloadFromFdroid com.simplemobiletools.gallery.pro "Gallery2"
112#Simple Calculator
113downloadFromFdroid com.simplemobiletools.calculator "ExactCalculator"
114
115rm -rf tmp/index.xml
116rm -rf tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +0000117#playstore
q0kHaNa940a1a2019-11-11 22:15:26 +0000118downloadFromNanodroid com.android.vending
q0kHaNed934742019-11-11 13:59:50 +0000119#MPV
q0kHaNa940a1a2019-11-11 22:15:26 +0000120downloadFromNanodroid is.xyz.mpv
121rm -rf tmp/index.xml
122rm -rf tmp/index.jar
q0kHaNed934742019-11-11 13:59:50 +0000123#MicroG service core
q0kHaNa940a1a2019-11-11 22:15:26 +0000124downloadFrommicrog com.google.android.gms
q0kHaNed934742019-11-11 13:59:50 +0000125#MicroG droidguard helper
126downloadFrommicrog org.microg.gms.droidguard
q0kHaNa940a1a2019-11-11 22:15:26 +0000127#MicroG services framework proxy
q0kHaNed934742019-11-11 13:59:50 +0000128downloadFrommicrog com.google.android.gsf
q0kHaNa940a1a2019-11-11 22:15:26 +0000129#dejavu location
130#downloadFrommicrog org.fitchfamily.android.dejavu
131#UnifiedNlp
132#downloadFrommicrog org.microg.unifiednlp
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +0100133#TODO: Some social network?
134#Facebook? Twitter? Reddit? Mastodon?
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +0100135echo >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100136
137rm -Rf tmp