diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2016-01-15 13:43:57 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2016-01-15 13:43:57 +0100 |
commit | 2d0893088fff99e1c0c438ba7b4c42ac6769af75 (patch) | |
tree | 771ce9e6e1020b623ea4c65b84bf05bd7ee24821 /pkgs/tools/misc | |
parent | 4e9575c314baab5e45a95785918c721f7fed45e3 (diff) | |
parent | c29df5f8a7122fbc9411765156ab42c12baadbbb (diff) | |
download | nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar.gz nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar.bz2 nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar.lz nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar.xz nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.tar.zst nixlib-2d0893088fff99e1c0c438ba7b4c42ac6769af75.zip |
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/tools/misc')
-rw-r--r-- | pkgs/tools/misc/diffoscope/default.nix | 21 | ||||
-rw-r--r-- | pkgs/tools/misc/grub4dos/default.nix | 6 | ||||
-rw-r--r-- | pkgs/tools/misc/ltunify/default.nix | 21 | ||||
-rw-r--r-- | pkgs/tools/misc/mcrypt/default.nix | 12 | ||||
-rw-r--r-- | pkgs/tools/misc/mcrypt/format-string.patch | 31 | ||||
-rw-r--r-- | pkgs/tools/misc/mcrypt/overflow.patch | 24 | ||||
-rw-r--r-- | pkgs/tools/misc/mcrypt/segv.patch | 39 | ||||
-rw-r--r-- | pkgs/tools/misc/mcrypt/sprintf.patch | 108 | ||||
-rw-r--r-- | pkgs/tools/misc/pg_top/default.nix | 14 | ||||
-rw-r--r-- | pkgs/tools/misc/screenfetch/default.nix | 6 | ||||
-rw-r--r-- | pkgs/tools/misc/testdisk/default.nix | 6 | ||||
-rw-r--r-- | pkgs/tools/misc/tlp/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/misc/tmate/default.nix | 12 | ||||
-rw-r--r-- | pkgs/tools/misc/ttylog/default.nix | 6 | ||||
-rw-r--r-- | pkgs/tools/misc/txtw/default.nix | 25 | ||||
-rw-r--r-- | pkgs/tools/misc/xfstests/default.nix | 86 | ||||
-rw-r--r-- | pkgs/tools/misc/xmltv/default.nix | 16 | ||||
-rw-r--r-- | pkgs/tools/misc/youtube-dl/default.nix | 8 |
18 files changed, 389 insertions, 56 deletions
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix index 7fe21e8b3474..6715f1ac38fd 100644 --- a/pkgs/tools/misc/diffoscope/default.nix +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -1,20 +1,29 @@ -{ stdenv, fetchgit, pythonPackages, docutils +{ lib, stdenv, fetchgit, fetchpatch, pythonPackages, docutils , acl, binutils, bzip2, cbfstool, cdrkit, cpio, diffutils, e2fsprogs, file, fpc, gettext, ghc, gnupg1 , gzip, jdk, libcaca, mono, pdftk, poppler_utils, rpm, sng, sqlite, squashfsTools, unzip, vim, xz +, enableBloat ? false }: pythonPackages.buildPythonPackage rec { name = "diffoscope-${version}"; - version = "44"; + version = "45"; namePrefix = ""; src = fetchgit { url = "git://anonscm.debian.org/reproducible/diffoscope.git"; rev = "refs/tags/${version}"; - sha256 = "1sisdmh1bl62b16yfjy9mxxdfzhskrabp0l3pl1kxn7db0c4vpac"; + sha256 = "1wdphcmr2n0pyg7zwvczy7ik1bzjlrjb76jwbzk971lwba3ajazk"; }; + patches = + [ # Ignore different link counts and inode change times. + (fetchpatch { + url = https://github.com/edolstra/diffoscope/commit/367f77bba8df0dbc89e63c9f66f05736adf5ec59.patch; + sha256 = "0mnp7icdrjn02dr6f5dwqvvr848jzgkv3cg69a24234y9gxd30ww"; + }) + ]; + postPatch = '' # Upstream doesn't provide a PKG-INFO file sed -i setup.py -e "/'rpm-python',/d" @@ -22,9 +31,11 @@ pythonPackages.buildPythonPackage rec { # Still missing these tools: enjarify otool(maybe OS X only) showttf # Also these libraries: python3-guestfs + # FIXME: move xxd into a separate package so we don't have to pull in all of vim. propagatedBuildInputs = (with pythonPackages; [ debian libarchive-c python_magic tlsh ]) ++ - [ acl binutils bzip2 cbfstool cdrkit cpio diffutils e2fsprogs file fpc gettext ghc gnupg1 - gzip jdk libcaca mono pdftk poppler_utils rpm sng sqlite squashfsTools unzip vim xz ]; + [ acl binutils bzip2 cbfstool cdrkit cpio diffutils e2fsprogs file gettext + gzip libcaca poppler_utils rpm sng sqlite squashfsTools unzip vim xz + ] ++ lib.optionals enableBloat [ jdk ghc fpc gnupg1 pdftk mono ]; doCheck = false; # Calls 'mknod' in squashfs tests, which needs root diff --git a/pkgs/tools/misc/grub4dos/default.nix b/pkgs/tools/misc/grub4dos/default.nix index 18464574d440..c59869c0dc7e 100644 --- a/pkgs/tools/misc/grub4dos/default.nix +++ b/pkgs/tools/misc/grub4dos/default.nix @@ -5,11 +5,11 @@ let arch = else if stdenv.isx86_64 then "x86_64" else abort "Unknown architecture"; in stdenv.mkDerivation { - name = "grub4dos-0.4.6a"; + name = "grub4dos-0.4.6a-2015-12-31"; src = fetchurl { - url = https://github.com/chenall/grub4dos/archive/e855b293432bd4d155e42d48356f9aa1974ec385.zip; - sha256 = "1vihzllsdshd5dyr7i7dp5ragyg77gg8r279pz954p7lkcda4kx7"; + url = https://github.com/chenall/grub4dos/archive/a8024743c61cc4909514b27df07b7cc4bc89d1fb.zip; + sha256 = "1m5d7klb12qz5sa09919z7jchfafgh84cmpwilp52qnbpi3zh2fd"; }; nativeBuildInputs = [ unzip nasm ]; diff --git a/pkgs/tools/misc/ltunify/default.nix b/pkgs/tools/misc/ltunify/default.nix new file mode 100644 index 000000000000..0329581bfaab --- /dev/null +++ b/pkgs/tools/misc/ltunify/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchgit }: + +stdenv.mkDerivation rec { + name = "ltunify-20140331"; + + src = fetchgit { + url = "https://git.lekensteyn.nl/ltunify.git"; + rev = "c3a263ff97bcd31e96abbfed33d066f8d2778f58"; + sha256 = "0zjw064fl9f73ppl9c37wsfhp6296yx65m1gis2n2ia6arlnh45q"; + }; + + makeFlags = [ "DESTDIR=$(out)" "bindir=/bin" ]; + + meta = with stdenv.lib; { + description = "Tool for working with Logitech Unifying receivers and devices"; + homepage = https://lekensteyn.nl/logitech-unifying.html; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = [ maintainers.abbradar ]; + }; +} diff --git a/pkgs/tools/misc/mcrypt/default.nix b/pkgs/tools/misc/mcrypt/default.nix index ffd8966a80eb..52c96fda1973 100644 --- a/pkgs/tools/misc/mcrypt/default.nix +++ b/pkgs/tools/misc/mcrypt/default.nix @@ -1,16 +1,18 @@ { stdenv, fetchurl, libmcrypt, libmhash }: - + stdenv.mkDerivation rec { version = "2.6.8"; name = "mcrypt-${version}"; - + src = fetchurl { url = "mirror://sourceforge/mcrypt/MCrypt/${version}/${name}.tar.gz"; sha256 = "5145aa844e54cca89ddab6fb7dd9e5952811d8d787c4f4bf27eb261e6c182098"; }; - - buildInputs = [libmcrypt libmhash]; - + + patches = [ ./format-string.patch ./overflow.patch ./segv.patch ./sprintf.patch ]; + + buildInputs = [ libmcrypt libmhash ]; + meta = { description = "Replacement for old UNIX crypt(1)"; longDescription = '' diff --git a/pkgs/tools/misc/mcrypt/format-string.patch b/pkgs/tools/misc/mcrypt/format-string.patch new file mode 100644 index 000000000000..322ab473811f --- /dev/null +++ b/pkgs/tools/misc/mcrypt/format-string.patch @@ -0,0 +1,31 @@ +--- mcrypt-2.6.8/src/errors.c ++++ mcrypt-2.6.8/src/errors.c +@@ -25,24 +25,24 @@ + + void err_quit(char *errmsg) + { +- fprintf(stderr, errmsg); ++ fprintf(stderr, "%s", errmsg); + exit(-1); + } + + void err_warn(char *errmsg) + { + if (quiet <= 1) +- fprintf(stderr, errmsg); ++ fprintf(stderr, "%s", errmsg); + } + + void err_info(char *errmsg) + { + if (quiet == 0) +- fprintf(stderr, errmsg); ++ fprintf(stderr, "%s", errmsg); + } + + void err_crit(char *errmsg) + { + if (quiet <= 2) +- fprintf(stderr, errmsg); ++ fprintf(stderr, "%s", errmsg); + } diff --git a/pkgs/tools/misc/mcrypt/overflow.patch b/pkgs/tools/misc/mcrypt/overflow.patch new file mode 100644 index 000000000000..bf747a58266a --- /dev/null +++ b/pkgs/tools/misc/mcrypt/overflow.patch @@ -0,0 +1,24 @@ +From 3efb40e17ce4f76717ae17a1ce1e1f747ddf59fd Mon Sep 17 00:00:00 2001 +From: Alon Bar-Lev <alon.barlev@gmail.com> +Date: Sat, 22 Dec 2012 22:37:06 +0200 +Subject: [PATCH] cleanup: buffer overflow + +--- + mcrypt-2.6.8/src/extra.c | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/mcrypt-2.6.8/src/extra.c b/mcrypt-2.6.8/src/extra.c +index 3082f82..c7a1ac0 100644 +--- a/src/extra.c ++++ b/src/extra.c +@@ -241,6 +241,8 @@ int check_file_head(FILE * fstream, char *algorithm, char *mode, + if (m_getbit(6, flags) == 1) { /* if the salt bit is set */ + if (m_getbit(0, sflag) != 0) { /* if the first bit is set */ + *salt_size = m_setbit(0, sflag, 0); ++ if (*salt_size > sizeof(tmp_buf)) ++ err_quit(_("Salt is too long\n")); + if (*salt_size > 0) { + fread(tmp_buf, 1, *salt_size, + fstream); +-- +1.7.8.6 diff --git a/pkgs/tools/misc/mcrypt/segv.patch b/pkgs/tools/misc/mcrypt/segv.patch new file mode 100644 index 000000000000..6796163418f5 --- /dev/null +++ b/pkgs/tools/misc/mcrypt/segv.patch @@ -0,0 +1,39 @@ +From 5bee29fae8f0e936ad4c957aef6035d09532a57a Mon Sep 17 00:00:00 2001 +From: Alon Bar-Lev <alon.barlev@gmail.com> +Date: Sat, 22 Dec 2012 22:04:27 +0200 +Subject: [PATCH] cleanup: fixup segv on buffer access + +use exact buffer size instead of guess. + +do not copy out of source buffer. + +Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com> +--- + mcrypt-2.6.8/src/rfc2440.c | 5 +++-- + 1 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/mcrypt-2.6.8/src/rfc2440.c b/mcrypt-2.6.8/src/rfc2440.c +index 5a1f296..929b9ab 100644 +--- a/src/rfc2440.c ++++ b/src/rfc2440.c +@@ -497,7 +497,7 @@ plaintext_encode(const USTRING dat) + time_t t; + + assert(dat->len > 0); +- result = make_ustring( NULL, 2 * dat->len); /* xxx */ ++ result = make_ustring( NULL, dat->len + 12); /* xxx */ + newdat = (USTRING)dat; + result->d[pos++] = (0x80 | 0x40 | PKT_PLAINTEXT); + +@@ -810,7 +810,8 @@ encrypted_encode(const USTRING pt, const DEK *dek) + _mcrypt_encrypt(dek->hd, rndpref, dek->blocklen + 2, NULL, 0); + _mcrypt_sync(dek->hd, rndpref, dek->blocklen); + +- ct = make_ustring( rndpref, 2 * pt->len); /* xxx */ ++ ct = make_ustring( NULL, dek->blocklen + 2 + pt->len + 12); /* xxx */ ++ memcpy(ct->d, rndpref, dek->blocklen + 2); + pos = dek->blocklen + 2; + + _mcrypt_encrypt(dek->hd, ct->d + pos, pt->len, pt->d, pt->len); +-- +1.7.8.6 diff --git a/pkgs/tools/misc/mcrypt/sprintf.patch b/pkgs/tools/misc/mcrypt/sprintf.patch new file mode 100644 index 000000000000..1c9ade807778 --- /dev/null +++ b/pkgs/tools/misc/mcrypt/sprintf.patch @@ -0,0 +1,108 @@ +Description: [CVE-2012-4527] Stack-based buffer overflow with long file names + . + A buffer overflow in mcrypt version 2.6.8 and earlier due to long filenames. + If a user were tricked into attempting to encrypt/decrypt specially crafted + long filename(s), this flaw would cause a stack-based buffer overflow that + could potentially lead to arbitrary code execution. + . + Note that this is caught by FORTIFY_SOURCE, which makes this a crash-only + bug on wheezy. +Author: Attila Bogar, Jean-Michel Vourgère <jmv_deb@nirgal.com> +Origin: https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2012-4527 +Bug: CVE-2012-4527 +Bug-Debian: http://bugs.debian.org/690924 +Forwarded: no +Last-Update: 2012-11-01 +Index: mcrypt-2.6.8/src/mcrypt.c +=================================================================== +--- mcrypt-2.6.8.orig/src/mcrypt.c ++++ mcrypt-2.6.8/src/mcrypt.c +@@ -41,4 +41,6 @@ + ++/* Temporary error message can contain one file name and 1k of text */ ++#define ERRWIDTH ((PATH_MAX)+1024) +-char tmperr[128]; ++char tmperr[ERRWIDTH]; + unsigned int stream_flag = FALSE; + char *keymode = NULL; + char *mode = NULL; +@@ -482,7 +485,7 @@ + #ifdef HAVE_STAT + if (stream_flag == FALSE) { + if (is_normal_file(file[i]) == FALSE) { +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("%s: %s is not a regular file. Skipping...\n"), + program_name, file[i]); +@@ -501,7 +504,7 @@ + dinfile = file[i]; + if ((isatty(fileno((FILE *) (stdin))) == 1) + && (stream_flag == TRUE) && (force == 0)) { /* not a tty */ +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("%s: Encrypted data will not be read from a terminal.\n"), + program_name); +@@ -520,7 +523,7 @@ + einfile = file[i]; + if ((isatty(fileno((FILE *) (stdout))) == 1) + && (stream_flag == TRUE) && (force == 0)) { /* not a tty */ +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("%s: Encrypted data will not be written to a terminal.\n"), + program_name); +@@ -544,7 +547,7 @@ + strcpy(outfile, einfile); + /* if file has already the .nc ignore it */ + if (strstr(outfile, ".nc") != NULL) { +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("%s: file %s has the .nc suffix... skipping...\n"), + program_name, outfile); +@@ -590,10 +593,10 @@ + + if (x == 0) { + if (stream_flag == FALSE) { +- sprintf(tmperr, _("File %s was decrypted.\n"), dinfile); ++ snprintf(tmperr, ERRWIDTH, _("File %s was decrypted.\n"), dinfile); + err_warn(tmperr); + } else { +- sprintf(tmperr, _("Stdin was decrypted.\n")); ++ snprintf(tmperr, ERRWIDTH, _("Stdin was decrypted.\n")); + err_warn(tmperr); + } + #ifdef HAVE_STAT +@@ -610,7 +613,7 @@ + + } else { + if (stream_flag == FALSE) { +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("File %s was NOT decrypted successfully.\n"), + dinfile); +@@ -636,10 +639,10 @@ + + if (x == 0) { + if (stream_flag == FALSE) { +- sprintf(tmperr, _("File %s was encrypted.\n"), einfile); ++ snprintf(tmperr, ERRWIDTH, _("File %s was encrypted.\n"), einfile); + err_warn(tmperr); + } else { +- sprintf(tmperr, _("Stdin was encrypted.\n")); ++ snprintf(tmperr, ERRWIDTH, _("Stdin was encrypted.\n")); + err_warn(tmperr); + } + #ifdef HAVE_STAT +@@ -655,7 +658,7 @@ + + } else { + if (stream_flag == FALSE) { +- sprintf(tmperr, ++ snprintf(tmperr, ERRWIDTH, + _ + ("File %s was NOT encrypted successfully.\n"), + einfile); diff --git a/pkgs/tools/misc/pg_top/default.nix b/pkgs/tools/misc/pg_top/default.nix index 0d379cd11d4a..4de334331158 100644 --- a/pkgs/tools/misc/pg_top/default.nix +++ b/pkgs/tools/misc/pg_top/default.nix @@ -1,16 +1,16 @@ -{stdenv, fetchurl, ncurses, postgresql}: +{ stdenv, fetchurl, ncurses, postgresql }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { name = "pg_top-3.7.0"; src = fetchurl { - url = http://pgfoundry.org/frs/download.php/1781/pg_top-3.7.0.tar.gz; + url = "http://pgfoundry.org/frs/download.php/1781/${name}.tar.gz"; sha256 = "17xrv0l58rv3an06gkajzw0gg6v810xx6vl137an1iykmhvfh7h2"; }; - buildInputs = [ncurses postgresql]; + buildInputs = [ ncurses postgresql ]; - meta = { + meta = with stdenv.lib; { description = "A 'top' like tool for PostgreSQL"; longDescription = '' pg_top allows you to: @@ -21,8 +21,10 @@ stdenv.mkDerivation { <listitem>View user table statistics.</listitem> <listitem>View user index statistics.</listitem> </itemizedlist> - ''; + ''; homepage = http://ptop.projects.postgresql.org/; + platforms = platforms.linux; + license = licenses.free; # see commands.c }; } diff --git a/pkgs/tools/misc/screenfetch/default.nix b/pkgs/tools/misc/screenfetch/default.nix index 92cc800d83d3..972e10492784 100644 --- a/pkgs/tools/misc/screenfetch/default.nix +++ b/pkgs/tools/misc/screenfetch/default.nix @@ -3,12 +3,12 @@ }: stdenv.mkDerivation { - name = "screenFetch-2015-04-20"; + name = "screenFetch-2016-01-13"; src = fetchgit { url = git://github.com/KittyKatt/screenFetch.git; - rev = "53e1c0cccacf648e846057938a68dda914f532a1"; - sha256 = "1wyvy1sn7vnclwrzd32jqlq6iirjkhp2ak55brhkpp9rj1qxk3q6"; + rev = "22e5bee7647453d45ec82f543f37b8a6a062835d"; + sha256 = "0xdiz02bqg7ajj547j496qq9adysm1f6zymcy3yyfgw3prnzvdir"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/misc/testdisk/default.nix b/pkgs/tools/misc/testdisk/default.nix index a80e560b5ebc..312c0ae6db5a 100644 --- a/pkgs/tools/misc/testdisk/default.nix +++ b/pkgs/tools/misc/testdisk/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, ncurses, libjpeg, e2fsprogs, zlib, openssl, libuuid, ntfs3g }: stdenv.mkDerivation { - name = "testdisk-6.14"; + name = "testdisk-7.0"; src = fetchurl { - url = http://www.cgsecurity.org/testdisk-6.14.tar.bz2; - sha256 = "0v1jap83f5h99zv01v3qmqm160d36n4ysi0gyq7xzb3mqgmw75x5"; + url = http://www.cgsecurity.org/testdisk-7.0.tar.bz2; + sha256 = "00bb3b6b22e6aba88580eeb887037aef026968c21a87b5f906c6652cbee3442d"; }; buildInputs = [ ncurses libjpeg zlib openssl libuuid ] diff --git a/pkgs/tools/misc/tlp/default.nix b/pkgs/tools/misc/tlp/default.nix index d21b4fb2f3f8..7b57458bd3f4 100644 --- a/pkgs/tools/misc/tlp/default.nix +++ b/pkgs/tools/misc/tlp/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchFromGitHub, makeWrapper, perl, systemd, iw, rfkill, hdparm, ethtool, inetutils -, module_init_tools, pciutils, smartmontools, x86_energy_perf_policy +, module_init_tools, pciutils, smartmontools, x86_energy_perf_policy, gawk, gnugrep, coreutils , enableRDW ? false, networkmanager }: @@ -28,7 +28,7 @@ in stdenv.mkDerivation { paths = lib.makeSearchPath "bin" ([ iw rfkill hdparm ethtool inetutils systemd module_init_tools pciutils smartmontools - x86_energy_perf_policy + x86_energy_perf_policy gawk gnugrep coreutils ] ++ lib.optional enableRDW networkmanager ); diff --git a/pkgs/tools/misc/tmate/default.nix b/pkgs/tools/misc/tmate/default.nix index 881c9f1c54f8..b50091657995 100644 --- a/pkgs/tools/misc/tmate/default.nix +++ b/pkgs/tools/misc/tmate/default.nix @@ -1,26 +1,22 @@ -{ stdenv, fetchFromGitHub, autoconf, automake110x, libtool, pkgconfig, zlib, openssl, libevent, ncurses, cmake, ruby }: +{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, zlib, openssl, libevent, ncurses, cmake, ruby, libmsgpack, libssh }: stdenv.mkDerivation rec { name = "tmate-${version}"; - version = "1.8.10"; + version = "2.2.0"; src = fetchFromGitHub { owner = "nviennot"; repo = "tmate"; rev = version; - sha256 = "1bd9mi8fx40608zlady9dbv21kbdwc3kqrgz012m529f6cbysmzc"; + sha256 = "1w3a7na0yj1y0x24qckc7s2y9xfak5iv6vyqrd0iibn3b7dxarli"; }; - buildInputs = [ autoconf automake110x pkgconfig libtool zlib openssl libevent ncurses cmake ruby ]; + buildInputs = [ autoconf automake pkgconfig libtool zlib openssl libevent ncurses cmake ruby libmsgpack libssh ]; dontUseCmakeConfigure=true; preConfigure = "./autogen.sh"; - postPatch = stdenv.lib.optionalString stdenv.isDarwin '' - substituteInPlace msgpack/bootstrap --replace glibtoolize libtoolize - ''; - meta = { homepage = http://tmate.io/; description = "Instant Terminal Sharing"; diff --git a/pkgs/tools/misc/ttylog/default.nix b/pkgs/tools/misc/ttylog/default.nix index 16db6b62eb7a..ab7ab2b68c34 100644 --- a/pkgs/tools/misc/ttylog/default.nix +++ b/pkgs/tools/misc/ttylog/default.nix @@ -15,7 +15,11 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = "http://ttylog.sourceforg.net"; - description = "a serial port logger which can be used to print everything to stdout that comes from a serial device"; + description = "Simple serial port logger"; + longDescription = '' + A serial port logger which can be used to print everything to stdout + that comes from a serial device. + ''; license = licenses.gpl2; platforms = platforms.linux; maintainers = with maintainers; [ wkennington ]; diff --git a/pkgs/tools/misc/txtw/default.nix b/pkgs/tools/misc/txtw/default.nix new file mode 100644 index 000000000000..90a9e0fa66ff --- /dev/null +++ b/pkgs/tools/misc/txtw/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchFromGitHub, cairo }: + +stdenv.mkDerivation rec { + version = "0.4"; + name = "txtw-${version}"; + + src = fetchFromGitHub { + owner = "baskerville"; + repo = "txtw"; + rev = "${version}"; + sha256 = "17yjdgdd080fsf5r1wzgk6vvzwsa15gcwc9z64v7x588jm1ryy3k"; + }; + + buildInputs = [ cairo ]; + + prePatch = ''sed -i "s@/usr/local@$out@" Makefile''; + + meta = with stdenv.lib; { + description = "Compute text widths"; + homepage = https://github.com/baskerville/txtw; + maintainers = with maintainers; [ lihop ]; + license = licenses.unlicense; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/xfstests/default.nix b/pkgs/tools/misc/xfstests/default.nix new file mode 100644 index 000000000000..b7c1795c0372 --- /dev/null +++ b/pkgs/tools/misc/xfstests/default.nix @@ -0,0 +1,86 @@ +{ stdenv, acl, attr, autoreconfHook, bash, bc, coreutils, e2fsprogs, fetchgit, fio, gawk +, lib, libaio, libcap_progs, libuuid, libxfs, lvm2, openssl, perl, procps, psmisc, su +, time, utillinux, which, writeScript, xfsprogs }: + +stdenv.mkDerivation { + name = "xfstests-2016-01-11"; + + src = fetchgit { + url = "git://oss.sgi.com/xfs/cmds/xfstests.git"; + rev = "dfe582dd396f16ddce1909baab7376e00af07792"; + sha256 = "0hbgccmhcxn5nm87nq13kpi3rcbjadlj65kd03bfjqxhm4gx732q"; + }; + + buildInputs = [ acl autoreconfHook attr gawk libaio libuuid libxfs openssl perl ]; + + patchPhase = '' + # Patch the destination directory + sed -i include/builddefs.in -e "s|^PKG_LIB_DIR\s*=.*|PKG_LIB_DIR=$out/lib/xfstests|" + + # Don't canonicalize path to mkfs (in util-linux) - otherwise e.g. mkfs.ext4 isn't found + sed -i common/config -e 's|^export MKFS_PROG=.*|export MKFS_PROG=mkfs|' + + for f in common/* tools/* tests/*/*; do + sed -i $f -e 's|/bin/bash|${bash}/bin/bash|' + sed -i $f -e 's|/bin/true|true|' + sed -i $f -e 's|/usr/sbin/filefrag|${e2fsprogs}/bin/filefrag|' + sed -i $f -e 's|hostname -s|hostname|' # `hostname -s` seems problematic on NixOS + sed -i $f -e 's|$(_yp_active)|1|' # NixOS won't ever have Yellow Pages enabled + done + + for f in src/*.c src/*.sh; do + sed -e 's|/bin/rm|${coreutils}/bin/rm|' -i $f + sed -e 's|/usr/bin/time|${time}/bin/time|' -i $f + done + + patchShebangs . + ''; + + preConfigure = '' + # The configure scripts really don't like looking in PATH at all... + export AWK=$(type -P awk) + export ECHO=$(type -P sort) + export LIBTOOL=$(type -P libtool) + export MAKE=$(type -P make) + export SED=$(type -P sed) + export SORT=$(type -P sort) + ''; + + postInstall = '' + patchShebangs $out/lib/xfstests + + mkdir -p $out/bin + substitute $wrapperScript $out/bin/xfstests-check --subst-var out + chmod a+x $out/bin/xfstests-check + ''; + + # The upstream package is pretty hostile to packaging; it looks up + # various paths relative to current working directory, and also + # wants to write temporary files there. So create a temporary + # to run from and symlink the runtime files to it. + wrapperScript = writeScript "xfstests-check" '' + #!/bin/sh + set -e + export RESULT_BASE="$(pwd)/results" + + dir=$(mktemp --tmpdir -d xfstests.XXXXXX) + trap "rm -rf $dir" EXIT + + chmod a+rx "$dir" + cd "$dir" + for f in check common ltp src tests; do + ln -s @out@/lib/xfstests/$f $f + done + + export PATH=${lib.makeSearchPath "bin" [acl attr bc e2fsprogs fio gawk libcap_progs lvm2 perl procps psmisc su utillinux which xfsprogs]}:$PATH + exec ./check "$@" + ''; + + meta = with stdenv.lib; { + description = "Torture test suite for filesystems"; + homepage = "http://oss.sgi.com/cgi-bin/gitweb.cgi?p=xfs/cmds/xfstests.git"; + license = licenses.gpl2; + maintainers = [ maintainers.dezgeg ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/xmltv/default.nix b/pkgs/tools/misc/xmltv/default.nix deleted file mode 100644 index 9d3939406066..000000000000 --- a/pkgs/tools/misc/xmltv/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ fetchurl, perl, perlPackages }: - -import ../../../development/perl-modules/generic perl { - name = "xmltv-0.5.51"; - src = fetchurl { - url = mirror://sourceforge/xmltv/xmltv-0.5.51.tar.bz2; - sha256 = "0vgc167y6y847m18vg3qwjy3df12bryjy9par01n5b9mjalx9jpd"; - }; - #makeMakerFlags = "-components tv_grab_nl"; - buildInputs = [ - perlPackages.TermReadKey perlPackages.XMLTwig perlPackages.XMLWriter - perlPackages.DateManip perlPackages.HTMLTree perlPackages.HTMLParser - perlPackages.HTMLTagset perlPackages.URI perlPackages.LWP - ]; - meta.broken = true; -} diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index cdd213b0eba5..09328c8d8aba 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchurl, buildPythonPackage, makeWrapper, ffmpeg, zip -, pandoc ? null }: +, pandoc ? null +}: # Pandoc is required to build the package's man page. Release tarballs # contain a formatted man page already, though, so it's fine to pass @@ -10,10 +11,10 @@ buildPythonPackage rec { - name = "youtube-dl-${meta.version}"; + name = "youtube-dl-2016.01.01"; src = fetchurl { - url = "http://yt-dl.org/downloads/${meta.version}/${name}.tar.gz"; + url = "http://yt-dl.org/downloads/${stdenv.lib.getVersion name}/${name}.tar.gz"; sha256 = "0b0pk8h2iswdiyf65c0zcwcad9dm2hid67fnfafj7d3ikp4kfbvk"; }; @@ -24,7 +25,6 @@ buildPythonPackage rec { ''wrapProgram $out/bin/youtube-dl --prefix PATH : "${ffmpeg}/bin"''; meta = with stdenv.lib; { - version = "2016.01.01"; homepage = http://rg3.github.io/youtube-dl/; repositories.git = https://github.com/rg3/youtube-dl.git; description = "Command-line tool to download videos from YouTube.com and other sites"; |