summaryrefslogtreecommitdiffstats
path: root/pkgs/applications/window-managers
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/window-managers')
-rw-r--r--pkgs/applications/window-managers/dk/default.nix4
-rw-r--r--pkgs/applications/window-managers/fvwm/2.6.nix82
-rw-r--r--pkgs/applications/window-managers/fvwm/3.nix97
-rw-r--r--pkgs/applications/window-managers/hikari/default.nix64
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/default.nix26
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix8
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix6
-rw-r--r--pkgs/applications/window-managers/tabbed/default.nix4
-rw-r--r--pkgs/applications/window-managers/wayfire/default.nix15
-rw-r--r--pkgs/applications/window-managers/wayfire/firedecor.nix8
-rw-r--r--pkgs/applications/window-managers/wayfire/focus-request.nix58
-rw-r--r--pkgs/applications/window-managers/wayfire/plugins.nix3
-rw-r--r--pkgs/applications/window-managers/wayfire/wayfire-plugins-extra.nix36
-rw-r--r--pkgs/applications/window-managers/wayfire/wayfire-shadows.nix49
-rw-r--r--pkgs/applications/window-managers/wayfire/wcm.nix4
-rw-r--r--pkgs/applications/window-managers/wayfire/wf-shell.nix2
-rw-r--r--pkgs/applications/window-managers/wayfire/windecor.nix6
-rw-r--r--pkgs/applications/window-managers/wayfire/wwp-switcher.nix57
18 files changed, 220 insertions, 309 deletions
diff --git a/pkgs/applications/window-managers/dk/default.nix b/pkgs/applications/window-managers/dk/default.nix
index 09cddc31a748..25fcad2ba0b6 100644
--- a/pkgs/applications/window-managers/dk/default.nix
+++ b/pkgs/applications/window-managers/dk/default.nix
@@ -9,13 +9,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dk";
- version = "2.0";
+ version = "2.1";
src = fetchFromBitbucket {
owner = "natemaia";
repo = "dk";
rev = "v${finalAttrs.version}";
- hash = "sha256-wuEsfzy4L40tL/Lb5R1jMFa8UAvAqkI3iEd//D7lxGY=";
+ hash = "sha256-bUt4Se4Gu7CZEdv1/VpU92ncq2MBKXG7T4Wpa/2rocI=";
};
buildInputs = [
diff --git a/pkgs/applications/window-managers/fvwm/2.6.nix b/pkgs/applications/window-managers/fvwm/2.6.nix
deleted file mode 100644
index e771a170c489..000000000000
--- a/pkgs/applications/window-managers/fvwm/2.6.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, cairo
-, fontconfig
-, freetype
-, fribidi
-, libXcursor
-, libXft
-, libXinerama
-, libXpm
-, libXt
-, libpng
-, librsvg
-, libstroke
-, libxslt
-, perl
-, pkg-config
-, python3Packages
-, readline
-, enableGestures ? false
-}:
-
-stdenv.mkDerivation rec {
- pname = "fvwm";
- version = "2.7.0";
-
- src = fetchFromGitHub {
- owner = "fvwmorg";
- repo = pname;
- rev = version;
- hash = "sha256-KcuX8las1n8UUE/BOHj7WOeZjva5hxgpFHtATMUk3bg=";
- };
-
- nativeBuildInputs = [
- autoreconfHook
- pkg-config
- python3Packages.wrapPython
- ];
-
- buildInputs = [
- cairo
- fontconfig
- freetype
- fribidi
- libXcursor
- libXft
- libXinerama
- libXpm
- libXt
- libpng
- librsvg
- libxslt
- perl
- python3Packages.python
- readline
- ] ++ lib.optional enableGestures libstroke;
-
- pythonPath = [
- python3Packages.pyxdg
- ];
-
- configureFlags = [
- "--enable-mandoc"
- "--disable-htmldoc"
- ];
-
- postFixup = ''
- wrapPythonPrograms
- '';
-
- enableParallelBuilding = true;
-
- meta = with lib; {
- homepage = "http://fvwm.org";
- description = "A multiple large virtual desktop window manager";
- license = licenses.gpl2Plus;
- platforms = platforms.linux;
- maintainers = with maintainers; [ edanaher ];
- };
-}
diff --git a/pkgs/applications/window-managers/fvwm/3.nix b/pkgs/applications/window-managers/fvwm/3.nix
deleted file mode 100644
index 31d29af44d80..000000000000
--- a/pkgs/applications/window-managers/fvwm/3.nix
+++ /dev/null
@@ -1,97 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, asciidoctor
-, autoreconfHook
-, cairo
-, fontconfig
-, freetype
-, fribidi
-, libSM
-, libX11
-, libXcursor
-, libXft
-, libXi
-, libXinerama
-, libXpm
-, libXrandr
-, libXt
-, libevent
-, libintl
-, libpng
-, librsvg
-, libstroke
-, libxslt
-, perl
-, pkg-config
-, python3Packages
-, readline
-, sharutils
-}:
-
-stdenv.mkDerivation (finalAttrs: {
- pname = "fvwm3";
- version = "1.0.9";
-
- src = fetchFromGitHub {
- owner = "fvwmorg";
- repo = "fvwm3";
- rev = finalAttrs.version;
- hash = "sha256-SjAccEAQsrzfVCtesqULONmb9TLD5IF8uIwEX3UhrxU=";
- };
-
- nativeBuildInputs = [
- autoreconfHook
- asciidoctor
- pkg-config
- python3Packages.wrapPython
- ];
-
- buildInputs = [
- cairo
- fontconfig
- freetype
- fribidi
- libSM
- libX11
- libXcursor
- libXft
- libXi
- libXinerama
- libXpm
- libXrandr
- libXt
- libevent
- libintl
- libpng
- librsvg
- libstroke
- libxslt
- perl
- python3Packages.python
- readline
- sharutils
- ];
-
- pythonPath = [
- python3Packages.pyxdg
- ];
-
- configureFlags = [
- "--enable-mandoc"
- ];
-
- postFixup = ''
- wrapPythonPrograms
- '';
-
- enableParallelBuilding = true;
-
- meta = with lib; {
- homepage = "http://fvwm.org";
- description = "A multiple large virtual desktop window manager - Version 3";
- license = licenses.gpl2Plus;
- maintainers = with maintainers; [ AndersonTorres ];
- inherit (libX11.meta) platforms;
- };
-})
diff --git a/pkgs/applications/window-managers/hikari/default.nix b/pkgs/applications/window-managers/hikari/default.nix
deleted file mode 100644
index 508f13f985b2..000000000000
--- a/pkgs/applications/window-managers/hikari/default.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-{ lib, stdenv, fetchzip
-, pkg-config, bmake
-, cairo, glib, libevdev, libinput, libxkbcommon, linux-pam, pango, pixman
-, libucl, wayland, wayland-protocols, wlroots, mesa
-, features ? {
- gammacontrol = true;
- layershell = true;
- screencopy = true;
- xwayland = true;
- }
-}:
-
-stdenv.mkDerivation rec {
- pname = "hikari";
- version = "2.3.3";
-
- src = fetchzip {
- url = "https://hikari.acmelabs.space/releases/${pname}-${version}.tar.gz";
- sha256 = "sha256-5Ug0U3ESC5F/gj7bahnLYkeY/weSCj0QASwdFuWwdMI=";
- };
-
- nativeBuildInputs = [ pkg-config bmake ];
-
- buildInputs = [
- cairo
- glib
- libevdev
- libinput
- libxkbcommon
- linux-pam
- pango
- pixman
- libucl
- mesa # for libEGL
- wayland
- wayland-protocols
- wlroots
- ];
-
- enableParallelBuilding = true;
-
- makeFlags = with lib; [ "PREFIX=$(out)" ]
- ++ optional stdenv.isLinux "WITH_POSIX_C_SOURCE=YES"
- ++ mapAttrsToList (feat: enabled:
- optionalString enabled "WITH_${toUpper feat}=YES"
- ) features;
-
- postPatch = ''
- # Can't suid in nix store
- # Run hikari as root (it will drop privileges as early as possible), or create
- # a systemd unit to give it the necessary permissions/capabilities.
- substituteInPlace Makefile --replace '4555' '555'
-
- sed -i 's@<drm_fourcc.h>@<libdrm/drm_fourcc.h>@' src/*.c
- '';
-
- meta = with lib; {
- description = "Stacking Wayland compositor which is actively developed on FreeBSD but also supports Linux";
- homepage = "https://hikari.acmelabs.space";
- license = licenses.bsd2;
- platforms = platforms.linux ++ platforms.freebsd;
- maintainers = with maintainers; [ jpotier ];
- };
-}
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/default.nix b/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
index 3db57a6b8dd2..a9d1764eaf1f 100644
--- a/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
+++ b/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
@@ -8,6 +8,7 @@
, binutils
, cairo
, git
+, hyprcursor
, hyprland-protocols
, hyprlang
, jq
@@ -22,11 +23,11 @@
, pciutils
, systemd
, tomlplusplus
-, udis86
+, udis86-hyprland
, wayland
, wayland-protocols
, wayland-scanner
-, wlroots
+, wlroots-hyprland
, xcbutilwm
, xwayland
, debug ? false
@@ -42,15 +43,19 @@
assert lib.assertMsg (!nvidiaPatches) "The option `nvidiaPatches` has been removed.";
assert lib.assertMsg (!enableNvidiaPatches) "The option `enableNvidiaPatches` has been removed.";
assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been removed. Please refer https://wiki.hyprland.org/Configuring/XWayland";
+
+let
+ wlr = wlroots-hyprland.override { inherit enableXWayland; };
+in
stdenv.mkDerivation (finalAttrs: {
pname = "hyprland" + lib.optionalString debug "-debug";
- version = "0.36.0";
+ version = "0.37.1";
src = fetchFromGitHub {
owner = "hyprwm";
repo = finalAttrs.pname;
rev = "v${finalAttrs.version}";
- hash = "sha256-oZe4k6jtO/0govmERGcbeyvE9EfTvXY5bnyIs6AsL9U=";
+ hash = "sha256-W+34KhCnqscRXN/IkvuJMiVx0Fa64RcYn8H4sZjzceI=";
};
patches = [
@@ -68,7 +73,7 @@ stdenv.mkDerivation (finalAttrs: {
--replace "@HASH@" '${finalAttrs.src.rev}' \
--replace "@BRANCH@" "" \
--replace "@MESSAGE@" "" \
- --replace "@DATE@" "2024-02-05" \
+ --replace "@DATE@" "2024-03-16" \
--replace "@TAG@" "" \
--replace "@DIRTY@" ""
'';
@@ -92,6 +97,7 @@ stdenv.mkDerivation (finalAttrs: {
[
cairo
git
+ hyprcursor
hyprland-protocols
hyprlang
libGL
@@ -99,13 +105,13 @@ stdenv.mkDerivation (finalAttrs: {
libinput
libxkbcommon
mesa
- udis86
+ udis86-hyprland
wayland
wayland-protocols
pango
pciutils
tomlplusplus
- wlroots
+ wlr
]
++ lib.optionals stdenv.hostPlatform.isMusl [ libexecinfo ]
++ lib.optionals enableXWayland [ libxcb xcbutilwm xwayland ]
@@ -125,7 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
];
postInstall = ''
- ln -s ${wlroots}/include/wlr $dev/include/hyprland/wlroots
+ ln -s ${wlr}/include/wlr $dev/include/hyprland/wlroots
${lib.optionalString wrapRuntimeDeps ''
wrapProgram $out/bin/Hyprland \
--suffix PATH : ${lib.makeBinPath [binutils pciutils stdenv.cc]}
@@ -135,11 +141,11 @@ stdenv.mkDerivation (finalAttrs: {
passthru.providedSessions = [ "hyprland" ];
meta = with lib; {
- homepage = "https://github.com/vaxerski/Hyprland";
+ homepage = "https://github.com/hyprwm/Hyprland";
description = "A dynamic tiling Wayland compositor that doesn't sacrifice on its looks";
license = licenses.bsd3;
maintainers = with maintainers; [ wozeparrot fufexan ];
mainProgram = "Hyprland";
- platforms = wlroots.meta.platforms;
+ platforms = wlr.meta.platforms;
};
})
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix b/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
index 1aef74294bd5..ddbd6d9fb4db 100644
--- a/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
+++ b/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
@@ -22,15 +22,15 @@ let
plugins = {
hy3 = { fetchFromGitHub, cmake, hyprland }:
- mkHyprlandPlugin hyprland rec {
+ mkHyprlandPlugin hyprland {
pluginName = "hy3";
- version = "0.36.0";
+ version = "0.36.0-unstable-2024-03-06";
src = fetchFromGitHub {
owner = "outfoxxed";
repo = "hy3";
- rev = "hl${version}";
- hash = "sha256-nRBeHh0Vr0gB3BHiqP9ZE4/yyZvRt8jJHwBF5lFu/24=";
+ rev = "a392bfd13caf865ccf6b9df6917b67cc3a054b82";
+ hash = "sha256-QuapQR9DJI9+vt7xqULYIXx2QCCX1I/YB50c+7ReexU=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix b/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
index 5c42eff6fc8c..d5be9f276cf2 100644
--- a/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
+++ b/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
@@ -1,16 +1,18 @@
{ fetchFromGitLab
, wlroots
+, enableXWayland ? true
}:
wlroots.overrideAttrs
(old: {
+ inherit enableXWayland;
version = "0.18.0-dev";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "wlroots";
repo = "wlroots";
- rev = "0cb091f1a2d345f37d2ee445f4ffd04f7f4ec9e5";
- hash = "sha256-Mz6hCtommq7RQfcPnxLINigO4RYSNt23HeJHC6mVmWI=";
+ rev = "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b";
+ hash = "sha256-wXWIJLd4F2JZeMaihWVDW/yYXCLEC8OpeNJZg9a9ly8=";
};
patches = [ ]; # don't inherit old.patches
diff --git a/pkgs/applications/window-managers/tabbed/default.nix b/pkgs/applications/window-managers/tabbed/default.nix
index ef0fd7efdc39..068d5c2f82ed 100644
--- a/pkgs/applications/window-managers/tabbed/default.nix
+++ b/pkgs/applications/window-managers/tabbed/default.nix
@@ -2,12 +2,12 @@
stdenv.mkDerivation (finalAttrs: {
pname = "tabbed";
- version = "0.7";
+ version = "0.8";
src = fetchgit {
url = "https://git.suckless.org/tabbed";
rev = finalAttrs.version;
- hash = "sha256-Y1MgPwqMUoa2Rr4HmqjtPaQegUmQJWYkcbyFcJHAOBI=";
+ hash = "sha256-KpMWBnnoF4AGRKrG30NQsVt0CFfJXVdlXLLag0Dq0sU=";
};
inherit patches;
diff --git a/pkgs/applications/window-managers/wayfire/default.nix b/pkgs/applications/window-managers/wayfire/default.nix
index c633b19abc70..e6ed87ffabd3 100644
--- a/pkgs/applications/window-managers/wayfire/default.nix
+++ b/pkgs/applications/window-managers/wayfire/default.nix
@@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
+, nixosTests
, cmake
, meson
, ninja
@@ -26,14 +27,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "wayfire";
- version = "0.8.0";
+ version = "0.8.1";
src = fetchFromGitHub {
owner = "WayfireWM";
repo = "wayfire";
rev = "v${finalAttrs.version}";
fetchSubmodules = true;
- hash = "sha256-YI8N1rY71b2ulv7tAdah7sibG4qq3kY0/hyS0cls5to=";
+ hash = "sha256-OPGzPy0I6i3TvmA5KSWDb4Lsf66zM5X+Akckgs3wk2o=";
};
nativeBuildInputs = [
@@ -44,7 +45,6 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
- wf-config
libGL
libdrm
libexecinfo
@@ -54,14 +54,15 @@ stdenv.mkDerivation (finalAttrs: {
libxkbcommon
wayland-protocols
xorg.xcbutilwm
- wayland
- cairo
- pango
nlohmann_json
];
propagatedBuildInputs = [
+ wf-config
wlroots
+ wayland
+ cairo
+ pango
];
nativeCheckInputs = [
@@ -83,6 +84,8 @@ stdenv.mkDerivation (finalAttrs: {
passthru.providedSessions = [ "wayfire" ];
+ passthru.tests.mate = nixosTests.mate-wayland;
+
meta = {
homepage = "https://wayfire.org/";
description = "3D Wayland compositor";
diff --git a/pkgs/applications/window-managers/wayfire/firedecor.nix b/pkgs/applications/window-managers/wayfire/firedecor.nix
index ce42f6fc6886..6fbe4b5575bb 100644
--- a/pkgs/applications/window-managers/wayfire/firedecor.nix
+++ b/pkgs/applications/window-managers/wayfire/firedecor.nix
@@ -5,17 +5,13 @@
, ninja
, pkg-config
, boost
-, cairo
, glib
, libGL
, libinput
, librsvg
, libxkbcommon
-, pango
, udev
, wayfire
-, wayland
-, wf-config
, xcbutilwm
, mate
}:
@@ -39,17 +35,13 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
boost
- cairo
glib
libGL
libinput
librsvg
libxkbcommon
- pango
udev
wayfire
- wayland
- wf-config
xcbutilwm
];
diff --git a/pkgs/applications/window-managers/wayfire/focus-request.nix b/pkgs/applications/window-managers/wayfire/focus-request.nix
new file mode 100644
index 000000000000..1e535e8ba751
--- /dev/null
+++ b/pkgs/applications/window-managers/wayfire/focus-request.nix
@@ -0,0 +1,58 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, wayfire
+, wf-config
+, wayland
+, pango
+, libinput
+, libxkbcommon
+, librsvg
+, libGL
+, xcbutilwm
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "focus-request";
+ version = "0.8.0.2";
+
+ src = fetchFromGitLab {
+ owner = "wayfireplugins";
+ repo = "focus-request";
+ rev = "v${finalAttrs.version}";
+ hash = "sha256-v0kGT+KrtfFJ/hp1Dr8izKVj6UHhuW6udHFjWt1y9TY=";
+ };
+
+ nativeBuildInputs = [
+ meson
+ ninja
+ pkg-config
+ ];
+
+ buildInputs = [
+ wayfire
+ wf-config
+ wayland
+ pango
+ libinput
+ libxkbcommon
+ librsvg
+ libGL
+ xcbutilwm
+ ];
+
+ env = {
+ PKG_CONFIG_WAYFIRE_METADATADIR = "${placeholder "out"}/share/wayfire/metadata";
+ };
+
+ meta = {
+ homepage = "https://gitlab.com/wayfireplugins/focus-request";
+ description = "The wayfire plugin provides a mechanism to grant focus to views that make a focus self-request";
+ license = lib.licenses.mit;
+ maintainers = with lib.maintainers; [ rewine ];
+ inherit (wayfire.meta) platforms;
+ };
+})
diff --git a/pkgs/applications/window-managers/wayfire/plugins.nix b/pkgs/applications/window-managers/wayfire/plugins.nix
index b8af85aafd0d..e6663b477f71 100644
--- a/pkgs/applications/window-managers/wayfire/plugins.nix
+++ b/pkgs/applications/window-managers/wayfire/plugins.nix
@@ -5,9 +5,12 @@ lib.makeScope pkgs.newScope (self:
inherit (self) callPackage;
in {
firedecor = callPackage ./firedecor.nix { };
+ focus-request = callPackage ./focus-request.nix { };
wayfire-plugins-extra = callPackage ./wayfire-plugins-extra.nix { };
+ wayfire-shadows = callPackage ./wayfire-shadows.nix { };
wcm = callPackage ./wcm.nix { };
wf-shell = callPackage ./wf-shell.nix { };
windecor = callPackage ./windecor.nix { };
+ wwp-switcher = callPackage ./wwp-switcher.nix { };
}
)
diff --git a/pkgs/applications/window-managers/wayfire/wayfire-plugins-extra.nix b/pkgs/applications/window-managers/wayfire/wayfire-plugins-extra.nix
index 965266444369..62496c9f8600 100644
--- a/pkgs/applications/window-managers/wayfire/wayfire-plugins-extra.nix
+++ b/pkgs/applications/window-managers/wayfire/wayfire-plugins-extra.nix
@@ -1,45 +1,31 @@
{ stdenv
, lib
, fetchFromGitHub
-, fetchpatch
, meson
, ninja
, pkg-config
, wayfire
, wf-config
-, gtkmm3
-, gtk-layer-shell
, libevdev
, libinput
, libxkbcommon
+, nlohmann_json
, xcbutilwm
+, gtkmm3
+, gtk-layer-shell
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wayfire-plugins-extra";
- version = "0.8.0";
+ version = "0.8.1";
src = fetchFromGitHub {
owner = "WayfireWM";
repo = "wayfire-plugins-extra";
rev = "v${finalAttrs.version}";
- fetchSubmodules = true;
- hash = "sha256-OVyP1AgZ1d9DXFkbHnROwtSQIquEX5ccVIkcmCdDZtA=";
+ hash = "sha256-MF4tDzIZnnTXH2ZUxltIw1RP3pfRQFGrc/n9H47yW0g";
};
- patches = [
- (fetchpatch {
- name = "check-dependency-libevdev.patch";
- url = "https://github.com/WayfireWM/wayfire-plugins-extra/commit/f3bbf1fcbafd28016e36be7a5043bd82574ac9e4.patch";
- hash = "sha256-8X1lpf8H8NuA845cIslahKDQKW/IA/KiMExU4Snk72o=";
- })
- ];
-
- postPatch = ''
- substituteInPlace metadata/meson.build \
- --replace "wayfire.get_variable(pkgconfig: 'metadatadir')" "join_paths(get_option('prefix'), 'share/wayfire/metadata')"
- '';
-
nativeBuildInputs = [
meson
ninja
@@ -52,12 +38,22 @@ stdenv.mkDerivation (finalAttrs: {
libevdev
libinput
libxkbcommon
+ nlohmann_json
xcbutilwm
gtkmm3
gtk-layer-shell
];
- mesonFlags = [ "--sysconfdir /etc" ];
+ mesonFlags = [
+ # plugins in submodule, packaged individually
+ (lib.mesonBool "enable_windecor" false)
+ (lib.mesonBool "enable_wayfire_shadows" false)
+ (lib.mesonBool "enable_focus_request" false)
+ ];
+
+ env = {
+ PKG_CONFIG_WAYFIRE_METADATADIR = "${placeholder "out"}/share/wayfire/metadata";
+ };
meta = {
homepage = "https://github.com/WayfireWM/wayfire-plugins-extra";
diff --git a/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix b/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix
new file mode 100644
index 000000000000..fd91d78285df
--- /dev/null
+++ b/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix
@@ -0,0 +1,49 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, unstableGitUpdater
+, meson
+, ninja
+, pkg-config
+, wayfire
+, libxkbcommon
+, libGL
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "wayfire-shadows";
+ version = "unstable-2024-03-28";
+
+ src = fetchFromGitHub {
+ owner = "timgott";
+ repo = "wayfire-shadows";
+ rev = "81699f6e4be65dcf3f7ad5155dfb4247b37b7997";
+ hash = "sha256-H9pqpHoeDfNBrtVLax57CUXVhU2XT+syAUZTYSJizxw=";
+ };
+
+ nativeBuildInputs = [
+ meson
+ ninja
+ pkg-config
+ ];
+
+ buildInputs = [
+ wayfire
+ libxkbcommon
+ libGL
+ ];
+
+ env = {
+ PKG_CONFIG_WAYFIRE_METADATADIR = "${placeholder "out"}/share/wayfire/metadata";
+ };
+
+ passthru.updateScript = unstableGitUpdater { };
+
+ meta = {
+ homepage = "https://github.com/timgott/wayfire-shadows";
+ description = "Wayfire plugin that adds window shadows";
+ license = lib.licenses.mit;
+ maintainers = with lib.maintainers; [ rewine ];
+ inherit (wayfire.meta) platforms;
+ };
+})
diff --git a/pkgs/applications/window-managers/wayfire/wcm.nix b/pkgs/applications/window-managers/wayfire/wcm.nix
index 1acd161e6211..fec3b1bfc716 100644
--- a/pkgs/applications/window-managers/wayfire/wcm.nix
+++ b/pkgs/applications/window-managers/wayfire/wcm.nix
@@ -4,11 +4,9 @@
, meson
, ninja
, pkg-config
-, wayland
, wrapGAppsHook
, wayfire
, wf-shell
-, wf-config
, wayland-scanner
, wayland-protocols
, gtk3
@@ -40,9 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
wayfire
- wf-config
wf-shell
- wayland
wayland-protocols
gtk3
gtkmm3
diff --git a/pkgs/applications/window-managers/wayfire/wf-shell.nix b/pkgs/applications/window-managers/wayfire/wf-shell.nix
index b71e667b31ad..348ef56be5d8 100644
--- a/pkgs/applications/window-managers/wayfire/wf-shell.nix
+++ b/pkgs/applications/window-managers/wayfire/wf-shell.nix
@@ -6,7 +6,6 @@
, pkg-config
, wayland-scanner
, wayfire
-, wf-config
, alsa-lib
, gtkmm3
, gtk-layer-shell
@@ -35,7 +34,6 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
wayfire
- wf-config
alsa-lib
gtkmm3
gtk-layer-shell
diff --git a/pkgs/applications/window-managers/wayfire/windecor.nix b/pkgs/applications/window-managers/wayfire/windecor.nix
index d3643aa18095..29c95ff1a91d 100644
--- a/pkgs/applications/window-managers/wayfire/windecor.nix
+++ b/pkgs/applications/window-managers/wayfire/windecor.nix
@@ -5,9 +5,6 @@
, ninja
, pkg-config
, wayfire
-, wf-config
-, wayland
-, pango
, eudev
, libinput
, libxkbcommon
@@ -40,9 +37,6 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
wayfire
- wf-config
- wayland
- pango
eudev
libinput
libxkbcommon
diff --git a/pkgs/applications/window-managers/wayfire/wwp-switcher.nix b/pkgs/applications/window-managers/wayfire/wwp-switcher.nix
new file mode 100644
index 000000000000..9ca4718e1709
--- /dev/null
+++ b/pkgs/applications/window-managers/wayfire/wwp-switcher.nix
@@ -0,0 +1,57 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, unstableGitUpdater
+, meson
+, ninja
+, pkg-config
+, wayfire
+, libxkbcommon
+, libGL
+, libinput
+, gtk3
+, glibmm
+, xcbutilwm
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "wwp-switcher";
+ version = "unstable-2023-09-09";
+
+ src = fetchFromGitHub {
+ owner = "wb9688";
+ repo = "wwp-switcher";
+ rev = "04711a0db133a899f507a86e81897296b793b4f3";
+ hash = "sha256-qMyEhSZJNxAoaELKI2h1v59QJnKJzFa76Q4/WtZqpIU";
+ };
+
+ nativeBuildInputs = [
+ meson
+ ninja
+ pkg-config
+ ];
+
+ buildInputs = [
+ wayfire
+ libxkbcommon
+ libGL
+ libinput
+ gtk3
+ glibmm
+ xcbutilwm
+ ];
+
+ env = {
+ PKG_CONFIG_WAYFIRE_METADATADIR = "${placeholder "out"}/share/wayfire/metadata";
+ };
+
+ passthru.updateScript = unstableGitUpdater { };
+
+ meta = {
+ homepage = "https://github.com/wb9688/wwp-switcher";
+ description = "A plugin to switch active window";
+ license = lib.licenses.mit;
+ maintainers = with lib.maintainers; [ rewine ];
+ inherit (wayfire.meta) platforms;
+ };
+})