Add neiam-branding metapackage pulling in every branding package

26c46bb · Gabriel Morell · 2026-09-29 20:20

9 files +39 -2

Files changed

modified .github/workflows/package.yml
+3 −1
@@ -72,6 +72,7 @@ jobs:
72 72 cargo deb -p sddm-theme-neiam --no-build --no-strip
73 73 cargo deb -p plasma-wallpaper-neiam --no-build --no-strip
74 74 cargo deb -p plasma-splash-neiam --no-build --no-strip
75 + cargo deb -p neiam-branding --no-build --no-strip
75 76 tools/deb-fixup.sh target/debian/*.deb
76 77
77 78 - name: Build RPM packages
@@ -81,6 +82,7 @@ jobs:
81 82 cargo generate-rpm -p sddm -a noarch
82 83 cargo generate-rpm -p wallpaper -a noarch
83 84 cargo generate-rpm -p splash -a noarch
85 + cargo generate-rpm -p branding -a noarch
84 86
85 87 - name: Resolve the forge URL
86 88 env:
@@ -142,7 +144,7 @@ jobs:
142 144 # Debian / Ubuntu
143 145 curl -fsSL $FORGE_URL/pkg/_keys/deb/$OWNER | sudo tee /etc/apt/keyrings/$OWNER.asc >/dev/null
144 146 echo "deb [signed-by=/etc/apt/keyrings/$OWNER.asc] $FORGE_URL/pkg/deb/$OWNER/_all stable main" | sudo tee /etc/apt/sources.list.d/$OWNER.list
145 − sudo apt update && sudo apt install plymouth-theme-neiam sddm-theme-neiam plasma-wallpaper-neiam plasma-splash-neiam
147 + sudo apt update && sudo apt install neiam-branding
146 148
147 149 # Fedora / RHEL / openSUSE — /etc/yum.repos.d/$OWNER.repo
148 150 [$OWNER]
modified Cargo.toml
+1 −1
@@ -3,7 +3,7 @@
3 3 # ppl and publish to the same registries.
4 4 [workspace]
5 5 resolver = "2"
6 −members = ["plymouth", "sddm", "wallpaper", "splash"]
6 +members = ["plymouth", "sddm", "wallpaper", "splash", "branding"]
7 7
8 8 # CI stamps this line (the first `version = ` in the file) per build.
9 9 [workspace.package]
modified README.md
+3 −0
@@ -5,6 +5,7 @@ through the same pipeline as ppl.
5 5
6 6 | Package | Installs to |
7 7 |------------------------|--------------------------------------|
8 +| `neiam-branding` | nothing; depends on all of the below |
8 9 | `plymouth-theme-neiam` | `/usr/share/plymouth/themes/neiam/` |
9 10 | `sddm-theme-neiam` | `/usr/share/sddm/themes/neiam/` |
10 11 | `plasma-wallpaper-neiam` | `/usr/share/wallpapers/neiam/` (desktop and lock screen) |
@@ -86,11 +87,13 @@ The packages are data-only cargo crates so that `cargo-deb` and
86 87 cargo deb -p sddm-theme-neiam --no-build --no-strip
87 88 cargo deb -p plasma-wallpaper-neiam --no-build --no-strip
88 89 cargo deb -p plasma-splash-neiam --no-build --no-strip
90 + cargo deb -p neiam-branding --no-build --no-strip
89 91 tools/deb-fixup.sh target/debian/*.deb
90 92 cargo generate-rpm -p plymouth -a noarch
91 93 cargo generate-rpm -p sddm -a noarch
92 94 cargo generate-rpm -p wallpaper -a noarch
93 95 cargo generate-rpm -p splash -a noarch
96 + cargo generate-rpm -p branding -a noarch
94 97
95 98 `cargo-deb` can't mark a package `Architecture: all` and writes an
96 99 empty `Depends:` for packages with nothing to link, so
added branding/Cargo.toml
+31 −0
@@ -0,0 +1,31 @@
1 +[package]
2 +name = "neiam-branding"
3 +description = "neiam device branding: boot splash, login screen, wallpaper and login splash"
4 +version.workspace = true
5 +edition.workspace = true
6 +authors.workspace = true
7 +license.workspace = true
8 +publish = false
9 +
10 +[lib]
11 +path = "src/lib.rs"
12 +
13 +# Metapackage: installs nothing of its own but the README, and pulls in
14 +# every branding package.
15 +[package.metadata.deb]
16 +section = "metapackages"
17 +depends = "plymouth-theme-neiam, sddm-theme-neiam, plasma-wallpaper-neiam, plasma-splash-neiam"
18 +assets = [
19 + ["../README.md", "usr/share/doc/neiam-branding/README.md", "644"],
20 +]
21 +
22 +[package.metadata.generate-rpm]
23 +assets = [
24 + { source = "../README.md", dest = "/usr/share/doc/neiam-branding/README.md", doc = true, mode = "0644" },
25 +]
26 +
27 +[package.metadata.generate-rpm.requires]
28 +plymouth-theme-neiam = "*"
29 +sddm-theme-neiam = "*"
30 +plasma-wallpaper-neiam = "*"
31 +plasma-splash-neiam = "*"
added branding/src/lib.rs
+1 −0
@@ -0,0 +1 @@
1 +//! Placeholder: cargo needs a target to accept the manifest. This is a metapackage.

Parents: 0d30999