From 5e307dc68d9ba72a056543fb0b9b9b8772515313 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Fri, 7 Feb 2020 10:16:26 -0500 Subject: [PATCH] Revert "nixos/xfce: use sessionPackages" This reverts commit 966e56cdfbedc8be3dce8c5ea6050ce4d3075103. See https://github.com/NixOS/nixpkgs/pull/78421#issuecomment-582891431. --- .../services/x11/desktop-managers/xfce.nix | 11 +++++++--- .../xfce/core/xfce4-session/default.nix | 22 +++---------------- 2 files changed, 11 insertions(+), 22 deletions(-) diff --git a/nixos/modules/services/x11/desktop-managers/xfce.nix b/nixos/modules/services/x11/desktop-managers/xfce.nix index 21f59074f3ae8..a08b1947f65ba 100644 --- a/nixos/modules/services/x11/desktop-managers/xfce.nix +++ b/nixos/modules/services/x11/desktop-managers/xfce.nix @@ -127,9 +127,14 @@ in "/share/gtksourceview-4.0" ]; - services.xserver.displayManager.sessionPackages = [ - pkgs.xfce.xfce4-session - ]; + services.xserver.desktopManager.session = [{ + name = "xfce"; + bgSupport = true; + start = '' + ${pkgs.runtimeShell} ${pkgs.xfce.xfce4-session.xinitrc} & + waitPID=$! + ''; + }]; services.xserver.updateDbusEnvironment = true; services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ]; diff --git a/pkgs/desktops/xfce/core/xfce4-session/default.nix b/pkgs/desktops/xfce/core/xfce4-session/default.nix index f97c07156c583..0ab362aa21d07 100644 --- a/pkgs/desktops/xfce/core/xfce4-session/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-session/default.nix @@ -1,4 +1,4 @@ -{ mkXfceDerivation, polkit, exo, libxfce4util, libxfce4ui, xfconf, iceauth, gtk3, glib, libwnck3, xorg, xfce4-session, runtimeShell }: +{ mkXfceDerivation, polkit, exo, libxfce4util, libxfce4ui, xfconf, iceauth, gtk3, glib, libwnck3, xorg, xfce4-session }: mkXfceDerivation { category = "xfce"; @@ -14,25 +14,9 @@ mkXfceDerivation { # See https://github.com/NixOS/nixpkgs/issues/36468 NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; - # Don't use startxfce4 in xfce.desktop - # It's has FHS isms - postFixup = '' - chmod +x $out/etc/xdg/xfce4/xinitrc - patchShebangs $out/etc/xdg/xfce4/xinitrc + passthru.xinitrc = "${xfce4-session}/etc/xdg/xfce4/xinitrc"; - substituteInPlace "$out/share/xsessions/xfce.desktop" \ - --replace "Exec=startxfce4" "Exec=$out/etc/xdg/xfce4/xinitrc" - ''; - - passthru = { - xinitrc = "${xfce4-session}/etc/xdg/xfce4/xinitrc"; - - providedSessions = [ - "xfce" - ]; - }; - - meta = { + meta = { description = "Session manager for Xfce"; }; }