From 71df49fd167e4508ab54017604cfa658f2e9bd3e Mon Sep 17 00:00:00 2001
From: Clayton Craft <clayton@craftyguy.net>
Date: Thu, 27 Feb 2025 15:55:59 -0800
Subject: [PATCH 1/4] systemd/postmarketos-base-systemd: add preset for COSMIC
 greeter (MR 6274)

---
 extra-repos/systemd/postmarketos-base-systemd/APKBUILD        | 4 ++--
 .../rootfs-usr-lib-systemd-system-preset-90-base.preset       | 3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/extra-repos/systemd/postmarketos-base-systemd/APKBUILD b/extra-repos/systemd/postmarketos-base-systemd/APKBUILD
index 28b3e7f882c..eddff471b2a 100644
--- a/extra-repos/systemd/postmarketos-base-systemd/APKBUILD
+++ b/extra-repos/systemd/postmarketos-base-systemd/APKBUILD
@@ -2,7 +2,7 @@
 # Co-maintainer: Clayton Craft <clayton@craftyguy.net>
 # pmbootstrap installs this, if systemd is selected in "pmbootstrap init".
 pkgname=postmarketos-base-systemd
-pkgver=31
+pkgver=32
 pkgrel=0
 pkgdesc="Meta package for running postmarketOS with systemd"
 url="https://postmarketos.org"
@@ -75,7 +75,7 @@ sha512sums="
 fbaa33425e507062a454f11bda48508f261c2144e5c23a20f567dc1cef14ce1dec57f8d934f418f5b6095509757f8503481aba9790a04c8f9f6995e65833d8c9  rootfs-etc-profile.d-99motd.sh
 2faac294bb632762e247b850f09ff4b544ccff6c462efd8d4faca71ba30bdfa9c460377a0dc88e92c5dbbe251017d164064a56ac0e0410f224b45d4f5f81866c  rootfs-etc-systemd-logind.conf
 15423bfda57c90ab62fe69865ca4072a0aeb83bf77d9c278257e346f4da81843d010b41003c91ae9f3fcb1c67447645e7c19078eea2bf11312051e6ad7523ad1  rootfs-usr-share-mkinitfs-files-extra-01-initramfs-base-systemd.files
-a9baea9a96656dc15991a4e72c6fa6be531023e24fe821217a5bcdbd130a1d9abe4013e6529ea6edd8e0ae15ba7200a257221454d2f1c24bc6cd11761eaa6e67  rootfs-usr-lib-systemd-system-preset-90-base.preset
+39a86d6e6f383ff89b7b51be2a1e5db94de540062c2a84f0c4420a6fc1f65db898d60d40c2404ec63d68ee30f16eb4d169cc520dac4d6b912ec5d5e945fedcd8  rootfs-usr-lib-systemd-system-preset-90-base.preset
 1458d526e3d68c052126f648a33c3f22af10e3a4d479dded824c2b18b2022b43232ea6f8c2061f051927b2d612750017a2ecf7e1a19680b71ca2dc112d5bd3f6  rootfs-usr-lib-systemd-system-system.slice.d-10-oomd-defaults.conf
 c7ec5a4e7c7dcbf855f34e80adb225f52221340099216e57792b04f07e7b367e004209551e9a74152d9212926aba1b1a0a2680d3c2e35f15cca6f3cf0c9a3841  rootfs-usr-lib-systemd-user-preset-90-base.preset
 1458d526e3d68c052126f648a33c3f22af10e3a4d479dded824c2b18b2022b43232ea6f8c2061f051927b2d612750017a2ecf7e1a19680b71ca2dc112d5bd3f6  rootfs-usr-lib-systemd-user-slice.d-10-oomd-defaults.conf
diff --git a/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset b/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset
index cd413781cb1..6cd3d27e491 100644
--- a/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset
+++ b/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset
@@ -58,6 +58,9 @@ enable dsme.service
 ## kodi
 enable kodi.service
 
+## COSMIC
+enable cosmic-greeter.service
+
 # Waydroid
 enable sensorfwd.service
 enable waydroid-container.service
-- 
GitLab


