Package secondary LK bootloader for some Qualcomm devices
(for now: msm8916, msm8974, msm8226).
Bootloader binary is built from source in x86_64 chroot.
Two targets are built in a sequence. Then package is split
into 2 subpackages, each of them installs `/boot/lk2nd.img`.
So the end result is - lk2nd-msm8916 and lk2nd-msm8974 can't
be installed at the same time.
Device- packages then can depend on specific subpackage of this
package and have proxy-bootloader image ready to use in /boot.
This can improve user experience with installing postmarketOS on
several devices using only pmbootstrap tool.
At the very least, pmbootstrap can suggest user to flash lk2nd
immediately after `pmbootstrap install` or even offer some kind
of `pmbootstrap flasher` integration.
This will also open possibilities to automatically update and flash
lk2nd using package manager, it we ever want this.
Fixed compatible and added interrups for touchscreen,
added Bluetooth support, made kconfig happy for waydroid,
use correct mount matrix for accelerometer,
changes in panel.
[ci:skip-build] Already built fine on CI in MR
The following commits will reintroduce it with its appropriate codename
and split it into a separet package for downstream, and separate ones
for the 3G version and the LTE version.
Improvements from xfce4-phone source:
- Add screenshot to README.md
- Enable screen locking
- Disable Desktop icons "Home", "File System", "Trash"
- Enable single-click on Desktop
- Enable single-click in Thunar
- Change clock format
- Set postmarketos wallpaper
Additional changes in postmarketos-ui-xfce4:
- Installing greybird-themes (which is already set as default theme in
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml).
- Changing /etc/skel/.config/autostart/onboard-autostart.desktop to
slightly speed up keysboard startup (overriding startup-delay of
/etc/xdg/autostart/onboard-autostart.desktop).
- Enabling scrollbars by /etc/profile.d/enable-scrollbars.sh, this is
helpful where touch-scrolling doesn't work like e.g. in whiskermenu.
(And re-ordered network-manager-applet in APKBUILD _pmb_recommends
section.)
Also removing xfce4 subpackages of device-qemu-amd64,
device-qemu-aarch64 and device-nokia-n900. The device specific monitor
to set the wallpaper will now be automatically derived from "monitor0"
in file xfce4-desktop.xml.
Additionally taking maintainership as discussed in merge request
(!2506).
Update deviceinfo to set deviceinfo_bootimg_qcdt to false. This is causing the pmbootstrap install to fail with
==> initramfs: creating boot.img
ERROR: File not found: /boot/dt.img, but
'deviceinfo_bootimg_qcdt' is set. Please verify that your
device is a QCDT device by analyzing the boot.img file
(e.g. 'pmbootstrap bootimg_analyze path/to/twrp.img')
and based on that, set the deviceinfo variable to false or
adjust your linux APKBUILD to properly generate the dt.img
I downloaded the TWRP image for sirius from https://forum.xda-developers.com/t/recovery-unofficial-twrp-3-2-3-0-for-sirius-01-09-2018.3836837/
Then ran "pmbootstrap bootimg_analyze recovery.img". The output had ' deviceinfo_bootimg_qcdt="false" '. This is my justification for the fork
Since the wiki applies to all branches, renaming devices is really
difficult without breaking the wiki check. To simplify this, download
the Renamed Devices page additionally, and just print a WARNING if
a device is missing in the wiki, but is listed there.
Newly generated binutils package has file conflicsts with
non-cross binutils.
ERROR: binutils-2.37-r3: trying to overwrite usr/lib/bfd-plugins/libdep.so
owned by binutils-aarch64-2.37-r3.
Attmpt to fix this quickly to unblock bpo and users
msm-firmware-loader is pretty similar to klte's modem-firmware-mount
except that it sets up the symlinks dynamically. The nice thing about
it is that it seems to just work. :)
[ci:ignore-count]
Right now we have multiple variants of A5 that are only different in
secure-boot keys and as such different firmware blobs.
Use msm-firmware-loader to support all A5 variants with a single device
port. Because of that, drop lte suffix as there are 3g variants as well.
Right now we have multiple variants of A3 that are only different in
secure-boot keys and as such different firmware blobs.
Use msm-firmware-loader to support all A3 variants with a single device
port. Because of that, drop lte suffix as there are 3g variants as well.
With the new msm8916-mainline kernel DT for gt510wifi is reworked to be
reused with gt58 devices. While at it, the DT was generalized to be used
with the LTE variants of the device as well as the wifi variant.
Change base dtb name to the new common dt and add an LTE-specific dt
that enavles the modem. Since variants have different secure-boot keys,
use msm-firmware-loader for that.
Also make various updates to support gpu-accelerated UI's and FDE.
Many devices need proprietary firmware blobs. So far those blobs were
packaged and installed from the repository but this approach has many
drawbacks:
- The rootfs can only be used on a single device model.
- If a model has multiple variants that have diferent secire-boot key,
each must have it's own firmware blobs.
This makes maintaining packaged firmware very hard and outweights the
benefits of having a repeatable installation in most cases.
Instead we can load blobs dynamically from preexisting firmware
partitions that usually have same structure and contain the blobs we are
interested in.
The proposed scripts place symlinks to the blobs in a special dir that
then given to the kernel. Blobs from firmware/postmarketos (or another
dir that was set as extra path prior the script execution) will take
priority which allows to override some blobs (e.g. for deviecs with no
secure-boot)