summary refs log tree commit diff
path: root/pkgs/applications/window-managers/wmderland
diff options
context:
space:
mode:
authortakagiy <takagiy.4dev@gmail.com>2021-01-27 23:44:27 +0900
committertakagiy <takagiy.4dev@gmail.com>2021-02-06 02:36:39 +0900
commitb248510454fb9ab7d1857aede9d974be251e667c (patch)
treed2f2b60c332650831615cffb4acc9f042b4ce177 /pkgs/applications/window-managers/wmderland
parent7b8376e5d323fc0633079a3de9f28dba9a323f2e (diff)
downloadnixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar.gz
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar.bz2
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar.lz
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar.xz
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.tar.zst
nixpkgs-b248510454fb9ab7d1857aede9d974be251e667c.zip
wmderland: init at 2020-07-17
Diffstat (limited to 'pkgs/applications/window-managers/wmderland')
-rw-r--r--pkgs/applications/window-managers/wmderland/0001-remove-flto.patch13
-rw-r--r--pkgs/applications/window-managers/wmderland/default.nix49
2 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch b/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch
new file mode 100644
index 00000000000..cae1eac0a20
--- /dev/null
+++ b/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 17a4944..33406f3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,7 +10,7 @@ include(BuildType)
+ # Request C++14 standard, using new CMake variables.
+ set(CMAKE_CXX_STANDARD 14)
+ set(CMAKE_CXX_STANDARD_REQUIRED True)
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto -Wall")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
+ 
+ # If the BuildType is Debug, then add -rdynamic.
+ # (used to print stacktrace with function names)
diff --git a/pkgs/applications/window-managers/wmderland/default.nix b/pkgs/applications/window-managers/wmderland/default.nix
new file mode 100644
index 00000000000..c0fcdd859b2
--- /dev/null
+++ b/pkgs/applications/window-managers/wmderland/default.nix
@@ -0,0 +1,49 @@
+{ lib, stdenv, fetchFromGitHub, cmake, libnotify, libX11, xorgproto, nixosTests }:
+
+stdenv.mkDerivation {
+  pname = "wmderland";
+  version = "unstable-2020-07-17";
+
+  src = fetchFromGitHub {
+    owner = "aesophor";
+    repo = "wmderland";
+    rev = "a40a3505dd735b401d937203ab6d8d1978307d72";
+    sha256 = "0npmlnybblp82mfpinjbz7dhwqgpdqc1s63wc1zs8mlcs19pdh98";
+  };
+
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  cmakeBuildType = "MinSizeRel";
+
+  patches = [ ./0001-remove-flto.patch ];
+
+  postPatch = ''
+    substituteInPlace src/util.cc \
+      --replace "notify-send" "${libnotify}/bin/notify-send"
+  '';
+
+  buildInputs = [
+    libX11
+    xorgproto
+  ];
+
+  postInstall = ''
+    install -Dm0644 -t $out/share/wmderland/contrib $src/example/config
+    install -Dm0644 -t $out/share/xsessions $src/example/wmderland.desktop
+  '';
+
+  passthru = {
+    tests.basic = nixosTests.wmderland;
+    providedSessions = [ "wmderland" ];
+  };
+
+  meta = with lib; {
+    description = "Modern and minimal X11 tiling window manager";
+    homepage = "https://github.com/aesophor/wmderland";
+    license = licenses.mit;
+    platforms = libX11.meta.platforms;
+    maintainers = with maintainers; [ takagiy ];
+  };
+}