Skip to content
This repository was archived by the owner on Apr 12, 2021. It is now read-only.
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 504094dfbbb1
Choose a base ref
...
head repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 58fb23f72ad9
Choose a head ref
Loading
Showing with 824 additions and 2,179 deletions.
  1. +8 −0 nixos/doc/manual/release-notes/rl-2003.xml
  2. +8 −10 nixos/modules/services/desktops/tumbler.nix
  3. +1 −5 nixos/modules/services/hardware/fwupd.nix
  4. +8 −1 nixos/modules/services/mail/mailcatcher.nix
  5. +5 −1 nixos/modules/services/networking/bind.nix
  6. +64 −0 nixos/modules/services/networking/syncthing.nix
  7. +1 −1 nixos/modules/services/x11/desktop-managers/default.nix
  8. +77 −34 nixos/modules/services/x11/desktop-managers/xfce.nix
  9. +0 −152 nixos/modules/services/x11/desktop-managers/xfce4-14.nix
  10. +3 −3 nixos/modules/services/x11/hardware/libinput.nix
  11. +1 −1 nixos/modules/system/boot/networkd.nix
  12. +13 −0 nixos/modules/system/boot/timesyncd.nix
  13. +0 −1 nixos/release-combined.nix
  14. +0 −1 nixos/tests/all-tests.nix
  15. +14 −22 nixos/tests/xfce.nix
  16. +0 −37 nixos/tests/xfce4-14.nix
  17. +2 −2 pkgs/applications/editors/kdevelop5/kdev-php.nix
  18. +2 −2 pkgs/applications/editors/kdevelop5/kdev-python.nix
  19. +2 −2 pkgs/applications/editors/kdevelop5/kdevelop.nix
  20. +3 −2 pkgs/applications/editors/thonny/default.nix
  21. +6 −5 pkgs/applications/editors/vim/configurable.nix
  22. +9 −9 pkgs/applications/networking/browsers/chromium/upstream-info.nix
  23. +9 −1 pkgs/applications/networking/instant-messengers/bitlbee/default.nix
  24. +13 −9 pkgs/applications/video/mediathekview/default.nix
  25. +0 −22 pkgs/desktops/xfce/applications/gigolo.nix
  26. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/gigolo/default.nix
  27. +0 −90 pkgs/desktops/xfce/applications/mousepad-12134.patch
  28. +0 −38 pkgs/desktops/xfce/applications/mousepad.nix
  29. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/mousepad/default.nix
  30. +0 −44 pkgs/desktops/xfce/applications/orage.nix
  31. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/orage/default.nix
  32. +0 −38 pkgs/desktops/xfce/applications/parole.nix
  33. +6 −3 pkgs/desktops/{xfce4-14 → xfce/applications}/parole/default.nix
  34. +0 −34 pkgs/desktops/xfce/applications/ristretto.nix
  35. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/ristretto/default.nix
  36. +0 −25 pkgs/desktops/xfce/applications/terminal.nix
  37. +12 −0 pkgs/desktops/xfce/applications/xfburn/default.nix
  38. 0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-dict/configure-gio.patch
  39. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-dict/default.nix
  40. +0 −51 pkgs/desktops/xfce/applications/xfce4-mixer.nix
  41. +0 −32 pkgs/desktops/xfce/applications/xfce4-notifyd.nix
  42. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-notifyd/default.nix
  43. +0 −29 pkgs/desktops/xfce/applications/xfce4-screenshooter.nix
  44. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-screenshooter/default.nix
  45. +0 −22 pkgs/desktops/xfce/applications/xfce4-taskmanager.nix
  46. +4 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-taskmanager/default.nix
  47. 0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-terminal/default.nix
  48. +0 −31 pkgs/desktops/xfce/applications/xfce4-volumed-pulse.nix
  49. +2 −0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfce4-volumed-pulse/default.nix
  50. 0 pkgs/desktops/xfce/applications/{xfce4-volumed.nix → xfce4-volumed/default.nix}
  51. 0 pkgs/desktops/{xfce4-14 → xfce/applications}/xfdashboard/default.nix
  52. 0 pkgs/desktops/{xfce4-14 → xfce}/automakeAddFlags.sh
  53. +0 −27 pkgs/desktops/xfce/core/exo.nix
  54. 0 pkgs/desktops/{xfce4-14 → xfce/core}/exo/default.nix
  55. +0 −14 pkgs/desktops/xfce/core/garcon-10967.patch
  56. +0 −44 pkgs/desktops/xfce/core/garcon-12700.patch
  57. +0 −27 pkgs/desktops/xfce/core/garcon.nix
  58. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/garcon/default.nix
  59. +0 −31 pkgs/desktops/xfce/core/gtk-xfce-engine.nix
  60. +0 −41 pkgs/desktops/xfce/core/libxfce4ui.nix
  61. 0 pkgs/desktops/{xfce4-14 → xfce/core}/libxfce4ui/default.nix
  62. +0 −26 pkgs/desktops/xfce/core/libxfce4util.nix
  63. 0 pkgs/desktops/{xfce4-14 → xfce/core}/libxfce4util/default.nix
  64. +0 −37 pkgs/desktops/xfce/core/libxfcegui4.nix
  65. +0 −42 pkgs/desktops/xfce/core/thunar-build.nix
  66. +0 −30 pkgs/desktops/xfce/core/thunar-volman.nix
  67. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/thunar-volman/default.nix
  68. +0 −68 pkgs/desktops/xfce/core/thunar.nix
  69. +70 −0 pkgs/desktops/xfce/core/thunar/default.nix
  70. +5 −5 pkgs/desktops/xfce/core/{ → thunar}/thunarx_plugins_directory.patch
  71. +34 −0 pkgs/desktops/xfce/core/thunar/wrapper.nix
  72. +0 −42 pkgs/desktops/xfce/core/tumbler.nix
  73. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/tumbler/default.nix
  74. +0 −29 pkgs/desktops/xfce/core/xfce4-appfinder.nix
  75. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-appfinder/default.nix
  76. +0 −28 pkgs/desktops/xfce/core/xfce4-dev-tools.nix
  77. 0 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-dev-tools/default.nix
  78. 0 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-dev-tools/setup-hook.sh
  79. +0 −25 pkgs/desktops/xfce/core/xfce4-light-locker.patch
  80. +0 −59 pkgs/desktops/xfce/core/xfce4-panel.nix
  81. +1 −1 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-panel/default.nix
  82. 0 pkgs/desktops/xfce/core/{ → xfce4-panel}/xfce4-panel-datadir.patch
  83. +0 −44 pkgs/desktops/xfce/core/xfce4-power-manager.nix
  84. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-power-manager/default.nix
  85. +0 −44 pkgs/desktops/xfce/core/xfce4-session.nix
  86. +3 −1 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-session/default.nix
  87. +0 −11 pkgs/desktops/xfce/core/xfce4-settings-default-icon-theme.patch
  88. +0 −54 pkgs/desktops/xfce/core/xfce4-settings.nix
  89. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/xfce4-settings/default.nix
  90. +0 −30 pkgs/desktops/xfce/core/xfconf.nix
  91. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/xfconf/default.nix
  92. +0 −36 pkgs/desktops/xfce/core/xfdesktop.nix
  93. 0 pkgs/desktops/{xfce4-14 → xfce/core}/xfdesktop/default.nix
  94. +0 −31 pkgs/desktops/xfce/core/xfwm4.nix
  95. +4 −0 pkgs/desktops/{xfce4-14 → xfce/core}/xfwm4/default.nix
  96. +68 −59 pkgs/desktops/xfce/default.nix
  97. 0 pkgs/desktops/{xfce4-14 → xfce}/mkXfceDerivation.nix
  98. +0 −24 pkgs/desktops/xfce/panel-plugins/xfce4-battery-plugin.nix
  99. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-battery-plugin/default.nix
  100. +0 −24 pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin.nix
  101. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-clipman-plugin/default.nix
  102. +0 −29 pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin.nix
  103. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-cpufreq-plugin/default.nix
  104. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix
  105. +0 −26 pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin.nix
  106. +34 −0 pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix
  107. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix
  108. +3 −2 pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix
  109. +3 −2 pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix
  110. +3 −2 pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix
  111. +3 −2 pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
  112. +3 −2 pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
  113. +0 −24 pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin.nix
  114. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-netload-plugin/default.nix
  115. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix
  116. +0 −34 pkgs/desktops/xfce/panel-plugins/xfce4-pulseaudio-plugin.nix
  117. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-pulseaudio-plugin/default.nix
  118. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
  119. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix
  120. +4 −3 pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
  121. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-verve-plugin.nix
  122. +2 −2 pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix
  123. +0 −36 pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix
  124. +4 −0 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-whiskermenu-plugin/default.nix
  125. +0 −28 pkgs/desktops/xfce/panel-plugins/xfce4-xkb-plugin.nix
  126. +6 −1 pkgs/desktops/{xfce4-14 → xfce/panel-plugins}/xfce4-xkb-plugin/default.nix
  127. +23 −42 pkgs/desktops/xfce/thunar-plugins/archive/default.nix
  128. +24 −16 pkgs/desktops/xfce/thunar-plugins/dropbox/default.nix
  129. +0 −116 pkgs/desktops/xfce4-14/default.nix
  130. +0 −25 pkgs/desktops/xfce4-14/thunar/default.nix
  131. +0 −13 pkgs/desktops/xfce4-14/xfburn/default.nix
  132. +2 −2 pkgs/development/libraries/libsearpc/default.nix
  133. +1 −1 pkgs/development/mobile/androidenv/platform-tools.nix
  134. +2 −2 pkgs/development/python-modules/configshell/default.nix
  135. +2 −2 pkgs/development/python-modules/rtslib/default.nix
  136. +5 −4 pkgs/misc/jackaudio/default.nix
  137. +35 −31 pkgs/os-specific/linux/firmware/fwupd/add-option-for-installation-sysconfdir.patch
  138. +20 −6 pkgs/os-specific/linux/firmware/fwupd/default.nix
  139. +0 −11 pkgs/os-specific/linux/firmware/fwupd/fix-paths.patch
  140. +31 −0 pkgs/os-specific/linux/firmware/fwupd/no-which.patch
  141. +7 −2 pkgs/os-specific/linux/targetcli/default.nix
  142. +30 −0 pkgs/shells/zsh/zsh-fast-syntax-highlighting/default.nix
  143. +23 −0 pkgs/tools/misc/topgrade/default.nix
  144. +2 −0 pkgs/top-level/aliases.nix
  145. +6 −7 pkgs/top-level/all-packages.nix
