get xorg/x11 working on Darwin

+4859 -499
+1 -1
pkgs/applications/misc/xfontsel/default.nix
··· 30 description = "Allows testing the fonts available in an X server"; 31 license = "free"; 32 maintainers = with stdenv.lib.maintainers; [viric]; 33 - platforms = with stdenv.lib.platforms; linux; 34 }; 35 }
··· 30 description = "Allows testing the fonts available in an X server"; 31 license = "free"; 32 maintainers = with stdenv.lib.maintainers; [viric]; 33 + platforms = with stdenv.lib.platforms; linux ++ darwin; 34 }; 35 }
+1 -1
pkgs/applications/misc/xlsfonts/default.nix
··· 18 description = "Lists the fonts available in the X server"; 19 license = "free"; 20 maintainers = with stdenv.lib.maintainers; [viric]; 21 - platforms = with stdenv.lib.platforms; linux; 22 }; 23 }
··· 18 description = "Lists the fonts available in the X server"; 19 license = "free"; 20 maintainers = with stdenv.lib.maintainers; [viric]; 21 + platforms = with stdenv.lib.platforms; linux ++ darwin; 22 }; 23 }
+1 -1
pkgs/applications/misc/xterm/default.nix
··· 36 homepage = http://invisible-island.net/xterm; 37 license = "BSD"; 38 maintainers = with stdenv.lib.maintainers; [viric]; 39 - platforms = with stdenv.lib.platforms; linux; 40 }; 41 }
··· 36 homepage = http://invisible-island.net/xterm; 37 license = "BSD"; 38 maintainers = with stdenv.lib.maintainers; [viric]; 39 + platforms = with stdenv.lib.platforms; linux ++ darwin; 40 }; 41 }
+18 -6
pkgs/development/libraries/freeglut/default.nix
··· 1 - { stdenv, fetchurl, libXi, libXrandr, libXxf86vm, mesa, x11 }: 2 3 - stdenv.mkDerivation { 4 - name = "freeglut-2.8.1"; 5 6 src = fetchurl { 7 - url = mirror://sourceforge/freeglut/freeglut-2.8.1.tar.gz; 8 sha256 = "16lrxxxd9ps9l69y3zsw6iy0drwjsp6m26d1937xj71alqk6dr6x"; 9 }; 10 11 - configureFlags = "--" + (if stdenv.isDarwin then "disable" else "enable") + "-warnings"; 12 13 - buildInputs = [ libXi libXrandr libXxf86vm mesa x11 ]; 14 # patches = [ ./0001-remove-typedefs-now-living-in-mesa.patch ]; 15 }
··· 1 + { stdenv, lib, fetchurl, libXi, libXrandr, libXxf86vm, mesa, x11, autoreconfHook }: 2 3 + let version = "2.8.1"; 4 + in stdenv.mkDerivation { 5 + name = "freeglut-${version}"; 6 7 src = fetchurl { 8 + url = "mirror://sourceforge/freeglut/freeglut-${version}.tar.gz"; 9 sha256 = "16lrxxxd9ps9l69y3zsw6iy0drwjsp6m26d1937xj71alqk6dr6x"; 10 }; 11 12 + buildInputs = [ 13 + libXi libXrandr libXxf86vm mesa x11 14 + ] ++ lib.optionals stdenv.isDarwin [ 15 + autoreconfHook 16 + ]; 17 18 + postPatch = lib.optionalString stdenv.isDarwin '' 19 + substituteInPlace Makefile.am --replace \ 20 + "SUBDIRS = src include progs doc" \ 21 + "SUBDIRS = src include doc" 22 + ''; 23 + 24 + configureFlags = [ "--enable-warnings" ]; 25 + 26 # patches = [ ./0001-remove-typedefs-now-living-in-mesa.patch ]; 27 }
+62
pkgs/development/libraries/mesa-darwin/default.nix
···
··· 1 + { stdenv, stdenvAdapters, gccApple, fetchurl, pkgconfig, intltool, flex, bison 2 + , python, libxml2Python, file, expat, makedepend, xorg, llvm, libffi, libvdpau 3 + , enableTextureFloats ? false # Texture floats are patented, see docs/patents.txt 4 + , enableExtraFeatures ? false # not maintained 5 + }: 6 + 7 + let 8 + version = "8.0.5"; 9 + self = stdenv.mkDerivation rec { 10 + name = "mesa-${version}"; 11 + 12 + src = fetchurl { 13 + url = "ftp://ftp.freedesktop.org/pub/mesa/older-versions/8.x/${version}/MesaLib-${version}.tar.bz2"; 14 + sha256 = "0pjs8x51c0i6mawgd4w03lxpyx5fnx7rc8plr8jfsscf9yiqs6si"; 15 + }; 16 + 17 + nativeBuildInputs = [ pkgconfig python makedepend flex bison ]; 18 + 19 + buildInputs = with xorg; [ 20 + glproto dri2proto libXfixes libXi libXmu 21 + intltool expat libxml2Python llvm 22 + presentproto 23 + libX11 libXext libxcb libXt libxshmfence 24 + libffi libvdpau 25 + ]; 26 + 27 + postUnpack = '' 28 + ln -s darwin $sourceRoot/configs/current 29 + ''; 30 + 31 + patches = [ 32 + ./patches/0003-mesa-fix-per-level-max-texture-size-error-checking.patch 33 + ./patches/0008-glsl-initialise-const-force-glsl-extension-warning-i.patch 34 + ./patches/0009-mesa-test-for-GL_EXT_framebuffer_sRGB-in-glPopAttrib.patch 35 + ./patches/0011-Apple-glFlush-is-not-needed-with-CGLFlushDrawable.patch 36 + ./patches/0012-glapi-Avoid-heap-corruption-in-_glapi_table.patch 37 + ./patches/0013-darwin-Fix-test-for-kCGLPFAOpenGLProfile-support-at-.patch 38 + ./patches/1001-appleglx-Improve-error-reporting-if-CGLChoosePixelFo.patch 39 + ./patches/1002-darwin-Write-errors-in-choosing-the-pixel-format-to-.patch 40 + ./patches/1003-darwin-Guard-Core-Profile-usage-behind-a-testing-env.patch 41 + ./patches/patch-src-mapi-vgapi-Makefile.diff 42 + ]; 43 + 44 + postPatch = "patchShebangs ."; 45 + 46 + configurePhase = ":"; 47 + 48 + makeFlags = "INSTALL_DIR=\${out} CC=cc CXX=c++"; 49 + 50 + enableParallelBuilding = true; 51 + 52 + passthru = { inherit version; }; 53 + 54 + meta = { 55 + description = "An open source implementation of OpenGL"; 56 + homepage = http://www.mesa3d.org/; 57 + license = "bsd"; 58 + platforms = stdenv.lib.platforms.darwin; 59 + maintainers = with stdenv.lib.maintainers; [ cstrahan ]; 60 + }; 61 + }; 62 + in self // { driverLink = self; }
+147
pkgs/development/libraries/mesa-darwin/patches/0003-mesa-fix-per-level-max-texture-size-error-checking.patch
···
··· 1 + From 9cf1afbf8ae87ddbb29b24a0f9f2724e9e2935c1 Mon Sep 17 00:00:00 2001 2 + From: Brian Paul <brianp@vmware.com> 3 + Date: Tue, 4 Sep 2012 20:17:15 -0600 4 + Subject: [PATCH 03/13] mesa: fix per-level max texture size error checking 5 + MIME-Version: 1.0 6 + Content-Type: text/plain; charset=UTF-8 7 + Content-Transfer-Encoding: 8bit 8 + 9 + This is a long-standing omission in Mesa's texture image size checking. 10 + We need to take the mipmap level into consideration when checking if the 11 + width, height and depth are too large. 12 + 13 + Fixes the new piglit max-texture-size-level test. 14 + Thanks to Stéphane Marchesin for finding this problem. 15 + 16 + Note: This is a candidate for the stable branches. 17 + 18 + Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 19 + (cherry picked from commit 771e7b6d884bb4294a89f276a904d90b28efb90a) 20 + --- 21 + src/mesa/main/teximage.c | 36 +++++++++++++++++++++--------------- 22 + 1 file changed, 21 insertions(+), 15 deletions(-) 23 + 24 + diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c 25 + index 3aecc0f..ed22fa9 100644 26 + --- a/src/mesa/main/teximage.c 27 + +++ b/src/mesa/main/teximage.c 28 + @@ -1251,11 +1251,12 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 29 + 30 + switch (target) { 31 + case GL_PROXY_TEXTURE_1D: 32 + - maxSize = 1 << (ctx->Const.MaxTextureLevels - 1); 33 + - if (width < 2 * border || width > 2 * border + maxSize) 34 + - return GL_FALSE; 35 + if (level >= ctx->Const.MaxTextureLevels) 36 + return GL_FALSE; 37 + + maxSize = 1 << (ctx->Const.MaxTextureLevels - 1); /* level zero size */ 38 + + maxSize >>= level; /* level size */ 39 + + if (width < 2 * border || width > 2 * border + maxSize) 40 + + return GL_FALSE; 41 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 42 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 43 + return GL_FALSE; 44 + @@ -1263,13 +1264,14 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 45 + return GL_TRUE; 46 + 47 + case GL_PROXY_TEXTURE_2D: 48 + + if (level >= ctx->Const.MaxTextureLevels) 49 + + return GL_FALSE; 50 + maxSize = 1 << (ctx->Const.MaxTextureLevels - 1); 51 + + maxSize >>= level; 52 + if (width < 2 * border || width > 2 * border + maxSize) 53 + return GL_FALSE; 54 + if (height < 2 * border || height > 2 * border + maxSize) 55 + return GL_FALSE; 56 + - if (level >= ctx->Const.MaxTextureLevels) 57 + - return GL_FALSE; 58 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 59 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 60 + return GL_FALSE; 61 + @@ -1279,15 +1281,16 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 62 + return GL_TRUE; 63 + 64 + case GL_PROXY_TEXTURE_3D: 65 + + if (level >= ctx->Const.Max3DTextureLevels) 66 + + return GL_FALSE; 67 + maxSize = 1 << (ctx->Const.Max3DTextureLevels - 1); 68 + + maxSize >>= level; 69 + if (width < 2 * border || width > 2 * border + maxSize) 70 + return GL_FALSE; 71 + if (height < 2 * border || height > 2 * border + maxSize) 72 + return GL_FALSE; 73 + if (depth < 2 * border || depth > 2 * border + maxSize) 74 + return GL_FALSE; 75 + - if (level >= ctx->Const.Max3DTextureLevels) 76 + - return GL_FALSE; 77 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 78 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 79 + return GL_FALSE; 80 + @@ -1299,23 +1302,24 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 81 + return GL_TRUE; 82 + 83 + case GL_PROXY_TEXTURE_RECTANGLE_NV: 84 + + if (level != 0) 85 + + return GL_FALSE; 86 + maxSize = ctx->Const.MaxTextureRectSize; 87 + if (width < 0 || width > maxSize) 88 + return GL_FALSE; 89 + if (height < 0 || height > maxSize) 90 + return GL_FALSE; 91 + - if (level != 0) 92 + - return GL_FALSE; 93 + return GL_TRUE; 94 + 95 + case GL_PROXY_TEXTURE_CUBE_MAP_ARB: 96 + + if (level >= ctx->Const.MaxCubeTextureLevels) 97 + + return GL_FALSE; 98 + maxSize = 1 << (ctx->Const.MaxCubeTextureLevels - 1); 99 + + maxSize >>= level; 100 + if (width < 2 * border || width > 2 * border + maxSize) 101 + return GL_FALSE; 102 + if (height < 2 * border || height > 2 * border + maxSize) 103 + return GL_FALSE; 104 + - if (level >= ctx->Const.MaxCubeTextureLevels) 105 + - return GL_FALSE; 106 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 107 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 108 + return GL_FALSE; 109 + @@ -1325,13 +1329,14 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 110 + return GL_TRUE; 111 + 112 + case GL_PROXY_TEXTURE_1D_ARRAY_EXT: 113 + + if (level >= ctx->Const.MaxTextureLevels) 114 + + return GL_FALSE; 115 + maxSize = 1 << (ctx->Const.MaxTextureLevels - 1); 116 + + maxSize >>= level; 117 + if (width < 2 * border || width > 2 * border + maxSize) 118 + return GL_FALSE; 119 + if (height < 1 || height > ctx->Const.MaxArrayTextureLayers) 120 + return GL_FALSE; 121 + - if (level >= ctx->Const.MaxTextureLevels) 122 + - return GL_FALSE; 123 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 124 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 125 + return GL_FALSE; 126 + @@ -1339,15 +1344,16 @@ _mesa_test_proxy_teximage(struct gl_context *ctx, GLenum target, GLint level, 127 + return GL_TRUE; 128 + 129 + case GL_PROXY_TEXTURE_2D_ARRAY_EXT: 130 + + if (level >= ctx->Const.MaxTextureLevels) 131 + + return GL_FALSE; 132 + maxSize = 1 << (ctx->Const.MaxTextureLevels - 1); 133 + + maxSize >>= level; 134 + if (width < 2 * border || width > 2 * border + maxSize) 135 + return GL_FALSE; 136 + if (height < 2 * border || height > 2 * border + maxSize) 137 + return GL_FALSE; 138 + if (depth < 1 || depth > ctx->Const.MaxArrayTextureLayers) 139 + return GL_FALSE; 140 + - if (level >= ctx->Const.MaxTextureLevels) 141 + - return GL_FALSE; 142 + if (!ctx->Extensions.ARB_texture_non_power_of_two) { 143 + if (width > 0 && !_mesa_is_pow_two(width - 2 * border)) 144 + return GL_FALSE; 145 + -- 146 + 1.9.2 147 +
+33
pkgs/development/libraries/mesa-darwin/patches/0008-glsl-initialise-const-force-glsl-extension-warning-i.patch
···
··· 1 + From db8cb2250335a93cad6e877e634116e5cd6b42fc Mon Sep 17 00:00:00 2001 2 + From: Dave Airlie <airlied@redhat.com> 3 + Date: Tue, 13 Mar 2012 14:53:25 +0000 4 + Subject: [PATCH 08/13] glsl: initialise const force glsl extension warning in 5 + fake ctx 6 + 7 + valgrind complained about an uninitialised value being used in 8 + glsl_parser_extras.cpp, and this was the one it was giving out about. 9 + 10 + Just initialise the value in the fakectx. 11 + 12 + Signed-off-by: Dave Airlie <airlied@redhat.com> 13 + Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48057 14 + (cherry picked from commit b78a77f979b21a84aecb6fa4f19a2ed51a48c306) 15 + --- 16 + src/glsl/builtins/tools/generate_builtins.py | 1 + 17 + 1 file changed, 1 insertion(+) 18 + 19 + diff --git a/src/glsl/builtins/tools/generate_builtins.py b/src/glsl/builtins/tools/generate_builtins.py 20 + index 72d12bb..bd15c4d 100755 21 + --- a/src/glsl/builtins/tools/generate_builtins.py 22 + +++ b/src/glsl/builtins/tools/generate_builtins.py 23 + @@ -156,6 +156,7 @@ read_builtins(GLenum target, const char *protos, const char **functions, unsigne 24 + fakeCtx.API = API_OPENGL; 25 + fakeCtx.Const.GLSLVersion = 130; 26 + fakeCtx.Extensions.ARB_ES2_compatibility = true; 27 + + fakeCtx.Const.ForceGLSLExtensionsWarn = false; 28 + gl_shader *sh = _mesa_new_shader(NULL, 0, target); 29 + struct _mesa_glsl_parse_state *st = 30 + new(sh) _mesa_glsl_parse_state(&fakeCtx, target, sh); 31 + -- 32 + 1.9.2 33 +
+28
pkgs/development/libraries/mesa-darwin/patches/0009-mesa-test-for-GL_EXT_framebuffer_sRGB-in-glPopAttrib.patch
···
··· 1 + From 2286bd68a832a4d4908d50e1a4496853e1f3305a Mon Sep 17 00:00:00 2001 2 + From: Brian Paul <brianp@vmware.com> 3 + Date: Mon, 27 Aug 2012 21:52:07 -0600 4 + Subject: [PATCH 09/13] mesa: test for GL_EXT_framebuffer_sRGB in glPopAttrib() 5 + 6 + To avoid spurious GL_INVALID_ENUM errors if the extension isn't supported. 7 + (cherry picked from commit 1aee8803f83f7ae24d9c2150c70afff2b1ee4c2f) 8 + --- 9 + src/mesa/main/attrib.c | 3 ++- 10 + 1 file changed, 2 insertions(+), 1 deletion(-) 11 + 12 + diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c 13 + index 225ac89..cc384c7 100644 14 + --- a/src/mesa/main/attrib.c 15 + +++ b/src/mesa/main/attrib.c 16 + @@ -993,7 +993,8 @@ _mesa_PopAttrib(void) 17 + _mesa_ClampColorARB(GL_CLAMP_READ_COLOR_ARB, color->ClampReadColor); 18 + 19 + /* GL_ARB_framebuffer_sRGB / GL_EXT_framebuffer_sRGB */ 20 + - _mesa_set_enable(ctx, GL_FRAMEBUFFER_SRGB, color->sRGBEnabled); 21 + + if (ctx->Extensions.EXT_framebuffer_sRGB) 22 + + _mesa_set_enable(ctx, GL_FRAMEBUFFER_SRGB, color->sRGBEnabled); 23 + } 24 + break; 25 + case GL_CURRENT_BIT: 26 + -- 27 + 1.9.2 28 +
+29
pkgs/development/libraries/mesa-darwin/patches/0011-Apple-glFlush-is-not-needed-with-CGLFlushDrawable.patch
···
··· 1 + From 9c50093adff0c7531ab32a7ec9ce3b91712b4d20 Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Sat, 20 Jul 2013 10:25:28 -0700 4 + Subject: [PATCH 11/13] Apple: glFlush() is not needed with CGLFlushDrawable() 5 + 6 + <rdar://problem/14496373> 7 + 8 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 9 + (cherry picked from commit fa5ed99d8e809fb86e486a40273a4a6971055398) 10 + --- 11 + src/glx/apple/apple_glx.c | 2 -- 12 + 1 file changed, 2 deletions(-) 13 + 14 + diff --git a/src/glx/apple/apple_glx.c b/src/glx/apple/apple_glx.c 15 + index 56cff64..4e2aa33 100644 16 + --- a/src/glx/apple/apple_glx.c 17 + +++ b/src/glx/apple/apple_glx.c 18 + @@ -132,8 +132,6 @@ apple_glx_swap_buffers(void *ptr) 19 + { 20 + struct apple_glx_context *ac = ptr; 21 + 22 + - /* This may not be needed with CGLFlushDrawable: */ 23 + - glFlush(); 24 + apple_cgl.flush_drawable(ac->context_obj); 25 + } 26 + 27 + -- 28 + 1.9.2 29 +
+28
pkgs/development/libraries/mesa-darwin/patches/0012-glapi-Avoid-heap-corruption-in-_glapi_table.patch
···
··· 1 + From 629600450b3845a768c0edc92ea3f444d03a2738 Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Tue, 20 May 2014 01:37:58 -0700 4 + Subject: [PATCH 12/13] glapi: Avoid heap corruption in _glapi_table 5 + 6 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 7 + Reviewed-by: Chia-I Wu <olv@lunarg.com> 8 + (cherry picked from commit ff5456d1acf6f627a6837be3f3f37c6a268c9e8e) 9 + --- 10 + src/mapi/glapi/gen/gl_gentable.py | 2 +- 11 + 1 file changed, 1 insertion(+), 1 deletion(-) 12 + 13 + diff --git a/src/mapi/glapi/gen/gl_gentable.py b/src/mapi/glapi/gen/gl_gentable.py 14 + index 5657e32..0d0a02d 100644 15 + --- a/src/mapi/glapi/gen/gl_gentable.py 16 + +++ b/src/mapi/glapi/gen/gl_gentable.py 17 + @@ -111,7 +111,7 @@ __glapi_gentable_set_remaining_noop(struct _glapi_table *disp) { 18 + 19 + struct _glapi_table * 20 + _glapi_create_table_from_handle(void *handle, const char *symbol_prefix) { 21 + - struct _glapi_table *disp = calloc(1, sizeof(struct _glapi_table)); 22 + + struct _glapi_table *disp = calloc(1, _glapi_get_dispatch_table_size() * sizeof(_glapi_proc)); 23 + char symboln[512]; 24 + 25 + if(!disp) 26 + -- 27 + 1.9.2 28 +
+40
pkgs/development/libraries/mesa-darwin/patches/0013-darwin-Fix-test-for-kCGLPFAOpenGLProfile-support-at-.patch
···
··· 1 + From ba59a779ed41e08fa16805c1c60da39885546d0e Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Tue, 20 May 2014 10:53:00 -0700 4 + Subject: [PATCH 13/13] darwin: Fix test for kCGLPFAOpenGLProfile support at 5 + runtime 6 + 7 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 8 + (cherry picked from commit 7a109268ab5b3544e7f7b99e84ef1fdf54023fb4) 9 + --- 10 + src/glx/apple/apple_visual.c | 14 +++++++++----- 11 + 1 file changed, 9 insertions(+), 5 deletions(-) 12 + 13 + diff --git a/src/glx/apple/apple_visual.c b/src/glx/apple/apple_visual.c 14 + index 282934f..238c248 100644 15 + --- a/src/glx/apple/apple_visual.c 16 + +++ b/src/glx/apple/apple_visual.c 17 + @@ -73,11 +73,15 @@ apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * m 18 + GLint vsref = 0; 19 + CGLError error = 0; 20 + 21 + - /* Request an OpenGL 3.2 profile if one is available */ 22 + - if(apple_cgl.version_major > 1 || (apple_cgl.version_major == 1 && apple_cgl.version_minor >= 3)) { 23 + - attr[numattr++] = kCGLPFAOpenGLProfile; 24 + - attr[numattr++] = kCGLOGLPVersion_3_2_Core; 25 + - } 26 + + /* Request an OpenGL 3.2 profile if one is available and supported */ 27 + + attr[numattr++] = kCGLPFAOpenGLProfile; 28 + + attr[numattr++] = kCGLOGLPVersion_3_2_Core; 29 + + 30 + + /* Test for kCGLPFAOpenGLProfile support at runtime and roll it out if not supported */ 31 + + attr[numattr] = 0; 32 + + error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref); 33 + + if (error == kCGLBadAttribute) 34 + + numattr -= 2; 35 + 36 + if (offscreen) { 37 + apple_glx_diagnostic 38 + -- 39 + 1.9.2 40 +
+30
pkgs/development/libraries/mesa-darwin/patches/1001-appleglx-Improve-error-reporting-if-CGLChoosePixelFo.patch
···
··· 1 + From f0702d6e631bb912a230c081463bb51a0dde1bff Mon Sep 17 00:00:00 2001 2 + From: Jon TURNEY <jon.turney@dronecode.org.uk> 3 + Date: Mon, 12 May 2014 15:38:26 +0100 4 + Subject: [PATCH 1001/1003] appleglx: Improve error reporting if 5 + CGLChoosePixelFormat() didn't find any matching pixel formats. 6 + 7 + Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> 8 + Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 9 + (cherry picked from commit 002a3a74273b81dfb226e1c3f0a8c18525ed0af4) 10 + --- 11 + src/glx/apple/apple_visual.c | 5 +++++ 12 + 1 file changed, 5 insertions(+) 13 + 14 + diff --git a/src/glx/apple/apple_visual.c b/src/glx/apple/apple_visual.c 15 + index 238c248..c6ede51 100644 16 + --- a/src/glx/apple/apple_visual.c 17 + +++ b/src/glx/apple/apple_visual.c 18 + @@ -167,4 +167,9 @@ apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * m 19 + fprintf(stderr, "error: %s\n", apple_cgl.error_string(error)); 20 + abort(); 21 + } 22 + + 23 + + if (!*pfobj) { 24 + + fprintf(stderr, "No matching pixelformats found, perhaps try using LIBGL_ALLOW_SOFTWARE\n"); 25 + + abort(); 26 + + } 27 + } 28 + -- 29 + 1.9.2 (Apple Git-49) 30 +
+55
pkgs/development/libraries/mesa-darwin/patches/1002-darwin-Write-errors-in-choosing-the-pixel-format-to-.patch
···
··· 1 + From 1b2f877c8ef052b183c1f20ece6c6e4a7bfd237c Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Sat, 24 May 2014 14:13:33 -0700 4 + Subject: [PATCH 1002/1003] darwin: Write errors in choosing the pixel format 5 + to the crash log 6 + 7 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 8 + (cherry picked from commit 9eb1d36c978a9b15ae2e999c630492dfffd7f165) 9 + --- 10 + src/glx/apple/apple_visual.c | 18 ++++++++++++++++-- 11 + 1 file changed, 16 insertions(+), 2 deletions(-) 12 + 13 + diff --git a/src/glx/apple/apple_visual.c b/src/glx/apple/apple_visual.c 14 + index c6ede51..951b213 100644 15 + --- a/src/glx/apple/apple_visual.c 16 + +++ b/src/glx/apple/apple_visual.c 17 + @@ -63,6 +63,16 @@ enum 18 + MAX_ATTR = 60 19 + }; 20 + 21 + +static char __crashreporter_info_buff__[4096] = { 0 }; 22 + +static const char *__crashreporter_info__ __attribute__((__used__)) = 23 + + &__crashreporter_info_buff__[0]; 24 + +#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 25 + +// This is actually a toolchain requirement, but I'm not sure the correct check, 26 + +// but it should be fine to just only include it for Leopard and later. This line 27 + +// just tells the linker to never strip this symbol (such as for space optimization) 28 + +__asm__ (".desc ___crashreporter_info__, 0x10"); 29 + +#endif 30 + + 31 + void 32 + apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * mode, 33 + bool * double_buffered, bool * uses_stereo, 34 + @@ -164,12 +174,16 @@ apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * m 35 + error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref); 36 + 37 + if (error) { 38 + - fprintf(stderr, "error: %s\n", apple_cgl.error_string(error)); 39 + + snprintf(__crashreporter_info_buff__, sizeof(__crashreporter_info_buff__), 40 + + "CGLChoosePixelFormat error: %s\n", apple_cgl.error_string(error)); 41 + + fprintf(stderr, "%s", __crashreporter_info_buff__); 42 + abort(); 43 + } 44 + 45 + if (!*pfobj) { 46 + - fprintf(stderr, "No matching pixelformats found, perhaps try using LIBGL_ALLOW_SOFTWARE\n"); 47 + + snprintf(__crashreporter_info_buff__, sizeof(__crashreporter_info_buff__), 48 + + "No matching pixelformats found, perhaps try using LIBGL_ALLOW_SOFTWARE\n"); 49 + + fprintf(stderr, "%s", __crashreporter_info_buff__); 50 + abort(); 51 + } 52 + } 53 + -- 54 + 1.9.2 (Apple Git-49) 55 +
+69
pkgs/development/libraries/mesa-darwin/patches/1003-darwin-Guard-Core-Profile-usage-behind-a-testing-env.patch
···
··· 1 + From 9d6e12eb6b06202519e48a7321f32944d7a34b0f Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Sat, 24 May 2014 14:08:16 -0700 4 + Subject: [PATCH 1003/1003] darwin: Guard Core Profile usage behind a testing 5 + envvar 6 + 7 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 8 + (cherry picked from commit 04ce3be4010305902cc5ae81e8e0c8550d043a1e) 9 + --- 10 + src/glx/apple/apple_visual.c | 30 ++++++++++++++++++++---------- 11 + 1 file changed, 20 insertions(+), 10 deletions(-) 12 + 13 + diff --git a/src/glx/apple/apple_visual.c b/src/glx/apple/apple_visual.c 14 + index 951b213..046581b 100644 15 + --- a/src/glx/apple/apple_visual.c 16 + +++ b/src/glx/apple/apple_visual.c 17 + @@ -82,16 +82,7 @@ apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * m 18 + int numattr = 0; 19 + GLint vsref = 0; 20 + CGLError error = 0; 21 + - 22 + - /* Request an OpenGL 3.2 profile if one is available and supported */ 23 + - attr[numattr++] = kCGLPFAOpenGLProfile; 24 + - attr[numattr++] = kCGLOGLPVersion_3_2_Core; 25 + - 26 + - /* Test for kCGLPFAOpenGLProfile support at runtime and roll it out if not supported */ 27 + - attr[numattr] = 0; 28 + - error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref); 29 + - if (error == kCGLBadAttribute) 30 + - numattr -= 2; 31 + + bool use_core_profile = getenv("LIBGL_PROFILE_CORE"); 32 + 33 + if (offscreen) { 34 + apple_glx_diagnostic 35 + @@ -167,12 +158,31 @@ apple_visual_create_pfobj(CGLPixelFormatObj * pfobj, const struct glx_config * m 36 + attr[numattr++] = mode->samples; 37 + } 38 + 39 + + /* Debugging support for Core profiles to support newer versions of OpenGL */ 40 + + if (use_core_profile) { 41 + + attr[numattr++] = kCGLPFAOpenGLProfile; 42 + + attr[numattr++] = kCGLOGLPVersion_3_2_Core; 43 + + } 44 + + 45 + attr[numattr++] = 0; 46 + 47 + assert(numattr < MAX_ATTR); 48 + 49 + error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref); 50 + 51 + + if ((error == kCGLBadAttribute || vsref == 0) && use_core_profile) { 52 + + apple_glx_diagnostic 53 + + ("Trying again without CoreProfile: error=%s, vsref=%d\n", apple_cgl.error_string(error), vsref); 54 + + 55 + + if (!error) 56 + + apple_cgl.destroy_pixel_format(*pfobj); 57 + + 58 + + numattr -= 3; 59 + + attr[numattr++] = 0; 60 + + 61 + + error = apple_cgl.choose_pixel_format(attr, pfobj, &vsref); 62 + + } 63 + + 64 + if (error) { 65 + snprintf(__crashreporter_info_buff__, sizeof(__crashreporter_info_buff__), 66 + "CGLChoosePixelFormat error: %s\n", apple_cgl.error_string(error)); 67 + -- 68 + 1.9.2 (Apple Git-49) 69 +
+11
pkgs/development/libraries/mesa-darwin/patches/patch-src-mapi-vgapi-Makefile.diff
···
··· 1 + --- a/src/mapi/vgapi/Makefile 2012-11-30 12:06:24.000000000 -0500 2 + +++ b/src/mapi/vgapi/Makefile 2012-11-30 12:06:52.000000000 -0500 3 + @@ -75,6 +75,8 @@ 4 + install-headers: 5 + $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/VG 6 + $(INSTALL) -m 644 $(TOP)/include/VG/*.h $(DESTDIR)$(INSTALL_INC_DIR)/VG 7 + + $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/KHR 8 + + $(INSTALL) -m 644 $(TOP)/include/KHR/*.h $(DESTDIR)$(INSTALL_INC_DIR)/KHR 9 + 10 + install: default install-headers install-pc 11 + $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
+27
pkgs/servers/x11/quartz-wm/default.nix
···
··· 1 + { stdenv, lib, fetchurl, xorg, pixman, pkgconfig }: 2 + 3 + let version = "1.3.1"; 4 + in stdenv.mkDerivation { 5 + name = "quartz-wm-${version}"; 6 + src = fetchurl { 7 + url = "http://xquartz-dl.macosforge.org/src/quartz-wm-${version}.tar.xz"; 8 + sha256 = "1j8zd3p7rhay1s3sxq6anw78k5s59mx44xpqla2ianl62346a5g9"; 9 + }; 10 + patches = [ 11 + ./no_title_crash.patch 12 + ./extern-patch.patch 13 + ]; 14 + buildInputs = [ 15 + xorg.libXinerama 16 + xorg.libAppleWM 17 + xorg.applewmproto 18 + xorg.libXrandr 19 + xorg.libXext 20 + pixman 21 + pkgconfig 22 + ]; 23 + meta = with lib; { 24 + license = licenses.apsl20; 25 + platforms = platforms.darwin; 26 + }; 27 + }
+13
pkgs/servers/x11/quartz-wm/extern-patch.patch
···
··· 1 + diff --git a/src/x-list.h b/src/x-list.h 2 + index bb85c02..059c88b 100644 3 + --- a/src/x-list.h 4 + +++ b/src/x-list.h 5 + @@ -39,7 +39,7 @@ 6 + #endif 7 + 8 + #ifndef X_EXTERN 9 + -# define X_EXTERN __private_extern__ 10 + +# define X_EXTERN extern 11 + #endif 12 + 13 + X_EXTERN void X_PFX (list_free_1) (x_list *node);
+25
pkgs/servers/x11/quartz-wm/no_title_crash.patch
···
··· 1 + commit c28527b1340c51f2b492a31e49127106cebbfc5d 2 + Author: Jeremy Huddleston <jeremyhu@apple.com> 3 + Date: Fri Jun 1 10:38:37 2012 -0700 4 + 5 + Fix a crash when minimizing windows without titles 6 + 7 + <rdar://problem/11575791> 8 + 9 + Regression-from: 21f210c923aa5d79400ce46275084f2636c92bd9 10 + 11 + Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> 12 + 13 + diff --git a/src/x-window.m b/src/x-window.m 14 + index a210c6a..e3b9066 100644 15 + --- a/src/x-window.m 16 + +++ b/src/x-window.m 17 + @@ -2139,7 +2139,7 @@ - (void) do_collapse 18 + if (wid == XP_NULL_NATIVE_WINDOW_ID) 19 + return; 20 + 21 + - title_c = strdup([_title UTF8String]); 22 + + title_c = strdup([[self title] UTF8String]); 23 + assert(title_c); 24 + 25 + err = qwm_dock_minimize_item_with_title_async (wid, title_c);
+33
pkgs/servers/x11/xorg/darwin/0001-XQuartz-Ensure-we-wait-for-the-server-thread-to-term.patch
···
··· 1 + From ec6007e6f7772a90713c9c51c64359229961ce27 Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Sun, 6 Apr 2014 05:32:00 -0700 4 + Subject: [PATCH] XQuartz: Ensure we wait for the server thread to terminate 5 + 6 + AKA: XQuartz 2.7.5 doesn't delete its /tmp/.X$d-lock 7 + 8 + http://xquartz.macosforge.org/trac/ticket/823 9 + 10 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 11 + --- 12 + hw/xquartz/X11Controller.m | 5 ++--- 13 + 1 file changed, 2 insertions(+), 3 deletions(-) 14 + 15 + diff --git a/hw/xquartz/X11Controller.m b/hw/xquartz/X11Controller.m 16 + index 5445c6f..022e832 100644 17 + --- a/hw/xquartz/X11Controller.m 18 + +++ b/hw/xquartz/X11Controller.m 19 + @@ -942,9 +942,8 @@ extern char *bundle_id_prefix; 20 + /* shutdown the X server, it will exit () for us. */ 21 + DarwinSendDDXEvent(kXquartzQuit, 0); 22 + 23 + - /* In case it doesn't, exit anyway after a while. */ 24 + - remain = 10000000; 25 + - while ((remain = usleep(remain)) > 0) ; 26 + + /* In case it doesn't, exit anyway after 5s. */ 27 + + [NSThread sleepForTimeInterval:5.0]; 28 + 29 + exit(1); 30 + } 31 + -- 32 + 1.9.1 33 +
+40
pkgs/servers/x11/xorg/darwin/5000-sdksyms.sh-Use-CPPFLAGS-not-CFLAGS.patch
···
··· 1 + From d36a301fb3d0f2c7a3d81cbda3fd21d8d36038e5 Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston <jeremyhu@apple.com> 3 + Date: Fri, 13 Jan 2012 12:00:57 -0800 4 + Subject: [PATCH 5000/5004] sdksyms.sh: Use CPPFLAGS, not CFLAGS 5 + 6 + CFLAGS can include flags which are not useful to the preprocessor 7 + or can even cause it to fail. This fixes a build issue on darwin 8 + when building for more than one architecture. 9 + 10 + Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> 11 + Reviewed-by: Keith Packard <keithp@keithp.com> 12 + --- 13 + hw/xfree86/Makefile.am | 4 ++-- 14 + 1 file changed, 2 insertions(+), 2 deletions(-) 15 + 16 + diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am 17 + index c3899b5..4f48b85 100644 18 + --- a/hw/xfree86/Makefile.am 19 + +++ b/hw/xfree86/Makefile.am 20 + @@ -38,7 +38,7 @@ DIST_SUBDIRS = common ddc i2c x86emu int10 fbdevhw os-support \ 21 + bin_PROGRAMS = Xorg 22 + nodist_Xorg_SOURCES = sdksyms.c 23 + 24 + -AM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@ 25 + +AM_CPPFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@ 26 + INCLUDES = $(XORG_INCS) -I$(srcdir)/parser -I$(top_srcdir)/miext/cw \ 27 + -I$(srcdir)/ddc -I$(srcdir)/i2c -I$(srcdir)/modes -I$(srcdir)/ramdac \ 28 + -I$(srcdir)/dri -I$(srcdir)/dri2 29 + @@ -115,7 +115,7 @@ CLEANFILES = sdksyms.c sdksyms.dep 30 + EXTRA_DIST += sdksyms.sh 31 + 32 + sdksyms.dep sdksyms.c: sdksyms.sh 33 + - $(AM_V_GEN)CPP='$(CPP)' AWK='$(AWK)' $(SHELL) $(srcdir)/sdksyms.sh $(top_srcdir) $(CFLAGS) $(AM_CFLAGS) $(INCLUDES) 34 + + $(AM_V_GEN)CPP='$(CPP)' AWK='$(AWK)' $(SHELL) $(srcdir)/sdksyms.sh $(top_srcdir) $(CPPFLAGS) $(AM_CPPFLAGS) $(INCLUDES) 35 + 36 + SDKSYMS_DEP = sdksyms.dep 37 + include $(SDKSYMS_DEP) 38 + -- 39 + 1.8.4.1 40 +
+165
pkgs/servers/x11/xorg/darwin/5001-Workaround-the-GC-clipping-problem-in-miPaintWindow-.patch
···
··· 1 + From 9ca14507a31338fad40d430445a4a4cb8106bc9b Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston <jeremyhu@apple.com> 3 + Date: Fri, 30 Apr 2010 13:08:25 -0700 4 + Subject: [PATCH 5001/5004] Workaround the GC clipping problem in miPaintWindow 5 + and add some debugging output. 6 + 7 + Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> 8 + --- 9 + mi/miexpose.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 10 + 1 file changed, 94 insertions(+), 10 deletions(-) 11 + 12 + diff --git a/mi/miexpose.c b/mi/miexpose.c 13 + index 8b7c93f..3e972f7 100644 14 + --- a/mi/miexpose.c 15 + +++ b/mi/miexpose.c 16 + @@ -489,7 +489,8 @@ void RootlessSetPixmapOfAncestors(WindowPtr pWin); 17 + void RootlessStartDrawing(WindowPtr pWin); 18 + void RootlessDamageRegion(WindowPtr pWin, RegionPtr prgn); 19 + Bool IsFramedWindow(WindowPtr pWin); 20 + -#endif 21 + +#include "../fb/fb.h" 22 + +#endif 23 + 24 + void 25 + miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) 26 + @@ -518,23 +519,37 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) 27 + Bool solid = TRUE; 28 + DrawablePtr drawable = &pWin->drawable; 29 + 30 + +#ifdef XQUARTZ_CLIP_DEBUG 31 + + ErrorF("START %d BS %d (pR = %ld)\n", what, pWin->backgroundState, ParentRelative); 32 + + ErrorF(" Rgn: %d %d %d %d\n", prgn->extents.x1, prgn->extents.y1, 33 + + prgn->extents.x2 - prgn->extents.x1, 34 + + prgn->extents.y2 - prgn->extents.y1); 35 + + ErrorF(" Win: %d %d (%d %d) %d %d\n", pWin->origin.x, pWin->origin.y, 36 + + pWin->winSize.extents.x1, pWin->winSize.extents.y1, 37 + + pWin->winSize.extents.x2 - pWin->winSize.extents.x1, 38 + + pWin->winSize.extents.y2 - pWin->winSize.extents.y1); 39 + + ErrorF(" Draw: %d %d %d %d\n", pWin->drawable.x, pWin->drawable.y, 40 + + pWin->drawable.width, pWin->drawable.height); 41 + +#endif 42 + + 43 + #ifdef ROOTLESS 44 + if (!drawable || drawable->type == UNDRAWABLE_WINDOW) 45 + return; 46 + +#endif 47 + + 48 + + if (what == PW_BACKGROUND) 49 + + { 50 + +#ifdef ROOTLESS 51 + + if(IsFramedWindow(pWin)) { 52 + + RootlessStartDrawing(pWin); 53 + + RootlessDamageRegion(pWin, prgn); 54 + 55 + - if (IsFramedWindow(pWin)) { 56 + - RootlessStartDrawing(pWin); 57 + - RootlessDamageRegion(pWin, prgn); 58 + - 59 + - if (pWin->backgroundState == ParentRelative) { 60 + - if ((what == PW_BACKGROUND) || 61 + - (what == PW_BORDER && !pWin->borderIsPixel)) 62 + + if(pWin->backgroundState == ParentRelative) { 63 + RootlessSetPixmapOfAncestors(pWin); 64 + + } 65 + } 66 + - } 67 + #endif 68 + 69 + - if (what == PW_BACKGROUND) { 70 + while (pWin->backgroundState == ParentRelative) 71 + pWin = pWin->parent; 72 + 73 + @@ -559,6 +574,18 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) 74 + else { 75 + PixmapPtr pixmap; 76 + 77 + +#ifdef ROOTLESS 78 + + if(IsFramedWindow(pWin)) { 79 + + RootlessStartDrawing(pWin); 80 + + RootlessDamageRegion(pWin, prgn); 81 + + 82 + + if(!pWin->borderIsPixel && 83 + + pWin->backgroundState == ParentRelative) { 84 + + RootlessSetPixmapOfAncestors(pWin); 85 + + } 86 + + } 87 + +#endif 88 + + 89 + tile_x_off = drawable->x; 90 + tile_y_off = drawable->y; 91 + 92 + @@ -567,6 +594,12 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) 93 + return; 94 + pixmap = (*pScreen->GetWindowPixmap) ((WindowPtr) drawable); 95 + drawable = &pixmap->drawable; 96 + + 97 + +#ifdef XQUARTZ_CLIP_DEBUG 98 + + ErrorF(" Draw: %d %d %d %d\n", 99 + + drawable->x, drawable->y, drawable->width, drawable->height); 100 + +#endif 101 + + 102 + #ifdef COMPOSITE 103 + draw_x_off = pixmap->screen_x; 104 + draw_y_off = pixmap->screen_y; 105 + @@ -629,6 +662,57 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) 106 + ChangeGC(NullClient, pGC, gcmask, gcval); 107 + ValidateGC(drawable, pGC); 108 + 109 + +#ifdef XQUARTZ_CLIP_DEBUG 110 + + ErrorF(" GC: %d %d %d %d\n", 111 + + pGC->pCompositeClip->extents.x1, pGC->pCompositeClip->extents.y1, 112 + + pGC->pCompositeClip->extents.x2 - pGC->pCompositeClip->extents.x1, 113 + + pGC->pCompositeClip->extents.y2 - pGC->pCompositeClip->extents.y1); 114 + +#endif 115 + + 116 + +#ifdef XQUARTZ 117 + + /* Looks like our clipping isn't set right for some reason: 118 + + * http://xquartz.macosforge.org/trac/ticket/290 119 + + */ 120 + + if(what == PW_BORDER) { 121 + + 122 + +#if 0 123 + + if(solid) { 124 + +#if 1 125 + + fbFillRegionSolid(&pWin->drawable, 126 + + prgn, 127 + + 0, 128 + + fbReplicatePixel(fill.pixel, 129 + + pWin->drawable.bitsPerPixel)); 130 + +#else 131 + + fbFillRegionSolid(drawable, 132 + + prgn, 133 + + 0, 134 + + fbReplicatePixel(fill.pixel, 135 + + drawable->bitsPerPixel)); 136 + +#endif 137 + + return; 138 + + } 139 + +#endif 140 + + 141 + + pGC->pCompositeClip->extents.x1 += prgn->extents.x1; 142 + + pGC->pCompositeClip->extents.y1 += prgn->extents.y1; 143 + + pGC->pCompositeClip->extents.x2 += prgn->extents.x1; 144 + + pGC->pCompositeClip->extents.y2 += prgn->extents.y1; 145 + + 146 + + if(pGC->pCompositeClip->extents.x2 > drawable->pScreen->width) 147 + + pGC->pCompositeClip->extents.x2 = drawable->pScreen->width; 148 + + if(pGC->pCompositeClip->extents.y2 > drawable->pScreen->height) 149 + + pGC->pCompositeClip->extents.y2 = drawable->pScreen->height; 150 + + } 151 + +#endif 152 + + 153 + +#ifdef XQUARTZ_CLIP_DEBUG 154 + + ErrorF(" GC: %d %d %d %d\n", 155 + + pGC->pCompositeClip->extents.x1, pGC->pCompositeClip->extents.y1, 156 + + pGC->pCompositeClip->extents.x2 - pGC->pCompositeClip->extents.x1, 157 + + pGC->pCompositeClip->extents.y2 - pGC->pCompositeClip->extents.y1); 158 + +#endif 159 + + 160 + numRects = RegionNumRects(prgn); 161 + pbox = RegionRects(prgn); 162 + for (i = numRects; --i >= 0; pbox++, prect++) { 163 + -- 164 + 1.8.4.1 165 +
+316
pkgs/servers/x11/xorg/darwin/5002-fb-Revert-fb-changes-that-broke-XQuartz.patch
···
··· 1 + From 07f9e0beaf66ec9de1455a305c87ab642968f3f1 Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston <jeremyhu@apple.com> 3 + Date: Fri, 12 Feb 2010 19:48:52 -0800 4 + Subject: [PATCH 5002/5004] fb: Revert fb changes that broke XQuartz 5 + 6 + http://bugs.freedesktop.org/show_bug.cgi?id=26124 7 + 8 + Revert "Fix source pictures getting random transforms after 2d6a8f668342a5190cdf43b5." 9 + Revert "fb: Adjust transform or composite coordinates for pixman operations" 10 + 11 + http://bugs.freedesktop.org/26124 12 + 13 + This reverts commit a72c65e9176c51de95db2fdbf4c5d946a4911695. 14 + This reverts commit a6bd5d2e482a5aa84acb3d4932e2a166d8670ef1. 15 + 16 + Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> 17 + --- 18 + fb/fb.h | 3 +-- 19 + fb/fbpict.c | 82 ++++++++++++++++++------------------------------------------- 20 + fb/fbtrap.c | 43 ++++++++++++++------------------ 21 + 3 files changed, 43 insertions(+), 85 deletions(-) 22 + 23 + diff --git a/fb/fb.h b/fb/fb.h 24 + index b869d12..895b148 100644 25 + --- a/fb/fb.h 26 + +++ b/fb/fb.h 27 + @@ -1686,8 +1686,7 @@ fbFillRegionSolid(DrawablePtr pDrawable, 28 + RegionPtr pRegion, FbBits and, FbBits xor); 29 + 30 + extern _X_EXPORT pixman_image_t *image_from_pict(PicturePtr pict, 31 + - Bool has_clip, 32 + - int *xoff, int *yoff); 33 + + Bool has_clip); 34 + 35 + extern _X_EXPORT void free_pixman_pict(PicturePtr, pixman_image_t *); 36 + 37 + diff --git a/fb/fbpict.c b/fb/fbpict.c 38 + index 2804ff4..80c2a91 100644 39 + --- a/fb/fbpict.c 40 + +++ b/fb/fbpict.c 41 + @@ -46,23 +46,18 @@ fbComposite(CARD8 op, 42 + INT16 yMask, INT16 xDst, INT16 yDst, CARD16 width, CARD16 height) 43 + { 44 + pixman_image_t *src, *mask, *dest; 45 + - int src_xoff, src_yoff; 46 + - int msk_xoff, msk_yoff; 47 + - int dst_xoff, dst_yoff; 48 + - 49 + miCompositeSourceValidate(pSrc); 50 + if (pMask) 51 + miCompositeSourceValidate(pMask); 52 + 53 + - src = image_from_pict(pSrc, FALSE, &src_xoff, &src_yoff); 54 + - mask = image_from_pict(pMask, FALSE, &msk_xoff, &msk_yoff); 55 + - dest = image_from_pict(pDst, TRUE, &dst_xoff, &dst_yoff); 56 + + src = image_from_pict(pSrc, TRUE); 57 + + mask = image_from_pict(pMask, TRUE); 58 + + dest = image_from_pict(pDst, TRUE); 59 + 60 + if (src && dest && !(pMask && !mask)) { 61 + pixman_image_composite(op, src, mask, dest, 62 + - xSrc + src_xoff, ySrc + src_yoff, 63 + - xMask + msk_xoff, yMask + msk_yoff, 64 + - xDst + dst_xoff, yDst + dst_yoff, width, height); 65 + + xSrc, ySrc, xMask, yMask, xDst, yDst, 66 + + width, height); 67 + } 68 + 69 + free_pixman_pict(pSrc, src); 70 + @@ -293,20 +288,22 @@ create_conical_gradient_image(PictGradient * gradient) 71 + } 72 + 73 + static pixman_image_t * 74 + -create_bits_picture(PicturePtr pict, Bool has_clip, int *xoff, int *yoff) 75 + +create_bits_picture(PicturePtr pict, Bool has_clip) 76 + { 77 + - PixmapPtr pixmap; 78 + FbBits *bits; 79 + FbStride stride; 80 + - int bpp; 81 + + int bpp, xoff, yoff; 82 + pixman_image_t *image; 83 + 84 + - fbGetDrawablePixmap(pict->pDrawable, pixmap, *xoff, *yoff); 85 + - fbGetPixmapBitsData(pixmap, bits, stride, bpp); 86 + + fbGetDrawable (pict->pDrawable, bits, stride, bpp, xoff, yoff); 87 + + 88 + + bits = (FbBits*)((CARD8*)bits + 89 + + (pict->pDrawable->y + yoff) * stride * sizeof(FbBits) + 90 + + (pict->pDrawable->x + xoff) * (bpp / 8)); 91 + 92 + image = pixman_image_create_bits((pixman_format_code_t) pict->format, 93 + - pixmap->drawable.width, 94 + - pixmap->drawable.height, (uint32_t *) bits, 95 + + pict->pDrawable->width, 96 + + pict->pDrawable->height, (uint32_t *) bits, 97 + stride * sizeof(FbStride)); 98 + 99 + if (!image) 100 + @@ -333,57 +330,31 @@ create_bits_picture(PicturePtr pict, Bool has_clip, int *xoff, int *yoff) 101 + if (pict->clientClipType != CT_NONE) 102 + pixman_image_set_has_client_clip(image, TRUE); 103 + 104 + - if (*xoff || *yoff) 105 + - pixman_region_translate(pict->pCompositeClip, *xoff, *yoff); 106 + + pixman_region_translate (pict->pCompositeClip, - pict->pDrawable->x, - pict->pDrawable->y); 107 + 108 + pixman_image_set_clip_region(image, pict->pCompositeClip); 109 + 110 + - if (*xoff || *yoff) 111 + - pixman_region_translate(pict->pCompositeClip, -*xoff, -*yoff); 112 + + pixman_region_translate (pict->pCompositeClip, pict->pDrawable->x, pict->pDrawable->y); 113 + } 114 + 115 + /* Indexed table */ 116 + if (pict->pFormat->index.devPrivate) 117 + pixman_image_set_indexed(image, pict->pFormat->index.devPrivate); 118 + 119 + - /* Add in drawable origin to position within the image */ 120 + - *xoff += pict->pDrawable->x; 121 + - *yoff += pict->pDrawable->y; 122 + - 123 + return image; 124 + } 125 + 126 + static pixman_image_t *image_from_pict_internal(PicturePtr pict, Bool has_clip, 127 + - int *xoff, int *yoff, 128 + Bool is_alpha_map); 129 + 130 + static void 131 + -set_image_properties(pixman_image_t * image, PicturePtr pict, Bool has_clip, 132 + - int *xoff, int *yoff, Bool is_alpha_map) 133 + +set_image_properties(pixman_image_t * image, PicturePtr pict, Bool is_alpha_map) 134 + { 135 + pixman_repeat_t repeat; 136 + pixman_filter_t filter; 137 + 138 + if (pict->transform) { 139 + - /* For source images, adjust the transform to account 140 + - * for the drawable offset within the pixman image, 141 + - * then set the offset to 0 as it will be used 142 + - * to compute positions within the transformed image. 143 + - */ 144 + - if (!has_clip) { 145 + - struct pixman_transform adjusted; 146 + - 147 + - adjusted = *pict->transform; 148 + - pixman_transform_translate(&adjusted, 149 + - NULL, 150 + - pixman_int_to_fixed(*xoff), 151 + - pixman_int_to_fixed(*yoff)); 152 + - pixman_image_set_transform(image, &adjusted); 153 + - *xoff = 0; 154 + - *yoff = 0; 155 + - } 156 + - else 157 + - pixman_image_set_transform(image, pict->transform); 158 + + pixman_image_set_transform(image, pict->transform); 159 + } 160 + 161 + switch (pict->repeatType) { 162 + @@ -411,10 +382,8 @@ set_image_properties(pixman_image_t * image, PicturePtr pict, Bool has_clip, 163 + * as the alpha map for this operation 164 + */ 165 + if (pict->alphaMap && !is_alpha_map) { 166 + - int alpha_xoff, alpha_yoff; 167 + pixman_image_t *alpha_map = 168 + - image_from_pict_internal(pict->alphaMap, FALSE, &alpha_xoff, 169 + - &alpha_yoff, TRUE); 170 + + image_from_pict_internal(pict->alphaMap, TRUE, TRUE); 171 + 172 + pixman_image_set_alpha_map(image, alpha_map, pict->alphaOrigin.x, 173 + pict->alphaOrigin.y); 174 + @@ -448,8 +417,7 @@ set_image_properties(pixman_image_t * image, PicturePtr pict, Bool has_clip, 175 + } 176 + 177 + static pixman_image_t * 178 + -image_from_pict_internal(PicturePtr pict, Bool has_clip, int *xoff, int *yoff, 179 + - Bool is_alpha_map) 180 + +image_from_pict_internal(PicturePtr pict, Bool has_clip, Bool is_alpha_map) 181 + { 182 + pixman_image_t *image = NULL; 183 + 184 + @@ -457,7 +425,7 @@ image_from_pict_internal(PicturePtr pict, Bool has_clip, int *xoff, int *yoff, 185 + return NULL; 186 + 187 + if (pict->pDrawable) { 188 + - image = create_bits_picture(pict, has_clip, xoff, yoff); 189 + + image = create_bits_picture(pict, has_clip); 190 + } 191 + else if (pict->pSourcePict) { 192 + SourcePict *sp = pict->pSourcePict; 193 + @@ -475,19 +443,17 @@ image_from_pict_internal(PicturePtr pict, Bool has_clip, int *xoff, int *yoff, 194 + else if (sp->type == SourcePictTypeConical) 195 + image = create_conical_gradient_image(gradient); 196 + } 197 + - *xoff = *yoff = 0; 198 + } 199 + 200 + if (image) 201 + - set_image_properties(image, pict, has_clip, xoff, yoff, is_alpha_map); 202 + - 203 + + set_image_properties (image, pict, is_alpha_map); 204 + return image; 205 + } 206 + 207 + pixman_image_t * 208 + -image_from_pict(PicturePtr pict, Bool has_clip, int *xoff, int *yoff) 209 + +image_from_pict (PicturePtr pict, Bool has_clip) 210 + { 211 + - return image_from_pict_internal(pict, has_clip, xoff, yoff, FALSE); 212 + + return image_from_pict_internal (pict, has_clip, FALSE); 213 + } 214 + 215 + void 216 + diff --git a/fb/fbtrap.c b/fb/fbtrap.c 217 + index bf82f8f..0145ce9 100644 218 + --- a/fb/fbtrap.c 219 + +++ b/fb/fbtrap.c 220 + @@ -36,13 +36,12 @@ fbAddTraps(PicturePtr pPicture, 221 + INT16 x_off, INT16 y_off, int ntrap, xTrap * traps) 222 + { 223 + pixman_image_t *image; 224 + - int dst_xoff, dst_yoff; 225 + 226 + - if (!(image = image_from_pict(pPicture, FALSE, &dst_xoff, &dst_yoff))) 227 + - return; 228 + - 229 + - pixman_add_traps(image, x_off + dst_xoff, y_off + dst_yoff, 230 + - ntrap, (pixman_trap_t *) traps); 231 + + if (!(image = image_from_pict (pPicture, FALSE))) 232 + + return; 233 + + 234 + + pixman_add_traps(image, x_off, y_off, 235 + + ntrap, (pixman_trap_t *)traps); 236 + 237 + free_pixman_pict(pPicture, image); 238 + } 239 + @@ -52,13 +51,12 @@ fbRasterizeTrapezoid(PicturePtr pPicture, 240 + xTrapezoid * trap, int x_off, int y_off) 241 + { 242 + pixman_image_t *image; 243 + - int dst_xoff, dst_yoff; 244 + 245 + - if (!(image = image_from_pict(pPicture, FALSE, &dst_xoff, &dst_yoff))) 246 + + if (!(image = image_from_pict (pPicture, FALSE))) 247 + return; 248 + 249 + - pixman_rasterize_trapezoid(image, (pixman_trapezoid_t *) trap, 250 + - x_off + dst_xoff, y_off + dst_yoff); 251 + + pixman_rasterize_trapezoid(image, (pixman_trapezoid_t *)trap, 252 + + x_off, y_off); 253 + 254 + free_pixman_pict(pPicture, image); 255 + } 256 + @@ -68,14 +66,12 @@ fbAddTriangles(PicturePtr pPicture, 257 + INT16 x_off, INT16 y_off, int ntri, xTriangle * tris) 258 + { 259 + pixman_image_t *image; 260 + - int dst_xoff, dst_yoff; 261 + 262 + - if (!(image = image_from_pict(pPicture, FALSE, &dst_xoff, &dst_yoff))) 263 + + if (!(image = image_from_pict (pPicture, FALSE))) 264 + return; 265 + - 266 + - pixman_add_triangles(image, 267 + - dst_xoff + x_off, dst_yoff + y_off, 268 + - ntri, (pixman_triangle_t *) tris); 269 + + 270 + + pixman_add_triangles(image, x_off, y_off, ntri, 271 + + (pixman_triangle_t *)tris); 272 + 273 + free_pixman_pict(pPicture, image); 274 + } 275 + @@ -98,13 +94,11 @@ fbShapes(CompositeShapesFunc composite, 276 + int16_t ySrc, int nshapes, int shape_size, const uint8_t * shapes) 277 + { 278 + pixman_image_t *src, *dst; 279 + - int src_xoff, src_yoff; 280 + - int dst_xoff, dst_yoff; 281 + 282 + miCompositeSourceValidate(pSrc); 283 + 284 + - src = image_from_pict(pSrc, FALSE, &src_xoff, &src_yoff); 285 + - dst = image_from_pict(pDst, TRUE, &dst_xoff, &dst_yoff); 286 + + src = image_from_pict(pSrc, FALSE); 287 + + dst = image_from_pict(pDst, TRUE); 288 + 289 + if (src && dst) { 290 + pixman_format_code_t format; 291 + @@ -121,9 +115,8 @@ fbShapes(CompositeShapesFunc composite, 292 + 293 + for (i = 0; i < nshapes; ++i) { 294 + composite(op, src, dst, format, 295 + - xSrc + src_xoff, 296 + - ySrc + src_yoff, 297 + - dst_xoff, dst_yoff, 1, shapes + i * shape_size); 298 + + xSrc, ySrc, 0, 0, 299 + + 1, shapes + i * shape_size); 300 + } 301 + } 302 + else { 303 + @@ -143,8 +136,8 @@ fbShapes(CompositeShapesFunc composite, 304 + } 305 + 306 + composite(op, src, dst, format, 307 + - xSrc + src_xoff, 308 + - ySrc + src_yoff, dst_xoff, dst_yoff, nshapes, shapes); 309 + + xSrc, ySrc, 0, 0, 310 + + nshapes, shapes); 311 + } 312 + 313 + DamageRegionProcessPending(pDst->pDrawable); 314 + -- 315 + 1.8.4.1 316 +
+230
pkgs/servers/x11/xorg/darwin/5003-fb-Revert-fb-changes-that-broke-XQuartz.patch
···
··· 1 + From 4a0444a2773bddc3abbf5305a344001ecfe9378c Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Tue, 18 Dec 2012 01:03:38 -0800 4 + Subject: [PATCH 5003/5004] fb: Revert fb changes that broke XQuartz 5 + 6 + http://bugs.freedesktop.org/show_bug.cgi?id=26124 7 + 8 + Revert "Use new pixman_glyph_cache_t API that will be in pixman 0.28.0" 9 + 10 + This reverts commit 9cbcb5bd6a5360a128d15b77a02d8d3351f74366. 11 + --- 12 + configure.ac | 2 +- 13 + fb/fb.h | 3 -- 14 + fb/fbpict.c | 153 +--------------------------------------------------------- 15 + fb/fbscreen.c | 1 - 16 + 4 files changed, 2 insertions(+), 157 deletions(-) 17 + 18 + diff --git a/configure.ac b/configure.ac 19 + index 8797df5..99a1e62 100644 20 + --- a/configure.ac 21 + +++ b/configure.ac 22 + @@ -811,7 +811,7 @@ LIBPCIACCESS="pciaccess >= 0.12.901" 23 + LIBUDEV="libudev >= 143" 24 + LIBSELINUX="libselinux >= 2.0.86" 25 + LIBDBUS="dbus-1 >= 1.0" 26 + -LIBPIXMAN="pixman-1 >= 0.27.2" 27 + +LIBPIXMAN="pixman-1 >= 0.21.8" 28 + 29 + dnl Pixman is always required, but we separate it out so we can link 30 + dnl specific modules against it 31 + diff --git a/fb/fb.h b/fb/fb.h 32 + index 895b148..cc5759c 100644 33 + --- a/fb/fb.h 34 + +++ b/fb/fb.h 35 + @@ -1344,9 +1344,6 @@ extern _X_EXPORT void 36 + extern _X_EXPORT Bool 37 + fbPictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats); 38 + 39 + -extern _X_EXPORT void 40 + -fbDestroyGlyphCache(void); 41 + - 42 + /* 43 + * fbpixmap.c 44 + */ 45 + diff --git a/fb/fbpict.c b/fb/fbpict.c 46 + index 80c2a91..dc0ca3c 100644 47 + --- a/fb/fbpict.c 48 + +++ b/fb/fbpict.c 49 + @@ -65,156 +65,6 @@ fbComposite(CARD8 op, 50 + free_pixman_pict(pDst, dest); 51 + } 52 + 53 + -static pixman_glyph_cache_t *glyphCache; 54 + - 55 + -void 56 + -fbDestroyGlyphCache(void) 57 + -{ 58 + - if (glyphCache) 59 + - { 60 + - pixman_glyph_cache_destroy (glyphCache); 61 + - glyphCache = NULL; 62 + - } 63 + -} 64 + - 65 + -static void 66 + -fbUnrealizeGlyph(ScreenPtr pScreen, 67 + - GlyphPtr pGlyph) 68 + -{ 69 + - if (glyphCache) 70 + - pixman_glyph_cache_remove (glyphCache, pGlyph, NULL); 71 + -} 72 + - 73 + -static void 74 + -fbGlyphs(CARD8 op, 75 + - PicturePtr pSrc, 76 + - PicturePtr pDst, 77 + - PictFormatPtr maskFormat, 78 + - INT16 xSrc, 79 + - INT16 ySrc, int nlist, 80 + - GlyphListPtr list, 81 + - GlyphPtr *glyphs) 82 + -{ 83 + -#define N_STACK_GLYPHS 512 84 + - ScreenPtr pScreen = pDst->pDrawable->pScreen; 85 + - pixman_glyph_t stack_glyphs[N_STACK_GLYPHS]; 86 + - pixman_glyph_t *pglyphs = stack_glyphs; 87 + - pixman_image_t *srcImage, *dstImage; 88 + - int srcXoff, srcYoff, dstXoff, dstYoff; 89 + - GlyphPtr glyph; 90 + - int n_glyphs; 91 + - int x, y; 92 + - int i, n; 93 + - int xDst = list->xOff, yDst = list->yOff; 94 + - 95 + - miCompositeSourceValidate(pSrc); 96 + - 97 + - n_glyphs = 0; 98 + - for (i = 0; i < nlist; ++i) 99 + - n_glyphs += list[i].len; 100 + - 101 + - if (!glyphCache) 102 + - glyphCache = pixman_glyph_cache_create(); 103 + - 104 + - pixman_glyph_cache_freeze (glyphCache); 105 + - 106 + - if (n_glyphs > N_STACK_GLYPHS) { 107 + - if (!(pglyphs = malloc (n_glyphs * sizeof (pixman_glyph_t)))) 108 + - goto out; 109 + - } 110 + - 111 + - i = 0; 112 + - x = y = 0; 113 + - while (nlist--) { 114 + - x += list->xOff; 115 + - y += list->yOff; 116 + - n = list->len; 117 + - while (n--) { 118 + - const void *g; 119 + - 120 + - glyph = *glyphs++; 121 + - 122 + - if (!(g = pixman_glyph_cache_lookup (glyphCache, glyph, NULL))) { 123 + - pixman_image_t *glyphImage; 124 + - PicturePtr pPicture; 125 + - int xoff, yoff; 126 + - 127 + - pPicture = GetGlyphPicture(glyph, pScreen); 128 + - if (!pPicture) { 129 + - n_glyphs--; 130 + - goto next; 131 + - } 132 + - 133 + - if (!(glyphImage = image_from_pict(pPicture, FALSE, &xoff, &yoff))) 134 + - goto out; 135 + - 136 + - g = pixman_glyph_cache_insert(glyphCache, glyph, NULL, 137 + - glyph->info.x, 138 + - glyph->info.y, 139 + - glyphImage); 140 + - 141 + - free_pixman_pict(pPicture, glyphImage); 142 + - 143 + - if (!g) 144 + - goto out; 145 + - } 146 + - 147 + - pglyphs[i].x = x; 148 + - pglyphs[i].y = y; 149 + - pglyphs[i].glyph = g; 150 + - i++; 151 + - 152 + - next: 153 + - x += glyph->info.xOff; 154 + - y += glyph->info.yOff; 155 + - } 156 + - list++; 157 + - } 158 + - 159 + - if (!(srcImage = image_from_pict(pSrc, FALSE, &srcXoff, &srcYoff))) 160 + - goto out; 161 + - 162 + - if (!(dstImage = image_from_pict(pDst, TRUE, &dstXoff, &dstYoff))) 163 + - goto out_free_src; 164 + - 165 + - if (maskFormat) { 166 + - pixman_format_code_t format; 167 + - pixman_box32_t extents; 168 + - int x, y; 169 + - 170 + - format = maskFormat->format | (maskFormat->depth << 24); 171 + - 172 + - pixman_glyph_get_extents(glyphCache, n_glyphs, pglyphs, &extents); 173 + - 174 + - x = extents.x1; 175 + - y = extents.y1; 176 + - 177 + - pixman_composite_glyphs(op, srcImage, dstImage, format, 178 + - xSrc + srcXoff + xDst, ySrc + srcYoff + yDst, 179 + - x, y, 180 + - x + dstXoff, y + dstYoff, 181 + - extents.x2 - extents.x1, 182 + - extents.y2 - extents.y1, 183 + - glyphCache, n_glyphs, pglyphs); 184 + - } 185 + - else { 186 + - pixman_composite_glyphs_no_mask(op, srcImage, dstImage, 187 + - xSrc + srcXoff - xDst, ySrc + srcYoff - yDst, 188 + - dstXoff, dstYoff, 189 + - glyphCache, n_glyphs, pglyphs); 190 + - } 191 + - 192 + - free_pixman_pict(pDst, dstImage); 193 + - 194 + -out_free_src: 195 + - free_pixman_pict(pSrc, srcImage); 196 + - 197 + -out: 198 + - pixman_glyph_cache_thaw(glyphCache); 199 + - if (pglyphs != stack_glyphs) 200 + - free(pglyphs); 201 + -} 202 + - 203 + static pixman_image_t * 204 + create_solid_fill_image(PicturePtr pict) 205 + { 206 + @@ -473,8 +323,7 @@ fbPictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats) 207 + return FALSE; 208 + ps = GetPictureScreen(pScreen); 209 + ps->Composite = fbComposite; 210 + - ps->Glyphs = fbGlyphs; 211 + - ps->UnrealizeGlyph = fbUnrealizeGlyph; 212 + + ps->Glyphs = miGlyphs; 213 + ps->CompositeRects = miCompositeRects; 214 + ps->RasterizeTrapezoid = fbRasterizeTrapezoid; 215 + ps->Trapezoids = fbTrapezoids; 216 + diff --git a/fb/fbscreen.c b/fb/fbscreen.c 217 + index f9080a4..7c7d656 100644 218 + --- a/fb/fbscreen.c 219 + +++ b/fb/fbscreen.c 220 + @@ -32,7 +32,6 @@ fbCloseScreen(ScreenPtr pScreen) 221 + int d; 222 + DepthPtr depths = pScreen->allowedDepths; 223 + 224 + - fbDestroyGlyphCache(); 225 + for (d = 0; d < pScreen->numDepths; d++) 226 + free(depths[d].vids); 227 + free(depths); 228 + -- 229 + 1.8.4.1 230 +
+297
pkgs/servers/x11/xorg/darwin/5004-Use-old-miTrapezoids-and-miTriangles-routines.patch
···
··· 1 + From bd9fce8b74f5358e4d7e5ce9b5cdd8fd195bb3fd Mon Sep 17 00:00:00 2001 2 + From: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 3 + Date: Sat, 2 Nov 2013 11:00:23 -0700 4 + Subject: [PATCH 5004/5004] Use old miTrapezoids and miTriangles routines 5 + 6 + Reverts commits: 7 + 788ccb9a8bcf6a4fb4054c507111eec3338fb969 8 + 566f1931ee2916269e164e114bffaf2da1d039d1 9 + 10 + http://xquartz.macosforge.org/trac/ticket/525 11 + 12 + Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> 13 + --- 14 + fb/fbpict.c | 2 - 15 + render/mipict.c | 4 +- 16 + render/mipict.h | 27 ++++++++++++++ 17 + render/mitrap.c | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 18 + render/mitri.c | 61 +++++++++++++++++++++++++++++++ 19 + 5 files changed, 201 insertions(+), 4 deletions(-) 20 + 21 + diff --git a/fb/fbpict.c b/fb/fbpict.c 22 + index dc0ca3c..276ff06 100644 23 + --- a/fb/fbpict.c 24 + +++ b/fb/fbpict.c 25 + @@ -326,10 +326,8 @@ fbPictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats) 26 + ps->Glyphs = miGlyphs; 27 + ps->CompositeRects = miCompositeRects; 28 + ps->RasterizeTrapezoid = fbRasterizeTrapezoid; 29 + - ps->Trapezoids = fbTrapezoids; 30 + ps->AddTraps = fbAddTraps; 31 + ps->AddTriangles = fbAddTriangles; 32 + - ps->Triangles = fbTriangles; 33 + 34 + return TRUE; 35 + } 36 + diff --git a/render/mipict.c b/render/mipict.c 37 + index 2e64b20..d21b58a 100644 38 + --- a/render/mipict.c 39 + +++ b/render/mipict.c 40 + @@ -595,8 +595,8 @@ miPictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats) 41 + ps->Composite = 0; /* requires DDX support */ 42 + ps->Glyphs = miGlyphs; 43 + ps->CompositeRects = miCompositeRects; 44 + - ps->Trapezoids = 0; 45 + - ps->Triangles = 0; 46 + + ps->Trapezoids = miTrapezoids; 47 + + ps->Triangles = miTriangles; 48 + 49 + ps->RasterizeTrapezoid = 0; /* requires DDX support */ 50 + ps->AddTraps = 0; /* requires DDX support */ 51 + diff --git a/render/mipict.h b/render/mipict.h 52 + index 9436228..7ee2991 100644 53 + --- a/render/mipict.h 54 + +++ b/render/mipict.h 55 + @@ -122,6 +122,16 @@ miCompositeRects(CARD8 op, 56 + xRenderColor * color, int nRect, xRectangle *rects); 57 + 58 + extern _X_EXPORT void 59 + +miTriangles (CARD8 op, 60 + + PicturePtr pSrc, 61 + + PicturePtr pDst, 62 + + PictFormatPtr maskFormat, 63 + + INT16 xSrc, 64 + + INT16 ySrc, 65 + + int ntri, 66 + + xTriangle *tris); 67 + + 68 + +extern _X_EXPORT void 69 + 70 + miTriStrip(CARD8 op, 71 + PicturePtr pSrc, 72 + @@ -137,10 +147,27 @@ miTriFan(CARD8 op, 73 + PictFormatPtr maskFormat, 74 + INT16 xSrc, INT16 ySrc, int npoints, xPointFixed * points); 75 + 76 + +extern _X_EXPORT PicturePtr 77 + +miCreateAlphaPicture (ScreenPtr pScreen, 78 + + PicturePtr pDst, 79 + + PictFormatPtr pPictFormat, 80 + + CARD16 width, 81 + + CARD16 height); 82 + + 83 + extern _X_EXPORT void 84 + miTrapezoidBounds(int ntrap, xTrapezoid * traps, BoxPtr box); 85 + 86 + extern _X_EXPORT void 87 + +miTrapezoids (CARD8 op, 88 + + PicturePtr pSrc, 89 + + PicturePtr pDst, 90 + + PictFormatPtr maskFormat, 91 + + INT16 xSrc, 92 + + INT16 ySrc, 93 + + int ntrap, 94 + + xTrapezoid *traps); 95 + + 96 + +extern _X_EXPORT void 97 + miPointFixedBounds(int npoint, xPointFixed * points, BoxPtr bounds); 98 + 99 + extern _X_EXPORT void 100 + diff --git a/render/mitrap.c b/render/mitrap.c 101 + index 17b6dcd..71c1857 100644 102 + --- a/render/mitrap.c 103 + +++ b/render/mitrap.c 104 + @@ -34,6 +34,55 @@ 105 + #include "picturestr.h" 106 + #include "mipict.h" 107 + 108 + +PicturePtr 109 + +miCreateAlphaPicture (ScreenPtr pScreen, 110 + + PicturePtr pDst, 111 + + PictFormatPtr pPictFormat, 112 + + CARD16 width, 113 + + CARD16 height) 114 + +{ 115 + + PixmapPtr pPixmap; 116 + + PicturePtr pPicture; 117 + + GCPtr pGC; 118 + + int error; 119 + + xRectangle rect; 120 + + 121 + + if (width > 32767 || height > 32767) 122 + + return 0; 123 + + 124 + + if (!pPictFormat) 125 + + { 126 + + if (pDst->polyEdge == PolyEdgeSharp) 127 + + pPictFormat = PictureMatchFormat (pScreen, 1, PICT_a1); 128 + + else 129 + + pPictFormat = PictureMatchFormat (pScreen, 8, PICT_a8); 130 + + if (!pPictFormat) 131 + + return 0; 132 + + } 133 + + 134 + + pPixmap = (*pScreen->CreatePixmap) (pScreen, width, height, 135 + + pPictFormat->depth, 0); 136 + + if (!pPixmap) 137 + + return 0; 138 + + pGC = GetScratchGC (pPixmap->drawable.depth, pScreen); 139 + + if (!pGC) 140 + + { 141 + + (*pScreen->DestroyPixmap) (pPixmap); 142 + + return 0; 143 + + } 144 + + ValidateGC (&pPixmap->drawable, pGC); 145 + + rect.x = 0; 146 + + rect.y = 0; 147 + + rect.width = width; 148 + + rect.height = height; 149 + + (*pGC->ops->PolyFillRect)(&pPixmap->drawable, pGC, 1, &rect); 150 + + FreeScratchGC (pGC); 151 + + pPicture = CreatePicture (0, &pPixmap->drawable, pPictFormat, 152 + + 0, 0, serverClient, &error); 153 + + (*pScreen->DestroyPixmap) (pPixmap); 154 + + return pPicture; 155 + +} 156 + + 157 + static xFixed 158 + miLineFixedX(xLineFixed * l, xFixed y, Bool ceil) 159 + { 160 + @@ -79,3 +128,65 @@ miTrapezoidBounds(int ntrap, xTrapezoid * traps, BoxPtr box) 161 + box->x2 = x2; 162 + } 163 + } 164 + + 165 + + 166 + +void 167 + +miTrapezoids (CARD8 op, 168 + + PicturePtr pSrc, 169 + + PicturePtr pDst, 170 + + PictFormatPtr maskFormat, 171 + + INT16 xSrc, 172 + + INT16 ySrc, 173 + + int ntrap, 174 + + xTrapezoid *traps) 175 + +{ 176 + + ScreenPtr pScreen = pDst->pDrawable->pScreen; 177 + + PictureScreenPtr ps = GetPictureScreen(pScreen); 178 + + 179 + + /* 180 + + * Check for solid alpha add 181 + + */ 182 + + if (op == PictOpAdd && miIsSolidAlpha (pSrc)) 183 + + { 184 + + for (; ntrap; ntrap--, traps++) 185 + + (*ps->RasterizeTrapezoid) (pDst, traps, 0, 0); 186 + + } 187 + + else if (maskFormat) 188 + + { 189 + + PicturePtr pPicture; 190 + + BoxRec bounds; 191 + + INT16 xDst, yDst; 192 + + INT16 xRel, yRel; 193 + + 194 + + xDst = traps[0].left.p1.x >> 16; 195 + + yDst = traps[0].left.p1.y >> 16; 196 + + 197 + + miTrapezoidBounds (ntrap, traps, &bounds); 198 + + if (bounds.y1 >= bounds.y2 || bounds.x1 >= bounds.x2) 199 + + return; 200 + + pPicture = miCreateAlphaPicture (pScreen, pDst, maskFormat, 201 + + bounds.x2 - bounds.x1, 202 + + bounds.y2 - bounds.y1); 203 + + if (!pPicture) 204 + + return; 205 + + for (; ntrap; ntrap--, traps++) 206 + + (*ps->RasterizeTrapezoid) (pPicture, traps, 207 + + -bounds.x1, -bounds.y1); 208 + + xRel = bounds.x1 + xSrc - xDst; 209 + + yRel = bounds.y1 + ySrc - yDst; 210 + + CompositePicture (op, pSrc, pPicture, pDst, 211 + + xRel, yRel, 0, 0, bounds.x1, bounds.y1, 212 + + bounds.x2 - bounds.x1, 213 + + bounds.y2 - bounds.y1); 214 + + FreePicture (pPicture, 0); 215 + + } 216 + + else 217 + + { 218 + + if (pDst->polyEdge == PolyEdgeSharp) 219 + + maskFormat = PictureMatchFormat (pScreen, 1, PICT_a1); 220 + + else 221 + + maskFormat = PictureMatchFormat (pScreen, 8, PICT_a8); 222 + + for (; ntrap; ntrap--, traps++) 223 + + miTrapezoids (op, pSrc, pDst, maskFormat, xSrc, ySrc, 1, traps); 224 + + } 225 + +} 226 + diff --git a/render/mitri.c b/render/mitri.c 227 + index 922f22a..bdca9ca 100644 228 + --- a/render/mitri.c 229 + +++ b/render/mitri.c 230 + @@ -65,3 +65,64 @@ miTriangleBounds(int ntri, xTriangle * tris, BoxPtr bounds) 231 + { 232 + miPointFixedBounds(ntri * 3, (xPointFixed *) tris, bounds); 233 + } 234 + + 235 + + 236 + +void 237 + +miTriangles (CARD8 op, 238 + + PicturePtr pSrc, 239 + + PicturePtr pDst, 240 + + PictFormatPtr maskFormat, 241 + + INT16 xSrc, 242 + + INT16 ySrc, 243 + + int ntri, 244 + + xTriangle *tris) 245 + +{ 246 + + ScreenPtr pScreen = pDst->pDrawable->pScreen; 247 + + PictureScreenPtr ps = GetPictureScreen(pScreen); 248 + + 249 + + /* 250 + + * Check for solid alpha add 251 + + */ 252 + + if (op == PictOpAdd && miIsSolidAlpha (pSrc)) 253 + + { 254 + + (*ps->AddTriangles) (pDst, 0, 0, ntri, tris); 255 + + } 256 + + else if (maskFormat) 257 + + { 258 + + BoxRec bounds; 259 + + PicturePtr pPicture; 260 + + INT16 xDst, yDst; 261 + + INT16 xRel, yRel; 262 + + 263 + + xDst = tris[0].p1.x >> 16; 264 + + yDst = tris[0].p1.y >> 16; 265 + + 266 + + miTriangleBounds (ntri, tris, &bounds); 267 + + if (bounds.x2 <= bounds.x1 || bounds.y2 <= bounds.y1) 268 + + return; 269 + + pPicture = miCreateAlphaPicture (pScreen, pDst, maskFormat, 270 + + bounds.x2 - bounds.x1, 271 + + bounds.y2 - bounds.y1); 272 + + if (!pPicture) 273 + + return; 274 + + (*ps->AddTriangles) (pPicture, -bounds.x1, -bounds.y1, ntri, tris); 275 + + 276 + + xRel = bounds.x1 + xSrc - xDst; 277 + + yRel = bounds.y1 + ySrc - yDst; 278 + + CompositePicture (op, pSrc, pPicture, pDst, 279 + + xRel, yRel, 0, 0, bounds.x1, bounds.y1, 280 + + bounds.x2 - bounds.x1, bounds.y2 - bounds.y1); 281 + + FreePicture (pPicture, 0); 282 + + } 283 + + else 284 + + { 285 + + if (pDst->polyEdge == PolyEdgeSharp) 286 + + maskFormat = PictureMatchFormat (pScreen, 1, PICT_a1); 287 + + else 288 + + maskFormat = PictureMatchFormat (pScreen, 8, PICT_a8); 289 + + 290 + + for (; ntri; ntri--, tris++) 291 + + miTriangles (op, pSrc, pDst, maskFormat, xSrc, ySrc, 1, tris); 292 + + } 293 + +} 294 + + 295 + -- 296 + 1.8.4.1 297 +
+118
pkgs/servers/x11/xorg/darwin/bundle_main.patch
···
··· 1 + cstrahan: 2 + 3 + This patch makes it possible (and necessary) to specify the default 4 + shell, xterm client, and startx script from environment variables. These 5 + defaults are used when launching the XQuartz.app, which in turn needs to know 6 + how to start the X server. I've patched `command_from_prefs' so that it ignores 7 + the preferences settings and immediately sets them to whatever the environment 8 + variables are. 9 + 10 + When developing an installable package for XQuartz/XQuartz.app, we'll need to 11 + set an `LSEnvironment' entry in the plist for the XQuartz.app, we'll also need 12 + to wrap the XQuartz.app/Contents/MacOS/X11 script (the Xquartz server will 13 + invoke this script during initialization. See stub.patch for more details.). 14 + 15 + diff --git a/hw/xquartz/mach-startup/bundle-main.c b/hw/xquartz/mach-startup/bundle-main.c 16 + index b403662..b1e2070 100644 17 + --- a/hw/xquartz/mach-startup/bundle-main.c 18 + +++ b/hw/xquartz/mach-startup/bundle-main.c 19 + @@ -77,13 +77,7 @@ FatalError(const char *f, ...) _X_ATTRIBUTE_PRINTF(1, 2) _X_NORETURN; 20 + 21 + extern int noPanoramiXExtension; 22 + 23 + -#define DEFAULT_CLIENT X11BINDIR "/xterm" 24 + -#define DEFAULT_STARTX X11BINDIR "/startx -- " X11BINDIR "/Xquartz" 25 + -#define DEFAULT_SHELL "/bin/sh" 26 + - 27 + -#ifndef BUILD_DATE 28 + #define BUILD_DATE "" 29 + -#endif 30 + #ifndef XSERVER_VERSION 31 + #define XSERVER_VERSION "?" 32 + #endif 33 + @@ -718,14 +712,14 @@ main(int argc, char **argv, char **envp) 34 + pid_t child1, child2; 35 + int status; 36 + 37 + - pref_app_to_run = command_from_prefs("app_to_run", DEFAULT_CLIENT); 38 + + pref_app_to_run = command_from_prefs("app_to_run", getenv("XQUARTZ_DEFAULT_CLIENT")); 39 + assert(pref_app_to_run); 40 + 41 + - pref_login_shell = command_from_prefs("login_shell", DEFAULT_SHELL); 42 + + pref_login_shell = command_from_prefs("login_shell", getenv("XQUARTZ_DEFAULT_SHELL")); 43 + assert(pref_login_shell); 44 + 45 + pref_startx_script = command_from_prefs("startx_script", 46 + - DEFAULT_STARTX); 47 + + getenv("XQUARTZ_DEFAULT_STARTX")); 48 + assert(pref_startx_script); 49 + 50 + /* Do the fork-twice trick to avoid having to reap zombies */ 51 + @@ -804,10 +798,12 @@ execute(const char *command) 52 + static char * 53 + command_from_prefs(const char *key, const char *default_value) 54 + { 55 + + if (default_value == NULL) 56 + + return NULL; 57 + + 58 + char *command = NULL; 59 + 60 + CFStringRef cfKey; 61 + - CFPropertyListRef PlistRef; 62 + 63 + if (!key) 64 + return NULL; 65 + @@ -817,40 +813,24 @@ command_from_prefs(const char *key, const char *default_value) 66 + if (!cfKey) 67 + return NULL; 68 + 69 + - PlistRef = CFPreferencesCopyAppValue(cfKey, 70 + - kCFPreferencesCurrentApplication); 71 + + CFStringRef cfDefaultValue = CFStringCreateWithCString( 72 + + NULL, default_value, kCFStringEncodingASCII); 73 + + int len = strlen(default_value) + 1; 74 + 75 + - if ((PlistRef == NULL) || 76 + - (CFGetTypeID(PlistRef) != CFStringGetTypeID())) { 77 + - CFStringRef cfDefaultValue = CFStringCreateWithCString( 78 + - NULL, default_value, kCFStringEncodingASCII); 79 + - int len = strlen(default_value) + 1; 80 + + if (!cfDefaultValue) 81 + + goto command_from_prefs_out; 82 + 83 + - if (!cfDefaultValue) 84 + - goto command_from_prefs_out; 85 + + CFPreferencesSetAppValue(cfKey, cfDefaultValue, 86 + + kCFPreferencesCurrentApplication); 87 + + CFPreferencesAppSynchronize(kCFPreferencesCurrentApplication); 88 + + CFRelease(cfDefaultValue); 89 + 90 + - CFPreferencesSetAppValue(cfKey, cfDefaultValue, 91 + - kCFPreferencesCurrentApplication); 92 + - CFPreferencesAppSynchronize(kCFPreferencesCurrentApplication); 93 + - CFRelease(cfDefaultValue); 94 + - 95 + - command = (char *)malloc(len * sizeof(char)); 96 + - if (!command) 97 + - goto command_from_prefs_out; 98 + - strcpy(command, default_value); 99 + - } 100 + - else { 101 + - int len = CFStringGetLength((CFStringRef)PlistRef) + 1; 102 + - command = (char *)malloc(len * sizeof(char)); 103 + - if (!command) 104 + - goto command_from_prefs_out; 105 + - CFStringGetCString((CFStringRef)PlistRef, command, len, 106 + - kCFStringEncodingASCII); 107 + - } 108 + + command = (char *)malloc(len * sizeof(char)); 109 + + if (!command) 110 + + goto command_from_prefs_out; 111 + + strcpy(command, default_value); 112 + 113 + command_from_prefs_out: 114 + - if (PlistRef) 115 + - CFRelease(PlistRef); 116 + if (cfKey) 117 + CFRelease(cfKey); 118 + return command;
+1409
pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h
···
··· 1 + /* 2 + * Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. 3 + * Copyright 2007-2008 Red Hat, Inc. 4 + * (C) Copyright IBM Corporation 2004 5 + * All Rights Reserved. 6 + * 7 + * Permission is hereby granted, free of charge, to any person obtaining a 8 + * copy of this software and associated documentation files (the "Software"), 9 + * to deal in the Software without restriction, including without limitation 10 + * on the rights to use, copy, modify, merge, publish, distribute, sub 11 + * license, and/or sell copies of the Software, and to permit persons to whom 12 + * the Software is furnished to do so, subject to the following conditions: 13 + * 14 + * The above copyright notice and this permission notice (including the next 15 + * paragraph) shall be included in all copies or substantial portions of the 16 + * Software. 17 + * 18 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 + * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 21 + * THE COPYRIGHT HOLDERS AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, 22 + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 23 + * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE 24 + * USE OR OTHER DEALINGS IN THE SOFTWARE. 25 + */ 26 + 27 + /** 28 + * \file dri_interface.h 29 + * 30 + * This file contains all the types and functions that define the interface 31 + * between a DRI driver and driver loader. Currently, the most common driver 32 + * loader is the XFree86 libGL.so. However, other loaders do exist, and in 33 + * the future the server-side libglx.a will also be a loader. 34 + * 35 + * \author Kevin E. Martin <kevin@precisioninsight.com> 36 + * \author Ian Romanick <idr@us.ibm.com> 37 + * \author Kristian Høgsberg <krh@redhat.com> 38 + */ 39 + 40 + #ifndef DRI_INTERFACE_H 41 + #define DRI_INTERFACE_H 42 + 43 + /* For archs with no drm.h */ 44 + #if defined(__APPLE__) || defined(__CYGWIN__) || defined(__GNU__) 45 + #ifndef __NOT_HAVE_DRM_H 46 + #define __NOT_HAVE_DRM_H 47 + #endif 48 + #endif 49 + 50 + #ifndef __NOT_HAVE_DRM_H 51 + #include <drm.h> 52 + #else 53 + typedef unsigned int drm_context_t; 54 + typedef unsigned int drm_drawable_t; 55 + typedef struct drm_clip_rect drm_clip_rect_t; 56 + #endif 57 + 58 + /** 59 + * \name DRI interface structures 60 + * 61 + * The following structures define the interface between the GLX client 62 + * side library and the DRI (direct rendering infrastructure). 63 + */ 64 + /*@{*/ 65 + typedef struct __DRIdisplayRec __DRIdisplay; 66 + typedef struct __DRIscreenRec __DRIscreen; 67 + typedef struct __DRIcontextRec __DRIcontext; 68 + typedef struct __DRIdrawableRec __DRIdrawable; 69 + typedef struct __DRIconfigRec __DRIconfig; 70 + typedef struct __DRIframebufferRec __DRIframebuffer; 71 + typedef struct __DRIversionRec __DRIversion; 72 + 73 + typedef struct __DRIcoreExtensionRec __DRIcoreExtension; 74 + typedef struct __DRIextensionRec __DRIextension; 75 + typedef struct __DRIcopySubBufferExtensionRec __DRIcopySubBufferExtension; 76 + typedef struct __DRIswapControlExtensionRec __DRIswapControlExtension; 77 + typedef struct __DRIframeTrackingExtensionRec __DRIframeTrackingExtension; 78 + typedef struct __DRImediaStreamCounterExtensionRec __DRImediaStreamCounterExtension; 79 + typedef struct __DRItexOffsetExtensionRec __DRItexOffsetExtension; 80 + typedef struct __DRItexBufferExtensionRec __DRItexBufferExtension; 81 + typedef struct __DRIlegacyExtensionRec __DRIlegacyExtension; 82 + typedef struct __DRIswrastExtensionRec __DRIswrastExtension; 83 + typedef struct __DRIbufferRec __DRIbuffer; 84 + typedef struct __DRIdri2ExtensionRec __DRIdri2Extension; 85 + typedef struct __DRIdri2LoaderExtensionRec __DRIdri2LoaderExtension; 86 + typedef struct __DRI2flushExtensionRec __DRI2flushExtension; 87 + typedef struct __DRI2throttleExtensionRec __DRI2throttleExtension; 88 + 89 + 90 + typedef struct __DRIimageLoaderExtensionRec __DRIimageLoaderExtension; 91 + typedef struct __DRIimageDriverExtensionRec __DRIimageDriverExtension; 92 + 93 + /*@}*/ 94 + 95 + 96 + /** 97 + * Extension struct. Drivers 'inherit' from this struct by embedding 98 + * it as the first element in the extension struct. 99 + * 100 + * We never break API in for a DRI extension. If we need to change 101 + * the way things work in a non-backwards compatible manner, we 102 + * introduce a new extension. During a transition period, we can 103 + * leave both the old and the new extension in the driver, which 104 + * allows us to move to the new interface without having to update the 105 + * loader(s) in lock step. 106 + * 107 + * However, we can add entry points to an extension over time as long 108 + * as we don't break the old ones. As we add entry points to an 109 + * extension, we increase the version number. The corresponding 110 + * #define can be used to guard code that accesses the new entry 111 + * points at compile time and the version field in the extension 112 + * struct can be used at run-time to determine how to use the 113 + * extension. 114 + */ 115 + struct __DRIextensionRec { 116 + const char *name; 117 + int version; 118 + }; 119 + 120 + /** 121 + * The first set of extension are the screen extensions, returned by 122 + * __DRIcore::getExtensions(). This entry point will return a list of 123 + * extensions and the loader can use the ones it knows about by 124 + * casting them to more specific extensions and advertising any GLX 125 + * extensions the DRI extensions enables. 126 + */ 127 + 128 + /** 129 + * Used by drivers to indicate support for setting the read drawable. 130 + */ 131 + #define __DRI_READ_DRAWABLE "DRI_ReadDrawable" 132 + #define __DRI_READ_DRAWABLE_VERSION 1 133 + 134 + /** 135 + * Used by drivers that implement the GLX_MESA_copy_sub_buffer extension. 136 + */ 137 + #define __DRI_COPY_SUB_BUFFER "DRI_CopySubBuffer" 138 + #define __DRI_COPY_SUB_BUFFER_VERSION 1 139 + struct __DRIcopySubBufferExtensionRec { 140 + __DRIextension base; 141 + void (*copySubBuffer)(__DRIdrawable *drawable, int x, int y, int w, int h); 142 + }; 143 + 144 + /** 145 + * Used by drivers that implement the GLX_SGI_swap_control or 146 + * GLX_MESA_swap_control extension. 147 + */ 148 + #define __DRI_SWAP_CONTROL "DRI_SwapControl" 149 + #define __DRI_SWAP_CONTROL_VERSION 1 150 + struct __DRIswapControlExtensionRec { 151 + __DRIextension base; 152 + void (*setSwapInterval)(__DRIdrawable *drawable, unsigned int inteval); 153 + unsigned int (*getSwapInterval)(__DRIdrawable *drawable); 154 + }; 155 + 156 + /** 157 + * Used by drivers that implement the GLX_MESA_swap_frame_usage extension. 158 + */ 159 + #define __DRI_FRAME_TRACKING "DRI_FrameTracking" 160 + #define __DRI_FRAME_TRACKING_VERSION 1 161 + struct __DRIframeTrackingExtensionRec { 162 + __DRIextension base; 163 + 164 + /** 165 + * Enable or disable frame usage tracking. 166 + * 167 + * \since Internal API version 20030317. 168 + */ 169 + int (*frameTracking)(__DRIdrawable *drawable, GLboolean enable); 170 + 171 + /** 172 + * Retrieve frame usage information. 173 + * 174 + * \since Internal API version 20030317. 175 + */ 176 + int (*queryFrameTracking)(__DRIdrawable *drawable, 177 + int64_t * sbc, int64_t * missedFrames, 178 + float * lastMissedUsage, float * usage); 179 + }; 180 + 181 + 182 + /** 183 + * Used by drivers that implement the GLX_SGI_video_sync extension. 184 + */ 185 + #define __DRI_MEDIA_STREAM_COUNTER "DRI_MediaStreamCounter" 186 + #define __DRI_MEDIA_STREAM_COUNTER_VERSION 1 187 + struct __DRImediaStreamCounterExtensionRec { 188 + __DRIextension base; 189 + 190 + /** 191 + * Wait for the MSC to equal target_msc, or, if that has already passed, 192 + * the next time (MSC % divisor) is equal to remainder. If divisor is 193 + * zero, the function will return as soon as MSC is greater than or equal 194 + * to target_msc. 195 + */ 196 + int (*waitForMSC)(__DRIdrawable *drawable, 197 + int64_t target_msc, int64_t divisor, int64_t remainder, 198 + int64_t * msc, int64_t * sbc); 199 + 200 + /** 201 + * Get the number of vertical refreshes since some point in time before 202 + * this function was first called (i.e., system start up). 203 + */ 204 + int (*getDrawableMSC)(__DRIscreen *screen, __DRIdrawable *drawable, 205 + int64_t *msc); 206 + }; 207 + 208 + 209 + #define __DRI_TEX_OFFSET "DRI_TexOffset" 210 + #define __DRI_TEX_OFFSET_VERSION 1 211 + struct __DRItexOffsetExtensionRec { 212 + __DRIextension base; 213 + 214 + /** 215 + * Method to override base texture image with a driver specific 'offset'. 216 + * The depth passed in allows e.g. to ignore the alpha channel of texture 217 + * images where the non-alpha components don't occupy a whole texel. 218 + * 219 + * For GLX_EXT_texture_from_pixmap with AIGLX. 220 + */ 221 + void (*setTexOffset)(__DRIcontext *pDRICtx, GLint texname, 222 + unsigned long long offset, GLint depth, GLuint pitch); 223 + }; 224 + 225 + 226 + /* Valid values for format in the setTexBuffer2 function below. These 227 + * values match the GLX tokens for compatibility reasons, but we 228 + * define them here since the DRI interface can't depend on GLX. */ 229 + #define __DRI_TEXTURE_FORMAT_NONE 0x20D8 230 + #define __DRI_TEXTURE_FORMAT_RGB 0x20D9 231 + #define __DRI_TEXTURE_FORMAT_RGBA 0x20DA 232 + 233 + #define __DRI_TEX_BUFFER "DRI_TexBuffer" 234 + #define __DRI_TEX_BUFFER_VERSION 2 235 + struct __DRItexBufferExtensionRec { 236 + __DRIextension base; 237 + 238 + /** 239 + * Method to override base texture image with the contents of a 240 + * __DRIdrawable. 241 + * 242 + * For GLX_EXT_texture_from_pixmap with AIGLX. Deprecated in favor of 243 + * setTexBuffer2 in version 2 of this interface 244 + */ 245 + void (*setTexBuffer)(__DRIcontext *pDRICtx, 246 + GLint target, 247 + __DRIdrawable *pDraw); 248 + 249 + /** 250 + * Method to override base texture image with the contents of a 251 + * __DRIdrawable, including the required texture format attribute. 252 + * 253 + * For GLX_EXT_texture_from_pixmap with AIGLX. 254 + */ 255 + void (*setTexBuffer2)(__DRIcontext *pDRICtx, 256 + GLint target, 257 + GLint format, 258 + __DRIdrawable *pDraw); 259 + /** 260 + * Method to release texture buffer in case some special platform 261 + * need this. 262 + * 263 + * For GLX_EXT_texture_from_pixmap with AIGLX. 264 + */ 265 + void (*releaseTexBuffer)(__DRIcontext *pDRICtx, 266 + GLint target, 267 + __DRIdrawable *pDraw); 268 + }; 269 + 270 + /** 271 + * Used by drivers that implement DRI2 272 + */ 273 + #define __DRI2_FLUSH "DRI2_Flush" 274 + #define __DRI2_FLUSH_VERSION 4 275 + 276 + #define __DRI2_FLUSH_DRAWABLE (1 << 0) /* the drawable should be flushed. */ 277 + #define __DRI2_FLUSH_CONTEXT (1 << 1) /* glFlush should be called */ 278 + 279 + enum __DRI2throttleReason { 280 + __DRI2_THROTTLE_SWAPBUFFER, 281 + __DRI2_THROTTLE_COPYSUBBUFFER, 282 + __DRI2_THROTTLE_FLUSHFRONT 283 + }; 284 + 285 + struct __DRI2flushExtensionRec { 286 + __DRIextension base; 287 + void (*flush)(__DRIdrawable *drawable); 288 + 289 + /** 290 + * Ask the driver to call getBuffers/getBuffersWithFormat before 291 + * it starts rendering again. 292 + * 293 + * \param drawable the drawable to invalidate 294 + * 295 + * \since 3 296 + */ 297 + void (*invalidate)(__DRIdrawable *drawable); 298 + 299 + /** 300 + * This function reduces the number of flushes in the driver by combining 301 + * several operations into one call. 302 + * 303 + * It can: 304 + * - throttle 305 + * - flush a drawable 306 + * - flush a context 307 + * 308 + * \param context the context 309 + * \param drawable the drawable to flush 310 + * \param flags a combination of _DRI2_FLUSH_xxx flags 311 + * \param throttle_reason the reason for throttling, 0 = no throttling 312 + * 313 + * \since 4 314 + */ 315 + void (*flush_with_flags)(__DRIcontext *ctx, 316 + __DRIdrawable *drawable, 317 + unsigned flags, 318 + enum __DRI2throttleReason throttle_reason); 319 + }; 320 + 321 + 322 + /** 323 + * Extension that the driver uses to request 324 + * throttle callbacks. 325 + */ 326 + 327 + #define __DRI2_THROTTLE "DRI2_Throttle" 328 + #define __DRI2_THROTTLE_VERSION 1 329 + 330 + struct __DRI2throttleExtensionRec { 331 + __DRIextension base; 332 + void (*throttle)(__DRIcontext *ctx, 333 + __DRIdrawable *drawable, 334 + enum __DRI2throttleReason reason); 335 + }; 336 + 337 + /*@}*/ 338 + 339 + /** 340 + * The following extensions describe loader features that the DRI 341 + * driver can make use of. Some of these are mandatory, such as the 342 + * getDrawableInfo extension for DRI and the DRI Loader extensions for 343 + * DRI2, while others are optional, and if present allow the driver to 344 + * expose certain features. The loader pass in a NULL terminated 345 + * array of these extensions to the driver in the createNewScreen 346 + * constructor. 347 + */ 348 + 349 + typedef struct __DRIgetDrawableInfoExtensionRec __DRIgetDrawableInfoExtension; 350 + typedef struct __DRIsystemTimeExtensionRec __DRIsystemTimeExtension; 351 + typedef struct __DRIdamageExtensionRec __DRIdamageExtension; 352 + typedef struct __DRIloaderExtensionRec __DRIloaderExtension; 353 + typedef struct __DRIswrastLoaderExtensionRec __DRIswrastLoaderExtension; 354 + 355 + 356 + /** 357 + * Callback to getDrawableInfo protocol 358 + */ 359 + #define __DRI_GET_DRAWABLE_INFO "DRI_GetDrawableInfo" 360 + #define __DRI_GET_DRAWABLE_INFO_VERSION 1 361 + struct __DRIgetDrawableInfoExtensionRec { 362 + __DRIextension base; 363 + 364 + /** 365 + * This function is used to get information about the position, size, and 366 + * clip rects of a drawable. 367 + */ 368 + GLboolean (* getDrawableInfo) ( __DRIdrawable *drawable, 369 + unsigned int * index, unsigned int * stamp, 370 + int * x, int * y, int * width, int * height, 371 + int * numClipRects, drm_clip_rect_t ** pClipRects, 372 + int * backX, int * backY, 373 + int * numBackClipRects, drm_clip_rect_t ** pBackClipRects, 374 + void *loaderPrivate); 375 + }; 376 + 377 + /** 378 + * Callback to get system time for media stream counter extensions. 379 + */ 380 + #define __DRI_SYSTEM_TIME "DRI_SystemTime" 381 + #define __DRI_SYSTEM_TIME_VERSION 1 382 + struct __DRIsystemTimeExtensionRec { 383 + __DRIextension base; 384 + 385 + /** 386 + * Get the 64-bit unadjusted system time (UST). 387 + */ 388 + int (*getUST)(int64_t * ust); 389 + 390 + /** 391 + * Get the media stream counter (MSC) rate. 392 + * 393 + * Matching the definition in GLX_OML_sync_control, this function returns 394 + * the rate of the "media stream counter". In practical terms, this is 395 + * the frame refresh rate of the display. 396 + */ 397 + GLboolean (*getMSCRate)(__DRIdrawable *draw, 398 + int32_t * numerator, int32_t * denominator, 399 + void *loaderPrivate); 400 + }; 401 + 402 + /** 403 + * Damage reporting 404 + */ 405 + #define __DRI_DAMAGE "DRI_Damage" 406 + #define __DRI_DAMAGE_VERSION 1 407 + struct __DRIdamageExtensionRec { 408 + __DRIextension base; 409 + 410 + /** 411 + * Reports areas of the given drawable which have been modified by the 412 + * driver. 413 + * 414 + * \param drawable which the drawing was done to. 415 + * \param rects rectangles affected, with the drawable origin as the 416 + * origin. 417 + * \param x X offset of the drawable within the screen (used in the 418 + * front_buffer case) 419 + * \param y Y offset of the drawable within the screen. 420 + * \param front_buffer boolean flag for whether the drawing to the 421 + * drawable was actually done directly to the front buffer (instead 422 + * of backing storage, for example) 423 + * \param loaderPrivate the data passed in at createNewDrawable time 424 + */ 425 + void (*reportDamage)(__DRIdrawable *draw, 426 + int x, int y, 427 + drm_clip_rect_t *rects, int num_rects, 428 + GLboolean front_buffer, 429 + void *loaderPrivate); 430 + }; 431 + 432 + #define __DRI_SWRAST_IMAGE_OP_DRAW 1 433 + #define __DRI_SWRAST_IMAGE_OP_CLEAR 2 434 + #define __DRI_SWRAST_IMAGE_OP_SWAP 3 435 + 436 + /** 437 + * SWRast Loader extension. 438 + */ 439 + #define __DRI_SWRAST_LOADER "DRI_SWRastLoader" 440 + #define __DRI_SWRAST_LOADER_VERSION 1 441 + struct __DRIswrastLoaderExtensionRec { 442 + __DRIextension base; 443 + 444 + /* 445 + * Drawable position and size 446 + */ 447 + void (*getDrawableInfo)(__DRIdrawable *drawable, 448 + int *x, int *y, int *width, int *height, 449 + void *loaderPrivate); 450 + 451 + /** 452 + * Put image to drawable 453 + */ 454 + void (*putImage)(__DRIdrawable *drawable, int op, 455 + int x, int y, int width, int height, 456 + char *data, void *loaderPrivate); 457 + 458 + /** 459 + * Get image from readable 460 + */ 461 + void (*getImage)(__DRIdrawable *readable, 462 + int x, int y, int width, int height, 463 + char *data, void *loaderPrivate); 464 + }; 465 + 466 + /** 467 + * Invalidate loader extension. The presence of this extension 468 + * indicates to the DRI driver that the loader will call invalidate in 469 + * the __DRI2_FLUSH extension, whenever the needs to query for new 470 + * buffers. This means that the DRI driver can drop the polling in 471 + * glViewport(). 472 + * 473 + * The extension doesn't provide any functionality, it's only use to 474 + * indicate to the driver that it can use the new semantics. A DRI 475 + * driver can use this to switch between the different semantics or 476 + * just refuse to initialize if this extension isn't present. 477 + */ 478 + #define __DRI_USE_INVALIDATE "DRI_UseInvalidate" 479 + #define __DRI_USE_INVALIDATE_VERSION 1 480 + 481 + typedef struct __DRIuseInvalidateExtensionRec __DRIuseInvalidateExtension; 482 + struct __DRIuseInvalidateExtensionRec { 483 + __DRIextension base; 484 + }; 485 + 486 + /** 487 + * The remaining extensions describe driver extensions, immediately 488 + * available interfaces provided by the driver. To start using the 489 + * driver, dlsym() for the __DRI_DRIVER_EXTENSIONS symbol and look for 490 + * the extension you need in the array. 491 + */ 492 + #define __DRI_DRIVER_EXTENSIONS "__driDriverExtensions" 493 + 494 + /** 495 + * This symbol replaces the __DRI_DRIVER_EXTENSIONS symbol, and will be 496 + * suffixed by "_drivername", allowing multiple drivers to be built into one 497 + * library, and also giving the driver the chance to return a variable driver 498 + * extensions struct depending on the driver name being loaded or any other 499 + * system state. 500 + * 501 + * The function prototype is: 502 + * 503 + * const __DRIextension **__driDriverGetExtensions_drivername(void); 504 + */ 505 + #define __DRI_DRIVER_GET_EXTENSIONS "__driDriverGetExtensions" 506 + 507 + /** 508 + * Tokens for __DRIconfig attribs. A number of attributes defined by 509 + * GLX or EGL standards are not in the table, as they must be provided 510 + * by the loader. For example, FBConfig ID or visual ID, drawable type. 511 + */ 512 + 513 + #define __DRI_ATTRIB_BUFFER_SIZE 1 514 + #define __DRI_ATTRIB_LEVEL 2 515 + #define __DRI_ATTRIB_RED_SIZE 3 516 + #define __DRI_ATTRIB_GREEN_SIZE 4 517 + #define __DRI_ATTRIB_BLUE_SIZE 5 518 + #define __DRI_ATTRIB_LUMINANCE_SIZE 6 519 + #define __DRI_ATTRIB_ALPHA_SIZE 7 520 + #define __DRI_ATTRIB_ALPHA_MASK_SIZE 8 521 + #define __DRI_ATTRIB_DEPTH_SIZE 9 522 + #define __DRI_ATTRIB_STENCIL_SIZE 10 523 + #define __DRI_ATTRIB_ACCUM_RED_SIZE 11 524 + #define __DRI_ATTRIB_ACCUM_GREEN_SIZE 12 525 + #define __DRI_ATTRIB_ACCUM_BLUE_SIZE 13 526 + #define __DRI_ATTRIB_ACCUM_ALPHA_SIZE 14 527 + #define __DRI_ATTRIB_SAMPLE_BUFFERS 15 528 + #define __DRI_ATTRIB_SAMPLES 16 529 + #define __DRI_ATTRIB_RENDER_TYPE 17 530 + #define __DRI_ATTRIB_CONFIG_CAVEAT 18 531 + #define __DRI_ATTRIB_CONFORMANT 19 532 + #define __DRI_ATTRIB_DOUBLE_BUFFER 20 533 + #define __DRI_ATTRIB_STEREO 21 534 + #define __DRI_ATTRIB_AUX_BUFFERS 22 535 + #define __DRI_ATTRIB_TRANSPARENT_TYPE 23 536 + #define __DRI_ATTRIB_TRANSPARENT_INDEX_VALUE 24 537 + #define __DRI_ATTRIB_TRANSPARENT_RED_VALUE 25 538 + #define __DRI_ATTRIB_TRANSPARENT_GREEN_VALUE 26 539 + #define __DRI_ATTRIB_TRANSPARENT_BLUE_VALUE 27 540 + #define __DRI_ATTRIB_TRANSPARENT_ALPHA_VALUE 28 541 + #define __DRI_ATTRIB_FLOAT_MODE 29 542 + #define __DRI_ATTRIB_RED_MASK 30 543 + #define __DRI_ATTRIB_GREEN_MASK 31 544 + #define __DRI_ATTRIB_BLUE_MASK 32 545 + #define __DRI_ATTRIB_ALPHA_MASK 33 546 + #define __DRI_ATTRIB_MAX_PBUFFER_WIDTH 34 547 + #define __DRI_ATTRIB_MAX_PBUFFER_HEIGHT 35 548 + #define __DRI_ATTRIB_MAX_PBUFFER_PIXELS 36 549 + #define __DRI_ATTRIB_OPTIMAL_PBUFFER_WIDTH 37 550 + #define __DRI_ATTRIB_OPTIMAL_PBUFFER_HEIGHT 38 551 + #define __DRI_ATTRIB_VISUAL_SELECT_GROUP 39 552 + #define __DRI_ATTRIB_SWAP_METHOD 40 553 + #define __DRI_ATTRIB_MAX_SWAP_INTERVAL 41 554 + #define __DRI_ATTRIB_MIN_SWAP_INTERVAL 42 555 + #define __DRI_ATTRIB_BIND_TO_TEXTURE_RGB 43 556 + #define __DRI_ATTRIB_BIND_TO_TEXTURE_RGBA 44 557 + #define __DRI_ATTRIB_BIND_TO_MIPMAP_TEXTURE 45 558 + #define __DRI_ATTRIB_BIND_TO_TEXTURE_TARGETS 46 559 + #define __DRI_ATTRIB_YINVERTED 47 560 + #define __DRI_ATTRIB_FRAMEBUFFER_SRGB_CAPABLE 48 561 + 562 + /* __DRI_ATTRIB_RENDER_TYPE */ 563 + #define __DRI_ATTRIB_RGBA_BIT 0x01 564 + #define __DRI_ATTRIB_COLOR_INDEX_BIT 0x02 565 + #define __DRI_ATTRIB_LUMINANCE_BIT 0x04 566 + #define __DRI_ATTRIB_FLOAT_BIT 0x08 567 + #define __DRI_ATTRIB_UNSIGNED_FLOAT_BIT 0x10 568 + 569 + /* __DRI_ATTRIB_CONFIG_CAVEAT */ 570 + #define __DRI_ATTRIB_SLOW_BIT 0x01 571 + #define __DRI_ATTRIB_NON_CONFORMANT_CONFIG 0x02 572 + 573 + /* __DRI_ATTRIB_TRANSPARENT_TYPE */ 574 + #define __DRI_ATTRIB_TRANSPARENT_RGB 0x00 575 + #define __DRI_ATTRIB_TRANSPARENT_INDEX 0x01 576 + 577 + /* __DRI_ATTRIB_BIND_TO_TEXTURE_TARGETS */ 578 + #define __DRI_ATTRIB_TEXTURE_1D_BIT 0x01 579 + #define __DRI_ATTRIB_TEXTURE_2D_BIT 0x02 580 + #define __DRI_ATTRIB_TEXTURE_RECTANGLE_BIT 0x04 581 + 582 + /** 583 + * This extension defines the core DRI functionality. 584 + */ 585 + #define __DRI_CORE "DRI_Core" 586 + #define __DRI_CORE_VERSION 1 587 + 588 + struct __DRIcoreExtensionRec { 589 + __DRIextension base; 590 + 591 + __DRIscreen *(*createNewScreen)(int screen, int fd, 592 + unsigned int sarea_handle, 593 + const __DRIextension **extensions, 594 + const __DRIconfig ***driverConfigs, 595 + void *loaderPrivate); 596 + 597 + void (*destroyScreen)(__DRIscreen *screen); 598 + 599 + const __DRIextension **(*getExtensions)(__DRIscreen *screen); 600 + 601 + int (*getConfigAttrib)(const __DRIconfig *config, 602 + unsigned int attrib, 603 + unsigned int *value); 604 + 605 + int (*indexConfigAttrib)(const __DRIconfig *config, int index, 606 + unsigned int *attrib, unsigned int *value); 607 + 608 + __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen, 609 + const __DRIconfig *config, 610 + unsigned int drawable_id, 611 + unsigned int head, 612 + void *loaderPrivate); 613 + 614 + void (*destroyDrawable)(__DRIdrawable *drawable); 615 + 616 + void (*swapBuffers)(__DRIdrawable *drawable); 617 + 618 + __DRIcontext *(*createNewContext)(__DRIscreen *screen, 619 + const __DRIconfig *config, 620 + __DRIcontext *shared, 621 + void *loaderPrivate); 622 + 623 + int (*copyContext)(__DRIcontext *dest, 624 + __DRIcontext *src, 625 + unsigned long mask); 626 + 627 + void (*destroyContext)(__DRIcontext *context); 628 + 629 + int (*bindContext)(__DRIcontext *ctx, 630 + __DRIdrawable *pdraw, 631 + __DRIdrawable *pread); 632 + 633 + int (*unbindContext)(__DRIcontext *ctx); 634 + }; 635 + 636 + /** 637 + * Stored version of some component (i.e., server-side DRI module, kernel-side 638 + * DRM, etc.). 639 + * 640 + * \todo 641 + * There are several data structures that explicitly store a major version, 642 + * minor version, and patch level. These structures should be modified to 643 + * have a \c __DRIversionRec instead. 644 + */ 645 + struct __DRIversionRec { 646 + int major; /**< Major version number. */ 647 + int minor; /**< Minor version number. */ 648 + int patch; /**< Patch-level. */ 649 + }; 650 + 651 + /** 652 + * Framebuffer information record. Used by libGL to communicate information 653 + * about the framebuffer to the driver's \c __driCreateNewScreen function. 654 + * 655 + * In XFree86, most of this information is derrived from data returned by 656 + * calling \c XF86DRIGetDeviceInfo. 657 + * 658 + * \sa XF86DRIGetDeviceInfo __DRIdisplayRec::createNewScreen 659 + * __driUtilCreateNewScreen CallCreateNewScreen 660 + * 661 + * \bug This structure could be better named. 662 + */ 663 + struct __DRIframebufferRec { 664 + unsigned char *base; /**< Framebuffer base address in the CPU's 665 + * address space. This value is calculated by 666 + * calling \c drmMap on the framebuffer handle 667 + * returned by \c XF86DRIGetDeviceInfo (or a 668 + * similar function). 669 + */ 670 + int size; /**< Framebuffer size, in bytes. */ 671 + int stride; /**< Number of bytes from one line to the next. */ 672 + int width; /**< Pixel width of the framebuffer. */ 673 + int height; /**< Pixel height of the framebuffer. */ 674 + int dev_priv_size; /**< Size of the driver's dev-priv structure. */ 675 + void *dev_priv; /**< Pointer to the driver's dev-priv structure. */ 676 + }; 677 + 678 + 679 + /** 680 + * This extension provides alternative screen, drawable and context 681 + * constructors for legacy DRI functionality. This is used in 682 + * conjunction with the core extension. 683 + */ 684 + #define __DRI_LEGACY "DRI_Legacy" 685 + #define __DRI_LEGACY_VERSION 1 686 + 687 + struct __DRIlegacyExtensionRec { 688 + __DRIextension base; 689 + 690 + __DRIscreen *(*createNewScreen)(int screen, 691 + const __DRIversion *ddx_version, 692 + const __DRIversion *dri_version, 693 + const __DRIversion *drm_version, 694 + const __DRIframebuffer *frame_buffer, 695 + void *pSAREA, int fd, 696 + const __DRIextension **extensions, 697 + const __DRIconfig ***driver_configs, 698 + void *loaderPrivate); 699 + 700 + __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen, 701 + const __DRIconfig *config, 702 + drm_drawable_t hwDrawable, 703 + int renderType, const int *attrs, 704 + void *loaderPrivate); 705 + 706 + __DRIcontext *(*createNewContext)(__DRIscreen *screen, 707 + const __DRIconfig *config, 708 + int render_type, 709 + __DRIcontext *shared, 710 + drm_context_t hwContext, 711 + void *loaderPrivate); 712 + }; 713 + 714 + /** 715 + * This extension provides alternative screen, drawable and context 716 + * constructors for swrast DRI functionality. This is used in 717 + * conjunction with the core extension. 718 + */ 719 + #define __DRI_SWRAST "DRI_SWRast" 720 + #define __DRI_SWRAST_VERSION 4 721 + 722 + struct __DRIswrastExtensionRec { 723 + __DRIextension base; 724 + 725 + __DRIscreen *(*createNewScreen)(int screen, 726 + const __DRIextension **extensions, 727 + const __DRIconfig ***driver_configs, 728 + void *loaderPrivate); 729 + 730 + __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen, 731 + const __DRIconfig *config, 732 + void *loaderPrivate); 733 + 734 + /* Since version 2 */ 735 + __DRIcontext *(*createNewContextForAPI)(__DRIscreen *screen, 736 + int api, 737 + const __DRIconfig *config, 738 + __DRIcontext *shared, 739 + void *data); 740 + 741 + /** 742 + * Create a context for a particular API with a set of attributes 743 + * 744 + * \since version 3 745 + * 746 + * \sa __DRIdri2ExtensionRec::createContextAttribs 747 + */ 748 + __DRIcontext *(*createContextAttribs)(__DRIscreen *screen, 749 + int api, 750 + const __DRIconfig *config, 751 + __DRIcontext *shared, 752 + unsigned num_attribs, 753 + const uint32_t *attribs, 754 + unsigned *error, 755 + void *loaderPrivate); 756 + 757 + /** 758 + * createNewScreen() with the driver extensions passed in. 759 + * 760 + * \since version 4 761 + */ 762 + __DRIscreen *(*createNewScreen2)(int screen, 763 + const __DRIextension **loader_extensions, 764 + const __DRIextension **driver_extensions, 765 + const __DRIconfig ***driver_configs, 766 + void *loaderPrivate); 767 + 768 + }; 769 + 770 + /** Common DRI function definitions, shared among DRI2 and Image extensions 771 + */ 772 + 773 + typedef __DRIscreen * 774 + (*__DRIcreateNewScreen2Func)(int screen, int fd, 775 + const __DRIextension **extensions, 776 + const __DRIextension **driver_extensions, 777 + const __DRIconfig ***driver_configs, 778 + void *loaderPrivate); 779 + 780 + typedef __DRIdrawable * 781 + (*__DRIcreateNewDrawableFunc)(__DRIscreen *screen, 782 + const __DRIconfig *config, 783 + void *loaderPrivate); 784 + 785 + typedef __DRIcontext * 786 + (*__DRIcreateContextAttribsFunc)(__DRIscreen *screen, 787 + int api, 788 + const __DRIconfig *config, 789 + __DRIcontext *shared, 790 + unsigned num_attribs, 791 + const uint32_t *attribs, 792 + unsigned *error, 793 + void *loaderPrivate); 794 + 795 + typedef unsigned int 796 + (*__DRIgetAPIMaskFunc)(__DRIscreen *screen); 797 + 798 + /** 799 + * DRI2 Loader extension. 800 + */ 801 + #define __DRI_BUFFER_FRONT_LEFT 0 802 + #define __DRI_BUFFER_BACK_LEFT 1 803 + #define __DRI_BUFFER_FRONT_RIGHT 2 804 + #define __DRI_BUFFER_BACK_RIGHT 3 805 + #define __DRI_BUFFER_DEPTH 4 806 + #define __DRI_BUFFER_STENCIL 5 807 + #define __DRI_BUFFER_ACCUM 6 808 + #define __DRI_BUFFER_FAKE_FRONT_LEFT 7 809 + #define __DRI_BUFFER_FAKE_FRONT_RIGHT 8 810 + #define __DRI_BUFFER_DEPTH_STENCIL 9 /**< Only available with DRI2 1.1 */ 811 + #define __DRI_BUFFER_HIZ 10 812 + 813 + /* Inofficial and for internal use. Increase when adding a new buffer token. */ 814 + #define __DRI_BUFFER_COUNT 11 815 + 816 + struct __DRIbufferRec { 817 + unsigned int attachment; 818 + unsigned int name; 819 + unsigned int pitch; 820 + unsigned int cpp; 821 + unsigned int flags; 822 + }; 823 + 824 + #define __DRI_DRI2_LOADER "DRI_DRI2Loader" 825 + #define __DRI_DRI2_LOADER_VERSION 3 826 + struct __DRIdri2LoaderExtensionRec { 827 + __DRIextension base; 828 + 829 + __DRIbuffer *(*getBuffers)(__DRIdrawable *driDrawable, 830 + int *width, int *height, 831 + unsigned int *attachments, int count, 832 + int *out_count, void *loaderPrivate); 833 + 834 + /** 835 + * Flush pending front-buffer rendering 836 + * 837 + * Any rendering that has been performed to the 838 + * \c __DRI_BUFFER_FAKE_FRONT_LEFT will be flushed to the 839 + * \c __DRI_BUFFER_FRONT_LEFT. 840 + * 841 + * \param driDrawable Drawable whose front-buffer is to be flushed 842 + * \param loaderPrivate Loader's private data that was previously passed 843 + * into __DRIdri2ExtensionRec::createNewDrawable 844 + */ 845 + void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate); 846 + 847 + 848 + /** 849 + * Get list of buffers from the server 850 + * 851 + * Gets a list of buffer for the specified set of attachments. Unlike 852 + * \c ::getBuffers, this function takes a list of attachments paired with 853 + * opaque \c unsigned \c int value describing the format of the buffer. 854 + * It is the responsibility of the caller to know what the service that 855 + * allocates the buffers will expect to receive for the format. 856 + * 857 + * \param driDrawable Drawable whose buffers are being queried. 858 + * \param width Output where the width of the buffers is stored. 859 + * \param height Output where the height of the buffers is stored. 860 + * \param attachments List of pairs of attachment ID and opaque format 861 + * requested for the drawable. 862 + * \param count Number of attachment / format pairs stored in 863 + * \c attachments. 864 + * \param loaderPrivate Loader's private data that was previously passed 865 + * into __DRIdri2ExtensionRec::createNewDrawable. 866 + */ 867 + __DRIbuffer *(*getBuffersWithFormat)(__DRIdrawable *driDrawable, 868 + int *width, int *height, 869 + unsigned int *attachments, int count, 870 + int *out_count, void *loaderPrivate); 871 + }; 872 + 873 + /** 874 + * This extension provides alternative screen, drawable and context 875 + * constructors for DRI2. 876 + */ 877 + #define __DRI_DRI2 "DRI_DRI2" 878 + #define __DRI_DRI2_VERSION 4 879 + 880 + #define __DRI_API_OPENGL 0 /**< OpenGL compatibility profile */ 881 + #define __DRI_API_GLES 1 /**< OpenGL ES 1.x */ 882 + #define __DRI_API_GLES2 2 /**< OpenGL ES 2.x */ 883 + #define __DRI_API_OPENGL_CORE 3 /**< OpenGL 3.2+ core profile */ 884 + #define __DRI_API_GLES3 4 /**< OpenGL ES 3.x */ 885 + 886 + #define __DRI_CTX_ATTRIB_MAJOR_VERSION 0 887 + #define __DRI_CTX_ATTRIB_MINOR_VERSION 1 888 + #define __DRI_CTX_ATTRIB_FLAGS 2 889 + 890 + /** 891 + * \requires __DRI2_ROBUSTNESS. 892 + */ 893 + #define __DRI_CTX_ATTRIB_RESET_STRATEGY 3 894 + 895 + #define __DRI_CTX_FLAG_DEBUG 0x00000001 896 + #define __DRI_CTX_FLAG_FORWARD_COMPATIBLE 0x00000002 897 + 898 + /** 899 + * \requires __DRI2_ROBUSTNESS. 900 + */ 901 + #define __DRI_CTX_FLAG_ROBUST_BUFFER_ACCESS 0x00000004 902 + 903 + /** 904 + * \name Context reset strategies. 905 + */ 906 + /*@{*/ 907 + #define __DRI_CTX_RESET_NO_NOTIFICATION 0 908 + #define __DRI_CTX_RESET_LOSE_CONTEXT 1 909 + /*@}*/ 910 + 911 + /** 912 + * \name Reasons that __DRIdri2Extension::createContextAttribs might fail 913 + */ 914 + /*@{*/ 915 + /** Success! */ 916 + #define __DRI_CTX_ERROR_SUCCESS 0 917 + 918 + /** Memory allocation failure */ 919 + #define __DRI_CTX_ERROR_NO_MEMORY 1 920 + 921 + /** Client requested an API (e.g., OpenGL ES 2.0) that the driver can't do. */ 922 + #define __DRI_CTX_ERROR_BAD_API 2 923 + 924 + /** Client requested an API version that the driver can't do. */ 925 + #define __DRI_CTX_ERROR_BAD_VERSION 3 926 + 927 + /** Client requested a flag or combination of flags the driver can't do. */ 928 + #define __DRI_CTX_ERROR_BAD_FLAG 4 929 + 930 + /** Client requested an attribute the driver doesn't understand. */ 931 + #define __DRI_CTX_ERROR_UNKNOWN_ATTRIBUTE 5 932 + 933 + /** Client requested a flag the driver doesn't understand. */ 934 + #define __DRI_CTX_ERROR_UNKNOWN_FLAG 6 935 + /*@}*/ 936 + 937 + struct __DRIdri2ExtensionRec { 938 + __DRIextension base; 939 + 940 + __DRIscreen *(*createNewScreen)(int screen, int fd, 941 + const __DRIextension **extensions, 942 + const __DRIconfig ***driver_configs, 943 + void *loaderPrivate); 944 + 945 + __DRIcreateNewDrawableFunc createNewDrawable; 946 + __DRIcontext *(*createNewContext)(__DRIscreen *screen, 947 + const __DRIconfig *config, 948 + __DRIcontext *shared, 949 + void *loaderPrivate); 950 + 951 + /* Since version 2 */ 952 + __DRIgetAPIMaskFunc getAPIMask; 953 + 954 + __DRIcontext *(*createNewContextForAPI)(__DRIscreen *screen, 955 + int api, 956 + const __DRIconfig *config, 957 + __DRIcontext *shared, 958 + void *data); 959 + 960 + __DRIbuffer *(*allocateBuffer)(__DRIscreen *screen, 961 + unsigned int attachment, 962 + unsigned int format, 963 + int width, 964 + int height); 965 + void (*releaseBuffer)(__DRIscreen *screen, 966 + __DRIbuffer *buffer); 967 + 968 + /** 969 + * Create a context for a particular API with a set of attributes 970 + * 971 + * \since version 3 972 + * 973 + * \sa __DRIswrastExtensionRec::createContextAttribs 974 + */ 975 + __DRIcreateContextAttribsFunc createContextAttribs; 976 + 977 + /** 978 + * createNewScreen with the driver's extension list passed in. 979 + * 980 + * \since version 4 981 + */ 982 + __DRIcreateNewScreen2Func createNewScreen2; 983 + }; 984 + 985 + 986 + /** 987 + * This extension provides functionality to enable various EGLImage 988 + * extensions. 989 + */ 990 + #define __DRI_IMAGE "DRI_IMAGE" 991 + #define __DRI_IMAGE_VERSION 8 992 + 993 + /** 994 + * These formats correspond to the similarly named MESA_FORMAT_* 995 + * tokens, except in the native endian of the CPU. For example, on 996 + * little endian __DRI_IMAGE_FORMAT_XRGB8888 corresponds to 997 + * MESA_FORMAT_XRGB8888, but MESA_FORMAT_XRGB8888_REV on big endian. 998 + * 999 + * __DRI_IMAGE_FORMAT_NONE is for images that aren't directly usable 1000 + * by the driver (YUV planar formats) but serve as a base image for 1001 + * creating sub-images for the different planes within the image. 1002 + * 1003 + * R8, GR88 and NONE should not be used with createImageFormName or 1004 + * createImage, and are returned by query from sub images created with 1005 + * createImageFromNames (NONE, see above) and fromPlane (R8 & GR88). 1006 + */ 1007 + #define __DRI_IMAGE_FORMAT_RGB565 0x1001 1008 + #define __DRI_IMAGE_FORMAT_XRGB8888 0x1002 1009 + #define __DRI_IMAGE_FORMAT_ARGB8888 0x1003 1010 + #define __DRI_IMAGE_FORMAT_ABGR8888 0x1004 1011 + #define __DRI_IMAGE_FORMAT_XBGR8888 0x1005 1012 + #define __DRI_IMAGE_FORMAT_R8 0x1006 /* Since version 5 */ 1013 + #define __DRI_IMAGE_FORMAT_GR88 0x1007 1014 + #define __DRI_IMAGE_FORMAT_NONE 0x1008 1015 + #define __DRI_IMAGE_FORMAT_XRGB2101010 0x1009 1016 + #define __DRI_IMAGE_FORMAT_ARGB2101010 0x100a 1017 + #define __DRI_IMAGE_FORMAT_SARGB8 0x100b 1018 + 1019 + #define __DRI_IMAGE_USE_SHARE 0x0001 1020 + #define __DRI_IMAGE_USE_SCANOUT 0x0002 1021 + #define __DRI_IMAGE_USE_CURSOR 0x0004 /* Depricated */ 1022 + #define __DRI_IMAGE_USE_LINEAR 0x0008 1023 + 1024 + 1025 + /** 1026 + * Four CC formats that matches with WL_DRM_FORMAT_* from wayland_drm.h 1027 + * and GBM_FORMAT_* from gbm.h, used with createImageFromNames. 1028 + * 1029 + * \since 5 1030 + */ 1031 + 1032 + #define __DRI_IMAGE_FOURCC_RGB565 0x36314752 1033 + #define __DRI_IMAGE_FOURCC_ARGB8888 0x34325241 1034 + #define __DRI_IMAGE_FOURCC_XRGB8888 0x34325258 1035 + #define __DRI_IMAGE_FOURCC_ABGR8888 0x34324241 1036 + #define __DRI_IMAGE_FOURCC_XBGR8888 0x34324258 1037 + #define __DRI_IMAGE_FOURCC_YUV410 0x39565559 1038 + #define __DRI_IMAGE_FOURCC_YUV411 0x31315559 1039 + #define __DRI_IMAGE_FOURCC_YUV420 0x32315559 1040 + #define __DRI_IMAGE_FOURCC_YUV422 0x36315559 1041 + #define __DRI_IMAGE_FOURCC_YUV444 0x34325559 1042 + #define __DRI_IMAGE_FOURCC_NV12 0x3231564e 1043 + #define __DRI_IMAGE_FOURCC_NV16 0x3631564e 1044 + #define __DRI_IMAGE_FOURCC_YUYV 0x56595559 1045 + 1046 + 1047 + /** 1048 + * Queryable on images created by createImageFromNames. 1049 + * 1050 + * RGB and RGBA are may be usable directly as images but its still 1051 + * recommended to call fromPlanar with plane == 0. 1052 + * 1053 + * Y_U_V, Y_UV and Y_XUXV all requires call to fromPlanar to create 1054 + * usable sub-images, sampling from images return raw YUV data and 1055 + * color conversion needs to be done in the shader. 1056 + * 1057 + * \since 5 1058 + */ 1059 + 1060 + #define __DRI_IMAGE_COMPONENTS_RGB 0x3001 1061 + #define __DRI_IMAGE_COMPONENTS_RGBA 0x3002 1062 + #define __DRI_IMAGE_COMPONENTS_Y_U_V 0x3003 1063 + #define __DRI_IMAGE_COMPONENTS_Y_UV 0x3004 1064 + #define __DRI_IMAGE_COMPONENTS_Y_XUXV 0x3005 1065 + 1066 + 1067 + /** 1068 + * queryImage attributes 1069 + */ 1070 + 1071 + #define __DRI_IMAGE_ATTRIB_STRIDE 0x2000 1072 + #define __DRI_IMAGE_ATTRIB_HANDLE 0x2001 1073 + #define __DRI_IMAGE_ATTRIB_NAME 0x2002 1074 + #define __DRI_IMAGE_ATTRIB_FORMAT 0x2003 /* available in versions 3+ */ 1075 + #define __DRI_IMAGE_ATTRIB_WIDTH 0x2004 /* available in versions 4+ */ 1076 + #define __DRI_IMAGE_ATTRIB_HEIGHT 0x2005 1077 + #define __DRI_IMAGE_ATTRIB_COMPONENTS 0x2006 /* available in versions 5+ */ 1078 + #define __DRI_IMAGE_ATTRIB_FD 0x2007 /* available in versions 1079 + * 7+. Each query will return a 1080 + * new fd. */ 1081 + 1082 + enum __DRIYUVColorSpace { 1083 + __DRI_YUV_COLOR_SPACE_UNDEFINED = 0, 1084 + __DRI_YUV_COLOR_SPACE_ITU_REC601 = 0x327F, 1085 + __DRI_YUV_COLOR_SPACE_ITU_REC709 = 0x3280, 1086 + __DRI_YUV_COLOR_SPACE_ITU_REC2020 = 0x3281 1087 + }; 1088 + 1089 + enum __DRISampleRange { 1090 + __DRI_YUV_RANGE_UNDEFINED = 0, 1091 + __DRI_YUV_FULL_RANGE = 0x3282, 1092 + __DRI_YUV_NARROW_RANGE = 0x3283 1093 + }; 1094 + 1095 + enum __DRIChromaSiting { 1096 + __DRI_YUV_CHROMA_SITING_UNDEFINED = 0, 1097 + __DRI_YUV_CHROMA_SITING_0 = 0x3284, 1098 + __DRI_YUV_CHROMA_SITING_0_5 = 0x3285 1099 + }; 1100 + 1101 + /** 1102 + * \name Reasons that __DRIimageExtensionRec::createImageFromTexture might fail 1103 + */ 1104 + /*@{*/ 1105 + /** Success! */ 1106 + #define __DRI_IMAGE_ERROR_SUCCESS 0 1107 + 1108 + /** Memory allocation failure */ 1109 + #define __DRI_IMAGE_ERROR_BAD_ALLOC 1 1110 + 1111 + /** Client requested an invalid attribute for a texture object */ 1112 + #define __DRI_IMAGE_ERROR_BAD_MATCH 2 1113 + 1114 + /** Client requested an invalid texture object */ 1115 + #define __DRI_IMAGE_ERROR_BAD_PARAMETER 3 1116 + /*@}*/ 1117 + 1118 + typedef struct __DRIimageRec __DRIimage; 1119 + typedef struct __DRIimageExtensionRec __DRIimageExtension; 1120 + struct __DRIimageExtensionRec { 1121 + __DRIextension base; 1122 + 1123 + __DRIimage *(*createImageFromName)(__DRIscreen *screen, 1124 + int width, int height, int format, 1125 + int name, int pitch, 1126 + void *loaderPrivate); 1127 + 1128 + __DRIimage *(*createImageFromRenderbuffer)(__DRIcontext *context, 1129 + int renderbuffer, 1130 + void *loaderPrivate); 1131 + 1132 + void (*destroyImage)(__DRIimage *image); 1133 + 1134 + __DRIimage *(*createImage)(__DRIscreen *screen, 1135 + int width, int height, int format, 1136 + unsigned int use, 1137 + void *loaderPrivate); 1138 + 1139 + GLboolean (*queryImage)(__DRIimage *image, int attrib, int *value); 1140 + 1141 + /** 1142 + * The new __DRIimage will share the content with the old one, see dup(2). 1143 + */ 1144 + __DRIimage *(*dupImage)(__DRIimage *image, void *loaderPrivate); 1145 + 1146 + /** 1147 + * Validate that a __DRIimage can be used a certain way. 1148 + * 1149 + * \since 2 1150 + */ 1151 + GLboolean (*validateUsage)(__DRIimage *image, unsigned int use); 1152 + 1153 + /** 1154 + * Unlike createImageFromName __DRI_IMAGE_FORMAT is not but instead 1155 + * __DRI_IMAGE_FOURCC and strides are in bytes not pixels. Stride is 1156 + * also per block and not per pixel (for non-RGB, see gallium blocks). 1157 + * 1158 + * \since 5 1159 + */ 1160 + __DRIimage *(*createImageFromNames)(__DRIscreen *screen, 1161 + int width, int height, int fourcc, 1162 + int *names, int num_names, 1163 + int *strides, int *offsets, 1164 + void *loaderPrivate); 1165 + 1166 + /** 1167 + * Create an image out of a sub-region of a parent image. This 1168 + * entry point lets us create individual __DRIimages for different 1169 + * planes in a planar buffer (typically yuv), for example. While a 1170 + * sub-image shares the underlying buffer object with the parent 1171 + * image and other sibling sub-images, the life times of parent and 1172 + * sub-images are not dependent. Destroying the parent or a 1173 + * sub-image doesn't affect other images. The underlying buffer 1174 + * object is free when no __DRIimage remains that references it. 1175 + * 1176 + * Sub-images may overlap, but rendering to overlapping sub-images 1177 + * is undefined. 1178 + * 1179 + * \since 5 1180 + */ 1181 + __DRIimage *(*fromPlanar)(__DRIimage *image, int plane, 1182 + void *loaderPrivate); 1183 + 1184 + /** 1185 + * Create image from texture. 1186 + * 1187 + * \since 6 1188 + */ 1189 + __DRIimage *(*createImageFromTexture)(__DRIcontext *context, 1190 + int target, 1191 + unsigned texture, 1192 + int depth, 1193 + int level, 1194 + unsigned *error, 1195 + void *loaderPrivate); 1196 + /** 1197 + * Like createImageFromNames, but takes a prime fd instead. 1198 + * 1199 + * \since 7 1200 + */ 1201 + __DRIimage *(*createImageFromFds)(__DRIscreen *screen, 1202 + int width, int height, int fourcc, 1203 + int *fds, int num_fds, 1204 + int *strides, int *offsets, 1205 + void *loaderPrivate); 1206 + 1207 + /** 1208 + * Like createImageFromFds, but takes additional attributes. 1209 + * 1210 + * For EGL_EXT_image_dma_buf_import. 1211 + * 1212 + * \since 8 1213 + */ 1214 + __DRIimage *(*createImageFromDmaBufs)(__DRIscreen *screen, 1215 + int width, int height, int fourcc, 1216 + int *fds, int num_fds, 1217 + int *strides, int *offsets, 1218 + enum __DRIYUVColorSpace color_space, 1219 + enum __DRISampleRange sample_range, 1220 + enum __DRIChromaSiting horiz_siting, 1221 + enum __DRIChromaSiting vert_siting, 1222 + unsigned *error, 1223 + void *loaderPrivate); 1224 + }; 1225 + 1226 + 1227 + /** 1228 + * This extension must be implemented by the loader and passed to the 1229 + * driver at screen creation time. The EGLImage entry points in the 1230 + * various client APIs take opaque EGLImage handles and use this 1231 + * extension to map them to a __DRIimage. At version 1, this 1232 + * extensions allows mapping EGLImage pointers to __DRIimage pointers, 1233 + * but future versions could support other EGLImage-like, opaque types 1234 + * with new lookup functions. 1235 + */ 1236 + #define __DRI_IMAGE_LOOKUP "DRI_IMAGE_LOOKUP" 1237 + #define __DRI_IMAGE_LOOKUP_VERSION 1 1238 + 1239 + typedef struct __DRIimageLookupExtensionRec __DRIimageLookupExtension; 1240 + struct __DRIimageLookupExtensionRec { 1241 + __DRIextension base; 1242 + 1243 + __DRIimage *(*lookupEGLImage)(__DRIscreen *screen, void *image, 1244 + void *loaderPrivate); 1245 + }; 1246 + 1247 + /** 1248 + * This extension allows for common DRI2 options 1249 + */ 1250 + #define __DRI2_CONFIG_QUERY "DRI_CONFIG_QUERY" 1251 + #define __DRI2_CONFIG_QUERY_VERSION 1 1252 + 1253 + typedef struct __DRI2configQueryExtensionRec __DRI2configQueryExtension; 1254 + struct __DRI2configQueryExtensionRec { 1255 + __DRIextension base; 1256 + 1257 + int (*configQueryb)(__DRIscreen *screen, const char *var, GLboolean *val); 1258 + int (*configQueryi)(__DRIscreen *screen, const char *var, GLint *val); 1259 + int (*configQueryf)(__DRIscreen *screen, const char *var, GLfloat *val); 1260 + }; 1261 + 1262 + /** 1263 + * Robust context driver extension. 1264 + * 1265 + * Existence of this extension means the driver can accept the 1266 + * \c __DRI_CTX_FLAG_ROBUST_BUFFER_ACCESS flag and the 1267 + * \c __DRI_CTX_ATTRIB_RESET_STRATEGY attribute in 1268 + * \c __DRIdri2ExtensionRec::createContextAttribs. 1269 + */ 1270 + #define __DRI2_ROBUSTNESS "DRI_Robustness" 1271 + #define __DRI2_ROBUSTNESS_VERSION 1 1272 + 1273 + typedef struct __DRIrobustnessExtensionRec __DRIrobustnessExtension; 1274 + struct __DRIrobustnessExtensionRec { 1275 + __DRIextension base; 1276 + }; 1277 + 1278 + /** 1279 + * DRI config options extension. 1280 + * 1281 + * This extension provides the XML string containing driver options for use by 1282 + * the loader in supporting the driconf application. 1283 + */ 1284 + #define __DRI_CONFIG_OPTIONS "DRI_ConfigOptions" 1285 + #define __DRI_CONFIG_OPTIONS_VERSION 1 1286 + 1287 + typedef struct __DRIconfigOptionsExtensionRec { 1288 + __DRIextension base; 1289 + const char *xml; 1290 + } __DRIconfigOptionsExtension; 1291 + 1292 + /** 1293 + * This extension provides a driver vtable to a set of common driver helper 1294 + * functions (driCoreExtension, driDRI2Extension) within the driver 1295 + * implementation, as opposed to having to pass them through a global 1296 + * variable. 1297 + * 1298 + * It is not intended to be public API to the actual loader, and the vtable 1299 + * layout may change at any time. 1300 + */ 1301 + #define __DRI_DRIVER_VTABLE "DRI_DriverVtable" 1302 + #define __DRI_DRIVER_VTABLE_VERSION 1 1303 + 1304 + typedef struct __DRIDriverVtableExtensionRec { 1305 + __DRIextension base; 1306 + const struct __DriverAPIRec *vtable; 1307 + } __DRIDriverVtableExtension; 1308 + 1309 + /** 1310 + * Query renderer driver extension 1311 + * 1312 + * This allows the window system layer (either EGL or GLX) to query aspects of 1313 + * hardware and driver support without creating a context. 1314 + */ 1315 + #define __DRI2_RENDERER_QUERY "DRI_RENDERER_QUERY" 1316 + #define __DRI2_RENDERER_QUERY_VERSION 1 1317 + 1318 + #define __DRI2_RENDERER_VENDOR_ID 0x0000 1319 + #define __DRI2_RENDERER_DEVICE_ID 0x0001 1320 + #define __DRI2_RENDERER_VERSION 0x0002 1321 + #define __DRI2_RENDERER_ACCELERATED 0x0003 1322 + #define __DRI2_RENDERER_VIDEO_MEMORY 0x0004 1323 + #define __DRI2_RENDERER_UNIFIED_MEMORY_ARCHITECTURE 0x0005 1324 + #define __DRI2_RENDERER_PREFERRED_PROFILE 0x0006 1325 + #define __DRI2_RENDERER_OPENGL_CORE_PROFILE_VERSION 0x0007 1326 + #define __DRI2_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION 0x0008 1327 + #define __DRI2_RENDERER_OPENGL_ES_PROFILE_VERSION 0x0009 1328 + #define __DRI2_RENDERER_OPENGL_ES2_PROFILE_VERSION 0x000a 1329 + 1330 + typedef struct __DRI2rendererQueryExtensionRec __DRI2rendererQueryExtension; 1331 + struct __DRI2rendererQueryExtensionRec { 1332 + __DRIextension base; 1333 + 1334 + int (*queryInteger)(__DRIscreen *screen, int attribute, unsigned int *val); 1335 + int (*queryString)(__DRIscreen *screen, int attribute, const char **val); 1336 + }; 1337 + 1338 + /** 1339 + * Image Loader extension. Drivers use this to allocate color buffers 1340 + */ 1341 + 1342 + enum __DRIimageBufferMask { 1343 + __DRI_IMAGE_BUFFER_BACK = (1 << 0), 1344 + __DRI_IMAGE_BUFFER_FRONT = (1 << 1) 1345 + }; 1346 + 1347 + struct __DRIimageList { 1348 + uint32_t image_mask; 1349 + __DRIimage *back; 1350 + __DRIimage *front; 1351 + }; 1352 + 1353 + #define __DRI_IMAGE_LOADER "DRI_IMAGE_LOADER" 1354 + #define __DRI_IMAGE_LOADER_VERSION 1 1355 + 1356 + struct __DRIimageLoaderExtensionRec { 1357 + __DRIextension base; 1358 + 1359 + /** 1360 + * Allocate color buffers. 1361 + * 1362 + * \param driDrawable 1363 + * \param width Width of allocated buffers 1364 + * \param height Height of allocated buffers 1365 + * \param format one of __DRI_IMAGE_FORMAT_* 1366 + * \param stamp Address of variable to be updated when 1367 + * getBuffers must be called again 1368 + * \param loaderPrivate The loaderPrivate for driDrawable 1369 + * \param buffer_mask Set of buffers to allocate 1370 + * \param buffers Returned buffers 1371 + */ 1372 + int (*getBuffers)(__DRIdrawable *driDrawable, 1373 + unsigned int format, 1374 + uint32_t *stamp, 1375 + void *loaderPrivate, 1376 + uint32_t buffer_mask, 1377 + struct __DRIimageList *buffers); 1378 + 1379 + /** 1380 + * Flush pending front-buffer rendering 1381 + * 1382 + * Any rendering that has been performed to the 1383 + * fake front will be flushed to the front 1384 + * 1385 + * \param driDrawable Drawable whose front-buffer is to be flushed 1386 + * \param loaderPrivate Loader's private data that was previously passed 1387 + * into __DRIdri2ExtensionRec::createNewDrawable 1388 + */ 1389 + void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate); 1390 + }; 1391 + 1392 + /** 1393 + * DRI extension. 1394 + */ 1395 + 1396 + #define __DRI_IMAGE_DRIVER "DRI_IMAGE_DRIVER" 1397 + #define __DRI_IMAGE_DRIVER_VERSION 1 1398 + 1399 + struct __DRIimageDriverExtensionRec { 1400 + __DRIextension base; 1401 + 1402 + /* Common DRI functions, shared with DRI2 */ 1403 + __DRIcreateNewScreen2Func createNewScreen2; 1404 + __DRIcreateNewDrawableFunc createNewDrawable; 1405 + __DRIcreateContextAttribsFunc createContextAttribs; 1406 + __DRIgetAPIMaskFunc getAPIMask; 1407 + }; 1408 + 1409 + #endif
+46
pkgs/servers/x11/xorg/darwin/function-pointer-test.patch
···
··· 1 + These are functions, not function pointers, so they always evaluate to true. 2 + 3 + diff --git a/hw/xquartz/X11Controller.m b/hw/xquartz/X11Controller.m 4 + index 5445c6f..8574bf1 100644 5 + --- a/hw/xquartz/X11Controller.m 6 + +++ b/hw/xquartz/X11Controller.m 7 + @@ -364,7 +364,6 @@ extern char *bundle_id_prefix; 8 + } 9 + 10 + #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 11 + - if (asl_log_descriptor) { 12 + char *asl_sender; 13 + aslmsg amsg = asl_new(ASL_TYPE_MSG); 14 + assert(amsg); 15 + @@ -394,7 +393,6 @@ extern char *bundle_id_prefix; 16 + asl_log_descriptor(aslc, amsg, ASL_LEVEL_NOTICE, stderr_pipe[0], ASL_LOG_DESCRIPTOR_READ); 17 + 18 + asl_free(amsg); 19 + - } 20 + #endif 21 + 22 + /* Do the fork-twice trick to avoid having to reap zombies */ 23 + @@ -414,11 +412,9 @@ extern char *bundle_id_prefix; 24 + 25 + case 0: /* child2 */ 26 + #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 27 + - if (asl_log_descriptor) { 28 + /* Replace our stdout/stderr */ 29 + dup2(stdout_pipe[1], STDOUT_FILENO); 30 + dup2(stderr_pipe[1], STDERR_FILENO); 31 + - } 32 + #endif 33 + 34 + /* close all open files except for standard streams */ 35 + @@ -443,11 +439,9 @@ extern char *bundle_id_prefix; 36 + } 37 + 38 + #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 39 + - if (asl_log_descriptor) { 40 + /* Close the write ends of the pipe */ 41 + close(stdout_pipe[1]); 42 + close(stderr_pipe[1]); 43 + - } 44 + #endif 45 + } 46 +
+12
pkgs/servers/x11/xorg/darwin/private-extern.patch
···
··· 1 + diff --git a/hw/xquartz/xpr/x-list.new.h b/hw/xquartz/xpr/x-list.h 2 + index 28385fd..71f9d26 100644 3 + --- a/hw/xquartz/xpr/x-list.new.h 4 + +++ b/hw/xquartz/xpr/x-list.h 5 + @@ -45,6 +45,7 @@ struct x_list_struct { 6 + #endif 7 + 8 + #ifndef X_EXTERN 9 + +#define __private_extern__ extern 10 + #define X_EXTERN __private_extern__ 11 + #endif 12 +
+80
pkgs/servers/x11/xorg/darwin/stub.patch
···
··· 1 + cstrahan: 2 + 3 + When the X / Xquartz server initiallizes, it starts the XQuartz.app and 4 + hands-off the display FD. To start the XQuartz.app, Xquartz normally uses some 5 + system calls to get the path of the application by app bundle id, and then 6 + executes the Contents/MacOS/X11 script contained inside, which in turn executes 7 + Contents/MacOS/X11.bin (the actual app). 8 + 9 + This patch replaces that discovery technique with a simple call to 10 + `getenv'. In order to make Xquartz actually work, we'll need another wrapper 11 + that sets the `XQUARTZ_X11' environment variable to point to the `X11' script. 12 + 13 + diff --git a/hw/xquartz/mach-startup/stub.c b/hw/xquartz/mach-startup/stub.c 14 + index 756e4ef..3313a55 100644 15 + --- a/hw/xquartz/mach-startup/stub.c 16 + +++ b/hw/xquartz/mach-startup/stub.c 17 + @@ -61,54 +61,16 @@ aslclient aslc; 18 + static void 19 + set_x11_path(void) 20 + { 21 + -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 22 + - 23 + - CFURLRef appURL = NULL; 24 + - OSStatus osstatus = 25 + - LSFindApplicationForInfo(kLSUnknownCreator, CFSTR( 26 + - kX11AppBundleId), nil, nil, &appURL); 27 + - 28 + - switch (osstatus) { 29 + - case noErr: 30 + - if (appURL == NULL) { 31 + - asl_log( 32 + - aslc, NULL, ASL_LEVEL_ERR, 33 + - "Xquartz: Invalid response from LSFindApplicationForInfo(%s)", 34 + - kX11AppBundleId); 35 + - exit(1); 36 + - } 37 + - 38 + - if (!CFURLGetFileSystemRepresentation(appURL, true, 39 + - (unsigned char *)x11_path, 40 + - sizeof(x11_path))) { 41 + - asl_log(aslc, NULL, ASL_LEVEL_ERR, 42 + - "Xquartz: Error resolving URL for %s", 43 + - kX11AppBundleId); 44 + - exit(3); 45 + - } 46 + - 47 + - strlcat(x11_path, kX11AppBundlePath, sizeof(x11_path)); 48 + - asl_log(aslc, NULL, ASL_LEVEL_INFO, "Xquartz: X11.app = %s", x11_path); 49 + - break; 50 + - 51 + - case kLSApplicationNotFoundErr: 52 + - asl_log(aslc, NULL, ASL_LEVEL_ERR, 53 + - "Xquartz: Unable to find application for %s", 54 + - kX11AppBundleId); 55 + - exit(10); 56 + - 57 + - default: 58 + - asl_log(aslc, NULL, ASL_LEVEL_ERR, 59 + - "Xquartz: Unable to find application for %s, error code = %d", 60 + - kX11AppBundleId, 61 + - (int)osstatus); 62 + - exit(11); 63 + + char *xquartzX11 = getenv("XQUARTZ_X11"); 64 + + if (xquartzX11) { 65 + + strlcpy(x11_path, xquartzX11, 66 + + sizeof(x11_path)); 67 + + } else { 68 + + asl_log( 69 + + aslc, NULL, ASL_LEVEL_ERR, 70 + + "Xquartz: XQUARTZ_X11 environment variable not set"); 71 + + exit(1); 72 + } 73 + -#else 74 + - /* TODO: Make Tiger smarter... but TBH, this should never get called on Tiger... */ 75 + - strlcpy(x11_path, "/Applications/Utilities/X11.app/Contents/MacOS/X11", 76 + - sizeof(x11_path)); 77 + -#endif 78 + } 79 + 80 + static int
+442 -422
pkgs/servers/x11/xorg/default.nix
··· 3 4 let 5 6 overrides = import ./overrides.nix {inherit args xorg;}; 7 8 xorg = rec { 9 10 inherit pixman; 11 12 - applewmproto = (stdenv.mkDerivation ((if overrides ? applewmproto then overrides.applewmproto else x: x) { 13 name = "applewmproto-1.4.2"; 14 builder = ./builder.sh; 15 src = fetchurl { ··· 17 sha256 = "1zi4p07mp6jmk030p4gmglwxcwp0lzs5mi31y1b4rp8lsqxdxizw"; 18 }; 19 buildInputs = [pkgconfig ]; 20 - })) // {inherit ;}; 21 22 - bdftopcf = (stdenv.mkDerivation ((if overrides ? bdftopcf then overrides.bdftopcf else x: x) { 23 name = "bdftopcf-1.0.4"; 24 builder = ./builder.sh; 25 src = fetchurl { ··· 27 sha256 = "1617zmgnx50n7vxlqyj84fl7vnk813jjqmi6jpigyz1xp9br1xga"; 28 }; 29 buildInputs = [pkgconfig libXfont ]; 30 - })) // {inherit libXfont ;}; 31 32 - bigreqsproto = (stdenv.mkDerivation ((if overrides ? bigreqsproto then overrides.bigreqsproto else x: x) { 33 name = "bigreqsproto-1.1.2"; 34 builder = ./builder.sh; 35 src = fetchurl { ··· 37 sha256 = "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"; 38 }; 39 buildInputs = [pkgconfig ]; 40 - })) // {inherit ;}; 41 42 - compositeproto = (stdenv.mkDerivation ((if overrides ? compositeproto then overrides.compositeproto else x: x) { 43 name = "compositeproto-0.4.2"; 44 builder = ./builder.sh; 45 src = fetchurl { ··· 47 sha256 = "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"; 48 }; 49 buildInputs = [pkgconfig ]; 50 - })) // {inherit ;}; 51 52 - damageproto = (stdenv.mkDerivation ((if overrides ? damageproto then overrides.damageproto else x: x) { 53 name = "damageproto-1.2.1"; 54 builder = ./builder.sh; 55 src = fetchurl { ··· 57 sha256 = "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"; 58 }; 59 buildInputs = [pkgconfig ]; 60 - })) // {inherit ;}; 61 62 - dmxproto = (stdenv.mkDerivation ((if overrides ? dmxproto then overrides.dmxproto else x: x) { 63 name = "dmxproto-2.3.1"; 64 builder = ./builder.sh; 65 src = fetchurl { ··· 67 sha256 = "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"; 68 }; 69 buildInputs = [pkgconfig ]; 70 - })) // {inherit ;}; 71 72 - dri2proto = (stdenv.mkDerivation ((if overrides ? dri2proto then overrides.dri2proto else x: x) { 73 name = "dri2proto-2.8"; 74 builder = ./builder.sh; 75 src = fetchurl { ··· 77 sha256 = "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"; 78 }; 79 buildInputs = [pkgconfig ]; 80 - })) // {inherit ;}; 81 82 - dri3proto = (stdenv.mkDerivation ((if overrides ? dri3proto then overrides.dri3proto else x: x) { 83 name = "dri3proto-1.0"; 84 builder = ./builder.sh; 85 src = fetchurl { ··· 87 sha256 = "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"; 88 }; 89 buildInputs = [pkgconfig ]; 90 - })) // {inherit ;}; 91 92 - encodings = (stdenv.mkDerivation ((if overrides ? encodings then overrides.encodings else x: x) { 93 name = "encodings-1.0.4"; 94 builder = ./builder.sh; 95 src = fetchurl { ··· 97 sha256 = "0ffmaw80vmfwdgvdkp6495xgsqszb6s0iira5j0j6pd4i0lk3mnf"; 98 }; 99 buildInputs = [pkgconfig ]; 100 - })) // {inherit ;}; 101 102 - fixesproto = (stdenv.mkDerivation ((if overrides ? fixesproto then overrides.fixesproto else x: x) { 103 name = "fixesproto-5.0"; 104 builder = ./builder.sh; 105 src = fetchurl { ··· 107 sha256 = "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"; 108 }; 109 buildInputs = [pkgconfig xextproto ]; 110 - })) // {inherit xextproto ;}; 111 112 - fontadobe100dpi = (stdenv.mkDerivation ((if overrides ? fontadobe100dpi then overrides.fontadobe100dpi else x: x) { 113 name = "font-adobe-100dpi-1.0.3"; 114 builder = ./builder.sh; 115 src = fetchurl { ··· 117 sha256 = "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"; 118 }; 119 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 120 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 121 122 - fontadobe75dpi = (stdenv.mkDerivation ((if overrides ? fontadobe75dpi then overrides.fontadobe75dpi else x: x) { 123 name = "font-adobe-75dpi-1.0.3"; 124 builder = ./builder.sh; 125 src = fetchurl { ··· 127 sha256 = "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"; 128 }; 129 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 130 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 131 132 - fontadobeutopia100dpi = (stdenv.mkDerivation ((if overrides ? fontadobeutopia100dpi then overrides.fontadobeutopia100dpi else x: x) { 133 name = "font-adobe-utopia-100dpi-1.0.4"; 134 builder = ./builder.sh; 135 src = fetchurl { ··· 137 sha256 = "19dd9znam1ah72jmdh7i6ny2ss2r6m21z9v0l43xvikw48zmwvyi"; 138 }; 139 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 140 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 141 142 - fontadobeutopia75dpi = (stdenv.mkDerivation ((if overrides ? fontadobeutopia75dpi then overrides.fontadobeutopia75dpi else x: x) { 143 name = "font-adobe-utopia-75dpi-1.0.4"; 144 builder = ./builder.sh; 145 src = fetchurl { ··· 147 sha256 = "152wigpph5wvl4k9m3l4mchxxisgsnzlx033mn5iqrpkc6f72cl7"; 148 }; 149 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 150 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 151 152 - fontadobeutopiatype1 = (stdenv.mkDerivation ((if overrides ? fontadobeutopiatype1 then overrides.fontadobeutopiatype1 else x: x) { 153 name = "font-adobe-utopia-type1-1.0.4"; 154 builder = ./builder.sh; 155 src = fetchurl { ··· 157 sha256 = "0xw0pdnzj5jljsbbhakc6q9ha2qnca1jr81zk7w70yl9bw83b54p"; 158 }; 159 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 160 - })) // {inherit mkfontdir mkfontscale ;}; 161 162 - fontalias = (stdenv.mkDerivation ((if overrides ? fontalias then overrides.fontalias else x: x) { 163 name = "font-alias-1.0.3"; 164 builder = ./builder.sh; 165 src = fetchurl { ··· 167 sha256 = "16ic8wfwwr3jicaml7b5a0sk6plcgc1kg84w02881yhwmqm3nicb"; 168 }; 169 buildInputs = [pkgconfig ]; 170 - })) // {inherit ;}; 171 172 - fontarabicmisc = (stdenv.mkDerivation ((if overrides ? fontarabicmisc then overrides.fontarabicmisc else x: x) { 173 name = "font-arabic-misc-1.0.3"; 174 builder = ./builder.sh; 175 src = fetchurl { ··· 177 sha256 = "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"; 178 }; 179 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 180 - })) // {inherit bdftopcf mkfontdir ;}; 181 182 - fontbh100dpi = (stdenv.mkDerivation ((if overrides ? fontbh100dpi then overrides.fontbh100dpi else x: x) { 183 name = "font-bh-100dpi-1.0.3"; 184 builder = ./builder.sh; 185 src = fetchurl { ··· 187 sha256 = "10cl4gm38dw68jzln99ijix730y7cbx8np096gmpjjwff1i73h13"; 188 }; 189 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 190 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 191 192 - fontbh75dpi = (stdenv.mkDerivation ((if overrides ? fontbh75dpi then overrides.fontbh75dpi else x: x) { 193 name = "font-bh-75dpi-1.0.3"; 194 builder = ./builder.sh; 195 src = fetchurl { ··· 197 sha256 = "073jmhf0sr2j1l8da97pzsqj805f7mf9r2gy92j4diljmi8sm1il"; 198 }; 199 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 200 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 201 202 - fontbhlucidatypewriter100dpi = (stdenv.mkDerivation ((if overrides ? fontbhlucidatypewriter100dpi then overrides.fontbhlucidatypewriter100dpi else x: x) { 203 name = "font-bh-lucidatypewriter-100dpi-1.0.3"; 204 builder = ./builder.sh; 205 src = fetchurl { ··· 207 sha256 = "1fqzckxdzjv4802iad2fdrkpaxl4w0hhs9lxlkyraq2kq9ik7a32"; 208 }; 209 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 210 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 211 212 - fontbhlucidatypewriter75dpi = (stdenv.mkDerivation ((if overrides ? fontbhlucidatypewriter75dpi then overrides.fontbhlucidatypewriter75dpi else x: x) { 213 name = "font-bh-lucidatypewriter-75dpi-1.0.3"; 214 builder = ./builder.sh; 215 src = fetchurl { ··· 217 sha256 = "0cfbxdp5m12cm7jsh3my0lym9328cgm7fa9faz2hqj05wbxnmhaa"; 218 }; 219 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 220 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 221 222 - fontbhttf = (stdenv.mkDerivation ((if overrides ? fontbhttf then overrides.fontbhttf else x: x) { 223 name = "font-bh-ttf-1.0.3"; 224 builder = ./builder.sh; 225 src = fetchurl { ··· 227 sha256 = "0pyjmc0ha288d4i4j0si4dh3ncf3jiwwjljvddrb0k8v4xiyljqv"; 228 }; 229 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 230 - })) // {inherit mkfontdir mkfontscale ;}; 231 232 - fontbhtype1 = (stdenv.mkDerivation ((if overrides ? fontbhtype1 then overrides.fontbhtype1 else x: x) { 233 name = "font-bh-type1-1.0.3"; 234 builder = ./builder.sh; 235 src = fetchurl { ··· 237 sha256 = "1hb3iav089albp4sdgnlh50k47cdjif9p4axm0kkjvs8jyi5a53n"; 238 }; 239 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 240 - })) // {inherit mkfontdir mkfontscale ;}; 241 242 - fontbitstream100dpi = (stdenv.mkDerivation ((if overrides ? fontbitstream100dpi then overrides.fontbitstream100dpi else x: x) { 243 name = "font-bitstream-100dpi-1.0.3"; 244 builder = ./builder.sh; 245 src = fetchurl { ··· 247 sha256 = "1kmn9jbck3vghz6rj3bhc3h0w6gh0qiaqm90cjkqsz1x9r2dgq7b"; 248 }; 249 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 250 - })) // {inherit bdftopcf mkfontdir ;}; 251 252 - fontbitstream75dpi = (stdenv.mkDerivation ((if overrides ? fontbitstream75dpi then overrides.fontbitstream75dpi else x: x) { 253 name = "font-bitstream-75dpi-1.0.3"; 254 builder = ./builder.sh; 255 src = fetchurl { ··· 257 sha256 = "13plbifkvfvdfym6gjbgy9wx2xbdxi9hfrl1k22xayy02135wgxs"; 258 }; 259 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 260 - })) // {inherit bdftopcf mkfontdir ;}; 261 262 - fontbitstreamtype1 = (stdenv.mkDerivation ((if overrides ? fontbitstreamtype1 then overrides.fontbitstreamtype1 else x: x) { 263 name = "font-bitstream-type1-1.0.3"; 264 builder = ./builder.sh; 265 src = fetchurl { ··· 267 sha256 = "1256z0jhcf5gbh1d03593qdwnag708rxqa032izmfb5dmmlhbsn6"; 268 }; 269 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 270 - })) // {inherit mkfontdir mkfontscale ;}; 271 272 - fontcronyxcyrillic = (stdenv.mkDerivation ((if overrides ? fontcronyxcyrillic then overrides.fontcronyxcyrillic else x: x) { 273 name = "font-cronyx-cyrillic-1.0.3"; 274 builder = ./builder.sh; 275 src = fetchurl { ··· 277 sha256 = "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"; 278 }; 279 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 280 - })) // {inherit bdftopcf mkfontdir ;}; 281 282 - fontcursormisc = (stdenv.mkDerivation ((if overrides ? fontcursormisc then overrides.fontcursormisc else x: x) { 283 name = "font-cursor-misc-1.0.3"; 284 builder = ./builder.sh; 285 src = fetchurl { ··· 287 sha256 = "0dd6vfiagjc4zmvlskrbjz85jfqhf060cpys8j0y1qpcbsrkwdhp"; 288 }; 289 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 290 - })) // {inherit bdftopcf mkfontdir ;}; 291 292 - fontdaewoomisc = (stdenv.mkDerivation ((if overrides ? fontdaewoomisc then overrides.fontdaewoomisc else x: x) { 293 name = "font-daewoo-misc-1.0.3"; 294 builder = ./builder.sh; 295 src = fetchurl { ··· 297 sha256 = "1s2bbhizzgbbbn5wqs3vw53n619cclxksljvm759h9p1prqdwrdw"; 298 }; 299 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 300 - })) // {inherit bdftopcf mkfontdir ;}; 301 302 - fontdecmisc = (stdenv.mkDerivation ((if overrides ? fontdecmisc then overrides.fontdecmisc else x: x) { 303 name = "font-dec-misc-1.0.3"; 304 builder = ./builder.sh; 305 src = fetchurl { ··· 307 sha256 = "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"; 308 }; 309 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 310 - })) // {inherit bdftopcf mkfontdir ;}; 311 312 - fontibmtype1 = (stdenv.mkDerivation ((if overrides ? fontibmtype1 then overrides.fontibmtype1 else x: x) { 313 name = "font-ibm-type1-1.0.3"; 314 builder = ./builder.sh; 315 src = fetchurl { ··· 317 sha256 = "1pyjll4adch3z5cg663s6vhi02k8m6488f0mrasg81ssvg9jinzx"; 318 }; 319 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 320 - })) // {inherit mkfontdir mkfontscale ;}; 321 322 - fontisasmisc = (stdenv.mkDerivation ((if overrides ? fontisasmisc then overrides.fontisasmisc else x: x) { 323 name = "font-isas-misc-1.0.3"; 324 builder = ./builder.sh; 325 src = fetchurl { ··· 327 sha256 = "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"; 328 }; 329 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 330 - })) // {inherit bdftopcf mkfontdir ;}; 331 332 - fontjismisc = (stdenv.mkDerivation ((if overrides ? fontjismisc then overrides.fontjismisc else x: x) { 333 name = "font-jis-misc-1.0.3"; 334 builder = ./builder.sh; 335 src = fetchurl { ··· 337 sha256 = "0rdc3xdz12pnv951538q6wilx8mrdndpkphpbblszsv7nc8cw61b"; 338 }; 339 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 340 - })) // {inherit bdftopcf mkfontdir ;}; 341 342 - fontmicromisc = (stdenv.mkDerivation ((if overrides ? fontmicromisc then overrides.fontmicromisc else x: x) { 343 name = "font-micro-misc-1.0.3"; 344 builder = ./builder.sh; 345 src = fetchurl { ··· 347 sha256 = "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"; 348 }; 349 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 350 - })) // {inherit bdftopcf mkfontdir ;}; 351 352 - fontmisccyrillic = (stdenv.mkDerivation ((if overrides ? fontmisccyrillic then overrides.fontmisccyrillic else x: x) { 353 name = "font-misc-cyrillic-1.0.3"; 354 builder = ./builder.sh; 355 src = fetchurl { ··· 357 sha256 = "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"; 358 }; 359 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 360 - })) // {inherit bdftopcf mkfontdir ;}; 361 362 - fontmiscethiopic = (stdenv.mkDerivation ((if overrides ? fontmiscethiopic then overrides.fontmiscethiopic else x: x) { 363 name = "font-misc-ethiopic-1.0.3"; 364 builder = ./builder.sh; 365 src = fetchurl { ··· 367 sha256 = "19cq7iq0pfad0nc2v28n681fdq3fcw1l1hzaq0wpkgpx7bc1zjsk"; 368 }; 369 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 370 - })) // {inherit mkfontdir mkfontscale ;}; 371 372 - fontmiscmeltho = (stdenv.mkDerivation ((if overrides ? fontmiscmeltho then overrides.fontmiscmeltho else x: x) { 373 name = "font-misc-meltho-1.0.3"; 374 builder = ./builder.sh; 375 src = fetchurl { ··· 377 sha256 = "148793fqwzrc3bmh2vlw5fdiwjc2n7vs25cic35gfp452czk489p"; 378 }; 379 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 380 - })) // {inherit mkfontdir mkfontscale ;}; 381 382 - fontmiscmisc = (stdenv.mkDerivation ((if overrides ? fontmiscmisc then overrides.fontmiscmisc else x: x) { 383 name = "font-misc-misc-1.1.2"; 384 builder = ./builder.sh; 385 src = fetchurl { ··· 387 sha256 = "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"; 388 }; 389 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 390 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 391 392 - fontmuttmisc = (stdenv.mkDerivation ((if overrides ? fontmuttmisc then overrides.fontmuttmisc else x: x) { 393 name = "font-mutt-misc-1.0.3"; 394 builder = ./builder.sh; 395 src = fetchurl { ··· 397 sha256 = "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"; 398 }; 399 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 400 - })) // {inherit bdftopcf mkfontdir ;}; 401 402 - fontschumachermisc = (stdenv.mkDerivation ((if overrides ? fontschumachermisc then overrides.fontschumachermisc else x: x) { 403 name = "font-schumacher-misc-1.1.2"; 404 builder = ./builder.sh; 405 src = fetchurl { ··· 407 sha256 = "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"; 408 }; 409 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 410 - })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 411 412 - fontscreencyrillic = (stdenv.mkDerivation ((if overrides ? fontscreencyrillic then overrides.fontscreencyrillic else x: x) { 413 name = "font-screen-cyrillic-1.0.4"; 414 builder = ./builder.sh; 415 src = fetchurl { ··· 417 sha256 = "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"; 418 }; 419 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 420 - })) // {inherit bdftopcf mkfontdir ;}; 421 422 - fontsonymisc = (stdenv.mkDerivation ((if overrides ? fontsonymisc then overrides.fontsonymisc else x: x) { 423 name = "font-sony-misc-1.0.3"; 424 builder = ./builder.sh; 425 src = fetchurl { ··· 427 sha256 = "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"; 428 }; 429 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 430 - })) // {inherit bdftopcf mkfontdir ;}; 431 432 - fontsproto = (stdenv.mkDerivation ((if overrides ? fontsproto then overrides.fontsproto else x: x) { 433 name = "fontsproto-2.1.2"; 434 builder = ./builder.sh; 435 src = fetchurl { ··· 437 sha256 = "1ab8mbqxdwvdz4k5x4xb9c4n5w7i1xw276cbpk4z7a1nlpjrg746"; 438 }; 439 buildInputs = [pkgconfig ]; 440 - })) // {inherit ;}; 441 442 - fontsunmisc = (stdenv.mkDerivation ((if overrides ? fontsunmisc then overrides.fontsunmisc else x: x) { 443 name = "font-sun-misc-1.0.3"; 444 builder = ./builder.sh; 445 src = fetchurl { ··· 447 sha256 = "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"; 448 }; 449 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 450 - })) // {inherit bdftopcf mkfontdir ;}; 451 452 - fontutil = (stdenv.mkDerivation ((if overrides ? fontutil then overrides.fontutil else x: x) { 453 name = "font-util-1.3.0"; 454 builder = ./builder.sh; 455 src = fetchurl { ··· 457 sha256 = "15cijajwhjzpy3ydc817zz8x5z4gbkyv3fps687jbq544mbfbafz"; 458 }; 459 buildInputs = [pkgconfig ]; 460 - })) // {inherit ;}; 461 462 - fontwinitzkicyrillic = (stdenv.mkDerivation ((if overrides ? fontwinitzkicyrillic then overrides.fontwinitzkicyrillic else x: x) { 463 name = "font-winitzki-cyrillic-1.0.3"; 464 builder = ./builder.sh; 465 src = fetchurl { ··· 467 sha256 = "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"; 468 }; 469 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 470 - })) // {inherit bdftopcf mkfontdir ;}; 471 472 - fontxfree86type1 = (stdenv.mkDerivation ((if overrides ? fontxfree86type1 then overrides.fontxfree86type1 else x: x) { 473 name = "font-xfree86-type1-1.0.4"; 474 builder = ./builder.sh; 475 src = fetchurl { ··· 477 sha256 = "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"; 478 }; 479 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 480 - })) // {inherit mkfontdir mkfontscale ;}; 481 482 - gccmakedep = (stdenv.mkDerivation ((if overrides ? gccmakedep then overrides.gccmakedep else x: x) { 483 name = "gccmakedep-1.0.3"; 484 builder = ./builder.sh; 485 src = fetchurl { ··· 487 sha256 = "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"; 488 }; 489 buildInputs = [pkgconfig ]; 490 - })) // {inherit ;}; 491 492 - glamoregl = (stdenv.mkDerivation ((if overrides ? glamoregl then overrides.glamoregl else x: x) { 493 name = "glamor-egl-0.6.0"; 494 builder = ./builder.sh; 495 src = fetchurl { ··· 497 sha256 = "1jg5clihklb9drh1jd7nhhdsszla6nv7xmbvm8yvakh5wrb1nlv6"; 498 }; 499 buildInputs = [pkgconfig dri2proto xorgserver ]; 500 - })) // {inherit dri2proto xorgserver ;}; 501 502 - glproto = (stdenv.mkDerivation ((if overrides ? glproto then overrides.glproto else x: x) { 503 name = "glproto-1.4.17"; 504 builder = ./builder.sh; 505 src = fetchurl { ··· 507 sha256 = "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"; 508 }; 509 buildInputs = [pkgconfig ]; 510 - })) // {inherit ;}; 511 512 - iceauth = (stdenv.mkDerivation ((if overrides ? iceauth then overrides.iceauth else x: x) { 513 name = "iceauth-1.0.6"; 514 builder = ./builder.sh; 515 src = fetchurl { ··· 517 sha256 = "1x72y99dxf2fxnlyf0yrf9yzd8xzimxshy6l8mprwhrv6lvhi6dx"; 518 }; 519 buildInputs = [pkgconfig libICE xproto ]; 520 - })) // {inherit libICE xproto ;}; 521 522 - imake = (stdenv.mkDerivation ((if overrides ? imake then overrides.imake else x: x) { 523 name = "imake-1.0.7"; 524 builder = ./builder.sh; 525 src = fetchurl { ··· 527 sha256 = "0zpk8p044jh14bis838shbf4100bjg7mccd7bq54glpsq552q339"; 528 }; 529 buildInputs = [pkgconfig xproto ]; 530 - })) // {inherit xproto ;}; 531 532 - inputproto = (stdenv.mkDerivation ((if overrides ? inputproto then overrides.inputproto else x: x) { 533 name = "inputproto-2.3.1"; 534 builder = ./builder.sh; 535 src = fetchurl { ··· 537 sha256 = "1lf1jlxp0fc8h6fjdffhd084dqab94966l1zm3rwwsis0mifwiss"; 538 }; 539 buildInputs = [pkgconfig ]; 540 - })) // {inherit ;}; 541 542 - kbproto = (stdenv.mkDerivation ((if overrides ? kbproto then overrides.kbproto else x: x) { 543 name = "kbproto-1.0.6"; 544 builder = ./builder.sh; 545 src = fetchurl { ··· 547 sha256 = "0yal11hhpiisy3w8wmacsdzzzcnc3xwnswxz8k7zri40xc5aqz03"; 548 }; 549 buildInputs = [pkgconfig ]; 550 - })) // {inherit ;}; 551 552 - libAppleWM = (stdenv.mkDerivation ((if overrides ? libAppleWM then overrides.libAppleWM else x: x) { 553 name = "libAppleWM-1.4.1"; 554 builder = ./builder.sh; 555 src = fetchurl { ··· 557 sha256 = "0r8x28n45q89x91mz8mv0zkkcxi8wazkac886fyvflhiv2y8ap2y"; 558 }; 559 buildInputs = [pkgconfig applewmproto libX11 libXext xextproto ]; 560 - })) // {inherit applewmproto libX11 libXext xextproto ;}; 561 562 - libFS = (stdenv.mkDerivation ((if overrides ? libFS then overrides.libFS else x: x) { 563 name = "libFS-1.0.6"; 564 builder = ./builder.sh; 565 src = fetchurl { ··· 567 sha256 = "1mxfsvj9m3pn8cdkcn4kg190zp665mf4pv0083g6xykvsgxzq1wh"; 568 }; 569 buildInputs = [pkgconfig fontsproto xproto xtrans ]; 570 - })) // {inherit fontsproto xproto xtrans ;}; 571 572 - libICE = (stdenv.mkDerivation ((if overrides ? libICE then overrides.libICE else x: x) { 573 name = "libICE-1.0.9"; 574 builder = ./builder.sh; 575 src = fetchurl { ··· 577 sha256 = "00p2b6bsg6kcdbb39bv46339qcywxfl4hsrz8asm4hy6q7r34w4g"; 578 }; 579 buildInputs = [pkgconfig xproto xtrans ]; 580 - })) // {inherit xproto xtrans ;}; 581 582 - libSM = (stdenv.mkDerivation ((if overrides ? libSM then overrides.libSM else x: x) { 583 name = "libSM-1.2.2"; 584 builder = ./builder.sh; 585 src = fetchurl { ··· 587 sha256 = "1gc7wavgs435g9qkp9jw4lhmaiq6ip9llv49f054ad6ryp4sib0b"; 588 }; 589 buildInputs = [pkgconfig libICE libuuid xproto xtrans ]; 590 - })) // {inherit libICE libuuid xproto xtrans ;}; 591 592 - libWindowsWM = (stdenv.mkDerivation ((if overrides ? libWindowsWM then overrides.libWindowsWM else x: x) { 593 name = "libWindowsWM-1.0.1"; 594 builder = ./builder.sh; 595 src = fetchurl { ··· 597 sha256 = "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"; 598 }; 599 buildInputs = [pkgconfig windowswmproto libX11 libXext xextproto ]; 600 - })) // {inherit windowswmproto libX11 libXext xextproto ;}; 601 602 - libX11 = (stdenv.mkDerivation ((if overrides ? libX11 then overrides.libX11 else x: x) { 603 name = "libX11-1.6.2"; 604 builder = ./builder.sh; 605 src = fetchurl { ··· 607 sha256 = "05mx0s0vqzds3qjc1gmjr2s6x2ll37z4lfhgm7p2w7936zl2g81a"; 608 }; 609 buildInputs = [pkgconfig inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ]; 610 - })) // {inherit inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ;}; 611 612 - libXScrnSaver = (stdenv.mkDerivation ((if overrides ? libXScrnSaver then overrides.libXScrnSaver else x: x) { 613 name = "libXScrnSaver-1.2.2"; 614 builder = ./builder.sh; 615 src = fetchurl { ··· 617 sha256 = "07ff4r20nkkrj7h08f9fwamds9b3imj8jz5iz6y38zqw6jkyzwcg"; 618 }; 619 buildInputs = [pkgconfig scrnsaverproto libX11 libXext xextproto ]; 620 - })) // {inherit scrnsaverproto libX11 libXext xextproto ;}; 621 622 - libXau = (stdenv.mkDerivation ((if overrides ? libXau then overrides.libXau else x: x) { 623 name = "libXau-1.0.8"; 624 builder = ./builder.sh; 625 src = fetchurl { ··· 627 sha256 = "1wm4pv12f36cwzhldpp7vy3lhm3xdcnp4f184xkxsp7b18r7gm7x"; 628 }; 629 buildInputs = [pkgconfig xproto ]; 630 - })) // {inherit xproto ;}; 631 632 - libXaw = (stdenv.mkDerivation ((if overrides ? libXaw then overrides.libXaw else x: x) { 633 name = "libXaw-1.0.12"; 634 builder = ./builder.sh; 635 src = fetchurl { ··· 637 sha256 = "1xnv7jy86j9vhmw74frkzcraynqbw1p1s79jasargsgwfi433z4n"; 638 }; 639 buildInputs = [pkgconfig libX11 libXext xextproto libXmu libXpm xproto libXt ]; 640 - })) // {inherit libX11 libXext xextproto libXmu libXpm xproto libXt ;}; 641 642 - libXcomposite = (stdenv.mkDerivation ((if overrides ? libXcomposite then overrides.libXcomposite else x: x) { 643 name = "libXcomposite-0.4.4"; 644 builder = ./builder.sh; 645 src = fetchurl { ··· 647 sha256 = "0y21nfpa5s8qmx0srdlilyndas3sgl0c6rc26d5fx2vx436m1qpd"; 648 }; 649 buildInputs = [pkgconfig compositeproto libX11 libXfixes xproto ]; 650 - })) // {inherit compositeproto libX11 libXfixes xproto ;}; 651 652 - libXcursor = (stdenv.mkDerivation ((if overrides ? libXcursor then overrides.libXcursor else x: x) { 653 name = "libXcursor-1.1.14"; 654 builder = ./builder.sh; 655 src = fetchurl { ··· 657 sha256 = "1prkdicl5y5yx32h1azh6gjfbijvjp415javv8dsakd13jrarilv"; 658 }; 659 buildInputs = [pkgconfig fixesproto libX11 libXfixes xproto libXrender ]; 660 - })) // {inherit fixesproto libX11 libXfixes xproto libXrender ;}; 661 662 - libXdamage = (stdenv.mkDerivation ((if overrides ? libXdamage then overrides.libXdamage else x: x) { 663 name = "libXdamage-1.1.4"; 664 builder = ./builder.sh; 665 src = fetchurl { ··· 667 sha256 = "1bamagq7g6s0d23l8rb3nppj8ifqj05f7z9bhbs4fdg8az3ffgvw"; 668 }; 669 buildInputs = [pkgconfig damageproto fixesproto libX11 xextproto libXfixes xproto ]; 670 - })) // {inherit damageproto fixesproto libX11 xextproto libXfixes xproto ;}; 671 672 - libXdmcp = (stdenv.mkDerivation ((if overrides ? libXdmcp then overrides.libXdmcp else x: x) { 673 name = "libXdmcp-1.1.1"; 674 builder = ./builder.sh; 675 src = fetchurl { ··· 677 sha256 = "13highx4xpgkiwykpcl7z2laslrjc4pzi4h617ny9p7r6116vkls"; 678 }; 679 buildInputs = [pkgconfig xproto ]; 680 - })) // {inherit xproto ;}; 681 682 - libXext = (stdenv.mkDerivation ((if overrides ? libXext then overrides.libXext else x: x) { 683 name = "libXext-1.3.3"; 684 builder = ./builder.sh; 685 src = fetchurl { ··· 687 sha256 = "0dbfn5bznnrhqzvkrcmw4c44yvvpwdcsrvzxf4rk27r36b9x865m"; 688 }; 689 buildInputs = [pkgconfig libX11 xextproto xproto ]; 690 - })) // {inherit libX11 xextproto xproto ;}; 691 692 - libXfixes = (stdenv.mkDerivation ((if overrides ? libXfixes then overrides.libXfixes else x: x) { 693 name = "libXfixes-5.0.1"; 694 builder = ./builder.sh; 695 src = fetchurl { ··· 697 sha256 = "0rs7qgzr6dpr62db7sd91c1b47hzhzfr010qwnpcm8sg122w1gk3"; 698 }; 699 buildInputs = [pkgconfig fixesproto libX11 xextproto xproto ]; 700 - })) // {inherit fixesproto libX11 xextproto xproto ;}; 701 702 - libXfont = (stdenv.mkDerivation ((if overrides ? libXfont then overrides.libXfont else x: x) { 703 name = "libXfont-1.4.8"; 704 builder = ./builder.sh; 705 src = fetchurl { ··· 707 sha256 = "01fh2hnnaby8x6mv57x78nsqwhls70gwykldzd8b43vrpzzd8s2m"; 708 }; 709 buildInputs = [pkgconfig libfontenc fontsproto freetype xproto xtrans zlib ]; 710 - })) // {inherit libfontenc fontsproto freetype xproto xtrans zlib ;}; 711 712 - libXft = (stdenv.mkDerivation ((if overrides ? libXft then overrides.libXft else x: x) { 713 name = "libXft-2.3.2"; 714 builder = ./builder.sh; 715 src = fetchurl { ··· 717 sha256 = "0k6wzi5rzs0d0n338ms8n8lfyhq914hw4yl2j7553wqxfqjci8zm"; 718 }; 719 buildInputs = [pkgconfig fontconfig freetype libX11 xproto libXrender ]; 720 - })) // {inherit fontconfig freetype libX11 xproto libXrender ;}; 721 722 - libXi = (stdenv.mkDerivation ((if overrides ? libXi then overrides.libXi else x: x) { 723 name = "libXi-1.7.4"; 724 builder = ./builder.sh; 725 src = fetchurl { ··· 727 sha256 = "0i12lj973grlp9fa79v0vh9cahk3nf9csdjnf81iip0qcrlc5zrc"; 728 }; 729 buildInputs = [pkgconfig inputproto libX11 libXext xextproto libXfixes xproto ]; 730 - })) // {inherit inputproto libX11 libXext xextproto libXfixes xproto ;}; 731 732 - libXinerama = (stdenv.mkDerivation ((if overrides ? libXinerama then overrides.libXinerama else x: x) { 733 name = "libXinerama-1.1.3"; 734 builder = ./builder.sh; 735 src = fetchurl { ··· 737 sha256 = "1qlqfvzw45gdzk9xirgwlp2qgj0hbsyiqj8yh8zml2bk2ygnjibs"; 738 }; 739 buildInputs = [pkgconfig libX11 libXext xextproto xineramaproto ]; 740 - })) // {inherit libX11 libXext xextproto xineramaproto ;}; 741 742 - libXmu = (stdenv.mkDerivation ((if overrides ? libXmu then overrides.libXmu else x: x) { 743 name = "libXmu-1.1.2"; 744 builder = ./builder.sh; 745 src = fetchurl { ··· 747 sha256 = "02wx6jw7i0q5qwx87yf94fsn3h0xpz1k7dz1nkwfwm1j71ydqvkm"; 748 }; 749 buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ]; 750 - })) // {inherit libX11 libXext xextproto xproto libXt ;}; 751 752 - libXp = (stdenv.mkDerivation ((if overrides ? libXp then overrides.libXp else x: x) { 753 name = "libXp-1.0.2"; 754 builder = ./builder.sh; 755 src = fetchurl { ··· 757 sha256 = "1dfh5w8sjz5b5fl6dl4y63ckq99snslz7bir8zq2rg8ax6syabwm"; 758 }; 759 buildInputs = [pkgconfig printproto libX11 libXau libXext xextproto ]; 760 - })) // {inherit printproto libX11 libXau libXext xextproto ;}; 761 762 - libXpm = (stdenv.mkDerivation ((if overrides ? libXpm then overrides.libXpm else x: x) { 763 name = "libXpm-3.5.11"; 764 builder = ./builder.sh; 765 src = fetchurl { ··· 767 sha256 = "07041q4k8m4nirzl7lrqn8by2zylx0xvh6n0za301qqs3njszgf5"; 768 }; 769 buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ]; 770 - })) // {inherit libX11 libXext xextproto xproto libXt ;}; 771 772 - libXrandr = (stdenv.mkDerivation ((if overrides ? libXrandr then overrides.libXrandr else x: x) { 773 name = "libXrandr-1.4.2"; 774 builder = ./builder.sh; 775 src = fetchurl { ··· 777 sha256 = "1b95p3l84ppv6j7dbbmg0zrz6k8xdwvnag1l6ajm3gk9qwdb79ya"; 778 }; 779 buildInputs = [pkgconfig randrproto renderproto libX11 libXext xextproto xproto libXrender ]; 780 - })) // {inherit randrproto renderproto libX11 libXext xextproto xproto libXrender ;}; 781 782 - libXrender = (stdenv.mkDerivation ((if overrides ? libXrender then overrides.libXrender else x: x) { 783 name = "libXrender-0.9.8"; 784 builder = ./builder.sh; 785 src = fetchurl { ··· 787 sha256 = "0qpwyjhbpp734vnhca992pjh4w7ijslidkzx1pcwbbk000pv050x"; 788 }; 789 buildInputs = [pkgconfig renderproto libX11 xproto ]; 790 - })) // {inherit renderproto libX11 xproto ;}; 791 792 - libXres = (stdenv.mkDerivation ((if overrides ? libXres then overrides.libXres else x: x) { 793 name = "libXres-1.0.7"; 794 builder = ./builder.sh; 795 src = fetchurl { ··· 797 sha256 = "1rd0bzn67cpb2qkc946gch2183r4bdjfhs6cpqbipy47m9a91296"; 798 }; 799 buildInputs = [pkgconfig resourceproto libX11 libXext xextproto xproto ]; 800 - })) // {inherit resourceproto libX11 libXext xextproto xproto ;}; 801 802 - libXt = (stdenv.mkDerivation ((if overrides ? libXt then overrides.libXt else x: x) { 803 name = "libXt-1.1.4"; 804 builder = ./builder.sh; 805 src = fetchurl { ··· 807 sha256 = "0myxwbx9ylam5x3ia5b5f4x8azcqdm420h9ad1r4hrgmi2lrffl4"; 808 }; 809 buildInputs = [pkgconfig libICE kbproto libSM libX11 xproto ]; 810 - })) // {inherit libICE kbproto libSM libX11 xproto ;}; 811 812 - libXtst = (stdenv.mkDerivation ((if overrides ? libXtst then overrides.libXtst else x: x) { 813 name = "libXtst-1.2.2"; 814 builder = ./builder.sh; 815 src = fetchurl { ··· 817 sha256 = "1ngn161nq679ffmbwl81i2hn75jjg5b3ffv6n4jilpvyazypy2pg"; 818 }; 819 buildInputs = [pkgconfig inputproto recordproto libX11 libXext xextproto libXi ]; 820 - })) // {inherit inputproto recordproto libX11 libXext xextproto libXi ;}; 821 822 - libXv = (stdenv.mkDerivation ((if overrides ? libXv then overrides.libXv else x: x) { 823 name = "libXv-1.0.10"; 824 builder = ./builder.sh; 825 src = fetchurl { ··· 827 sha256 = "09a5j6bisysiipd0nw6s352565bp0n6gbyhv5hp63s3cd3w95zjm"; 828 }; 829 buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto ]; 830 - })) // {inherit videoproto libX11 libXext xextproto xproto ;}; 831 832 - libXvMC = (stdenv.mkDerivation ((if overrides ? libXvMC then overrides.libXvMC else x: x) { 833 name = "libXvMC-1.0.8"; 834 builder = ./builder.sh; 835 src = fetchurl { ··· 837 sha256 = "015jk3bxfmj6zaw99x282f9npi8qqaw34yg186frags3z8g406jy"; 838 }; 839 buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto libXv ]; 840 - })) // {inherit videoproto libX11 libXext xextproto xproto libXv ;}; 841 842 - libXxf86dga = (stdenv.mkDerivation ((if overrides ? libXxf86dga then overrides.libXxf86dga else x: x) { 843 name = "libXxf86dga-1.1.4"; 844 builder = ./builder.sh; 845 src = fetchurl { ··· 847 sha256 = "0zn7aqj8x0951d8zb2h2andldvwkzbsc4cs7q023g6nzq6vd9v4f"; 848 }; 849 buildInputs = [pkgconfig libX11 libXext xextproto xf86dgaproto xproto ]; 850 - })) // {inherit libX11 libXext xextproto xf86dgaproto xproto ;}; 851 852 - libXxf86misc = (stdenv.mkDerivation ((if overrides ? libXxf86misc then overrides.libXxf86misc else x: x) { 853 name = "libXxf86misc-1.0.3"; 854 builder = ./builder.sh; 855 src = fetchurl { ··· 857 sha256 = "0nvbq9y6k6m9hxdvg3crycqsnnxf1859wrisqcs37z9fhq044gsn"; 858 }; 859 buildInputs = [pkgconfig libX11 libXext xextproto xf86miscproto xproto ]; 860 - })) // {inherit libX11 libXext xextproto xf86miscproto xproto ;}; 861 862 - libXxf86vm = (stdenv.mkDerivation ((if overrides ? libXxf86vm then overrides.libXxf86vm else x: x) { 863 name = "libXxf86vm-1.1.3"; 864 builder = ./builder.sh; 865 src = fetchurl { ··· 867 sha256 = "1f1pxj018nk7ybxv58jmn5y8gm2288p4q3l2dng9n1p25v1qcpns"; 868 }; 869 buildInputs = [pkgconfig libX11 libXext xextproto xf86vidmodeproto xproto ]; 870 - })) // {inherit libX11 libXext xextproto xf86vidmodeproto xproto ;}; 871 872 - libdmx = (stdenv.mkDerivation ((if overrides ? libdmx then overrides.libdmx else x: x) { 873 name = "libdmx-1.1.3"; 874 builder = ./builder.sh; 875 src = fetchurl { ··· 877 sha256 = "00djlxas38kbsrglcmwmxfbmxjdchlbj95pqwjvdg8jn5rns6zf9"; 878 }; 879 buildInputs = [pkgconfig dmxproto libX11 libXext xextproto ]; 880 - })) // {inherit dmxproto libX11 libXext xextproto ;}; 881 882 - libfontenc = (stdenv.mkDerivation ((if overrides ? libfontenc then overrides.libfontenc else x: x) { 883 name = "libfontenc-1.1.2"; 884 builder = ./builder.sh; 885 src = fetchurl { ··· 887 sha256 = "0qign0ivqk166l9yfd51gw9lbhgs718bcrmvc40yicjr6gnyz959"; 888 }; 889 buildInputs = [pkgconfig xproto zlib ]; 890 - })) // {inherit xproto zlib ;}; 891 892 - libpciaccess = (stdenv.mkDerivation ((if overrides ? libpciaccess then overrides.libpciaccess else x: x) { 893 name = "libpciaccess-0.13.2"; 894 builder = ./builder.sh; 895 src = fetchurl { ··· 897 sha256 = "06fy43n3c450h7xqpn3094bnfn7ca1mrq3i856y8kyqa0lmqraxb"; 898 }; 899 buildInputs = [pkgconfig zlib ]; 900 - })) // {inherit zlib ;}; 901 902 - libpthreadstubs = (stdenv.mkDerivation ((if overrides ? libpthreadstubs then overrides.libpthreadstubs else x: x) { 903 name = "libpthread-stubs-0.3"; 904 builder = ./builder.sh; 905 src = fetchurl { ··· 907 sha256 = "16bjv3in19l84hbri41iayvvg4ls9gv1ma0x0qlbmwy67i7dbdim"; 908 }; 909 buildInputs = [pkgconfig ]; 910 - })) // {inherit ;}; 911 912 - libxcb = (stdenv.mkDerivation ((if overrides ? libxcb then overrides.libxcb else x: x) { 913 name = "libxcb-1.10"; 914 builder = ./builder.sh; 915 src = fetchurl { ··· 917 sha256 = "1dfmyb1zjx6n0zhr4y40mc1crlmj3bfjjhmn0f30ip9nnq2spncq"; 918 }; 919 buildInputs = [pkgconfig libxslt libpthreadstubs python libXau xcbproto libXdmcp ]; 920 - })) // {inherit libxslt libpthreadstubs python libXau xcbproto libXdmcp ;}; 921 922 - libxkbfile = (stdenv.mkDerivation ((if overrides ? libxkbfile then overrides.libxkbfile else x: x) { 923 name = "libxkbfile-1.0.8"; 924 builder = ./builder.sh; 925 src = fetchurl { ··· 927 sha256 = "0flg5arw6n3njagmsi4i4l0zl5bfx866a1h9ydc3bi1pqlclxaca"; 928 }; 929 buildInputs = [pkgconfig kbproto libX11 ]; 930 - })) // {inherit kbproto libX11 ;}; 931 932 - libxshmfence = (stdenv.mkDerivation ((if overrides ? libxshmfence then overrides.libxshmfence else x: x) { 933 name = "libxshmfence-1.1"; 934 builder = ./builder.sh; 935 src = fetchurl { ··· 937 sha256 = "1gnfb1z8sbbdc3xpz1zmm94lv7yvfh4kvip9s5pj37ya4llxphnv"; 938 }; 939 buildInputs = [pkgconfig xproto ]; 940 - })) // {inherit xproto ;}; 941 942 - lndir = (stdenv.mkDerivation ((if overrides ? lndir then overrides.lndir else x: x) { 943 name = "lndir-1.0.3"; 944 builder = ./builder.sh; 945 src = fetchurl { ··· 947 sha256 = "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"; 948 }; 949 buildInputs = [pkgconfig xproto ]; 950 - })) // {inherit xproto ;}; 951 952 - luit = (stdenv.mkDerivation ((if overrides ? luit then overrides.luit else x: x) { 953 name = "luit-1.1.1"; 954 builder = ./builder.sh; 955 src = fetchurl { ··· 957 sha256 = "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"; 958 }; 959 buildInputs = [pkgconfig libfontenc ]; 960 - })) // {inherit libfontenc ;}; 961 962 - makedepend = (stdenv.mkDerivation ((if overrides ? makedepend then overrides.makedepend else x: x) { 963 name = "makedepend-1.0.5"; 964 builder = ./builder.sh; 965 src = fetchurl { ··· 967 sha256 = "09alw99r6y2bbd1dc786n3jfgv4j520apblyn7cw6jkjydshba7p"; 968 }; 969 buildInputs = [pkgconfig xproto ]; 970 - })) // {inherit xproto ;}; 971 972 - mkfontdir = (stdenv.mkDerivation ((if overrides ? mkfontdir then overrides.mkfontdir else x: x) { 973 name = "mkfontdir-1.0.7"; 974 builder = ./builder.sh; 975 src = fetchurl { ··· 977 sha256 = "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"; 978 }; 979 buildInputs = [pkgconfig ]; 980 - })) // {inherit ;}; 981 982 - mkfontscale = (stdenv.mkDerivation ((if overrides ? mkfontscale then overrides.mkfontscale else x: x) { 983 name = "mkfontscale-1.1.1"; 984 builder = ./builder.sh; 985 src = fetchurl { ··· 987 sha256 = "0cdpn1ii2iw1vg2ga4w62acrh78gzgf0vza4g8wx5kkp4jcifh14"; 988 }; 989 buildInputs = [pkgconfig libfontenc freetype xproto zlib ]; 990 - })) // {inherit libfontenc freetype xproto zlib ;}; 991 992 - presentproto = (stdenv.mkDerivation ((if overrides ? presentproto then overrides.presentproto else x: x) { 993 name = "presentproto-1.0"; 994 builder = ./builder.sh; 995 src = fetchurl { ··· 997 sha256 = "1kir51aqg9cwazs14ivcldcn3mzadqgykc9cg87rm40zf947sb41"; 998 }; 999 buildInputs = [pkgconfig ]; 1000 - })) // {inherit ;}; 1001 1002 - printproto = (stdenv.mkDerivation ((if overrides ? printproto then overrides.printproto else x: x) { 1003 name = "printproto-1.0.5"; 1004 builder = ./builder.sh; 1005 src = fetchurl { ··· 1007 sha256 = "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"; 1008 }; 1009 buildInputs = [pkgconfig libXau ]; 1010 - })) // {inherit libXau ;}; 1011 1012 - randrproto = (stdenv.mkDerivation ((if overrides ? randrproto then overrides.randrproto else x: x) { 1013 name = "randrproto-1.4.0"; 1014 builder = ./builder.sh; 1015 src = fetchurl { ··· 1017 sha256 = "1kq9h93qdnniiivry8jmhlgwn9fbx9xp5r9cmzfihlx5cs62xi45"; 1018 }; 1019 buildInputs = [pkgconfig ]; 1020 - })) // {inherit ;}; 1021 1022 - recordproto = (stdenv.mkDerivation ((if overrides ? recordproto then overrides.recordproto else x: x) { 1023 name = "recordproto-1.14.2"; 1024 builder = ./builder.sh; 1025 src = fetchurl { ··· 1027 sha256 = "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"; 1028 }; 1029 buildInputs = [pkgconfig ]; 1030 - })) // {inherit ;}; 1031 1032 - renderproto = (stdenv.mkDerivation ((if overrides ? renderproto then overrides.renderproto else x: x) { 1033 name = "renderproto-0.11.1"; 1034 builder = ./builder.sh; 1035 src = fetchurl { ··· 1037 sha256 = "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"; 1038 }; 1039 buildInputs = [pkgconfig ]; 1040 - })) // {inherit ;}; 1041 1042 - resourceproto = (stdenv.mkDerivation ((if overrides ? resourceproto then overrides.resourceproto else x: x) { 1043 name = "resourceproto-1.2.0"; 1044 builder = ./builder.sh; 1045 src = fetchurl { ··· 1047 sha256 = "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"; 1048 }; 1049 buildInputs = [pkgconfig ]; 1050 - })) // {inherit ;}; 1051 1052 - scrnsaverproto = (stdenv.mkDerivation ((if overrides ? scrnsaverproto then overrides.scrnsaverproto else x: x) { 1053 name = "scrnsaverproto-1.2.2"; 1054 builder = ./builder.sh; 1055 src = fetchurl { ··· 1057 sha256 = "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"; 1058 }; 1059 buildInputs = [pkgconfig ]; 1060 - })) // {inherit ;}; 1061 1062 - sessreg = (stdenv.mkDerivation ((if overrides ? sessreg then overrides.sessreg else x: x) { 1063 name = "sessreg-1.0.8"; 1064 builder = ./builder.sh; 1065 src = fetchurl { ··· 1067 sha256 = "1hy4wvgawajf4qw2k51fkcjzxw0drx60ydzpmqhj7k1g4z3cqahf"; 1068 }; 1069 buildInputs = [pkgconfig xproto ]; 1070 - })) // {inherit xproto ;}; 1071 1072 - setxkbmap = (stdenv.mkDerivation ((if overrides ? setxkbmap then overrides.setxkbmap else x: x) { 1073 name = "setxkbmap-1.3.0"; 1074 builder = ./builder.sh; 1075 src = fetchurl { ··· 1077 sha256 = "1inygpvlgc6vr5h9laxw9lnvafnccl3fy0g5n9ll28iq3yfmqc1x"; 1078 }; 1079 buildInputs = [pkgconfig libX11 libxkbfile ]; 1080 - })) // {inherit libX11 libxkbfile ;}; 1081 1082 - smproxy = (stdenv.mkDerivation ((if overrides ? smproxy then overrides.smproxy else x: x) { 1083 name = "smproxy-1.0.5"; 1084 builder = ./builder.sh; 1085 src = fetchurl { ··· 1087 sha256 = "02fn5wa1gs2jap6sr9j9yk6zsvz82j8l61pf74iyqwa99q4wnb67"; 1088 }; 1089 buildInputs = [pkgconfig libICE libSM libXmu libXt ]; 1090 - })) // {inherit libICE libSM libXmu libXt ;}; 1091 1092 - twm = (stdenv.mkDerivation ((if overrides ? twm then overrides.twm else x: x) { 1093 name = "twm-1.0.8"; 1094 builder = ./builder.sh; 1095 src = fetchurl { ··· 1097 sha256 = "0i1ff8h2gh1ab311da5dlhl0nrma0qbrk403ymzi4cnnacikaq3n"; 1098 }; 1099 buildInputs = [pkgconfig libICE libSM libX11 libXext libXmu xproto libXt ]; 1100 - })) // {inherit libICE libSM libX11 libXext libXmu xproto libXt ;}; 1101 1102 - utilmacros = (stdenv.mkDerivation ((if overrides ? utilmacros then overrides.utilmacros else x: x) { 1103 name = "util-macros-1.19.0"; 1104 builder = ./builder.sh; 1105 src = fetchurl { ··· 1107 sha256 = "1fnhpryf55l0yqajxn0cxan3kvsjzi67nlanz8clwqzf54cb2d98"; 1108 }; 1109 buildInputs = [pkgconfig ]; 1110 - })) // {inherit ;}; 1111 1112 - videoproto = (stdenv.mkDerivation ((if overrides ? videoproto then overrides.videoproto else x: x) { 1113 name = "videoproto-2.3.2"; 1114 builder = ./builder.sh; 1115 src = fetchurl { ··· 1117 sha256 = "1dnlkd9nb0m135lgd6hd61vc29sdyarsyya8aqpx7z10p261dbld"; 1118 }; 1119 buildInputs = [pkgconfig ]; 1120 - })) // {inherit ;}; 1121 1122 - windowswmproto = (stdenv.mkDerivation ((if overrides ? windowswmproto then overrides.windowswmproto else x: x) { 1123 name = "windowswmproto-1.0.4"; 1124 builder = ./builder.sh; 1125 src = fetchurl { ··· 1127 sha256 = "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"; 1128 }; 1129 buildInputs = [pkgconfig ]; 1130 - })) // {inherit ;}; 1131 1132 - x11perf = (stdenv.mkDerivation ((if overrides ? x11perf then overrides.x11perf else x: x) { 1133 name = "x11perf-1.5.4"; 1134 builder = ./builder.sh; 1135 src = fetchurl { ··· 1137 sha256 = "111iwpxhnxjiq44w96zf0kszg5zpgv1g3ayx18v4nhdzl9bqivi4"; 1138 }; 1139 buildInputs = [pkgconfig libX11 libXext libXft libXmu libXrender ]; 1140 - })) // {inherit libX11 libXext libXft libXmu libXrender ;}; 1141 1142 - xauth = (stdenv.mkDerivation ((if overrides ? xauth then overrides.xauth else x: x) { 1143 name = "xauth-1.0.9"; 1144 builder = ./builder.sh; 1145 src = fetchurl { ··· 1147 sha256 = "13y2invb0894b1in03jbglximbz6v31y2kr4yjjgica8xciibkjn"; 1148 }; 1149 buildInputs = [pkgconfig libX11 libXau libXext libXmu xproto ]; 1150 - })) // {inherit libX11 libXau libXext libXmu xproto ;}; 1151 1152 - xbacklight = (stdenv.mkDerivation ((if overrides ? xbacklight then overrides.xbacklight else x: x) { 1153 name = "xbacklight-1.2.1"; 1154 builder = ./builder.sh; 1155 src = fetchurl { ··· 1157 sha256 = "0arnd1j8vzhzmw72mqhjjcb2qwcbs9qphsy3ps593ajyld8wzxhp"; 1158 }; 1159 buildInputs = [pkgconfig libxcb xcbutil ]; 1160 - })) // {inherit libxcb xcbutil ;}; 1161 1162 - xbitmaps = (stdenv.mkDerivation ((if overrides ? xbitmaps then overrides.xbitmaps else x: x) { 1163 name = "xbitmaps-1.1.1"; 1164 builder = ./builder.sh; 1165 src = fetchurl { ··· 1167 sha256 = "178ym90kwidia6nas4qr5n5yqh698vv8r02js0r4vg3b6lsb0w9n"; 1168 }; 1169 buildInputs = [pkgconfig ]; 1170 - })) // {inherit ;}; 1171 1172 - xcbproto = (stdenv.mkDerivation ((if overrides ? xcbproto then overrides.xcbproto else x: x) { 1173 name = "xcb-proto-1.10"; 1174 builder = ./builder.sh; 1175 src = fetchurl { ··· 1177 sha256 = "01dgp802i4ic9wkmpa7g1wm50pp547d3b96jjz2hnxavhpfhvx3y"; 1178 }; 1179 buildInputs = [pkgconfig python ]; 1180 - })) // {inherit python ;}; 1181 1182 - xcbutil = (stdenv.mkDerivation ((if overrides ? xcbutil then overrides.xcbutil else x: x) { 1183 name = "xcb-util-0.3.9"; 1184 builder = ./builder.sh; 1185 src = fetchurl { ··· 1187 sha256 = "1i0qbhqkcdlbbsj7ifkyjsffl61whj24d3zlg5pxf3xj1af2a4f6"; 1188 }; 1189 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1190 - })) // {inherit gperf m4 libxcb xproto ;}; 1191 1192 - xcbutilimage = (stdenv.mkDerivation ((if overrides ? xcbutilimage then overrides.xcbutilimage else x: x) { 1193 name = "xcb-util-image-0.3.9"; 1194 builder = ./builder.sh; 1195 src = fetchurl { ··· 1197 sha256 = "1pr1l1nkg197gyl9d0fpwmn72jqpxjfgn9y13q4gawg1m873qnnk"; 1198 }; 1199 buildInputs = [pkgconfig gperf m4 libxcb xcbutil xproto ]; 1200 - })) // {inherit gperf m4 libxcb xcbutil xproto ;}; 1201 1202 - xcbutilkeysyms = (stdenv.mkDerivation ((if overrides ? xcbutilkeysyms then overrides.xcbutilkeysyms else x: x) { 1203 name = "xcb-util-keysyms-0.3.9"; 1204 builder = ./builder.sh; 1205 src = fetchurl { ··· 1207 sha256 = "0vjwk7vrcfnlhiadv445c6skfxmdrg5v4qf81y8s2s5xagqarqbv"; 1208 }; 1209 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1210 - })) // {inherit gperf m4 libxcb xproto ;}; 1211 1212 - xcbutilrenderutil = (stdenv.mkDerivation ((if overrides ? xcbutilrenderutil then overrides.xcbutilrenderutil else x: x) { 1213 name = "xcb-util-renderutil-0.3.9"; 1214 builder = ./builder.sh; 1215 src = fetchurl { ··· 1217 sha256 = "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"; 1218 }; 1219 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1220 - })) // {inherit gperf m4 libxcb xproto ;}; 1221 1222 - xcbutilwm = (stdenv.mkDerivation ((if overrides ? xcbutilwm then overrides.xcbutilwm else x: x) { 1223 name = "xcb-util-wm-0.4.1"; 1224 builder = ./builder.sh; 1225 src = fetchurl { ··· 1227 sha256 = "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"; 1228 }; 1229 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1230 - })) // {inherit gperf m4 libxcb xproto ;}; 1231 1232 - xclock = (stdenv.mkDerivation ((if overrides ? xclock then overrides.xclock else x: x) { 1233 name = "xclock-1.0.7"; 1234 builder = ./builder.sh; 1235 src = fetchurl { ··· 1237 sha256 = "1l3xv4bsca6bwxx73jyjz0blav86i7vwffkhdb1ac81y9slyrki3"; 1238 }; 1239 buildInputs = [pkgconfig libX11 libXaw libXft libxkbfile libXmu xproto libXrender libXt ]; 1240 - })) // {inherit libX11 libXaw libXft libxkbfile libXmu xproto libXrender libXt ;}; 1241 1242 - xcmiscproto = (stdenv.mkDerivation ((if overrides ? xcmiscproto then overrides.xcmiscproto else x: x) { 1243 name = "xcmiscproto-1.2.2"; 1244 builder = ./builder.sh; 1245 src = fetchurl { ··· 1247 sha256 = "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"; 1248 }; 1249 buildInputs = [pkgconfig ]; 1250 - })) // {inherit ;}; 1251 1252 - xcmsdb = (stdenv.mkDerivation ((if overrides ? xcmsdb then overrides.xcmsdb else x: x) { 1253 name = "xcmsdb-1.0.4"; 1254 builder = ./builder.sh; 1255 src = fetchurl { ··· 1257 sha256 = "03ms731l3kvaldq7ycbd30j6134b61i3gbll4b2gl022wyzbjq74"; 1258 }; 1259 buildInputs = [pkgconfig libX11 ]; 1260 - })) // {inherit libX11 ;}; 1261 1262 - xcursorgen = (stdenv.mkDerivation ((if overrides ? xcursorgen then overrides.xcursorgen else x: x) { 1263 name = "xcursorgen-1.0.6"; 1264 builder = ./builder.sh; 1265 src = fetchurl { ··· 1267 sha256 = "0v7nncj3kaa8c0524j7ricdf4rvld5i7c3m6fj55l5zbah7r3j1i"; 1268 }; 1269 buildInputs = [pkgconfig libpng libX11 libXcursor ]; 1270 - })) // {inherit libpng libX11 libXcursor ;}; 1271 1272 - xcursorthemes = (stdenv.mkDerivation ((if overrides ? xcursorthemes then overrides.xcursorthemes else x: x) { 1273 name = "xcursor-themes-1.0.4"; 1274 builder = ./builder.sh; 1275 src = fetchurl { ··· 1277 sha256 = "11mv661nj1p22sqkv87ryj2lcx4m68a04b0rs6iqh3fzp42jrzg3"; 1278 }; 1279 buildInputs = [pkgconfig libXcursor ]; 1280 - })) // {inherit libXcursor ;}; 1281 1282 - xdm = (stdenv.mkDerivation ((if overrides ? xdm then overrides.xdm else x: x) { 1283 name = "xdm-1.1.11"; 1284 builder = ./builder.sh; 1285 src = fetchurl { ··· 1287 sha256 = "0iqw11977lpr9nk1is4fca84d531vck0mq7jldwl44m0vrnl5nnl"; 1288 }; 1289 buildInputs = [pkgconfig libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ]; 1290 - })) // {inherit libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ;}; 1291 1292 - xdpyinfo = (stdenv.mkDerivation ((if overrides ? xdpyinfo then overrides.xdpyinfo else x: x) { 1293 name = "xdpyinfo-1.3.1"; 1294 builder = ./builder.sh; 1295 src = fetchurl { ··· 1297 sha256 = "154b29zlrq33lmni883jgwyrb2kx7z8h52jx1s3ys5x5d582iydf"; 1298 }; 1299 buildInputs = [pkgconfig libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ]; 1300 - })) // {inherit libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ;}; 1301 1302 - xdriinfo = (stdenv.mkDerivation ((if overrides ? xdriinfo then overrides.xdriinfo else x: x) { 1303 name = "xdriinfo-1.0.4"; 1304 builder = ./builder.sh; 1305 src = fetchurl { ··· 1307 sha256 = "076bjix941znyjmh3j5jjsnhp2gv2iq53d0ks29mvvv87cyy9iim"; 1308 }; 1309 buildInputs = [pkgconfig glproto libX11 ]; 1310 - })) // {inherit glproto libX11 ;}; 1311 1312 - xev = (stdenv.mkDerivation ((if overrides ? xev then overrides.xev else x: x) { 1313 name = "xev-1.2.1"; 1314 builder = ./builder.sh; 1315 src = fetchurl { ··· 1317 sha256 = "0hv296mysglcgkx6lj1wxc23kshb2kix1a8yqppxj5vz16mpzw8i"; 1318 }; 1319 buildInputs = [pkgconfig libX11 xproto libXrandr ]; 1320 - })) // {inherit libX11 xproto libXrandr ;}; 1321 1322 - xextproto = (stdenv.mkDerivation ((if overrides ? xextproto then overrides.xextproto else x: x) { 1323 name = "xextproto-7.3.0"; 1324 builder = ./builder.sh; 1325 src = fetchurl { ··· 1327 sha256 = "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"; 1328 }; 1329 buildInputs = [pkgconfig ]; 1330 - })) // {inherit ;}; 1331 1332 - xeyes = (stdenv.mkDerivation ((if overrides ? xeyes then overrides.xeyes else x: x) { 1333 name = "xeyes-1.1.1"; 1334 builder = ./builder.sh; 1335 src = fetchurl { ··· 1337 sha256 = "08d5x2kar5kg4yammw6hhk10iva6jmh8cqq176a1z7nm1il9hplp"; 1338 }; 1339 buildInputs = [pkgconfig libX11 libXext libXmu libXrender libXt ]; 1340 - })) // {inherit libX11 libXext libXmu libXrender libXt ;}; 1341 1342 - xf86bigfontproto = (stdenv.mkDerivation ((if overrides ? xf86bigfontproto then overrides.xf86bigfontproto else x: x) { 1343 name = "xf86bigfontproto-1.2.0"; 1344 builder = ./builder.sh; 1345 src = fetchurl { ··· 1347 sha256 = "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"; 1348 }; 1349 buildInputs = [pkgconfig ]; 1350 - })) // {inherit ;}; 1351 1352 - xf86dgaproto = (stdenv.mkDerivation ((if overrides ? xf86dgaproto then overrides.xf86dgaproto else x: x) { 1353 name = "xf86dgaproto-2.1"; 1354 builder = ./builder.sh; 1355 src = fetchurl { ··· 1357 sha256 = "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"; 1358 }; 1359 buildInputs = [pkgconfig ]; 1360 - })) // {inherit ;}; 1361 1362 - xf86driproto = (stdenv.mkDerivation ((if overrides ? xf86driproto then overrides.xf86driproto else x: x) { 1363 name = "xf86driproto-2.1.1"; 1364 builder = ./builder.sh; 1365 src = fetchurl { ··· 1367 sha256 = "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"; 1368 }; 1369 buildInputs = [pkgconfig ]; 1370 - })) // {inherit ;}; 1371 1372 - xf86inputevdev = (stdenv.mkDerivation ((if overrides ? xf86inputevdev then overrides.xf86inputevdev else x: x) { 1373 name = "xf86-input-evdev-2.8.4"; 1374 builder = ./builder.sh; 1375 src = fetchurl { ··· 1377 sha256 = "030haki1h0m85h91c91812gdnk6znfamw5kpr010zxwwbsgxxyl5"; 1378 }; 1379 buildInputs = [pkgconfig inputproto udev xorgserver xproto ]; 1380 - })) // {inherit inputproto udev xorgserver xproto ;}; 1381 1382 - xf86inputjoystick = (stdenv.mkDerivation ((if overrides ? xf86inputjoystick then overrides.xf86inputjoystick else x: x) { 1383 name = "xf86-input-joystick-1.6.2"; 1384 builder = ./builder.sh; 1385 src = fetchurl { ··· 1387 sha256 = "038mfqairyyqvz02rk7v3i070sab1wr0k6fkxvyvxdgkfbnqcfzf"; 1388 }; 1389 buildInputs = [pkgconfig inputproto kbproto xorgserver xproto ]; 1390 - })) // {inherit inputproto kbproto xorgserver xproto ;}; 1391 1392 - xf86inputkeyboard = (stdenv.mkDerivation ((if overrides ? xf86inputkeyboard then overrides.xf86inputkeyboard else x: x) { 1393 name = "xf86-input-keyboard-1.8.0"; 1394 builder = ./builder.sh; 1395 src = fetchurl { ··· 1397 sha256 = "0nyb61w30z32djrllgr2s1i13di3vsl6hg4pqjhxdal71971ria1"; 1398 }; 1399 buildInputs = [pkgconfig inputproto xorgserver xproto ]; 1400 - })) // {inherit inputproto xorgserver xproto ;}; 1401 1402 - xf86inputmouse = (stdenv.mkDerivation ((if overrides ? xf86inputmouse then overrides.xf86inputmouse else x: x) { 1403 name = "xf86-input-mouse-1.9.0"; 1404 builder = ./builder.sh; 1405 src = fetchurl { ··· 1407 sha256 = "12344w0cxac1ld54qqwynxwazbmmpvqh1mzcskmfkmakmr5iwq2x"; 1408 }; 1409 buildInputs = [pkgconfig inputproto xorgserver xproto ]; 1410 - })) // {inherit inputproto xorgserver xproto ;}; 1411 1412 - xf86inputsynaptics = (stdenv.mkDerivation ((if overrides ? xf86inputsynaptics then overrides.xf86inputsynaptics else x: x) { 1413 name = "xf86-input-synaptics-1.7.6"; 1414 builder = ./builder.sh; 1415 src = fetchurl { ··· 1417 sha256 = "0ls8f7gy92f54hdqsa19vypg0xm496jrgdhdn4qphycxwn3gwkbm"; 1418 }; 1419 buildInputs = [pkgconfig inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ]; 1420 - })) // {inherit inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ;}; 1421 1422 - xf86inputvmmouse = (stdenv.mkDerivation ((if overrides ? xf86inputvmmouse then overrides.xf86inputvmmouse else x: x) { 1423 name = "xf86-input-vmmouse-13.0.0"; 1424 builder = ./builder.sh; 1425 src = fetchurl { ··· 1427 sha256 = "0b31ap9wp7nwpnihz8m7bz3p0hhaipxxhl652nw4v380cq1vdkq4"; 1428 }; 1429 buildInputs = [pkgconfig inputproto randrproto xorgserver xproto ]; 1430 - })) // {inherit inputproto randrproto xorgserver xproto ;}; 1431 1432 - xf86inputvoid = (stdenv.mkDerivation ((if overrides ? xf86inputvoid then overrides.xf86inputvoid else x: x) { 1433 name = "xf86-input-void-1.4.0"; 1434 builder = ./builder.sh; 1435 src = fetchurl { ··· 1437 sha256 = "01bmk324fq48wydvy1qrnxbw6qz0fjd0i80g0n4cqr1c4mjmif9a"; 1438 }; 1439 buildInputs = [pkgconfig xorgserver xproto ]; 1440 - })) // {inherit xorgserver xproto ;}; 1441 1442 - xf86miscproto = (stdenv.mkDerivation ((if overrides ? xf86miscproto then overrides.xf86miscproto else x: x) { 1443 name = "xf86miscproto-0.9.3"; 1444 builder = ./builder.sh; 1445 src = fetchurl { ··· 1447 sha256 = "15dhcdpv61fyj6rhzrhnwri9hlw8rjfy05z1vik118lc99mfrf25"; 1448 }; 1449 buildInputs = [pkgconfig ]; 1450 - })) // {inherit ;}; 1451 1452 - xf86videoark = (stdenv.mkDerivation ((if overrides ? xf86videoark then overrides.xf86videoark else x: x) { 1453 name = "xf86-video-ark-0.7.5"; 1454 builder = ./builder.sh; 1455 src = fetchurl { ··· 1457 sha256 = "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"; 1458 }; 1459 buildInputs = [pkgconfig fontsproto libpciaccess xextproto xorgserver xproto ]; 1460 - })) // {inherit fontsproto libpciaccess xextproto xorgserver xproto ;}; 1461 1462 - xf86videoast = (stdenv.mkDerivation ((if overrides ? xf86videoast then overrides.xf86videoast else x: x) { 1463 name = "xf86-video-ast-0.98.0"; 1464 builder = ./builder.sh; 1465 src = fetchurl { ··· 1467 sha256 = "188nv73w0p5xhfxz2dffli44yzyn1qhhq3qkwc8wva9dhg25n8lh"; 1468 }; 1469 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1470 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1471 1472 - xf86videoati = (stdenv.mkDerivation ((if overrides ? xf86videoati then overrides.xf86videoati else x: x) { 1473 name = "xf86-video-ati-7.4.0"; 1474 builder = ./builder.sh; 1475 src = fetchurl { ··· 1477 sha256 = "1nbnvxlyn75bcf23m39p7yw80kilgdxmjdvzgcs3walshnlhq8wn"; 1478 }; 1479 buildInputs = [pkgconfig fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1480 - })) // {inherit fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1481 1482 - xf86videocirrus = (stdenv.mkDerivation ((if overrides ? xf86videocirrus then overrides.xf86videocirrus else x: x) { 1483 name = "xf86-video-cirrus-1.5.2"; 1484 builder = ./builder.sh; 1485 src = fetchurl { ··· 1487 sha256 = "1mycqgjp18b6adqj2h90vp324xh8ysyi5migfmjc914vbnkf2q9k"; 1488 }; 1489 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1490 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1491 1492 - xf86videodummy = (stdenv.mkDerivation ((if overrides ? xf86videodummy then overrides.xf86videodummy else x: x) { 1493 name = "xf86-video-dummy-0.3.7"; 1494 builder = ./builder.sh; 1495 src = fetchurl { ··· 1497 sha256 = "1046p64xap69vlsmsz5rjv0djc970yhvq44fmllmas0mqp5lzy2n"; 1498 }; 1499 buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ]; 1500 - })) // {inherit fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ;}; 1501 1502 - xf86videofbdev = (stdenv.mkDerivation ((if overrides ? xf86videofbdev then overrides.xf86videofbdev else x: x) { 1503 name = "xf86-video-fbdev-0.4.4"; 1504 builder = ./builder.sh; 1505 src = fetchurl { ··· 1507 sha256 = "06ym7yy017lanj730hfkpfk4znx3dsj8jq3qvyzsn8w294kb7m4x"; 1508 }; 1509 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ]; 1510 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ;}; 1511 1512 - xf86videogeode = (stdenv.mkDerivation ((if overrides ? xf86videogeode then overrides.xf86videogeode else x: x) { 1513 name = "xf86-video-geode-2.11.15"; 1514 builder = ./builder.sh; 1515 src = fetchurl { ··· 1517 sha256 = "1w4ghr2a41kaw4g9na8ws5fjbmy8zkbxpxa21vmqc8mkjzb3pnq0"; 1518 }; 1519 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1520 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1521 1522 - xf86videoglide = (stdenv.mkDerivation ((if overrides ? xf86videoglide then overrides.xf86videoglide else x: x) { 1523 name = "xf86-video-glide-1.2.2"; 1524 builder = ./builder.sh; 1525 src = fetchurl { ··· 1527 sha256 = "1vaav6kx4n00q4fawgqnjmbdkppl0dir2dkrj4ad372mxrvl9c4y"; 1528 }; 1529 buildInputs = [pkgconfig xextproto xorgserver xproto ]; 1530 - })) // {inherit xextproto xorgserver xproto ;}; 1531 1532 - xf86videoglint = (stdenv.mkDerivation ((if overrides ? xf86videoglint then overrides.xf86videoglint else x: x) { 1533 name = "xf86-video-glint-1.2.8"; 1534 builder = ./builder.sh; 1535 src = fetchurl { ··· 1537 sha256 = "08a2aark2yn9irws9c78d9q44dichr03i9zbk61jgr54ncxqhzv5"; 1538 }; 1539 buildInputs = [pkgconfig libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ]; 1540 - })) // {inherit libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1541 1542 - xf86videoi128 = (stdenv.mkDerivation ((if overrides ? xf86videoi128 then overrides.xf86videoi128 else x: x) { 1543 name = "xf86-video-i128-1.3.6"; 1544 builder = ./builder.sh; 1545 src = fetchurl { ··· 1547 sha256 = "171b8lbxr56w3isph947dnw7x87hc46v6m3mcxdcz44gk167x0pq"; 1548 }; 1549 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1550 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1551 1552 - xf86videointel = (stdenv.mkDerivation ((if overrides ? xf86videointel then overrides.xf86videointel else x: x) { 1553 name = "xf86-video-intel-2.21.15"; 1554 builder = ./builder.sh; 1555 src = fetchurl { ··· 1557 sha256 = "1z6ncmpszmwqi9xr590c4kp4gjjf7mndcr56r35x2bx7h87i8nkx"; 1558 }; 1559 buildInputs = [pkgconfig dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ]; 1560 - })) // {inherit dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ;}; 1561 1562 - xf86videomach64 = (stdenv.mkDerivation ((if overrides ? xf86videomach64 then overrides.xf86videomach64 else x: x) { 1563 name = "xf86-video-mach64-6.9.4"; 1564 builder = ./builder.sh; 1565 src = fetchurl { ··· 1567 sha256 = "0pl582vnc6hdxqhf5c0qdyanjqxb4crnhqlmxxml5a60syw0iwcp"; 1568 }; 1569 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1570 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1571 1572 - xf86videomga = (stdenv.mkDerivation ((if overrides ? xf86videomga then overrides.xf86videomga else x: x) { 1573 name = "xf86-video-mga-1.6.3"; 1574 builder = ./builder.sh; 1575 src = fetchurl { ··· 1577 sha256 = "1my7y67sadjjmab1dyxckylrggi7p01yk4wwg9w6k1q96pmb213p"; 1578 }; 1579 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1580 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1581 1582 - xf86videomodesetting = (stdenv.mkDerivation ((if overrides ? xf86videomodesetting then overrides.xf86videomodesetting else x: x) { 1583 name = "xf86-video-modesetting-0.9.0"; 1584 builder = ./builder.sh; 1585 src = fetchurl { ··· 1587 sha256 = "0p6pjn5bnd2wr3lmas4b12zcq12d9ilvssga93fzlg90fdahikwh"; 1588 }; 1589 buildInputs = [pkgconfig fontsproto libdrm udev libpciaccess randrproto libX11 xextproto xorgserver xproto ]; 1590 - })) // {inherit fontsproto libdrm udev libpciaccess randrproto libX11 xextproto xorgserver xproto ;}; 1591 1592 - xf86videoneomagic = (stdenv.mkDerivation ((if overrides ? xf86videoneomagic then overrides.xf86videoneomagic else x: x) { 1593 name = "xf86-video-neomagic-1.2.8"; 1594 builder = ./builder.sh; 1595 src = fetchurl { ··· 1597 sha256 = "0x48sxs1p3kmwk3pq1j7vl93y59gdmgkq1x5xbnh0yal0angdash"; 1598 }; 1599 buildInputs = [pkgconfig fontsproto libpciaccess xorgserver xproto ]; 1600 - })) // {inherit fontsproto libpciaccess xorgserver xproto ;}; 1601 1602 - xf86videonewport = (stdenv.mkDerivation ((if overrides ? xf86videonewport then overrides.xf86videonewport else x: x) { 1603 name = "xf86-video-newport-0.2.4"; 1604 builder = ./builder.sh; 1605 src = fetchurl { ··· 1607 sha256 = "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"; 1608 }; 1609 buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xorgserver xproto ]; 1610 - })) // {inherit fontsproto randrproto renderproto videoproto xorgserver xproto ;}; 1611 1612 - xf86videonouveau = (stdenv.mkDerivation ((if overrides ? xf86videonouveau then overrides.xf86videonouveau else x: x) { 1613 name = "xf86-video-nouveau-1.0.10"; 1614 builder = ./builder.sh; 1615 src = fetchurl { ··· 1617 sha256 = "17fvjplzfx86099sqys0bfl8lfbmjz8li84kzj2x95mf1cbb7fn1"; 1618 }; 1619 buildInputs = [pkgconfig dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1620 - })) // {inherit dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1621 1622 - xf86videonv = (stdenv.mkDerivation ((if overrides ? xf86videonv then overrides.xf86videonv else x: x) { 1623 name = "xf86-video-nv-2.1.20"; 1624 builder = ./builder.sh; 1625 src = fetchurl { ··· 1627 sha256 = "1gqh1khc4zalip5hh2nksgs7i3piqq18nncgmsx9qvzi05azd5c3"; 1628 }; 1629 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1630 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1631 1632 - xf86videoopenchrome = (stdenv.mkDerivation ((if overrides ? xf86videoopenchrome then overrides.xf86videoopenchrome else x: x) { 1633 name = "xf86-video-openchrome-0.3.3"; 1634 builder = ./builder.sh; 1635 src = fetchurl { ··· 1637 sha256 = "1v8j4i1r268n4fc5gq54zg1x50j0rhw71f3lba7411mcblg2z7p4"; 1638 }; 1639 buildInputs = [pkgconfig fontsproto glproto libdrm udev libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ]; 1640 - })) // {inherit fontsproto glproto libdrm udev libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ;}; 1641 1642 - xf86videor128 = (stdenv.mkDerivation ((if overrides ? xf86videor128 then overrides.xf86videor128 else x: x) { 1643 name = "xf86-video-r128-6.9.2"; 1644 builder = ./builder.sh; 1645 src = fetchurl { ··· 1647 sha256 = "1q3fsc603k2yinphx5rrcl5356qkpywwz8axlw277l2231gjjbcb"; 1648 }; 1649 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ]; 1650 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ;}; 1651 1652 - xf86videosavage = (stdenv.mkDerivation ((if overrides ? xf86videosavage then overrides.xf86videosavage else x: x) { 1653 name = "xf86-video-savage-2.3.7"; 1654 builder = ./builder.sh; 1655 src = fetchurl { ··· 1657 sha256 = "0i2aqp68rfkrz9c1p6d7ny9x7bjrlnby7q56zf01fb12r42l4784"; 1658 }; 1659 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1660 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1661 1662 - xf86videosiliconmotion = (stdenv.mkDerivation ((if overrides ? xf86videosiliconmotion then overrides.xf86videosiliconmotion else x: x) { 1663 name = "xf86-video-siliconmotion-1.7.7"; 1664 builder = ./builder.sh; 1665 src = fetchurl { ··· 1667 sha256 = "1an321kqvsxq0z35acwl99lc8hpdkayw0q180744ypcl8ffvbf47"; 1668 }; 1669 buildInputs = [pkgconfig fontsproto libpciaccess videoproto xextproto xorgserver xproto ]; 1670 - })) // {inherit fontsproto libpciaccess videoproto xextproto xorgserver xproto ;}; 1671 1672 - xf86videosis = (stdenv.mkDerivation ((if overrides ? xf86videosis then overrides.xf86videosis else x: x) { 1673 name = "xf86-video-sis-0.10.7"; 1674 builder = ./builder.sh; 1675 src = fetchurl { ··· 1677 sha256 = "1l0w84x39gq4y9j81dny9r6rma1xkqvxpsavpkd8h7h8panbcbmy"; 1678 }; 1679 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ]; 1680 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ;}; 1681 1682 - xf86videosuncg6 = (stdenv.mkDerivation ((if overrides ? xf86videosuncg6 then overrides.xf86videosuncg6 else x: x) { 1683 name = "xf86-video-suncg6-1.1.2"; 1684 builder = ./builder.sh; 1685 src = fetchurl { ··· 1687 sha256 = "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"; 1688 }; 1689 buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ]; 1690 - })) // {inherit fontsproto randrproto renderproto xorgserver xproto ;}; 1691 1692 - xf86videosunffb = (stdenv.mkDerivation ((if overrides ? xf86videosunffb then overrides.xf86videosunffb else x: x) { 1693 name = "xf86-video-sunffb-1.2.2"; 1694 builder = ./builder.sh; 1695 src = fetchurl { ··· 1697 sha256 = "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"; 1698 }; 1699 buildInputs = [pkgconfig fontsproto randrproto renderproto xextproto xorgserver xproto ]; 1700 - })) // {inherit fontsproto randrproto renderproto xextproto xorgserver xproto ;}; 1701 1702 - xf86videotdfx = (stdenv.mkDerivation ((if overrides ? xf86videotdfx then overrides.xf86videotdfx else x: x) { 1703 name = "xf86-video-tdfx-1.4.5"; 1704 builder = ./builder.sh; 1705 src = fetchurl { ··· 1707 sha256 = "0nfqf1c8939s21ci1g7gacwzlr4g4nnilahgz7j2bz30zfnzpmbh"; 1708 }; 1709 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1710 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1711 1712 - xf86videotga = (stdenv.mkDerivation ((if overrides ? xf86videotga then overrides.xf86videotga else x: x) { 1713 name = "xf86-video-tga-1.2.2"; 1714 builder = ./builder.sh; 1715 src = fetchurl { ··· 1717 sha256 = "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"; 1718 }; 1719 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ]; 1720 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1721 1722 - xf86videotrident = (stdenv.mkDerivation ((if overrides ? xf86videotrident then overrides.xf86videotrident else x: x) { 1723 name = "xf86-video-trident-1.3.6"; 1724 builder = ./builder.sh; 1725 src = fetchurl { ··· 1727 sha256 = "0141qbfsm32i0pxjyx5czpa8x8m4lvapsp4amw1qigaa0gry6n3a"; 1728 }; 1729 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ]; 1730 - })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1731 1732 - xf86videov4l = (stdenv.mkDerivation ((if overrides ? xf86videov4l then overrides.xf86videov4l else x: x) { 1733 name = "xf86-video-v4l-0.2.0"; 1734 builder = ./builder.sh; 1735 src = fetchurl { ··· 1737 sha256 = "0pcjc75hgbih3qvhpsx8d4fljysfk025slxcqyyhr45dzch93zyb"; 1738 }; 1739 buildInputs = [pkgconfig randrproto videoproto xorgserver xproto ]; 1740 - })) // {inherit randrproto videoproto xorgserver xproto ;}; 1741 1742 - xf86videovesa = (stdenv.mkDerivation ((if overrides ? xf86videovesa then overrides.xf86videovesa else x: x) { 1743 name = "xf86-video-vesa-2.3.3"; 1744 builder = ./builder.sh; 1745 src = fetchurl { ··· 1747 sha256 = "1y5fsg0c4bgmh1cfsbnaaf388fppyy02i7mcy9vax78flkjpb2yf"; 1748 }; 1749 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ]; 1750 - })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ;}; 1751 1752 - xf86videovmware = (stdenv.mkDerivation ((if overrides ? xf86videovmware then overrides.xf86videovmware else x: x) { 1753 name = "xf86-video-vmware-13.0.2"; 1754 builder = ./builder.sh; 1755 src = fetchurl { ··· 1757 sha256 = "0m1wfsv34s4pyr5ry87yyjb2p6vmy6vyypdz5jx0sqnkx8n3vfn8"; 1758 }; 1759 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ]; 1760 - })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ;}; 1761 1762 - xf86videovoodoo = (stdenv.mkDerivation ((if overrides ? xf86videovoodoo then overrides.xf86videovoodoo else x: x) { 1763 name = "xf86-video-voodoo-1.2.5"; 1764 builder = ./builder.sh; 1765 src = fetchurl { ··· 1767 sha256 = "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"; 1768 }; 1769 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ]; 1770 - })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ;}; 1771 1772 - xf86videowsfb = (stdenv.mkDerivation ((if overrides ? xf86videowsfb then overrides.xf86videowsfb else x: x) { 1773 name = "xf86-video-wsfb-0.4.0"; 1774 builder = ./builder.sh; 1775 src = fetchurl { ··· 1777 sha256 = "0hr8397wpd0by1hc47fqqrnaw3qdqd8aqgwgzv38w5k3l3jy6p4p"; 1778 }; 1779 buildInputs = [pkgconfig xorgserver xproto ]; 1780 - })) // {inherit xorgserver xproto ;}; 1781 1782 - xf86vidmodeproto = (stdenv.mkDerivation ((if overrides ? xf86vidmodeproto then overrides.xf86vidmodeproto else x: x) { 1783 name = "xf86vidmodeproto-2.3.1"; 1784 builder = ./builder.sh; 1785 src = fetchurl { ··· 1787 sha256 = "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"; 1788 }; 1789 buildInputs = [pkgconfig ]; 1790 - })) // {inherit ;}; 1791 1792 - xfs = (stdenv.mkDerivation ((if overrides ? xfs then overrides.xfs else x: x) { 1793 name = "xfs-1.1.3"; 1794 builder = ./builder.sh; 1795 src = fetchurl { ··· 1797 sha256 = "1dwnf5gncpnjsbh9bdrc665kfnclhzzcpwpfnprvrnq4mlr4mx3v"; 1798 }; 1799 buildInputs = [pkgconfig libXfont xproto xtrans ]; 1800 - })) // {inherit libXfont xproto xtrans ;}; 1801 1802 - xgamma = (stdenv.mkDerivation ((if overrides ? xgamma then overrides.xgamma else x: x) { 1803 name = "xgamma-1.0.5"; 1804 builder = ./builder.sh; 1805 src = fetchurl { ··· 1807 sha256 = "0463sawps86jnxn121ramsz4sicy3az5wa5wsq4rqm8dm3za48p3"; 1808 }; 1809 buildInputs = [pkgconfig libX11 libXxf86vm ]; 1810 - })) // {inherit libX11 libXxf86vm ;}; 1811 1812 - xhost = (stdenv.mkDerivation ((if overrides ? xhost then overrides.xhost else x: x) { 1813 name = "xhost-1.0.6"; 1814 builder = ./builder.sh; 1815 src = fetchurl { ··· 1817 sha256 = "1hlxm0is9nks1cx033s1733kkib9ivx2bxa3pb9yayqavwibkxd6"; 1818 }; 1819 buildInputs = [pkgconfig libX11 libXau libXmu xproto ]; 1820 - })) // {inherit libX11 libXau libXmu xproto ;}; 1821 1822 - xineramaproto = (stdenv.mkDerivation ((if overrides ? xineramaproto then overrides.xineramaproto else x: x) { 1823 name = "xineramaproto-1.2.1"; 1824 builder = ./builder.sh; 1825 src = fetchurl { ··· 1827 sha256 = "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"; 1828 }; 1829 buildInputs = [pkgconfig ]; 1830 - })) // {inherit ;}; 1831 1832 - xinit = (stdenv.mkDerivation ((if overrides ? xinit then overrides.xinit else x: x) { 1833 name = "xinit-1.3.3"; 1834 builder = ./builder.sh; 1835 src = fetchurl { ··· 1837 sha256 = "1bq0mqy7y305g2rds1g5443f3d2kgxzafqhmiyabbmg3ws6qgckl"; 1838 }; 1839 buildInputs = [pkgconfig libX11 xproto ]; 1840 - })) // {inherit libX11 xproto ;}; 1841 1842 - xinput = (stdenv.mkDerivation ((if overrides ? xinput then overrides.xinput else x: x) { 1843 name = "xinput-1.6.1"; 1844 builder = ./builder.sh; 1845 src = fetchurl { ··· 1847 sha256 = "07w7zlpdhpwzzshg8q0y152cy3wl2fj7x1897glnp2la487jsqxp"; 1848 }; 1849 buildInputs = [pkgconfig inputproto libX11 libXext libXi libXinerama libXrandr ]; 1850 - })) // {inherit inputproto libX11 libXext libXi libXinerama libXrandr ;}; 1851 1852 - xkbcomp = (stdenv.mkDerivation ((if overrides ? xkbcomp then overrides.xkbcomp else x: x) { 1853 name = "xkbcomp-1.2.4"; 1854 builder = ./builder.sh; 1855 src = fetchurl { ··· 1857 sha256 = "0bas1d2wjiy5zy9d0g92d2p9pwv4aapfbfidi7hxy8ax8jmwkl4i"; 1858 }; 1859 buildInputs = [pkgconfig libX11 libxkbfile xproto ]; 1860 - })) // {inherit libX11 libxkbfile xproto ;}; 1861 1862 - xkbevd = (stdenv.mkDerivation ((if overrides ? xkbevd then overrides.xkbevd else x: x) { 1863 name = "xkbevd-1.1.3"; 1864 builder = ./builder.sh; 1865 src = fetchurl { ··· 1867 sha256 = "05h1xcnbalndbrryyqs8wzy9h3wz655vc0ymhlk2q4aik17licjm"; 1868 }; 1869 buildInputs = [pkgconfig libX11 libxkbfile ]; 1870 - })) // {inherit libX11 libxkbfile ;}; 1871 1872 - xkbprint = (stdenv.mkDerivation ((if overrides ? xkbprint then overrides.xkbprint else x: x) { 1873 name = "xkbprint-1.0.3"; 1874 builder = ./builder.sh; 1875 src = fetchurl { ··· 1877 sha256 = "1h4jb3gjrbjp79h5gcgkjvdxykcy2bmq03smpls820c8wnw6v17s"; 1878 }; 1879 buildInputs = [pkgconfig libX11 libxkbfile ]; 1880 - })) // {inherit libX11 libxkbfile ;}; 1881 1882 - xkbutils = (stdenv.mkDerivation ((if overrides ? xkbutils then overrides.xkbutils else x: x) { 1883 name = "xkbutils-1.0.4"; 1884 builder = ./builder.sh; 1885 src = fetchurl { ··· 1887 sha256 = "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"; 1888 }; 1889 buildInputs = [pkgconfig inputproto libX11 libXaw xproto libXt ]; 1890 - })) // {inherit inputproto libX11 libXaw xproto libXt ;}; 1891 1892 - xkeyboardconfig = (stdenv.mkDerivation ((if overrides ? xkeyboardconfig then overrides.xkeyboardconfig else x: x) { 1893 name = "xkeyboard-config-2.11"; 1894 builder = ./builder.sh; 1895 src = fetchurl { ··· 1897 sha256 = "0xkdyyi759hzls42hp4j3q2lc35n4j6b2g44ilx5qarci5h584p7"; 1898 }; 1899 buildInputs = [pkgconfig libX11 xproto ]; 1900 - })) // {inherit libX11 xproto ;}; 1901 1902 - xkill = (stdenv.mkDerivation ((if overrides ? xkill then overrides.xkill else x: x) { 1903 name = "xkill-1.0.4"; 1904 builder = ./builder.sh; 1905 src = fetchurl { ··· 1907 sha256 = "0bl1ky8ps9jg842j4mnmf4zbx8nkvk0h77w7bqjlpwij9wq2mvw8"; 1908 }; 1909 buildInputs = [pkgconfig libX11 libXmu xproto ]; 1910 - })) // {inherit libX11 libXmu xproto ;}; 1911 1912 - xlsatoms = (stdenv.mkDerivation ((if overrides ? xlsatoms then overrides.xlsatoms else x: x) { 1913 name = "xlsatoms-1.1.1"; 1914 builder = ./builder.sh; 1915 src = fetchurl { ··· 1917 sha256 = "1y9nfl8s7njxbnci8c20j986xixharasgg40vdw92y593j6dk2rv"; 1918 }; 1919 buildInputs = [pkgconfig libxcb ]; 1920 - })) // {inherit libxcb ;}; 1921 1922 - xlsclients = (stdenv.mkDerivation ((if overrides ? xlsclients then overrides.xlsclients else x: x) { 1923 name = "xlsclients-1.1.3"; 1924 builder = ./builder.sh; 1925 src = fetchurl { ··· 1927 sha256 = "0g9x7rrggs741x9xwvv1k9qayma980d88nhdqw7j3pn3qvy6d5jx"; 1928 }; 1929 buildInputs = [pkgconfig libxcb ]; 1930 - })) // {inherit libxcb ;}; 1931 1932 - xmessage = (stdenv.mkDerivation ((if overrides ? xmessage then overrides.xmessage else x: x) { 1933 name = "xmessage-1.0.4"; 1934 builder = ./builder.sh; 1935 src = fetchurl { ··· 1937 sha256 = "0s5bjlpxnmh8sxx6nfg9m0nr32r1sr3irr71wsnv76s33i34ppxw"; 1938 }; 1939 buildInputs = [pkgconfig libXaw libXt ]; 1940 - })) // {inherit libXaw libXt ;}; 1941 1942 - xmodmap = (stdenv.mkDerivation ((if overrides ? xmodmap then overrides.xmodmap else x: x) { 1943 name = "xmodmap-1.0.8"; 1944 builder = ./builder.sh; 1945 src = fetchurl { ··· 1947 sha256 = "1hwzm54m4ng09ls9i4bq0x84zbyhamgzasgrvhxxp8jqk34f7qpg"; 1948 }; 1949 buildInputs = [pkgconfig libX11 xproto ]; 1950 - })) // {inherit libX11 xproto ;}; 1951 1952 - xorgcffiles = (stdenv.mkDerivation ((if overrides ? xorgcffiles then overrides.xorgcffiles else x: x) { 1953 name = "xorg-cf-files-1.0.5"; 1954 builder = ./builder.sh; 1955 src = fetchurl { ··· 1957 sha256 = "1m3ypq0xcy46ghxc0svl1rbhpy3zvgmy0aa2mn7w7v7d8d8bh8zd"; 1958 }; 1959 buildInputs = [pkgconfig ]; 1960 - })) // {inherit ;}; 1961 1962 - xorgdocs = (stdenv.mkDerivation ((if overrides ? xorgdocs then overrides.xorgdocs else x: x) { 1963 name = "xorg-docs-1.7"; 1964 builder = ./builder.sh; 1965 src = fetchurl { ··· 1967 sha256 = "0prphdba6kgr1bxk7r07wxxx6x6pqjw6prr5qclypsb5sf5r3cdr"; 1968 }; 1969 buildInputs = [pkgconfig ]; 1970 - })) // {inherit ;}; 1971 1972 - xorgserver = (stdenv.mkDerivation ((if overrides ? xorgserver then overrides.xorgserver else x: x) { 1973 name = "xorg-server-1.14.7"; 1974 builder = ./builder.sh; 1975 src = fetchurl { ··· 1977 sha256 = "07s54g9q1bry1050dsa7x6hy55yjvq9sxs6ks89pc8l6mnk6zxpw"; 1978 }; 1979 buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ]; 1980 - })) // {inherit renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ;}; 1981 1982 - xorgsgmldoctools = (stdenv.mkDerivation ((if overrides ? xorgsgmldoctools then overrides.xorgsgmldoctools else x: x) { 1983 name = "xorg-sgml-doctools-1.11"; 1984 builder = ./builder.sh; 1985 src = fetchurl { ··· 1987 sha256 = "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"; 1988 }; 1989 buildInputs = [pkgconfig ]; 1990 - })) // {inherit ;}; 1991 1992 - xpr = (stdenv.mkDerivation ((if overrides ? xpr then overrides.xpr else x: x) { 1993 name = "xpr-1.0.4"; 1994 builder = ./builder.sh; 1995 src = fetchurl { ··· 1997 sha256 = "1dbcv26w2yand2qy7b3h5rbvw1mdmdd57jw88v53sgdr3vrqvngy"; 1998 }; 1999 buildInputs = [pkgconfig libX11 libXmu xproto ]; 2000 - })) // {inherit libX11 libXmu xproto ;}; 2001 2002 - xprop = (stdenv.mkDerivation ((if overrides ? xprop then overrides.xprop else x: x) { 2003 name = "xprop-1.2.2"; 2004 builder = ./builder.sh; 2005 src = fetchurl { ··· 2007 sha256 = "1ilvhqfjcg6f1hqahjkp8qaay9rhvmv2blvj3w9asraq0aqqivlv"; 2008 }; 2009 buildInputs = [pkgconfig libX11 xproto ]; 2010 - })) // {inherit libX11 xproto ;}; 2011 2012 - xproto = (stdenv.mkDerivation ((if overrides ? xproto then overrides.xproto else x: x) { 2013 name = "xproto-7.0.26"; 2014 builder = ./builder.sh; 2015 src = fetchurl { ··· 2017 sha256 = "0ksi8vhfd916bx2f3xlyhn6azf6cvvzrsdja26haa1cqfp0n4qb3"; 2018 }; 2019 buildInputs = [pkgconfig ]; 2020 - })) // {inherit ;}; 2021 2022 - xrandr = (stdenv.mkDerivation ((if overrides ? xrandr then overrides.xrandr else x: x) { 2023 name = "xrandr-1.4.2"; 2024 builder = ./builder.sh; 2025 src = fetchurl { ··· 2027 sha256 = "1g4hnj53wknsjwiqivyy3jl4qw7jwrpncz7d5p2z29zq5zlnxrxj"; 2028 }; 2029 buildInputs = [pkgconfig libX11 xproto libXrandr libXrender ]; 2030 - })) // {inherit libX11 xproto libXrandr libXrender ;}; 2031 2032 - xrdb = (stdenv.mkDerivation ((if overrides ? xrdb then overrides.xrdb else x: x) { 2033 name = "xrdb-1.1.0"; 2034 builder = ./builder.sh; 2035 src = fetchurl { ··· 2037 sha256 = "0nsnr90wazcdd50nc5dqswy0bmq6qcj14nnrhyi7rln9pxmpp0kk"; 2038 }; 2039 buildInputs = [pkgconfig libX11 libXmu xproto ]; 2040 - })) // {inherit libX11 libXmu xproto ;}; 2041 2042 - xrefresh = (stdenv.mkDerivation ((if overrides ? xrefresh then overrides.xrefresh else x: x) { 2043 name = "xrefresh-1.0.5"; 2044 builder = ./builder.sh; 2045 src = fetchurl { ··· 2047 sha256 = "1mlinwgvql6s1rbf46yckbfr9j22d3c3z7jx3n6ix7ca18dnf4rj"; 2048 }; 2049 buildInputs = [pkgconfig libX11 xproto ]; 2050 - })) // {inherit libX11 xproto ;}; 2051 2052 - xset = (stdenv.mkDerivation ((if overrides ? xset then overrides.xset else x: x) { 2053 name = "xset-1.2.3"; 2054 builder = ./builder.sh; 2055 src = fetchurl { ··· 2057 sha256 = "0qw0iic27bz3yz2wynf1gxs70hhkcf9c4jrv7zhlg1mq57xz90j3"; 2058 }; 2059 buildInputs = [pkgconfig libX11 libXext libXmu xproto libXxf86misc ]; 2060 - })) // {inherit libX11 libXext libXmu xproto libXxf86misc ;}; 2061 2062 - xsetroot = (stdenv.mkDerivation ((if overrides ? xsetroot then overrides.xsetroot else x: x) { 2063 name = "xsetroot-1.1.0"; 2064 builder = ./builder.sh; 2065 src = fetchurl { ··· 2067 sha256 = "1bazzsf9sy0q2bj4lxvh1kvyrhmpggzb7jg575i15sksksa3xwc8"; 2068 }; 2069 buildInputs = [pkgconfig libX11 xbitmaps libXcursor libXmu ]; 2070 - })) // {inherit libX11 xbitmaps libXcursor libXmu ;}; 2071 2072 - xtrans = (stdenv.mkDerivation ((if overrides ? xtrans then overrides.xtrans else x: x) { 2073 name = "xtrans-1.3.4"; 2074 builder = ./builder.sh; 2075 src = fetchurl { ··· 2077 sha256 = "0fjq9xa37k1czkidj3c5sads51gibrjvrxz9ag3hh9fmxzilwk85"; 2078 }; 2079 buildInputs = [pkgconfig ]; 2080 - })) // {inherit ;}; 2081 2082 - xvinfo = (stdenv.mkDerivation ((if overrides ? xvinfo then overrides.xvinfo else x: x) { 2083 name = "xvinfo-1.1.2"; 2084 builder = ./builder.sh; 2085 src = fetchurl { ··· 2087 sha256 = "1qsh7fszi727l3vwlaf9pb7bpikdv15smrx5qhlgg3kqzl7xklzf"; 2088 }; 2089 buildInputs = [pkgconfig libX11 xproto libXv ]; 2090 - })) // {inherit libX11 xproto libXv ;}; 2091 2092 - xwd = (stdenv.mkDerivation ((if overrides ? xwd then overrides.xwd else x: x) { 2093 name = "xwd-1.0.6"; 2094 builder = ./builder.sh; 2095 src = fetchurl { ··· 2097 sha256 = "0ybx48agdvjp9lgwvcw79r1x6jbqbyl3fliy3i5xwy4d4si9dcrv"; 2098 }; 2099 buildInputs = [pkgconfig libX11 xproto ]; 2100 - })) // {inherit libX11 xproto ;}; 2101 2102 - xwininfo = (stdenv.mkDerivation ((if overrides ? xwininfo then overrides.xwininfo else x: x) { 2103 name = "xwininfo-1.1.3"; 2104 builder = ./builder.sh; 2105 src = fetchurl { ··· 2107 sha256 = "1y1zn8ijqslb5lfpbq4bb78kllhch8in98ps7n8fg3dxjpmb13i1"; 2108 }; 2109 buildInputs = [pkgconfig libX11 libxcb xproto ]; 2110 - })) // {inherit libX11 libxcb xproto ;}; 2111 2112 - xwud = (stdenv.mkDerivation ((if overrides ? xwud then overrides.xwud else x: x) { 2113 name = "xwud-1.0.4"; 2114 builder = ./builder.sh; 2115 src = fetchurl { ··· 2117 sha256 = "1ggql6maivah58kwsh3z9x1hvzxm1a8888xx4s78cl77ryfa1cyn"; 2118 }; 2119 buildInputs = [pkgconfig libX11 xproto ]; 2120 - })) // {inherit libX11 xproto ;}; 2121 2122 }; in xorg
··· 3 4 let 5 6 + mkDerivation = name: attrs: 7 + let newAttrs = (overrides."${name}" or (x: x)) attrs; 8 + stdenv = newAttrs.stdenv or args.stdenv; 9 + in stdenv.mkDerivation (removeAttrs newAttrs [ "stdenv" ]); 10 + 11 overrides = import ./overrides.nix {inherit args xorg;}; 12 13 xorg = rec { 14 15 inherit pixman; 16 17 + applewmproto = (mkDerivation "applewmproto" { 18 name = "applewmproto-1.4.2"; 19 builder = ./builder.sh; 20 src = fetchurl { ··· 22 sha256 = "1zi4p07mp6jmk030p4gmglwxcwp0lzs5mi31y1b4rp8lsqxdxizw"; 23 }; 24 buildInputs = [pkgconfig ]; 25 + }) // {inherit ;}; 26 27 + bdftopcf = (mkDerivation "bdftopcf" { 28 name = "bdftopcf-1.0.4"; 29 builder = ./builder.sh; 30 src = fetchurl { ··· 32 sha256 = "1617zmgnx50n7vxlqyj84fl7vnk813jjqmi6jpigyz1xp9br1xga"; 33 }; 34 buildInputs = [pkgconfig libXfont ]; 35 + }) // {inherit libXfont ;}; 36 37 + bigreqsproto = (mkDerivation "bigreqsproto" { 38 name = "bigreqsproto-1.1.2"; 39 builder = ./builder.sh; 40 src = fetchurl { ··· 42 sha256 = "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"; 43 }; 44 buildInputs = [pkgconfig ]; 45 + }) // {inherit ;}; 46 47 + compositeproto = (mkDerivation "compositeproto" { 48 name = "compositeproto-0.4.2"; 49 builder = ./builder.sh; 50 src = fetchurl { ··· 52 sha256 = "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"; 53 }; 54 buildInputs = [pkgconfig ]; 55 + }) // {inherit ;}; 56 57 + damageproto = (mkDerivation "damageproto" { 58 name = "damageproto-1.2.1"; 59 builder = ./builder.sh; 60 src = fetchurl { ··· 62 sha256 = "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"; 63 }; 64 buildInputs = [pkgconfig ]; 65 + }) // {inherit ;}; 66 67 + dmxproto = (mkDerivation "dmxproto" { 68 name = "dmxproto-2.3.1"; 69 builder = ./builder.sh; 70 src = fetchurl { ··· 72 sha256 = "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"; 73 }; 74 buildInputs = [pkgconfig ]; 75 + }) // {inherit ;}; 76 77 + dri2proto = (mkDerivation "dri2proto" { 78 name = "dri2proto-2.8"; 79 builder = ./builder.sh; 80 src = fetchurl { ··· 82 sha256 = "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"; 83 }; 84 buildInputs = [pkgconfig ]; 85 + }) // {inherit ;}; 86 87 + dri3proto = (mkDerivation "dri3proto" { 88 name = "dri3proto-1.0"; 89 builder = ./builder.sh; 90 src = fetchurl { ··· 92 sha256 = "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"; 93 }; 94 buildInputs = [pkgconfig ]; 95 + }) // {inherit ;}; 96 97 + encodings = (mkDerivation "encodings" { 98 name = "encodings-1.0.4"; 99 builder = ./builder.sh; 100 src = fetchurl { ··· 102 sha256 = "0ffmaw80vmfwdgvdkp6495xgsqszb6s0iira5j0j6pd4i0lk3mnf"; 103 }; 104 buildInputs = [pkgconfig ]; 105 + }) // {inherit ;}; 106 107 + fixesproto = (mkDerivation "fixesproto" { 108 name = "fixesproto-5.0"; 109 builder = ./builder.sh; 110 src = fetchurl { ··· 112 sha256 = "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"; 113 }; 114 buildInputs = [pkgconfig xextproto ]; 115 + }) // {inherit xextproto ;}; 116 117 + fontadobe100dpi = (mkDerivation "fontadobe100dpi" { 118 name = "font-adobe-100dpi-1.0.3"; 119 builder = ./builder.sh; 120 src = fetchurl { ··· 122 sha256 = "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"; 123 }; 124 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 125 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 126 127 + fontadobe75dpi = (mkDerivation "fontadobe75dpi" { 128 name = "font-adobe-75dpi-1.0.3"; 129 builder = ./builder.sh; 130 src = fetchurl { ··· 132 sha256 = "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"; 133 }; 134 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 135 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 136 137 + fontadobeutopia100dpi = (mkDerivation "fontadobeutopia100dpi" { 138 name = "font-adobe-utopia-100dpi-1.0.4"; 139 builder = ./builder.sh; 140 src = fetchurl { ··· 142 sha256 = "19dd9znam1ah72jmdh7i6ny2ss2r6m21z9v0l43xvikw48zmwvyi"; 143 }; 144 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 145 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 146 147 + fontadobeutopia75dpi = (mkDerivation "fontadobeutopia75dpi" { 148 name = "font-adobe-utopia-75dpi-1.0.4"; 149 builder = ./builder.sh; 150 src = fetchurl { ··· 152 sha256 = "152wigpph5wvl4k9m3l4mchxxisgsnzlx033mn5iqrpkc6f72cl7"; 153 }; 154 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 155 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 156 157 + fontadobeutopiatype1 = (mkDerivation "fontadobeutopiatype1" { 158 name = "font-adobe-utopia-type1-1.0.4"; 159 builder = ./builder.sh; 160 src = fetchurl { ··· 162 sha256 = "0xw0pdnzj5jljsbbhakc6q9ha2qnca1jr81zk7w70yl9bw83b54p"; 163 }; 164 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 165 + }) // {inherit mkfontdir mkfontscale ;}; 166 167 + fontalias = (mkDerivation "fontalias" { 168 name = "font-alias-1.0.3"; 169 builder = ./builder.sh; 170 src = fetchurl { ··· 172 sha256 = "16ic8wfwwr3jicaml7b5a0sk6plcgc1kg84w02881yhwmqm3nicb"; 173 }; 174 buildInputs = [pkgconfig ]; 175 + }) // {inherit ;}; 176 177 + fontarabicmisc = (mkDerivation "fontarabicmisc" { 178 name = "font-arabic-misc-1.0.3"; 179 builder = ./builder.sh; 180 src = fetchurl { ··· 182 sha256 = "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"; 183 }; 184 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 185 + }) // {inherit bdftopcf mkfontdir ;}; 186 187 + fontbh100dpi = (mkDerivation "fontbh100dpi" { 188 name = "font-bh-100dpi-1.0.3"; 189 builder = ./builder.sh; 190 src = fetchurl { ··· 192 sha256 = "10cl4gm38dw68jzln99ijix730y7cbx8np096gmpjjwff1i73h13"; 193 }; 194 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 195 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 196 197 + fontbh75dpi = (mkDerivation "fontbh75dpi" { 198 name = "font-bh-75dpi-1.0.3"; 199 builder = ./builder.sh; 200 src = fetchurl { ··· 202 sha256 = "073jmhf0sr2j1l8da97pzsqj805f7mf9r2gy92j4diljmi8sm1il"; 203 }; 204 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 205 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 206 207 + fontbhlucidatypewriter100dpi = (mkDerivation "fontbhlucidatypewriter100dpi" { 208 name = "font-bh-lucidatypewriter-100dpi-1.0.3"; 209 builder = ./builder.sh; 210 src = fetchurl { ··· 212 sha256 = "1fqzckxdzjv4802iad2fdrkpaxl4w0hhs9lxlkyraq2kq9ik7a32"; 213 }; 214 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 215 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 216 217 + fontbhlucidatypewriter75dpi = (mkDerivation "fontbhlucidatypewriter75dpi" { 218 name = "font-bh-lucidatypewriter-75dpi-1.0.3"; 219 builder = ./builder.sh; 220 src = fetchurl { ··· 222 sha256 = "0cfbxdp5m12cm7jsh3my0lym9328cgm7fa9faz2hqj05wbxnmhaa"; 223 }; 224 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 225 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 226 227 + fontbhttf = (mkDerivation "fontbhttf" { 228 name = "font-bh-ttf-1.0.3"; 229 builder = ./builder.sh; 230 src = fetchurl { ··· 232 sha256 = "0pyjmc0ha288d4i4j0si4dh3ncf3jiwwjljvddrb0k8v4xiyljqv"; 233 }; 234 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 235 + }) // {inherit mkfontdir mkfontscale ;}; 236 237 + fontbhtype1 = (mkDerivation "fontbhtype1" { 238 name = "font-bh-type1-1.0.3"; 239 builder = ./builder.sh; 240 src = fetchurl { ··· 242 sha256 = "1hb3iav089albp4sdgnlh50k47cdjif9p4axm0kkjvs8jyi5a53n"; 243 }; 244 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 245 + }) // {inherit mkfontdir mkfontscale ;}; 246 247 + fontbitstream100dpi = (mkDerivation "fontbitstream100dpi" { 248 name = "font-bitstream-100dpi-1.0.3"; 249 builder = ./builder.sh; 250 src = fetchurl { ··· 252 sha256 = "1kmn9jbck3vghz6rj3bhc3h0w6gh0qiaqm90cjkqsz1x9r2dgq7b"; 253 }; 254 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 255 + }) // {inherit bdftopcf mkfontdir ;}; 256 257 + fontbitstream75dpi = (mkDerivation "fontbitstream75dpi" { 258 name = "font-bitstream-75dpi-1.0.3"; 259 builder = ./builder.sh; 260 src = fetchurl { ··· 262 sha256 = "13plbifkvfvdfym6gjbgy9wx2xbdxi9hfrl1k22xayy02135wgxs"; 263 }; 264 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 265 + }) // {inherit bdftopcf mkfontdir ;}; 266 267 + fontbitstreamtype1 = (mkDerivation "fontbitstreamtype1" { 268 name = "font-bitstream-type1-1.0.3"; 269 builder = ./builder.sh; 270 src = fetchurl { ··· 272 sha256 = "1256z0jhcf5gbh1d03593qdwnag708rxqa032izmfb5dmmlhbsn6"; 273 }; 274 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 275 + }) // {inherit mkfontdir mkfontscale ;}; 276 277 + fontcronyxcyrillic = (mkDerivation "fontcronyxcyrillic" { 278 name = "font-cronyx-cyrillic-1.0.3"; 279 builder = ./builder.sh; 280 src = fetchurl { ··· 282 sha256 = "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"; 283 }; 284 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 285 + }) // {inherit bdftopcf mkfontdir ;}; 286 287 + fontcursormisc = (mkDerivation "fontcursormisc" { 288 name = "font-cursor-misc-1.0.3"; 289 builder = ./builder.sh; 290 src = fetchurl { ··· 292 sha256 = "0dd6vfiagjc4zmvlskrbjz85jfqhf060cpys8j0y1qpcbsrkwdhp"; 293 }; 294 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 295 + }) // {inherit bdftopcf mkfontdir ;}; 296 297 + fontdaewoomisc = (mkDerivation "fontdaewoomisc" { 298 name = "font-daewoo-misc-1.0.3"; 299 builder = ./builder.sh; 300 src = fetchurl { ··· 302 sha256 = "1s2bbhizzgbbbn5wqs3vw53n619cclxksljvm759h9p1prqdwrdw"; 303 }; 304 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 305 + }) // {inherit bdftopcf mkfontdir ;}; 306 307 + fontdecmisc = (mkDerivation "fontdecmisc" { 308 name = "font-dec-misc-1.0.3"; 309 builder = ./builder.sh; 310 src = fetchurl { ··· 312 sha256 = "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"; 313 }; 314 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 315 + }) // {inherit bdftopcf mkfontdir ;}; 316 317 + fontibmtype1 = (mkDerivation "fontibmtype1" { 318 name = "font-ibm-type1-1.0.3"; 319 builder = ./builder.sh; 320 src = fetchurl { ··· 322 sha256 = "1pyjll4adch3z5cg663s6vhi02k8m6488f0mrasg81ssvg9jinzx"; 323 }; 324 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 325 + }) // {inherit mkfontdir mkfontscale ;}; 326 327 + fontisasmisc = (mkDerivation "fontisasmisc" { 328 name = "font-isas-misc-1.0.3"; 329 builder = ./builder.sh; 330 src = fetchurl { ··· 332 sha256 = "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"; 333 }; 334 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 335 + }) // {inherit bdftopcf mkfontdir ;}; 336 337 + fontjismisc = (mkDerivation "fontjismisc" { 338 name = "font-jis-misc-1.0.3"; 339 builder = ./builder.sh; 340 src = fetchurl { ··· 342 sha256 = "0rdc3xdz12pnv951538q6wilx8mrdndpkphpbblszsv7nc8cw61b"; 343 }; 344 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 345 + }) // {inherit bdftopcf mkfontdir ;}; 346 347 + fontmicromisc = (mkDerivation "fontmicromisc" { 348 name = "font-micro-misc-1.0.3"; 349 builder = ./builder.sh; 350 src = fetchurl { ··· 352 sha256 = "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"; 353 }; 354 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 355 + }) // {inherit bdftopcf mkfontdir ;}; 356 357 + fontmisccyrillic = (mkDerivation "fontmisccyrillic" { 358 name = "font-misc-cyrillic-1.0.3"; 359 builder = ./builder.sh; 360 src = fetchurl { ··· 362 sha256 = "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"; 363 }; 364 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 365 + }) // {inherit bdftopcf mkfontdir ;}; 366 367 + fontmiscethiopic = (mkDerivation "fontmiscethiopic" { 368 name = "font-misc-ethiopic-1.0.3"; 369 builder = ./builder.sh; 370 src = fetchurl { ··· 372 sha256 = "19cq7iq0pfad0nc2v28n681fdq3fcw1l1hzaq0wpkgpx7bc1zjsk"; 373 }; 374 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 375 + }) // {inherit mkfontdir mkfontscale ;}; 376 377 + fontmiscmeltho = (mkDerivation "fontmiscmeltho" { 378 name = "font-misc-meltho-1.0.3"; 379 builder = ./builder.sh; 380 src = fetchurl { ··· 382 sha256 = "148793fqwzrc3bmh2vlw5fdiwjc2n7vs25cic35gfp452czk489p"; 383 }; 384 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 385 + }) // {inherit mkfontdir mkfontscale ;}; 386 387 + fontmiscmisc = (mkDerivation "fontmiscmisc" { 388 name = "font-misc-misc-1.1.2"; 389 builder = ./builder.sh; 390 src = fetchurl { ··· 392 sha256 = "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"; 393 }; 394 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 395 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 396 397 + fontmuttmisc = (mkDerivation "fontmuttmisc" { 398 name = "font-mutt-misc-1.0.3"; 399 builder = ./builder.sh; 400 src = fetchurl { ··· 402 sha256 = "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"; 403 }; 404 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 405 + }) // {inherit bdftopcf mkfontdir ;}; 406 407 + fontschumachermisc = (mkDerivation "fontschumachermisc" { 408 name = "font-schumacher-misc-1.1.2"; 409 builder = ./builder.sh; 410 src = fetchurl { ··· 412 sha256 = "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"; 413 }; 414 buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 415 + }) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;}; 416 417 + fontscreencyrillic = (mkDerivation "fontscreencyrillic" { 418 name = "font-screen-cyrillic-1.0.4"; 419 builder = ./builder.sh; 420 src = fetchurl { ··· 422 sha256 = "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"; 423 }; 424 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 425 + }) // {inherit bdftopcf mkfontdir ;}; 426 427 + fontsonymisc = (mkDerivation "fontsonymisc" { 428 name = "font-sony-misc-1.0.3"; 429 builder = ./builder.sh; 430 src = fetchurl { ··· 432 sha256 = "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"; 433 }; 434 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 435 + }) // {inherit bdftopcf mkfontdir ;}; 436 437 + fontsproto = (mkDerivation "fontsproto" { 438 name = "fontsproto-2.1.2"; 439 builder = ./builder.sh; 440 src = fetchurl { ··· 442 sha256 = "1ab8mbqxdwvdz4k5x4xb9c4n5w7i1xw276cbpk4z7a1nlpjrg746"; 443 }; 444 buildInputs = [pkgconfig ]; 445 + }) // {inherit ;}; 446 447 + fontsunmisc = (mkDerivation "fontsunmisc" { 448 name = "font-sun-misc-1.0.3"; 449 builder = ./builder.sh; 450 src = fetchurl { ··· 452 sha256 = "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"; 453 }; 454 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 455 + }) // {inherit bdftopcf mkfontdir ;}; 456 457 + fontutil = (mkDerivation "fontutil" { 458 name = "font-util-1.3.0"; 459 builder = ./builder.sh; 460 src = fetchurl { ··· 462 sha256 = "15cijajwhjzpy3ydc817zz8x5z4gbkyv3fps687jbq544mbfbafz"; 463 }; 464 buildInputs = [pkgconfig ]; 465 + }) // {inherit ;}; 466 467 + fontwinitzkicyrillic = (mkDerivation "fontwinitzkicyrillic" { 468 name = "font-winitzki-cyrillic-1.0.3"; 469 builder = ./builder.sh; 470 src = fetchurl { ··· 472 sha256 = "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"; 473 }; 474 buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 475 + }) // {inherit bdftopcf mkfontdir ;}; 476 477 + fontxfree86type1 = (mkDerivation "fontxfree86type1" { 478 name = "font-xfree86-type1-1.0.4"; 479 builder = ./builder.sh; 480 src = fetchurl { ··· 482 sha256 = "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"; 483 }; 484 buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 485 + }) // {inherit mkfontdir mkfontscale ;}; 486 487 + gccmakedep = (mkDerivation "gccmakedep" { 488 name = "gccmakedep-1.0.3"; 489 builder = ./builder.sh; 490 src = fetchurl { ··· 492 sha256 = "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"; 493 }; 494 buildInputs = [pkgconfig ]; 495 + }) // {inherit ;}; 496 497 + glamoregl = (mkDerivation "glamoregl" { 498 name = "glamor-egl-0.6.0"; 499 builder = ./builder.sh; 500 src = fetchurl { ··· 502 sha256 = "1jg5clihklb9drh1jd7nhhdsszla6nv7xmbvm8yvakh5wrb1nlv6"; 503 }; 504 buildInputs = [pkgconfig dri2proto xorgserver ]; 505 + }) // {inherit dri2proto xorgserver ;}; 506 507 + glproto = (mkDerivation "glproto" { 508 name = "glproto-1.4.17"; 509 builder = ./builder.sh; 510 src = fetchurl { ··· 512 sha256 = "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"; 513 }; 514 buildInputs = [pkgconfig ]; 515 + }) // {inherit ;}; 516 517 + iceauth = (mkDerivation "iceauth" { 518 name = "iceauth-1.0.6"; 519 builder = ./builder.sh; 520 src = fetchurl { ··· 522 sha256 = "1x72y99dxf2fxnlyf0yrf9yzd8xzimxshy6l8mprwhrv6lvhi6dx"; 523 }; 524 buildInputs = [pkgconfig libICE xproto ]; 525 + }) // {inherit libICE xproto ;}; 526 527 + imake = (mkDerivation "imake" { 528 name = "imake-1.0.7"; 529 builder = ./builder.sh; 530 src = fetchurl { ··· 532 sha256 = "0zpk8p044jh14bis838shbf4100bjg7mccd7bq54glpsq552q339"; 533 }; 534 buildInputs = [pkgconfig xproto ]; 535 + }) // {inherit xproto ;}; 536 537 + inputproto = (mkDerivation "inputproto" { 538 name = "inputproto-2.3.1"; 539 builder = ./builder.sh; 540 src = fetchurl { ··· 542 sha256 = "1lf1jlxp0fc8h6fjdffhd084dqab94966l1zm3rwwsis0mifwiss"; 543 }; 544 buildInputs = [pkgconfig ]; 545 + }) // {inherit ;}; 546 547 + kbproto = (mkDerivation "kbproto" { 548 name = "kbproto-1.0.6"; 549 builder = ./builder.sh; 550 src = fetchurl { ··· 552 sha256 = "0yal11hhpiisy3w8wmacsdzzzcnc3xwnswxz8k7zri40xc5aqz03"; 553 }; 554 buildInputs = [pkgconfig ]; 555 + }) // {inherit ;}; 556 557 + libAppleWM = (mkDerivation "libAppleWM" { 558 name = "libAppleWM-1.4.1"; 559 builder = ./builder.sh; 560 src = fetchurl { ··· 562 sha256 = "0r8x28n45q89x91mz8mv0zkkcxi8wazkac886fyvflhiv2y8ap2y"; 563 }; 564 buildInputs = [pkgconfig applewmproto libX11 libXext xextproto ]; 565 + }) // {inherit applewmproto libX11 libXext xextproto ;}; 566 567 + libFS = (mkDerivation "libFS" { 568 name = "libFS-1.0.6"; 569 builder = ./builder.sh; 570 src = fetchurl { ··· 572 sha256 = "1mxfsvj9m3pn8cdkcn4kg190zp665mf4pv0083g6xykvsgxzq1wh"; 573 }; 574 buildInputs = [pkgconfig fontsproto xproto xtrans ]; 575 + }) // {inherit fontsproto xproto xtrans ;}; 576 577 + libICE = (mkDerivation "libICE" { 578 name = "libICE-1.0.9"; 579 builder = ./builder.sh; 580 src = fetchurl { ··· 582 sha256 = "00p2b6bsg6kcdbb39bv46339qcywxfl4hsrz8asm4hy6q7r34w4g"; 583 }; 584 buildInputs = [pkgconfig xproto xtrans ]; 585 + }) // {inherit xproto xtrans ;}; 586 587 + libSM = (mkDerivation "libSM" { 588 name = "libSM-1.2.2"; 589 builder = ./builder.sh; 590 src = fetchurl { ··· 592 sha256 = "1gc7wavgs435g9qkp9jw4lhmaiq6ip9llv49f054ad6ryp4sib0b"; 593 }; 594 buildInputs = [pkgconfig libICE libuuid xproto xtrans ]; 595 + }) // {inherit libICE libuuid xproto xtrans ;}; 596 597 + libWindowsWM = (mkDerivation "libWindowsWM" { 598 name = "libWindowsWM-1.0.1"; 599 builder = ./builder.sh; 600 src = fetchurl { ··· 602 sha256 = "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"; 603 }; 604 buildInputs = [pkgconfig windowswmproto libX11 libXext xextproto ]; 605 + }) // {inherit windowswmproto libX11 libXext xextproto ;}; 606 607 + libX11 = (mkDerivation "libX11" { 608 name = "libX11-1.6.2"; 609 builder = ./builder.sh; 610 src = fetchurl { ··· 612 sha256 = "05mx0s0vqzds3qjc1gmjr2s6x2ll37z4lfhgm7p2w7936zl2g81a"; 613 }; 614 buildInputs = [pkgconfig inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ]; 615 + }) // {inherit inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ;}; 616 617 + libXScrnSaver = (mkDerivation "libXScrnSaver" { 618 name = "libXScrnSaver-1.2.2"; 619 builder = ./builder.sh; 620 src = fetchurl { ··· 622 sha256 = "07ff4r20nkkrj7h08f9fwamds9b3imj8jz5iz6y38zqw6jkyzwcg"; 623 }; 624 buildInputs = [pkgconfig scrnsaverproto libX11 libXext xextproto ]; 625 + }) // {inherit scrnsaverproto libX11 libXext xextproto ;}; 626 627 + libXau = (mkDerivation "libXau" { 628 name = "libXau-1.0.8"; 629 builder = ./builder.sh; 630 src = fetchurl { ··· 632 sha256 = "1wm4pv12f36cwzhldpp7vy3lhm3xdcnp4f184xkxsp7b18r7gm7x"; 633 }; 634 buildInputs = [pkgconfig xproto ]; 635 + }) // {inherit xproto ;}; 636 637 + libXaw = (mkDerivation "libXaw" { 638 name = "libXaw-1.0.12"; 639 builder = ./builder.sh; 640 src = fetchurl { ··· 642 sha256 = "1xnv7jy86j9vhmw74frkzcraynqbw1p1s79jasargsgwfi433z4n"; 643 }; 644 buildInputs = [pkgconfig libX11 libXext xextproto libXmu libXpm xproto libXt ]; 645 + }) // {inherit libX11 libXext xextproto libXmu libXpm xproto libXt ;}; 646 647 + libXcomposite = (mkDerivation "libXcomposite" { 648 name = "libXcomposite-0.4.4"; 649 builder = ./builder.sh; 650 src = fetchurl { ··· 652 sha256 = "0y21nfpa5s8qmx0srdlilyndas3sgl0c6rc26d5fx2vx436m1qpd"; 653 }; 654 buildInputs = [pkgconfig compositeproto libX11 libXfixes xproto ]; 655 + }) // {inherit compositeproto libX11 libXfixes xproto ;}; 656 657 + libXcursor = (mkDerivation "libXcursor" { 658 name = "libXcursor-1.1.14"; 659 builder = ./builder.sh; 660 src = fetchurl { ··· 662 sha256 = "1prkdicl5y5yx32h1azh6gjfbijvjp415javv8dsakd13jrarilv"; 663 }; 664 buildInputs = [pkgconfig fixesproto libX11 libXfixes xproto libXrender ]; 665 + }) // {inherit fixesproto libX11 libXfixes xproto libXrender ;}; 666 667 + libXdamage = (mkDerivation "libXdamage" { 668 name = "libXdamage-1.1.4"; 669 builder = ./builder.sh; 670 src = fetchurl { ··· 672 sha256 = "1bamagq7g6s0d23l8rb3nppj8ifqj05f7z9bhbs4fdg8az3ffgvw"; 673 }; 674 buildInputs = [pkgconfig damageproto fixesproto libX11 xextproto libXfixes xproto ]; 675 + }) // {inherit damageproto fixesproto libX11 xextproto libXfixes xproto ;}; 676 677 + libXdmcp = (mkDerivation "libXdmcp" { 678 name = "libXdmcp-1.1.1"; 679 builder = ./builder.sh; 680 src = fetchurl { ··· 682 sha256 = "13highx4xpgkiwykpcl7z2laslrjc4pzi4h617ny9p7r6116vkls"; 683 }; 684 buildInputs = [pkgconfig xproto ]; 685 + }) // {inherit xproto ;}; 686 687 + libXext = (mkDerivation "libXext" { 688 name = "libXext-1.3.3"; 689 builder = ./builder.sh; 690 src = fetchurl { ··· 692 sha256 = "0dbfn5bznnrhqzvkrcmw4c44yvvpwdcsrvzxf4rk27r36b9x865m"; 693 }; 694 buildInputs = [pkgconfig libX11 xextproto xproto ]; 695 + }) // {inherit libX11 xextproto xproto ;}; 696 697 + libXfixes = (mkDerivation "libXfixes" { 698 name = "libXfixes-5.0.1"; 699 builder = ./builder.sh; 700 src = fetchurl { ··· 702 sha256 = "0rs7qgzr6dpr62db7sd91c1b47hzhzfr010qwnpcm8sg122w1gk3"; 703 }; 704 buildInputs = [pkgconfig fixesproto libX11 xextproto xproto ]; 705 + }) // {inherit fixesproto libX11 xextproto xproto ;}; 706 707 + libXfont = (mkDerivation "libXfont" { 708 name = "libXfont-1.4.8"; 709 builder = ./builder.sh; 710 src = fetchurl { ··· 712 sha256 = "01fh2hnnaby8x6mv57x78nsqwhls70gwykldzd8b43vrpzzd8s2m"; 713 }; 714 buildInputs = [pkgconfig libfontenc fontsproto freetype xproto xtrans zlib ]; 715 + }) // {inherit libfontenc fontsproto freetype xproto xtrans zlib ;}; 716 717 + libXft = (mkDerivation "libXft" { 718 name = "libXft-2.3.2"; 719 builder = ./builder.sh; 720 src = fetchurl { ··· 722 sha256 = "0k6wzi5rzs0d0n338ms8n8lfyhq914hw4yl2j7553wqxfqjci8zm"; 723 }; 724 buildInputs = [pkgconfig fontconfig freetype libX11 xproto libXrender ]; 725 + }) // {inherit fontconfig freetype libX11 xproto libXrender ;}; 726 727 + libXi = (mkDerivation "libXi" { 728 name = "libXi-1.7.4"; 729 builder = ./builder.sh; 730 src = fetchurl { ··· 732 sha256 = "0i12lj973grlp9fa79v0vh9cahk3nf9csdjnf81iip0qcrlc5zrc"; 733 }; 734 buildInputs = [pkgconfig inputproto libX11 libXext xextproto libXfixes xproto ]; 735 + }) // {inherit inputproto libX11 libXext xextproto libXfixes xproto ;}; 736 737 + libXinerama = (mkDerivation "libXinerama" { 738 name = "libXinerama-1.1.3"; 739 builder = ./builder.sh; 740 src = fetchurl { ··· 742 sha256 = "1qlqfvzw45gdzk9xirgwlp2qgj0hbsyiqj8yh8zml2bk2ygnjibs"; 743 }; 744 buildInputs = [pkgconfig libX11 libXext xextproto xineramaproto ]; 745 + }) // {inherit libX11 libXext xextproto xineramaproto ;}; 746 747 + libXmu = (mkDerivation "libXmu" { 748 name = "libXmu-1.1.2"; 749 builder = ./builder.sh; 750 src = fetchurl { ··· 752 sha256 = "02wx6jw7i0q5qwx87yf94fsn3h0xpz1k7dz1nkwfwm1j71ydqvkm"; 753 }; 754 buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ]; 755 + }) // {inherit libX11 libXext xextproto xproto libXt ;}; 756 757 + libXp = (mkDerivation "libXp" { 758 name = "libXp-1.0.2"; 759 builder = ./builder.sh; 760 src = fetchurl { ··· 762 sha256 = "1dfh5w8sjz5b5fl6dl4y63ckq99snslz7bir8zq2rg8ax6syabwm"; 763 }; 764 buildInputs = [pkgconfig printproto libX11 libXau libXext xextproto ]; 765 + }) // {inherit printproto libX11 libXau libXext xextproto ;}; 766 767 + libXpm = (mkDerivation "libXpm" { 768 name = "libXpm-3.5.11"; 769 builder = ./builder.sh; 770 src = fetchurl { ··· 772 sha256 = "07041q4k8m4nirzl7lrqn8by2zylx0xvh6n0za301qqs3njszgf5"; 773 }; 774 buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ]; 775 + }) // {inherit libX11 libXext xextproto xproto libXt ;}; 776 777 + libXrandr = (mkDerivation "libXrandr" { 778 name = "libXrandr-1.4.2"; 779 builder = ./builder.sh; 780 src = fetchurl { ··· 782 sha256 = "1b95p3l84ppv6j7dbbmg0zrz6k8xdwvnag1l6ajm3gk9qwdb79ya"; 783 }; 784 buildInputs = [pkgconfig randrproto renderproto libX11 libXext xextproto xproto libXrender ]; 785 + }) // {inherit randrproto renderproto libX11 libXext xextproto xproto libXrender ;}; 786 787 + libXrender = (mkDerivation "libXrender" { 788 name = "libXrender-0.9.8"; 789 builder = ./builder.sh; 790 src = fetchurl { ··· 792 sha256 = "0qpwyjhbpp734vnhca992pjh4w7ijslidkzx1pcwbbk000pv050x"; 793 }; 794 buildInputs = [pkgconfig renderproto libX11 xproto ]; 795 + }) // {inherit renderproto libX11 xproto ;}; 796 797 + libXres = (mkDerivation "libXres" { 798 name = "libXres-1.0.7"; 799 builder = ./builder.sh; 800 src = fetchurl { ··· 802 sha256 = "1rd0bzn67cpb2qkc946gch2183r4bdjfhs6cpqbipy47m9a91296"; 803 }; 804 buildInputs = [pkgconfig resourceproto libX11 libXext xextproto xproto ]; 805 + }) // {inherit resourceproto libX11 libXext xextproto xproto ;}; 806 807 + libXt = (mkDerivation "libXt" { 808 name = "libXt-1.1.4"; 809 builder = ./builder.sh; 810 src = fetchurl { ··· 812 sha256 = "0myxwbx9ylam5x3ia5b5f4x8azcqdm420h9ad1r4hrgmi2lrffl4"; 813 }; 814 buildInputs = [pkgconfig libICE kbproto libSM libX11 xproto ]; 815 + }) // {inherit libICE kbproto libSM libX11 xproto ;}; 816 817 + libXtst = (mkDerivation "libXtst" { 818 name = "libXtst-1.2.2"; 819 builder = ./builder.sh; 820 src = fetchurl { ··· 822 sha256 = "1ngn161nq679ffmbwl81i2hn75jjg5b3ffv6n4jilpvyazypy2pg"; 823 }; 824 buildInputs = [pkgconfig inputproto recordproto libX11 libXext xextproto libXi ]; 825 + }) // {inherit inputproto recordproto libX11 libXext xextproto libXi ;}; 826 827 + libXv = (mkDerivation "libXv" { 828 name = "libXv-1.0.10"; 829 builder = ./builder.sh; 830 src = fetchurl { ··· 832 sha256 = "09a5j6bisysiipd0nw6s352565bp0n6gbyhv5hp63s3cd3w95zjm"; 833 }; 834 buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto ]; 835 + }) // {inherit videoproto libX11 libXext xextproto xproto ;}; 836 837 + libXvMC = (mkDerivation "libXvMC" { 838 name = "libXvMC-1.0.8"; 839 builder = ./builder.sh; 840 src = fetchurl { ··· 842 sha256 = "015jk3bxfmj6zaw99x282f9npi8qqaw34yg186frags3z8g406jy"; 843 }; 844 buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto libXv ]; 845 + }) // {inherit videoproto libX11 libXext xextproto xproto libXv ;}; 846 847 + libXxf86dga = (mkDerivation "libXxf86dga" { 848 name = "libXxf86dga-1.1.4"; 849 builder = ./builder.sh; 850 src = fetchurl { ··· 852 sha256 = "0zn7aqj8x0951d8zb2h2andldvwkzbsc4cs7q023g6nzq6vd9v4f"; 853 }; 854 buildInputs = [pkgconfig libX11 libXext xextproto xf86dgaproto xproto ]; 855 + }) // {inherit libX11 libXext xextproto xf86dgaproto xproto ;}; 856 857 + libXxf86misc = (mkDerivation "libXxf86misc" { 858 name = "libXxf86misc-1.0.3"; 859 builder = ./builder.sh; 860 src = fetchurl { ··· 862 sha256 = "0nvbq9y6k6m9hxdvg3crycqsnnxf1859wrisqcs37z9fhq044gsn"; 863 }; 864 buildInputs = [pkgconfig libX11 libXext xextproto xf86miscproto xproto ]; 865 + }) // {inherit libX11 libXext xextproto xf86miscproto xproto ;}; 866 867 + libXxf86vm = (mkDerivation "libXxf86vm" { 868 name = "libXxf86vm-1.1.3"; 869 builder = ./builder.sh; 870 src = fetchurl { ··· 872 sha256 = "1f1pxj018nk7ybxv58jmn5y8gm2288p4q3l2dng9n1p25v1qcpns"; 873 }; 874 buildInputs = [pkgconfig libX11 libXext xextproto xf86vidmodeproto xproto ]; 875 + }) // {inherit libX11 libXext xextproto xf86vidmodeproto xproto ;}; 876 877 + libdmx = (mkDerivation "libdmx" { 878 name = "libdmx-1.1.3"; 879 builder = ./builder.sh; 880 src = fetchurl { ··· 882 sha256 = "00djlxas38kbsrglcmwmxfbmxjdchlbj95pqwjvdg8jn5rns6zf9"; 883 }; 884 buildInputs = [pkgconfig dmxproto libX11 libXext xextproto ]; 885 + }) // {inherit dmxproto libX11 libXext xextproto ;}; 886 887 + libfontenc = (mkDerivation "libfontenc" { 888 name = "libfontenc-1.1.2"; 889 builder = ./builder.sh; 890 src = fetchurl { ··· 892 sha256 = "0qign0ivqk166l9yfd51gw9lbhgs718bcrmvc40yicjr6gnyz959"; 893 }; 894 buildInputs = [pkgconfig xproto zlib ]; 895 + }) // {inherit xproto zlib ;}; 896 897 + libpciaccess = (mkDerivation "libpciaccess" { 898 name = "libpciaccess-0.13.2"; 899 builder = ./builder.sh; 900 src = fetchurl { ··· 902 sha256 = "06fy43n3c450h7xqpn3094bnfn7ca1mrq3i856y8kyqa0lmqraxb"; 903 }; 904 buildInputs = [pkgconfig zlib ]; 905 + }) // {inherit zlib ;}; 906 907 + libpthreadstubs = (mkDerivation "libpthreadstubs" { 908 name = "libpthread-stubs-0.3"; 909 builder = ./builder.sh; 910 src = fetchurl { ··· 912 sha256 = "16bjv3in19l84hbri41iayvvg4ls9gv1ma0x0qlbmwy67i7dbdim"; 913 }; 914 buildInputs = [pkgconfig ]; 915 + }) // {inherit ;}; 916 917 + libxcb = (mkDerivation "libxcb" { 918 name = "libxcb-1.10"; 919 builder = ./builder.sh; 920 src = fetchurl { ··· 922 sha256 = "1dfmyb1zjx6n0zhr4y40mc1crlmj3bfjjhmn0f30ip9nnq2spncq"; 923 }; 924 buildInputs = [pkgconfig libxslt libpthreadstubs python libXau xcbproto libXdmcp ]; 925 + }) // {inherit libxslt libpthreadstubs python libXau xcbproto libXdmcp ;}; 926 927 + libxkbfile = (mkDerivation "libxkbfile" { 928 name = "libxkbfile-1.0.8"; 929 builder = ./builder.sh; 930 src = fetchurl { ··· 932 sha256 = "0flg5arw6n3njagmsi4i4l0zl5bfx866a1h9ydc3bi1pqlclxaca"; 933 }; 934 buildInputs = [pkgconfig kbproto libX11 ]; 935 + }) // {inherit kbproto libX11 ;}; 936 937 + libxshmfence = (mkDerivation "libxshmfence" { 938 name = "libxshmfence-1.1"; 939 builder = ./builder.sh; 940 src = fetchurl { ··· 942 sha256 = "1gnfb1z8sbbdc3xpz1zmm94lv7yvfh4kvip9s5pj37ya4llxphnv"; 943 }; 944 buildInputs = [pkgconfig xproto ]; 945 + }) // {inherit xproto ;}; 946 947 + lndir = (mkDerivation "lndir" { 948 name = "lndir-1.0.3"; 949 builder = ./builder.sh; 950 src = fetchurl { ··· 952 sha256 = "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"; 953 }; 954 buildInputs = [pkgconfig xproto ]; 955 + }) // {inherit xproto ;}; 956 957 + luit = (mkDerivation "luit" { 958 name = "luit-1.1.1"; 959 builder = ./builder.sh; 960 src = fetchurl { ··· 962 sha256 = "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"; 963 }; 964 buildInputs = [pkgconfig libfontenc ]; 965 + }) // {inherit libfontenc ;}; 966 967 + makedepend = (mkDerivation "makedepend" { 968 name = "makedepend-1.0.5"; 969 builder = ./builder.sh; 970 src = fetchurl { ··· 972 sha256 = "09alw99r6y2bbd1dc786n3jfgv4j520apblyn7cw6jkjydshba7p"; 973 }; 974 buildInputs = [pkgconfig xproto ]; 975 + }) // {inherit xproto ;}; 976 977 + mkfontdir = (mkDerivation "mkfontdir" { 978 name = "mkfontdir-1.0.7"; 979 builder = ./builder.sh; 980 src = fetchurl { ··· 982 sha256 = "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"; 983 }; 984 buildInputs = [pkgconfig ]; 985 + }) // {inherit ;}; 986 987 + mkfontscale = (mkDerivation "mkfontscale" { 988 name = "mkfontscale-1.1.1"; 989 builder = ./builder.sh; 990 src = fetchurl { ··· 992 sha256 = "0cdpn1ii2iw1vg2ga4w62acrh78gzgf0vza4g8wx5kkp4jcifh14"; 993 }; 994 buildInputs = [pkgconfig libfontenc freetype xproto zlib ]; 995 + }) // {inherit libfontenc freetype xproto zlib ;}; 996 997 + presentproto = (mkDerivation "presentproto" { 998 name = "presentproto-1.0"; 999 builder = ./builder.sh; 1000 src = fetchurl { ··· 1002 sha256 = "1kir51aqg9cwazs14ivcldcn3mzadqgykc9cg87rm40zf947sb41"; 1003 }; 1004 buildInputs = [pkgconfig ]; 1005 + }) // {inherit ;}; 1006 1007 + printproto = (mkDerivation "printproto" { 1008 name = "printproto-1.0.5"; 1009 builder = ./builder.sh; 1010 src = fetchurl { ··· 1012 sha256 = "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"; 1013 }; 1014 buildInputs = [pkgconfig libXau ]; 1015 + }) // {inherit libXau ;}; 1016 1017 + randrproto = (mkDerivation "randrproto" { 1018 name = "randrproto-1.4.0"; 1019 builder = ./builder.sh; 1020 src = fetchurl { ··· 1022 sha256 = "1kq9h93qdnniiivry8jmhlgwn9fbx9xp5r9cmzfihlx5cs62xi45"; 1023 }; 1024 buildInputs = [pkgconfig ]; 1025 + }) // {inherit ;}; 1026 1027 + recordproto = (mkDerivation "recordproto" { 1028 name = "recordproto-1.14.2"; 1029 builder = ./builder.sh; 1030 src = fetchurl { ··· 1032 sha256 = "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"; 1033 }; 1034 buildInputs = [pkgconfig ]; 1035 + }) // {inherit ;}; 1036 1037 + renderproto = (mkDerivation "renderproto" { 1038 name = "renderproto-0.11.1"; 1039 builder = ./builder.sh; 1040 src = fetchurl { ··· 1042 sha256 = "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"; 1043 }; 1044 buildInputs = [pkgconfig ]; 1045 + }) // {inherit ;}; 1046 1047 + resourceproto = (mkDerivation "resourceproto" { 1048 name = "resourceproto-1.2.0"; 1049 builder = ./builder.sh; 1050 src = fetchurl { ··· 1052 sha256 = "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"; 1053 }; 1054 buildInputs = [pkgconfig ]; 1055 + }) // {inherit ;}; 1056 1057 + scrnsaverproto = (mkDerivation "scrnsaverproto" { 1058 name = "scrnsaverproto-1.2.2"; 1059 builder = ./builder.sh; 1060 src = fetchurl { ··· 1062 sha256 = "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"; 1063 }; 1064 buildInputs = [pkgconfig ]; 1065 + }) // {inherit ;}; 1066 1067 + sessreg = (mkDerivation "sessreg" { 1068 name = "sessreg-1.0.8"; 1069 builder = ./builder.sh; 1070 src = fetchurl { ··· 1072 sha256 = "1hy4wvgawajf4qw2k51fkcjzxw0drx60ydzpmqhj7k1g4z3cqahf"; 1073 }; 1074 buildInputs = [pkgconfig xproto ]; 1075 + }) // {inherit xproto ;}; 1076 1077 + setxkbmap = (mkDerivation "setxkbmap" { 1078 name = "setxkbmap-1.3.0"; 1079 builder = ./builder.sh; 1080 src = fetchurl { ··· 1082 sha256 = "1inygpvlgc6vr5h9laxw9lnvafnccl3fy0g5n9ll28iq3yfmqc1x"; 1083 }; 1084 buildInputs = [pkgconfig libX11 libxkbfile ]; 1085 + }) // {inherit libX11 libxkbfile ;}; 1086 1087 + smproxy = (mkDerivation "smproxy" { 1088 name = "smproxy-1.0.5"; 1089 builder = ./builder.sh; 1090 src = fetchurl { ··· 1092 sha256 = "02fn5wa1gs2jap6sr9j9yk6zsvz82j8l61pf74iyqwa99q4wnb67"; 1093 }; 1094 buildInputs = [pkgconfig libICE libSM libXmu libXt ]; 1095 + }) // {inherit libICE libSM libXmu libXt ;}; 1096 1097 + twm = (mkDerivation "twm" { 1098 name = "twm-1.0.8"; 1099 builder = ./builder.sh; 1100 src = fetchurl { ··· 1102 sha256 = "0i1ff8h2gh1ab311da5dlhl0nrma0qbrk403ymzi4cnnacikaq3n"; 1103 }; 1104 buildInputs = [pkgconfig libICE libSM libX11 libXext libXmu xproto libXt ]; 1105 + }) // {inherit libICE libSM libX11 libXext libXmu xproto libXt ;}; 1106 1107 + utilmacros = (mkDerivation "utilmacros" { 1108 name = "util-macros-1.19.0"; 1109 builder = ./builder.sh; 1110 src = fetchurl { ··· 1112 sha256 = "1fnhpryf55l0yqajxn0cxan3kvsjzi67nlanz8clwqzf54cb2d98"; 1113 }; 1114 buildInputs = [pkgconfig ]; 1115 + }) // {inherit ;}; 1116 1117 + videoproto = (mkDerivation "videoproto" { 1118 name = "videoproto-2.3.2"; 1119 builder = ./builder.sh; 1120 src = fetchurl { ··· 1122 sha256 = "1dnlkd9nb0m135lgd6hd61vc29sdyarsyya8aqpx7z10p261dbld"; 1123 }; 1124 buildInputs = [pkgconfig ]; 1125 + }) // {inherit ;}; 1126 1127 + windowswmproto = (mkDerivation "windowswmproto" { 1128 name = "windowswmproto-1.0.4"; 1129 builder = ./builder.sh; 1130 src = fetchurl { ··· 1132 sha256 = "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"; 1133 }; 1134 buildInputs = [pkgconfig ]; 1135 + }) // {inherit ;}; 1136 1137 + x11perf = (mkDerivation "x11perf" { 1138 name = "x11perf-1.5.4"; 1139 builder = ./builder.sh; 1140 src = fetchurl { ··· 1142 sha256 = "111iwpxhnxjiq44w96zf0kszg5zpgv1g3ayx18v4nhdzl9bqivi4"; 1143 }; 1144 buildInputs = [pkgconfig libX11 libXext libXft libXmu libXrender ]; 1145 + }) // {inherit libX11 libXext libXft libXmu libXrender ;}; 1146 1147 + xauth = (mkDerivation "xauth" { 1148 name = "xauth-1.0.9"; 1149 builder = ./builder.sh; 1150 src = fetchurl { ··· 1152 sha256 = "13y2invb0894b1in03jbglximbz6v31y2kr4yjjgica8xciibkjn"; 1153 }; 1154 buildInputs = [pkgconfig libX11 libXau libXext libXmu xproto ]; 1155 + }) // {inherit libX11 libXau libXext libXmu xproto ;}; 1156 1157 + xbacklight = (mkDerivation "xbacklight" { 1158 name = "xbacklight-1.2.1"; 1159 builder = ./builder.sh; 1160 src = fetchurl { ··· 1162 sha256 = "0arnd1j8vzhzmw72mqhjjcb2qwcbs9qphsy3ps593ajyld8wzxhp"; 1163 }; 1164 buildInputs = [pkgconfig libxcb xcbutil ]; 1165 + }) // {inherit libxcb xcbutil ;}; 1166 1167 + xbitmaps = (mkDerivation "xbitmaps" { 1168 name = "xbitmaps-1.1.1"; 1169 builder = ./builder.sh; 1170 src = fetchurl { ··· 1172 sha256 = "178ym90kwidia6nas4qr5n5yqh698vv8r02js0r4vg3b6lsb0w9n"; 1173 }; 1174 buildInputs = [pkgconfig ]; 1175 + }) // {inherit ;}; 1176 1177 + xcbproto = (mkDerivation "xcbproto" { 1178 name = "xcb-proto-1.10"; 1179 builder = ./builder.sh; 1180 src = fetchurl { ··· 1182 sha256 = "01dgp802i4ic9wkmpa7g1wm50pp547d3b96jjz2hnxavhpfhvx3y"; 1183 }; 1184 buildInputs = [pkgconfig python ]; 1185 + }) // {inherit python ;}; 1186 1187 + xcbutil = (mkDerivation "xcbutil" { 1188 name = "xcb-util-0.3.9"; 1189 builder = ./builder.sh; 1190 src = fetchurl { ··· 1192 sha256 = "1i0qbhqkcdlbbsj7ifkyjsffl61whj24d3zlg5pxf3xj1af2a4f6"; 1193 }; 1194 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1195 + }) // {inherit gperf m4 libxcb xproto ;}; 1196 1197 + xcbutilimage = (mkDerivation "xcbutilimage" { 1198 name = "xcb-util-image-0.3.9"; 1199 builder = ./builder.sh; 1200 src = fetchurl { ··· 1202 sha256 = "1pr1l1nkg197gyl9d0fpwmn72jqpxjfgn9y13q4gawg1m873qnnk"; 1203 }; 1204 buildInputs = [pkgconfig gperf m4 libxcb xcbutil xproto ]; 1205 + }) // {inherit gperf m4 libxcb xcbutil xproto ;}; 1206 1207 + xcbutilkeysyms = (mkDerivation "xcbutilkeysyms" { 1208 name = "xcb-util-keysyms-0.3.9"; 1209 builder = ./builder.sh; 1210 src = fetchurl { ··· 1212 sha256 = "0vjwk7vrcfnlhiadv445c6skfxmdrg5v4qf81y8s2s5xagqarqbv"; 1213 }; 1214 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1215 + }) // {inherit gperf m4 libxcb xproto ;}; 1216 1217 + xcbutilrenderutil = (mkDerivation "xcbutilrenderutil" { 1218 name = "xcb-util-renderutil-0.3.9"; 1219 builder = ./builder.sh; 1220 src = fetchurl { ··· 1222 sha256 = "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"; 1223 }; 1224 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1225 + }) // {inherit gperf m4 libxcb xproto ;}; 1226 1227 + xcbutilwm = (mkDerivation "xcbutilwm" { 1228 name = "xcb-util-wm-0.4.1"; 1229 builder = ./builder.sh; 1230 src = fetchurl { ··· 1232 sha256 = "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"; 1233 }; 1234 buildInputs = [pkgconfig gperf m4 libxcb xproto ]; 1235 + }) // {inherit gperf m4 libxcb xproto ;}; 1236 1237 + xclock = (mkDerivation "xclock" { 1238 name = "xclock-1.0.7"; 1239 builder = ./builder.sh; 1240 src = fetchurl { ··· 1242 sha256 = "1l3xv4bsca6bwxx73jyjz0blav86i7vwffkhdb1ac81y9slyrki3"; 1243 }; 1244 buildInputs = [pkgconfig libX11 libXaw libXft libxkbfile libXmu xproto libXrender libXt ]; 1245 + }) // {inherit libX11 libXaw libXft libxkbfile libXmu xproto libXrender libXt ;}; 1246 1247 + xcmiscproto = (mkDerivation "xcmiscproto" { 1248 name = "xcmiscproto-1.2.2"; 1249 builder = ./builder.sh; 1250 src = fetchurl { ··· 1252 sha256 = "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"; 1253 }; 1254 buildInputs = [pkgconfig ]; 1255 + }) // {inherit ;}; 1256 1257 + xcmsdb = (mkDerivation "xcmsdb" { 1258 name = "xcmsdb-1.0.4"; 1259 builder = ./builder.sh; 1260 src = fetchurl { ··· 1262 sha256 = "03ms731l3kvaldq7ycbd30j6134b61i3gbll4b2gl022wyzbjq74"; 1263 }; 1264 buildInputs = [pkgconfig libX11 ]; 1265 + }) // {inherit libX11 ;}; 1266 1267 + xcursorgen = (mkDerivation "xcursorgen" { 1268 name = "xcursorgen-1.0.6"; 1269 builder = ./builder.sh; 1270 src = fetchurl { ··· 1272 sha256 = "0v7nncj3kaa8c0524j7ricdf4rvld5i7c3m6fj55l5zbah7r3j1i"; 1273 }; 1274 buildInputs = [pkgconfig libpng libX11 libXcursor ]; 1275 + }) // {inherit libpng libX11 libXcursor ;}; 1276 1277 + xcursorthemes = (mkDerivation "xcursorthemes" { 1278 name = "xcursor-themes-1.0.4"; 1279 builder = ./builder.sh; 1280 src = fetchurl { ··· 1282 sha256 = "11mv661nj1p22sqkv87ryj2lcx4m68a04b0rs6iqh3fzp42jrzg3"; 1283 }; 1284 buildInputs = [pkgconfig libXcursor ]; 1285 + }) // {inherit libXcursor ;}; 1286 1287 + xdm = (mkDerivation "xdm" { 1288 name = "xdm-1.1.11"; 1289 builder = ./builder.sh; 1290 src = fetchurl { ··· 1292 sha256 = "0iqw11977lpr9nk1is4fca84d531vck0mq7jldwl44m0vrnl5nnl"; 1293 }; 1294 buildInputs = [pkgconfig libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ]; 1295 + }) // {inherit libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ;}; 1296 1297 + xdpyinfo = (mkDerivation "xdpyinfo" { 1298 name = "xdpyinfo-1.3.1"; 1299 builder = ./builder.sh; 1300 src = fetchurl { ··· 1302 sha256 = "154b29zlrq33lmni883jgwyrb2kx7z8h52jx1s3ys5x5d582iydf"; 1303 }; 1304 buildInputs = [pkgconfig libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ]; 1305 + }) // {inherit libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ;}; 1306 1307 + xdriinfo = (mkDerivation "xdriinfo" { 1308 name = "xdriinfo-1.0.4"; 1309 builder = ./builder.sh; 1310 src = fetchurl { ··· 1312 sha256 = "076bjix941znyjmh3j5jjsnhp2gv2iq53d0ks29mvvv87cyy9iim"; 1313 }; 1314 buildInputs = [pkgconfig glproto libX11 ]; 1315 + }) // {inherit glproto libX11 ;}; 1316 1317 + xev = (mkDerivation "xev" { 1318 name = "xev-1.2.1"; 1319 builder = ./builder.sh; 1320 src = fetchurl { ··· 1322 sha256 = "0hv296mysglcgkx6lj1wxc23kshb2kix1a8yqppxj5vz16mpzw8i"; 1323 }; 1324 buildInputs = [pkgconfig libX11 xproto libXrandr ]; 1325 + }) // {inherit libX11 xproto libXrandr ;}; 1326 1327 + xextproto = (mkDerivation "xextproto" { 1328 name = "xextproto-7.3.0"; 1329 builder = ./builder.sh; 1330 src = fetchurl { ··· 1332 sha256 = "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"; 1333 }; 1334 buildInputs = [pkgconfig ]; 1335 + }) // {inherit ;}; 1336 1337 + xeyes = (mkDerivation "xeyes" { 1338 name = "xeyes-1.1.1"; 1339 builder = ./builder.sh; 1340 src = fetchurl { ··· 1342 sha256 = "08d5x2kar5kg4yammw6hhk10iva6jmh8cqq176a1z7nm1il9hplp"; 1343 }; 1344 buildInputs = [pkgconfig libX11 libXext libXmu libXrender libXt ]; 1345 + }) // {inherit libX11 libXext libXmu libXrender libXt ;}; 1346 1347 + xf86bigfontproto = (mkDerivation "xf86bigfontproto" { 1348 name = "xf86bigfontproto-1.2.0"; 1349 builder = ./builder.sh; 1350 src = fetchurl { ··· 1352 sha256 = "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"; 1353 }; 1354 buildInputs = [pkgconfig ]; 1355 + }) // {inherit ;}; 1356 1357 + xf86dgaproto = (mkDerivation "xf86dgaproto" { 1358 name = "xf86dgaproto-2.1"; 1359 builder = ./builder.sh; 1360 src = fetchurl { ··· 1362 sha256 = "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"; 1363 }; 1364 buildInputs = [pkgconfig ]; 1365 + }) // {inherit ;}; 1366 1367 + xf86driproto = (mkDerivation "xf86driproto" { 1368 name = "xf86driproto-2.1.1"; 1369 builder = ./builder.sh; 1370 src = fetchurl { ··· 1372 sha256 = "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"; 1373 }; 1374 buildInputs = [pkgconfig ]; 1375 + }) // {inherit ;}; 1376 1377 + xf86inputevdev = (mkDerivation "xf86inputevdev" { 1378 name = "xf86-input-evdev-2.8.4"; 1379 builder = ./builder.sh; 1380 src = fetchurl { ··· 1382 sha256 = "030haki1h0m85h91c91812gdnk6znfamw5kpr010zxwwbsgxxyl5"; 1383 }; 1384 buildInputs = [pkgconfig inputproto udev xorgserver xproto ]; 1385 + }) // {inherit inputproto udev xorgserver xproto ;}; 1386 1387 + xf86inputjoystick = (mkDerivation "xf86inputjoystick" { 1388 name = "xf86-input-joystick-1.6.2"; 1389 builder = ./builder.sh; 1390 src = fetchurl { ··· 1392 sha256 = "038mfqairyyqvz02rk7v3i070sab1wr0k6fkxvyvxdgkfbnqcfzf"; 1393 }; 1394 buildInputs = [pkgconfig inputproto kbproto xorgserver xproto ]; 1395 + }) // {inherit inputproto kbproto xorgserver xproto ;}; 1396 1397 + xf86inputkeyboard = (mkDerivation "xf86inputkeyboard" { 1398 name = "xf86-input-keyboard-1.8.0"; 1399 builder = ./builder.sh; 1400 src = fetchurl { ··· 1402 sha256 = "0nyb61w30z32djrllgr2s1i13di3vsl6hg4pqjhxdal71971ria1"; 1403 }; 1404 buildInputs = [pkgconfig inputproto xorgserver xproto ]; 1405 + }) // {inherit inputproto xorgserver xproto ;}; 1406 1407 + xf86inputmouse = (mkDerivation "xf86inputmouse" { 1408 name = "xf86-input-mouse-1.9.0"; 1409 builder = ./builder.sh; 1410 src = fetchurl { ··· 1412 sha256 = "12344w0cxac1ld54qqwynxwazbmmpvqh1mzcskmfkmakmr5iwq2x"; 1413 }; 1414 buildInputs = [pkgconfig inputproto xorgserver xproto ]; 1415 + }) // {inherit inputproto xorgserver xproto ;}; 1416 1417 + xf86inputsynaptics = (mkDerivation "xf86inputsynaptics" { 1418 name = "xf86-input-synaptics-1.7.6"; 1419 builder = ./builder.sh; 1420 src = fetchurl { ··· 1422 sha256 = "0ls8f7gy92f54hdqsa19vypg0xm496jrgdhdn4qphycxwn3gwkbm"; 1423 }; 1424 buildInputs = [pkgconfig inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ]; 1425 + }) // {inherit inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ;}; 1426 1427 + xf86inputvmmouse = (mkDerivation "xf86inputvmmouse" { 1428 name = "xf86-input-vmmouse-13.0.0"; 1429 builder = ./builder.sh; 1430 src = fetchurl { ··· 1432 sha256 = "0b31ap9wp7nwpnihz8m7bz3p0hhaipxxhl652nw4v380cq1vdkq4"; 1433 }; 1434 buildInputs = [pkgconfig inputproto randrproto xorgserver xproto ]; 1435 + }) // {inherit inputproto randrproto xorgserver xproto ;}; 1436 1437 + xf86inputvoid = (mkDerivation "xf86inputvoid" { 1438 name = "xf86-input-void-1.4.0"; 1439 builder = ./builder.sh; 1440 src = fetchurl { ··· 1442 sha256 = "01bmk324fq48wydvy1qrnxbw6qz0fjd0i80g0n4cqr1c4mjmif9a"; 1443 }; 1444 buildInputs = [pkgconfig xorgserver xproto ]; 1445 + }) // {inherit xorgserver xproto ;}; 1446 1447 + xf86miscproto = (mkDerivation "xf86miscproto" { 1448 name = "xf86miscproto-0.9.3"; 1449 builder = ./builder.sh; 1450 src = fetchurl { ··· 1452 sha256 = "15dhcdpv61fyj6rhzrhnwri9hlw8rjfy05z1vik118lc99mfrf25"; 1453 }; 1454 buildInputs = [pkgconfig ]; 1455 + }) // {inherit ;}; 1456 1457 + xf86videoark = (mkDerivation "xf86videoark" { 1458 name = "xf86-video-ark-0.7.5"; 1459 builder = ./builder.sh; 1460 src = fetchurl { ··· 1462 sha256 = "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"; 1463 }; 1464 buildInputs = [pkgconfig fontsproto libpciaccess xextproto xorgserver xproto ]; 1465 + }) // {inherit fontsproto libpciaccess xextproto xorgserver xproto ;}; 1466 1467 + xf86videoast = (mkDerivation "xf86videoast" { 1468 name = "xf86-video-ast-0.98.0"; 1469 builder = ./builder.sh; 1470 src = fetchurl { ··· 1472 sha256 = "188nv73w0p5xhfxz2dffli44yzyn1qhhq3qkwc8wva9dhg25n8lh"; 1473 }; 1474 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1475 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1476 1477 + xf86videoati = (mkDerivation "xf86videoati" { 1478 name = "xf86-video-ati-7.4.0"; 1479 builder = ./builder.sh; 1480 src = fetchurl { ··· 1482 sha256 = "1nbnvxlyn75bcf23m39p7yw80kilgdxmjdvzgcs3walshnlhq8wn"; 1483 }; 1484 buildInputs = [pkgconfig fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1485 + }) // {inherit fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1486 1487 + xf86videocirrus = (mkDerivation "xf86videocirrus" { 1488 name = "xf86-video-cirrus-1.5.2"; 1489 builder = ./builder.sh; 1490 src = fetchurl { ··· 1492 sha256 = "1mycqgjp18b6adqj2h90vp324xh8ysyi5migfmjc914vbnkf2q9k"; 1493 }; 1494 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1495 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1496 1497 + xf86videodummy = (mkDerivation "xf86videodummy" { 1498 name = "xf86-video-dummy-0.3.7"; 1499 builder = ./builder.sh; 1500 src = fetchurl { ··· 1502 sha256 = "1046p64xap69vlsmsz5rjv0djc970yhvq44fmllmas0mqp5lzy2n"; 1503 }; 1504 buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ]; 1505 + }) // {inherit fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ;}; 1506 1507 + xf86videofbdev = (mkDerivation "xf86videofbdev" { 1508 name = "xf86-video-fbdev-0.4.4"; 1509 builder = ./builder.sh; 1510 src = fetchurl { ··· 1512 sha256 = "06ym7yy017lanj730hfkpfk4znx3dsj8jq3qvyzsn8w294kb7m4x"; 1513 }; 1514 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ]; 1515 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ;}; 1516 1517 + xf86videogeode = (mkDerivation "xf86videogeode" { 1518 name = "xf86-video-geode-2.11.15"; 1519 builder = ./builder.sh; 1520 src = fetchurl { ··· 1522 sha256 = "1w4ghr2a41kaw4g9na8ws5fjbmy8zkbxpxa21vmqc8mkjzb3pnq0"; 1523 }; 1524 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1525 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1526 1527 + xf86videoglide = (mkDerivation "xf86videoglide" { 1528 name = "xf86-video-glide-1.2.2"; 1529 builder = ./builder.sh; 1530 src = fetchurl { ··· 1532 sha256 = "1vaav6kx4n00q4fawgqnjmbdkppl0dir2dkrj4ad372mxrvl9c4y"; 1533 }; 1534 buildInputs = [pkgconfig xextproto xorgserver xproto ]; 1535 + }) // {inherit xextproto xorgserver xproto ;}; 1536 1537 + xf86videoglint = (mkDerivation "xf86videoglint" { 1538 name = "xf86-video-glint-1.2.8"; 1539 builder = ./builder.sh; 1540 src = fetchurl { ··· 1542 sha256 = "08a2aark2yn9irws9c78d9q44dichr03i9zbk61jgr54ncxqhzv5"; 1543 }; 1544 buildInputs = [pkgconfig libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ]; 1545 + }) // {inherit libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1546 1547 + xf86videoi128 = (mkDerivation "xf86videoi128" { 1548 name = "xf86-video-i128-1.3.6"; 1549 builder = ./builder.sh; 1550 src = fetchurl { ··· 1552 sha256 = "171b8lbxr56w3isph947dnw7x87hc46v6m3mcxdcz44gk167x0pq"; 1553 }; 1554 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1555 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1556 1557 + xf86videointel = (mkDerivation "xf86videointel" { 1558 name = "xf86-video-intel-2.21.15"; 1559 builder = ./builder.sh; 1560 src = fetchurl { ··· 1562 sha256 = "1z6ncmpszmwqi9xr590c4kp4gjjf7mndcr56r35x2bx7h87i8nkx"; 1563 }; 1564 buildInputs = [pkgconfig dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ]; 1565 + }) // {inherit dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ;}; 1566 1567 + xf86videomach64 = (mkDerivation "xf86videomach64" { 1568 name = "xf86-video-mach64-6.9.4"; 1569 builder = ./builder.sh; 1570 src = fetchurl { ··· 1572 sha256 = "0pl582vnc6hdxqhf5c0qdyanjqxb4crnhqlmxxml5a60syw0iwcp"; 1573 }; 1574 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1575 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1576 1577 + xf86videomga = (mkDerivation "xf86videomga" { 1578 name = "xf86-video-mga-1.6.3"; 1579 builder = ./builder.sh; 1580 src = fetchurl { ··· 1582 sha256 = "1my7y67sadjjmab1dyxckylrggi7p01yk4wwg9w6k1q96pmb213p"; 1583 }; 1584 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1585 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1586 1587 + xf86videomodesetting = (mkDerivation "xf86videomodesetting" { 1588 name = "xf86-video-modesetting-0.9.0"; 1589 builder = ./builder.sh; 1590 src = fetchurl { ··· 1592 sha256 = "0p6pjn5bnd2wr3lmas4b12zcq12d9ilvssga93fzlg90fdahikwh"; 1593 }; 1594 buildInputs = [pkgconfig fontsproto libdrm udev libpciaccess randrproto libX11 xextproto xorgserver xproto ]; 1595 + }) // {inherit fontsproto libdrm udev libpciaccess randrproto libX11 xextproto xorgserver xproto ;}; 1596 1597 + xf86videoneomagic = (mkDerivation "xf86videoneomagic" { 1598 name = "xf86-video-neomagic-1.2.8"; 1599 builder = ./builder.sh; 1600 src = fetchurl { ··· 1602 sha256 = "0x48sxs1p3kmwk3pq1j7vl93y59gdmgkq1x5xbnh0yal0angdash"; 1603 }; 1604 buildInputs = [pkgconfig fontsproto libpciaccess xorgserver xproto ]; 1605 + }) // {inherit fontsproto libpciaccess xorgserver xproto ;}; 1606 1607 + xf86videonewport = (mkDerivation "xf86videonewport" { 1608 name = "xf86-video-newport-0.2.4"; 1609 builder = ./builder.sh; 1610 src = fetchurl { ··· 1612 sha256 = "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"; 1613 }; 1614 buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xorgserver xproto ]; 1615 + }) // {inherit fontsproto randrproto renderproto videoproto xorgserver xproto ;}; 1616 1617 + xf86videonouveau = (mkDerivation "xf86videonouveau" { 1618 name = "xf86-video-nouveau-1.0.10"; 1619 builder = ./builder.sh; 1620 src = fetchurl { ··· 1622 sha256 = "17fvjplzfx86099sqys0bfl8lfbmjz8li84kzj2x95mf1cbb7fn1"; 1623 }; 1624 buildInputs = [pkgconfig dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1625 + }) // {inherit dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1626 1627 + xf86videonv = (mkDerivation "xf86videonv" { 1628 name = "xf86-video-nv-2.1.20"; 1629 builder = ./builder.sh; 1630 src = fetchurl { ··· 1632 sha256 = "1gqh1khc4zalip5hh2nksgs7i3piqq18nncgmsx9qvzi05azd5c3"; 1633 }; 1634 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; 1635 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; 1636 1637 + xf86videoopenchrome = (mkDerivation "xf86videoopenchrome" { 1638 name = "xf86-video-openchrome-0.3.3"; 1639 builder = ./builder.sh; 1640 src = fetchurl { ··· 1642 sha256 = "1v8j4i1r268n4fc5gq54zg1x50j0rhw71f3lba7411mcblg2z7p4"; 1643 }; 1644 buildInputs = [pkgconfig fontsproto glproto libdrm udev libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ]; 1645 + }) // {inherit fontsproto glproto libdrm udev libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ;}; 1646 1647 + xf86videor128 = (mkDerivation "xf86videor128" { 1648 name = "xf86-video-r128-6.9.2"; 1649 builder = ./builder.sh; 1650 src = fetchurl { ··· 1652 sha256 = "1q3fsc603k2yinphx5rrcl5356qkpywwz8axlw277l2231gjjbcb"; 1653 }; 1654 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ]; 1655 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ;}; 1656 1657 + xf86videosavage = (mkDerivation "xf86videosavage" { 1658 name = "xf86-video-savage-2.3.7"; 1659 builder = ./builder.sh; 1660 src = fetchurl { ··· 1662 sha256 = "0i2aqp68rfkrz9c1p6d7ny9x7bjrlnby7q56zf01fb12r42l4784"; 1663 }; 1664 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1665 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1666 1667 + xf86videosiliconmotion = (mkDerivation "xf86videosiliconmotion" { 1668 name = "xf86-video-siliconmotion-1.7.7"; 1669 builder = ./builder.sh; 1670 src = fetchurl { ··· 1672 sha256 = "1an321kqvsxq0z35acwl99lc8hpdkayw0q180744ypcl8ffvbf47"; 1673 }; 1674 buildInputs = [pkgconfig fontsproto libpciaccess videoproto xextproto xorgserver xproto ]; 1675 + }) // {inherit fontsproto libpciaccess videoproto xextproto xorgserver xproto ;}; 1676 1677 + xf86videosis = (mkDerivation "xf86videosis" { 1678 name = "xf86-video-sis-0.10.7"; 1679 builder = ./builder.sh; 1680 src = fetchurl { ··· 1682 sha256 = "1l0w84x39gq4y9j81dny9r6rma1xkqvxpsavpkd8h7h8panbcbmy"; 1683 }; 1684 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ]; 1685 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ;}; 1686 1687 + xf86videosuncg6 = (mkDerivation "xf86videosuncg6" { 1688 name = "xf86-video-suncg6-1.1.2"; 1689 builder = ./builder.sh; 1690 src = fetchurl { ··· 1692 sha256 = "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"; 1693 }; 1694 buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ]; 1695 + }) // {inherit fontsproto randrproto renderproto xorgserver xproto ;}; 1696 1697 + xf86videosunffb = (mkDerivation "xf86videosunffb" { 1698 name = "xf86-video-sunffb-1.2.2"; 1699 builder = ./builder.sh; 1700 src = fetchurl { ··· 1702 sha256 = "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"; 1703 }; 1704 buildInputs = [pkgconfig fontsproto randrproto renderproto xextproto xorgserver xproto ]; 1705 + }) // {inherit fontsproto randrproto renderproto xextproto xorgserver xproto ;}; 1706 1707 + xf86videotdfx = (mkDerivation "xf86videotdfx" { 1708 name = "xf86-video-tdfx-1.4.5"; 1709 builder = ./builder.sh; 1710 src = fetchurl { ··· 1712 sha256 = "0nfqf1c8939s21ci1g7gacwzlr4g4nnilahgz7j2bz30zfnzpmbh"; 1713 }; 1714 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; 1715 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; 1716 1717 + xf86videotga = (mkDerivation "xf86videotga" { 1718 name = "xf86-video-tga-1.2.2"; 1719 builder = ./builder.sh; 1720 src = fetchurl { ··· 1722 sha256 = "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"; 1723 }; 1724 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ]; 1725 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1726 1727 + xf86videotrident = (mkDerivation "xf86videotrident" { 1728 name = "xf86-video-trident-1.3.6"; 1729 builder = ./builder.sh; 1730 src = fetchurl { ··· 1732 sha256 = "0141qbfsm32i0pxjyx5czpa8x8m4lvapsp4amw1qigaa0gry6n3a"; 1733 }; 1734 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ]; 1735 + }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;}; 1736 1737 + xf86videov4l = (mkDerivation "xf86videov4l" { 1738 name = "xf86-video-v4l-0.2.0"; 1739 builder = ./builder.sh; 1740 src = fetchurl { ··· 1742 sha256 = "0pcjc75hgbih3qvhpsx8d4fljysfk025slxcqyyhr45dzch93zyb"; 1743 }; 1744 buildInputs = [pkgconfig randrproto videoproto xorgserver xproto ]; 1745 + }) // {inherit randrproto videoproto xorgserver xproto ;}; 1746 1747 + xf86videovesa = (mkDerivation "xf86videovesa" { 1748 name = "xf86-video-vesa-2.3.3"; 1749 builder = ./builder.sh; 1750 src = fetchurl { ··· 1752 sha256 = "1y5fsg0c4bgmh1cfsbnaaf388fppyy02i7mcy9vax78flkjpb2yf"; 1753 }; 1754 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ]; 1755 + }) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ;}; 1756 1757 + xf86videovmware = (mkDerivation "xf86videovmware" { 1758 name = "xf86-video-vmware-13.0.2"; 1759 builder = ./builder.sh; 1760 src = fetchurl { ··· 1762 sha256 = "0m1wfsv34s4pyr5ry87yyjb2p6vmy6vyypdz5jx0sqnkx8n3vfn8"; 1763 }; 1764 buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ]; 1765 + }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ;}; 1766 1767 + xf86videovoodoo = (mkDerivation "xf86videovoodoo" { 1768 name = "xf86-video-voodoo-1.2.5"; 1769 builder = ./builder.sh; 1770 src = fetchurl { ··· 1772 sha256 = "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"; 1773 }; 1774 buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ]; 1775 + }) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ;}; 1776 1777 + xf86videowsfb = (mkDerivation "xf86videowsfb" { 1778 name = "xf86-video-wsfb-0.4.0"; 1779 builder = ./builder.sh; 1780 src = fetchurl { ··· 1782 sha256 = "0hr8397wpd0by1hc47fqqrnaw3qdqd8aqgwgzv38w5k3l3jy6p4p"; 1783 }; 1784 buildInputs = [pkgconfig xorgserver xproto ]; 1785 + }) // {inherit xorgserver xproto ;}; 1786 1787 + xf86vidmodeproto = (mkDerivation "xf86vidmodeproto" { 1788 name = "xf86vidmodeproto-2.3.1"; 1789 builder = ./builder.sh; 1790 src = fetchurl { ··· 1792 sha256 = "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"; 1793 }; 1794 buildInputs = [pkgconfig ]; 1795 + }) // {inherit ;}; 1796 1797 + xfs = (mkDerivation "xfs" { 1798 name = "xfs-1.1.3"; 1799 builder = ./builder.sh; 1800 src = fetchurl { ··· 1802 sha256 = "1dwnf5gncpnjsbh9bdrc665kfnclhzzcpwpfnprvrnq4mlr4mx3v"; 1803 }; 1804 buildInputs = [pkgconfig libXfont xproto xtrans ]; 1805 + }) // {inherit libXfont xproto xtrans ;}; 1806 1807 + xgamma = (mkDerivation "xgamma" { 1808 name = "xgamma-1.0.5"; 1809 builder = ./builder.sh; 1810 src = fetchurl { ··· 1812 sha256 = "0463sawps86jnxn121ramsz4sicy3az5wa5wsq4rqm8dm3za48p3"; 1813 }; 1814 buildInputs = [pkgconfig libX11 libXxf86vm ]; 1815 + }) // {inherit libX11 libXxf86vm ;}; 1816 1817 + xhost = (mkDerivation "xhost" { 1818 name = "xhost-1.0.6"; 1819 builder = ./builder.sh; 1820 src = fetchurl { ··· 1822 sha256 = "1hlxm0is9nks1cx033s1733kkib9ivx2bxa3pb9yayqavwibkxd6"; 1823 }; 1824 buildInputs = [pkgconfig libX11 libXau libXmu xproto ]; 1825 + }) // {inherit libX11 libXau libXmu xproto ;}; 1826 1827 + xineramaproto = (mkDerivation "xineramaproto" { 1828 name = "xineramaproto-1.2.1"; 1829 builder = ./builder.sh; 1830 src = fetchurl { ··· 1832 sha256 = "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"; 1833 }; 1834 buildInputs = [pkgconfig ]; 1835 + }) // {inherit ;}; 1836 1837 + xinit = (mkDerivation "xinit" { 1838 name = "xinit-1.3.3"; 1839 builder = ./builder.sh; 1840 src = fetchurl { ··· 1842 sha256 = "1bq0mqy7y305g2rds1g5443f3d2kgxzafqhmiyabbmg3ws6qgckl"; 1843 }; 1844 buildInputs = [pkgconfig libX11 xproto ]; 1845 + }) // {inherit libX11 xproto ;}; 1846 1847 + xinput = (mkDerivation "xinput" { 1848 name = "xinput-1.6.1"; 1849 builder = ./builder.sh; 1850 src = fetchurl { ··· 1852 sha256 = "07w7zlpdhpwzzshg8q0y152cy3wl2fj7x1897glnp2la487jsqxp"; 1853 }; 1854 buildInputs = [pkgconfig inputproto libX11 libXext libXi libXinerama libXrandr ]; 1855 + }) // {inherit inputproto libX11 libXext libXi libXinerama libXrandr ;}; 1856 1857 + xkbcomp = (mkDerivation "xkbcomp" { 1858 name = "xkbcomp-1.2.4"; 1859 builder = ./builder.sh; 1860 src = fetchurl { ··· 1862 sha256 = "0bas1d2wjiy5zy9d0g92d2p9pwv4aapfbfidi7hxy8ax8jmwkl4i"; 1863 }; 1864 buildInputs = [pkgconfig libX11 libxkbfile xproto ]; 1865 + }) // {inherit libX11 libxkbfile xproto ;}; 1866 1867 + xkbevd = (mkDerivation "xkbevd" { 1868 name = "xkbevd-1.1.3"; 1869 builder = ./builder.sh; 1870 src = fetchurl { ··· 1872 sha256 = "05h1xcnbalndbrryyqs8wzy9h3wz655vc0ymhlk2q4aik17licjm"; 1873 }; 1874 buildInputs = [pkgconfig libX11 libxkbfile ]; 1875 + }) // {inherit libX11 libxkbfile ;}; 1876 1877 + xkbprint = (mkDerivation "xkbprint" { 1878 name = "xkbprint-1.0.3"; 1879 builder = ./builder.sh; 1880 src = fetchurl { ··· 1882 sha256 = "1h4jb3gjrbjp79h5gcgkjvdxykcy2bmq03smpls820c8wnw6v17s"; 1883 }; 1884 buildInputs = [pkgconfig libX11 libxkbfile ]; 1885 + }) // {inherit libX11 libxkbfile ;}; 1886 1887 + xkbutils = (mkDerivation "xkbutils" { 1888 name = "xkbutils-1.0.4"; 1889 builder = ./builder.sh; 1890 src = fetchurl { ··· 1892 sha256 = "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"; 1893 }; 1894 buildInputs = [pkgconfig inputproto libX11 libXaw xproto libXt ]; 1895 + }) // {inherit inputproto libX11 libXaw xproto libXt ;}; 1896 1897 + xkeyboardconfig = (mkDerivation "xkeyboardconfig" { 1898 name = "xkeyboard-config-2.11"; 1899 builder = ./builder.sh; 1900 src = fetchurl { ··· 1902 sha256 = "0xkdyyi759hzls42hp4j3q2lc35n4j6b2g44ilx5qarci5h584p7"; 1903 }; 1904 buildInputs = [pkgconfig libX11 xproto ]; 1905 + }) // {inherit libX11 xproto ;}; 1906 1907 + xkill = (mkDerivation "xkill" { 1908 name = "xkill-1.0.4"; 1909 builder = ./builder.sh; 1910 src = fetchurl { ··· 1912 sha256 = "0bl1ky8ps9jg842j4mnmf4zbx8nkvk0h77w7bqjlpwij9wq2mvw8"; 1913 }; 1914 buildInputs = [pkgconfig libX11 libXmu xproto ]; 1915 + }) // {inherit libX11 libXmu xproto ;}; 1916 1917 + xlsatoms = (mkDerivation "xlsatoms" { 1918 name = "xlsatoms-1.1.1"; 1919 builder = ./builder.sh; 1920 src = fetchurl { ··· 1922 sha256 = "1y9nfl8s7njxbnci8c20j986xixharasgg40vdw92y593j6dk2rv"; 1923 }; 1924 buildInputs = [pkgconfig libxcb ]; 1925 + }) // {inherit libxcb ;}; 1926 1927 + xlsclients = (mkDerivation "xlsclients" { 1928 name = "xlsclients-1.1.3"; 1929 builder = ./builder.sh; 1930 src = fetchurl { ··· 1932 sha256 = "0g9x7rrggs741x9xwvv1k9qayma980d88nhdqw7j3pn3qvy6d5jx"; 1933 }; 1934 buildInputs = [pkgconfig libxcb ]; 1935 + }) // {inherit libxcb ;}; 1936 1937 + xmessage = (mkDerivation "xmessage" { 1938 name = "xmessage-1.0.4"; 1939 builder = ./builder.sh; 1940 src = fetchurl { ··· 1942 sha256 = "0s5bjlpxnmh8sxx6nfg9m0nr32r1sr3irr71wsnv76s33i34ppxw"; 1943 }; 1944 buildInputs = [pkgconfig libXaw libXt ]; 1945 + }) // {inherit libXaw libXt ;}; 1946 1947 + xmodmap = (mkDerivation "xmodmap" { 1948 name = "xmodmap-1.0.8"; 1949 builder = ./builder.sh; 1950 src = fetchurl { ··· 1952 sha256 = "1hwzm54m4ng09ls9i4bq0x84zbyhamgzasgrvhxxp8jqk34f7qpg"; 1953 }; 1954 buildInputs = [pkgconfig libX11 xproto ]; 1955 + }) // {inherit libX11 xproto ;}; 1956 1957 + xorgcffiles = (mkDerivation "xorgcffiles" { 1958 name = "xorg-cf-files-1.0.5"; 1959 builder = ./builder.sh; 1960 src = fetchurl { ··· 1962 sha256 = "1m3ypq0xcy46ghxc0svl1rbhpy3zvgmy0aa2mn7w7v7d8d8bh8zd"; 1963 }; 1964 buildInputs = [pkgconfig ]; 1965 + }) // {inherit ;}; 1966 1967 + xorgdocs = (mkDerivation "xorgdocs" { 1968 name = "xorg-docs-1.7"; 1969 builder = ./builder.sh; 1970 src = fetchurl { ··· 1972 sha256 = "0prphdba6kgr1bxk7r07wxxx6x6pqjw6prr5qclypsb5sf5r3cdr"; 1973 }; 1974 buildInputs = [pkgconfig ]; 1975 + }) // {inherit ;}; 1976 1977 + xorgserver = (mkDerivation "xorgserver" { 1978 name = "xorg-server-1.14.7"; 1979 builder = ./builder.sh; 1980 src = fetchurl { ··· 1982 sha256 = "07s54g9q1bry1050dsa7x6hy55yjvq9sxs6ks89pc8l6mnk6zxpw"; 1983 }; 1984 buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ]; 1985 + }) // {inherit renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ;}; 1986 + 1987 + # TODO: 1988 + # With the current state of ./generate-expr-from-tarballs.pl, 1989 + # this will get overwritten when next invoked. 1990 + # Could add a special case to ./generate-expr-from-tarballs.pl, 1991 + # or perhaps there's a cleaner solution. 1992 + #xquartz = (mkDerivation "xquartz" { 1993 + # name = "xorg-server-1.14.6"; 1994 + # builder = ./builder.sh; 1995 + # src = fetchurl { 1996 + # url = mirror://xorg/individual/xserver/xorg-server-1.14.6.tar.bz2; 1997 + # sha256 = "0c57vp1z0p38dj5gfipkmlw6bvbz1mrr0sb3sbghdxxdyq4kzcz8"; 1998 + # }; 1999 + # buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ]; 2000 + #}) // {inherit renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ;}; 2001 2002 + xorgsgmldoctools = (mkDerivation "xorgsgmldoctools" { 2003 name = "xorg-sgml-doctools-1.11"; 2004 builder = ./builder.sh; 2005 src = fetchurl { ··· 2007 sha256 = "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"; 2008 }; 2009 buildInputs = [pkgconfig ]; 2010 + }) // {inherit ;}; 2011 2012 + xpr = (mkDerivation "xpr" { 2013 name = "xpr-1.0.4"; 2014 builder = ./builder.sh; 2015 src = fetchurl { ··· 2017 sha256 = "1dbcv26w2yand2qy7b3h5rbvw1mdmdd57jw88v53sgdr3vrqvngy"; 2018 }; 2019 buildInputs = [pkgconfig libX11 libXmu xproto ]; 2020 + }) // {inherit libX11 libXmu xproto ;}; 2021 2022 + xprop = (mkDerivation "xprop" { 2023 name = "xprop-1.2.2"; 2024 builder = ./builder.sh; 2025 src = fetchurl { ··· 2027 sha256 = "1ilvhqfjcg6f1hqahjkp8qaay9rhvmv2blvj3w9asraq0aqqivlv"; 2028 }; 2029 buildInputs = [pkgconfig libX11 xproto ]; 2030 + }) // {inherit libX11 xproto ;}; 2031 2032 + xproto = (mkDerivation "xproto" { 2033 name = "xproto-7.0.26"; 2034 builder = ./builder.sh; 2035 src = fetchurl { ··· 2037 sha256 = "0ksi8vhfd916bx2f3xlyhn6azf6cvvzrsdja26haa1cqfp0n4qb3"; 2038 }; 2039 buildInputs = [pkgconfig ]; 2040 + }) // {inherit ;}; 2041 2042 + xrandr = (mkDerivation "xrandr" { 2043 name = "xrandr-1.4.2"; 2044 builder = ./builder.sh; 2045 src = fetchurl { ··· 2047 sha256 = "1g4hnj53wknsjwiqivyy3jl4qw7jwrpncz7d5p2z29zq5zlnxrxj"; 2048 }; 2049 buildInputs = [pkgconfig libX11 xproto libXrandr libXrender ]; 2050 + }) // {inherit libX11 xproto libXrandr libXrender ;}; 2051 2052 + xrdb = (mkDerivation "xrdb" { 2053 name = "xrdb-1.1.0"; 2054 builder = ./builder.sh; 2055 src = fetchurl { ··· 2057 sha256 = "0nsnr90wazcdd50nc5dqswy0bmq6qcj14nnrhyi7rln9pxmpp0kk"; 2058 }; 2059 buildInputs = [pkgconfig libX11 libXmu xproto ]; 2060 + }) // {inherit libX11 libXmu xproto ;}; 2061 2062 + xrefresh = (mkDerivation "xrefresh" { 2063 name = "xrefresh-1.0.5"; 2064 builder = ./builder.sh; 2065 src = fetchurl { ··· 2067 sha256 = "1mlinwgvql6s1rbf46yckbfr9j22d3c3z7jx3n6ix7ca18dnf4rj"; 2068 }; 2069 buildInputs = [pkgconfig libX11 xproto ]; 2070 + }) // {inherit libX11 xproto ;}; 2071 2072 + xset = (mkDerivation "xset" { 2073 name = "xset-1.2.3"; 2074 builder = ./builder.sh; 2075 src = fetchurl { ··· 2077 sha256 = "0qw0iic27bz3yz2wynf1gxs70hhkcf9c4jrv7zhlg1mq57xz90j3"; 2078 }; 2079 buildInputs = [pkgconfig libX11 libXext libXmu xproto libXxf86misc ]; 2080 + }) // {inherit libX11 libXext libXmu xproto libXxf86misc ;}; 2081 2082 + xsetroot = (mkDerivation "xsetroot" { 2083 name = "xsetroot-1.1.0"; 2084 builder = ./builder.sh; 2085 src = fetchurl { ··· 2087 sha256 = "1bazzsf9sy0q2bj4lxvh1kvyrhmpggzb7jg575i15sksksa3xwc8"; 2088 }; 2089 buildInputs = [pkgconfig libX11 xbitmaps libXcursor libXmu ]; 2090 + }) // {inherit libX11 xbitmaps libXcursor libXmu ;}; 2091 2092 + xtrans = (mkDerivation "xtrans" { 2093 name = "xtrans-1.3.4"; 2094 builder = ./builder.sh; 2095 src = fetchurl { ··· 2097 sha256 = "0fjq9xa37k1czkidj3c5sads51gibrjvrxz9ag3hh9fmxzilwk85"; 2098 }; 2099 buildInputs = [pkgconfig ]; 2100 + }) // {inherit ;}; 2101 2102 + xvinfo = (mkDerivation "xvinfo" { 2103 name = "xvinfo-1.1.2"; 2104 builder = ./builder.sh; 2105 src = fetchurl { ··· 2107 sha256 = "1qsh7fszi727l3vwlaf9pb7bpikdv15smrx5qhlgg3kqzl7xklzf"; 2108 }; 2109 buildInputs = [pkgconfig libX11 xproto libXv ]; 2110 + }) // {inherit libX11 xproto libXv ;}; 2111 2112 + xwd = (mkDerivation "xwd" { 2113 name = "xwd-1.0.6"; 2114 builder = ./builder.sh; 2115 src = fetchurl { ··· 2117 sha256 = "0ybx48agdvjp9lgwvcw79r1x6jbqbyl3fliy3i5xwy4d4si9dcrv"; 2118 }; 2119 buildInputs = [pkgconfig libX11 xproto ]; 2120 + }) // {inherit libX11 xproto ;}; 2121 2122 + xwininfo = (mkDerivation "xwininfo" { 2123 name = "xwininfo-1.1.3"; 2124 builder = ./builder.sh; 2125 src = fetchurl { ··· 2127 sha256 = "1y1zn8ijqslb5lfpbq4bb78kllhch8in98ps7n8fg3dxjpmb13i1"; 2128 }; 2129 buildInputs = [pkgconfig libX11 libxcb xproto ]; 2130 + }) // {inherit libX11 libxcb xproto ;}; 2131 2132 + xwud = (mkDerivation "xwud" { 2133 name = "xwud-1.0.4"; 2134 builder = ./builder.sh; 2135 src = fetchurl { ··· 2137 sha256 = "1ggql6maivah58kwsh3z9x1hvzxm1a8888xx4s78cl77ryfa1cyn"; 2138 }; 2139 buildInputs = [pkgconfig libX11 xproto ]; 2140 + }) // {inherit libX11 xproto ;}; 2141 2142 }; in xorg
+7 -2
pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
··· 230 231 let 232 233 overrides = import ./overrides.nix {inherit args xorg;}; 234 235 xorg = rec { ··· 261 $extraAttrs = "" unless defined $extraAttrs; 262 263 print OUT <<EOF 264 - $pkg = (stdenv.mkDerivation ((if overrides ? $pkg then overrides.$pkg else x: x) { 265 name = "$pkgNames{$pkg}"; 266 builder = ./builder.sh; 267 src = fetchurl { ··· 269 sha256 = "$pkgHashes{$pkg}"; 270 }; 271 buildInputs = [pkgconfig $inputs];$extraAttrs 272 - })) // {inherit $inputs;}; 273 274 EOF 275 }
··· 230 231 let 232 233 + mkDerivation = name: attrs: 234 + let newAttrs = (overrides."\${name}" or (x: x)) attrs; 235 + stdenv = newAttrs.stdenv or args.stdenv; 236 + in stdenv.mkDerivation (removeAttrs newAttrs [ "stdenv" ]); 237 + 238 overrides = import ./overrides.nix {inherit args xorg;}; 239 240 xorg = rec { ··· 266 $extraAttrs = "" unless defined $extraAttrs; 267 268 print OUT <<EOF 269 + $pkg = (mkDerivation "$pkg" { 270 name = "$pkgNames{$pkg}"; 271 builder = ./builder.sh; 272 src = fetchurl { ··· 274 sha256 = "$pkgHashes{$pkg}"; 275 }; 276 buildInputs = [pkgconfig $inputs];$extraAttrs 277 + }) // {inherit $inputs;}; 278 279 EOF 280 }
+103 -19
pkgs/servers/x11/xorg/overrides.nix
··· 1 { args, xorg }: 2 3 let 4 setMalloc0ReturnsNullCrossCompiling = '' 5 if test -n "$crossConfig"; then 6 configureFlags="$configureFlags --enable-malloc0returnsnull"; ··· 75 76 libXfont = attrs: attrs // { 77 propagatedBuildInputs = [ args.freetype ]; # propagate link reqs. like bzip2 78 }; 79 80 libXxf86vm = attrs: attrs // { 81 preConfigure = setMalloc0ReturnsNullCrossCompiling; ··· 219 # 2: I think pkgconfig/ is supposed to be in /lib/ 220 postInstall = '' 221 ln -s share "$out/etc" 222 - mkdir "$out/lib" && ln -s ../share/pkgconfig "$out/lib/" 223 ''; 224 }; 225 226 - xorgserver = with xorg; attrs: attrs // { 227 - configureFlags = [ 228 - "--enable-xcsecurity" # enable SECURITY extension 229 - "--with-default-font-path= " # there were only paths containing "${prefix}", 230 - # and there are no fonts in this package anyway 231 - ]; 232 - patches = [ ./xorgserver-xkbcomp-path.patch ]; 233 - buildInputs = attrs.buildInputs ++ [ xtrans ]; 234 - propagatedBuildInputs = 235 - [ args.zlib args.udev args.mesa args.dbus.libs 236 xf86bigfontproto glproto xf86driproto 237 compositeproto scrnsaverproto resourceproto 238 xf86dgaproto ··· 242 libpciaccess inputproto xextproto randrproto renderproto 243 dri2proto kbproto xineramaproto resourceproto scrnsaverproto videoproto 244 ]; 245 - postInstall = 246 - '' 247 - rm -fr $out/share/X11/xkb/compiled 248 - ln -s /var/tmp $out/share/X11/xkb/compiled 249 - ''; 250 - passthru.version = (builtins.parseDrvName attrs.name).version; # needed by virtualbox guest additions 251 - }; 252 253 254 lndir = attrs: attrs // { 255 preConfigure = '' ··· 272 }; 273 274 xinit = attrs: attrs // { 275 - configureFlags = "--with-xserver=${xorg.xorgserver}/bin/X"; 276 propagatedBuildInputs = [ xorg.xauth ]; 277 prePatch = '' 278 sed -i 's|^defaultserverargs="|&-logfile \"$HOME/.xorg.log\"|p' startx.cpp
··· 1 { args, xorg }: 2 3 let 4 + inherit (args) stdenv; 5 + inherit (stdenv) lib isDarwin; 6 + inherit (lib) overrideDerivation; 7 + 8 setMalloc0ReturnsNullCrossCompiling = '' 9 if test -n "$crossConfig"; then 10 configureFlags="$configureFlags --enable-malloc0returnsnull"; ··· 79 80 libXfont = attrs: attrs // { 81 propagatedBuildInputs = [ args.freetype ]; # propagate link reqs. like bzip2 82 + # prevents "misaligned_stack_error_entering_dyld_stub_binder" 83 + configureFlags = lib.optionals isDarwin [ 84 + "CFLAGS=-O0" 85 + ]; 86 }; 87 + 88 89 libXxf86vm = attrs: attrs // { 90 preConfigure = setMalloc0ReturnsNullCrossCompiling; ··· 228 # 2: I think pkgconfig/ is supposed to be in /lib/ 229 postInstall = '' 230 ln -s share "$out/etc" 231 + mkdir -p "$out/lib" && ln -s ../share/pkgconfig "$out/lib/" 232 ''; 233 }; 234 235 + xorgserver = with xorg; attrs: attrs // 236 + (let 237 + version = (builtins.parseDrvName attrs.name).version; 238 + commonBuildInputs = attrs.buildInputs ++ [ xtrans ]; 239 + commonPropagatedBuildInputs = [ 240 + args.zlib args.mesa args.dbus.libs 241 xf86bigfontproto glproto xf86driproto 242 compositeproto scrnsaverproto resourceproto 243 xf86dgaproto ··· 247 libpciaccess inputproto xextproto randrproto renderproto 248 dri2proto kbproto xineramaproto resourceproto scrnsaverproto videoproto 249 ]; 250 + commonPatches = [ ./xorgserver-xkbcomp-path.patch ]; 251 + # XQuartz requires two compilations: the first to get X / XQuartz, 252 + # and the second to get Xvfb, Xnest, etc. 253 + darwinOtherX = overrideDerivation xorgserver (oldAttrs: { 254 + stdenv = args.stdenv; 255 + configureFlags = oldAttrs.configureFlags ++ [ 256 + "--disable-xquartz" 257 + "--enable-xorg" 258 + "--enable-xvfb" 259 + "--enable-xnest" 260 + "--enable-kdrive" 261 + ]; 262 + postInstall = ":"; # prevent infinite recursion 263 + }); 264 + in 265 + if (!isDarwin) 266 + then { 267 + buildInputs = commonBuildInputs; 268 + propagatedBuildInputs = commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [ 269 + args.udev 270 + ]; 271 + patches = commonPatches; 272 + configureFlags = [ 273 + "--enable-xcsecurity" # enable SECURITY extension 274 + "--with-default-font-path=" # there were only paths containing "${prefix}", 275 + # and there are no fonts in this package anyway 276 + ]; 277 + postInstall = '' 278 + rm -fr $out/share/X11/xkb/compiled 279 + ln -s /var/tmp $out/share/X11/xkb/compiled 280 + ''; 281 + passthru.version = version; # needed by virtualbox guest additions 282 + } else { 283 + stdenv = args.clangStdenv; 284 + name = "xorg-server-1.14.6"; 285 + src = args.fetchurl { 286 + url = mirror://xorg/individual/xserver/xorg-server-1.14.6.tar.bz2; 287 + sha256 = "0c57vp1z0p38dj5gfipkmlw6bvbz1mrr0sb3sbghdxxdyq4kzcz8"; 288 + }; 289 + buildInputs = commonBuildInputs; 290 + propagatedBuildInputs = commonPropagatedBuildInputs ++ [ 291 + libAppleWM applewmproto 292 + ]; 293 + patches = commonPatches ++ [ 294 + ./darwin/0001-XQuartz-Ensure-we-wait-for-the-server-thread-to-term.patch 295 + ./darwin/5000-sdksyms.sh-Use-CPPFLAGS-not-CFLAGS.patch 296 + ./darwin/5001-Workaround-the-GC-clipping-problem-in-miPaintWindow-.patch 297 + ./darwin/5002-fb-Revert-fb-changes-that-broke-XQuartz.patch 298 + ./darwin/5003-fb-Revert-fb-changes-that-broke-XQuartz.patch 299 + ./darwin/5004-Use-old-miTrapezoids-and-miTriangles-routines.patch 300 + ./darwin/private-extern.patch 301 + ./darwin/bundle_main.patch 302 + ./darwin/stub.patch 303 + ./darwin/function-pointer-test.patch 304 + ]; 305 + configureFlags = [ 306 + # note: --enable-xquartz is auto 307 + "CPPFLAGS=-I${./darwin/dri}" 308 + "--with-default-font-path=" 309 + "--with-apple-application-name=XQuartz" 310 + "--with-apple-applications-dir=\${out}/Applications" 311 + "--with-bundle-id-prefix=org.nixos.xquartz" 312 + "--with-sha1=CommonCrypto" 313 + ]; 314 + preConfigure = '' 315 + ensureDir $out/Applications 316 + export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error" 317 + ''; 318 + postInstall = '' 319 + rm -fr $out/share/X11/xkb/compiled 320 + ln -s /var/tmp $out/share/X11/xkb/compiled 321 322 + cp -rT ${darwinOtherX}/bin $out/bin 323 + rm -f $out/bin/X 324 + ln -s Xquartz $out/bin/X 325 + 326 + cp ${darwinOtherX}/share/man -rT $out/share/man 327 + '' ; 328 + passthru.version = version; 329 + }); 330 331 lndir = attrs: attrs // { 332 preConfigure = '' ··· 349 }; 350 351 xinit = attrs: attrs // { 352 + stdenv = if isDarwin then args.clangStdenv else stdenv; 353 + configureFlags = [ 354 + "--with-xserver=${xorg.xorgserver}/bin/X" 355 + ] ++ lib.optionals isDarwin [ 356 + "--with-bundle-id-prefix=org.nixos.xquartz" 357 + "--with-launchdaemons-dir=\${out}/LaunchDaemons" 358 + "--with-launchagents-dir=\${out}/LaunchAgents" 359 + ]; 360 propagatedBuildInputs = [ xorg.xauth ]; 361 prePatch = '' 362 sed -i 's|^defaultserverargs="|&-logfile \"$HOME/.xorg.log\"|p' startx.cpp
+20
pkgs/servers/x11/xquartz/X11
···
··· 1 + #!/bin/bash 2 + 3 + set "$(dirname "$0")"/X11.bin "${@}" 4 + 5 + export XQUARTZ_DEFAULT_CLIENT="@DEFAULT_CLIENT@" 6 + export XQUARTZ_DEFAULT_SHELL="@DEFAULT_SHELL@" 7 + export XQUARTZ_DEFAULT_STARTX="@DEFAULT_STARTX@" 8 + export FONTCONFIG_FILE="@FONTCONFIG_FILE@" 9 + 10 + if [ -x ~/.x11run ]; then 11 + exec ~/.x11run "${@}" 12 + fi 13 + 14 + case $(basename "${SHELL}") in 15 + bash) exec -l "${SHELL}" --login -c 'exec "${@}"' - "${@}" ;; 16 + ksh|sh|zsh) exec -l "${SHELL}" -c 'exec "${@}"' - "${@}" ;; 17 + csh|tcsh) exec -l "${SHELL}" -c 'exec $argv:q' "${@}" ;; 18 + es|rc) exec -l "${SHELL}" -l -c 'exec $*' "${@}" ;; 19 + *) exec "${@}" ;; 20 + esac
+187
pkgs/servers/x11/xquartz/default.nix
···
··· 1 + { stdenv, lib, buildEnv, makeFontsConf, gnused, writeScript, xorg, bashInteractive, substituteAll, xterm, makeWrapper, ruby 2 + , openssl, quartz-wm, fontconfig, xkeyboard_config, xlsfonts, xfontsel 3 + , ttf_bitstream_vera, freefont_ttf, liberation_ttf 4 + , shell ? "${bashInteractive}/bin/bash" 5 + }: 6 + 7 + # ------------ 8 + # Installation 9 + # ------------ 10 + # 11 + # First, assuming you've previously installed XQuartz from macosforge.com, 12 + # unload and remove the existing launch agents: 13 + # 14 + # $ sudo launchctl unload /Library/LaunchAgents/org.macosforge.xquartz.startx.plist 15 + # $ sudo launchctl unload /Library/LaunchDaemons/org.macosforge.xquartz.privileged_startx.plist 16 + # $ sudo rm /Library/LaunchAgents/org.macosforge.xquartz.startx.plist 17 + # $ sudo rm /Library/LaunchDaemons/org.macosforge.xquartz.privileged_startx.plist 18 + # 19 + # (You will need to log out for the above changes to take effect.) 20 + # 21 + # Then install xquartz from nixpkgs: 22 + # 23 + # $ nix-env -i xquartz 24 + # $ xquartz-install 25 + # 26 + # You'll also want to add the following to your shell's profile (after you 27 + # source nix.sh, so $NIX_LINK points to your user profile): 28 + # 29 + # if [ "$(uname)" = "Darwin" -a -n "$NIX_LINK" -a -f $NIX_LINK/etc/X11/fonts.conf ]; then 30 + # export FONTCONFIG_FILE=$NIX_LINK/etc/X11/fonts.conf 31 + # fi 32 + 33 + # A note about dependencies: 34 + # Xquartz wants to exec XQuartz.app, XQuartz.app wants to exec xstart, and 35 + # xstart wants to exec Xquartz, so we must bundle all three to prevent a cycle. 36 + # Coincidentally, this also makes it trivial to install launch agents/daemons 37 + # that point into the user's profile. 38 + 39 + let 40 + shellEscape = x: "'${lib.replaceChars ["'"] [("'\\'" + "'")] x}'"; 41 + installer = writeScript "xquartz-install" '' 42 + NIX_LINK=$HOME/.nix-profile 43 + 44 + tmpdir=$(/usr/bin/mktemp -d $TMPDIR/xquartz-installer-XXXXXXXX) 45 + agentName=org.nixos.xquartz.startx.plist 46 + daemonName=org.nixos.xquartz.privileged_startx.plist 47 + sed=${gnused}/bin/sed 48 + 49 + cp ${./org.nixos.xquartz.startx.plist} $tmpdir/$agentName 50 + $sed -i "s|@LAUNCHD_STARTX@|$NIX_LINK/etc/X11/xinit/launchd_startx|" $tmpdir/$agentName 51 + $sed -i "s|@STARTX@|$NIX_LINK/bin/startx|" $tmpdir/$agentName 52 + $sed -i "s|@XQUARTZ@|$NIX_LINK/bin/Xquartz|" $tmpdir/$agentName 53 + 54 + cp ${./org.nixos.xquartz.privileged_startx.plist} $tmpdir/$daemonName 55 + $sed -i "s|@PRIVILEGED_STARTX@|$NIX_LINK/lib/X11/xinit/privileged_startx|" $tmpdir/$daemonName 56 + $sed -i "s|@PRIVILEGED_STARTX_D@|$NIX_LINK/lib/X11/xinit/privileged_startx.d|" $tmpdir/$daemonName 57 + 58 + sudo cp $tmpdir/$agentName /Library/LaunchAgents/$agentName 59 + sudo cp $tmpdir/$daemonName /Library/LaunchDaemons/$daemonName 60 + sudo launchctl load -w /Library/LaunchAgents/$agentName 61 + sudo launchctl load -w /Library/LaunchDaemons/$daemonName 62 + ''; 63 + fontDirs = [ 64 + xorg.fontbhttf 65 + xorg.fontbhlucidatypewriter100dpi 66 + xorg.fontbhlucidatypewriter75dpi 67 + ttf_bitstream_vera 68 + freefont_ttf 69 + liberation_ttf 70 + xorg.fontbh100dpi 71 + xorg.fontmiscmisc 72 + xorg.fontcursormisc 73 + ]; 74 + fontsConf = makeFontsConf { 75 + fontDirectories = fontDirs ++ [ 76 + "/Library/Fonts" 77 + "~/Library/Fonts" 78 + ]; 79 + }; 80 + fonts = import ./system-fonts.nix { 81 + inherit stdenv xorg fontDirs; 82 + }; 83 + # any X related programs expected to be available via $PATH 84 + env = buildEnv { 85 + name = "xquartz-env"; 86 + pathsToLink = [ "/bin" ]; 87 + paths = with xorg; [ 88 + # non-xorg 89 + quartz-wm xterm fontconfig 90 + # xorg 91 + xlsfonts xfontsel 92 + bdftopcf fontutil iceauth libXpm lndir luit makedepend mkfontdir 93 + mkfontscale sessreg setxkbmap smproxy twm x11perf xauth xbacklight xclock 94 + xcmsdb xcursorgen xdm xdpyinfo xdriinfo xev xeyes xfs xgamma xhost 95 + xinput xkbcomp xkbevd xkbutils xkill xlsatoms xlsclients xmessage xmodmap 96 + xpr xprop xrandr xrdb xrefresh xset xsetroot xvinfo xwd xwininfo xwud 97 + ]; 98 + }; 99 + in stdenv.mkDerivation { 100 + name = "xquartz"; 101 + buildInputs = [ ruby makeWrapper ]; 102 + unpackPhase = "sourceRoot=."; 103 + buildPhase = ":"; 104 + installPhase = '' 105 + cp -rT ${xorg.xinit} $out 106 + chmod -R u+w $out 107 + cp -rT ${xorg.xorgserver} $out 108 + chmod -R u+w $out 109 + 110 + cp ${installer} $out/bin/xquartz-install 111 + 112 + rm -r $out/LaunchAgents 113 + 114 + fontsConfPath=$out/etc/X11/fonts.conf 115 + cp ${fontsConf} $fontsConfPath 116 + 117 + cp ${./startx} $out/bin/startx 118 + substituteInPlace $out/bin/startx \ 119 + --replace "@PATH@" "$out/bin:${env}" \ 120 + --replace "@XAUTH@" "${xorg.xauth}/bin/xauth" \ 121 + --replace "@FONT_CACHE@" "$out/bin/font_cache" \ 122 + --replace "@PRIVILEGED_STARTX@" "$out/lib/X11/xinit/privileged_startx" \ 123 + --replace "@DEFAULT_SERVER@" "$out/bin/Xquartz" \ 124 + --replace "@DEFAULT_CLIENT@" "${xterm}/bin/xterm" \ 125 + --replace "@XINIT@" "$out/bin/xinit" \ 126 + --replace "@XINITRC@" "$out/etc/X11/xinit/xinitrc" \ 127 + --replace "@XKEYBOARD_CONFIG@" "${xkeyboard_config}/etc/X11/xkb" \ 128 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 129 + 130 + wrapProgram $out/bin/Xquartz \ 131 + --set XQUARTZ_X11 $out/Applications/XQuartz.app/Contents/MacOS/X11 \ 132 + --set XKB_BINDIR "${xorg.xkbcomp}/bin" 133 + 134 + defaultStartX="$out/bin/startx -- $out/bin/Xquartz" 135 + 136 + ruby ${./patch_plist.rb} \ 137 + ${shellEscape (builtins.toXML { 138 + XQUARTZ_DEFAULT_CLIENT = "${xterm}/bin/xterm"; 139 + XQUARTZ_DEFAULT_SHELL = "${shell}"; 140 + XQUARTZ_DEFAULT_STARTX = "@STARTX@"; 141 + FONTCONFIG_FILE = "@FONTCONFIG_FILE@"; 142 + XKB_BINDIR = "${xorg.xkbcomp}/bin"; 143 + })} \ 144 + $out/Applications/XQuartz.app/Contents/Info.plist 145 + substituteInPlace $out/Applications/XQuartz.app/Contents/Info.plist \ 146 + --replace "@STARTX@" "$defaultStartX" \ 147 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 148 + 149 + rm $out/lib/X11/xinit/privileged_startx.d/* 150 + cp ${./privileged} $out/lib/X11/xinit/privileged_startx.d/privileged 151 + substituteInPlace $out/lib/X11/xinit/privileged_startx.d/privileged \ 152 + --replace "@PATH@" "$out/bin:${env}" \ 153 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" \ 154 + --replace "@FONT_CACHE@" "$out/bin/font_cache" 155 + 156 + cp ${./font_cache} $out/bin/font_cache 157 + substituteInPlace $out/bin/font_cache \ 158 + --replace "@PATH@" "$out/bin:${env}" \ 159 + --replace "@ENCODINGSDIR@" "${xorg.encodings}/share/fonts/X11/encodings" \ 160 + --replace "@MKFONTDIR@" "${xorg.mkfontdir}/bin/mkfontdir" \ 161 + --replace "@MKFONTSCALE@" "${xorg.mkfontscale}/bin/mkfontscale" \ 162 + --replace "@FC_CACHE@" "${fontconfig}/bin/fc-cache" \ 163 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 164 + 165 + cp ${./xinitrc} $out/etc/X11/xinit/xinitrc 166 + substituteInPlace $out/etc/X11/xinit/xinitrc \ 167 + --replace "@PATH@" "$out/bin:${env}" \ 168 + --replace "@XSET@" "${xorg.xset}/bin/xset" \ 169 + --replace "@XMODMAP@" "${xorg.xmodmap}/bin/xmodmap" \ 170 + --replace "@XRDB@" "${xorg.xrdb}/bin/xrdb" \ 171 + --replace "@SYSTEM_FONTS@" "${fonts}/share/X11-fonts/" \ 172 + --replace "@QUARTZ_WM@" "${quartz-wm}/bin/quartz-wm" \ 173 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 174 + 175 + cp ${./X11} $out/Applications/XQuartz.app/Contents/MacOS/X11 176 + substituteInPlace $out/Applications/XQuartz.app/Contents/MacOS/X11 \ 177 + --replace "@DEFAULT_SHELL@" "${shell}" \ 178 + --replace "@DEFAULT_STARTX@" "$defaultStartX" \ 179 + --replace "@DEFAULT_CLIENT@" "${xterm}/bin/xterm" \ 180 + --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 181 + ''; 182 + meta = with lib; { 183 + platforms = platforms.darwin; 184 + maintainers = with maintainers; [ cstrahan ]; 185 + license = licenses.mit; 186 + }; 187 + }
+240
pkgs/servers/x11/xquartz/font_cache
···
··· 1 + #!/bin/bash 2 + 3 + export PATH=@PATH@:$PATH 4 + 5 + export FONTCONFIG_FILE="@FONTCONFIG_FILE@" 6 + ENCODINGSDIR="@ENCODINGSDIR@" 7 + FC_LOCKFILE="" 8 + 9 + # Are we caching system fonts or user fonts? 10 + system=0 11 + 12 + # Are we including OSX font dirs ({/,~/,/System/}Library/Fonts) 13 + osxfonts=1 14 + 15 + # Do we want to force a recache? 16 + force=0 17 + 18 + # How noisy are we? 19 + verbose=0 20 + 21 + # Check if the data in the given directory is newer than its cache 22 + check_dirty() { 23 + local dir=$1 24 + local fontfiles="" 25 + local retval=1 26 + 27 + # If the dir does not exist, we just exit 28 + if [[ ! -d "${dir}" ]]; then 29 + return 1 30 + fi 31 + 32 + # Create a list of all files in the dir 33 + # Filter out config / cache files. Ugly... counting down the day until 34 + # xfs finally goes away 35 + fontfiles="$(find ${dir}/ -maxdepth 1 -type f | awk '$0 !~ /fonts\..*$|^.*\.dir$/ {print}')" 36 + 37 + # Fonts were deleted (or never there). Kill off the caches 38 + if [[ -z "${fontfiles}" ]] ; then 39 + local f 40 + for f in "${dir}"/fonts.* "${dir}"/encodings.dir; do 41 + if [[ -f ${f} ]] ; then 42 + rm -f "${f}" 43 + fi 44 + done 45 + return 1 46 + fi 47 + 48 + # Force a recache 49 + if [[ ${force} == 1 ]] ; then 50 + retval=0 51 + fi 52 + 53 + # If we don't have our caches, we are dirty 54 + if [[ ! -f "${dir}/fonts.list" || ! -f "${dir}/fonts.dir" || ! -f "${dir}/encodings.dir" ]]; then 55 + retval=0 56 + fi 57 + 58 + # Check that no files were added or removed.... 59 + if [[ "${retval}" -ne 0 && "$(cat ${dir}/fonts.list)" != "${fontfiles}" ]] ; then 60 + retval=0 61 + fi 62 + 63 + # Check that no files were updated.... 64 + if [[ "${retval}" -ne 0 ]] ; then 65 + local changed="$(find ${dir}/ -type f -cnewer ${dir}/fonts.dir | awk '$0 !~ /fonts\..*$|^.*\.dir$/ {print}')" 66 + 67 + if [[ -n "${changed}" ]] ; then 68 + retval=0 69 + fi 70 + fi 71 + 72 + # Recreate fonts.list since something changed 73 + if [[ "${retval}" == 0 ]] ; then 74 + echo "${fontfiles}" > "${dir}"/fonts.list 75 + fi 76 + 77 + return ${retval} 78 + } 79 + 80 + get_fontdirs() { 81 + local d 82 + if [[ $system == 1 ]] ; then 83 + if [[ $osxfonts == 1 ]] ; then 84 + find {/System/,/}Library/Fonts -type d 85 + fi 86 + else 87 + if [[ $osxfonts == 1 && -d "${HOME}/Library/Fonts" ]] ; then 88 + find "${HOME}/Library/Fonts" -type d 89 + fi 90 + 91 + if [[ -d "${HOME}/.fonts" ]] ; then 92 + find "${HOME}/.fonts" -type d 93 + fi 94 + fi 95 + } 96 + 97 + setup_fontdirs() { 98 + local x="" 99 + local fontdirs="" 100 + local changed="no" 101 + 102 + umask 022 103 + 104 + if [[ $system == 1 ]] ; then 105 + echo "font_cache: Scanning system font directories to generate X11 font caches" 106 + else 107 + echo "font_cache: Scanning user font directories to generate X11 font caches" 108 + fi 109 + 110 + OIFS=$IFS 111 + IFS=' 112 + ' 113 + for x in $(get_fontdirs) ; do 114 + if [[ -d "${x}" ]] && check_dirty "${x}" ; then 115 + if [[ -z "${fontdirs}" ]] ; then 116 + fontdirs="${x}" 117 + else 118 + fontdirs="${fontdirs}${IFS}${x}" 119 + fi 120 + fi 121 + done 122 + 123 + if [[ -n "${fontdirs}" ]] ; then 124 + echo "font_cache: Making fonts.dir for updated directories." 125 + for x in ${fontdirs} ; do 126 + if [[ $verbose == 1 ]] ; then 127 + echo "font_cache: ${x}" 128 + fi 129 + 130 + # First, generate fonts.scale for scaleable fonts that might be there 131 + @MKFONTSCALE@ \ 132 + -a $ENCODINGSDIR/encodings.dir \ 133 + -a $ENCODINGSDIR/large/encodings.dir \ 134 + -- ${x} 135 + 136 + # Next, generate fonts.dir 137 + if [[ $verbose == 1 ]] ; then 138 + @MKFONTDIR@ \ 139 + -e $ENCODINGSDIR \ 140 + -e $ENCODINGSDIR/large \ 141 + -- ${x} 142 + else 143 + @MKFONTDIR@ \ 144 + -e $ENCODINGSDIR \ 145 + -e $ENCODINGSDIR/large \ 146 + -- ${x} > /dev/null 147 + fi 148 + done 149 + fi 150 + IFS=$OIFS 151 + 152 + # Finally, update fontconfig's cache 153 + echo "font_cache: Updating FC cache" 154 + if [[ $system == 1 ]] ; then 155 + @FC_CACHE@ -s \ 156 + $([[ $force == 1 ]] && echo "-f -r") \ 157 + $([[ $verbose == 1 ]] && echo "-v") 158 + else 159 + @FC_CACHE@ \ 160 + $([[ $force == 1 ]] && echo "-f -r") \ 161 + $([[ $verbose == 1 ]] && echo "-v") 162 + fi 163 + echo "font_cache: Done" 164 + } 165 + 166 + do_usage() { 167 + echo "font_cache [options]" 168 + echo " -f, --force : Force cache recreation" 169 + echo " -n, --no-osxfonts : Just cache X11 font directories" 170 + echo " (-n just pertains to XFont cache, not fontconfig)" 171 + echo " -s, --system : Cache system font dirs instead of user dirs" 172 + echo " -v, --verbose : Verbose Output" 173 + } 174 + 175 + cleanup() { 176 + [[ -r "${FC_LOCKFILE}" ]] && rm -f "${FC_LOCKFILE}" 177 + exit 1 178 + } 179 + 180 + while [[ $# -gt 0 ]] ; do 181 + case $1 in 182 + -s|--system) system=1 ;; 183 + -f|--force) force=1 ;; 184 + -v|--verbose) verbose=1 ;; 185 + -n|--no-osxfonts) osxfonts=0 ;; 186 + --help) do_usage ; exit 0 ;; 187 + *) do_usage ; exit 1 ;; 188 + esac 189 + shift 190 + done 191 + 192 + if [[ $system == 1 ]] ; then 193 + FC_LOCKFILE="/tmp/font_cache.$UID.lock" 194 + elif [[ -w "${TMPDIR}" ]] ; then 195 + FC_LOCKFILE="${TMPDIR}/font_cache.lock" 196 + elif [[ -w "/tmp" ]] ; then 197 + FC_LOCKFILE="/tmp/font_cache.$UID.lock" 198 + else 199 + FC_LOCKFILE="${HOME}/.font_cache.lock" 200 + fi 201 + 202 + if [[ -x /usr/bin/lockfile ]] ; then 203 + if /usr/bin/lockfile -r 0 -l 240 -s 4 -! "${FC_LOCKFILE}" ; then 204 + echo "font_cache is already running." >&2 205 + echo "If you believe this to be erroneous, please remove ${FC_LOCKFILE}." >&2 206 + exit 1 207 + fi 208 + else 209 + if [[ -r "${FC_LOCKFILE}" ]] ; then 210 + read OLD_PID < "${FC_LOCKFILE}" 211 + if kill -0 ${OLD_PID} >& /dev/null ; then 212 + echo "font_cache is already running with PID ${OLD_PID}." >&2 213 + echo "If you believe this to be erroneous, please remove ${FC_LOCKFILE}." >&2 214 + exit 1 215 + fi 216 + 217 + echo "Removing stale ${FC_LOCKFILE}" >&2 218 + rm -f "${FC_LOCKFILE}" 219 + fi 220 + 221 + echo $$ > "${FC_LOCKFILE}" 222 + 223 + if [[ ! -r "${FC_LOCKFILE}" ]] ; then 224 + echo "Unable to write to ${FC_LOCKFILE}." >&2 225 + exit 1 226 + fi 227 + 228 + # Now make sure we didn't collide mid-air 229 + read OLD_PID < "${FC_LOCKFILE}" 230 + if [[ $$ != ${OLD_PID} ]] ; then 231 + echo "font_cache is already running with PID ${OLD_PID}." >&2 232 + exit 1 233 + fi 234 + fi 235 + 236 + trap cleanup SIGINT SIGQUIT SIGABRT SIGTERM 237 + 238 + setup_fontdirs 239 + 240 + rm -f "${FC_LOCKFILE}"
+23
pkgs/servers/x11/xquartz/org.nixos.xquartz.privileged_startx.plist
···
··· 1 + <?xml version="1.0" encoding="UTF-8"?> 2 + <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 3 + <plist version="1.0"> 4 + <dict> 5 + <key>Label</key> 6 + <string>org.nixos.xquartz.privileged_startx</string> 7 + <key>ProgramArguments</key> 8 + <array> 9 + <string>@PRIVILEGED_STARTX@</string> 10 + <string>-d</string> 11 + <string>@PRIVILEGED_STARTX_D@</string> 12 + </array> 13 + <key>MachServices</key> 14 + <dict> 15 + <key>org.nixos.xquartz.privileged_startx</key> 16 + <true/> 17 + </dict> 18 + <key>TimeOut</key> 19 + <integer>120</integer> 20 + <key>EnableTransactions</key> 21 + <true/> 22 + </dict> 23 + </plist>
+27
pkgs/servers/x11/xquartz/org.nixos.xquartz.startx.plist
···
··· 1 + <?xml version="1.0" encoding="UTF-8"?> 2 + <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 3 + <plist version="1.0"> 4 + <dict> 5 + <key>Label</key> 6 + <string>org.nixos.xquartz.startx</string> 7 + <key>ProgramArguments</key> 8 + <array> 9 + <string>@LAUNCHD_STARTX@</string> 10 + <string>@STARTX@</string> 11 + <string>--</string> 12 + <string>@XQUARTZ@</string> 13 + </array> 14 + <key>Sockets</key> 15 + <dict> 16 + <key>org.nixos.xquartz:0</key> 17 + <dict> 18 + <key>SecureSocketWithKey</key> 19 + <string>DISPLAY</string> 20 + </dict> 21 + </dict> 22 + <key>ServiceIPC</key> 23 + <true/> 24 + <key>EnableTransactions</key> 25 + <true/> 26 + </dict> 27 + </plist>
+47
pkgs/servers/x11/xquartz/patch_plist.rb
···
··· 1 + require 'rexml/document' 2 + 3 + # This script is for setting environment variables in OSX applications. 4 + # 5 + # This script takes two arguments: 6 + # 1) A Nix attrset serialized via `builtins.toXML' 7 + # 2) The path to an OSX app's Info.plist file. 8 + 9 + def main(serialized_attrs, plist_path) 10 + env = attrs_to_hash(serialized_attrs) 11 + doc = REXML::Document.new(File.open(plist_path, &:read)) 12 + topmost_dict = doc.root.elements.detect { |e| e.name == "dict" } 13 + topmost_dict.add_element("key").tap do |key| 14 + key.text = "LSEnvironment" 15 + end 16 + topmost_dict.add_element(env_to_dict(env)) 17 + 18 + formatter = REXML::Formatters::Pretty.new(2) 19 + formatter.compact = true 20 + formatter.write(doc, File.open(plist_path, "w")) 21 + end 22 + 23 + # Convert a `builtins.toXML' serialized attrs to a hash. 24 + # This assumes the values are strings. 25 + def attrs_to_hash(serialized_attrs) 26 + hash = {} 27 + env_vars = REXML::Document.new(serialized_attrs) 28 + env_vars.root.elements[1].elements.each do |attr| 29 + name = attr.attribute("name") 30 + value = attr.elements.first.attribute("value") 31 + hash[name] = value 32 + end 33 + hash 34 + end 35 + 36 + def env_to_dict(env) 37 + dict = REXML::Element.new("dict") 38 + env.each do |k, v| 39 + key = dict.add_element("key") 40 + key.text = k 41 + string = dict.add_element("string") 42 + string.text = v 43 + end 44 + dict 45 + end 46 + 47 + main(ARGV[0], ARGV[1])
+43
pkgs/servers/x11/xquartz/privileged
···
··· 1 + #!/bin/sh 2 + 3 + export PATH=@PATH@:$PATH 4 + export FONTCONFIG_FILE="@FONTCONFIG_FILE@" 5 + 6 + # Our usage of mktemp fails with GNU, so prefer /usr/bin to hopefully 7 + # get BSD mktemp 8 + if [ -x /usr/bin/mktemp ] ; then 9 + MKTEMP=/usr/bin/mktemp 10 + else 11 + MKTEMP=mktemp 12 + fi 13 + 14 + STAT=/usr/bin/stat 15 + 16 + for dir in /tmp/.ICE-unix /tmp/.X11-unix /tmp/.font-unix ; do 17 + success=0 18 + for attempt in 1 2 3 4 5 ; do 19 + check=`${STAT} -f '%#p %u %g' ${dir} 2> /dev/null` 20 + if [ "${check}" = "041777 0 0" ] ; then 21 + success=1 22 + break 23 + elif [ -n "${check}" ] ; then 24 + saved=$(${MKTEMP} -d ${dir}-XXXXXXXX) 25 + mv ${dir} ${saved} 26 + echo "${dir} exists but is insecure. It has been moved into ${saved}" >&2 27 + fi 28 + 29 + # if $dir exists and is a symlink (ie protect against a race) 30 + if ${MKTEMP} -d ${dir} >& /dev/null ; then 31 + chmod 1777 $dir 32 + chown root:wheel $dir 33 + success=1 34 + break 35 + fi 36 + done 37 + 38 + if [ "${success}" -eq 0 ] ; then 39 + echo "Could not successfully create ${dir}" >&2 40 + fi 41 + done 42 + 43 + @FONT_CACHE@ -s &
+232
pkgs/servers/x11/xquartz/startx
···
··· 1 + #!/bin/sh 2 + 3 + # vim :set ts=4 sw=4 sts=4 et : 4 + 5 + # 6 + # This is just a sample implementation of a slightly less primitive 7 + # interface than xinit. It looks for user .xinitrc and .xserverrc 8 + # files, then system xinitrc and xserverrc files, else lets xinit choose 9 + # its default. The system xinitrc should probably do things like check 10 + # for .Xresources files and merge them in, start up a window manager, 11 + # and pop a clock and several xterms. 12 + # 13 + # Site administrators are STRONGLY urged to write nicer versions. 14 + # 15 + 16 + unset DBUS_SESSION_BUS_ADDRESS 17 + unset SESSION_MANAGER 18 + 19 + 20 + # Bourne shell does not automatically export modified environment variables 21 + # so export the new PATH just in case the user changes the shell 22 + export PATH=@PATH@:$PATH 23 + 24 + export FONTCONFIG_FILE="@FONTCONFIG_FILE@" 25 + 26 + userclientrc=$HOME/.xinitrc 27 + sysclientrc=@XINITRC@ 28 + 29 + userserverrc=$HOME/.xserverrc 30 + sysserverrc=@XINITRC@ 31 + defaultclient=@DEFAULT_CLIENT@ # xterm 32 + defaultserver=@DEFAULT_SERVER@ 33 + defaultclientargs="" 34 + defaultserverargs="" 35 + defaultdisplay=":0" 36 + clientargs="" 37 + serverargs="" 38 + 39 + export X11_PREFS_DOMAIN=org.nixos.xquartz".X11" 40 + 41 + # Initialize defaults (this will cut down on "safe" error messages) 42 + if ! /usr/bin/defaults read $X11_PREFS_DOMAIN cache_fonts > /dev/null 2>&1 ; then 43 + /usr/bin/defaults write $X11_PREFS_DOMAIN cache_fonts -bool true 44 + fi 45 + 46 + if ! /usr/bin/defaults read $X11_PREFS_DOMAIN no_auth > /dev/null 2>&1 ; then 47 + /usr/bin/defaults write $X11_PREFS_DOMAIN no_auth -bool false 48 + fi 49 + 50 + if ! /usr/bin/defaults read $X11_PREFS_DOMAIN nolisten_tcp > /dev/null 2>&1 ; then 51 + /usr/bin/defaults write $X11_PREFS_DOMAIN nolisten_tcp -bool true 52 + fi 53 + 54 + # First, start caching fonts 55 + if [ x`/usr/bin/defaults read $X11_PREFS_DOMAIN cache_fonts` = x1 ] ; then 56 + @FONT_CACHE@ & 57 + fi 58 + 59 + # a race to create /tmp/.X11-unix 60 + @PRIVILEGED_STARTX@ 61 + 62 + if [ x`/usr/bin/defaults read $X11_PREFS_DOMAIN no_auth` = x0 ] ; then 63 + enable_xauth=1 64 + else 65 + enable_xauth=0 66 + fi 67 + 68 + if [ x`defaults read $X11_PREFS_DOMAIN nolisten_tcp` = x1 ] ; then 69 + defaultserverargs="$defaultserverargs -nolisten tcp" 70 + fi 71 + 72 + # The second check is the real one. The first is to hopefully avoid 73 + # needless syslog spamming. 74 + if /usr/bin/defaults read $X11_PREFS_DOMAIN 2> /dev/null | grep -q 'dpi' && /usr/bin/defaults read $X11_PREFS_DOMAIN dpi > /dev/null 2>&1 ; then 75 + defaultserverargs="$defaultserverargs -dpi `/usr/bin/defaults read $X11_PREFS_DOMAIN dpi`" 76 + fi 77 + 78 + # Automatically determine an unused $DISPLAY 79 + d=0 80 + while true ; do 81 + [ -e /tmp/.X$d-lock ] || break 82 + d=$(($d + 1)) 83 + done 84 + defaultdisplay=":$d" 85 + unset d 86 + 87 + whoseargs="client" 88 + while [ x"$1" != x ]; do 89 + case "$1" in 90 + # '' required to prevent cpp from treating "/*" as a C comment. 91 + /''*|\./''*) 92 + if [ "$whoseargs" = "client" ]; then 93 + if [ x"$client" = x ] && [ x"$clientargs" = x ]; then 94 + client="$1" 95 + else 96 + clientargs="$clientargs $1" 97 + fi 98 + else 99 + if [ x"$server" = x ] && [ x"$serverargs" = x ]; then 100 + server="$1" 101 + else 102 + serverargs="$serverargs $1" 103 + fi 104 + fi 105 + ;; 106 + --) 107 + whoseargs="server" 108 + ;; 109 + *) 110 + if [ "$whoseargs" = "client" ]; then 111 + clientargs="$clientargs $1" 112 + else 113 + # display must be the FIRST server argument 114 + if [ x"$serverargs" = x ] && \ 115 + expr "$1" : ':[0-9][0-9]*$' > /dev/null 2>&1; then 116 + display="$1" 117 + else 118 + serverargs="$serverargs $1" 119 + fi 120 + fi 121 + ;; 122 + esac 123 + shift 124 + done 125 + 126 + # process client arguments 127 + if [ x"$client" = x ]; then 128 + client=$defaultclient 129 + 130 + # For compatibility reasons, only use startxrc if there were no client command line arguments 131 + if [ x"$clientargs" = x ]; then 132 + if [ -f "$userclientrc" ]; then 133 + client=$userclientrc 134 + elif [ -f "$sysclientrc" ]; then 135 + client=$sysclientrc 136 + fi 137 + fi 138 + fi 139 + 140 + # if no client arguments, use defaults 141 + if [ x"$clientargs" = x ]; then 142 + clientargs=$defaultclientargs 143 + fi 144 + 145 + # process server arguments 146 + if [ x"$server" = x ]; then 147 + server=$defaultserver 148 + 149 + # For compatibility reasons, only use xserverrc if there were no server command line arguments 150 + if [ x"$serverargs" = x -a x"$display" = x ]; then 151 + if [ -f "$userserverrc" ]; then 152 + server=$userserverrc 153 + elif [ -f "$sysserverrc" ]; then 154 + server=$sysserverrc 155 + fi 156 + fi 157 + fi 158 + 159 + # if no server arguments, use defaults 160 + if [ x"$serverargs" = x ]; then 161 + serverargs=$defaultserverargs 162 + fi 163 + 164 + # if no display, use default 165 + if [ x"$display" = x ]; then 166 + display=$defaultdisplay 167 + fi 168 + 169 + if [ x"$enable_xauth" = x1 ] ; then 170 + if [ x"$XAUTHORITY" = x ]; then 171 + XAUTHORITY=$HOME/.Xauthority 172 + export XAUTHORITY 173 + fi 174 + 175 + removelist= 176 + 177 + # set up default Xauth info for this machine 178 + hostname=`/bin/hostname` 179 + 180 + authdisplay=${display:-:0} 181 + 182 + mcookie=`/usr/bin/openssl rand -hex 16` 183 + 184 + if test x"$mcookie" = x; then 185 + echo "Couldn't create cookie" 186 + exit 1 187 + fi 188 + dummy=0 189 + 190 + # create a file with auth information for the server. ':0' is a dummy. 191 + xserverauthfile=$HOME/.serverauth.$$ 192 + trap "rm -f '$xserverauthfile'" HUP INT QUIT ILL TRAP KILL BUS TERM 193 + @XAUTH@ -q -f "$xserverauthfile" << EOF 194 + add :$dummy . $mcookie 195 + EOF 196 + 197 + xserverauthfilequoted=$(echo ${xserverauthfile} | sed "s/'/'\\\\''/g") 198 + serverargs=${serverargs}" -auth '"${xserverauthfilequoted}"'" 199 + 200 + # now add the same credentials to the client authority file 201 + # if '$displayname' already exists do not overwrite it as another 202 + # server man need it. Add them to the '$xserverauthfile' instead. 203 + for displayname in $authdisplay $hostname$authdisplay; do 204 + authcookie=`@XAUTH@ list "$displayname" \ 205 + | sed -n "s/.*$displayname[[:space:]*].*[[:space:]*]//p"` 2>/dev/null; 206 + if [ "z${authcookie}" = "z" ] ; then 207 + @XAUTH@ -q << EOF 208 + add $displayname . $mcookie 209 + EOF 210 + removelist="$displayname $removelist" 211 + else 212 + dummy=$(($dummy+1)); 213 + @XAUTH@ -q -f "$xserverauthfile" << EOF 214 + add :$dummy . $authcookie 215 + EOF 216 + fi 217 + done 218 + fi 219 + 220 + eval @XINIT@ \"$client\" $clientargs -- \"$server\" $display $serverargs "-xkbdir" "@XKEYBOARD_CONFIG@" 221 + retval=$? 222 + 223 + if [ x"$enable_xauth" = x1 ] ; then 224 + if [ x"$removelist" != x ]; then 225 + @XAUTH@ remove $removelist 226 + fi 227 + if [ x"$xserverauthfile" != x ]; then 228 + rm -f "$xserverauthfile" 229 + fi 230 + fi 231 + 232 + exit $retval
+36
pkgs/servers/x11/xquartz/system-fonts.nix
···
··· 1 + { stdenv, xorg, fontDirs }: 2 + 3 + stdenv.mkDerivation { 4 + name = "xquartz-system-fonts"; 5 + buildInputs = [ 6 + xorg.mkfontdir xorg.mkfontscale 7 + ]; 8 + buildCommand = '' 9 + source $stdenv/setup 10 + 11 + for i in ${toString fontDirs} ; do 12 + if [ -d $i/ ]; then 13 + list="$list $i"; 14 + fi; 15 + done 16 + list=$(find $list -name fonts.dir -o -name '*.ttf' -o -name '*.otf'); 17 + fontDirs='''; 18 + for i in $list ; do 19 + fontDirs="$fontDirs $(dirname $i)"; 20 + done; 21 + mkdir -p $out/share/X11-fonts/; 22 + find $fontDirs -type f -o -type l | while read i; do 23 + j="''${i##*/}" 24 + if ! test -e "$out/share/X11-fonts/''${j}"; then 25 + ln -s "$i" "$out/share/X11-fonts/''${j}"; 26 + fi; 27 + done; 28 + cd $out/share/X11-fonts/ 29 + rm fonts.dir 30 + rm fonts.scale 31 + rm fonts.alias 32 + mkfontdir 33 + mkfontscale 34 + cat $( find ${xorg.fontalias}/ -name fonts.alias) >fonts.alias 35 + ''; 36 + }
+40
pkgs/servers/x11/xquartz/xinitrc
···
··· 1 + #!/bin/sh 2 + 3 + export PATH=@PATH@:$PATH 4 + 5 + userresources=$HOME/.Xresources 6 + usermodmap=$HOME/.Xmodmap 7 + 8 + # Fix ridiculously slow key repeat. 9 + @XSET@ r rate 10 + 11 + # merge in defaults and keymaps 12 + 13 + if [ -f "$userresources" ]; then 14 + if [ -x /usr/bin/cpp ] ; then 15 + @XRDB@ -merge "$userresources" 16 + else 17 + @XRDB@ -nocpp -merge "$userresources" 18 + fi 19 + fi 20 + 21 + if [ -f "$usermodmap" ]; then 22 + @XMODMAP@ "$usermodmap" 23 + fi 24 + 25 + fontpath="@SYSTEM_FONTS@" 26 + [ -e "$HOME"/.fonts/fonts.dir ] && fontpath="$fontpath,$HOME/.fonts" 27 + [ -e "$HOME"/Library/Fonts/fonts.dir ] && fontpath="$fontpath,$HOME/Library/Fonts" 28 + [ -e /Library/Fonts/fonts.dir ] && fontpath="$fontpath,/Library/Fonts" 29 + [ -e /System/Library/Fonts/fonts.dir ] && fontpath="$fontpath,/System/Library/Fonts" 30 + @XSET@ fp= "$fontpath" 31 + unset fontpath 32 + 33 + if [ -d "${HOME}/.xinitrc.d" ] ; then 34 + for f in "${HOME}"/.xinitrc.d/*.sh ; do 35 + [ -x "$f" ] && . "$f" 36 + done 37 + unset f 38 + fi 39 + 40 + exec @QUARTZ_WM@
+21 -20
pkgs/top-level/all-packages.nix
··· 164 165 ### Symbolic names. 166 167 - x11 = if stdenv.isDarwin then darwinX11AndOpenGL else xlibsWrapper; 168 169 # `xlibs' is the set of X library components. This used to be the 170 # old modular X llibraries project (called `xlibs') but now it's just ··· 4548 4549 freealut = callPackage ../development/libraries/freealut { }; 4550 4551 - freeglut = if stdenv.isDarwin then darwinX11AndOpenGL else 4552 - callPackage ../development/libraries/freeglut { }; 4553 4554 freetype = callPackage ../development/libraries/freetype { }; 4555 ··· 5666 5667 mesaSupported = lib.elem system lib.platforms.mesaPlatforms; 5668 5669 - mesa_original = callPackage ../development/libraries/mesa { 5670 # makes it slower, but during runtime we link against just mesa_drivers 5671 # through /run/opengl-driver*, which is overriden according to config.grsecurity 5672 grsecEnabled = true; 5673 - }; 5674 - 5675 - mesa_noglu = if stdenv.isDarwin 5676 - then darwinX11AndOpenGL // { driverLink = mesa_noglu; } 5677 - else mesa_original; 5678 mesa_drivers = let 5679 - mo = mesa_original.override { grsecEnabled = config.grsecurity or false; }; 5680 in mo.drivers; 5681 - mesa_glu = callPackage ../development/libraries/mesa-glu { }; 5682 - mesa = if stdenv.isDarwin then darwinX11AndOpenGL 5683 - else buildEnv { 5684 - name = "mesa-${mesa_noglu.version}"; 5685 - paths = [ mesa_glu mesa_noglu ]; 5686 - }; 5687 - darwinX11AndOpenGL = callPackage ../os-specific/darwin/native-x11-and-opengl { }; 5688 5689 metaEnvironment = recurseIntoAttrs (let callPackage = newScope pkgs.metaEnvironment; in rec { 5690 sdfLibrary = callPackage ../development/libraries/sdf-library { aterm = aterm28; }; ··· 7012 7013 xinetd = callPackage ../servers/xinetd { }; 7014 7015 xorg = recurseIntoAttrs (import ../servers/x11/xorg/default.nix { 7016 - inherit fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig 7017 - libxslt expat libdrm libpng zlib perl mesa_drivers 7018 dbus libuuid openssl gperf m4 7019 - autoconf automake libtool xmlto asciidoc udev flex bison python mtdev pixman; 7020 mesa = mesa_noglu; 7021 } // { 7022 xf86videointel-testing = callPackage ../servers/x11/xorg/xf86-video-intel-testing.nix { }; 7023 });
··· 164 165 ### Symbolic names. 166 167 + x11 = xlibsWrapper; 168 169 # `xlibs' is the set of X library components. This used to be the 170 # old modular X llibraries project (called `xlibs') but now it's just ··· 4548 4549 freealut = callPackage ../development/libraries/freealut { }; 4550 4551 + freeglut = callPackage ../development/libraries/freeglut { }; 4552 4553 freetype = callPackage ../development/libraries/freetype { }; 4554 ··· 5665 5666 mesaSupported = lib.elem system lib.platforms.mesaPlatforms; 5667 5668 + mesaDarwinOr = alternative: if stdenv.isDarwin 5669 + then callPackage ../development/libraries/mesa-darwin { } 5670 + else alternative; 5671 + mesa_noglu = mesaDarwinOr (callPackage ../development/libraries/mesa { 5672 # makes it slower, but during runtime we link against just mesa_drivers 5673 # through /run/opengl-driver*, which is overriden according to config.grsecurity 5674 grsecEnabled = true; 5675 + }); 5676 + mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { }); 5677 mesa_drivers = let 5678 + mo = mesa_noglu.override { grsecEnabled = config.grsecurity or false; }; 5679 in mo.drivers; 5680 + mesa = mesaDarwinOr (buildEnv { 5681 + name = "mesa-${mesa_noglu.version}"; 5682 + paths = [ mesa_noglu mesa_glu ]; 5683 + }); 5684 5685 metaEnvironment = recurseIntoAttrs (let callPackage = newScope pkgs.metaEnvironment; in rec { 5686 sdfLibrary = callPackage ../development/libraries/sdf-library { aterm = aterm28; }; ··· 7008 7009 xinetd = callPackage ../servers/xinetd { }; 7010 7011 + xquartz = callPackage ../servers/x11/xquartz { }; 7012 + quartz-wm = callPackage ../servers/x11/quartz-wm { stdenv = clangStdenv; }; 7013 + 7014 xorg = recurseIntoAttrs (import ../servers/x11/xorg/default.nix { 7015 + inherit clangStdenv fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig 7016 + libxslt expat libpng zlib perl mesa_drivers 7017 dbus libuuid openssl gperf m4 7018 + autoconf automake libtool xmlto asciidoc flex bison python mtdev pixman; 7019 mesa = mesa_noglu; 7020 + udev = if stdenv.isLinux then udev else null; 7021 + libdrm = if stdenv.isLinux then libdrm else null; 7022 } // { 7023 xf86videointel-testing = callPackage ../servers/x11/xorg/xf86-video-intel-testing.nix { }; 7024 });
+27 -27
pkgs/top-level/release.nix
··· 382 }; 383 384 xorg = { 385 - fontadobe100dpi = linux; 386 - fontadobe75dpi = linux; 387 - fontbh100dpi = linux; 388 - fontbhlucidatypewriter100dpi = linux; 389 - fontbhlucidatypewriter75dpi = linux; 390 - fontbhttf = linux; 391 - fontcursormisc = linux; 392 - fontmiscmisc = linux; 393 - iceauth = linux; 394 - libX11 = linux; 395 - lndir = all; 396 - setxkbmap = linux; 397 - xauth = linux; 398 - xbitmaps = linux; 399 - xev = linux; 400 xf86inputevdev = linux; 401 xf86inputkeyboard = linux; 402 xf86inputmouse = linux; ··· 408 xf86videovesa = linux; 409 xf86videovmware = linux; 410 xf86videomodesetting = linux; 411 - xfs = linux; 412 - xinput = linux; 413 - xkbcomp = linux; 414 - xlsclients = linux; 415 - xmessage = linux; 416 - xorgserver = linux; 417 - xprop = linux; 418 - xrandr = linux; 419 - xrdb = linux; 420 - xset = linux; 421 - xsetroot = linux; 422 - xwininfo = linux; 423 }; 424 425 xfce = {
··· 382 }; 383 384 xorg = { 385 + fontadobe100dpi = linux ++ darwin; 386 + fontadobe75dpi = linux ++ darwin; 387 + fontbh100dpi = linux ++ darwin; 388 + fontbhlucidatypewriter100dpi = linux ++ darwin; 389 + fontbhlucidatypewriter75dpi = linux ++ darwin; 390 + fontbhttf = linux ++ darwin; 391 + fontcursormisc = linux ++ darwin; 392 + fontmiscmisc = linux ++ darwin; 393 + iceauth = linux ++ darwin; 394 + libX11 = linux ++ darwin; 395 + lndir = all ++ darwin; 396 + setxkbmap = linux ++ darwin; 397 + xauth = linux ++ darwin; 398 + xbitmaps = linux ++ darwin; 399 + xev = linux ++ darwin; 400 xf86inputevdev = linux; 401 xf86inputkeyboard = linux; 402 xf86inputmouse = linux; ··· 408 xf86videovesa = linux; 409 xf86videovmware = linux; 410 xf86videomodesetting = linux; 411 + xfs = linux ++ darwin; 412 + xinput = linux ++ darwin; 413 + xkbcomp = linux ++ darwin; 414 + xlsclients = linux ++ darwin; 415 + xmessage = linux ++ darwin; 416 + xorgserver = linux ++ darwin; 417 + xprop = linux ++ darwin; 418 + xrandr = linux ++ darwin; 419 + xrdb = linux ++ darwin; 420 + xset = linux ++ darwin; 421 + xsetroot = linux ++ darwin; 422 + xwininfo = linux ++ darwin; 423 }; 424 425 xfce = {