Compare commits

..
97 Commits
Author SHA1 Message Date
postmarketOS CI f3c2221241 linux-next: upgrade to next-20260619 2026-06-19 15:38:42 +00:00
bluebunny e015e4359c docs: device-categorization: fix duplicate typo
Signed-off-by: bluebunny <bluebunny@postmarketos.org>
2026-06-19 12:53:37 +00:00
Pablo Correa Gómez ada7990f8e docs: add that lowering main or community devices requires communication
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8595>
2026-06-19 11:41:19 +00:00
Pablo Correa Gómez 85dc562881 docs: add rationales for device categories
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>
2026-06-19 11:41:19 +00:00
Aelin e7fe5dab0e ci: Switch to Alpine 3.24 for CI runs
Now that Alpine 3.24 is out and the issues with Python 3.14 are
resolved, we can safely upgrade in CI.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8859>
2026-06-19 10:52:05 +00:00
Kidd Lee 834dccd4d9 readme: update link to approval rules
MR !8812 moved this page to `merge-requests` subdirectory.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8860>
2026-06-19 18:12:28 +08:00
Aelin fddebb2279 systemd/systemd: fix the provider mess
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>
2026-06-19 03:46:53 +02:00
Aelin 7bc5615daf device-lenovo-21bx: Fix typo in lts kernel description
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8856>
2026-06-18 19:04:35 +02:00
Ferass El Hafidi d4ead1f8f8 device-postmarketos-trailblazer: drop qcom-laptop kernel
It is apparently broken (according to Casey), and might be dropped from
pmaports anyway. Let's just drop it from trailblazer at this point.

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8826>
2026-06-18 15:49:42 +00:00
postmarketOS CI 93f70ea6c0 linux-next: upgrade to next-20260618 2026-06-18 15:38:50 +00:00
Aster Boese 9f4e4777a8 docs: reference Alpine Linux's CODINGSTYLE.md
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8847>
2026-06-18 13:39:33 +00:00
Stefan Hansson f357e3e669 linux-postmarketos-qcom-sm7125: install modules to /usr
Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8855>
2026-06-18 13:15:46 +00:00
binarycraft007 1aedb96c37 device-asus-s5507q: switch to mainline kernels
Adds support for the kernels in main (lts, mainline, stable) and removes
support for linux-postmarketos-qcom-laptop.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8849>
2026-06-18 13:09:05 +00:00
Dang Huynh 167f59c830 linux-pine64-pinetab2: Upgrade to 7.0.12
Signed-off-by: Dang Huynh <dang.huynh@mainlining.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8840>
2026-06-18 10:42:52 +00:00
Clayton Craft 17214afd71 main/postmarketos-base-ui-plasma: add cups to pmb_recommends
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>

[ci:skip-vercheck]: pmb_recommends-only change

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8836>
2026-06-18 07:54:18 +00:00
Clayton Craft 64aa98a876 main/postmarketos-base-ui-gnome: add cups to pmb_recommends
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8836>
2026-06-18 07:54:18 +00:00
Clayton Craft d1d310a503 main/postmarketos-ui-cosmic: move install= from subpkg funcs
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8836>
2026-06-18 07:54:18 +00:00
Clayton Craft 81f3595800 main/postmarketos-ui-cosmic: add cups to pmb_recommends
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8836>
2026-06-18 07:54:18 +00:00
Dylan Van Assche ccd3a554a6 main/postmarketos-usb-moded: use service manager for unudhcpd
Also start set -e after config parameters are read. Fallbacks would trigger exit otherwise.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:13 +00:00
Dylan Van Assche 9bccd6b5e9 systemd/postmarketos-base-systemd: enable unudhpcd service
Start unudhpcd on boot

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:13 +00:00
Dylan Van Assche 41732e213b main/postmarketos-initramfs: stop unudhcpd before switching rootfs
Rootfs will take over the managing of unudhcpd under the service manager,
stop unudhpcd to allow this and avoiding multiple instances.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:13 +00:00
Dylan Van Assche 7a917eee3c main/postmarketos-usb-moded: handle initramfs situation
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>
2026-06-18 06:27:13 +00:00
Dylan Van Assche b877e7943b main/postmarketos-usb-moded: support dynamic iface
Read iface name from gadget, including config name. Also check for errors

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:10 +00:00
Dylan Van Assche ba1fd6bf14 main/postmarketos-usb-moded: add OpenRC MTP mode
OpenRC also needs MTP mode for usb-signaller.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:07 +00:00
Dylan Van Assche 9112523f0a systemd/postmarketos-base-systemd: swap usb-moded by usb-signaller
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:03 +00:00
Dylan Van Assche 9dcb48a08f main/postmarketos-usb-moded: switch to usb-signaller as default
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:27:00 +00:00
Dylan Van Assche f82661f261 main/postmarketos-usb-moded: add usb-moded-mtp-mode
MTP mode requires some time for the userspace daemon
to configure the FunctionFS gadget, wait until it is completed.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:26:56 +00:00
Dylan Van Assche 7c4ebfcc91 main/postmarketos-usb-moded: clean up IP forwarding
NetworkManager doesn't clean up IP forwarding, do it in the tethering script.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
2026-06-18 06:26:53 +00:00
Bart Ribbers e2572a0dc9 systemd/kjournald: upgrade to 26.04.2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8834>
2026-06-17 18:53:52 +00:00
Bart Ribbers fd34f8e28d systemd/plasma*: upgrade to 6.7.0
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8834>
2026-06-17 18:53:52 +00:00
Oliver Smith 0fe40dd597 main/postmarketos-release-upgrade: upgrade to 1.12.2
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8848>
2026-06-17 18:24:05 +00:00
Oliver Smith 9b29c2bc2c docs: stable-branches: backports may wait
Let's note that maintainers can choose to delay backports to give them
more testing time.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8850>
2026-06-17 19:45:54 +02:00
Aster Boese ff88820b6a lenovo-21bx: add myself as co-maintainer and move reference to top
Signed-off-by: Aster Boese <asterboese@mailbox.org>

[ci:skip-vercheck]

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8844>
2026-06-17 18:32:37 +02:00
Aster Boese 283ff28eff device-lenovo-21bx: add boot-deploy hook to remove EFI capsules file
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>
2026-06-17 15:01:58 +00:00
Aster Boese f0b0dff385 device-lenovo-21bx: switch to mainline kernels
Adds support for the kernels in main (lts, mainline, stable) and removes
support for linux-postmarketos-qcom-laptop after discussion with the
kernel's maintainers, as it is most likely going to be dropped, or at
least moved to testing.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8368>
2026-06-17 15:01:58 +00:00
Yu Watanabe 7eb30fa6f2 systemd/systemd: drop unnecessary conditionalization for $source
The upstream mkosi build does not fetch source files. Hence, it is not
necessary to exclude the tar ball from $source.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8832>
2026-06-17 10:16:34 +00:00
Clayton Craft eb81a92aae systemd/systemd: upgrade to 261-rc4
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8832>
2026-06-17 10:16:34 +00:00
Oliver Smith aafecd66e7 device-apple-tonga: remove
Craftyguy: "we should really just drop apple-tonga, it's redundant with
'device-apple-mac-aarch64'"

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8683>
2026-06-17 09:07:14 +00:00
Bart Ribbers f5e350c0bd temp/plasma-bigscreen: remove
Moved upstream in https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/104116

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8841>
2026-06-17 08:54:06 +00:00
Clayton Craft 51b52fc2cc main/postmarketos-base-ui: revert flatpak hack
Flatpak 1.18 includes a proper fix[1] for #3816, so we can revert this
hack that delayed starting the helper until ntp was available. This also
means that boot will now be marked 'complete' in systemd before NTP is
up, which was a weird side-effect of this hack.

This reverts commit 96d714f167.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>

1. https://patch-diff.githubusercontent.com/raw/flatpak/flatpak/pull/6547.patch

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8487>
2026-06-17 09:58:58 +02:00
Clayton Craft b04820297c linux-postmarketos-asahi: upgrade to 7.0.12-1
This also adds a patch that was sent upstream to allow enabling dynamic
ftrace on aarch64 with CFI=y

https://lore.kernel.org/all/20260609-arm64-ftrace-direct-calls-v1-0-4a46f266697f@linux.dev/

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8837>
2026-06-16 16:37:14 -07:00
Clayton Craft 8be47c7a33 main/postmarketos-base-ui-gnome: move install= from subpkg funcs
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8831>
2026-06-16 18:22:10 +00:00
Clayton Craft 138a8c01c3 main/postmarketos-base-ui-gnome: add "app provider" subpkgs
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>
2026-06-16 18:22:10 +00:00
Ferass El Hafidi fe736c32ea main/postmarketos-bootsplash: switch back to plymouth-openrc-plugin
With the openrc plugins hanging issues fixed in OpenRC 0.63.2, we can
now make use of plymouth-openrc-plugin once again.

This partially reverts commit f13be0f6b7.

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8811>
2026-06-16 16:58:21 +00:00
v34びょう 8ebe73581c postmarketos-config-nftables: bump pkgrel and checksum
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8820>
2026-06-16 16:18:55 +00:00
v34びょう a24583b9e7 postmarketos-config-nftables: block qmapmux interfaces
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8820>
2026-06-16 16:18:55 +00:00
postmarketOS CI f621576f12 linux-next: upgrade to next-20260616 2026-06-16 15:39:35 +00:00
Oliver Smith 2f121a4d14 docs: integrate COMMITSTYLE
Make a symlink at docs/merge-requests/commitstyle.md that points at the
COMMITSTYLE.md file, so it is part of the documentation at
https://docs.postmarketos.org/pmaports/.

Tweak the headline and link to Alpine's COMMITSTYLE.md so it looks
better in the version rendered at docs.postmarketos.org.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8829>
2026-06-16 13:40:21 +00:00
Antoine Martin 2a902da452 device-pine64-pinenote: fix upgrade path for nonfree-firmware
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>
2026-06-16 13:26:39 +00:00
Oliver Smith 4084d06f7b docs: approval-rules: simplify for stable branches
Don't describe how MRs to stable branches are done here, link to the
other page instead. Otherwise the approval rules should be the same as
for stable branches from now on.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
2026-06-16 13:30:02 +02:00
Oliver Smith 8d534ae3d6 docs: update merge-requests/stable-branches
* 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>
2026-06-16 13:30:01 +02:00
Oliver Smith d13bed7d56 docs: make headlines more consistent
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
2026-06-16 13:27:58 +02:00
Oliver Smith 5b69893122 docs: structure: move packaging related pages
Bring more structure into the docs by moving packaging related subpages
as well.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
2026-06-16 13:27:25 +02:00
Oliver Smith ac931d4507 docs: structure: move merge-requests related pages
Add a new "merge requests" page and move all related pages under that
page to give the docs more structure.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
2026-06-16 13:27:22 +02:00
Oliver Smith ae07d28bfb docs: structure: move CI related pages
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8812>
2026-06-16 13:24:21 +02:00
Clayton Craft 5932b59857 main/postmarketos-duranium: remove app store plugin conflicts
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>
2026-06-16 06:40:02 +00:00
Clayton Craft c25a89d8f8 main/postmarketos-duranium: add waydroid sysext subpkg
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8761>
2026-06-16 06:40:02 +00:00
postmarketOS CI ba02a48358 linux-next: upgrade to next-20260615 2026-06-16 04:38:45 +00:00
Oliver Smith b2efdb7f64 issue-templates/Release_Infrastructure: update
* 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>
2026-06-15 19:23:56 +00:00
Oliver Smith ad05a1b83b docs/releases/timeline: add numbers before phases
Adjust the timeline docs and release infrastructure template to have
numbers before the phases. This makes clearer where the next phase
begins in the long infrastructure issue template.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8815>
2026-06-15 19:23:56 +00:00
Aster Boese 3e322e01a1 apple-idevice: fix APKBUILD formatting
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8800>
2026-06-15 19:15:13 +00:00
Aster Boese 8615aac3af apple-idevice: depend on firmware-apple-idevice
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8800>
2026-06-15 19:15:13 +00:00
Aster Boese 1ec34e426f firmware-apple-idevice: new package
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8800>
2026-06-15 19:15:09 +00:00
Oliver Smith 484ac6f4d3 main/postmarketos-release-upgrade: upgrade to 1.12.1
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8817>
2026-06-15 07:02:45 +00:00
Yu Watanabe 863cc44ac9 systemd/systemd: bump pkgrel
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>
2026-06-15 13:42:43 +09:00
Yu Watanabe f432f70de9 systemd/systemd: add upstream mkosi build support
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>
2026-06-15 13:42:43 +09:00
Yu Watanabe 0bc8f74905 systemd/systemd: enable bootloader support on 32-bit architecture
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 13:42:37 +09:00
Yu Watanabe 87c4c8c4e0 systemd/systemd: introduce systemd-tests subpackage
Then, we can run unit tests and integration tests on postmarketOS systems.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 12:08:49 +09:00
Yu Watanabe 6ba54d5a25 systemd/systemd: add valgrind support
Note, systemd uses `RUNNING_ON_VALGRIND` macro, hence when executables
are not running on valgrind, this should introduce any runtime behavior
differences.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 12:08:49 +09:00
Yu Watanabe 3de1007991 systemd/systemd: add xenctl support
Then, we can support xen kexec commends on reboot.
Note, this does not requires any runtime library.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 12:08:43 +09:00
Yu Watanabe f8dbf2b686 systemd/systemd: enable libarchive and zlib support
Then, people can use foo.tar.gz by systemd-import and friends.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 11:50:28 +09:00
Yu Watanabe d7af540929 systemd/systemd: fix libpwquality dependency
Without installing -dev package on build, libpwquality support is not
enabled.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 11:50:28 +09:00
Yu Watanabe 33f463cd23 systemd/systemd: gnu grep is required by test-kernel-install
test-kernel-install requires 'grep -G', which is not supported by
BusyBox grep.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 11:50:28 +09:00
Yu Watanabe 1be5715359 systemd/systemd: various trivial cleanups
- -Dsysvinit-path= has been deprecated,
- dropped stale comment,
- fix indent.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8718>
2026-06-15 11:50:19 +09:00
Sicelo A. Mhlongo 6d0ebc1731 device-nokia-n900: improve input-device-related configuration
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>
2026-06-14 18:05:47 +00:00
Sicelo A. Mhlongo 47ffb9097e device-nokia-n900: switch sound card over to ucm2
Having switched card over to ucm2, drop alsactl restore hacks from /etc/local.d
and from the acpi configuration.

PS: Microphones not implemented yet.

Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8748>
2026-06-14 18:05:47 +00:00
Aster Boese 15eb62c214 cross/gcc-*: Upgrade to 15.2.0-r6
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8814>
2026-06-14 16:53:59 +00:00
Neil Armstrong 83adba34fd linux-ayaneo-pocket-s2: install modules to /usr
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>

[ci:skip-kconfigcheck]: The kconfigcheck.toml has been changed since the
last CI run. Let's merge the version that Neil has tested without
modifying it further.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8801>
2026-06-14 18:41:38 +02:00
Neil Armstrong 8ed1cc0379 device-ayaneo-pocket-s2: update firmware file and initfs modules
Take in account the new Audiorech Topology path and panel module name
for the upstreaming work.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8801>
2026-06-14 16:29:35 +00:00
Neil Armstrong 529a05ecf1 linux-ayaneo-pocket-s2: use updated patch serie with upstream aligned support
It contains the already merged SGM304 driver and the following
patch in review on the mailing-lists:
- https://lore.kernel.org/all/20260529-topic-sm8650-ayaneo-pocket-s2-sy7758-v5-0-03aacd49747c@linaro.org/
- https://lore.kernel.org/all/20260605-topic-sm8650-ayaneo-pocket-s2-r63419-v7-0-b84b6da84293@linaro.org/
- https://lore.kernel.org/all/20260608023011.942228-1-mohammad.rafi.shaik@oss.qualcomm.com/
- https://lore.kernel.org/all/20260610-topic-sm8650-ayaneo-pocket-s2-wsa2-fix-v1-0-18bb19c5ca22@linaro.org/
- https://lore.kernel.org/all/20260522-topic-sm8650-ayaneo-pocket-s2-display-dt-v2-1-cdd4b70e5a16@linaro.org/

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8801>
2026-06-14 16:29:35 +00:00
Neil Armstrong 13f3f6c11e firmware-ayaneo-pocket: use upstream topology for Pocket S2
Use an upstream aligned Audiorech Topology using the in-kernel
WSA2 fix instead of using a fake WS2 topology element.

Built from:
https://github.com/linux-msm/audioreach-topology/pull/65

commit 6040c950021b88c6db287cfffa17abbf917f56cf

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8801>
2026-06-14 16:29:32 +00:00
Neil Armstrong 16e3543e64 alsa-ucm-conf-ayaneo-pocket-s2: update UCM conf
Use an upstream aligned UCM conf, without microphone support yet

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8801>
2026-06-14 16:29:32 +00:00
Clayton Craft 2ca69460a1 kconfigcheck: drop DEBUG_INFO_BTF=n for LTO+Rust
These options are required to get BPF stuff working in the kernel.

Fixes #4411

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8779>
2026-06-14 16:03:04 +00:00
Clayton Craft 5f8ef38f89 kconfigcheck: add systemd bpf requirements to default category
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8779>
2026-06-14 16:03:04 +00:00
Clayton Craft 64ae016303 systemd/systemd-stage0: add comment about why depends_* are manually set
This confused me in
https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8
704#note_557852

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8779>
2026-06-14 16:03:04 +00:00
Aelin a77c75ee76 systemd/systemd: build with TPM support
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8779>
2026-06-14 16:03:04 +00:00
Clayton Craft 2006cfcde8 systemd/systemd: enable bpf support
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>
2026-06-14 16:03:04 +00:00
Aster Boese 842f171d02 .gitlab: Out_of_date_community_kernels.md: use ymd for date and clarify title
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8816>
2026-06-14 17:10:03 +02:00
Daniel Kulesz 46f257215e linux-purism-librem5: Remove forgotten and obsoleted call to downstream_package
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel KuleszandAster Boese asterboese@mailbox.org 7116a079b8 linux-purism-librem5: Modernize packaging
refs #1814, #4594

Related to !8124, !8578

Port changes from !8578 authored by Aster Boese to currently developed MR for the librem5.

Co-authored-by: Aster Boese asterboese@mailbox.org
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz eafc62dd74 linux-purism-librem5: Add zstd as dependency (required for packaging the kernel)
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz 60c7c33de3 linux-purism-librem5: Remove pureosrel variable from APKBUILD
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz 3d4edb256b linux-purism-librem5: Migrate kernel config (manually) and update checksum
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz dc4836fb4d linux-purism-librem5: Sort makedepends alphabetically in APKBUILD
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz 1d70fbaf39 linux-purism-librem5: Prefix custom variables with underscore
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz d662b52807 linux-purism-librem5: Try to fix linter warnings and make url schema more flexible
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
Daniel Kulesz e4c6d1ae0e linux-purism-librem5: upgrade to 6.6.139
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8751>
2026-06-14 10:58:41 +00:00
131 changed files with 1383 additions and 6866 deletions

No files matched your search