8 changes: 8 additions & 0 deletions nixos/doc/manual/release-notes/rl-2003.xml
Original file line number Diff line number Diff line change
@@ -148,6 +148,14 @@
You should now use the different build tools coming with the languages with sandbox mode disabled.
</para>
</listitem>
<listitem>
<para>
There is now only one Xfce package-set and module. This means attributes, <literal>xfce4-14</literal>
<literal>xfce4-12</literal>, and <literal>xfceUnstable</literal> all now point to the latest Xfce 4.14
packages. And in future NixOS releases will be the latest released version of Xfce available at the
time during the releases development (if viable).
</para>
</listitem>
</itemizedlist>
</section>

18 changes: 8 additions & 10 deletions nixos/modules/services/desktops/tumbler.nix
Original file line number Diff line number Diff line change
@@ -7,12 +7,17 @@ with lib;
let

cfg = config.services.tumbler;
tumbler = cfg.package;

in

{

imports = [
(mkRemovedOptionModule
[ "services" "tumbler" "package" ]
"")
];

###### interface

options = {
@@ -21,13 +26,6 @@ in

enable = mkEnableOption "Tumbler, A D-Bus thumbnailer service";

package = mkOption {
type = types.package;
default = pkgs.xfce4-14.tumbler;
description = "Which tumbler package to use";
example = pkgs.xfce4-12.tumbler;
};

};

};
@@ -37,11 +35,11 @@ in

