diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-08-23 10:09:14 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-08-26 09:07:03 +0000 |
commit | 63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f (patch) | |
tree | d58934cb48f9c953b19a0d0d5cffc0d0c5561471 /nixpkgs/pkgs/desktops/budgie | |
parent | c4eef3dacb2a3d359561f30917d9e3cc4e041be9 (diff) | |
parent | 91a22f76cd1716f9d0149e8a5c68424bb691de15 (diff) | |
download | nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.gz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.bz2 nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.lz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.xz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.zst nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/build-support/go/module.nix nixpkgs/pkgs/development/python-modules/django-mailman3/default.nix
Diffstat (limited to 'nixpkgs/pkgs/desktops/budgie')
8 files changed, 319 insertions, 26 deletions
diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-backgrounds/default.nix b/nixpkgs/pkgs/desktops/budgie/budgie-backgrounds/default.nix index 37e3b231aa2c..989908916689 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-backgrounds/default.nix +++ b/nixpkgs/pkgs/desktops/budgie/budgie-backgrounds/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "budgie-backgrounds"; - version = "1.0"; + version = "2.0"; src = fetchFromGitHub { owner = "BuddiesOfBudgie"; repo = "budgie-backgrounds"; rev = "v${version}"; - hash = "sha256-TdtgOYHO2QH4W2jWBuAzYQwxwAPya2lC3VrIi7kvi+M="; + hash = "sha256-L6y9YVS0NFsycS90AmUJJd9HFMJ/Ge99pI426tC05jA="; }; nativeBuildInputs = [ @@ -25,11 +25,6 @@ stdenv.mkDerivation rec { ninja ]; - preConfigure = '' - chmod +x ./scripts/optimizeImage.sh - patchShebangs ./scripts/optimizeImage.sh - ''; - meta = with lib; { description = "The default background set for the Budgie Desktop"; homepage = "https://github.com/BuddiesOfBudgie/budgie-backgrounds"; diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-control-center/default.nix b/nixpkgs/pkgs/desktops/budgie/budgie-control-center/default.nix index 1a51c3dfc1f1..7c11fe7933e5 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-control-center/default.nix +++ b/nixpkgs/pkgs/desktops/budgie/budgie-control-center/default.nix @@ -39,6 +39,7 @@ , libwacom , libxml2 , libxslt +, magpie , meson , modemmanager , networkmanager @@ -108,7 +109,6 @@ stdenv.mkDerivation rec { gnome.gnome-remote-desktop gnome.gnome-settings-daemon gnome.gnome-user-share - gnome.mutter gsettings-desktop-schemas gsound gtk3 @@ -126,6 +126,7 @@ stdenv.mkDerivation rec { libsecret libwacom libxml2 + magpie modemmanager networkmanager polkit @@ -158,7 +159,7 @@ stdenv.mkDerivation rec { --prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share" --prefix XDG_DATA_DIRS : "${librsvg}/share" # WM keyboard shortcuts - --prefix XDG_DATA_DIRS : "${gnome.mutter}/share" + --prefix XDG_DATA_DIRS : "${magpie}/share" ) ''; diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/default.nix b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/default.nix index 787389c7576c..43a68e54beed 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/default.nix +++ b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/default.nix @@ -23,6 +23,7 @@ , libpulseaudio , libuuid , libwnck +, magpie , mesa , meson , ninja @@ -36,14 +37,14 @@ stdenv.mkDerivation rec { pname = "budgie-desktop"; - version = "10.7.2"; + version = "10.8"; src = fetchFromGitHub { owner = "BuddiesOfBudgie"; repo = pname; rev = "v${version}"; fetchSubmodules = true; - hash = "sha256-fd3B2DMZxCI4Gb9mwdACjIPydKghXx8IkhFpMS/Clps="; + hash = "sha256-fOsTBnKtwBGQSPkBBrzwHEB3+OcJYtPIdvZsV31oi6g="; }; patches = [ @@ -70,7 +71,6 @@ stdenv.mkDerivation rec { gnome-menus gnome.gnome-bluetooth_1_0 gnome.gnome-settings-daemon - gnome.mutter gnome.zenity graphene gtk3 @@ -83,6 +83,7 @@ stdenv.mkDerivation rec { libpulseaudio libuuid libwnck + magpie mesa polkit sassc @@ -101,6 +102,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/BuddiesOfBudgie/budgie-desktop"; platforms = platforms.linux; maintainers = [ maintainers.federicoschonborn ]; - license = with licenses; [ gpl2Plus lgpl21Plus cc-by-sa-30]; + license = with licenses; [ gpl2Plus lgpl21Plus cc-by-sa-30 ]; }; } diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/plugins.patch b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/plugins.patch index af03fb635140..ca23edc42cee 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/plugins.patch +++ b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/plugins.patch @@ -1,21 +1,153 @@ +diff --git a/meson.build b/meson.build +index 48aeeb38..31e4c24b 100644 +--- a/meson.build ++++ b/meson.build +@@ -88,11 +88,6 @@ datadir = join_paths(prefix, get_option('datadir')) + localedir = join_paths(prefix, get_option('localedir')) + podir = join_paths(meson.source_root(), 'po') + +-cdata.set_quoted('DATADIR', datadir) +-cdata.set_quoted('SYSCONFDIR', confdir) +-cdata.set_quoted('LOCALEDIR', localedir) +-cdata.set_quoted('PACKAGE_URL', 'https://buddiesofbudgie.org') +- + # Handle i18n on the .desktop file + # Originally stolem from TingPing: + # https://github.com/vinszent/gnome-twitch/blob/master/data/meson.build +@@ -111,23 +106,10 @@ cdata.set_quoted('MODULEDIR', plugin_libdir) + cdata.set_quoted('MODULE_DATA_DIR', plugin_datadir) + cdata.set_quoted('RAVEN_PLUGIN_LIBDIR', raven_plugin_libdir) + cdata.set_quoted('RAVEN_PLUGIN_DATADIR', raven_plugin_datadir) +- +-if prefix == '/usr' or prefix == '/usr/local' +- cdata.set('HAS_SECONDARY_PLUGIN_DIRS', true) +- +- if prefix == '/usr' +- secondary_libdir_root = join_paths(prefix, 'local', get_option('libdir'), meson.project_name()) +- secondary_datadir_root = join_paths(prefix, 'local', get_option('datadir'), meson.project_name()) +- else +- secondary_libdir_root = join_paths('/usr', get_option('libdir'), meson.project_name()) +- secondary_datadir_root = join_paths('/usr', get_option('datadir'), meson.project_name()) +- endif +- +- cdata.set_quoted('MODULEDIR_SECONDARY', join_paths(secondary_libdir_root, 'plugins')) +- cdata.set_quoted('MODULE_DATA_DIR_SECONDARY', join_paths(secondary_datadir_root, 'plugins')) +- cdata.set_quoted('RAVEN_PLUGIN_LIBDIR_SECONDARY', join_paths(secondary_libdir_root, 'raven-plugins')) +- cdata.set_quoted('RAVEN_PLUGIN_DATADIR_SECONDARY', join_paths(secondary_datadir_root, 'raven-plugins')) +-endif ++cdata.set_quoted('DATADIR', datadir) ++cdata.set_quoted('SYSCONFDIR', confdir) ++cdata.set_quoted('LOCALEDIR', localedir) ++cdata.set_quoted('PACKAGE_URL', 'https://buddiesofbudgie.org') + + with_bluetooth = get_option('with-bluetooth') + if with_bluetooth == true +diff --git a/src/config/budgie-config.c b/src/config/budgie-config.c +index fc531f59..0a21b690 100644 +--- a/src/config/budgie-config.c ++++ b/src/config/budgie-config.c +@@ -11,7 +11,6 @@ + + #ifndef CONFIG_H_INCLUDED + #include "config.h" +-#include <stdbool.h> + + /** + * All this is to keep Vala happy & configured.. +@@ -20,21 +19,6 @@ const char* BUDGIE_MODULE_DIRECTORY = MODULEDIR; + const char* BUDGIE_MODULE_DATA_DIRECTORY = MODULE_DATA_DIR; + const char* BUDGIE_RAVEN_PLUGIN_LIBDIR = RAVEN_PLUGIN_LIBDIR; + const char* BUDGIE_RAVEN_PLUGIN_DATADIR = RAVEN_PLUGIN_DATADIR; +- +-#ifdef HAS_SECONDARY_PLUGIN_DIRS +-const bool BUDGIE_HAS_SECONDARY_PLUGIN_DIRS = true; +-const char* BUDGIE_MODULE_DIRECTORY_SECONDARY = MODULEDIR_SECONDARY; +-const char* BUDGIE_MODULE_DATA_DIRECTORY_SECONDARY = MODULE_DATA_DIR_SECONDARY; +-const char* BUDGIE_RAVEN_PLUGIN_LIBDIR_SECONDARY = RAVEN_PLUGIN_LIBDIR_SECONDARY; +-const char* BUDGIE_RAVEN_PLUGIN_DATADIR_SECONDARY = RAVEN_PLUGIN_DATADIR_SECONDARY; +-#else +-const bool BUDGIE_HAS_SECONDARY_PLUGIN_DIRS = false; +-const char* BUDGIE_MODULE_DIRECTORY_SECONDARY = NULL; +-const char* BUDGIE_MODULE_DATA_DIRECTORY = NULL; +-const char* BUDGIE_RAVEN_PLUGIN_LIBDIR = NULL; +-const char* BUDGIE_RAVEN_PLUGIN_DATADIR = NULL; +-#endif +- + const char* BUDGIE_DATADIR = DATADIR; + const char* BUDGIE_VERSION = PACKAGE_VERSION; + const char* BUDGIE_WEBSITE = PACKAGE_URL; +diff --git a/src/config/budgie-config.h b/src/config/budgie-config.h +index 720379a5..c5774820 100644 +--- a/src/config/budgie-config.h ++++ b/src/config/budgie-config.h +@@ -12,8 +12,6 @@ + #ifndef _BUDGIE_CONFIG_H_ + #define _BUDGIE_CONFIG_H_ + +-#include <stdbool.h> +- + /* i.e. /usr/lib/budgie-desktop */ + extern const char* BUDGIE_MODULE_DIRECTORY; + +@@ -26,12 +24,6 @@ extern const char* BUDGIE_RAVEN_PLUGIN_LIBDIR; + /* i.e. /usr/share/budgie-desktop/raven-plugins */ + extern const char* BUDGIE_RAVEN_PLUGIN_DATADIR; + +-extern const bool BUDGIE_HAS_SECONDARY_PLUGIN_DIRS; +-extern const char* BUDGIE_MODULE_DIRECTORY_SECONDARY; +-extern const char* BUDGIE_MODULE_DATA_DIRECTORY_SECONDARY; +-extern const char* BUDGIE_RAVEN_PLUGIN_LIBDIR_SECONDARY; +-extern const char* BUDGIE_RAVEN_PLUGIN_DATADIR_SECONDARY; +- + /* i.e. /usr/share/ */ + extern const char* BUDGIE_DATADIR; + +diff --git a/src/config/budgie-config.vapi b/src/config/budgie-config.vapi +index 5eb445d1..7d27e348 100644 +--- a/src/config/budgie-config.vapi ++++ b/src/config/budgie-config.vapi +@@ -22,21 +22,6 @@ namespace Budgie { + [CCode (cheader_filename="budgie-config.h")] + public extern const string RAVEN_PLUGIN_DATADIR; + +- [CCode (cheader_filename="budgie-config.h")] +- public extern const bool HAS_SECONDARY_PLUGIN_DIRS; +- +- [CCode (cheader_filename="budgie-config.h")] +- public extern const string? MODULE_DIRECTORY_SECONDARY; +- +- [CCode (cheader_filename="budgie-config.h")] +- public extern const string? MODULE_DATA_DIRECTORY_SECONDARY; +- +- [CCode (cheader_filename="budgie-config.h")] +- public extern const string? RAVEN_PLUGIN_LIBDIR_SECONDARY; +- +- [CCode (cheader_filename="budgie-config.h")] +- public extern const string? RAVEN_PLUGIN_DATADIR_SECONDARY; +- + [CCode (cheader_filename="budgie-config.h")] + public extern const string DATADIR; + diff --git a/src/panel/plugin_manager.vala b/src/panel/plugin_manager.vala -index d3cdb65c..9d569bd1 100644 +index f4f2e4da..9d569bd1 100644 --- a/src/panel/plugin_manager.vala +++ b/src/panel/plugin_manager.vala -@@ -40,10 +40,26 @@ namespace Budgie { +@@ -40,13 +40,26 @@ namespace Budgie { } /* System path */ - var dir = Environment.get_user_data_dir(); - engine.add_search_path(Budgie.MODULE_DIRECTORY, Budgie.MODULE_DATA_DIRECTORY); +- if (Budgie.HAS_SECONDARY_PLUGIN_DIRS) { +- engine.add_search_path(Budgie.MODULE_DIRECTORY_SECONDARY, Budgie.MODULE_DATA_DIRECTORY_SECONDARY); + var libdir = Environment.get_variable("BUDGIE_PLUGIN_LIBDIR"); + if (libdir != null) { + debug("BUDGIE_PLUGIN_LIBDIR is set to %s", libdir); + } else { + debug("BUDGIE_PLUGIN_LIBDIR is unset, defaulting to %s", Budgie.MODULE_DIRECTORY); + libdir = Budgie.MODULE_DIRECTORY; -+ } -+ + } + + var datadir = Environment.get_variable("BUDGIE_PLUGIN_DATADIR"); + if (datadir != null) { + debug("BUDGIE_PLUGIN_DATADIR is set to %s", datadir); @@ -25,22 +157,24 @@ index d3cdb65c..9d569bd1 100644 + } + + engine.add_search_path(libdir, datadir); - ++ /* User path */ + var dir = Environment.get_user_data_dir(); var user_mod = Path.build_path(Path.DIR_SEPARATOR_S, dir, "budgie-desktop", "plugins"); var hdata = Path.build_path(Path.DIR_SEPARATOR_S, dir, "budgie-desktop", "data"); engine.add_search_path(user_mod, hdata); diff --git a/src/raven/plugin_manager.vala b/src/raven/plugin_manager.vala -index b0814693..d671109a 100644 +index 01f32553..d671109a 100644 --- a/src/raven/plugin_manager.vala +++ b/src/raven/plugin_manager.vala -@@ -51,10 +51,26 @@ namespace Budgie { +@@ -51,13 +51,26 @@ namespace Budgie { } /* System path */ - var dir = Environment.get_user_data_dir(); - engine.add_search_path(Budgie.RAVEN_PLUGIN_LIBDIR, Budgie.RAVEN_PLUGIN_DATADIR); +- if (Budgie.HAS_SECONDARY_PLUGIN_DIRS) { +- engine.add_search_path(Budgie.RAVEN_PLUGIN_LIBDIR_SECONDARY, Budgie.RAVEN_PLUGIN_DATADIR_SECONDARY); + var libdir = Environment.get_variable("RAVEN_PLUGIN_LIBDIR"); + if (libdir != null) { + debug("RAVEN_PLUGIN_LIBDIR is set to %s", libdir); @@ -55,10 +189,10 @@ index b0814693..d671109a 100644 + } else { + debug("RAVEN_PLUGIN_DATADIR is unset, defaulting to %s", Budgie.RAVEN_PLUGIN_DATADIR); + datadir = Budgie.RAVEN_PLUGIN_DATADIR; -+ } -+ -+ engine.add_search_path(libdir, datadir); + } ++ engine.add_search_path(libdir, datadir); ++ /* User path */ + var dir = Environment.get_user_data_dir(); var user_mod = Path.build_path(Path.DIR_SEPARATOR_S, dir, "budgie-desktop", "raven-plugins"); diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/wrapper.nix b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/wrapper.nix index 88c8d132bf12..99b33b68cb0e 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-desktop/wrapper.nix +++ b/nixpkgs/pkgs/desktops/budgie/budgie-desktop/wrapper.nix @@ -4,7 +4,7 @@ , xorg , wrapGAppsHook , budgie-desktop -, plugins ? [] +, plugins ? [ ] }: stdenv.mkDerivation { diff --git a/nixpkgs/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix b/nixpkgs/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix index 6516498dea89..411d8a1f6f63 100644 --- a/nixpkgs/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix +++ b/nixpkgs/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix @@ -3,7 +3,6 @@ , budgie-desktop , budgie-desktop-view , glib -, gnome , gsettings-desktop-schemas , mate , nixos-artwork @@ -57,7 +56,6 @@ let budgie-desktop budgie-desktop-view gsettings-desktop-schemas - gnome.mutter ] ++ extraGSettingsOverridePackages; in diff --git a/nixpkgs/pkgs/desktops/budgie/default.nix b/nixpkgs/pkgs/desktops/budgie/default.nix index afe954610fff..73eca3942023 100644 --- a/nixpkgs/pkgs/desktops/budgie/default.nix +++ b/nixpkgs/pkgs/desktops/budgie/default.nix @@ -8,4 +8,5 @@ lib.makeScope pkgs.newScope (self: with self; { budgie-desktop-with-plugins = callPackage ./budgie-desktop/wrapper.nix { }; budgie-gsettings-overrides = callPackage ./budgie-gsettings-overrides { }; budgie-screensaver = callPackage ./budgie-screensaver { }; + magpie = callPackage ./magpie { }; }) diff --git a/nixpkgs/pkgs/desktops/budgie/magpie/default.nix b/nixpkgs/pkgs/desktops/budgie/magpie/default.nix new file mode 100644 index 000000000000..15e59f801a23 --- /dev/null +++ b/nixpkgs/pkgs/desktops/budgie/magpie/default.nix @@ -0,0 +1,163 @@ +{ 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 +, wrapGAppsHook +, gi-docgen +, sysprof +, libsysprof-capture +, desktop-file-utils +, libcap_ng +, graphene +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "magpie"; + version = "0.9.2"; + + outputs = [ "out" "dev" "devdoc" ]; + + src = fetchFromGitHub { + owner = "BuddiesOfBudgie"; + repo = "magpie"; + rev = "v${finalAttrs.version}"; + hash = "sha256-GoilHdESFgpwt8+Uqzrnf8jBpeaSak1uHTlkNcQdgtk="; + }; + + patches = [ + # Fix build with separate sysprof. + # https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2572 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/285a5a4d54ca83b136b787ce5ebf1d774f9499d5.patch"; + sha256 = "/npUE3idMSTVlFptsDpZmGWjZ/d2gqruVlJKq4eF4xU="; + }) + ]; + + mesonFlags = [ + "-Degl_device=true" + "-Dprofiler=true" + "-Ddocs=true" + "-Dwith_shared_components=true" + ]; + + propagatedBuildInputs = [ + # required for pkg-config to detect magpie-clutter + json-glib + libXtst + libcap_ng + graphene + ]; + + nativeBuildInputs = [ + desktop-file-utils + gettext + libxcvt + mesa # needed for gbm + meson + ninja + xvfb-run + pkg-config + python3 + wrapGAppsHook + gi-docgen + xorgserver + ]; + + buildInputs = [ + cairo + glib + gnome-desktop + gnome.gnome-settings-daemon + gobject-introspection + gsettings-desktop-schemas + gtk3 + libcanberra + libdrm + libgudev + libinput + libstartup_notification + libwacom + libxkbcommon + libxkbfile + libXdamage + colord + lcms2 + pango + pipewire + sysprof # for D-Bus interfaces + libsysprof-capture + xkeyboard_config + ]; + + postPatch = '' + patchShebangs src/backends/native/gen-default-modes.py + # Magpie doesn't install any .desktop files + substituteInPlace meson/meson-postinstall.sh --replace "update-desktop-database" "# update-desktop-database" + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + # TODO: Move this into a directory devhelp can find. + moveToOutput "share/magpie-0/doc" "$devdoc" + ''; + + # Install udev files into our own tree. + PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev"; + + separateDebugInfo = true; + + passthru = { + libdir = "${finalAttrs.finalPackage}/lib/magpie-0"; + + tests = { + 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 + ''; + }; + }; + + meta = with lib; { + description = "Softish fork of Mutter 43.x"; + homepage = "https://github.com/BuddiesOfBudgie/magpie"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ federicoschonborn ]; + platforms = platforms.linux; + }; +}) |