diff options
author | Patrick Hilhorst <git@hilhorst.be> | 2021-11-21 21:57:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-21 21:57:49 +0100 |
commit | 5a14b59cd75779ab050f9384cbbe3b8aaee00dd5 (patch) | |
tree | 4dda2cf82e8ed49129bef4cb74b2b2e7c4788bf1 | |
parent | cb4c8d3e51e3596594b33834634cd89a4fd7c3c9 (diff) | |
parent | 83265a850dea2824456db1debf902520db1a536d (diff) |
Merge pull request #122995 from primeos/sway-install-default-wallpaper
-rw-r--r-- | nixos/modules/programs/sway.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/window-managers/sway/default.nix | 14 | ||||
-rw-r--r-- | pkgs/applications/window-managers/sway/sway-config-nixos-paths.patch | 21 |
3 files changed, 31 insertions, 6 deletions
diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix index caf329c2536a3..c64e01a20cb3d 100644 --- a/nixos/modules/programs/sway.nix +++ b/nixos/modules/programs/sway.nix @@ -123,6 +123,8 @@ in { ]; environment = { systemPackages = [ swayPackage ] ++ cfg.extraPackages; + # Needed for the default wallpaper: + pathsToLink = [ "/share/backgrounds/sway" ]; etc = { "sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config"; "sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" '' diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix index fb0cb31fad578..782bd360d730a 100644 --- a/pkgs/applications/window-managers/sway/default.nix +++ b/pkgs/applications/window-managers/sway/default.nix @@ -22,19 +22,22 @@ stdenv.mkDerivation rec { }; patches = [ - ./sway-config-no-nix-store-references.patch ./load-configuration-from-etc.patch (substituteAll { src = ./fix-paths.patch; inherit swaybg; }) + ] ++ lib.optionals (!isNixOS) [ + # References to /nix/store/... will get GC'ed which causes problems when + # copying the default configuration: + ./sway-config-no-nix-store-references.patch + ] ++ lib.optionals isNixOS [ + # Use /run/current-system/sw/share and /etc instead of /nix/store + # references: + ./sway-config-nixos-paths.patch ]; - postPatch = lib.optionalString isNixOS '' - echo -e '\ninclude /etc/sway/config.d/*' >> config.in - ''; - nativeBuildInputs = [ meson ninja pkg-config wayland-scanner scdoc ]; @@ -47,7 +50,6 @@ stdenv.mkDerivation rec { ]; mesonFlags = [ - "-Ddefault-wallpaper=false" "-Dsd-bus-provider=libsystemd" ] ++ lib.optional (!enableXWayland) "-Dxwayland=disabled" diff --git a/pkgs/applications/window-managers/sway/sway-config-nixos-paths.patch b/pkgs/applications/window-managers/sway/sway-config-nixos-paths.patch new file mode 100644 index 0000000000000..bbb0f722b8bc2 --- /dev/null +++ b/pkgs/applications/window-managers/sway/sway-config-nixos-paths.patch @@ -0,0 +1,21 @@ +diff --git a/config.in b/config.in +index 08703bef..f3872730 100644 +--- a/config.in ++++ b/config.in +@@ -22,8 +22,8 @@ set $menu dmenu_path | dmenu | xargs swaymsg exec -- + + ### Output configuration + # +-# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/) +-output * bg @datadir@/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill ++# Default wallpaper (more resolutions are available in /run/current-system/sw/share/backgrounds/sway/) ++output * bg /run/current-system/sw/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill + # + # Example configuration: + # +@@ -214,4 +214,4 @@ bar { + } + } + +-include @sysconfdir@/sway/config.d/* ++include /etc/sway/config.d/* |