Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

One-off build run for 18.1 devices #738

Open
3 of 5 tasks
petefoth opened this issue Jan 30, 2025 · 4 comments
Open
3 of 5 tasks

One-off build run for 18.1 devices #738

petefoth opened this issue Jan 30, 2025 · 4 comments

Comments

@petefoth
Copy link
Contributor

petefoth commented Jan 30, 2025

This cropped up in XDA Forums when someone asked about where to find an 18.1 build. https://xdaforums.com/t/lineageos-for-microg.3700997/post-89931584 I pointed them to the Internet Archive archive, but as was pointed out

It won't work correctly since it have the legacy signature spoofing patch so apps won't recognize microG unless you use only old apps

We should include a build for 18.1 devices (and one 19.1 device, monet) in the February build run.

To do

  • List of devices to build for
  • Wait for patch to be applied upstream (see this cange and this change ) OR
  • Create a patch ourselves
  • Add the task to one of the build servers (We should have free capacity on buildserv2 from 6th or 7th February
  • Run the builds: in progress
@petefoth
Copy link
Contributor Author

petefoth commented Jan 30, 2025

List of devices to build for

  • all the devices archived at https://lineage-archive.timschumi.net/# and / or at https://web.archive.org/web/20240527093848/https://download.lineage.microg.org/archive/. Cross-cheking thse gives the following lists
    • 18.1 a5y17lte,a7y17lte,addison,ahannah,albus,bacon,caprip,castor,castor_windy,cedric,d800,d801,d802,d803,d850,d851,d852,d855,debx,ether,f400,flox,FP2,ginkgo,griffin,hannah,hlte,hltechn,hltekor,hltetmo,jactivelte,jasmine_sprout,jason,jflteatt,jfltespr,jfltevzw,jfltexx,jfvelte,klte,klteactivexx,klteaio,kltechn,kltechnduo,klteduos,kltedv,kltekdi,kltekor,kugo,kuntao,lavender,lithium,ls990,m20lte,montana,obiwan,oneplus3,platina,rhannah,s3ve3gds,s3ve3gjv,s3ve3gxx,scorpio,shamu,sirius,suzu,twolip,victara,vs985,wayne,whyred,X00P,X01AD,X01BD,x2,YTX703F,YTX703L,z3,z3,z3c,zl1,harpia
      EDIT: added harpia to the list: the last official build was 17.1, but 18.1 branches exist in the needed repos, so it might work (requested in XDA Forums))
    • 19.1 monet
    • unofficial 18.1 z3tc,z3tcw

The following listed at the linked sites do not require new builds:

  • foster & foster_tab - 20.0 builds are available
  • porg & porg_tab - 21.0 builds are available
  • Spacewar restored to the target list at 22.1, so will be built with the 22.1 devices

@petefoth
Copy link
Contributor Author

There's an unofficial patch / fix: see this CDA post

#!/bin/bash

cd frameworks/base
echo "cherry-picking signature spoofing fix for 18.1"
COMMIT=f3f5c2063007de9a8b746a8788f3bcab6b6ac261
git fetch "https://github.com/Lanchon/lineageos-18.1-android_frameworks_base" $COMMIT && git cherry-pick $COMMIT
cd ../..

We will need to do a 'git reset --hard` at some point too. Already done - see

if [ "$RESET_VENDOR_UNDO_PATCHES" = true ]; then
# Remove previous changes of vendor/cm, vendor/lineage and frameworks/base (if they exist)
# TODO: maybe reset everything using https://source.android.com/setup/develop/repo#forall
for path in "vendor/cm" "vendor/lineage" "frameworks/base" "packages/apps/PermissionController" "packages/modules/Permission"; do
if [ -d "$path" ]; then
cd "$path"
git reset -q --hard
git clean -q -fd
cd "$SRC_DIR/$branch_dir"
fi

We can use this in a new before.sh and make the patch conditional on $branch: but to do that we need the changes in this PR applied to build-legacy.sh

The following before.sh will pass shellcheck

#!/bin/bash
BRANCH="$1"

if [ "$BRANCH" = "lineage-18.1" ]; then
  echo "cherry-picking signature spoofing fix for 18.1"
  COMMIT=f3f5c2063007de9a8b746a8788f3bcab6b6ac261
  cd frameworks/base && git fetch "https://github.com/Lanchon/lineageos-18.1-android_frameworks_base" $COMMIT && git cherry-pick $COMMIT
  cd ../..
fi
  • test build in progress for klte (for kurtn to test)

@petefoth
Copy link
Contributor Author

petefoth commented Jan 31, 2025

  • added before.sh on both servers
  • add to build_all.sh on buildserv2 (klte can be removed if the test build is OK)
    ./build_list.sh lineage-18.1 a5y17lte,a7y17lte,addison,ahannah,albus,bacon,caprip,castor,castor_windy,cedric,d800,d801,d802,d803,d850,d851,d852,d855,debx,ether,f400,flox,FP2,ginkgo,griffin,hannah,hlte,hltechn,hltekor,hltetmo,jactivelte,jasmine_sprout,jason,jflteatt,jfltespr,jfltevzw,jfltexx,jfvelte,klte,klteactivexx,klteaio,kltechn,kltechnduo,klteduos,kltedv,kltekdi,kltekor,kugo,kuntao,lavender,lithium,ls990,m20lte,montana,obiwan,oneplus3,platina,rhannah,s3ve3gds,s3ve3gjv,s3ve3gxx,scorpio,shamu,sirius,suzu,twolip,victara,vs985,wayne,whyred,X00P,X01AD,X01BD,x2,YTX703F,YTX703L,z3,z3,z3c,zl1
    ./build_list.sh lineage-19.1 monet
    ./build_unofficial.sh lineage-18.1 z3tc,z3tcw

@petefoth
Copy link
Contributor Author

petefoth commented Feb 1, 2025

Checked that the patch is in place for the second and subsequent devices in the build list: 👍

$ cd /mnt/persistent/src/LINEAGE_18_1/frameworks/base/
$ sudo git log --oneline
    6764064ff64 (HEAD) Allow spoofing signingInfo for microG Companion/Services
    216a82f8590 (m/lineage-18.1, github/lineage-18.1) keylayouts: Nintendo ProCon: Map it like stock does
    c0376246d1f Automatic translation import
    ....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant