Fix the bug that prevented "pmbootstrap install" from working with
postmarketos-ui-gnome (not -mobile).
This bug has been here in pmaports for a long time, but until recent
changes in apk's resolver code, this did not fail (apk installed
gnome-extensions-app instead of gnome-mobile-extensions-app in that
scenario).
How it happened:
* postmarketos-ui-gnome has _pmb_recommends="gnome-extensions-app".
* pmbootstrap: pmb.install._install.get_recommends() works like this:
1. Look at the packages i in _pmb_recommends of the packages that
will be installed in "pmbootstrap install".
2. For each package j in _pmb_recommends of i:
2.1 Add all packages in j's _pmb_recommends to the list of
packages to be installed.
(2.2 Recurse by doing 1. with each package in j's _pmb_recommends.)
* In step 2:
* pmaports doesn't have a gnome-extensions-app (it's in Alpine, a
subpackage of gnome-shell).
* Therefore our gnome-shell-mobile fork gets looked at, which has a
gnome-mobile-extensions-app subpackage that provides
gnome-extensions-app.
* pmbootstrap looks at the _pmb_recommends of the gnome-shell-mobile
package, which has "gnome-mobile-extensions-app" (this is wrong,
it should be in postmarektos-ui-gnome-mobile instead and this patch
fixes this!).
* pmbootstrap adds the "gnome-mobile-extensions-app" to the list of
packages to be installed.
* The result is an "apk add" line that has "postmarketos-ui-gnome" and
"gnome-mobile-extensions-app" (and more packages), which results in a
conflict betwen gnome and gnome-mobile packages.
Fixes: issue 3360
[ci:skip-vercheck]: _pmb_recommends changes don't need package rebuilds
[ci:skip-build]: already built successfully in CI
lafrite has u-boot in SPI already
it also prevents lafrite from booting because pmbootstrap uses GPT partitioning now.
Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Fixes the problem that BOOT partition is only 10 MB big while boot.img is 13 MB now.
Also heimdall was stuck at 7% with the sparse flag this gets fixed.
[ci:skip-build]: already built successfully in CI
As @grimler stated in MR !5887 (comment) [1], samsung-jackpotlte,
samsung-xcover4lte, and samsung-a30 share the same name for Wi-Fi
proprietary blobs, and packaged in their own specific firmware package.
The problem is these firmware packages put files in the same directory
as `firmware-samsung-a51`: /lib/firmware/postmarketos/mx140/. This opens
up the probability of conflicting blobs when multiple firmware packages
are installed on the system, resulting in wrong blobs used.
To ensure that this firmware is located in its own directory, move
`samsung-a51` blobs into its own subdirectory. This way, `a51` blobs
will stay intact whether multiple firmware packages are installed.
[1] https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/5887#note_459185
Successfully built and booted postmarketOS on Samsung Galaxy A51. It's based on Exynos 9611 SoC.
Currently, these are tested working:
- Boots from internal storage
- Display (DECON driver needs to be patched. Included in the kernel package)
- Framebuffer (additionally with msm-fb-refresher to refresh the screen)
- Touchscreen
- USB Networking (RNDIS)
- Wi-Fi
Tested UI environments: XFCE 4 & Console.
Wiki: https://wiki.postmarketos.org/wiki/Samsung_Galaxy_A51_(samsung-a51)
Ensure postmarketos-base-nofde is built before this package, otherwise
bootstrapping this on a new stable branch fails. This does not need to
be backported, as postmarketos-base-nofde has already been built for
v24.12.
Related: https://builds.sr.ht/~postmarketos/job/1384748
Actually Xfce4 is capable to use the "draw-user-backgrounds" option of
"slick-greeter", applying the users wallpaper on the greeter.
However, as it turns out, the users background in pmOS Xfce4 is set at first
login of the user. Therefore, the greeters background is black at the first
boot.
Therefore set the greeters background to the default postmarketOS wallpaper.
Move the polkit-elogind into depends= instead of pmb_recommends=, so
packages depending on postmarketos-base-ui-gnome can build successfully
again. The previous fix only helped for "pmbootstrap install", this fix
will help for both cases.
Without this, e.g. postmarketos-base-ui-gnome-mobile fails to build:
https://builds.sr.ht/~postmarketos/job/1384469
[ci:skip-build]: already built successfully in CI
Add polkit-elogind to _pmb_recommends, to help apk resolve the polkit
depends again. Otherwise it fails with a conflict since recent changes
in apk's dependency resolving code.
Fixes: issue 3349
[ci:skip-vercheck]: pmb_recommends change doesn't need rebuild
[ci:skip-build]: already built successfully in CI
Change <=…-r0 to <=…-r999 as it was just bumped to fix a build error and
might be bumped again in the future. I've also tried just removing -r0,
but that results in a conflict.
The Linux stable team merged v6.12 into linux-rolling-stable as
of Thursday, so here's a new release.
This release cycle was very quiet with small fixes.
The ttynull driver was enabled in the configuration to fix a bug
where userspace would start with no stdio open.
A patch that made the fuel gauge driver compatible with v6.10
was dropped.
Patches from MSM8916 and MSM8953 were re-picked, to include the change
from strlcpy to strscpy and to remove duplicate q6voice entries in a
Makefile.
Some flashlight and charging patches were staged.
The thermal nodes were sorted by the thermal sensor to match
other platforms.
Bluetooth, camera, call audio, display, USB, I2C, eMMC, modem, video
acceleration, WiFi, haptics, NFC, sensors, and touchscreen should
work and be slightly broken like before.
After commit 8335d050bf24977afefee6612dd347abd555bc53 in pmbootstrap the
partition table now defaults to GPT instead of MBR. This breaks booting
on Amlogic devices for the following reasons:
* On set-top boxes: downstream U-Boot most likely does not have GPT
support
* On boards where we install mainline U-Boot as BL33 on eMMC/SD: the
bootROM checks for an `@AML` image header at offset 512 (second LBA),
which means we are basically stuck on MBR
Some Amlogic boards have U-Boot + the proprietary Amlogic firmware
stages in SPI flash (mainly the Libre Computer boards do), which means
they can use GPT, because the firmware is simply not stored on eMMC/SD.
For that reason I chose not to change the partition table on those.
Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Fix TypeError when RuntimeError is thrown
Example:
FAILED testcases/test_device.py::test_aports_device -
TypeError: can only concatenate str (not "PosixPath") to str
Merge the following Samsung Galaxy Grand Prime devices into
samsung-fortuna:
- samsung-fortuna3g
- samsung-fortunaltezt (firmware only due to armv7 architecture)
- samsung-gprimeltecan
- samsung-grandprimelte (was samsung-gprimeltexx)
Resolves deadlock between Rockchip crypto hardware and dm-crypt causing
kernel panic during disk decryption on devices like PinePhone Pro.
- Disables RK3399 hardware crypto engine (CONFIG_CRYPTO_DEV_ROCKCHIP)
- Enables ARM64 CPU crypto extensions for AES/SHA
- Makes core crypto components built-in instead of modules
Fixes: kernel panic in queued_spin_lock_slowpath() when accessing
encrypted devices.
[ci:skip-build]: already built successfully in CI