diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/x11/xorg')
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/.gitignore | 1 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/builder.sh | 40 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/darwin/dri/GL/internal/dri_interface.h | 1409 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/default.nix | 2915 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/dont-create-logdir-during-build.patch | 32 | ||||
-rwxr-xr-x | nixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl | 322 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/imake-cc-wrapper-uberhack.patch | 13 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/imake-setup-hook.sh | 19 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/imake.patch | 37 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/imake.sh | 6 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/overrides.nix | 923 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/tarballs.list | 221 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix | 23 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/xwayland.nix | 40 |
14 files changed, 6001 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..5a832cb14d53 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/builder.sh @@ -0,0 +1,40 @@ +# 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 + +genericBuild 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/default.nix b/nixpkgs/pkgs/servers/x11/xorg/default.nix new file mode 100644 index 000000000000..441d8834e086 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/default.nix @@ -0,0 +1,2915 @@ +# THIS IS A GENERATED FILE. DO NOT EDIT! +{ lib, newScope, pixman }: + +lib.makeScope newScope (self: with self; { + + inherit pixman; + + appres = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXt }: stdenv.mkDerivation { + name = "appres-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/appres-1.0.5.tar.bz2"; + sha256 = "0a2r4sxky3k7b3kdb5pbv709q9b5zi3gxjz336wl66f828vqkbgz"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + bdftopcf = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "bdftopcf-1.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/bdftopcf-1.1.tar.bz2"; + sha256 = "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + bitmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, xbitmaps, libXmu, xorgproto, libXt }: stdenv.mkDerivation { + name = "bitmap-1.0.9"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/bitmap-1.0.9.tar.gz"; + sha256 = "0kzbv5wh02798l77y9y8d8sjkmzm9cvsn3rjh8a86v5waj50apsb"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw xbitmaps libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + editres = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt }: stdenv.mkDerivation { + name = "editres-1.0.7"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/editres-1.0.7.tar.bz2"; + sha256 = "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + encodings = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "encodings-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/encodings-1.0.5.tar.bz2"; + sha256 = "0caafx0yqqnqyvbalxhh3mb0r9v36xmcy5zjhygb2i508dhy35mx"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontadobe100dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-adobe-100dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-adobe-100dpi-1.0.3.tar.bz2"; + sha256 = "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontadobe75dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-adobe-75dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-adobe-75dpi-1.0.3.tar.bz2"; + sha256 = "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontadobeutopia100dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-adobe-utopia-100dpi-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-adobe-utopia-100dpi-1.0.4.tar.bz2"; + sha256 = "19dd9znam1ah72jmdh7i6ny2ss2r6m21z9v0l43xvikw48zmwvyi"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontadobeutopia75dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-adobe-utopia-75dpi-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.4.tar.bz2"; + sha256 = "152wigpph5wvl4k9m3l4mchxxisgsnzlx033mn5iqrpkc6f72cl7"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontadobeutopiatype1 = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-adobe-utopia-type1-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-adobe-utopia-type1-1.0.4.tar.bz2"; + sha256 = "0xw0pdnzj5jljsbbhakc6q9ha2qnca1jr81zk7w70yl9bw83b54p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontalias = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "font-alias-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-alias-1.0.3.tar.bz2"; + sha256 = "16ic8wfwwr3jicaml7b5a0sk6plcgc1kg84w02881yhwmqm3nicb"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontarabicmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-arabic-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-arabic-misc-1.0.3.tar.bz2"; + sha256 = "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbh100dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-100dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-100dpi-1.0.3.tar.bz2"; + sha256 = "10cl4gm38dw68jzln99ijix730y7cbx8np096gmpjjwff1i73h13"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbh75dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-75dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-75dpi-1.0.3.tar.bz2"; + sha256 = "073jmhf0sr2j1l8da97pzsqj805f7mf9r2gy92j4diljmi8sm1il"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbhlucidatypewriter100dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-lucidatypewriter-100dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2"; + sha256 = "1fqzckxdzjv4802iad2fdrkpaxl4w0hhs9lxlkyraq2kq9ik7a32"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbhlucidatypewriter75dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-lucidatypewriter-75dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2"; + sha256 = "0cfbxdp5m12cm7jsh3my0lym9328cgm7fa9faz2hqj05wbxnmhaa"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbhttf = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-ttf-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-ttf-1.0.3.tar.bz2"; + sha256 = "0pyjmc0ha288d4i4j0si4dh3ncf3jiwwjljvddrb0k8v4xiyljqv"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbhtype1 = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-bh-type1-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bh-type1-1.0.3.tar.bz2"; + sha256 = "1hb3iav089albp4sdgnlh50k47cdjif9p4axm0kkjvs8jyi5a53n"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbitstream100dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-bitstream-100dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bitstream-100dpi-1.0.3.tar.bz2"; + sha256 = "1kmn9jbck3vghz6rj3bhc3h0w6gh0qiaqm90cjkqsz1x9r2dgq7b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbitstream75dpi = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-bitstream-75dpi-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bitstream-75dpi-1.0.3.tar.bz2"; + sha256 = "13plbifkvfvdfym6gjbgy9wx2xbdxi9hfrl1k22xayy02135wgxs"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontbitstreamtype1 = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-bitstream-type1-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-bitstream-type1-1.0.3.tar.bz2"; + sha256 = "1256z0jhcf5gbh1d03593qdwnag708rxqa032izmfb5dmmlhbsn6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontcronyxcyrillic = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-cronyx-cyrillic-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-cronyx-cyrillic-1.0.3.tar.bz2"; + sha256 = "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontcursormisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-cursor-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-cursor-misc-1.0.3.tar.bz2"; + sha256 = "0dd6vfiagjc4zmvlskrbjz85jfqhf060cpys8j0y1qpcbsrkwdhp"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontdaewoomisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-daewoo-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-daewoo-misc-1.0.3.tar.bz2"; + sha256 = "1s2bbhizzgbbbn5wqs3vw53n619cclxksljvm759h9p1prqdwrdw"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontdecmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-dec-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-dec-misc-1.0.3.tar.bz2"; + sha256 = "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontibmtype1 = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-ibm-type1-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-ibm-type1-1.0.3.tar.bz2"; + sha256 = "1pyjll4adch3z5cg663s6vhi02k8m6488f0mrasg81ssvg9jinzx"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontisasmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-isas-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-isas-misc-1.0.3.tar.bz2"; + sha256 = "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontjismisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-jis-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-jis-misc-1.0.3.tar.bz2"; + sha256 = "0rdc3xdz12pnv951538q6wilx8mrdndpkphpbblszsv7nc8cw61b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmicromisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-micro-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-micro-misc-1.0.3.tar.bz2"; + sha256 = "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmisccyrillic = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-misc-cyrillic-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-misc-cyrillic-1.0.3.tar.bz2"; + sha256 = "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmiscethiopic = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-misc-ethiopic-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-misc-ethiopic-1.0.3.tar.bz2"; + sha256 = "19cq7iq0pfad0nc2v28n681fdq3fcw1l1hzaq0wpkgpx7bc1zjsk"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmiscmeltho = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-misc-meltho-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-misc-meltho-1.0.3.tar.bz2"; + sha256 = "148793fqwzrc3bmh2vlw5fdiwjc2n7vs25cic35gfp452czk489p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmiscmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-misc-misc-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-misc-misc-1.1.2.tar.bz2"; + sha256 = "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontmuttmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-mutt-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-mutt-misc-1.0.3.tar.bz2"; + sha256 = "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontschumachermisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, fontutil, mkfontscale }: stdenv.mkDerivation { + name = "font-schumacher-misc-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-schumacher-misc-1.1.2.tar.bz2"; + sha256 = "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf fontutil mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontscreencyrillic = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-screen-cyrillic-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-screen-cyrillic-1.0.4.tar.bz2"; + sha256 = "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontsonymisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-sony-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-sony-misc-1.0.3.tar.bz2"; + sha256 = "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontsunmisc = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-sun-misc-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-sun-misc-1.0.3.tar.bz2"; + sha256 = "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fonttosfnt = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, freetype, xorgproto }: stdenv.mkDerivation { + name = "fonttosfnt-1.2.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/fonttosfnt-1.2.1.tar.bz2"; + sha256 = "16r51h5wfy85wnbq3q8v8a184hb25c3ksjgix0mlcywdz7qkbj07"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libfontenc freetype xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontutil = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "font-util-1.3.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-util-1.3.1.tar.bz2"; + sha256 = "08drjb6cf84pf5ysghjpb4i7xkd2p86k3wl2a0jxs1jif6qbszma"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontwinitzkicyrillic = callPackage ({ stdenv, pkg-config, fetchurl, bdftopcf, mkfontscale }: stdenv.mkDerivation { + name = "font-winitzki-cyrillic-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.3.tar.bz2"; + sha256 = "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config bdftopcf mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + fontxfree86type1 = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale }: stdenv.mkDerivation { + name = "font-xfree86-type1-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/font/font-xfree86-type1-1.0.4.tar.bz2"; + sha256 = "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config mkfontscale ]; + buildInputs = [ ]; + configureFlags = [ "--with-fontrootdir=$(out)/lib/X11/fonts" ]; + meta.platforms = lib.platforms.unix; + }) {}; + + gccmakedep = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "gccmakedep-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2"; + sha256 = "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + iceauth = callPackage ({ stdenv, pkg-config, fetchurl, libICE, xorgproto }: stdenv.mkDerivation { + name = "iceauth-1.0.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/iceauth-1.0.8.tar.bz2"; + sha256 = "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + ico = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "ico-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/ico-1.0.5.tar.bz2"; + sha256 = "0gvpwfk9kvlfn631dgizc45qc2qqjn9pavdp2q7qb3drkvr64fyp"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + imake = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "imake-1.0.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/imake-1.0.8.tar.bz2"; + sha256 = "00m7l90ws72k1qm101sd2rx92ckd50cszyng5d4dd77jncbf9lmq"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libAppleWM = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libAppleWM-1.4.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2"; + sha256 = "0r8x28n45q89x91mz8mv0zkkcxi8wazkac886fyvflhiv2y8ap2y"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libFS = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xtrans }: stdenv.mkDerivation { + name = "libFS-1.0.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libFS-1.0.8.tar.bz2"; + sha256 = "03xxyvpfa3rhqcld4p2chkil482jn9cp80hj17jdybcv2hkkgqf8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xtrans ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libICE = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xtrans }: stdenv.mkDerivation { + name = "libICE-1.0.10"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libICE-1.0.10.tar.bz2"; + sha256 = "0j638yvmyna2k4mz465jywgdybgdchdqppfx6xfazg7l5khxr1kg"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xtrans ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libSM = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libuuid, xorgproto, xtrans }: stdenv.mkDerivation { + name = "libSM-1.2.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libSM-1.2.3.tar.bz2"; + sha256 = "1fwwfq9v3sqmpzpscymswxn76xhxnysa24pfim1mcpxhvjcl89id"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE libuuid xorgproto xtrans ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libWindowsWM = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libWindowsWM-1.0.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2"; + sha256 = "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libxcb, xtrans }: stdenv.mkDerivation { + name = "libX11-1.7.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libX11-1.7.0.tar.bz2"; + sha256 = "0m6bfwllr3pq2c00l51y62yiq15kphc8dw69zf67qhwmclxzkj1n"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libxcb xtrans ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXScrnSaver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libXScrnSaver-1.2.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXScrnSaver-1.2.3.tar.bz2"; + sha256 = "1y4vx1vabg7j9hamp0vrfrax5b0lmgm3h0lbgbb3hnkv3dd0f5zr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXTrap = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXt }: stdenv.mkDerivation { + name = "libXTrap-1.0.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXTrap-1.0.1.tar.bz2"; + sha256 = "0bi5wxj6avim61yidh9fd3j4n8czxias5m8vss9vhxjnk1aksdwg"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXau = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "libXau-1.0.9"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXau-1.0.9.tar.bz2"; + sha256 = "1v3krc6x0zliaa66qq1bf9j60x5nqfy68v8axaiglxpnvgqcpy6c"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXaw = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXmu, libXpm, libXt }: stdenv.mkDerivation { + name = "libXaw-1.0.14"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXaw-1.0.14.tar.bz2"; + sha256 = "13kg59r3086383g1dyhnwxanhp2frssh9062mrgn34nzlf7gkbkn"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto libXmu libXpm libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXaw3d = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXmu, libXpm, xorgproto, libXt }: stdenv.mkDerivation { + name = "libXaw3d-1.6.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXaw3d-1.6.3.tar.bz2"; + sha256 = "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext libXmu libXpm xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXcomposite = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes }: stdenv.mkDerivation { + name = "libXcomposite-0.4.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXcomposite-0.4.5.tar.bz2"; + sha256 = "13sfcglvz87vl58hd9rszwr73z0z4nwga3c12rfh7f5s2ln8l8dk"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXfixes ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXcursor = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes, libXrender }: stdenv.mkDerivation { + name = "libXcursor-1.2.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXcursor-1.2.0.tar.bz2"; + sha256 = "10l7c9fm0jmpkm9ab9dz8r6m1pr87vvgqjnbx1psz50h4pwfklrs"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXfixes libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXdamage = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXfixes }: stdenv.mkDerivation { + name = "libXdamage-1.1.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXdamage-1.1.5.tar.bz2"; + sha256 = "0igaw2akjf712y3rv7lx473jigxmcv9rs9y8sbrvbhya8f30cd5p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXfixes ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXdmcp = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "libXdmcp-1.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXdmcp-1.1.3.tar.bz2"; + sha256 = "0ab53h0rkq721ihk5hi469x500f3pgbkm1wy01yf24x5m923nli0"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXext = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "libXext-1.3.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXext-1.3.4.tar.bz2"; + sha256 = "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXfixes = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11 }: stdenv.mkDerivation { + name = "libXfixes-5.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXfixes-5.0.3.tar.bz2"; + sha256 = "1miana3y4hwdqdparsccmygqr3ic3hs5jrqfzp70hvi2zwxd676y"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXfont = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, xorgproto, freetype, xtrans, zlib }: stdenv.mkDerivation { + name = "libXfont-1.5.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXfont-1.5.4.tar.bz2"; + sha256 = "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libfontenc xorgproto freetype xtrans zlib ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXfont2 = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, xorgproto, freetype, xtrans, zlib }: stdenv.mkDerivation { + name = "libXfont2-2.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXfont2-2.0.4.tar.bz2"; + sha256 = "1rk9pjxcm01lbr1dxhnvk4f2qrn6zp068qjbvvz5w0z5d0rin5bd"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libfontenc xorgproto freetype xtrans zlib ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXft = callPackage ({ stdenv, pkg-config, fetchurl, fontconfig, freetype, libX11, xorgproto, libXrender }: stdenv.mkDerivation { + name = "libXft-2.3.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXft-2.3.3.tar.bz2"; + sha256 = "05lja9s54090xwh31r0bqms4v3pimng5xr09g2rdnafx2vk6hp12"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ fontconfig freetype libX11 xorgproto libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXi = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXfixes }: stdenv.mkDerivation { + name = "libXi-1.7.10"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXi-1.7.10.tar.bz2"; + sha256 = "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXfixes ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXinerama = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto }: stdenv.mkDerivation { + name = "libXinerama-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXinerama-1.1.4.tar.bz2"; + sha256 = "086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXmu = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt }: stdenv.mkDerivation { + name = "libXmu-1.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXmu-1.1.3.tar.bz2"; + sha256 = "0cdpqnx6258i4l6qhphvkdiyspysg0i5caqjy820kp63wwjk4d4w"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXp = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXau, libXext }: stdenv.mkDerivation { + name = "libXp-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXp-1.0.3.tar.bz2"; + sha256 = "0mwc2jwmq03b1m9ihax5c6gw2ln8rc70zz4fsj3kb7440nchqdkz"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXau libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXpm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt, gettext }: stdenv.mkDerivation { + name = "libXpm-3.5.13"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXpm-3.5.13.tar.bz2"; + sha256 = "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config gettext ]; + buildInputs = [ libX11 libXext xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXpresent = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11 }: stdenv.mkDerivation { + name = "libXpresent-1.0.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2"; + sha256 = "12kvvar3ihf6sw49h6ywfdiwmb8i1gh8wasg1zhzp6hs2hay06n1"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXrandr = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXrender }: stdenv.mkDerivation { + name = "libXrandr-1.5.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXrandr-1.5.2.tar.bz2"; + sha256 = "08z0mqywrm7ij8bxlfrx0d2wy6kladdmkva1nw5k6qix82z0xsla"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXrender = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11 }: stdenv.mkDerivation { + name = "libXrender-0.9.10"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXrender-0.9.10.tar.bz2"; + sha256 = "0j89cnb06g8x79wmmnwzykgkkfdhin9j7hjpvsxwlr3fz1wmjvf0"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXres = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libXres-1.2.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXres-1.2.1.tar.bz2"; + sha256 = "049b7dk6hx47161hg47ryjrm6pwsp27r5pby05b0wqb1pcggprmn"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXt = callPackage ({ stdenv, pkg-config, fetchurl, libICE, xorgproto, libSM, libX11 }: stdenv.mkDerivation { + name = "libXt-1.2.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXt-1.2.1.tar.bz2"; + sha256 = "0q1x7842r8rcn2m0q4q9f69h4qa097fyizs8brzx5ns62s7w1737"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE xorgproto libSM libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXtst = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXi }: stdenv.mkDerivation { + name = "libXtst-1.2.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXtst-1.2.3.tar.bz2"; + sha256 = "012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXi ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXv = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libXv-1.0.11"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXv-1.0.11.tar.bz2"; + sha256 = "125hn06bd3d8y97hm2pbf5j55gg4r2hpd3ifad651i4sr7m16v6j"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXvMC = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXv }: stdenv.mkDerivation { + name = "libXvMC-1.0.12"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXvMC-1.0.12.tar.bz2"; + sha256 = "1kbdjsvkm5l7axv7g477qj18sab2wnqhliy6197syzizgfbsfgbb"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXv ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXxf86dga = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto }: stdenv.mkDerivation { + name = "libXxf86dga-1.1.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXxf86dga-1.1.5.tar.bz2"; + sha256 = "00vjvcdlc1sga251jkxn6gkxmx9h5n290ffxxpa40qbca1gvr61b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXxf86misc = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto }: stdenv.mkDerivation { + name = "libXxf86misc-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2"; + sha256 = "107k593sx27vjz3v7gbb223add9i7w0bjc90gbb3jqpin3i07758"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libXxf86vm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto }: stdenv.mkDerivation { + name = "libXxf86vm-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libXxf86vm-1.1.4.tar.bz2"; + sha256 = "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libdmx = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext }: stdenv.mkDerivation { + name = "libdmx-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libdmx-1.1.4.tar.bz2"; + sha256 = "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libfontenc = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, zlib }: stdenv.mkDerivation { + name = "libfontenc-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libfontenc-1.1.4.tar.bz2"; + sha256 = "0y90170dp8wsidr1dzza0grxr1lfh30ji3b5vkjz4j6x1n0wxz1c"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto zlib ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libpciaccess = callPackage ({ stdenv, pkg-config, fetchurl, zlib }: stdenv.mkDerivation { + name = "libpciaccess-0.16"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libpciaccess-0.16.tar.bz2"; + sha256 = "12glp4w1kgvmqn89lk19cgr6jccd3awxra4dxisp7pagi06rsk11"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ zlib ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libpthreadstubs = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "libpthread-stubs-0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/libpthread-stubs-0.4.tar.bz2"; + sha256 = "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libxcb = callPackage ({ stdenv, pkg-config, fetchurl, libxslt, libpthreadstubs, libXau, xcbproto, libXdmcp, python3 }: stdenv.mkDerivation { + name = "libxcb-1.14"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libxcb-1.14.tar.xz"; + sha256 = "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config python3 ]; + buildInputs = [ libxslt libpthreadstubs libXau xcbproto libXdmcp ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libxkbfile = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11 }: stdenv.mkDerivation { + name = "libxkbfile-1.1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libxkbfile-1.1.0.tar.bz2"; + sha256 = "1irq9crvscd3yb8sr802dhvvfr35jdy1n2yz094xplmd42mbv3bm"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + libxshmfence = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "libxshmfence-1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/libxshmfence-1.3.tar.bz2"; + sha256 = "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + listres = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXmu, xorgproto, libXt }: stdenv.mkDerivation { + name = "listres-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/listres-1.0.4.tar.bz2"; + sha256 = "041bxkvv6f92sm3hhm977c4gdqdv5r1jyxjqcqfi8vkrg3s2j4ka"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXaw libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + lndir = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "lndir-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/lndir-1.0.3.tar.bz2"; + sha256 = "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + luit = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "luit-20190106"; + builder = ./builder.sh; + src = fetchurl { + url = "https://invisible-mirror.net/archives/luit/luit-20190106.tgz"; + sha256 = "081rrajj5hpgx3pvm43grqzscnq5kl320q0wq6zzhf6wrijhz41b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + makedepend = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "makedepend-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2"; + sha256 = "072h9nzh8s5vqfz35dli4fba36fnr219asjrb7p89n8ph0paan6m"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + mkfontscale = callPackage ({ stdenv, pkg-config, fetchurl, libfontenc, freetype, xorgproto, zlib }: stdenv.mkDerivation { + name = "mkfontscale-1.2.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/mkfontscale-1.2.1.tar.bz2"; + sha256 = "1ixsnsm2mn0zy9ksdid0lj6irnhvasfik9mz8bbrs5sajzmra16a"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libfontenc freetype xorgproto zlib ]; + meta.platforms = lib.platforms.unix; + }) {}; + + oclock = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, libX11, libXext, libXmu, libXt }: stdenv.mkDerivation { + name = "oclock-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/oclock-1.0.4.tar.bz2"; + sha256 = "1zmfzfmdp42nvapf0qz1bc3i3waq5sjrpkgfw64qs4nmq30wy86c"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libxkbfile libX11 libXext libXmu libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + sessreg = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation { + name = "sessreg-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/sessreg-1.1.2.tar.bz2"; + sha256 = "0crczl25zynkrslmm8sjaxszhrh4i33m7h5fg4wfdb3k8aarxjyz"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + setxkbmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile }: stdenv.mkDerivation { + name = "setxkbmap-1.3.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/setxkbmap-1.3.2.tar.bz2"; + sha256 = "1xdrxs65v7d0rw1yaz0vsz55w4hxym99216p085ya9978j379wlg"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libxkbfile ]; + meta.platforms = lib.platforms.unix; + }) {}; + + smproxy = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libXmu, libXt }: stdenv.mkDerivation { + name = "smproxy-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/smproxy-1.0.6.tar.bz2"; + sha256 = "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE libSM libXmu libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + transset = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "transset-1.0.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/transset-1.0.2.tar.bz2"; + sha256 = "088v8p0yfn4r3azabp6662hqikfs2gjb9xmjjd45gnngwwp19b2b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + twm = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libX11, libXext, libXmu, xorgproto, libXt }: stdenv.mkDerivation { + name = "twm-1.0.10"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/twm-1.0.10.tar.bz2"; + sha256 = "1ms5cj1w3g26zg6bxdv1j9hl0pxr4300qnv003cz1q3cl7ffljb4"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE libSM libX11 libXext libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + utilmacros = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "util-macros-1.19.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2"; + sha256 = "0w8ryfqylprz37zj9grl4jzdsqq67ibfwq5raj7vm1i7kmp2x08g"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + viewres = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXmu, libXt }: stdenv.mkDerivation { + name = "viewres-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/viewres-1.0.5.tar.bz2"; + sha256 = "1mz319kfmvcrdpi22dmdr91mif1j0j3ck1f8mmnz5g1r9kl1in2y"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXaw libXmu libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + x11perf = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXft, libXmu, xorgproto, libXrender }: stdenv.mkDerivation { + name = "x11perf-1.6.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/x11perf-1.6.1.tar.bz2"; + sha256 = "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext libXft libXmu xorgproto libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xauth = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXext, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xauth-1.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xauth-1.1.tar.bz2"; + sha256 = "032klzzw8r09z36x1272ssd79bcisz8j5p8gbdy111fiknvx27bd"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXau libXext libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xbacklight = callPackage ({ stdenv, pkg-config, fetchurl, libxcb, xcbutil }: stdenv.mkDerivation { + name = "xbacklight-1.2.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xbacklight-1.2.3.tar.bz2"; + sha256 = "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libxcb xcbutil ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xbitmaps = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "xbitmaps-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/data/xbitmaps-1.1.2.tar.bz2"; + sha256 = "1vh73sc13s7w5r6gnc6irca56s7998bja7wgdivkfn8jccawgw5r"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcalc = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, xorgproto, libXt }: stdenv.mkDerivation { + name = "xcalc-1.1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xcalc-1.1.0.tar.bz2"; + sha256 = "1sxmlcb0sb3h4z05kl5l0kxnhrc0h8c74p9m3zdc7bv58jaldmym"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbproto = callPackage ({ stdenv, pkg-config, fetchurl, python3 }: stdenv.mkDerivation { + name = "xcb-proto-1.14.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/proto/xcb-proto-1.14.1.tar.xz"; + sha256 = "1hzwazgyywd9mz4mjj1yv8ski27qqx7ypmyr27m39hrajyddsjph"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config python3 ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutil = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-0.4.0"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.bz2"; + sha256 = "1sahmrgbpyki4bb72hxym0zvxwnycmswsxiisgqlln9vrdlr9r26"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilcursor = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbutilimage, xcbutilrenderutil, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-cursor-0.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.3.tar.bz2"; + sha256 = "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xcbutilimage xcbutilrenderutil xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilerrors = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbproto, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-errors-1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-errors-1.0.tar.bz2"; + sha256 = "158rm913dg3hxrrhyvvxr8bcm0pjy5jws70dhy2s12w1krv829k8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xcbproto xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilimage = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xcbutil, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-image-0.4.0"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.bz2"; + sha256 = "1z1gxacg7q4cw6jrd26gvi5y04npsyavblcdad1xccc8swvnmf9d"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xcbutil xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilkeysyms = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-keysyms-0.4.0"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2"; + sha256 = "1nbd45pzc1wm6v5drr5338j4nicbgxa5hcakvsvm5pnyy47lky0f"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilrenderutil = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-renderutil-0.3.9"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2"; + sha256 = "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcbutilwm = callPackage ({ stdenv, pkg-config, fetchurl, gperf, libxcb, xorgproto, m4 }: stdenv.mkDerivation { + name = "xcb-util-wm-0.4.1"; + builder = ./builder.sh; + src = fetchurl { + url = "https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2"; + sha256 = "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config m4 ]; + buildInputs = [ gperf libxcb xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xclock = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXft, libxkbfile, libXmu, xorgproto, libXrender, libXt }: stdenv.mkDerivation { + name = "xclock-1.0.9"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xclock-1.0.9.tar.bz2"; + sha256 = "1fr3q4rszgx7x2zxy2ip592a3fgx20hfwac49p2l5b7jqsr1ying"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw libXft libxkbfile libXmu xorgproto libXrender libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcmsdb = callPackage ({ stdenv, pkg-config, fetchurl, libX11 }: stdenv.mkDerivation { + name = "xcmsdb-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xcmsdb-1.0.5.tar.bz2"; + sha256 = "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcompmgr = callPackage ({ stdenv, pkg-config, fetchurl, libXcomposite, libXdamage, libXext, libXfixes, libXrender }: stdenv.mkDerivation { + name = "xcompmgr-1.1.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xcompmgr-1.1.8.tar.bz2"; + sha256 = "0hvjkanrdlvk3ln5a1jx3c9ggziism2jr1na7jl3zyk0y3sdm28b"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXcomposite libXdamage libXext libXfixes libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xconsole = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt }: stdenv.mkDerivation { + name = "xconsole-1.0.7"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xconsole-1.0.7.tar.bz2"; + sha256 = "1q2ib1626i5da0nda09sp3vzppjrcn82fff83cw7hwr0vy14h56i"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcursorgen = callPackage ({ stdenv, pkg-config, fetchurl, libpng, libX11, libXcursor }: stdenv.mkDerivation { + name = "xcursorgen-1.0.7"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xcursorgen-1.0.7.tar.bz2"; + sha256 = "0ggbv084cavp52hjgcz3vdj0g018axs0m23c03lpc5sgn92gidim"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libpng libX11 libXcursor ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xcursorthemes = callPackage ({ stdenv, pkg-config, fetchurl, libXcursor }: stdenv.mkDerivation { + name = "xcursor-themes-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/data/xcursor-themes-1.0.6.tar.bz2"; + sha256 = "16a96li0s0ggg60v7f6ywxmsrmxdfizcw55ccv7sp4qjfisca7pf"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXcursor ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xdm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXaw, libXdmcp, libXext, libXft, libXinerama, libXmu, libXpm, xorgproto, libXrender, libXt }: stdenv.mkDerivation { + name = "xdm-1.1.12"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xdm-1.1.12.tar.bz2"; + sha256 = "1x17hdymf6rd8jmh4n1sd4g5a8ayr5w94nwjw84qs2fs5pvq7lhd"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm xorgproto libXrender libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xdpyinfo = callPackage ({ stdenv, pkg-config, fetchurl, libdmx, libX11, libxcb, libXcomposite, libXext, libXi, libXinerama, xorgproto, libXrender, libXtst, libXxf86dga, libXxf86misc, libXxf86vm }: stdenv.mkDerivation { + name = "xdpyinfo-1.3.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xdpyinfo-1.3.2.tar.bz2"; + sha256 = "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xorgproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xdriinfo = callPackage ({ stdenv, pkg-config, fetchurl, libGL, xorgproto, libX11 }: stdenv.mkDerivation { + name = "xdriinfo-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xdriinfo-1.0.6.tar.bz2"; + sha256 = "0lcx8h3zd11m4w8wf7dyp89826d437iz78cyrix436bqx31x5k6r"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libGL xorgproto libX11 ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xev = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXrandr }: stdenv.mkDerivation { + name = "xev-1.2.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xev-1.2.3.tar.bz2"; + sha256 = "02ddsdx138g7szhwklpbzi0cxr34871iay3k28kdcihrz8f4zg36"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto libXrandr ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xeyes = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXmu, xorgproto, libXrender, libXt }: stdenv.mkDerivation { + name = "xeyes-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xeyes-1.1.2.tar.bz2"; + sha256 = "0lq5j7fryx1wn998jq6h3icz1h6pqrsbs3adskjzjyhn5l6yrg2p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext libXmu xorgproto libXrender libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputevdev = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libevdev, udev, mtdev, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-evdev-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libevdev udev mtdev xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputjoystick = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-joystick-1.6.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-joystick-1.6.3.tar.bz2"; + sha256 = "1awfq496d082brgjbr60lhm6jvr9537rflwxqdfqwfzjy3n6jxly"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputkeyboard = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-keyboard-1.9.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-keyboard-1.9.0.tar.bz2"; + sha256 = "12032yg412kyvnmc5fha1in7mpi651d8sa1bk4138s2j2zr01jgp"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputlibinput = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libinput, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-libinput-1.0.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-libinput-1.0.1.tar.bz2"; + sha256 = "0nr4r9x8c7y1l0ipivjch5zps093mxmg2nqmfn2934am26fc9ppx"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libinput xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputmouse = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-mouse-1.9.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-mouse-1.9.3.tar.bz2"; + sha256 = "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputsynaptics = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libevdev, libX11, libXi, xorgserver, libXtst }: stdenv.mkDerivation { + name = "xf86-input-synaptics-1.9.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-synaptics-1.9.1.tar.bz2"; + sha256 = "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libevdev libX11 libXi xorgserver libXtst ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputvmmouse = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, udev, xorgserver }: stdenv.mkDerivation { + name = "xf86-input-vmmouse-13.1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-vmmouse-13.1.0.tar.bz2"; + sha256 = "06ckn4hlkpig5vnivl0zj8a7ykcgvrsj8b3iccl1pgn1gaamix8a"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto udev xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86inputvoid = callPackage ({ stdenv, pkg-config, fetchurl, xorgserver, xorgproto }: stdenv.mkDerivation { + name = "xf86-input-void-1.4.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-input-void-1.4.1.tar.bz2"; + sha256 = "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgserver xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoamdgpu = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, mesa, libGL, libdrm, udev, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-amdgpu-19.1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-amdgpu-19.1.0.tar.bz2"; + sha256 = "0pgy4ihnja0vm8504qw7qxh3pdpa3p9k6967nz15m6b1mvha83jg"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto mesa libGL libdrm udev xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoapm = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-apm-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoark = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-ark-0.7.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-ark-0.7.5.tar.bz2"; + sha256 = "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoast = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-ast-1.1.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-ast-1.1.5.tar.bz2"; + sha256 = "1pm2cy81ma7ldsw0yfk28b33h9z2hcj5rccrxhfxfgvxsiavrnqy"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoati = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, mesa, libGL, libdrm, udev, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-ati-19.1.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-ati-19.1.0.tar.bz2"; + sha256 = "0j9w4axsqlycv4v14g53xyhkm9h7d27b2fcv9lrzb9gf54b5m7v5"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto mesa libGL libdrm udev libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videochips = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-chips-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videocirrus = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-cirrus-1.5.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-cirrus-1.5.3.tar.bz2"; + sha256 = "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videodummy = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-dummy-0.3.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-dummy-0.3.8.tar.bz2"; + sha256 = "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videofbdev = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-fbdev-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videogeode = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-geode-2.11.19"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-geode-2.11.19.tar.bz2"; + sha256 = "0zn9gb49grds5mcs1dlrx241k2w1sgqmx4i5x7v6159xxqhlqsf6"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoglide = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-glide-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoglint = callPackage ({ stdenv, pkg-config, fetchurl, libpciaccess, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-glint-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libpciaccess xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoi128 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-i128-1.4.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-i128-1.4.0.tar.bz2"; + sha256 = "1snhpv1igrhifcls3r498kjd14ml6x2xvih7zk9xlsd1ymmhlb4g"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoi740 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-i740-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + 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 }: stdenv.mkDerivation { + name = "xf86-video-intel-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ cairo xorgproto libdrm libpng udev libpciaccess libX11 xcbutil libxcb libXcursor libXdamage libXext libXfixes xorgserver libXrandr libXrender libxshmfence libXtst libXvMC ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videomach64 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-mach64-6.9.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-mach64-6.9.6.tar.bz2"; + sha256 = "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videomga = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-mga-2.0.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-mga-2.0.0.tar.bz2"; + sha256 = "0yaxpgyyj9398nzzr5vnsfxcis76z46p9814yzj8179yl7hld296"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoneomagic = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-neomagic-1.3.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-neomagic-1.3.0.tar.bz2"; + sha256 = "0r4h673kw8fl7afc30anwbjlbhp82mg15fvaxf470xg7z983k0wk"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videonewport = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-newport-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videonouveau = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-nouveau-1.0.17"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-nouveau-1.0.17.tar.bz2"; + sha256 = "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm udev libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videonv = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-nv-2.1.21"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-nv-2.1.21.tar.bz2"; + sha256 = "0bdk3pc5y0n7p53q4gc2ff7bw16hy5hwdjjxkm5j3s7hdyg6960z"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoomap = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-omap-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoopenchrome = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, libX11, libXext, xorgserver, libXvMC }: stdenv.mkDerivation { + name = "xf86-video-openchrome-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm udev libpciaccess libX11 libXext xorgserver libXvMC ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoqxl = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-qxl-0.1.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-qxl-0.1.5.tar.bz2"; + sha256 = "14jc24znnahhmz4kqalafmllsg8awlz0y6gpgdpk5ih38ph851mi"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm udev libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videor128 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-r128-6.11.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-r128-6.11.0.tar.bz2"; + sha256 = "0snvwmrh8dqyyaq7ggicym6yrsg4brygkx9156r0m095m7fp3rav"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videorendition = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-rendition-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videos3virge = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-s3virge-1.11.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-s3virge-1.11.0.tar.bz2"; + sha256 = "06d1v5s7xf00y18x12cz11sk00rgn0yq95w66kmgzy465pzxvj84"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosavage = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-savage-2.3.9"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-savage-2.3.9.tar.bz2"; + sha256 = "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosiliconmotion = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-siliconmotion-1.7.9"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.9.tar.bz2"; + sha256 = "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosis = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-sis-0.11.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-sis-0.11.0.tar.bz2"; + sha256 = "0srvrhydjnynfb7b1s145rgmsk4f71iz0ag4icpmb05944d90xr1"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosisusb = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-sisusb-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosuncg6 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-suncg6-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-suncg6-1.1.2.tar.bz2"; + sha256 = "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosunffb = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-sunffb-1.2.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-sunffb-1.2.2.tar.bz2"; + sha256 = "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videosunleo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-sunleo-1.2.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-sunleo-1.2.2.tar.bz2"; + sha256 = "1gacm0s6rii4x5sx9py5bhvs50jd4vs3nnbwjdjymyf31kpdirl3"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videotdfx = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-tdfx-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videotga = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-tga-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videotrident = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-trident-1.3.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-trident-1.3.8.tar.bz2"; + sha256 = "0gxcar434kx813fxdpb93126lhmkl3ikabaljhcj5qn3fkcijlcy"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videov4l = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-v4l-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videovboxvideo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-vboxvideo-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videovesa = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-vesa-2.5.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-vesa-2.5.0.tar.bz2"; + sha256 = "0nf6ai74c60xk96kgr8q9mx6lrxm5id3765ws4d801irqzrj85hz"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videovmware = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, udev, libpciaccess, libX11, libXext, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-vmware-13.3.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-vmware-13.3.0.tar.bz2"; + sha256 = "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm udev libpciaccess libX11 libXext xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videovoodoo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-voodoo-1.2.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/driver/xf86-video-voodoo-1.2.5.tar.bz2"; + sha256 = "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videowsfb = callPackage ({ stdenv, pkg-config, fetchurl, xorgserver, xorgproto }: stdenv.mkDerivation { + name = "xf86-video-wsfb-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgserver xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xf86videoxgi = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver }: stdenv.mkDerivation { + name = "xf86-video-xgi-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" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm libpciaccess xorgserver ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xfd = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, fontconfig, libXaw, libXft, libXmu, xorgproto, libXrender, libXt, gettext }: stdenv.mkDerivation { + name = "xfd-1.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xfd-1.1.3.tar.bz2"; + sha256 = "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config gettext ]; + buildInputs = [ libxkbfile fontconfig libXaw libXft libXmu xorgproto libXrender libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xfontsel = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, libXt }: stdenv.mkDerivation { + name = "xfontsel-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xfontsel-1.0.6.tar.bz2"; + sha256 = "0700lf6hx7dg88wq1yll7zjvf9gbwh06xff20yffkxb289y0pai5"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw libXmu libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xfs = callPackage ({ stdenv, pkg-config, fetchurl, libXfont2, xorgproto, xtrans }: stdenv.mkDerivation { + name = "xfs-1.2.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xfs-1.2.0.tar.bz2"; + sha256 = "0q4q4rbzx159sfn2n52y039fki6nc6a39qdfxa78yjc3aw8i48nv"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXfont2 xorgproto xtrans ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xfsinfo = callPackage ({ stdenv, pkg-config, fetchurl, libFS, xorgproto }: stdenv.mkDerivation { + name = "xfsinfo-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xfsinfo-1.0.6.tar.bz2"; + sha256 = "1mmir5i7gm71xc0ba8vnizi4744vsd31hknhi4cmgvg6kadqngla"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libFS xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xgamma = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXxf86vm }: stdenv.mkDerivation { + name = "xgamma-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xgamma-1.0.6.tar.bz2"; + sha256 = "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto libXxf86vm ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xgc = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt }: stdenv.mkDerivation { + name = "xgc-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xgc-1.0.5.tar.bz2"; + sha256 = "0pigvjd3i9fchmj1inqy151aafz3dr0vq1h2zizdb2imvadqv0hl"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXaw libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xhost = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xhost-1.0.8"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xhost-1.0.8.tar.bz2"; + sha256 = "15n3mnd4i5kh4z32qv11580qjgvnng0wry2y753ljrqkkrbkrp52"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXau libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xinit = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xinit-1.4.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xinit-1.4.1.tar.bz2"; + sha256 = "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xinput = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXext, libXi, libXinerama, libXrandr }: stdenv.mkDerivation { + name = "xinput-1.6.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xinput-1.6.3.tar.bz2"; + sha256 = "1vb6xdd1xmk5f7pwc5zcbxfray5sf1vbnscqwf2yl8lv7gfq38im"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXext libXi libXinerama libXrandr ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkbcomp = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, xorgproto }: stdenv.mkDerivation { + name = "xkbcomp-1.4.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xkbcomp-1.4.5.tar.bz2"; + sha256 = "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libxkbfile xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkbevd = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile }: stdenv.mkDerivation { + name = "xkbevd-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xkbevd-1.1.4.tar.bz2"; + sha256 = "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libxkbfile ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkbprint = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxkbfile, xorgproto }: stdenv.mkDerivation { + name = "xkbprint-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xkbprint-1.0.4.tar.bz2"; + sha256 = "04iyv5z8aqhabv7wcpvbvq0ji0jrz1666vw6gvxkvl7szswalgqb"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libxkbfile xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkbutils = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libX11, libXaw, libXt }: stdenv.mkDerivation { + name = "xkbutils-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xkbutils-1.0.4.tar.bz2"; + sha256 = "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libX11 libXaw libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkeyboardconfig = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, python3 }: stdenv.mkDerivation { + name = "xkeyboard-config-2.31"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.31.tar.bz2"; + sha256 = "18xddaxh83zm698syh50w983jg6b7b8zgv0dfaf7ha485hgihi6s"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config python3 ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xkill = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xkill-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xkill-1.0.5.tar.bz2"; + sha256 = "0szzd9nzn0ybkhnfyizb876irwnjsnb78rcaxx6prb71jmmbpw65"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xload = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, gettext }: stdenv.mkDerivation { + name = "xload-1.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xload-1.1.3.tar.bz2"; + sha256 = "01sr6yd6yhyyfgn88l867w6h9dn5ikcynaz5rwji6xqxhw1lhkpk"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config gettext ]; + buildInputs = [ libX11 libXaw libXmu xorgproto libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xlsatoms = callPackage ({ stdenv, pkg-config, fetchurl, libxcb }: stdenv.mkDerivation { + name = "xlsatoms-1.1.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xlsatoms-1.1.3.tar.bz2"; + sha256 = "10m3a046jvaw5ywx4y65kl84lsxqan70gww1g1r7cf96ijaqz1jp"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libxcb ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xlsclients = callPackage ({ stdenv, pkg-config, fetchurl, libxcb }: stdenv.mkDerivation { + name = "xlsclients-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xlsclients-1.1.4.tar.bz2"; + sha256 = "1h8931sn34mcip6vpi4v7hdmr1r58gkbw4s2p97w98kykks2lgvp"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libxcb ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xlsfonts = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xlsfonts-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xlsfonts-1.0.6.tar.bz2"; + sha256 = "0s6kxgv78chkwsqmhw929f4pf91gq63f4yvixxnan1h00cx0pf49"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xmag = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, libXt }: stdenv.mkDerivation { + name = "xmag-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xmag-1.0.6.tar.bz2"; + sha256 = "0qg12ifbbk9n8fh4jmyb625cknn8ssj86chd6zwdiqjin8ivr8l7"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXaw libXmu libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xmessage = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt }: stdenv.mkDerivation { + name = "xmessage-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xmessage-1.0.5.tar.bz2"; + sha256 = "0a90kfm0qz8cn2pbpqfyqrc5s9bfvvy14nj848ynvw56wy0zng9p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXaw libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xmodmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xmodmap-1.0.10"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xmodmap-1.0.10.tar.bz2"; + sha256 = "0z28331i2pm16x671fa9qwsfqdmr6a43bzwmp0dm17a3sx0hjgs7"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xmore = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt }: stdenv.mkDerivation { + name = "xmore-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xmore-1.0.3.tar.bz2"; + sha256 = "06r514p30v87vx00ddlck9mwazaqk9bx08ip866p1mw2a46iwjk4"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXaw libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xorgcffiles = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "xorg-cf-files-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2"; + sha256 = "0kckng0zs1viz0nr84rdl6dswgip7ndn4pnh5nfwnviwpsfmmksd"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xorgdocs = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "xorg-docs-1.7.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/doc/xorg-docs-1.7.1.tar.bz2"; + sha256 = "0jrc4jmb4raqawx0j9jmhgasr0k6sxv0bm2hrxjh9hb26iy6gf14"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xorgproto = callPackage ({ stdenv, pkg-config, fetchurl, libXt }: stdenv.mkDerivation { + name = "xorgproto-2021.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/proto/xorgproto-2021.3.tar.bz2"; + sha256 = "0dypp7cvjf0rvwa7cn1zp7djw5ynhs1rwk9p0r1vczbwzha2nwsc"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xorgserver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, openssl, libX11, libXau, libXaw, libxcb, xcbutil, xcbutilwm, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, libXdmcp, libXfixes, libxkbfile, libXmu, libXpm, libXrender, libXres, libXt }: stdenv.mkDerivation { + name = "xorg-server-1.20.11"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2"; + sha256 = "0jacqgin8kcyy8fyv0lhgb4if8g9hp60rm3ih3s1mgps7xp7jk4i"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xorgsgmldoctools = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "xorg-sgml-doctools-1.11"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/doc/xorg-sgml-doctools-1.11.tar.bz2"; + sha256 = "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xpr = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xpr-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xpr-1.0.5.tar.bz2"; + sha256 = "07qy9lwjvxighcmg6qvjkgagad3wwvidrfx0jz85lgynz3qy0dmr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xprop = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xprop-1.2.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xprop-1.2.5.tar.bz2"; + sha256 = "18ckr8g1z50zkc01hprkpm1npwbq32yqib4b3l98c95z2q1yv4lv"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xrandr = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXrandr, libXrender }: stdenv.mkDerivation { + name = "xrandr-1.5.1"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xrandr-1.5.1.tar.xz"; + sha256 = "0ql75s1n3dm2m3g1ilb9l6hqh15r0v709bgghpwazy3jknpnvivv"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto libXrandr libXrender ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xrdb = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xrdb-1.2.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xrdb-1.2.0.tar.bz2"; + sha256 = "0ik9gh6363c47pr0dp7q22nfs8vmavjg2v4bsr0604ppl77nafpj"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xrefresh = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xrefresh-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xrefresh-1.0.6.tar.bz2"; + sha256 = "0lv3rlshh7s0z3aqx5ahnnf8cl082m934bk7gv881mz8nydznz98"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xset = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXmu, xorgproto, libXxf86misc }: stdenv.mkDerivation { + name = "xset-1.2.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xset-1.2.4.tar.bz2"; + sha256 = "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXext libXmu xorgproto libXxf86misc ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xsetroot = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xbitmaps, libXcursor, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xsetroot-1.1.2"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xsetroot-1.1.2.tar.bz2"; + sha256 = "0z21mqvmdl6rl63q77479wgkfygnll57liza1i3va7sr4fx45i0h"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xbitmaps libXcursor libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xsm = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libX11, libXaw, libXt }: stdenv.mkDerivation { + name = "xsm-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xsm-1.0.4.tar.bz2"; + sha256 = "09a4ss1fnrh1sgm21r4n5pivawf34paci3rn6mscyljf7a4vcd4r"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libICE libSM libX11 libXaw libXt ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xstdcmap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto }: stdenv.mkDerivation { + name = "xstdcmap-1.0.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xstdcmap-1.0.4.tar.bz2"; + sha256 = "12vgzsxv4rw25frkgjyli6w6hy10lgpvsx9wzw2v5l5a3qzqp286"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXmu xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xtrans = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation { + name = "xtrans-1.4.0"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/lib/xtrans-1.4.0.tar.bz2"; + sha256 = "0wyp0yc6gi72hwc3kjmvm3vkj9p6s407cb6dxx37jh9wb68l8z1p"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xtrap = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXt, libXTrap }: stdenv.mkDerivation { + name = "xtrap-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2"; + sha256 = "0sqm4j1zflk1s94iq4waa70hna1xcys88v9a70w0vdw66czhvj2j"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libXt libXTrap ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xvinfo = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXv }: stdenv.mkDerivation { + name = "xvinfo-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xvinfo-1.1.4.tar.bz2"; + sha256 = "0gz7fvxavqlrqynpfbrm2nc9yx8h0ksnbnv34fj7n1q6cq6j4lq3"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto libXv ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xwd = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, libX11, xorgproto }: stdenv.mkDerivation { + name = "xwd-1.0.7"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xwd-1.0.7.tar.bz2"; + sha256 = "1537i8q8pgf0sjklakzfvjwrq5b246qjywrx9ll8xfg0p6w1as6d"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libxkbfile libX11 xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xwininfo = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libxcb, xorgproto }: stdenv.mkDerivation { + name = "xwininfo-1.1.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xwininfo-1.1.4.tar.bz2"; + sha256 = "00avrpw4h5mr1klp41lv2j4dmq465v6l5kb5bhm4k5ml8sm9i543"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 libxcb xorgproto ]; + meta.platforms = lib.platforms.unix; + }) {}; + + xwud = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto }: stdenv.mkDerivation { + name = "xwud-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/app/xwud-1.0.5.tar.bz2"; + sha256 = "1a8hdgy40smvblnh3s9f0vkqckl68nmivx7d48zk34m8z18p16cr"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libX11 xorgproto ]; + meta.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..b50f3f33a310 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -0,0 +1,322 @@ +#! /usr/bin/env perl + +# Usage: +# +# manually update tarballs.list +# then run: cat tarballs.list | perl ./generate-expr-from-tarballs.pl + + +use strict; +use warnings; + +use File::Basename; +use File::Spec::Functions; +use File::Temp; + + +my %pkgURLs; +my %pkgHashes; +my %pkgNames; +my %pkgRequires; +my %pkgNativeRequires; + +my %pcMap; + +my %extraAttrs; + + +my @missingPCs = ("fontconfig", "libdrm", "libXaw", "zlib", "perl", "python3", "mkfontscale", "bdftopcf", "libxslt", "openssl", "gperf", "m4", "libinput", "libevdev", "mtdev", "xorgproto", "cairo", "gettext" ); +$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{"\$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/-//g; + #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; + } + + $pkgURLs{$pkg} = $tarball; + $pkgNames{$pkg} = $pkgName; + + 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//; + 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/) { + 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 @{$extraAttrs{$pkg}}, "configureFlags = [ \"--with-fontrootdir=\$(out)/lib/X11/fonts\" ];"; + } + + 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, "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, newScope, pixman }: + +lib.makeScope newScope (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; + + my @arguments = @buildInputs; + push @arguments, @nativeBuildInputs; + unshift @arguments, "stdenv", "pkg-config", "fetchurl"; + my $argumentsStr = join ", ", @arguments; + + my $extraAttrsStr = ""; + if (defined $extraAttrs{$pkg}) { + $extraAttrsStr = join "", map { "\n " . $_ } @{$extraAttrs{$pkg}}; + } + + print OUT <<EOF + $pkg = callPackage ({ $argumentsStr }: stdenv.mkDerivation { + name = "$pkgNames{$pkg}"; + builder = ./builder.sh; + src = fetchurl { + url = "$pkgURLs{$pkg}"; + sha256 = "$pkgHashes{$pkg}"; + }; + hardeningDisable = [ "bindnow" "relro" ]; + nativeBuildInputs = [ pkg-config $nativeBuildInputsStr]; + buildInputs = [ $buildInputsStr];$extraAttrsStr + meta.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..1d0ec88761d4 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/imake.patch @@ -0,0 +1,37 @@ +diff -Naur imake-1.0.7-orig/imake.c imake-1.0.7/imake.c +--- imake-1.0.7-orig/imake.c 2013-08-17 10:11:50.000000000 +0000 ++++ imake-1.0.7/imake.c 2015-02-04 09:41:59.000000000 +0000 +@@ -1045,6 +1045,7 @@ + static void + get_distrib(FILE *inFile) + { ++#if 0 + struct stat sb; + + static const char* suse = "/etc/SuSE-release"; +@@ -1090,6 +1091,7 @@ + * 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 @@ + static boolean + get_gcc(char *cmd) + { ++#if 0 + struct stat sb; + static const char* gcc_path[] = { + #if defined(linux) || \ +@@ -1385,6 +1388,9 @@ + } + } + 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..6ab9f8ed8dd1 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix @@ -0,0 +1,923 @@ +{ abiCompat ? null, + lib, stdenv, makeWrapper, fetchurl, fetchpatch, fetchFromGitLab, buildPackages, + automake, autoconf, gettext, libiconv, libtool, intltool, + freetype, tradcpp, fontconfig, meson, ninja, ed, fontforge, + libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm, + mesa, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook, + mcpp, epoxy, openssl, pkg-config, llvm, libxslt, + ApplicationServices, Carbon, Cocoa, Xplugin +}: + +let + inherit (stdenv) isDarwin; + inherit (lib) overrideDerivation; + + malloc0ReturnsNullCrossFlag = lib.optional + (stdenv.hostPlatform != stdenv.buildPlatform) + "--enable-malloc0returnsnull"; +in +self: super: +{ + bdftopcf = super.bdftopcf.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ self.xorgproto ]; + }); + + bitmap = super.bitmap.overrideAttrs (attrs: { + nativeBuildInputs = attrs.nativeBuildInputs ++ [ makeWrapper ]; + postInstall = '' + paths=( + "$out/share/X11/%T/%N" + "$out/include/X11/%T/%N" + "${self.xbitmaps}/include/X11/%T/%N" + ) + wrapProgram "$out/bin/bitmap" \ + --suffix XFILESEARCHPATH : $(IFS=:; echo "''${paths[*]}") + makeWrapper "$out/bin/bitmap" "$out/bin/bitmap-color" \ + --suffix XFILESEARCHPATH : "$out/share/X11/%T/%N-color" + ''; + }); + + encodings = super.encodings.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ self.mkfontscale ]; + }); + + editres = super.editres.overrideAttrs (attrs: { + hardeningDisable = [ "format" ]; + }); + + fontmiscmisc = super.fontmiscmisc.overrideAttrs (attrs: { + postInstall = + '' + ALIASFILE=${self.fontalias}/share/fonts/X11/misc/fonts.alias + test -f $ALIASFILE + cp $ALIASFILE $out/lib/X11/fonts/misc/fonts.alias + ''; + }); + + imake = super.imake.overrideAttrs (attrs: { + inherit (self) 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"}\"'"; + + inherit tradcpp; + }); + + mkfontdir = self.mkfontscale; + + libxcb = super.libxcb.overrideAttrs (attrs: { + configureFlags = [ "--enable-xkb" "--enable-xinput" ] + ++ lib.optional stdenv.hostPlatform.isStatic "--disable-shared"; + outputs = [ "out" "dev" "man" "doc" ]; + }); + + libX11 = super.libX11.overrideAttrs (attrs: { + outputs = [ "out" "dev" "man" ]; + configureFlags = attrs.configureFlags or [] + ++ malloc0ReturnsNullCrossFlag; + depsBuildBuild = [ + buildPackages.stdenv.cc + ] ++ lib.optionals stdenv.hostPlatform.isStatic [ + (self.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 [] ++ [ self.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 [] ++ [ self.xorgproto ]; + }); + + libXdmcp = super.libXdmcp.overrideAttrs (attrs: { + outputs = [ "out" "dev" "doc" ]; + }); + + 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; + }); + 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" + ''; + }); + + # 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 [] ++ [ self.libSM ]; + depsBuildBuild = [ buildPackages.stdenv.cc ]; + CPP = if stdenv.isDarwin then "clang -E -" else "${stdenv.cc.targetPrefix}cc -E -"; + 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]; + }); + + libICE = super.libICE.overrideAttrs (attrs: { + outputs = [ "out" "dev" "doc" ]; + }); + + libXcomposite = super.libXcomposite.overrideAttrs (attrs: { + outputs = [ "out" "dev" ]; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.libXfixes ]; + }); + + libXaw = super.libXaw.overrideAttrs (attrs: { + outputs = [ "out" "dev" "devdoc" ]; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.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 [] ++ [ self.libXrender freetype fontconfig ]; + configureFlags = attrs.configureFlags or [] + ++ malloc0ReturnsNullCrossFlag; + + patches = [ + # Adds color emoji rendering support. + # https://gitlab.freedesktop.org/xorg/lib/libxft/merge_requests/1 + (fetchpatch { + url = "https://gitlab.freedesktop.org/xorg/lib/libxft/commit/fe41537b5714a2301808eed2d76b2e7631176573.patch"; + sha256 = "045lp1q50i2wlwvpsq6ycxdc6p3asm2r3bk2nbad1dwkqw2xf9jc"; + }) + ]; + + # 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 = { + inherit freetype fontconfig; + }; + }); + + libXext = super.libXext.overrideAttrs (attrs: { + outputs = [ "out" "dev" "man" "doc" ]; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.xorgproto self.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 [] ++ [ self.libXfixes ]; + 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 [] ++ [ self.libXrender ]; + }); + + libSM = super.libSM.overrideAttrs (attrs: { + outputs = [ "out" "dev" "doc" ]; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.libICE ]; + }); + + libXrender = super.libXrender.overrideAttrs (attrs: { + outputs = [ "out" "dev" "doc" ]; + configureFlags = attrs.configureFlags or [] + ++ malloc0ReturnsNullCrossFlag; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.xorgproto ]; + }); + + libXres = super.libXres.overrideAttrs (attrs: { + outputs = [ "out" "dev" "devdoc" ]; + buildInputs = with self; attrs.buildInputs ++ [ utilmacros ]; + configureFlags = attrs.configureFlags or [] + ++ malloc0ReturnsNullCrossFlag; + }); + + libXScrnSaver = super.libXScrnSaver.overrideAttrs (attrs: { + buildInputs = with self; 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 ++ [self.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"; + }); + + libXpresent = super.libXpresent.overrideAttrs (attrs: { + buildInputs = with self; attrs.buildInputs ++ [ libXext libXfixes libXrandr ]; + }); + + libxkbfile = super.libxkbfile.overrideAttrs (attrs: { + outputs = [ "out" "dev" ]; # mainly to avoid propagation + }); + + libxshmfence = super.libxshmfence.overrideAttrs (attrs: { + name = "libxshmfence-1.3"; + src = fetchurl { + url = "mirror://xorg/individual/lib/libxshmfence-1.3.tar.bz2"; + sha256 = "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"; + }; + outputs = [ "out" "dev" ]; # mainly to avoid propagation + }); + + libpciaccess = super.libpciaccess.overrideAttrs (attrs: { + meta = attrs.meta // { platforms = lib.platforms.linux; }; + }); + + setxkbmap = super.setxkbmap.overrideAttrs (attrs: { + postInstall = + '' + mkdir -p $out/share/man/man7 + ln -sfn ${self.xkeyboardconfig}/etc/X11 $out/share/X11 + ln -sfn ${self.xkeyboardconfig}/share/man/man7/xkeyboard-config.7.gz $out/share/man/man7 + ''; + }); + + utilmacros = super.utilmacros.overrideAttrs (attrs: { # not needed for releases, we propagate the needed tools + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ automake autoconf libtool ]; + }); + + x11perf = super.x11perf.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ freetype fontconfig ]; + }); + + xcbutil = super.xcbutil.overrideAttrs (attrs: { + outputs = [ "out" "dev" ]; + }); + + 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"; + installFlags = [ + "sdkdir=${placeholder "out"}/include/xorg" + ]; + }); + + xf86inputmouse = super.xf86inputmouse.overrideAttrs (attrs: { + installFlags = [ + "sdkdir=${placeholder "out"}/include/xorg" + ]; + }); + + xf86inputjoystick = super.xf86inputjoystick.overrideAttrs (attrs: { + installFlags = [ + "sdkdir=${placeholder "out"}/include/xorg" + ]; + }); + + xf86inputlibinput = super.xf86inputlibinput.overrideAttrs (attrs: { + outputs = [ "out" "dev" ]; + installFlags = [ + "sdkdir=${placeholder "dev"}/include/xorg" + ]; + }); + + xf86inputsynaptics = super.xf86inputsynaptics.overrideAttrs (attrs: { + outputs = [ "out" "dev" ]; # *.pc pulls xorgserver.dev + installFlags = [ + "sdkdir=${placeholder "out"}/include/xorg" + "configdir=${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"]; + }; + }); + + # 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: { + NIX_CFLAGS_COMPILE = [ "-Wno-error=format-overflow" ]; + }); + + xf86videoamdgpu = super.xf86videoamdgpu.overrideAttrs (attrs: { + configureFlags = [ "--with-xorg-conf-dir=$(out)/share/X11/xorg.conf.d" ]; + }); + + xf86videoati = super.xf86videoati.overrideAttrs (attrs: { + NIX_CFLAGS_COMPILE = "-I${self.xorgserver.dev or self.xorgserver}/include/xorg"; + }); + + xf86videovmware = super.xf86videovmware.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ mesa mesa.driversdev llvm ]; # for libxatracker + 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]; + }); + + xvinfo = super.xvinfo.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [self.libXext]; + }); + + xkbcomp = super.xkbcomp.overrideAttrs (attrs: { + configureFlags = [ "--with-xkb-config-root=${self.xkeyboardconfig}/share/X11/xkb" ]; + }); + + xkeyboardconfig = super.xkeyboardconfig.overrideAttrs (attrs: { + prePatch = "patchShebangs rules/merge.py"; + nativeBuildInputs = attrs.nativeBuildInputs ++ [ intltool libxslt ]; + configureFlags = [ "--with-xkb-rules-symlink=xorg" ]; + + # 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}'"} + + # patch makefiles + for type in compat geometry keycodes symbols types; do + if ! test -f "$type/${name}"; then + continue + fi + test "$type" = geometry && type_name=geom || type_name=$type + ${ed}/bin/ed -v $type/Makefile.am <<EOF + /''${type_name}_DATA = + a + ${name} \\ + . + w + EOF + ${ed}/bin/ed -v $type/Makefile.in <<EOF + /''${type_name}_DATA = + a + ${name} \\ + . + w + EOF + done + + # 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 + self.xkeyboardconfig.overrideAttrs (old: { + buildInputs = old.buildInputs ++ [ automake ]; + postPatch = with lib; concatStrings (mapAttrsToList patchIn layouts); + }); + + xload = super.xload.overrideAttrs (attrs: { + nativeBuildInputs = attrs.nativeBuildInputs ++ [ gettext ]; + }); + + xlsfonts = super.xlsfonts.overrideAttrs (attrs: { + meta = attrs.meta // { license = lib.licenses.mit; }; + }); + + xorgproto = super.xorgproto.overrideAttrs (attrs: { + buildInputs = []; + propagatedBuildInputs = []; + nativeBuildInputs = attrs.nativeBuildInputs ++ [ meson ninja ]; + # adds support for printproto needed for libXp + mesonFlags = [ "-Dlegacy=true" ]; + }); + + xorgserver = with self; super.xorgserver.overrideAttrs (attrs_passed: + # exchange attrs if abiCompat is set + let + version = lib.getVersion attrs_passed; + attrs = + if (abiCompat == null || lib.hasPrefix abiCompat version) then + attrs_passed // { + buildInputs = attrs_passed.buildInputs ++ [ libdrm.dev ]; postPatch = '' + for i in dri3/*.c + do + sed -i -e "s|#include <drm_fourcc.h>|#include <libdrm/drm_fourcc.h>|" $i + done + '';} + else if (abiCompat == "1.17") then { + name = "xorg-server-1.17.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/xserver/xorg-server-1.17.4.tar.bz2"; + sha256 = "0mv4ilpqi5hpg182mzqn766frhi6rw48aba3xfbaj4m82v0lajqc"; + }; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]; + meta.platforms = lib.platforms.unix; + } else if (abiCompat == "1.18") then { + name = "xorg-server-1.18.4"; + builder = ./builder.sh; + src = fetchurl { + url = "mirror://xorg/individual/xserver/xorg-server-1.18.4.tar.bz2"; + sha256 = "1j1i3n5xy1wawhk95kxqdc54h34kg7xp4nnramba2q8xqfr5k117"; + }; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ xorgproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]; + postPatch = lib.optionalString stdenv.isLinux "sed '1i#include <malloc.h>' -i include/os.h"; + meta.platforms = lib.platforms.unix; + } else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}"; + + in attrs // + (let + version = lib.getVersion attrs; + commonBuildInputs = attrs.buildInputs ++ [ xtrans ]; + commonPropagatedBuildInputs = [ + zlib libGL libGLU dbus + xorgproto + libXext pixman libXfont libxshmfence libunwind + libXfont2 + ]; + # XQuartz requires two compilations: the first to get X / XQuartz, + # and the second to get Xvfb, Xnest, etc. + darwinOtherX = overrideDerivation xorgserver (oldAttrs: { + configureFlags = oldAttrs.configureFlags ++ [ + "--disable-xquartz" + "--enable-xorg" + "--enable-xvfb" + "--enable-xnest" + "--enable-kdrive" + ]; + postInstall = ":"; # prevent infinite recursion + }); + 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 epoxy ] ++ commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [ + udev + ]; + 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=${self.xkbcomp}/bin" + "--with-xkb-path=${self.xkeyboardconfig}/share/X11/xkb" + "--with-xkb-output=$out/share/X11/xkb/compiled" + "--with-log-dir=/var/log" + "--enable-glamor" + ] ++ lib.optionals stdenv.hostPlatform.isMusl [ + "--disable-tls" + ]; + + 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.name}/$f\"" -i "$f" + done + ) + ''; + passthru.version = version; # needed by virtualbox guest additions + } else { + nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook self.utilmacros self.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"; + }) + ]; + + configureFlags = [ + # note: --enable-xquartz is auto + "CPPFLAGS=-I${./darwin/dri}" + "--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" + ]; + 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.version = 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--;' "" + ''; + }); + + twm = super.twm.overrideAttrs (attrs: { + nativeBuildInputs = attrs.nativeBuildInputs ++ [bison flex]; + }); + + 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" + ''; + }); + + xcursorthemes = super.xcursorthemes.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ self.xcursorgen self.xorgproto ]; + configureFlags = [ "--with-cursordir=$(out)/share/icons" ]; + }); + + xinit = (super.xinit.override { + stdenv = if isDarwin then clangStdenv else stdenv; + }).overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ lib.optional isDarwin bootstrap_cmds; + configureFlags = [ + "--with-xserver=${self.xorgserver.out}/bin/X" + ] ++ lib.optionals isDarwin [ + "--with-bundle-id-prefix=org.nixos.xquartz" + "--with-launchdaemons-dir=\${out}/LaunchDaemons" + "--with-launchagents-dir=\${out}/LaunchAgents" + ]; + patches = [ + # don't unset DBUS_SESSION_BUS_ADDRESS in startx + (fetchpatch { + name = "dont-unset-DBUS_SESSION_BUS_ADDRESS.patch"; + url = "https://git.archlinux.org/svntogit/packages.git/plain/repos/extra-x86_64/fs46369.patch?h=packages/xorg-xinit&id=40f3ac0a31336d871c76065270d3f10e922d06f3"; + sha256 = "18kb88i3s9nbq2jxl7l2hyj6p56c993hivk8mzxg811iqbbawkp7"; + }) + ]; + propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.xauth ] + ++ lib.optionals isDarwin [ self.libX11 self.xorgproto ]; + postFixup = '' + substituteInPlace $out/bin/startx --replace $out/etc/X11/xinit/xserverrc /etc/X11/xinit/xserverrc + ''; + }); + + xf86videointel = super.xf86videointel.overrideAttrs (attrs: { + # the update script only works with released tarballs :-/ + name = "xf86-video-intel-2019-12-09"; + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + group = "xorg"; + owner = "driver"; + repo = "xf86-video-intel"; + rev = "f66d39544bb8339130c96d282a80f87ca1606caf"; + sha256 = "14rwbbn06l8qpx7s5crxghn80vgcx8jmfc7qvivh72d81r0kvywl"; + }; + buildInputs = attrs.buildInputs ++ [ self.libXScrnSaver self.libXfixes self.libXv self.pixman ]; + nativeBuildInputs = attrs.nativeBuildInputs ++ [autoreconfHook self.utilmacros]; + configureFlags = [ "--with-default-dri=3" "--enable-tools" ]; + + meta = attrs.meta // { + platforms = ["i686-linux" "x86_64-linux"]; + }; + }); + + xf86videoopenchrome = super.xf86videoopenchrome.overrideAttrs (attrs: { + buildInputs = attrs.buildInputs ++ [ self.libXv ]; + }); + + 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"; + }) + ]; + }); + + xorgcffiles = super.xorgcffiles.overrideAttrs (attrs: { + postInstall = lib.optionalString stdenv.isDarwin '' + substituteInPlace $out/lib/X11/config/darwin.cf --replace "/usr/bin/" "" + ''; + }); + + xwd = super.xwd.overrideAttrs (attrs: { + buildInputs = with self; attrs.buildInputs ++ [libXt]; + }); + + xrdb = super.xrdb.overrideAttrs (attrs: { + configureFlags = [ "--with-cpp=${mcpp}/bin/mcpp" ]; + }); + + sessreg = super.sessreg.overrideAttrs (attrs: { + preBuild = "sed -i 's|gcc -E|gcc -E -P|' man/Makefile"; + }); + + xrandr = super.xrandr.overrideAttrs (attrs: { + postInstall = '' + rm $out/bin/xkeystone + ''; + }); + + xcalc = super.xcalc.overrideAttrs (attrs: { + configureFlags = attrs.configureFlags or [] ++ [ + "--with-appdefaultdir=${placeholder "out"}/share/X11/app-defaults" + ]; + nativeBuildInputs = attrs.nativeBuildInputs or [] ++ [ makeWrapper ]; + postInstall = '' + wrapProgram $out/bin/xcalc \ + --set XAPPLRESDIR ${placeholder "out"}/share/X11/app-defaults + ''; + }); + + # 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" + ]; + + # unfree, possibly not redistributable + unfree = [ + # no license, just a copyright notice + "fontbhlucidatypewriter100dpi" + "fontbhlucidatypewriter75dpi" + "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..093aba26f639 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list @@ -0,0 +1,221 @@ +https://invisible-mirror.net/archives/luit/luit-20190106.tgz +https://xcb.freedesktop.org/dist/libpthread-stubs-0.4.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.3.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-errors-1.0.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2 +https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2 +mirror://xorg/individual/app/appres-1.0.5.tar.bz2 +mirror://xorg/individual/app/bdftopcf-1.1.tar.bz2 +mirror://xorg/individual/app/bitmap-1.0.9.tar.gz +mirror://xorg/individual/app/editres-1.0.7.tar.bz2 +mirror://xorg/individual/app/fonttosfnt-1.2.1.tar.bz2 +mirror://xorg/individual/app/iceauth-1.0.8.tar.bz2 +mirror://xorg/individual/app/ico-1.0.5.tar.bz2 +mirror://xorg/individual/app/listres-1.0.4.tar.bz2 +mirror://xorg/individual/app/mkfontscale-1.2.1.tar.bz2 +mirror://xorg/individual/app/oclock-1.0.4.tar.bz2 +mirror://xorg/individual/app/sessreg-1.1.2.tar.bz2 +mirror://xorg/individual/app/setxkbmap-1.3.2.tar.bz2 +mirror://xorg/individual/app/smproxy-1.0.6.tar.bz2 +mirror://xorg/individual/app/transset-1.0.2.tar.bz2 +mirror://xorg/individual/app/twm-1.0.10.tar.bz2 +mirror://xorg/individual/app/viewres-1.0.5.tar.bz2 +mirror://xorg/individual/app/x11perf-1.6.1.tar.bz2 +mirror://xorg/individual/app/xauth-1.1.tar.bz2 +mirror://xorg/individual/app/xbacklight-1.2.3.tar.bz2 +mirror://xorg/individual/app/xcalc-1.1.0.tar.bz2 +mirror://xorg/individual/app/xclock-1.0.9.tar.bz2 +mirror://xorg/individual/app/xcmsdb-1.0.5.tar.bz2 +mirror://xorg/individual/app/xcompmgr-1.1.8.tar.bz2 +mirror://xorg/individual/app/xconsole-1.0.7.tar.bz2 +mirror://xorg/individual/app/xcursorgen-1.0.7.tar.bz2 +mirror://xorg/individual/app/xdm-1.1.12.tar.bz2 +mirror://xorg/individual/app/xdpyinfo-1.3.2.tar.bz2 +mirror://xorg/individual/app/xdriinfo-1.0.6.tar.bz2 +mirror://xorg/individual/app/xev-1.2.3.tar.bz2 +mirror://xorg/individual/app/xeyes-1.1.2.tar.bz2 +mirror://xorg/individual/app/xfd-1.1.3.tar.bz2 +mirror://xorg/individual/app/xfontsel-1.0.6.tar.bz2 +mirror://xorg/individual/app/xfs-1.2.0.tar.bz2 +mirror://xorg/individual/app/xfsinfo-1.0.6.tar.bz2 +mirror://xorg/individual/app/xgamma-1.0.6.tar.bz2 +mirror://xorg/individual/app/xgc-1.0.5.tar.bz2 +mirror://xorg/individual/app/xhost-1.0.8.tar.bz2 +mirror://xorg/individual/app/xinit-1.4.1.tar.bz2 +mirror://xorg/individual/app/xinput-1.6.3.tar.bz2 +mirror://xorg/individual/app/xkbcomp-1.4.5.tar.bz2 +mirror://xorg/individual/app/xkbevd-1.1.4.tar.bz2 +mirror://xorg/individual/app/xkbprint-1.0.4.tar.bz2 +mirror://xorg/individual/app/xkbutils-1.0.4.tar.bz2 +mirror://xorg/individual/app/xkill-1.0.5.tar.bz2 +mirror://xorg/individual/app/xload-1.1.3.tar.bz2 +mirror://xorg/individual/app/xlsatoms-1.1.3.tar.bz2 +mirror://xorg/individual/app/xlsclients-1.1.4.tar.bz2 +mirror://xorg/individual/app/xlsfonts-1.0.6.tar.bz2 +mirror://xorg/individual/app/xmag-1.0.6.tar.bz2 +mirror://xorg/individual/app/xmessage-1.0.5.tar.bz2 +mirror://xorg/individual/app/xmodmap-1.0.10.tar.bz2 +mirror://xorg/individual/app/xmore-1.0.3.tar.bz2 +mirror://xorg/individual/app/xpr-1.0.5.tar.bz2 +mirror://xorg/individual/app/xprop-1.2.5.tar.bz2 +mirror://xorg/individual/app/xrandr-1.5.1.tar.xz +mirror://xorg/individual/app/xrdb-1.2.0.tar.bz2 +mirror://xorg/individual/app/xrefresh-1.0.6.tar.bz2 +mirror://xorg/individual/app/xset-1.2.4.tar.bz2 +mirror://xorg/individual/app/xsetroot-1.1.2.tar.bz2 +mirror://xorg/individual/app/xsm-1.0.4.tar.bz2 +mirror://xorg/individual/app/xstdcmap-1.0.4.tar.bz2 +mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2 +mirror://xorg/individual/app/xvinfo-1.1.4.tar.bz2 +mirror://xorg/individual/app/xwd-1.0.7.tar.bz2 +mirror://xorg/individual/app/xwininfo-1.1.4.tar.bz2 +mirror://xorg/individual/app/xwud-1.0.5.tar.bz2 +mirror://xorg/individual/data/xbitmaps-1.1.2.tar.bz2 +mirror://xorg/individual/data/xcursor-themes-1.0.6.tar.bz2 +mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.31.tar.bz2 +mirror://xorg/individual/doc/xorg-docs-1.7.1.tar.bz2 +mirror://xorg/individual/doc/xorg-sgml-doctools-1.11.tar.bz2 +mirror://xorg/individual/driver/xf86-input-evdev-2.10.6.tar.bz2 +mirror://xorg/individual/driver/xf86-input-joystick-1.6.3.tar.bz2 +mirror://xorg/individual/driver/xf86-input-keyboard-1.9.0.tar.bz2 +mirror://xorg/individual/driver/xf86-input-libinput-1.0.1.tar.bz2 +mirror://xorg/individual/driver/xf86-input-mouse-1.9.3.tar.bz2 +mirror://xorg/individual/driver/xf86-input-synaptics-1.9.1.tar.bz2 +mirror://xorg/individual/driver/xf86-input-vmmouse-13.1.0.tar.bz2 +mirror://xorg/individual/driver/xf86-input-void-1.4.1.tar.bz2 +mirror://xorg/individual/driver/xf86-video-amdgpu-19.1.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-apm-1.3.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-ark-0.7.5.tar.bz2 +mirror://xorg/individual/driver/xf86-video-ast-1.1.5.tar.bz2 +mirror://xorg/individual/driver/xf86-video-ati-19.1.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-chips-1.4.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-cirrus-1.5.3.tar.bz2 +mirror://xorg/individual/driver/xf86-video-dummy-0.3.8.tar.bz2 +mirror://xorg/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-geode-2.11.19.tar.bz2 +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.0.tar.bz2 +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-mach64-6.9.6.tar.bz2 +mirror://xorg/individual/driver/xf86-video-mga-2.0.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-neomagic-1.3.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-newport-0.2.4.tar.bz2 +mirror://xorg/individual/driver/xf86-video-nouveau-1.0.17.tar.bz2 +mirror://xorg/individual/driver/xf86-video-nv-2.1.21.tar.bz2 +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.5.tar.bz2 +mirror://xorg/individual/driver/xf86-video-r128-6.11.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-rendition-4.2.7.tar.bz2 +mirror://xorg/individual/driver/xf86-video-s3virge-1.11.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-savage-2.3.9.tar.bz2 +mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.9.tar.bz2 +mirror://xorg/individual/driver/xf86-video-sis-0.11.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-sisusb-0.9.7.tar.bz2 +mirror://xorg/individual/driver/xf86-video-suncg6-1.1.2.tar.bz2 +mirror://xorg/individual/driver/xf86-video-sunffb-1.2.2.tar.bz2 +mirror://xorg/individual/driver/xf86-video-sunleo-1.2.2.tar.bz2 +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.3.8.tar.bz2 +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.5.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-vmware-13.3.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-voodoo-1.2.5.tar.bz2 +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.5.tar.bz2 +mirror://xorg/individual/font/font-adobe-100dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-adobe-75dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-adobe-utopia-100dpi-1.0.4.tar.bz2 +mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.4.tar.bz2 +mirror://xorg/individual/font/font-adobe-utopia-type1-1.0.4.tar.bz2 +mirror://xorg/individual/font/font-alias-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-arabic-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-100dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-75dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-ttf-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bh-type1-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bitstream-100dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bitstream-75dpi-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-bitstream-type1-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-cronyx-cyrillic-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-cursor-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-daewoo-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-dec-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-ibm-type1-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-isas-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-jis-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-micro-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-misc-cyrillic-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-misc-ethiopic-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-misc-meltho-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-misc-misc-1.1.2.tar.bz2 +mirror://xorg/individual/font/font-mutt-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-schumacher-misc-1.1.2.tar.bz2 +mirror://xorg/individual/font/font-screen-cyrillic-1.0.4.tar.bz2 +mirror://xorg/individual/font/font-sony-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-sun-misc-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-util-1.3.1.tar.bz2 +mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.3.tar.bz2 +mirror://xorg/individual/font/font-xfree86-type1-1.0.4.tar.bz2 +mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2 +mirror://xorg/individual/lib/libdmx-1.1.4.tar.bz2 +mirror://xorg/individual/lib/libfontenc-1.1.4.tar.bz2 +mirror://xorg/individual/lib/libFS-1.0.8.tar.bz2 +mirror://xorg/individual/lib/libICE-1.0.10.tar.bz2 +mirror://xorg/individual/lib/libpciaccess-0.16.tar.bz2 +mirror://xorg/individual/lib/libSM-1.2.3.tar.bz2 +mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2 +mirror://xorg/individual/lib/libX11-1.7.0.tar.bz2 +mirror://xorg/individual/lib/libXau-1.0.9.tar.bz2 +mirror://xorg/individual/lib/libXaw-1.0.14.tar.bz2 +mirror://xorg/individual/lib/libXaw3d-1.6.3.tar.bz2 +mirror://xorg/individual/lib/libxcb-1.14.tar.xz +mirror://xorg/individual/lib/libXcomposite-0.4.5.tar.bz2 +mirror://xorg/individual/lib/libXcursor-1.2.0.tar.bz2 +mirror://xorg/individual/lib/libXdamage-1.1.5.tar.bz2 +mirror://xorg/individual/lib/libXdmcp-1.1.3.tar.bz2 +mirror://xorg/individual/lib/libXext-1.3.4.tar.bz2 +mirror://xorg/individual/lib/libXfixes-5.0.3.tar.bz2 +mirror://xorg/individual/lib/libXfont-1.5.4.tar.bz2 +mirror://xorg/individual/lib/libXfont2-2.0.4.tar.bz2 +mirror://xorg/individual/lib/libXft-2.3.3.tar.bz2 +mirror://xorg/individual/lib/libXi-1.7.10.tar.bz2 +mirror://xorg/individual/lib/libXinerama-1.1.4.tar.bz2 +mirror://xorg/individual/lib/libxkbfile-1.1.0.tar.bz2 +mirror://xorg/individual/lib/libXmu-1.1.3.tar.bz2 +mirror://xorg/individual/lib/libXp-1.0.3.tar.bz2 +mirror://xorg/individual/lib/libXpm-3.5.13.tar.bz2 +mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2 +mirror://xorg/individual/lib/libXrandr-1.5.2.tar.bz2 +mirror://xorg/individual/lib/libXrender-0.9.10.tar.bz2 +mirror://xorg/individual/lib/libXres-1.2.1.tar.bz2 +mirror://xorg/individual/lib/libXScrnSaver-1.2.3.tar.bz2 +mirror://xorg/individual/lib/libxshmfence-1.3.tar.bz2 +mirror://xorg/individual/lib/libXTrap-1.0.1.tar.bz2 +mirror://xorg/individual/lib/libXt-1.2.1.tar.bz2 +mirror://xorg/individual/lib/libXtst-1.2.3.tar.bz2 +mirror://xorg/individual/lib/libXv-1.0.11.tar.bz2 +mirror://xorg/individual/lib/libXvMC-1.0.12.tar.bz2 +mirror://xorg/individual/lib/libXxf86dga-1.1.5.tar.bz2 +mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2 +mirror://xorg/individual/lib/libXxf86vm-1.1.4.tar.bz2 +mirror://xorg/individual/lib/xtrans-1.4.0.tar.bz2 +mirror://xorg/individual/proto/xcb-proto-1.14.1.tar.xz +mirror://xorg/individual/proto/xorgproto-2021.3.tar.bz2 +mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2 +mirror://xorg/individual/util/imake-1.0.8.tar.bz2 +mirror://xorg/individual/util/lndir-1.0.3.tar.bz2 +mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2 +mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2 +mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2 +mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2 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..ee870f071256 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/xcb-util-xrm.nix @@ -0,0 +1,23 @@ +{ 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"; + }; + + nativeBuildInputs = [ pkg-config m4 ]; + doCheck = true; + buildInputs = [ libxcb xcbutil ]; + checkInputs = [ 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..e3d2698e8303 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix @@ -0,0 +1,40 @@ +{ lib, wayland, wayland-protocols, xorgserver, xkbcomp, xkeyboard_config +, epoxy, libxslt, libunwind, makeWrapper, egl-wayland +, defaultFontPath ? "" }: + +with lib; + +xorgserver.overrideAttrs (oldAttrs: { + + name = "xwayland-${xorgserver.version}"; + buildInputs = oldAttrs.buildInputs ++ [ egl-wayland ]; + propagatedBuildInputs = oldAttrs.propagatedBuildInputs + ++ [wayland wayland-protocols epoxy libxslt makeWrapper libunwind]; + configureFlags = [ + "--disable-docs" + "--disable-devel-docs" + "--enable-xwayland" + "--enable-xwayland-eglstream" + "--disable-xorg" + "--disable-xvfb" + "--disable-xnest" + "--disable-xquartz" + "--disable-xwin" + "--enable-glamor" + "--with-default-font-path=${defaultFontPath}" + "--with-xkb-bin-directory=${xkbcomp}/bin" + "--with-xkb-path=${xkeyboard_config}/etc/X11/xkb" + "--with-xkb-output=$(out)/share/X11/xkb/compiled" + ]; + + postInstall = '' + rm -fr $out/share/X11/xkb/compiled + ''; + + meta = { + description = "An X server for interfacing X11 apps with the Wayland protocol"; + homepage = "https://wayland.freedesktop.org/xserver.html"; + license = licenses.mit; + platforms = platforms.linux; + }; +}) |