Commit graph

762 commits

Author SHA1 Message Date
Clayton Craft
1b20c249cf
systemd/postmarketos-base-systemd: fix preset template instance handling
This fixes a bug where template presets with a specified instance were
not being handled. The install script previously parsed the entire line,
including the instance(s) and ran 'systemctl preset' on it all, e.g.
'systemctl preset unudhcpd@.service usb0'.

The script will now:

- detect lines that contain a template + instance(s)
- diff the instances
- run preset on template@instance for all added or removed instances

Template presets that don't have any instances specified in the preset
file (because they have a DefaultInstance= set) are treated just like
any other unit since we can run preset on those and it enables the
template with the default instance.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9026>
2026-07-28 22:57:00 +00:00
Clayton Craft
6d00e47c78
systemd/postmarketos-base-systemd: fix unudhcpd@ preset
According to systemd.preset, which I totally should have read before, we
were not specifying the instance correctly which resulted in this unit
not actually being enabled by default.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9026>
2026-07-28 22:57:00 +00:00
Clayton Craft
3903172aef
systemd/postmarketos-base-systemd: drop usb-moded-developer-mode preset
This unit/script shouldn't be run on boot. Mode switching should be
managed by usb-signaller

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9026>
2026-07-28 22:56:57 +00:00
Clayton Craft
8079d33b71
systemd/fwupd: fix compilation on armv7 qemu
Unblocks bpo

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9131>
2026-07-25 22:57:03 +00:00
Aster Boese
a589ec7d4f
systemd/dsme: remove openrc subpackage
Every other package in extra-repos/systemd removes their openrc
subpackage and openrc scripts. Therefore, dsme should too.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9128>
2026-07-24 21:04:48 +00:00
Clayton Craft
1c7ff6bc68
systemd/cups: backport patch to install sysusers config
Upstream cups has support for generating/installing sysuser config but
it's not yet in a release version. Backport the patch to when it gets
into a release, we'll know to drop the patch.

Fixes #4649

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8875>
2026-07-24 20:16:23 +00:00
Clayton Craft
6b57dc9c72
systemd/fwupd: fork from Alpine to build with systemd support
Unfortunately we can't build fwupd with only unit files, we have to link
against systemd for sd-notify support or else the units probably aren't
going to be properly managed.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
[ci:skip-vercheck] pkgver/pkgrel match upstream

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7245>
2026-07-24 18:06:02 +00:00
Aelin
9c68abf912
systemd/systemd: upgrade to 261.2
[ci:skip-build]: already built successfully in CI

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9121>
2026-07-24 07:40:53 -07:00
Stefan Hansson
55a2caafad
systemd/networkmanager: upgrade to 1.56.1
And add patch to fix hotspot breakage.

Closes https://gitlab.postmarketos.org/postmarketOS/pmaports/-/work_items/4118

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9053>
2026-07-24 14:12:00 +00:00
Aster Boese
3004382975
systemd: remove eudev provide
No package in aports or pmaports directly depends on eudev
anymore, meaning that this eudev provide is not needed and
only the udev virtual package provide is needed.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8974>
2026-07-23 15:35:37 -07:00
Aelin
131f1be52e
systemd/systemd: disable ldconfig
The ldconfig service does not serve a purpose on musl systems.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9111>
2026-07-22 15:24:13 +00:00
Aelin
6e90d14c4d
systemd/systemd-stage0: disable unnecessary options
This brings us down from 2400 to around 1000 targets when compiling
systemd-stage0. dbus still builds fine after these changes.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9093>
2026-07-20 15:35:16 +00:00
Clayton Craft
ff24e3ab4c
systemd/postmarketos-base-systemd: enable ssh pam inhibit
This enables pam_systemd for sshd sessions and configures it to inhibit
sleep when a session is open.

This config should be upstreamed to aports once support is merged in
systemd: https://github.com/systemd/systemd/pull/42275

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8672>
2026-07-19 19:51:56 +00:00
Clayton Craft
a372a2f2c5
systemd/systemd: backport patch adding inhibit support to pam_systemd
This was merged upstream but won't be in a release until v262

https://github.com/systemd/systemd/pull/42275

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8672>
2026-07-19 19:51:56 +00:00
Clayton Craft
e4a8fb375c
systemd/postmarketos-base-systemd: remove sleep-inhibitor preset
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8672>
2026-07-19 19:51:56 +00:00
Clayton Craft
594e361a71
systemd/postmarketos-base-systemd: inhibit sleep when apk is running
This uses some lightweight tools with systemd-inhibit to block sleep and
shutdown when apk is running. This is being installed in a new subpkg
that is pulled in only when apk-tools is installed, so that this is not
installed on duranium.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8672>
2026-07-19 19:51:53 +00:00
Aster Boese
5f836d5b2c
treewide: add ending newline to files missing it
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8197>
2026-07-18 11:51:57 +02:00
Bart Ribbers
17d6f37984
systemd/plasma: upgrade to 6.7.3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9028>
2026-07-15 08:11:00 +02:00
Clayton Craft
994ed89373
systemd/systemd: add Ollie as co-maintainer
Fixes #4681

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
[ci:skip-vercheck]

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9004>
2026-07-12 13:02:20 -07:00
Bart Ribbers
1bbed4bf52
systemd/kjournald: upgrade to 26.04.3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8990>
2026-07-12 08:17:39 +02:00
Aster Boese
14897810c9
systemd: disable compat-sysv-interfaces
compat-sysv-interfaces is meant for systems that
already have technical debt from switching from
sysv. postmarketOS does not have this, so this
is not needed.

