Compare commits

...
Author SHA1 Message Date
Caleb Connolly 482a51ed41 Elementary pantheon WIP w/ systemd
Doesn't get very far yet... The pantheon greeter is totally broken.

lightdm PAM config needs to be adjusted to reference pam_systemd.so
instead of pam_elogind.so (maybe we should add a symlink?).

If you make it to the desktop by using the GTK greeter (and choose
"secure session" for wayland) then you'll just get a wallpaper and a lot
of kernel messages about wingpanel crashing with SIGTRAP.

Haven't debugged further.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-28 04:34:03 +01:00
jane400 bf66bed23c systemd/systemd-services: fix typo at rtkit preset (MR 5825)
[ci:skip-build]: already built successfully in CI
2024-11-22 23:02:20 -08:00
fossdd 27590b21f8 systemd/gnome-logs: new aport (MR 5790)
https://apps.gnome.org/Logs
Log viewer for the systemd journal

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:25 -08:00
Clayton Craft 243f7e5759 systemd/networkmanager: don't build docs
This doens't work with crossdirect since apparently it calls the
compiler during package() stage:

ERROR: Error in gtkdoc helper script:

ERROR: ['/usr/bin/gtkdoc-scangobj', .... failed with status 1
============================================================================================
ERROR: crossdirect was called with: LD_PRELOAD=libfakeroot.so
2024-11-22 16:35:25 -08:00
jane400 5e69e30800 systemd/linux-pam-pmos: rename from linux-pam (MR 5769)
This should ensure that postmarketos-base-systemd installs our linux-pam
package, not the one from alpine. (The old way to pin our package was
based on fragile version pinning, as our pam wasn't bumped to 9999, but
had the same version as aports).

fixes #3170
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:25 -08:00
Clayton Craft 8f60d40da0 systemd/networkmanager: upgrade to 1.50 and rebase APKBUILD (MR 5761)
APKBUILD was rebased onto the latest verstion in Alpine aports (1.50.0-r3)

[ci:skip-build]: bug in CI prevents it from completing, but builds fine locally
2024-11-22 16:35:25 -08:00
jane400 1da8d29c2e systemd/{gdm, gnome-*, mutter}: rebase apkbuild on upstream/aports (MR 5770)
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:25 -08:00
jane400 2c718e4e7f systemd/xorg-server: pull upgrade from upstream/aports (MR 5777)
lto is disabled because of CI

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:25 -08:00
jane400 67550221eb systemd/pipewire: pull upgrade from upstream/aports (MR 5776)
lto makes cross-compiling CI unhappy, disabling it makes CI happy again.

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:24 -08:00
Clayton Craft 6f3bf3c62a extra-repos/systemd: fix deinstall macro (MR 5746)
This wasn't actually working because it was using an unset var when
calling 'systemctl disable'.

[ci:skip-build]: CI cannot complete build testing because of infra
issue, but that's fine because this change doens't actually require
compiling systemd.
2024-11-22 16:35:24 -08:00
Clayton Craft 651b31b1fa systemd/plasma-workspace: rebase apkbuild on upstream/aports (MR 5762)
New dependencies were not included so this failed to build properly. The
other changes were pulled from the version in aports, to make rebasing
in the future easier.

[ci:skip-build]: CI cannot complete build testing because of infra
issues downloading from download.kde.org
2024-11-22 16:35:24 -08:00
fossdd d7883d2f01 systemd/systemd-services: manually issue chvt on start of phosh (MR 5757)
libseat 0.9.0 no longer performs an automatic VT switch when taking
control of a seat to allow sessions to be started in the background. As
consequence, one must manually switch if one wants a background session
to be immediately activated.

Issue a chvt on ExecStartPost, when the service is deemed running.

Upstream: https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1566
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:24 -08:00
Clayton Craft df5be34ae1 systemd/postmarketos-base-systemd: disable journald audit feature (MR 5754)
When kernel auditing is enabled and things crash, this leads to a lot of
really annoying messages printed to the console/TTY that can interfere
with debug. Kernel audit info can be reached using other userspace
tools.

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:24 -08:00
Clayton Craft ce4978b12b systemd/postmarketos-base-systemd: add presets for swclock-offset (MR 5685) 2024-11-22 16:35:24 -08:00
Clayton Craft 285333b458 systemd/pmos-base-systemd: disable sd-resolved by default (MR 5630)
Fixes #3190
2024-11-22 16:35:24 -08:00
Bart Ribbers 1da080fa86 extra-repos/systemd/plasma*: upgrade to 6.2.2 (MR 5734)
[skip ci]: downloading from KDE servers seems to be broken / not
working, so checksum verify never passes. checksums were verified
locally
2024-11-22 16:35:23 -08:00
Clayton Craft e1b7f3b35e systemd/gnome-shell*: remove dependency on networkmanager-common
This package no longer exists on Alpine edge
2024-11-22 16:35:23 -08:00
Caleb Connolly 4da13f058c systemd: fix udevd path
We actually want usr/lib/udevd here, not lib/udevd. This fixes the
initramfs not building and some other weirdness.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:23 -08:00
jane400 64b0be5ee5 extra-repos/systemd/systemd: support split-usr again (MR 5661)
Do note that this commit was amended after the fact, the patch got
inlined into this repo to not brick this branch if the MR gets pushed
to.

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:23 -08:00
jane400 212ffd3e1e extra-repos/systemd/apk-tools: drop (MR 5661) 2024-11-22 16:35:23 -08:00
jane400 61c41b2f1c extra-repos/systemd: adjust bootstrap logic to remove usr-merge (MR 5661) 2024-11-22 16:35:23 -08:00
jane400 fcaae1ec28 systemd/systemd: upgrade to 256.5 (MR 5560) 2024-11-22 16:35:23 -08:00
Andrei Zisu 3f4d989c43 main/postmarketos-ui-gnome-*: enable systemd by default
[ci:skip-vercheck]
2024-11-22 16:35:22 -08:00
Bart Ribbers 50248be87a extra-repos/systemd/systemd-services: fix subpackage names for Plasma and Waydroid services (MR 5651)
The package names should be the original package names + the -systemd
suffix. I did this wrongly breaking both KDE Plasma and Waydroid
2024-11-22 16:35:22 -08:00
Aster Boese 7a876bd11b extra-repos/systemd/systemd: enable sysext and sysusers (MR 5597) 2024-11-22 16:35:22 -08:00
Clayton Craft 6da6d17683 extra-repos/systemd/postmarketos-base-systemd: add waydroid presets (MR 5592) 2024-11-22 16:35:22 -08:00
Bart Ribbers da3039b8d8 extra-repos/systemd/systemd-services: add waydroid and related services (MR 5592) 2024-11-22 16:35:22 -08:00
Caleb Connolly 0c14b07b39 systemd: gnome-shell-mobile: upgrade to 46.1 (MR 5629)
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>

[ci:skip-build] already built in CI
2024-11-22 16:35:22 -08:00
Bart Ribbers 5a0b4f58a9 extra-repos/systemd/systemd-services: take over service files from origin packages (MR 5631)
We were only forking kactivitymanagerd and kglobalacceld for their
service files
2024-11-22 16:35:22 -08:00
Bart Ribbers 369c74ca9a extra-repos/systemd/kde*: upgrade to latest versions (MR 5590)
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:21 -08:00
Clayton Craft 8d8a86d232 systemd/pmos-base-systemd: add preset for udisks2 (MR 5589)
Provides disk mounting services for many UIs

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:21 -08:00
Clayton Craft 62f7754634 systemd/systemd-services: fix nftables unit (MR 5589)
The type was erroneously set as 'simple', and since we are setting
ExecStop we actually need to set RemainAfterExit to avoid running
ExecStop when the oneshot service runs. This is because nft returns/
exits pretty much immediately after applying the config.

fixes #2846
2024-11-22 16:35:21 -08:00
Clayton Craft 7d98f08a9c systemd/systemd-services: add udisks2 unit file (MR 5589) 2024-11-22 16:35:21 -08:00
Clayton Craft 8ef3033799 systemd/systemd-services: add evolution-data-server user services (MR 5589)
No presets because these are dbus activated.

fixes #2910
2024-11-22 16:35:21 -08:00
Bart Ribbers 05123a144c extra-repos/systemd/systemd-services: add kded (MR 5593) 2024-11-22 16:35:21 -08:00
Caleb Connolly 017560ba2b systemd-services: add lxc (MR 5598)
add the lxc template service

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:21 -08:00
Clayton Craft 52f66c3e62 systemd/pmos-base-systemd: presets: fix some preset unit names, add sshd (MR 5588)
The unit name to kill pbsplash had a typo, and added a preset for sshd.

systemd didn't seem to match `phosh` or `gdm` to the correct unit,
unless they had `.service` added, so this was fixed.

Presets in this section were also sorted.
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:20 -08:00
Clayton Craft 304fe99bce systemd/systemd: fix default disable preset (MR 5588)
This didn't actually seem to do anything, resulting in some weird stuff
being enabled by default even though we did not specify a preset for it
(e.g. see !5556)

Based on my interpretation of the systemd preset manpage, this file
should be parsed last. It says that if a unit name has a preset that
was already configured in some previously parsed preset file, then any
matches after do not apply. This means that the `disable *` should not
disable any previously enabled (in previous .preset files) units. When
the unit name is omitted from the `disable` command, it seems to be a no-op.

Fixes !5207
2024-11-22 16:35:20 -08:00
Clayton Craft 517e4e278c (not for master) remove temp/* pkgs that conflict with systemd repo
Until bpo moves to pmb v3.

See: https://gitlab.com/postmarketOS/build.postmarketos.org/-/issues/143
2024-11-22 16:35:20 -08:00
Clayton Craft abfbb07981 systemd/postmarketos-base-systemd: depend on newer linux-pam (MR 5579)
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:20 -08:00
Clayton Craft 78a0868096 systemd/linux-pam: upgrade to 1.6.1-r1 (MR 5579)
pkgver and pkgrel match aports version

APKBUILD was rebased onto alpine aports version
2024-11-22 16:35:20 -08:00
Clayton Craft 508cf9a723 systemd/kmod: remove fork (MR 5572)
Patches were merged upstream:
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/71426

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:20 -08:00
Clayton Craft 32d8026d7a systemd/pmos-base-systemd: disable multipathd by default (MR 5556)
This causes systemd to get stuck restarting multipathd forever on boot if it runs on systems with no multipath hardware. When this happens, the system never finishes booting.

It doesn't seem like any UIs/devices enable the multipathd service by default in openrc, and that we just depend on multipath-tools for kpartx and stuff (and not the daemon that comes with it)

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:20 -08:00
Clayton Craft 9dc94f45db systemd/pipewire: add install scripts for systemd presets (MR 5551)
fixes #3153
2024-11-22 16:35:19 -08:00
Clayton Craft b82b073b42 systemd/kmod: add fixes for usr merge (MR 5554)
This patch was submitted upstream to Alpine aports in
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/71426

[ci:skip-vercheck]
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:19 -08:00
Clayton Craft feca310546 systemd/kmod: fork from Alpine to support usr merge (MR 5554)
actual patch to support usr merge will come later
2024-11-22 16:35:19 -08:00
Clayton Craft 081d404e0e systemd/multipath-tools: upgrade to 0.10.0
rebased on aports
2024-11-22 16:35:19 -08:00
Caleb Connolly 76fa77a445 systemd: upgrade gnome shell and mutter mobile to 46 (MR 5363)
Upgrade to 46-mobile-0

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:19 -08:00
Clayton Craft 9ad54e8984 systemd: gnome-settings-daemon-mobile: new aport (MR 5363)
mobile shell has a fork of GSD which hard depends on systemd.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:19 -08:00
jane400 01f7cc76e9 systemd/gnome-settings-daemon: add systemd subpkg (MR 5377)
also remove the elogind specific patch to use systemd for brightness
changes

Co-authored-by: Clayton Craft <clayton@craftyguy.net>

Note: the user services that the -systemd split pkg installs are not
enabled by default using systemd presets. None of them have 'Install'
sections, they appear to be mostly/all dbus activated instead.

[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:19 -08:00
jane400andClayton Craft 4d8c455ed4 systemd/gnome-session: add systemd subpkg (MR 5377)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
2024-11-22 16:35:18 -08:00
jane400 82f2745ed2 systemd/gdm: add systemd subpkg (MR 5377) 2024-11-22 16:35:18 -08:00
jane400andClayton Craft 570bdd6217 systemd/gnome-keyring: add systemd subpkg (MR 5377)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
2024-11-22 16:35:18 -08:00
jane400andClayton Craft 03994f14c4 systemd/networkmanager: add systemd subpkg (MR 5377)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
2024-11-22 16:35:18 -08:00
jane400 06fd73d76f systemd/postmarketos-base-systemd: add base presets (MR 5377)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>

- Removed systemd-timesyncd, already enabled by a preset installed by
  the systemd package
- Removed default-disable.preset, it's already provided by the systemd
  package
- Removed user services from system preset
2024-11-22 16:35:18 -08:00
Clayton Craftandjane400 a64e929b32 systemd/systemd-services: use systemd preset macro to configure services (MR 5377)
also remove the rc_update workaround

Co-authored-by: jane400 <pmos@j4ne.de>
2024-11-22 16:35:18 -08:00
jane400 43c79e3517 systemd/polkit: add comment about why systemd preset isn't used (MR 5377)
Note: I/Clayton bumped the pkgrel because I don't want to
ci:skip-vercheck for *all* packages in the branch just to so that this
one doesn't fail.
2024-11-22 16:35:18 -08:00
jane400andClayton Craft 56eb029e4b systemd/systemd: configure presets for systemd services (MR 5377)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>
2024-11-22 16:35:17 -08:00
Clayton Craftandjane400 4aabf7bdc5 systemd/systemd: add macros for package install scripts (MR 5377)
These macros are based off of the upstream systemd RPM macros, but it
doesn't implement all of the macro functionality upstream. Initially
they will be used in the install scripts for apkbuilds that provide
systemd service unit files.

For example, a `$pkgname-systemd.post-install` script might have:
    . /usr/lib/systemd/systemd-apk-macros.sh
    systemd_service-post_install system sshd

And a `$pkgname-systemd.pre-deinstall` script might have:
    . /usr/lib/systemd/systemd-apk-macros.sh
    systemd_service_pre_deinstall user pipewire

One day maybe these could be upstreamed to systemd to provide some
apk/abuild compatible macros.

Co-authored-by: jane400 <pmos@j4ne.de>
2024-11-22 16:35:17 -08:00
jane400 c0fa948fca systemd/alpine-base: remove stub rc-update (MR 5377) 2024-11-22 16:35:17 -08:00
jane400 2880787da5 systemd/dbus: don't generate a /etc/machine-id with the post-install trigger (MR 5377)
Generating the machine-id is handled by systemd's first boot mechanism,
so that was removed from the dbus post-install script
2024-11-22 16:35:17 -08:00
Bart Ribbers 3a25b087f2 extra-repos/systemd/drkonqi: fork from Alpine (MR 5470) 2024-11-22 16:35:17 -08:00
Bart Ribbers 85c33f310d extra-repos/systemd/kglobalacceld: fork from Alpine (MR 5470)
It installs /usr/lib/systemd/user/plasma-kglobalaccel.service
2024-11-22 16:35:17 -08:00
Bart Ribbers 7e53abd424 extra-repos/systemd/plasma*: upgrade to 6.1.4 (MR 5470) 2024-11-22 16:35:17 -08:00
Clayton Craft 73c9bfb4e9 systemd/systemd-services: add plasma-mobile (MR 5502)
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:16 -08:00
jane400 beea09f4d0 systemd/systemd-services: add eg25-manager.service (MR 5346) 2024-11-22 16:35:16 -08:00
Clayton Craft d766586b91 systemd/systemd: fix typo in pre-install (MR 5468)
The space here caused this install script to attempt to create a group
named '2' and add a user named 'sgx' to it.

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:16 -08:00
Caleb Connolly e86485ee98 systemd: apk-tools: update /usr merge patches (MR 5353)
Update to the reworked apk-tools /usr merge support.

Upstream MR: https://gitlab.alpinelinux.org/alpine/apk-tools/-/merge_requests/155

Fixes: #2988

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:16 -08:00
Clayton Craft 9b7b982a6a systemd/plasma*: disable armv7 (MR 5366)
Fails in CI, and (according to Bart) might be disabled on this arch in
upstream aports later.
2024-11-22 16:35:16 -08:00
Bart Ribbers a76e4a6b7e extra-repos/systemd/plasma*: upgrade to 6.1.3 (MR 5366) 2024-11-22 16:35:16 -08:00
jane400andClayton Craft ced9a961e4 systemd/networkmanager: remove some alpine-isms (MR 5375)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:16 -08:00
jane400 19c9192cfd systemd/systemd: move user/group creation to pre-install (MR 5375) 2024-11-22 16:35:15 -08:00
Caleb Connolly f86b2fed58 systemd/postmarketos-base-systemd: depend on systemd-timsyncd (MR 5339)
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:15 -08:00
Clayton Craft 317a81fe75 systemd/pipewire: upgrade to 1.2.0 (MR 5361)
[ci:skip-vercheck]
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:15 -08:00
Clayton Craft ac8ed6bbb3 systemd/networkmanager: upgrade to 1.48.2 (MR 5361) 2024-11-22 16:35:15 -08:00
Clayton Craft 9dae4e2738 systemd/mutter: upgrade to 46.2 (MR 5361)
updated pkgver to follow format used elsewhere... "999$_pkgver"
2024-11-22 16:35:15 -08:00
Clayton Craft 5f35652d43 systemd/gnome-settings-daemon: upgrade to 46.0 (MR 5361) 2024-11-22 16:35:15 -08:00
Clayton Craft 53e7249c0a systemd/gdm: upgrade to 46.2 (MR 5361) 2024-11-22 16:35:15 -08:00
Clayton Craft b35c8d8042 systemd/gnome-shell: upgrade to 46.2 (MR 5361) 2024-11-22 16:35:14 -08:00
Clayton Craft fad1833183 systemd/gnome-keyring: upgrade to 46.1 (MR 5361)
FYI the autoreconf thing was sent to aports since this is fixing an
upstream packaging bug:

https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/69432
2024-11-22 16:35:14 -08:00
Clayton Craft e35c62f128 systemd/systemd-services: fix pkgname for gnome-clocks service 2024-11-22 16:35:14 -08:00
Clayton Craft b62a35e9f1 systemd/networkmanager: add -systemd subpkg for service
Missed this earlier when moving -service --> -systemd

Also updates the pkgver to be more in line with how we handle pkgver
elsewhere in this repo
2024-11-22 16:35:14 -08:00
David Heidelberg 7c89f3fe94 systemd/systemd-services: add missing bluez services (MR 5200)
Signed-off-by: David Heidelberg <david@ixit.cz>

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:14 -08:00
Clayton Craft 4cd9c8d7b9 systemd/systemd-services: adjust subpackages to use -systemd name (MR 5315) 2024-11-22 16:35:14 -08:00
Clayton Craft 2cd48cdc53 systemd/upower: rename service subpkg to systemd (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft e9b342bf89 systemd/polkit: rename service subpkg to systemd (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft a3a1464e6f systemd/pmos-base-systemd: depend on newer linux-pam pkg (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft 3c2c7e8bc9 systemd/linux-pam: rename service subpkg to systemd (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft 46ce46d8cb systemd/gdm: rename service subpkg to systemd (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft 494337eea7 systemd/dbus: rename service subpkg to systemd (MR 5315) 2024-11-22 16:35:13 -08:00
Clayton Craft 5dec882c69 systemd/abuild: add patch to warn on install to /bin or /lib 2024-11-22 16:35:13 -08:00
Clayton Craft 741a6e35a3 systemd/abuild: update -systemd split func patch
Build abuild from upstream source and only apply the systemd split func
patch. The patch was also adjusted to use -systemd instead of -service
for subpackages
2024-11-22 16:35:12 -08:00
jane400 e503cac7e8 systemd: postmarketos-base-systemd: manually include kmod-libs in initramfs for systemd-udevd (MR 5340)
As systemd v256 switched to dlopen for a bunch of dependencies
(specified in a custom format), this is no longer auto-detected
by either abuild or boot-deploy. So we include kmod manually for udevd
to work correctly.

This fixes the "no screen" issue on pine64-pinephone.
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:12 -08:00
jane400 16c74d321f systemd/postmarketos-base-systemd: fix replaces failure (MR 5335)
the systemd v256 upgrade also moved some files to their
respecitive subpackages.

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:12 -08:00
Oliver Smith dbd1cb113b systemd/plasma-workspace: workaround for build race condition (MR 5327)
Explicitly generate qwayland-plasma-shell.h first, in order to fix:
  In file included from /usr/include/PlasmaQuick/PlasmaQuick/PlasmaShellWaylandIntegration:1,
                   from /home/pmos/build/src/plasma-workspace-6.1.2/shell/panelconfigview.cpp:35:
  /usr/include/PlasmaQuick/plasmaquick/plasmashellwaylandintegration.h:14:10: fatal error: qwayland-plasma-shell.h: No such file or directory
     14 | #include "qwayland-plasma-shell.h"
        |          ^~~~~~~~~~~~~~~~~~~~~~~~~
  compilation terminated.

Related: https://invent.kde.org/plasma/plasma-workspace/-/issues/132
[ci:skip-vercheck]
[ci:skip-build] times out after >3hr in gitlab CI
2024-11-22 16:35:12 -08:00
Bart Ribbers fee174f07b community/plasma: upgrade to 6.1.2 (MR 5327)
[ci:skip-vercheck]
Rebased-By: Oliver Smith <ollieparanoid@postmarketos.org>
2024-11-22 16:35:12 -08:00
Clayton Craft ee73b4ada3 systemd/kwin: include patch in repo
Apparently the patch url isn't stable(?) upstream, the checksum changed.
Since this is a simple 1 line patch, let's just include it in pmaports

This also changes kwin to use the more 'standard' pkgver used in other
packages forked for systemd support
2024-11-22 16:35:12 -08:00
jane400 6e3994d964 systemd: upgrade to 256 and add me as co-maintainer (MR 5093)
The patches were put into the gitlab.com/postmarketos/systemd repo
and updated for stable-v256.

This also enables man pages, systemd-localed and localization support
via the compile flags.

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:12 -08:00
Clayton Craft 7c82e8ceb9 systemd/systemd-services: drop pulseaudio (MR 5142)
PA is started automatically by its "autospawn" config thing, and it
works pretty well... if it crashes then it's automatically restarted if
needed, etc.

The included service/socket unit files never really worked,
PA started from systemd would always race with (and often to) PA autospawn.

The subpkg here also resulted in a packaging bug where both
pulseaudio-service and pw-pulse-service were installed at the same time,
because the `install_if` listed `pulseaudio`, and `pw-pulse` also
provides `pulseaudio`. The two unit things conflict with each other.

I did some initial investigation, and getting systemd to manage PA
seemed like too much work especially since autospawn is probably good
enough and we hope to move to pw audio later.

[ci:skip-vercheck]
2024-11-22 16:35:11 -08:00
Clayton Craft c0c24a2792 systemd/systemd-services: add wireplumber (MR 5142) 2024-11-22 16:35:11 -08:00
Clayton Craft acd279f214 systemd: fork pipewire to build w/ systemd support (MR 5142)
Unfortunately there are some code paths that are required to support
socket activation, and they are only enabled at build time with
-Dsystemd=enabled. On the bright side, service/socket unit files are
included...

Also note that I disabled test on armv7 since they fail in our CI using
qemu on x86_64. They pass in Alpine on native armv7.
2024-11-22 16:35:11 -08:00
Caleb Connolly cfdf2abdcd systemd: add udevd symlink (MR 5218)
symlink systemd-udevd to /usr/bin/udevd for compatibility with eudev
(initramfs).

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:11 -08:00
jane400 83a5fec3c0 systemd/systemd: don't force disable everything with presets (MR 5207)
This changes it into a default disable.

`disable *` selects all units and hence overrides all previous presets.
Just using `disable` just changes the default unit enablement policy.
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:11 -08:00
Clayton Craft 94f993c051 systemd/systemd-services: Add geoclue, gnome-clocks, iwd, mpris-proxy, mmsd (MR 5204)
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:11 -08:00
Clayton Craft 2fba34aaad systemd/gnome-session: upgrade to 46 (MR 5148)
fixes #2855
2024-11-22 16:35:11 -08:00
Dylan Van Assche d2302939c8 systemd/iio-sensor-proxy: allow AF_QIPCRTR (MR 5190)
libssc requires QRTR protocol, allow it in systemd lockdown.

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:10 -08:00
Clayton Craft 9f2da4555b systemd/gnome-shell-mobile: rebase on latest master changes
See:
 - aaa7d267 temp/gnome-shell-mobile: rename extensions app to add "mobile" (MR 5176)
 - 5e865cde temp/gnome-shell-mobile: sync with upstream APKBUILD (MR 5176)
2024-11-22 16:35:10 -08:00
Clayton Craft f6a9625c50 systemd/systemd-services: fix rtkit subpackage name (MR 5150)
For the `install_if` to work correctly, the subpackage should be named
after the main package that provides the app... in this case it's called
"rtkit"

[ci:skip-build] already built successfully in CI
2024-11-22 16:35:10 -08:00
Clayton Craft c1bdd83a2a systemd/gnome-shell: actually build with systemd support (MR 5147)
This was a total blunder by earlier me...

fixes !5115
2024-11-22 16:35:10 -08:00
Clayton Craft e58ab9e069 systemd/mutter,gnome-shell: disable crossdirect (MR 5115)
Workaround since building for armv7 on x86_64 fails, see
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119

[ci:skip-vercheck]
[ci:skip-build] already built successfully in CI
2024-11-22 16:35:10 -08:00
Clayton Craft 403b00d9b6 systemd/gnome-shell: fork to enable systemd support (MR 5115)
fixes #2767

[ci:skip-vercheck]
2024-11-22 16:35:10 -08:00
Clayton Craft 1304ad52da systemd/mutter: fork to enable systemd support (MR 5115) 2024-11-22 16:35:10 -08:00
Clayton Craft f13e67edbf systemd/gnome-desktop: fork to enable systemd support (MR 5115) 2024-11-22 16:35:09 -08:00
Clayton Craft ae0964640c systemd: use a more general install_if for x11 subpkg (MR 5118)
[ci:skip-build] already built successfully in CI

xorg-server-common is a shared dep between xorg-server and xwayland, and
this tmpfile config is required for both to work. Without this tmpfile
config, Xwayland may fail to start. In the case of GNOME, this is a
fatal event.
2024-11-22 16:35:09 -08:00
Caleb Connolly c82fdc6198 systemd/systemd-services: dconf: fix path (MR 5094)
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:09 -08:00
Caleb Connolly a72f6f642d systemd: linux-pam: upgrade to 1.6.0
following Alpine

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:09 -08:00
Bart Ribbers 1b3bec9615 extra-repos/systemd/kde*: upgrade to latest versions (MR 5068)
[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:09 -08:00
Clayton Craft fd1c8a5ac5 extra-repos/systemd: add kbd dependency (MR 5074)
This is required by systemd-vconsole-setup, which is currently
configured to run on boot (without kbd/loadkeys, the service crashes.)

[ci:skip-build]: already built successfully in CI
2024-11-22 16:35:09 -08:00
Oliver Smith 9ba18cf024 (not for master) CI: hardcode get_upstream_branch (MR 5070)
Set it to master_staging_systemd, and bypass the usual logic of looking
into pmaports.cfg and channels.cfg (of master branch!). This avoids
adding it to channels.cfg of the master branch.
2024-11-22 16:35:09 -08:00
Oliver Smith 0eae53421c (not for master): CI: disable armhf, riscv64, x86 (MR 5070)
The staging repository isn't being built for these.
2024-11-22 16:35:08 -08:00
Oliver Smith f1a0172965 systemd: fix "INSERT-REASON-HERE" comments (MR 5070) 2024-11-22 16:35:08 -08:00
Oliver Smith 86dfb69041 systemd/systemd-services: make shellcheck happy (MR 5070)
Fix for:
  In systemd-services.trigger line 14:
      systemctl $cmd $service
                ^--^ SC2086 (info): Double quote to prevent globbing and word splitting.
                     ^------^ SC2086 (info): Double quote to prevent globbing and word splitting.
2024-11-22 16:35:08 -08:00
Oliver Smith 1ceaf81bf7 systemd: remove various unreferenced files (MR 5070)
Remove OpenRC specific files that were removed for the systemd-specific
forks.
2024-11-22 16:35:08 -08:00
Oliver Smith 574f46c9c2 systemd/mutter-mobile: fix provides= (MR 5070) 2024-11-22 16:35:08 -08:00
Oliver Smith 1b1323b3df systemd/gnome-shell-mobile: fix provides= (MR 5070)
Should be =$pkgver-r$pkgrel instead of =$_pkgver-r$pkgrel. Otherwise CI
fails, and it is right, we do want to provide the very high version so
we don't install the regular package by accident if the regular package
gets upgraded before this forked version.
2024-11-22 16:35:08 -08:00
Oliver Smith a1f39144cf CI: test_kernel: skip linux-pam (MR 5070)
The linux-pam package is not a linux kernel :)
2024-11-22 16:35:07 -08:00
Oliver Smith ab6e10e9c1 CI: directory-structure: add extra-repos/systemd (MR 5070) 2024-11-22 16:35:07 -08:00
Oliver Smith ecff103919 editorconfig: add networkmanager.rules style (MR 5070)
This is forked from Alpine. Keep the style to not increase the diff.
2024-11-22 16:35:07 -08:00
Bart Ribbers f13587700a extra-repos/systemd/kjournald: new aport 2024-11-22 16:35:07 -08:00
Bart Ribbers 09f1412184 extra-repos/systemd/plasma*: add initial systemd Plasma packages 2024-11-22 16:35:07 -08:00
Oliver Smith 0e1c9b3782 extra-repos/systemd/: move from systemd/
Let's put everything systemd related in an extra-repos directory, so it
is clear that the packages from here will end up in a separate, optional
binary package repository.
2024-11-22 16:35:07 -08:00
Oliver Smith efe48d3f32 systemd/xorg-server: set !check 2024-11-22 16:35:06 -08:00
Oliver Smith f6c061d59c systemd/gnome-shell-mobile: drop caribou dep
Remove it, like we did with temp/gnome-shell-mobile in pmaports master.
2024-11-22 16:35:06 -08:00
Sam Day e823767802 systemd-services: add phosh.service (MR 4904) 2024-11-22 16:35:06 -08:00
Oliver Smith 08630e032a systemd/postmarketos-base-systemd: depend on systemd-services
Add the dependency, so the systemd-services package gets built as part
of the bootstrap. Otherwise no service files will be installed, as the
individual service files get pulled in via install_if, and that only
works if a binary package is available.
2024-11-22 16:35:06 -08:00
Alexander Martinz f4e4159f47 systemd/systemd-services: add rtkit-daemon.service
Taken upstream from https://github.com/heftig/rtkit/blob/master/rtkit-daemon.service.in

Change-Id: I0ae6e1a70b961bafd52702a412a2cdcc12bb544a
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
2024-11-22 16:35:06 -08:00
Caleb Connolly 297337aa8f systemd/gnome-shell-mobile: add uclamp hack
This is a hack to configure utilisation clamping for gnome-shell. It
works by telling the scheduler that the gnome-shell process should run
with a much higher performance level. This improve animation performance
and general UI smoothness. A proper solution to have gnome-shell manage
this itself is in the works upstream.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:06 -08:00
Caleb Connolly 9b73923e1f CHECK: systemd/xorg-server: new aport
Clayton says: this integrates with systemd (logind specificially)

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:06 -08:00
Caleb Connolly d33ae7335a systemd/upower: new aport
Integrates with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:06 -08:00
Caleb Connolly bfb269a290 systemd/systemd-services: new aport
A collection of systemd services.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:05 -08:00
4cc571bf45 systemd/systemd: new aport
Co-Authored-by: jane400 <pmos@j4ne.de>
Co-Authored-by: Caleb Connolly <caleb@postmarketos.org>
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:05 -08:00
Caleb Connolly 7330ea6161 systemd/postmarketos-base-systemd: new aport
postmarketOS base package with systemd stuff.
2024-11-22 16:35:05 -08:00
Caleb Connolly 4bdff40319 systemd/polkit: new aport
Integrates tightly with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:05 -08:00
Caleb Connolly 1e5fd157b1 systemd/networkmanager: new aport
Clayton says: integrates with systemd (logind)

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:05 -08:00
Caleb Connolly 46a5c335e7 systemd/mutter-mobile: new aport
Integrates tightly with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:05 -08:00
Caleb Connolly d6afb0eccb systemd/multipath-tools: new aport
Builds against systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly c1748dd9ff systemd/linux-pam-systemd: new aport
integrates with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly 0886b2e713 systemd/gnome-shell-mobile: new aport
Integrates tightly with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly 2c84a6dc19 systemd/gnome-settings-daemon: new aport
Integrates tightly with systemd

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly 6942bfd46b systemd/gnome-session: new aport
Integrates tightly with systemd

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly a320b38502 systemd/gnome-keyring: new aport
Integrates tightly with systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly fd09deacdd systemd/gdm: new aport
gdm integrates tightly with systemd, fork from aports to rebuild against
systemd.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:04 -08:00
Caleb Connolly 82f2ea2fb5 systemd/dbus: new aport
Fork dbus and rebuild it with systemd support.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:03 -08:00
Caleb Connolly 02e9fd3c70 systemd/apk-tools: new aport
For systemd (and our own sanity) we need to do the /usr merge. This fork
of apk-tools includes the logic to support alpine packages like tar
which install the main tar binary to /bin and then a symlink to
/usr/bin/...

We should find a way to implement this in upstream apk-tools, and
continue pushing Alpine to also adopt the merged /usr model.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:03 -08:00
Caleb Connolly 57ff170502 systemd/alpine-base: new aport
alpine-base hard depends on openrc... Fork it to drop this.

We should eventually upstream this by having alpine-base depend on a
virtual pid1 or init-system subpackage which openrc and systemd can both
provide.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:03 -08:00
Caleb Connolly 4969665310 systemd/accountsservice: new aport
Forked from alpine to rebuild with systemd support.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:03 -08:00
Caleb Connolly 7bfd4707df systemd/abuild: new aport
Fork of abuild with a default_service implementation for generating
-service subpackages.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-11-22 16:35:03 -08:00
Oliver Smith b62b169ab3 pmaports.cfg: add repo:systemd section 2024-11-22 16:34:54 -08:00
199 changed files with 8421 additions and 86 deletions

No files matched your search

+2 -28
View File
@@ -56,34 +56,8 @@ def get_upstream_branch():
:returns: branch name, e.g. "v20.05" """
# Prefer gitlab CI target branch name if it's set (i.e. running in gitlab CI)
if target_branch := os.environ.get("CI_MERGE_REQUEST_TARGET_BRANCH_NAME"):
return target_branch
global cache
if "upstream_branch" in cache:
return cache["upstream_branch"]
# Get channel (e.g. "stable") from pmaports.cfg
# https://postmarketos.org/pmaports.cfg
pmaports_dir = get_pmaports_dir()
pmaports_cfg = configparser.ConfigParser()
pmaports_cfg.read(f"{pmaports_dir}/pmaports.cfg")
channel = pmaports_cfg["pmaports"]["channel"]
# Get branch_pmaports (e.g. "v20.05") from channels.cfg
# https://postmarketos.org/channels.cfg
channels_cfg_str = run_git(["show", "upstream/master:channels.cfg"])
channels_cfg = configparser.ConfigParser()
channels_cfg.read_string(channels_cfg_str)
assert channel in channels_cfg, \
f"Channel '{channel}' from pmaports.cfg in your branch is unknown." \
" This appears to be an old branch, consider recreating your change" \
" on top of master."
ret = channels_cfg[channel]["branch_pmaports"]
cache["upstream_branch"] = ret
return ret
# HACK for master_staging_systemd branch
return "master_staging_systemd"
def get_changed_files(removed=True):
@@ -10,6 +10,7 @@ expected_directories = [
"device/community",
"device/main",
"device/testing",
"extra-repos/systemd",
"main",
"modem",
"non-free",
+3
View File
@@ -23,6 +23,9 @@ def test_aports_kernel():
apkbuild = pmb.parse.apkbuild(path)
aport_name = os.path.basename(os.path.dirname(path))
if aport_name == "linux-pam":
continue # This package isn't a linux kernel!
if "pmb:cross-native" not in apkbuild["options"]:
raise RuntimeError(f"{aport_name}: \"pmb:cross-native\" missing in"
" options= line")
+5
View File
@@ -12,3 +12,8 @@ indent_style = tab
end_of_line = lf
trim_trailing_whitespace = true
insert_final_newline = true
# Forked from Alpine
[extra-repos/systemd/networkmanager/networkmanager.rules]
indent_style = space
indent_size = 4
-15
View File
@@ -148,11 +148,6 @@ build-x86_64:
script:
- .ci/build-x86_64.sh
build-x86:
extends: .build
script:
- .ci/build-x86.sh
build-aarch64:
extends: .build
script:
@@ -163,16 +158,6 @@ build-armv7:
script:
- .ci/build-armv7.sh
build-armhf:
extends: .build
script:
- .ci/build-armhf.sh
build-riscv64:
extends: .build
script:
- .ci/build-riscv64.sh
auto-update:
stage: autoupdate
rules:
@@ -0,0 +1,66 @@
From 0bda547b2d7694ab40e0237ea6ae8a25a237ee50 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pablo=20Correa=20G=C3=B3mez?= <ablocorrea@hotmail.com>
Date: Thu, 11 Apr 2024 13:57:26 +0200
Subject: [PATCH 1/2] abuild: add systemd splitfunc
Co-authored-by: Caleb Connolly <caleb@postmarketos.org>
---
abuild.in | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/abuild.in b/abuild.in
index 36317d6..74e47f1 100644
--- a/abuild.in
+++ b/abuild.in
@@ -815,6 +815,11 @@ postcheck() {
&& ! is_openrc_pkg "$name"; then
warning "Found OpenRC directory (/etc/conf.d or /etc/init.d) but name doesn't end with -openrc"
fi
+ # look for /usr/lib/systemd
+ if [ -e "$dir"/usr/lib/systemd ] \
+ && ! is_systemd_pkg "$name"; then
+ warning "Found systemd directory (/usr/lib/systemd) but it's not in a systemd package"
+ fi
# look for /usr/share/doc
if [ -e "$dir"/usr/share/doc ] \
&& ! is_doc_pkg "$name"; then
@@ -1371,6 +1376,11 @@ is_openrc_pkg() {
test "${1%-openrc}" != "$1"
}
+# returns true if this is the -systemd package
+is_systemd_pkg() {
+ test "${1%-systemd}" != "$1" || test "systemd" == "$1"
+}
+
# returns true if this is the -bash-completion package
is_bashcomp_pkg() {
test "${1%-bash-completion}" != "$1"
@@ -2143,6 +2153,24 @@ openrc() {
default_openrc
}
+# predefined splitfunc systemd
+default_systemd() {
+ depends="$depends_systemd"
+ pkgdesc="$pkgdesc (systemd files)"
+ install_if="systemd ${subpkgname%-systemd}=$pkgver-r$pkgrel"
+
+ if [ -d lib/systemd ]; then
+ error "Detected /lib/systemd dir, should be installed to /usr/lib/systemd"
+ return 1
+ fi
+
+ amove usr/lib/systemd
+}
+
+systemd() {
+ default_systemd
+}
+
default_devhelp() {
depends=""
pkgdesc="$pkgname - devhelp files"
--
2.45.2
@@ -0,0 +1,28 @@
From d27596cd67928e4795dc99dbc139b231354c3381 Mon Sep 17 00:00:00 2001
From: Clayton Craft <clayton@craftyguy.net>
Date: Fri, 5 Jul 2024 10:38:50 -0700
Subject: [PATCH 2/2] abuild: add warning in -systemd split func about
non-usr-merged birs
---
abuild.in | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/abuild.in b/abuild.in
index 74e47f1..e5f9be0 100644
--- a/abuild.in
+++ b/abuild.in
@@ -2165,6 +2165,10 @@ default_systemd() {
fi
amove usr/lib/systemd
+
+ if [ -d bin ] || [ -d lib ] || [ -d usr/sbin ]; then
+ warning "Files should be installed to /usr/bin or /usr/lib, not /bin, /lib, or /usr/sbin"
+ fi
}
systemd() {
--
2.45.2
+107
View File
@@ -0,0 +1,107 @@
# Forked from Alpine to add systemd-service support
pkgname=abuild
pkgver=99993.12.0
_pkgver=3.12.0
pkgrel=3
pkgdesc="Script to build Alpine Packages"
url="https://git.alpinelinux.org/cgit/abuild/"
arch="all"
license="GPL-2.0-only"
depends="fakeroot scanelf openssl>3 apk-tools>=2.0.7-r1 libc-utils
attr tar pkgconf patch lzip curl libcap-getcap"
makedepends="openssl-dev>3 zlib-dev pkgconfig scdoc"
checkdepends="kyua git"
install="$pkgname.pre-install $pkgname.pre-upgrade"
subpackages="
apkbuild-cpan:cpan:noarch
apkbuild-gem-resolver:gems:noarch
apkbuild-pypi:pypi:noarch
abuild-rootbld:_rootbld:noarch
$pkgname-doc
"
options="suid !check" # tests are SLOW in qemu
pkggroups="abuild"
source="
https://gitlab.alpinelinux.org/alpine/abuild/-/archive/$_pkgver/abuild-$_pkgver.tar.gz
0001-abuild-add-systemd-splitfunc.patch
0002-abuild-add-warning-in-systemd-split-func-about-non-u.patch
"
builddir="$srcdir/$pkgname-$_pkgver"
build() {
make VERSION="$_pkgver-r$pkgrel"
}
check() {
make check
}
package() {
make install VERSION="$_pkgver-r$pkgrel" DESTDIR="$pkgdir"
install -m 644 abuild.conf "$pkgdir"/etc/abuild.conf
case "$CARCH" in
x86*|ppc64le)
# binutils only supports it here
cat >>"$pkgdir"/usr/share/abuild/default.conf <<-EOF
# binutils ld.bfd supports this on this architecture; default to it
export RUSTFLAGS="\$RUSTFLAGS -Clink-arg=-Wl,-z,pack-relative-relocs"
export LDFLAGS="\$LDFLAGS -Wl,-z,pack-relative-relocs"
EOF
esac
case "$CARCH" in
x86_64)
# https://lists.alpinelinux.org/~alpine/devel/%3C1628515011.zujvcn248v.none%40localhost%3E
# note that this is x86-exclusive. on other architectures, this is pretty much always bad
# https://github.com/rust-lang/rust/pull/106380
cat >>"$pkgdir"/usr/share/abuild/default.conf <<-EOF
# -fno-plt has very slight improvements to general code size and speed on x86-only,
# for the common system dynamic linking case
export CFLAGS="\$CFLAGS -fno-plt"
export CXXFLAGS="\$CXXFLAGS -fno-plt"
EOF
;;
esac
install -d -m 775 -g abuild "$pkgdir"/var/cache/distfiles
}
cpan() {
pkgdesc="Script to generate perl APKBUILD from CPAN"
depends="perl perl-libwww perl-json perl-module-build perl-module-build-tiny
perl-lwp-protocol-https"
amove usr/bin/apkbuild-cpan
}
gems() {
pkgdesc="APKBUILD dependency resolver for RubyGems"
depends="ruby ruby-augeas"
amove usr/bin/apkbuild-gem-resolver
}
pypi() {
pkgdesc="Script to generate python3 APKBUILD from PYPI"
depends="perl perl-libwww perl-json perl-module-build-tiny perl-lwp-protocol-https
perl-ipc-system-simple"
amove usr/bin/apkbuild-pypi
}
_rootbld() {
pkgdesc="Build packages in chroot"
depends="abuild bubblewrap cmd:envsubst git"
mkdir -p "$subpkgdir"
}
sha512sums="
00fac67aa96a83f33406dde60bd9526bfa5fdff690b84dbe867b6ed197f147b2afafcdfbda900c005e00a64a42bcb98ca425ffc8bf2158b9540cbb67d935577d abuild-3.12.0.tar.gz
52cc5857b3c93bd4595de1d06c3c600b88871c68f7a1ea51e10d720ddd9c8fb7f0f63cd2f4fe280c0d9adaf607de8b858f4add3e46b1a5a28cc6c711359f6c60 0001-abuild-add-systemd-splitfunc.patch
3782341dac814ecbcb7d2b4242d85f03ca2e4bf9eeb3b1e9524b2c434b05c864f5a4b5b8abc4031085e7e943e90780fe07b1e99d4cfadf0695340ad321647cac 0002-abuild-add-warning-in-systemd-split-func-about-non-u.patch
"
@@ -0,0 +1,5 @@
#!/bin/sh
addgroup -S abuild 2>/dev/null
exit 0
+1
View File
@@ -0,0 +1 @@
abuild.pre-install
@@ -0,0 +1,59 @@
# Forked from Alpine to build with systemd support
# this provides the ability to activate user sessions
# from dbus by invoking logind
pkgname=accountsservice
pkgver=99923.13.9
_pkgver=23.13.9
pkgrel=0
pkgdesc="D-Bus interface for user account query and manipulation"
url="https://www.freedesktop.org/software/accountsservice/"
arch="all"
license="GPL-3.0-or-later"
depends_dev="gobject-introspection-dev"
makedepends="
$depends_dev
dbus-dev
systemd-dev
glib-dev
meson
polkit-dev
vala
"
subpackages="$pkgname-dev $pkgname-lang lib$pkgname:libs"
source="https://www.freedesktop.org/software/accountsservice/accountsservice-$_pkgver.tar.xz
musl-fgetspent_r.patch
musl-wtmp.patch
opt-tests.patch
"
# mocklibc fails to build with implicits
options="!check"
builddir="$srcdir/accountsservice-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Dsystemdsystemunitdir=/usr/lib/systemd/system \
-Dintrospection=true \
-Ddocbook=false \
-Dgtk_doc=false \
-Dadmin_group=wheel \
-Dtests="$(want_check && echo true || echo false)" \
. output
meson compile -C output
}
check() {
meson test --print-errorlogs --no-rebuild -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
c6eb543ce2e07b61bbdfa454e388949bc688517be0536b14f30c66383ed105b15d3fab8b6c62b1eaa08f67d9bdc29b928729d9f7c704f47de4decf0de8e12f89 accountsservice-23.13.9.tar.xz
469392beca8f5941eafaa193c4fcb0472770ee4183ce520416a1b5d6abafe0e201990eb74d06bfbd9e20af08e55aff5f0031f267083f6c6879f0fe4e5028103c musl-fgetspent_r.patch
6d81caed730473d5c94d575c580a236b4267b374bf50588860922a7ecbeef0b2a1d50124fa3ae195c4f26abe8c3bd6df2aea6d27a0ce23e99acef9fff3eb9652 musl-wtmp.patch
cc5ea18d885ccc5a85f5f4191d3157f3953878af289a9cabc373afea67726042144d66fd9f8d08dac7090fc23037ab98adb4101e8378a16ab2eb04043c88378f opt-tests.patch
"
@@ -0,0 +1,34 @@
diff --git a/src/daemon.c b/src/daemon.c
index 312394a..e7b3c58 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -140,6 +140,28 @@ error_get_type (void)
#define MAX_LOCAL_USERS 50
#endif
+#ifndef __GLIBC__
+ /* Musl libc does not support fgetspent_r(), write own
+ * wrapper
+ */
+static int fgetspent_r(FILE *fp, struct spwd *spbuf, char *buf, size_t buflen, struct spwd **spbufp) {
+ struct spwd *shadow_entry = fgetspent(fp);
+ if(!shadow_entry)
+ return -1;
+ size_t namplen = strlen(shadow_entry->sp_namp);
+ size_t pwdplen = strlen(shadow_entry->sp_pwdp);
+
+ if(namplen + pwdplen + 2 > buflen)
+ return -1;
+
+ *spbufp = memcpy(spbuf, shadow_entry, sizeof(struct spwd));
+ spbuf->sp_namp = strncpy(buf, shadow_entry->sp_namp, namplen + 1);
+ spbuf->sp_pwdp = strncpy(buf + namplen + 1, shadow_entry->sp_pwdp, pwdplen + 1);
+
+ return 0;
+}
+#endif
+
static struct passwd *
entry_generator_fgetpwent (Daemon *daemon,
GHashTable *users,
@@ -0,0 +1,15 @@
the assert expects a working /var/log/wtmp at build time
diff --git a/meson.build b/meson.build
index 4a509e7..f995d28 100644
--- a/meson.build
+++ b/meson.build
@@ -103,8 +103,7 @@ elif cc.has_header_symbol('paths.h', '_PATH_WTMPX')
config_h.set('PATH_WTMP', '_PATH_WTMPX')
else
- path_wtmp = '/var/log/utx.log'
- assert(run_command('test', '-e', path_wtmp, check: false).returncode() == 0, 'Do not know which filename to watch for wtmp changes')
+ path_wtmp = '/var/log/wtmp'
config_h.set_quoted('PATH_WTMP', path_wtmp)
endif
@@ -0,0 +1,24 @@
diff --git a/meson.build b/meson.build
index 4a509e7..5119fab 100644
--- a/meson.build
+++ b/meson.build
@@ -232,7 +232,9 @@ if get_option('gtk_doc')
subdir('doc/libaccountsservice')
endif
-subdir('tests')
+if get_option('tests')
+ subdir('tests')
+endif
configure_file(
output: 'config.h',
diff --git a/meson_options.txt b/meson_options.txt
index b34a0fa..56872c7 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -13,3 +13,4 @@ option('vapi', type: 'boolean', value: true, description : 'Enable Vala bindings
option('docbook', type: 'boolean', value: false, description: 'build documentation (requires xmlto)')
option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
+option('tests', type: 'boolean', value: true, description: 'tests')
+33
View File
@@ -0,0 +1,33 @@
# Forked from Alpine to remove openrc dependency
pkgname=alpine-base
pkgver=9999
pkgrel=1
pkgdesc="Meta package for minimal alpine base"
url="https://alpinelinux.org"
arch="noarch"
license="MIT"
depends="
alpine-baselayout
alpine-release
apk-tools
busybox
busybox-suid
libc-utils
"
# can't include systemd here, as we wan't to upgrade from alpine's base to our systemd-base while building
subpackages="alpine-release:release"
replaces="alpine-baselayout"
options="pmb:strict !check"
package() {
mkdir -p "$pkgdir"
}
release() {
depends="alpine-keys"
pkgdesc="Alpine release data"
mkdir -p "$subpkgdir"
}
+109
View File
@@ -0,0 +1,109 @@
# Forked from Alpine to enable systemd
pkgname=dbus
pkgver=9991.14.10
_pkgver=1.14.10
pkgrel=3
pkgdesc="Freedesktop.org message bus system"
url="https://www.freedesktop.org/Software/dbus"
arch="all"
license="AFL-2.1 OR GPL-2.0-or-later"
depends_dev="util-linux-dev"
makedepends="
$depends_dev
expat-dev
glib-dev
libsm-dev
libx11-dev
meson
systemd-dev
xmlto
libcap-getcap
"
pkggroups="messagebus"
provider_priority=1
install="$pkgname.pre-install"
triggers="$pkgname.trigger=/usr/share/dbus-1/system.d"
options="!check" # Borked in pmbootstrap...
subpackages="
$pkgname-daemon-launch-helper:launchhelper
$pkgname-dev
$pkgname-doc
$pkgname-libs
$pkgname-x11
$pkgname-systemd
"
source="https://dbus.freedesktop.org/releases/dbus/dbus-$_pkgver.tar.xz"
builddir="$srcdir/dbus-$_pkgver"
# secfixes:
# 1.14.4-r0:
# - CVE-2022-42010
# - CVE-2022-42011
# - CVE-2022-42012
# 1.12.18-r0:
# - CVE-2020-12049
# 1.12.16-r0:
# - CVE-2019-12749
build() {
CFLAGS="$CFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--localstatedir=/var \
--sysconfdir=/etc \
--with-system-pid-file=/run/dbus/dbus.pid \
--enable-checks \
--disable-assertions \
--enable-systemd \
--enable-inotify \
--enable-libaudit \
--enable-user-session \
--disable-static
make
}
check() {
make check
}
package() {
depends="$pkgname-libs=$pkgver-r$pkgrel"
make DESTDIR="$pkgdir" install
# can't install tmpfs
rm -r "$pkgdir"/var/run
}
libs() {
pkgdesc="D-BUS access libraries"
depends="systemd-libs"
amove usr/lib/lib*.so.*
}
x11() {
pkgdesc="X11 add-ons for D-BUS"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/bin/dbus-launch
}
launchhelper() {
pkgdesc="DBus SUID launch helper for autospawning"
install_if="$pkgname=$pkgver-r$pkgrel"
amove usr/libexec/dbus-daemon-launch-helper
}
dev() {
default_dev
}
sha512sums="
775b708326059692937acb69d4ce1a89e69878501166655b5d1b1628ac31b50dd53d979d93c84e57f95e90b15e25aa33893e51a7421d3537e9c2f02b1b91bfae dbus-1.14.10.tar.xz
"
@@ -0,0 +1,6 @@
#!/bin/sh
addgroup -S messagebus 2>/dev/null
adduser -S -D -H -h /dev/null -s /sbin/nologin -G messagebus -g messagebus messagebus 2>/dev/null
exit 0
+4
View File
@@ -0,0 +1,4 @@
#!/bin/sh
dbus-send --system --type=method_call --dest=org.freedesktop.DBus / \
org.freedesktop.DBUS.ReloadConfig >/dev/null 2>&1 || :
+76
View File
@@ -0,0 +1,76 @@
# Forked from Alpine to add systemd!
pkgname=drkonqi
pkgver=99996.2.2
_pkgver=6.2.2
pkgrel=0
pkgdesc="The KDE crash handler"
# armhf blocked by extra-cmake-modules
arch="all !armhf"
url="https://kde.org/plasma-desktop/"
license="GPL-2.0-or-later"
depends="
kirigami
kitemmodels
py3-sentry-sdk
"
makedepends="
extra-cmake-modules
kcompletion-dev
kconfigwidgets-dev
kcoreaddons-dev
kcrash-dev
kdeclarative-dev
ki18n-dev
kidletime-dev
kio-dev
kjobwidgets-dev
knotifications-dev
kservice-dev
kstatusnotifieritem-dev
kuserfeedback-dev
kwallet-dev
kwidgetsaddons-dev
py3-chai
qt6-qtbase-dev
samurai
syntax-highlighting-dev
systemd-dev
"
checkdepends="
py3-psutil
py3-pygdbmi
"
case "$pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
subpackages="$pkgname-lang"
_repo_url="https://invent.kde.org/plasma/drkonqi.git"
source="https://download.kde.org/stable/plasma/$_pkgver/drkonqi-$_pkgver.tar.xz"
builddir="$srcdir/$pkgname-$_pkgver"
build() {
cmake -B build -G Ninja \
-DWITH_PYTHON_VENDORING=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_TESTING=ON
cmake --build build
}
check() {
# connectiontest requires a network connection
ctest --test-dir build --output-on-failure -E "(connection|preamble)test"
}
package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
a81031392fde0ed348c599036c62f64652442b1761924137d8909da941e9dbac562816fc083248c262ce9e8ff556cf70cd1177ae49489cbf91d0e0397198dcef drkonqi-6.2.2.tar.xz
"
+79
View File
@@ -0,0 +1,79 @@
# Forked from Alpine to add systemd!
pkgname=gala
pkgver=8.0.3
pkgrel=0
pkgdesc="clutter-based window manager and compositor"
url="https://github.com/elementary/gala"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
cairo
dconf
graphene
gtk4.0
libcanberra
libgee
libhandy1
libxfixes
mutter46
sqlite
systemd-libs
wayland
"
makedepends="
cairo-dev
desktop-file-utils
dbus-dev
glib-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gobject-introspection-dev
graphene-dev
gtk+3.0-dev
gtk4.0-dev
json-glib-dev
lcms2-dev
libcanberra-dev
libei-dev
granite-dev
granite7-dev
libgee-dev
libgudev-dev
libhandy1-dev
libice-dev
libinput-dev
libsm-dev
libx11-dev
libxau-dev
libxcb-dev
libxfixes-dev
meson
mutter46-dev
cmake
wayland-dev
wayland-protocols
xwayland-dev
systemd-dev
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/gala/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$pkgname-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
0a3e5e073279041652f4d9114f7389f3aa190ee2150d12b818f726eaebf46acf53b15281c959f62ae212867075452642265b599a0f5506743e83c6eb43d0a362 gala-8.0.3.tar.gz
"
@@ -0,0 +1,65 @@
TODO: remove me when usr-bin-merge happened
---
From a12b01f4f71d7ca1ed528ea11f99520c10b0d93c Mon Sep 17 00:00:00 2001
From: Newbyte <newbie13xd@gmail.com>
Date: Tue, 14 Mar 2023 19:37:17 +0100
Subject: [PATCH 1/2] DOWNSTREAM: use /bin/touch and /bin/rm instead of /usr/bin/touch and /ust/bin/rm
as that's the path here in Alpine.
---
data/61-gdm.rules.in | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in
index a4f841bdf..481c5b4dd 100644
--- a/data/61-gdm.rules.in
+++ b/data/61-gdm.rules.in
@@ -2,13 +2,13 @@ SUBSYSTEM!="pci", GOTO="gdm_pci_device_end"
ACTION!="bind", ACTION!="add", GOTO="gdm_pci_device_end"
# cirrus
-ATTR{vendor}=="0x1013", ATTR{device}=="0x00b8", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
+ATTR{vendor}=="0x1013", ATTR{device}=="0x00b8", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
# virtio
-ATTR{vendor}=="0x1af4", ATTR{device}=="0x1050", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
+ATTR{vendor}=="0x1af4", ATTR{device}=="0x1050", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
# qxl
-ATTR{vendor}=="0x1b36", ATTR{device}=="0x0100", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
+ATTR{vendor}=="0x1b36", ATTR{device}=="0x0100", RUN+="/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
# vga
-ATTR{vendor}=="0x1234", ATTR{device}=="0x1111", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
+ATTR{vendor}=="0x1234", ATTR{device}=="0x1111", RUN+="/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
# disable Wayland on Hi1710 chipsets
ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", GOTO="gdm_disable_wayland"
@@ -36,7 +36,7 @@ SUBSYSTEM!="drm", GOTO="gdm_nomodeset_end"
# but keep it enabled for simple framebuffer drivers
DRIVERS=="simple-framebuffer", GOTO="gdm_nomodeset_end"
IMPORT{parent}="GDM_MACHINE_HAS_VIRTUAL_GPU"
-ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}!="1", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-hardware-gpu"
+ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}!="1", RUN+="/bin/touch /run/udev/gdm-machine-has-hardware-gpu"
IMPORT{cmdline}="nomodeset", GOTO="gdm_disable_wayland"
LABEL="gdm_nomodeset_end"
@@ -46,7 +46,7 @@ LABEL="gdm_nomodeset_end"
KERNEL!="nvidia", GOTO="gdm_nvidia_end"
SUBSYSTEM!="module", GOTO="gdm_nvidia_end"
ACTION!="add", GOTO="gdm_nvidia_end"
-RUN+="/usr/bin/touch /run/udev/gdm-machine-has-vendor-nvidia-driver"
+RUN+="/bin/touch /run/udev/gdm-machine-has-vendor-nvidia-driver"
# Check if suspend/resume services necessary for working wayland support is available
TEST{0711}!="/usr/bin/nvidia-sleep.sh", GOTO="gdm_disable_wayland"
@@ -79,7 +79,7 @@ SUBSYSTEM!="drm", GOTO="gdm_hybrid_graphics_check_end"
ACTION!="add", GOTO="gdm_hybrid_graphics_check_end"
IMPORT{program}="/bin/sh -c \"echo GDM_NUMBER_OF_GRAPHICS_CARDS=`ls -1d /sys/class/drm/card[0-9] | wc -l`\""
-ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}=="1", RUN+="/usr/bin/rm -f /run/udev/gdm-machine-has-hybrid-graphics"
-ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}!="1", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-hybrid-graphics"
+ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}=="1", RUN+="/bin/rm -f /run/udev/gdm-machine-has-hybrid-graphics"
+ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}!="1", RUN+="/bin/touch /run/udev/gdm-machine-has-hybrid-graphics"
LABEL="gdm_hybrid_graphics_check_end"
# If this is a hybrid graphics laptop with vendor nvidia driver, disable wayland
--
2.39.2
@@ -0,0 +1,44 @@
we use base-* named configs
--
diff --git a/data/pam-openembedded/gdm-autologin.pam b/data/pam-openembedded/gdm-autologin.pam
index a9f4354..3e0708b 100644
--- a/data/pam-openembedded/gdm-autologin.pam
+++ b/data/pam-openembedded/gdm-autologin.pam
@@ -1,5 +1,5 @@
#%PAM-1.0
-auth required pam_permit.so
-account include common-account
-password include common-auth
-session include common-session
+auth required pam_rootok.so
+account include base-account
+password include base-auth
+session include base-session
diff --git a/data/pam-openembedded/gdm-launch-environment.pam b/data/pam-openembedded/gdm-launch-environment.pam
index a9f4354..3e0708b 100644
--- a/data/pam-openembedded/gdm-launch-environment.pam
+++ b/data/pam-openembedded/gdm-launch-environment.pam
@@ -1,5 +1,5 @@
#%PAM-1.0
-auth required pam_permit.so
-account include common-account
-password include common-auth
-session include common-session
+auth required pam_rootok.so
+account include base-account
+password include base-auth
+session include base-session
diff --git a/data/pam-openembedded/gdm-password.pam b/data/pam-openembedded/gdm-password.pam
index 758464d..f4643d1 100644
--- a/data/pam-openembedded/gdm-password.pam
+++ b/data/pam-openembedded/gdm-password.pam
@@ -1,5 +1,5 @@
#%PAM-1.0
-auth include common-auth
-account include common-account
-password include common-password
-session include common-session
+auth include base-auth
+account include base-account
+password include base-password
+session include base-session
+89
View File
@@ -0,0 +1,89 @@
# Forked from Alpine for systemd support
pkgname=gdm
pkgver=99947.0
_pkgver=47.0
pkgrel=0
pkgdesc="GNOME display manager"
url="https://wiki.gnome.org/Projects/GDM"
# blocked by gnome-shell
arch="all !armhf !s390x"
license="GPL-2.0-or-later"
depends="
dbus
gnome-session
gnome-settings-daemon
gnome-shell
gsettings-desktop-schemas
linux-pam>=1.4
xrdb
xwayland
"
makedepends="
accountsservice-dev
dconf
eudev-dev
gettext
glib-dev
gtk+3.0-dev
itstool
json-glib-dev
libcanberra-dev
libgudev-dev
libsm-dev
libx11-dev
libxau-dev
libxcb-dev
libxdmcp-dev
linux-pam-dev
meson
systemd-dev
"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-systemd"
options="!check" # Causes circular dep with gnome-shell
source="https://download.gnome.org/sources/gdm/${_pkgver%%.*}/gdm-$_pkgver.tar.xz
0001-DOWNSTREAM-use-bin-touch-instead-of-usr-bin-touch.patch
0003-DOWNSTREAM-pam-rename-common-to-base.patch
Xsession
"
install="gdm.pre-install gdm.post-deinstall"
builddir="$srcdir/gdm-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Ddefault-pam-config=openembedded \
-Dgdm-xsession=false \
-Dpam-mod-dir=/usr/lib/security \
-Dselinux=disabled \
-Dlibaudit=disabled \
-Dsystemdsystemunitdir=/usr/lib/systemd/system \
-Dsystemduserunitdir=/usr/lib/systemd/user \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
# install -Dm644 /dev/stdin usr/lib/sysusers.d/gdm.conf <<END
#g gdm 120 -
#u gdm 120 "Gnome Display Manager" /var/lib/gdm
#END
#sed -i "s/pam_systemd\.so/pam_elogind.so/" "$pkgdir"/etc/pam.d/*
install -m755 -D "$srcdir/Xsession" "$pkgdir"/etc/gdm
}
systemd() {
install="$subpkgname.post-install $subpkgname.pre-deinstall"
default_systemd
}
sha512sums="
5578b2839ec78ef0b155a6ef6b82384495ef0f3ceb49f4bc7c656bf9dafa95b260148c7fc9b8295b71d4a2d33f6fe6c4a47485cd9eba5c0929f0492ba06e0893 gdm-47.0.tar.xz
c5c57ee93f5a33db154632f0f81fa2e62a48635cfa5e51ada9cc969478df0ce15878446c639c8647c53d439f2eb4173e7fca0069eae31fbdcec541cc5f28cd28 0001-DOWNSTREAM-use-bin-touch-instead-of-usr-bin-touch.patch
66611d49fc4c9578415a7e554834edcb9de99396bd0ca511dcfd4fb256e8a1cd1fd5f10464f4668ffe04799d919bc22ddb58e8bf272017edba69a7951522e63d 0003-DOWNSTREAM-pam-rename-common-to-base.patch
f836cf0acdf148f2ae09ac28251b5126ce597f08254c43b1ec77596f75e1a3229926116c13f98554625be763e8d28415b27bd679b0a5de9f86bdca7857054c82 Xsession
"
+2
View File
@@ -0,0 +1,2 @@
#!/bin/sh
exec "$@"
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_post_install system gdm.service
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall system gdm.service
@@ -0,0 +1,6 @@
#!/bin/sh
deluser gdm 2>/dev/null
delgroup gdm 2>/dev/null
exit 0
+6
View File
@@ -0,0 +1,6 @@
#!/bin/sh
addgroup -S -g 32 gdm 2>/dev/null
adduser -S -D -H -h /var/lib/gdm -s /sbin/nologin -G gdm -g gdm -u 32 gdm 2>/dev/null
exit 0
@@ -0,0 +1,97 @@
# Forked from Alpine to add systemd!
pkgname=gnome-desktop
pkgver=99944.1
_pkgver=44.1
pkgrel=0
pkgdesc="GNOME desktop core libraries"
url="https://gitlab.gnome.org/GNOME/gnome-desktop"
arch="all"
license="GPL-2.0-or-later AND LGPL-2.1-or-later"
depends_dev="gobject-introspection-dev gsettings-desktop-schemas-dev"
makedepends="$depends_dev
eudev-dev
fontconfig-dev
gdk-pixbuf-dev
glib-dev
gtk-doc
gtk+3.0-dev
gtk4.0-dev
iso-codes-dev
itstool
libseccomp-dev
libxml2-utils
meson
systemd-dev
xkeyboard-config-dev
"
options="!check" # Can't find its own GSettings schemas
subpackages="
$pkgname-dev
$pkgname-doc
$pkgname-lang
$pkgname-dbg
$pkgname-debug
libgnome-bg-4:bg_four
libgnome-desktop-3:three
libgnome-desktop-4:four
libgnome-rr-4:rr_four
"
source="https://download.gnome.org/sources/gnome-desktop/${_pkgver%.*}/gnome-desktop-$_pkgver.tar.xz
"
builddir="$srcdir/$pkgname-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Dudev=enabled \
-Dbuild_gtk4=true \
-Dsystemd=enabled \
-Dlegacy_library=true \
. output
meson compile -C output
}
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
depends="
libgnome-bg-4=$_pkgver-r$pkgrel
libgnome-desktop-3=$_pkgver-r$pkgrel
libgnome-desktop-4=$_pkgver-r$pkgrel
libgnome-rr-4=$_pkgver-r$pkgrel
"
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
bg_four() {
amove usr/lib/girepository-*/GnomeBG-4.0.typelib
amove usr/lib/libgnome-bg-4.so.*
}
three() {
depends="bubblewrap"
amove usr/lib/girepository-*/GnomeDesktop-3.0.typelib
amove usr/lib/libgnome-desktop-3.so.*
}
four() {
depends="bubblewrap"
amove usr/lib/girepository-*/GnomeDesktop-4.0.typelib
amove usr/lib/libgnome-desktop-4.so.*
}
rr_four() {
amove usr/lib/girepository-*/GnomeRR-4.0.typelib
amove usr/lib/libgnome-rr-4.so.*
}
debug() {
amove usr/libexec/gnome-desktop-debug
}
sha512sums="
a939793a6870693f132cabb6dd5f06d0f2744cf97a9dc4b7a2b04c9a5aa09aa56f2f6d7630199a42d0d4e539ae724b54b91d4f9fe9ea2f785d854c58b2d8dd5f gnome-desktop-44.1.tar.xz
"
@@ -0,0 +1,57 @@
https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/gnome-keyring/trunk/0001-build-Use-p11_module_configs-as-default-pkcs11-confi.patc
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Sat, 21 May 2022 18:42:21 +0000
Subject: [PATCH] build: Use p11_module_configs as default pkcs11-config dir
When building p11-kit with meson, `p11_system_config_modules` points at
the dir for system config in `/etc. This is its proper meaning.
When building p11-kit with autotools, `p11_system_config_modules` is a
copy of `p11_module_configs` "for compatibility", and points to the dir
for packaged configs in `/usr/share`.
We want the dir for packaged configs, so use the right variable.
---
configure.ac | 10 +++++-----
pkcs11/rpc-layer/Makefile.am | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac
index 1bf7c14c8ccc..98d8c01018fb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -294,15 +294,15 @@
[directory to install PKCS#11 config])
])
if test -z "$with_pkcs11_config" ; then
- P11_SYSTEM_CONFIG_MODULES=$($PKG_CONFIG p11-kit-1 --variable=p11_module_configs)
+ P11_MODULE_CONFIGS=$($PKG_CONFIG p11-kit-1 --variable=p11_module_configs)
else
- P11_SYSTEM_CONFIG_MODULES="$with_pkcs11_config"
+ P11_MODULE_CONFIGS="$with_pkcs11_config"
fi
-if test "$P11_SYSTEM_CONFIG_MODULES" = ""; then
+if test "$P11_MODULE_CONFIGS" = ""; then
AC_MSG_ERROR([Could not find location for pkcs11 module config])
fi
-AC_MSG_RESULT($P11_SYSTEM_CONFIG_MODULES)
-AC_SUBST(P11_SYSTEM_CONFIG_MODULES)
+AC_MSG_RESULT($P11_MODULE_CONFIGS)
+AC_SUBST(P11_MODULE_CONFIGS)
AC_MSG_CHECKING([module path to install pkcs11 modules])
AC_ARG_WITH(pkcs11-modules, [
diff --git a/pkcs11/rpc-layer/Makefile.am b/pkcs11/rpc-layer/Makefile.am
index ccdff9191ad4..d3a3b57bbc6e 100644
--- a/pkcs11/rpc-layer/Makefile.am
+++ b/pkcs11/rpc-layer/Makefile.am
@@ -46,7 +46,7 @@ gnome_keyring_pkcs11_la_LDFLAGS = \
-no-undefined -export-symbols-regex 'C_GetFunctionList'
# This is the configuration file that p11-kit uses to load the module
-pkcs11configdir = $(P11_SYSTEM_CONFIG_MODULES)
+pkcs11configdir = $(P11_MODULE_CONFIGS)
pkcs11config_DATA = \
pkcs11/rpc-layer/gnome-keyring.module
@@ -0,0 +1,78 @@
# Forked from Alpine
# systemd unit activation
pkgname=gnome-keyring
pkgver=99946.2
_pkgver=46.2
pkgrel=0
pkgdesc="GNOME keyring"
url="https://wiki.gnome.org//Projects/GnomeKeyring"
arch="all"
license="GPL-2.0-only LGPL-2.0-only"
# the gcr binaries are needed for things to open the keyring via libsecret
depends="gcr"
makedepends="
autoconf
automake
gcr-dev
gobject-introspection-dev
gtk+3.0-dev
gtk-doc
intltool
libcap-ng-dev
libgcrypt-dev
libxslt
linux-pam-dev
openssh-client
systemd-dev
"
checkdepends="
dbus-x11
python3
xvfb-run
"
provides="dbus:org.freedesktop.Secrets"
# Highest priority of the bunch since it has the least deps
provider_priority=500
options="!check" # Failing tests on 32-bit architectures
subpackages="
$pkgname-doc
$pkgname-lang
$pkgname-systemd
"
source="https://download.gnome.org/sources/gnome-keyring/${_pkgver%.*}/gnome-keyring-$_pkgver.tar.xz
0001-build-Use-p11_module_configs-as-default-pkcs11-confi.patch"
builddir="$srcdir/gnome-keyring-$_pkgver"
build() {
export LDFLAGS="$LDFLAGS -lintl"
autoreconf -vfi
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--with-pam-dir=/usr/lib/security \
--disable-selinux \
--with-libcap-ng=no
make
}
check() {
xvfb-run make check -j1
}
package() {
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
make DESTDIR="$pkgdir" install
}
systemd() {
install="$subpkgname.post-install $subpkgname.pre-deinstall"
default_systemd
}
sha512sums="
4229ca0606bdd1b84a3c737288df7f1fc1f8715734e3001964babd882201c3d818deabb3a7662dbf9b67316f03b234de84da3128fb991a500ef8305c2f962ba2 gnome-keyring-46.2.tar.xz
53e04eade3579fe5d65d11d6cde6c5fdffc9f73a3a7f372b1f4dbc7437212e753123c12854d3a5a7a22f3beb1b00604eec0371615ceb0f7024cb38cf35e33065 0001-build-Use-p11_module_configs-as-default-pkcs11-confi.patch
"
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_post_install user gnome-keyring-daemon
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall user gnome-keyring-daemon
+38
View File
@@ -0,0 +1,38 @@
# Contributor: fossdd <fossdd@pwned.life>
# Maintainer: fossdd <fossdd@pwned.life>
pkgname=gnome-logs
pkgver=45.0
pkgrel=0
pkgdesc="Log viewer for the systemd journal"
url="https://apps.gnome.org/Logs"
arch="all"
license="GPL-3.0-or-later"
makedepends="
desktop-file-utils
gtk4.0-dev
itstool
libadwaita-dev
meson
systemd-dev
"
subpackages="$pkgname-doc $pkgname-lang"
source="https://download.gnome.org/sources/gnome-logs/${pkgver%.*}/gnome-logs-$pkgver.tar.xz"
build() {
abuild-meson \
-Dman=true \
output .
meson compile -C output
}
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
a4021b182da29fc027311b6bb18491287ba232310fe61c982af759da7b36613cab589d0ca4caadec5d03fcb3d3000591c92ae37c881a8fd95aa9273025d17fd4 gnome-logs-45.0.tar.xz
"
@@ -0,0 +1,54 @@
# Forked from Alpine for systemd
pkgname=gnome-session
pkgver=99947.0.1
_pkgver=47.0.1
pkgrel=0
pkgdesc="GNOME session manager"
url="https://gitlab.gnome.org/GNOME/gnome-session"
arch="all"
license="GPL-2.0-or-later"
depends="
alsa-plugins-pulse
bash
dconf
polkit
"
makedepends="
docbook-xml
systemd-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gtk+3.0-dev
itstool
json-glib-dev
libsm-dev
libxml2-utils
libxslt
meson
upower-dev
xmlto
"
options="!check" #no tests
subpackages="$pkgname-lang $pkgname-doc $pkgname-systemd"
source="https://download.gnome.org/sources/gnome-session/${_pkgver%%.*}/gnome-session-$_pkgver.tar.xz"
builddir="$srcdir/gnome-session-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Dsystemduserunitdir=/usr/lib/systemd/user \
. output
meson compile -C output
}
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
83268ab2531f1a98f1bb483ca8337cac97542445a1d83d6e8a478ebb3361eb4454e111278dc428a139a6de63741367bdbc3443e53183fd187ca1a768e5df67a3 gnome-session-47.0.1.tar.xz
"
@@ -1,17 +1,20 @@
# Forked from Alpine for systemd support
pkgname=gnome-settings-daemon-mobile
pkgver=46.0
pkgrel=1
pkgver=99946.0
_pkgver=46.0
pkgrel=0
pkgdesc="GNOME settings daemon"
url="https://gitlab.gnome.org/verdre/gnome-settings-daemon-mobile"
arch="all"
options="!check" # tests fail on builders
license="GPL-2.0-only AND LGPL-2.1-only"
depends="pulseaudio"
provides="gnome-settings-daemon=$pkgver-r$pkgrel"
depends_dev="
alsa-lib-dev
colord-dev
cups-dev
elogind-dev
geoclue-dev
geocode-glib-dev>=3.26.4-r1
lcms2-dev
@@ -24,6 +27,7 @@ depends_dev="
nss-dev
pango-dev
polkit-dev
systemd-dev
pulseaudio-dev
upower-dev
"
@@ -50,37 +54,29 @@ _commit=46-mobile-0
_gvc_commit="8e7a5a4c3e51007ce6579292642517e3d3eb9c50"
source="gnome-settings-daemon-mobile-$_commit.tar.gz::https://gitlab.gnome.org/verdre/gnome-settings-daemon-mobile/-/archive/$_commit/gnome-settings-daemon-mobile-$_commit.tar.gz
libgnome-volume-control-$_gvc_commit.tar.gz::https://gitlab.gnome.org/GNOME/libgnome-volume-control/-/archive/$_gvc_commit/gnome-shell-$_gvc_commit.tar.gz"
builddir="$srcdir/gnome-settings-daemon-mobile-$_commit"
builddir="$srcdir/$pkgname-$_commit"
build() {
cd "$builddir"
rm -rf "$builddir/subprojects/gvc"
mv "$srcdir/libgnome-volume-control-$_gvc_commit" $builddir/subprojects/gvc
abuild-meson \
-Db_lto=true \
-Delogind=true \
-Dsystemd=false \
-Dsystemd=true \
. output
meson compile -C output
}
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
provides="gnome-settings-daemon=$pkgver-r$pkgrel"
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
dev() {
provides="gnome-settings-daemon-dev=$pkgver-r$pkgrel"
default_dev
}
lang() {
provides="gnome-settings-daemon-lang=$pkgver-r$pkgrel"
default_lang
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
@@ -0,0 +1,77 @@
# Forked from Alpine for systemd support
pkgname=gnome-settings-daemon
pkgver=99947.1
_pkgver=47.1
pkgrel=0
pkgdesc="GNOME settings daemon"
url="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
arch="all"
options="!check" # tests fail on builders
license="GPL-2.0-only AND LGPL-2.1-only"
depends="pulseaudio"
depends_dev="
alsa-lib-dev
colord-dev
cups-dev
geoclue-dev
geocode-glib-dev>=3.26.4-r1
lcms2-dev
libcanberra-dev
libgweather4-dev
libnotify-dev
libwacom-dev
modemmanager-dev
networkmanager-dev
nss-dev
pango-dev
polkit-dev
pulseaudio-dev
upower-dev
"
makedepends="
$depends_dev
coreutils
gcr4-dev
glib-dev
gnome-desktop-dev
gsettings-desktop-schemas-dev
gtk+3.0-dev
libxml2-utils
meson
"
checkdepends="
gnome-session
gnome-shell
py3-dbusmock
py3-gobject3
umockdev-dev
"
subpackages="
$pkgname-dev
$pkgname-lang
$pkgname-systemd
"
source="https://download.gnome.org/sources/gnome-settings-daemon/${_pkgver%.*}/gnome-settings-daemon-$_pkgver.tar.xz
"
builddir="$srcdir/gnome-settings-daemon-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Dsystemd=true \
. output
meson compile -C output
}
check() {
meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
39de5d67d51f751717b9c7dae4742981a7215a780e13e75ba5321351bcf129e265be12f60b01522d29301ef14049e88d217bdf1e800f16b4493566b927da35e4 gnome-settings-daemon-47.1.tar.xz
"
@@ -1,9 +1,10 @@
# Forked from Alpine to add phone adaptivity patches
# Forked from Alpine to add phone adaptivity patches and systemd!
pkgname=gnome-shell-mobile
pkgver=46.1
pkgver=99946.1
_pkgver=46.1
pkgrel=1
pkgdesc="GNOME shell"
pkgdesc="GNOME shell mobile"
url="https://wiki.gnome.org/Projects/GnomeShell"
# gjs / riscv64: mutter-mobile
arch="all !armhf !s390x !riscv64"
@@ -12,7 +13,6 @@ depends="
accountsservice
adwaita-icon-theme
desktop-file-utils
elogind
font-adobe-source-code-pro
font-cantarell
gnome-bluetooth
@@ -24,14 +24,16 @@ depends="
gstreamer
ibus
librsvg
mutter-mobile>=46
polkit
systemd
tecla
unzip
upower
xorg-server
"
makedepends="
asciidoc
elogind-dev
systemd-dev
evolution-data-server-dev evolution-dev
gcr4-dev
gjs-dev>=1.64.0
@@ -47,7 +49,7 @@ makedepends="
libxml2-dev
libxml2-utils
meson
mutter-mobile-dev>=46
mutter-mobile-dev>=99946.0
networkmanager-dev
pipewire-dev
polkit-dev
@@ -72,28 +74,31 @@ subpackages="
gnome-mobile-extensions-app:extensions_app:noarch
"
_commit="46-mobile.1"
_gvc_commit="91f3f41490666a526ed78af744507d7ee1134323"
_gvc_commit="8e7a5a4c3e51007ce6579292642517e3d3eb9c50"
source="gnome-shell-mobile-$_commit.tar.gz::https://gitlab.gnome.org/verdre/gnome-shell-mobile/-/archive/$_commit/gnome-shell-mobile-$_commit.tar.gz
libgnome-volume-control-$_gvc_commit.tar.gz::https://gitlab.gnome.org/GNOME/libgnome-volume-control/-/archive/$_gvc_commit/libgnome-volume-control-$_gvc_commit.tar.gz
gsh.patch"
libgnome-volume-control-$_gvc_commit.tar.gz::https://gitlab.gnome.org/GNOME/libgnome-volume-control/-/archive/$_gvc_commit/gnome-shell-$_gvc_commit.tar.gz
gsh.patch
"
builddir="$srcdir/gnome-shell-mobile-$_commit"
options="!check" # Tests have circular dependency 'gnome-shell <-> gdm'
# To make sure pmb_recommends installs the correct one
_pmb_recommends="gnome-mobile-extensions-app"
# secfixes:
# 0:
# - CVE-2019-3820
prepare() {
default_prepare
rm -rf "$builddir/subprojects/gvc"
mv "$srcdir/libgnome-volume-control-$_gvc_commit" $builddir/subprojects/gvc
sed -i "s/mutter_api_version = '.*'/mutter_api_version = '99'/g" meson.build
# versions in the format "46-mobile.1" are considered invalid by pkg-config
sed -i 's/\([0-9]\+\)-mobile\.\([0-9]\+\)/\1.\2/' meson.build
sed -i "s/version: '$_commit'/version: '$_pkgver'/g" meson.build
}
build() {
abuild-meson \
-Dsystemd=false \
-Dtests=false \
. output
meson compile ${JOBS:+-j ${JOBS}} -C output
@@ -139,6 +144,6 @@ package() {
sha512sums="
aeca65c373979eacf73aff169b69f3cefa8f457a04e641481f79a3a6e398a51d3ccfc6c7a94ae4a81486dd08fb7b600b2a949efc9272ab17ae9719fc7fe35740 gnome-shell-mobile-46-mobile.1.tar.gz
c832e99bc56ae586734d468e4e1a17f107acc76076d07ba45c46359ba751d1e6abe6108e43730fdf1dd18153cfa9f374e3e81118ae4902f0974d5b5f54f8276b libgnome-volume-control-91f3f41490666a526ed78af744507d7ee1134323.tar.gz
ae4ac679bacd35948b44068e5a70407f473bd96986ee126abb1bdf066db5cbc2087a3ffae0b390286689cacbe8325870fd43663ba39f4f7543216e02bf083934 gsh.patch
ebc6985afbda5ddebcda44d8b6732a9abc2d7249aff3adf7a76a90aa681590f830dcf2e5f3534a624adc32d1f0445e261ee149d65c221f733e0c33e0690a004d libgnome-volume-control-8e7a5a4c3e51007ce6579292642517e3d3eb9c50.tar.gz
40cafbd0da2f2a40ff9e9db1026179d52a3b296a81fa43a98e433c0919800f0ec5231fcad32d523b8f01b8f7c0205dce1332e48493b0101ad02dae9469ac3de0 gsh.patch
"
@@ -0,0 +1,28 @@
Patch-Source: https://github.com/chimera-linux/cports/blob/793dbd2807070fd0fd4f7ba37fd73d4c5ff47584/main/gnome-shell/patches/no-exe-introspection.patch
commit 1d1e96c094570c3a822f835abbff0a5bca4ca10e
Author: Daniel Kolesa <daniel@octaforge.org>
Date: Sun Mar 19 19:11:00 2023 +0100
Disable 9bc89b821cf09195418f20225bbec39c0567d263
Even if we manually define _DYNAMIC, it does not work (segfaults
somewhere in musl, coming from g_strsplit) and is pretty useless
for our case anyway.
diff --git a/src/main.c b/src/main.c
index 8cccc0a..ef6408f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -20,8 +20,12 @@
#include <meta/prefs.h>
#include <atk-bridge.h>
#include <link.h>
+#ifdef HAVE_EXE_INTROSPECTION
+#undef HAVE_EXE_INTROSPECTION
+#endif
+
#ifdef HAVE_EXE_INTROSPECTION
#include <dlfcn.h>
#include <elf.h>
#endif
+128
View File
@@ -0,0 +1,128 @@
# Forked from Alpine to add systemd!
pkgname=gnome-shell
pkgver=99947.1
_pkgver=47.1
pkgrel=0
pkgdesc="GNOME shell"
url="https://gitlab.gnome.org/GNOME/gnome-shell"
# gjs -> mozjs
arch="all !armhf !s390x"
license="GPL-2.0-or-later"
depends="
accountsservice
adwaita-icon-theme
desktop-file-utils
font-adobe-source-code-pro
font-cantarell
gnome-bluetooth
gnome-control-center
gnome-shell-schemas
gsettings-desktop-schemas>=46
gst-plugin-pipewire
gst-plugins-good
gstreamer
ibus
librsvg
systemd
tecla
unzip
upower
"
makedepends="
asciidoc
evolution-data-server-dev evolution-dev
gcr4-dev
gjs-dev>=1.78.0
gnome-autoar-dev
gnome-bluetooth-dev
gnome-control-center-dev
gnome-desktop-dev>=44.0
gobject-introspection-dev
gstreamer-dev
ibus-dev
libcanberra-dev
libnma-dev
libxml2-dev
libxml2-utils
meson
mutter-dev>=99947
networkmanager-dev
pipewire-dev
polkit-dev
pulseaudio-dev
py3-docutils
py3-setuptools
python3
sassc
startup-notification-dev
systemd-dev
tecla-dev
"
checkdepends="
mesa-dri-gallium
xvfb-run
"
# gdm is also needed but introduces circular dep
subpackages="
$pkgname-dbg
$pkgname-doc
$pkgname-lang
$pkgname-schemas::noarch
gnome-extensions-app:extensions_app:noarch
"
source="https://download.gnome.org/sources/gnome-shell/${_pkgver%.*}/gnome-shell-$_pkgver.tar.xz
gsh.patch
schemas_req.patch
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Tests have circular dependency 'gnome-shell <-> gdm'
builddir="$srcdir/$pkgname-$_pkgver"
# secfixes:
# 0:
# - CVE-2019-3820
build() {
abuild-meson \
-Db_lto=true \
-Dtests=false \
. output
meson compile -C output
}
check() {
xvfb-run meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
extensions_app() {
pkgdesc="Manage GNOME Shell extensions"
depends="gnome-shell libadwaita"
replaces="gnome-shell"
amove usr/bin/gnome-extensions-app
amove usr/share/applications/org.gnome.Extensions.desktop
amove usr/share/gnome-shell/org.gnome.Extensions
amove usr/share/gnome-shell/org.gnome.Extensions.data.gresource
amove usr/share/gnome-shell/org.gnome.Extensions.src.gresource
}
schemas() {
pkgdesc="GNOME Shell gsetting schemas"
depends=""
replaces="gnome-shell"
amove usr/share/glib-2.0/schemas
amove usr/share/gnome-control-center/keybindings
}
sha512sums="
451b5609f4a9a3f6acb729bb0137f1d7db7da4de956e13576402fd22c3dd7d0ba5b7cc634bf0d0923fbf0624812fb4646164bb4c0c29535acb09f30c904fd05f gnome-shell-47.1.tar.xz
ae4ac679bacd35948b44068e5a70407f473bd96986ee126abb1bdf066db5cbc2087a3ffae0b390286689cacbe8325870fd43663ba39f4f7543216e02bf083934 gsh.patch
3fab1a0e141ae7c972e827935c6e4c52d927faf69dd25a5c72bbcdaa1b763d1bb58ea5cb074686145b29c3391f557b01920a8d3613bb83d15f073d661a447426 schemas_req.patch
"
File renamed without changes.
@@ -0,0 +1,13 @@
diff --git a/meson.build b/meson.build
index ec385b1..e0addb3 100644
--- a/meson.build
+++ b/meson.build
@@ -28,7 +28,7 @@ gjs_req = '>= 1.73.1'
gtk_req = '>= 4.0'
mutter_req = '>= 47.0'
polkit_req = '>= 0.100'
-schemas_req = '>= 47.alpha'
+schemas_req = '>= 47'
systemd_req = '>= 246'
ibus_req = '>= 1.5.19'
gnome_desktop_req = '>= 40'
+50
View File
@@ -0,0 +1,50 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=kjournald
pkgver=24.08.2
pkgrel=0
pkgdesc="Framework for interacting with systemd-journald"
# armhf blocked by extra-cmake-modules
arch="all !armhf"
url="https://invent.kde.org/system/kjournald"
license="BSD-3-Clause AND LGPL-2.1-or-later AND MIT"
depends_dev="
kcoreaddons-dev
ki18n-dev
qt6-qtbase-dev
qt6-qtdeclarative-dev
systemd-dev
"
makedepends="$depends_dev
extra-cmake-modules
samurai
"
checkdepends="xvfb-run"
subpackages="$pkgname-dev $pkgname-lang"
case "$pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
_repo_url="https://invent.kde.org/system/kjournald.git"
source="https://download.kde.org/$_rel/release-service/$pkgver/src/kjournald-$pkgver.tar.xz"
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
cmake --build build
}
check() {
ctest --test-dir build --output-on-failure -E "test_(viewmodel|filtercriteriamodel|remotejournal)"
}
package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
5bd8a122362c20dd3cb10bb9a28596d31686782c309834a1c596f80f515574c3d6f3937163008c02191666e8be465ff64784a99deb7ef886daf1e54e947256ae kjournald-24.08.2.tar.xz
"
@@ -0,0 +1,82 @@
# Forked from Alpine to add systemd!
pkgname=kscreenlocker
pkgver=99996.2.2
_pkgver=6.2.2
pkgrel=0
pkgdesc="Library and components for secure lock screen architecture"
# armhf blocked by extra-cmake-modules
arch="all !armhf !armv7"
url="https://kde.org/plasma-desktop/"
license="GPL-2.0-or-later AND (GPL-2.0-only OR GPL-3.0-only)"
depends="linux-pam"
depends_dev="
kcmutils-dev
kcrash-dev
kdeclarative-dev
kglobalaccel-dev
ki18n-dev
kidletime-dev
knotifications-dev
ksvg-dev
ktextwidgets-dev
kwayland-dev
kwindowsystem-dev
kxmlgui-dev
layer-shell-qt-dev
libkscreen-dev
libplasma-dev
libseccomp-dev
linux-pam-dev
qt6-qtbase-dev
solid-dev
systemd-dev
xcb-util-keysyms-dev
"
makedepends="
$depends_dev
extra-cmake-modules
samurai
"
checkdepends="xvfb-run"
case "$_pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
_repo_url="https://invent.kde.org/plasma/kscreenlocker.git"
source="https://download.kde.org/$_rel/plasma/$_pkgver/kscreenlocker-$_pkgver.tar.xz
kde.pam
kde-fingerprint.pam
kde-smartcard.pam
"
subpackages="$pkgname-dev $pkgname-lang"
options="!check" # Requires running loginctl
builddir="$srcdir/$pkgname-$_pkgver"
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
cmake --build build
}
check() {
xvfb-run ctest --test-dir build --output-on-failure
}
package() {
DESTDIR="$pkgdir" cmake --install build
install -D -m644 "$srcdir"/kde.pam "$pkgdir"/etc/pam.d/kde
install -m644 "$srcdir"/kde-fingerprint.pam "$pkgdir"/etc/pam.d/kde-fingerprint
install -m644 "$srcdir"/kde-smartcard.pam "$pkgdir"/etc/pam.d/kde-smartcard
}
sha512sums="
74e7535a8aa7e7a557eb4afcc2878daf704b986ebcd309212ea2f8157d3609da9cc9db018b7b054763c881355ea0dc19a95bb0eac7cc994cfe1b13c277d0c7bf kscreenlocker-6.2.2.tar.xz
cdbc45fb74a3c43fb2302fe09bf2f9f644ca93693e0110cf748c403762236aaeea8284a8d21fc495014c69b6d5fe4789aaff7687ce9f03dda270490fa5042e2b kde.pam
fe2f244b73b5cccf4b7125b9e3cac0a35566840e4ba2f69937fd8053aa56af71ee43dcbfa9c0f79de9ebe31f656e98a5d38955f77560be5c3535b08215ad8789 kde-fingerprint.pam
2ae866d25224ba345ea9d5ddb2fce668de5c51d1cfbb4d7a048c50107ccd6cffc3231a46855599c0ba3d62ff002a26e45b69d9029f88f4ab42661465a5e526c5 kde-smartcard.pam
"
@@ -0,0 +1,15 @@
auth substack fingerprint-auth
auth include postlogin
account required pam_nologin.so
account include fingerprint-auth
password include fingerprint-auth
session required pam_selinux.so close
session required pam_loginuid.so
session required pam_selinux.so open
session optional pam_keyinit.so force revoke
session required pam_namespace.so
session include fingerprint-auth
session include postlogin
@@ -0,0 +1,15 @@
auth substack smartcard-auth
auth include postlogin
account required pam_nologin.so
account include smartcard-auth
password include smartcard-auth
session required pam_selinux.so close
session required pam_loginuid.so
session required pam_selinux.so open
session optional pam_keyinit.so force revoke
session required pam_namespace.so
session include smartcard-auth
session include postlogin
@@ -0,0 +1,5 @@
#%PAM-1.0
auth include base-auth
account include base-account
password include base-password
session include base-session
+115
View File
@@ -0,0 +1,115 @@
# Forked from Alpine to add systemd!
pkgname=kwin
pkgver=99996.2.2
_pkgver=6.2.2
pkgrel=0
pkgdesc="An easy to use, but flexible, composited Window Manager"
# armhf blocked by qt6-qtdeclarative
arch="all !armhf !armv7"
url="https://kde.org/plasma-desktop/"
license="GPL-2.0-or-later AND (GPL-2.0-only OR GPL-3.0-only) AND LGPL-2.1-only"
depends="
hwdata
kirigami
qt6-qtmultimedia
qt6-qtwayland
xwayland
"
depends_dev="$pkgname
breeze-dev
fontconfig-dev
kcmutils-dev
kcompletion-dev
kconfig-dev
kconfigwidgets-dev
kcoreaddons-dev
kcrash-dev
kdeclarative-dev
kdecoration-dev
kglobalaccel-dev
ki18n-dev
kiconthemes-dev
kidletime-dev
kio-dev
knewstuff-dev
knotifications-dev
kpackage-dev
krunner-dev
kscreenlocker-dev
kservice-dev
ksvg-dev
ktextwidgets-dev
kwayland-dev
kwidgetsaddons-dev
kwindowsystem-dev
kxmlgui-dev
lcms2-dev
libdrm-dev
libepoxy-dev
libinput-dev
libplasma-dev
libqaccessibilityclient-dev
libxcvt-dev
libxi-dev
libxkbcommon-dev
mesa-dev
mesa-gbm
pipewire-dev
plasma-activities-dev
qt6-qtbase-dev
qt6-qtdeclarative-dev
qt6-qtsensors-dev
wayland-dev
xcb-util-cursor-dev
xcb-util-image-dev
xcb-util-wm-dev
"
makedepends="$depends_dev
extra-cmake-modules
kdoctools-dev
kglobalacceld-dev
kpipewire-dev
libcap-utils
libdisplay-info-dev
plasma-wayland-protocols
qt6-qttools-dev
samurai
systemd-dev
"
checkdepends="xvfb-run"
case "$_pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-lang $pkgname-systemd"
_repo_url="https://invent.kde.org/plasma/kwin.git"
source="https://download.kde.org/stable/plasma/$(echo $_pkgver | cut -d . -f 1-3)/kwin-$_pkgver.tar.xz
"
# Broken, fails to setup due to missing or invalid XDG_RUNTIME_DIR?
options="!check"
builddir="$srcdir/$pkgname-$_pkgver"
build() {
# significantly reduce debug symbol size
# use None here to not make cmake pass bare -g (-g2)
CFLAGS="$CFLAGS -O2 -g1" CXXFLAGS="$CXXFLAGS -O2 -g1" \
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
cmake --build build
}
check() {
XDG_RUNTIME_DIR="$(mktemp -p -d "$builddir")" \
xvfb-run ctest --test-dir build --output-on-failure
}
package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
f6fbfb763fcd3eda08e8bfe86e47fcc07f21b473da56ae6ff58fe4601f319ccf09c05eac663512b4b3c41d38232f89b87264f33e922cd14e719e8ae12809da18 kwin-6.2.2.tar.xz
"
@@ -0,0 +1,67 @@
# Forked from Alpine to add systemd!
pkgname=lightdm-pantheon-greeter
pkgver=8.0.0
pkgrel=0
pkgdesc="The Pantheon control center"
url="https://github.com/elementary/greeter"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
cairo
dconf
graphene
gtk4.0
"
makedepends="
accountsservice-dev
lightdm-dev
cairo-dev
desktop-file-utils
dbus-dev
glib-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gobject-introspection-dev
graphene-dev
gtk+3.0-dev
gtk4.0-dev
json-glib-dev
lcms2-dev
libcanberra-dev
libei-dev
granite-dev
granite7-dev
libadwaita-dev
libgee-dev
libgudev-dev
sassc
libhandy1-dev
meson
wayland-dev
mutter46-dev
wayland-protocols
xwayland-dev
systemd-dev
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/greeter/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/greeter-$pkgver"
install_if="pantheon-session lightdm"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
eb45fffb7da586948218184e2296c089d245add5674edbf594a9b90c858d97e106f992fe1d349b7367949207814de976a83a1c447d7f6d1a32d93ae4b4647bba lightdm-pantheon-greeter-8.0.0.tar.gz
"
+111
View File
@@ -0,0 +1,111 @@
# Forked from Alpine enable systemd
# MODIFIED base-sessionl.pamd for systemd!
pkgname=linux-pam-pmos
pkgver=1.6.1
pkgrel=0
pkgdesc="Linux PAM (Pluggable Authentication Modules for Linux)"
url="https://www.kernel.org/pub/linux/libs/pam"
arch="all"
license="BSD-3-Clause"
depends_dev="gettext-dev"
makedepends="
$depends_dev
autoconf
automake
bison
flex-dev
libtool
linux-headers
systemd-dev
"
options="pmb:strict suid !check"
provider_priority=100
subpackages="$pkgname-dev $pkgname-manual::noarch $pkgname-doc $pkgname-systemd"
source="https://github.com/linux-pam/linux-pam/releases/download/v$pkgver/Linux-PAM-$pkgver.tar.xz
https://github.com/linux-pam/linux-pam/releases/download/v$pkgver/Linux-PAM-$pkgver-docs.tar.xz
base-auth.pamd
base-account.pamd
base-password.pamd
base-session.pamd
base-session-noninteractive.pamd
other.pamd
login.pamd
su.pamd
"
builddir="$srcdir"/Linux-PAM-$pkgver
# secfixes:
# 1.6.0-r0:
# - CVE-2024-22365
# 1.5.1-r0:
# - CVE-2020-27780
build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--libdir=/usr/lib \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-systemdunitdir=/usr/lib/systemd/system \
--localstatedir=/var \
--disable-nls \
--disable-db \
--disable-examples
make
}
package() {
provides="linux-pam=$pkgver-r$pkgrel"
make DESTDIR="$pkgdir" install
# install our pam.d files
install -Dm644 "$srcdir"/base-auth.pamd "$pkgdir"/etc/pam.d/base-auth
install -Dm644 "$srcdir"/base-password.pamd "$pkgdir"/etc/pam.d/base-password
install -Dm644 "$srcdir"/base-account.pamd "$pkgdir"/etc/pam.d/base-account
install -Dm644 "$srcdir"/base-session.pamd "$pkgdir"/etc/pam.d/base-session
install -Dm644 "$srcdir"/base-session-noninteractive.pamd \
"$pkgdir"/etc/pam.d/base-session-noninteractive
install -Dm644 "$srcdir"/other.pamd "$pkgdir"/etc/pam.d/other
install -Dm644 "$srcdir"/login.pamd "$pkgdir"/etc/pam.d/login
install -Dm644 "$srcdir"/su.pamd "$pkgdir"/etc/pam.d/su
# make "unix_chkpwd" shadow group and enable g+s
chgrp shadow "$pkgdir"/sbin/unix_chkpwd \
&& chmod g+s "$pkgdir"/sbin/unix_chkpwd
}
dev() {
default_dev
provides="$provides linux-pam-dev=$pkgver-r$pkgrel"
}
manual() {
provides="$provides linux-pam-manual=$pkgver-r$pkgrel"
pkgdesc="$pkgdesc (manual)"
amove usr/share/doc/Linux-PAM
}
doc() {
default_doc
provides="$provides linux-pam-doc=$pkgver-r$pkgrel"
}
sha512sums="
ddb5a5f296f564b76925324550d29f15d342841a97815336789c7bb922a8663e831edeb54f3dcd1eaf297e3325c9e2e6c14b8740def5c43cf3f160a8a14fa2ea Linux-PAM-1.6.1.tar.xz
c6054ec6832f604c0654cf074e4e241c44037fd41cd37cca7da94abe008ff72adc4466d31bd254517eda083c7ec3f6aefd37785b3ee3d0d4553250bd29963855 Linux-PAM-1.6.1-docs.tar.xz
988e4ba32fe6b7adeb4898c784eb40d6f88f3fca78ead82b61686f0e1597f306abb3ee338aa2e4cf2db0191b8c1a7e319332e7f6d6aed3ab381f71c0a3355de9 base-auth.pamd
5d3e960ead44dcb2b3f732825482eefab9a9ffa4d4d5fc1d30cbf2fe8c5c896f1114a0ad3a6c606fa9fbf5c43400388f4ee8d7fca8110721eabfc9691004756b base-account.pamd
b3a900d6067ba04faa8016d9408da75917e8c0502020a4048bba1de2ca54c705c4d5f8307e759080fd5a9d5f3522f52a708803f1f01627eac56d9d7c6d363d13 base-password.pamd
2cf01d7cf2ec63d7cfe10bd90ed3cae8c5354e086495b0738e6e18df4c0ac14336228128a943731d186cc7492b15e7aee039f2c46dcd50c1fde434bb0c9af7fd base-session.pamd
2f18114b8a6a78ed798646962526876f3536b4759c00dce339e21f0695ea71d0917c048dc852c3d1c79bd17cd19dc513a3c6463abaffcff3f792b906cec98ede base-session-noninteractive.pamd
299bb3791652174a4d836d60f146200bb692ad80c20c18e6e872543ac8885156ff1a7ca00acaf55b89672fa98f00b8df53879c9ab1913a9cc91f620163dd50be other.pamd
ae3a807bc121eb59b54f5e53ff8efdde972610cf7463b6a38bccbc89b49954aa2e0a8693919b01f8bc7a956ba58c97de34a28963bc14f526b70b3073d64427b5 login.pamd
a71ac72a21a5d18612365b2b0a4a0da1f9d1101a30d3f5d97f479f6378c3a0fbc219617000448c8b5a0ab2597f2e4944202b13a69624dbe849bf9ea39d00ca22 su.pamd
"
@@ -0,0 +1,4 @@
# basic PAM configuration for Alpine.
account required pam_unix.so
account required pam_nologin.so
@@ -0,0 +1,8 @@
# basic PAM configuration for Alpine.
auth required pam_unix.so nullok
auth required pam_nologin.so
auth required pam_env.so
-auth optional pam_gnome_keyring.so
-auth optional pam_kwallet5.so
@@ -0,0 +1,7 @@
# basic PAM configuration for Alpine.
password required pam_unix.so nullok sha512 shadow
# desktop keyrings
-password optional pam_gnome_keyring.so use_authtok
-password optional pam_kwallet5.so
@@ -0,0 +1,5 @@
# basic PAM configuration for Alpine.
session required pam_env.so
session required pam_limits.so
session required pam_unix.so
@@ -0,0 +1,14 @@
# basic PAM configuration for Alpine.
session include base-session-noninteractive
# potential providers that set up session stuff / a XDG_RUNTIME_DIR
-session optional pam_rundir.so
-session optional pam_elogind.so
-session optional pam_systemd.so
-session optional pam_ck_connector.so
-session optional pam_turnstile.so
# desktop keyrings
-session optional pam_gnome_keyring.so auto_start
-session optional pam_kwallet5.so auto_start
@@ -0,0 +1,6 @@
# "login" that is required by pam-enabled util-linux-login/shadow-login
auth include base-auth
account include base-account
password include base-password
session include base-session
@@ -0,0 +1,6 @@
#%PAM-1.0
# default config for any service don't specified
auth include base-auth
account include base-account
password include base-password
session include base-session-noninteractive
@@ -0,0 +1,6 @@
# basic PAM configuration for Alpine.
auth sufficient pam_rootok.so
auth include base-auth
account include base-account
password include base-password
session include base-session-noninteractive
@@ -0,0 +1,25 @@
From 91e9ec2982ec57cf847d9aab6aeeec903797588f Mon Sep 17 00:00:00 2001
From: Leonardo Arena <rnalrd@alpinelinux.org>
Date: Thu, 29 Aug 2024 08:25:09 +0000
Subject: [PATCH] disable O2
---
Makefile.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.inc b/Makefile.inc
index 729618b..978de09 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -99,7 +99,7 @@ SYSTEMD_LIBDEPS := $(if $(SYSTEMD),$(if $(shell test $(SYSTEMD) -gt 209 && echo
MODPROBE_UNIT := $(shell test "0$(SYSTEMD)" -lt 245 2>/dev/null || \
echo "modprobe@dm_multipath.service")
-OPTFLAGS := -O2 -g $(STACKPROT) --param=ssp-buffer-size=4
+OPTFLAGS := -Os -g $(STACKPROT) --param=ssp-buffer-size=4
# Set WARN_ONLY=1 to avoid compilation erroring out due to warnings. Useful during development.
WARN_ONLY :=
--
2.46.0
@@ -0,0 +1,66 @@
# Forked from Alpine to remove eudev dependency
pkgname=multipath-tools
pkgver=99990.10.0
_pkgver=0.10.0
pkgrel=0
pkgdesc="Device Mapper Multipathing Driver"
url="http://christophe.varoqui.free.fr/"
arch="all"
license="LGPL-2.0-only"
depends="device-mapper"
makedepends="
json-c-dev
libaio-dev
lvm2-dev
ncurses-dev
perl
readline-dev
systemd-dev
userspace-rcu-dev
util-linux-dev
"
subpackages="$pkgname-doc $pkgname-openrc"
source="$pkgname-$_pkgver.tar.gz::https://github.com/opensvc/multipath-tools/archive/refs/tags/$_pkgver.tar.gz
multipath-tools.conf
multipath.initd
multipathd.initd
multipathd.confd
0001-Disable-O2.patch
fix-basename.patch
"
options="!check"
builddir="$srcdir"/multipath-tools-"$_pkgver"
build() {
make WARN_ONLY=1 prefix="/usr" \
sysconfdir="/etc" \
configdir="/etc/multipath/conf.d" \
mandir="/usr/share/man" \
infodir="/usr/share/info"
}
package() {
make prefix="/usr" SYSTEMDPATH="/usr/lib" LIB=lib DESTDIR="$pkgdir" install
install -D -m644 "$srcdir"/$pkgname.conf \
"$pkgdir"/etc/multipath.conf
install -D -m755 "$srcdir"/multipathd.initd \
"$pkgdir"/etc/init.d/multipathd
install -D -m644 "$srcdir"/multipathd.confd \
"$pkgdir"/etc/conf.d/multipathd
install -D -m755 "$srcdir"/multipath.initd \
"$pkgdir"/etc/init.d/multipath
install -D -m644 README.md \
"$pkgdir"/usr/share/doc/$pkgname/README.md
}
sha512sums="
8f545609fa20df7547428f2929571dc0df87c17d9f61f11aad3559446c2e94755e18b1c4b3780b3de92ec2cbc450939ca15a9d6c95551eee4084064d83874b2d multipath-tools-0.10.0.tar.gz
e81462b22c0cbc92ea935d7544b9f9a0c4ccbcf13f3bc03dadf6de96407c9cf49964c9bbf02f12a134e1255c66421c6fde39d54b15eef975e8df81bdc88b2213 multipath-tools.conf
6176a4ed32711ff8e417a58ca0cad8279d46ba98ec40095dbdb1035c49c0f82b06b5affbe2b79c5f2020b215ebe31ebeb408509dc810f5d21eb757e88be8c99f multipath.initd
17853ca127259e129bbd61f24a830777d5b6d69f6500313fa62a0e0773de73387ce2c3a58a93a6182ee3d4891d1ec5fc2322cb674e787b326ef9cd8dcff5cbab multipathd.initd
2adc2b8322645fec8763a662614b5682294f81dc0f1b9cacace5e5ea62125aa80f4874c1b10f11619e79871087846a946f7a383c22953ca1fbaeb9ea021c5114 multipathd.confd
12efc27a7fd492834dd1d86d67faa1a6884142779f5452ada5373d893cd441572e07f9f9ea441dd92d49274ccc21a53d70f2af8a49c63060ff7490b93e3cb58d 0001-Disable-O2.patch
3f65a2006c03ba168eb3fcec537042ae9e0ddbcab48a051970fcc477bd88b2eeb16db79c9f06d4fc7b7e06411d46e159b7d13d2fe9613ba5be1ed68d9e66e54c fix-basename.patch
"
@@ -0,0 +1,14 @@
diff --git a/libmultipath/configure.c b/libmultipath/configure.c
index d809490..62154fd 100644
--- a/libmultipath/configure.c
+++ b/libmultipath/configure.c
@@ -43,6 +43,9 @@
#include "sysfs.h"
#include "io_err_stat.h"
+#define basename(dev) \
+ (strrchr((dev),'/') ? strrchr((dev),'/')+1 : (dev))
+
/* group paths in pg by host adapter
*/
int group_by_host_adapter(struct pathgroup *pgp, vector adapters)
@@ -0,0 +1,113 @@
##
## This is a template multipath-tools configuration file
## Uncomment the lines relevent to your environment
##
#defaults {
# udev_dir /dev
# polling_interval 10
# selector "round-robin 0"
# path_grouping_policy multibus
# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
# prio_callout /bin/true
# path_checker directio
# rr_min_io 100
# rr_weight priorities
# failback immediate
# no_path_retry fail
# user_friendly_names no
#}
#blacklist {
# wwid 26353900f02796769
# devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
# devnode "^hd[a-z][[0-9]*]"
# devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
# device {
# vendor DEC.*
# product MSA[15]00
# }
#}
#blacklist_exceptions {
# devnode "^dasd[c-d]+[0-9]*"
# wwid "IBM.75000000092461.4d00.34"
#}
#multipaths {
# multipath {
# wwid 3600508b4000156d700012000000b0000
# alias yellow
# path_grouping_policy multibus
# path_checker directio
# path_selector "round-robin 0"
# failback manual
# rr_weight priorities
# no_path_retry 5
# rr_min_io 100
# }
# multipath {
# wwid 1DEC_____321816758474
# alias red
# }
#}
#devices {
# device {
# vendor "COMPAQ "
# product "HSV110 (C)COMPAQ"
# path_grouping_policy multibus
# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
# path_checker directio
# path_selector "round-robin 0"
# hardware_handler "0"
# failback 15
# rr_weight priorities
# no_path_retry queue
# rr_min_io 100
# product_blacklist LUN_Z
# }
# device {
# vendor "COMPAQ "
# product "MSA1000 "
# path_grouping_policy multibus
# }
#}
#defaults {
# udev_dir /dev
# user_friendly_names yes
#}
#blacklist {
# devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
# devnode "^hd[a-z]"
# devnode "^sda"
# devnode "^sdb"
# devnode "^sdc"
# devnode "^sdd"
# devnode "^sda[0-9]"
# devnode "^sdb[0-9]"
# device {
# vendor DELL
# product "PERC|Universal"
# }
#}
#devices {
# device {
# vendor DELL
# product MD3000i
# hardware_handler "1 rdac"
# path_checker rdac
# path_grouping_policy group_by_prio
# prio_callout "/sbin/mpath_prio_rdac /dev/%n"
# failback immediate
# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
# }
#}
#multipaths {
# multipath {
# device {
# vendor DELL
# product MD3000i
# }
# }
#}
@@ -0,0 +1,24 @@
#!/sbin/openrc-run
description="Initialize multipath"
depend() {
before checkfs fsck multipathd iscsid lvm
after modules device-mapper
}
start() {
ebegin "Loading multipath modules"
modprobe -aq dm_mod dm-multipath
eend $?
ebegin "Activating multipath devices"
multipath -v0 >/dev/null
eend $?
}
stop() {
ebegin "Deactivating multipath devices"
multipath -v0 -F >/dev/null
eend $?
}
@@ -0,0 +1,4 @@
# Configuration for /etc/init.d/multipathd
# Comment out to run without process supervisor.
supervisor="supervise-daemon"
@@ -0,0 +1,10 @@
#!/sbin/openrc-run
description="Multipath monitoring daemon"
command="/usr/sbin/multipathd"
command_args="-d $command_args"
command_background="yes"
pidfile="/run/$RC_SVCNAME.pid"
output_log="/var/log/$RC_SVCNAME.log"
error_log="/var/log/$RC_SVCNAME.log"
@@ -1,7 +1,8 @@
# Forked from Alpine to apply mobile adaptivity patches
pkgname=mutter-mobile
pkgver=46.1
pkgver=99946.1
_pkgver=46.1
pkgrel=1
pkgdesc="clutter-based window manager and compositor"
url="https://wiki.gnome.org/Projects/Mutter/"
@@ -20,7 +21,7 @@ makedepends="
at-spi2-core-dev
cairo-dev
dbus-dev
elogind-dev
systemd-dev
eudev-dev
fribidi-dev
gdk-pixbuf-dev
@@ -31,7 +32,7 @@ makedepends="
graphene-dev
gtk+3.0-dev
json-glib-dev
lcms2-dev
libei-dev
libcanberra-dev
libdrm-dev
libgudev-dev
@@ -54,7 +55,6 @@ makedepends="
libxrandr-dev
libxrender-dev
libxtst-dev
libei-dev
mesa-dev
meson
pango-dev
@@ -77,12 +77,12 @@ prepare() {
default_prepare
sed -i "s/libmutter_api_version = '.*'/libmutter_api_version = '99'/g" meson.build
# versions in the format "46-mobile.1" are considered invalid by pkg-config
sed -i 's/\([0-9]\+\)-mobile\.\([0-9]\+\)/\1.\2/' meson.build
sed -i "s/version: '$_commit'/version: '$_pkgver'/g" meson.build
}
build() {
abuild-meson \
-Degl_device=true \
-Dudev=true \
-Dnative_backend=true \
-Dintrospection=true \
@@ -110,11 +110,17 @@ lang() {
provides="mutter-lang=$pkgver-r$pkgrel"
}
dev() {
default_dev
provides="mutter-dev=$pkgver-r$pkgrel"
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
210266238a9cf56b77e195559a2f99574de4a52b973bad7143a88f112730dd61ebf807e6644519998f39fe5ddbcb1bfd589d0d5167c92718953d5ad22eba2ae7 mutter-mobile-46-mobile.1.tar.gz
670927a5528f9fec4801b7dab8a377b7280c239acb1f7a9077647deef71119738deb958a94d4ce0a99d39b29eeab3b2505698f7d19b880bbcec9f5260202d3a6 pcversion.patch
2f2379d1f6676c69ba182d008d44c3d216ba5044af56352c785f4c34d17aeb0ac98a539827371d06ade7c2b42b06f916753c736167d2d89c0053b0a0e738c5d5 pcversion.patch
"
@@ -0,0 +1,16 @@
apk-tools 2.12.10 fails with this in a .pc depends file
diff --git a/meson.build b/meson.build
index e29c5001bcad..3f21f10cf49a 100644
--- a/meson.build
+++ b/meson.build
@@ -25,9 +25,9 @@ gdk_pixbuf_req = '>= 2.0'
pango_req = '>= 1.46.0'
cairo_req = '>= 1.10.0'
pangocairo_req = '>= 1.20'
pixman_req = '>= 0.42'
-gsettings_desktop_schemas_req = '>= 40.alpha'
+gsettings_desktop_schemas_req = '>= 40_alpha'
x11_req = '>= 1.7.0'
xcomposite_req = '>= 0.4'
xkbcommon_req = '>= 0.4.3'
xfixes_req = '>= 6'
+107
View File
@@ -0,0 +1,107 @@
# Forked from Alpine to add systemd!
pkgname=mutter
pkgver=99947.1
_pkgver=47.1
pkgrel=0
pkgdesc="clutter-based window manager and compositor"
url="https://wiki.gnome.org/Projects/Mutter/"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gnome-settings-daemon
gsettings-desktop-schemas
mutter-schemas
xkeyboard-config
"
makedepends="
at-spi2-core-dev
cairo-dev
dbus-dev
fribidi-dev
gdk-pixbuf-dev
glib-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gobject-introspection-dev
graphene-dev
gtk4.0-dev
json-glib-dev
lcms2-dev
libcanberra-dev
libdisplay-info-dev
libdrm-dev
libei-dev
libgudev-dev
libice-dev
libinput-dev
libsm-dev
libwacom-dev
libx11-dev
libxau-dev
libxcb-dev
libxcomposite-dev
libxcursor-dev
libxdamage-dev
libxext-dev
libxfixes-dev
libxi-dev
libxinerama-dev
libxkbcommon-dev
libxkbfile-dev
libxrandr-dev
libxrender-dev
libxtst-dev
mesa-dev
meson
pango-dev
pipewire-dev
startup-notification-dev
wayland-dev
wayland-protocols
xkeyboard-config-dev
xwayland-dev
systemd-dev
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-lang $pkgname-schemas::noarch"
source="https://download.gnome.org/sources/mutter/${_pkgver%.*}/mutter-$_pkgver.tar.xz
fixudev-req.patch
pcversion.patch
"
builddir="$srcdir/$pkgname-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Dudev=true \
-Dnative_backend=true \
-Dintrospection=true \
-Dremote_desktop=true \
-Dprofiler=false \
-Dtests=disabled \
. output
meson compile -C output
}
schemas() {
pkgdesc="Mutter schemas related files"
depends=""
amove usr/share/glib-2.0/schemas
amove usr/share/GConf/gsettings
amove usr/share/gnome-control-center/keybindings
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
3255e5c63ac91309f0fa1b5312a4a5db07215cb9fdcfff4aacf99e8f29682c614fcf551d6a04ab3818808627d76ef7397aa7f89085356f81a4c0535ddf84aa88 mutter-47.1.tar.xz
3e5dd59f2f2fd80edde13f64d70d52a023dec303fd8dbfa3ded0d77faf7643179f2ad74d4acd3450decb67deaf6ac85a7af5146fa96f33917b4363f884413af9 fixudev-req.patch
ec94fdecb7a3213903d013c1e6f48e02f8a1972ded16c3604627984cfce0936a0276d284c20e746eb91bf97249785bcf827f6fa55f1629e5290e19423d554e4d pcversion.patch
"
@@ -0,0 +1,16 @@
Apparently the version limit is only required for systemd udev, it works
just fine with our version of eudev.
diff --git a/meson.build b/meson.build
index 2605a65..3550496 100644
--- a/meson.build
+++ b/meson.build
@@ -218,7 +218,7 @@ endif
have_libgudev = get_option('udev')
if have_libgudev
- libudev_dep = dependency('libudev', version: udev_req)
+ libudev_dep = dependency('libudev')
gudev_dep = dependency('gudev-1.0', version: gudev_req)
udev_dep = dependency('udev')
@@ -0,0 +1,14 @@
apk-tools 2.12.10 fails with this in a .pc depends file
diff --git a/meson.build b/meson.build
index 2541192..1c9ab7f 100644
--- a/meson.build
+++ b/meson.build
@@ -26,7 +26,7 @@ pango_req = '>= 1.46.0'
cairo_req = '>= 1.10.0'
pangocairo_req = '>= 1.20'
pixman_req = '>= 0.42'
-gsettings_desktop_schemas_req = '>= 47.beta'
+gsettings_desktop_schemas_req = '>= 47'
x11_req = '>= 1.7.0'
xcomposite_req = '>= 0.4'
xkbcommon_req = '>= 0.4.3'
+107
View File
@@ -0,0 +1,107 @@
# Forked from Alpine to add systemd!
pkgname=mutter46
pkgver=99946.2
_pkgver=46.2
pkgrel=0
pkgdesc="Mutter compositor for ElementaryOS Pantheon desktop"
url="https://wiki.gnome.org/Projects/Mutter/"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gnome-settings-daemon
gsettings-desktop-schemas
mutter-schemas
xkeyboard-config
"
makedepends="
at-spi2-core-dev
cairo-dev
dbus-dev
eudev-dev
fribidi-dev
gdk-pixbuf-dev
glib-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gobject-introspection-dev
graphene-dev
gtk4.0-dev
json-glib-dev
lcms2-dev
libcanberra-dev
libdrm-dev
libei-dev
libgudev-dev
libice-dev
libinput-dev
libsm-dev
libwacom-dev
libx11-dev
libxau-dev
libxcb-dev
libxcomposite-dev
libxcursor-dev
libxdamage-dev
libxext-dev
libxfixes-dev
libxi-dev
libxinerama-dev
libxkbcommon-dev
libxkbfile-dev
libxrandr-dev
libxrender-dev
libxtst-dev
mesa-dev
meson
pango-dev
pipewire-dev
startup-notification-dev
systemd-dev
wayland-dev
wayland-protocols
xkeyboard-config-dev
xwayland-dev
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-lang $pkgname-schemas::noarch"
source="https://download.gnome.org/sources/mutter/${_pkgver%.*}/mutter-$_pkgver.tar.xz
fixudev-req.patch
pcversion.patch
"
builddir="$srcdir/mutter-$_pkgver"
build() {
abuild-meson \
-Db_lto=true \
-Degl_device=true \
-Dudev=true \
-Dnative_backend=true \
-Dintrospection=true \
-Dremote_desktop=true \
-Dprofiler=false \
-Dtests=false \
. output
meson compile -C output
}
schemas() {
pkgdesc="Mutter schemas related files"
depends=""
amove usr/share/glib-2.0/schemas
amove usr/share/GConf/gsettings
amove usr/share/gnome-control-center/keybindings
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
7d8fd3ed38266e993691ee47d9a4e314e439e3269d6b0ed73fb192efa3c29d64edc2c45c178fa99c6807c8f31aca1a3524ccf3986b3a36c5e7cc66ad89b94e53 mutter-46.2.tar.xz
3e5dd59f2f2fd80edde13f64d70d52a023dec303fd8dbfa3ded0d77faf7643179f2ad74d4acd3450decb67deaf6ac85a7af5146fa96f33917b4363f884413af9 fixudev-req.patch
670927a5528f9fec4801b7dab8a377b7280c239acb1f7a9077647deef71119738deb958a94d4ce0a99d39b29eeab3b2505698f7d19b880bbcec9f5260202d3a6 pcversion.patch
"
@@ -0,0 +1,16 @@
Apparently the version limit is only required for systemd udev, it works
just fine with our version of eudev.
diff --git a/meson.build b/meson.build
index 2605a65..3550496 100644
--- a/meson.build
+++ b/meson.build
@@ -218,7 +218,7 @@ endif
have_libgudev = get_option('udev')
if have_libgudev
- libudev_dep = dependency('libudev', version: udev_req)
+ libudev_dep = dependency('libudev')
gudev_dep = dependency('gudev-1.0', version: gudev_req)
udev_dep = dependency('udev')
+241
View File
@@ -0,0 +1,241 @@
# Forked from Alpine to build with systemd support.
# integrates with logind for sleepmonitor and sessionmonitor.
pkgname=networkmanager
pkgver=9991.50.0
_pkgver=1.50.0
pkgrel=2
pkgdesc="Network Management daemon"
url="https://wiki.gnome.org/Projects/NetworkManager"
arch="all"
license="GPL-2.0-or-later"
depends_dev="$pkgname=$pkgver-r$pkgrel libnm=$pkgver-r$pkgrel"
makedepends="
bash
curl-dev
dbus-glib-dev
eudev-dev
gettext-dev
gnutls-dev
gobject-introspection-dev
jansson-dev
libgudev-dev
libndp-dev
libnl3-dev
libpsl-dev
libxslt
linux-headers
meson
mobile-broadband-provider-info
modemmanager-dev
newt-dev
nss-dev
openresolv
perl
polkit-dev
ppp-dev
py3-gobject3
python3
readline-dev
systemd-dev
util-linux-dev
vala
wireless-regdb
"
checkdepends="
bash
dbus
iproute2-minimal
iproute2-tc
py3-dbus
"
install="
$pkgname.pre-install
$pkgname.pre-upgrade
$pkgname.post-install
$pkgname.post-upgrade
"
subpackages="
$pkgname-dbg
libnm
$pkgname-dev
$pkgname-lang
$pkgname-systemd
$pkgname-adsl
$pkgname-bluetooth
$pkgname-ovs
$pkgname-ppp
$pkgname-wwan
$pkgname-wifi
$pkgname-cli
$pkgname-tui
$pkgname-initrd-generator:initrd_generator
$pkgname-bash-completion
$pkgname-dnsmasq
"
source="https://download.gnome.org/sources/NetworkManager/${_pkgver:0:4}/NetworkManager-$_pkgver.tar.xz
$pkgname.conf
$pkgname.rules
"
builddir="$srcdir/NetworkManager-$_pkgver"
# on the builders:
# mount("/sys") failed with Operation not permitted (1)
options="!check"
_plugindir="usr/lib/NetworkManager/$_pkgver"
build() {
msg 'Building with systemd'
abuild-meson \
-Db_lto=true \
-Dconfig_dhcp_default=internal \
-Dconfig_plugins_default=ifupdown \
-Dcrypto=nss \
-Ddbus_conf_dir=/usr/share/dbus-1/system.d \
-Ddhcpcd=true \
-Ddnsmasq=/usr/sbin/dnsmasq \
-Ddocs=false \
-Difupdown=true \
-Diptables=/sbin/iptables \
-Diwd=true \
-Dlibaudit=no \
-Dmodify_system=true \
-Dnft=/usr/sbin/nft \
-Dofono=true \
-Dpolkit=true \
-Dpppd=/usr/sbin/pppd \
-Dpppd_plugin_dir=/usr/lib/pppd/2.5.1 \
-Dqt=false \
-Dselinux=false \
-Dsystemdsystemunitdir=/usr/lib/systemd/system \
-Dudev_dir=/usr/lib/udev \
-Dvapi=true \
-Dsession_tracking=systemd \
-Dsuspend_resume=systemd \
-Dsystemd_journal=true \
-Dtests="$(want_check && echo yes || echo no)" \
. output
meson compile -C output
}
check() {
XDG_RUNTIME_DIR="$(mktemp -d -p "$builddir")" \
dbus-run-session -- \
meson test -t 4 --no-rebuild --print-errorlogs -C output
}
package() {
depends="
libnm=$pkgver-r$pkgrel
dbus
"
replaces="$pkgname-common"
DESTDIR="$pkgdir" meson install --no-rebuild -C output
install -m644 -D "$srcdir/$pkgname.conf" "$pkgdir"/etc/NetworkManager/NetworkManager.conf
# allow plugdev users to modify connections
install -m644 -D "$srcdir/$pkgname.rules" \
"$pkgdir/usr/share/polkit-1/rules.d/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
}
dev() {
default_dev
amove usr/share/dbus-1/interfaces/*.xml
}
libnm() {
pkgdesc="GObject-based client library for NetworkManager"
depends=""
replaces="$pkgname<1.34.0-r3 $pkgname-elogind<1.34.0-r3"
amove usr/lib/libnm.so*
}
adsl() {
_default_plugin
pkgdesc="ADSL device plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel ppp-pppoe"
}
bluetooth() {
_default_plugin
pkgdesc="BlueTooth device plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel bluez"
}
ovs() {
_default_plugin
pkgdesc="Open vSwitch device plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel openvswitch"
}
ppp() {
pkgdesc="PPP plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel ppp"
amove $_plugindir/libnm-ppp-plugin.so
amove usr/lib/pppd/*/nm-pppd-plugin.so
}
wifi() {
_default_plugin
pkgdesc="WiFi device plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel wireless-regdb"
install="$subpkgname.post-install"
}
wwan() {
_default_plugin
pkgdesc="Mobile broadband device plugin for NetworkManager"
install_if="$pkgname=$pkgver-r$pkgrel mobile-broadband-provider-info"
}
cli() {
pkgdesc="$pkgdesc (command line interface)"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/bin/nmcli
}
tui() {
pkgdesc="$pkgdesc (textbased user interface)"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/bin/nmtui*
}
initrd_generator() {
pkgdesc="Early boot NetworkManager configuration generator"
depends="" # Q: should it depend on $pkgname?
replaces="$pkgname<1.34.0-r3"
amove usr/libexec/nm-initrd-generator
}
dnsmasq() {
pkgdesc="Support for NetworkManager dnsmasq features"
install_if="$pkgname=$pkgver-r$pkgrel dnsmasq"
depends="dnsmasq-dnssec-dbus"
mkdir -p "$subpkgdir"
}
_default_plugin() {
amove $_plugindir/libnm*-${subpkgname#"$pkgname"-}.so
}
systemd() {
install="$subpkgname.post-install $subpkgname.pre-deinstall"
default_systemd
}
sha512sums="
4b4cc15a13525112f0328f2b3f566f1584caa6dae6a650535dd3ea8b2df100f0d76b4d9e8ee3989afb9f7ed3fd21b175d9c3c19789318f2d1db409480fa755df NetworkManager-1.50.0.tar.xz
0f79016bf717dea43830962f524deae8d1cedc274376e40bd912ebe63208c5b1c3b7a5aa14379da19020c587dbd5588df2f0066ca1540070a226983a43e4159b networkmanager.conf
9820ed2ead0af689644842de57657bb10330a1eaff0e85b21ae9913f55e399e47d8b41b0a12956f30de80272b4424c6e55f33acbc88e156879003a260bf576f6 networkmanager.rules
"
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_post_install system NetworkManager.service
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall system NetworkManager.service
@@ -0,0 +1,14 @@
#!/bin/sh
cat >&2 <<EOF
*
* To control WiFi devices, install either 'wpa_supplicant' or 'iwd' package,
* enable and start the corresponding service (rc-update add <name>;
* rc-service <name> start), and restart networkmanager.
*
* If you chose iwd, you have to also add 'wifi.backend=iwd' into section
* '[device]' in /etc/NetworkManager/NetworkManager.conf.
*
EOF
exit 0
@@ -0,0 +1,2 @@
[main]
dhcp=internal
@@ -0,0 +1,16 @@
#!/bin/sh
cat >&2 <<EOF
*
* To modify system network connections without the root password, add your user
* account to the 'plugdev' group.
*
* If you use wifi, bluetooth, ppp, wwan (mobile broadband), adsl or ovs (Open
* vSwitch), install the corresponding plugin: apk add networkmanager-<name>.
*
* If you use NetworkManager features which require dnsmasq, you need to install
* dnsmasq support: apk add networkmanager-dnsmasq
*
EOF
exit 0
@@ -0,0 +1,15 @@
#!/bin/sh
ver_old=$2
if [ "$(apk version -t "$ver_old" '1.34.0-r3')" = '<' ]; then
cat >&2 <<-EOF
*
* NetworkManager plugins adsl, bluetooth, ovs, ppp, wwan (mobile broadband),
* and wifi have been split into subpackages. If you use some of them, install
* the corresponding packages (e.g. 'apk add networkmanager-wifi').
*
EOF
fi
exit 0
@@ -0,0 +1,5 @@
#!/bin/sh
addgroup -S plugdev 2>/dev/null
exit 0
@@ -0,0 +1 @@
networkmanager.pre-install
@@ -0,0 +1,9 @@
// Let users in plugdev group modify NetworkManager
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" &&
subject.isInGroup("plugdev") && subject.active) {
return "yes";
}
});
@@ -0,0 +1,81 @@
# Forked from Alpine to add systemd!
pkgname=pantheon-applications-menu
pkgver=8.0.0
pkgrel=0
pkgdesc="Applications menu"
url="https://github.com/elementary/applications-menu"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
cairo
dconf
graphene
gtk4.0
libcanberra
libgee
libhandy1
libxfixes
mutter46
sqlite
systemd-libs
wayland
"
makedepends="
bc
cairo-dev
desktop-file-utils
dbus-dev
glib-dev
gnome-desktop-dev
gnome-settings-daemon-dev
gobject-introspection-dev
graphene-dev
gtk+3.0-dev
gtk4.0-dev
json-glib-dev
lcms2-dev
libcanberra-dev
libei-dev
granite-dev
granite7-dev
libgee-dev
libgudev-dev
libhandy1-dev
libice-dev
libinput-dev
libsoup-dev
libsm-dev
libx11-dev
libxau-dev
libxcb-dev
libxfixes-dev
meson
mutter46-dev
cmake
wayland-dev
wayland-protocols
xwayland-dev
systemd-dev
zeitgeist-dev
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/applications-menu/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/applications-menu-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
d0cd32e517f31e14e9bdd104f709a4fb3b80120785740871c62eaeceb03b9d66024ff7411d9899d2564355596783ab3f774bfd4e8273289a92b113185d1c04eb pantheon-applications-menu-8.0.0.tar.gz
"
@@ -0,0 +1,35 @@
# Forked from Alpine to add systemd!
pkgname=pantheon-default-settings
pkgver=8.0.2
pkgrel=0
pkgdesc="Pantheon default settings"
url="https://github.com/elementary/default-settings"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
# uses fat ln
makedepends="
meson
coreutils
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/default-settings/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/default-settings-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
rm "${pkgdir}"/usr/share/cups/data/default-testpage.pdf
}
sha512sums="
91b154a3449d547117a7898396da719cbe080319daf6b03f4dcadee7025de1dbbc8397acdc1088cdb8855bae9a98e8bf576a462fa71f0e6688c11800f3761293 pantheon-default-settings-8.0.2.tar.gz
"
@@ -0,0 +1,48 @@
# Forked from Alpine to add systemd!
pkgname=pantheon-files
pkgver=7.1.0
pkgrel=0
pkgdesc="ElementaryOS files application"
url="https://github.com/elementary/files"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gala
"
makedepends="
libcanberra-dev
libcloudproviders-dev
libgit2-glib-dev
gtk+3.0-dev
libhandy1-dev
libgee-dev
glib-dev
granite-dev
meson
libportal-dev
libportal-gtk3
pango-dev
sqlite-dev
vala
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/files/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/files-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
f86e3911e8453e223e8f802cbef5dd3b7f67c710412e7bb22b920443a4d73de414fbd7a52c91038f8d8e99c364ee34e210833765f33238594372d1b19a2c3932 pantheon-files-7.1.0.tar.gz
"
@@ -0,0 +1,46 @@
# Forked from Alpine to add systemd!
pkgname=pantheon-session
pkgver=8.0.1
pkgrel=0
pkgdesc="Pantheon settings daemon"
url="https://github.com/elementary/session-settings"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gala
gnome-session
gnome-settings-daemon
pantheon-applications-menu
orca
plank
wingpanel
xdg-user-dirs-gtk
onboard
"
makedepends="
onboard
meson
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/session-settings/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/session-settings-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
-Dfallback-session=gnome \
-Dwayland=true \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
119bb339b14fd52cbdc56ca001536dafa7ba814caa167b1bda7a803f0ccf4ca5db76acf22220852e44b0680b8f89ac3258663fa0ad9c59c39fd77fd5bbd93c1a pantheon-session-8.0.1.tar.gz
"
@@ -0,0 +1,44 @@
# Forked from Alpine to add systemd!
pkgname=pantheon-settings-daemon
pkgver=8.1.0
pkgrel=0
pkgdesc="Pantheon settings daemon"
url="https://github.com/elementary/settings-daemon"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gala
"
makedepends="
gala-dev
libgee-dev
glib-dev
granite-dev
meson
mutter46-dev
vala
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
source="$pkgname-$pkgver.tar.gz::https://github.com/elementary/settings-daemon/archive/refs/tags/$pkgver.tar.gz
fwupd-2.0-compat.patch
"
builddir="$srcdir/settings-daemon-$pkgver"
build() {
abuild-meson \
--prefix=/usr \
. output
meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
21f1120cffbfa9f4c5c70401def6602daf924dfa6664bdb0a18af4c26330b5b47016f9f4753029307a64fbd44b4642383bde364129fc79931cf3b66db1265dcb pantheon-settings-daemon-8.1.0.tar.gz
62300fe5f05581d19e53875a2038862101c387689ee8973a67e7c2dfbf10c21cda19406563a00d65015acda882c87f068d4f96ca2142e7479dcb4ab1054645c5 fwupd-2.0-compat.patch
"
@@ -0,0 +1,13 @@
diff --git a/src/Application.vala b/src/Application.vala
index 31322ee..75599d0 100644
--- a/src/Application.vala
+++ b/src/Application.vala
@@ -137,7 +137,7 @@ public sealed class SettingsDaemon.Application : Gtk.Application {
var devices = client.get_devices ();
foreach (unowned var device in devices) {
- if (!device.has_flag (Fwupd.DEVICE_FLAG_UPDATABLE)) {
+ if (!device.has_flag (Fwupd.DeviceFlags.UPDATABLE)) {
continue;
}
+259
View File
@@ -0,0 +1,259 @@
# Forked from Alpine to rebuild with systemd support
pkgname=pipewire
pkgver=9991.2.6
_pkgver=1.2.6
pkgrel=0
_so_ver=0.3
pkgdesc="Multimedia processing graphs"
url="https://pipewire.org/"
arch="all"
license="LGPL-2.1-or-later"
pkggroups="pipewire"
makedepends="
alsa-lib-dev
avahi-dev
bash
bluez-dev
dbus-dev
doxygen
fdk-aac-dev
glib-dev
graphviz
gst-plugins-base-dev
gstreamer-dev
jack-dev
libcamera-dev
libfreeaptx-dev
liblc3-dev
libusb-dev
libx11-dev
lilv-dev
meson
modemmanager-dev
ncurses-dev
pulseaudio-dev
py3-docutils
readline-dev
roc-toolkit-dev
sbc-dev
vulkan-loader-dev
xmltoman
systemd-dev
"
# move regular -dev after -jackdev, to steal files
subpackages="
$pkgname-dbg
$pkgname-doc
$pkgname-alsa
$pkgname-pulse
$pkgname-jack
$pkgname-jack-dev:jackdev
$pkgname-dev
gst-plugin-pipewire:gst_plugin
$pkgname-zeroconf
$pkgname-spa-bluez
$pkgname-spa-vulkan
$pkgname-tools
$pkgname-spa-tools:spa_tools
$pkgname-lang
"
install="$pkgname.post-upgrade $pkgname.post-install $pkgname.pre-deinstall"
source="https://gitlab.freedesktop.org/PipeWire/pipewire/-/archive/$_pkgver/pipewire-$_pkgver.tar.gz
pipewire.desktop
pipewire-launcher.sh
"
builddir="$srcdir/$pkgname-$_pkgver"
case "$CARCH" in
s390x)
# libldac not available for big endian
;;
*)
makedepends="$makedepends libldac-dev"
;;
esac
case "$CARCH" in
ppc64le|s390x|riscv64)
# no webrtc-audio-processing
;;
*)
makedepends="$makedepends webrtc-audio-processing-1-dev"
subpackages="$subpackages $pkgname-echo-cancel:echo_cancel"
;;
esac
# put libs last to steal residual files taken by some prior extras
subpackages="$subpackages $pkgname-libs"
build() {
CFLAGS="$CFLAGS -O2" \
CXXFLAGS="$CXXFLAGS -O2" \
CPPFLAGS="$CPPFLAGS -O2" \
abuild-meson \
-Dlibjack-path=/usr/lib \
-Dlibv4l2-path=/usr/lib \
-Ddocs=disabled \
-Dman=enabled \
-Dgstreamer=enabled \
-Dexamples=enabled \
-Dffmpeg=disabled \
-Djack-devel=true \
-Dsystemd=enabled\
-Dvulkan=enabled \
-Dsdl2=disabled \
-Dlv2=enabled \
-Dlibcamera=enabled \
-Droc=enabled \
-Dbluez5-codec-lc3=enabled \
-Dbluez5-backend-native-mm=enabled \
-Dsession-managers=[] \
. output
meson compile -C output
}
check() {
# disable tests on armv7, this is run via qemu+binfmt on pmOS CI and fails.
# See: https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5142#note_1969455333
[ "$CARCH" = "armv7" ] && return
meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
install -Dm644 "$srcdir"/pipewire.desktop -t "$pkgdir"/etc/xdg/autostart/
install -Dm755 "$srcdir"/pipewire-launcher.sh "$pkgdir"/usr/libexec/pipewire-launcher
}
alsa() {
pkgdesc="ALSA support for pipewire"
replaces="$pkgname" # for backward compatibility
amove usr/lib/alsa-lib
amove usr/share/alsa/alsa.conf.d
install -d "$subpkgdir"/etc/alsa/conf.d
for i in "$subpkgdir"/usr/share/alsa/alsa.conf.d/*.conf; do
ln -s -- "${i#"$subpkgdir"}" "$subpkgdir"/etc/alsa/conf.d/
done
}
pulse() {
pkgdesc="Pulseaudio support for pipewire"
depends="
pipewire-session-manager
pulseaudio-utils
"
provides="pulseaudio=$pkgver-r$pkgrel pulseaudio-bluez=$pkgver-r$pkgrel"
provider_priority=1
install="$subpkgname.post-install $subpkgname.pre-deinstall"
amove usr/bin/pipewire-pulse
amove usr/lib/pipewire-$_so_ver/libpipewire-module-protocol-pulse.so
amove usr/lib/pipewire-$_so_ver/libpipewire-module-pulse-tunnel.so
amove usr/lib/pipewire-$_so_ver/libpipewire-module-filter-chain-lv2.so
amove usr/share/pipewire/pipewire-pulse.conf
amove usr/share/pipewire/pipewire-pulse.conf.avail
amove usr/lib/systemd/user/pipewire-pulse.service
amove usr/lib/systemd/user/pipewire-pulse.socket
}
jack() {
pkgdesc="JACK support for pipewire"
depends="pipewire-session-manager"
provides="jack=$pkgver-r$pkgrel"
replaces="jack"
amove usr/lib/libjack*.so.*
amove usr/bin/pw-jack
amove usr/lib/spa-*/jack/libspa-jack.so
amove usr/share/pipewire/jack.conf
}
gst_plugin() {
pkgdesc="Multimedia graph framework - PipeWire plugin"
depends="pipewire-session-manager gst-plugins-base"
install_if="$pkgname=$pkgver-r$pkgrel gstreamer"
amove usr/lib/gstreamer-1.0
}
echo_cancel() {
pkgdesc="WebRTC-based echo canceller module for PipeWire"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/lib/pipewire-$_so_ver/libpipewire-module-echo-cancel.so
}
zeroconf() {
pkgdesc="$pkgdesc - Zeroconf support"
depends=""
provides="pulseaudio-zeroconf=$pkgver-r$pkgrel"
provider_priority=1
amove usr/lib/pipewire-$_so_ver/libpipewire-module-zeroconf-discover.so
amove usr/lib/pipewire-$_so_ver/libpipewire-module-raop-*.so
}
bluez() {
pkgdesc="PipeWire BlueZ5 SPA plugin (Bluetooth)"
depends=""
replaces="$pkgname" # for backward compatibility
amove usr/lib/spa-*/bluez5
}
vulkan() {
pkgdesc="PipeWire Vulkan SPA plugin"
depends=""
amove usr/lib/spa-*/vulkan
}
tools() {
pkgdesc="PipeWire tools"
depends="$pkgname=$pkgver-r$pkgrel"
replaces="$pkgname" # for backward compatibility
amove usr/bin/pw-*
}
spa_tools() {
pkgdesc="PipeWire SPA tools"
depends=""
replaces="$pkgname" # for backward compatibility
amove usr/bin/spa-*
}
jackdev() {
pkgdesc="JACK development files (from pipewire)"
provides="jack-dev=$pkgver-r$pkgrel"
amove usr/lib/libjack*.so
amove usr/include/jack
amove usr/lib/pkgconfig/jack.pc
}
libs() {
default_libs
# the libraries must be paired with the client config and the plugins,
# see:
# https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3296
# https://bugs.archlinux.org/task/78813
amove \
usr/share/pipewire/client*.conf* \
usr/lib/pipewire-*/ \
usr/lib/spa-*/
}
sha512sums="
8f444695a3ec4c03fa1a9735d0c08031631b565ff8fbee0edcbbbdf87330da632eb87ba92a9071cbfa2d9ed96705002e63ae7c48277fc45a0a3b793fff39819a pipewire-1.2.6.tar.gz
b70b05151bcf4b7f13d68b2731d789b9c062fadfcb91f4ed6bdb0d495390b0010f57034fb115a053e1459c7d9ea27523ca1c0c69639aeeb96c17ebac8dfc5b57 pipewire.desktop
6f4322d306bef346187778fc0975d608fdd37d4c8e08815a0aed28ef7e07c3f21d6a80b70743d0f867bdc237f5e1dc28131c778e7a45e363e5677668ce7acdb1 pipewire-launcher.sh
"
@@ -0,0 +1,22 @@
#!/bin/sh
# We need to kill any existing pipewire instance to restore sound
pkill -u "${USER}" -fx /usr/bin/pipewire-pulse 1>/dev/null 2>&1
pkill -u "${USER}" -fx /usr/bin/pipewire-media-session 1>/dev/null 2>&1
pkill -u "${USER}" -fx /usr/bin/wireplumber 1>/dev/null 2>&1
pkill -u "${USER}" -fx /usr/bin/pipewire 1>/dev/null 2>&1
exec /usr/bin/pipewire &
# wait for pipewire to start before attempting to start related daemons
while [ "$(pgrep -f /usr/bin/pipewire)" = "" ]; do
sleep 1
done
if [ -x /usr/bin/wireplumber ]; then
exec /usr/bin/wireplumber &
elif [ -x /usr/bin/pipewire-media-session ]; then
exec /usr/bin/pipewire-media-session &
fi
[ -f "/usr/share/pipewire/pipewire-pulse.conf" ] && exec /usr/bin/pipewire-pulse &
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_post_install user pipewire-pulse.socket
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall user pipewire-pulse.socket
@@ -0,0 +1,10 @@
[Desktop Entry]
Version=1.0
Name=Pipewire
Comment=Start Pipewire
Exec=/usr/libexec/pipewire-launcher
Terminal=false
Type=Application
X-KDE-autostart-phase=1
X-GNOME-HiddenUnderSystemd=true
X-systemd-skip=true
@@ -0,0 +1,6 @@
#!/bin/sh
addgroup -S pipewire 2>/dev/null
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_post_install user pipewire.socket
@@ -0,0 +1,14 @@
#!/bin/sh
ver_old="$2"
if [ "$(apk version -t "$ver_old" '0.3.33-r3')" = '<' ]; then
cat >&2 <<-EOF
*
* Pipewire bluez5 (Bluetooth) and FFmpeg SPA plugins, ALSA support, pw-* and
* spa-* tools have been moved to subpackages. If you use them, install
* pipewire-spa-bluez, pipewire-spa-ffmpeg, pipewire-alsa, pipewire-tools and/or
* pipewire-spa-tools, repsectively.
*
EOF
fi
@@ -0,0 +1,4 @@
#!/bin/sh
. /usr/lib/systemd/systemd-apk-macros.sh
systemd_service_pre_deinstall user pipewire.socket
+62
View File
@@ -0,0 +1,62 @@
# Forked from Alpine to add systemd!
pkgname=plank
pkgver=0.11.89
pkgrel=0
pkgdesc="Pantheon top panel"
url="https://github.com/elementary/wingpanel"
arch="all !s390x" # no libei-dev for s390x
license="GPL-2.0-or-later"
depends="
gala
"
makedepends="
autoconf
automake
gala-dev
gnome-menus-dev
libbamf-dev
libgee-dev
libwnck3
glib-dev
granite-dev
gnome-common
intltool
libxfixes-dev
pango-dev
cairo-dev
mutter46-dev
vala
"
# TODO: crossdirect disabled due to armv7 crosscompile failure on x86_64, see
# https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5115#note_1899890119
options="!check !pmb:crossdirect" # Can't be run with release builds
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ricotz/plank/archive/refs/tags/$pkgver.tar.gz
applications-Properly-handle-possible-error.patch
"
builddir="$srcdir/$pkgname-$pkgver"
prepare() {
cd $builddir
sed 's/0.19.6/0.20/' -i configure.ac
NOCONFIGURE=1 ./autogen.sh
}
build() {
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--disable-apport
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
make DESTDIR="${pkgdir}" install
}
sha512sums="
565cc84f8f4b39a2e076ccc9dfe73627f4735d1731e947e0aa94843b5528f67547d59b59e832c7ea32fe6c228cb473f4d841f06e74f7ac4885eff8167cffb52e plank-0.11.89.tar.gz
b56fb9ef99b4ee5769c9e1b561a47a999dfacf3991a6e6347372f470dc52b3b4da779afc17c6077347b728bd9c381c921d03f5d9478ed6b52c509a140f1eb363 applications-Properly-handle-possible-error.patch
"
@@ -0,0 +1,51 @@
From 5967798a47ba8835ae100c01a8d647d2f9a2412f Mon Sep 17 00:00:00 2001
From: Rico Tzschichholz <ricotz@ubuntu.com>
Date: Wed, 27 May 2020 17:28:27 +0200
Subject: [PATCH] applications: Properly handle possible error of
GMenu.Tree.load_sync()
Prevent crash on "g_mutex_clear() called on uninitialised or locked mutex"
---
docklets/Applications/ApplicationsDockItem.vala | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/docklets/Applications/ApplicationsDockItem.vala b/docklets/Applications/ApplicationsDockItem.vala
index dcb6cd1a..67d17ff5 100644
--- a/docklets/Applications/ApplicationsDockItem.vala
+++ b/docklets/Applications/ApplicationsDockItem.vala
@@ -23,6 +23,7 @@ namespace Docky
{
GMenu.Tree apps_menu;
Mutex apps_menu_mutex;
+ bool apps_loaded;
/**
* {@inheritDoc}
@@ -52,7 +53,13 @@ namespace Docky
{
Worker.get_default ().add_task_with_result.begin<void*> (() => {
apps_menu_mutex.lock ();
- apps_menu.load_sync ();
+ try {
+ apps_menu.load_sync ();
+ apps_loaded = true;
+ } catch (Error e) {
+ warning ("Failed to load applications (%s)", e.message);
+ apps_loaded = false;
+ }
apps_menu_mutex.unlock ();
return null;
}, TaskPriority.HIGH);
@@ -72,6 +79,12 @@ namespace Docky
{
var items = new Gee.ArrayList<Gtk.MenuItem> ();
+ if (!apps_loaded) {
+ var item = create_menu_item (_("No applications available"), null, false);
+ items.add (item);
+ return items;
+ }
+
var iter = apps_menu.get_root_directory ().iter ();
GMenu.TreeItemType type;
while ((type = iter.next ()) != GMenu.TreeItemType.INVALID) {
@@ -0,0 +1,200 @@
# Forked from Alpine to add systemd!
pkgname=plasma-workspace
pkgver=99996.2.2
_pkgver=6.2.2
pkgrel=1
pkgdesc="KDE Plasma Workspace"
# armhf blocked by extra-cmake-modules
arch="all !armhf !armv7"
url="https://kde.org/plasma-desktop/"
license="(GPL-2.0-only OR GPL-3.0-only) AND LGPL-2.1-or-later AND GPL-2.0-or-later AND MIT AND LGPL-2.1-only AND LGPL-2.0-or-later AND (LGPL-2.1-only OR LGPL-3.0-only) AND LGPL-2.0-only"
depends="
accountsservice
fprintd
kactivitymanagerd
kde-cli-tools
kded
kio-extras
kirigami
kirigami-addons
kwin
milou
pipewire-session-manager
plasma-integration
qt6-qttools
tzdata
xdg-desktop-portal-gtk
"
depends_dev="
baloo-dev
breeze-dev
eudev-dev
gpsd-dev
icu-dev
iso-codes-dev
karchive-dev
kauth-dev
kcmutils-dev
kcoreaddons-dev
kcrash-dev
kdbusaddons-dev
kdeclarative-dev
kded-dev
kglobalaccel-dev
kglobalacceld-dev
kguiaddons-dev
kholidays-dev
ki18n-dev
kiconthemes-dev
kidletime-dev
kio-dev
kitemmodels-dev
knewstuff-dev
knotifications-dev
knotifyconfig-dev
kpackage-dev
kparts-dev
kpipewire-dev
kquickcharts-dev
krunner-dev
kscreenlocker-dev
kstatusnotifieritem-dev
ksvg-dev
ktexteditor-dev
ktextwidgets-dev
kunitconversion-dev
kuserfeedback-dev
kwayland-dev
kwin-dev
layer-shell-qt-dev
libcanberra-dev
libkexiv2-dev
libkscreen-dev
libksysguard-dev
libplasma-dev
libqalculate-dev
networkmanager-qt-dev
phonon-dev
plasma-activities-stats-dev
plasma-wayland-protocols
plasma5support-dev
prison-dev
qcoro-dev
qt6-qtpositioning-dev
qt6-qtwayland-dev
wayland-dev
wayland-protocols
zlib-dev
"
makedepends="$depends_dev
extra-cmake-modules
kded
kdoctools-dev
libxtst-dev
qt6-qttools-dev
samurai
xdotool
systemd
"
checkdepends="
dbus
xvfb-run
"
case "$_pkgver" in
*.90*) _rel=unstable;;
*) _rel=stable;;
esac
subpackages="
$pkgname-dbg
$pkgname-dev
$pkgname-libs
$pkgname-doc
$pkgname-lang
$pkgname-zsh-completion
$pkgname-systemd
$pkgname-x11
"
_repo_url="https://invent.kde.org/plasma/plasma-workspace.git"
source="https://download.kde.org/$_rel/plasma/$_pkgver/plasma-workspace-$_pkgver.tar.xz"
builddir="$srcdir/$pkgname-$_pkgver"
replaces="xdg-desktop-portal-kde<=6.1.5-r0"
# secfixes:
# 6.0.5.1:
# - CVE-2024-36041
build() {
# reduce size of debug syms
CFLAGS="$CFLAGS -O2 -g1" CXXFLAGS="$CXXFLAGS -O2 -g1" \
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DPLASMA_X11_DEFAULT_SESSION=OFF \
-DINSTALL_SDDM_WAYLAND_SESSION=OFF # Fails to get permissions to take control over tty
# workaround for:
# https://invent.kde.org/plasma/plasma-workspace/-/issues/132
ninja -C build shell/qwayland-plasma-shell.h
ninja -C build shell/wayland-plasma-shell-client-protocol.h
cmake --build build
}
check() {
local skipped_tests="(tasktoolstest"
local tests="
dbusmethodcalltest
dbusservicewatchertest
fetchinitialplayertest
keystatetest
klipper-testHistoryModel
lockedtest
mediakeystest
mprisdeclarativetest
servicerunnertest
shelltest
tasksmodeltest
testdesktop
testimagebackend
testimagefinder
testimagefrontend
testimagelistmodel
testimageproxymodel
testmediametadatafinder
testpackageimagelistmodel
testrunnermodel
testslidefiltermodel
testslidemodel
tst_triangleFilter
waylandtasksmodeltest
xwindowtasksmodeltest
"
case "$CARCH" in
arm*|aarch64|ppc64le) tests="$tests calculatorrunnertest" ;;
esac
for test in $tests; do
skipped_tests="$skipped_tests|$test"
done
skipped_tests="$skipped_tests)"
dbus-run-session -- xvfb-run -a ctest --test-dir build --output-on-failure -E "$skipped_tests"
}
package() {
DESTDIR="$pkgdir" cmake --install build
}
x11() {
pkgdesc="X11 desktop launcher for $pkgname"
depends="xorg-server"
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
amove usr/bin/startplasma-x11 usr/share/xsessions/plasmax11.desktop
}
sha512sums="
63d54c5cfaaecb6bcb1915153c39b796e1459295f247fbe84d522c2f60cf94bb827fbd17dbd62a8851a9ed57f0eb1a157ecbd68a8a6a80a6db6d094ea662cf42 plasma-workspace-6.2.2.tar.xz
"
Loaded 100 of 199 files, more files were not shown because too many files have changed in this diff. Show more