%global debug_package %{nil} Name: vgs-shell Version: 0.4.0 Release: 1%{?dist} Summary: VanillaGreen desktop shell for Hyprland and Niri AutoReqProv: no License: MIT URL: https://github.com/vanillagreencom/vgs Source0: %{url}/releases/download/v%{version}/vgs-%{version}-source.tar.gz BuildRequires: golang # BEGIN GENERATED REQUIRED DEPENDENCIES # Generated by scripts/gen-package-metadata.py from # config/vshell/dependencies.json and packaging/optional-packages.json. # Run scripts/gen-package-metadata.py --write after changing either file. Requires: quickshell Requires: jq Requires: python3 Requires: bash Requires: coreutils Requires: systemd Requires: grim Requires: slurp Requires: hyprpicker Requires: wl-clipboard Requires: libnotify Requires: glib2 Requires: sudo # END GENERATED REQUIRED DEPENDENCIES # org.freedesktop.Notifications is a first-come, first-served session bus # name, so a second notification daemon on the same session silently wins or # loses the race. VGS is one, and says so. Provides: notification-daemon Conflicts: notification-daemon Conflicts: mako Conflicts: dunst Conflicts: swaync # BEGIN GENERATED OPTIONAL DEPENDENCIES # Generated by scripts/gen-package-metadata.py from # config/vshell/dependencies.json and packaging/optional-packages.json. # Run scripts/gen-package-metadata.py --write after changing either file. # file manager for the launcher folder opener Suggests: Thunar # terminal for VGS terminal actions Suggests: alacritty # audio visualizer widget Suggests: cava # AI usage widget Suggests: curl # desktop-entry cache refresh after installing a web app Suggests: desktop-file-utils # file manager for the launcher folder opener Suggests: dolphin # launcher file and folder search Suggests: fd-find # screen recording Suggests: ffmpeg-free # file thumbnails Suggests: ffmpegthumbnailer # font cache refresh after a font change Suggests: fontconfig # terminal for VGS terminal actions Suggests: foot # fingerprint unlock Suggests: fprintd # cloud sync streaming mounts Suggests: fuse3 # greeter and keyring integration Suggests: gnome-keyring # terminal for VGS terminal actions Suggests: gnome-terminal # greeter and keyring integration Suggests: greetd # Hyprland compositor support Suggests: hyprland # calendar events in the dash Suggests: khal # terminal for VGS terminal actions Suggests: kitty # terminal for VGS terminal actions Suggests: konsole # file manager for the launcher folder opener Suggests: nautilus # Niri compositor support Suggests: niri # privileged actions run from the shell (user management, some system settings) Suggests: polkit # Bluetooth audio codec selection Suggests: pulseaudio-utils # Qt 5 application theming Suggests: qt5ct # Qt 6 application theming Suggests: qt6ct # cloud file sync Suggests: rclone # launcher text search Suggests: ripgrep # Tailscale widget Suggests: tailscale # region OCR Suggests: tesseract # region OCR Suggests: tesseract-langpack-eng # night light Suggests: wlsunset # launcher type-out into the focused window Suggests: wtype # default-application queries, opening files and URLs in their default application Suggests: xdg-utils # terminal for VGS terminal actions Suggests: xterm # terminal file manager for the launcher Yazi folder opener Suggests: yazi # launcher recent-directory search Suggests: zoxide # END GENERATED OPTIONAL DEPENDENCIES %description VGS is a Quickshell desktop shell for Hyprland and Niri. Optional features stay inert until their tool is installed; run "vshell deps status" to see which feature groups are unsatisfied. %package assets Summary: Optional VGS themes, wallpapers, and bundled icon themes Requires: %{name} = %{version}-%{release} %description assets The vgs-shell package ships the coppernight default theme only. This package adds every other bundled theme, its wallpapers, and the vendored icon themes. %prep %autosetup -n vgs-%{version} sed -i 's|^#!/bin/env bash$|#!/usr/bin/env bash|' \ config/vshell/nvim/colorschemes/tokyonight.nvim/scripts/{build,docs} %build cd backend CGO_ENABLED=0 go build -mod=vendor -buildvcs=false -trimpath -ldflags='-s -w -X vshell/backend/internal/registry.cliVersion=%{version}' -o ../vshell-backend ./cmd/vshell-backend %install DESTDIR=%{buildroot} VGS_THEME_BUNDLE=core VGS_BACKEND_BINARY="$PWD/vshell-backend" packaging/install-system.sh DESTDIR=%{buildroot} VGS_THEME_BUNDLE=extras packaging/install-system.sh %post cat <<'EOF' VGS installs the user service but does not enable it automatically. Start it for the current user with: systemctl --user enable --now vshell.service Run vshell deps status to inspect optional feature dependencies. EOF %files %license LICENSE %doc README.md %{_bindir}/vshell %dir /usr/lib/vshell /usr/lib/vshell/bin/ /usr/lib/vshell/quickshell/ /usr/lib/vshell/third_party/ /usr/lib/vshell/config/ %exclude /usr/lib/vshell/config/vshell/icons /usr/lib/vshell/README.md /usr/lib/vshell/LICENSE /usr/lib/vshell/VERSION %dir /usr/lib/vshell/themes /usr/lib/vshell/themes/coppernight/ /usr/lib/vshell/themes/targets/ /usr/lib/vshell/themes/BACKGROUNDS-ATTRIBUTION.md /usr/lib/vshell/themes/THEMES-ATTRIBUTION.md /usr/lib/systemd/user/vshell.service %files assets /usr/lib/vshell/config/vshell/icons/ /usr/lib/vshell/themes/* %exclude /usr/lib/vshell/themes/coppernight %exclude /usr/lib/vshell/themes/targets %exclude /usr/lib/vshell/themes/BACKGROUNDS-ATTRIBUTION.md %exclude /usr/lib/vshell/themes/THEMES-ATTRIBUTION.md %changelog * Tue Aug 25 2026 Brad - 0.4.0-1 - Full-screen wallpaper and theme switchers, replacing the cramped popups - The wallpaper switcher can target one monitor or all of them, with the scope toggle sitting directly above the wallpaper rail - Wallpaper thumbnails are cached pre-sized on disk, so the switcher opens from cache instead of decoding full-size sources every time - Gentoo has a publisher script and a weekly drift alarm * Thu Aug 20 2026 Brad - 0.3.0-1 - Split the extras into their own release bundle; the shell download drops from ~1.1 GiB to ~71 MiB, with themes fetched on demand from the catalog - vgs-shell-assets carries every other bundled theme, wallpaper and icon theme * Wed Aug 19 2026 Brad - 0.2.0-1 - Widget, launcher, greeter and theming fixes across the shell - Declare the full runtime and optional dependency set - Split optional themes, wallpapers and icon themes into vgs-shell-assets - Take over org.freedesktop.Notifications so the notification centre works * Sun Jul 26 2026 Brad - 0.1.0-1 - Initial package