blob: 971e7ba3b1d9d75550f42a5b725e08c0b1a4f29a [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/"
5
6addCopy() {
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +02007 addition=""
Unknowna0b877c2020-11-07 19:48:33 -05008 if [ "$2" == ws.xsoh.etar ] || \
9 [ "$2" == com.artifex.mupdf.viewer.app ] || \
10 [ "$2" == com.aurora.store ] || \
11 [ "$2" == com.fsck.k9 ] || \
12 [ "$2" == com.etesync.syncadapter ] || \
13 [ "$2" == org.tasks ] || \
14 [ "$2" == co.pxhouse.sas ] || \
15 [ "$2" == com.simplemobiletools.gallery.pro ] || \
16 [ "$2" == com.aurora.adroid ] || \
17 [ "$2" == com.google.android.gms ] || \
18 [ "$2" == com.google.android.gsf ] || \
19 [ "$2" == com.android.vending ] || \
20 [ "$2" == org.microg.gms.droidguard ] \
21 ;then
22 echo "Skipping lib extraction for: $2"
23 else
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020024 unzip bin/$1 lib/*
25 addition="
Unknowna0b877c2020-11-07 19:48:33 -050026 LOCAL_PREBUILT_JNI_LIBS := \\
27 $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/arm64-v8a/.*);\t\1 \\;p') \\
28 $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/x86/.*);\t\1 \\;p') \\
29 $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/x86_64/.*);\t\1 \\;p')
30 "
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020031 fi
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010032 if [ "$2" == com.google.android.gms ] || [ "$2" == com.android.vending ] ;then
33 addition="LOCAL_PRIVILEGED_MODULE := true"
34 fi
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010035cat >> Android.mk <<EOF
36include \$(CLEAR_VARS)
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010037LOCAL_MODULE := $2
38LOCAL_MODULE_TAGS := optional
39LOCAL_SRC_FILES := bin/$1
40LOCAL_MODULE_CLASS := APPS
Pierre-Hugues Hussonea4517b2017-12-04 16:45:04 +010041LOCAL_CERTIFICATE := PRESIGNED
Pierre-Hugues Husson3811d162017-12-04 23:07:00 +010042LOCAL_OVERRIDES_PACKAGES := $3
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020043$addition
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010044include \$(BUILD_PREBUILT)
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010045
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010046EOF
47echo -e "\t$2 \\" >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010048}
49
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020050rm -Rf apps.mk lib
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010051cat > Android.mk <<EOF
52LOCAL_PATH := \$(my-dir)
53
54EOF
55echo -e 'PRODUCT_PACKAGES += \\' > apps.mk
56
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010057mkdir -p bin
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010058
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010059#downloadFromFdroid packageName overrides
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010060downloadFromFdroid() {
61 mkdir -p tmp
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010062 [ "$oldRepo" != "$repo" ] && rm -f tmp/index.xml
63 oldRepo="$repo"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010064 if [ ! -f tmp/index.xml ];then
65 #TODO: Check security keys
Pierre-Hugues Husson3db36f72019-04-01 23:14:30 +020066 wget --connect-timeout=10 $repo/index.jar -O tmp/index.jar
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010067 unzip -p tmp/index.jar index.xml > tmp/index.xml
68 fi
Pierre-Hugues Husson33295452018-06-04 21:19:47 +020069 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
70 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)"
paledega6303e2a2020-03-02 09:39:50 +030071 if [ ! -f bin/$apk ];then
72 while ! wget --connect-timeout=10 $repo/$apk -O bin/$apk;do sleep 1;done
73 fi
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010074 addCopy $apk $1 "$2"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010075}
76
77
Pierre-Hugues Hussonfdb2bba2018-09-04 16:58:59 +020078#phh's Superuser
Unknowna0b877c2020-11-07 19:48:33 -050079#~ downloadFromFdroid me.phh.superuser
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010080#YouTube viewer
Unknowna0b877c2020-11-07 19:48:33 -050081#~ downloadFromFdroid org.schabi.newpipe
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010082#Ciphered SMS
Unknowna0b877c2020-11-07 19:48:33 -050083#~ downloadFromFdroid org.smssecure.smssecure "messaging"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010084#Navigation
85downloadFromFdroid net.osmand.plus
86#Web browser
Unknowna0b877c2020-11-07 19:48:33 -050087#~ downloadFromFdroid org.mozilla.fennec_fdroid "Browser2 QuickSearchBox"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010088#Calendar
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010089downloadFromFdroid ws.xsoh.etar Calendar
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010090#Public transportation
Unknowna0b877c2020-11-07 19:48:33 -050091#~ downloadFromFdroid de.grobox.liberario
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010092#Pdf viewer
Pierre-Hugues Husson02f4dcb2018-06-04 21:19:03 +020093downloadFromFdroid com.artifex.mupdf.viewer.app
Pierre-Hugues Hussonac9e4d92017-12-04 16:47:37 +010094#Play Store download
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +020095downloadFromFdroid com.aurora.store
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
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +0200101downloadFromFdroid com.etesync.syncadapter
Pierre-Hugues Hussone46e3702018-06-04 21:19:57 +0200102#Nextcloud client
Unknowna0b877c2020-11-07 19:48:33 -0500103#~ downloadFromFdroid com.nextcloud.client
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +0200104# Todo lists
105downloadFromFdroid org.tasks
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +0100106
Unknowna0b877c2020-11-07 19:48:33 -0500107#~ downloadFromFdroid org.mariotaku.twidere
108#~ downloadFromFdroid com.pitchedapps.frost
109#~ downloadFromFdroid com.keylesspalace.tusky
paledega6303e2a2020-03-02 09:39:50 +0300110
111#Fake assistant that research on duckduckgo
112downloadFromFdroid co.pxhouse.sas
113
114downloadFromFdroid com.simplemobiletools.gallery.pro "Photos Gallery Gallery2"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100115
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +0200116downloadFromFdroid com.aurora.adroid
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +0100117
118repo=https://microg.org/fdroid/repo/
119downloadFromFdroid com.google.android.gms
120downloadFromFdroid com.google.android.gsf
121downloadFromFdroid com.android.vending
122downloadFromFdroid org.microg.gms.droidguard
123
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +0100124echo >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100125
126rm -Rf tmp