76 Commits (master)

Author SHA1 Message Date
FriendlyNeighborhoodShane 3c77df5d2d res: add gmscore priv-perm START_ACTIVITIES_FROM_BACKGROUND 2 months ago
FriendlyNeighborhoodShane 64bdc4e38c test.sh: enable a bunch of tests
add source directives to code for shellcheck. yay flow analysis!
2 months ago
FriendlyNeighborhoodShane ba11fdc404 Apply shellcheck recommendations 2 months ago
FriendlyNeighborhoodShane 3b9271dcae conf/defconf-standard.txt: move backuptransport to stuff_sdk 10 months ago
FriendlyNeighborhoodShane f6bd6ffe12 conf: remove google swype libs and drm jars
I believe they haven't been relevant for quite a while now.
10 months ago
FriendlyNeighborhoodShane 8365656e19 conf: remove AuroraServices from all variants
This has probably been a long time coming.
10 months ago
FriendlyNeighborhoodShane 854ad03dd8 res/util/func-resdl.sh: use apksigner for cert dump
Avoids a dependency on openssl.
10 months ago
FriendlyNeighborhoodShane 2470d2b31d res/util/func-resdl.sh: update JAR verification flags
It started to fail because JAR was being weird again.

6be64b9339/src/main/java/com/android/apksig/internal/apk/v1/V1SchemeVerifier.java (728)
10 months ago
FriendlyNeighborhoodShane c53f6e7b39 conf: remove Backends variant
standalone UNLP has finally been archived by FDroid.
10 months ago
FriendlyNeighborhoodShane 70461302b6 Remove UNLP from microG packages
microG has removes support for backends entirely.
Also remove UNLPBackends as its only use was with microg packages
12 months ago
FriendlyNeighborhoodShane 655564d65d res: add new GMSCore privperms 12 months ago
FriendlyNeighborhoodShane dd7cc214c1 npem: shellcheck compliance 1 year ago
FriendlyNeighborhoodShane c45906be40 npem: check for presence in network allowlist 1 year ago
FriendlyNeighborhoodShane d01d41bf8a npem: add LOS networking allowlisting 1 year ago
FriendlyNeighborhoodShane 3ba88f9ed0 npem: refactor into get_uid 1 year ago
FriendlyNeighborhoodShane a1942c948b res: update GMSCore privperms for A13 2 years ago
FriendlyNeighborhoodShane 863ceb960a npem: install Phonesky as user app
Recently there have been reports of internet being inaccessible to Playstore
on dirty flashes. Android added a permission whitelist for internet, similar
to for background location, so this might fix it being missing.
2 years ago
FriendlyNeighborhoodShane 91fefd0bbc res: add new Phonesky privperms
The update doesn't fail to disappoint in its invasiveness, as ever.
2 years ago
FriendlyNeighborhoodShane cf1c5e80e9 res: move gsync perms into right place 2 years ago
FriendlyNeighborhoodShane d922ca278c res: add old (deprecated) privperm for backuptransport 2 years ago
FriendlyNeighborhoodShane b0660cca5e func-resdl.sh: fix privperm detections
It will now parse privperm files by contents instead of filepath.
2 years ago
FriendlyNeighborhoodShane a1c7cbd13c func-resdl.sh: improve privperm extraction
Extract privperm list directly from the master branch of Android source
instead of regexing through a docpage.

Referenced from what mindthegapps does.
2 years ago
FriendlyNeighborhoodShane 53ff515063 res: add new A12 privperm the 'proper' way
Figured out by @AkiraNoSushi

Solves bootloops on some ROMs that weren't happy without the prefix. Don't
ask me how or why.
2 years ago
FriendlyNeighborhoodShane 969e15e982 npem: fix permissions not being granted
I messed up with the last fix. While that solved the case where there were
both 'granted=true' and 'granted=false' entries, it introduced a regression.

It was written with the assumption that whenever a permission is not granted,
there will be 'granted=false' entries. That assumption was not tested well
at the time, and further testing has revealed that there are also many
situations where there are no 'granted=' entries for permissions at all, not
even 'false'.

Since there is no defined spec for the output of dumpsys, we just do a
pessimistic case-by-case parsing of its output.
2 years ago
FriendlyNeighborhoodShane 09c78815bd func-resdl.sh: update privperm webpage parsing regexes 2 years ago
FriendlyNeighborhoodShane 847d3908ac squash another shellcheck warning 2 years ago
FriendlyNeighborhoodShane 232cef7271 npem: vendor "nlp backends as user app" from upstream 2 years ago
FriendlyNeighborhoodShane dd25765cb6 npem: install microG APKs as user app
The init script was used to do it before, but init.d has been all but
abandoned by ROMs universally, so effectively the only situation in which
the init script runs is for Magisk.

