diff options
author | Nikita Mikhailov <nslqqq@gmail.com> | 2015-04-11 11:25:02 +0200 |
---|---|---|
committer | Nikita Mikhailov <nslqqq@gmail.com> | 2015-04-11 11:34:35 +0200 |
commit | a29182a6f585ba3b97e7ba9a6f6e93c574756cd2 (patch) | |
tree | d322afaf67bbef0d4fe82c1db13c47cd7d8566b3 /pkgs/servers | |
parent | 31ecb8203187367328b335416a6edfda1f673b18 (diff) | |
download | nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar.gz nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar.bz2 nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar.lz nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar.xz nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.tar.zst nixpkgs-a29182a6f585ba3b97e7ba9a6f6e93c574756cd2.zip |
xorg: fix Xephyr
Diffstat (limited to 'pkgs/servers')
-rw-r--r-- | pkgs/servers/x11/xorg/overrides.nix | 8 | ||||
-rw-r--r-- | pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch | 22 |
2 files changed, 17 insertions, 13 deletions
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 61c1391ae09..15197044f00 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -1,7 +1,7 @@ { args, xorg }: let - inherit (args) stdenv; + inherit (args) stdenv makeWrapper; inherit (stdenv) lib isDarwin; inherit (lib) overrideDerivation; @@ -300,13 +300,14 @@ in in if (!isDarwin) then { - buildInputs = commonBuildInputs; + buildInputs = [ makeWrapper ] ++ commonBuildInputs; propagatedBuildInputs = commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [ args.udev ]; patches = commonPatches; 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 @@ -314,6 +315,9 @@ in postInstall = '' rm -fr $out/share/X11/xkb/compiled ln -s /var/tmp $out/share/X11/xkb/compiled + wrapProgram $out/bin/Xephyr \ + --set XKB_BINDIR "${xorg.xkbcomp}/bin" \ + --add-flags "-xkbdir ${xorg.xkeyboardconfig}/share/X11/xkb" ''; passthru.version = version; # needed by virtualbox guest additions } else { diff --git a/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch b/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch index f5196c60c7c..a0951269b42 100644 --- a/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch +++ b/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch @@ -1,15 +1,15 @@ -diff -rc xorg-server-X11R7.2-1.2.0-orig/xkb/xkbInit.c xorg-server-X11R7.2-1.2.0/xkb/xkbInit.c -*** xorg-server-X11R7.2-1.2.0-orig/xkb/xkbInit.c Tue Jan 23 04:13:16 2007 ---- xorg-server-X11R7.2-1.2.0/xkb/xkbInit.c Fri Mar 30 00:52:53 2007 +*** xorg-server-X11R7.2-1.2.0-orig/xkb/xkbInit.c 2015-02-11 00:32:06.000000000 +0100 +--- xorg-server-X11R7.2-1.2.0/xkb/xkbInit.c 2015-04-11 10:10:41.948438435 +0200 *************** -*** 923,928 **** ---- 923,931 ---- - XkbDfltRepeatInterval = (long)atoi(argv[i]); - return 2; - } +*** 733,738 **** +--- 733,742 ---- + int + XkbProcessArguments(int argc, char *argv[], int i) + { + char *xkbBinDir = getenv("XKB_BINDIR"); + if (xkbBinDir) + XkbBinDirectory = Xstrdup(xkbBinDir); - return 0; - } - ++ + if (strncmp(argv[i], "-xkbdir", 7) == 0) { + if (++i < argc) { + #if !defined(WIN32) && !defined(__CYGWIN__) |