The lack of rationales for device categorization has lead to a lot of
discussions, misunderstandings, and frustrations, as of why the
requirements are the way they are. Even though it's always good to
keep improving and exploring ways to change our processes, having
rationales can help to explain the "why"s that do not really get
addressed by the "how"s of the actual requirements. Hopefully, this
will lead to less discussions and misunderstandings around the
specific requirements.
Closes https://gitlab.postmarketos.org/postmarketOS/postmarketos/-/work_items/146
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8595>
This fixes two issues:
1. I was investigating why currently, pmbootstrap build --force
libcamera would fail. It turns out that the problem was possible to
reduce down to apk add eudev-dev resulting in installing eudev-dev
instead of systemd-dev, even with the systemd repository enabled.
This is because apk actually thinks it has a higher version:
name <eudev-dev> selected from selectable list
select_package: eudev-dev (requirers=1, autosel=1, iif=0, order_id=0x40005807)
consider systemd-dev-261_rc4-r0 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x0, provider_priority=100, installed=0
prefer existing package
choose as new provider
consider eudev-dev-3.2.14-r6 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x0, provider_priority=100, installed=0
select latest by requested name (greater)
choose as new provider
consider libudev-zero-dev-1.0.4-r0 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x0, provider_priority=20, installed=0
select latest by requested name (less)
selecting: eudev-dev-3.2.14-r6, available: 1
assign eudev-dev to eudev-dev-3.2.14-r6
disqualify_package: systemd-dev-261_rc4-r0 (conflicting provides)
disqualify_package: libudev-zero-dev-1.0.4-r0 (conflicting provides)
And why is that? It's because we have two providers here: One is
eudev-dev with a provider version of 3.2.14-r6, and the other is
systemd-dev with a provider version that is empty. This then results
in apk thinking the version number is greater, as seen above in the
verbose output. An unversioned provides= for an exact package name
match will never, ever, ever have any effect, even if the priority is
set super high, because the version number comparison is before apk
even starts looking at provider priorities.
Therefore, we should not have unversioned provides for eudev,
eudev-dev, eudev-libs and udev. Since those have fairly low version
numbers, we can just provide them with systemd's version number and
we'll be fine. This will now result in apk actually installing
systemd-dev when eudev-dev is prompted for installation.
2. After fixing the aforementioned issue, I noticed that I couldn't
build anything anymore. This is because my dependency tree would pull
in systemd and systemd-udev - completely normal. However, both
systemd and systemd-udev were providing eudev, and apk will refuse to
install two packages that provide the same thing at the same time.
The fix for this is to just not provide eudev in the top-level
systemd package and rather let systemd-udev do that.
With this, I can now finally build libcamera again!
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8857>
initramfs starts USB NCM gadget and unudhcpd for SSH login.
This requires special handling since unudhpcd is unmanaged by the
service manager until the userspace is started. Once entered in userspace,
the usb-moded-developer-mode needs to be activated which configures
NetworkManager and starts unudhcpd under the service manager.
This way, a full handover is possible and the gadgets can be properly
switched without any leftovers from the initramfs due to the unmanaged
situation.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
Persisted_Captules.sh is huge (70 MB) and can cause boot-deploy failures
when doing transactions that do large modifications to `/boot/`, such as
switching kernel packages. Persisted_Capsules.sh is recreated on reboot
and we do not use it for anything currently, so it is safe to remove in a
hook.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8368>
This adds two new subpackages, one pulls in in gnome software and the
other pulls in bazaar. Both subpackages provide a new virtual
(gnome-app-provider), and the main base GNOME UI pkg now depends on
this virtual. This allows us to ship bazaar in Duranium instead of GNOME
Software, and to continue to use GNOME Software by default on mutable
pmOS.
Previously there was an "optional" dependency on a sw
app provider (gnome-software, via pmb_recommends), but I made it a hard
dependency now because:
1) I think users can expect *some* app store thing to be available
by default, and the number of users who would remove all of them is
probably approaching 0
2) Ignoring pmb_recommends made the rest of this easier to implement,
since I'm not entirely sure how pmb would react to a virtual provided
by the pkg it is processing pmb_recommends for, and I didn't want to
find out.
Fixes#4634
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8831>
Renames pre-upgrade script to post-upgrade script for non-freefirmware
subpackage.
This script creates stub files for where the waveform firmware should
be. When upgrading from 13-r0, the script detects files being there,
thus does not create the stub files. Unfortunately, since before
15-r0 those files are "owned" by the subpackage, they are removed
when upgrading, and thus the stub files are never created by the
pre-upgrade. By making this script post-upgrade, it'll recreate the
empty stub files so that the actual waveforms can be extracted by
the systemd / openrc boot-up service.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8827>
* Describe relevant changes, especially that we may make non-backport
changes if there is a patch release for a package that meanwhile has a
higher version in main already (e.g. a kernel in main is on linux
7.x.y while stable is on 6.18.z).
* Directly pushing to a stable branch should only be done during initial
branch bringup, otherwise we shall always make MRs that go through CI.
* Update formatting and title of the page.
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
These conflicts in the sysext-dev-tools subpkg were intended to prevent
app store plugins from being pulled into the system extension image
(where they would not work as expected and cause confusion.) They were
causing an issue with how packages are snapshot in the duranium build CI
by causing a conflict when it tried to resolve base and sysext package
lists together (so install_if packages were included). The conflict
was from:
error: apk add --simulate failed:
ERROR: unable to select packages:
gnome-software-plugin-apk2-0.0.3-r1:
breaks: postmarketos-duranium-sysext-dev-tools-11-r0[!gnome-software-plugin-apk2]
satisfies: world[gnome-software-plugin-apk]
It's much simpler to just remove these conflicts and add these plugins
to the list of RemovedPackages in duranium's mkosi config so they are
purged before main image is finalized.
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8761>
* Note that several steps can already be done even if the community repo
is not published yet in Alpine.
* Adjusting arches in .ci/build-jobs.yaml.j2 is not needed anymore, CI
scripts read them from pmaports.cfg now.
* Branch protection: we have a v2*.* rule in place now that protects new
release branches automatically, adjust wording to just double check if
it still matches and add a link (in 2030 it will not match anymore.)
* channels.cfg: cover case that the aports branch may not exist yet in
pre-branch phase.
* Use git commit -s in example commands.
* postmarketos-ui-asteroid currently doesn't exist anymore, so we don't
need to delete it for stable.
* Add the command for regenerating cross packages.
* Remove postmarketos-repo-nightly in stable.
* Bootstrap of binary packages: tweak wording, mention that only the
main repo needs to be built for x86_64 before arm repos can be
enabled, we don't need to wait for the x86_64 systemd repo.
* Adjust to QEMU devices not being in main anymore.
* Various syntax fixes and readability improvements.
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8815>
In the previous commits,
- enabled bootloader support on 32-bit architectures,
- fixed libpwquality dependency,
- enabled libarchive and zlib supports,
- enabled xen kexec support,
- enabled valgrind support,
- added systemd-tests subpackage,
- added upstream build support.
So, let's bump the pkgrel to make them take effects.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
For https://github.com/systemd/systemd/pull/39823
The upstream systemd's mkosi build requires that systemd-boot and ukify
are also built from the upstream source files.
Also, mkosi needs to pass specific source and build directories,
override default meson options, and so on. To support them, this adds
several extra environment variables support:
- $_systemd_upstream,
- $_meson_extra_configure_options,
- $_meson_builddir,
- $_upstream_srcdir.
Note, postmarketOS image built with mkosi already enables usr-merge. Hence
several symlink paths are changed when $_systemd_upstream is set.
This should not change any behavior when the above environment variables
are _not_ set.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
1. Use udev's uaccess tag mechanism to permit unprivileged access to the
gpio_keys input device which reports EV_SW events such as SW_KEYPAD_SLIDE.
Thus the user can interact with the keypad slide switch under X11 without
needing to be in the input group. Do the same for the power button, even
though X11 can read it directly.
2. Drop acpid and related configurations. This removes the dependency on user
being in the input group.
3. Switch to the logind SetBrightness API to control the keyboard LEDs
without requiring elevated permissions. brightnessctl as packaged under
Alpine currently depends on the user being in the input group to control
LEDs.
4. Improve the keyboard backlighting so it is more even, by setting higher values
of brightness for the innermost keyboard backlight LEDs.
5. Simplify the touchscreen calibration rules and merge with the rules for
gpio_keys and power button.
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8748>
systemd supports using gcc or clang for bpf compilation, using clang
seems easier since the gcc option requires bpf-gcc and a few other tools
that don't seem to be packaged in Alpine.
This isn't working on ARM (see #4411 ), but we can enable it now for x86
and in preparation for a kernel fix on ARM later.
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8779>
The input group should not be blanket allowed for UIs that do not need it as
it bypasses the security benefits of Wayland. This change explicitly adds
the input group to only the UIs that absolutely require it, which is only
SXMO due to their udev rules and lisgd.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
[ci:skip-vercheck]
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8767>
Commit a4e9924792 ("linux-htc-flounder: Modernize package") dropped the
kernel.release install step. Since then a fresh build fails at install:
(rootfs_htc-flounder) % mkinitfs
ERROR: only one kernel release/flavor is supported, found: []
postmarketos-mkinitfs needs /usr/share/kernel/$_flavor/kernel.release
to detect the flavor. Restore the install line (same as other kernel
packages).
Tested: pmbootstrap 3.10.1, edge; fresh install for htc-flounder passes
mkinitfs again and the image boots on hardware.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8796>
Force partition resizing as we are installing to sdcard.
Add an x11 config snippet to have cloned displays. This
will help non-specialized UIs to be usable by having the
same picture for both eyes. Seeing totally different things
on both eyes is a nightmare.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8774>
Sway subpackage existed to provide a shim between 7-r0 and 8-r0, where
sway UI configuration was refactored to be under `$pkgname-sway-hrdl`
subpackage instead of `$pkgname-sway`. This refactor was for two reasons:
1) clean-up package so that just the necessary files were included for
different UIs
2) Since sway subpackage was pulled by sxmo-de-sway, it made sense
only sway-related files be packaged by that subpackage.
Since 96853032, sway subpackage depends directly on `$pkgname-sway-hrdl`
subpackage to automatically pull sway-UI opinionated configuration by
default. This was a mistake, as it broke `sxmo-de-sway` that conflicts
with `iio-sensor-proxy` due to depending on conflicting polkit packages.
This commit drops sway subpackage, as the shim is not necessary anyway,
and adds `install_if` to `$pkgname-sway-hrdl` to automatically install
package when installing `postmarketos-ui-sway`. This means
`$pkgname-sway-hrdl` is never pulled when installing
`postmarketos-ui-sxmo-de-sway`, thus never pulling `iio-sensor-proxy`.
Fixes#4612
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8784>
u-boot-pinebookpro-2020.07 has a bunch of patches:
- 0001-enable-rockchip-rng.patch
- Upstream as dc38a58360bfc3b21621dc9d5e626febd1aa93ec, in v2020.10
- 0002-enable-usb-keyboard.patch
- Partially upstream as 3a57712496ab4383c528184ad1021908d6620162, in v2020.10
- 0003-display-support.patch bundles has multiple patches:
1. Upstream as 7fe2ebf3a326026b9ab80ed94da3cd217c84724d, in v2021.07
2. Upstream as 04d67ceb1c62012822430135be31e18c9c176d85, in v2021.07
3. **not upstream**
4. **not upstream**
5. Upstream in decbc18ed2a9788fcaad3ca349def7bad36741f4, in v2021.07
6. Upstream as a0c248ef0844da239096ecb4a83f9fa2b0535117, in v2021.07
7. Upstream in b197c934b11f611dcc1a083d90e68019d1e010cf, in v2021.01
8. Upstream as 4db3926874a6a17cca1f97a4fd92e58e9182a272, in v2021.07
9. No longer required (screen works fine after warm reboot).
10. Upstream in 216928c772798609ba2cb01a42b6f89832bb0587, in v2023.01
11. Upstream in fce1e9bba263fb5e3e589fdc5c2321f733e3de81, in v2022.07
- 0004-rk3399-light-pinebook-power-and-standby-leds.patch
- LED support is already upstream. It's not as early as this patch,
but its preferable to align with mainline.
- 0005-support-SPI-flash-boot.patch
- Superceded by f9d67436ce5814ea4e394317ddeaf1dbecb1c36b, in v2020.10
- 0006-implement-boot-menu.patch has four patches
1. Disable CONFIG_SPLASH_SOURCE instead of patching the source.
2. No compressed bmp logo in use. Unnecessary and labelled as a hack.
3. Irrelevant as we don't enable CONFIG_CMD_BOOTMENU for this device.
4. Kept patch "vidconsole-uclass: Implement ANSI_CURSOR_COLUMN".
- 0007-rockchip-boot-order.patch
- Upstream as b212ad24a604b00b240add35516b7381965deb31, in v2021.10
- 0008-rockchip-boot-order-add-usb.patch
- **not upstream**
- 0009-rk3399-support-compressed-kernel.patch
- Upstream in 6c041b35bf8966ef3d48fc439c1c07131431d2f5, in v2020.10
Drop a few cosmetic and UX improvements were dropped. These are not
strictly required for device support. For example, only the Esc or
Ctrl+C key would interrupt boot, rather than u-boot's "press any key".
Carrying these improvements puts a burden on maintenance and drifts us
further from upstream.
Rebasing all the way up to v2024.01 was mostly strightfoward, but
v2024.07 had some major conflicts. The conflicting patch was already a
hack, so the result is a hack too.
Also drop "Define a very-opinionated boot sequence". This enables the
truetype console (which no longer builds on ARM64) and relies of
features which have been completely re-written upstream.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8586>
I think it's pretty common to want to manage an eSIM on most modern
phones now, so let's install an eSIM management app by default.
For phones without eSIM support:
- I don't think having this by default is an issue, and users can
uninstall it (it's in pmb_recommends)
- There are eSIM adapters that fit in SIM slots, so this app is relevant
for them
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
[ci:skip-vercheck] - pmb_recommends
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8749>
apkbuild-lint only checks the file from the first parameter:
$ apkbuild-lint main/postmarketos-ui-phosh/APKBUILD
IC[AL65]:main/postmarketos-ui-phosh/APKBUILD:66:2:non-local 'install' variable in function 'openrc'. Add install scripts to global install variable instead.
MC[AL49]:main/postmarketos-ui-phosh/APKBUILD:46:1:invalid option 'pmb:drm'
MC[AL49]:main/postmarketos-ui-phosh/APKBUILD:46:1:invalid option 'pmb:systemd'
$ apkbuild-lint main/hello-world/APKBUILD main/postmarketos-ui-phosh/APKBUILD
(empty output!)
Loop over the APKBUILDs we want to lint so all of them get checked.
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8735>
I was wondering why apkbuild-lint found a bug locally but not in CI:
IC[AL65]:main/postmarketos-ui-phosh/APKBUILD:66:2:non-local 'install' variable in function 'openrc'. Add install scripts to global install variable instead.
The reason is that the we use alpine:latest here. Let's change it to
alpine:edge so we have the most recent abuild-go version that finds the
most APKBUILD linting bugs.
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8735>
bluebunny's j7xelte has sadly bricked, and so they would prefer to step
down as co-maintainer. I will replace them and so my best to carry the
torch and fill their shoes!
[ci:skip-build] [ci:skip-vercheck] just updating maintainership
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8731>
For seamless systemd support:
1. Fix sway locking script. systemd adds more paths under /run/user, which
interfere with `find`. Limiting the search depth works around the issue
2. Only force load `nokia-modem` driver under openrc. With systemd, force-
loading the driver appears to confuse systemd-udevd during boot, causing
long boot times and even total failure. On the running system, the driver
also causes systemd-udevd to become unstable. Until the issue is resolved
(probably in the driver), there will not be any modem support when using
systemd
3. Remove the isp1704 driver (for the PHY) from the initramfs. Under systemd,
it might load too early and fail, leading to slow charging in the running
system. It is more reliable when loaded later on. Charging still works in
the initramfs since the actual charger driver (bq2415x) is available
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8612>
systemd-stage0 is currently at pkgrel=1, while systemd is still at
pkgrel=0. However, systemd provides systemd-stage0=$pkgver-r$pkgrel, so
currently, installing systemd-stage0 will always install systemd-stage0
instead of systemd. Their pkgrels MUST be kept in sync.
[ci:skip-vercheck]: the stage0 package change is only a new comment
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8709>
Removes the template file to abide by hermetic-usr. If a user
wishes to override deviceinfo themselves, then they can create
the file. Existing /etc/deviceinfo files will not be deleted if
they have been edited, so current installs with modifications
will not be affected.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6834>
When building dbus against systemd-stage0, we need to have libucontext
installed. Since systemd-stage0 uses !tracedeps, it needs to be
specified manually in depends. I've reproduced the build error locally
and verified that this fixes it.
Fix for:
[195/243] Linking target test/manual-test-thread-blocking
ninja: job failed: cc -o test/test-sd-activation test/test-sd-activation.p/sd-activation.c.o -Wl,--as-needed -Wl,--no-undefined -pie -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs -Os -fstack-clash-protection -Wformat -Werror=format-security '-Wl,-rpath,$ORIGIN/../dbus' -Wl,--start-group test/libdbus-testutils.a dbus/libdbus-1.so.3.38.3 dbus/libdbus-internal.a /usr/lib/libglib-2.0.so /usr/lib/libintl.so /usr/lib/libgio-2.0.so /usr/lib/libgobject-2.0.so -pthread /usr/lib/libsystemd.so -Wl,--end-group
/usr/lib/gcc/aarch64-alpine-linux-musl/15.2.0/../../../../aarch64-alpine-linux-musl/bin/ld: warning: libucontext.so.1, needed by /usr/lib/libsystemd.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/aarch64-alpine-linux-musl/15.2.0/../../../../aarch64-alpine-linux-musl/bin/ld: /usr/lib/libsystemd.so: undefined reference to `swapcontext'
/usr/lib/gcc/aarch64-alpine-linux-musl/15.2.0/../../../../aarch64-alpine-linux-musl/bin/ld: /usr/lib/libsystemd.so: undefined reference to `getcontext'
/usr/lib/gcc/aarch64-alpine-linux-musl/15.2.0/../../../../aarch64-alpine-linux-musl/bin/ld: /usr/lib/libsystemd.so: undefined reference to `makecontext'
collect2: error: ld returned 1 exit status
Related: https://builds.sr.ht/~postmarketos/job/1776990
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8704>
Building this package is currently failing with:
scripts/Kconfig.include:41: linker 'aarch64-alpine-linux-musl-ld' not found
This kernel was switched over to LLVM and it built fine then, but due to
other changes (pmbootstrap maybe?) it doesn't build anymore. This is
currently blocking v26.06 bringup, so let's temporarily switch back to
GCC until we can resolve it better in edge, probably by getting !8578 in
which is currently blocked as there seem to be regressions.
This reverts the APKBUILD changes from
9b27b4a0f7.
[ci:skip-kconfigcheck]: minimal changes to make this build again
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8693>
q6voiced stores its config in the OpenRC configuration directory, which is
automatically picked up by the default_openrc split function and moved to
the openrc subpackage. This means q6voiced never starts on systemd. Move
this config out of the openrc subpackage by not using default_openrc.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8656>
Changes since v6.12.63 are:
* Rebase on top of 6.18.33
* Sync manta with mainline (@lat3st, @alexmrqt)
* Add bluetooth support to manta (@lat3st, @alexmrqt)
* Fix manta magnetometer with mainline dts (@alexmrqt)
* Fix hang on suspend/display off on galaxy pros (@eisenbahnfan)
* Add support for max77888 and use it on galaxy pros (@eisenbahnfan)
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8634>
systemd 261 can now natively detect and mount subpartitions.
Fixes#4544
This also works around an issue where udiskie will prompt for mounting
the /usr partitions on disk, when they are subpartitions. I didn't
file a bug upstream because it's really not clear to me what to blame
(udisks2? udiskie? udev?)
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8660>
Split postmarketos-base-nofde out from postmarketos-base to fix this
bootstrap problem:
postmarketos-initramfs:
provides: postmarketos-ramdisk
depends: postmarketos-fde-unlocker
postmarketos-base:
depends: postmarketos-ramdisk
provides: postmarketos-fde-unlocker (via postmarketos-base-nofde subpackage)
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8657>
Apparently plymouth's config parser can't handle in-line comments. This
also fixes an issue I just noticed where the scale wasn't being parsed
correctly either because 1.0 is not a uint.
../src/libply/ply-key-file.c:427:ply_key_file_get_ulong : group 'Daemon' key 'DeviceScale' val '1.0' is not a valid unsigned number
../src/libply/ply-key-file.c:427:ply_key_file_get_ulong : group 'Daemon' key 'XkbExtraEscButton' val '0x1008ff2a # Power button (XKB_KEY_XF86PowerOff)' is not a valid unsigned number
The additional xkb config is necessary for plymouth to detect the pwr
key press, or else it isn't initialized.
Fixes#4548
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8561>
Without this rule, fb0 doesn't get ID_PATH set in the udev database
and plymouth this to detect that fb0 is backed by a DRM device. This
fixes an issue where plymouth times out and treats fb0 as an independent
display, and creates a second framebuffer renderer, which caused it to
render the splash at the wrong resolution.
These lines were lifted from 71-seat.rules, which are packaged in
systemd-udevd and elogind. They're vendored here because we don't want
to depend on elogind just for a few udev rules. These rules should be
idempotent in the rootfs (setting ID_PATH is guarded by ID_PATH=="" and
IIUC setting an existing TAG is a noop in udev)
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8561>
We don't need to have makedepends="postmarketos-initramfs" for building
postmarketos-base. I'm not sure why this was added in
6c799ac4f6.
Removing it fixes this dependency loop we currently see in BPO while
bootstrapping v26.06:
* postmarketos-initramfs-3.11.0-r0 (missing depends: postmarketos-base)
* postmarketos-base-61-r1 (missing depends: postmarketos-initramfs)
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8643>
Pinenote includes waveform lookup tables that are proprietary and only
available through the `waveform` partition. Before, we packaged empty
files for the firmware so that mkinitfa does not fail. The init scripts
then extracts the waveform binaries on first boot. Unfortunately, this
has the consequence that of overriding the extracted binaries every boot.
Fixes this by only creating stub files when files are missing so
mkinitfs does not fail via pre upgrade and install script.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8639>
Loaded 100 of 1163 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.