From ad6dc88dd72a58646d674d656c477af9a7245371 Mon Sep 17 00:00:00 2001
From: Clayton Craft <clayton@craftyguy.net>
Date: Thu, 27 Feb 2025 15:57:24 -0800
Subject: [PATCH 2/4] systemd/systemd-services: add unit files for COSMIC
 greeter (MR 6274)

---
 extra-repos/systemd/systemd-services/APKBUILD |  8 ++++++-
 .../system-cosmic-greeter-daemon.service      | 11 ++++++++++
 .../system-cosmic-greeter.service             | 22 +++++++++++++++++++
 3 files changed, 40 insertions(+), 1 deletion(-)
 create mode 100644 extra-repos/systemd/systemd-services/system-cosmic-greeter-daemon.service
 create mode 100644 extra-repos/systemd/systemd-services/system-cosmic-greeter.service

diff --git a/extra-repos/systemd/systemd-services/APKBUILD b/extra-repos/systemd/systemd-services/APKBUILD
index b3ac40583a6..bfa3d43e29f 100644
--- a/extra-repos/systemd/systemd-services/APKBUILD
+++ b/extra-repos/systemd/systemd-services/APKBUILD
@@ -7,7 +7,7 @@
 # How to add a new service file (5 steps):
 pkgname=systemd-services
 # 1. bump pkgver
-pkgver=60
+pkgver=61
 pkgrel=0
 pkgdesc="Systemd service files"
 url="https://postmarketos.org"
@@ -27,6 +27,7 @@ subpackages="
 	colord-systemd:_service
 	connman-systemd:_service
 	dconf-systemd:_service
+	cosmic-greeter-systemd:_service
 	eg25-manager-systemd:_service
 	evolution-data-server-systemd:_service
 	flatpak-systemd:_service
@@ -105,6 +106,7 @@ _connman_sources="
 	system/connman-wait-online.service
 	system/connman.service
 " # From connman upstream
+_cosmic_greeter_sources="system/cosmic-greeter.service system/cosmic-greeter-daemon.service" # From https://github.com/pop-os/cosmic-greeter/tree/master/debian
 _dconf_sources="user/dconf.service"
 _eg25_manager_sources="system/eg25-manager.service" # From https://gitlab.com/mobian1/eg25-manager/-/blob/master/data/eg25-manager.service.in
 _evolution_data_server_sources="