This change will be very helpful for non-Magisk users, as they will no
longer have to extract and install the APK by hand.

Also deduplicate code from init script and make it just call npem.
2 years ago
FriendlyNeighborhoodShane 6489b85d56 npem: add new microG perms
These were added by microG updates about covid tracing, etc.
2 years ago
FriendlyNeighborhoodShane 45850cebd6 npem: fix false positive in permission check
Sometimes when a permission is not granted (e.g. when a default permission
to a system app is ungranted by the user), dumpsys emits two lines about
it, one with granted=true and the GRANTED_BY_DEFAULT flag.

Since we are not properly parsing flags and getting the full context, just
reverse the check to make sure the value doesn't fall through.

A 'false negative' grant won't hurt anyway.
2 years ago
FriendlyNeighborhoodShane 8aa22acfa0 npem: grant permissions to wifi and GSM backends
NanoDroid didn't include these backends.
2 years ago
FriendlyNeighborhoodShane 81294c7c06 res: add npem to res as part of repo
MinMicroG has always had to modify npem for its own apps, but now NanoDroid
seems to have gone on hiatus, and important changes are sitting in PRs.

I fgfure it'd be more convenient if we just maintain a clone in-tree and
keep it up to date with NanoDroid's changes.
2 years ago
FriendlyNeighborhoodShane 25ec2335b9 res: add new priv-perm to allowlist XMLs 2 years ago
FriendlyNeighborhoodShane 346e77a188 *.md: reflow text to 80 cols 3 years ago
FriendlyNeighborhoodShane 061c1d040d res/util/func-resdl.sh: make logs work with symlinked reldir 3 years ago
FriendlyNeighborhoodShane ad28359a70 func-resdl.sh: use apksigner instead of jarsigner for signature verification
It's much more robust and complete than jarsigner and should catch more
issues than it. I suspect the flags that I'm using to make it work for
JARs (signature format v1) is a hack and not actually an intended feature
but it works for now.

It also likely has much more availability across platforms as it's a
Java applet (separately packaged for Debian etc.) instead of being part of
a JDK.
3 years ago
FriendlyNeighborhoodShane 1074e15a0f Fix some shellcheck complaints 3 years ago
FriendlyNeighborhoodShane cb531cf13f script-addon.sh: better helper script detection 3 years ago
FriendlyNeighborhoodShane 9f429c16fe script-addin.sh: add footer meesage 3 years ago
FriendlyNeighborhoodShane 44a349c531 script-addon.sh: recursively pass files to functions, not dirs
The addon.d helper functions don't like being passed directories, so we
just use find and pass the them the files ourselves.

We could have implemented the helper functions, but there's too much of
a mess going on in the addon.d world. That will probably cause more problems
that it will solve.
3 years ago
FriendlyNeighborhoodShane 491f4ea4f4 func-defconf.sh: make sure required conditions are met for script 3 years ago
FriendlyNeighborhoodShane 190131eafc script-{addon,init}.sh: split out from func-defconf.sh
The scripts were initially embedded because I didn't want to have extra
files other than the defconfs, but since we have funcs now anyway...
3 years ago
FriendlyNeighborhoodShane 4079901354 func-defconf.sh: remove superfluous tr invocation 3 years ago
FriendlyNeighborhoodShane e115e7bf92 func-defconf.sh: remove detection for old markfile
It has been over half a year (even if just one release) but it should be
okay. Everybody should have upgraded by now.
3 years ago
FriendlyNeighborhoodShane de51551caa update.sh: user curl with -f for error handling 3 years ago
FriendlyNeighborhoodShane ea843f931f update.sh: add checksum to update log for the update delta
The cksum utility is sued for the value.
It's not cryptographically secure, but this is just a simple update
check. The actual cryptographic verification is already done by
verifycerts(). Plus, cksum is POSIX amd universally available.
3 years ago
FriendlyNeighborhoodShane 2d6f3ec4fd func-resdl.sh: refactor updatedelta() 3 years ago
FriendlyNeighborhoodShane ce7dbe90ad remove ls use 3 years ago
FriendlyNeighborhoodShane 2efc1d10b9 use `command -v` instead of `which` to determine tool availability.
It's POSIX and also considers builtins.
3 years ago
FriendlyNeighborhoodShane bd3e8e024f res: remove old fdroid privperm file 3 years ago