All this option does is enable runlevels 0-6
and install legacy.conf, which also doesn't
work with our packaging because it installs
symlinks who's target only exists in
subpackages.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8996>
2026-07-11 14:47:40 +00:00
Clayton Craft
8d0cc81e23
systemd/postmarketos-base-systemd: move install= to top level
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8993>
2026-07-10 21:44:39 +00:00
Clayton Craft
37e1370ae9
systemd/postmarketos-base-systemd: don't enable time-wait-sync
This removes the other half of the workaround for #3816, that should have been in !8487.

Fixes #4687

This reverts commit 5e435f9669.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8993>
2026-07-10 21:44:39 +00:00
Achill Gilgenast
8433274c9a
systemd/postmarketos-base-systemd: enable phosh-os-updater.service
See HEAD~

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8952>
2026-07-09 22:57:07 -07:00
Aster Boese
5e5a451de1
systemd: remove unnecessary provider_priority's
When all the provides are versioned, provider_priority does nothing, so it is safe and correct to remove.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8889>
2026-07-08 06:55:12 +02:00
Aster Boese
61ee5c6fe8
treewide: remove contributor comments
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8950>
2026-07-06 20:41:42 +02:00
Robert Eckelmann
5b9f67f79e
extra-repos/systemd: open-iscsi, open-isns new aports
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>

[ci:skip-vercheck]

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8938>
2026-07-05 20:36:53 +09:00
Achill Gilgenast
f86811fddf
systemd/phosh: upgrade to 0.56.0
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8953>
2026-07-05 10:56:56 +02:00
Bart Ribbers
95d33b4472
systemd/plasma*: upgrade to 6.7.2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8936>
2026-07-01 09:05:40 +02:00
Aelin
f36462e85b
systemd/systemd: upgrade to 261.1
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8912>
2026-06-29 13:49:22 +00:00
Yu Watanabe
5ff3f5ed44
systemd/systemd: adds libbz2 dependency
Before this change, systemd package depends on other compression
libraries, but does not depend on libbz2. Let's also make it depend
on libbz2.

This also makes bzip2-dev explicitly installed on build, like other
compression libraries like lz4-dev, xz-dev, zlib-dev, and zstd-dev.
Currently, it is indirectly installed as glib-dev depends on it.
So the makedepends= change does not effectively changes anything.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8926>
2026-06-29 13:28:06 +00:00
Max Brosnahan
e22fb90295
systemd/plasma-workspace: Add polkit rule to allow setting the timezone without authorization
Before this change plasma-mobile required authentication to set the timezone during the first boot setup flow. Now plasma-workspace includes the file from d61317fd62/community/plasma-workspace/org.kde.timezone.rules.
This ensures that all the plasma front ends allow setting the timezone during first boot setup.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8925>
2026-06-29 09:43:34 +00:00
Aster Boese
6347ed4510
systemd/*: remove eudev-dev dependencies
Even though systemd-dev provides eudev-dev, it doesn't make sense
to keep these dependencies, since we fully control the systemd
repo and don't need to work around these things. Most of these
packages depend on systemd-dev anyways, making this second
dependency useless.

This frees up some room for modifying the provides of systemd to
better integrate with the regular repo in the future.

Signed-off-by: Aster Boese <asterboese@mailbox.org>

[ci:skip-vercheck]: enabling package for arch

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8902>
2026-06-26 09:08:18 +00:00
Bart Ribbers
6cbbf2b58e
systemd/plasma*: upgrade to 6.7.1
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8895>
2026-06-24 08:20:57 +02:00
Aelin
a2c53ce8f4
systemd/postmarketos-base-systemd: kill-pbsplash.service is no more
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8885>
2026-06-23 10:20:40 +00:00
Aelin
b32a0084f8
systemd/dbus-broker: run tests on more architectures in CI
[ci:skip-vercheck]: no effect in BPO

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8882>
2026-06-22 04:43:16 +02:00
Aelin
bd970948e6
systemd/systemd: run tests on more architectures in CI
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8864>
2026-06-20 11:42:56 +00:00
Aelin
832379102c
systemd/systemd: upgrade to 261
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8864>
2026-06-20 11:42:56 +00:00
Aelin
a0dd6b1d6a
systemd/systemd-stage0: upgrade to 261
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8864>
2026-06-20 11:42:56 +00: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
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
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
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
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
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
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