diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/x11')
-rw-r--r-- | nixpkgs/pkgs/servers/x11/quartz-wm/default.nix | 4 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/.gitignore | 1 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/default.nix | 17 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/overrides.nix | 89 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xorg/tarballs.list | 1 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/xquartz/default.nix | 7 |
6 files changed, 101 insertions, 18 deletions
diff --git a/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix b/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix index 52cb1e750a64..92350595dd85 100644 --- a/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix +++ b/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, xorg, pixman, pkgconfig, AppKit, Foundation, Xplugin, cf-private }: +{ stdenv, fetchurl, xorg, pixman, pkgconfig, AppKit, Foundation, Xplugin }: let version = "1.3.1"; in stdenv.mkDerivation { @@ -20,8 +20,6 @@ in stdenv.mkDerivation { pixman pkgconfig AppKit Xplugin Foundation - # Needed for CFNotificationCenterAddObserver symbols. - cf-private ]; meta = with stdenv.lib; { license = licenses.apsl20; 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/default.nix b/nixpkgs/pkgs/servers/x11/xorg/default.nix index a5869b21c581..3be672c29f17 100644 --- a/nixpkgs/pkgs/servers/x11/xorg/default.nix +++ b/nixpkgs/pkgs/servers/x11/xorg/default.nix @@ -728,6 +728,19 @@ lib.makeScope newScope (self: with self; { meta.platforms = stdenv.lib.platforms.unix; }) {}; + libXTrap = callPackage ({ stdenv, pkgconfig, 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 = [ pkgconfig ]; + buildInputs = [ xorgproto libX11 libXext libXt ]; + meta.platforms = stdenv.lib.platforms.unix; + }) {}; + libXau = callPackage ({ stdenv, pkgconfig, fetchurl, xorgproto }: stdenv.mkDerivation { name = "libXau-1.0.9"; builder = ./builder.sh; @@ -2834,7 +2847,7 @@ lib.makeScope newScope (self: with self; { meta.platforms = stdenv.lib.platforms.unix; }) {}; - xtrap = callPackage ({ stdenv, pkgconfig, fetchurl, libX11, libXt }: stdenv.mkDerivation { + xtrap = callPackage ({ stdenv, pkgconfig, fetchurl, libX11, libXt, libXTrap }: stdenv.mkDerivation { name = "xtrap-1.0.3"; builder = ./builder.sh; src = fetchurl { @@ -2843,7 +2856,7 @@ lib.makeScope newScope (self: with self; { }; hardeningDisable = [ "bindnow" "relro" ]; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libX11 libXt ]; + buildInputs = [ libX11 libXt libXTrap ]; meta.platforms = stdenv.lib.platforms.unix; }) {}; diff --git a/nixpkgs/pkgs/servers/x11/xorg/overrides.nix b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix index 7b6299105b1d..80b0addd6ec8 100644 --- a/nixpkgs/pkgs/servers/x11/xorg/overrides.nix +++ b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix @@ -1,11 +1,11 @@ { abiCompat ? null, stdenv, makeWrapper, fetchurl, fetchpatch, buildPackages, automake, autoconf, gettext, libiconv, libtool, intltool, - freetype, tradcpp, fontconfig, meson, ninja, + freetype, tradcpp, fontconfig, meson, ninja, ed, libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm, mesa, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook, mcpp, epoxy, openssl, pkgconfig, llvm_6, - cf-private, ApplicationServices, Carbon, Cocoa, Xplugin + ApplicationServices, Carbon, Cocoa, Xplugin }: let @@ -423,6 +423,85 @@ self: super: ''; }); + # 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 ]; }); @@ -469,11 +548,7 @@ self: super: sha256 = "1j1i3n5xy1wawhk95kxqdc54h34kg7xp4nnramba2q8xqfr5k117"; }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ xorgproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ] - ++ stdenv.lib.optionals stdenv.isDarwin [ - # Needed for NSDefaultRunLoopMode symbols. - cf-private - ]; + buildInputs = [ xorgproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]; postPatch = stdenv.lib.optionalString stdenv.isLinux "sed '1i#include <malloc.h>' -i include/os.h"; meta.platforms = stdenv.lib.platforms.unix; } else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}"; diff --git a/nixpkgs/pkgs/servers/x11/xorg/tarballs.list b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list index 26c2721e2407..426b848a138d 100644 --- a/nixpkgs/pkgs/servers/x11/xorg/tarballs.list +++ b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list @@ -202,6 +202,7 @@ mirror://xorg/individual/lib/libXrender-0.9.10.tar.bz2 mirror://xorg/individual/lib/libXres-1.2.0.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.1.5.tar.bz2 mirror://xorg/individual/lib/libXtst-1.2.3.tar.bz2 mirror://xorg/individual/lib/libXv-1.0.11.tar.bz2 diff --git a/nixpkgs/pkgs/servers/x11/xquartz/default.nix b/nixpkgs/pkgs/servers/x11/xquartz/default.nix index 22f6ce456732..f18a50fe7e92 100644 --- a/nixpkgs/pkgs/servers/x11/xquartz/default.nix +++ b/nixpkgs/pkgs/servers/x11/xquartz/default.nix @@ -1,7 +1,6 @@ { stdenv, buildEnv, makeFontsConf, gnused, writeScript, xorg, bashInteractive, xterm, makeWrapper, ruby , quartz-wm, fontconfig, xlsfonts, xfontsel , ttf_bitstream_vera, freefont_ttf, liberation_ttf -, cf-private , shell ? "${bashInteractive}/bin/bash" }: @@ -98,11 +97,7 @@ let in stdenv.mkDerivation { name = "xquartz-${stdenv.lib.getVersion xorg.xorgserver}"; - buildInputs = [ - ruby makeWrapper - # Needed for NSDefaultRunLoopMode symbols. - cf-private - ]; + nativeBuildInputs = [ ruby makeWrapper ]; unpackPhase = "sourceRoot=."; |