+1 -1
View File
@@ -1,4 +1,4 @@
image: registry.alpinelinux.org/img/alpine:3.23
image: registry.alpinelinux.org/img/alpine:3.24
stages:
- build
- hardware tests
+1 -1
View File
@@ -67,7 +67,7 @@ instance/
# Documentation
public
docs/deviceinfo-reference.md
docs/packaging/device-packages/deviceinfo-reference.md
# PyBuilder
target/
@@ -1,5 +1,8 @@
<!-- Use this template to notify community kernel maintainers that their
kernels are out-of-date and start the timer for moving them to testing.
Please title the issue:
Current community kernels not meeting version requirement (yyyy-mm-dd)
-->
Hi, as per our
@@ -7,7 +10,7 @@ Hi, as per our
devices in the community category may not use a kernel version older than 6
months.
As of today (dd-mm-yyyy), the following kernels do not meet this requirement:
As of today (yyyy-mm-dd), the following kernels do not meet this requirement:
* kernel-pkgname: kernel-pkgver, version-release-date (maintainers: @ ...)
@@ -8,14 +8,14 @@ Person in charge of the release (doesn't have to do all the work, but has to
push it forward):
<!-- Put your usename here and assign yourself to this issue -->
### Preparation
### 0. Preparation
- [ ] Create the gitlab milestone for the release
- [ ] Add this infrastructure issue to the milestone
- [ ] Update the
[timeline](https://docs.postmarketos.org/policies-and-processes/development/releases/current-timeline.html)
for the next release
### Pre-Build phase
### 1. Pre-Build phase
This phase is to get some extra time for building packages. The branch will be rebased once in the branch phase.
@@ -23,6 +23,8 @@ This phase is to get some extra time for building packages. The branch will be r
- [ ] Alpine's main repository must be built and published
- [ ] Alpine's community repository must be built and published
<small>Without this, bpo won't be able to build packages but steps before
that can be done already.</small>
#### pmbootstrap: adjust config
- [ ] Update `pmb/config/__init__.py:apk_tools_min_version`. This should be a
@@ -36,18 +38,21 @@ This phase is to get some extra time for building packages. The branch will be r
- [ ] `git checkout -b vYY.MM main`
- [ ] Create a `=== Branch vYY.MM from main ===` commit
- Remove channels.cfg (should only be in main)
- Change `channel=edge` to `channel=vYY.MM` in pmaports.cfg
- Change `supported_arches` to `x86_64,aarch64,armv7` in pmaports.cfg
- Disable x86, armhf, riscv64 in .ci/build-jobs.yaml.j2 on the release branch
and delete `.ci/build-*` scripts for these arches
- Adjust `pmaports.cfg`: Change `channel=edge` to `channel=vYY.MM`
- Adjust `pmaports.cfg`: Change `supported_arches` to `x86_64,aarch64,armv7`
- Delete `.ci/build-*` scripts for other arches
<small>`pmbootstrap ci` reads these</small>
- [ ] `git push`
- [ ] '''protect the new release branch in gitlab''', so nobody can force-push to it
- [ ] Ensure the branch is protected in the
[repository settings](https://gitlab.postmarketos.org/postmarketOS/pmaports/-/settings/repository)
#### pmaports: update main branch
- [ ] `git checkout main`
- [ ] Add the new branch to
[channels.cfg](https://wiki.postmarketos.org/wiki/Channels.cfg_reference),
[like this](https://gitlab.postmarketos.org/postmarketOS/pmaports/-/commit/c43571ceaf9b8155519bc9fb760bdeccd96e7e9c)
[channels.cfg](https://wiki.postmarketos.org/wiki/Channels.cfg_reference):
- [Example](https://gitlab.postmarketos.org/postmarketOS/pmaports/-/commit/c43571ceaf9b8155519bc9fb760bdeccd96e7e9c)
- Check if you need to set `branch_aports=master` initially if the stable
branch does not exist yet.
- [ ] `git push`
#### pmaports: update os-release / remove packages / aportgen
@@ -61,13 +66,15 @@ This phase is to get some extra time for building packages. The branch will be r
- `pmbootstrap config mirrors.pmaports none`
- `pmbootstrap config mirrors.systemd none`
- `pmbootstrap checksum postmarketos-base`
- `git commit`
- `git commit -s` (`Remove packages that we don't have in stable`)
- [ ] Remove packages:
- `cross/*-armhf` and other unsupported arches in cross dir (keep `gcc-x86` and `musl-dev-x86`, `systemd-boot-x86`)
- `main/postmarketos-ui-asteroid` (no smartwatches are useful on stable branches at the moment)
- `gcc4*` and `gcc6*` from main and cross dirs
- `device/downstream`, `device/archived`
- [ ] Run `pmbootstrap aportgen` for packages in cross
- `extra-repos/systemd/postmarketos-repo-nightly`
- [ ] Run `pmbootstrap aportgen` for packages in cross:
- `cd cross; PMB_APK_FORCE_MISSING_REPOSITORIES=1 pmbootstrap aportgen musl-* grub-efi-x86`
- `git commit -s` (`cross: regenerate for vYY.MM`)
- [ ] `git push`
#### bpo: adjust config
@@ -79,17 +86,19 @@ This phase is to get some extra time for building packages. The branch will be r
- [ ] Roll it out/ask somebody who can do that
- [ ] Restart bpo, it will start building `x86_64` packages
#### bootstrap of binary packages
- [ ] Fix failing `x86_64` packages (Remember: patches need to go through edge
first, then get backported to the stable branch!)
#### Bootstrap of binary packages
- [ ] Fix all failing `x86_64` packages (Remember: patches need to go through
edge first, then get backported to the stable branch!)
- Try to get build fixes merged to edge quickly, ask for reviews in
#postmarketos-devel, and consider merging trivial fixes right after they
pass CI.
- Devices in testing and archived categories that don't build: consider
trying to fix them, or just delete them from the branch
- [ ] Wait until all packages for `x86_64` are built and published
- [ ] Fix up ARM packages too
- [ ] Wait until all packages for ARM are built and published
- [ ] Wait until all packages for `x86_64` (main repository, we don't need to
wait for the systemd repository before continuing) are built and
published
- [ ] Enable arm repositories in the BPO config
- [ ] Get all packages to build without errors
#### Wallpaper poll
- [ ] Team meeting: make a short list of 4 wallpapers from [the
@@ -125,11 +134,11 @@ This phase is to get some extra time for building packages. The branch will be r
- [ ] Adjust CI of postmarketos-release-upgrade to test the new release too
(`git grep` for the previous release to see what needs to be adjusted)
### Update the wallpaper
#### Update the wallpaper
- [ ] Set the wallpaper that won in the poll in edge, backport this change to
the stable release branch
### Branch phase
### 2. Branch phase
#### Rebase on main
- [ ] `git checkout vYY.MM`
@@ -140,8 +149,7 @@ This phase is to get some extra time for building packages. The branch will be r
#### Update BPO config
- [ ] Update bpo's images config to build images for the new branch for all
devices in community and main, except for:
- qemu-*
devices in community and main
- [ ] bpo: configure the new branch to be not WIP anymore
- [ ] Roll-out bpo changes
@@ -149,7 +157,12 @@ This phase is to get some extra time for building packages. The branch will be r
- [ ] Ensure that a pmbootstrap release been made with the apk-tools min
version change
### Test phase
#### aports stable branch set?
* [ ] Check if a stable branch exists in `aports` for the new release, and that
it is being used in `channels.cfg` (might still be set to `master` if it
did not exist during the Pre-Branch phase).
### 3. Test phase
- [ ] Create an issue in pmaports with a checklist of devices and UIs in main
and community (see previous issue for reference)
- Tag the testers of each device and UI
@@ -164,7 +177,7 @@ This phase is to get some extra time for building packages. The branch will be r
intended for the upcoming release
- [ ] Add new version to the pmaports gitlab issue template (.gitlab dir)
### Release phase
### 4. Release phase
- [ ] Did a reasonable amount of devices get tested? (we may consider dropping
devices that were not tested)
- [ ] Make sure all fixes are in
+4 -4
View File
@@ -1,4 +1,4 @@
# Policy for commits in pmaports
# Commit Style
This document defines policy for organising and titling commits for
inclusion in pmaports.
@@ -16,9 +16,9 @@ target device.
## General policy
We follow Alpine's aports commit style with some minor exceptions
and additions. Alpine's commit style can be found here:
https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/COMMITSTYLE.md
We follow
[Alpine's aports commit style](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/COMMITSTYLE.md)
with some minor exceptions and additions.
## Exceptions
+1 -1
View File
@@ -10,7 +10,7 @@ Helpful resources:
* [How to create a package](https://wiki.postmarketos.org/wiki/Create_a_package)
* [APKBUILD reference](https://wiki.alpinelinux.org/wiki/APKBUILD_Reference)
* [pmaports commit style](./COMMITSTYLE.md)
* [Approval rules](docs/approval-rules.md)
* [Approval rules](docs/merge-requests/approval-rules.md)
* [Alpine Linux aports](https://gitlab.alpinelinux.org/alpine/aports/)
* [Alpine Linux package search](https://pkgs.alpinelinux.org/packages)
* [postmarketOS package search](https://pkgs.postmarketos.org/packages)
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-aarch64
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for aarch64"
url="https://gcc.gnu.org"
arch="x86_64"
@@ -179,7 +179,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -631,12 +634,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-armhf
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for armhf"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-armv7
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for armv7"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-loongarch64
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for loongarch64"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-ppc64le
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for ppc64le"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-riscv64
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for riscv64"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-x86
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for x86"
url="https://gcc.gnu.org"
arch="aarch64 x86_64"
@@ -180,7 +180,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -633,12 +636,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+10 -2
View File
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-x86_64
pkgrel=5
pkgrel=6
pkgdesc="Stage2 cross-compiler for x86_64"
url="https://gcc.gnu.org"
arch="aarch64"
@@ -179,7 +179,10 @@ esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static:libgccstatic:$CTARGET_ARCH"
if $_libgcc; then
depends="$depends libgcc-static$_target"
subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH"
fi
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
@@ -631,12 +634,17 @@ libgcc() {
depends=
amove usr/lib/libgcc_s.so.*
# Symlink for Clang to find the library. Gets overwritten by the real
# library if gcc is installed.
ln -s /usr/lib/libgcc_s.so.1 \
"$subpkgdir"/usr/lib/libgcc_s.so
}
libgccstatic() {
pkgdesc="GNU C compiler runtime libraries"
depends=
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbegin.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtbeginS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/crtendS.o
amove usr/lib/gcc/"$CTARGET"/"$pkgver"/libgcc.a
+38 -4
View File
@@ -1,10 +1,10 @@
# Contributor: Konrad Dybcio <konradybcio@kernel.org>
# Contributor: Aster Boese <asterboese@mailbox.org>
# Reference: <https://postmarketos.org/devicepkg>
# Contributor: Konrad Dybcio <konradybcio@kernel.org>
# Co-Maintainer: Aster Boese <asterboese@mailbox.org>
maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=device-lenovo-21bx
pkgdesc="Lenovo ThinkPad X13s"
pkgver=20
pkgver=23
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -17,7 +17,6 @@ depends="
linux-firmware-ath11k
linux-firmware-qca
linux-firmware-qcom
linux-postmarketos-qcom-laptop
postmarketos-base
qmi-utils
systemd-boot
@@ -30,8 +29,12 @@ source="
pipewire.conf
usbguard.conf
kernel-cmdline.conf
remove-capsules.sh
"
subpackages="
$pkgname-kernel-stable:kernel_stable
$pkgname-kernel-lts:kernel_lts
$pkgname-kernel-mainline:kernel_mainline
$pkgname-pipewire
$pkgname-usbguard
$pkgname-vulkan
@@ -42,12 +45,17 @@ build() {
}
package() {
# Cannot be top-level since this is provided by subpackages of this package
depends="$depends $pkgname-kernel-any"
devicepkg_package $startdir $pkgname
install -Dm644 "$srcdir"/firmware.files \
-t "$pkgdir"/usr/share/mkinitfs/files
install -Dm644 "$srcdir"/pipewire.conf \
-t "$pkgdir"/usr/share/pipewire.conf.d
install -Dm755 "$srcdir"/remove-capsules.sh \
-t "$pkgdir"/usr/share/boot-deploy/hooks
install -Dm600 "$srcdir"/usbguard.conf \
"$pkgdir"/etc/usbguard/rules.d/"$pkgname".conf
}
@@ -70,6 +78,31 @@ usbguard() {
amove etc/usbguard/rules.d/"$pkgname".conf
}
kernel_stable() {
pkgdesc="Stable kernel (recommended, best balance between stability and features)"
depends="linux-postmarketos-stable"
provides="$pkgname-kernel-any"
provider_priority=3
replaces="linux-postmarketos-qcom-laptop"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_lts() {
pkgdesc="Long-term maintenance kernel (most stability, not all security fixes & new features)"
depends="linux-postmarketos-lts"
provides="$pkgname-kernel-any"
provider_priority=2
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_mainline() {
pkgdesc="Upstream development kernel (regular breakage, latest features)"
depends="linux-postmarketos-mainline"
provides="$pkgname-kernel-any"
provider_priority=1
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
sha512sums="
7a685de71e512b5b2bf21448fb8fc1055bb33c72149acd57e1754c212c40218a2b93ab603d3262c2c37ace051c5872b2fcaeb5379a5beaac680b7a2a0f115a1e deviceinfo
eabb3e9c6946bb065244f129f1a432842b09b0f2a9a4b41289c3c289f52076c63d51205dd7ccaa1a7621dd8eb0e4b1a3df27f9dc6b55445fbd738be13c2031bb firmware.files
@@ -77,4 +110,5 @@ eabb3e9c6946bb065244f129f1a432842b09b0f2a9a4b41289c3c289f52076c63d51205dd7ccaa1a
52bbb9564ec713db5d46937701b121afe0c6c644fffe189a05766f491b4997b1bbc4c1f90229efb5764d795df8d40a57d4c840ee4b32d426e7a84520364b8bf5 pipewire.conf
0d0412eb1f01af39000c39391f622640461305d83dae1a53aa7eef640cc17fd265cabca4e4e57dea053c47a4e50f9feb90f12ee5310d5b6425783e83efc5f9d8 usbguard.conf
7e60772bdefc4fc9d459cf2daa9fe09f605240f261b2e8f046ec992593144d26e0c80863ea3b9cb67025fef8fad45dacf54e022d0d57afb321778a5bb2eadaf4 kernel-cmdline.conf
bf6d6e5cdd4942651eaa424445773e9475eb9b284a5be8e3eb131f6ffcb8a652ce963a04a1f1d44cdcc00a58e00dd1a9797d3e624ecde931f816026fbb583640 remove-capsules.sh
"
@@ -0,0 +1,10 @@
#!/bin/sh
# Persisted_Capsules.bin 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.bin is recreated on reboot
# and we do not use it for anything currently, so it is safe to remove in a
# hook.
printf "Removing Persisted_Capsules.bin...\n"
rm -f /boot/Persisted_Capsules.bin >/dev/null 2>&1
@@ -5,8 +5,8 @@
/usr/share/bkeymaps/fi/rx51_fi.bmap.gz
/usr/share/bkeymaps/se/rx51_se.bmap.gz
# touchscreen calibration
/usr/lib/udev/rules.d/90-touchscreen-dev.rules
# touchscreen calibration (and other input-related udev rules)
/usr/lib/udev/rules.d/72-n900-input.rules
# udev/hwdb hardware keyboard management
/etc/udev/hwdb.bin
+17 -28
View File
@@ -1,7 +1,7 @@
# Reference: <https://postmarketos.org/devicepkg>
maintainer="Danct12 <danct12@disroot.org>"
pkgname=device-nokia-n900
pkgver=60
pkgver=62
pkgrel=0
pkgdesc="Nokia N900"
url="https://postmarketos.org"
@@ -42,14 +42,9 @@ subpackages="
source="
10-initfs-input.files
10-initfs-keymap.sh
acpi.map
acpi_handler.sh
asound.state.headset
asound.state.speakers
backlight-enable.sh
bq27k-options.conf
bq27k-monitor.sh
device-nokia-n900.start
deviceinfo
etc-profile.d-25wlr-pixman.sh
i3blocks/i3blocks.conf
@@ -76,11 +71,13 @@ source="
sway/etc-sway-config.d-nokia-n900.conf
sway/etc-xdg-foot-foot.ini
uboot-script.cmd
ucm2/HiFi.conf
ucm2/RX-51.conf
udev/10-nokia-modem.rules
udev/15-bq27k.rules
udev/90-touchscreen-dev.rules
upower.conf
usr-lib-udev-hwdb.d-99-n900-hwkb.hwdb
usr-lib-udev-rules.d-72-n900-input.rules
usr-share-mkinitfs-hooks-01-omap-disable-idle.sh
usr-share-unl0kr-unl0kr.conf.d-00-n900-keyboard.conf
xkb-keymap
@@ -110,18 +107,12 @@ package() {
"$pkgdir"/usr/share/mkinitfs/hooks/00-$pkgname-backlight.sh
install -D -m644 "$srcdir"/pointercal \
"$pkgdir"/etc/pointercal
install -D -m644 "$srcdir"/asound.state.speakers \
"$pkgdir"/var/lib/alsa/asound.state.speakers
install -D -m644 "$srcdir"/asound.state.headset \
"$pkgdir"/var/lib/alsa/asound.state.headset
install -Dm644 "$srcdir"/10-initfs-input.files \
"$pkgdir"/usr/share/mkinitfs/files/10-initfs-input.files
install -Dm644 "$srcdir"/10-initfs-keymap.sh \
"$pkgdir"/usr/share/mkinitfs/hooks/10-initfs-keymap.sh
install -D -m644 "$srcdir"/usr-share-mkinitfs-hooks-01-omap-disable-idle.sh \
"$pkgdir"/usr/share/mkinitfs/hooks/01-omap-disable-idle.sh
install -Dm755 "$srcdir"/$pkgname.start \
"$pkgdir"/etc/local.d/$pkgname.start
install -Dm755 "$srcdir"/bq27k-monitor.sh \
"$pkgdir"/usr/bin/bq27k-monitor
install -Dm755 "$srcdir"/screenlock.sh \
@@ -130,14 +121,14 @@ package() {
"$pkgdir"/usr/share/unl0kr/unl0kr.conf.d/00-n900-keyboard.conf
# Udev & hwdb rules
install -D -m644 "$srcdir"/90-touchscreen-dev.rules \
"$pkgdir"/usr/lib/udev/rules.d/90-touchscreen-dev.rules
install -D -m644 "$srcdir"/10-nokia-modem.rules \
"$pkgdir"/usr/lib/udev/rules.d/10-nokia-modem.rules
install -D -m644 "$srcdir"/15-bq27k.rules \
"$pkgdir"/usr/lib/udev/rules.d/15-bq27xxx-battery.rules
install -D -m644 "$srcdir"/usr-lib-udev-hwdb.d-99-n900-hwkb.hwdb \
"$pkgdir"/usr/lib/udev/hwdb.d/99-n900-hwkb.hwdb
install -D -m644 "$srcdir"/usr-lib-udev-rules.d-72-n900-input.rules \
"$pkgdir"/usr/lib/udev/rules.d/72-n900-input.rules
# Keymap
install -D -m644 "$srcdir"/keymaps/rx51_us.bmap.gz \
@@ -180,6 +171,12 @@ package() {
install -D -m644 "$srcdir"/bq27k-options.conf \
"$pkgdir"/usr/lib/modprobe.d/bq27xxx-battery.conf
# UCM
install -Dm644 "$srcdir"/HiFi.conf \
"$pkgdir"/usr/share/alsa/ucm2/conf.d/RX-51/HiFi.conf
install -Dm644 "$srcdir"/RX-51.conf \
"$pkgdir"/usr/share/alsa/ucm2/conf.d/RX-51/RX-51.conf
# UPower
install -Dm644 "$srcdir"/upower.conf \
"$pkgdir"/etc/UPower/UPower.conf.d/99-n900-fg.conf
@@ -188,11 +185,6 @@ package() {
x11() {
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
depends="unclutter-xfixes scrot xautolock xdotool xinput xrdb xset"
mkdir "$pkgdir"/etc/acpi
install -D -m755 "$srcdir"/acpi_handler.sh \
"$pkgdir"/etc/acpi/handler.sh
install -D -m644 "$srcdir"/acpi.map \
"$pkgdir"/etc/acpi.map
install -D -m644 "$srcdir"/40-xkb.conf \
"$subpkgdir"/usr/share/X11/xorg.conf.d/40-xkb.conf
install -Dm644 "$srcdir"/xresources \
@@ -264,16 +256,11 @@ wayland() {
}
sha512sums="
5e0631deeea881346e0f25c7d80d849026bf3e30c53bc33c9f1ee5587d5cd93b6faa3db722cbb24de0b38111c4113051a98b3d73b8b5c520f34830c12d5e0cbe 10-initfs-input.files
225536c3105169b4cdd68d8edec56fc106f0b468e1feb1aebe772d154c0dba7d3e803877e857c23e521951b45138b64e191c9fd4e9a143313dbf12402f25c229 10-initfs-input.files
4656d3b3ced0a86e2d6315c89322899f646a689e9cb64609aa8ad5a676b23d93706d8a37f3be6f6b12c6b1e8501b7d26ecafecf27322333850513a6805c61910 10-initfs-keymap.sh
2e6c324c2a0627fb37ee2feff249d6c828116a9c1a32d572481dddc12648c98b726eb3a475838398742f76a60e3f2249d7707502360473b8bf2e794bf22f57ce acpi.map
eef1f3d5fab1148af498607d3bc7c6a866b61d808d2b90a4ea3e360d5fef779070380670431b67bd3d87111bc7d0e877ef9ab656f4de17c3071cfc360a2746e3 acpi_handler.sh
5b87071834313a389f83d29f86f6e3ea108d0921f17dc918be7a46de7e74c73a4418044ef600a0fbf72c8fad22b7730dcd5bfe3d6d01d76bf01556f8540f0b32 asound.state.headset
67acc17a33bc75113300393b4a5bba15319014032407e774d079abf310368e75f4f697dbb4856ba2d2d8ea184b056bb33561f42918de3ee91ab6a77df89a133c asound.state.speakers
3d55e34b95791636e44a5f41754f3d0de039dbba41f7a556d43a95c9e64afcfa930046b4b96b40020b6f196096ffba93514682927e32fa4488686fdd19c6da5a backlight-enable.sh
344ec50cee2a4d864debad12810a83070ab8257f9f07dcfa9be3eea1d8b26f3ab4fbe322fe05a384152b40fc5e1481df51d191624c7062186dd70f95a0784ea8 bq27k-options.conf
c5b8e03ca9f720a794f2593a3e938640cbd91ac44dd761079bbf4614a0d288a9d7b72de8ed2493c062dc9f37be580bea529f454d2335f55b7a9f4d14024b42a9 bq27k-monitor.sh
e6bbac8de1a198ba716f44ade76606e1e0adcc574156b855ac41be5eb5308389d3277fd89cc34b119fbc33d9801ab9f79a6ff213392596bff40bc17e931c05ef device-nokia-n900.start
b1ebed32232ca1890ed6a47372ce45f4ee004fcb76defc6f67048cfa7361d6e02ebd365a6370ba7c26d410e67926a6fada863f07aa18d7098dbdea1a3b057415 deviceinfo
1c7499eb84948eb5b73d58474b1b71a5f2f63116a2a3e1f9a4238064dcf6c152ccefa108bd4ab1074712a2319111c8fdd4bfcf0dbe4d26b5a319404def1b11d2 etc-profile.d-25wlr-pixman.sh
a8152e94262629e11abdd8809d187c3b7ed1866a6128fb1f435e17e72120536ac8114262e66df6decb2627743027f2b923ddbe8a94e3e844099b6fad02ec252b i3blocks.conf
@@ -295,16 +282,18 @@ e440ed7a3070c17e003b86b72dbe6d8194d01b577ca8dd56dd066f216b6dda32bb965c780950f178
862ebc7cd2d7a1b3d41b10701b8418308c89eb0732eb99c42ec1091d48e08db9421727f67a3272b7309549798d59afb1b8d7d2fa48d1447b208fcb2329472d4d modules.blocklist
87c18554d307161876cfe6133f7e1b2b34a0dccd6d4eb36c3f549551f1fa3587430f203911fa29023cc5c048054dbcf629f8665e88fdec9ebf48f4790a16fcf9 modules-initfs
143c21f0b18a016d37cb44178e9daea09f128a90769b48353c03c3f245cb9b1f7e773b9ccee084973fc78ddd7a18c2642e54888a85bda7c7daecddc9a8c62eff pointercal
bc926a11ac6941944c1b9bdd8d8c59c6d9689bc101f6c34881341a2689f68364b4d814e1fda8a83e58f33b6bbdc74917e49f6085a35bef669a3077c8ede1b35b screenlock.sh
6d79a9e58a6f68dd7689e480359ba611fd9ea3f42b3f31575028a3efcea079973099eccf8ab3571221be919b4eeaf1ec48bc38aac13911444d96110551206456 screenlock.sh
3ec2e28a59298ad87ece5205be37b6e07c5f0f3bd0a98022f9f6824500444792cb06425bfbb62c9503c3072183f2d571c8504b6f23054062bb082c7a5b125a2b etc-sway-config.d-n900-status.conf
1e6939c583372dd4d493e1e2cfb6a4758a17606edd262d322bc01b2d3d76de4370581954f22f6ac976d86e87aab0979b2233e1c75780aeaff0670ea25dba62ca etc-sway-config.d-nokia-n900.conf
45da074b597a47825146ae1f3712538210e2ebe1c459f98a8189ccfc7c16ed54d221999b5890785c92aa750c6295dee7e920ef7f97d415d4212f8c0fea29169f etc-xdg-foot-foot.ini
4be9626cd2ad96730671e145aba9473b8bb7e62b7dec109eb87b4c748e5ac8fcb7cb0deeecc2a07f6fc9e9a598dbd438e02ad32d21e13d109ed7fecfb29904cc uboot-script.cmd
3586cdbfd9a3210ee3598eec68ddf63299075ca41e325c4b6a9cb0ebc66b3d79ce44d745829cfe263471bfe80820dd7ce2ec5fb8e28c06c3f3a020fbc20dfdc1 HiFi.conf
1a4295801cab1bbdca2e86e355d46c9dea6dbc8fd4d89e3ea6efdade33ebb29aee0cf237ce7400ea3c7716d0fe09b404a4c7042b65998cf1ae19bca2caa3d78f RX-51.conf
465b9a0d2b46d0981c64b47cb1f656c2456a90b91b1751a2efad10af38a96030dd99108b1fd76ce31bf1ea0f236d55bed38b114d6bd712f09f8968de034c946c 10-nokia-modem.rules
1acc441b9f83dc91fd65fa3f89b8205bfd72a465286bc181b4e7e92dd4b8c0bc5c20a18dab46ff3ee8ae70940efd7d767b3dfb920edb4c74377bd418b838693d 15-bq27k.rules
c6012aef28b096141b924fced226ec99fb93eb53b69c064a8887d8fecdf8dc08a3ba3db399e18d88374c6ef4c59013a30699c7e4d76e5cb771040582573a0527 90-touchscreen-dev.rules
1087d9699f6c4325a1d7ba2e6faf7fda87953fc0d3b0ef97de1da05187ba8f942f78806916cfb2ae9456fa2e63b2adf08e1e8118dc834c31a677755bab0fbf9a upower.conf
432f0281c4675f2c18ac03def81c3fd796697428f72ca0b7618ba28a7de4b8d0ad6234dcce4af1a7369c5e631054a1489b53950720ba6425ff3c0e1ac1a2a110 usr-lib-udev-hwdb.d-99-n900-hwkb.hwdb
25657426abb9d53b14a784fc41e495092229f5e2ef5ca8b1324cd6b414aa61bdcde4f87431cf33b23a67792580bb7eea5a638b1ad5be6f9c956c8fb88f704e99 usr-lib-udev-rules.d-72-n900-input.rules
73dc0f29a97994e7efe0a2c8906f75099b2bca1d660f58ae50b44d3f00eec0cee2a89541a80a4de0f276605ef36a576dd757f0cd9a9a4fd47b535b9400a83526 usr-share-mkinitfs-hooks-01-omap-disable-idle.sh
c6e0aefb630f60a6897cffbee70670296004dcfbade971205a8b03cc0cf0571cec59e9d0151b44f820d6d1f6a16d1ba538122c2b290a3357009c2c4268ca0cb5 usr-share-unl0kr-unl0kr.conf.d-00-n900-keyboard.conf
4de54d007bd354461fe4d6d455fe3f29694c132a3996c79b68070d606b5ca1839f9027202ebb731035f0bf6504b42fbd5ab15c7b47b7f308ce768a84d45024c4 xkb-keymap
@@ -1,24 +0,0 @@
# FORMAT: "<EV_XXX>" <type> "<input.h name>" <keycode> <value> <script under /etc/acpi>
# hint: "evtest /dev/input/eventX" is very helpful!
"EV_SW" 0x05 "SW_CAMERA_LENS_COVER" 9 0 CAM_LID_OPEN
"EV_SW" 0x05 "SW_CAMERA_LENS_COVER" 9 1 CAM_LID_CLOSE
"EV_SW" 0x05 "SW_KEYPAD_SLIDE" 10 1 KP_SLIDE_OPEN
"EV_SW" 0x05 "SW_KEYPAD_SLIDE" 10 0 KP_SLIDE_CLOSE
"EV_KEY" 0x01 "KEY_SCREENLOCK" 152 0 SCRNLCK_UP
"EV_KEY" 0x01 "KEY_SCREENLOCK" 152 1 SCRNLCK_DWN
"EV_KEY" 0x01 "KEY_CAMERA" 212 0 CAM_BTN_UP
"EV_KEY" 0x01 "KEY_CAMERA" 212 1 CAM_BTN_DWN
"EV_KEY" 0x01 "KEY_CAMERA_FOCUS" 528 0 CAM_FOCUS_UP
"EV_KEY" 0x01 "KEY_CAMERA_FOCUS" 528 1 CAM_FOCUS_DWN
"EV_SW" 0x05 "SW_HEADPHONE_INSERT" 2 1 HEADPHONE_INSERT
"EV_SW" 0x05 "SW_HEADPHONE_INSERT" 2 0 HEADPHONE_REMOVE
"EV_SW" 0x05 "SW_MICROPHONE_INSERT" 2 1 MICROPHONE_INSERT
"EV_SW" 0x05 "SW_MICROPHONE_INSERT" 2 0 MICROPHONE_REMOVE
"EV_SW" 0x05 "SW_VIDEOOUT_INSERT" 2 1 VIDEOOUT_INSERT
"EV_SW" 0x05 "SW_VIDEOOUT_INSERT" 2 0 VIDEOOUT_REMOVE
@@ -1,60 +0,0 @@
#!/bin/ash
user=$( getent passwd 10000 | cut -d: -f1 )
cmd=$( echo $0 | awk '{i=split($0,a,"/"); print a[i]}' )
case $cmd in
KP_SLIDE_OPEN)
su $user -c '/usr/bin/screenlock.sh unlock'
/usr/bin/screenlock.sh kbd_backlight 31
;;
KP_SLIDE_CLOSE)
/usr/bin/screenlock.sh kbd_backlight 0
;;
CAM_BTN_DWN)
echo "Not implemented yet"
;;
CAM_BTN_UP)
echo "Not implemented yet"
;;
CAM_FOCUS_DWN)
echo "Not implemented yet"
;;
CAM_FOCUS_UP)
echo "Not implemented yet"
;;
CAM_LID_CLOSE)
echo "Not implemented yet"
;;
CAM_LID_OPEN)
echo "Not implemented yet"
;;
SCRNLCK_DWN)
echo "Not implemented yet"
;;
SCRNLCK_UP)
echo "Not implemented yet"
;;
HEADPHONE_INSERT)
alsactl restore -f /var/lib/alsa/asound.state.headset
;;
HEADPHONE_REMOVE)
alsactl restore -f /var/lib/alsa/asound.state.speakers
;;
MICROPHONE_INSERT)
echo "Not implemented yet"
;;
MICROPHONE_REMOVE)
echo "Not implemented yet"
;;
VIDEOOUT_INSERT)
echo "Not implemented yet"
;;
VIDEOOUT_REMOVE)
echo "Not implemented yet"
;;
*)
echo "Unknown event"
exit 1
;;
esac
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -1,9 +1,5 @@
#!/bin/sh
# Enable acpid
rc-update add acpid default
# hwdrivers is required for acpid to 'see' all devices
rc-update add hwdrivers boot
# Enable ofono
rc-update add ofono default
# Disable swclock because rtc is working
@@ -1,10 +1,5 @@
#!/bin/sh
# Generate symlinks for acpid events, based on definitions in /etc/acpi.map
for i in $(awk '{if($NF && ($1 !~ /^#/)) print $NF}' /etc/acpi.map); do
ln -s /etc/acpi/handler.sh /etc/acpi/$i
done
# Update hwdb
udevadm hwdb --update
@@ -1,3 +0,0 @@
#!/bin/sh
alsactl restore -f /var/lib/alsa/asound.state.speakers
@@ -2,8 +2,22 @@
set -e
kbd_backlight() {
for i in $(seq 1 6); do
brightnessctl --quiet --device="*kb$i" s "$1"
# The keyboard backlighting setup is based on 6 LEDs located above the
# Ctrl, Q, and E keys on the left and O, comma, and Backspace on the
# right. Thus the outermost keys are lit brighter than the innermost
# keys when the brightness value is set equally, and this worsens as
# the device ages, since the plastic diffuser deteriorates. Thus, set a
# higher brightness for the innermost LEDs to get even lighting on all
# keys.
for i in $(seq 1 3); do
pair=$((7 - i ))
brightness=$(( i * $1 ))
busctl call org.freedesktop.login1 /org/freedesktop/login1/session/auto \
org.freedesktop.login1.Session SetBrightness ssu \
"leds" "lp5523:kb$i" "$brightness"
busctl call org.freedesktop.login1 /org/freedesktop/login1/session/auto \
org.freedesktop.login1.Session SetBrightness ssu \
"leds" "lp5523:kb$pair" "$brightness"
done
}
@@ -0,0 +1,55 @@
Syntax 6
SectionDevice."Speaker" {
Comment "Internal Speaker"
Value {
PlaybackChannels "2"
PlaybackPriority "100"
PlaybackPCM "hw:RX51,0"
PlaybackVolume "HP Playback Volume"
PlaybackSwitch "HP Playback Switch"
}
EnableSequence [
cdev "hw:${CardId}"
cset "name='Speaker Function' On"
cset "name='HP Playback Switch' on"
]
DisableSequence [
cdev "hw:${CardId}"
cset "name='Speaker Function' Off"
cset "name='HP Playback Switch' off"
]
}
SectionDevice."Headphones" {
Comment "Headphones"
Value {
PlaybackPCM "hw:RX51,0"
PlaybackChannels "2"
JackControl "AV Jack"
PlaybackPriority "300"
PlaybackVolume "HP Playback Volume"
PlaybackSwitch "HP Playback Switch"
}
EnableSequence [
cdev "hw:${CardId}"
cset "name='Jack Function' Headphone"
cset "name='HP Playback Switch' on"
cset "name='TPA6130A2 Headphone Playback Volume' 38"
cset "name='Speaker Function' Off"
]
DisableSequence [
cdev "hw:${CardId}"
cset "name='Jack Function' Off"
cset "name='HP Playback Switch' off"
cset "name='TPA6130A2 Headphone Playback Volume' 0"
cset "name='Speaker Function' Off"
]
}
@@ -0,0 +1,16 @@
Syntax 6
SectionUseCase."HiFi" {
File "HiFi.conf"
Comment "High Fidelity Audio"
}
SectionDefaults [
cdev "hw:${CardId}"
cset "name='FM Transmitter Switch' Off"
cset "name='Speaker Function' Off"
cset "name='Jack Function' Off"
cset "name='Earphone Switch' off"
cset "name='FM Transmitter Switch' off"
cset "name='PCM Playback Volume' 127,127"
]
@@ -1,2 +0,0 @@
SUBSYSTEM=="input", ATTRS{phys}=="spi0.0/input-ts", ENV{WL_CALIBRATION}="1.094563 -0.020949 -34.586121 0.009427 -1.148506 503.816956", ENV{LIBINPUT_CALIBRATION_MATRIX}="1.109179 0.000000 -0.055283 0.000000 -1.192340 1.081266 0.000000 0.000000 1.000000"
SUBSYSTEM=="input", ATTRS{phys}=="spi1.0/input-ts", ENV{WL_CALIBRATION}="1.094563 -0.020949 -34.586121 0.009427 -1.148506 503.816956", ENV{LIBINPUT_CALIBRATION_MATRIX}="1.109179 0.000000 -0.055283 0.000000 -1.192340 1.081266 0.000000 0.000000 1.000000"
@@ -0,0 +1,7 @@
# Allow user session to read from gpio_keys and power button without elevated
# privileges
SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="input", ATTRS{name}=="gpio_keys", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{name}=="twl4030_pwrbutton", TAG+="uaccess"
# Touchscreen calibration
SUBSYSTEM=="input", DRIVERS=="tsc2005", ENV{LIBINPUT_CALIBRATION_MATRIX}="1.109179 0.000000 -0.055283 0.000000 -1.192340 1.081266 0.000000 0.000000 1.000000"
@@ -2,7 +2,7 @@ maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=device-pine64-pinenote
pkgdesc="Pine64 PineNote"
pkgver=15
pkgrel=2
pkgrel=3
_commit="42cf0c3dc26d6e0b2a32ef5a00e7ca4ae77034c7"
_swayconfver="v1.1.0"
url="https://postmarketos.org"
@@ -59,7 +59,7 @@ subpackages="
install="
$pkgname-sway-hrdl.post-install
$pkgname-sway-hrdl.post-deinstall
$pkgname-nonfree-firmware.pre-upgrade
$pkgname-nonfree-firmware.post-upgrade
$pkgname-nonfree-firmware.pre-install
$pkgname-nonfree-firmware-openrc.post-install
$pkgname-openrc.post-install
@@ -1 +1 @@
device-pine64-pinenote-nonfree-firmware.pre-upgrade
device-pine64-pinenote-nonfree-firmware.post-upgrade
+30 -25
View File
@@ -3,13 +3,11 @@
# Contributor: Clayton Craft <clayton@craftyguy.net>
maintainer="Alistair Francis <alistair@alistair23.me>"
pkgname=linux-purism-librem5
pkgver=6.6.118
pkgrel=2
pkgver=6.6.139
pkgrel=0
# NOTE: Don't forget to rebase the config! See prepare() for instructions.
_purismrel=1
_pureosrel=cri1
# <kernel ver> + <purism kernel release> + <PureOS release>
_purismver=${pkgver}pureos${_purismrel}_$_pureosrel
_purismver=${pkgver}pureos$_purismrel
pkgdesc="Purism Librem 5 phone kernel fork"
arch="aarch64"
_carch="arm64"
@@ -22,21 +20,21 @@ options="!strip !check !tracedeps
pmb:kconfigcheck-librem5
"
makedepends="
bash
bison
devicepkg-dev
clang
findutils
flex
installkernel
linux-headers
lld
llvm
openssl-dev
perl
rsync
xz
postmarketos-installkernel
python3
zstd
"
install="$pkgname.post-upgrade"
# Source
_repository="linux"
# kconfig generated with: ARCH=arm64 make defconfig KBUILD_DEFCONFIG=librem5_defconfig
_config="config-$_flavor.$arch"
@@ -44,13 +42,13 @@ _config="config-$_flavor.$arch"
source="
$pkgname-$_purismver.tar.gz::https://source.puri.sm/Librem5/linux/-/archive/pureos/$_purismver/linux-pureos-$_purismver.tar.gz
$_config
treewide-remove-unnecessary-linux-version.h-inclusion.patch
"
builddir="$srcdir/$_repository-pureos-$_purismver"
builddir="$srcdir/linux-pureos-$_purismver"
prepare() {
default_prepare
REPLACE_GCCH=0 \
. downstreamkernel_prepare
cp "$srcdir/config-$_flavor.$arch" .config
####### Rebase config
# The kernel config needs to be periodically rebased to enable new
@@ -62,7 +60,7 @@ prepare() {
# This can be uncommented to help generate the defconfig using "pmbootstrap
# build linux-purism-librem5". The build will fail (exit 1) to let you grab
# the config before it starts building the kernel:
# make ARCH="$_carch" CC="${CC:-gcc}" \
# make ARCH="$_carch" LLVM=1 \
# defconfig KBUILD_DEFCONFIG=librem5_defconfig
# exit 1
#
@@ -75,22 +73,29 @@ prepare() {
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" \
LOCALVERSION=".$_purismrel"
make ARCH="$_carch" LLVM=1 \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor"
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"
make modules_install dtbs_install \
make dtbs_install install modules_install \
ARCH="$_carch" \
LLVM=1 \
INSTALL_PATH="$pkgdir"/boot \
INSTALL_MOD_PATH="$pkgdir"/usr \
INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"
INSTALL_MOD_STRIP=1 \
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
rm -f "$pkgdir"/usr/lib/modules/*/build "$pkgdir"/usr/lib/modules/*/source
install -D "$builddir"/include/config/kernel.release \
"$pkgdir"/usr/share/kernel/"$_flavor"/kernel.release
}
sha512sums="
f1d75865ff15793e6e70414a356209bd27fdb4c084d773698589f2e376ddcf037f2ac60a131a72ad3986b51b88c0c738deb65169bb30fd472f25cb06327ed1a8 linux-purism-librem5-6.6.118pureos1_cri1.tar.gz
323e1d4760857c62efa67362b36b098f7fd2d6f49970236965cfab4bb8ae43ddbafa76f2fcd0deb8faa53e4b87bf202ab3507dc10f2364234af4c10453768337 config-purism-librem5.aarch64
d51709ee85ac8ebe271fc57ba60e2ab5f90225bd045b813a281553b0f76ae4c227317201fbb509e59af9813ea3e49947e83ac7d82b97cede15212cadd90fc372 linux-purism-librem5-6.6.139pureos1.tar.gz
92837e9d725d2f6e6aebfc10e79007dc671cbc57ddb10c9af91b0b666131275f0897e355c77705f2b57c4c87472f4f8264d32060765582878fde04891c49f997 config-purism-librem5.aarch64
76c1e07b5479fe7be0d1e4a74a8f4a2cd8fc25fbeb3a4efcaf8300e27817a320c0c1340ea6c00ad1c3dd86cc2cb192280de8a91360bad80665115701ba11632d treewide-remove-unnecessary-linux-version.h-inclusion.patch
"
@@ -100,7 +100,7 @@ CONFIG_BPF_JIT=y
CONFIG_BPF_JIT_DEFAULT_ON=y
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
# CONFIG_BPF_LSM is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
@@ -681,7 +681,7 @@ CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_SHADOW_CALL_STACK=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
@@ -764,8 +764,8 @@ CONFIG_ASM_MODVERSIONS=y
# CONFIG_MODULE_COMPRESS_NONE is not set
# CONFIG_MODULE_COMPRESS_GZIP is not set
CONFIG_MODULE_COMPRESS_XZ=y
# CONFIG_MODULE_COMPRESS_ZSTD is not set
# CONFIG_MODULE_DECOMPRESS is not set
CONFIG_MODULE_COMPRESS_ZSTD=y
CONFIG_MODULE_DECOMPRESS=y
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
# CONFIG_TRIM_UNUSED_KSYMS is not set
@@ -2041,7 +2041,7 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
CONFIG_ZRAM=m
CONFIG_ZRAM=y
CONFIG_ZRAM_DEF_COMP_LZORLE=y
# CONFIG_ZRAM_DEF_COMP_ZSTD is not set
# CONFIG_ZRAM_DEF_COMP_LZ4 is not set
@@ -2061,7 +2061,7 @@ CONFIG_BLK_DEV_NBD=m
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_VIRTIO_BLK is not set
# CONFIG_BLK_DEV_RBD is not set
# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV_UBLK=m
#
# NVME Support
@@ -2558,7 +2558,7 @@ CONFIG_USB_NET_SMSC95XX=m
# CONFIG_USB_NET_NET1080 is not set
# CONFIG_USB_NET_PLUSB is not set
CONFIG_USB_NET_MCS7830=m
# CONFIG_USB_NET_RNDIS_HOST is not set
CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
CONFIG_USB_NET_CDC_SUBSET=m
CONFIG_USB_ALI_M5632=y
@@ -2680,7 +2680,7 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_EVDEV=m
# CONFIG_INPUT_EVBUG is not set
#
@@ -2861,7 +2861,7 @@ CONFIG_INPUT_GPIO_VIBRA=m
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_CM109 is not set
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT_UINPUT=y
# CONFIG_INPUT_PCF8574 is not set
CONFIG_INPUT_PWM_BEEPER=m
CONFIG_INPUT_PWM_VIBRA=m
@@ -2986,7 +2986,7 @@ CONFIG_SERIAL_MCTRL_GPIO=y
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_N_GSM is not set
# CONFIG_NOZOMI is not set
CONFIG_NULL_TTY=y
CONFIG_NULL_TTY=m
# CONFIG_HVC_DCC is not set
# CONFIG_RPMSG_TTY is not set
CONFIG_SERIAL_DEV_BUS=y
@@ -4548,7 +4548,7 @@ CONFIG_DRM_I2C_NXP_TDA9950=m
# CONFIG_DRM_VGEM is not set
# CONFIG_DRM_VKMS is not set
# CONFIG_DRM_VMWGFX is not set
# CONFIG_DRM_UDL is not set
CONFIG_DRM_UDL=m
# CONFIG_DRM_AST is not set
# CONFIG_DRM_MGAG200 is not set
# CONFIG_DRM_QXL is not set
@@ -4959,7 +4959,7 @@ CONFIG_SND_HDA_PREALLOC_SIZE=64
CONFIG_SND_SPI=y
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
CONFIG_SND_USB_AUDIO_MIDI_V2=y
CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
# CONFIG_SND_USB_UA101 is not set
# CONFIG_SND_USB_CAIAQ is not set
@@ -5235,7 +5235,7 @@ CONFIG_HID=y
CONFIG_HID_BATTERY_STRENGTH=y
CONFIG_HIDRAW=y
CONFIG_UHID=m
CONFIG_HID_GENERIC=y
CONFIG_HID_GENERIC=m
#
# Special HID drivers
@@ -5617,7 +5617,7 @@ CONFIG_USB_ULPI=y
CONFIG_USB_ULPI_VIEWPORT=y
# end of USB Physical Layer drivers
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET=y
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGET_DEBUG_FILES is not set
# CONFIG_USB_GADGET_DEBUG_FS is not set
@@ -5884,7 +5884,19 @@ CONFIG_LEDS_TRIGGER_TTY=m
#
# Simple LED drivers
#
# CONFIG_ACCESSIBILITY is not set
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
# CONFIG_INFINIBAND is not set
CONFIG_EDAC_SUPPORT=y
# CONFIG_EDAC is not set
@@ -7066,7 +7078,7 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
CONFIG_OCFS2_FS_STATS=y
CONFIG_OCFS2_DEBUG_MASKLOG=y
# CONFIG_OCFS2_DEBUG_FS is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS=y
CONFIG_BTRFS_FS_POSIX_ACL=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
@@ -7121,7 +7133,7 @@ CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
#
CONFIG_NETFS_SUPPORT=m
# CONFIG_NETFS_STATS is not set
CONFIG_FSCACHE=m
CONFIG_FSCACHE=y
# CONFIG_FSCACHE_STATS is not set
# CONFIG_FSCACHE_DEBUG is not set
CONFIG_CACHEFILES=m
@@ -7200,7 +7212,7 @@ CONFIG_JFFS2_FS_WRITEBUFFER=y
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=y
CONFIG_SQUASHFS=m
CONFIG_SQUASHFS_FILE_CACHE=y
# CONFIG_SQUASHFS_FILE_DIRECT is not set
CONFIG_SQUASHFS_DECOMP_SINGLE=y
@@ -7247,15 +7259,16 @@ CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
CONFIG_EROFS_FS_ZIP=y
# CONFIG_EROFS_FS_ZIP_LZMA is not set
# CONFIG_EROFS_FS_ZIP_DEFLATE is not set
CONFIG_EROFS_FS_ZIP_LZMA=y
CONFIG_EROFS_FS_ZIP_DEFLATE=y
# CONFIG_EROFS_FS_PCPU_KTHREAD is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_FS=m
CONFIG_NFS_FSCACHE=y
# CONFIG_NFS_V2 is not set
CONFIG_NFS_V3=y
CONFIG_NFS_V3=m
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
CONFIG_NFS_V4=m
CONFIG_NFS_SWAP=y
CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y
@@ -7271,7 +7284,13 @@ CONFIG_NFS_USE_KERNEL_DNS=y
CONFIG_NFS_DEBUG=y
CONFIG_NFS_DISABLE_UDP_SUPPORT=y
CONFIG_NFS_V4_2_READ_PLUS=y
# CONFIG_NFSD is not set
CONFIG_NFSD=m
CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_PNFS=y
CONFIG_NFSD_BLOCKLAYOUT=y
CONFIG_NFSD_SCSILAYOUT=y
CONFIG_NFSD_V4_2_INTER_SSC=y
CONFIG_GRACE_PERIOD=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
@@ -7280,7 +7299,10 @@ CONFIG_NFS_V4_2_SSC_HELPER=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_BACKCHANNEL=y
CONFIG_SUNRPC_SWAP=y
# CONFIG_RPCSEC_GSS_KRB5 is not set
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y
CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2=y
CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_CAMELLIA=y
CONFIG_SUNRPC_DEBUG=y
CONFIG_CEPH_FS=m
# CONFIG_CEPH_FSCACHE is not set
@@ -7334,7 +7356,7 @@ CONFIG_NLS_CODEPAGE_874=m
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ASCII=m
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
@@ -7400,7 +7422,7 @@ CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
CONFIG_SECURITY_APPARMOR_EXPORT_BINARY=y
CONFIG_SECURITY_APPARMOR_PARANOID_LOAD=y
# CONFIG_SECURITY_LOADPIN is not set
# CONFIG_SECURITY_YAMA is not set
CONFIG_SECURITY_YAMA=y
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
@@ -7414,6 +7436,8 @@ CONFIG_LSM="landlock,lockdown,yama,loadpin,safesetid,integrity,bpf"
# Kernel hardening options
#
CONFIG_CFI_CLANG=y
#
# Memory initialization
#
@@ -7500,16 +7524,16 @@ CONFIG_CRYPTO_ECDH=y
# Block ciphers
#
CONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES_TI=m
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_BLOWFISH_COMMON=y
CONFIG_CRYPTO_CAMELLIA=y
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAST_COMMON=y
CONFIG_CRYPTO_CAST5=y
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_DES=m
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_SEED is not set
@@ -7558,10 +7582,10 @@ CONFIG_CRYPTO_ESSIV=y
# Hashes, digests, and MACs
#
CONFIG_CRYPTO_BLAKE2B=m
CONFIG_CRYPTO_CMAC=y
CONFIG_CRYPTO_CMAC=m
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_MICHAEL_MIC is not set
CONFIG_CRYPTO_POLY1305=y
@@ -7596,7 +7620,7 @@ CONFIG_CRYPTO_LZO=y
# CONFIG_CRYPTO_842 is not set
CONFIG_CRYPTO_LZ4=m
CONFIG_CRYPTO_LZ4HC=m
CONFIG_CRYPTO_ZSTD=m
CONFIG_CRYPTO_ZSTD=y
# end of Compression
#
@@ -7644,7 +7668,7 @@ CONFIG_CRYPTO_SM3_ARM64_CE=m
# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
# CONFIG_CRYPTO_AES_ARM64 is not set
CONFIG_CRYPTO_AES_ARM64_CE=y
CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
CONFIG_CRYPTO_AES_ARM64_BS=m
CONFIG_CRYPTO_SM4_ARM64_CE=m
@@ -7693,7 +7717,7 @@ CONFIG_CRYPTO_DEV_FSL_CAAM_PRNG_API=y
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_PKCS8_PRIVATE_KEY_PARSER=y
CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
CONFIG_PKCS7_MESSAGE_PARSER=y
# CONFIG_PKCS7_TEST_KEY is not set
# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
@@ -0,0 +1,77 @@
From e332a5aba83500e8d422c90d2a84d8a5f888673e Mon Sep 17 00:00:00 2001
From: Masahiro Yamada <masahiroy@kernel.org>
Date: Thu, 8 Aug 2024 02:47:28 +0900
Subject: [PATCH] treewide: remove unnecessary <linux/version.h> inclusion
These files do not use any macros defined in <linux/version.h>.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
---
drivers/accessibility/speakup/genmap.c | 1 -
drivers/accessibility/speakup/makemapdata.c | 1 -
drivers/staging/media/atomisp/include/linux/atomisp.h | 1 -
samples/trace_events/trace_custom_sched.c | 1 -
sound/soc/codecs/cs42l42.c | 1 -
5 files changed, 5 deletions(-)
diff --git a/drivers/accessibility/speakup/genmap.c b/drivers/accessibility/speakup/genmap.c
index 0125000e00d9ab..0882bab10fb87a 100644
--- a/drivers/accessibility/speakup/genmap.c
+++ b/drivers/accessibility/speakup/genmap.c
@@ -10,7 +10,6 @@
#include <stdio.h>
#include <libgen.h>
#include <string.h>
-#include <linux/version.h>
#include <ctype.h>
#include "utils.h"
diff --git a/drivers/accessibility/speakup/makemapdata.c b/drivers/accessibility/speakup/makemapdata.c
index d7d41bb9b05fbb..55e4ef8a93dc99 100644
--- a/drivers/accessibility/speakup/makemapdata.c
+++ b/drivers/accessibility/speakup/makemapdata.c
@@ -10,7 +10,6 @@
#include <stdio.h>
#include <libgen.h>
#include <string.h>
-#include <linux/version.h>
#include <ctype.h>
#include "utils.h"
diff --git a/drivers/staging/media/atomisp/include/linux/atomisp.h b/drivers/staging/media/atomisp/include/linux/atomisp.h
index 16c9da172c0317..fefbe3cd08f33d 100644
--- a/drivers/staging/media/atomisp/include/linux/atomisp.h
+++ b/drivers/staging/media/atomisp/include/linux/atomisp.h
@@ -20,7 +20,6 @@
#define _ATOM_ISP_H
#include <linux/types.h>
-#include <linux/version.h>
/* struct media_device_info.hw_revision */
#define ATOMISP_HW_REVISION_MASK 0x0000ff00
diff --git a/samples/trace_events/trace_custom_sched.c b/samples/trace_events/trace_custom_sched.c
index b99d9ab7db858f..dd409b704b35b6 100644
--- a/samples/trace_events/trace_custom_sched.c
+++ b/samples/trace_events/trace_custom_sched.c
@@ -8,7 +8,6 @@
#define pr_fmt(fmt) fmt
#include <linux/trace_events.h>
-#include <linux/version.h>
#include <linux/module.h>
#include <linux/sched.h>
diff --git a/sound/soc/codecs/cs42l42.c b/sound/soc/codecs/cs42l42.c
index 60d366e53526ff..6400ac875e6f6c 100644
--- a/sound/soc/codecs/cs42l42.c
+++ b/sound/soc/codecs/cs42l42.c
@@ -11,7 +11,6 @@
#include <linux/module.h>
#include <linux/moduleparam.h>
-#include <linux/version.h>
#include <linux/types.h>
#include <linux/init.h>
#include <linux/delay.h>
@@ -1,17 +1,16 @@
maintainer="Neil Armstrong <neil.armstrong@linaro.org>"
pkgname=alsa-ucm-conf-ayaneo-pocket-s2
pkgver=1.2.6_git20260121
pkgver=1.2.16_git20260612
pkgrel=0
pkgdesc="ALSA UCM configuration for Ayaneo Pocket S2"
url="https://github.com/sunflower2333/alsa-ucm-conf"
url="https://github.com/superna9999/alsa-ucm-conf"
arch="aarch64"
license="BSD-3-Clause"
provides="alsa-ucm-conf"
provider_priority=1
_commit="2dbd6af885107dd4693e621772157a9e99f4c04a"
_commit="5e1cfc6810013182570d6ac8386a58d2fde83b0c"
source="
$pkgname-$_commit.tar.gz::https://github.com/sunflower2333/alsa-ucm-conf/archive/$_commit.tar.gz
ucm2-qcom-sm8650-aps-remove-capture.patch
$pkgname-$_commit.tar.gz::https://github.com/superna9999/alsa-ucm-conf/archive/$_commit.tar.gz
"
builddir="$srcdir/alsa-ucm-conf-$_commit"
options="!check"
@@ -23,6 +22,5 @@ package() {
}
sha512sums="
cf45ed130d1148761b2b7646cb4e073e724598ec33d3ee75b47598aaa17800ad3f7cf38dc5ff76a825e64efdddd9a3b7631f571a0eb326e6c650d9d6220571d0 alsa-ucm-conf-ayaneo-pocket-s2-2dbd6af885107dd4693e621772157a9e99f4c04a.tar.gz
d240ac698f3f8b46e2ca5b624a9527ae600f3844db20d973a463eb6b1f42a3961398097591aa6327c26fd391a151d9ca0b58ebfd571730d24d0022a876d695a2 ucm2-qcom-sm8650-aps-remove-capture.patch
b36484420c25f851d87e1f43ed8ee43736c9881c8c66a0570dbf7ed35979b7f579d32be63adfb345a598851d51858b016cff0e969e2466624bbee2627e0077ca alsa-ucm-conf-ayaneo-pocket-s2-5e1cfc6810013182570d6ac8386a58d2fde83b0c.tar.gz
"
@@ -1,47 +0,0 @@
diff --git a/ucm2/Qualcomm/sm8650/APS2/HiFi.conf b/ucm2/Qualcomm/sm8650/APS2/HiFi.conf
index 5927698..aa932f8 100644
--- a/ucm2/Qualcomm/sm8650/APS2/HiFi.conf
+++ b/ucm2/Qualcomm/sm8650/APS2/HiFi.conf
@@ -54,42 +54,6 @@ SectionDevice."Headphones" {
}
}
-SectionDevice."Headset" {
- Comment "Headset microphone"
-
- ConflictingDevice [
- "Mic"
- ]
-
- Include.wcdmice.File "/codecs/wcd939x/HeadphoneMicEnableSeq.conf"
- Include.wcdmicd.File "/codecs/wcd939x/HeadphoneMicDisableSeq.conf"
- Include.txmhpe.File "/codecs/qcom-lpass/tx-macro/SoundwireMic1EnableSeq.conf"
- Include.txmhpd.File "/codecs/qcom-lpass/tx-macro/SoundwireMicDisableSeq.conf"
-
- Value {
- CaptureChannels 1
- CapturePriority 200
- CapturePCM "hw:${CardId},2"
- CaptureMixerElem "ADC2"
- JackControl "Headset Jack"
- }
-}
-
-SectionDevice."Mic" {
- Comment "Bottom Microphone"
-
- Include.txmhpe.File "/codecs/qcom-lpass/tx-macro/SoundwireMic8EnableSeq.conf"
- Include.txmhpd.File "/codecs/qcom-lpass/tx-macro/SoundwireMicDisableSeq.conf"
-
- Value {
- CaptureChannels 1
- CapturePriority 100
- CapturePCM "hw:${CardId},3"
- CaptureMixerElem "SMIC8"
- }
-}
-
-
SectionDevice."HDMI0" {
Comment "DisplayPort 0 playback"
+4 -3
View File
@@ -3,13 +3,14 @@
maintainer="Aster Boese <asterboese@mailbox.org>"
pkgname=device-apple-idevice
pkgdesc="Apple Generic Apple iDevice"
pkgver=7
pkgver=9
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
firmware-apple-idevice
m1n1-apple-idevice
postmarketos-base
"
@@ -17,11 +18,11 @@ makedepends="devicepkg-dev"
subpackages="
$pkgname-kernel-4k:kernel_4k
$pkgname-kernel-16k:kernel_16k
"
"
source="
deviceinfo
modules-initfs
"
"
build() {
devicepkg_build $startdir $pkgname
@@ -1,33 +0,0 @@
# Reference: <https://postmarketos.org/devicepkg>
maintainer="EDKPiepaint <2163971449v@gmail.com>"
pkgname=device-apple-tonga
pkgdesc="Apple Macbook Air M1"
pkgver=6
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
linux-asahi
postmarketos-base
systemd-boot
asahi-audio
asahi-fwextract
asahi-scripts
alsa-ucm-conf-asahi
"
makedepends="devicepkg-dev systemd-boot"
source="deviceinfo kernel-cmdline.conf"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
}
sha512sums="
01413f95bfa4f92406ce948ea6cb14b11e3f304b0fe32fbe252d673e43f62c66f115188dc11ed45df9d8f450c30137bb95b2babd4c23a97a9759d7dcc529c67c deviceinfo
0d7bfa506942e551b0bbbefd465ab8f19b241db93de393efbd788ade6113da37e96e4141633356207a2d9645d668b2aa7cdaa9e78d27723208f4205c8af4bbba kernel-cmdline.conf
"
@@ -1,16 +0,0 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell
# scripts.
deviceinfo_format_version="0"
deviceinfo_name="Apple Macbook Air M1"
deviceinfo_manufacturer="Apple"
deviceinfo_codename="apple-tonga"
deviceinfo_year="2020"
deviceinfo_arch="aarch64"
# Device related
deviceinfo_chassis="laptop"
deviceinfo_drm="true"
# Bootloader related
deviceinfo_boot_filesystem="fat32"
@@ -1,2 +0,0 @@
loglevel=7
pmos.nosplash
+27 -3
View File
@@ -2,14 +2,13 @@
maintainer="binarycraft007 <keep.it.sns@gmail.com>"
pkgname=device-asus-s5507q
pkgdesc="ASUS Vivobook S 15"
pkgver=6
pkgrel=2
pkgver=7
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
linux-postmarketos-qcom-laptop
postmarketos-base
systemd-boot
firmware-asus-s5507q-dpu
@@ -26,6 +25,12 @@ _pmb_recommends="
firmware-asus-s5507q-common
"
subpackages="
$pkgname-kernel-stable:kernel_stable
$pkgname-kernel-lts:kernel_lts
$pkgname-kernel-mainline:kernel_mainline
"
build() {
devicepkg_build $startdir $pkgname
}
@@ -34,6 +39,25 @@ package() {
devicepkg_package $startdir $pkgname
}
kernel_stable() {
pkgdesc="Stable kernel (recommended, best balance between stability and features)"
depends="linux-postmarketos-stable"
replaces="linux-postmarketos-qcom-laptop"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_lts() {
pkgdesc="Long-term maintenance kernel (most stability, not all security fixes & new features)"
depends="linux-postmarketos-lts"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_mainline() {
pkgdesc="Upstream development kernel (regular breakage, latest features)"
depends="linux-postmarketos-mainline"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
sha512sums="
a1cab3c635b322dfa9b561a07770dd1c879d5ae2864a572e2e19e4cbed72b712a370d5e18a4f9675aaf473e49246e6faee697c514c01567828c4b8cb7fc606eb deviceinfo
04cc87ed6b0041ede7edb2693ee4dd58d6ac8f1b036a0b37e1a86cce57b66e35d9f400a3ea75d75278b028132535033915f3a2fff919866e85336c5f92a68ffe kernel-cmdline.conf
@@ -2,7 +2,7 @@
maintainer="Neil Armstrong <neil.armstrong@linaro.org>"
pkgname=device-ayaneo-pocket-s2
pkgdesc="Ayaneo Pocket S2"
pkgver=4
pkgver=5
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -47,6 +47,6 @@ package() {
sha512sums="
012b1b6a9fcdfb6043b6f6992606a59fb347a5dde47c61f47479dccba24e13a88b0e03a64d79786d1152786c593874988deaa487fa7ec1634c4a7a4bcac20c34 deviceinfo
6c6a1393fd91dbb565e5b09aacf5f18a0911de19074f25548174a2d1a6db6f52f27ea556bfb5f4731085c345c42047fddbacc2a77ffe288728ff96d4c7a2cbed kernel-cmdline.conf
5c219e5532705402a2cff81ae792ee5d74751bccfe0038d5ea2d6701cc07df860808f7879ba93a80241bfbcb2a2527587b1c1d770602dd682c15f7d5800d03a3 firmware.files
d81fa838f41002c05d7db40104f3c9959be48009a08e479cbe57eca9a3dc7ab3328bfa2257a2c59cee1208b79f3d3b98d6caf9b0c7312d4a1746ad1f5660f168 modules-initfs
55abca53ab338921f578bb52dde30fb0c3518f0cb772aac8a23eab4900ee05f0f4209aecd9b3d79c79ab4d45270d068c0d2e01881c57bd6cf0c98930956be7f2 firmware.files
1aa76a0ef8ee0d3a0f0fe819e02fbbba9bc7a990191eaad630700aacc5c44e27d123c016c5b978e5ece08de69f1fea268b5612716feb0b95712f7f8dd015d8be modules-initfs
"
@@ -23,7 +23,9 @@
/lib/firmware/qcom/sm8650/ayaneo/ps2/cdsp.mbn.zst
/lib/firmware/qcom/sm8650/ayaneo/ps2/cdsp_dtb.mbn.zst
/lib/firmware/qcom/sm8650/ayaneo/ps2/cdspr.jsn.zst
/lib/firmware/qcom/sm8650/SM8650-APS2-tplg.bin.zst
# Audioreach Topology
/lib/firmware/qcom/ayaneo-ps2/SM8650-APS2-tplg.bin.zst
# Wi-Fi
/lib/firmware/ath12k/WCN7850/hw2.0/amss.bin.zst
@@ -37,7 +37,7 @@ nb7vpq904m
nvmem_qcom-spmi-sdam
nvmem-reboot-mode
ocmem
panel-wt0600-2k
panel-renesas-r63419
pdr_interface
phy-qcom-eusb2-repeater
phy-qcom-qmp-combo
@@ -3,7 +3,7 @@
maintainer="Casey Connolly <kcxt@postmarketos.org>"
pkgname=device-postmarketos-trailblazer
pkgdesc="postmarketOS Trailblazer generic ARM64"
pkgver=20
pkgver=21
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -39,7 +39,6 @@ subpackages="
$pkgname-kernel-mainline:kernel_mainline
$pkgname-kernel-lts:kernel_lts
$pkgname-kernel-stable:kernel_stable
$pkgname-kernel-postmarketos-qcom-laptop:kernel_postmarketos_qcom_laptop
$pkgname-kernel-postmarketos-amlogic:kernel_postmarketos_amlogic
"
source="
@@ -82,12 +81,6 @@ kernel_stable() {
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_postmarketos_qcom_laptop() {
pkgdesc="Mainline kernel with additional patches for Qualcomm Snapdragon-based laptops (linux-postmarketos-qcom-laptop)"
depends="linux-postmarketos-qcom-laptop"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_postmarketos_amlogic() {
pkgdesc="Mainline kernel with additional patches for Amlogic AArch64-based devices (linux-postmarketos-amlogic)"
depends="linux-postmarketos-amlogic"
@@ -0,0 +1,26 @@
# Co-Maintainer: Nick Chan <towinchenmi@gmail.com>
maintainer="Aster Boese <asterboese@mailbox.org>"
pkgname=firmware-apple-idevice
pkgver=0_git20260612
pkgrel=0
_commit="1241d49aab85ca2320bf58655b9426a021214ed0"
pkgdesc="Firmware for Apple iDevices"
url="https://github.com/Fruit-Firmware/Fruit-Firmware"
arch="aarch64"
license="proprietary"
source="https://github.com/Fruit-Firmware/Fruit-Firmware/archive/$_commit.tar.gz"
options="!archcheck !check !spdx !strip !tracedeps pmb:cross-native"
builddir="$srcdir/Fruit-Firmware-$_commit"
package() {
mkdir -p "$pkgdir"/usr/lib/firmware/apple
for i in "$builddir"/firmware/apple/*; do
install -Dm644 "$i" \
"$pkgdir"/usr/lib/firmware/apple/"$(basename "$i")"
done
}
sha512sums="
93d9d641884b609757c4ef1fc079eb513fad6d0eb65e2bd096003c556185569e22eaf643afaeb0edcbf803725498a892ff8c01c1f37437e1e0b87c03618982f7 1241d49aab85ca2320bf58655b9426a021214ed0.tar.gz
"
@@ -1,6 +1,6 @@
maintainer="Neil Armstrong <neil.armstrong@linaro.org>"
pkgname=firmware-ayaneo-pocket
pkgver=20251207
pkgver=20260612
pkgrel=0
pkgdesc="Firmware for Ayaneo Pocket"
subpackages="
@@ -12,13 +12,13 @@ subpackages="
$pkgname-s2-tplg:s2_tplg
$pkgname-renesas-usb:renesas_usb
"
url="https://github.com/sunflower2333/linux-firmware-ayaneo"
url="https://github.com/superna9999/linux-firmware-ayaneo"
arch="aarch64"
license="proprietary"
makedepends="zstd"
options="!check !strip !archcheck !tracedeps pmb:cross-native"
_commit="17fd5306f1dd33356f0bf85e2781f5c31e98ba0e"
source="https://github.com/sunflower2333/linux-firmware-ayaneo/archive/$_commit/linux-firmware-ayaneo-$_commit.tar.gz"
_commit="7b0d4a031ee9a20f48a7749af0ea61c781bd9af4"
source="https://github.com/superna9999/linux-firmware-ayaneo/archive/$_commit/linux-firmware-ayaneo-$_commit.tar.gz"
builddir="$srcdir/linux-firmware-ayaneo-$_commit"
package() {
@@ -51,8 +51,8 @@ s2_adsp() {
s2_tplg() {
pkgdesc="Ayaneo Pocket S2 Audio Topology"
install -Dm644 "$builddir"/qcom/sm8650/SM8650-APS2-tplg.bin.zst -t \
"$subpkgdir/lib/firmware/qcom/sm8650/"
install -Dm644 "$builddir"/qcom/ayaneo-ps2/SM8650-APS2-tplg.bin.zst -t \
"$subpkgdir/lib/firmware/qcom/ayaneo-ps2/"
}
s2_cdsp() {
@@ -77,5 +77,5 @@ s2_ath12k() {
}
sha512sums="
0fa6040320ea2493dd31b66b75c247b44030755f7f74df740537b237d77c73f81c4bb01cbd7c9749bcbb8e3a9c37e827b14e64b6ab9da97b3d5b806124657ac2 linux-firmware-ayaneo-17fd5306f1dd33356f0bf85e2781f5c31e98ba0e.tar.gz
041bb687a951ec0745c3201e6b19ebfb30dd9fe34882fd6c2d3f2c713de890784fc433805502c3ec15980860e640ce86aed75a13c55d451d230d43d8229b002b linux-firmware-ayaneo-7b0d4a031ee9a20f48a7749af0ea61c781bd9af4.tar.gz
"
@@ -1,7 +1,7 @@
# Kernel config based on: arch/arm64/configs/defconfig
maintainer="Neil Armstrong <neil.armstrong@linaro.org>"
pkgname=linux-ayaneo-pocket-s2
pkgver=7.0_git20260421
pkgver=7.0_git20260612
pkgrel=0
pkgdesc="Ayaneo Pocket S2 kernel fork"
arch="aarch64"
@@ -43,7 +43,7 @@ makedepends="
# Source
_url="https://gitlab.com/superna9999/"
_repository="linux"
_commit="954b1b997752f0ceaf838171c9775dfa72b5553a"
_commit="d42f74bb3f3372e95cd0525177e2cb83ebb23b17"
_defconfig="defconfig"
_config="config-$_flavor.$arch"
source="
@@ -73,7 +73,7 @@ package() {
make LLVM=1 zinstall modules_install dtbs_install \
ARCH="$_carch" \
INSTALL_PATH="$pkgdir"/boot/ \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_MOD_PATH="$pkgdir"/usr \
INSTALL_MOD_STRIP=1 \
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
@@ -84,7 +84,7 @@ package() {
}
sha512sums="
a8b4267603c0036dce2f023b2fe52791699f547981d398a113ba020aeeb1390ed0643881fa19b50d4585f89b76f33759360a96fbeeb70561b03423db6ee71893 linux-ayaneo-pocket-s2-954b1b997752f0ceaf838171c9775dfa72b5553a.tar.gz
f50dc5bcbc511e87d93024fa4430b87cdaaf3314368bcf8a7c24b7461e912bb6a5fb51feff7e5e6b98aa77d533e3bebb79ef276cec9e2eab6e50db657ee2cd83 linux-ayaneo-pocket-s2-d42f74bb3f3372e95cd0525177e2cb83ebb23b17.tar.gz
f7712cb52ab2abae02deb3f90d0bdba83bcdf1af9b5f4fdb97963d729d1a0161301ecb3b5948dcd7a7f182c14e52d3863ec48f22a00276008d3bb0615d29ba68 misc.config
80e0044ed9ab9331adc667001ce1677113dfc299b9cdd366d221e967e77f7f11aa2a90ae90f5823d54126c46095aaa5a32c93026840605bc2492fce863f70e7d config-ayaneo-pocket-s2.aarch64
07089f3297c5206ae1a1a64c5c8438d1d82ca29c4c4651211be74e9786a10956a45bc13ad9bb666a9beb5ca7550948e71bdaa90598bfd4282b2fe57ad9277e1f config-ayaneo-pocket-s2.aarch64
"
@@ -11,7 +11,7 @@ CONFIG_AS_VERSION=220103
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=220103
CONFIG_RUSTC_VERSION=109500
CONFIG_RUSTC_VERSION=109600
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=220103
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
@@ -4991,11 +4991,11 @@ CONFIG_REGULATOR_ROHM=y
# CONFIG_REGULATOR_S2MPA01 is not set
CONFIG_REGULATOR_S2MPS11=y
# CONFIG_REGULATOR_S5M8767 is not set
CONFIG_REGULATOR_SGM3804=y
# CONFIG_REGULATOR_SLG51000 is not set
# CONFIG_REGULATOR_STM32_BOOSTER is not set
# CONFIG_REGULATOR_STM32_VREFBUF is not set
# CONFIG_REGULATOR_STM32_PWR is not set
CONFIG_REGULATOR_SGM3804=y
# CONFIG_REGULATOR_SY8106A is not set
# CONFIG_REGULATOR_SY8824X is not set
# CONFIG_REGULATOR_SY8827N is not set
@@ -5771,6 +5771,7 @@ CONFIG_DRM_PANEL_RAYDIUM_RM67191=m
CONFIG_DRM_PANEL_RAYDIUM_RM692E5=m
# CONFIG_DRM_PANEL_RAYDIUM_RM69380 is not set
# CONFIG_DRM_PANEL_RENESAS_R61307 is not set
CONFIG_DRM_PANEL_RENESAS_R63419=m
# CONFIG_DRM_PANEL_RENESAS_R69328 is not set
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
# CONFIG_DRM_PANEL_SAMSUNG_AMS581VF01 is not set
@@ -5822,7 +5823,6 @@ CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m
# CONFIG_DRM_PANEL_VISIONOX_RM692E5 is not set
CONFIG_DRM_PANEL_VISIONOX_VTDR6130=m
# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
CONFIG_DRM_PANEL_AYANEO_WT0600_2K=m
# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
# end of Display Panels
@@ -7339,7 +7339,26 @@ CONFIG_LEDS_TRIGGER_PATTERN=m
#
# Simatic LED drivers
#
# CONFIG_ACCESSIBILITY is not set
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
# CONFIG_SPEAKUP_SYNTH_DUMMY is not set
# end of Speakup console speech
# CONFIG_INFINIBAND is not set
CONFIG_EDAC_SUPPORT=y
CONFIG_EDAC=y
@@ -9239,7 +9258,7 @@ CONFIG_F2FS_IOSTAT=y
# CONFIG_F2FS_UNFAIR_RWSEM is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
# CONFIG_EXPORTFS_BLOCK_OPS is not set
CONFIG_EXPORTFS_BLOCK_OPS=y
CONFIG_FILE_LOCKING=y
# CONFIG_FS_ENCRYPTION is not set
# CONFIG_FS_VERITY is not set
@@ -9424,11 +9443,21 @@ CONFIG_NFS_DISABLE_UDP_SUPPORT=y
CONFIG_NFS_V4_2_READ_PLUS=y
CONFIG_NFSD=m
# CONFIG_NFSD_V2 is not set
# CONFIG_NFSD_V3_ACL is not set
# CONFIG_NFSD_V4 is not set
CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_PNFS=y
CONFIG_NFSD_BLOCKLAYOUT=y
CONFIG_NFSD_SCSILAYOUT=y
# CONFIG_NFSD_FLEXFILELAYOUT is not set
CONFIG_NFSD_V4_2_INTER_SSC=y
# CONFIG_NFSD_V4_SECURITY_LABEL is not set
# CONFIG_NFSD_LEGACY_CLIENT_TRACKING is not set
# CONFIG_NFSD_V4_DELEG_TIMESTAMPS is not set
# CONFIG_NFSD_V4_POSIX_ACLS is not set
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_NFS_COMMON=y
# CONFIG_NFS_LOCALIO is not set
CONFIG_NFS_V4_2_SSC_HELPER=y
@@ -9542,7 +9571,7 @@ CONFIG_SECURITYFS=y
# CONFIG_SECURITY_TOMOYO is not set
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_LOADPIN is not set
# CONFIG_SECURITY_YAMA is not set
CONFIG_SECURITY_YAMA=y
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
+2 -2
View File
@@ -1,7 +1,7 @@
# Kernel config based on: arch/arm64/configs/defconfig
maintainer="Casey Connolly <kcxt@postmarketos.org>"
pkgname=linux-next
pkgver=7.1_git20260612
pkgver=7.1_git20260619
pkgrel=0
_nextver="${pkgver#*_git}"
pkgdesc="Linux next kernel"
@@ -90,7 +90,7 @@ package() {
}
sha512sums="
dd322d5faf4d172fc8d81eed766539c05b8d1a9aebe418148ef3a9386ed71ad0e9c9b896a30a9daa23f50568a9b7910c282102a4acdd6dff145b7b6c87234d08 linux-next-next-20260612.tar.gz
d581f166ee76202b1b8755b420f3df881ab22a7dd4e7d557251058a988929bd4412077cbc75666510d12c65987ff1e7a130209242d9b2133161244d71525f386 linux-next-next-20260619.tar.gz
08ec500bd2f40c1c80e56ebd938d4e54af71972fdf00c4dfe8a911cf094e1c296766276010470bfa26c68093c90bcae01266acc5e59fa0ec4620d4becc2c53d4 devices.config
25c07558cc7dc82485957c82246bbf1eef4a4188f007546b27336fcd84507b387c8afc3d0feb2a2760e90ccde804ff7d7112be38831bba92d5a1988780a42cdd pmos.config
"
+11 -4
View File
@@ -3,7 +3,7 @@
# Co-Maintainer: Stefan Hansson <newbyte@postmarketos.org>
maintainer="Dang Huynh <dang.huynh@mainlining.org>"
pkgname=linux-pine64-pinetab2
pkgver=7.0.6
pkgver=7.0.12
_danctnix_kernel_rel=1
pkgrel=0
pkgdesc="Pine64 PineTab 2 mainline"
@@ -32,14 +32,20 @@ makedepends="
_tags="v$pkgver-danctnix$_danctnix_kernel_rel"
_config="config-$_flavor.$arch"
source="
$pkgname-$_tags.tar.gz::https://codeberg.org/DanctNIX/linux-pinetab2/archive/$_tags.tar.gz
linux-$pkgver.tar.xz::https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$pkgver.tar.xz
$_tags.patch.zst::https://codeberg.org/DanctNIX/linux-pinetab2/releases/download/$_tags/$_tags.patch.zst
$_config
"
builddir="$srcdir/linux-pinetab2"
builddir="$srcdir/linux-$pkgver"
_outdir="out"
prepare() {
default_prepare
# Decrunch the patch file and apply it to the tree
zstd -d "$(readlink $srcdir/$_tags.patch.zst)" -o "$srcdir/$_tags.patch"
patch -p1 -i "$srcdir/$_tags.patch"
cp "$srcdir/config-$_flavor.$CARCH" .config
}
@@ -66,6 +72,7 @@ package() {
}
sha512sums="
b5f0578bf9bc18ea70161bb39fcbbfcd5c92a0d4c58b7c92af64c2277ce2242db3a3551929d608944392bd6b4756bf65a796594acdb4847033a6992ea99ad09b linux-pine64-pinetab2-v7.0.6-danctnix1.tar.gz
5c1df7992b8b78ba28b441a5efdb3fd8d07c2a0ce1421e42a409001dea4b8bdf1aa2bda26645439603c3a903a00d7dfa14324ad2f59f8131174c83d1a5da2f45 linux-7.0.12.tar.xz
b24aadf37f85285edca551d1fd8625755e6db121a760143e468a48c7eb45ffbc3aeff9aea1666afc74a6e7f8ed75944a848c1f9b1ae37d2ad2b3c4412b5b0873 v7.0.12-danctnix1.patch.zst
77b54e385f63436a6fa0a595149d626aae7026dbd748ab121bcbaa88a0e7cf156239033867d8f7acd51b42f04c6cfe9de1c20cc7f687491afe836a7b4759763f config-pine64-pinetab2.aarch64
"
@@ -1,6 +1,6 @@
maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=linux-postmarketos-asahi
pkgver=7.0.11_p2
pkgver=7.0.12_p1
pkgrel=0
_rel=${pkgver#*_p}
_kver=${pkgver%_p*}
@@ -54,6 +54,7 @@ source="
config-postmarketos-asahi.aarch64
0001-nvmem-apple-spmi-nvmem-Fix-CFI-failures.patch
enable-dynamic-ftrace.patch
"
builddir="$srcdir/linux-asahi-$_asahiver"
_defconfig="defconfig"
@@ -88,7 +89,8 @@ package() {
}
sha512sums="
c04f15e7b231d37aa14c2311eb580e56adca1bc32e718fbbf4651bd12d89a864b1b396f83640d9b57e5729390312262d35b1709c83dbdf6988fb69f3ba4663ac linux-postmarketos-asahi-7.0.11-2.tar.gz
1444f29dc22fc98419ca3fe71d9d41890597c33cf3b2befba1f14fcf970b6172abebbfac95a3bbf9229a393954864a94f181cfd7fb8cedf9ac9a51f7540ff351 config-postmarketos-asahi.aarch64
4e054f227a9e2d6286c713a8287d434aee214b0c54773d55b37e5a781c8eec1ad97e73f761aee2e2b68aae4d989e04df9abad9c7e5598b84125d8ff4abb0c5ac linux-postmarketos-asahi-7.0.12-1.tar.gz
62de3220d7e05eed1e8f40e3fa60db2acdb43a27c8fa71bddd939b878d33d0436349b96485a19edc2f1bfcee2ba54a01f8d835187a9e9d6b4170b2c518665548 config-postmarketos-asahi.aarch64
8d205300cfabe192b53ed1cc644b087e76421eb973e1b2a31d657e4f2676badebdfcf6b0865569c43b4b904935435f6e729c3a8d4a6221fb5792e40ec1017a0f 0001-nvmem-apple-spmi-nvmem-Fix-CFI-failures.patch
e8b595f3e076896dc38f249c8908d58e2e6a858eaa77fe1e680f27db0e76d3d74c0b5dfebb7a4c57d546fee0b0f6eb81a38b20dfd72f985c9d02f28d79a5eceb enable-dynamic-ftrace.patch
"
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 7.0.11 Kernel Configuration
# Linux/arm64 7.0.12 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.3"
CONFIG_GCC_VERSION=0
@@ -31,7 +31,7 @@ CONFIG_RUSTC_HAS_SPAN_FILE=y
CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES=y
CONFIG_RUSTC_HAS_FILE_WITH_NUL=y
CONFIG_RUSTC_HAS_FILE_AS_C_STR=y
CONFIG_PAHOLE_VERSION=130
CONFIG_PAHOLE_VERSION=131
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_TABLE_SORT=y
CONFIG_THREAD_INFO_IN_TASK=y
@@ -128,6 +128,7 @@ CONFIG_PREEMPT_COUNT=y
CONFIG_PREEMPTION=y
# CONFIG_PREEMPT_DYNAMIC is not set
# CONFIG_SCHED_CORE is not set
# CONFIG_SCHED_CLASS_EXT is not set
#
# CPU/Task time and stats accounting
@@ -1597,6 +1598,7 @@ CONFIG_NET_SCH_MQPRIO=m
CONFIG_NET_SCH_INGRESS=m
# CONFIG_NET_SCH_PLUG is not set
# CONFIG_NET_SCH_ETS is not set
# CONFIG_NET_SCH_BPF is not set
# CONFIG_NET_SCH_DUALPI2 is not set
# CONFIG_NET_SCH_DEFAULT is not set
@@ -6407,6 +6409,7 @@ CONFIG_HID_MCP2221=m
#
# HID-BPF support
#
# CONFIG_HID_BPF is not set
# end of HID-BPF support
CONFIG_I2C_HID=y
@@ -8876,7 +8879,7 @@ CONFIG_SECURITY=y
CONFIG_HAS_SECURITY_AUDIT=y
CONFIG_SECURITYFS=y
# CONFIG_SECURITY_NETWORK is not set
# CONFIG_SECURITY_PATH is not set
CONFIG_SECURITY_PATH=y
# CONFIG_STATIC_USERMODEHELPER is not set
# CONFIG_SECURITY_SMACK is not set
# CONFIG_SECURITY_TOMOYO is not set
@@ -9379,16 +9382,19 @@ CONFIG_DEBUG_MISC=y
CONFIG_DEBUG_INFO=y
CONFIG_AS_HAS_NON_CONST_ULEB128=y
# CONFIG_DEBUG_INFO_NONE is not set
CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
# CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is not set
# CONFIG_DEBUG_INFO_DWARF4 is not set
# CONFIG_DEBUG_INFO_DWARF5 is not set
CONFIG_DEBUG_INFO_REDUCED=y
CONFIG_DEBUG_INFO_DWARF5=y
# CONFIG_DEBUG_INFO_REDUCED is not set
CONFIG_DEBUG_INFO_COMPRESSED_NONE=y
# CONFIG_DEBUG_INFO_COMPRESSED_ZLIB is not set
# CONFIG_DEBUG_INFO_COMPRESSED_ZSTD is not set
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_BTF=y
CONFIG_PAHOLE_HAS_BTF_TAG=y
CONFIG_PAHOLE_HAS_LANG_EXCLUDE=y
CONFIG_DEBUG_INFO_BTF_MODULES=y
# CONFIG_MODULE_ALLOW_BTF_MISMATCH is not set
# CONFIG_GDB_SCRIPTS is not set
CONFIG_FRAME_WARN=2048
# CONFIG_STRIP_ASM_SYMS is not set
@@ -9554,6 +9560,7 @@ CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
CONFIG_HAVE_FTRACE_GRAPH_FUNC=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
CONFIG_HAVE_EXTRA_IPI_TRACEPOINTS=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
@@ -9574,7 +9581,9 @@ CONFIG_FUNCTION_TRACER=y
CONFIG_FUNCTION_GRAPH_TRACER=y
# CONFIG_FUNCTION_GRAPH_RETVAL is not set
# CONFIG_FUNCTION_GRAPH_RETADDR is not set
CONFIG_FUNCTION_TRACE_ARGS=y
CONFIG_DYNAMIC_FTRACE=y
CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
CONFIG_DYNAMIC_FTRACE_WITH_ARGS=y
# CONFIG_FUNCTION_SELF_TRACING is not set
# CONFIG_FPROBE is not set
@@ -9592,6 +9601,7 @@ CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_PROBE_EVENTS_BTF_ARGS=y
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
@@ -0,0 +1,124 @@
From d81e256317f22d08afbdd8da83cda875d058b97f Mon Sep 17 00:00:00 2001
From: "Jose Fernandez (Anthropic)" <jose.fernandez@linux.dev>
Date: Tue, 9 Jun 2026 05:19:26 +0000
Subject: [PATCH 1/2] arm64: ftrace: prepare ftrace_modify_call() for use
without CALL_OPS
ftrace_modify_call() is guarded by CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS
and calls ftrace_rec_set_ops(rec, arm64_rec_get_ops(rec)) directly,
which only exists when CALL_OPS is enabled.
Generic ftrace also needs ftrace_modify_call() when
CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS is enabled, to retarget a
callsite between two non-FTRACE_ADDR destinations, as happens when a
direct trampoline is modified. The next patch allows DIRECT_CALLS without
CALL_OPS, so widen the guard to cover both configurations and switch
the body to the ftrace_rec_update_ops() wrapper, which already has a
stub for the !CALL_OPS case. ftrace_make_call() already uses the same
wrapper today.
No functional change: with CALL_OPS enabled, ftrace_rec_update_ops()
expands to the exact call this replaces.
Assisted-by: Claude:unspecified
Signed-off-by: Jose Fernandez (Anthropic) <jose.fernandez@linux.dev>
Reviewed-by: Puranjay Mohan <puranjay@kernel.org>
---
arch/arm64/kernel/ftrace.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/kernel/ftrace.c b/arch/arm64/kernel/ftrace.c
index 5a1554a441628..e1a3c0b3a0514 100644
--- a/arch/arm64/kernel/ftrace.c
+++ b/arch/arm64/kernel/ftrace.c
@@ -409,7 +409,8 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr)
return ftrace_modify_code(pc, old, new, true);
}
-#ifdef CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS
+#if defined(CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS) || \
+ defined(CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS)
int ftrace_modify_call(struct dyn_ftrace *rec, unsigned long old_addr,
unsigned long addr)
{
@@ -417,7 +418,7 @@ int ftrace_modify_call(struct dyn_ftrace *rec, unsigned long old_addr,
u32 old, new;
int ret;
- ret = ftrace_rec_set_ops(rec, arm64_rec_get_ops(rec));
+ ret = ftrace_rec_update_ops(rec);
if (ret)
return ret;
--
2.54.0
From c7d8dc4cd612aec63b954e13a2a940308d6c769e Mon Sep 17 00:00:00 2001
From: "Jose Fernandez (Anthropic)" <jose.fernandez@linux.dev>
Date: Tue, 9 Jun 2026 05:19:27 +0000
Subject: [PATCH 2/2] arm64: ftrace: allow DIRECT_CALLS without CALL_OPS
arm64 gained ftrace direct calls in commit 2aa6ac03516d ("arm64:
ftrace: Add direct call support") on top of
DYNAMIC_FTRACE_WITH_CALL_OPS, using the per-callsite ops pointer as a
fast path to reach the direct trampoline. Since commit baaf553d3bc3
("arm64: Implement HAVE_DYNAMIC_FTRACE_WITH_CALL_OPS"), CALL_OPS is
mutually exclusive with CFI: the pre-function NOPs would change the
offset of the pre-function kCFI type hash, and the compiler support
needed to keep that offset consistent does not exist yet.
The result is that a CONFIG_CFI=y kernel loses CALL_OPS, and with it
DIRECT_CALLS, and with it every BPF trampoline attachment to kernel
functions: register_fentry() returns -ENOTSUPP, so fentry/fexit,
fmod_ret and BPF LSM programs cannot attach at all. This is a real
problem for hardened arm64 deployments that rely on BPF LSM for
security monitoring while keeping kCFI enabled.
CALL_OPS is an optimization for direct calls, not a dependency. When
the direct trampoline is within BL range, the callsite branches
straight to it and ftrace_caller is not involved. When it is out of
range, ftrace_find_callable_addr() already falls back to
ftrace_caller, and the DIRECT_CALLS machinery there
(FREGS_DIRECT_TRAMP, ftrace_caller_direct_late) is gated on
DIRECT_CALLS alone, not CALL_OPS: the ops dispatch invokes
call_direct_funcs(), which stores the trampoline address in
ftrace_regs, and ftrace_caller tail-calls it. s390 and loongarch use
this same mechanism for HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS without
having CALL_OPS at all, and DYNAMIC_FTRACE_WITH_ARGS without CALL_OPS
is already a supported arm64 configuration (GCC builds with
CC_OPTIMIZE_FOR_SIZE do not satisfy the CALL_OPS select condition).
Drop the CALL_OPS requirement from the
HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS select. Configurations that
keep CALL_OPS (!CFI clang builds, and GCC builds without
CC_OPTIMIZE_FOR_SIZE) are unchanged. CALL_OPS-less configurations
take the ftrace_caller ops-dispatch path for out-of-range direct
calls, trading the per-callsite fast path for working BPF
trampolines; in-range attachments still branch directly with no
overhead. GCC -Os builds also gain DIRECT_CALLS as a side effect.
That is intended: s390 and loongarch already ship DIRECT_CALLS
without any per-callsite fast path.
Assisted-by: Claude:unspecified
Signed-off-by: Jose Fernandez (Anthropic) <jose.fernandez@linux.dev>
Reviewed-by: Puranjay Mohan <puranjay@kernel.org>
---
arch/arm64/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index edbaec4b6eead..532ce0d77069a 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -214,7 +214,7 @@ config ARM64
if (GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS || \
CLANG_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS)
select HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS \
- if DYNAMIC_FTRACE_WITH_ARGS && DYNAMIC_FTRACE_WITH_CALL_OPS
+ if DYNAMIC_FTRACE_WITH_ARGS
select HAVE_DYNAMIC_FTRACE_WITH_CALL_OPS \
if (DYNAMIC_FTRACE_WITH_ARGS && !CFI && \
(CC_IS_CLANG || !CC_OPTIMIZE_FOR_SIZE))
--
2.54.0
@@ -36,6 +36,10 @@ CONFIG_UDMABUF=y
CONFIG_BPF=y
CONFIG_BPF_JIT=y
CONFIG_BPF_LSM=y
CONFIG_DEBUG_INFO_BTF=y
CONFIG_DEBUG_INFO_BTF_MODULES=y
CONFIG_DEBUG_INFO_DWARF5=y
# CONFIG_DEBUG_INFO_REDUCED is not set
CONFIG_IPC_NS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
@@ -43,6 +47,7 @@ CONFIG_NET_NS=y
CONFIG_PID_NS=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_PATH=y
CONFIG_USER_NS=y
CONFIG_UTS_NS=y
@@ -3,7 +3,7 @@ maintainer="Nikroks <nikroks@mainlining.org>"
_flavor="postmarketos-qcom-sm7125"
pkgname=linux-$_flavor
pkgver=6.14.7
pkgrel=0
pkgrel=1
pkgdesc="Mainline Kernel fork for SM7125 devices"
arch="aarch64"
_carch="arm64"
@@ -47,7 +47,7 @@ package() {
make zinstall modules_install dtbs_install \
ARCH="$_carch" \
INSTALL_PATH="$pkgdir"/boot/ \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_MOD_PATH="$pkgdir"/usr \
INSTALL_MOD_STRIP=1 \
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
rm -f "$pkgdir"/lib/modules/*/build "$pkgdir"/lib/modules/*/source
+11
View File
@@ -0,0 +1,11 @@
# Continuous Integration
These pages are related to continuous integration (CI) in pmaports.
```{eval-rst}
.. toctree::
:hidden:
ci/ci-tags
ci/hardware-ci
```
+1 -1
View File
@@ -1,4 +1,4 @@
# CI tags
# CI Tags
You can add various tags in the commit message of your last commit to modify
the continuous integration behaviour for your merge requests.
File renamed without changes.
+20 -1
View File
@@ -13,6 +13,7 @@ extensions = [
"sphinx.ext.autodoc",
"sphinx.ext.autosummary",
"sphinx.ext.doctest",
"sphinx_reredirects",
"sphinxcontrib.autoprogram",
"sphinxcontrib.jquery",
]
@@ -26,11 +27,29 @@ html_theme_options = {
# Set the explicit title of the HTML output
html_title = "postmarketOS Packaging"
# Redirects for moved pages
redirects = {
"approval-rules": "merge-requests/approval-rules.html",
"ci-tags": "ci/ci-tags.html",
"device-categorization": "packaging/device-categorization.html",
"deviceinfo-reference": "packaging/device-packages/deviceinfo-reference.html",
"firmware": "packaging/firmware-packages.html",
"generic-device-packages": "packaging/device-packages/generic-device-packages.html",
"generic-kernels": "packaging/kernel-packages/generic-kernel-packages.html",
"hardware-ci": "ci/hardware-ci.html",
"kconfig-fragments": "packaging/kernel-packages/kconfig-fragments.html",
"kconfigcheck": "packaging/kernel-packages/kconfigcheck.html",
"kernel-cmdline": "packaging/kernel-packages/kernel-cmdline.html",
"kernel-versions": "packaging/kernel-packages/kernel-versions.html",
"packaging-guidelines": "packaging.html",
"releases/backporting": "merge-requests/stable-branches.html",
"ui-packages": "packaging/ui-packages.html",
}
def run_dint_doc(app):
docs_dir = Path(__file__).parent
with docs_dir.joinpath("deviceinfo-reference.md").open("w") as f:
with docs_dir.joinpath("packaging/device-packages/deviceinfo-reference.md").open("w") as f:
schema_path = docs_dir.parent / "deviceinfo_schema.toml"
subprocess.run(["dint", "doc"], stdout=f, check=True, env={"DINT_SCHEMA_PATH": schema_path})
+3 -14
View File
@@ -14,18 +14,7 @@ in pmaports and the processes around device categorization.
:hidden:
releases
approval-rules
device-categorization
deviceinfo-reference
ci-tags
firmware
generic-device-packages
generic-kernels
hardware-ci
kconfig-fragments
kconfigcheck
kernel-cmdline
kernel-versions
packaging-guidelines
ui-packages
merge-requests
ci
packaging
```
+12
View File
@@ -0,0 +1,12 @@
# Merge Requests
The subpages of this page describe processes for merge requests in pmaports.
```{eval-rst}
.. toctree::
:hidden:
merge-requests/approval-rules
merge-requests/commitstyle
merge-requests/stable-branches
```
@@ -1,4 +1,4 @@
# pmaports Approval Rules
# Approval Rules
pmaports follows the general
[code review and merge](https://docs.postmarketos.org/policies-and-processes/development/code-review-and-merge.html)
@@ -33,12 +33,12 @@ The following flowchart describes the process:
## Move device from category
Moving devices from category is a special operation, see
[device categorization](./device-categorization).
[device categorization](../packaging/device-categorization).
## Changing kconfigcheck requirements
Changes to `kconfigcheck.toml` are a special operation, see
[kconfigcheck](./kconfigcheck).
[kconfigcheck](../packaging/kernel-packages/kconfigcheck).
## Testing requirements
@@ -50,14 +50,7 @@ cases, before merging, in addition to the regular approvals, it is required to:
device-specific MRs that the team can't test, instead require confirmation of
device maintainer that it works.
## Backporting
## Stable branches
Backporting features from edge to stable is done at request of the MR author or
package maintainer. All patches for stable branches must go through edge first
and get backported from there to get additional testing before they potentially
breaks something in stable, and should be tested in the MR too. The only
exception are patches for failures that only happen on stable.
While backporting patches to stable, label the MR with the corresponding
`backport-to-v*` label, and cherry-pick the commits with the `-x` option, to
make sure that the original commit is mentioned.
[MRs to stable branches](./stable-branches) follow the same approval rules as
to the `main` branch.
File renamed without changes.
+1
View File
@@ -0,0 +1 @@
../../COMMITSTYLE.md
+59
View File
@@ -0,0 +1,59 @@
# Stable Branches
This article describes how to make merge requests towards a [stable
release](../releases) branch.
## Relevant Changes
* Fixes backported from `main`.
* Features backported from `main` if the maintainer of the package considers
them stable enough and important enough for backporting. In general we should
try to keep these minimal, for users the assumption is that stable branches
don't change much between releases and are therefore much more reliable than
edge.
* For packages that have a higher version in `main`: if upstream releases a
patch-release for an older version that we are using in our stable branch, an
upgrade MR can directly be sent to the stable branch without the usual
main-first-then-backport approach described below.
## Workflow
* Merge request authors or other contributors may add a `backport-to-vYY.MM`
label to pmaports MRs to `main` that shall be backported.
* After the MR is merged to `main`, somebody following up (could be the person
who merged the MR to be fastest, or the original MR author, or the person
responsibly for the release, or another community member) creates a MR to
the release branch.
* Use `git cherry-pick -x ffffffff` (insert commit to cherry pick accordingly)
for every patch. The `-x` will add a `(cherry picked from commit ffffffff)`
line to the commit message.
* Put `backport of <link to the original MR>` into the description of the MR
towards the stable branch.
* For patches that are not related to security, maintainers can choose to delay
backporting to give them more time in edge. This can be done either by adding
a visible note in the original MR description that a backport shall wait and
how long, or by adding a blocking comment in the backport MR that it shall
not be merged before a specific date.
### Best Practices
* Cherry picked commits shall not be squashed, then it's hard to understand
which commits were already picked and which were not.
* Avoid cherry-picking multiple patches that touch the same pmaports in the
wrong order. If there's a conflict, consider additionally cherry-picking a
dependent patch beforehand if it's non-intrusive.
### Initial Release Branch Bringup
Before the binary repository is built once for the release branch, it is fine
to directly push cherry-picked patches from main to the release branch without
going through a merge request. The reason is that CI doesn't work yet anyway,
and we want to have build fixes applied to the release branch quickly to be
able to finish the initial build of the binary repository.
@@ -1,5 +1,16 @@
# Packaging Guidelines
This document explains the general logic behind APKBUILDs and the niche
or confusing parts of writing them.
## General Policy
The APKBUILDs in pmaports follow
[Alpine Linux's coding style guide](https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/CODINGSTYLE.md)
with a few small style and policy differences to make up for the differences
in the types of packages between aports and pmaports. These can be found below
and in the other sections.
## Maintainership
Every package is expected to have a maintainer. The only exception is packages
@@ -315,3 +326,16 @@ only in some specific circumstances? In those situations we have to:
versioned provider to disambiguate (e.g:
`provides="audio-conf=$pkgver-r$pkgrel"`), or to force the forked packages
to provide a lower version than the other package.
```{eval-rst}
.. toctree::
:hidden:
packaging/device-categorization
packaging/device-packages
packaging/kernel-packages
packaging/firmware-packages
packaging/ui-packages
```
@@ -1,13 +1,27 @@
# Device Categorization
Devices that are working quite well get lost in the [big matrix of booting
devices](https://wiki.postmarketos.org/wiki/Devices). To improve the situation,
devices postmarketOS runs on have been grouped into the following categories.
There are a [lot of devices](https://wiki.postmarketos.org/wiki/Devices) that
can boot postmarketOS. These devices are divided into different categories. The
categorization serves to provide users with information about what to expect in
the present and future from a specific device. Therefore, the categories provide
information about a minimum set of working features, but also about the expected
level of support and stability that those features will have in the future.
## Categories
Although there are distinct categories, device support on-paper might not match
reality. Especially in regards to device features: some devices in lower
categories might match the requirements of higher categories, but the commitment
or support from maintainers might be lower than what higher categories require.
### Main
Main devices should be usable in the most common use-cases for which the device
is designed. They are also expected to be reliable and have few regressions in
functionality. One can expect some level of support from the postmarketOS team,
always respecting the volunteer nature of the project. See
[state](https://postmarketos.org/state/) to understand what that means.
Requirements:
* The [postmarketOS team](https://postmarketos.org/team) must endorse the new
device.
@@ -59,6 +73,15 @@ Responsibilities for the device maintainer team:
### Community
Community devices have a reasonable set of features enabled, although there is
not a fixed feature set: users should not assume that everything works and are
expected to look at the device wiki page. Community devices have generally
received a lot of work and should, in general, remain working quite
well. However, there is no commitment from the postmarketOS team, and it can
happen that maintainers are unable to continue working on them, leading to them
eventually getting demoted. The team will always notify the community about such
changes through the standard communication channels: Fediverse and blog posts.
Requirements:
* Well documented installation instructions on device wiki page
@@ -91,19 +114,14 @@ Requirements:
For e.g. version 6.12.3, the date would be that of the specific patch release,
not that of the initial 6.12 release
Regarding device features (calls working, camera, ...), there is not a fixed
feature set (so for users, don't assume that everything works, look at the
device's wiki page for details).
The purpose of community is to increase visibility of devices that:
* A lot of work was put into
* Are (and stay) working quite well (i.e. they are useful in some way and are
tested occasionally to find and fix regressions)
* Are still being improved or are considered completed at some point
### Testing
Testing devices cover devices with close-to-mainline kernels and other minimal
requirements. Devices on this category might have few, or many features enabled,
and there are no expectations on maintainers regarding user support. In
consequence, users of testing devices must consider that their devices could be
archived at any time and without notice.
Requirements:
* Must run a close-to-mainline kernel as new or newer than the oldest supported LTS release
@@ -114,32 +132,34 @@ Requirements:
### Downstream
Device ports using vendor/downstream kernels. These kernels and devices are only
advised to be used as a step towards using mainline, at which point they would
be moved to testing. Depending on downstream ports as an user can be
problematic, as kernels and devices in this category might be moved to archived
at any time. This will happen if the port no longer builds, lacks a maintainer,
or the maintainer is unresponsive. Downstream ports are also often unable to
support modern userspace components like Docker or systemd.
Requirements:
* Port and dependencies build
* The device boots
Notes:
Device ports using vendor/downstream kernels. Can be moved to _testing_
once a mainline port appears. Kernels and devices in this category might be
moved to _archived_ if no longer building and either lack a maintainer or the
maintainer is unresponsive for months.
(device-category-archived)=
### Archived
Ports are moved to this category if:
A port might be in archived if the port has been replaced with a better
alternative (e.g. ports using downstream kernels when a functional mainline port
exists), the port no longer boots with the current version of postmarketOS,
or it became unmaintained.
* The port has been replaced with a better alternative (e.g. ports using
downstream kernels when a functional mainline port exists).
* The port no longer boots with the current version of postmarketOS, and the
port doesn't have an active maintainer to fix it.
Archived ports aren't listed in `pmbootstrap init` and binary packages are not
built for them. Still, they can be manually selected and built by entering the
device codename. A warning is displayed with the reason why they have been
archived.
The archived category exists to simplify bringing back old ports (so new
maintainers don't have to dig through the git history), and for specific
situations where it is useful for developers to share a non-recommended
downstream kernel. Therefore, archived ports aren't listed in `pmbootstrap init`
and binary packages are not built for them. However, they can still be manually
selected and built by entering the device codename. Although, doing this will display
a warning with the reason why they have been archived.
This category was formerly called *unmaintained*
([!1912](https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/1912),
@@ -221,10 +241,13 @@ the date of the branching.
If the maintainers cannot be contacted, or if two weeks and any additionally
requested time pass and the device still does not meet the criteria, a merge
request to move them to the now appropriate category should be opened.
request to move them to the now appropriate category should be opened. If the
device being demoted is in the main or community category, the community shall
be notified through Fediverse and blog posts (edge blog post, release notes, or
next monthly blog post).
Merge requests moving a device to a lower category are subject to the standard
[pmaports approval rules](./approval-rules).
[pmaports approval rules](../merge-requests/approval-rules).
## See also
+12
View File
@@ -0,0 +1,12 @@
# Device Packages
Device packges in pmaports start with `device-`.
```{eval-rst}
.. toctree::
:hidden:
device-packages/generic-device-packages
device-packages/deviceinfo-reference
```
@@ -1,4 +1,4 @@
# Firmware
# Firmware Packages
Firmware (non-free binary blobs, often cryptographically signed by the OEM)
is nowadays unfortunately required for a lot of essential functionality,
+14
View File
@@ -0,0 +1,14 @@
# Kernel Packages
Kernel packages in pmaports start with `linux-`.
```{eval-rst}
.. toctree::
:hidden:
kernel-packages/generic-kernel-packages
kernel-packages/kconfig-fragments
kernel-packages/kconfigcheck
kernel-packages/kernel-cmdline
kernel-packages/kernel-versions
```
@@ -47,7 +47,7 @@ This would opt into the `community` category checks. The checks can be
performed by running `pmbootstrap kconfig check [kernel-package-name]`.
The `community` category checks are mandatory for devices in the community
and main categories, see the
[device categorization requirements](./device-categorization) for more
[device categorization requirements](../device-categorization) for more
information.
## Version baselines
@@ -79,7 +79,7 @@ package maintainers, who must make sure their kernel complies with the changed
requirements in the next update to their kernel packages. When making unrelated
changes to a kernel package that does not meet the current requirements, one
can use the `[ci:skip-kconfigcheck]` CI tag to bypass the checks if
[the situation allows for it](./ci-tags).
[the situation allows for it](../../ci/ci-tags).
Merge requests that change the `kconfigcheck.toml` require approval from
members of the kconfigcheck team in GitLab. The team can be pinged on merge
File renamed without changes.
@@ -9,7 +9,7 @@ additional guidelines for which kernel version to package for a device.
Devices with a close-to-mainline kernel usually reside in `testing` and can be
moved to `community` or `main` later if they meet the necessary
[requirements](./device-categorization.md). Devices using a downstream (i.e.
[requirements](../device-categorization.md). Devices using a downstream (i.e.
vendor-provided) kernel are packaged in the `downstream` or `archived`
categories.
File renamed without changes.
-1
View File
@@ -69,5 +69,4 @@ appear, but you will get a more a more tried and tested, solid experience.
:hidden:
releases/timeline
releases/backporting
```
-31
View File
@@ -1,31 +0,0 @@
# Backporting from edge
## Workflow
* Merge request authors or other contributors may add a `backport-to-vYY.MM`
label to pmaports MRs that shall be backported.
* After the MR is merged, postmarketOS team members can then backport the
patches to the given stable branch. If you are not a team member and need
somebody to do the backport, you can ask in
[postmarketos-devel](https://wiki.postmarketos.org/wiki/Matrix_and_IRC).
* Use <code>git cherry-pick -x ffffffff</code> (insert commit to cherry pick
accordingly) for every patch. The <code>-x</code> will add a <code>(cherry
picked from commit ffffffff)</code> line to the commit message.
* If you really know what you are doing and the change is trivial or the stable
branch is not released yet, then you can directly push the backported patch
to the stable branch. Otherwise you *must* make a merge request against the
stable branch with the backport. We don't want stable branches to break!
* Add a comment to the original merge request where the backport can be found
(with a link to the merge request or backported commit hash).
## What to look out for
* Cherry picked commits shall not be squashed, then it's hard to understand
which commits were already picked and which were not.
* Avoid cherry-picking multiple patches that touch the same pmaports in the
wrong order.
+4 -4
View File
@@ -5,7 +5,7 @@ release cycle starts. Get the current CW with `date +%V`. During the release
cycle we try to follow this plan closely, but it can happen that we run
over the planned CWs.
## Pre-Build
## 1. Pre-Build
CW 21 <small>(2026-05-18 - 2026-05-24)</small>
@@ -20,7 +20,7 @@ Team:
* Create the release branch in pmaports.
* Start building of binary packages early, so we can get through it for sure.
## Branch
## 2. Branch
CW 22 <small>(2026-05-25 - 2026-05-31)</small>,
CW 23 <small>(2026-06-01 - 2026-06-07)</small>
@@ -34,7 +34,7 @@ Team:
* Rebase the release branch on main once
* Build binary packages and images (configure BPO for that)
## Test
## 3. Test
CW 24 <small>(2026-06-08 - 2026-06-14)</small>
@@ -45,7 +45,7 @@ Maintainers:
* Fix stuff that is broken by creating MRs against pmaports main and assigning
the `backport-to-YY.MM` label
## Release
## 4. Release
CW 25 <small>(2026-06-15 - 2026-06-21)</small>
+6 -4
View File
@@ -1,6 +1,6 @@
maintainer="team/kde <bribbers@disroot.org>"
pkgname=drkonqi
pkgver=6.6.5
pkgver=6.7.0
pkgrel=0
pkgdesc="The KDE crash handler"
# armhf blocked by qt6-qtdeclarative -> ki18n
@@ -34,7 +34,6 @@ makedepends="
kuserfeedback-dev
kwallet-dev
kwidgetsaddons-dev
py3-chai
qt6-qtbase-dev
samurai
syntax-highlighting-dev
@@ -45,7 +44,10 @@ case "$pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
subpackages="$pkgname-lang"
subpackages="
$pkgname-lang
$pkgname-systemd
"
_repo_url="https://invent.kde.org/plasma/drkonqi.git"
source="https://download.kde.org/stable/plasma/$pkgver/drkonqi-$pkgver.tar.xz"
@@ -69,5 +71,5 @@ package() {
}
sha512sums="
211eafeb7dc3ff26f54d0347ee019ef6a89e3281c8bc825f9804f2983c7c451a258e40fbbc92f068f7d2c124b606c37ef47a3fae5f0d9b620896e0d86abb7c57 drkonqi-6.6.5.tar.xz
4a2f04fd28c5f198533e8e06a086781da7db6fc70283b9664cbeb6b851892f26a5578a4dbd034c385893fa28f4c85d947d6f562e514701a016a7dae987f78f8d drkonqi-6.7.0.tar.xz
"
+1 -3
View File
@@ -8,7 +8,7 @@ maintainer="Stefan Hansson <newbyte@postmarketos.org>"
pkgname=gnome-session
_pkgver=50.1
pkgver=9999$_pkgver
pkgrel=1
pkgrel=0
pkgdesc="GNOME session manager"
url="https://gitlab.gnome.org/GNOME/gnome-session"
# armhf: pmb#2618
@@ -38,7 +38,6 @@ makedepends="
options="!check" #no tests
subpackages="$pkgname-lang $pkgname-doc $pkgname-systemd gnome-shell-session:_shell:noarch"
source="https://download.gnome.org/sources/gnome-session/${_pkgver%%.*}/gnome-session-$_pkgver.tar.xz
oo7.patch
"
builddir="$srcdir/gnome-session-$_pkgver"
@@ -77,5 +76,4 @@ _shell() {
sha512sums="
8f2d2cc3eb39dc52fdef42696d633808605b311adedaa197813f90eff60517ee1cfd53754e62987115ed8325775ed62ed77796cfd1f457263d1d98d209468abe gnome-session-50.1.tar.xz
56ea243bc4a19aec5b971752f7e45b37e6e748ed2e2cdafcacf2aa72782dd2d3401962cbb227a5029c45062d675a7fae7b09eaac4b8ec3b786539740dc916938 oo7.patch
"
@@ -1,23 +0,0 @@
From a9d4b4d72562973d415cb943a41b4746d19bba78 Mon Sep 17 00:00:00 2001
From: Achill Gilgenast <achill@achill.org>
Date: Wed, 6 May 2026 11:20:25 +0200
Subject: [PATCH] data: Use oo7-portal as secret portal
Once https://gitlab.gnome.org/GNOME/gnome-build-meta/-/work_items/1253 is
approved, x-d-p should prefer oo7-portal instead of gnome-keyring.
---
data/gnome-portals.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/data/gnome-portals.conf b/data/gnome-portals.conf
index 7e1094cf..0fd839d7 100644
--- a/data/gnome-portals.conf
+++ b/data/gnome-portals.conf
@@ -1,3 +1,3 @@
[preferred]
default=gnome;gtk;
-org.freedesktop.impl.portal.Secret=gnome-keyring;
+org.freedesktop.impl.portal.Secret=oo7-portal;gnome-keyring;
--
GitLab
+2 -2
View File
@@ -1,6 +1,6 @@
maintainer="team/kde <bribbers@disroot.org>"
pkgname=kjournald
pkgver=25.12.2
pkgver=26.04.2
pkgrel=0
pkgdesc="Framework for interacting with systemd-journald"
# armhf blocked by qt6-qtdeclarative and pmb#2618
@@ -52,5 +52,5 @@ package() {
}
sha512sums="
86a6bcbe39c0343a197ebe0f50f05b131b1c7dc7baa3b962745dcc7fe1e6bf8307a408990a62a8e9de5813d2a31cef473a0252be4d5396ebeaae8322a63d6cae kjournald-25.12.2.tar.xz
629c5acf21b58b1d909f4e666c1299c76214a740e3bb160ff5abe431649cd9dc477d27f3fc5dc76aa2c9f796224cc5f9c2e984c36b64a27e8b7d2893fe4032ab kjournald-26.04.2.tar.xz
"
+2 -2
View File
@@ -1,7 +1,7 @@
# Forked from Alpine to add systemd!
maintainer="team/kde <bribbers@disroot.org>"
pkgname=kscreenlocker
_pkgver=6.6.5
_pkgver=6.7.0
pkgver=9999$_pkgver
pkgrel=0
pkgdesc="Library and components for secure lock screen architecture"
@@ -76,7 +76,7 @@ package() {
}
sha512sums="
da4405dc6de5477ab1fc6d8e3ba708ce96f9e6dadfb39d70ef697a0e5da7d6f1053b6f2fb6f53fb48ff3f603ea766aaf8ec17dd8c5f3efe867e4ee20e03f3713 kscreenlocker-6.6.5.tar.xz
0f6d4b37dc1a74bcc30697ee6406acb41e310ab1477180d4fc5884a265560553da42afdefacf6cae584ab1cf75699bc9fe1217bb706dea850a805f0e04a42558 kscreenlocker-6.7.0.tar.xz
cdbc45fb74a3c43fb2302fe09bf2f9f644ca93693e0110cf748c403762236aaeea8284a8d21fc495014c69b6d5fe4789aaff7687ce9f03dda270490fa5042e2b kde.pam
fe2f244b73b5cccf4b7125b9e3cac0a35566840e4ba2f69937fd8053aa56af71ee43dcbfa9c0f79de9ebe31f656e98a5d38955f77560be5c3535b08215ad8789 kde-fingerprint.pam
2ae866d25224ba345ea9d5ddb2fce668de5c51d1cfbb4d7a048c50107ccd6cffc3231a46855599c0ba3d62ff002a26e45b69d9029f88f4ab42661465a5e526c5 kde-smartcard.pam
+2 -2
View File
@@ -1,7 +1,7 @@
# Forked from Alpine to add systemd!
maintainer="team/kde <bribbers@disroot.org>"
pkgname=kwin
_pkgver=6.6.5
_pkgver=6.7.0
pkgver=9999$_pkgver
pkgrel=0
pkgdesc="An easy to use, but flexible, composited Window Manager"
@@ -124,5 +124,5 @@ package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
4342a5393b1749355a2b538c44a9b9f3c40fa128974290b292abff71231f3992bf95f3a9beb98ee9e638d358bfb556acba487512a4c646efa0d9a151728aa7c1 kwin-6.6.5.tar.xz
413b979528485f23ff8a40e50d5ecc8e693dbbf267ed40c7783fdb6ed5aa2b3c30bd3adf148c67d9223ea3e94317ad94a670e226daa9caf2634662d14b68e7d6 kwin-6.7.0.tar.xz
"
@@ -2,7 +2,7 @@
# group=kde-plasma
maintainer="team/kde <bribbers@disroot.org>"
pkgname=plasma-login-manager
pkgver=6.6.5
pkgver=6.7.0
pkgrel=0
pkgdesc="A display manager for KDE Plasma"
# armhf blocked by qt6-qtdeclarative
@@ -79,7 +79,7 @@ package() {
sha512sums="
4f1ca605d4171a678852b3c039471cf3b0f9531c520b5bcbaca1bdfc2d60df28509a425f8252d79f2949065dd5c9665a2055e849dfbecdd2fcde02d9fdfc1dfa plasma-login-manager-6.6.5.tar.xz
67bb54a2ecf1a4046e268216c4d3648e924f980f8bf1d57121c0adab1669a0b3aa5e59c65864fb7b9b2a7734e8b93cd7129d16cc16c16346612929b3d6fd43f4 plasma-login-manager-6.7.0.tar.xz
77fcd3ace910cc694266afb32ac75258e954dfcefa206dfc5f42204b4e3e14528d47a9e28e6cb0aa7f1670450a42023ce4ee85eac76fce2806bab54b2d1aa37c plasmalogin.pam
44d0fce5ed4dd19c0a66cd3b191f33658dcaadf619711c8ed8dccfa8697e8464836780404307271922a910e3df631b8cecfec77822a252e3eabf12c28e65dfa1 plasmalogin-autologin.pam
e82cf4dbca78ea73cc26378ca94dca12d9bb48fe13c29ff1e8403f44f4c83ba5000b8cfff0d2c4161ef9e8218edda82d4226ea571b70ffe7042ed3f2580538cd plasmalogin-greeter.pam
@@ -1,7 +1,7 @@
# Forked from Alpine to add systemd!
maintainer="team/kde <bribbers@disroot.org>"
pkgname=plasma-workspace
_pkgver=6.6.5
_pkgver=6.7.0
pkgver=9999$_pkgver
pkgrel=0
pkgdesc="KDE Plasma Workspace"
@@ -209,5 +209,5 @@ x11() {
}
sha512sums="
865083b9fcb6f8bbaa5a26aa01b3c8f9afe3d7640d19b4639b149ea79ec825e536aa564a479453c43b6d810468e632c10ffa178e21a88250d818ff0aa33e753a plasma-workspace-6.6.5.tar.xz
ffef9f3c95a6581394207218edf19c5e2a5db84140c484efbfc2536a74a0f2f86621f7c8c1cda1b06f37ea3a1844944fd1fcb6cfd63e2ee3390c502519e177d0 plasma-workspace-6.7.0.tar.xz
"
@@ -1,7 +1,7 @@
# pmbootstrap installs this, if systemd is selected in "pmbootstrap init".
maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=postmarketos-base-systemd
pkgver=79
pkgver=80
pkgrel=0
pkgdesc="Meta package for running postmarketOS with systemd"
url="https://postmarketos.org"
@@ -118,13 +118,13 @@ b7c3e70f5e4d88d6df6a8d58f4bb6af3d3051c5130cf13ad86a491fcbf7a69ae33ba31d663946c35
bd85f6153d857e1aec191b5fc8c8fc0d87125bf0198bef20d1e91ef40ca7e9ed1209a64ae279f98dc8733969ad6e71e29623180ef2203e386023a950d9ce8269 rootfs-usr-lib-systemd-logind.conf
e49972d276441e9da284315bab5f70d8d25ccba5e43d7e7ec6607c34a3d4dfa512f7303d5ce41076819ef24f5dced5acc74001b4d569258269de34da27912466 rootfs-usr-lib-systemd-resolved.conf.d-disable-dnsovertls.conf
93ab180810dbd2a1477f7ea0f0959be90f099272fe5840030a0772771c97a066b70068c476d32c6a4610b8f7b9fc5bfcf1d7a93f071cec026553ac6a3b8b5324 rootfs-usr-lib-systemd-resolved.conf.d-disable-mdns.conf
0e9b203870d0f533a9ef1587e42fe7f83ee8e8cc32893e666f79409e0741101d60564cadbc97e127c75f516a21c08b1283d05ac6f102aa7a6a0f4407d6ea07df rootfs-usr-lib-systemd-system-preset-90-base.preset
95b68c150db05e60ab60b299a4182cf6e82394d41e179d1d4c23bce0e0777fa0f4596e150960266cf1181f08af062b12234710db436c6f2be374dfe3a789e696 rootfs-usr-lib-systemd-system-preset-90-base.preset
bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system--.slice.d-10-oomd-defaults.conf
bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system-system.slice.d-10-oomd-defaults.conf
cedd159b98ce47ee9d03e5f332c4132c7c3eff32135aa7b7993e19c4867d55aff689b418fc549e139c0ea4690f1094e86efcee7a5bc6cd6998ba99821064a917 rootfs-usr-lib-systemd-system-tmp.mount.d-10-min-memory.conf
c5252710d8e2f95f5c216cce17737bb14e112c7f1e0b73f085ac0bc3da5a718bb831cc62c0c62e7e5e99337fdcc5c4ace76c5c11bb0ae1f242181ce6829e4fd3 rootfs-usr-lib-systemd-system-user@.service.d-10-oomd-defaults.conf
4217385ab8e0d0e53a6f6eb2ad0ef5c1ae88cab431c9fdca3528f147241edfefe7eec8f2927670dcf79c6f853d2c8a930782fad7e2a28ef6575b55df115f2f83 rootfs-usr-lib-systemd-user-app.slice.d-10-oomd-defaults.conf
efe3e6ff21a2b6671b149d354207694d5556ebb33e0f6aacd1b847856fff09cc6b1af221cc5b7fe41aa5b0ace06eea62845d37004b74383222aeda388cd2cd57 rootfs-usr-lib-systemd-user-preset-90-base.preset
cc59f71e6f5b0089bc893c5d303cbc9a370c6432c507ac5c5e120e866499d817d6e2304c11e17960dddc65bc35575b17b27b25cc2382a5a885fd80b052f3cd1f rootfs-usr-lib-systemd-user-preset-90-base.preset
15423bfda57c90ab62fe69865ca4072a0aeb83bf77d9c278257e346f4da81843d010b41003c91ae9f3fcb1c67447645e7c19078eea2bf11312051e6ad7523ad1 rootfs-usr-share-mkinitfs-files-extra-01-initramfs-base-systemd.files
6ff3fbd88493e50de5821c6e3db92623b38de52be4e8e967f4f297d8f70e31a86d91f1243b973387b80c8520edcc89a8233db6f234bca22a56ee61a1b4333670 rootfs-etc-apk-commit_hooks.d-postmarketos-base-systemd
605df1f004783d2e0ec5dd99a688bca27502c8c24bc05fb4dc26589b2070b0fbd1cf9bd56e6861d7cda2f8ac8147e7eb040acfd886185c01c8cf9de8b1ce2dcd rootfs-usr-bin-setup-timezone
@@ -38,7 +38,9 @@ enable alsa-state.service
enable tuned.service
enable tuned-ppd.service
enable irqbalance.service
enable usb-moded.service
enable usb-signaller.service
enable usb-moded-developer-mode.service
enable unudhcpd@usb0.service
enable dbus-broker.service
enable avahi-daemon.service
@@ -20,8 +20,6 @@ enable io.github.kolunmi.Bazaar.service
# GNOME
enable gnome-keyring-daemon.service
enable gnome-keyring-daemon.socket
enable oo7-portal.service
enable oo7-daemon.service
enable sm.puri.Chatty-daemon.service
# xfce4
+7 -2
View File
@@ -3,7 +3,7 @@
# Co-Maintainer: Oliver Smith <ollieparanoid@postmarketos.org>
maintainer="Clayton Craft <craftyguy@postmarketos.org>"
pkgname=systemd-stage0
pkgver=261_rc3
pkgver=261_rc4
_pkgver="${pkgver/_/-}"
# pkgrel must match systemd!
pkgrel=1
@@ -16,6 +16,11 @@ license="MIT AND GPL-2.0-only AND LGPL-2.1-or-later"
# This is only for bootstrapping other packages, make sure it does not get
# pulled into real installations via !postmarketos-base and !tracedeps
depends="!postmarketos-base"
# !tracedeps is set to prevent abuild from automatically adding `provides`
# based on sonames. Without this, apk would consider systemd-stage0
# a valid provider for packages that depend on systemd. Since we have to use
# !tracedeps, runtime dependencies must be listed manually in depends_*.
depends_libs="!postmarketos-base libucontext"
depends_dev="!postmarketos-base"
depends_doc="!postmarketos-base"
@@ -127,5 +132,5 @@ package() {
}
sha512sums="
facbcb7831fb84a38eaee5804d9aa03382486006cdb559010d6d353ad9a3986b516522cde1f0e0808fb49365859f790dd1caed24875a1c9e339e892d09d2cf30 systemd-261_rc3.tar.gz
b50c3391722bc28e5945666b4271d86926d1bdce4353c0a566a7765e1f0784ee00e6a5096f658c64917a7aeffd135acad15d7189c8e3041dce11e10d2c49d7cb systemd-261_rc4.tar.gz
"
+141 -35
View File
@@ -5,9 +5,16 @@
# Make sure to upgrade systemd-stage0 at the same time! #
#########################################################
# This is also used by upstream systemd CI with mkosi.
# On upstream mkosi build, the following environment variables may be set:
# $_systemd_upstream : set to 1,
# $_meson_extra_configure_options : set to extra meson config options,
# $_meson_builddir : set to the path to the meson build directory ($BUILDDIR in mkosi scripts),
# $_upstream_srcdir : set to the path to the upstream systemd source directory ($SRCDIR in mkosi scripts),
maintainer="Clayton Craft <craftyguy@postmarketos.org>"
pkgname=systemd
pkgver=261_rc3
pkgver=261_rc4
_pkgver="${pkgver/_/-}"
# pkgrel must match systemd-stage0!
pkgrel=1
@@ -19,6 +26,12 @@ license="MIT AND GPL-2.0-only AND LGPL-2.1-or-later"
# crossdirect disabled because of "ERROR: Problem encountered: unable to determine gperf len type"
options="pmb:strict !pmb:crossdirect"
_bootloader="enabled"
case "$CARCH" in
# ppc64le s390x: no EFI support
ppc64le|s390x) _bootloader="disabled" ;;
esac
triggers="$pkgname.trigger=/usr/lib/systemd/catalog:\
/usr/lib/udev/hwdb.d:\
/usr/lib/binfmt.d:\
@@ -32,12 +45,16 @@ triggers="$pkgname.trigger=/usr/lib/systemd/catalog:\
/etc/systemd/user
"
checkdepends="grep postmarketos-release"
# clang: used for bpf compilation. this is the default compiler
# grep: test-kernel-install requires 'grep -G', which is not supported by BusyBox grep.
makedepends="
acl
acl-dev
audit-dev
bash
bash-completion
bpftool
clang
cmake
coreutils
cryptsetup-dev
@@ -45,9 +62,12 @@ makedepends="
elfutils
glib-dev
gperf
grep
kmod-dev
libapparmor-dev
libarchive-dev
libbz2
libbpf-dev
libcap-dev
libfido2-dev
libgcc
@@ -55,7 +75,7 @@ makedepends="
libintl
libiptcdata-dev
libmicrohttpd-dev
libpwquality
libpwquality-dev
libqrencode-dev
libseccomp-dev
libselinux-dev
@@ -74,15 +94,32 @@ makedepends="
py3-lxml
python3-dev
rsync
tpm2-tss-dev
tpm2-tss-esys
tpm2-tss-mu
tpm2-tss-rc
tpm2-tss-tcti-device
tzdata
util-linux-dev
xz-dev
zlib-dev
zstd-dev
dbus-dev
polkit-dev
"
# valgrind-dev: not available on armhf and loongarch64.
case "$CARCH" in
armhf|loongarch64) ;;
*) makedepends="$makedepends valgrind-dev" ;;
esac
# xen-dev: available only on aarch64, armv7, and x86_64.
case "$CARCH" in
aarch64|armv7|x86_64) makedepends="$makedepends xen-dev" ;;
esac
# NOTE: these are dlopened and have to be listed explicitly since abuild cannot detect these dependencies
# See:
# - https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/3992
@@ -93,7 +130,9 @@ depends="
cryptsetup-libs
kmod-libs
libapparmor
libarchive
libblkid
libbpf
libcap2
libdw
libelf
@@ -102,6 +141,7 @@ depends="
libgcrypt
libidn2
libmount
libpwquality
libqrencode
libseccomp
libxkbcommon
@@ -109,13 +149,18 @@ depends="
lz4-libs
p11-kit
pcre2
tpm2-tss-esys
tpm2-tss-mu
tpm2-tss-rc
tpm2-tss-tcti-device
xz-libs
zlib
zstd-libs
"
# provides=openrc and openrc-settingsd to prevent those packages
# getting pulled in, as there are some conflicts (dbus)
provides="busctl eudev openrc-settingsd=$pkgver-r$pkgrel systemd-stage0=$pkgver-r$pkgrel"
provides="busctl openrc-settingsd=$pkgver-r$pkgrel systemd-stage0=$pkgver-r$pkgrel"
provider_priority=100
install="$pkgname.pre-install"
@@ -124,6 +169,7 @@ subpackages="
$pkgname-dbg
$pkgname-dev
$pkgname-doc
$pkgname-tests
$pkgname-x11
$pkgname-udevd
@@ -156,10 +202,33 @@ subpackages="
$pkgname-zsh-completion
"
source="$pkgname-$pkgver.tar.gz::https://github.com/systemd/systemd/archive/refs/tags/v$_pkgver.tar.gz
if [ "$_systemd_upstream" = 1 ]; then
if [ "$_bootloader" = enabled ]; then
makedepends="
$makedepends
py3-pefile
py3-pytest
"
subpackages="
$subpackages
$pkgname-boot
$pkgname-ukify
"
_meson_extra_configure_options="
$_meson_extra_configure_options
-Dukify=enabled
"
fi
fi
source="
$pkgname-$pkgver.tar.gz::https://github.com/systemd/systemd/archive/refs/tags/v$_pkgver.tar.gz
wired.network
"
builddir="$srcdir/$pkgname-$_pkgver"
builddir=${_upstream_srcdir:-"$srcdir/$pkgname-$_pkgver"}
_meson_builddir=${_meson_builddir:-build}
_bashcomp="usr/share/bash-completion/completions"
_zshcomp="usr/share/zsh/site-functions"
@@ -183,13 +252,6 @@ _default_zshcomp() {
}
build() {
local bootloader="enabled"
case "$CARCH" in
# ppc64le s390x: no EFI support
# armv7 x86: build broken for 32-bit
armv7|ppc64le|s390x|x86) bootloader="disabled" ;;
esac
# TODO: after usr-merge completion: remove hardcoded "-D*-path" options
abuild-meson \
-Dlibc=musl \
@@ -213,17 +275,18 @@ build() {
-Dpamlibdir=/usr/lib/security \
-Dpamconfdir=/usr/lib/pam.d \
-Dinstall-sysconfdir=false \
-Dinstall-tests=true \
\
-Dsysupdate=enabled \
-Dsysupdated=enabled \
-Dimportd=enabled \
\
-Dbootloader="$bootloader" \
-Dbootloader="$_bootloader" \
-Dinitrd=true \
-Dhibernate=false \
-Dselinux=disabled \
-Dsysvinit-path="" \
-Dukify=disabled \
-Dtpm2=enabled \
\
-Dhomed=disabled \
-Duserdb=false \
@@ -250,16 +313,17 @@ build() {
-Ddns-servers="9.9.9.10#dns10.quad9.net 149.112.112.10#dns10.quad9.net 2620:fe::10#dns10.quad9.net 2620:fe::fe:10#dns10.quad9.net" \
-Dntp-servers="0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 4.pool.ntp.org" \
\
-Dbpf-framework=disabled\
-Dbpf-framework=enabled \
-Dvmlinux-h=provided \
-Dvmlinux-h-path="$(find /usr/src -path "/usr/src/linux-headers-*-stable/vmlinux.h" | sort -V | tail -n1)" \
build .
meson compile ${JOBS:+-j ${JOBS}} -C build
$_meson_extra_configure_options \
$_meson_builddir .
meson compile ${JOBS:+-j ${JOBS}} -C $_meson_builddir
}
check() {
case "$CARCH" in
x86_64) meson test -C build ;;
x86_64) meson test --print-errorlogs --quiet --no-stdsplit -C $_meson_builddir ;;
*)
echo "*** NOTE: Skipping tests for archs that might use pmb:crossdirect/qemu-user ***" ;;
esac
@@ -275,8 +339,7 @@ package() {
!openrc
"
DESTDIR="$pkgdir" meson install --no-rebuild -C build
DESTDIR="$pkgdir" meson install --no-rebuild -C $_meson_builddir
# NOTE: Uncomment to print dlopened dependencies and crash the build:
# _dump_dlopen_metadata "$pkgdir" | _extract_sonames | _resolve_packages; exit 1
@@ -287,12 +350,14 @@ package() {
echo 'disable *' > "$pkgdir"/usr/lib/systemd/"$type"-preset/99-default.preset
done
# initramfs hardcodes /sbin/init
mkdir -p "$pkgdir"/sbin
ln -sf "../usr/lib/systemd/systemd" "$pkgdir"/sbin/init
if [ "$_systemd_upstream" != 1 ]; then
# initramfs hardcodes /sbin/init
mkdir -p "$pkgdir"/sbin
ln -sf "../usr/lib/systemd/systemd" "$pkgdir"/sbin/init
# this stuff is packaged in Alpine aports under "systemd-boot"
rm -rf "$pkgdir"/usr/lib/systemd/boot
# this stuff is packaged in Alpine aports under "systemd-boot"
rm -rf "$pkgdir"/usr/lib/systemd/boot
fi
}
udevd() {
@@ -304,7 +369,7 @@ udevd() {
depends="kmod-libs"
# NOTE: should only be udev, but packages hardcode eudev
provides="eudev udev eudev-libs"
provides="eudev=$pkgver-r$pkgrel udev=$pkgver-r$pkgrel eudev-libs=$pkgver-r$pkgrel"
provider_priority=100
amove usr/bin/udevadm
@@ -316,11 +381,16 @@ udevd() {
amove usr/lib/udev
# Install symlinks to be more like eudev
# FIXME: After usr merge, convert these into relative symlinks to support
# installing this package into an arbitrary directory
mkdir -p "$subpkgdir"/sbin "$subpkgdir"/bin
ln -sf /usr/lib/systemd/systemd-udevd "$subpkgdir"/sbin/udevd
ln -sf /usr/lib/systemd/systemd-udevd "$subpkgdir"/bin/udevadm
if [ "$_systemd_upstream" = 1 ]; then
mkdir -p "$subpkgdir"/usr/sbin
ln -sf ../bin/udevadm "$subpkgdir"/usr/sbin/udevd
else
# FIXME: After usr merge, convert these into relative symlinks to support
# installing this package into an arbitrary directory
mkdir -p "$subpkgdir"/sbin "$subpkgdir"/bin
ln -sf /usr/lib/systemd/systemd-udevd "$subpkgdir"/sbin/udevd
ln -sf /usr/lib/systemd/systemd-udevd "$subpkgdir"/bin/udevadm
fi
}
udevd_bcomp() {
@@ -420,7 +490,7 @@ logind() {
$pkgname=$pkgver-r$pkgrel
dbus
shadow
"
"
provides="elogind"
provider_priority=100
@@ -448,7 +518,6 @@ logind_zcomp() {
journald() {
pkgdesc="systemd Journal"
# is a dependency of systemd
amove usr/bin/journalctl
amove usr/lib/systemd/system/sockets.target.wants/systemd-journal*
@@ -467,6 +536,12 @@ journald_zcomp() {
_default_zshcomp _journalctl
}
tests() {
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/lib/systemd/tests
}
x11() {
pkgdesc="systemd x11"
install_if="$pkgname=$pkgver-r$pkgrel xorg-server-common"
@@ -475,7 +550,7 @@ x11() {
}
dev() {
provides="eudev-dev udev-dev systemd-stage0-dev=$pkgver-r$pkgrel"
provides="eudev-dev=$pkgver-r$pkgrel udev-dev=$pkgver-r$pkgrel systemd-stage0-dev=$pkgver-r$pkgrel"
provider_priority=100
default_dev
@@ -487,6 +562,37 @@ libs() {
default_libs
}
boot() {
# Currently, this is only used in the upstream systemd CI with mkosi.
pkgdesc="systemd's EFI boot manager"
provides="efistub"
provider_priority=200
amove usr/lib/systemd/boot/efi
}
ukify() {
# Currently, this is only used in the upstream systemd CI with mkosi.
pkgdesc="Create unified kernel images (UKIs)"
provides="ukify"
provider_priority=200
depends="
binutils
py3-cryptography
py3-pefile
py3-zstandard
python3
systemd-boot=$pkgver-r$pkgrel
"
amove usr/bin/ukify
amove usr/lib/kernel/install.d/60-ukify.install
amove usr/lib/systemd/boot/hwids
amove usr/lib/systemd/ukify
}
# Scan for dlopened dependencies
_dump_dlopen_metadata() {
mkdir -p "$pkgbasedir/.dlopen-metadata-tmp"
@@ -529,6 +635,6 @@ _resolve_packages() {
sha512sums="
facbcb7831fb84a38eaee5804d9aa03382486006cdb559010d6d353ad9a3986b516522cde1f0e0808fb49365859f790dd1caed24875a1c9e339e892d09d2cf30 systemd-261_rc3.tar.gz
b50c3391722bc28e5945666b4271d86926d1bdce4353c0a566a7765e1f0784ee00e6a5096f658c64917a7aeffd135acad15d7189c8e3041dce11e10d2c49d7cb systemd-261_rc4.tar.gz
81c897fed8a3fbfb67ec591b2398a5d65e4af1b3ef379376c157c98d71f085b707f8ebc896d5571a94f99f8fc84fd6b43e3b879ca9b0d57fc6c4596034c7a777 wired.network
"
+9 -2
View File
@@ -119,8 +119,17 @@ NET_NS = "y"
PID_NS = "y"
SECURITY = "y"
SECURITYFS = "y"
SECURITY_PATH = "y"
USER_NS = "y"
UTS_NS = "y"
DEBUG_INFO_BTF = "y"
DEBUG_INFO_BTF_MODULES = "y"
DEBUG_INFO_DWARF5 = "y"
DEBUG_INFO_REDUCED = "n"
["category:default".">=5.14.0"."loongarch64 ppc64le x86 x86_64"]
# ARM and riscv64 lack CFI+dynamic ftrace support, see:
# https://gitlab.postmarketos.org/postmarketOS/pmaports/-/work_items/4411#note_544158
DYNAMIC_FTRACE_WITH_DIRECT_CALLS = "y"
["category:netmount".">=0.0.0"."all"]
CACHEFILES = "m"
@@ -687,8 +696,6 @@ RUST = "y"
["category:rust".">=6.9.0"."aarch64"]
RUST = "y"
["category:rust".">=0.0.0"."aarch64 loongarch64 x86_64"]
DEBUG_INFO_BTF = "n" # Conflicts with LTO when Rust is enabled
DEBUG_INFO_BTF_MODULES = "n" # Conflicts with LTO when Rust is enabled
MODVERSIONS = "n"
# SELinux support, separate from hardening to keep it opt-in for now
+28 -7
View File
@@ -2,8 +2,8 @@
# Co-Maintainer: Achill Gilgenast <achill@achill.org>
maintainer="Stefan Hansson <newbyte@postmarketos.org>"
pkgname=postmarketos-base-ui-gnome
pkgver=12
pkgrel=0
pkgver=11
pkgrel=2
pkgdesc="Meta package for shared configuration for GNOME-based UIs"
url="https://postmarketos.org"
arch="noarch"
@@ -15,7 +15,7 @@ depends="
glycin-thumbnailer
gnome-backgrounds
gnome-bluetooth
oo7
gnome-keyring
gst-thumbnailers
iio-sensor-proxy
modemmanager
@@ -38,9 +38,13 @@ options="!check"
subpackages="
$pkgname-duranium
$pkgname-openrc
gnome-app-provider-gnome-software:gnome_software
gnome-app-provider-bazaar:bazaar
"
install="$pkgname-openrc.post-install $pkgname-openrc.post-upgrade"
_pmb_recommends="
cups
decibels
firefox-esr
flatpak
@@ -52,8 +56,6 @@ _pmb_recommends="
gnome-console
gnome-contacts
gnome-maps
gnome-software
gnome-software-plugin-apk
gnome-text-editor
gnome-user-share
gnome-weather
@@ -72,13 +74,14 @@ _pmb_recommends="
"
package() {
depends="$depends gnome-app-provider"
install -Dm644 -t "$pkgdir"/usr/share/glib-2.0/schemas \
"$srcdir"/*.override
}
openrc() {
install_if="$pkgname=$pkgver-r$pkgrel openrc"
install="$subpkgname.post-install $subpkgname.post-upgrade"
depends="
apk-polkit-rs-openrc
elogind
@@ -96,12 +99,30 @@ openrc() {
duranium() {
pkgdesc="$pkgdesc (Duranium)"
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-duranium"
depends="gnome-software-plugin-sysupdate"
depends="gnome-app-provider-bazaar"
install -Dm644 "$srcdir"/50-duranium.conf \
-t "$subpkgdir"/usr/lib/kernel-cmdline.d
}
gnome_software() {
pkgdesc="Provider that installs GNOME Software"
provides="gnome-app-provider"
provider_priority=100
depends="gnome-software gnome-software-plugin-apk"
mkdir -p "$subpkgdir"
}
bazaar() {
pkgdesc="Provider that installs Bazaar"
provides="gnome-app-provider"
provider_priority=90
depends="bazaar"
mkdir -p "$subpkgdir"
}
sha512sums="
39b5bb5e669756e2a308ab61b7901e76a9eff9e37c82d50bd9ff77800e72c19b580256f617a2ad0949c1746ab4e163e5ce009c134ab77f8a32f758b1b963862e 00_postmarketos-base-ui-gnome.gschema.override
c255b0914043f09ef5cc56d50c26e9c8885af128abc3ed5494606bd304eefdeb761ed3bc2d5f86f7c3bfb16f7fc21ca1a6d954c8d21e73e7a5e7612a84a78b7c 10_postmarketos-green-accent.gschema.override
@@ -32,6 +32,7 @@ depends="$depends
"
_pmb_recommends="
breeze-gtk
cups
discover
flatpak
kde-gtk-config
+1 -10
View File
@@ -1,6 +1,6 @@
maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=postmarketos-base-ui
pkgver=49
pkgver=50
pkgrel=0
pkgdesc="Meta package for minimal postmarketOS UI base"
url="https://postmarketos.org"
@@ -32,7 +32,6 @@ subpackages="
$pkgname-bluez-obexd:obexd
$pkgname-elogind
$pkgname-flatpak
$pkgname-flatpak-systemd:flatpak_systemd
$pkgname-networkmanager
$pkgname-modemmanager
$pkgname-modemmanager-systemd:modemmanager_systemd
@@ -82,7 +81,6 @@ _source644="
usr/lib/NetworkManager/conf.d/50-iwd.conf
usr/lib/NetworkManager/conf.d/50-random-mac.conf
usr/lib/NetworkManager/conf.d/50-use-dnsmasq.conf
usr/lib/systemd/system/flatpak-system-helper.service.d/wait-for-ntp.conf
usr/lib/systemd/system/ModemManager.service.d/quick-suspend-resume.conf
usr/lib/systemd/system/iio-sensor-proxy.service.d/shutdown.conf
usr/lib/udev/rules.d/50-udmabuf.rules
@@ -295,12 +293,6 @@ flatpak() {
amove usr/share/flatpak/remotes.d/flathub.flatpakrepo
}
flatpak_systemd() {
# note: can't use default_systemd since it slurps up units from other subpkgs
install_if="$pkgname-flatpak=$pkgver-r$pkgrel systemd"
amove usr/lib/systemd/system/flatpak-system-helper.service.d/wait-for-ntp.conf
}
modemmanager() {
install_if="$pkgname=$pkgver-r$pkgrel modemmanager"
mkdir -p "$subpkgdir"
@@ -341,7 +333,6 @@ cac604e25c46e695dd30bd5a10cfd2d69595fcc3bc290096ac94b76b10834d591ea6576afb79c46b
439615745d5be0d1ab6801cfbf960a31b12da30bf5df64ba2914ff32dae9e650595d7f96e66f5dff6308f092de1f746277ea7f4e701888a22571f7c119b7bf0d rootfs-usr-lib-NetworkManager-conf.d-50-iwd.conf
d4b4c4fed2dee7266f6a87ae266691377593014943e2953e4cd87a59f3110f25bfb5f3f866cc843519f628695e4df7602bfdcd3d79f2c2cd6e8256535c33b038 rootfs-usr-lib-NetworkManager-conf.d-50-random-mac.conf
900554534191fa0797064d35350934cdd8af59f30f0ae7d8ec63c2e11c44a16c643d3024b6543940488cd590fec1d392548bcaacc3be88cddff90f69b17ece07 rootfs-usr-lib-NetworkManager-conf.d-50-use-dnsmasq.conf
4f1e056e3bf6dcb9918fc35a87007304dcd16f3d2e1a920840455151f4f09001dace52097d0886a12d23c28b1646ea4fe907b6e65f54cfd22276201ba2da2fb9 rootfs-usr-lib-systemd-system-flatpak-system-helper.service.d-wait-for-ntp.conf
cc86775a7820eb683e67df7d23ebae9d72699a643ff1452c71daf38ac6c39a84fd1686e67351ab0a2c582f9fc0374410383e3a32bd378cf11a8fb6033fde35ac rootfs-usr-lib-systemd-system-ModemManager.service.d-quick-suspend-resume.conf
087b9e967f6ffeaeb1fd6c5860bb07d0b8c2ce2c1b636d73e989cc9f3c8c6a60dc9552ec5ff13a2bce6804c3f5e8876d4b41a07770f06f6cee0fa37a54f996b4 rootfs-usr-lib-systemd-system-iio-sensor-proxy.service.d-shutdown.conf
9431dd37801261002f2ac8a0c30483994897adaf7cb31e80fcb99b7354dbe3e10d79162a2f2baefc5d091bb192ff680f274d6481bb198958d08918529c64e26f rootfs-usr-lib-udev-rules.d-50-udmabuf.rules
Loaded 100 of 131 files, more files were not shown because too many files have changed in this diff. Show more