diff options
author | Bobby Rong <rjl931189261@126.com> | 2024-01-29 21:58:15 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-29 21:58:15 +0800 |
commit | 850bac2305d157280e56255f760297c37321f2a1 (patch) | |
tree | edcb677b251000b25c1b75aa0ca1aa0423b203c1 /pkgs/desktops | |
parent | 86ea3132184f991d2f652c560871f3a854729b54 (diff) | |
parent | 6b5dd0640b58ec457291573acffce19bd1211656 (diff) |
Merge pull request #284633 from FedericoSchonborn/budgie-desktop-10.9
Budgie Desktop 10.9
Diffstat (limited to 'pkgs/desktops')
-rw-r--r-- | pkgs/desktops/budgie/budgie-desktop/default.nix | 9 | ||||
-rw-r--r-- | pkgs/desktops/budgie/budgie-session/default.nix | 101 | ||||
-rw-r--r-- | pkgs/desktops/budgie/budgie-session/fix-paths.patch | 35 | ||||
-rw-r--r-- | pkgs/desktops/budgie/default.nix | 1 | ||||
-rw-r--r-- | pkgs/desktops/gnome/core/gnome-session/default.nix | 3 | ||||
-rw-r--r-- | pkgs/desktops/xfce/core/libxfce4windowing/default.nix | 18 | ||||
-rw-r--r-- | pkgs/desktops/xfce/default.nix | 2 |
7 files changed, 162 insertions, 7 deletions
diff --git a/pkgs/desktops/budgie/budgie-desktop/default.nix b/pkgs/desktops/budgie/budgie-desktop/default.nix index 04263c99a74f6..585625226d861 100644 --- a/pkgs/desktops/budgie/budgie-desktop/default.nix +++ b/pkgs/desktops/budgie/budgie-desktop/default.nix @@ -8,7 +8,6 @@ , glib , gnome , gnome-desktop -, gnome-menus , graphene , gst_all_1 , gtk-doc @@ -32,19 +31,20 @@ , sassc , upower , vala +, xfce , wrapGAppsHook }: stdenv.mkDerivation (finalAttrs: { pname = "budgie-desktop"; - version = "10.8.2"; + version = "10.9"; src = fetchFromGitHub { owner = "BuddiesOfBudgie"; repo = "budgie-desktop"; rev = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-K5XUYcFjDJCHhjb/UTO206+UT6lI2P7X1v3SqlYbwPM="; + hash = "sha256-yyuLBzTDEQH7rBOWTYBvS+3x2mlbF34f7U7oOUO8BeA="; }; patches = [ @@ -68,8 +68,6 @@ stdenv.mkDerivation (finalAttrs: { budgie-screensaver glib gnome-desktop - gnome-menus - gnome.gnome-bluetooth_1_0 gnome.gnome-settings-daemon gnome.mutter gnome.zenity @@ -89,6 +87,7 @@ stdenv.mkDerivation (finalAttrs: { polkit sassc upower + xfce.libxfce4windowing ] ++ (with gst_all_1; [ gstreamer gst-plugins-base diff --git a/pkgs/desktops/budgie/budgie-session/default.nix b/pkgs/desktops/budgie/budgie-session/default.nix new file mode 100644 index 0000000000000..70b49080cb68f --- /dev/null +++ b/pkgs/desktops/budgie/budgie-session/default.nix @@ -0,0 +1,101 @@ +{ lib +, stdenv +, fetchFromGitHub +, substituteAll +, meson +, ninja +, pkg-config +, gnome +, 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 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "budgie-session"; + version = "0.9.1"; + + src = fetchFromGitHub { + owner = "BuddiesOfBudgie"; + repo = "budgie-session"; + rev = "v${finalAttrs.version}"; + hash = "sha256-mz+Yh3NK2Tag+MWVofFFXYYXspxhmYBD6YCiuATpZSI="; + }; + + patches = [ + (substituteAll { + src = ./fix-paths.patch; + gsettings = "${glib.bin}/bin/gsettings"; + dbusLaunch = "${dbus.lib}/bin/dbus-launch"; + bash = "${bash}/bin/bash"; + }) + ]; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gettext + makeWrapper + xmlto + libxslt + docbook_xsl + docbook_xml_dtd_412 + python3 + dbus # for DTD + ]; + + buildInputs = [ + glib + gtk3 + libICE + gnome-desktop + json-glib + xorg.xtrans + gnome.adwaita-icon-theme + gnome.gnome-settings-daemon + gsettings-desktop-schemas + systemd + libepoxy + ]; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs meson_post_install.py + ''; + + # `bin/budgie-session` will reset the environment when run in wayland, we + # therefor wrap `libexec/budgie-session-binary` instead which is the actual + # binary needing wrapping + preFixup = '' + wrapProgram "$out/libexec/budgie-session-binary" \ + --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ + --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \ + --suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg" + ''; + + separateDebugInfo = true; + + meta = { + description = "Session manager for Budgie"; + homepage = "https://github.com/BuddiesOfBudgie/budgie-session"; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [federicoschonborn]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/desktops/budgie/budgie-session/fix-paths.patch b/pkgs/desktops/budgie/budgie-session/fix-paths.patch new file mode 100644 index 0000000000000..1c011d26b5492 --- /dev/null +++ b/pkgs/desktops/budgie/budgie-session/fix-paths.patch @@ -0,0 +1,35 @@ +diff --git a/gnome-session/budgie-session.in b/gnome-session/budgie-session.in +index 8a91e061..3e2ef031 100755 +--- a/gnome-session/budgie-session.in ++++ b/gnome-session/budgie-session.in +@@ -7,13 +7,15 @@ if [ "x$XDG_SESSION_TYPE" = "xwayland" ] && + ! (echo "$SHELL" | grep -q "false") && + ! (echo "$SHELL" | grep -q "nologin"); then + if [ "$1" != '-l' ]; then +- exec bash -c "exec -l '$SHELL' -c '$0 -l $*'" ++ # Make sure the shell actually sets up the environment. ++ unset __NIXOS_SET_ENVIRONMENT_DONE ++ exec @bash@ -c "exec -l '$SHELL' -c '$0 -l $*'" + else + shift + fi + fi + +-SETTING=$(G_MESSAGES_DEBUG='' gsettings get org.gnome.system.locale region) ++SETTING=$(G_MESSAGES_DEBUG='' @gsettings@ get org.gnome.system.locale region) + REGION=${SETTING#\'} + REGION=${REGION%\'} + +diff --git a/gnome-session/main.c b/gnome-session/main.c +index 327c7c7f..301ec7ee 100644 +--- a/gnome-session/main.c ++++ b/gnome-session/main.c +@@ -219,7 +219,7 @@ require_dbus_session (int argc, + } + new_argv[i + 2] = NULL; + +- if (!execvp ("dbus-launch", new_argv)) { ++ if (!execvp ("@dbusLaunch@", new_argv)) { + g_set_error (error, + G_SPAWN_ERROR, + G_SPAWN_ERROR_FAILED, diff --git a/pkgs/desktops/budgie/default.nix b/pkgs/desktops/budgie/default.nix index 73eca39420235..031ec9cd51a01 100644 --- a/pkgs/desktops/budgie/default.nix +++ b/pkgs/desktops/budgie/default.nix @@ -8,5 +8,6 @@ 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 { }; + budgie-session = callPackage ./budgie-session { }; magpie = callPackage ./magpie { }; }) diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix index dc0cade8d4101..710829a5068e4 100644 --- a/pkgs/desktops/gnome/core/gnome-session/default.nix +++ b/pkgs/desktops/gnome/core/gnome-session/default.nix @@ -25,7 +25,6 @@ , libepoxy , bash , gnome-session-ctl -, gnomeShellSupport ? true }: stdenv.mkDerivation rec { @@ -114,7 +113,7 @@ stdenv.mkDerivation rec { wrapProgram "$out/libexec/gnome-session-binary" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \ - ${lib.optionalString gnomeShellSupport "--suffix XDG_DATA_DIRS : \"${gnome.gnome-shell}/share\""} \ + --suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share" \ --suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg" ''; diff --git a/pkgs/desktops/xfce/core/libxfce4windowing/default.nix b/pkgs/desktops/xfce/core/libxfce4windowing/default.nix new file mode 100644 index 0000000000000..6395497fccdae --- /dev/null +++ b/pkgs/desktops/xfce/core/libxfce4windowing/default.nix @@ -0,0 +1,18 @@ +{ lib, mkXfceDerivation, gobject-introspection, glib, gtk3, libwnck, wayland }: + +mkXfceDerivation { + category = "xfce"; + pname = "libxfce4windowing"; + version = "4.19.2"; + + sha256 = "sha256-mXxxyfwZB/AJFVVGFAAXLqC5p7pZAeqmhljQym55hyM="; + + nativeBuildInputs = [ gobject-introspection ]; + buildInputs = [ glib gtk3 libwnck wayland ]; + + meta = { + description = "Windowing concept abstraction library for X11 and Wayland"; + license = lib.licenses.lgpl21Plus; + maintainers = with lib; [ maintainers.federicoschonborn ] ++ teams.xfce.members; + }; +} diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix index 94ca82b4388bb..f0c53a4c38922 100644 --- a/pkgs/desktops/xfce/default.nix +++ b/pkgs/desktops/xfce/default.nix @@ -32,6 +32,8 @@ makeScopeWithSplicing' { libxfce4util = callPackage ./core/libxfce4util { }; + libxfce4windowing = callPackage ./core/libxfce4windowing { }; + thunar = callPackage ./core/thunar { thunarPlugins = [ ]; }; |