feat(cosmic): ship cosmic-greeter-dinit package, wire COSMIC greeter in calamares (pkgrel 13)

This commit is contained in:
2026-08-16 19:16:18 +02:00
parent 4abbf8d6d8
commit b426eec585
7 changed files with 49 additions and 3 deletions
+1
View File
@@ -12,6 +12,7 @@ packages:
- pipewire - pipewire
- calamares - calamares
- calamares-branding-antergos-next - calamares-branding-antergos-next
- cosmic-greeter-dinit
- antergos-xfce-theme - antergos-xfce-theme
- downgrade - downgrade
- yay - yay
+6 -3
View File
@@ -1,11 +1,11 @@
# Maintainer: Celestia Ludenberg <ash8820@proton.me> # Maintainer: Michał <ash8820@proton.me>
# Contributor: Antergos NeXT Team # Contributor: Antergos NeXT Team
# Upstream: Calamares team # Upstream: Calamares team
_pkgname="calamares" _pkgname="calamares"
pkgname="$_pkgname" pkgname="$_pkgname"
pkgver=3.4.2 pkgver=3.4.2
pkgrel=12 pkgrel=13
pkgdesc="Distribution-independent installer framework" pkgdesc="Distribution-independent installer framework"
url="https://codeberg.org/Calamares/calamares" url="https://codeberg.org/Calamares/calamares"
license=("GPL-3.0-or-later") 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')," \ sed -i "/DesktopEnvironment('\/usr\/bin\/Hyprland', 'hyprland'),/a\ DesktopEnvironment('/usr/bin/start-cosmic', 'cosmic')," \
"$_pkgsrc_dir/src/modules/displaymanager/main.py" "$_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" "$_pkgsrc_dir/src/modules/displaymanager/main.py"
local _cmake_options=( local _cmake_options=(
+25
View File
@@ -0,0 +1,25 @@
# Maintainer: Michał <ash8820@proton.me>
# 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"
}
@@ -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
@@ -0,0 +1,5 @@
type = process
command = /usr/bin/cosmic-greeter-daemon
smooth-recovery = true
depends-on = dbus
depends-on = cosmic-greeter-pre
@@ -0,0 +1,2 @@
# The dinit logfile setting requires its directory to exist (see dinit-service(5)).
d /var/log/dinit 0755 root root -
@@ -0,0 +1,3 @@
type = scripted
command = /usr/bin/install -dm0755 -o cosmic-greeter -g cosmic-greeter /run/cosmic-greeter
depends-on = local.target