config = mkIf cfg.enable {

environment.systemPackages = [
environment.systemPackages = with pkgs.xfce; [
tumbler
];

services.dbus.packages = [
services.dbus.packages = with pkgs.xfce; [
tumbler
];

6 changes: 1 addition & 5 deletions nixos/modules/services/hardware/fwupd.nix
Original file line number Diff line number Diff line change
@@ -74,7 +74,7 @@ in {
default = false;
description = ''
Whether to enable test remote. This is used by
<link xlink:href="https://github.com/hughsie/fwupd/blob/master/data/installed-tests/README.md">installed tests</link>.
<link xlink:href="https://github.com/fwupd/fwupd/blob/master/data/installed-tests/README.md">installed tests</link>.
'';
};

@@ -115,10 +115,6 @@ in {
services.udev.packages = [ cfg.package ];

systemd.packages = [ cfg.package ];

systemd.tmpfiles.rules = [
"d /var/lib/fwupd 0755 root root -"
];
};

meta = {
9 changes: 8 additions & 1 deletion nixos/modules/services/mail/mailcatcher.nix
Original file line number Diff line number Diff line change
@@ -25,6 +25,13 @@ in
description = "The port address of the http server.";
};

http.path = mkOption {
type = with types; nullOr str;
default = null;
description = "Prefix to all HTTP paths.";
example = "/mailcatcher";
};

smtp.ip = mkOption {
type = types.str;
default = "127.0.0.1";
@@ -53,7 +60,7 @@ in
serviceConfig = {
DynamicUser = true;
Restart = "always";
ExecStart = "${pkgs.mailcatcher}/bin/mailcatcher --foreground --no-quit --http-ip ${cfg.http.ip} --http-port ${toString cfg.http.port} --smtp-ip ${cfg.smtp.ip} --smtp-port ${toString cfg.smtp.port}";
ExecStart = "${pkgs.mailcatcher}/bin/mailcatcher --foreground --no-quit --http-ip ${cfg.http.ip} --http-port ${toString cfg.http.port} --smtp-ip ${cfg.smtp.ip} --smtp-port ${toString cfg.smtp.port}" + optionalString (cfg.http.path != null) " --http-path ${cfg.http.path}";
AmbientCapabilities = optionalString (cfg.http.port < 1024 || cfg.smtp.port < 1024) "cap_net_bind_service";
};
};
6 changes: 5 additions & 1 deletion nixos/modules/services/networking/bind.nix
Original file line number Diff line number Diff line change
@@ -78,7 +78,11 @@ in
cacheNetworks = mkOption {
default = ["127.0.0.0/24"];
description = "
What networks are allowed to use us as a resolver.
What networks are allowed to use us as a resolver. Note
that this is for recursive queries -- all networks are
allowed to query zones configured with the `zones` option.
It is recommended that you limit cacheNetworks to avoid your
server being used for DNS amplification attacks.
";
};

64 changes: 64 additions & 0 deletions nixos/modules/services/networking/syncthing.nix
Original file line number Diff line number Diff line change
@@ -18,6 +18,7 @@ let
fsWatcherEnabled = folder.watch;
fsWatcherDelayS = folder.watchDelay;
ignorePerms = folder.ignorePerms;
versioning = folder.versioning;
}) (filterAttrs (
_: folder:
folder.enable
@@ -220,6 +221,69 @@ in {
'';
};

versioning = mkOption {
default = null;
description = ''
How to keep changed/deleted files with syncthing.
There are 4 different types of versioning with different parameters.
See https://docs.syncthing.net/users/versioning.html
'';
example = [
{
versioning = {
type = "simple";
params.keep = "10";
};
}
{
versioning = {
type = "trashcan";
params.cleanoutDays = "1000";
};
}
{
versioning = {
type = "staggered";
params = {
cleanInterval = "3600";
maxAge = "31536000";
versionsPath = "/syncthing/backup";
};
};
}
{
versioning = {
type = "external";
params.versionsPath = pkgs.writers.writeBash "backup" ''
folderpath="$1"
filepath="$2"
rm -rf "$folderpath/$filepath"
'';
};
}
];
type = with types; nullOr (submodule {
options = {
type = mkOption {
type = enum [ "external" "simple" "staggered" "trashcan" ];
description = ''
Type of versioning.
See https://docs.syncthing.net/users/versioning.html
'';
};
params = mkOption {
type = attrsOf (either str path);
description = ''
Parameters for versioning. Structure depends on versioning.type.
See https://docs.syncthing.net/users/versioning.html
'';
};
};
});
};



rescanInterval = mkOption {
type = types.int;
default = 3600;
2 changes: 1 addition & 1 deletion nixos/modules/services/x11/desktop-managers/default.nix
Original file line number Diff line number Diff line change
@@ -18,7 +18,7 @@ in
# determines the default: later modules (if enabled) are preferred.
# E.g., if Plasma 5 is enabled, it supersedes xterm.
imports = [
./none.nix ./xterm.nix ./xfce.nix ./xfce4-14.nix ./plasma5.nix ./lumina.nix
./none.nix ./xterm.nix ./xfce.nix ./plasma5.nix ./lumina.nix
./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix ./maxx.nix
./mate.nix ./pantheon.nix ./surf-display.nix
];
111 changes: 77 additions & 34 deletions nixos/modules/services/x11/desktop-managers/xfce.nix
Original file line number Diff line number Diff line change
@@ -7,6 +7,32 @@ let
in

{

imports = [
# added 2019-08-18
# needed to preserve some semblance of UI familarity
# with original XFCE module
(mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "xfce4-14" "extraSessionCommands" ]
[ "services" "xserver" "displayManager" "sessionCommands" ])

# added 2019-11-04
# xfce4-14 module removed and promoted to xfce.
# Needed for configs that used xfce4-14 module to migrate to this one.
(mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "xfce4-14" "enable" ]
[ "services" "xserver" "desktopManager" "xfce" "enable" ])
(mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "xfce4-14" "noDesktop" ]
[ "services" "xserver" "desktopManager" "xfce" "noDesktop" ])
(mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "xfce4-14" "enableXfwm" ]
[ "services" "xserver" "desktopManager" "xfce" "enableXfwm" ])
(mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "xfce" "extraSessionCommands" ]
[ "services" "xserver" "displayManager" "sessionCommands" ])
];

