summary refs log tree commit diff
path: root/pkgs/tools/misc
diff options
context:
space:
mode:
authorCharles Strahan <charles@cstrahan.com>2016-09-19 23:06:30 -0400
committerCharles Strahan <charles@cstrahan.com>2016-09-21 14:16:59 -0400
commit4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9 (patch)
tree70a77f869d3d1e49cf6db1f8a71351672c94dfd4 /pkgs/tools/misc
parent3f02cbbcaf18626e1f6a1824cfce142ad48ec614 (diff)
downloadnixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar.gz
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar.bz2
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar.lz
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar.xz
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.tar.zst
nixlib-4a4fd2747cb37eb7cf82ff712745b5b7dd767cf9.zip
xsel: 1.2.0 -> git-2016-09-02
The last xsel release was in 2008. Since then, a number of bugs have
been fixed. For example, pasting a large chunk of text (>4000 chars)
into chrome would cause the current tab to hang indefinitely.

A couple examples in the wild:

https://github.com/kfish/xsel/issues/14
https://github.com/kfish/xsel/issues/13
https://github.com/kfish/xsel/pull/16
https://bugs.chromium.org/p/chromium/issues/detail?id=515401
https://github.com/electron/electron/issues/3116
https://github.com/neovim/neovim/issues/4719
Diffstat (limited to 'pkgs/tools/misc')
-rw-r--r--pkgs/tools/misc/xsel/default.nix32
1 files changed, 23 insertions, 9 deletions
diff --git a/pkgs/tools/misc/xsel/default.nix b/pkgs/tools/misc/xsel/default.nix
index b95b95e4379b..0b78b9a06473 100644
--- a/pkgs/tools/misc/xsel/default.nix
+++ b/pkgs/tools/misc/xsel/default.nix
@@ -1,15 +1,29 @@
-{stdenv, fetchurl, xlibsWrapper}:
+{stdenv, lib, fetchFromGitHub, libX11, autoreconfHook }:
 
-stdenv.mkDerivation {
-  name = "xsel-1.2.0";
-  src = fetchurl {
-    url = http://www.vergenet.net/~conrad/software/xsel/download/xsel-1.2.0.tar.gz;
-    sha256 = "070lbcpw77j143jrbkh0y1v10ppn1jwmjf92800w7x42vh4cw9xr";
+stdenv.mkDerivation rec {
+  name = "xsel-unstable-${version}";
+
+  version = "2016-09-02";
+
+  src = fetchFromGitHub {
+    owner = "kfish";
+    repo = "xsel";
+    rev = "aa7f57eed805adb09e9c59c8ea841870e8206b81";
+    sha256 = "04mrc8j0rr7iy1k6brfxnx26pmxm800gh4nqrxn6j2lz6vd5y9m5";
   };
 
-  buildInputs = [xlibsWrapper];
+  buildInputs = [ libX11 autoreconfHook ];
+
+  # We need a README file, otherwise autoconf complains.
+  postUnpack = ''
+    mv $sourceRoot/README{.md,}
+  '';
 
-  meta = {
-    platforms = stdenv.lib.platforms.unix;
+  meta = with lib; {
+    description = "Command-line program for getting and setting the contents of the X selection";
+    homepage = "http://www.kfish.org/software/xsel";
+    license = licenses.mit;
+    maintainers = [ maintainers.cstrahan ];
+    platforms = lib.platforms.unix;
   };
 }