Dependencies:
- Add dependency "xfce4-screensaver" to provide virtual keyboard at screen
unlock. As a dependency because several settings need to be implemented to
integrate it well in LXQt.
- Add dependency "setxkbmap" to make keyboard layout settings work
- Add dependency "upower" to make battery icon in panel work
Recommends:
- Add recommend "pulseaudio" to make sound work
- Add recommend "adwaita-icon-theme" because that's used by xfce4-screensaver
- Remove recommend "pavucontrol" because there is already "pavucontrol-qt"
Sources:
- Add autostart desktop file for xfce4-screensaver
- Add autostart desktop file to override lxqt-xscreensaver-autostart
- Modify autostart desktop file for onboard, a startup delay mitigates
an issue with the onboard panel icon not showing up at the first boot
- Modify lxqt-tablet.sh to include custom XDG_DATA_DIRS
- Add application desktop file to override xfce4-screensaver-preferences,
adding it to the menu
- Add application desktop file to override xscreensaver-settings, removing it
from the menu
- Change install location of "lxqt-tablet" repository configs from
/etc/skel/.config to /etc/xdg/lxqt-tablet. That way they are handled as
distribution-specific configs and are separated from the user configs in
~/.config.
- Upgrade to version 0.3 of "lxqt-tablet" repository:
- Change theme to "Dark" to fix panel look
- Increase panel size
- Change wallpaper mode to "zoom" to avoid deforming the picture
- Disable global single click to not interfere with PCManFM
- Add terminal and file manager launchers to panel
- Rename openbox xml file to apply the configs
- Set lock command to xfce4-screensaver
- Add xfconf files to configure xfce4-screensaver
- Clean up configs by removing default values
[ci:skip-build]: Already built successfully in CI.
These cmdline params are not needed because the issues they worked
around were fixed in 6.7 or in this kernel branch we are using.
Additional modules are included in the initramfs since they may not be
builtin in the future, and not having them loaded in the initfs can break booting
kconfig changes:
- Most are due to running 'pmb kconfig migrate'
- Enable USB_F_FS
- Build ath11k as a module + enable debug, to help with debugging
pma#2361
- Enable support for BT BR/EDR stuff (like HFP)
- Enable CRYPTO_MD4 for EAP_MSCHAPv2
This uses oem-specific packages for configuring Intel and AMD systems,
and installs them all by default for new images using pmbootstrap's
pmb_recommends feature.
The intention is to provide pre-built images with support for Intel and
AMD already enabled/configured, and users can remove an unwanted set of
packages (e.g., `apk del device-generic-x86_64-intel` when on an AMD
system) if they want to.
Upgrading existing systems should work, in that I haven't observed any
apk conflicts with it. But you do need to manually install the new
oem-specific package if you need it (e.g. `oem-intel`)
fixes https://gitlab.com/postmarketOS/pmaports/-/issues/2484
The panel driver has been renmaed in the kernel sources to be in line
with what's going to be upstreamed.
[ci:skip-build]: Already built successfully in CI.
Currently, when postmarketOS fails to boot up, retrieving any
information necessary to root cause the issue is non-trivial, requiring
building a custom initramfs with debug-shell enabled and then manually
copying out data.
Let's improve the situation by exporting logs automatically on boot
failure. This is safer than just exposing a root shell but still
provides a whole lot of useful info that should make duplicating and
triaging issues much easier for developers.
This commit implements the functionality and includes some generally
useful data. We then generate a README and expose files for each command/log
as well as an archive that can be easily attached to a GitLab issue.
To help with triaging, also record the version of the postmarketos-initramfs
package and hash the init.sh and init_functions.sh files.
For testing purposes, you can trigger the log recovery mode on-time by
creating an empty file named ".pmos_export_logs" in the /boot partition.
Signed-off-by: Caleb Connolly <caleb@connolly.tech>
Always write logs to the ramdisk, adjust setup_log() to spawn "tail" to
pipe the log to the console device when PMOS_NO_OUTPUT_REDIRECT is set.
This is necessary to ensure that the initramfs logs can be extracted on
a failed boot.
Signed-off-by: Caleb Connolly <caleb@connolly.tech>
In preparation of new sdm660-mainline kernel release all
downstream ports will become irrelevant.
If needed, downstream port can still be chosen as
'xiaomi-lavender-downstream' during pmbootstrap init.
Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
[ci:skip-build]: already built successfully in CI
non-free firmware not (yet?) submitted to linux-firmware, this is pulled
directly from the latest versions distributed by lenovo, instead of some
probably outdated repo distributed by random folks.
The bt firmware here fixes an issue where the bt range on the 21bx is
extremely poor (like ~1 meter or less)
linux3.4-ARM-8933-1-replace-Sun-Solaris-style-flag-on-section-xz-supplementation.patch
contains an addition that was not part of
linux3.4-ARM-8933-1-replace-Sun-Solaris-style-flag-on-section.patch
simply because error did not occur with the config I tested with.
[ci:skip-build]: already built successfully in CI
Upgrade to upstrem version 3.24.37-2pureos4.
Apply an explicit list of patches from the PureOS upstream sources.
These upstream patches were skipped in the previous version and are now
applied:
pureos/adaptive/Add-the-view-sidebar-symbolic-icon.patch
pureos/events-Compress-touch-update-events.patch
Remove upstreamed gdk-wayland-Track-last-touch-serial-on-seat.patch.
Add a fixed version of 'Port file chooser to phones' patch:
https://source.puri.sm/Librem5/debs/gtk/-/blob/pureos/byzantium/debian/patches/pureos/adaptive/Port-file-chooser-to-phones.patch
The original did not apply cleanly and was disabled by PureOS upstream:
f7dfd6e7b6
[ci:skip-build] already built successfully in CI
This device package is intended to replace the tablet-x*uefi device
packages. It was made by basically merging config from those two
packages.
One important change (besides the name, covered later) is that it
replaces grub-efi with sd-boot for these devices.
The pkgver is starting at '8' to get ahead of the packages this is meant
to replace.
Because package names, especially for device packages(!), is important,
here's a long explanation of why the name is "device-generic-x86_64":
"uefi" was excluded from the device package name, because it should (in
theory at least...) be able to simultaneously support EFI and non-EFI
boot in 1 device package. The device-qemu-amd64 package kiiiinda does
this already and could be a useful example for how to do that, though in
this situation we'd need to support syslinux for legacy boot instead of
what qemu does (bypass installed bootloader and directly boot the
kernel). In other words, the packages this one is meant to replace only
support EFI boot, they currently don't support legacy boot. So IF we
need to support legacy boot in the future and IF there's no way to
support both in one package, THEN we can consider changing the name of
this one or calling the other "-legacy" or something.
"x86_64" instead of "amd64" (like the device-qemu-amd64 device package),
because "x86_64" is what Alpine uses to refer to this arch, and it
doesn't have a hw vendor name baked into it.
"tablet" was dropped from the name, because there are many other x86_64 devices
out there that people might want to install pmOS. For example, it might be
confusing if you want to install pmOS on an x86_64 toaster but best
pmOS image for it is named "device-tablet-..."