options = {
services.xserver.desktopManager.xfce = {
enable = mkOption {
@@ -30,14 +56,6 @@ in
description = "Don't install XFCE desktop components (xfdesktop, panel and notification daemon).";
};

extraSessionCommands = mkOption {
default = "";
type = types.lines;
description = ''
Shell commands executed just before XFCE is started.
'';
};

enableXfwm = mkOption {
type = types.bool;
default = true;
@@ -48,76 +66,101 @@ in

config = mkIf cfg.enable {
environment.systemPackages = with pkgs.xfce // pkgs; [
# Get GTK themes and gtk-update-icon-cache
gtk2.out
glib # for gsettings
gtk3.out # gtk-update-icon-cache

# Supplies some abstract icons such as:
# utilities-terminal, accessories-text-editor
gnome3.gnome-themes-extra
gnome3.adwaita-icon-theme

hicolor-icon-theme
tango-icon-theme
xfce4-icon-theme

desktop-file-utils
shared-mime-info # for update-mime-database

# For a polkit authentication agent
polkit_gnome

# Needed by Xfce's xinitrc script
# TODO: replace with command -v
which
xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/

exo
garcon
gtk-xfce-engine
libxfce4ui
tumbler
xfconf

mousepad
parole
ristretto
xfce4-appfinder
xfce4-screenshooter
xfce4-session
xfce4-settings
xfce4-taskmanager
xfce4-terminal

(thunar.override { thunarPlugins = cfg.thunarPlugins; })
thunar-volman # TODO: drop
] ++ (if config.hardware.pulseaudio.enable
then [ xfce4-mixer-pulse xfce4-volumed-pulse ]
else [ xfce4-mixer xfce4-volumed ])
# TODO: NetworkManager doesn't belong here
++ optionals config.networking.networkmanager.enable [ networkmanagerapplet ]
++ optionals config.powerManagement.enable [ xfce4-power-manager ]
++ optionals cfg.enableXfwm [ xfwm4 ]
++ optionals (!cfg.noDesktop) [
xfce4-panel
] # TODO: NetworkManager doesn't belong here
++ optional config.networking.networkmanager.enable networkmanagerapplet
++ optional config.powerManagement.enable xfce4-power-manager
++ optionals config.hardware.pulseaudio.enable [
pavucontrol
# volume up/down keys support:
# xfce4-pulseaudio-plugin includes all the functionalities of xfce4-volumed-pulse
# but can only be used with xfce4-panel, so for no-desktop usage we still include
# xfce4-volumed-pulse
(if cfg.noDesktop then xfce4-volumed-pulse else xfce4-pulseaudio-plugin)
] ++ optionals cfg.enableXfwm [
xfwm4
xfwm4-themes
] ++ optionals (!cfg.noDesktop) [
xfce4-notifyd
xfce4-panel
xfdesktop
];

environment.pathsToLink = [
"/share/xfce4"
"/share/themes"
"/share/gtksourceview-2.0"
"/lib/xfce4"
"/share/gtksourceview-3.0"
"/share/gtksourceview-4.0"
];

services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];

services.xserver.desktopManager.session = [{
name = "xfce";
bgSupport = true;
start = ''
${cfg.extraSessionCommands}
${pkgs.runtimeShell} ${pkgs.xfce.xinitrc} &
${pkgs.runtimeShell} ${pkgs.xfce.xfce4-session.xinitrc} &
waitPID=$!
'';
}];

services.xserver.updateDbusEnvironment = true;
services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];

# Enable helpful DBus services.
services.udisks2.enable = true;
security.polkit.enable = true;
services.accounts-daemon.enable = true;
services.upower.enable = config.powerManagement.enable;
services.gnome3.glib-networking.enable = true;
services.gvfs.enable = true;
services.gvfs.package = pkgs.xfce.gvfs;
services.tumbler.enable = true;
services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
services.xserver.libinput.enable = mkDefault true; # used in xfce4-settings-manager

# Enable default programs
programs.dconf.enable = true;

# Shell integration for VTE terminals
programs.bash.vteIntegration = mkDefault true;
programs.zsh.vteIntegration = mkDefault true;

# Systemd services
systemd.packages = with pkgs.xfce; [
(thunar.override { thunarPlugins = cfg.thunarPlugins; })
] ++ optional (!cfg.noDesktop) xfce4-notifyd;

};
}
Loading