Migrate the compiler to LLVM toolchain and update config as per required
and preferred config options by kconfigcheck.
Update the APKBUILD to follow some more recent standards as well.
And similar to linux-postmarketos-qcom-msm8974, activate
CONFIG_CC_OPTIMIZE_FOR_SIZE and CONFIG_KERNEL_XZ to get the kernel a bit
smaller again.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7539>
* Fix wrong path for lomiri-indicator-location, this has probably
changed upstream a while ago and was missed.
* Fix font rendering on some Adreno GPUs
* Clean up dependencies
* Don't force-depend on pipewire* and wireplumber.
* Remove font-droid-nonlatin since that's already in _pmb_recommends
of postmarketos-base-ui.
* Remove networkmanager since that's already a dependency of
postmarketos-base-ui-networkmanager.
* Add more Lomiri apps as recommended
* Set home button background color, otherwise the white logo is
invisible on a (default) white background.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8076>
[Warning!] deviceinfo_append_dtb: Property is set to its default value (false) and can be removed.
[Warning!] deviceinfo_append_dtb_lts: Property is set to its default value (false) and can be removed.
[Warning!] deviceinfo_append_dtb_exynos4: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_append_dtb\(_.*\)\?="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_external_storage: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_external_storage="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_disable_dhcpd: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_disable_dhcpd="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_bootimg_qcdt: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_bootimg_qcdt="false"/d' device/*/*/deviceinfo
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8035>
Migrate the compiler to LLVM toolchain and update config as per required
and preferred config options by kconfigcheck.
Update the APKBUILD to follow some more recent standards as well.
Since the kernel image got too big (again) for msm8974, activate
CONFIG_CC_OPTIMIZE_FOR_SIZE and CONFIG_KERNEL_XZ to get the kernel a bit
smaller again to fit below the magical limit (see !5725).
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7538>
Replace some direct dependencies by soc-qcom plus some subpackages
instead. This will also pull in some extra packages and configs that
will be useful on fairphone-fp4.
Remove pd-mapper since the in-kernel pd-mapper has been in use for a
while so the user space service didn't do anything anymore.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7859>
Manual kconfig changes:
* CONFIG_NTSYNC should be enabled and preferably set to 'm' (category:wine)
* CONFIG_ZRAM_BACKEND_842 should be enabled and preferably set to 'y' (category:zram)
* CONFIG_ZRAM_BACKEND_DEFLATE should be enabled and preferably set to 'y' (category:zram)
* CONFIG_ZRAM_BACKEND_LZ4 should be enabled and preferably set to 'y' (category:zram)
* CONFIG_ZRAM_BACKEND_LZ4HC should be enabled and preferably set to 'y' (category:zram)
* CONFIG_ZRAM_BACKEND_LZO should be enabled and preferably set to 'y' (category:zram)
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7599>
Just pull in postmarketos-artwork-wallpapers-gnome which provides a
gschema override that is updated when the artwork package gets updated -
and won't break every so often.
Usually that package is pulled in via an "install_if" with
postmarketos-base-ui-gnome but since we just want the artwork
subpackage, depending on base-ui-gnome would be quite much and probably
not what we want for Lomiri.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7593>
Update kconfig as per following "pmbootstrap kconfig check" messages.
* CONFIG_BTRFS_FS is preferably y, but currently m (category:filesystems)
* CONFIG_BTRFS_FS_POSIX_ACL should be enabled and preferably set to 'y' (category:filesystems)
* CONFIG_CFI_CLANG should be enabled and preferably set to 'y' (category:hardening)
* CONFIG_CFI_ICALL_NORMALIZE_INTEGERS should be enabled and preferably set to 'y' (category:hardening)
* CONFIG_CRYPTO_CMAC is preferably m, but currently y (category:iwd)
* CONFIG_DM_CRYPT is preferably y, but currently m (category:default)
* CONFIG_DM_VERITY should be enabled and preferably set to 'm' (category:immutable)
* CONFIG_EFIVAR_FS is preferably m, but currently y (category:immutable)
* CONFIG_EROFS_FS should be enabled and preferably set to 'y' (category:immutable)
* CONFIG_EROFS_FS_ZIP should be enabled and preferably set to 'y' (category:immutable)
* CONFIG_F2FS_FS is preferably y, but currently m (category:filesystems)
* CONFIG_HID_GENERIC is preferably m, but currently y (category:input)
* CONFIG_INPUT_EVDEV is preferably m, but currently y (category:default)
* CONFIG_INPUT_UINPUT is preferably y, but currently m (category:input)
* CONFIG_IP6_NF_FILTER should be enabled and preferably set to 'm' (category:nftables)
* CONFIG_IP6_NF_IPTABLES_LEGACY should be enabled and preferably set to 'm' (category:nftables)
* CONFIG_IP6_NF_NAT should be enabled and preferably set to 'm' (category:nftables)
* CONFIG_IP6_NF_TARGET_MASQUERADE should be enabled and preferably set to 'm' (category:containers)
* CONFIG_IP_NF_FILTER should be enabled and preferably set to 'm' (category:nftables)
* CONFIG_IP_NF_IPTABLES_LEGACY should be enabled and preferably set to 'm' (category:waydroid)
* CONFIG_IP_NF_MANGLE should be enabled and preferably set to 'm' (category:waydroid)
* CONFIG_IP_NF_NAT should be enabled and preferably set to 'm' (category:nftables)
* CONFIG_IP_NF_TARGET_MASQUERADE should be enabled and preferably set to 'm' (category:containers)
* CONFIG_IP_NF_TARGET_REDIRECT should be enabled and preferably set to 'm' (category:containers)
* CONFIG_LEDS_CLASS_MULTICOLOR is preferably m, but currently y (category:input)
* CONFIG_LEDS_TRIGGER_PATTERN is preferably m, but currently y (category:community_various)
* CONFIG_LEDS_TRIGGER_TIMER is preferably m, but currently y (category:community_various)
* CONFIG_LTO_CLANG_THIN should be enabled and preferably set to 'y' (category:hardening)
* CONFIG_NETFILTER_XTABLES_LEGACY should be enabled and preferably set to 'y' (category:waydroid)
* CONFIG_NULL_TTY is preferably m, but currently y (category:default)
* CONFIG_SHADOW_CALL_STACK should be enabled and preferably set to 'y' (category:hardening)
* CONFIG_SYN_COOKIES should be enabled and preferably set to 'y' (category:default)
* CONFIG_TUN is preferably m, but currently y (category:waydroid)
* CONFIG_USB_CONFIGFS is preferably m, but currently y (category:usb_gadgets)
* CONFIG_ZRAM is preferably y, but currently m (category:zram)
* CONFIG_ZSMALLOC is preferably y, but currently m (category:zram)
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7368>
The kernel package has been renamed, so update the dependency
accordingly.
And remove append_dtb, this was actually used with boot-deploy < 0.20.0
because deviceinfo_header_version="2" was ignored and therefore v0 was
used, which requires appended dtb. Now that boot-deploy is actually
passing this parameter, we do not have to append the dtb to the kernel
image anymore, because the dtb is passed in a separate field.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7368>
A large scripted cleanup to fix the errors, each with the sed command
used.
**Renamed variables**
[Error!!!] deviceinfo_gpu_accelerated: gpu_accelerated was renamed to drm: More accurately describes its function; see pmaports#1481 for the reasoning.
sed -i 's/^deviceinfo_gpu_accelerated=/deviceinfo_drm=/' device/*/*/deviceinfo
[Error!!!] deviceinfo_flash_heimdall_partition_system: flash_heimdall_partition_system was renamed to flash_heimdall_partition_rootfs: Renamed to avoid confusion
sed -i 's/^deviceinfo_flash_heimdall_partition_system=/deviceinfo_flash_heimdall_partition_rootfs=/' device/*/*/deviceinfo
[Error!!!] deviceinfo_flash_fastboot_partition_system: flash_fastboot_partition_system was renamed to flash_fastboot_partition_rootfs: Renamed to avoid confusion
sed -i 's/^deviceinfo_flash_fastboot_partition_system=/deviceinfo_flash_fastboot_partition_rootfs=/' device/*/*/deviceinfo
**Obsolete variables**
[Error!!!] deviceinfo_keyboard: This property is obsolete: Programs should automatically detect if the device currently has a keyboard or not (often it can be hotplugged anyway).
sed -i '/^deviceinfo_keyboard=/d' device/*/*/deviceinfo
[Error!!!] deviceinfo_framebuffer_landscape: This property is obsolete: Removed by the switch to pbsplash with no apparent replacement
sed -i '/^deviceinfo_framebuffer_landscape=/d' device/*/*/deviceinfo
[Error!!!] deviceinfo_mesa_driver: This property is obsolete: This was used by osk-sdl, which has been replaced by unl0kr.
sed -i '/^deviceinfo_mesa_driver=/d' device/*/*/deviceinfo
**Default values**
[Warning!] deviceinfo_flash_method: Property is set to its default value ("none") and can be removed.
sed -i '/^deviceinfo_flash_method="none"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_drm: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_drm="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_bootimg_dtb_second: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_bootimg_dtb_second="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_generate_bootimg: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_generate_bootimg="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_heimdall_partition_rootfs: Property is set to its default value ("SYSTEM") and can be removed.
sed -i '/^deviceinfo_flash_heimdall_partition_rootfs="SYSTEM"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_heimdall_partition_kernel: Property is set to its default value ("KERNEL") and can be removed.
sed -i '/^deviceinfo_flash_heimdall_partition_kernel="KERNEL"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_heimdall_partition_initfs: Property is set to its default value ("RECOVERY") and can be removed.
sed -i '/^deviceinfo_flash_heimdall_partition_initfs="RECOVERY"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_offset_base: Property is set to its default value ("0x10000000") and can be removed.
sed -i '/^deviceinfo_flash_offset_base="0x10000000"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_kernel_on_update: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_flash_kernel_on_update="false"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_fastboot_partition_rootfs: Property is set to its default value ("userdata") and can be removed.
sed -i '/^deviceinfo_flash_fastboot_partition_rootfs="userdata"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_flash_fastboot_partition_kernel: Property is set to its default value ("boot") and can be removed.
sed -i '/^deviceinfo_flash_fastboot_partition_kernel="boot"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_partition_type: Property is set to its default value ("gpt") and can be removed.
sed -i '/^deviceinfo_partition_type="gpt"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_sd_embed_firmware_step_size: Property is set to its default value (1024) and can be removed.
sed -i '/^deviceinfo_sd_embed_firmware_step_size="1024"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_boot_part_start: Property is set to its default value (2048) and can be removed.
sed -i '/^deviceinfo_boot_part_start="2048"/d' device/*/*/deviceinfo
[Warning!] deviceinfo_generate_legacy_uboot_initfs: Property is set to its default value (false) and can be removed.
sed -i '/^deviceinfo_generate_legacy_uboot_initfs="false"/d' device/*/*/deviceinfo
All were bumped using "pmbootstrap pkgver_bump".
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7403>
While mkimage seems to also accept the address with a 0x prefix, remove
it to satisfy 'dint' and ensure consistency.
[Error!!!] deviceinfo_legacy_uboot_load_address: Failed to parse "0x1080000" as integer: invalid digit found in string
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7480>
We switched to using integer pkgver versions a long time ago. Bring the
remaining 4 packages in line so that "pmbootstrap pkgver_bump" can also
work properly on these (and not fail with these, given they're not
integers).
[ci:ignore-count]
[ci:skip-dint] # remaining occurances fixed in pma!7403
[ci:skip-vercheck] # intentionally bumping pkgver when not needed
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7480>
Bring this file in line with the expected style, and fix a 'dint'
failure. There's no Maintainer line in deviceinfo either, just in the
APKBUILD.
[Error!!!]: Second comment was not an instruction to only use double quotes:
Actual: "# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>"
Expected: "# Please use double quotes only. You can source this file in shell scripts."
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7480>
Since abuild 3.16.0_rc1 split functions are executed in $pkgdir. And
built files in build() are no longer showing up in "$srcdir" but are in
$pkgdir now apparently.
[ci:skip-vercheck] # just build fixes, no change in final package
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7428>
While the modem has worked for quite a while on mainline, for some
reason some dependencies were never added to the device package.
And add the firmware for the audio amplifier on Fairphone 3 since it's
also supposed to work now.
And install qbootctl (and enable it by default) to mark the current slot
as successful to not get stuck in the bootloader after a couple of
reboots.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7010>
From the first revision, the compatibles and names were changed from
sm7635 to milos, to follow the new upstream naming guidelines.
Significant Milos-specific changes:
* UFS (internal storage) now works
* CCI I2C enablement including the EEPROMs on the camera sensors
* Partial IPA (mobile data) enablement, at least allows ModemManager to
detect the modem, but mobile data is still broken.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6962>
For one of the urllib responses, we need to make it a bit more explicit
that urlopen returns a bytes object - as per Python documentation. Not
sure why mypy needs some extra help there.
Checked with "mypy --strict".
Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6719
Avoid mount failure due to the possibility of the kernel being built
with vfat as a module (CONFIG_VFAT_FS=m) by explicitly trying to probe
the vfat module before trying to mount.
~ # mount /dev/loop0 /tmp/logs
mount: mounting /dev/loop0 on /tmp/logs failed: No such file or directory
~ # modprobe vfat
~ # mount /dev/loop0 /tmp/logs
Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6679
[ci:skip-build]: already built successfully in CI