From b426eec585cebe60f249a55a219556cab86e483d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Sun, 16 Aug 2026 19:16:18 +0200 Subject: [PATCH] feat(cosmic): ship cosmic-greeter-dinit package, wire COSMIC greeter in calamares (pkgrel 13) --- packages.yaml | 1 + packages/calamares/PKGBUILD | 9 ++++--- packages/cosmic-greeter-dinit/PKGBUILD | 25 +++++++++++++++++++ packages/cosmic-greeter-dinit/cosmic-greeter | 7 ++++++ .../cosmic-greeter-daemon | 5 ++++ .../cosmic-greeter-dinit.conf | 2 ++ .../cosmic-greeter-dinit/cosmic-greeter-pre | 3 +++ 7 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 packages/cosmic-greeter-dinit/PKGBUILD create mode 100644 packages/cosmic-greeter-dinit/cosmic-greeter create mode 100644 packages/cosmic-greeter-dinit/cosmic-greeter-daemon create mode 100644 packages/cosmic-greeter-dinit/cosmic-greeter-dinit.conf create mode 100644 packages/cosmic-greeter-dinit/cosmic-greeter-pre diff --git a/packages.yaml b/packages.yaml index a444e40..250ece0 100644 --- a/packages.yaml +++ b/packages.yaml @@ -12,6 +12,7 @@ packages: - pipewire - calamares - calamares-branding-antergos-next + - cosmic-greeter-dinit - antergos-xfce-theme - downgrade - yay diff --git a/packages/calamares/PKGBUILD b/packages/calamares/PKGBUILD index c18c45a..88a8c7b 100644 --- a/packages/calamares/PKGBUILD +++ b/packages/calamares/PKGBUILD @@ -1,11 +1,11 @@ -# Maintainer: Celestia Ludenberg +# Maintainer: Michał # Contributor: Antergos NeXT Team # Upstream: Calamares team _pkgname="calamares" pkgname="$_pkgname" pkgver=3.4.2 -pkgrel=12 +pkgrel=13 pkgdesc="Distribution-independent installer framework" url="https://codeberg.org/Calamares/calamares" license=("GPL-3.0-or-later") @@ -56,7 +56,10 @@ build() { sed -i "/DesktopEnvironment('\/usr\/bin\/Hyprland', 'hyprland'),/a\ DesktopEnvironment('/usr/bin/start-cosmic', 'cosmic')," \ "$_pkgsrc_dir/src/modules/displaymanager/main.py" - sed -i 's| if os.path.exists(self.os_path("usr/bin/gtkgreet")) and os.path.exists(self.os_path("usr/bin/cage")):| if os.path.exists(self.os_path("usr/bin/cosmic-greeter-start")) and de_command == "/usr/bin/start-cosmic":\n self.config_data["default_session"]["command"] = "cosmic-greeter-start"\n self.config_data["default_session"]["user"] = "cosmic-greeter"\n self.config_data["general"] = dict(service = "cosmic-greeter")\n elif os.path.exists(self.os_path("usr/bin/gtkgreet")) and os.path.exists(self.os_path("usr/bin/cage")):|' \ + sed -i 's| return self.os_path("etc/greetd/config.toml")| if os.path.exists(self.os_path("usr/bin/cosmic-greeter-start")):\n return self.os_path("etc/greetd/cosmic-greeter.toml")\n return self.os_path("etc/greetd/config.toml")|' \ + "$_pkgsrc_dir/src/modules/displaymanager/main.py" + + sed -i 's| if os.path.exists(self.os_path("usr/bin/gtkgreet")) and os.path.exists(self.os_path("usr/bin/cage")):| if os.path.exists(self.os_path("usr/bin/cosmic-greeter-start")) and de_command == "/usr/bin/start-cosmic":\n self.config_data["default_session"]["command"] = "cosmic-greeter-start"\n self.config_data["default_session"]["user"] = "cosmic-greeter"\n self.config_data["general"] = dict(service = "cosmic-greeter")\n libcalamares.utils.target_env_call(['\''artix-service'\'', '\''disable'\'', '\''greetd'\''])\n libcalamares.utils.target_env_call(['\''artix-service'\'', '\''enable'\'', '\''cosmic-greeter'\''])\n elif os.path.exists(self.os_path("usr/bin/gtkgreet")) and os.path.exists(self.os_path("usr/bin/cage")):|' \ "$_pkgsrc_dir/src/modules/displaymanager/main.py" local _cmake_options=( diff --git a/packages/cosmic-greeter-dinit/PKGBUILD b/packages/cosmic-greeter-dinit/PKGBUILD new file mode 100644 index 0000000..8ba332f --- /dev/null +++ b/packages/cosmic-greeter-dinit/PKGBUILD @@ -0,0 +1,25 @@ +# Maintainer: Michał +# Contributor: Antergos NeXT Team +# Upstream: (none — dinit services are maintained here; Artix's cosmic-greeter ships none) + +pkgname=cosmic-greeter-dinit +pkgver=1.0 +pkgrel=1 +pkgdesc='dinit service files for cosmic-greeter (runs greetd with the cosmic config)' +arch=('any') +url="https://github.com/Antergos-NeXT/antergos-packages" +license=('GPL-3.0-or-later') +depends=('dinit' 'greetd' 'cosmic-greeter' 'elogind-dinit' 'dbus-dinit') + +source=('cosmic-greeter-pre' + 'cosmic-greeter-daemon' + 'cosmic-greeter' + 'cosmic-greeter-dinit.conf') +sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP') + +package() { + install -Dm644 "$srcdir/cosmic-greeter-pre" "$pkgdir/etc/dinit.d/cosmic-greeter-pre" + install -Dm644 "$srcdir/cosmic-greeter-daemon" "$pkgdir/etc/dinit.d/cosmic-greeter-daemon" + install -Dm644 "$srcdir/cosmic-greeter" "$pkgdir/etc/dinit.d/cosmic-greeter" + install -Dm644 "$srcdir/cosmic-greeter-dinit.conf" "$pkgdir/usr/lib/tmpfiles.d/cosmic-greeter-dinit.conf" +} diff --git a/packages/cosmic-greeter-dinit/cosmic-greeter b/packages/cosmic-greeter-dinit/cosmic-greeter new file mode 100644 index 0000000..8ae84d7 --- /dev/null +++ b/packages/cosmic-greeter-dinit/cosmic-greeter @@ -0,0 +1,7 @@ +type = process +command = /usr/bin/greetd --config /etc/greetd/cosmic-greeter.toml +smooth-recovery = true +depends-on = logind +depends-on = cosmic-greeter-daemon +depends-on = login.target +logfile = /var/log/dinit/greetd.log diff --git a/packages/cosmic-greeter-dinit/cosmic-greeter-daemon b/packages/cosmic-greeter-dinit/cosmic-greeter-daemon new file mode 100644 index 0000000..738505f --- /dev/null +++ b/packages/cosmic-greeter-dinit/cosmic-greeter-daemon @@ -0,0 +1,5 @@ +type = process +command = /usr/bin/cosmic-greeter-daemon +smooth-recovery = true +depends-on = dbus +depends-on = cosmic-greeter-pre diff --git a/packages/cosmic-greeter-dinit/cosmic-greeter-dinit.conf b/packages/cosmic-greeter-dinit/cosmic-greeter-dinit.conf new file mode 100644 index 0000000..3ce292e --- /dev/null +++ b/packages/cosmic-greeter-dinit/cosmic-greeter-dinit.conf @@ -0,0 +1,2 @@ +# The dinit logfile setting requires its directory to exist (see dinit-service(5)). +d /var/log/dinit 0755 root root - diff --git a/packages/cosmic-greeter-dinit/cosmic-greeter-pre b/packages/cosmic-greeter-dinit/cosmic-greeter-pre new file mode 100644 index 0000000..cac82f6 --- /dev/null +++ b/packages/cosmic-greeter-dinit/cosmic-greeter-pre @@ -0,0 +1,3 @@ +type = scripted +command = /usr/bin/install -dm0755 -o cosmic-greeter -g cosmic-greeter /run/cosmic-greeter +depends-on = local.target