summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kmscon
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/kmscon')
-rw-r--r--pkgs/os-specific/linux/kmscon/default.nix36
1 files changed, 28 insertions, 8 deletions
diff --git a/pkgs/os-specific/linux/kmscon/default.nix b/pkgs/os-specific/linux/kmscon/default.nix
index f48895fc017..fb44fba22f5 100644
--- a/pkgs/os-specific/linux/kmscon/default.nix
+++ b/pkgs/os-specific/linux/kmscon/default.nix
@@ -1,31 +1,37 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitHub
-, autoreconfHook
+, fetchpatch
+, meson
 , libtsm
 , systemd
 , libxkbcommon
 , libdrm
-, libGLU, libGL
+, libGLU
+, libGL
 , pango
 , pixman
 , pkg-config
 , docbook_xsl
 , libxslt
+, mesa
+, ninja
 }:
 
 stdenv.mkDerivation rec {
   pname = "kmscon";
-  version = "unstable-2018-09-07";
+  version = "9.0.0";
 
   src = fetchFromGitHub {
     owner = "Aetf";
     repo = "kmscon";
-    rev = "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc";
-    sha256 = "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87";
+    rev = "v${version}";
+    sha256 = "sha256-8owyyzCrZVbWXcCR+RA+m0MOrdzW+efI+rIMWEVEZ1o=";
   };
 
   buildInputs = [
-    libGLU libGL
+    libGLU
+    libGL
     libdrm
     libtsm
     libxkbcommon
@@ -33,14 +39,28 @@ stdenv.mkDerivation rec {
     pango
     pixman
     systemd
+    mesa
   ];
 
   nativeBuildInputs = [
-    autoreconfHook
+    meson
+    ninja
     docbook_xsl
     pkg-config
   ];
 
+  patches = [
+    (fetchpatch {
+      name = "0001-tests-fix-warnings.patch";
+      url = "https://github.com/Aetf/kmscon/commit/b65f4269b03de580923ab390bde795e7956b633f.patch";
+      sha256 = "sha256-ngflPwmNMM/2JzhV+hHiH3efQyoSULfqEywzWox9iAQ=";
+    })
+  ];
+
+  # _FORTIFY_SOURCE requires compiling with optimization (-O)
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-O"
+    + " -Wno-error=maybe-uninitialized"; # https://github.com/Aetf/kmscon/issues/49
+
   configureFlags = [
     "--enable-multi-seat"
     "--disable-debug"