summary refs log tree commit diff
path: root/pkgs/servers/x11/xorg/overrides.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/x11/xorg/overrides.nix')
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix54
1 files changed, 46 insertions, 8 deletions
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index 87d4924a363c..c896062bcd77 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -49,6 +49,11 @@ in
 
   libX11 = attrs: attrs // {
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
+    postInstall =
+      ''
+        # Remove useless DocBook XML files.
+        rm -rf $out/share/doc
+      '';
   };
 
   libXrender = attrs: attrs // {
@@ -63,13 +68,32 @@ in
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
   };
 
+  # Propagate some build inputs because of header file dependencies.
+  # Note: most of these are in Requires.private, so maybe builder.sh
+  # should propagate them automatically.
   libXt = attrs: attrs // {
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
+    propagatedBuildInputs = [ xorg.libSM ];
   };
 
+  compositeproto = attrs: attrs // {
+    propagatedBuildInputs = [ xorg.fixesproto ];
+  };
+  
+  libXcomposite = attrs: attrs // {
+    propagatedBuildInputs = [ xorg.libXfixes ];
+  };
+  
+  libXaw = attrs: attrs // {
+    propagatedBuildInputs = [ xorg.libXmu ];
+  };
+  
   libXft = attrs: attrs // {
-    buildInputs = attrs.buildInputs ++ [ xorg.xproto xorg.libX11
-        xorg.renderproto ];
+    buildInputs = attrs.buildInputs ++
+      [ xorg.xproto xorg.libX11 xorg.renderproto ];
+    # probably, fontconfig and freetype could be added
+    # pkgconfig seems to be nice, too...
+    propagatedBuildInputs = [ xorg.libXrender ];
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
   };
 
@@ -91,13 +115,13 @@ in
   };
 
   xf86inputevdev = attrs: attrs // {
-    configureFlags = "--with-sdkdir=\${out}/include/xorg";
     preBuild = "sed -e '/motion_history_proc/d; /history_size/d;' -i src/*.c";
     buildInputs = attrs.buildInputs ++ [xorg.kbproto xorg.libxkbfile xorg.randrproto];
+    installFlags = "sdkdir=\${out}/include/xorg";
   };
 
   xf86inputsynaptics = attrs: attrs // {
-    makeFlags = "sdkdir=\${out}/include/xorg";
+    installFlags = "sdkdir=\${out}/include/xorg configdir=\${out}/include/xorg";
   };
 
   xf86videointel = attrs: attrs // {
@@ -128,6 +152,10 @@ in
     buildInputs = attrs.buildInputs ++ [xorg.glproto args.mesa];
   };
 
+  xvinfo = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [xorg.libXext];
+  };
+
   xkbcomp = attrs: attrs // {
     NIX_CFLAGS_COMPILE = "-DDFLT_XKB_CONFIG_ROOT=\".\"";
   };
@@ -135,15 +163,17 @@ in
   xorgserver = attrs: attrs // {
     patches = [./xorgserver-dri-path.patch ./xorgserver-xkbcomp-path.patch];
     buildInputs = attrs.buildInputs ++
-      [ args.zlib args.udev args.mesa
+      [ args.zlib args.udev args.mesa args.dbus.libs
         xorg.xf86bigfontproto xorg.glproto xorg.xf86driproto
         xorg.compositeproto xorg.scrnsaverproto xorg.resourceproto
-        xorg.xineramaproto xorg.dri2proto xorg.xf86dgaproto
+        xorg.xineramaproto xorg.xf86dgaproto
         xorg.dmxproto xorg.libdmx xorg.xf86vidmodeproto
-        xorg.recordproto xorg.libXext
+        xorg.recordproto xorg.libXext xorg.pixman xorg.libXfont
       ];
     propagatedBuildInputs =
-      [ xorg.libpciaccess xorg.inputproto xorg.xextproto xorg.randrproto ];
+      [ xorg.libpciaccess xorg.inputproto xorg.xextproto xorg.randrproto
+        xorg.dri2proto xorg.kbproto
+      ];
     postInstall =
       ''
         rm -fr $out/share/X11/xkb/compiled
@@ -162,4 +192,12 @@ in
     '';
   };
 
+  twm = attrs: attrs // {
+    buildNativeInputs = [args.bison args.flex];
+  };
+
+  xbacklight = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [xorg.libXrender];
+  };
+
 }