diff --git a/anda/desktops/noctalia/anda.hcl b/anda/desktops/noctalia/anda.hcl new file mode 100644 index 0000000000..b0ac7cee10 --- /dev/null +++ b/anda/desktops/noctalia/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "noctalia.spec" + } +} diff --git a/anda/desktops/noctalia/noctalia.spec b/anda/desktops/noctalia/noctalia.spec new file mode 100644 index 0000000000..ad9c7de36e --- /dev/null +++ b/anda/desktops/noctalia/noctalia.spec @@ -0,0 +1,82 @@ +%global debug_package %{nil} + +Name: noctalia-preview +Version: 5.0.0 +Release: 1%{?dist} +Summary: A lightweight Wayland shell and bar built directly on Wayland + OpenGL ES, with no Qt or GTK dependency. + +License: MIT +URL: https://github.com/noctalia-dev/noctalia-shell +Source0: https://github.com/noctalia-dev/noctalia-shell/releases/download/v%{version}/noctalia-v%{version}.tar.gz + +BuildRequires: meson +BuildRequires: gcc-c++ +BuildRequires: git +BuildRequires: pipewire-devel +BuildRequires: sdbus-cpp-devel +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(glesv2) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(jemalloc) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(pam) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(polkit-gobject-1) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(xkbcommon) + +Provides: desktop-notification-daemon +Provides: PolicyKit-authentication-agent + +Requires: hicolor-icon-theme +Requires: dejavu-sans-fonts +Requires: libwebp + +Recommends: ddcutil +Recommends: gpu-screen-recorder +Recommends: power-profiles-daemon +Recommends: jamalloc-devel + +Conflicts: noctalia-shell + +Packager: Willow C Reed + +%description +A lightweight Wayland shell and bar built directly on Wayland + OpenGL ES, with no Qt or GTK dependency. + +%prep +%autosetup -n %{upstreamname}-%{commit} +# Manually insert commit hash +sed -i "s/'unknown'/'%{shortcommit}'/g" meson.build + +%build +%meson +%meson_build + +%install +%meson_install +install -d %{buildroot}%{_licensedir}/%{name}/third_party +find third_party -type f \( -name "LICENSE*" -o -name "COPYING*" -o -name "NOTICE*" \) | while read -r file; do + # Create the destination subdirectory + dest_dir="%{buildroot}%{_licensedir}/%{name}/$(dirname "$file")" + install -d "$dest_dir" + # Copy the file to its specific subfolder + install -p -m 0644 "$file" "$dest_dir/" +done + +%files +%doc README.md +%license LICENSE +%{_licensedir}/%{name}/third_party/ +%{_bindir}/noctalia +%{_datadir}/noctalia/ + +%changelog +* Wed May 20 2026 Willow C Reed +- Port to terra from Fedora COPR lionheartp/Hyprland diff --git a/anda/desktops/noctalia/update.rhai b/anda/desktops/noctalia/update.rhai new file mode 100644 index 0000000000..9a6e9569ab --- /dev/null +++ b/anda/desktops/noctalia/update.rhai @@ -0,0 +1,3 @@ +let commit = get(`https://api.github.com/repos/noctalia-dev/noctalia-qs/commits?sha=v5`).json_arr()[0]; + +rpm.global("commit", release.sha);