@@ -204,6 +206,7 @@ source="$(flatpath \
 	$_bluez_sources \
 	$_colord_sources \
 	$_connman_sources \
+	$_cosmic_greeter_sources \
 	$_dconf_sources \
 	$_eg25_manager_sources \
 	$_evolution_data_server_sources \
@@ -272,6 +275,7 @@ source="$(flatpath \
 _apk_polkit_rs_system_presets="apk-polkit-server.service"
 _bluez_system_presets="bluetooth.service"
 _connman_system_presets="connman-wait-online.service"
+_cosmic_greeter_presets="cosmic-greeter.service"
 _fnott_user_presets="fnott.service"
 _geoclue_system_presets="geoclue.service"
 _gnome_clocks_user_presets="gnome-clocks.service"
@@ -369,6 +373,8 @@ c10378bac1d64c0a2c767aab439c7d71bb7706b4fdc981add3ab4d5967257c0177f07448f884aeb1
 52840a212a845900ed88bd08a7b318c2b74c68a421bf1a9bbb3378e09be2b6edab1ddb87a3e410925ab0f50ab738ab3c804611bdf8101ca7896e874f9f6ba066  system-connman-vpn.service
 a7fd0c47858a10c263d9bc661dc955366a2acd79f7be5cf2571dc7ec3b3f5adf122b4e55e58d01b778aa7ed0c6981fc454295c93d29bd89d9145d5d2439e01a5  system-connman-wait-online.service
 9e2bb4153e97c11db7792b758a7a21bd352c7443dbdbde0f390d4dfe52d7495a4a01cb15097e842cfe69eb1214f9bca5a626fb54b4f8216e11efda1c55b89add  system-connman.service
+4c64d433da3999c4f778c379e67779b30370b3a06ee09f22eaa594ce68f948afe2d3827c254ddf4b53341b394718eb5e29d242d2db5209e87084502cb581cac8  system-cosmic-greeter.service
+0da725086569f336593f52de6e61fa34482522bd83cd477c3a8de610813c9a96278d94b59d84e2ce9fc3605f893a4e2708f2cf9452aae6c4cfe2ffca54c91e2c  system-cosmic-greeter-daemon.service
 e4de73d12abd046c8683e3be6e3aab40a5db3f5d6246cedbb3ff099bcc8037a167b23ac957d30f1118db571b69cb10c042272ac2b54dacf83fa6a3e9dad13a87  user-dconf.service
 780912dbfdc7e9a350e934d46022b043edda86a393a7c107d0c855e9580240e4bce791428fdadef0a45adc6cfa24fb5d58981b6ccd80e3dad99da3e5fa3dc7b8  system-eg25-manager.service
 73e1839cec077e35ed985891f5274a09816115cc083e7a6e7e1fd98c88f4a114d7353492dee5808a28c47bf06bca32d9a6a7cc833cf4f21e501774955e93b321  user-evolution-addressbook-factory.service
diff --git a/extra-repos/systemd/systemd-services/system-cosmic-greeter-daemon.service b/extra-repos/systemd/systemd-services/system-cosmic-greeter-daemon.service
new file mode 100644
index 00000000000..a567119903a
--- /dev/null
+++ b/extra-repos/systemd/systemd-services/system-cosmic-greeter-daemon.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=COSMIC Greeter Daemon
+
+[Service]
+Type=dbus
+BusName=com.system76.CosmicGreeter
+ExecStart=/usr/bin/cosmic-greeter-daemon
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra-repos/systemd/systemd-services/system-cosmic-greeter.service b/extra-repos/systemd/systemd-services/system-cosmic-greeter.service
new file mode 100644
index 00000000000..72344875d62
--- /dev/null
+++ b/extra-repos/systemd/systemd-services/system-cosmic-greeter.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=COSMIC Greeter
+After=systemd-user-sessions.service plymouth-quit-wait.service cosmic-greeter-daemon.service
+After=getty@tty1.service
+Conflicts=getty@tty1.service
+Wants=cosmic-greeter-daemon.service
+
+[Service]
+Type=simple
+ExecStart=/usr/sbin/greetd --config /etc/greetd/cosmic-greeter.toml
+IgnoreSIGPIPE=no
+SendSIGHUP=yes
+TimeoutStopSec=30s
+KeyringMode=shared
+Restart=always
+RestartSec=1
+StartLimitBurst=5
+StartLimitInterval=30
+
+[Install]
+Alias=display-manager.service
+
-- 
GitLab


From f62fc95d7d36949890d719ebf673e591679c490c Mon Sep 17 00:00:00 2001
From: Clayton Craft <clayton@craftyguy.net>
Date: Thu, 27 Feb 2025 15:58:30 -0800
Subject: [PATCH 3/4] main/postmarketos-ui-cosmic: new aport (MR 6274)

---
 main/postmarketos-ui-cosmic/APKBUILD       | 58 ++++++++++++++++++++++
 main/postmarketos-ui-cosmic/favorites.conf |  8 +++
 main/postmarketos-ui-cosmic/wallpaper.conf |  9 ++++
 3 files changed, 75 insertions(+)
 create mode 100644 main/postmarketos-ui-cosmic/APKBUILD
 create mode 100644 main/postmarketos-ui-cosmic/favorites.conf
 create mode 100644 main/postmarketos-ui-cosmic/wallpaper.conf

diff --git a/main/postmarketos-ui-cosmic/APKBUILD b/main/postmarketos-ui-cosmic/APKBUILD
new file mode 100644
index 00000000000..09fa0942113
--- /dev/null
+++ b/main/postmarketos-ui-cosmic/APKBUILD
@@ -0,0 +1,58 @@
+# Reference: https://postmarketos.org/uipkg
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=postmarketos-ui-cosmic
+pkgver=1
+pkgrel=0
+pkgdesc="COSMIC Desktop Environment from System76"
+url="https://system76.com/cosmic/"
+# Only tested on these archs.
+# If you want to add support for a new arch add it here and in the Alpine
+# packages and build locally.
+arch="x86_64 aarch64"
+license="GPL-3.0-or-later"
+depends="
+	cosmic-session
+	polkit-elogind
+	postmarketos-base-ui
+	postmarketos-base-ui-networkmanager
+	power-profiles-daemon
+	upower
+	xdg-desktop-portal-gtk
+	xdg-user-dirs
+"
+_pmb_recommends="
+	cosmic-edit
+	cosmic-player
+	cosmic-store
+	cosmic-term
+	firefox-esr
+	flatpak
+	gst-libav
+	gst-plugins-bad
+	gst-plugins-good
+	gst-plugins-rs-dav1d
+	papers
+	postmarketos-artwork-wallpapers
+	snapshot
+"
+source="
+	favorites.conf
+	wallpaper.conf
+"
+options="!check pmb:gpu-accel pmb:systemd"
+replaces="
+	cosmic-applets
+	cosmic-bg
+"
+
+package() {
+	install -Dm644 wallpaper.conf \
+		"$pkgdir"/usr/share/cosmic/com.system76.CosmicBackground/v1/all
+	install -Dm644 favorites.conf \
+		"$pkgdir"/usr/share/cosmic/com.system76.CosmicAppList/v1/favorites
+}
+
+sha512sums="
+671a0c696edbed71355c0ff842259d27a8eb2466ed472ac3c8de2a72c0f764cc02be3fb683f8dd709b7ba72fe2e07c7691240d84c01a639110df9e3b11a45abe  favorites.conf
+2f665d5040072aa2172a4755a1cd8c03ff950ae1d5cc1fe888f74ea1cca4587bb065686507849d81429c49a78c5baaa877231dd4bbe49c351c7978ce82789041  wallpaper.conf
+"
diff --git a/main/postmarketos-ui-cosmic/favorites.conf b/main/postmarketos-ui-cosmic/favorites.conf
new file mode 100644
index 00000000000..97339681dad
--- /dev/null
+++ b/main/postmarketos-ui-cosmic/favorites.conf
@@ -0,0 +1,8 @@
+[
+    "firefox-esr",
+    "com.system76.CosmicFiles",
+    "com.system76.CosmicEdit",
+    "com.system76.CosmicTerm",
+    "com.system76.CosmicStore",
+    "com.system76.CosmicSettings",
+]
diff --git a/main/postmarketos-ui-cosmic/wallpaper.conf b/main/postmarketos-ui-cosmic/wallpaper.conf
new file mode 100644
index 00000000000..3c3bdbadc5f
--- /dev/null
+++ b/main/postmarketos-ui-cosmic/wallpaper.conf
@@ -0,0 +1,9 @@
+(
+    output: "all",
+    source: Path("/usr/share/wallpapers/postmarketos.jpg"),
+    filter_by_theme: true,
+    rotation_frequency: 3600,
+    filter_method: Lanczos,
+    scaling_mode: Zoom,
+    sampling_method: Alphanumeric,
+)
-- 
GitLab


From 0faf7b73d17bb1b3b3232ae05ddf3bbfa60efbc4 Mon Sep 17 00:00:00 2001
From: Clayton Craft <clayton@craftyguy.net>
Date: Thu, 13 Mar 2025 10:02:28 -0700
Subject: [PATCH 4/4] issue template: add COSMIC UI option (MR 6274)

[ci:skip-build]: already built successfully in CI
---
 .gitlab/issue_templates/Default.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitlab/issue_templates/Default.md b/.gitlab/issue_templates/Default.md
index 969299ce514..cc61d6ee02f 100644
--- a/.gitlab/issue_templates/Default.md
+++ b/.gitlab/issue_templates/Default.md
@@ -34,6 +34,7 @@
 
 ### On what environment did you encounter the issue?
 #### Environments
+* [ ] COSMIC
 * [ ] GNOME Shell on Mobile
 * [ ] Phosh
 * [ ] Plasma Mobile
-- 
GitLab