diff options
-rw-r--r-- | pkgs/applications/window-managers/wayfire/wcm.nix | 48 | ||||
-rw-r--r-- | pkgs/applications/window-managers/wayfire/wf-shell.nix | 10 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 1 |
3 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/applications/window-managers/wayfire/wcm.nix b/pkgs/applications/window-managers/wayfire/wcm.nix new file mode 100644 index 00000000000..7c246d9e0f7 --- /dev/null +++ b/pkgs/applications/window-managers/wayfire/wcm.nix @@ -0,0 +1,48 @@ +{ stdenv, lib, fetchFromGitHub, fetchpatch, meson, ninja, pkg-config, wayland +, gnome3, libevdev, libxml2, wayfire, wayland-protocols, wf-config, wf-shell +}: + +stdenv.mkDerivation rec { + pname = "wcm"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "WayfireWM"; + repo = "wcm"; + rev = "v${version}"; + sha256 = "0irypa0814nmsmi9s8wxwfs507w41g41zjv8dkp0fdhg0429zxwa"; + }; + + patches = [ + # The following three patches add support for loading Wayfire + # plugin metadata from outside of Wayfire's prefix. Remove if + # <https://github.com/WayfireWM/wcm/pull/18> is applied upstream. + (fetchpatch { + url = "https://github.com/WayfireWM/wcm/commit/8930ce96f51175947c42a605a520adc7282138ef.patch"; + sha256 = "10s3jikm99msxx73k6ccam8jlpdvvy379mifks4zmpfbag9ammrl"; + }) + (fetchpatch { + url = "https://github.com/WayfireWM/wcm/commit/07dfe16bf83ca3389ddfa8b1f90afee0a8c16135.patch"; + sha256 = "1hgqzqpf2anyhfb1bl4v3n2vwsw0w7far651p7aisn9vr6iqbmls"; + }) + (fetchpatch { + url = "https://github.com/WayfireWM/wcm/commit/0864c3d842ca1dfe6b2d25013941a7679d867458.patch"; + sha256 = "1z4zjl9al09wgb39gyc4g2ib5kkzppq37zla6ncmhmglis4l8arn"; + }) + ]; + + strictDeps = true; + nativeBuildInputs = [ meson ninja pkg-config wayland ]; + buildInputs = [ + gnome3.gtk libevdev libxml2 wayfire wayland wayland-protocols wf-config + wf-shell + ]; + + meta = with lib; { + homepage = "https://github.com/WayfireWM/wcm"; + description = "Wayfire Config Manager"; + license = licenses.mit; + maintainers = with maintainers; [ qyliss wucke13 ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/window-managers/wayfire/wf-shell.nix b/pkgs/applications/window-managers/wayfire/wf-shell.nix index eddec12a7f1..5bddd954f0d 100644 --- a/pkgs/applications/window-managers/wayfire/wf-shell.nix +++ b/pkgs/applications/window-managers/wayfire/wf-shell.nix @@ -31,6 +31,16 @@ stdenv.mkDerivation rec { url = "https://github.com/WayfireWM/wf-shell/commit/482f00455f0b0e08e3fffc844c865e43c80df84b.patch"; sha256 = "0zcwgshdd5d03fnkz30nmpzv0xv3085iqjmn61r05bin8v2b2b2h"; }) + + # Generate and install a wf-shell.pc file, so that other packages + # can find wf-shell's metadata directory, rather than assuming + # it's the same as Wayfire's. Remove if + # <https://github.com/WayfireWM/wf-shell/pull/54> is applied + # upstream. + (fetchpatch { + url = "https://github.com/WayfireWM/wf-shell/commit/2c97d63cde3fd683f3b4159f459a5116e1a539f3.patch"; + sha256 = "0pfi6x1ddm9bbhmy48bxmgvqpl754d3f7q91703mzfza0rlwpr4q"; + }) ]; strictDeps = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b7ddcff55cf..e85ff4458a0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22459,6 +22459,7 @@ in wf-config = callPackage ../applications/window-managers/wayfire/wf-config.nix { }; wayfire = callPackage ../applications/window-managers/wayfire { }; wf-shell = callPackage ../applications/window-managers/wayfire/wf-shell.nix { }; + wcm = callPackage ../applications/window-managers/wayfire/wcm.nix { }; waypipe = callPackage ../applications/networking/remote/waypipe { }; |