Update the close-to-mainline linux kernel fork for the MSM8930 processor to 6.13.0.
According to wctrl, this also makes WiFi work, if you place the drivers in the initramfs. Haven't tried that.
[ci:skip-build]: already built successfully in CI
kded currently doesn't start with the session, but when I rename the systemd unit file to plasma-kded6.service, it starts automatically.
[ci:skip-build]: already built successfully in CI
1. disable USB-gadget as this device has a UART available in HW
2. disable the fb detection (used for pbsplash), as I am not progressing
with getting HDMI working.
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
[ci:skip-build]: already built successfully in CI
Since we have aports-qa-bot now set up to ping maintainers, let's make
it explicit that I maintain these packages.
Clean up CODEOWNERS as well for my entries which anyways contain my
username which is not used on gitlab.p.o.
[ci:skip-vercheck] # even though Maintainer line is embedded in .apk, it
doesn't make sense to mass rebuild these packages just for that.
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
The kernel doesn't compile anymore due to updated toolchain:
scripts/Makefile.lib:414: *** prerequisites cannot be defined in recipes. Stop.
make[3]: *** [../scripts/Makefile.modbuiltin:54: techpack/audio/dsp] Error 2
Remove it since mainline kernel is working better anyways.
I evaluated using systemd/zram-generator but decided against it for the following reasons:
1) it was more difficult to configure using the existing deviceinfo var
we have for zram_pct, this meant that we would ultimately couldn't have
a consistent way to configure zram stuff for all supported init systems
2) it's a Rust app, and was failing to build in CI for armv7, riscv64,
and armhf with some weird qemu crashes, failed tests, etc
3) zram-init Just Works, upstream ships a unit file for it so they
support running under systemd already
[ci:skip-build]: already built successfully in CI
The SM7150 devices have seen a lot of work put into them and are
generally very usable except for microphone/earpiece audio and cameras.
Both of these features are still work in progress and should be
available sometime in the future. They fulfil the requirements for
community in the Wiki, so let's promote them.
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
PMEM aka persistent memory enables a region of memory to be treated as a
block device. This is particularly useful as a way for EFI bootloaders
to retrieve a full OS image (via HTTP) and make it accessible to the OS.
Support for this is making its way to U-Boot: https://lore.kernel.org/u-boot/20250203105912.196654-1-sughosh.ganu@linaro.org/
Let's enable this in postmarketOS so we can enable HTTP booting images
directly from postmarketOS.org.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
[ci:skip-build]: already built successfully in CI
No longer needed since soc-qcom provides all of the config/dependency
requirements that this pkg used to. It can be re-added later if some new
sdm845-specific stuff is needed
Commit cb7074d8a8 removed this subpackage
and unconditionally enabled the unl0kr quirk in soc-qcom-sm7150, but the
xiaomi-davinci device package was never updated to account for this.
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
[ci:skip-build]: already built successfully in CI
This has caused some issues for me, specifically in my framework,
where unl0kr was otherwise not showing in the main screen (but would
if connected an HDMI over the USB-C port)
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
A surprinsingly amount of devices use this quirk. So instead of having
each of those packages package the file individually, let's create a
single unl0kr subpackage that they can depend on
Fix that building phosh, gnome, plasma-mobile images fails with:
==> Generating vmlinuz.kpart
Building depthcharge image for board 'Unnamed veyron board' ('veyron').
Couldn't build a small enough image for this board.
Related: https://builds.sr.ht/~postmarketos/job/1422513#task-img-1544
Related: bpo issue 153
[ci:skip-build]: already built successfully in CI
The Khadas VIM3 [1] is a popular devboard (SBC).
It has an Amlogic A311D SoC and is well supported in mainline linux.
Add board support in testing.
Note that we use the soc-amlogic-s905 package which also provides
support for A311d.
[1] https://www.khadas.com/vim3
Signed-off-by: Mattijs Korpershoek <mattijs.korpershoek@gmail.com>
Installation of lang gets moved from pmbootstrap to pmaports, since
pmbootstrap previously had installed lang only on non-default locale
systems. With this change also systems on the default locale can switch
between languages.
Closes: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/3314
[ci:skip-vercheck]: only _pmb_recommends was changed
[ci:skip-build]: already built successfully in CI
At first fix issue #3315 caused by config file snippet openbox/rc.xml. The
snippet results in unresponsive window headers after changing the Openbox
theme. The Openbox settings GUI ObConf-Qt is not set up to handle config
snippets. Therefore replace the snippet by the full file of openbox/rc.xml.
The issue was investigated at:
https://github.com/Mikachu/openbox/issues/23
Secondly custom Openbox themes of dark style Onyx and bright style Clearlooks
with larger window buttons are added.
Thirdly the default Openbox theme is set to custom Clearlooks with larger
window buttons and additionally the Openbox font size is increased.
Detailed changelog of GitLab repository antoni.aloytorrens/lxqt-tablet:
- Increase Openbox font sizes
- Set default Openbox theme to "Clearlooks-L" with larger buttons
- Add custom Openbox themes Clearlooks with larger window buttons
- Add custom Openbox themes Onyx with larger window buttons
- Set the number of desktops to two again
- Restore full openbox/rc.xml config file
[ci:skip-build]: already built successfully in CI
Alpine now ships compressed firmware, so the old firmware file name is no
longer available, causing wl1251-cal to fail. Fix by manually creating the
expected uncompressed file.
Additionally, wl1251-cal has not been running early enough in most cases,
causing the kernel to use default nvs. Fix by blacklisting the driver and
probing it after the correct nvs has been extracted and saved.
[ci:skip-build]: already built successfully in CI
The kernel couldn't be compiled. Additional patches were necessary to compile the linux kernel again.
[ci:skip-build]: already built successfully in CI
This does not yet switch to mainline wifi driver [^1]. I will do that later
so that if that needs to be reverted the kernel upgrade itself can stay.
[^1]: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/3420
[ci:skip-build]: already built successfully in CI
modules-initfs: Add touchscreen and panels, drop gpi and spi
1. Add the touchscreen (nt36xxx-spi), panels (panel-huaxing-nt36672c,
panel_tianma_nt36672c) and wled to modules-initfs, as these drivers
have been switched to modules.
2. Drop GPI and SPI from the module list as they have been configured
as built-in within the kernel.
Refine nonfree firmware dependencies:
1. Removed the common GPU firmware package from soc-qcom-sm7150 and
subsequently re-added it to firmware-xiaomi-surya in earlier commits.
We now ensure the GPU ZAP firmware is installed by adding
firmware-xiaomi-surya-gpu as a dependency to nonfree_firmware.
2. Incorporated firmware-xiaomi-surya-sensors into nonfree_firmware,
following its prior inclusion in firmware-xiaomi-surya.
3. Extended the integration of the soc-qcom-sm7150-libssc-180-degrees
udev rule into nonfree_firmware, building on its earlier addition to
soc-qcom-sm7150.
4. Install firmware unconditionally and provide a path for hexagonfs.
The Xiaomi POCO X3 NFC (xiaomi-surya) has two possible panel variants:
Huaxing and Tianma. The kernel dts file has been split to accommodate
these variants. Update the device package to enable panel selection
during the pmbootstrap init.
Co-authored-by: Jens Reidel <adrian@travitia.xyz>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
1. Added maintainers information.
2. Use a new method for firmware installation.
3. Add firmware for sensors.
Co-authored-by: Jens Reidel <adrian@travitia.xyz>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Drop the signed A615 GPU ZAP firmware from soc-qcom-sm7150 due to
compatibility issues causing crashes on Xiaomi (sweet/courbet) devices.
This firmware will be re-added in device-specific firmware packages
without being added to initramfs modules. Removing this firmware from
initramfs modules will not impact FDE functionality, as it is not
necessary for basic image display on panels.
Removal from initramfs modules is due to a change in the path to the
A615 GPU ZAP firmware, now device-specific.
Depend on new alsa ucm config package.
Add hexagonrpcd as a dependency and enable the
hexagonrpcd-adsp-sensorspd service for SSC.
Implement accel libssc_180_degrees mount matrix:
Introduce new udev rules tailored for Xiaomi devices (surya/davinci)
and potentially applicable to a broader range of sm7150 devices.
These rules are added to the SoC package and will be set as dependencies
in device packages for nonfree_firmware in subsequent commits.
Drop userspace pd-mapper, we have switched to the in-kernel
pd-mapper.
Add bootmac to set bt mac address.
Install nonfree firmware unconditionally.
Co-developed-by: Danila Tikhonov <danila@jiaxyga.com>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Co-developed-by: Jens Reidel <adrian@travitia.xyz>
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
Also add config to rmtfs so systemd starts stuff in the correct order.
I added the msm-modem unit here instead of in pmaports/modem/msm-modem
because systemd-services handles creating boilerplate install scripts
automatically.
fixes#3451
[ci:skip-build]: already built successfully in CI
Users who want pulseaudio or pipewire (for audio) can still install
them, but by removing any audio backend by default we can avoid creating
images that include pulseaudio/gstreamer/mesa.
Before:
$ ls -hal /home/clayton/.local/var/pmbootstrap/chroot_native/home/pmos/rootfs/qemu-aarch64.img
-rw-r--r-- 1 root 12345 1.1G Feb 10 14:49 /home/clayton/.local/var/pmbootstrap/chroot_native/home/pmos/rootfs/qemu-aarch64.img
After:
$ ls -hal /home/clayton/.local/var/pmbootstrap/chroot_native/home/pmos/rootfs/qemu-aarch64.img
-rw-r--r-- 1 root 12345 806M Feb 10 14:49 /home/clayton/.local/var/pmbootstrap/chroot_native/home/pmos/rootfs/qemu-aarch64.img
fixes#3541
[ci:skip-build]: already built successfully in CI
Our libcamera fork needs a rebuild, as pointed out by the
upstream-compat monitoring job:
Increase 'libcamera' pkgrel (9 -> 10), missing depend(s): so:libgtest.so.1.15.2
[ci:skip-build]: already built successfully in CI
GTK shipped the ngl (new GL) renderer last year and deprecated the
legacy gl renderer. In GTK 4.17 this renderer has been removed entirely,
which means the devices that were forcing the use of this legacy
renderer need to now fallback to software rendering instead.
Fixes: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/3533
Signed-off-by: Sam Day <me@samcday.com>
[ci:skip-build]: already built successfully in CI
This check is present for "normal" packages, duplicate it for
ones that are thrown into "retry build with systemd later" list.
We need to explicitly pass with_extra_repos="enabled" arg to
find() to avoid getting cached "package not found in repos" result.
Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
[ci:skip-build]: already built successfully in CI
This replaces the downstream kernel with a near-to-mainline kernel, and also adds a msm8930-specific mainline package. While this removes some functionality (screen, touchscreen), this makes the boot more stable (boots no matter if charging or not). To flash this, you first need to flash lk2nd, and then flash to the userdata partition with pmbootstrap flasher flash_rootfs --partition userdata. You might need to wipe the system partition. The boot finishes, but to get USB networking, you might need to dis- and re-connect the device ca. 10 seconds after (re-)booting. SSH and internet-over-USB works fully.
Suddenly apk wants to install other ucm pkgs that conflict with
soc-qcom-sdm845-ucm, like the soc-qcom-msm8996-ucm pkg. Later when the
sdm845-ucm is installed it conflicts with the previously installed (and
incorrect) ucm pkg.
This SOC pkg depends on alsa-utils from e95d28a6, but the
call_audio_idle_suspend_workaround.sh that was added in that commit
doesn't actually seem to be using apps from alsa-utils, so maybe it's
safe to remove that dependency and fix an issue where apk will sometimes
install the wrong alsa-ucm-conf pkg for a device...
[ci:skip-build]: already built successfully in CI
Run e2fsck before resizing the root partition so that resize2fs will
actually succeed
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Tweaked-by: Oliver Smith <ollieparanoid@postmarketos.org>
[ci:skip-build]: already built successfully in CI
The udmabuf allocator enjoys increasing popularity, not only being
used by libcameras swISP and some virtualisation apps, but since Mesa
commit d74ea2c1 even in llvmpipe - and more projects plan adoption,
such as Gstreamer.
Thus let's ensure it's universally available for UI users if the
kernel supports it.
As there are DEs that don't support the "uaccess" tag, such as SXMO,
and "legacy" groups are still used in pmOS anyway, use the later.
- hexagonrpcd-adsp-rootpd should only be started if valid config exists
for it, e.g. provided by device pkgs
- For devices with a CDSP: only the -adsp-rootpd and -sdsp services should
be started.
- For devices with only an ADSP: only -adsp-rootpd and -adsp-sensorspd
should be started.
This also stops the hexagonrpcd-adsp-sensorspd on suspend, attempting
to work around some issue wrt sargo that is implemented in openrc (see
fe00027849)
[ci:skip-build]: build tested locally since alsa-ucm conflicts prevent
build testing in CI
By sharing the config file and making the systemd unit files match the
openRC ones as close as possible.
Also fix the q6voiced.conf path while on it.
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
By sharing the config file and making the systemd unit files match the
openRC ones as close as possible.
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
Matching the openRC ones. Also make use of the hexagonrpcd_fw_dir env var
and reuse the correcponding conf files, making it easier to support
both init systems.
Drop all uses of the /etc/skel feature for adding configuration files and
scripts to the user's $HOME. Files installed via /etc/skel are outside the
control of the package manager and may result in broken installations. At the
least, they are not updateable from the packaging.
To implement this:
* drop $HOME/.protip_shell.sh, whose usefulness is questionable
* relocate i3blocks blocklets to /usr/share, and the config file to /etc/xdg,
which is an i3blocks' standard search path (`man i3blocks`)
* move the i3 configuration file to /etc/xdg, from where it can be picked up
and included by the config file provided via postmarketos-ui-i3wm. Configs
from $HOME are still parsed, and will be honored by i3wm, subject to i3's
limitations in connection with including extra config files
* at i3 startup, with the help of an external script, ensure there is an i3
config file in $HOME, even if empty. This prevents i3-config-wizard from
running and mangling the config files
* convert xdefaults to Xresources and store in /usr/share/X11. Load it to on
the environment by calling `xrdb` during i3 startup
Gstreamer enables hw de- and encoding by default for the most common APIs,
including V4L2-stateful. Unfortunately the venus driver is still quite
unstable, reliably crashing in very common scenarios, triggering apps
like Snapshot, Showtime or Tuba to show error messages or not working
properly - partly because of non-optimal error-handling.
Until the kernel driver situation improves, set environment variables
that demote the decoders to fallbacks in case nothing else is available,
and disable the hw-encoders completely as they tend to destabalise the
whole system if something goes wrong.
Useful command for env variables:
systemctl --user show-environment
This MR adds the boilerplate packaging needed for Mediaberry.
mbrt and sysapps are not included in this MR because Alpine Linux does not (yet?) package CEF.
For transparency: The packages here are based on the code from https://codeberg.org/lasagna/lasagna-pmaports.
[ci:skip-build]: CI fails cause of fakeroot on armv7 - known issue with CI.
Pretty sure when you already have a-z specified as range, second one
should be A-Z and not A-z.
Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
Since 1.15.11 this is supported (see
https://github.com/flatpak/flatpak/pull/5688/files). According
to the docs:
System-wide remotes can be statically preconfigured by dropping
flatpakrepo files into /usr/share/flatpak/remotes.d/ and
/etc/flatpak/remotes.d/. If a file with
the same name exists in both, the file under
/etc will take precedence.
This allows us to move the file without fear that if users disabled
or modified the repo, apk will keep the file in /etc and we won't
override it.
This is part of a wider effort to move things out of /etc and
into /usr
Fixes#2596
[ci:skip-build]: already built successfully in CI
It is needed by udev, which is in initfs-extra. If libkmod and its
dependencies are put in the first initfs then the boot.img size
increases by roughly 2 MB, which is a problem for devices with small
boot partitions.
Fixes: postmarketOS/pmaports#3510
[ci:skip-build]: already built successfully in CI (riscv64 failed
because of know qemu CI issue)
Add a note with the reason for archiving and a suggestion to use the generic port (qcom-msm8953), remove maintainers. These individual ports was replaced (MR 5800) by the generic one (qcom-msm8953)
[ci:ignore-count] [ci:skip-vercheck]
The current OOTB Gstreamer experience on Gnome DEs can be disappointing as
a lot of default codecs and elements are missing. This is often not obvious
for users as Gst in various cases has less optimal fallbacks, easily leaving
the impression that either an app, drivers or hardware are at fault.
Add the most important packages to pmb_recommends so users have a better time.
Notes:
- Many images already ship ffmpeg-libavcodec, so this shouldn't worsen the
legal situation.
- '-bad' is usually already pulled in indirectly while '-good' at least for
GS variants is already required. Both are strongly recommended for apps
like Showtime, Snapshot and many more mobile-friendly apps from the
ecosystem.
- '-bad' really isn't bad any more these days and various elements in it
are used by default if available. That is, many elements there should have
long moved to '-good'.
This was done in 7 steps:
* prepare by running pmbootstrap kconfig migrate
* fix up kconfig category:uefi
* fix up kconfig category:zram
* fix up kconfig category:default
* fix up kconfig category:default (NULL_TTY)
* fix up kconfig category:input
* bump pkgrels
[ci:skip-build]
[ci:ignore-count]
The null TTY driver provides a proper (dummy) TTY interface when
console=null is set on the kernel cmdline. This fixes certain
applications which don't correctly handle read() immediately returning
with 0 bytes (e.g. busybox syslogd).
Most normal EFI devices don't boot with console=null and as such there
are various foot-guns littered all over Linux userspace and even in our
own initramfs. However some android devices even enforce console=null,
so it's something we have to deal with.
NULL_TTY should reduce the chance of folks running into strange problems
because of this.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Changelog of xfce4-phone 0.6.0:
- Update screenshot
- Remove separator on the left-hand side of the clock
- Increase font size of the clock
- Change order of panel plugins "pulseaudio" and "power-manager"
- Increase icon size of status tray in panel
- After Xfce 4.20 release remove outdated "backdrop" settings
- After Xfce 4.20 release set theme "Greybird" explicitely
[ci:skip-build]: already built successfully in CI
The Xfce4 power manager can control the display brightness. It doesn't
save and restore it over boots, however. In distributions with systemd
this is handled by "systemd-backlight@.service". For OpenRC the package
brightnessctl offers a service saving the state of the brightness at
shutdown and reboot.
As brightnessctl is a rather simple tool and not specifically adapted to
Xfce4, it can get confused when the power manager e.g. lowers the display
brightness when on idle. To avoid such a hassle, the display power settings
were simplifyed in repository "xfce4-phone" version 0.5.3 (and needed a
correction in version 0.5.4). Users nonetheless can change them if desired.
The package was named tinydm instead of tinydm-systemd accidentally.
This will cause tinydm-start-session to vanish after upgrading,
completely breaking booting into any GUI that depends on tinydm.
(only systemd installations are affected)
when stdin is /dev/null (e.g. when console=null is on the kernel
cmdline) syslogd will call read() over and over and never handle the
SIGTERM we send it, pinning a CPU core on every boot.
Hooking up syslogd std I/O to /dev/zero prevents this.
Co-authored-by: Richard Acayan <mailingradian@gmail.com>
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
[ci:skip-build]: already built successfully in CI
- depend on diffutils, or else make complains about options not
supported by busybox diff
- rebased patches
[ci:skip-build]: already built successfully in CI
This new version includes initial support for systemd (for bluetooth
only atm). udev rules are only installed for openrc systems, bt config
on systemd was replaced by a unit file and using bootmac for wifi has
issues (https://gitlab.postmarketos.org/postmarketOS/bootmac/-/issues/7)
[ci:skip-build]: already built successfully in CI
Somehow enabling in-kernel PD mapper (introduced in 5b9f51b200dcb
"remoteproc: qcom: enable in-kernel PD mapper"), breaks the bottom mic
on xiaomi-beryllium (Poco F1) and distorts audio on OP6 (and possibly
OP6T). Temporarily disable it until the issue is resolved upstream.
Previously, the module's was modified to disable the in-kernel PD
mapper. This modification was a hack. Instead, modify the config so that
the in-kernel PD mapper is not built in the first place, which achieves
the same result.
Link: https://lore.kernel.org/linux-arm-msm/20241010074246.15725-1-johan+linaro@kernel.org/T
Link: pmaports#3353
Link: pmaports#3320
Link: pmaports#3245
Link: pmaports#3253
Signed-off-by: Frank Oltmanns <frank@oltmanns.dev>
This tool is similar to msm-firmware-loader or droid-juicer, except it
copies firmware from Windows instead.
Currently when the ADSP loads the new firmware it causes a usb reset
which breaks booting from USB. For now ask people to run this manually
and ensure the adsp firmware isn't available on the USB.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Extend existing X1 Elite support with the modules needed to bring up the
Lenovo Yoga Slim 7x.
We could use the EFI framebuffer in the initramfs, however the
regulators are turned off before we get there so it goes blank. Pull in
all the bits for proper display/panel support.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
This regex seems to have served to be a bit more flexible than the
actual pass one, for any kind of exceptions needed. However, it
resulted in basically every MR since the introduction of the
COMMITSTYLE, and most likely before, to be caught by that regex
instead of the pass one. As we have made the pass regex more flexible
now, we can now remove this. This should help keep commit messages
more standardized. If there's a reason for a commit to be different,
then the merger can just ignore it.
The daemon has been split out from the library and is thus not
automatically installed anymore when applications using the library are
installed. However the daemon (the UnifiedPush distributor) is also
useful to have installed when Flatpak apps are in use or other UnifiedPush
supporting apps that don't use kunifiedpush as their library.
Fixes#3333
- Add new kconfigcheck 'input' category options
- Add 'virt' kconfigcheck category
- Removed 'containers' kconfigcheck (this is included with the 'community' category)
- Enabled Magic Sysrq
- Add patch to disable GIC interrupt handling for pcie4, to work around
a wifi instability regression on sc8280xp
[skip ci]: failed on kconfig check, Arnavion wrote: "I'll enable the
CONFIG_HID_* that kconfigcheck wants in a separate MR so that any regressions
from that don't mix up wit the kernel upgrade."
Add a funding-manifest-urls file, as required by the floss.fund funding
manifest:
> If the manifest references URLs, such as a project's webpage, that are not
> on the same domain as the funding.json manifest itself, then the wellKnown
> URL must point to a /.well-known/funding-manifest-urls file. This file should
> contain URL (one or more) of the funding.json manifest URLs that reference
> it. This establishes provenance and verifies that that the publisher of the
> manifest is authorised to solicit funding on behalf of the URLs (entity,
> projects) described in the manifest. This follows the .well-known convention.
Related: https://floss.fund/funding-manifest/
Related: postmarketos.org MR 345
forked from alpine to add ondemand and journald support. as journald
requires systemd-libs, i don't think that we will upstream this package
[ci:skip-build]: already built successfully in CI (except for known qemu issues)
Modprobe rules sets sane defaults for `rockchip_ebc` module and fixes
panfrost driver loading.
Other changes;
* take maintainership of port
* udev rule for `rockchip_ebc` now makes `dclk_select` parameter
accessible to group video
* add `pinenote-dbus-service` dependency
[ci:skip-build]: already built successfully in CI
It seems that the old backup repo has disappeared from GitHub. Changed
the URL to an up-to-date repository.
The contents of the firmware blobs have not changed, thus no pkgver
increment.
gnu-efi-dev was required for systemd-boot < 256. As systemd-boot
is built specially as an extra component in main/systemd-boot, there
is no reason why we would want to build it here.
qcom-diag package is not providing systemd service file.
Signed-off-by: Alexey Min <alexey.min@gmail.com>
[ci:skip-build]: already built successfully in CI
CONFIG_LEDS_GROUP_MULTICOLOR just had to be re-enabled to fix a
regression. Add this to kconfigcheck to prevent disabling it by
accident in the future. Adjust the description of the Librem 5
specific section while at it.
[ci:skip-build] [ci:skip-vercheck]: no need to rebuild
So Gnome-based DEs have a video-player by default. The main arguments
in favor showtime I see are:
1. It's the main candidate to become the new Gnome default video player.
2. It's has a mobile-friendly UI.
3. It uses HW-decoding and even zero-copy playback by default on many pmOS
devices (by using Gstreamer and unlike e.g. ffmpeg-based players like mpv).
4. Its main dependencies are shared with other apps like snapshot.
The other candidate that would tick the same boxes but 1. is livi.
[ci:skip-build]: already built successfully in CI
These were dropped from the systemd package when they should have been
moved here to pmos-base-systemd. Without this, systemd-vconsole-setup
crashes because it cannot find the kbd utility, and kmod is needed for
proper auto-module loading.
[ci:skip-build]: already built successfully in CI
This reverts commit 609f3a5544.
The changes proposed in MR 5983 depend on changes in the upstream sc7150
kernel, howerver a new kernel release is currently not feasible as
instabilities still need to be worked out.
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
[ci:skip-build]: already built successfully in CI
Add support for Redmi 4 (prada), Redmi 4A (rolex),
Motorola Moto G5S (montana) and Huawei Mediapad T3 10 (agassi).
Remove downstream motorola montana and xiaomi rolex packages.
[ci:skip-build]: already built successfully in CI
After the initial merge wireplumber failed on bpo for armv7,
It was recommended to disable tests for armv7 for now.
fixes#3454
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Tweaked-by: Oliver Smith <ollieparanoid@postmarketos.org>
[ci:skip-vercheck]: no bump because we don't need a rebuild where it
succeeded
tests are disabled anyways (!check), and having gnome-session in
checkdepends creates a circular dependency in some situations since
gnome-session has gnome-setttings-daemon-dev in makedepends
[ci:skip-build]: CI can't build test because bpo is currently stuck, I build tested it locally
fbd-alert-slider.service is actually already provided by feedbackd from
aports.
This reverts commit c3c625a49aaa46353c7e80de153edc9fd3ef27a5.
[ci:skip-build]: already built successfully in CI
also add _pkgname for the upstream name in aports for linux-pam-pmos
[ci:skip-build]: CI bugs out building armv7 and aarch64, but skipping
since changes shouldn't affect building
These are now defined in pmos-base-systemd, those deps aren't needed
for building stuff upon systemd-dev.
[ci:skip-build]: CI bugs out, Clayton successfully build tested armv7
and aarch64 manually
Those dependencies are either run or dlopen-ed during runtime of
systemd, systemctl etc.
As we not even require util-linux's version of runuser, we just use
the login-utils virtual in pmos-base-systemd. And while we're at it,
move the runtime dependencies to pmos-base. This is also more fitting
for libkmod, which is needed in the initramfs, as it is one of the
runtime deps of systemd-udev.
Fixes#3408
[ci:skip-build]: already built successfully in CI (except armv7, which
times out the runner, but Clayton thinks that's just our CI being dumpy)
[ci:skip-build]: aarch64 was build tested locally (by Clayton), x86_64
build job failed in CI because the artifacts were too big but the actual
package building worked
I don't understand why the upstream APKBUILD provides jack-dev with
pipewire's pkg{ver,rel}. This blocks users potentially running
abuild deps on aports packages, so not a huge loss.
Unblocking BPO with this 🙃
[ci:skip-build]: built locally, merging as critical.
[ci:skip-build]: CI builds sucessfully on x86_64 and armv7,
there's an failure in aarch64/gnome-shell, but compiling
on a native aarch64 system and testing also works. (-jane400)
This doens't work with crossdirect since apparently it calls the
compiler during package() stage:
ERROR: Error in gtkdoc helper script:
ERROR: ['/usr/bin/gtkdoc-scangobj', .... failed with status 1
============================================================================================
ERROR: crossdirect was called with: LD_PRELOAD=libfakeroot.so
This should ensure that postmarketos-base-systemd installs our linux-pam
package, not the one from alpine. (The old way to pin our package was
based on fragile version pinning, as our pam wasn't bumped to 9999, but
had the same version as aports).
fixes#3170
[ci:skip-build]: already built successfully in CI
APKBUILD was rebased onto the latest verstion in Alpine aports (1.50.0-r3)
[ci:skip-build]: bug in CI prevents it from completing, but builds fine locally
This wasn't actually working because it was using an unset var when
calling 'systemctl disable'.
[ci:skip-build]: CI cannot complete build testing because of infra
issue, but that's fine because this change doens't actually require
compiling systemd.
New dependencies were not included so this failed to build properly. The
other changes were pulled from the version in aports, to make rebasing
in the future easier.
[ci:skip-build]: CI cannot complete build testing because of infra
issues downloading from download.kde.org
libseat 0.9.0 no longer performs an automatic VT switch when taking
control of a seat to allow sessions to be started in the background. As
consequence, one must manually switch if one wants a background session
to be immediately activated.
Issue a chvt on ExecStartPost, when the service is deemed running.
Upstream: https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1566
[ci:skip-build]: already built successfully in CI
When kernel auditing is enabled and things crash, this leads to a lot of
really annoying messages printed to the console/TTY that can interfere
with debug. Kernel audit info can be reached using other userspace
tools.
[ci:skip-build]: already built successfully in CI
We actually want usr/lib/udevd here, not lib/udevd. This fixes the
initramfs not building and some other weirdness.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Do note that this commit was amended after the fact, the patch got
inlined into this repo to not brick this branch if the MR gets pushed
to.
[ci:skip-build]: already built successfully in CI
The type was erroneously set as 'simple', and since we are setting
ExecStop we actually need to set RemainAfterExit to avoid running
ExecStop when the oneshot service runs. This is because nft returns/
exits pretty much immediately after applying the config.
fixes#2846
The unit name to kill pbsplash had a typo, and added a preset for sshd.
systemd didn't seem to match `phosh` or `gdm` to the correct unit,
unless they had `.service` added, so this was fixed.
Presets in this section were also sorted.
[ci:skip-build]: already built successfully in CI
This didn't actually seem to do anything, resulting in some weird stuff
being enabled by default even though we did not specify a preset for it
(e.g. see !5556)
Based on my interpretation of the systemd preset manpage, this file
should be parsed last. It says that if a unit name has a preset that
was already configured in some previously parsed preset file, then any
matches after do not apply. This means that the `disable *` should not
disable any previously enabled (in previous .preset files) units. When
the unit name is omitted from the `disable` command, it seems to be a no-op.
Fixes!5207
This causes systemd to get stuck restarting multipathd forever on boot if it runs on systems with no multipath hardware. When this happens, the system never finishes booting.
It doesn't seem like any UIs/devices enable the multipathd service by default in openrc, and that we just depend on multipath-tools for kpartx and stuff (and not the daemon that comes with it)
[ci:skip-build] already built successfully in CI
also remove the elogind specific patch to use systemd for brightness
changes
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
Note: the user services that the -systemd split pkg installs are not
enabled by default using systemd presets. None of them have 'Install'
sections, they appear to be mostly/all dbus activated instead.
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
- Removed systemd-timesyncd, already enabled by a preset installed by
the systemd package
- Removed default-disable.preset, it's already provided by the systemd
package
- Removed user services from system preset
These macros are based off of the upstream systemd RPM macros, but it
doesn't implement all of the macro functionality upstream. Initially
they will be used in the install scripts for apkbuilds that provide
systemd service unit files.
For example, a `$pkgname-systemd.post-install` script might have:
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service-post_install system sshd
And a `$pkgname-systemd.pre-deinstall` script might have:
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall user pipewire
One day maybe these could be upstreamed to systemd to provide some
apk/abuild compatible macros.
Co-authored-by: jane400 <pmos@j4ne.de>
The space here caused this install script to attempt to create a group
named '2' and add a user named 'sgx' to it.
[ci:skip-build] already built successfully in CI
Build abuild from upstream source and only apply the systemd split func
patch. The patch was also adjusted to use -systemd instead of -service
for subpackages
As systemd v256 switched to dlopen for a bunch of dependencies
(specified in a custom format), this is no longer auto-detected
by either abuild or boot-deploy. So we include kmod manually for udevd
to work correctly.
This fixes the "no screen" issue on pine64-pinephone.
[ci:skip-build]: already built successfully in CI
Explicitly generate qwayland-plasma-shell.h first, in order to fix:
In file included from /usr/include/PlasmaQuick/PlasmaQuick/PlasmaShellWaylandIntegration:1,
from /home/pmos/build/src/plasma-workspace-6.1.2/shell/panelconfigview.cpp:35:
/usr/include/PlasmaQuick/plasmaquick/plasmashellwaylandintegration.h:14:10: fatal error: qwayland-plasma-shell.h: No such file or directory
14 | #include "qwayland-plasma-shell.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Related: https://invent.kde.org/plasma/plasma-workspace/-/issues/132
[ci:skip-vercheck]
[ci:skip-build] times out after >3hr in gitlab CI
Apparently the patch url isn't stable(?) upstream, the checksum changed.
Since this is a simple 1 line patch, let's just include it in pmaports
This also changes kwin to use the more 'standard' pkgver used in other
packages forked for systemd support
The patches were put into the gitlab.com/postmarketos/systemd repo
and updated for stable-v256.
This also enables man pages, systemd-localed and localization support
via the compile flags.
[ci:skip-build] already built successfully in CI
PA is started automatically by its "autospawn" config thing, and it
works pretty well... if it crashes then it's automatically restarted if
needed, etc.
The included service/socket unit files never really worked,
PA started from systemd would always race with (and often to) PA autospawn.
The subpkg here also resulted in a packaging bug where both
pulseaudio-service and pw-pulse-service were installed at the same time,
because the `install_if` listed `pulseaudio`, and `pw-pulse` also
provides `pulseaudio`. The two unit things conflict with each other.
I did some initial investigation, and getting systemd to manage PA
seemed like too much work especially since autospawn is probably good
enough and we hope to move to pw audio later.
[ci:skip-vercheck]
Unfortunately there are some code paths that are required to support
socket activation, and they are only enabled at build time with
-Dsystemd=enabled. On the bright side, service/socket unit files are
included...
Also note that I disabled test on armv7 since they fail in our CI using
qemu on x86_64. They pass in Alpine on native armv7.
This changes it into a default disable.
`disable *` selects all units and hence overrides all previous presets.
Just using `disable` just changes the default unit enablement policy.
[ci:skip-build]: already built successfully in CI
For the `install_if` to work correctly, the subpackage should be named
after the main package that provides the app... in this case it's called
"rtkit"
[ci:skip-build] already built successfully in CI
[ci:skip-build] already built successfully in CI
xorg-server-common is a shared dep between xorg-server and xwayland, and
this tmpfile config is required for both to work. Without this tmpfile
config, Xwayland may fail to start. In the case of GNOME, this is a
fatal event.
This is required by systemd-vconsole-setup, which is currently
configured to run on boot (without kbd/loadkeys, the service crashes.)
[ci:skip-build]: already built successfully in CI
Fix for:
In systemd-services.trigger line 14:
systemctl $cmd $service
^--^ SC2086 (info): Double quote to prevent globbing and word splitting.
^------^ SC2086 (info): Double quote to prevent globbing and word splitting.
Should be =$pkgver-r$pkgrel instead of =$_pkgver-r$pkgrel. Otherwise CI
fails, and it is right, we do want to provide the very high version so
we don't install the regular package by accident if the regular package
gets upgraded before this forked version.
Let's put everything systemd related in an extra-repos directory, so it
is clear that the packages from here will end up in a separate, optional
binary package repository.
Add the dependency, so the systemd-services package gets built as part
of the bootstrap. Otherwise no service files will be installed, as the
individual service files get pulled in via install_if, and that only
works if a binary package is available.
This is a hack to configure utilisation clamping for gnome-shell. It
works by telling the scheduler that the gnome-shell process should run
with a much higher performance level. This improve animation performance
and general UI smoothness. A proper solution to have gnome-shell manage
this itself is in the works upstream.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
For systemd (and our own sanity) we need to do the /usr merge. This fork
of apk-tools includes the logic to support alpine packages like tar
which install the main tar binary to /bin and then a symlink to
/usr/bin/...
We should find a way to implement this in upstream apk-tools, and
continue pushing Alpine to also adopt the merged /usr model.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
alpine-base hard depends on openrc... Fork it to drop this.
We should eventually upstream this by having alpine-base depend on a
virtual pid1 or init-system subpackage which openrc and systemd can both
provide.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
The qrtr-openrc package was removed in 94a777390c
but somehow still left in depends of this package.
Fix the errors like:
ERROR: unable to select packages:
qrtr-openrc (no such package):
required by: soc-qcom-sc8180x-nonfree-firmware-openrc-1-r1[qrtr-openrc]
This is the one and only mention of qrtr-openrc package in pmaports.
P.S. It's very telling how many users sc8180x has, if this was unnoticed
for 8 months.
Signed-off-by: Alexey Min <alexey.min@gmail.com>
Generate extlinux config for newer lk2nd and switch to msdos partition type,
since lk2nd doesn't support GPT yet.
Signed-off-by: Stanislav Jakubek <stano.jakubek@gmail.com>
[ci:skip-build]: already built successfully in CI
This drops some kconfig that was added in !5836, which shouldn't be
required for device kernels to comply with the "input" kconfig check.
HID_HYPERV_MOUSE: requires enabling HyperV guest support in the kernel,
we shouldn't impose this on all device kernels.
HID_KUNIT_TEST: No reason to enable kunit support, we aren't testing the
kernel with device kernels
SURFACE_HID: Requires enabling a bunch of Microsoft Surface platform
drivers/support, doesn't make sense to require for all device kernels.
Kernels that support Surface devices can enable these as needed, since I
don't think any non-surface devices would even have surface HID input hw
in them.
Replace this deprecated variable with the new equivalent.
[ci:ignore-count]
[ci:skip-build]: armv7 fails in CI (qemu instabilities w/ our runner),
Clayton verified checksums for armv7 stuff manually
This is the port for the Librem 5 devkit, I still have one but haven't
booted it in years and it's unlikely anyone else is using this (since
this port is super outdated and almost certainly not functional as-is).
Let's archive it so that it doesn't cause any confusion.
[ci:skip-vercheck]
[ci:skip-build]: we don't actually want to build test this thing
When enabling new options in kconfigcheck, it's likely that some kernels
in pmaports will fail, but often undesirable to rebuild all the kernels
particularly when the options being enabled are for quality of life.
Adjust the rules for the kconfig check job in CI so that it will fail
with a warning in this case, but still fail with an error when an
updated kernel package doesn't pass.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
[ci:skip-build]: already built successfully in CI
Looks like a lot of HID drivers are missing from pmOS device-specific
kernels. Let's try to deal with it by enabling all the HID related
drivers that the Fedora aarch64 and x86 kernels enable.
[ci:skip-kconfig-check]: too many kernels fail from the new required
config here, it's unfeasible to update them all right now
Recent kernel occupies 47120384 bytes in uncompressed state,
which is more than reserved memory for kernel
0x80000000 - 0x82800000 (40M).
Shift FDT image to give more memory space (56M) to load Linux.
Disable GPT to be able to chainload stuff on uSD from vendor u-boot on
internal eMMC. The vendor u-boot does not support GPT.
If booting is done by reprogramming the boot order or zeroing internal
bootloader, GPT is no problem.
[ci:skip-build]: already built successfully in CI
Enable CONFIG_LEDS_GROUP_MULTICOLOR as a module to fix issue #3424.
Previously, notifications triggered the torch flash instead of the
status indicator LED. This change allows proper use of the multicolor
LED driver, ensuring notifications utilize the status indicator LED.
[ci:skip-build]: already built successfully in CI
there is available qcom-msm8953 which is working with latest lk2nd fine on kuntao, but after flashing by building with device-lenovo-kuntao, it is resulting rebooting the system continuously with latest lk2nd, so imo it should be archived
Fixes#3414.
The package `device-pine64-pinephone-vccq-mod` installs a u-boot user script.
The user script was loaded at address 0x50700000 partially overwriting
the initramfs (0x4FF00000-0x50883fd1), and causing a boot loop.
The user script load address was increased to 0x50f00000, leaving 16MB
of free space for the initramfs, the current initramfs size is 9.52MB.
Tested: Build and install package on Pinephone 1.2a running PMOS 24.12.
[ci:skip-build]: already built successfully in CI
Bootloader needs to be at 0x400 for IMX6 devices. That is ignored by
pmbootstrap which places the GPT header there. Revert to msdos partition
table style to workaround that bug.
What works:
* Flashing with heimdall and a SD card
* Networking over USB
* SSH over USB
* Splash screen (when booting from charging screen)
What doesn't work:
* Any other UI than "none" (they boot, but no graphics and no SSH)
Steps to flash:
* pmbootstrap init # Select samsung-loganrelte, select "none" as UI
* pmbootstrap build linux-samsung-loganrelte
* pmbootstrap build device-samsung-loganrelte
* pmbootstrap install --sdcard=/dev/sdX # doesn't boot from internal storage
* pmbootstrap flasher flash_kernel
Somehow enabling in-kernel PD mapper (introduced in 5b9f51b200dcb
"remoteproc: qcom: enable in-kernel PD mapper"), breaks the bottom mic
on xiaomi-beryllium (Poco F1) and distorts audio on OP6 (and possibly
OP6T). Temporarily disable it and log the rprocs in use until we better
understand what causes the issue.
Link: pmaports#3353
Link: pmaports#3320
Link: pmaports#3245
Link: pmaports#3253
Signed-off-by: Frank Oltmanns <frank@oltmanns.dev>
[ci:skip-build]: already built successfully in CI
boot-deploy uses 'local', which technically isn't POSIX-compliant
and if someone has 'sh' from something else that strictly adheres to
POSIX then boot-deploy will fail.
This is a workaround for https://gitlab.postmarketos.org/postmarketOS/boot-deploy/-/issues/38
[ci:skip-build]: already built successfully in CI
There is a special check in init_2nd.sh for older postmarketOS
installations that do not have a valid /etc/fstab file. When /boot does not
appear in fstab, it searches for the boot partition and mounts it manually.
However, /boot might be intentionally omitted in fstab, e.g. because we
just have a single rootfs partition that also contains /boot. In that case
it will wait forever, trying to find the missing boot partition.
The old installations do not have any entries in fstab, so fix this by
checking if the file is empty instead (with all comments and whitespace
removed).
[ci:skip-build]: already built successfully in CI
This reverts commit 1259d74b09.
The main reason why that change was necessary is because we skipped
mounting subpartitions entirely if we found a potential root partition
(which could be simply a crypto_LUKS partition from a different distro).
Now that we look only for the actual root partition (based on the UUID),
this should not happen anymore.
Checking both conditions causes delays if there is no boot partition,
e.g. if pmOS was installed with --single-partition. Usually we don't need
to mount the boot partition anymore, because all needed files are part of
the initramfs. So let's drop the check for the boot partition again and
rely on the UUIDs to ensure we set up the correct partitions.
When using an encrypted installation of postmarketOS, the pmos_root_uuid=
on the cmdline only tells us the UUID of the crypto_LUKS partition. Once
the partition is unlocked, we perform the the old unreliable auto detection
again. This might mount the wrong partition if multiple installations of
pmOS are attached to the system.
After we unlock the root partition, we know exactly where the root
partition is supposed to be (= at /dev/mapper/root). Let's use that
directly instead of going through the whole detection sequence again.
Right now we fallback to the old behavior of searching for the "pmOS_root"
label when the root partition specified by pmos_root_uuid= on the cmdline
is not found. This works fine most of the time, but there are edge cases in
which this does not behave correctly. Problems occur especially if there
are multiple installations of pmOS (e.g. one on internal storage, and one
on USB drive/SD card). Depending on timing or enumeration order, the system
might boot into the wrong rootfs if the intended root partition shows up
too late.
For the boot partition we already enforce the UUID provided on the cmdline.
Let's apply the same for the root partition to ensure we always boot into
the correct root partition.
Update paths to keyboard configuration files to reflect PinePhone's
move from main to community device category.
[ci:skip-build]: already built successfully in CI
The full initramfs is now too big for the boot partition.
When building with the downstream kernel, use initfs-extra
to split the initramfs so it can fit again.
This is not an issue with mainline kernel since booting it
uses extlinux with lk2nd.
[ci:skip-vercheck]
Signed-off-by: Alexandre Messier <alex@me.ssier.org>
[ci:skip-build]: already built successfully in CI
Like most msm8974 devices, lk2nd is used to boot mainline linux on the
HTC One (M8).
Add it as a dependency of the mainline kernel build, so that it is built
when required. It can be flashed with 'pmbootstrap flasher flash_lk2nd'
while in the vendor bootloader fastboot mode.
Only extlinux mode is supported for mainline kernel, as otherwise the
initramfs is too big for the boot partition.
Signed-off-by: Alexandre Messier <alex@me.ssier.org>
To support the HTC One (M8), a new specific target is required
since it needs non-default values for mkbootimg.
Signed-off-by: Alexandre Messier <alex@me.ssier.org>
Add the imagis and 88pm886_regulator drivers to the initfs allowing the
software keyboard in the debug shell to work.
[ci:skip-build]: already built successfully in CI
Otherwise the service will be installed even if the mainline kernel is
selected.
Fixes: f59eac28b ("firmware-samsung-pxa1908: move openrc scripts to subpackage (MR 5688)")
Convert the device package to use U-Boot.
The U-Boot binary is gzipped and put into a U-Boot legacy uImage to
match what the factory bootloader's demands. The postmarketOS kernel,
initramfs and device tree are packed into a FIT and passed to U-Boot as
an initramfs.
Basically linux-postmarketos-marvell-dove but with fellow changes :
1. Added support for other marvell SoC
2. The local version has been changed to -postmarketos-marvell
3. Several redundant USB controller driver has been removed
4. CONFIG_SATA_MV is seted to y
5. fbdev is disabled
6. CONFIG_ZRAM_BACKEND_ZSTD it enabled
(due to kconfig config but i also enabled CONFIG_ZRAM_BACKEND_LZ4 and
others)
7. neon is enabled
Add soc-qcom-sm7125, firmware-xiaomi-miatoll, hexagonrpcd as dependency.
This necessary to make Wi-Fi, Sensors, GPU and modem work.
Split device package to support panel variants and take
maintainership.
eg25-manager 0.5.2 seems to be able to bring back the modem on its own again,
so this hack is no longer necessary.
[ci:skip-build]: already built successfully in CI
Successfully built and booted postmarketOS on Samsung Galaxy J4.
It's based on Exynos 7570, same SoC used by samsung-xcover4lte [1].
Currently, these are tested working:
- Boots from internal storage
- Display (console framebuffer is NOT working, kernel panics)
- Framebuffer (additionally with msm-fb-refresher to refresh the screen)
- Touchscreen
- USB Networking (RNDIS)
- Wi-Fi
Tested UI environments:
- XFCE 4
- Console (Kernel log doesn't show up because
`CONFIG_FRAMEBUFFER_CONSOLE` is not enabled, but enabling it panics
the kernel. This is a known issue for some Samsung devices, notably
samsung-crownlte [2].)
[1] https://wiki.postmarketos.org/wiki/Samsung_Galaxy_Xcover_4_(samsung-xcover4lte)
[2] https://wiki.postmarketos.org/wiki/Samsung_Galaxy_Note_9_(Exynos)_(samsung-crownlte)#Current_status
LXQt can control the display brightness. It doesn't save and restore it
over boots, however. In distributions with systemd this is handled by
"systemd-backlight@.service". For OpenRC the package brightnessctl offers
a service saving the state of the brightness at shutdown and reboot.
closes#3386
Needed to fix eduroam iwd on qcom laptots. This config option used to be enabled on v24.06.
[ci:skip-build]: already built successfully in CI
lock.sh is only reliable when used with i3wm, where we disable gpio_keys from
being handled by X/i3wm. When this is not done (e.g. when testing a different
X11 UI), the script becomes unreliable since the display turns on due to the
SCREENLOCK key being toggled, and therefore only the display=on case is ever
run.
Improve reliability of the script by basing the decision making on the
enabled/disabled state of the touchscreen instead.
Current pinephone images built pmbootstrap >= 3.0.0 don't boot on the
pinephone anymore. At least part of this must be the switch from GPT to
MBR that has been done by default in pmbootstrap. Set msdos explicitly
to revert this for the pinephone.
With Tow-Boot we could probably use GPT instead, but this should be a
well-tested, concious decision. Let's fix this regression first.
[ci:skip-build]: already built successfully in CI
This adds Xiaomi Pad 5, it uses a close to mainline kernel on 6.12.0
the firmware is packaged and supported, although hexagonrpcd is not working yet.
this is a continuation from
https://github.com/map220v/postmarket_xiaomi_nabu/tree/test
updating its config and updating its components.
i based the hexagonrpcd bringup from xiaomi-elish and google-sargo
[ci:skip-build]: already built successfully in CI
In addition to the pmos.debug-shell cmdline argument, add
pmos.usb-storage=<block-device> to set up the USB mass storage gadget by
default when going into debug shell. This allows building a special boot
image/option that directly exposes the storage for flashing, without having
to type in extra debug-shell commands.
Right now we have two similar implementations of setting up a USB mass
storage gadget, in init_functions.sh and as separate script for the
debug-shell. Given that init_functions.sh is available in debug-shell
anyway, unify both in a common setup_usb_storage_configfs() function.
Having this included in the initramfs debug-shell by default (without
installing postmarketos-mkinitfs-hook-debug-shell) also simplifies
recovery, since you can set up the USB storage for repairing the flashed
postmarketOS installation in case of boot failures. The size overhead is
minimal, since this has no extra dependencies.
Added a config file to /etc/unl0kr.conf.d/ to fix issue with unl0kr
being invisible during boot.
Commit-Msg-Tweaked-By: Oliver Smith <ollieparanoid@postmarketos.org>
BTRFS only supports online resizing. Right now we implement that by
temporarily mounting the file system, resizing it, and then unmounting it
again. But most of this is redundant since we mount the rootfs at /sysroot
immediately after.
Avoid this by splitting the file system resizing in offline resize (before
mount) and online resize (after mount) and resize BTRFS after mounting
/sysroot. For EXT4 we can either do offline resizing or online resizing.
Keep offline resizing for now for better compatibility with older kernels.
F2FS does not seem to support online resizing, so we need to keep the
functionality for offline resizing anyway.
Drop the splash for now, since it would introduce flickering on each boot.
We can restore it later if needed (ideally by adding a way to update the
splash message without restarting pbsplash).
Right now we use the resize2fs -f (force) option, which "Forces resize2fs
to proceed with the filesystem resize operation, overriding some safety
checks which resize2fs normally enforces." For example, this flag instructs
resize2fs to attempt resizing file systems with errors in some situations.
We primarily care about resizing the file system on initial boot, where we
shouldn't have any errors in the file system. For all other subsequent
boots, we shouldn't risk the filesystem data just to resize it again.
So let's drop the -f flag and only resize clean file systems.
At the moment, the root file system is only resized to span the entire
partition if we previously also resized the partition itself. However, if
a rootfs image without subpartitions is flashed to a pre-existing partition
this means that the installation only has very limited space available
without manual resizing.
Such a setup is used for devices using the "fastboot-bootpart" flasher
(e.g. asus-me176c), where boot and root images are flashed to two separate
partitions and the device boots directly from the boot partition.
Avoid this problem on these devices by always resizing the root file system
on each boot. All the resize tools exit early if the file system is already
expanded to the maximum size. It's faster to call resize2fs unconditionally
instead of manually checking if the file system needs resizing before.
Similar tooling like systemd-growfs also resizes unconditionally.
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
There might be additional kernel modules needed for the USB UDC to show up.
This used to work fine, but broke when the initramfs was unified with the
minimal one. We need to load modules/start udev before setting up USB.
Fix this by duplicating the setup calls in both init.sh and init_2nd.sh.
Both calls already have checks to allow calling them multiple times,
so we don't need to handle the initramfs-extra case in a special way.
[ci:skip-build]: already built successfully in CI
Split -nofde into a separate package to resolve the cyclic depenency:
postmarketos-base -> postmarketos-initramfs -> postmarketos-base-nofde
Fixes: issue 3236
[ci:skip-build]: already built successfully in CI
Fill out makedepends, so pmbootstrap and bpo know that these packages
need to be built before building postmarketos-cros-common, because it
has subpackages depending on these packages. Without this,
bootstrapping v24.12 currently fails:
https://builds.sr.ht/~postmarketos/job/1381582
This is intended behavior, abuild works the same way:
https://gitlab.alpinelinux.org/alpine/abuild/-/issues/10138
[ci:skip-build]: already built successfully in CI
This is a generic kernel for qcom laptops (sc8280xp & x1e), meant to
replace the lenovo-21bx kernel for the x13s.
- Uses johan_defconfig as base, and includes Minecrell's pmos.config
- Adds some extra kconfig for supporting virtualization
As of upower 1.90.5, it is possible to configure upower to not take an action
when the battery capacity is reported as critically low. Since the Nokia N900
now monitors its battery capacity using udev scripts, which is more accurate
than upower's calculation, enable the new ignore feature for the N900.
The bq27200 fuel gauge depends on its battery-backed memory for capacity
reporting. If the supply is off for some time, the fuel gauge's last known
capacity is reset, after which a capacity value can only be read after a
full charge cycle. Thus, most of the time, as used on the Nokia N900, the
reported percentage cannot be relied on for making power-off decisions on
battery low conditions, e.g. through UPower.
However the fuel gauge can very accurately detect and report a low battery
condition internally, even if the reported capacity is incorrect, e.g. when
it has been reset. The low battery condition is reported by the kernel via
capacity_level in sysfs, and also generates uevents.
So we can implement safe battery shutdown by requesting the kernel to more
regularly polling for status changes, then performing an immediate shutdown
when the capacity_level is reported as Low and the device is not charging.
The deviceprofile is now in a tagged sxmo release.
The conky issue will be mentioned in wiki for users to manually disable, until
upstream allows toggling it.
It's possible that additional sources have been made to an APKBUILD
which are unstaged, but if the hunks adding those sources haven't been
staged either then it doesn't make sense to fail on this.
Use git show to get only the staged hunks for the APKBUILD.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Fix the following error during "pmbootstrap install":
ERROR: unable to select packages:
sudo-1.9.16_p1-r1:
conflicts: doas-sudo-shim-0.1.1-r1[cmd:sudo=1.9.16_p1-r1]
breaks: doas-sudo-shim-0.1.1-r1[!sudo]
satisfies: postmarketos-base-38-r0[sudo-virt]
postmarketos-base-nofde-38-r0[sudo-virt]
doas-sudo-shim-0.1.1-r1:
conflicts: sudo-1.9.16_p1-r1[cmd:sudo=0.1.1-r1]
satisfies: postmarketos-base-doas-38-r0[doas-sudo-shim]
postmarketos-base-38-r0[sudo-virt]
postmarketos-base-nofde-38-r0[sudo-virt]
How the error gets triggered:
* postmarketos-base depends on sudo-virt. During "pmbootstrap install",
pmbootstrap has to resolve this to a sudo implementation (sudo, doas,
...).
* pmbootstrap does this by looking at the packages that get installed
at the same time. Before this patch we did not install doas-sudo-shim
directly through _pmb_recommends, only indirectly through a
postmarketos-base-doas subpackage that pulls doas-sudo-shim in via
install_if.
* pmbootstrap cannot look at install_if as it resolves dependencies,
so it has to pick one and goes for "sudo".
* pmbootstrap tells apk to install a list of packages including "sudo",
and because apk also resolves install_if correctly, the solver fails
at the conflict between "doas-sudo-shim" and "sudo". (This only fails
since apk-tools-static 2.14.6-r0, apparently beforehand apk just
installed "doas-sudo-shim" in this scenario.)
Teaching pmbootstrap to look at install_if while resolving packages
would be one way to fix this. But it would be a lot of effort, not
feasible to quickly stop the problem at hand that breaks "pmbootstrap
install" for all edge installs. IMHO it is not worth implementing this
at all in pmbootstrap, as it is just supposed to do some more or less
basic package resolving until apk takes over and does it properly.
Put doas-sudo-shim in _pmb_recommends so pmbootstrap knows that this is
the sudo implementation we want without looking at install_if.
Remove the now obsolete postmarketos-base-doas subpackage. This will
lead to doas-sudo-shim getting removed for old installations on upgrade,
but it can easily be installed back (doas add doas-sudo-shim). I'll make
an edge post about it and put it in the v24.12 release notes. If we
don't remove it here, we would need to keep this legacy subpackage
around forever and I'd rather avoid that to reduce maintenance effort.
Another alternative to this was removing sudo-virt from depends="". But
that would lead to sudo getting uninstalled for users upgrading from
old releases from before we had doas in pmb_recommends, so I've decided
against it.
Fixes: pmaports issue 3340
The Google Pixel 3a automatically appends console=null to the command
line. In the kernel, the preferred console is set to ttynull. Since
ttynull is not automatically enabled, a warning is currently emitted:
[ 0.909853] Warning: unable to open an initial console.
This also causes stdin, stdout, and stderr to be missing from the init
process.
In the busybox implementation, syslogd creates the /dev/log socket and
opens /dev/kmsg. This happens just before daemonizing, which opens
/dev/null and aliases stdin, stdout, and stderr to it. After daemonizing
and potentially closing the socket, stdin is aliased to the socket to
save stack memory. If the program starts without stdin under Linux, the
socket gains the constant STDIN_FILENO file descriptor, which is cleared
when daemonizing.
Syscalls when the 0, 1, 2 file descriptors aren't open:
socket(AF_UNIX, SOCK_DGRAM, 0) = 0
openat(AT_FDCWD, "/dev/kmsg", O_WRONLY|O_LARGEFILE) = 1
openat(AT_FDCWD, "/dev/null", O_RDWR|O_LARGEFILE) = 2
Enable the CONFIG_NULL_TTY option and update the configuration to allow
the kernel to open stdin, stdout, and stderr for the init and (by
inheritance) syslogd processes. It's technically an expert option but
isn't enabled by default (and can be enabled in config fragments).
Closes#3269
[ci:skip-build]: already built successfully in CI
The main goal of switching LightDM to slick-greeter is to ease
enabling/disabling autologin. With "lightdm-settings" installed, there
is an administration/settings GUI "Login Window" available that allows
among others to configure autologin. Contrary to its general purpose
name, it works on LightDM greeter "slick-greeter" only.
[ci:skip-build]: already built successfully in CI
Use install "-t" option, avoiding to repeat the file name and allowing to add
more than one file per command. Additionally sort the commands alphabetically
per path.
Exception is the lightdm autologin config file because it does a file renaming.
Put this command to the end.
bq27xxx_battery has a check for status flags in order to detect changes
and report to userspace. However, the cached flags are updated before
checking for changes, hence no flag-related events are ever sent. This
patch fixes this behavior, and has been sent upstream.
[ci:skip-build]: already built successfully in CI
Add a workaround so the kernel compile output is not silent (which leads
to pmbootstrap aborting the build). This will be fixed once upgrading to
linux >= 6.2.
Related: pmaports issue 1990
[ci:skip-build]: already built successfully in CI
In linux-postmarketos-qcom-msm8916 this is fixed properly thanks to a patch
from Jakob Hauser. The cmdline parameter is no longer necessary, and just
causes the display to be horizontally flipped again.
[ci:skip-build]: already built successfully in CI
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
[ci:ignore-count]: We meant to change many packages
[ci:skip-build]: already built successfully in CI
Linux 4.14.186 has no ZSTD support and is therefore too old to have full
support for our default ZRAM configuration. ZRAM will likely still work,
but fall back to the default compression method. This is not something we
can actively test or support, so drop the pmb:kconfigcheck-zram.
[ci:skip-vercheck]: no rebuild needed
Linux 3.18.14 has no ZSTD support and is therefore too old to have full
support for our default ZRAM configuration. ZRAM will likely still work,
but fall back to default compression method. This is not something we
can actively test or support, so drop the pmb:kconfigcheck-zram.
[ci:skip-vercheck]: no rebuild needed
main/postmarketos-base/rootfs-etc-conf.d-zram-init configures zstd as our
default ZRAM configuration, but the kconfigcheck only checks for LZ4 at the
moment. Because of this some of our kernels don't actually have ZSTD
support enabled and end up using the default compression algorithm.
For Linux >=4.18 we should enable CONFIG_CRYPTO_ZSTD to enable ZSTD support
for ZRAM.
In Linux >=6.12 the configuration was changed to CONFIG_ZRAM_BACKEND_ZSTD.
This requires manual edits while upgrading, otherwise only LZO support will
remain enabled.
Checking for >=3.14.0 additionally does not make any sense, because the
kconfig check should not be enabled for kernels that cannot satisfy our
minimum requirements.
Describe this properly in kconfigcheck.toml to ensure kernels are
configured correctly.
The following kernels are currently missing the correct options:
config-htc-flounder.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-amlogic.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-grate.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-msm8974.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sc7280.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6115.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6350.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-purism-librem5.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
The following kernels are too old to support CONFIG_CRYPTO_ZSTD:
config-samsung-jxelte.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-volla-mimameid.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
Many parts of the Linux desktop (apps, tools, scripts, etc) all expect
xdg-open and friends to be installed.
Since these utilities are tiny and (usually) ubiquitous, let's make sure
our UIs all depend on them.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
We haven't had kernels in main/ for soon three years[1], so no need
to bother checking this location.
[1]: See commits 47d8f823..8f24fe3a
[ci:skip-build]: already built successfully in CI
Add qbootctl as dependency msm-firmware-loader needs it
for A/B devices like xiaomi-daisy and xiaomi-tissot.
[ci:skip-build]: already built successfully in CI
init_functions.sh makes use of the mass_storage and acm USB gadget
functions for error reporting, but the necessary kernel modules are not
included in the initramfs at the moment. Because of this, the functionality
works only on kernels where all these USB gadget functions are built-in and
not built as modules.
Add the missing modules and fix the sort order while at it.
[ci:skip-build]: bug in CI prevents build testing armv7, succeeded locally
The current test script disallows these kinds of comments:
deviceinfo_some_variable="some_value" # an inline comment
Since deviceinfo is essentially a shell script, it does make sense to
allow inline comments. It is relatively simple to implement as well, by
adjusting the regex.
[ci:skip-build]: already built successfully in CI
Patch adding LG G4 (H815) support got upstreamed in v6.12-rc1 mainline
kernel (it's slightly different than the patch used here).
Add python3 to makedepends (required from v6.10-rc1
0fddd045f88e ("drm/msm: generate headers on the fly")).
Signed-off-by: Petr Vorel <pvorel@suse.cz>
The project access token disappeared (maybe expired?), let's avoid
hardcoding this and put it in a CI variable instead.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Tested working on C330. I can drop the patch for 6.11 regression since
that is fixed now. All the normal stuff works, nothing broken as far as
I can tell. Default config options chosen with pmbootstrap kconfig
migrate.
pmbootstrap 3.0.0 uses GPT partition table by default, which breaks booting
on all the devices using the lk2nd bootloader. The current version of lk2nd
supports GPT only for the eMMC, while subpartitions and SD cards must be
partitioned with MBR. GPT support was present in the legacy branch of
lk2nd, but was dropped at some point because of poor code quality.
Fix the regression for now by reverting back to the old msdos (MBR)
partition table. We can revert this again later when lk2nd restores support
for GPT.
Generated with
$ for d in $(grep -R linux-postmarketos-qcom-msm8916 | grep -Eo 'device-[^/]+' | sort -u); do \
echo -e '\n# lk2nd does not support GPT for subpartitions/SD cards yet\ndeviceinfo_partition_type="msdos"' \
>> device/*/$d/deviceinfo && pmbootstrap checksum $d && pmbootstrap pkgver_bump $d; done
[ci:ignore-count]
[ci:skip-build]: bug in CI prevents build testing armv7 and aarch64, so
Clayton did the test locally for those archs
This is needed for completely functional BT on the 6.12 kernel we
package. The bt fw file will be in the next (december) release of
linux-firmware, so in the meantime it's fetched/packaged here. This will
need to be dropped when the next linux-fw package upgrade is released.
Tested on google-hayato. I also cleaned up the config a bit since the
collabora defconfig had a few weird things set. Zram now works as
expected because of this.
The gpi module is needed to initialize the dma controller
necessary for the touchscreen to get initialized, so that
we have working on-screen keyboard input in early environment
of the initramfs. This mainly useful for unl0kr, but also
the initramfs-debug hook.
Since pmbootstrap!2426, pmbootstrap defaults to a `gpt` partition type,
the legacy u-boot on the cubox does not support `gpt`.
Therefor the deviceinfo was adjusted to return to `msdos` type partition
table.
Tested sucessfully on actual HW with new install
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Two main changes apart from rebase and config sync:
- Fix broken usb networking by making CONFIG_USB_CDC_COMPOSITE
builtin (by @eisenbahnfan)
- Add mainline support for exynos5420-n2awifi (by @eisenbahnfan)
[ci:skip-build]: already built successfully in CI
The package was renamed from postmarketos-cros-keymap to
postmarketos-cros-keymap-openrc, adjust _pmb_recommends.
[ci:skip-build]: already built successfully in CI
I replaced "console=null" with "quiet loglevel=2",
based on the findings in #2989fixes#3269
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
asus-zenfone3: move linux-postmarketos-qcom-msm8953 package to each subpackages
asus-zenfone3: remove suffix from deviceinfo_name
asus-zenfone3: remove uneeded firmware files & add lk2nd-msm8593
[ci:skip-build]: already built successfully in CI
Without these rules, the /dev/disk/by-* stuff isn't created on devices
that use subpartitions (and maybe FDE too?), and systemd boot fails
because it's unable to find the boot partition UUID under that path.
fixes!5636
[ci:skip-build]: already built successfully in CI
Loaded 100 of 1723 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.