blob: da20f6cc11ffd8a706dfeae197f670f043a6c461 [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
Jon West9fd0d662021-04-01 16:07:30 -04004RED='\033[0;31m'
5GREEN='\033[0;32m'
6YELLOW='\033[0;33m'
7LT_BLUE='\033[0;34m'
8
9NC='\033[0m' # No Color
10
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010011repo="https://f-droid.org/repo/"
12
13addCopy() {
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020014 addition=""
Unknownfebe9c82020-11-09 08:46:50 -050015 #~ if unzip bin/$1 lib/* > /dev/null 2>&1 ; then
16 #~ echo "Extracting libs for: $2"
17 #~ addition="
18 #~ LOCAL_PREBUILT_JNI_LIBS := \\
19 #~ $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/arm64-v8a/.*);\t\1 \\;p') \\
20 #~ $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/x86/.*);\t\1 \\;p') \\
21 #~ $(unzip -lv bin/$1 |grep -v Stored |sed -nE 's;.*(lib/x86_64/.*);\t\1 \\;p')
22 #~ "
23 #~ else
24 #~ echo "Skipping lib extraction for: $2"
25 #~ fi
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010026 if [ "$2" == com.google.android.gms ] || [ "$2" == com.android.vending ] ;then
27 addition="LOCAL_PRIVILEGED_MODULE := true"
28 fi
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010029cat >> Android.mk <<EOF
30include \$(CLEAR_VARS)
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010031LOCAL_MODULE := $2
32LOCAL_MODULE_TAGS := optional
33LOCAL_SRC_FILES := bin/$1
34LOCAL_MODULE_CLASS := APPS
Pierre-Hugues Hussonea4517b2017-12-04 16:45:04 +010035LOCAL_CERTIFICATE := PRESIGNED
Pierre-Hugues Husson3811d162017-12-04 23:07:00 +010036LOCAL_OVERRIDES_PACKAGES := $3
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020037$addition
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010038include \$(BUILD_PREBUILT)
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010039
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010040EOF
41echo -e "\t$2 \\" >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010042}
43
Jon West9fd0d662021-04-01 16:07:30 -040044echo -e "${LT_BLUE}# Setting Up${NC}"
Pierre-Hugues Husson16644af2020-04-05 16:08:40 +020045rm -Rf apps.mk lib
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +010046cat > Android.mk <<EOF
47LOCAL_PATH := \$(my-dir)
48
49EOF
50echo -e 'PRODUCT_PACKAGES += \\' > apps.mk
51
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010052mkdir -p bin
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010053
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010054#downloadFromFdroid packageName overrides
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010055downloadFromFdroid() {
56 mkdir -p tmp
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +010057 [ "$oldRepo" != "$repo" ] && rm -f tmp/index.xml
58 oldRepo="$repo"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010059 if [ ! -f tmp/index.xml ];then
60 #TODO: Check security keys
Pierre-Hugues Husson3db36f72019-04-01 23:14:30 +020061 wget --connect-timeout=10 $repo/index.jar -O tmp/index.jar
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010062 unzip -p tmp/index.jar index.xml > tmp/index.xml
63 fi
Pierre-Hugues Husson33295452018-06-04 21:19:47 +020064 marketvercode="$(xmlstarlet sel -t -m '//application[id="'"$1"'"]' -v ./marketvercode tmp/index.xml || true)"
65 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 +030066 if [ ! -f bin/$apk ];then
67 while ! wget --connect-timeout=10 $repo/$apk -O bin/$apk;do sleep 1;done
Jon Wested6857b2021-04-01 16:37:30 -040068 else
69 echo -e "${GREEN}# Already grabbed $apk ${NC}"
paledega6303e2a2020-03-02 09:39:50 +030070 fi
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010071 addCopy $apk $1 "$2"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010072}
Jon West9fd0d662021-04-01 16:07:30 -040073echo -e "${YELLOW}# grabbing F-Droid Apps${NC}"
Jon West311f0ca2021-04-01 15:42:33 -040074# Terminal Emulator
75downloadFromFdroid com.termoneplus
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010076#Navigation
77downloadFromFdroid net.osmand.plus
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010078#Calendar
Jon Wested6857b2021-04-01 16:37:30 -040079downloadFromFdroid ws.xsoh.etar "Calendar"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +010080#Pdf viewer
Pierre-Hugues Husson02f4dcb2018-06-04 21:19:03 +020081downloadFromFdroid com.artifex.mupdf.viewer.app
Unknown2974a752020-11-07 20:18:09 -050082# Aurora App Store
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +020083downloadFromFdroid com.aurora.store
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +010084#Mail client
Pierre-Hugues Husson5250fdd2017-12-04 22:18:22 +010085downloadFromFdroid com.fsck.k9 "Email"
Pierre-Hugues Hussone46e3702018-06-04 21:19:57 +020086#Calendar/Contacts sync
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +020087downloadFromFdroid com.etesync.syncadapter
Pierre-Hugues Husson06683c22020-03-31 23:16:24 +020088# Todo lists
89downloadFromFdroid org.tasks
Unknown2974a752020-11-07 20:18:09 -050090#Fake assistant that research on duckduckgo
91downloadFromFdroid co.pxhouse.sas
92# Gallery App
93downloadFromFdroid com.simplemobiletools.gallery.pro "Photos Gallery Gallery2"
94# Aurora Fdroid
95downloadFromFdroid com.aurora.adroid
Jon Wested6857b2021-04-01 16:37:30 -040096# F-Droid App Store
97#~ downloadFromFdroid org.fdroid.fdroid
q0kHaN77f09432019-11-11 12:36:35 +000098#Phonograph
99downloadFromFdroid com.kabouzeid.gramophone "Eleven"
kisekinopureya6a3d0362020-01-19 21:35:08 +0300100#Alarmio
101downloadFromFdroid me.jfenn.alarmio "GoogleClock DeskClock"
kisekinopureya13634d72019-12-12 01:23:53 +0300102#Mozilla Nlp
kisekinopureyae47d0882020-01-19 21:44:48 +0300103downloadFromFdroid org.microg.nlp.backend.ichnaea
kisekinopureyabb4217d2019-12-10 20:47:31 +0300104#Nominatim Nlp
105downloadFromFdroid org.microg.nlp.backend.nominatim
Jon Westbc3240a2021-04-01 15:30:41 -0400106# Midori Browser
Jon Wested6857b2021-04-01 16:37:30 -0400107downloadFromFdroid org.midorinext.android "Browser2 QuickSearchBox"
Jon Westddb6a382021-04-01 15:43:49 -0400108# EtchDroid USB Writer
109downloadFromFdroid eu.depau.etchdroid
Pierre-Hugues Hussonb7a5f4a2017-12-04 17:07:27 +0100110
kisekinopureyabb4217d2019-12-10 20:47:31 +0300111#Web browser
Unknown2974a752020-11-07 20:18:09 -0500112#~ downloadFromFdroid org.mozilla.fennec_fdroid "Browser2 QuickSearchBox"
113#Public transportation
114#~ downloadFromFdroid de.grobox.liberario
115#Ciphered Instant Messaging
116#downloadFromFdroid im.vector.alpha
117#Nextcloud client
118#~ downloadFromFdroid com.nextcloud.client
119# Social Media Apps
Unknowna0b877c2020-11-07 19:48:33 -0500120#~ downloadFromFdroid org.mariotaku.twidere
121#~ downloadFromFdroid com.pitchedapps.frost
122#~ downloadFromFdroid com.keylesspalace.tusky
paledega6303e2a2020-03-02 09:39:50 +0300123
Jon West9fd0d662021-04-01 16:07:30 -0400124echo -e "${YELLOW}# grabbing MicroG Apps${NC}"
Pierre-Hugues Hussone1b56f52020-11-03 18:15:49 +0100125repo=https://microg.org/fdroid/repo/
126downloadFromFdroid com.google.android.gms
127downloadFromFdroid com.google.android.gsf
128downloadFromFdroid com.android.vending
129downloadFromFdroid org.microg.gms.droidguard
130
Jon West9fd0d662021-04-01 16:07:30 -0400131echo -e "${YELLOW}# grabbing NanoLX Apps${NC}"
Unknown2974a752020-11-07 20:18:09 -0500132repo=https://nanolx.org/fdroid/repo/
133downloadFromFdroid is.xyz.mpv
134
Jon West9fd0d662021-04-01 16:07:30 -0400135echo -e "${LT_BLUE}# finishing up apps.mk${NC}"
Pierre-Hugues Hussonc1f73e82017-12-04 16:43:14 +0100136echo >> apps.mk
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100137
Jon West9fd0d662021-04-01 16:07:30 -0400138echo -e "${YELLOW}# Cleaning up${NC}"
Pierre-Hugues Hussonbcc5b642017-12-04 16:27:25 +0100139rm -Rf tmp
Jon West9fd0d662021-04-01 16:07:30 -0400140
141echo -e "${GREEN}# DONE${NC}"