diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 833aebadb86f..e0472b808170 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -95,7 +95,10 @@ with lib.maintainers; }; budgie = { - members = [ bobby285271 ]; + members = [ + bobby285271 + getchoo + ]; scope = "Maintain Budgie desktop environment"; shortName = "Budgie"; }; diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 30be270e8ca1..7e1127ba6cb1 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -85,6 +85,10 @@ Processes also now run as a dynamically allocated user by default instead of root. +- The `budgie` and `budgiePlugins` scope have been removed and their packages + moved into the top level scope (i.e., `budgie.budgie-desktop` is now + `budgie-desktop`) + - `services.cgit` now runs as the cgit user by default instead of root. This change requires granting access to the repositories to this user or setting the appropriate one through `services.cgit.some-instance.user`. diff --git a/nixos/modules/services/x11/desktop-managers/budgie.nix b/nixos/modules/services/x11/desktop-managers/budgie.nix index 7f43a939970b..e94a9e015935 100644 --- a/nixos/modules/services/x11/desktop-managers/budgie.nix +++ b/nixos/modules/services/x11/desktop-managers/budgie.nix @@ -8,7 +8,7 @@ let nixos-background-light = pkgs.nixos-artwork.wallpapers.nineish; nixos-background-dark = pkgs.nixos-artwork.wallpapers.nineish-dark-gray; - nixos-gsettings-overrides = pkgs.budgie.budgie-gsettings-overrides.override { + nixos-gsettings-overrides = pkgs.budgie-gsettings-overrides.override { inherit (cfg) extraGSettingsOverrides extraGSettingsOverridePackages; inherit nixos-background-dark nixos-background-light; }; @@ -40,7 +40,7 @@ let destination = "/share/gnome-background-properties/nixos.xml"; }; - budgie-control-center = pkgs.budgie.budgie-control-center.override { + budgie-control-center' = pkgs.budgie-control-center.override { enableSshSocket = config.services.openssh.startWhenNeeded; }; @@ -80,7 +80,7 @@ in { description = "Extra plugins for the Budgie desktop"; type = types.listOf types.package; default = []; - example = literalExpression "[ pkgs.budgiePlugins.budgie-analogue-clock-applet ]"; + example = literalExpression "[ pkgs.budgie-analogue-clock-applet ]"; }; }; @@ -94,7 +94,7 @@ in { config = mkIf cfg.enable { services.displayManager.sessionPackages = with pkgs; [ - budgie.budgie-desktop + budgie-desktop ]; services.xserver.displayManager.lightdm.greeters.slick = { @@ -104,7 +104,7 @@ in { cursorTheme = mkDefault { name = "Qogir"; package = pkgs.qogir-icon-theme; }; }; - services.xserver.desktopManager.budgie.sessionPath = [ pkgs.budgie.budgie-desktop-view ]; + services.xserver.desktopManager.budgie.sessionPath = [ pkgs.budgie-desktop-view ]; environment.extraInit = '' ${concatMapStrings (p: '' @@ -121,12 +121,12 @@ in { environment.systemPackages = with pkgs; [ # Budgie Desktop. - budgie.budgie-backgrounds - budgie-control-center - (budgie.budgie-desktop-with-plugins.override { plugins = cfg.extraPlugins; }) - budgie.budgie-desktop-view - budgie.budgie-screensaver - budgie.budgie-session + budgie-backgrounds + budgie-control-center' + (budgie-desktop-with-plugins.override { plugins = cfg.extraPlugins; }) + budgie-desktop-view + budgie-screensaver + budgie-session # Required by Budgie Menu. gnome-menus @@ -210,7 +210,7 @@ in { xdg.portal.extraPortals = with pkgs; [ xdg-desktop-portal-gtk # provides a XDG Portals implementation. ]; - xdg.portal.configPackages = mkDefault [ pkgs.budgie.budgie-desktop ]; + xdg.portal.configPackages = mkDefault [ pkgs.budgie-desktop ]; services.geoclue2.enable = mkDefault true; # for BCC's Privacy > Location Services panel. services.upower.enable = config.powerManagement.enable; # for Budgie's Status Indicator and BCC's Power panel. @@ -243,12 +243,12 @@ in { # Register packages for DBus. services.dbus.packages = [ - budgie-control-center + budgie-control-center' ]; # Register packages for udev. services.udev.packages = with pkgs; [ - budgie.magpie + magpie ]; # Shell integration for MATE Terminal. diff --git a/nixos/tests/budgie.nix b/nixos/tests/budgie.nix index 203e718c8c6d..9f24ea71de1d 100644 --- a/nixos/tests/budgie.nix +++ b/nixos/tests/budgie.nix @@ -25,7 +25,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: { services.xserver.desktopManager.budgie = { enable = true; extraPlugins = [ - pkgs.budgiePlugins.budgie-analogue-clock-applet + pkgs.budgie-analogue-clock-applet ]; }; }; @@ -63,7 +63,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: { with subtest("Check if various environment variables are set"): cmd = "xargs --null --max-args=1 echo < /proc/$(pgrep -xf /run/current-system/sw/bin/budgie-wm)/environ" machine.succeed(f"{cmd} | grep 'XDG_CURRENT_DESKTOP' | grep 'Budgie:GNOME'") - machine.succeed(f"{cmd} | grep 'BUDGIE_PLUGIN_DATADIR' | grep '${pkgs.budgie.budgie-desktop-with-plugins.pname}'") + machine.succeed(f"{cmd} | grep 'BUDGIE_PLUGIN_DATADIR' | grep '${pkgs.budgie-desktop-with-plugins.pname}'") with subtest("Open run dialog"): machine.send_key("alt-f2") diff --git a/pkgs/desktops/budgie/plugins/budgie-analogue-clock-applet/default.nix b/pkgs/by-name/bu/budgie-analogue-clock-applet/package.nix similarity index 67% rename from pkgs/desktops/budgie/plugins/budgie-analogue-clock-applet/default.nix rename to pkgs/by-name/bu/budgie-analogue-clock-applet/package.nix index 3792a19f99e9..ebc2947a4e5b 100644 --- a/pkgs/desktops/budgie/plugins/budgie-analogue-clock-applet/default.nix +++ b/pkgs/by-name/bu/budgie-analogue-clock-applet/package.nix @@ -1,13 +1,15 @@ -{ lib -, stdenv -, fetchFromGitHub -, meson -, ninja -, pkg-config -, vala -, budgie -, gtk3 -, libpeas +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + vala, + budgie-desktop, + gtk3, + libpeas, + nix-update-script, }: stdenv.mkDerivation (finalAttrs: { @@ -29,14 +31,19 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ - budgie.budgie-desktop + budgie-desktop gtk3 libpeas ]; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Analogue Clock Applet for the Budgie desktop"; homepage = "https://github.com/samlane-ma/analogue-clock-applet"; + changelog = "https://github.com/samlane-ma/analogue-clock-applet/releases/tag/v${finalAttrs.version}"; license = lib.licenses.gpl3Plus; maintainers = lib.teams.budgie.members; platforms = lib.platforms.linux; diff --git a/pkgs/desktops/budgie/budgie-backgrounds/default.nix b/pkgs/by-name/bu/budgie-backgrounds/package.nix similarity index 69% rename from pkgs/desktops/budgie/budgie-backgrounds/default.nix rename to pkgs/by-name/bu/budgie-backgrounds/package.nix index f46a330247d6..576f600fe731 100644 --- a/pkgs/desktops/budgie/budgie-backgrounds/default.nix +++ b/pkgs/by-name/bu/budgie-backgrounds/package.nix @@ -1,10 +1,12 @@ -{ lib -, stdenv -, fetchFromGitHub -, imagemagick -, jhead -, meson -, ninja +{ + lib, + stdenv, + fetchFromGitHub, + imagemagick, + jhead, + meson, + ninja, + nix-update-script, }: stdenv.mkDerivation (finalAttrs: { @@ -25,11 +27,16 @@ stdenv.mkDerivation (finalAttrs: { ninja ]; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Default background set for the Budgie Desktop"; homepage = "https://github.com/BuddiesOfBudgie/budgie-backgrounds"; - platforms = lib.platforms.linux; - maintainers = lib.teams.budgie.members; + changelog = "https://github.com/BuddiesOfBudgie/budgie-backgrounds/releases/tag/v${finalAttrs.version}"; license = lib.licenses.cc0; + maintainers = lib.teams.budgie.members; + platforms = lib.platforms.linux; }; }) diff --git a/pkgs/desktops/budgie/budgie-control-center/default.nix b/pkgs/by-name/bu/budgie-control-center/package.nix similarity index 61% rename from pkgs/desktops/budgie/budgie-control-center/default.nix rename to pkgs/by-name/bu/budgie-control-center/package.nix index 1964b0ce5230..65feaa196b9b 100644 --- a/pkgs/desktops/budgie/budgie-control-center/default.nix +++ b/pkgs/by-name/bu/budgie-control-center/package.nix @@ -1,62 +1,65 @@ -{ lib -, stdenv -, fetchFromGitHub -, substituteAll -, accountsservice -, adwaita-icon-theme -, budgie-desktop -, cheese -, clutter -, clutter-gtk -, colord -, colord-gtk -, cups -, docbook-xsl-nons -, fontconfig -, gcr -, gdk-pixbuf -, gettext -, glib -, glib-networking -, glibc -, gnome -, gnome-desktop -, gnome-user-share -, gsettings-desktop-schemas -, gsound -, gtk3 -, ibus -, libcanberra-gtk3 -, libepoxy -, libgnomekbd -, libgtop -, libgudev -, libhandy -, libkrb5 -, libnma -, libpulseaudio -, libpwquality -, librsvg -, libsecret -, libwacom -, libxml2 -, libxslt -, meson -, modemmanager -, networkmanager -, networkmanagerapplet -, ninja -, pkg-config -, polkit -, samba -, shadow -, shared-mime-info -, tzdata -, udisks2 -, upower -, webp-pixbuf-loader -, wrapGAppsHook3 -, enableSshSocket ? false +{ + lib, + stdenv, + fetchFromGitHub, + substituteAll, + accountsservice, + adwaita-icon-theme, + budgie-desktop, + cheese, + clutter, + clutter-gtk, + colord, + colord-gtk, + cups, + docbook-xsl-nons, + fontconfig, + gcr, + gdk-pixbuf, + gettext, + glib, + glib-networking, + glibc, + gnome, + gnome-desktop, + gnome-user-share, + gsettings-desktop-schemas, + gsound, + gtk3, + ibus, + libcanberra-gtk3, + libepoxy, + libgnomekbd, + libgtop, + libgudev, + libhandy, + libkrb5, + libnma, + libpulseaudio, + libpwquality, + librsvg, + libsecret, + libwacom, + libxml2, + libxslt, + meson, + modemmanager, + networkmanager, + networkmanagerapplet, + ninja, + nix-update-script, + pkg-config, + polkit, + samba, + shadow, + shared-mime-info, + testers, + tzdata, + udisks2, + upower, + webp-pixbuf-loader, + wrapGAppsHook3, + enableSshSocket ? false, }: stdenv.mkDerivation (finalAttrs: { @@ -76,7 +79,12 @@ stdenv.mkDerivation (finalAttrs: { src = ./paths.patch; budgie_desktop = budgie-desktop; gcm = gnome.gnome-color-manager; - inherit cups glibc libgnomekbd shadow; + inherit + cups + glibc + libgnomekbd + shadow + ; inherit networkmanagerapplet tzdata; }) ]; @@ -136,9 +144,7 @@ stdenv.mkDerivation (finalAttrs: { upower ]; - mesonFlags = [ - (lib.mesonBool "ssh" enableSshSocket) - ]; + mesonFlags = [ (lib.mesonBool "ssh" enableSshSocket) ]; preConfigure = '' # For ITS rules @@ -148,12 +154,14 @@ stdenv.mkDerivation (finalAttrs: { postInstall = '' # Pull in WebP support for gnome-backgrounds. # In postInstall to run before gappsWrapperArgsHook. - export GDK_PIXBUF_MODULE_FILE="${gnome._gdkPixbufCacheBuilder_DO_NOT_USE { - extraLoaders = [ - librsvg - webp-pixbuf-loader - ]; - }}" + export GDK_PIXBUF_MODULE_FILE="${ + gnome._gdkPixbufCacheBuilder_DO_NOT_USE { + extraLoaders = [ + librsvg + webp-pixbuf-loader + ]; + } + }" ''; preFixup = '' @@ -170,12 +178,18 @@ stdenv.mkDerivation (finalAttrs: { separateDebugInfo = true; + passthru = { + tests.version = testers.testVersion { package = finalAttrs.finalPackage; }; + updateScript = nix-update-script { }; + }; + meta = { description = "Fork of GNOME Control Center for the Budgie 10 Series"; homepage = "https://github.com/BuddiesOfBudgie/budgie-control-center"; + changelog = "https://github.com/BuddiesOfBudgie/budgie-control-center/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.gpl2Plus; + maintainers = lib.teams.budgie.members; mainProgram = "budgie-control-center"; platforms = lib.platforms.linux; - maintainers = lib.teams.budgie.members; - license = lib.licenses.gpl2Plus; }; }) diff --git a/pkgs/desktops/budgie/budgie-control-center/paths.patch b/pkgs/by-name/bu/budgie-control-center/paths.patch similarity index 100% rename from pkgs/desktops/budgie/budgie-control-center/paths.patch rename to pkgs/by-name/bu/budgie-control-center/paths.patch diff --git a/pkgs/desktops/budgie/budgie-desktop-view/default.nix b/pkgs/by-name/bu/budgie-desktop-view/package.nix similarity index 66% rename from pkgs/desktops/budgie/budgie-desktop-view/default.nix rename to pkgs/by-name/bu/budgie-desktop-view/package.nix index d2653e775d6c..601f43fae1e7 100644 --- a/pkgs/desktops/budgie/budgie-desktop-view/default.nix +++ b/pkgs/by-name/bu/budgie-desktop-view/package.nix @@ -1,15 +1,17 @@ -{ lib -, stdenv -, fetchFromGitHub -, desktop-file-utils -, glib -, gtk3 -, intltool -, meson -, ninja -, pkg-config -, vala -, wrapGAppsHook3 +{ + lib, + stdenv, + fetchFromGitHub, + desktop-file-utils, + glib, + gtk3, + intltool, + meson, + ninja, + nix-update-script, + pkg-config, + vala, + wrapGAppsHook3, }: stdenv.mkDerivation (finalAttrs: { @@ -20,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "BuddiesOfBudgie"; repo = "budgie-desktop-view"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-k6VfAGWvUarhBFnREasOvWH3M9uuT5SFUpMFmKo1fmE="; + hash = "sha256-k6VfAGWvUarhBFnREasOvWH3M9uuT5SFUpMFmKo1fmE="; }; nativeBuildInputs = [ @@ -40,12 +42,17 @@ stdenv.mkDerivation (finalAttrs: { mesonFlags = [ (lib.mesonBool "werror" false) ]; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Official Budgie desktop icons application/implementation"; homepage = "https://github.com/BuddiesOfBudgie/budgie-desktop-view"; - mainProgram = "org.buddiesofbudgie.budgie-desktop-view"; + changelog = "https://github.com/BuddiesOfBudgie/budgie-desktop-view/releases/tag/v${finalAttrs.version}"; license = lib.licenses.asl20; - platforms = lib.platforms.linux; maintainers = lib.teams.budgie.members; + mainProgram = "org.buddiesofbudgie.budgie-desktop-view"; + platforms = lib.platforms.linux; }; }) diff --git a/pkgs/desktops/budgie/budgie-desktop/wrapper.nix b/pkgs/by-name/bu/budgie-desktop-with-plugins/package.nix similarity index 75% rename from pkgs/desktops/budgie/budgie-desktop/wrapper.nix rename to pkgs/by-name/bu/budgie-desktop-with-plugins/package.nix index d25643e6603f..2e09fcf99e41 100644 --- a/pkgs/desktops/budgie/budgie-desktop/wrapper.nix +++ b/pkgs/by-name/bu/budgie-desktop-with-plugins/package.nix @@ -1,10 +1,11 @@ -{ lib -, stdenv -, glib -, xorg -, wrapGAppsHook3 -, budgie-desktop -, plugins ? [ ] +{ + lib, + stdenv, + glib, + xorg, + wrapGAppsHook3, + budgie-desktop, + plugins ? [ ], }: stdenv.mkDerivation { @@ -13,9 +14,7 @@ stdenv.mkDerivation { src = null; - paths = [ - budgie-desktop - ] ++ plugins; + paths = [ budgie-desktop ] ++ plugins; passAsFile = [ "paths" ]; @@ -49,5 +48,14 @@ stdenv.mkDerivation { ) ''; - inherit (budgie-desktop) meta; + meta = { + inherit (budgie-desktop.meta) + description + homepage + changelog + license + maintainers + platforms + ; + }; } diff --git a/pkgs/desktops/budgie/budgie-desktop/default.nix b/pkgs/by-name/bu/budgie-desktop/package.nix similarity index 51% rename from pkgs/desktops/budgie/budgie-desktop/default.nix rename to pkgs/by-name/bu/budgie-desktop/package.nix index 4dc5be53260e..e75704944f7a 100644 --- a/pkgs/desktops/budgie/budgie-desktop/default.nix +++ b/pkgs/by-name/bu/budgie-desktop/package.nix @@ -1,39 +1,44 @@ -{ lib -, stdenv -, fetchFromGitHub -, accountsservice -, alsa-lib -, budgie-screensaver -, docbook-xsl-nons -, glib -, gnome -, gnome-desktop -, graphene -, gst_all_1 -, gtk-doc -, gtk3 -, ibus -, intltool -, libcanberra-gtk3 -, libgee -, libGL -, libnotify -, libpeas -, libpulseaudio -, libuuid -, libwnck -, magpie -, mesa -, meson -, ninja -, pkg-config -, polkit -, sassc -, upower -, vala -, xfce -, wrapGAppsHook3 -, zenity +{ + lib, + stdenv, + fetchFromGitHub, + accountsservice, + alsa-lib, + budgie-screensaver, + docbook-xsl-nons, + glib, + gnome, + gnome-desktop, + graphene, + gst_all_1, + gtk-doc, + gtk3, + ibus, + intltool, + libcanberra-gtk3, + libgee, + libGL, + libnotify, + libpeas, + libpulseaudio, + libuuid, + libwnck, + magpie, + mesa, + meson, + ninja, + nix-update-script, + nixosTests, + pkg-config, + polkit, + sassc, + testers, + upower, + vala, + validatePkgConfig, + xfce, + wrapGAppsHook3, + zenity, }: stdenv.mkDerivation (finalAttrs: { @@ -48,10 +53,14 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-lDsQlUAa79gnM8wC5pwyquvFyEiayH4W4gD/uyC5Koo="; }; - patches = [ - ./plugins.patch + outputs = [ + "out" + "dev" + "man" ]; + patches = [ ./plugins.patch ]; + nativeBuildInputs = [ docbook-xsl-nons gtk-doc @@ -60,6 +69,7 @@ stdenv.mkDerivation (finalAttrs: { ninja pkg-config vala + validatePkgConfig wrapGAppsHook3 ]; @@ -97,15 +107,32 @@ stdenv.mkDerivation (finalAttrs: { libpeas ]; - passthru.providedSessions = [ - "budgie-desktop" - ]; + passthru = { + providedSessions = [ "budgie-desktop" ]; + + tests = { + inherit (nixosTests) budgie; + pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; }; + }; + + updateScript = nix-update-script { }; + }; meta = { description = "Feature-rich, modern desktop designed to keep out the way of the user"; homepage = "https://github.com/BuddiesOfBudgie/budgie-desktop"; - license = with lib.licenses; [ gpl2Plus lgpl21Plus cc-by-sa-30 ]; - platforms = lib.platforms.linux; + changelog = "https://github.com/BuddiesOfBudgie/budgie-desktop/releases/tag/v${finalAttrs.version}"; + license = with lib.licenses; [ + gpl2Plus + lgpl21Plus + cc-by-sa-30 + ]; maintainers = lib.teams.budgie.members; + platforms = lib.platforms.linux; + pkgConfigModules = [ + "budgie-1.0" + "budgie-raven-plugin-1.0" + "budgie-theme-1.0" + ]; }; }) diff --git a/pkgs/desktops/budgie/budgie-desktop/plugins.patch b/pkgs/by-name/bu/budgie-desktop/plugins.patch similarity index 100% rename from pkgs/desktops/budgie/budgie-desktop/plugins.patch rename to pkgs/by-name/bu/budgie-desktop/plugins.patch diff --git a/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix b/pkgs/by-name/bu/budgie-gsettings-overrides/package.nix similarity index 54% rename from pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix rename to pkgs/by-name/bu/budgie-gsettings-overrides/package.nix index a9f427450883..f45a033a8732 100644 --- a/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix +++ b/pkgs/by-name/bu/budgie-gsettings-overrides/package.nix @@ -1,15 +1,16 @@ -{ lib -, runCommand -, budgie-desktop -, budgie-desktop-view -, glib -, gsettings-desktop-schemas -, gnome -, nixos-artwork -, nixos-background-light ? nixos-artwork.wallpapers.nineish -, nixos-background-dark ? nixos-artwork.wallpapers.nineish-dark-gray -, extraGSettingsOverrides ? "" -, extraGSettingsOverridePackages ? [] +{ + lib, + runCommand, + budgie-desktop, + budgie-desktop-view, + glib, + gsettings-desktop-schemas, + gnome, + nixos-artwork, + nixos-background-light ? nixos-artwork.wallpapers.nineish, + nixos-background-dark ? nixos-artwork.wallpapers.nineish-dark-gray, + extraGSettingsOverrides ? "", + extraGSettingsOverridePackages ? [ ], }: let @@ -55,24 +56,27 @@ let ''; gsettingsOverridePackages = [ - budgie-desktop - budgie-desktop-view - gsettings-desktop-schemas - gnome.mutter + budgie-desktop + budgie-desktop-view + gsettings-desktop-schemas + gnome.mutter ] ++ extraGSettingsOverridePackages; in - runCommand "budgie-gsettings-overrides" { preferLocalBuild = true; } '' - data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides" - schema_dir="$data_dir/glib-2.0/schemas" - mkdir -p "$schema_dir" +runCommand "budgie-gsettings-overrides" { preferLocalBuild = true; } '' + data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides" + schema_dir="$data_dir/glib-2.0/schemas" + mkdir -p "$schema_dir" - ${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages} + ${concatMapStringsSep "\n" ( + pkg: + "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"" + ) gsettingsOverridePackages} - chmod -R a+w "$data_dir" - cat - > "$schema_dir/zz-nixos-defaults.gschema.override" <<- EOF - ${gsettingsOverrides} - EOF + chmod -R a+w "$data_dir" + cat - > "$schema_dir/zz-nixos-defaults.gschema.override" <<- EOF + ${gsettingsOverrides} + EOF - ${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir" - '' + ${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir" +'' diff --git a/pkgs/desktops/budgie/plugins/budgie-media-player-applet/default.nix b/pkgs/by-name/bu/budgie-media-player-applet/package.nix similarity index 79% rename from pkgs/desktops/budgie/plugins/budgie-media-player-applet/default.nix rename to pkgs/by-name/bu/budgie-media-player-applet/package.nix index 38b3888c74f6..ee883480d3cb 100644 --- a/pkgs/desktops/budgie/plugins/budgie-media-player-applet/default.nix +++ b/pkgs/by-name/bu/budgie-media-player-applet/package.nix @@ -1,10 +1,12 @@ -{ lib -, stdenv -, fetchFromGitHub -, glib -, meson -, ninja -, python3Packages +{ + lib, + stdenv, + fetchFromGitHub, + glib, + meson, + ninja, + nix-update-script, + python3Packages, }: stdenv.mkDerivation (finalAttrs: { @@ -40,9 +42,14 @@ stdenv.mkDerivation (finalAttrs: { patchPythonScript "$out/lib/budgie-desktop/plugins/budgie-media-player-applet/applet.py" ''; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Media Control Applet for the Budgie Panel"; homepage = "https://github.com/zalesyc/budgie-media-player-applet"; + changelog = "https://github.com/zalesyc/budgie-media-player-applet/releases/tag/v${finalAttrs.version}"; license = lib.licenses.gpl3Plus; platforms = lib.platforms.linux; maintainers = lib.teams.budgie.members; diff --git a/pkgs/desktops/budgie/budgie-screensaver/default.nix b/pkgs/by-name/bu/budgie-screensaver/package.nix similarity index 57% rename from pkgs/desktops/budgie/budgie-screensaver/default.nix rename to pkgs/by-name/bu/budgie-screensaver/package.nix index 55b4be851642..339b800800f4 100644 --- a/pkgs/desktops/budgie/budgie-screensaver/default.nix +++ b/pkgs/by-name/bu/budgie-screensaver/package.nix @@ -1,20 +1,23 @@ -{ lib -, stdenv -, fetchFromGitHub -, dbus-glib -, glib -, gnome-desktop -, gtk3 -, intltool -, libgnomekbd -, libX11 -, linux-pam -, meson -, ninja -, pkg-config -, systemd -, wrapGAppsHook3 -, xorg +{ + lib, + stdenv, + fetchFromGitHub, + dbus-glib, + glib, + gnome-desktop, + gtk3, + intltool, + libgnomekbd, + libX11, + linux-pam, + meson, + ninja, + nix-update-script, + pkg-config, + systemd, + testers, + wrapGAppsHook3, + xorg, }: stdenv.mkDerivation (finalAttrs: { @@ -25,9 +28,14 @@ stdenv.mkDerivation (finalAttrs: { owner = "BuddiesOfBudgie"; repo = "budgie-screensaver"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-N8x9hdbaMDisTbQPJedNO4UMLnCn+Q2hhm4udJZgQlc="; + hash = "sha256-N8x9hdbaMDisTbQPJedNO4UMLnCn+Q2hhm4udJZgQlc="; }; + outputs = [ + "out" + "man" + ]; + nativeBuildInputs = [ intltool meson @@ -50,12 +58,22 @@ stdenv.mkDerivation (finalAttrs: { env.NIX_CFLAGS_COMPILE = "-D_POSIX_C_SOURCE"; + passthru = { + tests.version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "budgie-screensaver-command --version"; + }; + + updateScript = nix-update-script { }; + }; + meta = { description = "Fork of old GNOME Screensaver for purposes of providing an authentication prompt on wake"; homepage = "https://github.com/BuddiesOfBudgie/budgie-screensaver"; + changelog = "https://github.com/BuddiesOfBudgie/budgie-screensaver/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.gpl2Only; + maintainers = lib.teams.budgie.members; mainProgram = "budgie-screensaver"; platforms = lib.platforms.linux; - maintainers = lib.teams.budgie.members; - license = lib.licenses.gpl2Only; }; }) diff --git a/pkgs/desktops/budgie/budgie-session/fix-paths.patch b/pkgs/by-name/bu/budgie-session/fix-paths.patch similarity index 100% rename from pkgs/desktops/budgie/budgie-session/fix-paths.patch rename to pkgs/by-name/bu/budgie-session/fix-paths.patch diff --git a/pkgs/desktops/budgie/budgie-session/default.nix b/pkgs/by-name/bu/budgie-session/package.nix similarity index 69% rename from pkgs/desktops/budgie/budgie-session/default.nix rename to pkgs/by-name/bu/budgie-session/package.nix index 3815af26c21d..0dfd4dc60824 100644 --- a/pkgs/desktops/budgie/budgie-session/default.nix +++ b/pkgs/by-name/bu/budgie-session/package.nix @@ -1,30 +1,32 @@ -{ lib -, stdenv -, fetchFromGitHub -, substituteAll -, meson -, ninja -, pkg-config -, gnome -, adwaita-icon-theme -, glib -, gtk3 -, gsettings-desktop-schemas -, gnome-desktop -, dbus -, json-glib -, libICE -, xmlto -, docbook_xsl -, docbook_xml_dtd_412 -, python3 -, libxslt -, gettext -, makeWrapper -, systemd -, xorg -, libepoxy -, bash +{ + lib, + stdenv, + fetchFromGitHub, + substituteAll, + meson, + ninja, + pkg-config, + gnome, + adwaita-icon-theme, + glib, + gtk3, + gsettings-desktop-schemas, + gnome-desktop, + dbus, + json-glib, + libICE, + xmlto, + docbook_xsl, + docbook_xml_dtd_412, + python3, + libxslt, + gettext, + makeWrapper, + nix-update-script, + systemd, + xorg, + libepoxy, + bash, }: stdenv.mkDerivation (finalAttrs: { @@ -38,12 +40,17 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-mz+Yh3NK2Tag+MWVofFFXYYXspxhmYBD6YCiuATpZSI="; }; + outputs = [ + "out" + "man" + ]; + patches = [ (substituteAll { src = ./fix-paths.patch; - gsettings = "${glib.bin}/bin/gsettings"; - dbusLaunch = "${dbus.lib}/bin/dbus-launch"; - bash = "${bash}/bin/bash"; + gsettings = lib.getExe' glib "gsettings"; + dbusLaunch = lib.getExe' dbus "dbus-launch"; + bash = lib.getExe bash; }) ]; @@ -92,9 +99,14 @@ stdenv.mkDerivation (finalAttrs: { separateDebugInfo = true; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Session manager for Budgie"; homepage = "https://github.com/BuddiesOfBudgie/budgie-session"; + changelog = "https://github.com/BuddiesOfBudgie/budgie-session/releases/tag/v${finalAttrs.version}"; license = lib.licenses.gpl2Plus; maintainers = lib.teams.budgie.members; platforms = lib.platforms.linux; diff --git a/pkgs/desktops/budgie/plugins/budgie-user-indicator-redux/default.nix b/pkgs/by-name/bu/budgie-user-indicator-redux/package.nix similarity index 76% rename from pkgs/desktops/budgie/plugins/budgie-user-indicator-redux/default.nix rename to pkgs/by-name/bu/budgie-user-indicator-redux/package.nix index 273f87d51dbd..dd95b40ceca9 100644 --- a/pkgs/desktops/budgie/plugins/budgie-user-indicator-redux/default.nix +++ b/pkgs/by-name/bu/budgie-user-indicator-redux/package.nix @@ -1,17 +1,19 @@ -{ lib -, stdenv -, fetchFromGitHub -, accountsservice -, budgie -, gtk3 -, intltool -, libgee -, libpeas -, meson -, ninja -, pkg-config -, sassc -, vala +{ + lib, + stdenv, + fetchFromGitHub, + accountsservice, + budgie-desktop, + gtk3, + intltool, + libgee, + libpeas, + meson, + ninja, + nix-update-script, + pkg-config, + sassc, + vala, }: stdenv.mkDerivation (finalAttrs: { @@ -35,13 +37,17 @@ stdenv.mkDerivation (finalAttrs: { buildInputs = [ accountsservice - budgie.budgie-desktop + budgie-desktop gtk3 libgee libpeas sassc ]; + passthru = { + updateScript = nix-update-script { }; + }; + meta = { description = "Manage your user session from the Budgie panel"; homepage = "https://github.com/EbonJaeger/budgie-user-indicator-redux"; diff --git a/pkgs/desktops/budgie/magpie/default.nix b/pkgs/by-name/ma/magpie/package.nix similarity index 69% rename from pkgs/desktops/budgie/magpie/default.nix rename to pkgs/by-name/ma/magpie/package.nix index 5f42b1986ce6..176c81fae2b8 100644 --- a/pkgs/desktops/budgie/magpie/default.nix +++ b/pkgs/by-name/ma/magpie/package.nix @@ -1,54 +1,62 @@ -{ fetchFromGitHub -, runCommand -, lib -, fetchpatch -, stdenv -, pkg-config -, gnome -, gettext -, gobject-introspection -, cairo -, colord -, lcms2 -, pango -, json-glib -, libstartup_notification -, libcanberra -, ninja -, xvfb-run -, xkeyboard_config -, libxcvt -, libxkbfile -, libXdamage -, libxkbcommon -, libXtst -, libinput -, libdrm -, gsettings-desktop-schemas -, glib -, gtk3 -, gnome-desktop -, pipewire -, libgudev -, libwacom -, mesa -, meson -, xorgserver -, python3 -, wrapGAppsHook3 -, gi-docgen -, sysprof -, libsysprof-capture -, desktop-file-utils -, libcap_ng -, graphene +{ + fetchFromGitHub, + runCommand, + lib, + fetchpatch, + stdenv, + pkg-config, + gnome, + gettext, + gobject-introspection, + cairo, + colord, + lcms2, + pango, + json-glib, + libstartup_notification, + libcanberra, + ninja, + xvfb-run, + xkeyboard_config, + libxcvt, + libxkbfile, + libXdamage, + libxkbcommon, + libXtst, + libinput, + libdrm, + gsettings-desktop-schemas, + glib, + gtk3, + gnome-desktop, + pipewire, + libgudev, + libwacom, + mesa, + meson, + nix-update-script, + validatePkgConfig, + xorgserver, + python3, + wrapGAppsHook3, + gi-docgen, + sysprof, + testers, + libsysprof-capture, + desktop-file-utils, + libcap_ng, + graphene, }: stdenv.mkDerivation (finalAttrs: { pname = "magpie"; version = "0.9.3"; - outputs = [ "out" "dev" "devdoc" ]; + outputs = [ + "out" + "dev" + "devdoc" + ]; src = fetchFromGitHub { owner = "BuddiesOfBudgie"; @@ -62,7 +70,7 @@ stdenv.mkDerivation (finalAttrs: { # https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2572 (fetchpatch { url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/285a5a4d54ca83b136b787ce5ebf1d774f9499d5.patch"; - sha256 = "/npUE3idMSTVlFptsDpZmGWjZ/d2gqruVlJKq4eF4xU="; + hash = "sha256-/npUE3idMSTVlFptsDpZmGWjZ/d2gqruVlJKq4eF4xU="; }) ]; @@ -90,6 +98,7 @@ stdenv.mkDerivation (finalAttrs: { xvfb-run pkg-config python3 + validatePkgConfig wrapGAppsHook3 gi-docgen xorgserver @@ -146,21 +155,32 @@ stdenv.mkDerivation (finalAttrs: { libdir = "${finalAttrs.finalPackage}/lib/magpie-0"; tests = { - libdirExists = runCommand "magpie-libdir-exists" {} '' + libdirExists = runCommand "magpie-libdir-exists" { } '' if [[ ! -d ${finalAttrs.finalPackage.libdir} ]]; then echo "passthru.libdir should contain a directory, “${finalAttrs.finalPackage.libdir}” is not one." exit 1 fi touch $out ''; + + pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; }; }; + + updateScript = nix-update-script { }; }; meta = { description = "Softish fork of Mutter 43.x"; homepage = "https://github.com/BuddiesOfBudgie/magpie"; + changelog = "https://github.com/BuddiesOfBudgie/magpie/releases/tag/v${finalAttrs.version}"; license = lib.licenses.gpl2Plus; maintainers = lib.teams.budgie.members; platforms = lib.platforms.linux; + pkgConfigModules = [ + "libmagpie-0" + "magpie-clutter-0" + "magpie-cogl-0" + "magpie-cogl-pango-0" + ]; }; }) diff --git a/pkgs/desktops/budgie/default.nix b/pkgs/desktops/budgie/default.nix deleted file mode 100644 index 52f47d00bdeb..000000000000 --- a/pkgs/desktops/budgie/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ lib, newScope }: - -lib.makeScope newScope (self: let - inherit (self) callPackage; -in { - budgie-backgrounds = callPackage ./budgie-backgrounds { }; - budgie-control-center = callPackage ./budgie-control-center { }; - budgie-desktop = callPackage ./budgie-desktop { }; - budgie-desktop-view = callPackage ./budgie-desktop-view { }; - budgie-desktop-with-plugins = callPackage ./budgie-desktop/wrapper.nix { }; - budgie-gsettings-overrides = callPackage ./budgie-gsettings-overrides { }; - budgie-screensaver = callPackage ./budgie-screensaver { }; - budgie-session = callPackage ./budgie-session { }; - magpie = callPackage ./magpie { }; -}) diff --git a/pkgs/desktops/budgie/plugins/default.nix b/pkgs/desktops/budgie/plugins/default.nix deleted file mode 100644 index 1958a8ef9ea2..000000000000 --- a/pkgs/desktops/budgie/plugins/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ callPackage }: { - budgie-analogue-clock-applet = callPackage ./budgie-analogue-clock-applet { }; - budgie-media-player-applet = callPackage ./budgie-media-player-applet { }; - budgie-user-indicator-redux = callPackage ./budgie-user-indicator-redux { }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 46c36ba47b33..cdda82fc6125 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -161,6 +161,10 @@ mapAliases ({ bpftool = bpftools; # Added 2021-05-03 bpytop = throw "bpytop has been deprecated by btop"; # Added 2023-02-16 bro = throw "'bro' has been renamed to/replaced by 'zeek'"; # Converted to throw 2023-09-10 + + budgie = throw "The `budgie` scope has been removed and all packages moved to the top-level"; # Added 2024-07-14 + budgiePlugins = throw "The `budgiePlugins` scope has been removed and all packages moved to the top-level"; # Added 2024-07-14 + inherit (libsForQt5.mauiPackages) buho; # added 2022-05-17 bukut = throw "bukut has been removed since it has been archived by upstream"; # Added 2023-05-24 butler = throw "butler was removed because it was broken and abandoned upstream"; # added 2024-06-18 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e8ad6aec6a3c..af62a31bea62 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -37118,9 +37118,6 @@ with pkgs; appls = [ prio ]; }; - budgie = recurseIntoAttrs (callPackage ../desktops/budgie { }); - budgiePlugins = recurseIntoAttrs (callPackage ../desktops/budgie/plugins { }); - cdesktopenv = callPackage ../desktops/cdesktopenv { }; cinnamon = recurseIntoAttrs (callPackage ../desktops/cinnamon { });