-
Notifications
You must be signed in to change notification settings - Fork 2
Build notes SFOS 4.1.0 hybris 16.0 aarch64
Note: Guide is being updated from 4.0.1 -> 4.1.0.24 Note: Camera does not work at all. Some other stuff might also not work.
[HOST]
sudo apt update && sudo apt install python2 python repo curl wget git && cd ~ && wget https://raw.githubusercontent.com/SailfishOS-MI-A2/env/aarch64/.hadk.env && wget https://github.com/SailfishOS-MI-A2/env/raw/aarch64/.mersdkubu.profile && wget https://github.com/SailfishOS-MI-A2/env/raw/aarch64/.mersdk.profile && export PLATFORM_SDK_ROOT=/srv/mer && curl -k -O http://releases.sailfishos.org/sdk/installers/latest/Jolla-latest-SailfishOS_Platform_SDK_Chroot-i486.tar.bz2 && sudo mkdir -p $PLATFORM_SDK_ROOT/sdks/sfossdk && sudo tar --numeric-owner -p -xjf Jolla-latest-SailfishOS_Platform_SDK_Chroot-i486.tar.bz2 -C $PLATFORM_SDK_ROOT/sdks/sfossdk && echo "export PLATFORM_SDK_ROOT=$PLATFORM_SDK_ROOT" >> ~/.bashrc && echo 'alias sfossdk=$PLATFORM_SDK_ROOT/sdks/sfossdk/mer-sdk-chroot' >> ~/.bashrc ; exec bash && echo 'PS1="PlatformSDK $PS1"' > ~/.mersdk.profile && echo '[ -d /etc/bash_completion.d ] && for i in /etc/bash_completion.d/*;do . $i;done' >> ~/.mersdk.profile && sfossdk
[SDK]
sudo ssu domain sailfish && sudo zypper ref && sudo zypper in android-tools-hadk tar kmod && cat /etc/os-release && TARBALL=ubuntu-trusty-20180613-android-rootfs.tar.bz2 && curl -O https://releases.sailfishos.org/ubu/$TARBALL && UBUNTU_CHROOT=$PLATFORM_SDK_ROOT/sdks/ubuntu && sudo mkdir -p $UBUNTU_CHROOT && sudo tar --numeric-owner -xjf $TARBALL -C $UBUNTU_CHROOT && exit
[HOST]
git config --global user.name "USERNAME" && git config --global user.email "USER@email.org" && mkdir ~/hadk && cd ~/hadk && repo init -u git://github.com/mer-hybris/android.git -b hybris-16.0 --depth=1 && mkdir ~/hadk/.repo/local_manifests/ && cd ~/hadk/.repo/local_manifests && wget https://github.com/SailfishOS-MI-A2/local_manifests/raw/hybris-16.0/jasmine_sprout.xml && cd ~/hadk && repo sync -j$( nproc --all ) --force-sync -c --no-clone-bundle --no-tags --optimized-fetch --prune --fetch-submodules && rm -rf ~/hadk/hybris/hybris-boot && cd ~/hadk/hybris/ && git clone https://github.com/SailfishOS-MI-A2/hybris-boot -b hybris-16.0 && cd ~/hadk/external && rm -rf libhybris && git clone --recurse-submodules https://github.com/mer-hybris/libhybris.git && cd ~/hadk && hybris-patches/apply-patches.sh --mb && cd hybris/droid-configs/sparse/usr/libexec/droid-hybris/system/etc/init
for file in disabled_services.rc hwservicemanager.rc vndservicemanager.rc; do
rm $file
wget https://github.com/sailfishos-oneplus5/droid-config-cheeseburger/raw/hybris-16.0/sparse/usr/libexec/droid-hybris/system/etc/init/$file
done
cd ~/hadk/system/update_engine/ && wget https://raw.githubusercontent.com/sailfish-oneplus6/android_system_update_engine/a0a496d401bd4553e4d6d44f4df924f722bd670e/dbus-constants.h && cd ~/hadk/ && git clone https://github.com/piggz/sailfish-fpd-community.git hybris/mw/sailfish-fpd-community && git clone https://github.com/erfanoabdi/fake_crypt.git external/fake_crypt && sfossdk
[SDK]
sdk-assistant create SailfishOS-4.0.1 http://releases.sailfishos.org/sdk/targets/Sailfish_OS-4.1.0.24-Sailfish_SDK_Tooling-i486.tar.7z && sdk-assistant create xiaomi-jasmine_sprout-aarch64 http://releases.sailfishos.org/sdk/targets/Sailfish_OS-4.1.0.24-Sailfish_SDK_Target-aarch64.tar.7z && ubu-chroot -r $PLATFORM_SDK_ROOT/sdks/ubuntu
[CHROOT]
git config --global user.name "USERNAME" && git config --global user.email "USER@email.org" && sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && sudo apt update && sudo apt full-upgrade && sudo apt install imagemagick ccache && sudo chown -R $USER $ANDROID_ROOT && cd $ANDROID_ROOT && source build/envsetup.sh && export USE_CCACHE=1 && breakfast jasmine_sprout && make -j$(nproc --all) hybris-hal droidmedia hybris-boot hybris-recovery libbiometry_fp_api_32 fake_crypt && hybris/mw/sailfish-fpd-community/rpm/copy-hal.sh && exit
[SDK]
rpm/dhd/helpers/build_packages.sh --droid-hal && rpm/dhd/helpers/build_packages.sh --configs && rpm/dhd/helpers/build_packages.sh --mw=libncicore && rpm/dhd/helpers/build_packages.sh --mw=libgbinder && rpm/dhd/helpers/build_packages.sh --mw=https://github.com/mer-hybris/dummy_netd && rpm/dhd/helpers/build_packages.sh --mw=https://git.sailfishos.org/mer-core/nfcd.git && rpm/dhd/helpers/build_packages.sh --mw=https://github.com/SailfishOS-MI-A2/Switch-My-Slot-SailfishOS && rpm/dhd/helpers/build_packages.sh --mw=https://github.com/SailfishOS-MI-A2/ambience-holiday && rpm/dhd/helpers/build_packages.sh --mw && rpm/dhd/helpers/build_packages.sh --build=hybris/mw/sailfish-fpd-community --spec=rpm/droid-biometry-fp.spec --do-not-install && rpm/dhd/helpers/build_packages.sh --build=hybris/mw/sailfish-fpd-community --spec=rpm/droid-fake-crypt.spec --do-not-install && rpm/dhd/helpers/build_packages.sh --build=hybris/mw/sailfish-fpd-community && rpm/dhd/helpers/build_packages.sh --mw=https://github.com/mer-hybris/sailfish-connman-plugin-suspend
rpm/dhd/helpers/build_packages.sh --gg
If --gg gives error run the following commands block
sb2 -t $VENDOR-$DEVICE-$PORT_ARCH -m sdk-install -R zypper in git && cd hybris/mw/gst-droid && git clean -x -f -d && git reset --hard 0.20201104.0 && cd ~/hadk && rpm/dhd/helpers/build_packages.sh -b hybris/mw/gst-droid && rpm/dhd/helpers/build_packages.sh --mw=https://github.com/sailfishos/gmp-droid.git
[SDK]
sb2 -t $VENDOR-$DEVICE-$PORT_ARCH -R -msdk-install zypper in droid-config-$DEVICE -ofono-configs-mer && sb2 -t xiaomi-jasmine_sprout-aarch64 -m sdk-install -R chmod 755 /boot && rpm/dhd/helpers/build_packages.sh --version && rpm/dhd/helpers/build_packages.sh --mic && exit