about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/x11/xorg
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/x11/xorg')
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/.gitignore1
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/builder.sh42
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/darwin/bundle_main.patch84
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h1409
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/darwin/stub.patch61
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/default.nix4498
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/dont-create-logdir-during-build.patch32
-rwxr-xr-xnixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl358
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/imake-cc-wrapper-uberhack.patch13
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/imake-setup-hook.sh19
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/imake.patch41
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/imake.sh6
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/overrides.nix1151
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/tarballs.list221
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/use_crocus_and_iris.patch28
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix24
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/xwayland.nix126
17 files changed, 8114 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/x11/xorg/.gitignore b/nixpkgs/pkgs/servers/x11/xorg/.gitignore
new file mode 100644
index 000000000000..1bf88f244e80
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/.gitignore
@@ -0,0 +1 @@
+download-cache/
diff --git a/nixpkgs/pkgs/servers/x11/xorg/builder.sh b/nixpkgs/pkgs/servers/x11/xorg/builder.sh
new file mode 100644
index 000000000000..833acf43a5b0
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/builder.sh
@@ -0,0 +1,42 @@
+if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi
+# This is the builder for all X.org components.
+source $stdenv/setup
+
+
+# After installation, automatically add all "Requires" fields in the
+# pkgconfig files (*.pc) to the propagated build inputs.
+origPostInstall=$postInstall
+postInstall() {
+    if test -n "$origPostInstall"; then eval "$origPostInstall"; fi
+
+    local r p requires
+    set +o pipefail
+    requires=$(grep "Requires:" ${!outputDev}/lib/pkgconfig/*.pc | \
+        sed "s/Requires://" | sed "s/,/ /g")
+    set -o pipefail
+
+    echo "propagating requisites $requires"
+
+    for r in $requires; do
+        for p in "${pkgsHostHost[@]}" "${pkgsHostTarget[@]}"; do
+            if test -e $p/lib/pkgconfig/$r.pc; then
+                echo "  found requisite $r in $p"
+                propagatedBuildInputs+=" $p"
+            fi
+        done
+    done
+}
+
+
+installFlags="appdefaultdir=$out/share/X11/app-defaults $installFlags"
+
+
+if test -n "$x11BuildHook"; then
+    source $x11BuildHook
+fi
+
+
+enableParallelBuilding=1
+enableParallelInstalling=1
+
+genericBuild
diff --git a/nixpkgs/pkgs/servers/x11/xorg/darwin/bundle_main.patch b/nixpkgs/pkgs/servers/x11/xorg/darwin/bundle_main.patch
new file mode 100644
index 000000000000..5d4c97d6684c
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/darwin/bundle_main.patch
@@ -0,0 +1,84 @@
+This patch makes it possible (and necessary) to specify the default
+shell, xterm client, and startx script from environment variables. These
+defaults are used when launching the XQuartz.app, which in turn needs to know
+how to start the X server. `startx' comes from the `xinit' package,
+which also has a dependency on `xorg-server', so we can't hardcode
+sane defaults. If the environment variables are specified, they
+override any value in the preferences settings.
+
+When developing an installable package for XQuartz/XQuartz.app, we'll
+need to set an `LSEnvironment' entry in the plist for the XQuartz.app.
+(See stub.patch for more details.).
+
+diff --git a/hw/xquartz/mach-startup/bundle-main.c b/hw/xquartz/mach-startup/bundle-main.c
+index de82e2280..da58a5d44 100644
+--- a/hw/xquartz/mach-startup/bundle-main.c
++++ b/hw/xquartz/mach-startup/bundle-main.c
+@@ -76,8 +76,6 @@ extern int noPanoramiXExtension;
+ extern Bool noCompositeExtension;
+ #endif
+ 
+-#define DEFAULT_CLIENT X11BINDIR "/xterm"
+-#define DEFAULT_STARTX X11BINDIR "/startx -- " X11BINDIR "/Xquartz"
+ #define DEFAULT_SHELL  "/bin/sh"
+ 
+ #define _STRINGIZE(s) #s
+@@ -108,7 +106,7 @@ server_main(int argc, char **argv, char **envp);
+ static int
+ execute(const char *command);
+ static char *
+-command_from_prefs(const char *key, const char *default_value);
++command_from_prefs(const char *key, const char *env_name, const char *default_value);
+ 
+ static char *pref_app_to_run;
+ static char *pref_login_shell;
+@@ -669,14 +667,19 @@ main(int argc, char **argv, char **envp)
+         pid_t child1, child2;
+         int status;
+ 
+-        pref_app_to_run = command_from_prefs("app_to_run", DEFAULT_CLIENT);
++        pref_app_to_run = command_from_prefs("app_to_run",
++                                             "XQUARTZ_DEFAULT_CLIENT",
++                                             NULL);
+         assert(pref_app_to_run);
+ 
+-        pref_login_shell = command_from_prefs("login_shell", DEFAULT_SHELL);
++        pref_login_shell = command_from_prefs("login_shell",
++                                              "XQUARTZ_DEFAULT_SHELL",
++                                              DEFAULT_SHELL);
+         assert(pref_login_shell);
+ 
+         pref_startx_script = command_from_prefs("startx_script",
+-                                                DEFAULT_STARTX);
++                                                "XQUARTZ_DEFAULT_STARTX",
++                                                NULL);
+         assert(pref_startx_script);
+ 
+         /* Do the fork-twice trick to avoid having to reap zombies */
+@@ -753,7 +756,7 @@ execute(const char *command)
+ }
+ 
+ static char *
+-command_from_prefs(const char *key, const char *default_value)
++command_from_prefs(const char *key, const char *env_name, const char *default_value)
+ {
+     char *command = NULL;
+ 
+@@ -763,6 +766,17 @@ command_from_prefs(const char *key, const char *default_value)
+     if (!key)
+         return NULL;
+ 
++    if (env_name != NULL) {
++        command = getenv(env_name);
++        if (command != NULL) {
++            return strdup(command);
++        }
++    }
++
++    if (!default_value) {
++        return NULL;
++    }
++
+     cfKey = CFStringCreateWithCString(NULL, key, kCFStringEncodingASCII);
+ 
+     if (!cfKey)
diff --git a/nixpkgs/pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h b/nixpkgs/pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h
new file mode 100644
index 000000000000..b012570ae133
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h
@@ -0,0 +1,1409 @@
+/*
+ * Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
+ * Copyright 2007-2008 Red Hat, Inc.
+ * (C) Copyright IBM Corporation 2004
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * on the rights to use, copy, modify, merge, publish, distribute, sub
+ * license, and/or sell copies of the Software, and to permit persons to whom
+ * the Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDERS AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+ * USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/**
+ * \file dri_interface.h
+ *
+ * This file contains all the types and functions that define the interface
+ * between a DRI driver and driver loader.  Currently, the most common driver
+ * loader is the XFree86 libGL.so.  However, other loaders do exist, and in
+ * the future the server-side libglx.a will also be a loader.
+ * 
+ * \author Kevin E. Martin <kevin@precisioninsight.com>
+ * \author Ian Romanick <idr@us.ibm.com>
+ * \author Kristian Høgsberg <krh@redhat.com>
+ */
+
+#ifndef DRI_INTERFACE_H
+#define DRI_INTERFACE_H
+
+/* For archs with no drm.h */
+#if defined(__APPLE__) || defined(__CYGWIN__) || defined(__GNU__)
+#ifndef __NOT_HAVE_DRM_H
+#define __NOT_HAVE_DRM_H
+#endif
+#endif
+
+#ifndef __NOT_HAVE_DRM_H
+#include <drm.h>
+#else
+typedef unsigned int drm_context_t;
+typedef unsigned int drm_drawable_t;
+typedef struct drm_clip_rect drm_clip_rect_t;
+#endif
+
+/**
+ * \name DRI interface structures
+ *
+ * The following structures define the interface between the GLX client
+ * side library and the DRI (direct rendering infrastructure).
+ */
+/*@{*/
+typedef struct __DRIdisplayRec		__DRIdisplay;
+typedef struct __DRIscreenRec		__DRIscreen;
+typedef struct __DRIcontextRec		__DRIcontext;
+typedef struct __DRIdrawableRec		__DRIdrawable;
+typedef struct __DRIconfigRec		__DRIconfig;
+typedef struct __DRIframebufferRec	__DRIframebuffer;
+typedef struct __DRIversionRec		__DRIversion;
+
+typedef struct __DRIcoreExtensionRec		__DRIcoreExtension;
+typedef struct __DRIextensionRec		__DRIextension;
+typedef struct __DRIcopySubBufferExtensionRec	__DRIcopySubBufferExtension;
+typedef struct __DRIswapControlExtensionRec	__DRIswapControlExtension;
+typedef struct __DRIframeTrackingExtensionRec	__DRIframeTrackingExtension;
+typedef struct __DRImediaStreamCounterExtensionRec	__DRImediaStreamCounterExtension;
+typedef struct __DRItexOffsetExtensionRec	__DRItexOffsetExtension;
+typedef struct __DRItexBufferExtensionRec	__DRItexBufferExtension;
+typedef struct __DRIlegacyExtensionRec		__DRIlegacyExtension;
+typedef struct __DRIswrastExtensionRec		__DRIswrastExtension;
+typedef struct __DRIbufferRec			__DRIbuffer;
+typedef struct __DRIdri2ExtensionRec		__DRIdri2Extension;
+typedef struct __DRIdri2LoaderExtensionRec	__DRIdri2LoaderExtension;
+typedef struct __DRI2flushExtensionRec	__DRI2flushExtension;
+typedef struct __DRI2throttleExtensionRec	__DRI2throttleExtension;
+
+
+typedef struct __DRIimageLoaderExtensionRec     __DRIimageLoaderExtension;
+typedef struct __DRIimageDriverExtensionRec     __DRIimageDriverExtension;
+
+/*@}*/
+
+
+/**
+ * Extension struct.  Drivers 'inherit' from this struct by embedding
+ * it as the first element in the extension struct.
+ *
+ * We never break API in for a DRI extension.  If we need to change
+ * the way things work in a non-backwards compatible manner, we
+ * introduce a new extension.  During a transition period, we can
+ * leave both the old and the new extension in the driver, which
+ * allows us to move to the new interface without having to update the
+ * loader(s) in lock step.
+ *
+ * However, we can add entry points to an extension over time as long
+ * as we don't break the old ones.  As we add entry points to an
+ * extension, we increase the version number.  The corresponding
+ * #define can be used to guard code that accesses the new entry
+ * points at compile time and the version field in the extension
+ * struct can be used at run-time to determine how to use the
+ * extension.
+ */
+struct __DRIextensionRec {
+    const char *name;
+    int version;
+};
+
+/**
+ * The first set of extension are the screen extensions, returned by
+ * __DRIcore::getExtensions().  This entry point will return a list of
+ * extensions and the loader can use the ones it knows about by
+ * casting them to more specific extensions and advertising any GLX
+ * extensions the DRI extensions enables.
+ */
+
+/**
+ * Used by drivers to indicate support for setting the read drawable.
+ */
+#define __DRI_READ_DRAWABLE "DRI_ReadDrawable"
+#define __DRI_READ_DRAWABLE_VERSION 1
+
+/**
+ * Used by drivers that implement the GLX_MESA_copy_sub_buffer extension.
+ */
+#define __DRI_COPY_SUB_BUFFER "DRI_CopySubBuffer"
+#define __DRI_COPY_SUB_BUFFER_VERSION 1
+struct __DRIcopySubBufferExtensionRec {
+    __DRIextension base;
+    void (*copySubBuffer)(__DRIdrawable *drawable, int x, int y, int w, int h);
+};
+
+/**
+ * Used by drivers that implement the GLX_SGI_swap_control or
+ * GLX_MESA_swap_control extension.
+ */
+#define __DRI_SWAP_CONTROL "DRI_SwapControl"
+#define __DRI_SWAP_CONTROL_VERSION 1
+struct __DRIswapControlExtensionRec {
+    __DRIextension base;
+    void (*setSwapInterval)(__DRIdrawable *drawable, unsigned int inteval);
+    unsigned int (*getSwapInterval)(__DRIdrawable *drawable);
+};
+
+/**
+ * Used by drivers that implement the GLX_MESA_swap_frame_usage extension.
+ */
+#define __DRI_FRAME_TRACKING "DRI_FrameTracking"
+#define __DRI_FRAME_TRACKING_VERSION 1
+struct __DRIframeTrackingExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Enable or disable frame usage tracking.
+     * 
+     * \since Internal API version 20030317.
+     */
+    int (*frameTracking)(__DRIdrawable *drawable, GLboolean enable);
+
+    /**
+     * Retrieve frame usage information.
+     * 
+     * \since Internal API version 20030317.
+     */
+    int (*queryFrameTracking)(__DRIdrawable *drawable,
+			      int64_t * sbc, int64_t * missedFrames,
+			      float * lastMissedUsage, float * usage);
+};
+
+
+/**
+ * Used by drivers that implement the GLX_SGI_video_sync extension.
+ */
+#define __DRI_MEDIA_STREAM_COUNTER "DRI_MediaStreamCounter"
+#define __DRI_MEDIA_STREAM_COUNTER_VERSION 1
+struct __DRImediaStreamCounterExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Wait for the MSC to equal target_msc, or, if that has already passed,
+     * the next time (MSC % divisor) is equal to remainder.  If divisor is
+     * zero, the function will return as soon as MSC is greater than or equal
+     * to target_msc.
+     */
+    int (*waitForMSC)(__DRIdrawable *drawable,
+		      int64_t target_msc, int64_t divisor, int64_t remainder,
+		      int64_t * msc, int64_t * sbc);
+
+    /**
+     * Get the number of vertical refreshes since some point in time before
+     * this function was first called (i.e., system start up).
+     */
+    int (*getDrawableMSC)(__DRIscreen *screen, __DRIdrawable *drawable,
+			  int64_t *msc);
+};
+
+
+#define __DRI_TEX_OFFSET "DRI_TexOffset"
+#define __DRI_TEX_OFFSET_VERSION 1
+struct __DRItexOffsetExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Method to override base texture image with a driver specific 'offset'.
+     * The depth passed in allows e.g. to ignore the alpha channel of texture
+     * images where the non-alpha components don't occupy a whole texel.
+     *
+     * For GLX_EXT_texture_from_pixmap with AIGLX.
+     */
+    void (*setTexOffset)(__DRIcontext *pDRICtx, GLint texname,
+			 unsigned long long offset, GLint depth, GLuint pitch);
+};
+
+
+/* Valid values for format in the setTexBuffer2 function below.  These
+ * values match the GLX tokens for compatibility reasons, but we
+ * define them here since the DRI interface can't depend on GLX. */
+#define __DRI_TEXTURE_FORMAT_NONE        0x20D8
+#define __DRI_TEXTURE_FORMAT_RGB         0x20D9
+#define __DRI_TEXTURE_FORMAT_RGBA        0x20DA
+
+#define __DRI_TEX_BUFFER "DRI_TexBuffer"
+#define __DRI_TEX_BUFFER_VERSION 2
+struct __DRItexBufferExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Method to override base texture image with the contents of a
+     * __DRIdrawable. 
+     *
+     * For GLX_EXT_texture_from_pixmap with AIGLX.  Deprecated in favor of
+     * setTexBuffer2 in version 2 of this interface
+     */
+    void (*setTexBuffer)(__DRIcontext *pDRICtx,
+			 GLint target,
+			 __DRIdrawable *pDraw);
+
+    /**
+     * Method to override base texture image with the contents of a
+     * __DRIdrawable, including the required texture format attribute.
+     *
+     * For GLX_EXT_texture_from_pixmap with AIGLX.
+     */
+    void (*setTexBuffer2)(__DRIcontext *pDRICtx,
+			  GLint target,
+			  GLint format,
+			  __DRIdrawable *pDraw);
+    /**
+     * Method to release texture buffer in case some special platform
+     * need this.
+     *
+     * For GLX_EXT_texture_from_pixmap with AIGLX.
+     */
+    void (*releaseTexBuffer)(__DRIcontext *pDRICtx,
+			GLint target,
+			__DRIdrawable *pDraw);
+};
+
+/**
+ * Used by drivers that implement DRI2
+ */
+#define __DRI2_FLUSH "DRI2_Flush"
+#define __DRI2_FLUSH_VERSION 4
+
+#define __DRI2_FLUSH_DRAWABLE (1 << 0) /* the drawable should be flushed. */
+#define __DRI2_FLUSH_CONTEXT  (1 << 1) /* glFlush should be called */
+
+enum __DRI2throttleReason {
+   __DRI2_THROTTLE_SWAPBUFFER,
+   __DRI2_THROTTLE_COPYSUBBUFFER,
+   __DRI2_THROTTLE_FLUSHFRONT
+};
+
+struct __DRI2flushExtensionRec {
+    __DRIextension base;
+    void (*flush)(__DRIdrawable *drawable);
+
+    /**
+     * Ask the driver to call getBuffers/getBuffersWithFormat before
+     * it starts rendering again.
+     *
+     * \param drawable the drawable to invalidate
+     *
+     * \since 3
+     */
+    void (*invalidate)(__DRIdrawable *drawable);
+
+    /**
+     * This function reduces the number of flushes in the driver by combining
+     * several operations into one call.
+     *
+     * It can:
+     * - throttle
+     * - flush a drawable
+     * - flush a context
+     *
+     * \param context           the context
+     * \param drawable          the drawable to flush
+     * \param flags             a combination of _DRI2_FLUSH_xxx flags
+     * \param throttle_reason   the reason for throttling, 0 = no throttling
+     *
+     * \since 4
+     */
+    void (*flush_with_flags)(__DRIcontext *ctx,
+                             __DRIdrawable *drawable,
+                             unsigned flags,
+                             enum __DRI2throttleReason throttle_reason);
+};
+
+
+/**
+ * Extension that the driver uses to request
+ * throttle callbacks.
+ */
+
+#define __DRI2_THROTTLE "DRI2_Throttle"
+#define __DRI2_THROTTLE_VERSION 1
+
+struct __DRI2throttleExtensionRec {
+   __DRIextension base;
+   void (*throttle)(__DRIcontext *ctx,
+		    __DRIdrawable *drawable,
+		    enum __DRI2throttleReason reason);
+};
+
+/*@}*/
+
+/**
+ * The following extensions describe loader features that the DRI
+ * driver can make use of.  Some of these are mandatory, such as the
+ * getDrawableInfo extension for DRI and the DRI Loader extensions for
+ * DRI2, while others are optional, and if present allow the driver to
+ * expose certain features.  The loader pass in a NULL terminated
+ * array of these extensions to the driver in the createNewScreen
+ * constructor.
+ */
+
+typedef struct __DRIgetDrawableInfoExtensionRec __DRIgetDrawableInfoExtension;
+typedef struct __DRIsystemTimeExtensionRec __DRIsystemTimeExtension;
+typedef struct __DRIdamageExtensionRec __DRIdamageExtension;
+typedef struct __DRIloaderExtensionRec __DRIloaderExtension;
+typedef struct __DRIswrastLoaderExtensionRec __DRIswrastLoaderExtension;
+
+
+/**
+ * Callback to getDrawableInfo protocol
+ */
+#define __DRI_GET_DRAWABLE_INFO "DRI_GetDrawableInfo"
+#define __DRI_GET_DRAWABLE_INFO_VERSION 1
+struct __DRIgetDrawableInfoExtensionRec {
+    __DRIextension base;
+
+    /**
+     * This function is used to get information about the position, size, and
+     * clip rects of a drawable.
+     */
+    GLboolean (* getDrawableInfo) ( __DRIdrawable *drawable,
+	unsigned int * index, unsigned int * stamp,
+        int * x, int * y, int * width, int * height,
+        int * numClipRects, drm_clip_rect_t ** pClipRects,
+        int * backX, int * backY,
+	int * numBackClipRects, drm_clip_rect_t ** pBackClipRects,
+	void *loaderPrivate);
+};
+
+/**
+ * Callback to get system time for media stream counter extensions.
+ */
+#define __DRI_SYSTEM_TIME "DRI_SystemTime"
+#define __DRI_SYSTEM_TIME_VERSION 1
+struct __DRIsystemTimeExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Get the 64-bit unadjusted system time (UST).
+     */
+    int (*getUST)(int64_t * ust);
+
+    /**
+     * Get the media stream counter (MSC) rate.
+     * 
+     * Matching the definition in GLX_OML_sync_control, this function returns
+     * the rate of the "media stream counter".  In practical terms, this is
+     * the frame refresh rate of the display.
+     */
+    GLboolean (*getMSCRate)(__DRIdrawable *draw,
+			    int32_t * numerator, int32_t * denominator,
+			    void *loaderPrivate);
+};
+
+/**
+ * Damage reporting
+ */
+#define __DRI_DAMAGE "DRI_Damage"
+#define __DRI_DAMAGE_VERSION 1
+struct __DRIdamageExtensionRec {
+    __DRIextension base;
+
+    /**
+     * Reports areas of the given drawable which have been modified by the
+     * driver.
+     *
+     * \param drawable which the drawing was done to.
+     * \param rects rectangles affected, with the drawable origin as the
+     *	      origin.
+     * \param x X offset of the drawable within the screen (used in the
+     *	      front_buffer case)
+     * \param y Y offset of the drawable within the screen.
+     * \param front_buffer boolean flag for whether the drawing to the
+     * 	      drawable was actually done directly to the front buffer (instead
+     *	      of backing storage, for example)
+     * \param loaderPrivate the data passed in at createNewDrawable time
+     */
+    void (*reportDamage)(__DRIdrawable *draw,
+			 int x, int y,
+			 drm_clip_rect_t *rects, int num_rects,
+			 GLboolean front_buffer,
+			 void *loaderPrivate);
+};
+
+#define __DRI_SWRAST_IMAGE_OP_DRAW	1
+#define __DRI_SWRAST_IMAGE_OP_CLEAR	2
+#define __DRI_SWRAST_IMAGE_OP_SWAP	3
+
+/**
+ * SWRast Loader extension.
+ */
+#define __DRI_SWRAST_LOADER "DRI_SWRastLoader"
+#define __DRI_SWRAST_LOADER_VERSION 1
+struct __DRIswrastLoaderExtensionRec {
+    __DRIextension base;
+
+    /*
+     * Drawable position and size
+     */
+    void (*getDrawableInfo)(__DRIdrawable *drawable,
+			    int *x, int *y, int *width, int *height,
+			    void *loaderPrivate);
+
+    /**
+     * Put image to drawable
+     */
+    void (*putImage)(__DRIdrawable *drawable, int op,
+		     int x, int y, int width, int height,
+		     char *data, void *loaderPrivate);
+
+    /**
+     * Get image from readable
+     */
+    void (*getImage)(__DRIdrawable *readable,
+		     int x, int y, int width, int height,
+		     char *data, void *loaderPrivate);
+};
+
+/**
+ * Invalidate loader extension.  The presence of this extension
+ * indicates to the DRI driver that the loader will call invalidate in
+ * the __DRI2_FLUSH extension, whenever the needs to query for new
+ * buffers.  This means that the DRI driver can drop the polling in
+ * glViewport().
+ *
+ * The extension doesn't provide any functionality, it's only use to
+ * indicate to the driver that it can use the new semantics.  A DRI
+ * driver can use this to switch between the different semantics or
+ * just refuse to initialize if this extension isn't present.
+ */
+#define __DRI_USE_INVALIDATE "DRI_UseInvalidate"
+#define __DRI_USE_INVALIDATE_VERSION 1
+
+typedef struct __DRIuseInvalidateExtensionRec __DRIuseInvalidateExtension;
+struct __DRIuseInvalidateExtensionRec {
+   __DRIextension base;
+};
+
+/**
+ * The remaining extensions describe driver extensions, immediately
+ * available interfaces provided by the driver.  To start using the
+ * driver, dlsym() for the __DRI_DRIVER_EXTENSIONS symbol and look for
+ * the extension you need in the array.
+ */
+#define __DRI_DRIVER_EXTENSIONS "__driDriverExtensions"
+
+/**
+ * This symbol replaces the __DRI_DRIVER_EXTENSIONS symbol, and will be
+ * suffixed by "_drivername", allowing multiple drivers to be built into one
+ * library, and also giving the driver the chance to return a variable driver
+ * extensions struct depending on the driver name being loaded or any other
+ * system state.
+ *
+ * The function prototype is:
+ *
+ * const __DRIextension **__driDriverGetExtensions_drivername(void);
+ */
+#define __DRI_DRIVER_GET_EXTENSIONS "__driDriverGetExtensions"
+
+/**
+ * Tokens for __DRIconfig attribs.  A number of attributes defined by
+ * GLX or EGL standards are not in the table, as they must be provided
+ * by the loader.  For example, FBConfig ID or visual ID, drawable type.
+ */
+
+#define __DRI_ATTRIB_BUFFER_SIZE		 1
+#define __DRI_ATTRIB_LEVEL			 2
+#define __DRI_ATTRIB_RED_SIZE			 3
+#define __DRI_ATTRIB_GREEN_SIZE			 4
+#define __DRI_ATTRIB_BLUE_SIZE			 5
+#define __DRI_ATTRIB_LUMINANCE_SIZE		 6
+#define __DRI_ATTRIB_ALPHA_SIZE			 7
+#define __DRI_ATTRIB_ALPHA_MASK_SIZE		 8
+#define __DRI_ATTRIB_DEPTH_SIZE			 9
+#define __DRI_ATTRIB_STENCIL_SIZE		10
+#define __DRI_ATTRIB_ACCUM_RED_SIZE		11
+#define __DRI_ATTRIB_ACCUM_GREEN_SIZE		12
+#define __DRI_ATTRIB_ACCUM_BLUE_SIZE		13
+#define __DRI_ATTRIB_ACCUM_ALPHA_SIZE		14
+#define __DRI_ATTRIB_SAMPLE_BUFFERS		15
+#define __DRI_ATTRIB_SAMPLES			16
+#define __DRI_ATTRIB_RENDER_TYPE		17
+#define __DRI_ATTRIB_CONFIG_CAVEAT		18
+#define __DRI_ATTRIB_CONFORMANT			19
+#define __DRI_ATTRIB_DOUBLE_BUFFER		20
+#define __DRI_ATTRIB_STEREO			21
+#define __DRI_ATTRIB_AUX_BUFFERS		22
+#define __DRI_ATTRIB_TRANSPARENT_TYPE		23
+#define __DRI_ATTRIB_TRANSPARENT_INDEX_VALUE	24
+#define __DRI_ATTRIB_TRANSPARENT_RED_VALUE	25
+#define __DRI_ATTRIB_TRANSPARENT_GREEN_VALUE	26
+#define __DRI_ATTRIB_TRANSPARENT_BLUE_VALUE	27
+#define __DRI_ATTRIB_TRANSPARENT_ALPHA_VALUE	28
+#define __DRI_ATTRIB_FLOAT_MODE			29
+#define __DRI_ATTRIB_RED_MASK			30
+#define __DRI_ATTRIB_GREEN_MASK			31
+#define __DRI_ATTRIB_BLUE_MASK			32
+#define __DRI_ATTRIB_ALPHA_MASK			33
+#define __DRI_ATTRIB_MAX_PBUFFER_WIDTH		34
+#define __DRI_ATTRIB_MAX_PBUFFER_HEIGHT		35
+#define __DRI_ATTRIB_MAX_PBUFFER_PIXELS		36
+#define __DRI_ATTRIB_OPTIMAL_PBUFFER_WIDTH	37
+#define __DRI_ATTRIB_OPTIMAL_PBUFFER_HEIGHT	38
+#define __DRI_ATTRIB_VISUAL_SELECT_GROUP	39
+#define __DRI_ATTRIB_SWAP_METHOD		40
+#define __DRI_ATTRIB_MAX_SWAP_INTERVAL		41
+#define __DRI_ATTRIB_MIN_SWAP_INTERVAL		42
+#define __DRI_ATTRIB_BIND_TO_TEXTURE_RGB	43
+#define __DRI_ATTRIB_BIND_TO_TEXTURE_RGBA	44
+#define __DRI_ATTRIB_BIND_TO_MIPMAP_TEXTURE	45
+#define __DRI_ATTRIB_BIND_TO_TEXTURE_TARGETS	46
+#define __DRI_ATTRIB_YINVERTED			47
+#define __DRI_ATTRIB_FRAMEBUFFER_SRGB_CAPABLE	48
+
+/* __DRI_ATTRIB_RENDER_TYPE */
+#define __DRI_ATTRIB_RGBA_BIT			0x01	
+#define __DRI_ATTRIB_COLOR_INDEX_BIT		0x02
+#define __DRI_ATTRIB_LUMINANCE_BIT		0x04
+#define __DRI_ATTRIB_FLOAT_BIT			0x08
+#define __DRI_ATTRIB_UNSIGNED_FLOAT_BIT		0x10
+
+/* __DRI_ATTRIB_CONFIG_CAVEAT */
+#define __DRI_ATTRIB_SLOW_BIT			0x01
+#define __DRI_ATTRIB_NON_CONFORMANT_CONFIG	0x02
+
+/* __DRI_ATTRIB_TRANSPARENT_TYPE */
+#define __DRI_ATTRIB_TRANSPARENT_RGB		0x00
+#define __DRI_ATTRIB_TRANSPARENT_INDEX		0x01
+
+/* __DRI_ATTRIB_BIND_TO_TEXTURE_TARGETS	 */
+#define __DRI_ATTRIB_TEXTURE_1D_BIT		0x01
+#define __DRI_ATTRIB_TEXTURE_2D_BIT		0x02
+#define __DRI_ATTRIB_TEXTURE_RECTANGLE_BIT	0x04
+
+/**
+ * This extension defines the core DRI functionality.
+ */
+#define __DRI_CORE "DRI_Core"
+#define __DRI_CORE_VERSION 1
+
+struct __DRIcoreExtensionRec {
+    __DRIextension base;
+
+    __DRIscreen *(*createNewScreen)(int screen, int fd,
+				    unsigned int sarea_handle,
+				    const __DRIextension **extensions,
+				    const __DRIconfig ***driverConfigs,
+				    void *loaderPrivate);
+
+    void (*destroyScreen)(__DRIscreen *screen);
+
+    const __DRIextension **(*getExtensions)(__DRIscreen *screen);
+
+    int (*getConfigAttrib)(const __DRIconfig *config,
+			   unsigned int attrib,
+			   unsigned int *value);
+
+    int (*indexConfigAttrib)(const __DRIconfig *config, int index,
+			     unsigned int *attrib, unsigned int *value);
+
+    __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen,
+					const __DRIconfig *config,
+					unsigned int drawable_id,
+					unsigned int head,
+					void *loaderPrivate);
+
+    void (*destroyDrawable)(__DRIdrawable *drawable);
+
+    void (*swapBuffers)(__DRIdrawable *drawable);
+
+    __DRIcontext *(*createNewContext)(__DRIscreen *screen,
+				      const __DRIconfig *config,
+				      __DRIcontext *shared,
+				      void *loaderPrivate);
+
+    int (*copyContext)(__DRIcontext *dest,
+		       __DRIcontext *src,
+		       unsigned long mask);
+
+    void (*destroyContext)(__DRIcontext *context);
+
+    int (*bindContext)(__DRIcontext *ctx,
+		       __DRIdrawable *pdraw,
+		       __DRIdrawable *pread);
+
+    int (*unbindContext)(__DRIcontext *ctx);
+};
+
+/**
+ * Stored version of some component (i.e., server-side DRI module, kernel-side
+ * DRM, etc.).
+ * 
+ * \todo
+ * There are several data structures that explicitly store a major version,
+ * minor version, and patch level.  These structures should be modified to
+ * have a \c __DRIversionRec instead.
+ */
+struct __DRIversionRec {
+    int    major;        /**< Major version number. */
+    int    minor;        /**< Minor version number. */
+    int    patch;        /**< Patch-level. */
+};
+
+/**
+ * Framebuffer information record.  Used by libGL to communicate information
+ * about the framebuffer to the driver's \c __driCreateNewScreen function.
+ * 
+ * In XFree86, most of this information is derrived from data returned by
+ * calling \c XF86DRIGetDeviceInfo.
+ *
+ * \sa XF86DRIGetDeviceInfo __DRIdisplayRec::createNewScreen
+ *     __driUtilCreateNewScreen CallCreateNewScreen
+ *
+ * \bug This structure could be better named.
+ */
+struct __DRIframebufferRec {
+    unsigned char *base;    /**< Framebuffer base address in the CPU's
+			     * address space.  This value is calculated by
+			     * calling \c drmMap on the framebuffer handle
+			     * returned by \c XF86DRIGetDeviceInfo (or a
+			     * similar function).
+			     */
+    int size;               /**< Framebuffer size, in bytes. */
+    int stride;             /**< Number of bytes from one line to the next. */
+    int width;              /**< Pixel width of the framebuffer. */
+    int height;             /**< Pixel height of the framebuffer. */
+    int dev_priv_size;      /**< Size of the driver's dev-priv structure. */
+    void *dev_priv;         /**< Pointer to the driver's dev-priv structure. */
+};
+
+
+/**
+ * This extension provides alternative screen, drawable and context
+ * constructors for legacy DRI functionality.  This is used in
+ * conjunction with the core extension.
+ */
+#define __DRI_LEGACY "DRI_Legacy"
+#define __DRI_LEGACY_VERSION 1
+
+struct __DRIlegacyExtensionRec {
+    __DRIextension base;
+
+    __DRIscreen *(*createNewScreen)(int screen,
+				    const __DRIversion *ddx_version,
+				    const __DRIversion *dri_version,
+				    const __DRIversion *drm_version,
+				    const __DRIframebuffer *frame_buffer,
+				    void *pSAREA, int fd, 
+				    const __DRIextension **extensions,
+				    const __DRIconfig ***driver_configs,
+				    void *loaderPrivate);
+
+    __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen,
+					const __DRIconfig *config,
+					drm_drawable_t hwDrawable,
+					int renderType, const int *attrs,
+					void *loaderPrivate);
+
+    __DRIcontext *(*createNewContext)(__DRIscreen *screen,
+				      const __DRIconfig *config,
+				      int render_type,
+				      __DRIcontext *shared,
+				      drm_context_t hwContext,
+				      void *loaderPrivate);
+};
+
+/**
+ * This extension provides alternative screen, drawable and context
+ * constructors for swrast DRI functionality.  This is used in
+ * conjunction with the core extension.
+ */
+#define __DRI_SWRAST "DRI_SWRast"
+#define __DRI_SWRAST_VERSION 4
+
+struct __DRIswrastExtensionRec {
+    __DRIextension base;
+
+    __DRIscreen *(*createNewScreen)(int screen,
+				    const __DRIextension **extensions,
+				    const __DRIconfig ***driver_configs,
+				    void *loaderPrivate);
+
+    __DRIdrawable *(*createNewDrawable)(__DRIscreen *screen,
+					const __DRIconfig *config,
+					void *loaderPrivate);
+
+   /* Since version 2 */
+   __DRIcontext *(*createNewContextForAPI)(__DRIscreen *screen,
+                                           int api,
+                                           const __DRIconfig *config,
+                                           __DRIcontext *shared,
+                                           void *data);
+
+   /**
+    * Create a context for a particular API with a set of attributes
+    *
+    * \since version 3
+    *
+    * \sa __DRIdri2ExtensionRec::createContextAttribs
+    */
+   __DRIcontext *(*createContextAttribs)(__DRIscreen *screen,
+					 int api,
+					 const __DRIconfig *config,
+					 __DRIcontext *shared,
+					 unsigned num_attribs,
+					 const uint32_t *attribs,
+					 unsigned *error,
+					 void *loaderPrivate);
+
+   /**
+    * createNewScreen() with the driver extensions passed in.
+    *
+    * \since version 4
+    */
+   __DRIscreen *(*createNewScreen2)(int screen,
+                                    const __DRIextension **loader_extensions,
+                                    const __DRIextension **driver_extensions,
+                                    const __DRIconfig ***driver_configs,
+                                    void *loaderPrivate);
+
+};
+
+/** Common DRI function definitions, shared among DRI2 and Image extensions
+ */
+
+typedef __DRIscreen *
+(*__DRIcreateNewScreen2Func)(int screen, int fd,
+                             const __DRIextension **extensions,
+                             const __DRIextension **driver_extensions,
+                             const __DRIconfig ***driver_configs,
+                             void *loaderPrivate);
+
+typedef __DRIdrawable *
+(*__DRIcreateNewDrawableFunc)(__DRIscreen *screen,
+                              const __DRIconfig *config,
+                              void *loaderPrivate);
+
+typedef __DRIcontext *
+(*__DRIcreateContextAttribsFunc)(__DRIscreen *screen,
+                                 int api,
+                                 const __DRIconfig *config,
+                                 __DRIcontext *shared,
+                                 unsigned num_attribs,
+                                 const uint32_t *attribs,
+                                 unsigned *error,
+                                 void *loaderPrivate);
+
+typedef unsigned int
+(*__DRIgetAPIMaskFunc)(__DRIscreen *screen);
+
+/**
+ * DRI2 Loader extension.
+ */
+#define __DRI_BUFFER_FRONT_LEFT		0
+#define __DRI_BUFFER_BACK_LEFT		1
+#define __DRI_BUFFER_FRONT_RIGHT	2
+#define __DRI_BUFFER_BACK_RIGHT		3
+#define __DRI_BUFFER_DEPTH		4
+#define __DRI_BUFFER_STENCIL		5
+#define __DRI_BUFFER_ACCUM		6
+#define __DRI_BUFFER_FAKE_FRONT_LEFT	7
+#define __DRI_BUFFER_FAKE_FRONT_RIGHT	8
+#define __DRI_BUFFER_DEPTH_STENCIL	9  /**< Only available with DRI2 1.1 */
+#define __DRI_BUFFER_HIZ		10
+
+/* Inofficial and for internal use. Increase when adding a new buffer token. */
+#define __DRI_BUFFER_COUNT		11
+
+struct __DRIbufferRec {
+    unsigned int attachment;
+    unsigned int name;
+    unsigned int pitch;
+    unsigned int cpp;
+    unsigned int flags;
+};
+
+#define __DRI_DRI2_LOADER "DRI_DRI2Loader"
+#define __DRI_DRI2_LOADER_VERSION 3
+struct __DRIdri2LoaderExtensionRec {
+    __DRIextension base;
+
+    __DRIbuffer *(*getBuffers)(__DRIdrawable *driDrawable,
+			       int *width, int *height,
+			       unsigned int *attachments, int count,
+			       int *out_count, void *loaderPrivate);
+
+    /**
+     * Flush pending front-buffer rendering
+     *
+     * Any rendering that has been performed to the
+     * \c __DRI_BUFFER_FAKE_FRONT_LEFT will be flushed to the
+     * \c __DRI_BUFFER_FRONT_LEFT.
+     *
+     * \param driDrawable    Drawable whose front-buffer is to be flushed
+     * \param loaderPrivate  Loader's private data that was previously passed
+     *                       into __DRIdri2ExtensionRec::createNewDrawable
+     */
+    void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate);
+
+
+    /**
+     * Get list of buffers from the server
+     *
+     * Gets a list of buffer for the specified set of attachments.  Unlike
+     * \c ::getBuffers, this function takes a list of attachments paired with
+     * opaque \c unsigned \c int value describing the format of the buffer.
+     * It is the responsibility of the caller to know what the service that
+     * allocates the buffers will expect to receive for the format.
+     *
+     * \param driDrawable    Drawable whose buffers are being queried.
+     * \param width          Output where the width of the buffers is stored.
+     * \param height         Output where the height of the buffers is stored.
+     * \param attachments    List of pairs of attachment ID and opaque format
+     *                       requested for the drawable.
+     * \param count          Number of attachment / format pairs stored in
+     *                       \c attachments.
+     * \param loaderPrivate  Loader's private data that was previously passed
+     *                       into __DRIdri2ExtensionRec::createNewDrawable.
+     */
+    __DRIbuffer *(*getBuffersWithFormat)(__DRIdrawable *driDrawable,
+					 int *width, int *height,
+					 unsigned int *attachments, int count,
+					 int *out_count, void *loaderPrivate);
+};
+
+/**
+ * This extension provides alternative screen, drawable and context
+ * constructors for DRI2.
+ */
+#define __DRI_DRI2 "DRI_DRI2"
+#define __DRI_DRI2_VERSION 4
+
+#define __DRI_API_OPENGL	0	/**< OpenGL compatibility profile */
+#define __DRI_API_GLES		1	/**< OpenGL ES 1.x */
+#define __DRI_API_GLES2		2	/**< OpenGL ES 2.x */
+#define __DRI_API_OPENGL_CORE	3	/**< OpenGL 3.2+ core profile */
+#define __DRI_API_GLES3		4	/**< OpenGL ES 3.x */
+
+#define __DRI_CTX_ATTRIB_MAJOR_VERSION		0
+#define __DRI_CTX_ATTRIB_MINOR_VERSION		1
+#define __DRI_CTX_ATTRIB_FLAGS			2
+
+/**
+ * \requires __DRI2_ROBUSTNESS.
+ */
+#define __DRI_CTX_ATTRIB_RESET_STRATEGY		3
+
+#define __DRI_CTX_FLAG_DEBUG			0x00000001
+#define __DRI_CTX_FLAG_FORWARD_COMPATIBLE	0x00000002
+
+/**
+ * \requires __DRI2_ROBUSTNESS.
+ */
+#define __DRI_CTX_FLAG_ROBUST_BUFFER_ACCESS	0x00000004
+
+/**
+ * \name Context reset strategies.
+ */
+/*@{*/
+#define __DRI_CTX_RESET_NO_NOTIFICATION		0
+#define __DRI_CTX_RESET_LOSE_CONTEXT		1
+/*@}*/
+
+/**
+ * \name Reasons that __DRIdri2Extension::createContextAttribs might fail
+ */
+/*@{*/
+/** Success! */
+#define __DRI_CTX_ERROR_SUCCESS			0
+
+/** Memory allocation failure */
+#define __DRI_CTX_ERROR_NO_MEMORY		1
+
+/** Client requested an API (e.g., OpenGL ES 2.0) that the driver can't do. */
+#define __DRI_CTX_ERROR_BAD_API			2
+
+/** Client requested an API version that the driver can't do. */
+#define __DRI_CTX_ERROR_BAD_VERSION		3
+
+/** Client requested a flag or combination of flags the driver can't do. */
+#define __DRI_CTX_ERROR_BAD_FLAG		4
+
+/** Client requested an attribute the driver doesn't understand. */
+#define __DRI_CTX_ERROR_UNKNOWN_ATTRIBUTE	5
+
+/** Client requested a flag the driver doesn't understand. */
+#define __DRI_CTX_ERROR_UNKNOWN_FLAG		6
+/*@}*/
+
+struct __DRIdri2ExtensionRec {
+    __DRIextension base;
+
+    __DRIscreen *(*createNewScreen)(int screen, int fd,
+				    const __DRIextension **extensions,
+				    const __DRIconfig ***driver_configs,
+				    void *loaderPrivate);
+
+   __DRIcreateNewDrawableFunc   createNewDrawable;
+   __DRIcontext *(*createNewContext)(__DRIscreen *screen,
+                                     const __DRIconfig *config,
+                                     __DRIcontext *shared,
+                                     void *loaderPrivate);
+
+   /* Since version 2 */
+   __DRIgetAPIMaskFunc          getAPIMask;
+
+   __DRIcontext *(*createNewContextForAPI)(__DRIscreen *screen,
+					   int api,
+					   const __DRIconfig *config,
+					   __DRIcontext *shared,
+					   void *data);
+
+   __DRIbuffer *(*allocateBuffer)(__DRIscreen *screen,
+				  unsigned int attachment,
+				  unsigned int format,
+				  int width,
+				  int height);
+   void (*releaseBuffer)(__DRIscreen *screen,
+			 __DRIbuffer *buffer);
+
+   /**
+    * Create a context for a particular API with a set of attributes
+    *
+    * \since version 3
+    *
+    * \sa __DRIswrastExtensionRec::createContextAttribs
+    */
+   __DRIcreateContextAttribsFunc        createContextAttribs;
+
+   /**
+    * createNewScreen with the driver's extension list passed in.
+    *
+    * \since version 4
+    */
+   __DRIcreateNewScreen2Func            createNewScreen2;
+};
+
+
+/**
+ * This extension provides functionality to enable various EGLImage
+ * extensions.
+ */
+#define __DRI_IMAGE "DRI_IMAGE"
+#define __DRI_IMAGE_VERSION 8
+
+/**
+ * These formats correspond to the similarly named MESA_FORMAT_*
+ * tokens, except in the native endian of the CPU.  For example, on
+ * little endian __DRI_IMAGE_FORMAT_XRGB8888 corresponds to
+ * MESA_FORMAT_XRGB8888, but MESA_FORMAT_XRGB8888_REV on big endian.
+ *
+ * __DRI_IMAGE_FORMAT_NONE is for images that aren't directly usable
+ * by the driver (YUV planar formats) but serve as a base image for
+ * creating sub-images for the different planes within the image.
+ *
+ * R8, GR88 and NONE should not be used with createImageFormName or
+ * createImage, and are returned by query from sub images created with
+ * createImageFromNames (NONE, see above) and fromPlane (R8 & GR88).
+ */
+#define __DRI_IMAGE_FORMAT_RGB565       0x1001
+#define __DRI_IMAGE_FORMAT_XRGB8888     0x1002
+#define __DRI_IMAGE_FORMAT_ARGB8888     0x1003
+#define __DRI_IMAGE_FORMAT_ABGR8888     0x1004
+#define __DRI_IMAGE_FORMAT_XBGR8888     0x1005
+#define __DRI_IMAGE_FORMAT_R8           0x1006 /* Since version 5 */
+#define __DRI_IMAGE_FORMAT_GR88         0x1007
+#define __DRI_IMAGE_FORMAT_NONE         0x1008
+#define __DRI_IMAGE_FORMAT_XRGB2101010  0x1009
+#define __DRI_IMAGE_FORMAT_ARGB2101010  0x100a
+#define __DRI_IMAGE_FORMAT_SARGB8       0x100b
+
+#define __DRI_IMAGE_USE_SHARE		0x0001
+#define __DRI_IMAGE_USE_SCANOUT		0x0002
+#define __DRI_IMAGE_USE_CURSOR		0x0004 /* Depricated */
+#define __DRI_IMAGE_USE_LINEAR		0x0008
+
+
+/**
+ * Four CC formats that matches with WL_DRM_FORMAT_* from wayland_drm.h
+ * and GBM_FORMAT_* from gbm.h, used with createImageFromNames.
+ *
+ * \since 5
+ */
+
+#define __DRI_IMAGE_FOURCC_RGB565	0x36314752
+#define __DRI_IMAGE_FOURCC_ARGB8888	0x34325241
+#define __DRI_IMAGE_FOURCC_XRGB8888	0x34325258
+#define __DRI_IMAGE_FOURCC_ABGR8888	0x34324241
+#define __DRI_IMAGE_FOURCC_XBGR8888	0x34324258
+#define __DRI_IMAGE_FOURCC_YUV410	0x39565559
+#define __DRI_IMAGE_FOURCC_YUV411	0x31315559
+#define __DRI_IMAGE_FOURCC_YUV420	0x32315559
+#define __DRI_IMAGE_FOURCC_YUV422	0x36315559
+#define __DRI_IMAGE_FOURCC_YUV444	0x34325559
+#define __DRI_IMAGE_FOURCC_NV12		0x3231564e
+#define __DRI_IMAGE_FOURCC_NV16		0x3631564e
+#define __DRI_IMAGE_FOURCC_YUYV		0x56595559
+
+
+/**
+ * Queryable on images created by createImageFromNames.
+ *
+ * RGB and RGBA are may be usable directly as images but its still
+ * recommended to call fromPlanar with plane == 0.
+ *
+ * Y_U_V, Y_UV and Y_XUXV all requires call to fromPlanar to create
+ * usable sub-images, sampling from images return raw YUV data and
+ * color conversion needs to be done in the shader.
+ *
+ * \since 5
+ */
+
+#define __DRI_IMAGE_COMPONENTS_RGB	0x3001
+#define __DRI_IMAGE_COMPONENTS_RGBA	0x3002
+#define __DRI_IMAGE_COMPONENTS_Y_U_V	0x3003
+#define __DRI_IMAGE_COMPONENTS_Y_UV	0x3004
+#define __DRI_IMAGE_COMPONENTS_Y_XUXV	0x3005
+
+
+/**
+ * queryImage attributes
+ */
+
+#define __DRI_IMAGE_ATTRIB_STRIDE	0x2000
+#define __DRI_IMAGE_ATTRIB_HANDLE	0x2001
+#define __DRI_IMAGE_ATTRIB_NAME		0x2002
+#define __DRI_IMAGE_ATTRIB_FORMAT	0x2003 /* available in versions 3+ */
+#define __DRI_IMAGE_ATTRIB_WIDTH	0x2004 /* available in versions 4+ */
+#define __DRI_IMAGE_ATTRIB_HEIGHT	0x2005
+#define __DRI_IMAGE_ATTRIB_COMPONENTS	0x2006 /* available in versions 5+ */
+#define __DRI_IMAGE_ATTRIB_FD           0x2007 /* available in versions
+                                                * 7+. Each query will return a
+                                                * new fd. */
+
+enum __DRIYUVColorSpace {
+   __DRI_YUV_COLOR_SPACE_UNDEFINED = 0,
+   __DRI_YUV_COLOR_SPACE_ITU_REC601 = 0x327F,
+   __DRI_YUV_COLOR_SPACE_ITU_REC709 = 0x3280,
+   __DRI_YUV_COLOR_SPACE_ITU_REC2020 = 0x3281
+};
+
+enum __DRISampleRange {
+   __DRI_YUV_RANGE_UNDEFINED = 0,
+   __DRI_YUV_FULL_RANGE = 0x3282,
+   __DRI_YUV_NARROW_RANGE = 0x3283
+};
+
+enum __DRIChromaSiting {
+   __DRI_YUV_CHROMA_SITING_UNDEFINED = 0,
+   __DRI_YUV_CHROMA_SITING_0 = 0x3284,
+   __DRI_YUV_CHROMA_SITING_0_5 = 0x3285
+};
+
+/**
+ * \name Reasons that __DRIimageExtensionRec::createImageFromTexture might fail
+ */
+/*@{*/
+/** Success! */
+#define __DRI_IMAGE_ERROR_SUCCESS       0
+
+/** Memory allocation failure */
+#define __DRI_IMAGE_ERROR_BAD_ALLOC     1
+
+/** Client requested an invalid attribute for a texture object  */
+#define __DRI_IMAGE_ERROR_BAD_MATCH     2
+
+/** Client requested an invalid texture object */
+#define __DRI_IMAGE_ERROR_BAD_PARAMETER 3
+/*@}*/
+
+typedef struct __DRIimageRec          __DRIimage;
+typedef struct __DRIimageExtensionRec __DRIimageExtension;
+struct __DRIimageExtensionRec {
+    __DRIextension base;
+
+    __DRIimage *(*createImageFromName)(__DRIscreen *screen,
+				       int width, int height, int format,
+				       int name, int pitch,
+				       void *loaderPrivate);
+
+    __DRIimage *(*createImageFromRenderbuffer)(__DRIcontext *context,
+					       int renderbuffer,
+					       void *loaderPrivate);
+
+    void (*destroyImage)(__DRIimage *image);
+
+    __DRIimage *(*createImage)(__DRIscreen *screen,
+			       int width, int height, int format,
+			       unsigned int use,
+			       void *loaderPrivate);
+
+   GLboolean (*queryImage)(__DRIimage *image, int attrib, int *value);
+
+   /**
+    * The new __DRIimage will share the content with the old one, see dup(2).
+    */
+   __DRIimage *(*dupImage)(__DRIimage *image, void *loaderPrivate);
+
+   /**
+    * Validate that a __DRIimage can be used a certain way.
+    *
+    * \since 2
+    */
+   GLboolean (*validateUsage)(__DRIimage *image, unsigned int use);
+
+   /**
+    * Unlike createImageFromName __DRI_IMAGE_FORMAT is not but instead
+    * __DRI_IMAGE_FOURCC and strides are in bytes not pixels. Stride is
+    * also per block and not per pixel (for non-RGB, see gallium blocks).
+    *
+    * \since 5
+    */
+   __DRIimage *(*createImageFromNames)(__DRIscreen *screen,
+                                       int width, int height, int fourcc,
+                                       int *names, int num_names,
+                                       int *strides, int *offsets,
+                                       void *loaderPrivate);
+
+   /**
+    * Create an image out of a sub-region of a parent image.  This
+    * entry point lets us create individual __DRIimages for different
+    * planes in a planar buffer (typically yuv), for example.  While a
+    * sub-image shares the underlying buffer object with the parent
+    * image and other sibling sub-images, the life times of parent and
+    * sub-images are not dependent.  Destroying the parent or a
+    * sub-image doesn't affect other images.  The underlying buffer
+    * object is free when no __DRIimage remains that references it.
+    *
+    * Sub-images may overlap, but rendering to overlapping sub-images
+    * is undefined.
+    *
+    * \since 5
+    */
+    __DRIimage *(*fromPlanar)(__DRIimage *image, int plane,
+                              void *loaderPrivate);
+
+    /**
+     * Create image from texture.
+     *
+     * \since 6
+     */
+   __DRIimage *(*createImageFromTexture)(__DRIcontext *context,
+                                         int target,
+                                         unsigned texture,
+                                         int depth,
+                                         int level,
+                                         unsigned *error,
+                                         void *loaderPrivate);
+   /**
+    * Like createImageFromNames, but takes a prime fd instead.
+    *
+    * \since 7
+    */
+   __DRIimage *(*createImageFromFds)(__DRIscreen *screen,
+                                     int width, int height, int fourcc,
+                                     int *fds, int num_fds,
+                                     int *strides, int *offsets,
+                                     void *loaderPrivate);
+
+   /**
+    * Like createImageFromFds, but takes additional attributes.
+    *
+    * For EGL_EXT_image_dma_buf_import.
+    *
+    * \since 8
+    */
+   __DRIimage *(*createImageFromDmaBufs)(__DRIscreen *screen,
+                                         int width, int height, int fourcc,
+                                         int *fds, int num_fds,
+                                         int *strides, int *offsets,
+                                         enum __DRIYUVColorSpace color_space,
+                                         enum __DRISampleRange sample_range,
+                                         enum __DRIChromaSiting horiz_siting,
+                                         enum __DRIChromaSiting vert_siting,
+                                         unsigned *error,
+                                         void *loaderPrivate);
+};
+
+
+/**
+ * This extension must be implemented by the loader and passed to the
+ * driver at screen creation time.  The EGLImage entry points in the
+ * various client APIs take opaque EGLImage handles and use this
+ * extension to map them to a __DRIimage.  At version 1, this
+ * extensions allows mapping EGLImage pointers to __DRIimage pointers,
+ * but future versions could support other EGLImage-like, opaque types
+ * with new lookup functions.
+ */
+#define __DRI_IMAGE_LOOKUP "DRI_IMAGE_LOOKUP"
+#define __DRI_IMAGE_LOOKUP_VERSION 1
+
+typedef struct __DRIimageLookupExtensionRec __DRIimageLookupExtension;
+struct __DRIimageLookupExtensionRec {
+    __DRIextension base;
+
+    __DRIimage *(*lookupEGLImage)(__DRIscreen *screen, void *image,
+				  void *loaderPrivate);
+};
+
+/**
+ * This extension allows for common DRI2 options
+ */
+#define __DRI2_CONFIG_QUERY "DRI_CONFIG_QUERY"
+#define __DRI2_CONFIG_QUERY_VERSION 1
+
+typedef struct __DRI2configQueryExtensionRec __DRI2configQueryExtension;
+struct __DRI2configQueryExtensionRec {
+   __DRIextension base;
+
+   int (*configQueryb)(__DRIscreen *screen, const char *var, GLboolean *val);
+   int (*configQueryi)(__DRIscreen *screen, const char *var, GLint *val);
+   int (*configQueryf)(__DRIscreen *screen, const char *var, GLfloat *val);
+};
+
+/**
+ * Robust context driver extension.
+ *
+ * Existence of this extension means the driver can accept the
+ * \c __DRI_CTX_FLAG_ROBUST_BUFFER_ACCESS flag and the
+ * \c __DRI_CTX_ATTRIB_RESET_STRATEGY attribute in
+ * \c __DRIdri2ExtensionRec::createContextAttribs.
+ */
+#define __DRI2_ROBUSTNESS "DRI_Robustness"
+#define __DRI2_ROBUSTNESS_VERSION 1
+
+typedef struct __DRIrobustnessExtensionRec __DRIrobustnessExtension;
+struct __DRIrobustnessExtensionRec {
+   __DRIextension base;
+};
+
+/**
+ * DRI config options extension.
+ *
+ * This extension provides the XML string containing driver options for use by
+ * the loader in supporting the driconf application.
+ */
+#define __DRI_CONFIG_OPTIONS "DRI_ConfigOptions"
+#define __DRI_CONFIG_OPTIONS_VERSION 1
+
+typedef struct __DRIconfigOptionsExtensionRec {
+   __DRIextension base;
+   const char *xml;
+} __DRIconfigOptionsExtension;
+
+/**
+ * This extension provides a driver vtable to a set of common driver helper
+ * functions (driCoreExtension, driDRI2Extension) within the driver
+ * implementation, as opposed to having to pass them through a global
+ * variable.
+ *
+ * It is not intended to be public API to the actual loader, and the vtable
+ * layout may change at any time.
+ */
+#define __DRI_DRIVER_VTABLE "DRI_DriverVtable"
+#define __DRI_DRIVER_VTABLE_VERSION 1
+
+typedef struct __DRIDriverVtableExtensionRec {
+    __DRIextension base;
+    const struct __DriverAPIRec *vtable;
+} __DRIDriverVtableExtension;
+
+/**
+ * Query renderer driver extension
+ *
+ * This allows the window system layer (either EGL or GLX) to query aspects of
+ * hardware and driver support without creating a context.
+ */
+#define __DRI2_RENDERER_QUERY "DRI_RENDERER_QUERY"
+#define __DRI2_RENDERER_QUERY_VERSION 1
+
+#define __DRI2_RENDERER_VENDOR_ID                             0x0000
+#define __DRI2_RENDERER_DEVICE_ID                             0x0001
+#define __DRI2_RENDERER_VERSION                               0x0002
+#define __DRI2_RENDERER_ACCELERATED                           0x0003
+#define __DRI2_RENDERER_VIDEO_MEMORY                          0x0004
+#define __DRI2_RENDERER_UNIFIED_MEMORY_ARCHITECTURE           0x0005
+#define __DRI2_RENDERER_PREFERRED_PROFILE                     0x0006
+#define __DRI2_RENDERER_OPENGL_CORE_PROFILE_VERSION           0x0007
+#define __DRI2_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION  0x0008
+#define __DRI2_RENDERER_OPENGL_ES_PROFILE_VERSION             0x0009
+#define __DRI2_RENDERER_OPENGL_ES2_PROFILE_VERSION            0x000a
+
+typedef struct __DRI2rendererQueryExtensionRec __DRI2rendererQueryExtension;
+struct __DRI2rendererQueryExtensionRec {
+   __DRIextension base;
+
+   int (*queryInteger)(__DRIscreen *screen, int attribute, unsigned int *val);
+   int (*queryString)(__DRIscreen *screen, int attribute, const char **val);
+};
+
+/**
+ * Image Loader extension. Drivers use this to allocate color buffers
+ */
+
+enum __DRIimageBufferMask {
+   __DRI_IMAGE_BUFFER_BACK = (1 << 0),
+   __DRI_IMAGE_BUFFER_FRONT = (1 << 1)
+};
+
+struct __DRIimageList {
+   uint32_t image_mask;
+   __DRIimage *back;
+   __DRIimage *front;
+};
+
+#define __DRI_IMAGE_LOADER "DRI_IMAGE_LOADER"
+#define __DRI_IMAGE_LOADER_VERSION 1
+
+struct __DRIimageLoaderExtensionRec {
+    __DRIextension base;
+
+   /**
+    * Allocate color buffers.
+    *
+    * \param driDrawable
+    * \param width              Width of allocated buffers
+    * \param height             Height of allocated buffers
+    * \param format             one of __DRI_IMAGE_FORMAT_*
+    * \param stamp              Address of variable to be updated when
+    *                           getBuffers must be called again
+    * \param loaderPrivate      The loaderPrivate for driDrawable
+    * \param buffer_mask        Set of buffers to allocate
+    * \param buffers            Returned buffers
+    */
+   int (*getBuffers)(__DRIdrawable *driDrawable,
+                     unsigned int format,
+                     uint32_t *stamp,
+                     void *loaderPrivate,
+                     uint32_t buffer_mask,
+                     struct __DRIimageList *buffers);
+
+    /**
+     * Flush pending front-buffer rendering
+     *
+     * Any rendering that has been performed to the
+     * fake front will be flushed to the front
+     *
+     * \param driDrawable    Drawable whose front-buffer is to be flushed
+     * \param loaderPrivate  Loader's private data that was previously passed
+     *                       into __DRIdri2ExtensionRec::createNewDrawable
+     */
+    void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate);
+};
+
+/**
+ * DRI extension.
+ */
+
+#define __DRI_IMAGE_DRIVER           "DRI_IMAGE_DRIVER"
+#define __DRI_IMAGE_DRIVER_VERSION   1
+
+struct __DRIimageDriverExtensionRec {
+   __DRIextension               base;
+
+   /* Common DRI functions, shared with DRI2 */
+   __DRIcreateNewScreen2Func            createNewScreen2;
+   __DRIcreateNewDrawableFunc           createNewDrawable;
+   __DRIcreateContextAttribsFunc        createContextAttribs;
+   __DRIgetAPIMaskFunc                  getAPIMask;
+};
+
+#endif
diff --git a/nixpkgs/pkgs/servers/x11/xorg/darwin/stub.patch b/nixpkgs/pkgs/servers/x11/xorg/darwin/stub.patch
new file mode 100644
index 000000000000..0005c3568dff
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/darwin/stub.patch
@@ -0,0 +1,61 @@
+When the X / Xquartz server initializes, it starts the XQuartz.app and
+hands-off the display FD. To start the XQuartz.app, Xquartz normally uses some
+system calls to get the path of the application by app bundle id, and then
+executes the Contents/MacOS/X11 script contained inside, which in turn executes
+Contents/MacOS/X11.bin (the actual app).
+
+This patch replaces that discovery technique with a simple call to
+`getenv' and a hardcoded default. In order to make Xquartz work if the
+app is moved, we'll need another wrapper that sets the `XQUARTZ_X11'
+environment variable to point to the `X11' script.
+
+diff --git a/hw/xquartz/mach-startup/stub.c b/hw/xquartz/mach-startup/stub.c
+index 83252e805..f1974215b 100644
+--- a/hw/xquartz/mach-startup/stub.c
++++ b/hw/xquartz/mach-startup/stub.c
+@@ -52,7 +52,6 @@
+ 
+ #include "launchd_fd.h"
+ 
+-static CFURLRef x11appURL;
+ static FSRef x11_appRef;
+ static pid_t x11app_pid = 0;
+ aslclient aslc;
+@@ -60,29 +59,21 @@ aslclient aslc;
+ static void
+ set_x11_path(void)
+ {
+-    OSStatus osstatus = LSFindApplicationForInfo(kLSUnknownCreator, CFSTR(kX11AppBundleId),
+-                                                 nil, &x11_appRef, &x11appURL);
++    unsigned char *xquartzApp = getenv("XQUARTZ_APP");
++    if (!xquartzApp) {
++        xquartzApp = "@XQUARTZ_APP@";
++    }
++
++    OSStatus osstatus = FSPathMakeRef(xquartzApp, &x11_appRef, NULL);
+ 
+     switch (osstatus) {
+     case noErr:
+-        if (x11appURL == NULL) {
+-            asl_log(aslc, NULL, ASL_LEVEL_ERR,
+-                    "Xquartz: Invalid response from LSFindApplicationForInfo(%s)",
+-                    kX11AppBundleId);
+-            exit(1);
+-        }
+         break;
+ 
+-    case kLSApplicationNotFoundErr:
+-        asl_log(aslc, NULL, ASL_LEVEL_ERR,
+-                "Xquartz: Unable to find application for %s",
+-                kX11AppBundleId);
+-        exit(10);
+-
+     default:
+         asl_log(aslc, NULL, ASL_LEVEL_ERR,
+-                "Xquartz: Unable to find application for %s, error code = %d",
+-                kX11AppBundleId, (int)osstatus);
++                "Xquartz: Unable to find FSRef for %s, error code = %d",
++                xquartzApp, (int)osstatus);
+         exit(11);
+     }
+ }
diff --git a/nixpkgs/pkgs/servers/x11/xorg/default.nix b/nixpkgs/pkgs/servers/x11/xorg/default.nix
new file mode 100644
index 000000000000..590559d3188b
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/default.nix
@@ -0,0 +1,4498 @@
+# THIS IS A GENERATED FILE.  DO NOT EDIT!
+{ lib, pixman }:
+
+self: with self; {
+
+  inherit pixman;
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  appres = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "appres";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/appres-1.0.6.tar.xz";
+      sha256 = "02sr4f1bm3y1w24gsvjfzvbpac1kgkq27v1s68q87bd1l3i5f8lb";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  bdftopcf = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "bdftopcf";
+    version = "1.1.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/bdftopcf-1.1.1.tar.xz";
+      sha256 = "026rzs92h9jsc7r0kvvyvwhm22q0805gp38rs14x6ghg7kam7j8i";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  bitmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, xbitmaps, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "bitmap";
+    version = "1.1.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/bitmap-1.1.1.tar.xz";
+      sha256 = "1ri66kxa9m6s3xw25mz85k34qhjyksa4kbs4jfrri0g47yv2xm33";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw xbitmaps libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  editres = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "editres";
+    version = "1.0.8";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/editres-1.0.8.tar.xz";
+      sha256 = "1ydn32x9qh2zkn90w6nfv33gcq75z67w93bakkykadl8n7zmvkw3";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  encodings = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "encodings";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/encodings-1.0.7.tar.xz";
+      sha256 = "193hxaygxy2msmf8cyps8jdi0kxga84hj47qv7diqlhn7gsajf9s";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontadobe100dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-adobe-100dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-adobe-100dpi-1.0.4.tar.xz";
+      sha256 = "1kwwbaiqnfm3pcysy9gw0g9xhpgmhjcd6clp7zajhqq5br2gyymn";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontadobe75dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-adobe-75dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-adobe-75dpi-1.0.4.tar.xz";
+      sha256 = "04drk4wi176524lxjwfrnkr3dwz1hysabqfajpj6klfypqnsd08j";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontadobeutopia100dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-adobe-utopia-100dpi";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-adobe-utopia-100dpi-1.0.5.tar.xz";
+      sha256 = "0jq27gs5xpwkghggply5pr215lmamrnpr6x5iia76schg8lyr17v";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontadobeutopia75dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-adobe-utopia-75dpi";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.5.tar.xz";
+      sha256 = "0q3pg4imdbwwiq2g8a1rypjrgmb33n0r5j9qqnh4ywnh69cj89m7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontadobeutopiatype1 = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-adobe-utopia-type1";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-adobe-utopia-type1-1.0.5.tar.xz";
+      sha256 = "15snyyy3rk75fikz1hs80nybxai1aynybl0gw32hffv98yy81cjc";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontalias = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-alias";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-alias-1.0.5.tar.xz";
+      sha256 = "0vkb5mybc0fjfq29lgf5w1b536bwifzkyj8ad9iy7q3kpcby52cz";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontarabicmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-arabic-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-arabic-misc-1.0.4.tar.xz";
+      sha256 = "0rrlcqbyx9y7hnhbkjir8rs6jkfqyalj1zvhr8niv2n7a8dydzs6";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbh100dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-100dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-100dpi-1.0.4.tar.xz";
+      sha256 = "07mb9781c9yxzp3ifw317v4fbnmg9qyqv0244zfspylihkz5x3zx";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbh75dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-75dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-75dpi-1.0.4.tar.xz";
+      sha256 = "1nkwkqdl946xc4xknhi1pnxdww6rxrv013c7nk5x6ganfg0dh9k0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbhlucidatypewriter100dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-lucidatypewriter-100dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-lucidatypewriter-100dpi-1.0.4.tar.xz";
+      sha256 = "1wp87pijbydkpcmawsyas7vwhad2xg1mkkwigga2jjh9lknhkv3n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbhlucidatypewriter75dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-lucidatypewriter-75dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-lucidatypewriter-75dpi-1.0.4.tar.xz";
+      sha256 = "1xg86mb9qigf5v0wx0q2shn8qaabsapamj627xllzw31mhwjqkl6";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbhttf = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-ttf";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-ttf-1.0.4.tar.xz";
+      sha256 = "0misxkpjc2bir20m01z355sfk3lbpjnshphjzl32p364006zk9c5";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbhtype1 = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bh-type1";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bh-type1-1.0.4.tar.xz";
+      sha256 = "19kjdm0cx766yj9vwkyv7gyg1q4bjag5g500s7nnppmb0vnc7phr";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbitstream100dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bitstream-100dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bitstream-100dpi-1.0.4.tar.xz";
+      sha256 = "19y1j1v65890x8yn6a47jqljfax3ihfrd25xbzgypxz4xy1cc71d";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbitstream75dpi = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bitstream-75dpi";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bitstream-75dpi-1.0.4.tar.xz";
+      sha256 = "09pq7dvyyxj6kvps1dm3qr15pjwh9iq9118fryqc5a94fkc39sxa";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbitstreamspeedo = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bitstream-speedo";
+    version = "1.0.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bitstream-speedo-1.0.2.tar.gz";
+      sha256 = "0wmy58cd3k7w2j4v20icnfs8z3b61qj3vqdx958z18w00h9mzsmf";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontbitstreamtype1 = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-bitstream-type1";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-bitstream-type1-1.0.4.tar.xz";
+      sha256 = "0a669193ivi2lxk3v692kq1pqavaswlpi9hbi8ib8bfp9j5j6byy";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontcronyxcyrillic = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-cronyx-cyrillic";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-cronyx-cyrillic-1.0.4.tar.xz";
+      sha256 = "12dpsvif85z1m6jvq9g91lmzj0rll5rh3871mbvdpzyb1p7821yw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontcursormisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-cursor-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-cursor-misc-1.0.4.tar.xz";
+      sha256 = "10prshcmmm5ccczyq7yaadz92k23ls9rjl10hjh8rjqka1cwkn95";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontdaewoomisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-daewoo-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-daewoo-misc-1.0.4.tar.xz";
+      sha256 = "0cagg963v94paq1l9l7g5kyv7df8q31b4zcbhv5rh07kr0yqng7n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontdecmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-dec-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-dec-misc-1.0.4.tar.xz";
+      sha256 = "1xqs2qg21h5xg519810hw4bvykjdpf0xgk0xwp0bxy4g3lh6inc2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontibmtype1 = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-ibm-type1";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-ibm-type1-1.0.4.tar.xz";
+      sha256 = "0zyfc0mxkzlrbpdn16rj25abf2hcqb592zkks550rm26paamwff4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontisasmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-isas-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-isas-misc-1.0.4.tar.xz";
+      sha256 = "1z1qqi64hbp297f6ryiswa4ikfn7mcwnb8nadyglni6swsxrbra7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontjismisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-jis-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-jis-misc-1.0.4.tar.xz";
+      sha256 = "1l7spyq93rhydsdnsh46alcfbn2irz664vd209lamxviqkvfzlbq";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmicromisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-micro-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-micro-misc-1.0.4.tar.xz";
+      sha256 = "0hzryqyml0bzzw91vqdmzdlb7dm18jmyz0mxy6plks3sppbbkq1f";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmisccyrillic = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-misc-cyrillic";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-misc-cyrillic-1.0.4.tar.xz";
+      sha256 = "14z9x174fidjn65clkd2y1l6pxspmvphizap9a8h2h06adzil0kn";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmiscethiopic = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-misc-ethiopic";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-misc-ethiopic-1.0.5.tar.xz";
+      sha256 = "04mnd620s9wkdid9wnf181yh5vf0n7l096nc3z4zdvm1w7kafja7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmiscmeltho = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-misc-meltho";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-misc-meltho-1.0.4.tar.xz";
+      sha256 = "06ajsqjd20zsk9a44bl5i1mv1r9snil6l2947hk8z2bqf30mxgk3";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmiscmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-misc-misc";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-misc-misc-1.1.3.tar.xz";
+      sha256 = "1vcgc6lbc53fqaz8alhxcb6f231hhvj9hn2nkzg1mclbymhy7avr";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontmuttmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-mutt-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-mutt-misc-1.0.4.tar.xz";
+      sha256 = "095vd33kqd157j6xi4sjxwdsjpwpgqliifa8nkybq8rcw7s5j8xi";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontschumachermisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-schumacher-misc";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-schumacher-misc-1.1.3.tar.xz";
+      sha256 = "0w40lr214n39al449fnm4k1bpyj3fjrhz2yxqd6a6m8yvc69z14b";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontscreencyrillic = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-screen-cyrillic";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-screen-cyrillic-1.0.5.tar.xz";
+      sha256 = "1h75zn1rp7bdv6av4cnrajpaq6fkd7dx1lc7aijpw32qrnw8nxcg";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontsonymisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-sony-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-sony-misc-1.0.4.tar.xz";
+      sha256 = "0swlhjmmagrfkip4i9yq7cr56hains1j41mjs05nxc6c7y19zc76";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontsunmisc = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-sun-misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-sun-misc-1.0.4.tar.xz";
+      sha256 = "17yvhk1hlajm3q57r09q8830zz7cnckrg8hgzajgyyljdl8xv16x";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fonttosfnt = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, freetype, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "fonttosfnt";
+    version = "1.2.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/fonttosfnt-1.2.3.tar.xz";
+      sha256 = "1bv1glfz4jqvkwx8hmv2vqilvxxl6jww3rvbzv6zbl6b83r96yma";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libfontenc freetype xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontutil = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-util";
+    version = "1.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-util-1.4.1.tar.xz";
+      sha256 = "15fcd3rzlgm51fwgfapg6vzyd1kkd28rj149xq7iajqr7h9697sw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "fontutil" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontwinitzkicyrillic = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, bdftopcf, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-winitzki-cyrillic";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.4.tar.xz";
+      sha256 = "1a4pz8f7hz6nn9xirz2k1j81ykl3lwrpi1ydmzipciy15l984v9v";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  fontxfree86type1 = callPackage ({ stdenv, pkg-config, fetchurl, fontutil, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "font-xfree86-type1";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/font/font-xfree86-type1-1.0.5.tar.xz";
+      sha256 = "0ds8xbgxy9h0bqn2p38vylfzn8cqkp7n51kwmw1c18ayi9w2qg59";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config mkfontscale ];
+    buildInputs = [ fontutil ];
+    configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ];
+    postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`$PKG_CONFIG' '';
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  gccmakedep = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "gccmakedep";
+    version = "1.0.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2";
+      sha256 = "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  iceauth = callPackage ({ stdenv, pkg-config, fetchurl, libICE, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "iceauth";
+    version = "1.0.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/iceauth-1.0.9.tar.xz";
+      sha256 = "01cc816fvdkkfcnqnyvgcshcip2jzjivwa8hzdvsz0snak5xzf9c";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libICE xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  ico = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "ico";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/ico-1.0.6.tar.xz";
+      sha256 = "01a4kykayckxzi4jzggaz3wh9qjcr6f4iykhvq7jhlz767a6kwrq";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  imake = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "imake";
+    version = "1.0.10";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/imake-1.0.10.tar.xz";
+      sha256 = "1xgcsamfij22ggc4p8anvvihwyf4adg6gjdd6v7m9cypm37cppkm";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libAppleWM = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libAppleWM";
+    version = "1.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2";
+      sha256 = "0r8x28n45q89x91mz8mv0zkkcxi8wazkac886fyvflhiv2y8ap2y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "applewm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libFS = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libFS";
+    version = "1.0.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libFS-1.0.9.tar.xz";
+      sha256 = "12i0zh1v5zlba617nam8sjhfqi68qqnl7z5hsz3wqhijid1pjwsr";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xtrans ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "libfs" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libICE = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libICE";
+    version = "1.1.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libICE-1.1.1.tar.xz";
+      sha256 = "0lg4sddalwmmzsnxv3fgdm2hzqp66j8b3syc0ancfhi9yzx7mrq3";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xtrans ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "ice" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libSM = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libuuid, xorgproto, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libSM";
+    version = "1.2.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libSM-1.2.4.tar.xz";
+      sha256 = "113vx53k6pyxf84v5kqb7qhcldx1fi78lym77lcb2xhj9lgfbjzx";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libICE libuuid xorgproto xtrans ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "sm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libWindowsWM = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libWindowsWM";
+    version = "1.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2";
+      sha256 = "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "windowswm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpthreadstubs, libxcb, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libX11";
+    version = "1.8.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libX11-1.8.7.tar.xz";
+      sha256 = "1vlrgrdibp4lr84wgmsdy1ihzaai8bvvqc68npi1m19wir36gwh5";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpthreadstubs libxcb xtrans ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "x11" "x11-xcb" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXScrnSaver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXScrnSaver";
+    version = "1.2.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXScrnSaver-1.2.4.tar.xz";
+      sha256 = "1zi0r6mqa1g0hhsp02cdsjcxmsbipiv0v65c1h4pl84fydcjikbm";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xscrnsaver" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXTrap = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXTrap";
+    version = "1.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXTrap-1.0.1.tar.bz2";
+      sha256 = "0bi5wxj6avim61yidh9fd3j4n8czxias5m8vss9vhxjnk1aksdwg";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xtrap" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXau = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXau";
+    version = "1.0.11";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXau-1.0.11.tar.xz";
+      sha256 = "1sxv56rql3vsb14za0hgr07mipgvvcw48910srmky32pyn135ypk";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xau" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXaw = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXmu, libXpm, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXaw";
+    version = "1.0.15";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXaw-1.0.15.tar.xz";
+      sha256 = "0jkm2ards3nj08y7185k9jvjhhx78r46abrl3g3jrc4zvq7zfddb";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto libXmu libXpm libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xaw6" "xaw7" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXcomposite = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXcomposite";
+    version = "0.4.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXcomposite-0.4.6.tar.xz";
+      sha256 = "11rcvk380l5540gfqy9p8mbzw3l1p5g8l214p870f28smvqbqh7y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXfixes ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcomposite" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXcursor = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXcursor";
+    version = "1.2.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXcursor-1.2.2.tar.xz";
+      sha256 = "1vl87819mnhlbnccchysv9nmax4abil5x3cr61x52vn55jyp3l2k";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXfixes libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcursor" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXdamage = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXdamage";
+    version = "1.1.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXdamage-1.1.6.tar.xz";
+      sha256 = "04axzdx75w0wcb4na7lfpa0ai0fddw60dmg7cigs7z32a8gkqwsj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXfixes ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xdamage" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXdmcp = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXdmcp";
+    version = "1.1.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXdmcp-1.1.4.tar.xz";
+      sha256 = "005dsry6nfqrv32i7gbqn7mxnb2m3pc8fz9lxj2b9w7q2z1mrkid";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xdmcp" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXext = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXext";
+    version = "1.3.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXext-1.3.6.tar.xz";
+      sha256 = "0lwpx0b7lid47pff6dagp5h63bi0b3gsy05lqpyhbr4l76i9zdgd";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xext" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXfixes = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXfixes";
+    version = "6.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXfixes-6.0.1.tar.xz";
+      sha256 = "0n1dq2mi60i0c06i7j6lq64cq335ir2l89yj0amj3529s8ygk5dn";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xfixes" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXfont = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, xorgproto, freetype, xtrans, zlib, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXfont";
+    version = "1.5.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXfont-1.5.4.tar.bz2";
+      sha256 = "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libfontenc xorgproto freetype xtrans zlib ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xfont" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXfont2 = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, xorgproto, freetype, xtrans, zlib, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXfont2";
+    version = "2.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXfont2-2.0.6.tar.xz";
+      sha256 = "1x5f4w6f94dq9hfcd11xzzjqbz30yn2hdrnmv1b3zyxhgq0j1jkl";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libfontenc xorgproto freetype xtrans zlib ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xfont2" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXft = callPackage ({ stdenv, pkg-config, fetchurl, fontconfig, freetype, libX11, xorgproto, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXft";
+    version = "2.3.8";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXft-2.3.8.tar.xz";
+      sha256 = "0jfxqsqhjl2b2ll6b7x21mj02hxp5znkhjvbxw5a9h6lq95kr32y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ fontconfig freetype libX11 xorgproto libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xft" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXi = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXfixes, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXi";
+    version = "1.8.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXi-1.8.1.tar.xz";
+      sha256 = "19snjrsdib2y2iq8c1zbrp78qy1b6sdmyvif422gg27j2klc1gw9";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXfixes ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xi" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXinerama = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXinerama";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXinerama-1.1.5.tar.xz";
+      sha256 = "0p08q8q1wg0sixhizl2l1i935bk6x3ckj3bdd6qqr0n1zkqd352h";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xinerama" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXmu = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXmu";
+    version = "1.1.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXmu-1.1.4.tar.xz";
+      sha256 = "0i42fng5gizablqziib25ipcwm5830jprl955ibq54rykjmy6391";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xmu" "xmuu" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXp = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXau, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXp";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXp-1.0.4.tar.xz";
+      sha256 = "197iklxwyd4naryc6mzv0g5qi1dy1apxk9w9k3yshd1ax2wf668z";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXau libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xp" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXpm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt, gettext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXpm";
+    version = "3.5.17";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXpm-3.5.17.tar.xz";
+      sha256 = "0hvf49qy55gwldpwpw7ihcmn5i2iinpjh2rbha63hzcy060izcv4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config gettext ];
+    buildInputs = [ libX11 libXext xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xpm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXpresent = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXfixes, libXrandr, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXpresent";
+    version = "1.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXpresent-1.0.1.tar.xz";
+      sha256 = "06r34v7z3jb0x7l5ghlc1g82gjjp5ilq5p6j11galv86bagdyr5r";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXfixes libXrandr ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xpresent" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXrandr = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXrandr";
+    version = "1.5.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXrandr-1.5.4.tar.xz";
+      sha256 = "1lxlqd9ffjr1myfpyk91594n1h07ck6121m6ba8qajjz6xjv1m8s";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xrandr" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXrender = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXrender";
+    version = "0.9.11";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXrender-0.9.11.tar.xz";
+      sha256 = "096whakny5h16nlwz80z0l2nxigpsarl35mm5xqgzlc37ad7alxw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xrender" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXres = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXres";
+    version = "1.2.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXres-1.2.2.tar.xz";
+      sha256 = "0pvlzahqd8fcyq10wi7ipbxvgrg93hn0vqsymhw7b6sb93rlcx4s";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xres" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXt = callPackage ({ stdenv, pkg-config, fetchurl, libICE, xorgproto, libSM, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXt";
+    version = "1.3.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXt-1.3.0.tar.xz";
+      sha256 = "14dz66rp66ar2a5q0fbsnlcqkbd34801pzdxj3f0hzc2vcy0p0jj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libICE xorgproto libSM libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xt" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXtst = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXi, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXtst";
+    version = "1.2.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXtst-1.2.4.tar.xz";
+      sha256 = "1j1kr90b7vmpqniqd0pd786kn5924q799c5m2kpgzd2lj85z7xc4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXi ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xtst" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXv = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXv";
+    version = "1.0.12";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXv-1.0.12.tar.xz";
+      sha256 = "0j1qqrhbhdi3kqz0am5i1lhs31ql9pbc14z41w0a5xw9yq4zmxxa";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xv" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXvMC = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXv, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXvMC";
+    version = "1.0.14";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXvMC-1.0.14.tar.xz";
+      sha256 = "1nayf8qck0b1xb88dirdbvj7clr18wq1dxs73zwbpzdsnsv9xgp4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXv ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xvmc" "xvmc-wrapper" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXxf86dga = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXxf86dga";
+    version = "1.1.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXxf86dga-1.1.6.tar.xz";
+      sha256 = "03wqsxbgyrdbrhw8fk3fxc9nk8jnwz5537ym2yif73w0g5sl4i5y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xxf86dga" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXxf86misc = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXxf86misc";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2";
+      sha256 = "107k593sx27vjz3v7gbb223add9i7w0bjc90gbb3jqpin3i07758";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xxf86misc" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libXxf86vm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libXxf86vm";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libXxf86vm-1.1.5.tar.xz";
+      sha256 = "1rw8z01vgfc4wvf0q75sgnj6n04dkrw1w7z455qydrz0nd4fyzr4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xxf86vm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libdmx = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libdmx";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libdmx-1.1.5.tar.xz";
+      sha256 = "0kzprd1ak3m3042m5hra50nsagswciis9p21ckilyaqbidmf591m";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "dmx" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libfontenc = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, zlib, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libfontenc";
+    version = "1.1.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libfontenc-1.1.7.tar.xz";
+      sha256 = "1hpy7kvppzy36fl8gbnzbv0cvglpdqk9jpdgvcfma1pfza8nkly0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto zlib ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "fontenc" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libpciaccess = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libpciaccess";
+    version = "0.18";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libpciaccess-0.18.tar.xz";
+      sha256 = "1ab2qbksf15jrpzd6x9ncri64d2bnhlw7aajdws58lj9gljv0qal";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "pciaccess" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libpthreadstubs = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libpthread-stubs";
+    version = "0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/libpthread-stubs-0.5.tar.xz";
+      sha256 = "1g224hyy694jch54357zc895z46r90xs193hg4m7rfnfxinmdnjr";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "pthread-stubs" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libxcb = callPackage ({ stdenv, pkg-config, fetchurl, libxslt, libpthreadstubs, libXau, xcbproto, libXdmcp, python3, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libxcb";
+    version = "1.16";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libxcb-1.16.tar.xz";
+      sha256 = "0w8xf6ff6axvla734lfb2291hrjrqqhn6mqabvdrdwgvl1m5cj23";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config python3 ];
+    buildInputs = [ libxslt libpthreadstubs libXau xcbproto libXdmcp ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb" "xcb-composite" "xcb-damage" "xcb-dbe" "xcb-dpms" "xcb-dri2" "xcb-dri3" "xcb-ge" "xcb-glx" "xcb-present" "xcb-randr" "xcb-record" "xcb-render" "xcb-res" "xcb-screensaver" "xcb-shape" "xcb-shm" "xcb-sync" "xcb-xevie" "xcb-xf86dri" "xcb-xfixes" "xcb-xinerama" "xcb-xinput" "xcb-xkb" "xcb-xprint" "xcb-xselinux" "xcb-xtest" "xcb-xv" "xcb-xvmc" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libxcvt = callPackage ({ stdenv, pkg-config, fetchurl, meson, ninja, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libxcvt";
+    version = "0.1.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libxcvt-0.1.2.tar.xz";
+      sha256 = "0f6vf47lay9y288n8yg9ckjgz5ypn2hnp03ipp7javkr8h2njq85";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config meson ninja ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libxkbfile = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libxkbfile";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libxkbfile-1.1.3.tar.xz";
+      sha256 = "1v2bhw1q1cj3wjfs0igq393iz10whcavbyxlm3k9xfvsk7m3xdm9";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xkbfile" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  libxshmfence = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "libxshmfence";
+    version = "1.3.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/libxshmfence-1.3.2.tar.xz";
+      sha256 = "0vv0c7rjf6nd1afbal4c4ralallarak1v3ss3gcjdca0pibz43c7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xshmfence" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  listres = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXmu, xorgproto, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "listres";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/listres-1.0.5.tar.xz";
+      sha256 = "17fwfjh0xrvg7jj4h32pa8ns4hq4r11z61kh2xsqvsyjwyxh0anf";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libXaw libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  lndir = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "lndir";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/lndir-1.0.4.tar.xz";
+      sha256 = "11syg5hx3f7m1d2p7zw717lryk819h6wk8h4vmapfdxvsflkfd1y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  luit = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "luit";
+    version = "20230201";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "https://invisible-mirror.net/archives/luit/luit-20230201.tgz";
+      sha256 = "0vy5fqp26pnrdn0hmgnmar6m2y06syrz188jqh03vqkyphfqsapf";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  makedepend = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "makedepend";
+    version = "1.0.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/makedepend-1.0.9.tar.xz";
+      sha256 = "1m1dg32z22fw9shg0wsxw7dvdcnfm16gq9qxpkfxixpzb6vdxl4j";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  mkfontscale = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, freetype, xorgproto, zlib, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "mkfontscale";
+    version = "1.2.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/mkfontscale-1.2.3.tar.xz";
+      sha256 = "0pp7dyfrrkrqxslk9q8660k0h4swaqlixsnnph2fxb7i8k1ws899";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libfontenc freetype xorgproto zlib ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  oclock = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, libX11, libXext, libXmu, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "oclock";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/oclock-1.0.5.tar.xz";
+      sha256 = "0p4nqfrhy1srqqzbamp7afa54clbydbhprd1nxbd12g8anb9f2cg";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libxkbfile libX11 libXext libXmu libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  sessreg = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "sessreg";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/sessreg-1.1.3.tar.xz";
+      sha256 = "1hmc9wsfgl2wmy0kccwa4brxbv02w5wiz5hrz72dsz87x1fwsah2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  setxkbmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, libXrandr, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "setxkbmap";
+    version = "1.3.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/setxkbmap-1.3.4.tar.xz";
+      sha256 = "1pps0x66512y3f7v6xgnb6gjbllsgi4q5zxmjcdiv60fsia8b3dy";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxkbfile libXrandr ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  smproxy = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libXmu, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "smproxy";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/smproxy-1.0.7.tar.xz";
+      sha256 = "01gkz4n2pfxiklzzx3ghnm9shx3626jcriwvrs3pvawxrhvr5aaa";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libICE libSM libXmu libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  transset = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "transset";
+    version = "1.0.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/transset-1.0.3.tar.xz";
+      sha256 = "1zp6ldxb3h2zsr4nmkb8aj8ia8v3qvjj3w85by5xh3fxvlq8zqqz";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  twm = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libX11, libXext, libXmu, xorgproto, libXrandr, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "twm";
+    version = "1.0.12";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/twm-1.0.12.tar.xz";
+      sha256 = "1r5gfv1gvcjn39v7n6znpnvifwhlw2zf8gfrxq8vph84vva03wma";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libICE libSM libX11 libXext libXmu xorgproto libXrandr libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  utilmacros = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "util-macros";
+    version = "1.20.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/util-macros-1.20.0.tar.xz";
+      sha256 = "1nrh8kmbix5pspva6y7h14fj97xdvxqc6fr3zysfswg9vdib51hb";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-macros" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  viewres = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXmu, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "viewres";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/viewres-1.0.7.tar.xz";
+      sha256 = "0a66mz27gcsxd1qq1ij0w8dv4wjvszgbf5ygw5dga40sbc464nmi";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libXaw libXmu libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  x11perf = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXft, libXmu, xorgproto, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "x11perf";
+    version = "1.6.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/x11perf-1.6.1.tar.bz2";
+      sha256 = "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext libXft libXmu xorgproto libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xauth = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXext, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xauth";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xauth-1.1.3.tar.xz";
+      sha256 = "0cwxzq7lv932rcfad3baanr541qcjjdhyrhxy0bzjcp3pac581z7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXau libXext libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xbacklight = callPackage ({ stdenv, pkg-config, fetchurl, libxcb, xcbutil, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xbacklight";
+    version = "1.2.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xbacklight-1.2.3.tar.bz2";
+      sha256 = "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libxcb xcbutil ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xbitmaps = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xbitmaps";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/data/xbitmaps-1.1.3.tar.xz";
+      sha256 = "0yhgrllia3lbqx9b21w31w4sppx1a9ggrk62hrys2ckqi1aasv5d";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xbitmaps" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcalc = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcalc";
+    version = "1.1.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xcalc-1.1.2.tar.xz";
+      sha256 = "1m0wzhjvc88kmx12ykdml5rqlz9h2iki9mkfdngji53y8nhxyy45";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbproto = callPackage ({ stdenv, pkg-config, fetchurl, python3, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-proto";
+    version = "1.16.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/proto/xcb-proto-1.16.0.tar.xz";
+      sha256 = "06aij66rs8g378wg8swd7b3g73wqrrbbwl8shhnsi29amm41hnm7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config python3 ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-proto" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutil = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util";
+    version = "0.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-0.4.1.tar.xz";
+      sha256 = "04p54r0zjc44fpw1hdy4rhygv37sx2vr2lllxjihykz5v2xkpgjs";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-atom" "xcb-aux" "xcb-event" "xcb-util" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilcursor = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbutilimage, xcbutilrenderutil, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-cursor";
+    version = "0.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/xcb-util-cursor-0.1.5.tar.xz";
+      sha256 = "0mrwcrm6djbd5zdvqb5v4wr87bzawnaacyqwwhfghw09ssq9kbqc";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xcbutilimage xcbutilrenderutil xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-cursor" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilerrors = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbproto, xorgproto, m4, python3, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-errors";
+    version = "1.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-errors-1.0.1.tar.xz";
+      sha256 = "0mzkh3xj1n690dw8hrdhyjykd71ib0ls9n5cgf9asna2k1xwha2n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 python3 ];
+    buildInputs = [ gperf libxcb xcbproto xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-errors" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilimage = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbutil, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-image";
+    version = "0.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-image-0.4.1.tar.xz";
+      sha256 = "0g8dwknrlz96k176qxh8ar84x9kpppci9b978zyp24nvvbjqxbfc";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xcbutil xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-image" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilkeysyms = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-keysyms";
+    version = "0.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-keysyms-0.4.1.tar.xz";
+      sha256 = "0f66snk179hmp8ppgv1zp9y7pl1vzn52znpikm1fsaj1ji90l9kw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-keysyms" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilrenderutil = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-renderutil";
+    version = "0.3.10";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-renderutil-0.3.10.tar.xz";
+      sha256 = "1fh4dnlwlqyccrhmmwlv082a7mxc7ss7vmzmp7xxp39dwbqd859y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-renderutil" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcbutilwm = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcb-util-wm";
+    version = "0.4.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xcb/xcb-util-wm-0.4.2.tar.xz";
+      sha256 = "02wai17mxfbvlnj4l4bjbvah97rccdivzvd7mrznhr32s0hlxhv2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config m4 ];
+    buildInputs = [ gperf libxcb xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xcb-ewmh" "xcb-icccm" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xclock = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXft, libxkbfile, libXmu, xorgproto, libXrender, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xclock";
+    version = "1.1.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xclock-1.1.1.tar.xz";
+      sha256 = "0b3l1zwz2b1cn46f8pd480b835j9anadf929vqpll107iyzylz6z";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXft libxkbfile libXmu xorgproto libXrender libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcmsdb = callPackage ({ stdenv, pkg-config, fetchurl, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcmsdb";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xcmsdb-1.0.6.tar.xz";
+      sha256 = "0magrza0i5qwpf0zlpqjychp3bzxgdw3p5v616xl4nbxag2fwxrw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcompmgr = callPackage ({ stdenv, pkg-config, fetchurl, libXcomposite, libXdamage, libXext, libXfixes, xorgproto, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcompmgr";
+    version = "1.1.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xcompmgr-1.1.9.tar.xz";
+      sha256 = "1w564walyqi3bqnnl8l2d949v64smipdw2q8lnrixl3jhrlvcxa8";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libXcomposite libXdamage libXext libXfixes xorgproto libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xconsole = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xconsole";
+    version = "1.0.8";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xconsole-1.0.8.tar.xz";
+      sha256 = "195vhqjrzjf4kkzmy0kx50n1bv2kj9fg7mi18mm2w3p4d3q6ljkv";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcursorgen = callPackage ({ stdenv, pkg-config, fetchurl, libpng, libX11, libXcursor, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcursorgen";
+    version = "1.0.8";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xcursorgen-1.0.8.tar.xz";
+      sha256 = "16yc82k4vp7icmf9247z4v38r65pdf032mrpzxj5wa2fggi3rcrj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libpng libX11 libXcursor xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xcursorthemes = callPackage ({ stdenv, pkg-config, fetchurl, libXcursor, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xcursor-themes";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/data/xcursor-themes-1.0.7.tar.xz";
+      sha256 = "1j3qfga5llp8g702n7mivvdvfjk7agsgnbglbfh99n13i3sfiflm";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libXcursor ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xdm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXaw, libXdmcp, libXext, libXft, libXinerama, libXmu, libXpm, xorgproto, libXrender, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xdm";
+    version = "1.1.14";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xdm-1.1.14.tar.xz";
+      sha256 = "0prx5h0xmv08yvm0axzh74a90cyc1s1dcv98jpjwjzkr6rbg56ry";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm xorgproto libXrender libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xdpyinfo = callPackage ({ stdenv, pkg-config, fetchurl, libdmx, libX11, libxcb, libXcomposite, libXext, libXi, libXinerama, xorgproto, libXrender, libXtst, libXxf86dga, libXxf86misc, libXxf86vm, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xdpyinfo";
+    version = "1.3.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xdpyinfo-1.3.4.tar.xz";
+      sha256 = "0aw2yhx4ys22231yihkzhnw9jsyzksl4yyf3sx0689npvf0sbbd8";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xorgproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xdriinfo = callPackage ({ stdenv, pkg-config, fetchurl, libGL, xorgproto, libX11, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xdriinfo";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xdriinfo-1.0.7.tar.xz";
+      sha256 = "0d7p9fj3znq0av9pjgi2kphqaz5w7b9hxlz63zbxs69bknp8p0yx";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libGL xorgproto libX11 ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xev = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXrandr, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xev";
+    version = "1.2.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xev-1.2.5.tar.xz";
+      sha256 = "1hbfwcnbyz4w13fbhnghl0vdhf6w9f9pb7jgjwrhykkii51ilin9";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto libXrandr ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xeyes = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxcb, libXext, libXi, libXmu, xorgproto, libXrender, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xeyes";
+    version = "1.3.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xeyes-1.3.0.tar.xz";
+      sha256 = "08rhfp5xlmdbyxkvxhgjxdn6vwzrbrjyd7jkk8b7wi1kpw0ccl09";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxcb libXext libXi libXmu xorgproto libXrender libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputevdev = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libevdev, udev, mtdev, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-evdev";
+    version = "2.10.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-evdev-2.10.6.tar.bz2";
+      sha256 = "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libevdev udev mtdev xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-evdev" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputjoystick = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-joystick";
+    version = "1.6.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-joystick-1.6.4.tar.xz";
+      sha256 = "1lnc6cvrg81chb2hj3jphgx7crr4ab8wn60mn8f9nsdwza2w8plh";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-joystick" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputkeyboard = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-keyboard";
+    version = "2.0.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-keyboard-2.0.0.tar.xz";
+      sha256 = "1fgya6a0pzsb8ynp2qhx3bqg6nfc4y2sw9wmk7zd8pqplbqzsrij";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputlibinput = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libinput, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-libinput";
+    version = "1.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-libinput-1.4.0.tar.xz";
+      sha256 = "1673ydfrvfqd4inz3vx1qyxa0mhr0f4bi0r7mrcmpisxi76i8g9s";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libinput xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-libinput" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputmouse = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-mouse";
+    version = "1.9.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-mouse-1.9.5.tar.xz";
+      sha256 = "0s4rzp7aqpbqm4474hg4bz7i7vg3ir93ck2q12if4lj3nklqmpjg";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-mouse" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputsynaptics = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libevdev, libX11, libXi, xorgserver, libXtst, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-synaptics";
+    version = "1.9.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-synaptics-1.9.2.tar.xz";
+      sha256 = "0f1cjs9haxhjybfh2lh579s15i2q0q19whynpda3giizj6mlmymq";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libevdev libX11 libXi xorgserver libXtst ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-synaptics" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputvmmouse = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, udev, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-vmmouse";
+    version = "13.2.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-vmmouse-13.2.0.tar.xz";
+      sha256 = "1f1rlgp1rpsan8k4ax3pzhl1hgmfn135r31m80pjxw5q19c7gw2n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto udev xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86inputvoid = callPackage ({ stdenv, pkg-config, fetchurl, xorgserver, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-input-void";
+    version = "1.4.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-input-void-1.4.2.tar.xz";
+      sha256 = "11bqy2djgb82c1g8ylpfwp3wjw4x83afi8mqyn5fvqp03kidh4d2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgserver xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoamdgpu = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, mesa, libGL, libdrm, udev, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-amdgpu";
+    version = "23.0.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-amdgpu-23.0.0.tar.xz";
+      sha256 = "0qf0kjh6pww5abxmqa4c9sfa2qq1hq4p8qcgqpfd1kpkcvmg012g";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto mesa libGL libdrm udev xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoapm = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-apm";
+    version = "1.3.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-apm-1.3.0.tar.bz2";
+      sha256 = "0znwqfc8abkiha98an8hxsngnz96z6cd976bc4bsvz1km6wqk0c0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoark = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-ark";
+    version = "0.7.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-ark-0.7.6.tar.xz";
+      sha256 = "0p88blr3zgy47jc4aqivc6ypj4zq9pad1cl70wwz9xig29w9xk2s";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoast = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-ast";
+    version = "1.1.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-ast-1.1.6.tar.xz";
+      sha256 = "1bqdjcxi8fj48821322djdqnrla2i48wqckdf364zagrqyllyxbm";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoati = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, mesa, libGL, libdrm, udev, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-ati";
+    version = "22.0.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-ati-22.0.0.tar.xz";
+      sha256 = "0vdznwx78alhbb05paw2xd65hcsila2kqflwwnbpq8pnsdbbpj68";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto mesa libGL libdrm udev libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videochips = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-chips";
+    version = "1.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-chips-1.4.0.tar.bz2";
+      sha256 = "1gqzy7q9v824m7hqkbbmncxg082zm0d4mafgc97c4skyiwgf9wq7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videocirrus = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-cirrus";
+    version = "1.6.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-cirrus-1.6.0.tar.xz";
+      sha256 = "00b468w01hqjczfqz42v2vqhb14db4wazcqi1w29lgfyhc0gmwqf";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videodummy = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-dummy";
+    version = "0.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-dummy-0.4.1.tar.xz";
+      sha256 = "1byzsdcnlnzvkcqrzaajzc3nzm7y7ydrk9bjr4x9lx8gznkj069m";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videofbdev = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-fbdev";
+    version = "0.5.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2";
+      sha256 = "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videogeode = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-geode";
+    version = "2.11.21";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-geode-2.11.21.tar.xz";
+      sha256 = "07lzbyxss0m5i4j58z43zri2baawci9q1ykv1g828wqi2hzsqml2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoglide = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-glide";
+    version = "1.2.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-glide-1.2.2.tar.bz2";
+      sha256 = "1vaav6kx4n00q4fawgqnjmbdkppl0dir2dkrj4ad372mxrvl9c4y";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoglint = callPackage ({ stdenv, pkg-config, fetchurl, libpciaccess, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-glint";
+    version = "1.2.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-glint-1.2.9.tar.bz2";
+      sha256 = "1lkpspvrvrp9s539bhfdjfh4andaqyk63l6zjn8m3km95smk6a45";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libpciaccess xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoi128 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-i128";
+    version = "1.4.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-i128-1.4.1.tar.xz";
+      sha256 = "0imwmkam09wpp3z3iaw9i4hysxicrrax7i3p0l2glgp3zw9var3h";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoi740 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-i740";
+    version = "1.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-i740-1.4.0.tar.bz2";
+      sha256 = "0l3s1m95bdsg4gki943qipq8agswbb84dzcflpxa3vlckwhh3r26";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videointel = callPackage ({ stdenv, pkg-config, fetchurl, cairo, xorgproto, libdrm, libpng, udev, libpciaccess, libX11, xcbutil, libxcb, libXcursor, libXdamage, libXext, libXfixes, xorgserver, libXrandr, libXrender, libxshmfence, libXtst, libXvMC, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-intel";
+    version = "2.99.917";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-intel-2.99.917.tar.bz2";
+      sha256 = "1jb7jspmzidfixbc0gghyjmnmpqv85i7pi13l4h2hn2ml3p83dq0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ cairo xorgproto libdrm libpng udev libpciaccess libX11 xcbutil libxcb libXcursor libXdamage libXext libXfixes xorgserver libXrandr libXrender libxshmfence libXtst libXvMC ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videomga = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-mga";
+    version = "2.0.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-mga-2.0.1.tar.xz";
+      sha256 = "1aq3aqh2yg09gy864kkshfx5pjl5w05jdz97bx5bnrbrhdq3p8r7";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoneomagic = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-neomagic";
+    version = "1.3.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-neomagic-1.3.1.tar.xz";
+      sha256 = "153lzhq0vahg3875wi8hl9rf4sgizs41zmfg6hpfjw99qdzaq7xn";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videonewport = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-newport";
+    version = "0.2.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-newport-0.2.4.tar.bz2";
+      sha256 = "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videonouveau = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-nouveau";
+    version = "3ee7cbca8f9144a3bb5be7f71ce70558f548d268";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/-/archive/3ee7cbca8f9144a3bb5be7f71ce70558f548d268/xf86-video-nouveau-3ee7cbca8f9144a3bb5be7f71ce70558f548d268.tar.bz2";
+      sha256 = "0rhs3z274jdzd82pcsl25xn8hmw6i4cxs2kwfnphpfhxbbkiq7wl";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm udev libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videonv = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-nv";
+    version = "2.1.22";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-nv-2.1.22.tar.xz";
+      sha256 = "126j60dgnmiahjk5mxbnaav23hv7nvxvh49vhn6qg2f3nlnr6632";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoomap = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-omap";
+    version = "0.4.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-omap-0.4.5.tar.bz2";
+      sha256 = "0nmbrx6913dc724y8wj2p6vqfbj5zdjfmsl037v627jj0whx9rwk";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoopenchrome = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, libX11, libXext, xorgserver, libXvMC, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-openchrome";
+    version = "0.6.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-openchrome-0.6.0.tar.bz2";
+      sha256 = "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm udev libpciaccess libX11 libXext xorgserver libXvMC ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoqxl = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-qxl";
+    version = "0.1.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-qxl-0.1.6.tar.xz";
+      sha256 = "0pwncx60r1xxk8kpp9a46ga5h7k7hjqf14726v0gra27vdc9blra";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm udev libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videor128 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-r128";
+    version = "6.12.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-r128-6.12.1.tar.xz";
+      sha256 = "0hf7h54wxgs8njavp0kgadjq1787fhbd588j7pj685hz2wmkq0kx";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videorendition = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-rendition";
+    version = "4.2.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-rendition-4.2.7.tar.bz2";
+      sha256 = "0yzqcdfrnnyaaaa76d4hpwycpq4x2j8qvg9m4q19lj4xbicwc4cm";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videos3virge = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-s3virge";
+    version = "1.11.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-s3virge-1.11.1.tar.xz";
+      sha256 = "1qzfcq3rlpfdb6qxz8hrp9py1q11vyzl4iqxip1vpgfnfn83vl6f";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosavage = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-savage";
+    version = "2.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-savage-2.4.0.tar.xz";
+      sha256 = "1z81nqwaqqy9sc7pywkw4q9mijpvjx9w8xxr7d13k2nhzlng0v5k";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosiliconmotion = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-siliconmotion";
+    version = "1.7.10";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.10.tar.xz";
+      sha256 = "1h4g2mqxshaxii416ldw0aqy6cxnsbnzayfin51xm2526dw9q18n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosis = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-sis";
+    version = "0.12.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-sis-0.12.0.tar.gz";
+      sha256 = "00j7i2r81496w27rf4nq9gc66n6nizp3fi7nnywrxs81j1j3pk4v";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosisusb = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-sisusb";
+    version = "0.9.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-sisusb-0.9.7.tar.bz2";
+      sha256 = "090lfs3hjz3cjd016v5dybmcsigj6ffvjdhdsqv13k90p4b08h7l";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosuncg6 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-suncg6";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-suncg6-1.1.3.tar.xz";
+      sha256 = "16c3g5m0f5y9nx2x6w9jdzbs9yr6xhq31j37dcffxbsskmfxq57w";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosunffb = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-sunffb";
+    version = "1.2.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-sunffb-1.2.3.tar.xz";
+      sha256 = "0pf4ddh09ww7sxpzs5gr9pxh3gdwkg3f54067cp802nkw1n8vypi";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videosunleo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-sunleo";
+    version = "1.2.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-sunleo-1.2.3.tar.xz";
+      sha256 = "1px670aiqyzddl1nz3xx1lmri39irajrqw6dskirs2a64jgp3dpc";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videotdfx = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-tdfx";
+    version = "1.5.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-tdfx-1.5.0.tar.bz2";
+      sha256 = "0qc5wzwf1n65si9rc37bh224pzahh7gp67vfimbxs0b9yvhq0i9g";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videotga = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-tga";
+    version = "1.2.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-tga-1.2.2.tar.bz2";
+      sha256 = "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videotrident = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-trident";
+    version = "1.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-trident-1.4.0.tar.xz";
+      sha256 = "16qqn1brz50mwcy42zi1wsw9af56qadsaaiwm9hn1p6plyf22xkz";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videov4l = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-v4l";
+    version = "0.3.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-v4l-0.3.0.tar.bz2";
+      sha256 = "084x4p4avy72mgm2vnnvkicw3419i6pp3wxik8zqh7gmq4xv5z75";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videovboxvideo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-vboxvideo";
+    version = "1.0.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.0.tar.bz2";
+      sha256 = "195z1js3i51qgxvhfw4bxb4dw3jcrrx2ynpm2y3475dypjzs7dkz";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videovesa = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-vesa";
+    version = "2.6.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-vesa-2.6.0.tar.xz";
+      sha256 = "1ccvaigb1f1kz8nxxjmkfn598nabd92p16rx1g35kxm8n5qjf20h";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videovmware = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, libX11, libXext, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-vmware";
+    version = "13.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-vmware-13.4.0.tar.xz";
+      sha256 = "06mq7spifsrpbwq9b8kn2cn61xq6mpkq6lvh4qi6xk2yxpjixlxf";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm udev libpciaccess libX11 libXext xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videovoodoo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-voodoo";
+    version = "1.2.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-voodoo-1.2.6.tar.xz";
+      sha256 = "00pn5826aazsdipf7ny03s1lypzid31fmswl8y2hrgf07bq76ab2";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videowsfb = callPackage ({ stdenv, pkg-config, fetchurl, xorgserver, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-wsfb";
+    version = "0.4.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-wsfb-0.4.0.tar.bz2";
+      sha256 = "0hr8397wpd0by1hc47fqqrnaw3qdqd8aqgwgzv38w5k3l3jy6p4p";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgserver xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xf86videoxgi = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xf86-video-xgi";
+    version = "1.6.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/driver/xf86-video-xgi-1.6.1.tar.bz2";
+      sha256 = "10xd2vah0pnpw5spn40n4p95mpmgvdkly4i1cz51imnlfsw7g8si";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libdrm libpciaccess xorgserver ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xfd = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, fontconfig, libXaw, libXft, libXmu, xorgproto, libXrender, libXt, gettext, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xfd";
+    version = "1.1.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xfd-1.1.4.tar.xz";
+      sha256 = "1zbnj0z28dx2rm2h7pjwcz7z1jnl28gz0v9xn3hs2igxcvxhyiym";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config gettext wrapWithXFileSearchPathHook ];
+    buildInputs = [ libxkbfile fontconfig libXaw libXft libXmu xorgproto libXrender libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xfontsel = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xfontsel";
+    version = "1.1.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xfontsel-1.1.0.tar.xz";
+      sha256 = "1d6ifx6sw97mmr00bhfakyx2f94w14yswxc68sw49zmvawrjq18p";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xfs = callPackage ({ stdenv, pkg-config, fetchurl, libXfont2, xorgproto, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xfs";
+    version = "1.2.1";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xfs-1.2.1.tar.xz";
+      sha256 = "1rn1l76z4l133491wb1klixbwb8az5cnrzwx37fb3vnpmplc72ix";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libXfont2 xorgproto xtrans ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xfsinfo = callPackage ({ stdenv, pkg-config, fetchurl, libFS, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xfsinfo";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xfsinfo-1.0.7.tar.xz";
+      sha256 = "0x48p4hk0lds2s8nwzgfl616r99s28ydx02zs7p1fxxs3i2wmwwj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libFS xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xgamma = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXxf86vm, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xgamma";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xgamma-1.0.7.tar.xz";
+      sha256 = "13xw2fqp9cs7xj3nqi8khqxv81rk0dd8khp59xgs2lw9bbldly8w";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto libXxf86vm ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xgc = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xgc";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xgc-1.0.6.tar.xz";
+      sha256 = "0h5jm2946f5m1g8a3qh1c01h3zrsjjivi09vi9rmij2frvdvp1vv";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libXaw libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xhost = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXmu, xorgproto, gettext, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xhost";
+    version = "1.0.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xhost-1.0.9.tar.xz";
+      sha256 = "0ib66h78ykc4zki4arh8hkcsgk1mk8yyy0ay5sdb2d908qqvb1pa";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config gettext ];
+    buildInputs = [ libX11 libXau libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xinit = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xinit";
+    version = "1.4.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xinit-1.4.2.tar.xz";
+      sha256 = "08qz6f6yhis6jdcp6hzspql6ib9a9zp0ddhhbac1b7zg4a6xrn5p";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xinput = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXi, libXinerama, libXrandr, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xinput";
+    version = "1.6.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xinput-1.6.4.tar.xz";
+      sha256 = "1j2pf28c54apr56v1fmvprp657n6x4sdrv8f24rx3138cl6x015d";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXext libXi libXinerama libXrandr ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkbcomp = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkbcomp";
+    version = "1.4.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xkbcomp-1.4.7.tar.xz";
+      sha256 = "0xqzz209m9i43jbyrf2lh4xdbyhzzzn9mis2f2c32kplwla82a0a";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxkbfile xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xkbcomp" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkbevd = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkbevd";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xkbevd-1.1.5.tar.xz";
+      sha256 = "0swjhk33fp15060hhzycmk288ys51wwm6l7p9xy4blz95mq7nd9q";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxkbfile ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkbprint = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkbprint";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xkbprint-1.0.6.tar.xz";
+      sha256 = "1c57kb8d8cbf720n9bcjhhaqpk08lac0sk4l0jp8j0mryw299k4r";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxkbfile xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkbutils = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXaw, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkbutils";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xkbutils-1.0.6.tar.xz";
+      sha256 = "0pp2bsksblvvw0fx667k2bl5sm0baj7pp2cjvq0vmk093vpbp8ii";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto libX11 libXaw libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkeyboardconfig = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkeyboard-config";
+    version = "2.41";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.41.tar.xz";
+      sha256 = "13vjvyg1fjvsqzqkpxzigvv94v154mcb2gba4d80spi9aywxcb7h";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xkill = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xkill";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xkill-1.0.6.tar.xz";
+      sha256 = "01xrmqw498hqlhn6l1sq89s31k6sjf6xlij6a08pnrvmqiwama75";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xload = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, gettext, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xload";
+    version = "1.1.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xload-1.1.4.tar.xz";
+      sha256 = "0c9h6w4bd1q3k4cy8v56sc3v9cg94cpg3xr057sf096v428vjil3";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config gettext wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xlsatoms = callPackage ({ stdenv, pkg-config, fetchurl, libxcb, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xlsatoms";
+    version = "1.1.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xlsatoms-1.1.4.tar.xz";
+      sha256 = "1dviriynilkw0jwl0s2h8y95pwh8cxj95cnmllkd6rn0args3gzl";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libxcb ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xlsclients = callPackage ({ stdenv, pkg-config, fetchurl, libxcb, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xlsclients";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xlsclients-1.1.5.tar.xz";
+      sha256 = "1qxsav5gicsfwv1dqlcfpj47vy9i30i7iysrfx5aql02wxbyxfk8";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libxcb ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xlsfonts = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xlsfonts";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xlsfonts-1.0.7.tar.xz";
+      sha256 = "0r84wp4352hbfcaybqp2khipm40293byvrfyrlslrd37m52njwkv";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xmag = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xmag";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xmag-1.0.7.tar.xz";
+      sha256 = "0qblrqrhxml2asgbck53a1v7c4y7ap7jcyqjg500h1i7bb63d680";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libX11 libXaw libXmu libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xmessage = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xmessage";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xmessage-1.0.6.tar.xz";
+      sha256 = "04kahkk3kd6p1xlzf0jwfgnrb5z2r3y55q3p12b6n59py52wbsnj";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libXaw libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xmodmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xmodmap";
+    version = "1.0.11";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xmodmap-1.0.11.tar.xz";
+      sha256 = "10byhzdfv1xckqc3d2v52xg1ggxn5j806x4450l3ig5hyxl82bws";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xmore = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xmore";
+    version = "1.0.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xmore-1.0.4.tar.xz";
+      sha256 = "16havfffngvx5kc9lam8rhsdfabsj1rsv4g49z346knyq7dn1dby";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libXaw xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xorgcffiles = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xorg-cf-files";
+    version = "1.0.8";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/util/xorg-cf-files-1.0.8.tar.xz";
+      sha256 = "1f8primgb6qw3zy7plbsj4a1kdhdqb04xpdys520zaygxxfra23l";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xorgdocs = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xorg-docs";
+    version = "1.7.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/doc/xorg-docs-1.7.2.tar.gz";
+      sha256 = "0xrncq9dkl6h03gfsj89zagi2vkhgvcgy8l6pjjva350d24027hc";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xorgproto = callPackage ({ stdenv, pkg-config, fetchurl, libXt, python3, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xorgproto";
+    version = "2023.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/proto/xorgproto-2023.2.tar.xz";
+      sha256 = "0b4c27aq25w1fccks49p020avf9jzh75kaq5qwnww51bp1yvq7xn";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config python3 ];
+    buildInputs = [ libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "applewmproto" "bigreqsproto" "compositeproto" "damageproto" "dmxproto" "dpmsproto" "dri2proto" "dri3proto" "evieproto" "fixesproto" "fontcacheproto" "fontsproto" "glproto" "inputproto" "kbproto" "lg3dproto" "presentproto" "printproto" "randrproto" "recordproto" "renderproto" "resourceproto" "scrnsaverproto" "trapproto" "videoproto" "windowswmproto" "xcalibrateproto" "xcmiscproto" "xextproto" "xf86bigfontproto" "xf86dgaproto" "xf86driproto" "xf86miscproto" "xf86rushproto" "xf86vidmodeproto" "xineramaproto" "xproto" "xproxymngproto" "xwaylandproto" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xorgserver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, openssl, libX11, libXau, libxcb, xcbutil, xcbutilwm, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, libXdmcp, libXfixes, libxkbfile, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xorg-server";
+    version = "21.1.11";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/xserver/xorg-server-21.1.11.tar.xz";
+      sha256 = "1vr6sc38sqipazsm61bcym2ggbgfgaamz7wf05mb31pvayyssg8x";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ xorgproto openssl libX11 libXau libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-server" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xorgsgmldoctools = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xorg-sgml-doctools";
+    version = "1.12";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.tar.gz";
+      sha256 = "1nsb8kn6nipc09yv19wdpd94pav6hx7xby0psmmdvnm6wqlh6nlq";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xorg-sgml-doctools" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xpr = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xpr";
+    version = "1.1.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xpr-1.1.0.tar.xz";
+      sha256 = "1iaphm96kha6bzz34cj82r2lp5hrdpqwdca04iij4rinflab3fx0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xprop = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xprop";
+    version = "1.2.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xprop-1.2.7.tar.xz";
+      sha256 = "0pw2iv7dcy2xq5fh3427nx88pjj9d9rry3930qj1c6mricaf6dj4";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xrandr = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXrandr, libXrender, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xrandr";
+    version = "1.5.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xrandr-1.5.2.tar.xz";
+      sha256 = "0h7jy4c5zgrr06fimnnxhy5ba782b1n4aik29g6bln4h1mwy9gn8";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto libXrandr libXrender ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xrdb = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xrdb";
+    version = "1.2.2";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xrdb-1.2.2.tar.xz";
+      sha256 = "1x1ka0zbcw66a06jvsy92bvnsj9vxbvnq1hbn1az4f0v4fmzrx9i";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xrefresh = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xrefresh";
+    version = "1.0.7";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xrefresh-1.0.7.tar.xz";
+      sha256 = "07hvfw3rdv8mzqmm9ax5z8kw544insdd152f2z8868ply8sxdwd9";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xset = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXmu, xorgproto, libXxf86misc, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xset";
+    version = "1.2.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xset-1.2.5.tar.xz";
+      sha256 = "0bsyyx3k32k9vpb8x3ks7hlfr03nm0i14fv3cg6n4f2vcdajsscz";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXext libXmu xorgproto libXxf86misc ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xsetroot = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xbitmaps, libXcursor, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xsetroot";
+    version = "1.1.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xsetroot-1.1.3.tar.xz";
+      sha256 = "1l9qcv4mldj70slnmfg56nv7yh9j9ca1x795bl26whmlkrdb90b0";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xbitmaps libXcursor libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xsm = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libX11, libXaw, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xsm";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xsm-1.0.5.tar.xz";
+      sha256 = "0bgvwvj99yqivy4dyxrfa0anwvh5d634gz0w43zy8cn17ymgsc4w";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    buildInputs = [ libICE libSM libX11 libXaw xorgproto libXt ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xstdcmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xstdcmap";
+    version = "1.0.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xstdcmap-1.0.5.tar.xz";
+      sha256 = "1061b95j08mlwpadyilmpbzfgmm08z69k8nrkbn9k11rg7ilfn1n";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXmu xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xtrans = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xtrans";
+    version = "1.5.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/lib/xtrans-1.5.0.tar.xz";
+      sha256 = "1gdiiw64p279a1x033w7i002myry9v75pwmc1gsdpzbbd41vg90v";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ "xtrans" ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xtrap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXt, libXTrap, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xtrap";
+    version = "1.0.3";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2";
+      sha256 = "0sqm4j1zflk1s94iq4waa70hna1xcys88v9a70w0vdw66czhvj2j";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libXt libXTrap ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xvinfo = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXv, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xvinfo";
+    version = "1.1.5";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xvinfo-1.1.5.tar.xz";
+      sha256 = "0164qpbjmxxa1rbvh6ay1iz2qnp9hl1745k9pk6195kdnbn73piy";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto libXv ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xwd = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xwd";
+    version = "1.0.9";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xwd-1.0.9.tar.xz";
+      sha256 = "0gxx3y9zlh13jgwkayxljm6i58ng8jc1xzqv2g8s7d3yjj21n4nw";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libxkbfile libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xwininfo = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxcb, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xwininfo";
+    version = "1.1.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xwininfo-1.1.6.tar.xz";
+      sha256 = "0gr5m4lyvkil3cl63zf0sw7bq5qgraqrnvddk6xgk3a42xy8j61m";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 libxcb xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  xwud = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "xwud";
+    version = "1.0.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "mirror://xorg/individual/app/xwud-1.0.6.tar.xz";
+      sha256 = "1zhsih1l3x1038fi1wi9npvfnn8j7580ca73saixjg5sbv8qq134";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libX11 xorgproto ];
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ ];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+}
diff --git a/nixpkgs/pkgs/servers/x11/xorg/dont-create-logdir-during-build.patch b/nixpkgs/pkgs/servers/x11/xorg/dont-create-logdir-during-build.patch
new file mode 100644
index 000000000000..3675292f9c99
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/dont-create-logdir-during-build.patch
@@ -0,0 +1,32 @@
+---
+ hw/xfree86/Makefile.am | 1 -
+ hw/xfree86/Makefile.in | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am
+index 9aeaea1..dcca3b8 100644
+--- a/hw/xfree86/Makefile.am
++++ b/hw/xfree86/Makefile.am
+@@ -100,7 +100,6 @@ EXTRA_DIST = xorgconf.cpp
+ 
+ # Without logdir, X will post an error on the terminal and will not start
+ install-data-local:
+-	$(AM_V_GEN)$(MKDIR_P) $(DESTDIR)$(logdir)
+ if CYGWIN
+ 	$(INSTALL_DATA) libXorg.exe.a $(DESTDIR)$(libdir)/libXorg.exe.a
+ endif
+diff --git a/hw/xfree86/Makefile.in b/hw/xfree86/Makefile.in
+index c4fceee..74da8f1 100644
+--- a/hw/xfree86/Makefile.in
++++ b/hw/xfree86/Makefile.in
+@@ -1161,7 +1161,6 @@ uninstall-am: uninstall-binPROGRAMS uninstall-local \
+ 
+ # Without logdir, X will post an error on the terminal and will not start
+ install-data-local:
+-	$(AM_V_GEN)$(MKDIR_P) $(DESTDIR)$(logdir)
+ @CYGWIN_TRUE@	$(INSTALL_DATA) libXorg.exe.a $(DESTDIR)$(libdir)/libXorg.exe.a
+ 
+ install-exec-hook:
+-- 
+2.25.4
+
diff --git a/nixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/nixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
new file mode 100755
index 000000000000..d0f88c4dfdbc
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
@@ -0,0 +1,358 @@
+#!/usr/bin/env nix-shell
+#!nix-shell --pure --keep NIX_PATH -i perl -p cacert nix perl
+
+# Usage: manually update tarballs.list then run: ./generate-expr-from-tarballs.pl tarballs.list
+
+use strict;
+use warnings;
+
+use File::Basename;
+use File::Spec::Functions;
+use File::Temp;
+
+
+my %pkgURLs;
+my %pkgHashes;
+my %pkgNames;
+my %pkgVersions;
+my %pkgRequires;
+my %pkgNativeRequires;
+
+my %pcProvides;
+my %pcMap;
+
+my %extraAttrs;
+
+
+my @missingPCs = ("fontconfig", "libdrm", "libXaw", "zlib", "perl", "python3", "mkfontscale", "bdftopcf", "libxslt", "openssl", "gperf", "m4", "libinput", "libevdev", "mtdev", "xorgproto", "cairo", "gettext", "meson", "ninja", "wrapWithXFileSearchPathHook" );
+$pcMap{$_} = $_ foreach @missingPCs;
+$pcMap{"freetype2"} = "freetype";
+$pcMap{"libpng12"} = "libpng";
+$pcMap{"libpng"} = "libpng";
+$pcMap{"dbus-1"} = "dbus";
+$pcMap{"uuid"} = "libuuid";
+$pcMap{"libudev"} = "udev";
+$pcMap{"gl"} = "libGL";
+$pcMap{"GL"} = "libGL";
+$pcMap{"gbm"} = "mesa";
+$pcMap{"hwdata"} = "hwdata";
+$pcMap{"\$PIXMAN"} = "pixman";
+$pcMap{"\$RENDERPROTO"} = "xorgproto";
+$pcMap{"\$DRI3PROTO"} = "xorgproto";
+$pcMap{"\$DRI2PROTO"} = "xorgproto";
+$pcMap{"\${XKBMODULE}"} = "libxkbfile";
+
+
+my $downloadCache = "./download-cache";
+mkdir $downloadCache, 0755;
+
+
+while (<>) {
+    chomp;
+    my $tarball = "$_";
+    print "\nDOING TARBALL $tarball\n";
+
+    my $pkg;
+    if ($tarball =~ s/:([a-zA-Z0-9_]+)$//) {
+      $pkg = $1;
+    } else {
+      $tarball =~ /\/((?:(?:[A-Za-z0-9]|(?:-[^0-9])|(?:-[0-9]*[a-z]))+))[^\/]*$/;
+      die unless defined $1;
+      $pkg = $1;
+      $pkg =~ s/(-|[a-f0-9]{40})//g; # Remove hyphen-minus and SHA-1
+      #next unless $pkg eq "xcbutil";
+    }
+
+    $tarball =~ /\/([^\/]*)\.(tar\.(bz2|gz|xz)|tgz)$/;
+    my $pkgName = $1;
+
+    print "  $pkg $pkgName\n";
+
+    if (defined $pkgNames{$pkg}) {
+        print "  SKIPPING\n";
+        next;
+    }
+
+    # Split by first occurrence of hyphen followed by only numbers, ends line, another hyphen follows, or SHA-1
+    my ($name, $version) = split(/-(?=[.0-9]+(?:$|-)|[a-f0-9]{40})/, $pkgName, 2);
+
+    $pkgURLs{$pkg} = $tarball;
+    $pkgNames{$pkg} = $name;
+    $pkgVersions{$pkg} = $version;
+
+    my $cachePath = catdir($downloadCache, basename($tarball));
+    my $hash;
+    my $path;
+    if (-e $cachePath) {
+        $path = readlink($cachePath);
+        $hash = `nix-hash --type sha256 --base32 --flat $cachePath`;
+    }
+    else {
+        ($hash, $path) = `PRINT_PATH=1 QUIET=1 nix-prefetch-url '$tarball'`;
+        `nix-store --realise --add-root $cachePath --indirect $path`;
+    }
+    chomp $hash;
+    chomp $path;
+    $pkgHashes{$pkg} = $hash;
+
+    print "\nunpacking $path\n";
+    my $tmpDir = File::Temp->newdir();
+    system "cd '$tmpDir' && tar xf '$path'";
+    die "cannot unpack `$path'" if $? != 0;
+    print "\n";
+
+    my $pkgDir = `echo $tmpDir/*`;
+    chomp $pkgDir;
+
+    my $provides = `find $pkgDir -name "*.pc.in"`;
+    my @provides2 = split '\n', $provides;
+    my @requires = ();
+    my @nativeRequires = ();
+
+    foreach my $pcFile (@provides2) {
+        my $pc = $pcFile;
+        $pc =~ s/.*\///;
+        $pc =~ s/.pc.in//;
+        push @{$pcProvides{$pkg}}, $pc;
+        print "PROVIDES $pc\n";
+        die "collision with $pcMap{$pc}" if defined $pcMap{$pc};
+        $pcMap{$pc} = $pkg;
+
+        open FOO, "<$pcFile" or die;
+        while (<FOO>) {
+            if (/Requires:(.*)/) {
+                my @reqs = split ' ', $1;
+                foreach my $req (@reqs) {
+                    next unless $req =~ /^[a-z]+$/;
+                    print "REQUIRE (from $pc): $req\n";
+                    push @requires, $req;
+                }
+            }
+        }
+        close FOO;
+
+    }
+
+    my $file;
+    {
+        local $/;
+        open FOO, "cd '$tmpDir'/* && grep -v '^ *#' configure.ac |";
+        $file = <FOO>;
+        close FOO;
+    }
+
+    if ($file =~ /XAW_CHECK_XPRINT_SUPPORT/) {
+        push @requires, "libXaw";
+    }
+
+    if ($file =~ /zlib is required/ || $file =~ /AC_CHECK_LIB\(z\,/) {
+        push @requires, "zlib";
+    }
+
+    if ($file =~ /Perl is required/) {
+        push @requires, "perl";
+    }
+
+    if ($file =~ /AC_PATH_PROG\(BDFTOPCF/) {
+        push @nativeRequires, "bdftopcf";
+    }
+
+    if ($file =~ /AC_PATH_PROG\(MKFONTSCALE/ || $file =~ /XORG_FONT_REQUIRED_PROG\(MKFONTSCALE/) {
+        push @nativeRequires, "mkfontscale";
+    }
+
+    if ($file =~ /AC_PATH_PROG\(MKFONTDIR/) {
+        push @nativeRequires, "mkfontscale";
+    }
+
+    if ($file =~ /AM_PATH_PYTHON/) {
+        push @nativeRequires, "python3";
+    }
+
+    if ($file =~ /AC_PATH_PROG\(FCCACHE/) {
+        # Don't run fc-cache.
+        die if defined $extraAttrs{$pkg};
+        push @{$extraAttrs{$pkg}}, "preInstall = \"installFlags=(FCCACHE=true)\";";
+    }
+
+    my $isFont;
+
+    if ($file =~ /XORG_FONT_BDF_UTILS/) {
+        push @nativeRequires, "bdftopcf", "mkfontscale";
+        $isFont = 1;
+    }
+
+    if ($file =~ /XORG_FONT_SCALED_UTILS/) {
+        push @nativeRequires, "mkfontscale";
+        $isFont = 1;
+    }
+
+    if ($file =~ /XORG_FONT_UCS2ANY/) {
+        push @nativeRequires, "fontutil", "mkfontscale";
+        $isFont = 1;
+    }
+
+    if ($isFont) {
+        push @requires, "fontutil";
+        push @{$extraAttrs{$pkg}}, "configureFlags = [ \"--with-fontrootdir=\$(out)/lib/X11/fonts\" ];";
+        push @{$extraAttrs{$pkg}}, "postPatch = ''substituteInPlace configure --replace 'MAPFILES_PATH=`pkg-config' 'MAPFILES_PATH=`\$PKG_CONFIG' '';";
+    }
+
+    if (@@ = glob("$tmpDir/*/app-defaults/")) {
+        push @nativeRequires, "wrapWithXFileSearchPathHook";
+    }
+
+    sub process {
+        my $requires = shift;
+        my $s = shift;
+        $s =~ s/\[/\ /g;
+        $s =~ s/\]/\ /g;
+        $s =~ s/\,/\ /g;
+        foreach my $req (split / /, $s) {
+            next if $req eq ">=";
+            #next if $req =~ /^\$/;
+            next if $req =~ /^[0-9]/;
+            next if $req =~ /^\s*$/;
+            next if $req eq '$REQUIRED_MODULES';
+            next if $req eq '$REQUIRED_LIBS';
+            next if $req eq '$XDMCP_MODULES';
+            next if $req eq '$XORG_MODULES';
+            print "REQUIRE: $req\n";
+            push @{$requires}, $req;
+        }
+    }
+
+    #process \@requires, $1 while $file =~ /PKG_CHECK_MODULES\([^,]*,\s*[\[]?([^\)\[]*)/g;
+    process \@requires, $1 while $file =~ /PKG_CHECK_MODULES\([^,]*,([^\)\,]*)/g;
+    process \@requires, $1 while $file =~ /AC_SEARCH_LIBS\([^,]*,([^\)\,]*)/g;
+    process \@requires, $1 while $file =~ /MODULES=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /REQUIRED_LIBS=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /REQUIRED_MODULES=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /REQUIRES=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /X11_REQUIRES=\'(.*)\'/g;
+    process \@requires, $1 while $file =~ /XDMCP_MODULES=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /XORG_MODULES=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /NEEDED=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /ivo_requires=\"(.*)\"/g;
+    process \@requires, $1 while $file =~ /XORG_DRIVER_CHECK_EXT\([^,]*,([^\)]*)\)/g;
+
+    push @nativeRequires, "gettext" if $file =~ /USE_GETTEXT/;
+    push @requires, "libxslt" if $pkg =~ /libxcb/;
+    push @nativeRequires, "meson", "ninja" if $pkg =~ /libxcvt/;
+    push @nativeRequires, "m4" if $pkg =~ /xcbutil/;
+    push @requires, "gperf", "xorgproto" if $pkg =~ /xcbutil/;
+
+    print "REQUIRES $pkg => @requires\n";
+    print "NATIVE_REQUIRES $pkg => @nativeRequires\n";
+    $pkgRequires{$pkg} = \@requires;
+    $pkgNativeRequires{$pkg} = \@nativeRequires;
+
+    print "done\n";
+}
+
+
+print "\nWRITE OUT\n";
+
+open OUT, ">default.nix";
+
+print OUT "";
+print OUT <<EOF;
+# THIS IS A GENERATED FILE.  DO NOT EDIT!
+{ lib, pixman }:
+
+self: with self; {
+
+  inherit pixman;
+
+EOF
+
+
+foreach my $pkg (sort (keys %pkgURLs)) {
+    print "$pkg\n";
+
+    my %nativeRequires = ();
+    my @nativeBuildInputs;
+    foreach my $req (sort @{$pkgNativeRequires{$pkg}}) {
+        if (defined $pcMap{$req}) {
+            # Some packages have .pc that depends on itself.
+            next if $pcMap{$req} eq $pkg;
+            if (!defined $nativeRequires{$pcMap{$req}}) {
+                push @nativeBuildInputs, $pcMap{$req};
+                $nativeRequires{$pcMap{$req}} = 1;
+            }
+        } else {
+            print "  NOT FOUND: $req\n";
+        }
+    }
+    my %requires = ();
+    my @buildInputs;
+    foreach my $req (sort @{$pkgRequires{$pkg}}) {
+        if (defined $pcMap{$req}) {
+            # Some packages have .pc that depends on itself.
+            next if $pcMap{$req} eq $pkg;
+            if (!defined $requires{$pcMap{$req}}) {
+                push @buildInputs, $pcMap{$req};
+                $requires{$pcMap{$req}} = 1;
+            }
+        } else {
+            print "  NOT FOUND: $req\n";
+        }
+    }
+
+    my $nativeBuildInputsStr = join "", map { $_ . " " } @nativeBuildInputs;
+    my $buildInputsStr = join "", map { $_ . " " } @buildInputs;
+
+    sub uniq {
+        my %seen;
+        my @res = ();
+        foreach my $s (@_) {
+            if (!defined $seen{$s}) {
+                $seen{$s} = 1;
+                push @res, $s;
+            }
+        }
+        return @res;
+    }
+
+    my @arguments = @buildInputs;
+    push @arguments, @nativeBuildInputs;
+    unshift @arguments, "stdenv", "pkg-config", "fetchurl";
+    my $argumentsStr = join ", ", uniq @arguments;
+
+    my $extraAttrsStr = "";
+    if (defined $extraAttrs{$pkg}) {
+      $extraAttrsStr = join "", map { "\n    " . $_ } @{$extraAttrs{$pkg}};
+    }
+
+    my $pcProvidesStr = "";
+    if (defined $pcProvides{$pkg}) {
+      $pcProvidesStr = join "", map { "\"" . $_ . "\" " } (sort @{$pcProvides{$pkg}});
+    }
+
+    print OUT <<EOF
+  # THIS IS A GENERATED FILE.  DO NOT EDIT!
+  $pkg = callPackage ({ $argumentsStr, testers }: stdenv.mkDerivation (finalAttrs: {
+    pname = "$pkgNames{$pkg}";
+    version = "$pkgVersions{$pkg}";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = "$pkgURLs{$pkg}";
+      sha256 = "$pkgHashes{$pkg}";
+    };
+    hardeningDisable = [ "bindnow" "relro" ];
+    strictDeps = true;
+    nativeBuildInputs = [ pkg-config $nativeBuildInputsStr];
+    buildInputs = [ $buildInputsStr];$extraAttrsStr
+    passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    meta = {
+      pkgConfigModules = [ $pcProvidesStr];
+      platforms = lib.platforms.unix;
+    };
+  })) {};
+
+EOF
+}
+
+print OUT "}\n";
+
+close OUT;
diff --git a/nixpkgs/pkgs/servers/x11/xorg/imake-cc-wrapper-uberhack.patch b/nixpkgs/pkgs/servers/x11/xorg/imake-cc-wrapper-uberhack.patch
new file mode 100644
index 000000000000..fe079eeb42a7
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/imake-cc-wrapper-uberhack.patch
@@ -0,0 +1,13 @@
+diff --git a/imake.c b/imake.c
+index c20cd4a..ec2589b 100644
+--- a/imake.c
++++ b/imake.c
+@@ -959,7 +959,7 @@ get_libc_version(FILE *inFile)
+ {
+   char aout[4096], *tmpdir;
+   FILE *fp;
+-  const char *format = "%s -o %s -x c -";
++  const char *format = "f=$(mktemp imakeXXXXXX.c); cat > $f; %s $f -o %s";
+   char *cc;
+   int len;
+   char *command;
diff --git a/nixpkgs/pkgs/servers/x11/xorg/imake-setup-hook.sh b/nixpkgs/pkgs/servers/x11/xorg/imake-setup-hook.sh
new file mode 100644
index 000000000000..351ffab34d0f
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/imake-setup-hook.sh
@@ -0,0 +1,19 @@
+export IMAKECPP="@tradcpp@/bin/tradcpp"
+
+imakeConfigurePhase() {
+    runHook preConfigure
+
+    echoCmd 'configuring with imake'
+
+    if [ -z "${imakefile:-}" -a ! -e Imakefile ]; then
+        echo "no Imakefile, doing nothing"
+    else
+        xmkmf -a
+    fi
+
+    runHook postConfigure
+}
+
+if [ -z "${dontUseImakeConfigure-}" -a -z "${configurePhase-}" ]; then
+    configurePhase=imakeConfigurePhase
+fi
diff --git a/nixpkgs/pkgs/servers/x11/xorg/imake.patch b/nixpkgs/pkgs/servers/x11/xorg/imake.patch
new file mode 100644
index 000000000000..e8ce66cdee00
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/imake.patch
@@ -0,0 +1,41 @@
+Disable imake autodetection for:
+- LinuxDistribution to avoid injection of /usr paths
+- gcc to avoid use uf /usr/bin/gcc
+
+https://github.com/NixOS/nixpkgs/issues/135337
+--- a/imake.c
++++ b/imake.c
+@@ -1065,6 +1065,7 @@ get_distrib(FILE *inFile)
+   fprintf (inFile, "%s\n", "#define LinuxWare       11");
+   fprintf (inFile, "%s\n", "#define LinuxYggdrasil  12");
+ 
++#if 0 /* disable system autodetection. Fall through to LinuxUnknown. */
+ # ifdef CROSSCOMPILE
+   if (CrossCompiling) {
+       fprintf (inFile, "%s\n",
+@@ -1090,6 +1091,7 @@ get_distrib(FILE *inFile)
+      * at the content of /etc/debian_version */
+     return;
+   }
++#endif
+   /* what's the definitive way to tell what any particular distribution is? */
+ 
+   fprintf (inFile, "%s\n", "#define DefaultLinuxDistribution LinuxUnknown");
+@@ -1337,6 +1339,7 @@ get_gcc_version(FILE *inFile, char *name)
+ static boolean
+ get_gcc(char *cmd)
+ {
++#if 0 /* disable gcc autodetection. Fall through to explicitly set. */
+   struct stat sb;
+     static const char* gcc_path[] = {
+ #if defined(linux) || \
+@@ -1385,6 +1388,9 @@ get_gcc(char *cmd)
+ 	}
+       }
+     return FALSE;
++#endif
++    strcpy (cmd, IMAKE_COMPILETIME_CPP);
++    return TRUE;
+ }
+ 
+ #ifdef CROSSCOMPILE
diff --git a/nixpkgs/pkgs/servers/x11/xorg/imake.sh b/nixpkgs/pkgs/servers/x11/xorg/imake.sh
new file mode 100644
index 000000000000..4ab5e2ae160b
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/imake.sh
@@ -0,0 +1,6 @@
+preInstall() {
+    mkdir -p $out/lib/X11/config
+    ln -s $xorgcffiles/lib/X11/config/* $out/lib/X11/config
+    #touch $out/lib/X11/config/host.def # !!! hack
+    #touch $out/lib/X11/config/date.def # !!! hack
+}
diff --git a/nixpkgs/pkgs/servers/x11/xorg/overrides.nix b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix
new file mode 100644
index 000000000000..6cc04f1490c6
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix
@@ -0,0 +1,1151 @@
+{ callPackage,
+  lib, stdenv, makeWrapper, fetchurl, fetchpatch, fetchFromGitLab, buildPackages,
+  automake, autoconf, libiconv, libtool, intltool, gettext, python3, perl,
+  freetype, tradcpp, fontconfig, meson, ninja, ed, fontforge,
+  libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm, netbsd,
+  ncompress,
+  mesa, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook,
+  mcpp, libepoxy, openssl, pkg-config, llvm, libxslt, libxcrypt, hwdata,
+  ApplicationServices, Carbon, Cocoa, Xplugin,
+  xorg, windows
+}:
+
+let
+  inherit (stdenv) isDarwin;
+
+  malloc0ReturnsNullCrossFlag = lib.optional
+    (stdenv.hostPlatform != stdenv.buildPlatform)
+    "--enable-malloc0returnsnull";
+
+  addMainProgram = pkg: { mainProgram ? pkg.pname }: pkg.overrideAttrs (attrs: {
+    meta = attrs.meta // { inherit mainProgram; };
+  });
+
+  brokenOnDarwin = pkg: pkg.overrideAttrs (attrs: {
+    meta = attrs.meta // { broken = isDarwin; };
+  });
+in
+self: super:
+{
+  wrapWithXFileSearchPathHook = callPackage ({ makeBinaryWrapper, makeSetupHook, writeScript }: makeSetupHook {
+      name = "wrapWithXFileSearchPathHook";
+      propagatedBuildInputs = [ makeBinaryWrapper ];
+    } (writeScript "wrapWithXFileSearchPathHook.sh" ''
+      wrapWithXFileSearchPath() {
+        paths=(
+          "$out/share/X11/%T/%N"
+          "$out/include/X11/%T/%N"
+          "${xorg.xbitmaps}/include/X11/%T/%N"
+        )
+        for exe in $out/bin/*; do
+          wrapProgram "$exe" \
+            --suffix XFILESEARCHPATH : $(IFS=:; echo "''${paths[*]}")
+        done
+      }
+      postInstallHooks+=(wrapWithXFileSearchPath)
+  '')) {};
+
+  appres = addMainProgram super.appres { };
+
+  bdftopcf = super.bdftopcf.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [ xorg.xorgproto ];
+    meta = attrs.meta // { mainProgram = "bdftopcf"; };
+  });
+
+  bitmap = addMainProgram super.bitmap { };
+
+  editres = super.editres.overrideAttrs (attrs: {
+    hardeningDisable = [ "format" ];
+    meta = attrs.meta // { mainProgram = "editres"; };
+  });
+
+  fontmiscmisc = super.fontmiscmisc.overrideAttrs (attrs: {
+    postInstall =
+      ''
+        ALIASFILE=${xorg.fontalias}/share/fonts/X11/misc/fonts.alias
+        test -f $ALIASFILE
+        cp $ALIASFILE $out/lib/X11/fonts/misc/fonts.alias
+      '';
+  });
+
+  fonttosfnt = super.fonttosfnt.overrideAttrs (attrs: {
+    meta = attrs.meta // {
+      license = lib.licenses.mit;
+      mainProgram = "fonttosfnt";
+    };
+  });
+
+  gccmakedep = addMainProgram super.gccmakedep { };
+  iceauth = addMainProgram super.iceauth { };
+  ico = addMainProgram super.ico { };
+
+  imake = super.imake.overrideAttrs (attrs: {
+    inherit (xorg) xorgcffiles;
+    x11BuildHook = ./imake.sh;
+    patches = [./imake.patch ./imake-cc-wrapper-uberhack.patch];
+    setupHook = ./imake-setup-hook.sh;
+    CFLAGS = "-DIMAKE_COMPILETIME_CPP='\"${if stdenv.isDarwin
+      then "${tradcpp}/bin/cpp"
+      else "gcc"}\"'";
+
+    configureFlags = attrs.configureFlags or [] ++ [ "ac_cv_path_RAWCPP=${stdenv.cc.targetPrefix}cpp" ];
+
+    inherit tradcpp;
+
+    meta = attrs.meta // { mainProgram = "imake"; };
+  });
+
+  mkfontdir = xorg.mkfontscale;
+
+  libxcb = super.libxcb.overrideAttrs (attrs: {
+    # $dev/include/xcb/xcb.h includes pthread.h
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64_pthreads;
+    configureFlags = [ "--enable-xkb" "--enable-xinput" ]
+      ++ lib.optional stdenv.hostPlatform.isStatic "--disable-shared";
+    outputs = [ "out" "dev" "man" "doc" ];
+    meta = attrs.meta // {
+      pkgConfigModules = [
+        "xcb-composite"
+        "xcb-damage"
+        "xcb-dpms"
+        "xcb-dri2"
+        "xcb-dri3"
+        "xcb-glx"
+        "xcb-present"
+        "xcb-randr"
+        "xcb-record"
+        "xcb-render"
+        "xcb-res"
+        "xcb-screensaver"
+        "xcb-shape"
+        "xcb-shm"
+        "xcb-sync"
+        "xcb-xf86dri"
+        "xcb-xfixes"
+        "xcb-xinerama"
+        "xcb-xinput"
+        "xcb-xkb"
+        "xcb-xtest"
+        "xcb-xv"
+        "xcb-xvmc"
+        "xcb"
+      ];
+      platforms = lib.platforms.unix ++ lib.platforms.windows;
+    };
+  });
+
+  libxcvt = super.libxcvt.overrideAttrs ({ meta ? {}, ... }: {
+    meta = meta // {
+      homepage = "https://gitlab.freedesktop.org/xorg/lib/libxcvt";
+      mainProgram = "cvt";
+      badPlatforms = meta.badPlatforms or [] ++ [
+        lib.systems.inspect.platformPatterns.isStatic
+      ];
+    };
+  });
+
+  libX11 = super.libX11.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "man" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    depsBuildBuild = [
+      buildPackages.stdenv.cc
+    ] ++ lib.optionals stdenv.hostPlatform.isStatic [
+      (xorg.buildPackages.stdenv.cc.libc.static or null)
+    ];
+    preConfigure = ''
+      sed 's,^as_dummy.*,as_dummy="\$PATH",' -i configure
+    '';
+    postInstall = ''
+      # Remove useless DocBook XML files.
+      rm -rf $out/share/doc
+    '';
+    CPP = lib.optionalString stdenv.isDarwin "clang -E -";
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.xorgproto ];
+  });
+
+  libAppleWM = super.libAppleWM.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [ ApplicationServices ];
+    preConfigure = ''
+      substituteInPlace src/Makefile.in --replace -F/System -F${ApplicationServices}
+    '';
+  });
+
+  libXau = super.libXau.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.xorgproto ];
+  });
+
+  libXdmcp = super.libXdmcp.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+    meta = attrs.meta // {
+      pkgConfigModules = [ "xdmcp" ];
+    };
+  });
+
+  libXtst = super.libXtst.overrideAttrs (attrs: {
+    meta = attrs.meta // {
+      pkgConfigModules = [ "xtst" ];
+    };
+  });
+
+  libXfont = super.libXfont.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ freetype ]; # propagate link reqs. like bzip2
+    # prevents "misaligned_stack_error_entering_dyld_stub_binder"
+    configureFlags = lib.optional isDarwin "CFLAGS=-O0";
+  });
+
+  libXxf86vm = super.libXxf86vm.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+  libXxf86dga = super.libXxf86dga.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+  libXxf86misc = super.libXxf86misc.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+  libdmx = super.libdmx.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+  libFS = super.libFS.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+  libWindowsWM = super.libWindowsWM.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  listres = addMainProgram super.listres { };
+
+  xdpyinfo = super.xdpyinfo.overrideAttrs (attrs: {
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    preConfigure = attrs.preConfigure or ""
+    # missing transitive dependencies
+    + lib.optionalString stdenv.hostPlatform.isStatic ''
+      export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lXau -lXdmcp"
+    '';
+    meta = attrs.meta // {
+      mainProgram = "xdpyinfo";
+    };
+  });
+
+  xdm = super.xdm.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [ libxcrypt ];
+    configureFlags = attrs.configureFlags or [] ++ [
+      "ac_cv_path_RAWCPP=${stdenv.cc.targetPrefix}cpp"
+    ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform)
+      # checking for /dev/urandom... configure: error: cannot check for file existence when cross compiling
+      [ "ac_cv_file__dev_urandom=true" "ac_cv_file__dev_random=true" ];
+    meta = attrs.meta // { mainProgram = "xdm"; };
+  });
+
+  # Propagate some build inputs because of header file dependencies.
+  # Note: most of these are in Requires.private, so maybe builder.sh
+  # should propagate them automatically.
+  libXt = super.libXt.overrideAttrs (attrs: {
+    preConfigure = ''
+      sed 's,^as_dummy.*,as_dummy="\$PATH",' -i configure
+    '';
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libSM ];
+    depsBuildBuild = [ buildPackages.stdenv.cc ];
+    CPP = if stdenv.isDarwin then "clang -E -" else "${stdenv.cc.targetPrefix}cc -E -";
+    outputDoc = "devdoc";
+    outputs = [ "out" "dev" "devdoc" ];
+  });
+
+  luit = super.luit.overrideAttrs (attrs: {
+    # See https://bugs.freedesktop.org/show_bug.cgi?id=47792
+    # Once the bug is fixed upstream, this can be removed.
+    configureFlags = [ "--disable-selective-werror" ];
+
+    buildInputs = attrs.buildInputs ++ [libiconv];
+    meta = attrs.meta // { mainProgram = "luit"; };
+  });
+
+  libICE = super.libICE.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+  });
+
+  libXcomposite = super.libXcomposite.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libXfixes ];
+  });
+
+  libXaw = super.libXaw.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "devdoc" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libXmu ];
+  });
+
+  libXcursor = super.libXcursor.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+  });
+
+  libXdamage = super.libXdamage.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+  });
+
+  libXft = super.libXft.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libXrender freetype fontconfig ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+
+    # the include files need ft2build.h, and Requires.private isn't enough for us
+    postInstall = ''
+      sed "/^Requires:/s/$/, freetype2/" -i "$dev/lib/pkgconfig/xft.pc"
+    '';
+    passthru = attrs.passthru // {
+      inherit freetype fontconfig;
+    };
+  });
+
+  libXext = super.libXext.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "man" "doc" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.xorgproto xorg.libXau ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  libXfixes = super.libXfixes.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+  });
+
+  libXi = super.libXi.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "man" "doc" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libXfixes xorg.libXext ];
+    configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "xorg_cv_malloc0_returns_null=no"
+    ] ++ lib.optional stdenv.hostPlatform.isStatic "--disable-shared";
+  });
+
+  libXinerama = super.libXinerama.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  libXmu = super.libXmu.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+    buildFlags = [ "BITMAP_DEFINES='-DBITMAPDIR=\"/no-such-path\"'" ];
+  });
+
+  libXrandr = super.libXrandr.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libXrender ];
+  });
+
+  libSM = super.libSM.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libICE ];
+  });
+
+  libXrender = super.libXrender.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.xorgproto ];
+  });
+
+  libXres = super.libXres.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "devdoc" ];
+    buildInputs = with xorg; attrs.buildInputs ++ [ utilmacros ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  libXScrnSaver = super.libXScrnSaver.overrideAttrs (attrs: {
+    buildInputs = with xorg; attrs.buildInputs ++ [ utilmacros ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  libXv = super.libXv.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "devdoc" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+  });
+
+  libXvMC = super.libXvMC.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" "doc" ];
+    configureFlags = attrs.configureFlags or []
+      ++ malloc0ReturnsNullCrossFlag;
+    buildInputs = attrs.buildInputs ++ [xorg.xorgproto];
+  });
+
+  libXp = super.libXp.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+  });
+
+  libXpm = super.libXpm.overrideAttrs (attrs: {
+    outputs = [ "bin" "dev" "out" ]; # tiny man in $bin
+    patchPhase = "sed -i '/USE_GETTEXT_TRUE/d' sxpm/Makefile.in cxpm/Makefile.in";
+    XPM_PATH_COMPRESS = lib.makeBinPath [ ncompress ];
+    meta = attrs.meta // { mainProgram = "sxpm"; };
+  });
+
+  libXpresent = super.libXpresent.overrideAttrs (attrs: {
+    buildInputs = with xorg; attrs.buildInputs ++ [ libXext libXfixes libXrandr ];
+  });
+
+  libxkbfile = super.libxkbfile.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to avoid propagation
+  });
+
+  libxshmfence = super.libxshmfence.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to avoid propagation
+  });
+
+  libpciaccess = super.libpciaccess.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ meson ninja ];
+
+    buildInputs = attrs.buildInputs ++ [ zlib ]
+      ++ lib.optionals stdenv.hostPlatform.isNetBSD (with netbsd; [ libarch libpci ]);
+
+    mesonFlags = [
+      (lib.mesonOption "pci-ids" "${hwdata}/share/hwdata")
+      (lib.mesonEnable "zlib" true)
+    ];
+
+    meta = attrs.meta // {
+      # https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/blob/master/configure.ac#L108-114
+      platforms = lib.fold (os: ps: ps ++ lib.platforms.${os}) []
+        [ "cygwin" "freebsd" "linux" "netbsd" "openbsd" "illumos" ];
+    };
+  });
+
+  libpthreadstubs = super.libpthreadstubs.overrideAttrs (attrs: {
+    # only contains a pkgconfig file on linux and windows
+    meta = attrs.meta // { platforms = lib.platforms.unix ++ lib.platforms.windows; };
+  });
+
+  setxkbmap = super.setxkbmap.overrideAttrs (attrs: {
+    postInstall =
+      ''
+        mkdir -p $out/share/man/man7
+        ln -sfn ${xorg.xkeyboardconfig}/etc/X11 $out/share/X11
+        ln -sfn ${xorg.xkeyboardconfig}/share/man/man7/xkeyboard-config.7.gz $out/share/man/man7
+      '';
+    meta = attrs.meta // { mainProgram = "setxkbmap"; };
+  });
+
+  makedepend = addMainProgram super.makedepend { };
+  mkfontscale = addMainProgram super.mkfontscale { };
+  oclock = addMainProgram super.oclock { };
+  smproxy = addMainProgram super.smproxy { };
+  transset = addMainProgram super.transset { };
+
+  utilmacros = super.utilmacros.overrideAttrs (attrs: { # not needed for releases, we propagate the needed tools
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ automake autoconf libtool ];
+  });
+
+  viewres = addMainProgram super.viewres { };
+
+  x11perf = super.x11perf.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [ freetype fontconfig ];
+    meta = attrs.meta // { mainProgram = "x11perf"; };
+  });
+
+  xcalc = addMainProgram super.xcalc { };
+
+  xcbutil = super.xcbutil.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+  });
+
+  xcbutilerrors = super.xcbutilerrors.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to get rid of propagating others
+  });
+
+  xcbutilcursor = super.xcbutilcursor.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    meta = attrs.meta // { maintainers = [ lib.maintainers.lovek323 ]; };
+  });
+
+  xcbutilimage = super.xcbutilimage.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to get rid of propagating others
+  });
+
+  xcbutilkeysyms = super.xcbutilkeysyms.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to get rid of propagating others
+  });
+
+  xcbutilrenderutil = super.xcbutilrenderutil.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to get rid of propagating others
+  });
+
+  xcbutilwm = super.xcbutilwm.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # mainly to get rid of propagating others
+  });
+
+  xf86inputevdev = super.xf86inputevdev.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # to get rid of xorgserver.dev; man is tiny
+    preBuild = "sed -e '/motion_history_proc/d; /history_size/d;' -i src/*.c";
+    configureFlags = [
+      "--with-sdkdir=${placeholder "dev"}/include/xorg"
+    ];
+  });
+
+  xf86inputmouse = super.xf86inputmouse.overrideAttrs (attrs: {
+    configureFlags = [
+      "--with-sdkdir=${placeholder "out"}/include/xorg"
+    ];
+    meta = attrs.meta // {
+      broken = isDarwin; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86inputmouse.x86_64-darwin
+    };
+  });
+
+  xf86inputjoystick = super.xf86inputjoystick.overrideAttrs (attrs: {
+    configureFlags = [
+      "--with-sdkdir=${placeholder "out"}/include/xorg"
+    ];
+    meta = attrs.meta // {
+      broken = isDarwin; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86inputjoystick.x86_64-darwin
+    };
+  });
+
+  xf86inputkeyboard = super.xf86inputkeyboard.overrideAttrs (attrs: {
+    meta = attrs.meta // {
+      platforms = lib.platforms.freebsd ++ lib.platforms.netbsd ++ lib.platforms.openbsd;
+    };
+  });
+
+  xf86inputlibinput = super.xf86inputlibinput.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ];
+    configureFlags = [
+      "--with-sdkdir=${placeholder "dev"}/include/xorg"
+    ];
+  });
+
+  xf86inputsynaptics = super.xf86inputsynaptics.overrideAttrs (attrs: {
+    outputs = [ "out" "dev" ]; # *.pc pulls xorgserver.dev
+    configureFlags = [
+      "--with-sdkdir=${placeholder "dev"}/include/xorg"
+      "--with-xorg-conf-dir=${placeholder "out"}/share/X11/xorg.conf.d"
+    ];
+  });
+
+  xf86inputvmmouse = super.xf86inputvmmouse.overrideAttrs (attrs: {
+    configureFlags = [
+      "--sysconfdir=${placeholder "out"}/etc"
+      "--with-xorg-conf-dir=${placeholder "out"}/share/X11/xorg.conf.d"
+      "--with-udev-rules-dir=${placeholder "out"}/lib/udev/rules.d"
+    ];
+
+    meta = attrs.meta // {
+      platforms = ["i686-linux" "x86_64-linux"];
+    };
+  });
+
+  xf86inputvoid = brokenOnDarwin super.xf86inputvoid; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86inputvoid.x86_64-darwin
+  xf86videodummy = brokenOnDarwin super.xf86videodummy; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86videodummy.x86_64-darwin
+
+  # Obsolete drivers that don't compile anymore.
+  xf86videoark     = super.xf86videoark.overrideAttrs     (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videogeode   = super.xf86videogeode.overrideAttrs   (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videoglide   = super.xf86videoglide.overrideAttrs   (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videoi128    = super.xf86videoi128.overrideAttrs    (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videonewport = super.xf86videonewport.overrideAttrs (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videos3virge = super.xf86videos3virge.overrideAttrs (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videosavage  = super.xf86videosavage.overrideAttrs  (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videotga     = super.xf86videotga.overrideAttrs     (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videov4l     = super.xf86videov4l.overrideAttrs     (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videovoodoo  = super.xf86videovoodoo.overrideAttrs  (attrs: { meta = attrs.meta // { broken = true; }; });
+  xf86videowsfb    = super.xf86videowsfb.overrideAttrs    (attrs: { meta = attrs.meta // { broken = true; }; });
+
+  xf86videoomap    = super.xf86videoomap.overrideAttrs (attrs: {
+    env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=format-overflow" ];
+  });
+
+  xf86videoamdgpu = super.xf86videoamdgpu.overrideAttrs (attrs: {
+    configureFlags = [ "--with-xorg-conf-dir=$(out)/share/X11/xorg.conf.d" ];
+  });
+
+  xf86videonouveau = super.xf86videonouveau.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook ];
+    buildInputs =  attrs.buildInputs ++ [ xorg.utilmacros ];
+  });
+
+  xf86videoglint = super.xf86videoglint.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook ];
+    buildInputs =  attrs.buildInputs ++ [ xorg.utilmacros ];
+    # https://gitlab.freedesktop.org/xorg/driver/xf86-video-glint/-/issues/1
+    meta = attrs.meta // { broken = true; };
+  });
+
+  xf86videosuncg6 = super.xf86videosuncg6.overrideAttrs (attrs: {
+    meta = attrs.meta // { broken = isDarwin; }; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86videosuncg6.x86_64-darwin
+  });
+
+  xf86videosunffb = super.xf86videosunffb.overrideAttrs (attrs: {
+    meta = attrs.meta // { broken = isDarwin; }; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86videosunffb.x86_64-darwin
+  });
+
+  xf86videosunleo = super.xf86videosunleo.overrideAttrs (attrs: {
+    meta = attrs.meta // { broken = isDarwin; }; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86videosunleo.x86_64-darwin
+  });
+
+  xf86videovmware = super.xf86videovmware.overrideAttrs (attrs: {
+    buildInputs =  attrs.buildInputs ++ [ mesa mesa.driversdev llvm ]; # for libxatracker
+    env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=address" ]; # gcc12
+    meta = attrs.meta // {
+      platforms = ["i686-linux" "x86_64-linux"];
+    };
+  });
+
+  xf86videoqxl = super.xf86videoqxl.overrideAttrs (attrs: {
+    buildInputs =  attrs.buildInputs ++ [ spice-protocol ];
+  });
+
+  xf86videosiliconmotion = super.xf86videosiliconmotion.overrideAttrs (attrs: {
+    meta = attrs.meta // {
+      platforms = ["i686-linux" "x86_64-linux"];
+    };
+  });
+
+  xdriinfo = super.xdriinfo.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [libGL];
+    meta = attrs.meta // { mainProgram = "xdriinfo"; };
+  });
+
+  xev = addMainProgram super.xev { };
+  xeyes = addMainProgram super.xeyes { };
+
+  xvinfo = super.xvinfo.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [xorg.libXext];
+    meta = attrs.meta // { mainProgram = "xvinfo"; };
+  });
+
+  xkbcomp = super.xkbcomp.overrideAttrs (attrs: {
+    configureFlags = [ "--with-xkb-config-root=${xorg.xkeyboardconfig}/share/X11/xkb" ];
+    meta = attrs.meta // { mainProgram = "xkbcomp"; };
+  });
+
+  xkeyboardconfig = super.xkeyboardconfig.overrideAttrs (attrs: {
+    prePatch = ''
+      patchShebangs rules/merge.py rules/compat/map-variants.py rules/xml2lst.pl
+    '';
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [
+      meson
+      ninja
+      python3
+      perl
+      libxslt # xsltproc
+      gettext # msgfmt
+    ];
+    mesonFlags = [
+      (lib.mesonBool "xorg-rules-symlinks" true)
+    ];
+    # 1: compatibility for X11/xkb location
+    # 2: I think pkg-config/ is supposed to be in /lib/
+    postInstall = ''
+      ln -s share "$out/etc"
+      mkdir -p "$out/lib" && ln -s ../share/pkgconfig "$out/lib/"
+    '';
+  });
+
+  # xkeyboardconfig variant extensible with custom layouts.
+  # See nixos/modules/services/x11/extra-layouts.nix
+  xkeyboardconfig_custom = { layouts ? { } }:
+  let
+    patchIn = name: layout:
+    with layout;
+    with lib;
+    ''
+        # install layout files
+        ${optionalString (compatFile   != null) "cp '${compatFile}'   'compat/${name}'"}
+        ${optionalString (geometryFile != null) "cp '${geometryFile}' 'geometry/${name}'"}
+        ${optionalString (keycodesFile != null) "cp '${keycodesFile}' 'keycodes/${name}'"}
+        ${optionalString (symbolsFile  != null) "cp '${symbolsFile}'  'symbols/${name}'"}
+        ${optionalString (typesFile    != null) "cp '${typesFile}'    'types/${name}'"}
+
+        # add model description
+        ${ed}/bin/ed -v rules/base.xml <<EOF
+        /<\/modelList>
+        -
+        a
+        <model>
+          <configItem>
+            <name>${name}</name>
+            <description>${layout.description}</description>
+            <vendor>${layout.description}</vendor>
+          </configItem>
+        </model>
+        .
+        w
+        EOF
+
+        # add layout description
+        ${ed}/bin/ed -v rules/base.xml <<EOF
+        /<\/layoutList>
+        -
+        a
+        <layout>
+          <configItem>
+            <name>${name}</name>
+            <shortDescription>${name}</shortDescription>
+            <description>${layout.description}</description>
+            <languageList>
+              ${concatMapStrings (lang: "<iso639Id>${lang}</iso639Id>\n") layout.languages}
+            </languageList>
+          </configItem>
+          <variantList/>
+        </layout>
+        .
+        w
+        EOF
+    '';
+  in
+    xorg.xkeyboardconfig.overrideAttrs (old: {
+      buildInputs = old.buildInputs ++ [ automake ];
+      postPatch   = with lib; concatStrings (mapAttrsToList patchIn layouts);
+    });
+
+  xlsfonts = super.xlsfonts.overrideAttrs (attrs: {
+    meta = attrs.meta // {
+      license = lib.licenses.mit;
+      mainProgram = "xlsfonts";
+    };
+  });
+
+  xorgproto = super.xorgproto.overrideAttrs (attrs: {
+    buildInputs = [];
+    propagatedBuildInputs = [];
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ meson ninja ];
+    # adds support for printproto needed for libXp
+    mesonFlags = [ "-Dlegacy=true" ];
+
+    patches = [
+      (fetchpatch {
+        url = "https://aur.archlinux.org/cgit/aur.git/plain/meson.patch?h=mingw-w64-xorgproto&id=7b817efc3144a50e6766817c4ca7242f8ce49307";
+        sha256 = "sha256-Izzz9In53W7CC++k1bLr78iSrmxpFm1cH8qcSpptoUQ=";
+      })
+    ];
+    meta = attrs.meta // { platforms = lib.platforms.unix ++ lib.platforms.windows; };
+  });
+
+  xorgserver = with xorg; super.xorgserver.overrideAttrs (attrs_passed:
+    let
+      attrs = attrs_passed // {
+        buildInputs = attrs_passed.buildInputs ++
+          lib.optional (libdrm != null) libdrm.dev;
+        postPatch = ''
+          for i in dri3/*.c
+          do
+            sed -i -e "s|#include <drm_fourcc.h>|#include <libdrm/drm_fourcc.h>|" $i
+          done
+        '';
+        meta = attrs_passed.meta // { mainProgram = "X"; };
+      };
+    in attrs //
+    (let
+      version = lib.getVersion attrs;
+      commonBuildInputs = attrs.buildInputs ++ [ xtrans libxcvt ];
+      commonPropagatedBuildInputs = [
+        dbus libGL libGLU libXext libXfont libXfont2 libepoxy libunwind
+        libxshmfence pixman xorgproto zlib
+      ];
+      # XQuartz requires two compilations: the first to get X / XQuartz,
+      # and the second to get Xvfb, Xnest, etc.
+      darwinOtherX = xorgserver.overrideAttrs (oldAttrs: {
+        configureFlags = oldAttrs.configureFlags ++ [
+          "--disable-xquartz"
+          "--enable-xorg"
+          "--enable-xvfb"
+          "--enable-xnest"
+          "--enable-kdrive"
+        ];
+        postInstall = ":"; # prevent infinite recursion
+      });
+
+      fpgit = commit: sha256: name: fetchpatch (
+        {
+          url = "https://gitlab.freedesktop.org/xorg/xserver/-/commit/${commit}.diff";
+          inherit sha256;
+        } // lib.optionalAttrs (name != null) {
+            name = name + ".patch";
+          }
+      );
+    in
+      if (!isDarwin)
+      then {
+        outputs = [ "out" "dev" ];
+        patches = [
+          # The build process tries to create the specified logdir when building.
+          #
+          # We set it to /var/log which can't be touched from inside the sandbox causing the build to hard-fail
+          ./dont-create-logdir-during-build.patch
+        ];
+        buildInputs = commonBuildInputs ++ [ libdrm mesa ];
+        propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ libpciaccess ] ++ commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [
+          udev
+        ];
+        depsBuildBuild = [ buildPackages.stdenv.cc ];
+        prePatch = lib.optionalString stdenv.hostPlatform.isMusl ''
+          export CFLAGS+=" -D__uid_t=uid_t -D__gid_t=gid_t"
+        '';
+        configureFlags = [
+          "--enable-kdrive"             # not built by default
+          "--enable-xephyr"
+          "--enable-xcsecurity"         # enable SECURITY extension
+          "--with-default-font-path="   # there were only paths containing "${prefix}",
+                                        # and there are no fonts in this package anyway
+          "--with-xkb-bin-directory=${xorg.xkbcomp}/bin"
+          "--with-xkb-path=${xorg.xkeyboardconfig}/share/X11/xkb"
+          "--with-xkb-output=$out/share/X11/xkb/compiled"
+          "--with-log-dir=/var/log"
+          "--enable-glamor"
+          "--with-os-name=Nix" # r13y, embeds the build machine's kernel version otherwise
+        ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+          "--disable-tls"
+        ];
+
+        env.NIX_CFLAGS_COMPILE = toString [
+          # Needed with GCC 12
+          "-Wno-error=array-bounds"
+        ];
+
+        postInstall = ''
+          rm -fr $out/share/X11/xkb/compiled # otherwise X will try to write in it
+          ( # assert() keeps runtime reference xorgserver-dev in xf86-video-intel and others
+            cd "$dev"
+            for f in include/xorg/*.h; do
+              sed "1i#line 1 \"${attrs.pname}-${attrs.version}/$f\"" -i "$f"
+            done
+          )
+        '';
+        passthru = attrs.passthru // {
+          inherit version; # needed by virtualbox guest additions
+        };
+      } else {
+        nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook bootstrap_cmds xorg.utilmacros xorg.fontutil ];
+        buildInputs = commonBuildInputs ++ [
+          bootstrap_cmds automake autoconf
+          Xplugin Carbon Cocoa
+        ];
+        propagatedBuildInputs = commonPropagatedBuildInputs ++ [
+          libAppleWM xorgproto
+        ];
+
+        patches = [
+          # XQuartz patchset
+          (fetchpatch {
+            url = "https://github.com/XQuartz/xorg-server/commit/e88fd6d785d5be477d5598e70d105ffb804771aa.patch";
+            sha256 = "1q0a30m1qj6ai924afz490xhack7rg4q3iig2gxsjjh98snikr1k";
+            name = "use-cppflags-not-cflags.patch";
+          })
+          (fetchpatch {
+            url = "https://github.com/XQuartz/xorg-server/commit/75ee9649bcfe937ac08e03e82fd45d9e18110ef4.patch";
+            sha256 = "1vlfylm011y00j8mig9zy6gk9bw2b4ilw2qlsc6la49zi3k0i9fg";
+            name = "use-old-mitrapezoids-and-mitriangles-routines.patch";
+          })
+          (fetchpatch {
+            url = "https://github.com/XQuartz/xorg-server/commit/c58f47415be79a6564a9b1b2a62c2bf866141e73.patch";
+            sha256 = "19sisqzw8x2ml4lfrwfvavc2jfyq2bj5xcf83z89jdxg8g1gdd1i";
+            name = "revert-fb-changes-1.patch";
+          })
+          (fetchpatch {
+            url = "https://github.com/XQuartz/xorg-server/commit/56e6f1f099d2821e5002b9b05b715e7b251c0c97.patch";
+            sha256 = "0zm9g0g1jvy79sgkvy0rjm6ywrdba2xjd1nsnjbxjccckbr6i396";
+            name = "revert-fb-changes-2.patch";
+          })
+          ./darwin/bundle_main.patch
+          ./darwin/stub.patch
+        ];
+
+        postPatch = attrs.postPatch + ''
+          substituteInPlace hw/xquartz/mach-startup/stub.c \
+            --subst-var-by XQUARTZ_APP "$out/Applications/XQuartz.app"
+        '';
+
+        configureFlags = [
+          # note: --enable-xquartz is auto
+          "CPPFLAGS=-I${./darwin/dri}"
+          "--disable-glamor"
+          "--with-default-font-path="
+          "--with-apple-application-name=XQuartz"
+          "--with-apple-applications-dir=\${out}/Applications"
+          "--with-bundle-id-prefix=org.nixos.xquartz"
+          "--with-sha1=CommonCrypto"
+          "--with-xkb-bin-directory=${xorg.xkbcomp}/bin"
+          "--with-xkb-path=${xorg.xkeyboardconfig}/share/X11/xkb"
+          "--with-xkb-output=$out/share/X11/xkb/compiled"
+          "--without-dtrace" # requires Command Line Tools for Xcode
+        ];
+        preConfigure = ''
+          mkdir -p $out/Applications
+          export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
+          substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${ApplicationServices}
+        '';
+        postInstall = ''
+          rm -fr $out/share/X11/xkb/compiled
+
+          cp -rT ${darwinOtherX}/bin $out/bin
+          rm -f $out/bin/X
+          ln -s Xquartz $out/bin/X
+
+          cp ${darwinOtherX}/share/man -rT $out/share/man
+        '' ;
+        passthru = attrs.passthru // {
+          inherit version;
+        };
+      }));
+
+  lndir = super.lndir.overrideAttrs (attrs: {
+    buildInputs = [];
+    preConfigure = ''
+      export XPROTO_CFLAGS=" "
+      export XPROTO_LIBS=" "
+      substituteInPlace lndir.c \
+        --replace '<X11/Xos.h>' '<string.h>' \
+        --replace '<X11/Xfuncproto.h>' '<unistd.h>' \
+        --replace '_X_ATTRIBUTE_PRINTF(1,2)' '__attribute__((__format__(__printf__,1,2)))' \
+        --replace '_X_ATTRIBUTE_PRINTF(2,3)' '__attribute__((__format__(__printf__,2,3)))' \
+        --replace '_X_NORETURN' '__attribute__((noreturn))' \
+        --replace 'n_dirs--;' ""
+    '';
+    meta = attrs.meta // { mainProgram = "lndir"; };
+  });
+
+  twm = super.twm.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [bison flex];
+    meta = attrs.meta // { mainProgram = "twm"; };
+  });
+
+  xauth = super.xauth.overrideAttrs (attrs: {
+    doCheck = false; # fails
+    preConfigure = attrs.preConfigure or ""
+    # missing transitive dependencies
+    + lib.optionalString stdenv.hostPlatform.isStatic ''
+      export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lxcb -lXau -lXdmcp"
+    '';
+    meta = attrs.meta // { mainProgram = "xauth"; };
+  });
+
+  xbacklight = addMainProgram super.xbacklight { };
+  xclock = addMainProgram super.xclock { };
+  xcmsdb = addMainProgram super.xcmsdb { };
+  xcompmgr = addMainProgram super.xcompmgr { };
+  xconsole = addMainProgram super.xconsole { };
+  xcursorgen = addMainProgram super.xcursorgen { };
+
+  xcursorthemes = super.xcursorthemes.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ xorg.xcursorgen ];
+    buildInputs = attrs.buildInputs ++ [ xorg.xorgproto ];
+    configureFlags = [ "--with-cursordir=$(out)/share/icons" ];
+  });
+
+  xinit = (super.xinit.override {
+    stdenv = if isDarwin then clangStdenv else stdenv;
+  }).overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ lib.optional isDarwin bootstrap_cmds;
+    depsBuildBuild = [ buildPackages.stdenv.cc ];
+    configureFlags = [
+      "--with-xserver=${xorg.xorgserver.out}/bin/X"
+    ] ++ lib.optionals isDarwin [
+      "--with-bundle-id-prefix=org.nixos.xquartz"
+      "--with-launchdaemons-dir=\${out}/LaunchDaemons"
+      "--with-launchagents-dir=\${out}/LaunchAgents"
+    ];
+    postPatch = ''
+      # Avoid replacement of word-looking cpp's builtin macros in Nix's cross-compiled paths
+      substituteInPlace Makefile.in --replace "PROGCPPDEFS =" "PROGCPPDEFS = -Dlinux=linux -Dunix=unix"
+    '';
+    propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.xauth ]
+                         ++ lib.optionals isDarwin [ xorg.libX11 xorg.xorgproto ];
+    postFixup = ''
+      substituteInPlace $out/bin/startx \
+        --replace $out/etc/X11/xinit/xserverrc /etc/X11/xinit/xserverrc \
+        --replace $out/etc/X11/xinit/xinitrc /etc/X11/xinit/xinitrc
+    '';
+    meta = attrs.meta // { mainProgram = "xinit"; };
+  });
+
+  xf86videointel = super.xf86videointel.overrideAttrs (attrs: {
+    # the update script only works with released tarballs :-/
+    name = "xf86-video-intel-2021-01-15";
+    src = fetchFromGitLab {
+      domain = "gitlab.freedesktop.org";
+      group = "xorg";
+      owner = "driver";
+      repo = "xf86-video-intel";
+      rev = "31486f40f8e8f8923ca0799aea84b58799754564";
+      sha256 = "sha256-nqT9VZDb2kAC72ot9UCdwEkM1uuP9NriJePulzrdZlM=";
+    };
+    buildInputs = attrs.buildInputs ++ [ xorg.libXScrnSaver xorg.libXv xorg.pixman xorg.utilmacros ];
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [autoreconfHook ];
+    configureFlags = [ "--with-default-dri=3" "--enable-tools" ];
+    patches = [ ./use_crocus_and_iris.patch ];
+
+    meta = attrs.meta // {
+      platforms = ["i686-linux" "x86_64-linux"];
+    };
+  });
+
+  xf86videoopenchrome = super.xf86videoopenchrome.overrideAttrs (attrs: {
+    buildInputs = attrs.buildInputs ++ [ xorg.libXv ];
+    patches = [
+      # Pull upstream fix for -fno-common toolchains.
+      (fetchpatch {
+        name = "fno-common.patch";
+        url = "https://github.com/freedesktop/openchrome-xf86-video-openchrome/commit/edb46574d4686c59e80569ba236d537097dcdd0e.patch";
+        sha256 = "0xqawg9zzwb7x5vaf3in60isbkl3zfjq0wcnfi45s3hiii943sxz";
+      })
+    ];
+  });
+
+  xf86videoxgi = super.xf86videoxgi.overrideAttrs (attrs: {
+    patches = [
+      # fixes invalid open mode
+      # https://cgit.freedesktop.org/xorg/driver/xf86-video-xgi/commit/?id=bd94c475035739b42294477cff108e0c5f15ef67
+      (fetchpatch {
+        url = "https://cgit.freedesktop.org/xorg/driver/xf86-video-xgi/patch/?id=bd94c475035739b42294477cff108e0c5f15ef67";
+        sha256 = "0myfry07655adhrpypa9rqigd6rfx57pqagcwibxw7ab3wjay9f6";
+      })
+      (fetchpatch {
+        url = "https://cgit.freedesktop.org/xorg/driver/xf86-video-xgi/patch/?id=78d1138dd6e214a200ca66fa9e439ee3c9270ec8";
+        sha256 = "0z3643afgrync280zrp531ija0hqxc5mrwjif9nh9lcnzgnz2d6d";
+      })
+      # Pull upstream fix for -fno-common toolchains.
+      (fetchpatch {
+        name = "fno-common.patch";
+        url = "https://github.com/freedesktop/xorg-xf86-video-xgi/commit/3143bdee580c4d397e21adb0fa35502d4dc8e888.patch";
+        sha256 = "0by6k26rj1xmljnbfd08v90s1f9bkmnf17aclhv50081m83lmm07";
+      })
+    ];
+  });
+
+  xfd = addMainProgram super.xfd { };
+  xfontsel = addMainProgram super.xfontsel { };
+  xfs = addMainProgram super.xfs { };
+  xfsinfo = addMainProgram super.xfsinfo { };
+  xgamma = addMainProgram super.xgamma { };
+  xgc = addMainProgram super.xgc { };
+  xhost = addMainProgram super.xhost { };
+  xinput = addMainProgram super.xinput { };
+  xkbevd = addMainProgram super.xkbevd { };
+  xkbprint = addMainProgram super.xkbprint { };
+  xkill = addMainProgram super.xkill { };
+  xload = addMainProgram super.xload { };
+  xlsatoms = addMainProgram super.xlsatoms { };
+  xlsclients = addMainProgram super.xlsclients { };
+  xmag = addMainProgram super.xmag { };
+  xmessage = addMainProgram super.xmessage { };
+  xmodmap = addMainProgram super.xmodmap { };
+  xmore = addMainProgram super.xmore { };
+
+  xorgcffiles = super.xorgcffiles.overrideAttrs (attrs: {
+    postInstall = lib.optionalString stdenv.isDarwin ''
+      substituteInPlace $out/lib/X11/config/darwin.cf --replace "/usr/bin/" ""
+    '';
+  });
+
+  xorgdocs = super.xorgdocs.overrideAttrs (attrs: {
+    # This makes the man pages discoverable by the default man,
+    # since it looks for packages in $PATH
+    postInstall = "mkdir $out/bin";
+  });
+
+  xpr = addMainProgram super.xpr { };
+  xprop = addMainProgram super.xprop { };
+
+  xrdb = super.xrdb.overrideAttrs (attrs: {
+    configureFlags = [ "--with-cpp=${mcpp}/bin/mcpp" ];
+    meta = attrs.meta // { mainProgram = "xrdb"; };
+  });
+
+  sessreg = super.sessreg.overrideAttrs (attrs: {
+    preBuild = "sed -i 's|gcc -E|gcc -E -P|' man/Makefile";
+    meta = attrs.meta // { mainProgram = "sessreg"; };
+  });
+
+  xrandr = super.xrandr.overrideAttrs (attrs: {
+    postInstall = ''
+      rm $out/bin/xkeystone
+    '';
+    meta = attrs.meta // {
+      mainProgram = "xrandr";
+    };
+  });
+
+  xrefresh = addMainProgram super.xrefresh { };
+  xset = addMainProgram super.xset { };
+  xsetroot = addMainProgram super.xsetroot { };
+  xsm = addMainProgram super.xsm { };
+  xstdcmap = addMainProgram super.xstdcmap { };
+  xwd = addMainProgram super.xwd { };
+  xwininfo = addMainProgram super.xwininfo { };
+  xwud = addMainProgram super.xwud { };
+
+  # convert Type1 vector fonts to OpenType fonts
+  fontbitstreamtype1 = super.fontbitstreamtype1.overrideAttrs (attrs: {
+    nativeBuildInputs = attrs.nativeBuildInputs ++ [ fontforge ];
+
+    postBuild = ''
+      # convert Postscript (Type 1) font to otf
+      for i in $(find -type f -name '*.pfa' -o -name '*.pfb'); do
+          name=$(basename $i | cut -d. -f1)
+          fontforge -lang=ff -c "Open(\"$i\"); Generate(\"$name.otf\")"
+      done
+    '';
+
+    postInstall = ''
+      # install the otf fonts
+      fontDir="$out/lib/X11/fonts/misc/"
+      install -D -m 644 -t "$fontDir" *.otf
+      mkfontscale "$fontDir"
+    '';
+  });
+
+}
+
+# mark some packages as unfree
+// (
+  let
+    # unfree but redistributable
+    redist = [
+      "fontadobeutopiatype1"
+      "fontadobeutopia100dpi"
+      "fontadobeutopia75dpi"
+      "fontbhtype1"
+      "fontibmtype1"
+      "fontbhttf"
+      "fontbh100dpi"
+      "fontbh75dpi"
+
+      # Bigelow & Holmes fonts
+      # https://www.x.org/releases/current/doc/xorg-docs/License.html#Bigelow_Holmes_Inc_and_URW_GmbH_Luxi_font_license
+      "fontbhlucidatypewriter100dpi"
+      "fontbhlucidatypewriter75dpi"
+    ];
+
+    # unfree, possibly not redistributable
+    unfree = [
+      # no license, just a copyright notice
+      "fontdaewoomisc"
+
+      # unclear license, "permission to use"?
+      "fontjismisc"
+    ];
+
+    setLicense = license: name:
+      super.${name}.overrideAttrs (attrs: {
+        meta = attrs.meta // { inherit license; };
+      });
+    mapNamesToAttrs = f: names: with lib;
+      listToAttrs (zipListsWith nameValuePair names (map f names));
+
+  in
+    mapNamesToAttrs (setLicense lib.licenses.unfreeRedistributable) redist //
+    mapNamesToAttrs (setLicense lib.licenses.unfree) unfree
+)
diff --git a/nixpkgs/pkgs/servers/x11/xorg/tarballs.list b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list
new file mode 100644
index 000000000000..1c91ae4794e9
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list
@@ -0,0 +1,221 @@
+https://invisible-mirror.net/archives/luit/luit-20230201.tgz
+mirror://xorg/individual/xcb/libpthread-stubs-0.5.tar.xz
+mirror://xorg/individual/xcb/xcb-util-0.4.1.tar.xz
+mirror://xorg/individual/xcb/xcb-util-errors-1.0.1.tar.xz
+mirror://xorg/individual/xcb/xcb-util-image-0.4.1.tar.xz
+mirror://xorg/individual/xcb/xcb-util-keysyms-0.4.1.tar.xz
+mirror://xorg/individual/xcb/xcb-util-renderutil-0.3.10.tar.xz
+mirror://xorg/individual/xcb/xcb-util-wm-0.4.2.tar.xz
+mirror://xorg/individual/app/appres-1.0.6.tar.xz
+mirror://xorg/individual/app/bitmap-1.1.1.tar.xz
+mirror://xorg/individual/app/editres-1.0.8.tar.xz
+mirror://xorg/individual/app/fonttosfnt-1.2.3.tar.xz
+mirror://xorg/individual/app/iceauth-1.0.9.tar.xz
+mirror://xorg/individual/app/ico-1.0.6.tar.xz
+mirror://xorg/individual/app/listres-1.0.5.tar.xz
+mirror://xorg/individual/app/mkfontscale-1.2.3.tar.xz
+mirror://xorg/individual/app/oclock-1.0.5.tar.xz
+mirror://xorg/individual/app/sessreg-1.1.3.tar.xz
+mirror://xorg/individual/app/setxkbmap-1.3.4.tar.xz
+mirror://xorg/individual/app/smproxy-1.0.7.tar.xz
+mirror://xorg/individual/app/transset-1.0.3.tar.xz
+mirror://xorg/individual/app/twm-1.0.12.tar.xz
+mirror://xorg/individual/app/viewres-1.0.7.tar.xz
+mirror://xorg/individual/app/x11perf-1.6.1.tar.bz2
+mirror://xorg/individual/app/xauth-1.1.3.tar.xz
+mirror://xorg/individual/app/xbacklight-1.2.3.tar.bz2
+mirror://xorg/individual/app/xcalc-1.1.2.tar.xz
+mirror://xorg/individual/app/xclock-1.1.1.tar.xz
+mirror://xorg/individual/app/xcmsdb-1.0.6.tar.xz
+mirror://xorg/individual/app/xcompmgr-1.1.9.tar.xz
+mirror://xorg/individual/app/xconsole-1.0.8.tar.xz
+mirror://xorg/individual/app/xcursorgen-1.0.8.tar.xz
+mirror://xorg/individual/app/xdm-1.1.14.tar.xz
+mirror://xorg/individual/app/xdpyinfo-1.3.4.tar.xz
+mirror://xorg/individual/app/xdriinfo-1.0.7.tar.xz
+mirror://xorg/individual/app/xev-1.2.5.tar.xz
+mirror://xorg/individual/app/xeyes-1.3.0.tar.xz
+mirror://xorg/individual/app/xfd-1.1.4.tar.xz
+mirror://xorg/individual/app/xfontsel-1.1.0.tar.xz
+mirror://xorg/individual/app/xfs-1.2.1.tar.xz
+mirror://xorg/individual/app/xfsinfo-1.0.7.tar.xz
+mirror://xorg/individual/app/xgamma-1.0.7.tar.xz
+mirror://xorg/individual/app/xgc-1.0.6.tar.xz
+mirror://xorg/individual/app/xhost-1.0.9.tar.xz
+mirror://xorg/individual/app/xinit-1.4.2.tar.xz
+mirror://xorg/individual/app/xinput-1.6.4.tar.xz
+mirror://xorg/individual/app/xkbcomp-1.4.7.tar.xz
+mirror://xorg/individual/app/xkbevd-1.1.5.tar.xz
+mirror://xorg/individual/app/xkbprint-1.0.6.tar.xz
+mirror://xorg/individual/app/xkbutils-1.0.6.tar.xz
+mirror://xorg/individual/app/xkill-1.0.6.tar.xz
+mirror://xorg/individual/app/xload-1.1.4.tar.xz
+mirror://xorg/individual/app/xlsatoms-1.1.4.tar.xz
+mirror://xorg/individual/app/xlsclients-1.1.5.tar.xz
+mirror://xorg/individual/app/xlsfonts-1.0.7.tar.xz
+mirror://xorg/individual/app/xmag-1.0.7.tar.xz
+mirror://xorg/individual/app/xmessage-1.0.6.tar.xz
+mirror://xorg/individual/app/xmodmap-1.0.11.tar.xz
+mirror://xorg/individual/app/xmore-1.0.4.tar.xz
+mirror://xorg/individual/app/xpr-1.1.0.tar.xz
+mirror://xorg/individual/app/xprop-1.2.7.tar.xz
+mirror://xorg/individual/app/xrandr-1.5.2.tar.xz
+mirror://xorg/individual/app/xrdb-1.2.2.tar.xz
+mirror://xorg/individual/app/xrefresh-1.0.7.tar.xz
+mirror://xorg/individual/app/xset-1.2.5.tar.xz
+mirror://xorg/individual/app/xsetroot-1.1.3.tar.xz
+mirror://xorg/individual/app/xsm-1.0.5.tar.xz
+mirror://xorg/individual/app/xstdcmap-1.0.5.tar.xz
+mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2
+mirror://xorg/individual/app/xvinfo-1.1.5.tar.xz
+mirror://xorg/individual/app/xwd-1.0.9.tar.xz
+mirror://xorg/individual/app/xwininfo-1.1.6.tar.xz
+mirror://xorg/individual/app/xwud-1.0.6.tar.xz
+mirror://xorg/individual/data/xbitmaps-1.1.3.tar.xz
+mirror://xorg/individual/data/xcursor-themes-1.0.7.tar.xz
+mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.41.tar.xz
+mirror://xorg/individual/doc/xorg-docs-1.7.2.tar.gz
+mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.tar.gz
+mirror://xorg/individual/driver/xf86-input-evdev-2.10.6.tar.bz2
+mirror://xorg/individual/driver/xf86-input-joystick-1.6.4.tar.xz
+mirror://xorg/individual/driver/xf86-input-keyboard-2.0.0.tar.xz
+mirror://xorg/individual/driver/xf86-input-libinput-1.4.0.tar.xz
+mirror://xorg/individual/driver/xf86-input-mouse-1.9.5.tar.xz
+mirror://xorg/individual/driver/xf86-input-synaptics-1.9.2.tar.xz
+mirror://xorg/individual/driver/xf86-input-vmmouse-13.2.0.tar.xz
+mirror://xorg/individual/driver/xf86-input-void-1.4.2.tar.xz
+mirror://xorg/individual/driver/xf86-video-amdgpu-23.0.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-apm-1.3.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-ark-0.7.6.tar.xz
+mirror://xorg/individual/driver/xf86-video-ast-1.1.6.tar.xz
+mirror://xorg/individual/driver/xf86-video-ati-22.0.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-chips-1.4.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-cirrus-1.6.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-dummy-0.4.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-geode-2.11.21.tar.xz
+mirror://xorg/individual/driver/xf86-video-glide-1.2.2.tar.bz2
+mirror://xorg/individual/driver/xf86-video-glint-1.2.9.tar.bz2
+mirror://xorg/individual/driver/xf86-video-i128-1.4.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-i740-1.4.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-intel-2.99.917.tar.bz2
+mirror://xorg/individual/driver/xf86-video-mga-2.0.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-neomagic-1.3.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-newport-0.2.4.tar.bz2
+https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/-/archive/3ee7cbca8f9144a3bb5be7f71ce70558f548d268/xf86-video-nouveau-3ee7cbca8f9144a3bb5be7f71ce70558f548d268.tar.bz2
+mirror://xorg/individual/driver/xf86-video-nv-2.1.22.tar.xz
+mirror://xorg/individual/driver/xf86-video-omap-0.4.5.tar.bz2
+mirror://xorg/individual/driver/xf86-video-openchrome-0.6.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-qxl-0.1.6.tar.xz
+mirror://xorg/individual/driver/xf86-video-r128-6.12.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-rendition-4.2.7.tar.bz2
+mirror://xorg/individual/driver/xf86-video-s3virge-1.11.1.tar.xz
+mirror://xorg/individual/driver/xf86-video-savage-2.4.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.10.tar.xz
+mirror://xorg/individual/driver/xf86-video-sis-0.12.0.tar.gz
+mirror://xorg/individual/driver/xf86-video-sisusb-0.9.7.tar.bz2
+mirror://xorg/individual/driver/xf86-video-suncg6-1.1.3.tar.xz
+mirror://xorg/individual/driver/xf86-video-sunffb-1.2.3.tar.xz
+mirror://xorg/individual/driver/xf86-video-sunleo-1.2.3.tar.xz
+mirror://xorg/individual/driver/xf86-video-tdfx-1.5.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-tga-1.2.2.tar.bz2
+mirror://xorg/individual/driver/xf86-video-trident-1.4.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-v4l-0.3.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-vesa-2.6.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-vmware-13.4.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-voodoo-1.2.6.tar.xz
+mirror://xorg/individual/driver/xf86-video-wsfb-0.4.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-xgi-1.6.1.tar.bz2
+mirror://xorg/individual/font/encodings-1.0.7.tar.xz
+mirror://xorg/individual/font/font-adobe-75dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-adobe-100dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.5.tar.xz
+mirror://xorg/individual/font/font-adobe-utopia-100dpi-1.0.5.tar.xz
+mirror://xorg/individual/font/font-adobe-utopia-type1-1.0.5.tar.xz
+mirror://xorg/individual/font/font-alias-1.0.5.tar.xz
+mirror://xorg/individual/font/font-arabic-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-75dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-100dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-lucidatypewriter-75dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-lucidatypewriter-100dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-ttf-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bh-type1-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bitstream-75dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bitstream-100dpi-1.0.4.tar.xz
+mirror://xorg/individual/font/font-bitstream-speedo-1.0.2.tar.gz
+mirror://xorg/individual/font/font-bitstream-type1-1.0.4.tar.xz
+mirror://xorg/individual/font/font-cronyx-cyrillic-1.0.4.tar.xz
+mirror://xorg/individual/font/font-cursor-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-daewoo-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-dec-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-ibm-type1-1.0.4.tar.xz
+mirror://xorg/individual/font/font-isas-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-jis-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-micro-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-misc-cyrillic-1.0.4.tar.xz
+mirror://xorg/individual/font/font-misc-ethiopic-1.0.5.tar.xz
+mirror://xorg/individual/font/font-misc-meltho-1.0.4.tar.xz
+mirror://xorg/individual/font/font-misc-misc-1.1.3.tar.xz
+mirror://xorg/individual/font/font-mutt-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-schumacher-misc-1.1.3.tar.xz
+mirror://xorg/individual/font/font-screen-cyrillic-1.0.5.tar.xz
+mirror://xorg/individual/font/font-sony-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-sun-misc-1.0.4.tar.xz
+mirror://xorg/individual/font/font-util-1.4.1.tar.xz
+mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.4.tar.xz
+mirror://xorg/individual/font/font-xfree86-type1-1.0.5.tar.xz
+mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2
+mirror://xorg/individual/lib/libdmx-1.1.5.tar.xz
+mirror://xorg/individual/lib/libfontenc-1.1.7.tar.xz
+mirror://xorg/individual/lib/libFS-1.0.9.tar.xz
+mirror://xorg/individual/lib/libICE-1.1.1.tar.xz
+mirror://xorg/individual/lib/libpciaccess-0.18.tar.xz
+mirror://xorg/individual/lib/libSM-1.2.4.tar.xz
+mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2
+mirror://xorg/individual/lib/libX11-1.8.7.tar.xz
+mirror://xorg/individual/lib/libXau-1.0.11.tar.xz
+mirror://xorg/individual/lib/libXaw-1.0.15.tar.xz
+mirror://xorg/individual/lib/libxcb-1.16.tar.xz
+mirror://xorg/individual/lib/libXcomposite-0.4.6.tar.xz
+mirror://xorg/individual/lib/libXcursor-1.2.2.tar.xz
+mirror://xorg/individual/lib/libxcvt-0.1.2.tar.xz
+mirror://xorg/individual/lib/libXdamage-1.1.6.tar.xz
+mirror://xorg/individual/lib/libXdmcp-1.1.4.tar.xz
+mirror://xorg/individual/lib/libXext-1.3.6.tar.xz
+mirror://xorg/individual/lib/libXfixes-6.0.1.tar.xz
+mirror://xorg/individual/lib/libXfont-1.5.4.tar.bz2
+mirror://xorg/individual/lib/libXfont2-2.0.6.tar.xz
+mirror://xorg/individual/lib/libXft-2.3.8.tar.xz
+mirror://xorg/individual/lib/libXi-1.8.1.tar.xz
+mirror://xorg/individual/lib/libXinerama-1.1.5.tar.xz
+mirror://xorg/individual/lib/libxkbfile-1.1.3.tar.xz
+mirror://xorg/individual/lib/libXmu-1.1.4.tar.xz
+mirror://xorg/individual/lib/libXp-1.0.4.tar.xz
+mirror://xorg/individual/lib/libXpm-3.5.17.tar.xz
+mirror://xorg/individual/lib/libXpresent-1.0.1.tar.xz
+mirror://xorg/individual/lib/libXrandr-1.5.4.tar.xz
+mirror://xorg/individual/lib/libXrender-0.9.11.tar.xz
+mirror://xorg/individual/lib/libXres-1.2.2.tar.xz
+mirror://xorg/individual/lib/libXScrnSaver-1.2.4.tar.xz
+mirror://xorg/individual/lib/libxshmfence-1.3.2.tar.xz
+mirror://xorg/individual/lib/libXTrap-1.0.1.tar.bz2
+mirror://xorg/individual/lib/libXt-1.3.0.tar.xz
+mirror://xorg/individual/lib/libXtst-1.2.4.tar.xz
+mirror://xorg/individual/lib/libXv-1.0.12.tar.xz
+mirror://xorg/individual/lib/libXvMC-1.0.14.tar.xz
+mirror://xorg/individual/lib/libXxf86dga-1.1.6.tar.xz
+mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2
+mirror://xorg/individual/lib/libXxf86vm-1.1.5.tar.xz
+mirror://xorg/individual/lib/xcb-util-cursor-0.1.5.tar.xz
+mirror://xorg/individual/lib/xtrans-1.5.0.tar.xz
+mirror://xorg/individual/proto/xcb-proto-1.16.0.tar.xz
+mirror://xorg/individual/proto/xorgproto-2023.2.tar.xz
+mirror://xorg/individual/util/bdftopcf-1.1.1.tar.xz
+mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2
+mirror://xorg/individual/util/imake-1.0.10.tar.xz
+mirror://xorg/individual/util/lndir-1.0.4.tar.xz
+mirror://xorg/individual/util/makedepend-1.0.9.tar.xz
+mirror://xorg/individual/util/util-macros-1.20.0.tar.xz
+mirror://xorg/individual/util/xorg-cf-files-1.0.8.tar.xz
+mirror://xorg/individual/xserver/xorg-server-21.1.11.tar.xz
diff --git a/nixpkgs/pkgs/servers/x11/xorg/use_crocus_and_iris.patch b/nixpkgs/pkgs/servers/x11/xorg/use_crocus_and_iris.patch
new file mode 100644
index 000000000000..54744f463bd9
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/use_crocus_and_iris.patch
@@ -0,0 +1,28 @@
+--- a/src/uxa/intel_dri.c
++++ b/src/uxa/intel_dri.c
+@@ -1540,8 +1540,10 @@
+ 			return has_i830_dri() ? "i830" : "i915";
+ 		else if (INTEL_INFO(intel)->gen < 040)
+ 			return "i915";
++		else if (INTEL_INFO(intel)->gen < 0100)
++			return "crocus";
+ 		else
+-			return "i965";
++			return "iris";
+ 	}
+ 
+ 	return s;
+--- a/src/sna/sna_dri2.c
++++ b/src/sna/sna_dri2.c
+@@ -3707,8 +3707,10 @@
+ 			return has_i830_dri() ? "i830" : "i915";
+ 		else if (sna->kgem.gen < 040)
+ 			return "i915";
++		else if (sna->kgem.gen < 0100)
++			return "crocus";
+ 		else
+-			return "i965";
++			return "iris";
+ 	}
+ 
+ 	return s;
diff --git a/nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix b/nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix
new file mode 100644
index 000000000000..0235ad29cc6e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix
@@ -0,0 +1,24 @@
+{ lib, stdenv, fetchurl, pkg-config, m4, libxcb, xcbutil, libX11 }:
+
+stdenv.mkDerivation rec {
+  version = "1.3";
+  pname = "xcb-util-xrm";
+
+  src = fetchurl {
+    url = "https://github.com/Airblader/xcb-util-xrm/releases/download/v${version}/${pname}-${version}.tar.bz2";
+    sha256 = "118cj1ybw86pgw0l5whn9vbg5n5b0ijcpx295mwahzi004vz671h";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ pkg-config m4 ];
+  doCheck = true;
+  buildInputs = [ libxcb xcbutil libX11 ];
+
+  meta = with lib; {
+    description = "XCB utility functions for the X resource manager";
+    homepage = "https://github.com/Airblader/xcb-util-xrm";
+    license = licenses.mit; # X11 variant
+    platforms = with platforms; unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix b/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
new file mode 100644
index 000000000000..6b2efa04a5c4
--- /dev/null
+++ b/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
@@ -0,0 +1,126 @@
+{ egl-wayland
+, libepoxy
+, fetchurl
+, fontutil
+, lib
+, libei
+, libGL
+, libGLU
+, libX11
+, libXau
+, libXaw
+, libXdmcp
+, libXext
+, libXfixes
+, libXfont2
+, libXmu
+, libXpm
+, libXrender
+, libXres
+, libXt
+, libdrm
+, libtirpc
+, withLibunwind ? true, libunwind
+, libxcb
+, libxkbfile
+, libxshmfence
+, libxcvt
+, mesa
+, meson
+, ninja
+, openssl
+, pkg-config
+, pixman
+, stdenv
+, wayland
+, wayland-protocols
+, wayland-scanner
+, xkbcomp
+, xkeyboard_config
+, xorgproto
+, xtrans
+, zlib
+, defaultFontPath ? ""
+, gitUpdater
+}:
+
+stdenv.mkDerivation rec {
+  pname = "xwayland";
+  version = "23.2.4";
+
+  src = fetchurl {
+    url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz";
+    sha256 = "sha256-qZ4Vm20NMwmLO2qyKoi/zs4jyLnQynLFNcVdywaBtGs=";
+  };
+
+  depsBuildBuild = [
+    pkg-config
+  ];
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    wayland-scanner
+  ];
+  buildInputs = [
+    egl-wayland
+    libepoxy
+    libei
+    fontutil
+    libGL
+    libGLU
+    libX11
+    libXau
+    libXaw
+    libXdmcp
+    libXext
+    libXfixes
+    libXfont2
+    libXmu
+    libXpm
+    libXrender
+    libXres
+    libXt
+    libdrm
+    libtirpc
+    libxcb
+    libxkbfile
+    libxshmfence
+    libxcvt
+    mesa
+    openssl
+    pixman
+    wayland
+    wayland-protocols
+    xkbcomp
+    xorgproto
+    xtrans
+    zlib
+  ] ++ lib.optionals withLibunwind [
+    libunwind
+  ];
+  mesonFlags = [
+    (lib.mesonBool "xwayland_eglstream" true)
+    (lib.mesonBool "xcsecurity" true)
+    (lib.mesonOption "default_font_path" defaultFontPath)
+    (lib.mesonOption "xkb_bin_dir" "${xkbcomp}/bin")
+    (lib.mesonOption "xkb_dir" "${xkeyboard_config}/etc/X11/xkb")
+    (lib.mesonOption "xkb_output_dir" "${placeholder "out"}/share/X11/xkb/compiled")
+    (lib.mesonBool "libunwind" withLibunwind)
+  ];
+
+  passthru.updateScript = gitUpdater {
+    # No nicer place to find latest release.
+    url = "https://gitlab.freedesktop.org/xorg/xserver.git";
+    rev-prefix = "xwayland-";
+  };
+
+  meta = with lib; {
+    description = "An X server for interfacing X11 apps with the Wayland protocol";
+    homepage = "https://wayland.freedesktop.org/xserver.html";
+    license = licenses.mit;
+    mainProgram = "Xwayland";
+    maintainers = with maintainers; [ emantor ];
+    platforms = platforms.linux;
+  };
+}