diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2015-10-03 13:33:13 +0200 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2015-10-03 13:33:37 +0200 |
commit | 5227fb1dd53fcb5918b9342dff4868f4ad68427e (patch) | |
tree | d6cd521e3f67944031216a27f740f28f22b73b41 /pkgs/tools/misc | |
parent | d6dd3b8bd1eaeeb21dfdb5051cd4732c748ce5d7 (diff) | |
parent | 33373d939a19f465228ddede6d38ce9032b5916b (diff) |
Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
Diffstat (limited to 'pkgs/tools/misc')
115 files changed, 2998 insertions, 656 deletions
diff --git a/pkgs/tools/misc/antimicro/default.nix b/pkgs/tools/misc/antimicro/default.nix new file mode 100644 index 0000000000000..a2eed91393064 --- /dev/null +++ b/pkgs/tools/misc/antimicro/default.nix @@ -0,0 +1,22 @@ +{ stdenv, cmake, pkgconfig, SDL2, qt5, xorg, fetchzip }: + +stdenv.mkDerivation rec { + name = "antimicro-${version}"; + version = "2.18"; + + src = fetchzip { + url = "https://github.com/Ryochan7/antimicro/archive/${version}.tar.gz"; + sha256 = "0kyl4xl2am50v2xscgy2irpcdj78f7flgfhljyjck4ynf8d40vb7"; + }; + + buildInputs = [ + cmake pkgconfig SDL2 qt5.base qt5.tools xorg.libXtst + ]; + + meta = with stdenv.lib; { + description = "GUI for mapping keyboard and mouse controls to a gamepad"; + homepage = "https://github.com/Ryochan7/antimicro"; + maintainers = with maintainers; [ jb55 ]; + license = licenses.gpl3; + }; +} diff --git a/pkgs/tools/misc/bandwidth/default.nix b/pkgs/tools/misc/bandwidth/default.nix index 35b13448b59d0..ff5e47336d3cb 100644 --- a/pkgs/tools/misc/bandwidth/default.nix +++ b/pkgs/tools/misc/bandwidth/default.nix @@ -19,7 +19,8 @@ stdenv.mkDerivation rec { buildInputs = [ nasm ]; - buildFlags = [ arch ]; + buildFlags = [ arch ] + ++ stdenv.lib.optionals stdenv.cc.isClang [ "CC=clang" "LD=clang" ]; installPhase = '' mkdir -p $out/bin diff --git a/pkgs/tools/misc/bdf2psf/default.nix b/pkgs/tools/misc/bdf2psf/default.nix new file mode 100644 index 0000000000000..342c014faaaef --- /dev/null +++ b/pkgs/tools/misc/bdf2psf/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchurl, perl, dpkg }: + +stdenv.mkDerivation rec { + name = "bdf2psf-${version}"; + version = "1.132"; + + src = fetchurl { + url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb"; + sha256 = "01r8v6qi6klsgi66ld86c78cdz308mywrm9j101d73nsxgx6qhzz"; + }; + + buildInputs = [ dpkg ]; + + dontConfigure = true; + dontBuild = true; + + unpackPhase = "dpkg-deb -x $src ."; + installPhase = " + substituteInPlace usr/bin/bdf2psf --replace /usr/bin/perl ${perl}/bin/perl + mv usr/bin . + cp -r . $out + "; + + meta = { + description = "BDF to PSF converter"; + homepage = https://packages.debian.org/sid/bdf2psf; + longDescription = '' + Font converter to generate console fonts from BDF source fonts + ''; + license = stdenv.lib.licenses.gpl2; + }; +} \ No newline at end of file diff --git a/pkgs/tools/misc/bmon/default.nix b/pkgs/tools/misc/bmon/default.nix index 1a24ba700513b..1bbabcf5523f8 100644 --- a/pkgs/tools/misc/bmon/default.nix +++ b/pkgs/tools/misc/bmon/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "bmon-${version}"; - version = "3.6"; + version = "3.8"; src = fetchFromGitHub { owner = "tgraf"; repo = "bmon"; rev = "v${version}"; - sha256 = "16qwazays2j448kmfckv6wvh4rhmhc9q4vp1s75hm9z02cmhvk8q"; + sha256 = "19jv14r9j9n54bqhidw3z11z3wys1v2cagqpsxn0kjga1gkg87xs"; }; buildInputs = [ autoconf automake pkgconfig ncurses confuse libnl ]; diff --git a/pkgs/tools/misc/brltty/default.nix b/pkgs/tools/misc/brltty/default.nix new file mode 100644 index 0000000000000..4201fb25f98ab --- /dev/null +++ b/pkgs/tools/misc/brltty/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl, pkgconfig, alsaSupport, alsaLib ? null, bluez }: + +assert alsaSupport -> alsaLib != null; + +stdenv.mkDerivation rec { + name = "brltty-5.2"; + + src = fetchurl { + url = "http://brltty.com/archive/${name}.tar.gz"; + sha256 = "1zaab5pxkqrv081n23p3am445d30gk0km4azqdirvcpw9z15q0cz"; + }; + + buildInputs = [ pkgconfig alsaLib bluez ] + ++ stdenv.lib.optional alsaSupport alsaLib; + + meta = { + description = "Access software for a blind person using a braille display"; + longDescription = '' + BRLTTY is a background process (daemon) which provides access to the Linux/Unix + console (when in text mode) for a blind person using a refreshable braille display. + It drives the braille display, and provides complete screen review functionality. + Some speech capability has also been incorporated. + ''; + homepage = http://www.brltty.com/; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.bramd ]; + platforms = stdenv.lib.platforms.all; + }; + + patchPhase = '' + substituteInPlace configure --replace /sbin/ldconfig ldconfig + ''; +} diff --git a/pkgs/tools/misc/byobu/default.nix b/pkgs/tools/misc/byobu/default.nix index ca9a9453dbfc7..4491905de4fcb 100644 --- a/pkgs/tools/misc/byobu/default.nix +++ b/pkgs/tools/misc/byobu/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ncurses }: +{ stdenv, fetchurl, ncurses, python, perl }: stdenv.mkDerivation rec { name = "byobu-5.87"; @@ -10,6 +10,8 @@ stdenv.mkDerivation rec { doCheck = true; + buildInputs = [ python perl ]; + meta = { homepage = https://launchpad.net/byobu/; description = "Text-based window manager and terminal multiplexer"; diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix new file mode 100644 index 0000000000000..e2b8c70c6e278 --- /dev/null +++ b/pkgs/tools/misc/calamares/default.nix @@ -0,0 +1,55 @@ +{ stdenv, fetchgit, cmake, qt5, polkit_qt5, libyamlcpp, python, boost, parted +, extra-cmake-modules, kconfig, ki18n, kcoreaddons, solid, utillinux, libatasmart +, ckbcomp, glibc, tzdata, xkeyboard_config }: + +stdenv.mkDerivation rec { + name = "calamares-${version}"; + version = "1.0"; + + src = fetchgit { + url = "https://github.com/calamares/calamares.git"; + rev = "dabfb68a68cb012a90cd7b94a22e1ea08f7dd8ad"; + sha256 = "2851ce487aaac61d2df342a47f91ec87fe52ff036227ef697caa7056fe5f188c"; + }; + + buildInputs = [ + cmake qt5.base qt5.tools libyamlcpp python boost polkit_qt5 parted + extra-cmake-modules kconfig ki18n kcoreaddons solid utillinux libatasmart + ]; + + cmakeFlags = [ + "-DPYTHON_LIBRARY=${python}/lib/libpython${python.majorVersion}m.so" + "-DPYTHON_INCLUDE_DIR=${python}/include/python${python.majorVersion}m" + "-DWITH_PARTITIONMANAGER=1" + ]; + + patchPhase = '' + sed -e "s,/usr/bin/calamares,$out/bin/calamares," \ + -i calamares.desktop \ + -i com.github.calamares.calamares.policy + + sed -e 's,/usr/share/zoneinfo,${tzdata}/share/zoneinfo,' \ + -i src/modules/locale/timezonewidget/localeconst.h \ + -i src/modules/locale/SetTimezoneJob.cpp + + sed -e 's,/usr/share/i18n/locales,${glibc}/share/i18n/locales,' \ + -i src/modules/locale/timezonewidget/localeconst.h + + sed -e 's,/usr/share/X11/xkb/rules/base.lst,${xkeyboard_config}/share/X11/xkb/rules/base.lst,' \ + -i src/modules/keyboard/keyboardwidget/keyboardglobal.h + + sed -e 's,"ckbcomp","${ckbcomp}/bin/ckbcomp",' \ + -i src/modules/keyboard/keyboardwidget/keyboardpreview.cpp + ''; + + preInstall = '' + substituteInPlace cmake_install.cmake --replace "${polkit_qt5}" "$out" + ''; + + meta = with stdenv.lib; { + description = "Distribution-independent installer framework"; + license = licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ tstrobel ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/clex/default.nix b/pkgs/tools/misc/clex/default.nix index 9c32d3c546674..47eacd9bdb095 100644 --- a/pkgs/tools/misc/clex/default.nix +++ b/pkgs/tools/misc/clex/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { add-on to your favorite shell. ''; homepage = http://www.clex.sk; - license = with licenses; gpl2Plus; + license = licenses.gpl2Plus; platforms = with platforms; linux; maintainers = with maintainers; [ nckx ]; }; diff --git a/pkgs/tools/misc/cloc/default.nix b/pkgs/tools/misc/cloc/default.nix index 8d7ba0c70c82a..bb278dbe1b199 100644 --- a/pkgs/tools/misc/cloc/default.nix +++ b/pkgs/tools/misc/cloc/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "cloc-${version}"; - version = "1.62"; + version = "1.64"; src = fetchurl { url = "mirror://sourceforge/cloc/cloc-${version}.tar.gz"; - sha256 = "1cxc663dccd0sc2m0aj5lxdbnbzrys6rh9n8q122h74bfvsiw4f4"; + sha256 = "1w3mz69h2i7pscvi9q7yp7wimds8g38c5ph78cj5pvjl5wa035rh"; }; buildInputs = [ perl AlgorithmDiff RegexpCommon ]; diff --git a/pkgs/tools/misc/colord-kde/default.nix b/pkgs/tools/misc/colord-kde/default.nix index 55260b269c6d9..606595f46057e 100644 --- a/pkgs/tools/misc/colord-kde/default.nix +++ b/pkgs/tools/misc/colord-kde/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, cmake, colord, libX11, libXrandr, lcms2, pkgconfig, kdelibs}: +{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig +, colord, libX11, libXrandr, lcms2, kdelibs +}: stdenv.mkDerivation { name = "colord-kde-0.3.0"; @@ -8,7 +10,9 @@ stdenv.mkDerivation { sha256 = "ab3cdb7c8c98aa2ee8de32a92f87770e1fbd58eade6471f3f24d932b50b4cf09"; }; - buildInputs = [ cmake colord libX11 libXrandr lcms2 pkgconfig kdelibs ]; + nativeBuildInputs = [ automoc4 cmake perl pkgconfig ]; + + buildInputs = [ colord libX11 libXrandr lcms2 kdelibs ]; enableParallelBuilding = true; diff --git a/pkgs/tools/misc/colord/default.nix b/pkgs/tools/misc/colord/default.nix index 9f91a1acc608b..40c9ddf8c946c 100644 --- a/pkgs/tools/misc/colord/default.nix +++ b/pkgs/tools/misc/colord/default.nix @@ -1,13 +1,14 @@ -{ stdenv, fetchurl, fetchgit, bashCompletion +{ stdenv, fetchzip, fetchgit, bashCompletion , glib, polkit, pkgconfig, intltool, gusb, libusb1, lcms2, sqlite, systemd, dbus -, automake, autoconf, libtool, gtk_doc, which, gobjectIntrospection }: +, automake, autoconf, libtool, gtk_doc, which, gobjectIntrospection, argyllcms +, libgudev }: stdenv.mkDerivation rec { - name = "colord-1.2.3"; + name = "colord-1.2.12"; - src = fetchurl { + src = fetchzip { url = "http://www.freedesktop.org/software/colord/releases/${name}.tar.xz"; - sha256 = "1z3l6hb3b08fixfra6m887a2j3lvhib6vp798ik16jfh375gr490"; + sha256 = "0rvvbpxd5x479v4p6pck317mlf3j29s154i1n8hlx8n4znhwrb0k"; }; enableParallelBuilding = true; @@ -19,7 +20,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ glib polkit pkgconfig intltool gusb libusb1 lcms2 sqlite systemd dbus gobjectIntrospection - bashCompletion ]; + bashCompletion argyllcms automake autoconf libgudev ]; postInstall = '' rm -fr $out/var/lib/colord @@ -28,7 +29,7 @@ stdenv.mkDerivation rec { ''; meta = { - description = "system service that makes it easy to manage, install and generate color profiles to accurately color manage input and output devices"; + description = "System service to manage, install and generate color profiles to accurately color manage input and output devices"; homepage = http://www.freedesktop.org/software/colord/intro.html; license = stdenv.lib.licenses.lgpl2Plus; maintainers = [stdenv.lib.maintainers.marcweber]; diff --git a/pkgs/tools/misc/coreutils/coreutils-8.23-4.cygwin.patch b/pkgs/tools/misc/coreutils/coreutils-8.23-4.cygwin.patch new file mode 100644 index 0000000000000..2f69347ffabdb --- /dev/null +++ b/pkgs/tools/misc/coreutils/coreutils-8.23-4.cygwin.patch @@ -0,0 +1,1259 @@ +--- coreutils-8.23/ChangeLog 2014-07-18 15:22:24.000000000 -0700 ++++ coreutils-8.23/ChangeLog 2014-10-13 08:56:50.775188900 -0700 +@@ -1,3 +1,220 @@ ++2014-10-13 U-WIN-RSJ0SJPBR3E\Administrator <Administrator@WIN-KQ1OCEBI2E8> ++ ++ Cygwin release 8.23-4 ++ * copy.c (copy_internal): Fix typo that broke recursive copy ++ when dealing with directories. ++ ++2014-09-24 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.23-3 ++ * lib/cygwin.c (cygwin_spelling): Skip .exe magic if .exe is ++ already present. Also honor .exe magic on symlinks. ++ * lib/same.c (same_name): Treat files as same if only difference ++ is .exe magic. ++ * copy.c (copy): Move symlink special casing here. ++ * install.c (strip): Update caller. ++ * ls.c (gobble_file): Likewise. ++ * stat.c (do_statfs, do_stat): Likewise. ++ ++2014-08-12 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.23-2. ++ Drop hostname. ++ ++2014-08-01 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.23-1. ++ * configure.ac: Disable stdbuf. ++ * lib/local.mk: Upstream switched to flat make, impacting how ++ we build local cygwin.c code. ++ * lib/canonicalize.c: Accepted upstream. ++ * lib/file-has-acl.c: Likewise. ++ * realpath.c: Likewise. ++ * su.c: Upstream dropped su. ++ * Makefile.am: Drop su changes. ++ * chroot.c: Adapt to new upstream code. ++ ++2012-02-04 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.15-1. ++ * lib/fts.c: Early gnulib fix is now upstream. ++ * lib/canonicalize.c: Backport gnulib fix for /// -> /. ++ * realpath.c: Backport gnulib fix for --relative-to. ++ ++2011-10-27 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.14-1. ++ * lib/ftc.c: Backport gnulib fix to make rm close before rmdir. ++ * lib/cygwin.c (cygwin_spelling): Fix logic when 'f' and 'f.exe' ++ exist but are different files. ++ * stat.c: Fix --append-exe. ++ ++2011-02-04 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.10-1. ++ ++2010-12-24 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.8-1. ++ * lib/mountlist.c (ME_REMOTE): Restore previous cygwin hack to ++ determine remote drives, lost since 6.11-1. ++ ++2010-04-29 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.5-1. ++ ++2010-03-11 Eric Blake <eblake@redhat.com> ++ ++ Cygwin release 8.4-1. ++ * lib/xfreopen.c (xfreopen): Consolidate workaround for broken ++ freopen usage into one place. ++ * copy.c (copy): Reinstate .exe magic handling when copying ++ files with implicit .exe. ++ ++2008-12-13 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 7.0-1. ++ ++2008-06-02 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.12-1. ++ ++2008-05-12 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.11-1, requires cygwin 1.7.0. ++ * lib/cygwin.h (CYGWIN_APPEND_EXE): Accomodate new PATH_MAX. ++ * lib/cygwin.c (cygwin_spelling): Accomodate new trailing ++ `.' semantics. ++ * lib/same.c (same_name): Accomodate new PATH_MAX. ++ ++2008-01-24 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.10-1. ++ * lib/hash-triple.c (triple_hash): Hash case-insensitively. ++ * lib/hash-pjw.h (hash_pjw_case): New interface. ++ * lib/hash-pjw.c (hash_pjw_case): New function. ++ * chcon.c (main): Support my root_dev_ino tweaks. ++ ++2007-08-21 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.9-5. ++ * same.c (same_name): Detect same file differing only by case. ++ * copy.c (same_file_ok): Add parameter to detect when case ++ change is being attempted. ++ (triple_hash): Hash names case-insensitively. ++ (copy_internal): Accommodate case-change attempts. ++ * mv.c (do_move): Allow 'mv foo/ Foo/' as shorthand for ++ 'mv -T foo/ Foo/'. ++ ++2007-07-23 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.9-4. ++ * dd.c (main): Fix typo in earlier cygwin patch. ++ ++2007-05-29 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.9-3. ++ * cksum.c (main): Don't lose append mode. ++ * md5sum.c (main): Likewise. ++ * cat.c (main): Likewise. ++ * head.c (main): Likewise. ++ * tac.c (main): Likewise. ++ * tail.c (main): Likewise. ++ * tee.c (main): Likewise. ++ * tr.c (main): Likewise. ++ ++2006-11-24 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 6.6-2. ++ * lib/cygwin.c (cygwin_spelling): Work even with old-style ++ symlinks, which lacked .lnk suffix. ++ ++2006-04-14 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 5.94-5. Experimental only, depends on cygwin ++ snapshot 20060329 or later. ++ * dd.c (main): Default to binary mode. ++ * system.h (rpl_freopen): Remove this hack, now that cygwin ++ freopen(NULL) works. ++ * lib/quotearg.c (quote_eight_bit): New variable, so I can... ++ (quotearg_buffer_restyled): treat 8-bit characters as printable ++ when outputting to a terminal. ++ * lib/quote.c (quote_n): Use it. ++ ++2006-02-28 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 5.94-4. Experimental only, depends on cygwin ++ snapshot 20060227 or later. ++ * lib/root-dev-ino.h (struct root_dev_ino): New struct. ++ (ROOT_DEV_INO_CHECK, ROOT_DEV_INO_WARN): Also track //. ++ * lib/root-dev-ino.c (get_root_dev_ino): Also track //. ++ * chmod.c (root_dev_ino): Use new type. ++ (main): Ditto. ++ * chown-core.h (struct Chown_option): Ditto. ++ * chown.c (main): Ditto. ++ * remove.h (struct rm_options): Ditto. ++ * rm.c (main): Ditto. ++ * pwd.c (robust_getcwd): Ditto. Also fix bug when in / or //. ++ ++2006-01-24 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 5.93-3, depends on cygwin-1.5.19-1 or later. ++ * cksum.c (main): Always output binary files. ++ * md5sum.c (main): Likewise. ++ * su.c (correct_password): On NT machines, attempt ++ passwordless login first, and give better error message if ++ password check fails. I still don't know how to distinguish ++ between insufficient privileges vs. incorrect password. ++ * dircolors.c (main): Silence warning from tcsh 6.14.00. ++ ++2005-10-15 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 5.90-3, depends on snapshot 20051003 or later (will ++ become cygwin 1.5.19). ++ * doc/coreutils.texi (ls invocation, stat invocation): Document ++ --append-exe. ++ * ls.c (usage): Ditto. ++ (gobble_file): Append .exe as needed when requested. ++ * stat.c (usage): Document --append-exe. ++ (do_stat, do_statfs): Append .exe as needed when requested. ++ ++2005-10-08 Eric Blake <ebb9@byu.net> ++ ++ Cygwin release 5.90-2, depends on snapshot 20051003 or later (will ++ become cygwin 1.5.19). ++ * lib/mkdir-p.c (make_dir_parents): Fix bug in last patch. ++ * lib/cygwin.h (CYGWIN_APPEND_EXE): Factor into common macro. ++ * copy.c (copy): Use new macro. ++ * install.c (strip): Ditto. ++ * ln.c (do_link): Ditto. ++ ++2005-07-13 Eric Blake <ebb9@byu.net> ++ ++ * doc/coreutils.texi (ln invocation): Document --disable-exe-magic. ++ * ln.c (usage): Likewise. ++ (do_link): Skip .exe magic when requested. ++ ++2005-07-12 Eric Blake <ebb9@byu.net> ++ ++ * lib/cygwin.c (cygwin_spelling): Don't append .exe to directories. ++ Make sure .exe exists before returning 1, because otherwise ++ virtual directories such as /cygdrive have problems. ++ ++2005-07-07 Eric Blake <ebb9@byu.net> ++ ++ * lib/cygwin.h: New file, defining cygwin_spelling. ++ * lib/cygwin.c: New file. ++ * lib/Makefile.am: Compile it. ++ * copy.c (copy_internal, copy): Use new cygwin_spelling() to ++ undo .exe magic. ++ * link.c (do_link): Likewise. ++ * install.c (strip): Likewise. ++ ++2005-01-03 Corinna Vinschen <corinna@vinschen.de> ++ ++ * install.c (strip): Check for .exe here since strip doesn't. ++ ++ + 2014-07-18 Pádraig Brady <P@draigBrady.com> + + version 8.23 +--- coreutils-8.23/configure.ac 2014-07-17 18:40:57.000000000 -0700 ++++ coreutils-8.23/configure.ac 2014-10-13 08:30:37.165262300 -0700 +@@ -473,7 +473,7 @@ AC_COMPILE_IFELSE( + [stdbuf_supported=yes], + [stdbuf_supported=no]) + AC_MSG_RESULT([$stdbuf_supported]) +-if test "$stdbuf_supported" = "yes"; then ++if test "$stdbuf_supported" = "yes" && test -z "$EXEEXT"; then + gl_ADD_PROG([optional_bin_progs], [stdbuf]) + fi + +--- coreutils-8.23/doc/coreutils.texi 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/doc/coreutils.texi 2014-10-13 08:30:37.180881200 -0700 +@@ -7838,6 +7838,14 @@ These options change how file names them + + @table @samp + ++@item --append-exe ++@opindex --append-exe ++@cindex appending exe on cygwin ++Cygwin only: Cygwin normally performs @samp{.exe} magic, where a ++command line argument typed without an .exe extension transparently ++refers to the existing file with an extension. Specifying this option ++will make the .exe show if cygwin magic was involved. ++ + @item -b + @itemx --escape + @itemx --quoting-style=escape +@@ -11799,6 +11807,14 @@ With this option, @command{stat} acts on + by each symbolic link argument. + Without it, @command{stat} acts on any symbolic link argument directly. + ++@item --append-exe ++@opindex --append-exe ++@cindex appending exe on cygwin ++Cygwin only: Cygwin normally performs .exe magic, where a command line ++argument typed without an .exe extension transparently refers to the ++existing file with an extension. Specifying this option will make ++the .exe show if cygwin magic was involved. ++ + @item -f + @itemx --file-system + @opindex -f +--- coreutils-8.23/lib/cygwin.c 1969-12-31 16:00:00.000000000 -0800 ++++ coreutils-8.23/lib/cygwin.c 2014-10-13 08:30:37.180881200 -0700 +@@ -0,0 +1,67 @@ ++/* cygwin.c - helper functions unique to Cygwin ++ ++ Copyright (C) 2005, 2006, 2008, 2011 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software Foundation, ++ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++ ++ Written by Eric Blake. */ ++ ++#include <config.h> ++ ++#include "cygwin.h" ++ ++#include <errno.h> ++#include <limits.h> ++#include <string.h> ++#include <unistd.h> ++ ++/* Return -1 if PATH is not found, 0 if PATH will not have .exe ++ appended (it is possible that a PATH that does not exist still ++ returns 0 instead of -1, or fails for a PATH that exists but cannot ++ be stat'ed), and positive if PATH has ".exe" automatically appended ++ by cygwin (1 if PATH is a symlink, 2 otherwise). Won't change errno. */ ++ ++int ++cygwin_spelling (char const *path) ++{ ++ int saved_errno = errno; ++ int result = 0; /* Start with assumption that PATH is okay. */ ++ int len; ++ struct stat st1; ++ struct stat st2; ++ char *path_exe; ++ ++ if (! path || ! *path || len > PATH_MAX) ++ /* PATH will cause EINVAL or ENAMETOOLONG, treat it as non-existing. */ ++ return -1; ++ len = strlen (path); ++ if (path[len - 1] == '/' ++ || (len > 4 && !strcasecmp (&path[len - 4], ".exe"))) ++ /* Don't change spelling if there is a trailing `/' or '.exe'. */ ++ return 0; ++ if (lstat (path, &st1) < 0 || S_ISDIR(st1.st_mode)) ++ { ++ errno = saved_errno; ++ return -1; ++ } ++ path_exe = malloca (len + 5); /* adding ".exe" and NUL. */ ++ strcat (stpcpy (path_exe, path), ".exe"); ++ if (lstat (path_exe, &st2) == 0 && st1.st_ino == st2.st_ino) ++ result = 1 + !S_ISLNK(st1.st_mode); ++ freea (path_exe); ++ ++ errno = saved_errno; ++ return result; ++} +--- coreutils-8.23/lib/cygwin.h 1969-12-31 16:00:00.000000000 -0800 ++++ coreutils-8.23/lib/cygwin.h 2014-10-13 08:30:37.180881200 -0700 +@@ -0,0 +1,38 @@ ++/* cygwin.h - helper functions unique to Cygwin ++ ++ Copyright (C) 2005, 2006, 2008, 2010, 2011 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software Foundation, ++ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++ ++ Written by Eric Blake. */ ++ ++#ifndef CYGWIN_H ++# define CYGWIN_H 1 ++ ++#include "malloca.h" ++ ++int cygwin_spelling (char const *); ++ ++/* Append ".exe" to char *__NAME_ORIG, where __NAME is either NULL or ++ between __NAME_ORIG and the nul terminator. Both params will be ++ evaluated more than once and assigned the new value. The user must ++ later call freea(__NAME). */ ++#define CYGWIN_APPEND_EXE(__name, __name_orig) \ ++ __name_orig = __name = \ ++ strcat (strcpy (malloca (strchr (__name ? __name : __name_orig, '\0') \ ++ - (__name_orig) + 5), \ ++ __name_orig), ".exe") ++ ++#endif /* CYGWIN_H */ +--- coreutils-8.23/lib/hash-pjw.c 2014-05-29 05:05:50.000000000 -0700 ++++ coreutils-8.23/lib/hash-pjw.c 2014-10-13 08:30:37.180881200 -0700 +@@ -19,6 +19,7 @@ + + #include "hash-pjw.h" + ++#include <ctype.h> + #include <limits.h> + + #define SIZE_BITS (sizeof (size_t) * CHAR_BIT) +@@ -38,3 +39,16 @@ hash_pjw (const void *x, size_t tablesiz + + return h % tablesize; + } ++ ++/* Likewise, but case-insensitive. */ ++size_t ++hash_pjw_case (const void *x, size_t tablesize) ++{ ++ const unsigned char *s; ++ size_t h = 0; ++ ++ for (s = x; *s; s++) ++ h = tolower (*s) + ((h << 9) | (h >> (SIZE_BITS - 9))); ++ ++ return h % tablesize; ++} +--- coreutils-8.23/lib/hash-pjw.h 2014-05-29 05:05:50.000000000 -0700 ++++ coreutils-8.23/lib/hash-pjw.h 2014-10-13 08:30:37.180881200 -0700 +@@ -21,3 +21,4 @@ + The result is platform dependent: it depends on the size of the 'size_t' + type and on the signedness of the 'char' type. */ + extern size_t hash_pjw (void const *x, size_t tablesize) _GL_ATTRIBUTE_PURE; ++extern size_t hash_pjw_case (void const *x, size_t tablesize) _GL_ATTRIBUTE_PURE; +--- coreutils-8.23/lib/hash-triple.c 2014-05-29 05:05:50.000000000 -0700 ++++ coreutils-8.23/lib/hash-triple.c 2014-10-13 08:30:37.180881200 -0700 +@@ -34,7 +34,13 @@ size_t + triple_hash (void const *x, size_t table_size) + { + struct F_triple const *p = x; ++#if !__CYGWIN__ + size_t tmp = hash_pjw (p->name, table_size); ++#else // cygwin ++ /* Hash case-insensitively, to force collisions on names that differ by ++ case; copy.c can then account for case-insensitive renames. */ ++ size_t tmp = hash_pjw_case (p->name, table_size); ++#endif + + /* Ignoring the device number here should be fine. */ + return (tmp ^ p->st_ino) % table_size; +--- coreutils-8.23/lib/local.mk 2013-12-04 06:48:30.000000000 -0800 ++++ coreutils-8.23/lib/local.mk 2014-10-13 08:30:37.180881200 -0700 +@@ -3,3 +3,6 @@ include lib/gnulib.mk + # Allow "make distdir" to succeed before "make all" has run. + dist-hook: $(noinst_LIBRARIES) + .PHONY: dist-hook ++ ++# Hook in cygwin helper ++lib_libcoreutils_a_SOURCES += lib/cygwin.c lib/cygwin.h +--- coreutils-8.23/lib/root-dev-ino.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/lib/root-dev-ino.c 2014-10-13 08:30:37.180881200 -0700 +@@ -25,13 +25,17 @@ + /* Call lstat to get the device and inode numbers for '/'. + Upon failure, return NULL. Otherwise, set the members of + *ROOT_D_I accordingly and return ROOT_D_I. */ +-struct dev_ino * +-get_root_dev_ino (struct dev_ino *root_d_i) ++struct root_dev_ino * ++get_root_dev_ino (struct root_dev_ino *root_d_i) + { + struct stat statbuf; + if (lstat ("/", &statbuf)) + return NULL; +- root_d_i->st_ino = statbuf.st_ino; +- root_d_i->st_dev = statbuf.st_dev; ++ root_d_i->single_slash.st_ino = statbuf.st_ino; ++ root_d_i->single_slash.st_dev = statbuf.st_dev; ++ if (lstat ("//", &statbuf)) ++ return NULL; ++ root_d_i->double_slash.st_ino = statbuf.st_ino; ++ root_d_i->double_slash.st_dev = statbuf.st_dev; + return root_d_i; + } +--- coreutils-8.23/lib/root-dev-ino.h 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/lib/root-dev-ino.h 2014-10-13 08:30:37.180881200 -0700 +@@ -21,19 +21,26 @@ + # include "dev-ino.h" + # include "same-inode.h" + +-struct dev_ino * +-get_root_dev_ino (struct dev_ino *root_d_i); ++struct root_dev_ino ++{ ++ struct dev_ino single_slash; ++ struct dev_ino double_slash; ++}; ++ ++struct root_dev_ino * ++get_root_dev_ino (struct root_dev_ino *root_d_i); + + /* These macros are common to the programs that support the + --preserve-root and --no-preserve-root options. */ + + # define ROOT_DEV_INO_CHECK(Root_dev_ino, Dir_statbuf) \ +- (Root_dev_ino && SAME_INODE (*Dir_statbuf, *Root_dev_ino)) ++ (Root_dev_ino && (SAME_INODE (*Dir_statbuf, (Root_dev_ino)->single_slash) \ ++ || SAME_INODE (*Dir_statbuf, (Root_dev_ino)->double_slash))) + + # define ROOT_DEV_INO_WARN(Dirname) \ + do \ + { \ +- if (STREQ (Dirname, "/")) \ ++ if (STREQ (Dirname, "/") || STREQ (Dirname, "//")) \ + error (0, 0, _("it is dangerous to operate recursively on %s"), \ + quote (Dirname)); \ + else \ +--- coreutils-8.23/lib/same.c 2014-05-29 05:05:50.000000000 -0700 ++++ coreutils-8.23/lib/same.c 2014-10-13 08:30:37.180881200 -0700 +@@ -40,6 +40,13 @@ + #include "error.h" + #include "same-inode.h" + ++#if __CYGWIN__ ++# include <sys/cygwin.h> ++# include "cygwin.h" ++# include "malloca.h" ++# include "memcasecmp.h" ++#endif ++ + #ifndef MIN + # define MIN(a, b) ((a) < (b) ? (a) : (b)) + #endif +@@ -59,6 +66,45 @@ same_name (const char *source, const cha + (source_baselen == dest_baselen + && memcmp (source_basename, dest_basename, dest_baselen) == 0); + bool compare_dirs = identical_basenames; ++#if __CYGWIN__ ++ /* If two names differ case-insensitively by only an '.exe' suffix, ++ do some sleuthing to see if .exe magic matters on the shorter ++ name. Swapping the longer name to dest avoids duplication. */ ++ if (source_baselen == dest_baselen + 4) ++ { ++ char const *tmp_basename = source_basename; ++ size_t tmp_baselen = source_baselen; ++ source_basename = dest_basename; ++ source_baselen = dest_baselen; ++ dest_basename = tmp_basename; ++ dest_baselen = tmp_baselen; ++ } ++ if (source_baselen + 4 == dest_baselen ++ && !memcasecmp (dest_basename - 4, ".exe", 4) ++ && !memcasecmp (source_basename, dest_basename, source_baselen) ++ && 0 < cygwin_spelling(source)) ++ dest_baselen -= 4; ++ /* Some, but not all, files are case-insensitive (depending on mount ++ options, CYGWIN=case settings, and virtual file systems). Do ++ some sleuthing to decide whether case-insensitivity matters. */ ++ if (! compare_dirs && source_baselen == dest_baselen) ++ { ++ ssize_t wsrclen = cygwin_conv_path (CCP_POSIX_TO_WIN_W, ++ source, NULL, 0); ++ ssize_t wdstlen = cygwin_conv_path (CCP_POSIX_TO_WIN_W, ++ dest, NULL, 0); ++ char *wsrc = malloca (wsrclen); ++ char *wdst = malloca (wdstlen); ++ if (cygwin_conv_path (CCP_POSIX_TO_WIN_W, source, wsrc, wsrclen)) ++ error (EXIT_FAILURE, errno, "unable to convert path name %s", source); ++ if (cygwin_conv_path (CCP_POSIX_TO_WIN_W, dest, wdst, wdstlen)) ++ error (EXIT_FAILURE, errno, "unable to convert path name %s", dest); ++ if (wsrclen == wdstlen && memcasecmp (wsrc, wdst, wsrclen) == 0) ++ compare_dirs = true; ++ freea (wsrc); ++ freea (wdst); ++ } ++#endif /* __CYGWIN__ */ + bool same = false; + + #if ! _POSIX_NO_TRUNC && HAVE_PATHCONF && defined _PC_NAME_MAX +--- coreutils-8.23/lib/xfreopen.c 2014-05-29 05:05:50.000000000 -0700 ++++ coreutils-8.23/lib/xfreopen.c 2014-10-13 08:30:37.180881200 -0700 +@@ -18,6 +18,7 @@ + #include "xfreopen.h" + + #include <errno.h> ++#include <fcntl.h> + #include "error.h" + #include "exitfail.h" + #include "quote.h" +@@ -26,9 +27,17 @@ + #include "gettext.h" + #define _(msgid) gettext (msgid) + ++#define STREQ(s1, s2) (strcmp (s1, s2) == 0) ++ + void + xfreopen (char const *filename, char const *mode, FILE *fp) + { ++ if (!filename && STREQ (mode, "wb")) ++ { ++ int flag = fcntl (fileno (fp), F_GETFL); ++ if (0 <= flag && (flag & O_APPEND)) ++ mode = "ab"; ++ } + if (!freopen (filename, mode, fp)) + { + char const *f = (filename ? filename +--- coreutils-8.23/chcon.c 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/src/chcon.c 2014-10-13 08:30:37.180881200 -0700 +@@ -48,7 +48,7 @@ static bool verbose; + + /* Pointer to the device and inode numbers of '/', when --recursive. + Otherwise NULL. */ +-static struct dev_ino *root_dev_ino; ++static struct root_dev_ino *root_dev_ino; + + /* The name of the context file is being given. */ + static char const *specified_context; +@@ -569,7 +569,7 @@ main (int argc, char **argv) + + if (recurse && preserve_root) + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +--- coreutils-8.23/chgrp.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/chgrp.c 2014-10-13 08:30:37.180881200 -0700 +@@ -299,7 +299,7 @@ main (int argc, char **argv) + + if (chopt.recurse && preserve_root) + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + chopt.root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (chopt.root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +--- coreutils-8.23/chmod.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/chmod.c 2014-10-13 08:30:37.180881200 -0700 +@@ -81,7 +81,7 @@ static enum Verbosity verbosity = V_off; + + /* Pointer to the device and inode numbers of '/', when --recursive. + Otherwise NULL. */ +-static struct dev_ino *root_dev_ino; ++static struct root_dev_ino *root_dev_ino; + + /* For long options that have no equivalent short option, use a + non-character as a pseudo short option, starting with CHAR_MAX + 1. */ +@@ -552,7 +552,7 @@ main (int argc, char **argv) + + if (recurse && preserve_root) + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +--- coreutils-8.23/chown-core.h 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/chown-core.h 2014-10-13 08:30:37.196451900 -0700 +@@ -50,7 +50,7 @@ struct Chown_option + + /* Pointer to the device and inode numbers of '/', when --recursive. + Need not be freed. Otherwise NULL. */ +- struct dev_ino *root_dev_ino; ++ struct root_dev_ino *root_dev_ino; + + /* This corresponds to the --dereference (opposite of -h) option. */ + bool affect_symlink_referent; +--- coreutils-8.23/chown.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/chown.c 2014-10-13 08:30:37.196451900 -0700 +@@ -312,7 +312,7 @@ main (int argc, char **argv) + + if (chopt.recurse && preserve_root) + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + chopt.root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (chopt.root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +--- coreutils-8.23/chroot.c 2014-07-13 16:59:20.000000000 -0700 ++++ coreutils-8.23/src/chroot.c 2014-10-13 08:30:37.196451900 -0700 +@@ -163,7 +163,7 @@ parse_additional_groups (char const *gro + static bool + is_root (const char* dir) + { +- struct dev_ino root_ino; ++ struct root_dev_ino root_ino; + if (! get_root_dev_ino (&root_ino)) + error (EXIT_CANCELED, errno, _("failed to get attributes of %s"), + quote ("/")); +@@ -173,7 +173,7 @@ is_root (const char* dir) + error (EXIT_CANCELED, errno, _("failed to get attributes of %s"), + quote (dir)); + +- return SAME_INODE (root_ino, arg_st); ++ return ROOT_DEV_INO_CHECK (&root_ino, &arg_st); + } + + void +--- coreutils-8.23/cksum.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/cksum.c 2014-10-13 08:30:37.196451900 -0700 +@@ -301,6 +301,9 @@ main (int argc, char **argv) + + have_read_stdin = false; + ++ if (O_BINARY) ++ xfreopen (NULL, "wb", stdout); ++ + if (optind == argc) + ok = cksum ("-", false); + else +--- coreutils-8.23/copy.c 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/src/copy.c 2014-10-13 08:49:30.450181800 -0700 +@@ -70,6 +70,10 @@ + # include "verror.h" + #endif + ++#if __CYGWIN__ ++# include "cygwin.h" ++#endif ++ + #ifndef HAVE_FCHOWN + # define HAVE_FCHOWN false + # define fchown(fd, uid, gid) (-1) +@@ -1313,7 +1317,11 @@ close_src_desc: + static bool + same_file_ok (char const *src_name, struct stat const *src_sb, + char const *dst_name, struct stat const *dst_sb, +- const struct cp_options *x, bool *return_now, bool *unlink_src) ++ const struct cp_options *x, bool *return_now, bool *unlink_src ++#if __CYGWIN__ ++ , bool *case_change ++#endif ++ ) + { + const struct stat *src_sb_link; + const struct stat *dst_sb_link; +@@ -1461,6 +1469,18 @@ same_file_ok (char const *src_name, stru + if (S_ISLNK (dst_sb_link->st_mode)) + return true; + ++#if __CYGWIN__ ++ /* If the files have the same name, but differ in case, then let ++ rename() change the case. */ ++ if (same_link && x->move_mode && same_name (src_name, dst_name) ++ && memcmp (last_component (src_name), last_component (dst_name), ++ base_len (src_name)) != 0) ++ { ++ *case_change = true; ++ return true; ++ } ++#endif /* __CYGWIN__ */ ++ + if (same_link + && 1 < dst_sb_link->st_nlink + && ! same_name (src_name, dst_name)) +@@ -1813,10 +1833,20 @@ copy_internal (char const *src_name, cha + && ! (x->move_mode || x->symbolic_link || x->hard_link + || x->backup_type != no_backups + || x->unlink_dest_before_opening)); +- if ((use_stat +- ? stat (dst_name, &dst_sb) +- : lstat (dst_name, &dst_sb)) +- != 0) ++ int res = (use_stat ++ ? stat (dst_name, &dst_sb) ++ : lstat (dst_name, &dst_sb)); ++#if __CYGWIN__ ++ /* stat("a") succeeds even if it was really "a.exe". */ ++ if (! res && 0 < cygwin_spelling (dst_name)) ++ { ++ /* Only DST_NAME.exe exists, but we want the non-existant ++ DST_NAME. */ ++ res = -1; ++ errno = ENOENT; ++ } ++#endif /* __CYGWIN__ */ ++ if (res != 0) + { + if (errno != ENOENT) + { +@@ -1833,10 +1863,17 @@ copy_internal (char const *src_name, cha + that it is stat'able or lstat'able. */ + bool return_now; + bool unlink_src; ++#if __CYGWIN__ ++ bool case_change = false; ++#endif /* __CYGWIN__ */ + + have_dst_lstat = !use_stat; + if (! same_file_ok (src_name, &src_sb, dst_name, &dst_sb, +- x, &return_now, &unlink_src)) ++ x, &return_now, &unlink_src ++#if __CYGWIN__ ++ , &case_change ++#endif ++)) + { + error (0, 0, _("%s and %s are the same file"), + quote_n (0, src_name), quote_n (1, dst_name)); +@@ -1895,6 +1932,9 @@ copy_internal (char const *src_name, cha + cp and mv treat -i and -f differently. */ + if (x->move_mode) + { ++#if __CYGWIN__ ++ if (!case_change) ++#endif /* __CYGWIN__ */ + if (abandon_move (x, dst_name, &dst_sb) + || (unlink_src && unlink (src_name) == 0)) + { +@@ -2058,7 +2098,11 @@ copy_internal (char const *src_name, cha + /* Never unlink dst_name when in move mode. */ + && ! x->move_mode + && (x->unlink_dest_before_opening +- || (x->preserve_links && 1 < dst_sb.st_nlink) ++ || (x->preserve_links && 1 < dst_sb.st_nlink ++#if __CYGWIN__ ++ && !case_change ++#endif /* __CYGWIN__ */ ++ ) + || (x->dereference == DEREF_NEVER + && ! S_ISREG (src_sb.st_mode)) + )) +@@ -2816,6 +2860,21 @@ copy (char const *src_name, char const * + { + assert (valid_options (options)); + ++#if __CYGWIN__ ++ /* .exe magic - if src exists with an implicit .exe suffix and is ++ not a symlink, but dst does not exist and was also specified ++ without a suffix, then append .exe to dst. */ ++ int cygwin = cygwin_spelling (src_name); ++ char *p; ++ if (cygwin == 2 ++ && ((p = strchr (dst_name, '\0') - 4) <= dst_name ++ || strcasecmp (p, ".exe") != 0)) ++ { ++ cygwin = 3; ++ CYGWIN_APPEND_EXE (p, dst_name); ++ } ++#endif /* __CYGWIN__ */ ++ + /* Record the file names: they're used in case of error, when copying + a directory into itself. I don't like to make these tools do *any* + extra work in the common case when that work is solely to handle +@@ -2827,10 +2886,15 @@ copy (char const *src_name, char const * + top_level_dst_name = dst_name; + + bool first_dir_created_per_command_line_arg = false; +- return copy_internal (src_name, dst_name, nonexistent_dst, NULL, NULL, ++ bool result = copy_internal (src_name, dst_name, nonexistent_dst, NULL, NULL, + options, true, + &first_dir_created_per_command_line_arg, + copy_into_self, rename_succeeded); ++#if __CYGWIN__ ++ if (cygwin == 3) ++ freea ((char *) dst_name); ++#endif /* __CYGWIN__ */ ++ return result; + } + + /* Set *X to the default options for a value of type struct cp_options. */ +--- coreutils-8.23/dd.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/dd.c 2014-10-13 08:30:37.196451900 -0700 +@@ -37,6 +37,10 @@ + #include "xstrtol.h" + #include "xtime.h" + ++#if __CYGWIN__ ++# include <io.h> ++#endif ++ + /* The official name of this program (e.g., no 'g' prefix). */ + #define PROGRAM_NAME "dd" + +@@ -1862,6 +1866,13 @@ copy_with_unblock (char const *buf, size + static void + set_fd_flags (int fd, int add_flags, char const *name) + { ++#if __CYGWIN__ ++ /* Cygwin does not allow fcntl to set the mode. */ ++ int mode_flags = add_flags & (O_BINARY | O_TEXT); ++ add_flags &= ~(O_BINARY | O_TEXT); ++ if (mode_flags && setmode (fd, mode_flags) == -1) ++ error (EXIT_FAILURE, errno, _("setting flags for %s"), quote (name)); ++#endif /* __CYGWIN__ */ + /* Ignore file creation flags that are no-ops on file descriptors. */ + add_flags &= ~ (O_NOCTTY | O_NOFOLLOW); + +@@ -2242,6 +2253,8 @@ main (int argc, char **argv) + } + else + { ++ if ((input_flags & (O_BINARY | O_TEXT)) == 0) ++ input_flags |= O_BINARY; + if (fd_reopen (STDIN_FILENO, input_file, O_RDONLY | input_flags, 0) < 0) + error (EXIT_FAILURE, errno, _("failed to open %s"), quote (input_file)); + } +@@ -2264,6 +2277,8 @@ main (int argc, char **argv) + | (conversions_mask & C_NOCREAT ? 0 : O_CREAT) + | (conversions_mask & C_EXCL ? O_EXCL : 0) + | (seek_records || (conversions_mask & C_NOTRUNC) ? 0 : O_TRUNC)); ++ if ((opts & (O_BINARY | O_TEXT)) == 0) ++ opts |= O_BINARY; + + /* Open the output file with *read* access only if we might + need to read to satisfy a 'seek=' request. If we can't read +--- coreutils-8.23/dircolors.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/dircolors.c 2014-10-13 08:30:37.196451900 -0700 +@@ -494,8 +494,12 @@ main (int argc, char **argv) + } + else + { ++ /* tcsh treats LS_COLORS as a magic shell variable for its ++ builtin ls-F, but does not recognize all the categories ++ that coreutils ls does. Therefore, silence stderr to ++ avoid messages like "Unknown colorls variable `su'.". */ + prefix = "setenv LS_COLORS '"; +- suffix = "'\n"; ++ suffix = "' >&/dev/null\n"; + } + fputs (prefix, stdout); + fwrite (s, 1, len, stdout); +--- coreutils-8.23/install.c 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/src/install.c 2014-10-13 08:30:37.196451900 -0700 +@@ -44,6 +44,10 @@ + #include "utimens.h" + #include "xstrtol.h" + ++#if __CYGWIN__ ++# include "cygwin.h" ++#endif ++ + /* The official name of this program (e.g., no 'g' prefix). */ + #define PROGRAM_NAME "install" + +@@ -531,6 +535,16 @@ strip (char const *name) + error (0, errno, _("fork system call failed")); + break; + case 0: /* Child. */ ++#if __CYGWIN__ ++ { ++ /* Check for .exe here, since strip doesn't. */ ++ char *p; ++ if (((p = strchr (name, '\0') - 4) <= name ++ || strcasecmp (p, ".exe") != 0) ++ && 0 < cygwin_spelling (name)) ++ CYGWIN_APPEND_EXE (p, name); ++ } ++#endif /* __CYGWIN__ */ + execlp (strip_program, strip_program, name, NULL); + error (EXIT_FAILURE, errno, _("cannot run %s"), strip_program); + break; +--- coreutils-8.23/ls.c 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/src/ls.c 2014-10-13 08:30:37.196451900 -0700 +@@ -117,6 +117,10 @@ + # include <sys/capability.h> + #endif + ++#if __CYGWIN__ ++# include "cygwin.h" ++#endif ++ + #define PROGRAM_NAME (ls_mode == LS_LS ? "ls" \ + : (ls_mode == LS_MULTI_COL \ + ? "dir" : "vdir")) +@@ -747,6 +751,11 @@ static char const *long_time_format[2] = + N_("%b %e %H:%M") + }; + ++#if __CYGWIN__ ++/* Whether .exe should be appended to command-line args as needed. */ ++static bool append_exe; ++#endif /* __CYGWIN__ */ ++ + /* The set of signals that are caught. */ + + static sigset_t caught_signals; +@@ -782,6 +791,9 @@ enum + enum + { + AUTHOR_OPTION = CHAR_MAX + 1, ++#if __CYGWIN__ ++ APPEND_EXE_OPTION, ++#endif /* __CYGWIN__ */ + BLOCK_SIZE_OPTION, + COLOR_OPTION, + DEREFERENCE_COMMAND_LINE_SYMLINK_TO_DIR_OPTION, +@@ -843,6 +855,9 @@ static struct option const long_options[ + {"block-size", required_argument, NULL, BLOCK_SIZE_OPTION}, + {"context", no_argument, 0, 'Z'}, + {"author", no_argument, NULL, AUTHOR_OPTION}, ++#if __CYGWIN__ ++ {"append-exe", no_argument, NULL, APPEND_EXE_OPTION}, ++#endif /* __CYGWIN__ */ + {GETOPT_HELP_OPTION_DECL}, + {GETOPT_VERSION_OPTION_DECL}, + {NULL, 0, NULL, 0} +@@ -1954,6 +1969,12 @@ decode_switches (int argc, char **argv) + print_scontext = true; + break; + ++#if __CYGWIN__ ++ case APPEND_EXE_OPTION: ++ append_exe = true; ++ break; ++#endif /* __CYGWIN__ */ ++ + case_GETOPT_HELP_CHAR; + + case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS); +@@ -2924,6 +2945,12 @@ gobble_file (char const *name, enum file + uintmax_t blocks = 0; + struct fileinfo *f; + ++#if __CYGWIN__ ++ char *name_alt = NULL; ++ if (command_line_arg && append_exe && 0 < cygwin_spelling (name)) ++ CYGWIN_APPEND_EXE (name_alt, name); ++#endif /* __CYGWIN__ */ ++ + /* An inode value prior to gobble_file necessarily came from readdir, + which is not used for command line arguments. */ + assert (! command_line_arg || inode == NOT_AN_INODE_NUMBER); +@@ -3035,11 +3062,19 @@ gobble_file (char const *name, enum file + file_failure (command_line_arg, + _("cannot access %s"), absolute_name); + if (command_line_arg) +- return 0; ++ { ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ ++ return 0; ++ } + + f->name = xstrdup (name); + cwd_n_used++; + ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ + return 0; + } + +@@ -3223,6 +3258,9 @@ gobble_file (char const *name, enum file + f->name = xstrdup (name); + cwd_n_used++; + ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ + return blocks; + } + +@@ -4923,6 +4961,11 @@ Sort entries alphabetically if none of - + -Z, --context print any security context of each file\n\ + -1 list one file per line\n\ + "), stdout); ++#if __CYGWIN__ ++ fputs (_("\ ++ --append-exe append .exe if cygwin magic was needed\n\ ++"), stdout); ++#endif /* __CYGWIN__ */ + fputs (HELP_OPTION_DESCRIPTION, stdout); + fputs (VERSION_OPTION_DESCRIPTION, stdout); + emit_size_note (); +--- coreutils-8.23/md5sum.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/md5sum.c 2014-10-13 08:30:37.212072800 -0700 +@@ -813,6 +813,9 @@ main (int argc, char **argv) + if (optind == argc) + argv[argc++] = bad_cast ("-"); + ++ if (O_BINARY) ++ xfreopen (NULL, "wb", stdout); ++ + for (; optind < argc; ++optind) + { + char *file = argv[optind]; +--- coreutils-8.23/mv.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/mv.c 2014-10-13 08:30:37.212072800 -0700 +@@ -92,7 +92,7 @@ rm_option_init (struct rm_options *x) + x->require_restore_cwd = true; + + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + x->root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (x->root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +@@ -467,6 +467,16 @@ main (int argc, char **argv) + else if (!target_directory) + { + assert (2 <= n_files); ++#if __CYGWIN__ ++ struct stat s1, s2; ++ if (2 == n_files ++ && lstat (file[0], &s1) == 0 && lstat (file[1], &s2) == 0 ++ && s1.st_ino == s2.st_ino) ++ { ++ /* Allow 'mv foo Foo' to change case of the directory foo. */ ++ } ++ else ++#endif /* __CYGWIN__ */ + if (target_directory_operand (file[n_files - 1])) + target_directory = file[--n_files]; + else if (2 < n_files) +--- coreutils-8.23/pwd.c 2014-07-13 15:09:52.000000000 -0700 ++++ coreutils-8.23/src/pwd.c 2014-10-13 08:30:37.212072800 -0700 +@@ -268,8 +268,8 @@ static void + robust_getcwd (struct file_name *file_name) + { + size_t height = 1; +- struct dev_ino dev_ino_buf; +- struct dev_ino *root_dev_ino = get_root_dev_ino (&dev_ino_buf); ++ struct root_dev_ino dev_ino_buf; ++ struct root_dev_ino *root_dev_ino = get_root_dev_ino (&dev_ino_buf); + struct stat dot_sb; + + if (root_dev_ino == NULL) +@@ -282,7 +282,7 @@ robust_getcwd (struct file_name *file_na + while (1) + { + /* If we've reached the root, we're done. */ +- if (SAME_INODE (dot_sb, *root_dev_ino)) ++ if (ROOT_DEV_INO_CHECK (root_dev_ino, &dot_sb)) + break; + + find_dir_entry (&dot_sb, file_name, height++); +@@ -291,6 +291,9 @@ robust_getcwd (struct file_name *file_na + /* See if a leading slash is needed; file_name_prepend adds one. */ + if (file_name->start[0] == '\0') + file_name_prepend (file_name, "", 0); ++ /* If we aren't in `/', we must be in `//'. */ ++ if (! SAME_INODE (root_dev_ino->single_slash, dot_sb)) ++ file_name_prepend (file_name, "", 0); + } + + +--- coreutils-8.23/remove.h 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/remove.h 2014-10-13 08:30:37.212072800 -0700 +@@ -54,7 +54,7 @@ struct rm_options + + /* Pointer to the device and inode numbers of '/', when --recursive + and preserving '/'. Otherwise NULL. */ +- struct dev_ino *root_dev_ino; ++ struct root_dev_ino *root_dev_ino; + + /* If nonzero, stdin is a tty. */ + bool stdin_tty; +--- coreutils-8.23/rm.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/rm.c 2014-10-13 08:30:37.212072800 -0700 +@@ -325,7 +325,7 @@ main (int argc, char **argv) + + if (x.recursive && preserve_root) + { +- static struct dev_ino dev_ino_buf; ++ static struct root_dev_ino dev_ino_buf; + x.root_dev_ino = get_root_dev_ino (&dev_ino_buf); + if (x.root_dev_ino == NULL) + error (EXIT_FAILURE, errno, _("failed to get attributes of %s"), +--- coreutils-8.23/stat.c 2014-07-11 04:00:07.000000000 -0700 ++++ coreutils-8.23/src/stat.c 2014-10-13 08:30:37.212072800 -0700 +@@ -73,6 +73,13 @@ + #include "find-mount-point.h" + #include "xvasprintf.h" + ++#if __CYGWIN__ ++# include "cygwin.h" ++/* Whether .exe should be appended to command-line args as needed. */ ++static bool append_exe; ++# define APPEND_EXE_OPTION 10000 ++#endif ++ + #if USE_STATVFS + # define STRUCT_STATVFS struct statvfs + # define STRUCT_STATXFS_F_FSID_IS_INTEGER STRUCT_STATVFS_F_FSID_IS_INTEGER +@@ -189,6 +196,9 @@ static struct option const long_options[ + {"format", required_argument, NULL, 'c'}, + {"printf", required_argument, NULL, PRINTF_OPTION}, + {"terse", no_argument, NULL, 't'}, ++#if __CYGWIN__ ++ {"append-exe", no_argument, NULL, APPEND_EXE_OPTION}, ++#endif /* __CYGWIN__ */ + {GETOPT_HELP_OPTION_DECL}, + {GETOPT_VERSION_OPTION_DECL}, + {NULL, 0, NULL, 0} +@@ -1264,14 +1274,26 @@ do_statfs (char const *filename, char co + return false; + } + ++#if __CYGWIN__ ++ char *name_alt = NULL; ++ if (append_exe && 0 < cygwin_spelling (filename)) ++ CYGWIN_APPEND_EXE (name_alt, filename); ++#endif /* __CYGWIN__ */ ++ + if (STATFS (filename, &statfsbuf) != 0) + { + error (0, errno, _("cannot read file system information for %s"), + quote (filename)); ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ + return false; + } + + bool fail = print_it (format, -1, filename, print_statfs, &statfsbuf); ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ + return ! fail; + } + +@@ -1282,6 +1304,7 @@ do_stat (char const *filename, char cons + { + int fd = STREQ (filename, "-") ? 0 : -1; + struct stat statbuf; ++ char *name_alt = NULL; + + if (0 <= fd) + { +@@ -1294,18 +1317,29 @@ do_stat (char const *filename, char cons + /* We can't use the shorter + (follow_links?stat:lstat) (filename, &statbug) + since stat might be a function-like macro. */ +- else if ((follow_links +- ? stat (filename, &statbuf) +- : lstat (filename, &statbuf)) != 0) ++ else + { +- error (0, errno, _("cannot stat %s"), quote (filename)); +- return false; ++ if ((follow_links ++ ? stat (filename, &statbuf) ++ : lstat (filename, &statbuf)) != 0) ++ { ++ error (0, errno, _("cannot stat %s"), quote (filename)); ++ return false; ++ } ++ ++#if __CYGWIN__ ++ if (append_exe && 0 < cygwin_spelling (filename)) ++ CYGWIN_APPEND_EXE (name_alt, filename); ++#endif /* __CYGWIN__ */ + } + + if (S_ISBLK (statbuf.st_mode) || S_ISCHR (statbuf.st_mode)) + format = format2; + + bool fail = print_it (format, fd, filename, print_stat, &statbuf); ++#if __CYGWIN__ ++ freea (name_alt); ++#endif /* __CYGWIN__ */ + return ! fail; + } + +@@ -1427,6 +1461,11 @@ Display file or file system status.\n\ + if you want a newline, include \\n in FORMAT\n\ + -t, --terse print the information in terse form\n\ + "), stdout); ++#if __CYGWIN__ ++ fputs (_("\ ++ --append-exe append .exe if cygwin magic was needed\n\ ++"), stdout); ++#endif /* __CYGWIN__ */ + fputs (HELP_OPTION_DESCRIPTION, stdout); + fputs (VERSION_OPTION_DESCRIPTION, stdout); + +@@ -1547,6 +1586,12 @@ main (int argc, char *argv[]) + terse = true; + break; + ++#if __CYGWIN__ ++ case APPEND_EXE_OPTION: ++ append_exe = true; ++ break; ++#endif /* __CYGWIN__ */ ++ + case_GETOPT_HELP_CHAR; + + case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS); diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 64bfd08d93a1b..8e5ccdd243dbd 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -1,6 +1,7 @@ { stdenv, fetchurl, perl, xz, gmp ? null , aclSupport ? false, acl ? null , selinuxSupport? false, libselinux ? null, libsepol ? null +, autoconf, automake114x, texinfo }: assert aclSupport -> acl != null; @@ -11,16 +12,19 @@ with { inherit (stdenv.lib) optional optionals optionalString optionalAttrs; }; let self = stdenv.mkDerivation rec { - name = "coreutils-8.23"; + name = "coreutils-8.24"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.xz"; - sha256 = "0bdq6yggyl7nkc2pbl6pxhhyx15nyqhz3ds6rfn448n6rxdwlhzc"; + sha256 = "0w11jw3fb5sslf0f72kxy7llxgk1ia3a6bcw0c9kmvxrlj355mx2"; }; + patches = if stdenv.isCygwin then [ ./coreutils-8.23-4.cygwin.patch ] else null; + # The test tends to fail on btrfs and maybe other unusual filesystems. postPatch = stdenv.lib.optionalString (!stdenv.isDarwin) '' sed '2i echo Skipping dd sparse test && exit 0' -i ./tests/dd/sparse.sh + sed '2i echo Skipping cp sparse test && exit 0' -i ./tests/cp/sparse.sh ''; outputs = [ "out" "info" ]; @@ -28,10 +32,11 @@ let nativeBuildInputs = [ perl xz.bin ]; buildInputs = [ gmp ] ++ optional aclSupport acl + ++ optionals stdenv.isCygwin [ autoconf automake114x texinfo ] # due to patch ++ optionals selinuxSupport [ libselinux libsepol ]; crossAttrs = { - buildInputs = [ gmp ] + buildInputs = [ gmp.crossDrv ] ++ optional aclSupport acl.crossDrv ++ optionals selinuxSupport [ libselinux.crossDrv libsepol.crossDrv ] ++ optional (stdenv.ccCross.libc ? libiconv) diff --git a/pkgs/tools/misc/cpulimit/default.nix b/pkgs/tools/misc/cpulimit/default.nix index 8ae137bbd8999..72656d2969de3 100644 --- a/pkgs/tools/misc/cpulimit/default.nix +++ b/pkgs/tools/misc/cpulimit/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = "http://limitcpu.sourceforge.net/"; description = "A tool to throttle the CPU usage of programs"; - platforms = with platforms; linux ++ freebsd ++ darwin; + platforms = with platforms; linux ++ freebsd; license = licenses.gpl2; maintainer = [maintainers.rycee]; }; diff --git a/pkgs/tools/misc/cpuminer/default.nix b/pkgs/tools/misc/cpuminer/default.nix index 0ca95127f11fa..713c0a92329fd 100644 --- a/pkgs/tools/misc/cpuminer/default.nix +++ b/pkgs/tools/misc/cpuminer/default.nix @@ -2,21 +2,22 @@ stdenv.mkDerivation rec { name = "cpuminer-${version}"; - version = "2.4.1"; + version = "2.4.2"; src = fetchurl { url = "mirror://sourceforge/cpuminer/pooler-${name}.tar.gz"; - sha256 = "0grj0swh1q3c3bj3yxji80yhxb09yz62x1n5h8z7c3azq4rrv2w1"; + sha256 = "1ds5yfxf25pd8y5z5gh689qb80m4dqw2dy3yx87hibnprlaiym0n"; }; buildInputs = [ curl jansson ]; configureFlags = [ "CFLAGS=-O3" ]; - meta = { + meta = with stdenv.lib; { homepage = https://github.com/pooler/cpuminer; description = "CPU miner for Litecoin and Bitcoin"; - license = stdenv.lib.licenses.gpl2; - platforms = stdenv.lib.platforms.all; + license = licenses.gpl2; + platforms = platforms.all; + maintainers = with maintainers; [ pSub ]; }; } diff --git a/pkgs/tools/misc/debian-devscripts/default.nix b/pkgs/tools/misc/debian-devscripts/default.nix index a6e383df91a18..b6158ab644546 100644 --- a/pkgs/tools/misc/debian-devscripts/default.nix +++ b/pkgs/tools/misc/debian-devscripts/default.nix @@ -1,27 +1,50 @@ {stdenv, fetchurl, perl, CryptSSLeay, LWP, unzip, xz, dpkg, TimeDate, DBFile , FileDesktopEntry, libxslt, docbook_xsl, python3, setuptools, makeWrapper -, perlPackages +, perlPackages, curl, gnupg, diffutils +, sendmailPath ? "/var/setuid-wrappers/sendmail" }: + stdenv.mkDerivation rec { - version = "2.15.3"; + version = "2.15.8"; name = "debian-devscripts-${version}"; + src = fetchurl { url = "mirror://debian/pool/main/d/devscripts/devscripts_${version}.tar.xz"; - sha256 = "f589e2e02c5e9a46a77b2516155631ac3ddfd8a39bcfc16c920862583850bc7d"; + sha256 = "1zw7phaigncblxb3jp4m8pk165hylk1f088k51nhj9d7z5iz6bbx"; }; + buildInputs = [ perl CryptSSLeay LWP unzip xz dpkg TimeDate DBFile FileDesktopEntry libxslt python3 setuptools makeWrapper - perlPackages.ParseDebControl ]; + perlPackages.ParseDebControl perlPackages.LWPProtocolHttps + curl gnupg diffutils ]; + preConfigure = '' export PERL5LIB="$PERL5LIB''${PERL5LIB:+:}${dpkg}"; - sed -e "s@/usr/share/sgml/[^ ]*/manpages/docbook.xsl@${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl@" -i scripts/Makefile - sed -e 's/ translated_manpages//; s/--install-layout=deb//; s@--root="[^ ]*"@--prefix="'"$out"'"@' -i Makefile */Makefile tgtpy="$out/lib/${python3.libPrefix}/site-packages" mkdir -p "$tgtpy" export PYTHONPATH="$PYTHONPATH''${PYTHONPATH:+:}$tgtpy" - sed -re "s@/usr( |$|/)@$out\\1@" -i Makefile* */Makefile* - sed -re "s@/etc( |$|/)@$out/etc\\1@" -i Makefile* */Makefile* + find po4a scripts -type f -exec sed -r \ + -e "s@/usr/bin/gpg(2|)@${gnupg}/bin/gpg2@g" \ + -e "s@/usr/(s|)bin/sendmail@${sendmailPath}@g" \ + -e "s@/usr/bin/diff@${diffutils}/bin/diff@g" \ + -e "s@/usr/bin/gpgv(2|)@${gnupg}/bin/gpgv2@g" \ + -e "s@(command -v|/usr/bin/)curl@${curl}/bin/curl@g" \ + -i {} + + sed -e "s@/usr/share/sgml/[^ ]*/manpages/docbook.xsl@${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl@" -i scripts/Makefile + sed -r \ + -e "s@/usr( |$|/)@$out\\1@g" \ + -e "s@/etc( |$|/)@$out/etc\\1@g" \ + -e 's/ translated_manpages//; s/--install-layout=deb//; s@--root="[^ ]*"@--prefix="'"$out"'"@' \ + -i Makefile* */Makefile* ''; + + makeFlags = [ + "DESTDIR=$(out)" + "PREFIX=" + "COMPL_DIR=/share/bash-completion/completions" + "PERLMOD_DIR=/share/devscripts" + ]; + postInstall = '' sed -re 's@(^|[ !`"])/bin/bash@\1${stdenv.shell}@g' -i "$out/bin"/* for i in "$out/bin"/*; do @@ -31,9 +54,10 @@ stdenv.mkDerivation rec { --prefix PYTHONPATH : "$out/lib/python3.4/site-packages" done ''; - meta = { + + meta = with stdenv.lib; { description = ''Debian package maintenance scripts''; - license = "GPL (various)"; # Mix of public domain, Artistic+GPL, GPL1+, GPL2+, GPL3+, and GPL2-only... TODO - maintainers = with stdenv.lib.maintainers; [raskin]; + license = licenses.free; # Mix of public domain, Artistic+GPL, GPL1+, GPL2+, GPL3+, and GPL2-only... TODO + maintainers = with maintainers; [raskin]; }; } diff --git a/pkgs/tools/misc/debootstrap/default.nix b/pkgs/tools/misc/debootstrap/default.nix index 3b14e46d0d378..9b6c35f41a471 100644 --- a/pkgs/tools/misc/debootstrap/default.nix +++ b/pkgs/tools/misc/debootstrap/default.nix @@ -14,8 +14,8 @@ let }; patches = [ (fetchurl { - url = "mirror://debian/pool/main/m/makedev/makedev_2.3.1-89.diff.gz"; - sha256 = "1zbifw2jkq6471fb67y893nq4lq009xbfbi57jbjwxnhqmrppcy9"; + url = "mirror://debian/pool/main/m/makedev/makedev_2.3.1-93.diff.gz"; + sha256 = "08328779mc0b20xkj76ilpf9c8bw6zkz5xiw5l2kwm690dxp9nvw"; }) ]; # TODO install man @@ -32,13 +32,13 @@ in stdenv.mkDerivation { - name = "debootstrap-1.0.66"; + name = "debootstrap-1.0.67"; src = fetchurl { # git clone git://git.debian.org/d-i/debootstrap.git # I'd like to use the source. However it's lacking the lanny script ? (still true?) - url = mirror://debian/pool/main/d/debootstrap/debootstrap_1.0.66.tar.gz; - sha256 = "15gh6pvk7f0fib8ggz2zx53pg2jzqk4x0s8ihkpqxqdf4rlns91k"; + url = mirror://debian/pool/main/d/debootstrap/debootstrap_1.0.67.tar.gz; + sha256 = "06x5zw6fskw37qh62hvqx006319l4wgnnw8sf53ms67zpfif04ha"; }; buildInputs = [ dpkg gettext gawk perl ]; diff --git a/pkgs/tools/misc/detox/default.nix b/pkgs/tools/misc/detox/default.nix index 65a0047738bca..bdc018aec34a5 100644 --- a/pkgs/tools/misc/detox/default.nix +++ b/pkgs/tools/misc/detox/default.nix @@ -10,7 +10,8 @@ stdenv.mkDerivation { buildInputs = [flex]; - meta = { + meta = with stdenv.lib; { + homepage = http://detox.sourceforge.net/; description = "Utility designed to clean up filenames"; longDescription = '' Detox is a utility designed to clean up filenames. It replaces @@ -18,7 +19,8 @@ stdenv.mkDerivation { equivalents. It will also clean up filenames with UTF-8 or Latin-1 (or CP-1252) characters in them. ''; - homepage = "http://detox.sourceforge.net/"; - license = stdenv.lib.licenses.bsd3; + license = licenses.bsd3; + platforms = platforms.linux; + maintainers = with maintainers; [ jgeerds ]; }; } diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix new file mode 100644 index 0000000000000..e6c672d83441d --- /dev/null +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchgit, pythonPackages, docutils +, acl, binutils, bzip2, cdrkit, cpio, diffutils, e2fsprogs, file, gettext +, gnupg, gzip, pdftk, poppler_utils, rpm, sqlite, squashfsTools, unzip, vim, xz +}: + +pythonPackages.buildPythonPackage rec { + name = "diffoscope-${version}"; + version = "29"; + + namePrefix = ""; + + src = fetchgit { + url = "git://anonscm.debian.org/reproducible/diffoscope.git"; + rev = "refs/tags/${version}"; + sha256 = "0q7hx2wm9gvzl1f7iilr9pjwpv8i2anscqan7cgk80v90s2pakrf"; + }; + + postPatch = '' + # Different pkg name in debian + sed -i setup.py -e "s@'magic'@'Magic-file-extensions'@" + + # Upstream doesn't provide a PKG-INFO file + sed -i setup.py -e "/'rpm',/d" + ''; + + # Still missing these tools: ghc javap showttf sng + propagatedBuildInputs = (with pythonPackages; [ debian libarchive-c magic ssdeep ]) ++ + [ acl binutils bzip2 cdrkit cpio diffutils e2fsprogs file gettext gnupg + gzip pdftk poppler_utils rpm sqlite squashfsTools unzip vim xz ]; + + doCheck = false; # Calls 'mknod' in squashfs tests, which needs root + + postInstall = '' + mv $out/bin/diffoscope.py $out/bin/diffoscope + mkdir -p $out/share/man/man1 + ${docutils}/bin/rst2man.py debian/diffoscope.1.rst $out/share/man/man1/diffoscope.1 + ''; + + meta = with stdenv.lib; { + description = "Perform in-depth comparison of files, archives, and directories"; + longDescription = '' + diffoscope will try to get to the bottom of what makes files or directories + different. It will recursively unpack archives of many kinds and transform + various binary formats into more human readable form to compare them. It can + compare two tarballs, ISO images, or PDF just as easily. The differences can + be shown in a text or HTML report. + + diffoscope is developed as part of the "reproducible builds" Debian + project and was formerly known as "debbindiff". + ''; + homepage = https://wiki.debian.org/ReproducibleBuilds; + license = licenses.gpl3Plus; + maintainers = [ maintainers.dezgeg ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/direnv/default.nix b/pkgs/tools/misc/direnv/default.nix index f21b879d5e56d..e05889fdb4b22 100644 --- a/pkgs/tools/misc/direnv/default.nix +++ b/pkgs/tools/misc/direnv/default.nix @@ -1,14 +1,14 @@ { fetchurl, stdenv, go }: let - version = "2.6.0"; + version = "2.7.0"; in stdenv.mkDerivation { name = "direnv-${version}"; src = fetchurl { url = "http://github.com/zimbatm/direnv/archive/v${version}.tar.gz"; name = "direnv-${version}.tar.gz"; - sha256 = "b85aac4d6a4ddf2daf193aabb3b2faf89e56507d33d763ab74cc7eb0b524ac03"; + sha256 = "3cfa8f41e740c0dc09d854f3833058caec0ea0d67d19e950f97eee61106b0daf"; }; buildInputs = [ go ]; diff --git a/pkgs/tools/misc/dtach/default.nix b/pkgs/tools/misc/dtach/default.nix index 7ceecc3690ab9..000f6cd0f93f6 100644 --- a/pkgs/tools/misc/dtach/default.nix +++ b/pkgs/tools/misc/dtach/default.nix @@ -8,6 +8,8 @@ stdenv.mkDerivation rec { sha256 = "16614ebddf8ab2811d3dc0e7f329c7de88929ac6a9632d4cb4aef7fe11b8f2a9"; }; + patches = [ ./fix-CVE-2012-3368.patch ]; + installPhase = '' mkdir -p $out/bin cp dtach $out/bin/dtach diff --git a/pkgs/tools/misc/dtach/fix-CVE-2012-3368.patch b/pkgs/tools/misc/dtach/fix-CVE-2012-3368.patch new file mode 100644 index 0000000000000..9e556d9325fb0 --- /dev/null +++ b/pkgs/tools/misc/dtach/fix-CVE-2012-3368.patch @@ -0,0 +1,49 @@ +Fix error handling for read from stdin in attach.c + +attach.c did not correctly handle a read from stdin when read returned +an error. The code assigned the return value of read to pkt.len (an +unsigned char) before checking the value. This prevented the error check +from working correctly, since an unsigned integer can never be < 0. + +A packet with an invalid length was then sent to the master, which then +sent 255 bytes of garbage to the program. + +Fix the bug in attach.c and the unchecked packet length bug in master.c. + +Report and initial patch by Enrico Scholz. + +--- a/master.c 2012/07/01 21:26:10 1.14 ++++ b/master.c 2012/07/01 21:44:34 1.15 +@@ -351,7 +351,10 @@ + + /* Push out data to the program. */ + if (pkt.type == MSG_PUSH) +- write(the_pty.fd, pkt.u.buf, pkt.len); ++ { ++ if (pkt.len <= sizeof(pkt.u.buf)) ++ write(the_pty.fd, pkt.u.buf, pkt.len); ++ } + + /* Attach or detach from the program. */ + else if (pkt.type == MSG_ATTACH) +--- a/attach.c 2012/07/01 21:26:10 1.12 ++++ b/attach.c 2012/07/01 21:44:34 1.13 +@@ -237,12 +237,16 @@ + /* stdin activity */ + if (n > 0 && FD_ISSET(0, &readfds)) + { ++ ssize_t len; ++ + pkt.type = MSG_PUSH; + memset(pkt.u.buf, 0, sizeof(pkt.u.buf)); +- pkt.len = read(0, pkt.u.buf, sizeof(pkt.u.buf)); ++ len = read(0, pkt.u.buf, sizeof(pkt.u.buf)); + +- if (pkt.len <= 0) ++ if (len <= 0) + exit(1); ++ ++ pkt.len = len; + process_kbd(s, &pkt); + n--; + } diff --git a/pkgs/tools/misc/ent/default.nix b/pkgs/tools/misc/ent/default.nix index d6ad7f1d26b06..71b4ec338df3d 100644 --- a/pkgs/tools/misc/ent/default.nix +++ b/pkgs/tools/misc/ent/default.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { buildInputs = [ unzip ]; + buildFlags = if stdenv.cc.isClang then [ "CC=clang" ] else null; + installPhase = '' mkdir -p $out/bin cp ent $out/bin/ diff --git a/pkgs/tools/misc/entr/default.nix b/pkgs/tools/misc/entr/default.nix new file mode 100644 index 0000000000000..8770a5858875b --- /dev/null +++ b/pkgs/tools/misc/entr/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchurl, coreutils, ncurses }: + +stdenv.mkDerivation rec { + name = "entr-${version}"; + version = "3.2"; + + src = fetchurl { + url = "http://entrproject.org/code/${name}.tar.gz"; + sha256 = "0ikigpfzyjmr8j6snwlvxzqamrjbhlv78m8w1h0h7kzczc5f1vmi"; + }; + + postPatch = '' + substituteInPlace Makefile.bsd --replace /bin/echo echo + substituteInPlace entr.c --replace /bin/cat ${coreutils}/bin/cat + substituteInPlace entr.c --replace /usr/bin/clear ${ncurses}/bin/clear + substituteInPlace entr.1 --replace /bin/cat cat + substituteInPlace entr.1 --replace /usr/bin/clear clear + ''; + dontAddPrefix = true; + doCheck = true; + checkTarget = "test"; + installFlags = [ "PREFIX=$(out)" ]; + + meta = { + homepage = http://entrproject.org/; + description = "Run arbitrary commands when files change."; + + license = stdenv.lib.licenses.isc; + + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/tools/misc/escoger/default.nix b/pkgs/tools/misc/escoger/default.nix deleted file mode 100644 index 2fe67f1b97f43..0000000000000 --- a/pkgs/tools/misc/escoger/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ cabal, dataDefault, fetchFromGitHub, HUnit, mtl, parallel -, QuickCheck, testFramework, testFrameworkHunit -, testFrameworkQuickcheck2, vector, vectorAlgorithms, vty -}: - -let - rv = "b6b11c51846a9283ef4ee7c839b99ded9f6c3bc8"; -in -cabal.mkDerivation (self: { - pname = "escoger"; - version = "0.1.0.0-${rv}"; - src = fetchFromGitHub { - owner = "tstat"; - repo = "escoger"; - rev = rv; - sha256 = "0n6mvg5cm50ym20bz74b7q1afkljp0fc9pxhqk0ai82a71xxbxy3"; - }; - isLibrary = false; - isExecutable = true; - buildDepends = [ - dataDefault mtl parallel vector vectorAlgorithms vty - ]; - testDepends = [ - dataDefault HUnit mtl parallel QuickCheck testFramework - testFrameworkHunit testFrameworkQuickcheck2 vector vectorAlgorithms - vty - ]; - meta = { - description = "A multithreaded terminal fuzzy selector"; - license = self.stdenv.lib.licenses.mit; - platforms = self.ghc.meta.platforms; - }; -}) diff --git a/pkgs/tools/misc/ethtool/default.nix b/pkgs/tools/misc/ethtool/default.nix index e29c5effbdb69..16af347e55100 100644 --- a/pkgs/tools/misc/ethtool/default.nix +++ b/pkgs/tools/misc/ethtool/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "ethtool-3.18"; + name = "ethtool-4.0"; src = fetchurl { url = "mirror://kernel/software/network/ethtool/${name}.tar.xz"; - sha256 = "1xj20fr44dk01hghyy5sq962sbiywc88ni3qqliv8bfxzmczwgw1"; + sha256 = "1zzcwn6pk8qfasalqkxg8vrhacksfa50xsq4xifw7yfjqyn8fj4h"; }; meta = with stdenv.lib; { diff --git a/pkgs/tools/misc/execline/default.nix b/pkgs/tools/misc/execline/default.nix index a2edb1f842ed9..7478b1e33eea0 100644 --- a/pkgs/tools/misc/execline/default.nix +++ b/pkgs/tools/misc/execline/default.nix @@ -2,7 +2,7 @@ let - version = "2.1.1.0"; + version = "2.1.4.0"; in stdenv.mkDerivation rec { @@ -11,7 +11,7 @@ in stdenv.mkDerivation rec { src = fetchgit { url = "git://git.skarnet.org/execline"; rev = "refs/tags/v${version}"; - sha256 = "0yhxyih8p6p9135nifi655qk4gnhdarjzfp1lb4pxx9ar9ay5q7w"; + sha256 = "1ih0mmkra3aa697nz7haaifq2hfy3wjj39npxzg9zr37m7yw67yz"; }; dontDisableStatic = true; @@ -32,6 +32,7 @@ in stdenv.mkDerivation rec { description = "A small scripting language, to be used in place of a shell in non-interactive scripts"; platforms = stdenv.lib.platforms.all; license = stdenv.lib.licenses.isc; + maintainers = with stdenv.lib.maintainers; [ pmahoney ]; }; } diff --git a/pkgs/tools/misc/expect/default.nix b/pkgs/tools/misc/expect/default.nix index bfb369933889e..a50717d539926 100644 --- a/pkgs/tools/misc/expect/default.nix +++ b/pkgs/tools/misc/expect/default.nix @@ -1,8 +1,7 @@ { stdenv, fetchurl, tcl, makeWrapper }: -let version = "5.45"; -in -stdenv.mkDerivation { +stdenv.mkDerivation rec { + version = "5.45"; name = "expect-${version}"; src = fetchurl { @@ -13,37 +12,30 @@ stdenv.mkDerivation { buildInputs = [ tcl ]; nativeBuildInputs = [ makeWrapper ]; - #NIX_CFLAGS_COMPILE = "-DHAVE_UNISTD_H"; - - # http://wiki.linuxfromscratch.org/lfs/ticket/2126 - #preBuild = '' - # substituteInPlace exp_inter.c --replace tcl.h tclInt.h - #''; - patchPhase = '' - substituteInPlace configure --replace /bin/stty "$(type -tP stty)" - sed -e '1i\#include <tclInt.h>' -i exp_inter.c - export NIX_LDFLAGS="-rpath $out/lib $NIX_LDFLAGS" - '' + stdenv.lib.optionalString stdenv.isFreeBSD '' - ln -s libexpect.so.1 libexpect545.so + sed -i "s,/bin/stty,$(type -p stty),g" configure ''; configureFlags = [ "--with-tcl=${tcl}/lib" "--with-tclinclude=${tcl}/include" - "--exec-prefix=$(out)" + "--exec-prefix=\${out}" ]; postInstall = '' for i in $out/bin/*; do wrapProgram $i \ --prefix PATH : "${tcl}/bin" \ - --prefix TCLLIBPATH ' ' $out/lib/* + --prefix TCLLIBPATH ' ' $out/lib/* \ + ${stdenv.lib.optionalString stdenv.isDarwin "--prefix DYLD_LIBRARY_PATH : $out/lib/expect${version}"} done ''; - meta = { + meta = with stdenv.lib; { description = "A tool for automating interactive applications"; homepage = http://expect.nist.gov/; + license = "Expect"; + platforms = platforms.unix; + maintainers = with maintainers; [ wkennington ]; }; } diff --git a/pkgs/tools/misc/fasd/default.nix b/pkgs/tools/misc/fasd/default.nix index f34ce44633f3f..aa1fa8f3c6c95 100644 --- a/pkgs/tools/misc/fasd/default.nix +++ b/pkgs/tools/misc/fasd/default.nix @@ -1,21 +1,18 @@ -{ stdenv, fetchgit, pandoc } : +{ stdenv, fetchgit } : let - rev = "287af2b80e0829b08dc6329b4fe8d8e5594d64b0"; + rev = "61ce53be996189e1c325916e45a7dc0aa89660e3"; in stdenv.mkDerivation { - name = "fasd-1.0.1"; + name = "fasd-git-2015-03-29"; src = fetchgit { url = "https://github.com/clvv/fasd.git"; inherit rev; - sha256 = "0kv9iyfdf916x0gab9fzs4vmsnkaqmb6kh4xna485nqij89xzkgs"; + sha256 = "1fd36ff065ae73de2d6b1bae2131c18c8c4dea98ca63d96b0396e8b291072b5e"; }; - # seems to be needed non-deterministically (timestamps?) - nativeBuildInputs = [ pandoc ]; - installPhase = '' PREFIX=$out make install ''; diff --git a/pkgs/tools/misc/fdupes/default.nix b/pkgs/tools/misc/fdupes/default.nix index 64a45b975b0f6..0ab97a7e6715f 100644 --- a/pkgs/tools/misc/fdupes/default.nix +++ b/pkgs/tools/misc/fdupes/default.nix @@ -1,24 +1,27 @@ -{stdenv, fetchurl}: +{stdenv, fetchFromGitHub}: -stdenv.mkDerivation { - name = "fdupes-1.51"; - src = fetchurl { - url = https://github.com/adrianlopezroche/fdupes/archive/fdupes-1.51.tar.gz; - sha256 = "11j96vxl9vg3jsnxqxskrv3gad6dh7hz2zpyc8n31xzyxka1c7kn"; - }; +stdenv.mkDerivation rec { + name = "fdupes-20150902"; - # workaround: otherwise make install fails (should be fixed in trunk) - preInstall = "mkdir -p $out/bin $out/man/man1"; + src = fetchFromGitHub { + owner = "jbruchon"; + repo = "fdupes-jody"; + rev = "414b1fd64c0a739d4c52228eb72487782855b939"; + sha256 = "1q6jcj79pljm1f24fqgk8x53xz2x0p1986znw75iljxqyzbvw0ap"; + }; makeFlags = "PREFIX=\${out}"; meta = { description = "Identifies duplicate files residing within specified directories"; longDescription = '' - FDUPES uses md5sums and then a byte by byte comparison to finde duplicate - files within a set of directories. + FDUPES compares inodes' stats, hash sums, and byte by byte file + contents to find duplicate files within a set of directories and + then applies various actions to those sets, e.g.: + * remove some of the duplicates, + * turn all the files in a set into hardlinks. ''; - homepage = http://code.google.com/p/fdupes/; + homepage = src.meta.homepage; license = stdenv.lib.licenses.mit; platforms = stdenv.lib.platforms.all; maintainers = [ diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index 2cf8d50bbe546..749bf59fde96b 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -1,13 +1,16 @@ { stdenv, fetchurl, zlib }: stdenv.mkDerivation rec { - name = "file-5.22"; + name = "file-5.25"; buildInputs = [ zlib ]; src = fetchurl { - url = "ftp://ftp.astron.com/pub/file/${name}.tar.gz"; - sha256 = "02zw14hw3gqlw91w2f2snbirvyrp7r83irvnnkjcb25q9kjaiqy4"; + urls = [ + "ftp://ftp.astron.com/pub/file/${name}.tar.gz" + "http://distfiles.macports.org/file/${name}.tar.gz" + ]; + sha256 = "1jhfi5mivdnqvry5la5q919l503ahwdwbf3hjhiv97znccakhd9p"; }; meta = { diff --git a/pkgs/tools/misc/file/python.patch b/pkgs/tools/misc/file/python.patch deleted file mode 100644 index 8ecbc9a81fdc7..0000000000000 --- a/pkgs/tools/misc/file/python.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- file-5.11/python/magic.py 2011-09-22 18:57:41.000000000 +0200 -+++ file-5.11/python/magic.py.1 2012-04-30 15:00:31.750213810 +0200 -@@ -13,7 +13,7 @@ - Loads the shared library through ctypes and returns a library - L{ctypes.CDLL} instance - """ -- return ctypes.cdll.LoadLibrary(find_library('magic')) -+ return ctypes.CDLL('libmagic.so') - - _libraries = {} - _libraries['magic'] = _init() diff --git a/pkgs/tools/misc/findutils/default.nix b/pkgs/tools/misc/findutils/default.nix index 6b2069ae7bda9..c59283fb7c39c 100644 --- a/pkgs/tools/misc/findutils/default.nix +++ b/pkgs/tools/misc/findutils/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [coreutils]; - patches = [ ./findutils-path.patch ./change_echo_path.patch ]; + patches = [ ./findutils-path.patch ./change_echo_path.patch ./disable-test-canonicalize.patch ]; outputs = [ "out" "info" ]; @@ -21,6 +21,10 @@ stdenv.mkDerivation rec { configureFlags = [ "gl_cv_func_wcwidth_works=yes" ]; }; + preConfigure = if stdenv.isCygwin then '' + sed -i gnulib/lib/fpending.h -e '/include <stdio_ext.h>/d' + '' else null; + meta = { homepage = http://www.gnu.org/software/findutils/; description = "GNU Find Utilities, the basic directory searching utilities of the GNU operating system"; diff --git a/pkgs/tools/misc/findutils/disable-test-canonicalize.patch b/pkgs/tools/misc/findutils/disable-test-canonicalize.patch new file mode 100644 index 0000000000000..3a8d42eb5607a --- /dev/null +++ b/pkgs/tools/misc/findutils/disable-test-canonicalize.patch @@ -0,0 +1,12 @@ +diff -ruN findutils-4.4.2/tests/test-canonicalize.sh findutils-4.4.2_edited/tests/test-canonicalize.sh +--- findutils-4.4.2/tests/test-canonicalize.sh 2008-12-23 12:50:15.000000000 +0000 ++++ findutils-4.4.2_edited/tests/test-canonicalize.sh 2015-06-14 10:51:19.000000000 +0000 +@@ -1,5 +1,8 @@ + #!/bin/sh + ++# skipped because user might not have directory listing permission for all parents of TMPDIR ++exit 77 ++ + tmpfiles="" + trap 'rm -fr $tmpfiles' 1 2 3 15 + diff --git a/pkgs/tools/misc/fluentd/default.nix b/pkgs/tools/misc/fluentd/default.nix index cfc1e9ab5647b..800e1c6f67a13 100644 --- a/pkgs/tools/misc/fluentd/default.nix +++ b/pkgs/tools/misc/fluentd/default.nix @@ -13,7 +13,7 @@ bundlerEnv { meta = with lib; { description = "A data collector"; homepage = http://www.fluentd.org/; - license = with licenses; asl20; + license = licenses.asl20; maintainers = with maintainers; [ offline ]; platforms = platforms.unix; }; diff --git a/pkgs/tools/misc/gnokii/default.nix b/pkgs/tools/misc/gnokii/default.nix index d0354a7bb6eda..c0593e5c01778 100644 --- a/pkgs/tools/misc/gnokii/default.nix +++ b/pkgs/tools/misc/gnokii/default.nix @@ -1,8 +1,8 @@ -a : -let +a @ { intltool, perl, gettext, libusb, pkgconfig, bluez, readline, pcsclite, libical, gtk, glib, libXpm, ... } : +let fetchurl = a.fetchurl; - s = import ./src-for-default.nix; + s = import ./src-for-default.nix; buildInputs = with a; [ perl intltool gettext libusb glib gtk pkgconfig bluez readline diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix index e5c814faa4aa0..2b9c2297af283 100644 --- a/pkgs/tools/misc/gparted/default.nix +++ b/pkgs/tools/misc/gparted/default.nix @@ -1,19 +1,19 @@ { stdenv, fetchurl, parted, gtk, glib, intltool, gettext, libuuid -, pkgconfig, gtkmm, libxml2 }: +, pkgconfig, gtkmm, libxml2, hicolor_icon_theme +}: stdenv.mkDerivation rec { - name = "gparted-0.22.0"; + name = "gparted-0.23.0"; src = fetchurl { - sha256 = "09vg5lxvh81x54ps5ayfjd4jl84wprn42i1wifnfmj44dqd5wxda"; + sha256 = "0m57bni3nkbbqq920ydzvasy2qc5j6w6bdssyn12jk4157gxvlbz"; url = "mirror://sourceforge/gparted/${name}.tar.bz2"; }; configureFlags = "--disable-doc"; - buildInputs = [ - parted gtk glib intltool gettext libuuid pkgconfig gtkmm libxml2 - ]; + buildInputs = [ parted gtk glib libuuid gtkmm libxml2 hicolor_icon_theme ]; + nativeBuildInputs = [ intltool gettext pkgconfig ]; meta = with stdenv.lib; { description = "Graphical disk partitioning tool"; @@ -22,9 +22,9 @@ stdenv.mkDerivation rec { partitions. GParted enables you to change the partition organization while preserving the partition contents. ''; - homepage = http://gparted.sourceforge.net; - license = with licenses; gpl2Plus; - platforms = with platforms; linux; + homepage = http://gparted.org; + license = licenses.gpl2Plus; + platforms = platforms.linux; maintainers = with maintainers; [ nckx ]; }; } diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index 501c6820df23a..2880666e8db25 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -20,7 +20,7 @@ let canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems); inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems); - version = "2.02-git-2015-04-24"; + version = "2.x-2015-07-27"; unifont_bdf = fetchurl { url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; @@ -43,8 +43,8 @@ stdenv.mkDerivation rec { src = fetchFromSavannah { repo = "grub"; - rev = "70b002de55abbfd6b2d2f2ea4408078d93c9e0de"; - sha256 = "1bhm1yxjmckzn45v70lzmz0qpj5prhb4iyiyqqw8rvyykcixw5qk"; + rev = "72fc110d95129410443b898e931ff7a1db75312e"; + sha256 = "0l2hws8h1jhww5s0m8pkwdggacpqb7fvz2jx83syg7ynczpgzbxs"; }; nativeBuildInputs = [ autogen flex bison python autoconf automake ]; diff --git a/pkgs/tools/misc/grub/trusted.nix b/pkgs/tools/misc/grub/trusted.nix index 9f897d7e93a2e..315c7145cbe34 100644 --- a/pkgs/tools/misc/grub/trusted.nix +++ b/pkgs/tools/misc/grub/trusted.nix @@ -1,26 +1,92 @@ -{stdenv, fetchgit, autoconf, automake, buggyBiosCDSupport ? true}: +{ stdenv, fetchurl, fetchgit, autogen, flex, bison, python, autoconf, automake +, gettext, ncurses, libusb, freetype, qemu, devicemapper +}: -stdenv.mkDerivation { - name = "trustedGRUB-1.1.5"; +with stdenv.lib; +let + pcSystems = { + "i686-linux".target = "i386"; + "x86_64-linux".target = "i386"; + }; + + inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems); + + version = "1.2.0"; + + unifont_bdf = fetchurl { + url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; + sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx"; + }; + + po_src = fetchurl { + name = "grub-2.02-beta2.tar.gz"; + url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.gz"; + sha256 = "1lr9h3xcx0wwrnkxdnkfjwy08j7g7mdlmmbdip2db4zfgi69h0rm"; + + }; + +in ( + +stdenv.mkDerivation rec { + name = "trustedGRUB2-${version}"; src = fetchgit { - url = "https://github.com/ts468/TrustedGRUB"; - rev = "954941c17e14c8f7b18e6cd3043ef5f946866f1c"; - sha256 = "30c21765dc44f02275e66220d6724ec9cd45496226ca28c6db59a9147aa22685"; + url = "https://github.com/Sirrix-AG/TrustedGRUB2"; + rev = "1ff54a5fbe02ea01df5a7de59b1e0201e08d4f76"; + sha256 = "8c17bd7e14dd96ae9c4e98723f4e18ec6b21d45ac486ecf771447649829d0b34"; }; - # Autoconf/automake required for the splashimage patch. - buildInputs = [autoconf automake]; + nativeBuildInputs = [ autogen flex bison python autoconf automake ]; + buildInputs = [ ncurses libusb freetype gettext devicemapper ] + ++ optional doCheck qemu; + + preConfigure = + '' for i in "tests/util/"*.in + do + sed -i "$i" -e's|/bin/bash|/bin/sh|g' + done + + # Apparently, the QEMU executable is no longer called + # `qemu-system-i386', even on i386. + # + # In addition, use `-nodefaults' to avoid errors like: + # + # chardev: opening backend "stdio" failed + # qemu: could not open serial device 'stdio': Invalid argument + # + # See <http://www.mail-archive.com/qemu-devel@nongnu.org/msg22775.html>. + sed -i "tests/util/grub-shell.in" \ + -e's/qemu-system-i386/qemu-system-x86_64 -nodefaults/g' + ''; + + prePatch = + '' tar zxf ${po_src} grub-2.02~beta2/po + rm -rf po + mv grub-2.02~beta2/po po + sh autogen.sh + gunzip < "${unifont_bdf}" > "unifont.bdf" + sed -i "configure" \ + -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g" + ''; + + patches = [ ./fix-bash-completion.patch ]; + + # save target that grub is compiled for + grubTarget = if inPCSystems + then "${pcSystems.${stdenv.system}.target}-pc" + else ""; + + doCheck = false; + enableParallelBuilding = true; - preConfigure = '' - autoreconf + postInstall = '' + paxmark pms $out/sbin/grub-{probe,bios-setup} ''; - meta = { - homepage = "http://sourceforge.net/projects/trustedgrub/"; - repositories.git = https://github.com/ts468/TrustedGRUB; - description = "Legacy GRUB bootloader extended with TCG support"; - platforms = stdenv.lib.platforms.linux; - maintainers = with stdenv.lib.maintainers; [ tstrobel ]; + meta = with stdenv.lib; { + description = "GRUB 2.0 extended with TCG (TPM) support for integrity measured boot process (trusted boot)"; + homepage = https://github.com/Sirrix-AG/TrustedGRUB2; + license = licenses.gpl3Plus; + platforms = platforms.gnu; }; -} +}) diff --git a/pkgs/tools/misc/gummiboot/default.nix b/pkgs/tools/misc/gummiboot/default.nix index 3765502006208..9d9b7700c90b5 100644 --- a/pkgs/tools/misc/gummiboot/default.nix +++ b/pkgs/tools/misc/gummiboot/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, gnu-efi, unzip, pkgconfig, utillinux, libxslt, docbook_xsl, docbook_xml_dtd_42 }: stdenv.mkDerivation rec { - name = "gummiboot-45"; + name = "gummiboot-48"; buildInputs = [ gnu-efi pkgconfig libxslt utillinux ]; @@ -13,8 +13,8 @@ stdenv.mkDerivation rec { ]; src = fetchurl { - url = http://pkgs.fedoraproject.org/repo/pkgs/gummiboot/gummiboot-45.tar.xz/5d4957390e959cb9f325b87712ddd3f1/gummiboot-45.tar.xz; - sha256 = "15227d6abi90vg7rs234fm13af511nsd6dv87c3jvsjhgb9ib0hm"; + url = http://pkgs.fedoraproject.org/repo/pkgs/gummiboot/gummiboot-48.tar.xz/05ef3951e8322b76c31f2fd14efdc185/gummiboot-48.tar.xz; + sha256 = "1bzygyglgglhb3aj77w2qcb0dz9sxgb7lq5krxf6417431h198rg"; }; meta = { @@ -25,7 +25,5 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl21Plus; platforms = [ "x86_64-linux" "i686-linux" ]; - - maintainers = [ stdenv.lib.maintainers.shlevy ]; }; } diff --git a/pkgs/tools/misc/i3minator/default.nix b/pkgs/tools/misc/i3minator/default.nix index 02b8049365498..0c3907b89bfed 100644 --- a/pkgs/tools/misc/i3minator/default.nix +++ b/pkgs/tools/misc/i3minator/default.nix @@ -1,19 +1,6 @@ { stdenv, fetchurl, buildPythonPackage, pythonPackages, python }: -let - i3-py = buildPythonPackage rec { - version = "0.6.4"; - name = "i3-py-${version}"; - - src = fetchurl { - url = "https://pypi.python.org/packages/source/i/i3-py/i3-py-${version}.tar.gz"; - sha256 = "1sgl438jrb4cdyl7hbc3ymwsf7y3zy09g1gh7ynilxpllp37jc8y"; - }; - - # no tests in tarball - doCheck = false; - }; -in buildPythonPackage rec { +buildPythonPackage rec { name = "i3minator-${version}"; version = "0.0.4"; @@ -22,7 +9,7 @@ in buildPythonPackage rec { sha256 = "11dn062788kwfs8k2ry4v8zr2gn40r6lsw770s9g2gvhl5n469dw"; }; - propagatedBuildInputs = [ pythonPackages.pyyaml i3-py ]; + propagatedBuildInputs = [ pythonPackages.pyyaml pythonPackages.i3-py ]; meta = with stdenv.lib; { description = "i3 project manager similar to tmuxinator"; diff --git a/pkgs/tools/misc/ipad_charge/default.nix b/pkgs/tools/misc/ipad_charge/default.nix new file mode 100644 index 0000000000000..df987ed86c1c8 --- /dev/null +++ b/pkgs/tools/misc/ipad_charge/default.nix @@ -0,0 +1,42 @@ +{ stdenv, fetchFromGitHub, libusb }: + +let version = "2015-02-03"; in +stdenv.mkDerivation rec { + name = "ipad_charge-${version}"; + + src = fetchFromGitHub { + sha256 = "0f40hqx1dbqpwrhyf42h5982jwqv8j5zp5hwwakz6600hyqvnnz7"; + rev = "bb24e1c3a79016cfdffb9d28189485766d655ec6"; + repo = "ipad_charge"; + owner = "mkorenkov"; + }; + + buildInputs = [ libusb ]; + + postPatch = '' + substituteInPlace Makefile \ + --replace " -o root -g root" "" \ + --replace "/usr" "$out" + sed "/rules\.d/d" -i Makefile + ''; + + enableParallelBuilding = true; + + preInstall = '' + mkdir -p $out/bin + ''; + + meta = with stdenv.lib; { + inherit version; + inherit (src.meta) homepage; + description = "Apple device USB charging utility for Linux"; + longDescription = '' + USB charging control utility used to enable/disable charging of an Apple + device connected to USB port. For a list of supported devices, see + https://github.com/mkorenkov/ipad_charge#supported-devices. + ''; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ nckx ]; + }; +} diff --git a/pkgs/tools/misc/kde-gtk-config/default.nix b/pkgs/tools/misc/kde-gtk-config/default.nix index 88df0b6b54452..809d0c65c6ece 100644 --- a/pkgs/tools/misc/kde-gtk-config/default.nix +++ b/pkgs/tools/misc/kde-gtk-config/default.nix @@ -1,5 +1,7 @@ -{ stdenv, fetchurl, cmake, gettext, gtk2, gtk3, kdelibs -, libxcb, libpthreadstubs, libXdmcp, pkgconfig, glib, gdk_pixbuf }: +{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig +, gtk2, gtk3, kdelibs, libxcb, libpthreadstubs, libXdmcp +, glib, gdk_pixbuf +}: stdenv.mkDerivation { name = "kde-gtk-config-2.2.1"; @@ -9,19 +11,11 @@ stdenv.mkDerivation { }; buildInputs = [ - cmake - gdk_pixbuf - gettext - glib - gtk2 - gtk3 - kdelibs - libxcb - libpthreadstubs - libXdmcp - pkgconfig + gdk_pixbuf glib gtk2 gtk3 kdelibs libxcb libpthreadstubs libXdmcp ]; + nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ]; + patches = [ ./kde-gtk-config-2.2.1-install-paths.patch ./kde-gtk-config-follow-symlinks.patch diff --git a/pkgs/tools/misc/keychain/default.nix b/pkgs/tools/misc/keychain/default.nix index 1ed6be071a590..6ffd36312a3e7 100644 --- a/pkgs/tools/misc/keychain/default.nix +++ b/pkgs/tools/misc/keychain/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchFromGitHub, makeWrapper, coreutils, openssh, gnupg -, procps, gnugrep, gawk, findutils, gnused }: +, perl, procps, gnugrep, gawk, findutils, gnused +, withProcps ? stdenv.isLinux }: stdenv.mkDerivation rec { name = "keychain-${version}"; @@ -12,15 +13,12 @@ stdenv.mkDerivation rec { sha256 = "0ajas58cv8mp5wb6hn1zhsqiwfxvx69p4f91a5j2as299rxgrxlp"; }; - phases = [ "unpackPhase" "patchPhase" "buildPhase" ]; + buildInputs = [ makeWrapper perl ]; - buildInputs = [ makeWrapper ]; - - patchPhase = "sed -i -e 's,version=.*,version=\"${version}\",g' keychain.sh"; - - buildPhase = '' - mkdir -p $out/bin - cp keychain.sh $out/bin/keychain + installPhase = '' + mkdir -p $out/{bin,share/man/man1} + cp keychain $out/bin/keychain + cp keychain.1 $out/share/man/man1 wrapProgram $out/bin/keychain \ --prefix PATH ":" "${coreutils}/bin" \ --prefix PATH ":" "${openssh}/bin" \ @@ -29,12 +27,16 @@ stdenv.mkDerivation rec { --prefix PATH ":" "${gnused}/bin" \ --prefix PATH ":" "${findutils}/bin" \ --prefix PATH ":" "${gawk}/bin" \ - --prefix PATH ":" "${procps}/bin" + ${if withProcps then ("--prefix PATH \":\" ${procps}/bin") else ""} ''; meta = { description = "Keychain management tool"; homepage = "http://www.funtoo.org/Keychain"; license = stdenv.lib.licenses.gpl2; + # other platforms are untested (AFAIK) + platforms = + with stdenv.lib; + platforms.linux ++ platforms.darwin; }; } diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix index 7924615201e6f..8c0f0e96d21ed 100644 --- a/pkgs/tools/misc/less/default.nix +++ b/pkgs/tools/misc/less/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "http://www.greenwoodsoftware.com/less/${name}.tar.gz"; - sha256 = "1w7d10h6hzgz5zww8g4aja2fbl7xwx30vd07hcg1fcy7hm8yc1q2"; + sha256 = "16703m6g5l97af3jwpypgac7gpmh3yjkdpqygf5a2scfip0hxm2g"; }; # Look for ‘sysless’ in /etc. diff --git a/pkgs/tools/misc/logstash-forwarder/default.nix b/pkgs/tools/misc/logstash-forwarder/default.nix index a20b1d577754b..44fa1cb7cfb10 100644 --- a/pkgs/tools/misc/logstash-forwarder/default.nix +++ b/pkgs/tools/misc/logstash-forwarder/default.nix @@ -1,15 +1,21 @@ -{ stdenv, fetchgit, go_1_3 }: -stdenv.mkDerivation { - name = "logstash-forwarder-20141216"; - src = fetchgit { - url = https://github.com/elasticsearch/logstash-forwarder.git; - rev = "6082bd8aaecb2180f5b56f4fb1b2940a6935ef7b"; - sha256 = "1686rlx5p7d2806cg8y4376m4l7nvg1yjgg52ccrs0v4fnqs6292"; +{ stdenv, fetchFromGitHub, go }: + +stdenv.mkDerivation rec { + name = "logstash-forwarder-${version}"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "elasticsearch"; + repo = "logstash-forwarder"; + rev = "v${version}"; + sha256 = "05g7366w8f7h75n1ia7njdpmparr6sfvn45xxfh5412zigqidz6l"; }; - buildInputs = [ go_1_3 ]; + + buildInputs = [ go ]; + installPhase = '' mkdir -p $out/bin - cp build/bin/logstash-forwarder $out/bin + find . -name logstash-forwarder -type f -exec cp {} $out/bin \; ''; meta = { diff --git a/pkgs/tools/misc/logstash/default.nix b/pkgs/tools/misc/logstash/default.nix index 7f43ccdb6258f..ab02c7dc3d1d2 100644 --- a/pkgs/tools/misc/logstash/default.nix +++ b/pkgs/tools/misc/logstash/default.nix @@ -1,38 +1,31 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - version = "1.4.2"; + version = "1.5.3"; name = "logstash-${version}"; src = fetchurl { url = "https://download.elasticsearch.org/logstash/logstash/logstash-${version}.tar.gz"; - sha256 = "0sc0bwyf96fzs5h3d7ii65v9vvpfbm7w67vk1im9djnlz0d1ggnm"; + sha256 = "1an476k4q2shdxvhcx4fzbrcpk6isjrrvzlb6ivxfqg5fih3cg7b"; }; - dontBuild = true; - dontPatchELF = true; - dontStrip = true; + dontBuild = true; + dontPatchELF = true; + dontStrip = true; dontPatchShebangs = true; installPhase = '' - mkdir -p $out/bin - mkdir -p $out/vendor - mkdir -p $out/lib - mkdir -p $out/locales - mkdir -p $out/patterns - cp -a bin $out - cp -a vendor $out - cp -a lib $out - cp -a locales $out - cp -a patterns $out - patchShebangs $out/bin + mkdir -p $out + cp -r {Gemfile*,vendor,lib} $out + cp bin/logstash $out/logstash + cp bin/plugin $out/logstash-plugin ''; - meta = { - description = "Open Source, Distributed, RESTful Search Engine"; - homepage = http://www.elasticsearch.org; - license = stdenv.lib.licenses.asl20; - platforms = stdenv.lib.platforms.unix; - maintainers = [ stdenv.lib.maintainers.wjlroe ]; + meta = with stdenv.lib; { + description = "Logstash is a data pipeline that helps you process logs and other event data from a variety of systems."; + homepage = https://www.elastic.co/products/logstash; + license = licenses.asl20; + platforms = platforms.unix; + maintainers = [ maintainers.wjlroe maintainers.offline ]; }; } diff --git a/pkgs/tools/misc/lolcat/Gemfile b/pkgs/tools/misc/lolcat/Gemfile new file mode 100644 index 0000000000000..63f6c6633b336 --- /dev/null +++ b/pkgs/tools/misc/lolcat/Gemfile @@ -0,0 +1,2 @@ +source "http://rubygems.org" +gem "lolcat" \ No newline at end of file diff --git a/pkgs/tools/misc/lolcat/Gemfile.lock b/pkgs/tools/misc/lolcat/Gemfile.lock new file mode 100644 index 0000000000000..4b318ea1473b6 --- /dev/null +++ b/pkgs/tools/misc/lolcat/Gemfile.lock @@ -0,0 +1,14 @@ +GEM + remote: http://rubygems.org/ + specs: + lolcat (42.1.0) + paint (~> 0.8.3) + trollop (~> 1.16.2) + paint (0.8.7) + trollop (1.16.2) + +PLATFORMS + ruby + +DEPENDENCIES + lolcat diff --git a/pkgs/tools/misc/lolcat/default.nix b/pkgs/tools/misc/lolcat/default.nix new file mode 100644 index 0000000000000..21355652d3e3a --- /dev/null +++ b/pkgs/tools/misc/lolcat/default.nix @@ -0,0 +1,18 @@ +{ stdenv, lib, bundlerEnv, gpgme, ruby, ncurses, writeText, zlib, xapian +, pkgconfig, which }: + +bundlerEnv { + name = "lolcat-42.1.0"; + + inherit ruby; + gemfile = ./Gemfile; + lockfile = ./Gemfile.lock; + gemset = ./gemset.nix; + + meta = with lib; { + description = "A rainbow version of cat"; + homepage = https://github.com/busyloop/lolcat; + license = licenses.wtfpl; + maintainers = with maintainers; [ pSub ]; + }; +} diff --git a/pkgs/tools/misc/lolcat/gemset.nix b/pkgs/tools/misc/lolcat/gemset.nix new file mode 100644 index 0000000000000..85acf7767a81b --- /dev/null +++ b/pkgs/tools/misc/lolcat/gemset.nix @@ -0,0 +1,27 @@ +{ + "lolcat" = { + version = "42.1.0"; + source = { + type = "gem"; + sha256 = "1jp0g7k958dg709dm1qs7nr8dmi4vlgvmcvqcr1zhk8ygx89rwgc"; + }; + dependencies = [ + "paint" + "trollop" + ]; + }; + "paint" = { + version = "0.8.7"; + source = { + type = "gem"; + sha256 = "0nl1x0190d44bfczlxdy16gxsvm95y14kxv3k9n92h9ap2zvdyd8"; + }; + }; + "trollop" = { + version = "1.16.2"; + source = { + type = "gem"; + sha256 = "0frrp90dw266h3kf9g925dppir9l7p8jxknw6dn5nz6fa6c4g5lg"; + }; + }; +} \ No newline at end of file diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix index 403068b1bf7dc..69af77e18677f 100644 --- a/pkgs/tools/misc/man-db/default.nix +++ b/pkgs/tools/misc/man-db/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, libpipeline, db, groff }: stdenv.mkDerivation rec { - name = "man-db-2.7.1"; + name = "man-db-2.7.3"; src = fetchurl { url = "mirror://savannah/man-db/${name}.tar.xz"; - sha256 = "03ly0hbpgjnag576rgccanaisn7f6422q5qxrj64vyzslc2651y4"; + sha256 = "1shl07w3251ih6g6zx3xa3p1193difxwdz4ysnmff1v0jp4l8iwx"; }; buildInputs = [ pkgconfig libpipeline db groff ]; diff --git a/pkgs/tools/misc/memtest86+/default.nix b/pkgs/tools/misc/memtest86+/default.nix index dbd5a46e10abb..7e38242633653 100644 --- a/pkgs/tools/misc/memtest86+/default.nix +++ b/pkgs/tools/misc/memtest86+/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { fi ''; - NIX_CFLAGS_COMPILE = "-I."; + NIX_CFLAGS_COMPILE = "-I. -std=gnu90"; buildFlags = "memtest.bin"; diff --git a/pkgs/tools/misc/mmv/default.nix b/pkgs/tools/misc/mmv/default.nix index e6e7eb505bfcc..2d2d4e4a74161 100644 --- a/pkgs/tools/misc/mmv/default.nix +++ b/pkgs/tools/misc/mmv/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { version = "1.01b"; src = fetchurl { - url = "http://ftp.debian.org/debian/pool/main/m/mmv/mmv_${version}.orig.tar.gz"; + url = "mirror://debian/pool/main/m/mmv/mmv_${version}.orig.tar.gz"; sha256 = "0399c027ea1e51fd607266c1e33573866d4db89f64a74be8b4a1d2d1ff1fdeef"; }; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { # Use Debian patched version, as upstream is no longer maintained and it # contains a _lot_ of fixes. (fetchurl { - url = "http://ftp.debian.org/debian/pool/main/m/mmv/mmv_${version}-15.diff.gz"; + url = "mirror://debian/pool/main/m/mmv/mmv_${version}-15.diff.gz"; sha256 = "9ad3e3d47510f816b4a18bae04ea75913588eec92248182f85dd09bc5ad2df13"; }) ]; diff --git a/pkgs/tools/misc/moreutils/default.nix b/pkgs/tools/misc/moreutils/default.nix index 843672fa26cf6..feb5710282fd4 100644 --- a/pkgs/tools/misc/moreutils/default.nix +++ b/pkgs/tools/misc/moreutils/default.nix @@ -1,20 +1,20 @@ -{ stdenv, fetchurl, libxml2, libxslt, docbook-xsl, perl, IPCRun, TimeDate, TimeDuration, makeWrapper }: +{ stdenv, fetchurl, libxml2, libxslt, docbook-xsl, docbook_xml_dtd_44, perl, IPCRun, TimeDate, TimeDuration, makeWrapper }: with stdenv.lib; stdenv.mkDerivation rec { name = "moreutils-${version}"; - version = "0.55"; + version = "0.57"; src = fetchurl { url = "http://ftp.de.debian.org/debian/pool/main/m/moreutils/moreutils_${version}.orig.tar.gz"; - sha256 = "1dcah2jx8dbznn8966xl7sf1jrld2qfh6l6xcmx9dsnf8p8mr7fs"; + sha256 = "078dpkwwwrv8hxnylbc901kib2d1rr3hsja37j6dlpjfcfq58z9s"; }; preBuild = '' substituteInPlace Makefile --replace /usr/share/xml/docbook/stylesheet/docbook-xsl ${docbook-xsl}/xml/xsl/docbook ''; - buildInputs = [ libxml2 libxslt docbook-xsl makeWrapper ]; + buildInputs = [ libxml2 libxslt docbook-xsl docbook_xml_dtd_44 makeWrapper ]; propagatedBuildInputs = [ perl IPCRun TimeDate TimeDuration ]; diff --git a/pkgs/tools/misc/multitail/default.nix b/pkgs/tools/misc/multitail/default.nix index f3f90143bda98..9b1b3f48450c0 100644 --- a/pkgs/tools/misc/multitail/default.nix +++ b/pkgs/tools/misc/multitail/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, ncurses }: stdenv.mkDerivation rec { - name = "multitail-6.2.1"; + version = "6.4.2"; + name = "multitail-${version}"; src = fetchurl { url = "http://www.vanheusden.com/multitail/${name}.tgz"; - sha256 = "049fv5cyl5f7vcc8n2q3z3i5k0sqv2k715ic0s4q1nrw5kb6qn0y"; + sha256 = "1zd1r89xkxngl1pdrvsc877838nwkfqkbcgfqm3vglwalxc587dg"; }; buildInputs = [ ncurses ]; @@ -20,5 +21,6 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.vanheusden.com/multitail/; description = "tail on Steroids"; + maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ]; }; } diff --git a/pkgs/tools/misc/ncdu/default.nix b/pkgs/tools/misc/ncdu/default.nix index ff751eb40da30..6ea9d71bddc74 100644 --- a/pkgs/tools/misc/ncdu/default.nix +++ b/pkgs/tools/misc/ncdu/default.nix @@ -2,19 +2,20 @@ stdenv.mkDerivation rec { name = "ncdu-${version}"; - version = "1.10"; + version = "1.11"; src = fetchurl { url = "http://dev.yorhel.nl/download/${name}.tar.gz"; - sha256 = "0rqc5wpqcbfqpcwxgh3jxwa0yw2py0hv0acpsf0a9g6v9144m6gm"; + sha256 = "0yxv87hpal05p6nii6rlnai5a8958689l9vz020w4qvlwiragbnh"; }; buildInputs = [ ncurses ]; - meta = { + meta = with stdenv.lib; { description = "Ncurses disk usage analyzer"; homepage = http://dev.yorhel.nl/ncdu; - license = stdenv.lib.licenses.mit; - platforms = stdenv.lib.platforms.all; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ pSub ]; }; } diff --git a/pkgs/tools/misc/ngrok/default.nix b/pkgs/tools/misc/ngrok/default.nix deleted file mode 100644 index c3019d722afd8..0000000000000 --- a/pkgs/tools/misc/ngrok/default.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ stdenv, git, fetchFromGitHub, goPackages }: - -with goPackages; - -buildGoPackage rec { - name = "ngrok-1.7"; - goPackagePath = "ngrok"; - - src = fetchFromGitHub { - rev = "b7d5571aa7f12ac304b8f8286b855cc64dd9bab8"; - owner = "inconshreveable"; - repo = "ngrok"; - sha256 = "0a5iq9l9f2xdg6gnc9pj0iczhycv1w5iwcqgzzap83xfpy01xkh4"; - }; - - subPackages = [ "main/ngrok" "main/ngrokd" ]; - - preConfigure = '' - sed -e '/jteeuwen\/go-bindata/d' \ - -e '/export GOPATH/d' \ - -e 's/go get/#go get/' \ - -e 's|bin/go-bindata|go-bindata|' -i Makefile - make assets BUILDTAGS=release - export sourceRoot=$sourceRoot/src/ngrok - ''; - - buildInputs = [ git log4go websocket go-vhost mousetrap termbox-go rcrowley.go-metrics - yaml-v1 go-bindata go-update binarydist osext ]; - - buildFlags = "-tags release"; - - dontInstallSrc = true; - - meta = with stdenv.lib; { - description = "Reverse proxy that creates a secure tunnel between from a public endpoint t -o a locally running web service"; - homepage = https://ngrok.com/; - license = licenses.asl20; - maintainers = with maintainers; [ iElectric cstrahan ]; - platforms = with platforms; linux ++ darwin; - }; - -} diff --git a/pkgs/tools/misc/ocz-ssd-guru/default.nix b/pkgs/tools/misc/ocz-ssd-guru/default.nix index 7ee6089c24966..21786f3f15f50 100644 --- a/pkgs/tools/misc/ocz-ssd-guru/default.nix +++ b/pkgs/tools/misc/ocz-ssd-guru/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, xlibs, freetype, fontconfig, mesa, glibc, makeWrapper }: +{ fetchurl, stdenv, xorg, freetype, fontconfig, mesa, glibc, makeWrapper }: let system = if stdenv.system == "x86_64-linux" then "linux64" else "linux32"; @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { buildInputs = [ makeWrapper ]; libPath = stdenv.lib.makeLibraryPath [ - xlibs.libX11 - xlibs.libxcb + xorg.libX11 + xorg.libxcb freetype fontconfig - xlibs.libXext - xlibs.libXi - xlibs.libXrender + xorg.libXext + xorg.libXi + xorg.libXrender stdenv.cc.cc glibc mesa diff --git a/pkgs/tools/misc/opentsdb/default.nix b/pkgs/tools/misc/opentsdb/default.nix index 6f9695ba363cd..fd73eecacde1a 100644 --- a/pkgs/tools/misc/opentsdb/default.nix +++ b/pkgs/tools/misc/opentsdb/default.nix @@ -1,11 +1,12 @@ { stdenv, autoconf, automake, curl, fetchurl, jdk, jre, makeWrapper, nettools, python }: with stdenv.lib; stdenv.mkDerivation rec { - name = "opentsdb-2.1.0-rc1"; + name = "opentsdb-${version}"; + version = "2.1.1"; src = fetchurl { - url = https://github.com/OpenTSDB/opentsdb/releases/download/v2.1.0RC1/opentsdb-2.1.0RC1.tar.gz; - sha256 = "1vvhzdl2wgbzy2lvlyx40pks47ma6szs9ka4dwjf123xyixv0rmz"; + url = "https://github.com/OpenTSDB/opentsdb/releases/download/${version}/opentsdb-${version}.tar.gz"; + sha256 = "17wbdvrv83dr18dqxxsk73c1a7jlbw19algvz0hsz9a1k7aiy29b"; }; buildInputs = [ autoconf automake curl jdk makeWrapper nettools python ]; diff --git a/pkgs/tools/misc/pal/default.nix b/pkgs/tools/misc/pal/default.nix index 2a081b882ab85..ff7279d0d57c9 100644 --- a/pkgs/tools/misc/pal/default.nix +++ b/pkgs/tools/misc/pal/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, ncurses, glib, gettext, readline, pkgconfig }: stdenv.mkDerivation rec { - name = "pal-0.4.2"; + name = "pal-0.4.3"; src = fetchurl { url = "mirror://sourceforge/palcal/${name}.tgz"; - sha256 = "1601nsspxscm7bp9g9bkia0ij0mx2lpskl2fqhs5r0smp92121nx"; + sha256 = "072mahxvd7lcvrayl32y589w4v3vh7bmlcnhiksjylknpsvhqiyf"; }; patchPhase = '' diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix index 27d5e62458960..1d3d14d7e2341 100644 --- a/pkgs/tools/misc/parallel/default.nix +++ b/pkgs/tools/misc/parallel/default.nix @@ -1,28 +1,27 @@ -{ fetchurl, stdenv, perl }: +{ fetchurl, stdenv, perl, makeWrapper, procps }: stdenv.mkDerivation rec { - name = "parallel-20150322"; + name = "parallel-20150822"; src = fetchurl { url = "mirror://gnu/parallel/${name}.tar.bz2"; - sha256 = "1zsj1bd4zbwb4n9i0jgzs7vd5wkyg3xvj6s1q6s5fyn0pff7j01c"; + sha256 = "1ij7bjxhk2866mzh0v0v2m629b6d39r5ivwdzmh72s471m9hg45d"; }; - patchPhase = - '' sed -i "src/parallel" -e's|/usr/bin/perl|${perl}/bin/perl|g' - ''; + nativeBuildInputs = [ makeWrapper ]; - preBuild = - # The `sem' program wants to write to `~/.parallel'. - '' export HOME="$PWD" - ''; + preFixup = '' + sed -i 's,#![ ]*/usr/bin/env[ ]*perl,#!${perl}/bin/perl,' $out/bin/* + + wrapProgram $out/bin/parallel \ + ${if stdenv.isLinux then ("--prefix PATH \":\" ${procps}/bin") else ""} \ + --prefix PATH : "${perl}/bin" \ + ''; - buildInputs = [ perl ]; doCheck = true; meta = with stdenv.lib; { description = "Shell tool for executing jobs in parallel"; - longDescription = '' GNU Parallel is a shell tool for executing jobs in parallel. A job is typically a single command or a small script that has to be run @@ -40,11 +39,8 @@ stdenv.mkDerivation rec { it possible to use output from GNU Parallel as input for other programs. ''; - homepage = http://www.gnu.org/software/parallel/; - license = licenses.gpl3Plus; - platforms = platforms.all; maintainers = with maintainers; [ pSub ]; }; diff --git a/pkgs/tools/misc/picocom/default.nix b/pkgs/tools/misc/picocom/default.nix index 303fdb3dbe07c..cc5b6a707158f 100644 --- a/pkgs/tools/misc/picocom/default.nix +++ b/pkgs/tools/misc/picocom/default.nix @@ -1,19 +1,22 @@ -{ stdenv, fetchurl, makeWrapper, lrzsz }: +{ stdenv, fetchFromGitHub, makeWrapper, lrzsz }: stdenv.mkDerivation rec { - name = "picocom-1.7"; + name = "picocom-${version}"; + version = "2.0"; - src = fetchurl { - url = "http://picocom.googlecode.com/files/${name}.tar.gz"; - sha256 = "17hjq713naq02xar711aw24qqd52p591mj1h5n97cni1ga7irwyh"; + src = fetchFromGitHub { + owner = "npat-efault"; + repo = "picocom"; + rev = version; + sha256 = "0s990jiqlbcg3isvhr3bn4sb7b0k6qqbf1jdvs1fyy9h0iiwprjw"; }; buildInputs = [ makeWrapper ]; installPhase = '' - mkdir -p $out/bin $out/share/man/man8 + mkdir -p $out/bin $out/share/man/man1 cp picocom $out/bin - cp picocom.8 $out/share/man/man8 + cp picocom.1 $out/share/man/man1 wrapProgram $out/bin/picocom \ --prefix PATH ":" "${lrzsz}/bin" @@ -21,7 +24,7 @@ stdenv.mkDerivation rec { meta = { description = "Minimal dumb-terminal emulation program"; - homepage = http://code.google.com/p/picocom/; + homepage = https://github.com/npat-efault/picocom/; license = stdenv.lib.licenses.gpl2Plus; platforms = stdenv.lib.platforms.gnu; # arbitrary choice }; diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix index aa0be62ed64ce..40f441e065df6 100644 --- a/pkgs/tools/misc/pipelight/default.nix +++ b/pkgs/tools/misc/pipelight/default.nix @@ -1,44 +1,9 @@ -{ stdenv, fetchurl, fetchgit, autoconf, automake, wineUnstable, perl, xlibs - , gnupg, gcc48_multi, mesa, curl, bash, cacert, cabextract, utillinux, attr +{ stdenv, fetchurl, fetchgit, autoconf, automake, wineStaging, perl, xorg + , gnupg, gcc_multi, mesa, curl, bash, cacert, cabextract, utillinux, attr }: let - wine_patches_version = "1.7.38"; - wine_hash = "1h3bsga9qzqkavf9wlv62ldl3a8mz7grr68nxv8vicmnglzfj7lq"; - - wine_patches = fetchgit { - url = "git://github.com/compholio/wine-compholio.git"; - rev = "refs/tags/v${wine_patches_version}"; - sha256 = "0lcagswy1lgqz6qlpf0ng7ksl2sbaqldrgnhf0n1278jj82rq80n"; - }; - - wine_custom = - stdenv.lib.overrideDerivation wineUnstable (args: rec { - name = "wine-${wine_patches_version}"; - version = "${wine_patches_version}"; - src = null; - srcs = [ - (fetchurl { - url = "mirror://sourceforge/wine/${name}.tar.bz2"; - sha256 = wine_hash; - }) - wine_patches ]; - sourceRoot = "./${name}"; - buildInputs = args.buildInputs ++ [ - autoconf perl utillinux automake attr - ]; - nativeBuildInputs = args.nativeBuildInputs ++ [ - autoconf perl utillinux automake attr - ]; - postPatch = '' - export wineDir=$(pwd) - patchShebangs $wineDir/tools/ - chmod u+w $wineDir/../${wine_patches.name}/debian/tools/ - patchShebangs $wineDir/../${wine_patches.name}/debian/tools/ - chmod -R +rwx ../${wine_patches.name}/ - make -C ../${wine_patches.name}/patches DESTDIR=$wineDir install - ''; - }); + wine_custom = wineStaging; mozillaPluginPath = "/lib/mozilla/plugins"; @@ -54,7 +19,7 @@ in stdenv.mkDerivation rec { sha256 = "1i440rf22fmd2w86dlm1mpi3nb7410rfczc0yldnhgsvp5p3sm5f"; }; - buildInputs = [ wine_custom xlibs.libX11 gcc48_multi mesa curl ]; + buildInputs = [ wine_custom xorg.libX11 gcc_multi mesa curl ]; propagatedbuildInputs = [ curl cabextract ]; patches = [ ./pipelight.patch ]; diff --git a/pkgs/tools/misc/pipelight/pipelight.patch b/pkgs/tools/misc/pipelight/pipelight.patch index bde6ecf943d9e..66dd0fdab4c0c 100644 --- a/pkgs/tools/misc/pipelight/pipelight.patch +++ b/pkgs/tools/misc/pipelight/pipelight.patch @@ -43,7 +43,7 @@ diff -urN pipelight.old/bin/pipelight-plugin.in pipelight.new/bin/pipelight-plug -fi +download_file() +{ -+ curl --cacert /etc/ssl/certs/ca-bundle.crt -o "$1" "$2" ++ curl --cacert /etc/ssl/certs/ca-certificates.crt -o "$1" "$2" +} # Use shasum instead of sha256sum on MacOS / *BSD @@ -111,7 +111,7 @@ diff -urN pipelight.old/share/install-dependency pipelight.new/share/install-dep -fi +download_file() +{ -+ curl --cacert /etc/ssl/certs/ca-bundle.crt -o "$1" "$2" ++ curl --cacert /etc/ssl/certs/ca-certificates.crt -o "$1" "$2" +} +get_download_size() +{ diff --git a/pkgs/tools/misc/plowshare/default.nix b/pkgs/tools/misc/plowshare/default.nix index 79cb29b20ca3c..40540ad1c20db 100644 --- a/pkgs/tools/misc/plowshare/default.nix +++ b/pkgs/tools/misc/plowshare/default.nix @@ -1,15 +1,15 @@ -{ stdenv, fetchgit, makeWrapper, curl, spidermonkey }: +{ stdenv, fetchFromGitHub, makeWrapper, curl, spidermonkey }: stdenv.mkDerivation rec { name = "plowshare4-${version}"; - version = "1.1.0"; - src = fetchgit { - url = "https://code.google.com/p/plowshare/"; - rev = "87bd955e681ddda05009ca8594d727260989d5ed"; - sha256 = "0cbsnalmr6fa1ijsn1j1p9fdqi3ii96bx3xabgvvbbqkl7q938f9"; + src = fetchFromGitHub { + owner = "mcrapet"; + repo = "plowshare"; + rev = "v${version}"; + sha256 = "1xxkdv4q97dfzbcdnmy5079a59fwh8myxlvdr2dlxdv70fb72sq9"; }; buildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/misc/profile-cleaner/default.nix b/pkgs/tools/misc/profile-cleaner/default.nix index 903c8617128af..55c44770c3e17 100644 --- a/pkgs/tools/misc/profile-cleaner/default.nix +++ b/pkgs/tools/misc/profile-cleaner/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, makeWrapper, parallel, sqlite }: stdenv.mkDerivation rec { - version = "2.34"; + version = "2.35"; name = "profile-cleaner-${version}"; src = fetchFromGitHub { owner = "graysky2"; repo = "profile-cleaner"; rev = "v${version}"; - sha256 = "17z73xyn31668f7vmbj7xs659fcrm0m0mnzja7hz6lipfaviqxrs"; + sha256 = "0gashrzhpgcy98zsyc6b3awfp15j1x0nq82h60kvfjbs6xxzvszh"; }; buildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/misc/cv/default.nix b/pkgs/tools/misc/progress/default.nix index b953ffc1897b6..cf70b234b88a8 100644 --- a/pkgs/tools/misc/cv/default.nix +++ b/pkgs/tools/misc/progress/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, ncurses }: stdenv.mkDerivation rec { - name = "cv-${version}"; - version = "0.6"; + name = "progress-${version}"; + version = "0.9"; src = fetchFromGitHub { owner = "Xfennec"; - repo = "cv"; + repo = "progress"; rev = "v${version}"; - sha256 = "0nhhgkaghfp8rw23013j17yn9bqcwcrz0fylwkvx1krp5r8dalis"; + sha256 = "07bl5fsr538nk4l8vwj1kf5bivlh3a8cy8jliqfadxmhf1knn2mw"; }; buildInputs = [ ncurses ]; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=$(out)" ]; meta = with stdenv.lib; { - homepage = https://github.com/Xfennec/cv; + homepage = https://github.com/Xfennec/progress; description = "Tool that shows the progress of coreutils programs"; license = licenses.gpl3; platforms = platforms.linux; diff --git a/pkgs/tools/misc/pv/default.nix b/pkgs/tools/misc/pv/default.nix index a2d8c535d063f..8a3aa08abb780 100644 --- a/pkgs/tools/misc/pv/default.nix +++ b/pkgs/tools/misc/pv/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { homepage = http://www.ivarch.com/programs/pv; description = "Tool for monitoring the progress of data through a pipeline"; license = stdenv.lib.licenses.artistic2; - maintainers = with stdenv.lib.maintainers; [viric]; + maintainers = with stdenv.lib.maintainers; [ viric jgeerds ]; platforms = with stdenv.lib.platforms; all; }; } diff --git a/pkgs/tools/misc/qjoypad/default.nix b/pkgs/tools/misc/qjoypad/default.nix index a3a34d95fb5b3..663c60d28569b 100644 --- a/pkgs/tools/misc/qjoypad/default.nix +++ b/pkgs/tools/misc/qjoypad/default.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { experience just a little bit nicer. ''; homepage = http://qjoypad.sourceforge.net; - license = with stdenv.lib.licenses; gpl2; + license = stdenv.lib.licenses.gpl2; maintainers = with stdenv.lib.maintainers; [ astsmtl ]; platforms = with stdenv.lib.platforms; linux; }; diff --git a/pkgs/tools/misc/remind/default.nix b/pkgs/tools/misc/remind/default.nix index 18137312a3d1d..11d6991b89cb8 100644 --- a/pkgs/tools/misc/remind/default.nix +++ b/pkgs/tools/misc/remind/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl} : stdenv.mkDerivation { - name = "remind-3.1.13"; + name = "remind-3.1.15"; src = fetchurl { - url = http://www.roaringpenguin.com/files/download/remind-03.01.13.tar.gz; - sha256 = "0kzw1d53nlj90qfsibbs2gkzp1hamqqxpj57ip4kz1j1xgan69ng"; + url = http://www.roaringpenguin.com/files/download/remind-03.01.15.tar.gz; + sha256 = "1hcfcxz5fjzl7606prlb7dgls5kr8z3wb51h48s6qm8ang0b9nla"; }; meta = { diff --git a/pkgs/tools/misc/riemann-c-client/default.nix b/pkgs/tools/misc/riemann-c-client/default.nix index efdc21ad9b79a..5dde592aade20 100644 --- a/pkgs/tools/misc/riemann-c-client/default.nix +++ b/pkgs/tools/misc/riemann-c-client/default.nix @@ -1,13 +1,16 @@ -{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, file, protobufc }: +{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, file +, protobufc }: stdenv.mkDerivation rec { name = "riemann-c-client-${version}"; - version = "1.2.1"; + version = "1.7.0"; - src = fetchurl { - url = "https://github.com/algernon/riemann-c-client/archive/${name}.tar.gz"; - sha256 = "132yd1m523inmv17sd48xf7xdqb7jj36v7is1xw7w9nny6qxkzwm"; + src = fetchFromGitHub { + owner = "algernon"; + repo = "riemann-c-client"; + rev = "54f4a656793d6c5ca0bf1ff2388693fb6b2b82a7"; + sha256 = "0jc2bbw7sp2gr4cswx78srs0p1kp81prcarq4ivqpfw4bmzg6xg4"; }; buildInputs = [ autoconf automake libtool pkgconfig file protobufc ]; @@ -15,7 +18,7 @@ stdenv.mkDerivation rec { preConfigure = "autoreconf -i"; meta = with stdenv.lib; { - homepage = "https://github.com/algernon/riemann-c-client"; + homepage = https://github.com/algernon/riemann-c-client; description = "A C client library for the Riemann monitoring system"; license = licenses.gpl3; maintainers = [ maintainers.rickynils ]; diff --git a/pkgs/tools/misc/riemann-tools/Gemfile b/pkgs/tools/misc/riemann-tools/Gemfile new file mode 100644 index 0000000000000..3d56cd85c617b --- /dev/null +++ b/pkgs/tools/misc/riemann-tools/Gemfile @@ -0,0 +1,3 @@ +source 'https://rubygems.org' + +gem "riemann-tools", "0.2.6" diff --git a/pkgs/tools/misc/riemann-tools/Gemfile.lock b/pkgs/tools/misc/riemann-tools/Gemfile.lock new file mode 100644 index 0000000000000..58c12fd515161 --- /dev/null +++ b/pkgs/tools/misc/riemann-tools/Gemfile.lock @@ -0,0 +1,142 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (2.3.1) + beefcake (1.1.0) + builder (3.2.2) + excon (0.45.3) + faraday (0.9.1) + multipart-post (>= 1.2, < 3) + fission (0.5.0) + CFPropertyList (~> 2.2) + fog (1.31.0) + fog-atmos + fog-aws (~> 0.0) + fog-brightbox (~> 0.4) + fog-core (~> 1.30) + fog-ecloud + fog-google (>= 0.0.2) + fog-json + fog-local + fog-powerdns (>= 0.1.1) + fog-profitbricks + fog-radosgw (>= 0.0.2) + fog-riakcs + fog-sakuracloud (>= 0.0.4) + fog-serverlove + fog-softlayer + fog-storm_on_demand + fog-terremark + fog-vmfusion + fog-voxel + fog-xml (~> 0.1.1) + ipaddress (~> 0.5) + nokogiri (~> 1.5, >= 1.5.11) + fog-atmos (0.1.0) + fog-core + fog-xml + fog-aws (0.6.0) + fog-core (~> 1.27) + fog-json (~> 1.0) + fog-xml (~> 0.1) + ipaddress (~> 0.8) + fog-brightbox (0.7.2) + fog-core (~> 1.22) + fog-json + inflecto (~> 0.0.2) + fog-core (1.31.1) + builder + excon (~> 0.45) + formatador (~> 0.2) + mime-types + net-scp (~> 1.1) + net-ssh (>= 2.1.3) + fog-ecloud (0.3.0) + fog-core + fog-xml + fog-google (0.0.6) + fog-core + fog-json + fog-xml + fog-json (1.0.2) + fog-core (~> 1.0) + multi_json (~> 1.10) + fog-local (0.2.1) + fog-core (~> 1.27) + fog-powerdns (0.1.1) + fog-core (~> 1.27) + fog-json (~> 1.0) + fog-xml (~> 0.1) + fog-profitbricks (0.0.3) + fog-core + fog-xml + nokogiri + fog-radosgw (0.0.4) + fog-core (>= 1.21.0) + fog-json + fog-xml (>= 0.0.1) + fog-riakcs (0.1.0) + fog-core + fog-json + fog-xml + fog-sakuracloud (1.0.1) + fog-core + fog-json + fog-serverlove (0.1.2) + fog-core + fog-json + fog-softlayer (0.4.7) + fog-core + fog-json + fog-storm_on_demand (0.1.1) + fog-core + fog-json + fog-terremark (0.1.0) + fog-core + fog-xml + fog-vmfusion (0.1.0) + fission + fog-core + fog-voxel (0.1.0) + fog-core + fog-xml + fog-xml (0.1.2) + fog-core + nokogiri (~> 1.5, >= 1.5.11) + formatador (0.2.5) + inflecto (0.0.2) + ipaddress (0.8.0) + mime-types (2.6.1) + mini_portile (0.6.2) + mtrc (0.0.4) + multi_json (1.11.1) + multipart-post (2.0.0) + munin-ruby (0.2.5) + net-scp (1.2.1) + net-ssh (>= 2.6.5) + net-ssh (2.9.2) + nokogiri (1.6.6.2) + mini_portile (~> 0.6.0) + riemann-client (0.2.5) + beefcake (>= 0.3.5) + mtrc (>= 0.0.4) + trollop (>= 1.16.2) + riemann-tools (0.2.6) + faraday (>= 0.8.5) + fog (>= 1.4.0) + munin-ruby (>= 0.2.1) + nokogiri (>= 1.5.6) + riemann-client (>= 0.2.2) + trollop (>= 1.16.2) + yajl-ruby (>= 1.1.0) + trollop (2.1.2) + yajl-ruby (1.2.1) + +PLATFORMS + ruby + +DEPENDENCIES + riemann-tools (= 0.2.6) + +BUNDLED WITH + 1.10.2 diff --git a/pkgs/tools/misc/riemann-tools/default.nix b/pkgs/tools/misc/riemann-tools/default.nix new file mode 100644 index 0000000000000..c518bc66984d8 --- /dev/null +++ b/pkgs/tools/misc/riemann-tools/default.nix @@ -0,0 +1,8 @@ +{ bundlerEnv }: + +bundlerEnv { + name = "riemann-tools-0.2.6"; + gemfile = ./Gemfile; + lockfile = ./Gemfile.lock; + gemset = ./gemset.nix; +} diff --git a/pkgs/tools/misc/riemann-tools/gemset.nix b/pkgs/tools/misc/riemann-tools/gemset.nix new file mode 100644 index 0000000000000..07818fc76bcd0 --- /dev/null +++ b/pkgs/tools/misc/riemann-tools/gemset.nix @@ -0,0 +1,444 @@ +{ + "CFPropertyList" = { + version = "2.3.1"; + source = { + type = "gem"; + sha256 = "1wnk3gxnhfafbhgp0ic7qhzlx3lhv04v8nws2s31ii5s8135hs6k"; + }; + }; + "beefcake" = { + version = "1.1.0"; + source = { + type = "gem"; + sha256 = "009gzy9jp81lsnxnwisinhc58cd0qljdiipj2701lzzrha5d826z"; + }; + }; + "builder" = { + version = "3.2.2"; + source = { + type = "gem"; + sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2"; + }; + }; + "excon" = { + version = "0.45.3"; + source = { + type = "gem"; + sha256 = "183kfxfjjlc97w4rxkrxjw3kis4lxm65vppmvl4bkblvlw4nq94j"; + }; + }; + "faraday" = { + version = "0.9.1"; + source = { + type = "gem"; + sha256 = "1h33znnfzxpscgpq28i9fcqijd61h61zgs3gabpdgqfa1043axsn"; + }; + dependencies = [ + "multipart-post" + ]; + }; + "fission" = { + version = "0.5.0"; + source = { + type = "gem"; + sha256 = "09pmp1j1rr8r3pcmbn2na2ls7s1j9ijbxj99xi3a8r6v5xhjdjzh"; + }; + dependencies = [ + "CFPropertyList" + ]; + }; + "fog" = { + version = "1.31.0"; + source = { + type = "gem"; + sha256 = "0xr8xyrrkljm2hxi420x4qr5v6wqcj8d63v0qy1g6rkb3b1yhl9i"; + }; + dependencies = [ + "fog-atmos" + "fog-aws" + "fog-brightbox" + "fog-core" + "fog-ecloud" + "fog-google" + "fog-json" + "fog-local" + "fog-powerdns" + "fog-profitbricks" + "fog-radosgw" + "fog-riakcs" + "fog-sakuracloud" + "fog-serverlove" + "fog-softlayer" + "fog-storm_on_demand" + "fog-terremark" + "fog-vmfusion" + "fog-voxel" + "fog-xml" + "ipaddress" + "nokogiri" + ]; + }; + "fog-atmos" = { + version = "0.1.0"; + source = { + type = "gem"; + sha256 = "1aaxgnw9zy96gsh4h73kszypc32sx497s6bslvhfqh32q9d1y8c9"; + }; + dependencies = [ + "fog-core" + "fog-xml" + ]; + }; + "fog-aws" = { + version = "0.6.0"; + source = { + type = "gem"; + sha256 = "1m79s5ha6qq60pxqqxr9qs9fg8fwaz79sfxckidyhxdydcsjwx6z"; + }; + dependencies = [ + "fog-core" + "fog-json" + "fog-xml" + "ipaddress" + ]; + }; + "fog-brightbox" = { + version = "0.7.2"; + source = { + type = "gem"; + sha256 = "0636sqaf2w1rh4i2hxfgs24374l4ai8dgch8a7nycqhvjk2dm0aq"; + }; + dependencies = [ + "fog-core" + "fog-json" + "inflecto" + ]; + }; + "fog-core" = { + version = "1.31.1"; + source = { + type = "gem"; + sha256 = "1bcsy4cq7vyjmdf3h2v7q6hfj64v6phn0rfvwgj5wfza7yaxnhk7"; + }; + dependencies = [ + "builder" + "excon" + "formatador" + "mime-types" + "net-scp" + "net-ssh" + ]; + }; + "fog-ecloud" = { + version = "0.3.0"; + source = { + type = "gem"; + sha256 = "18rb4qjad9xwwqvvpj8r2h0hi9svy71pm4d3fc28cdcnfarmdi06"; + }; + dependencies = [ + "fog-core" + "fog-xml" + ]; + }; + "fog-google" = { + version = "0.0.6"; + source = { + type = "gem"; + sha256 = "1g3ykk239nxpdsr5anhprkp8vzk106gi4q6aqjh4z8q4bii0dflm"; + }; + dependencies = [ + "fog-core" + "fog-json" + "fog-xml" + ]; + }; + "fog-json" = { + version = "1.0.2"; + source = { + type = "gem"; + sha256 = "0advkkdjajkym77r3c0bg2rlahl2akj0vl4p5r273k2qmi16n00r"; + }; + dependencies = [ + "fog-core" + "multi_json" + ]; + }; + "fog-local" = { + version = "0.2.1"; + source = { + type = "gem"; + sha256 = "0i5hxwzmc2ag3z9nlligsaf679kp2pz39cd8n2s9cmxaamnlh2s3"; + }; + dependencies = [ + "fog-core" + ]; + }; + "fog-powerdns" = { + version = "0.1.1"; + source = { + type = "gem"; + sha256 = "08zavzwfkk344gz83phz4sy9nsjznsdjsmn1ifp6ja17bvydlhh7"; + }; + dependencies = [ + "fog-core" + "fog-json" + "fog-xml" + ]; + }; + "fog-profitbricks" = { + version = "0.0.3"; + source = { + type = "gem"; + sha256 = "01a3ylfkjkyagf4b4xg9x2v20pzapr3ivn9ydd92v402bjsm1nmr"; + }; + dependencies = [ + "fog-core" + "fog-xml" + "nokogiri" + ]; + }; + "fog-radosgw" = { + version = "0.0.4"; + source = { + type = "gem"; + sha256 = "1pxbvmr4dsqx4x2klwnciyhki4r5ryr9y0hi6xmm3n6fdv4ii7k3"; + }; + dependencies = [ + "fog-core" + "fog-json" + "fog-xml" + ]; + }; + "fog-riakcs" = { + version = "0.1.0"; + source = { + type = "gem"; + sha256 = "1nbxc4dky3agfwrmgm1aqmi59p6vnvfnfbhhg7xpg4c2cf41whxm"; + }; + dependencies = [ + "fog-core" + "fog-json" + "fog-xml" + ]; + }; + "fog-sakuracloud" = { + version = "1.0.1"; + source = { + type = "gem"; + sha256 = "1s16b48kh7y03hjv74ccmlfwhqqq7j7m4k6cywrgbyip8n3258n8"; + }; + dependencies = [ + "fog-core" + "fog-json" + ]; + }; + "fog-serverlove" = { + version = "0.1.2"; + source = { + type = "gem"; + sha256 = "0hxgmwzygrw25rbsy05i6nzsyr0xl7xj5j2sjpkb9n9wli5sagci"; + }; + dependencies = [ + "fog-core" + "fog-json" + ]; + }; + "fog-softlayer" = { + version = "0.4.7"; + source = { + type = "gem"; + sha256 = "0fgfbhqnyp8ywymvflflhvbns54d1432x57pgpnfy8k1cxvhv9b8"; + }; + dependencies = [ + "fog-core" + "fog-json" + ]; + }; + "fog-storm_on_demand" = { + version = "0.1.1"; + source = { + type = "gem"; + sha256 = "0fif1x8ci095b2yyilf65n7x6iyvn448azrsnmwsdkriy8vxxv3y"; + }; + dependencies = [ + "fog-core" + "fog-json" + ]; + }; + "fog-terremark" = { + version = "0.1.0"; + source = { + type = "gem"; + sha256 = "01lfkh9jppj0iknlklmwyb7ym3bfhkq58m3absb6rf5a5mcwi3lf"; + }; + dependencies = [ + "fog-core" + "fog-xml" + ]; + }; + "fog-vmfusion" = { + version = "0.1.0"; + source = { + type = "gem"; + sha256 = "0g0l0k9ylxk1h9pzqr6h2ba98fl47lpp3j19lqv4jxw0iw1rqxn4"; + }; + dependencies = [ + "fission" + "fog-core" + ]; + }; + "fog-voxel" = { + version = "0.1.0"; + source = { + type = "gem"; + sha256 = "10skdnj59yf4jpvq769njjrvh2l0wzaa7liva8n78qq003mvmfgx"; + }; + dependencies = [ + "fog-core" + "fog-xml" + ]; + }; + "fog-xml" = { + version = "0.1.2"; + source = { + type = "gem"; + sha256 = "1576sbzza47z48p0k9h1wg3rhgcvcvdd1dfz3xx1cgahwr564fqa"; + }; + dependencies = [ + "fog-core" + "nokogiri" + ]; + }; + "formatador" = { + version = "0.2.5"; + source = { + type = "gem"; + sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"; + }; + }; + "inflecto" = { + version = "0.0.2"; + source = { + type = "gem"; + sha256 = "085l5axmvqw59mw5jg454a3m3gr67ckq9405a075isdsn7bm3sp4"; + }; + }; + "ipaddress" = { + version = "0.8.0"; + source = { + type = "gem"; + sha256 = "0cwy4pyd9nl2y2apazp3hvi12gccj5a3ify8mi8k3knvxi5wk2ir"; + }; + }; + "mime-types" = { + version = "2.6.1"; + source = { + type = "gem"; + sha256 = "1vnrvf245ijfyxzjbj9dr6i1hkjbyrh4yj88865wv9bs75axc5jv"; + }; + }; + "mini_portile" = { + version = "0.6.2"; + source = { + type = "gem"; + sha256 = "0h3xinmacscrnkczq44s6pnhrp4nqma7k056x5wv5xixvf2wsq2w"; + }; + }; + "mtrc" = { + version = "0.0.4"; + source = { + type = "gem"; + sha256 = "0xj2pv4cpn0ad1xw38sinsxfzwhgqs6ff18hw0cwz5xmsf3zqmiz"; + }; + }; + "multi_json" = { + version = "1.11.1"; + source = { + type = "gem"; + sha256 = "0lrmadw2scqwz7nw3j5pfdnmzqimlbaxlxi37xsydrpbbr78qf6g"; + }; + }; + "multipart-post" = { + version = "2.0.0"; + source = { + type = "gem"; + sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x"; + }; + }; + "munin-ruby" = { + version = "0.2.5"; + source = { + type = "gem"; + sha256 = "0378jyf0hdbfs2vvk7v8k7hqilzi1rfkpn271dyrqqal7g2lnjl2"; + }; + }; + "net-scp" = { + version = "1.2.1"; + source = { + type = "gem"; + sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j"; + }; + dependencies = [ + "net-ssh" + ]; + }; + "net-ssh" = { + version = "2.9.2"; + source = { + type = "gem"; + sha256 = "1p0bj41zrmw5lhnxlm1pqb55zfz9y4p9fkrr9a79nrdmzrk1ph8r"; + }; + }; + "nokogiri" = { + version = "1.6.6.2"; + source = { + type = "gem"; + sha256 = "1j4qv32qjh67dcrc1yy1h8sqjnny8siyy4s44awla8d6jk361h30"; + }; + dependencies = [ + "mini_portile" + ]; + }; + "riemann-client" = { + version = "0.2.5"; + source = { + type = "gem"; + sha256 = "1myhyh31f290jm1wlhhjvf331n5l8qdm7axkxyacdgjsfg4szsjc"; + }; + dependencies = [ + "beefcake" + "mtrc" + "trollop" + ]; + }; + "riemann-tools" = { + version = "0.2.6"; + source = { + type = "gem"; + sha256 = "0qjm7p55h70l5bs876hhvz3isr204663f97py9g0ajxz2z8jkzpi"; + }; + dependencies = [ + "faraday" + "fog" + "munin-ruby" + "nokogiri" + "riemann-client" + "trollop" + "yajl-ruby" + ]; + }; + "trollop" = { + version = "2.1.2"; + source = { + type = "gem"; + sha256 = "0415y63df86sqj43c0l82and65ia5h64if7n0znkbrmi6y0jwhl8"; + }; + }; + "yajl-ruby" = { + version = "1.2.1"; + source = { + type = "gem"; + sha256 = "0zvvb7i1bl98k3zkdrnx9vasq0rp2cyy5n7p9804dqs4fz9xh9vf"; + }; + }; +} \ No newline at end of file diff --git a/pkgs/tools/misc/rmlint/default.nix b/pkgs/tools/misc/rmlint/default.nix index aed93775ce98a..392734e2256df 100644 --- a/pkgs/tools/misc/rmlint/default.nix +++ b/pkgs/tools/misc/rmlint/default.nix @@ -4,15 +4,13 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "rmlint-${version}"; - version = "2.0.0"; + version = "2.2.0"; src = fetchurl { url = "https://github.com/sahib/rmlint/archive/v${version}.tar.gz"; - sha256 = "14jiswagipsmzxclcskn672ws4126p65l6hlzkkvanyv8gmpv90f"; + sha256 = "1wg6br30ccvxl2189a75lb3d03kg8spfkkp9qlf3whl0xirsm15n"; }; - patches = [ ./fix-scons.patch ]; - configurePhase = "scons config"; buildInputs = [ gettext glib json_glib libelf pkgconfig scons sphinx utillinux ]; diff --git a/pkgs/tools/misc/rmlint/fix-scons.patch b/pkgs/tools/misc/rmlint/fix-scons.patch deleted file mode 100644 index 4d7d832f13d7f..0000000000000 --- a/pkgs/tools/misc/rmlint/fix-scons.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git b/SConstruct a/SConstruct -old mode 100644 -new mode 100755 -index a7fca2e..561007e ---- b/SConstruct -+++ a/SConstruct -@@ -404,11 +404,10 @@ options = dict( - SHLINKCOMSTR=link_shared_library_message, - LINKCOMSTR=link_program_message, - PREFIX=GetOption('prefix'), -- ENV={ -- 'PATH': os.environ['PATH'], -- 'TERM': os.environ['TERM'], -- 'HOME': os.environ['HOME'] -- } -+ ENV = dict([ (key, os.environ[key]) -+ for key in os.environ -+ if key in ['PATH', 'TERM', 'HOME', 'PKG_CONFIG_PATH'] -+ ]) - ) - - if ARGUMENTS.get('VERBOSE') == "1": diff --git a/pkgs/tools/misc/rockbox-utility/default.nix b/pkgs/tools/misc/rockbox-utility/default.nix index eac12bae381e1..c9c0cf6949f8b 100644 --- a/pkgs/tools/misc/rockbox-utility/default.nix +++ b/pkgs/tools/misc/rockbox-utility/default.nix @@ -26,6 +26,6 @@ stdenv.mkDerivation rec { homepage = http://www.rockbox.org; license = licenses.gpl2; platforms = platforms.linux; - maintainers = [ maintainers.goibhniu ]; + maintainers = with maintainers; [ goibhniu jgeerds ]; }; } diff --git a/pkgs/tools/misc/rrdtool/default.nix b/pkgs/tools/misc/rrdtool/default.nix index 53c1b0de24e20..6e2ba20875dba 100644 --- a/pkgs/tools/misc/rrdtool/default.nix +++ b/pkgs/tools/misc/rrdtool/default.nix @@ -1,10 +1,10 @@ { fetchurl, stdenv, gettext, perl, pkgconfig, libxml2, pango, cairo, groff }: stdenv.mkDerivation rec { - name = "rrdtool-1.4.9"; + name = "rrdtool-1.5.4"; src = fetchurl { url = "http://oss.oetiker.ch/rrdtool/pub/${name}.tar.gz"; - sha256 = "1k1506v86nijd9vdljib93z4hrwj786kqnx37lqqbbqasvh2ca1y"; + sha256 = "169zbidc5h88w064qmj6x5rzczkrrfrcgwc3f2i2h8f0hzda7viz"; }; buildInputs = [ gettext perl pkgconfig libxml2 pango cairo groff ]; diff --git a/pkgs/tools/misc/s6-portable-utils/default.nix b/pkgs/tools/misc/s6-portable-utils/default.nix index 9aaf928b7b076..0ca0774989de3 100644 --- a/pkgs/tools/misc/s6-portable-utils/default.nix +++ b/pkgs/tools/misc/s6-portable-utils/default.nix @@ -2,7 +2,7 @@ let - version = "2.0.4.0"; + version = "2.0.5.2"; in stdenv.mkDerivation rec { @@ -10,7 +10,7 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "http://www.skarnet.org/software/s6-portable-utils/${name}.tar.gz"; - sha256 = "0gl4v6hslqkxdfxj3qzi1xpiiw52ic8y8l9nkl2z5gp893qb6yvx"; + sha256 = "0d5dvqz61abr4m2n10by8hccvw51jdvyckvpbbq0c57viri54jzm"; }; dontDisableStatic = true; @@ -27,6 +27,7 @@ in stdenv.mkDerivation rec { description = "A set of tiny general Unix utilities optimized for simplicity and small size"; platforms = stdenv.lib.platforms.all; license = stdenv.lib.licenses.isc; + maintainers = with stdenv.lib.maintainers; [ pmahoney ]; }; } diff --git a/pkgs/tools/misc/scanmem/default.nix b/pkgs/tools/misc/scanmem/default.nix new file mode 100644 index 0000000000000..e21da0deca2d2 --- /dev/null +++ b/pkgs/tools/misc/scanmem/default.nix @@ -0,0 +1,23 @@ +{ stdenv, autoconf, automake, intltool, libtool, fetchFromGitHub, readline }: + +stdenv.mkDerivation rec { + version = "0.15.2"; + name = "scanmem-${version}"; + src = fetchFromGitHub { + owner = "scanmem"; + repo = "scanmem"; + rev = "v${version}"; + sha256 = "0f93ac5rycf46q60flab5nl7ksadjls13axijg5j5wy1yif0k094"; + }; + buildInputs = [ autoconf automake intltool libtool readline ]; + preConfigure = '' + ./autogen.sh + ''; + meta = { + homepage = "https://github.com/scanmem/scanmem"; + description = "Memory scanner for finding and poking addresses in executing processes"; + maintainers = [ stdenv.lib.maintainers.chattered ]; + platforms = stdenv.lib.platforms.linux; + license = stdenv.lib.licenses.gpl3; + }; +} diff --git a/pkgs/tools/misc/screen/default.nix b/pkgs/tools/misc/screen/default.nix index d4377c14fad4f..1fe71ae96160d 100644 --- a/pkgs/tools/misc/screen/default.nix +++ b/pkgs/tools/misc/screen/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, ncurses, pam ? null }: stdenv.mkDerivation rec { - name = "screen-4.2.1"; + name = "screen-4.3.1"; src = fetchurl { url = "mirror://gnu/screen/${name}.tar.gz"; - sha256 = "105hp6qdd8rl71p81klmxiz4mlb60kh9r7czayrx40g38x858s2l"; + sha256 = "0qwxd4axkgvxjigz9xs0kcv6qpfkrzr2gm43w9idx0z2mvw4jh7s"; }; preConfigure = '' @@ -45,6 +45,6 @@ stdenv.mkDerivation rec { ''; platforms = stdenv.lib.platforms.unix; - maintainers = [ stdenv.lib.maintainers.simons ]; + maintainers = with stdenv.lib.maintainers; [ simons jgeerds ]; }; } diff --git a/pkgs/tools/misc/screenfetch/default.nix b/pkgs/tools/misc/screenfetch/default.nix index 442922b780545..92cc800d83d39 100644 --- a/pkgs/tools/misc/screenfetch/default.nix +++ b/pkgs/tools/misc/screenfetch/default.nix @@ -1,21 +1,34 @@ -{ stdenv, fetchgit, xdpyinfo, xprop }: +{ stdenv, fetchgit, makeWrapper +, coreutils, gawk, procps, gnused, findutils, xdpyinfo, xprop, gnugrep +}: -let - version = "3.6.2"; -in stdenv.mkDerivation { - name = "screenFetch-${version}"; - pname = "screenfetch"; + name = "screenFetch-2015-04-20"; src = fetchgit { url = git://github.com/KittyKatt/screenFetch.git; - rev = "dec1cd6c2471defe4459967fbc8ae15b55714338"; - sha256 = "138a7g0za5dq27jx7x8gqg7gjkgyq0017v0nbcg68ys7dqlxsdl3"; + rev = "53e1c0cccacf648e846057938a68dda914f532a1"; + sha256 = "1wyvy1sn7vnclwrzd32jqlq6iirjkhp2ak55brhkpp9rj1qxk3q6"; }; + nativeBuildInputs = [ makeWrapper ]; + installPhase = '' - install -Dm 0755 $pname-dev $out/bin/$pname - install -Dm 0644 $pname.1 $out/man/man1/$pname.1 + install -Dm 0755 screenfetch-dev $out/bin/screenfetch + install -Dm 0644 screenfetch.1 $out/man/man1/screenfetch.1 + + # Fix all of the depedencies of screenfetch + patchShebangs $out/bin/screenfetch + wrapProgram "$out/bin/screenfetch" \ + --set PATH : "" \ + --prefix PATH : "${coreutils}/bin" \ + --prefix PATH : "${gawk}/bin" \ + --prefix PATH : "${procps}/bin" \ + --prefix PATH : "${gnused}/bin" \ + --prefix PATH : "${findutils}/bin" \ + --prefix PATH : "${xdpyinfo}/bin" \ + --prefix PATH : "${xprop}/bin" \ + --prefix PATH : "${gnugrep}/bin" ''; meta = { diff --git a/pkgs/tools/misc/sdl-jstest/default.nix b/pkgs/tools/misc/sdl-jstest/default.nix new file mode 100644 index 0000000000000..cf62039fc036d --- /dev/null +++ b/pkgs/tools/misc/sdl-jstest/default.nix @@ -0,0 +1,21 @@ +{ fetchgit, stdenv, cmake, pkgconfig, SDL, SDL2, ncurses, docbook_xsl }: + +stdenv.mkDerivation rec { + name = "sdl-jstest-20150625"; + src = fetchgit { + url = "https://github.com/Grumbel/sdl-jstest"; + rev = "3f54b86ebe0d2f95e9c1d034bc4ed02d6d2b6409"; + sha256 = "d33e0a2c66b551ecf333590f1a6e1730093af31cee1be8757748624d42e14df1"; + }; + + buildInputs = [ SDL SDL2 ncurses ]; + nativeBuildInputs = [ cmake pkgconfig docbook_xsl ]; + + meta = with stdenv.lib; { + homepage = https://github.com/Grumbel/sdl-jstest; + description = "Simple SDL joystick test application for the console"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/tools/misc/sl/default.nix b/pkgs/tools/misc/sl/default.nix index f5bc2edf3caa0..d21143f56e23e 100644 --- a/pkgs/tools/misc/sl/default.nix +++ b/pkgs/tools/misc/sl/default.nix @@ -1,22 +1,22 @@ -{ stdenv, fetchurl, ncurses }: +{ stdenv, fetchFromGitHub, ncurses }: -stdenv.mkDerivation { - name = "sl-3.03"; +stdenv.mkDerivation rec { + name = "sl-${version}"; + version = "5.02"; - src = fetchurl { - url = "http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/sl/sl.tar"; - sha256 = "1x3517aza0wm9hhb02npl8s7xy947cdidxmans27q0gjmj3bvg5j"; + src = fetchFromGitHub { + owner = "mtoyoda"; + repo = "sl"; + rev = version; + sha256 = "1zrfd71zx2px2xpapg45s8xvi81xii63yl0h60q72j71zh4sif8b"; }; - patchPhase = '' - sed -i "s/-lcurses -ltermcap/-lncurses/" Makefile - ''; - buildInputs = [ ncurses ]; installPhase = '' - mkdir -p $out/bin + mkdir -p $out/bin $out/share/man/man1 cp sl $out/bin + cp sl.1 $out/share/man/man1 ''; meta = { diff --git a/pkgs/tools/misc/slop/default.nix b/pkgs/tools/misc/slop/default.nix new file mode 100644 index 0000000000000..800fad3b564ef --- /dev/null +++ b/pkgs/tools/misc/slop/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, cmake, gengetopt, libX11, libXext, cppcheck}: + +stdenv.mkDerivation rec { + name = "slop-${version}"; + version = "4.1.16"; + + src = fetchurl { + url = "https://github.com/naelstrof/slop/archive/v${version}.tar.gz"; + sha256 = "0679ax0jr97x91hmp9qrspdka8cvl3xa77z92k4qgicbnb6hr7y2"; + }; + + buildInputs = [ cmake gengetopt libX11 libXext ] + ++ stdenv.lib.optional doCheck cppcheck; + + doCheck = false; + + meta = with stdenv.lib; { + homepage = https://github.com/naelstrof/slop; + description = "Queries a selection from the user and prints to stdout"; + platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.gpl3Plus; + maintainers = with maintainers; [ mbakke ]; + }; +} diff --git a/pkgs/tools/misc/stow/default.nix b/pkgs/tools/misc/stow/default.nix index a6afe475e3bd1..6eddcf89b914e 100644 --- a/pkgs/tools/misc/stow/default.nix +++ b/pkgs/tools/misc/stow/default.nix @@ -10,6 +10,8 @@ stdenv.mkDerivation { buildInputs = [ perl perlPackages.TestOutput ]; + patches = [ ./precedence-issue.patch ]; + doCheck = true; meta = { @@ -28,7 +30,7 @@ stdenv.mkDerivation { license = stdenv.lib.licenses.gpl3Plus; homepage = http://www.gnu.org/software/stow/; - maintainers = with stdenv.lib.maintainers; [ the-kenny ]; + maintainers = with stdenv.lib.maintainers; [ the-kenny jgeerds ]; platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/tools/misc/stow/precedence-issue.patch b/pkgs/tools/misc/stow/precedence-issue.patch new file mode 100644 index 0000000000000..d9542573bac76 --- /dev/null +++ b/pkgs/tools/misc/stow/precedence-issue.patch @@ -0,0 +1,15 @@ +diff --git a/lib/Stow.pm.in b/lib/Stow.pm.in +index 101a422..f80b1ac 100755 +--- a/lib/Stow.pm.in ++++ b/lib/Stow.pm.in +@@ -1732,8 +1732,8 @@ sub read_a_link { + } + elsif (-l $path) { + debug(4, " read_a_link($path): real link"); +- return readlink $path +- or error("Could not read link: $path"); ++ my $target = readlink $path or error("Could not read link: $path ($!)"); ++ return $target; + } + internal_error("read_a_link() passed a non link path: $path\n"); + } diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix index a30f0277ec0ec..e29556faad480 100644 --- a/pkgs/tools/misc/svtplay-dl/default.nix +++ b/pkgs/tools/misc/svtplay-dl/default.nix @@ -1,16 +1,18 @@ -{ stdenv, fetchurl, makeWrapper, python, perl, zip -, rtmpdump, nose, mock, pycrypto, substituteAll }: +{ stdenv, fetchFromGitHub, makeWrapper, python, perl, zip +, rtmpdump, nose, mock, pycrypto, requests2, substituteAll }: stdenv.mkDerivation rec { name = "svtplay-dl-${version}"; - version = "0.10.2015.03.25"; + version = "0.20.2015.09.13"; - src = fetchurl { - url = "https://github.com/spaam/svtplay-dl/archive/${version}.tar.gz"; - sha256 = "0j0fg3qrldpaf880v488rr2snw6ghpdln4l9mbvmi70rjzzxv4ap"; + src = fetchFromGitHub { + owner = "spaam"; + repo = "svtplay-dl"; + rev = version; + sha256 = "07wcjwc6kk0z8s7i3sc2n7zbbkbc2wwiclf3n0h5yk54marixql0"; }; - pythonPaths = [ pycrypto ]; + pythonPaths = [ pycrypto requests2 ]; buildInputs = [ python perl nose mock rtmpdump makeWrapper ] ++ pythonPaths; nativeBuildInputs = [ zip ]; diff --git a/pkgs/tools/misc/t/default.nix b/pkgs/tools/misc/t/default.nix index fd64f6694ee53..ad9e0949ce87f 100644 --- a/pkgs/tools/misc/t/default.nix +++ b/pkgs/tools/misc/t/default.nix @@ -11,7 +11,7 @@ bundlerEnv { meta = with lib; { description = "A command-line power tool for Twitter"; homepage = http://sferik.github.io/t/; - license = with licenses; asl20; + license = licenses.asl20; maintainers = with maintainers; [ offline ]; platforms = platforms.unix; }; diff --git a/pkgs/tools/misc/t1utils/default.nix b/pkgs/tools/misc/t1utils/default.nix index 5e473a5cd0931..c00db07ed1f47 100644 --- a/pkgs/tools/misc/t1utils/default.nix +++ b/pkgs/tools/misc/t1utils/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "t1utils-1.38"; + name = "t1utils-1.39"; src = fetchurl { url = "http://www.lcdf.org/type/${name}.tar.gz"; - sha256 = "1pnxpjabjyzfjrp319wsq4acxw99c8nnsaalbz7nwamj8kkim7zw"; + sha256 = "1i6ln194ns2g4j5zjlj4bfzxpkfpnxvy37n9baq3hywjqkjz7bhg"; }; meta = with stdenv.lib; { diff --git a/pkgs/tools/misc/timidity/default.nix b/pkgs/tools/misc/timidity/default.nix index 664647514aa19..5655e27dc2e64 100644 --- a/pkgs/tools/misc/timidity/default.nix +++ b/pkgs/tools/misc/timidity/default.nix @@ -1,4 +1,4 @@ -{ composableDerivation, stdenv, fetchurl, alsaLib, jack2, ncurses }: +{ composableDerivation, stdenv, fetchurl, alsaLib, libjack2, ncurses }: let inherit (composableDerivation) edf; in @@ -30,8 +30,8 @@ composableDerivation.composableDerivation {} { }; jack = { audioModes = "jack"; - buildInputs = [jack2]; - NIX_LDFLAGS = ["-ljack -L${jack2}/lib64"]; + buildInputs = [libjack2]; + NIX_LDFLAGS = ["-ljack -L${libjack2}/lib"]; }; } // edf { name = "ncurses"; enable = { buildInputs = [ncurses]; };}; diff --git a/pkgs/tools/misc/tlp/default.nix b/pkgs/tools/misc/tlp/default.nix index 4d3de16434b4a..1e90ecfee3286 100644 --- a/pkgs/tools/misc/tlp/default.nix +++ b/pkgs/tools/misc/tlp/default.nix @@ -51,6 +51,10 @@ in stdenv.mkDerivation { for i in $out/lib/udev/rules.d/*; do sed -i "s,RUN+=\",\\0$out,g; s,/usr/sbin,/bin,g" "$i" done + + for i in man/*; do + install -D $i $out/share/man/man''${i##*.}/$(basename $i) + done ''; passthru = { inherit enableRDW; }; diff --git a/pkgs/tools/misc/tmate/default.nix b/pkgs/tools/misc/tmate/default.nix new file mode 100644 index 0000000000000..5fbb394311557 --- /dev/null +++ b/pkgs/tools/misc/tmate/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchFromGitHub, autoconf, automake110x, libtool, pkgconfig, zlib, openssl, libevent, ncurses, cmake, ruby }: + +stdenv.mkDerivation rec { + name = "tmate-${version}"; + version = "1.8.10"; + + src = fetchFromGitHub { + owner = "nviennot"; + repo = "tmate"; + rev = version; + sha256 = "1bd9mi8fx40608zlady9dbv21kbdwc3kqrgz012m529f6cbysmzc"; + }; + + buildInputs = [ autoconf automake110x pkgconfig libtool zlib openssl libevent ncurses cmake ruby ]; + + dontUseCmakeConfigure=true; + + preConfigure = "./autogen.sh"; + + meta = { + homepage = http://tmate.io/; + description = "Instant Terminal Sharing"; + license = stdenv.lib.licenses.mit; + platforms = stdenv.lib.platforms.unix; + maintainers = with stdenv.lib.maintainers; [ DamienCassou ]; + }; +} diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix index 7180665bd3d5a..6cc54536eb190 100644 --- a/pkgs/tools/misc/tmux/default.nix +++ b/pkgs/tools/misc/tmux/default.nix @@ -1,27 +1,30 @@ -{stdenv, fetchurl, ncurses, libevent, pkgconfig}: +{ stdenv, fetchurl, ncurses, libevent, pkgconfig }: stdenv.mkDerivation rec { - pname = "tmux"; - version = "1.9a"; - name = "${pname}-${version}"; + name = "tmux-${version}"; + version = "2.0"; src = fetchurl { - url = "mirror://sourceforge/${pname}/${name}.tar.gz"; - sha256 = "1x9k4wfd4l5jg6fh7xkr3yyilizha6ka8m5b1nr0kw8wj0mv5qy5"; + url = "https://github.com/tmux/tmux/releases/download/${version}/${name}.tar.gz"; + sha256 = "0qnkda8kb747vmbldjpb23ksv9pq3s65xhh1ja5rdsmh8r24npvr"; }; nativeBuildInputs = [ pkgconfig ]; buildInputs = [ ncurses libevent ]; - postInstall = - '' - mkdir -p $out/etc/bash_completion.d - cp -v examples/bash_completion_tmux.sh $out/etc/bash_completion.d/tmux - ''; + configureFlags = [ + "--sysconfdir=/etc" + "--localstatedir=/var" + ]; + + postInstall = '' + mkdir -p $out/etc/bash_completion.d + cp -v examples/bash_completion_tmux.sh $out/etc/bash_completion.d/tmux + ''; meta = { - homepage = http://tmux.sourceforge.net/; + homepage = http://tmux.github.io/; description = "Terminal multiplexer"; longDescription = @@ -41,6 +44,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.bsd3; platforms = stdenv.lib.platforms.unix; - maintainers = with stdenv.lib.maintainers; [ shlevy thammers ]; + maintainers = with stdenv.lib.maintainers; [ thammers ]; }; } diff --git a/pkgs/tools/misc/tmuxinator/default.nix b/pkgs/tools/misc/tmuxinator/default.nix index 96610c3216735..f5ac891d8e644 100644 --- a/pkgs/tools/misc/tmuxinator/default.nix +++ b/pkgs/tools/misc/tmuxinator/default.nix @@ -11,7 +11,7 @@ bundlerEnv { meta = with lib; { description = "Manage complex tmux sessions easily"; homepage = https://github.com/tmuxinator/tmuxinator; - license = with licenses; mit; + license = licenses.mit; maintainers = with maintainers; [ auntie ]; platforms = platforms.unix; }; diff --git a/pkgs/tools/misc/toilet/default.nix b/pkgs/tools/misc/toilet/default.nix new file mode 100644 index 0000000000000..6ed479ac9c831 --- /dev/null +++ b/pkgs/tools/misc/toilet/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, libcaca, figlet }: + +stdenv.mkDerivation rec { + name = "toilet-${version}"; + version = "0.3"; + + src = fetchurl { + url = "http://caca.zoy.org/raw-attachment/wiki/toilet/${name}.tar.gz"; + sha256 = "1pl118qb7g0frpgl9ps43w4sd0psjirpmq54yg1kqcclqcqbbm49"; + }; + + buildInputs = [ pkgconfig libcaca ]; + + meta = { + description = "Display large colourful characters in text mode"; + homepage = "http://caca.zoy.org/wiki/toilet"; + license = stdenv.lib.licenses.wtfpl; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/tools/misc/ttylog/default.nix b/pkgs/tools/misc/ttylog/default.nix new file mode 100644 index 0000000000000..16db6b62eb7a1 --- /dev/null +++ b/pkgs/tools/misc/ttylog/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + name = "ttylog-${version}"; + version = "0.26"; + + src = fetchFromGitHub { + owner = "rocasa"; + repo = "ttylog"; + rev = version; + sha256 = "1xvqch1dwpl2d89n9cjcxhqbpvm50fspj5yn883wbii6dpg62p84"; + }; + + nativeBuildInputs = [ cmake ]; + + 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"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ wkennington ]; + }; +} diff --git a/pkgs/tools/misc/umlet/default.nix b/pkgs/tools/misc/umlet/default.nix index 04f3a31aa48a7..cc51af22f8516 100644 --- a/pkgs/tools/misc/umlet/default.nix +++ b/pkgs/tools/misc/umlet/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { major = "13"; - minor = "2"; + minor = "3"; version = "${major}.${minor}"; name = "umlet-${version}"; src = fetchurl { url = "http://www.umlet.com/umlet_${major}_${minor}/umlet_${version}.zip"; - sha256 = "19jngb2sr212lh3yi43bqq2skhd9cxa8yfbfc3i6fbm2v0b7i2xf"; + sha256 = "0fbr51xknk98qz576lcl25qz0s1snns2yb0j54d77xkw7pnxmvzr"; }; buildInputs = [ unzip ]; diff --git a/pkgs/tools/misc/unclutter/default.nix b/pkgs/tools/misc/unclutter/default.nix index d97ba727bae59..00f08ee074270 100644 --- a/pkgs/tools/misc/unclutter/default.nix +++ b/pkgs/tools/misc/unclutter/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, x11}: +{stdenv, fetchurl, xlibsWrapper}: stdenv.mkDerivation { name = "unclutter-8"; @@ -7,7 +7,7 @@ stdenv.mkDerivation { sha256 = "33a78949a7dedf2e8669ae7b5b2c72067896497820292c96afaa60bb71d1f2a6"; }; - buildInputs = [x11]; + buildInputs = [xlibsWrapper]; installPhase = '' mkdir -pv "$out/bin" diff --git a/pkgs/tools/misc/urjtag/default.nix b/pkgs/tools/misc/urjtag/default.nix new file mode 100644 index 0000000000000..59153e68a56ce --- /dev/null +++ b/pkgs/tools/misc/urjtag/default.nix @@ -0,0 +1,40 @@ +{ stdenv, autoconf, automake, pkgconfig, gettext, intltool, libtool, bison +, flex, which, subversion, fetchsvn, makeWrapper, libftdi, libusb, readline +, python3 +, svfSupport ? false +, bsdlSupport ? false +, staplSupport ? false +, jedecSupport ? false +}: + +stdenv.mkDerivation rec { + version = "0.10"; + name = "urjtag-${version}"; + + src = fetchsvn { + url = "svn://svn.code.sf.net/p/urjtag/svn/trunk/urjtag"; + rev = "2051"; + sha256 = "0pyl0y27136nr8mmjdml7zjnfnpbjmgqzkjk99j3hvj38k10wq7f"; + }; + + buildInputs = [ gettext pkgconfig autoconf automake libtool bison flex which + subversion makeWrapper readline libftdi libusb python3 ]; + + configureFlags = '' + ${if svfSupport then "--enable-svf" else "--disable-svf"} + ${if bsdlSupport then "--enable-bsdl" else "--disable-bsdl"} + ${if staplSupport then "--enable-stapl" else "--disable-stapl"} + ${if jedecSupport then "--enable-jedec-exp" else "--disable-jedec-exp"} + ''; + + preConfigure = "./autogen.sh"; + + meta = { + description = "Enhanced, modern tool for communicating over JTAG with flash chips, CPUs,and many more"; + homepage = "http://urjtag.org/"; + license = with stdenv.lib.licenses; [ gpl2Plus lgpl21Plus ]; + platforms = stdenv.lib.platforms.gnu; # arbitrary choice + maintainers = with stdenv.lib.maintainers; [ lowfatcomputing ]; + }; +} + diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix index 5312445563a6a..d07e99e266040 100644 --- a/pkgs/tools/misc/vdirsyncer/default.nix +++ b/pkgs/tools/misc/vdirsyncer/default.nix @@ -1,32 +1,30 @@ -{ lib, fetchurl, pythonPackages }: +{ stdenv, fetchurl, pythonPackages }: pythonPackages.buildPythonPackage rec { - version = "0.4.3"; + version = "0.6.0"; name = "vdirsyncer-${version}"; namePrefix = ""; src = fetchurl { - url = "https://github.com/untitaker/vdirsyncer/archive/${version}.tar.gz"; - sha256 = "0jrxmq8lq0dvqflmh42hhyvc3jjrg1cg3gzfhdcsskj9zz0m6wai"; + url = "https://pypi.python.org/packages/source/v/vdirsyncer/${name}.tar.gz"; + sha256 = "1mb0pws5vsgnmyp5dp5m5jvgl6jcvdamxjz7wmgvxkw6n1vrcahd"; }; - pythonPath = with pythonPackages; [ - icalendar + propagatedBuildInputs = with pythonPackages; [ click - requests lxml setuptools + setuptools_scm requests_toolbelt requests2 atomicwrites ]; - meta = { + meta = with stdenv.lib; { homepage = https://github.com/untitaker/vdirsyncer; description = "Synchronize calendars and contacts"; - maintainers = [ lib.maintainers.matthiasbeyer ]; - platforms = lib.platforms.all; - license = lib.licenses.mit; + maintainers = with maintainers; [ matthiasbeyer jgeerds ]; + platforms = platforms.all; + license = licenses.mit; }; } - diff --git a/pkgs/tools/misc/vfdecrypt/default.nix b/pkgs/tools/misc/vfdecrypt/default.nix index de7ee27d70452..552fa0c763dda 100644 --- a/pkgs/tools/misc/vfdecrypt/default.nix +++ b/pkgs/tools/misc/vfdecrypt/default.nix @@ -8,7 +8,8 @@ stdenv.mkDerivation rec { rev = "4e2fa32816254907e82886b936afcae9859a876c"; sha256 = "0b945805f7f60bf48556c2db45c9ab26485fb05acbc6160a563d529b20cb56a3"; }; - buildInputs = [openssl]; + buildInputs = [ openssl ]; + broken = true; # No such repo installPhase = '' mkdir -p $out/bin cp vfdecrypt $out/bin diff --git a/pkgs/tools/misc/w3c-css-validator/default.nix b/pkgs/tools/misc/w3c-css-validator/default.nix deleted file mode 100644 index 3c7aa5261a244..0000000000000 --- a/pkgs/tools/misc/w3c-css-validator/default.nix +++ /dev/null @@ -1,77 +0,0 @@ -{ stdenv, fetchurl, sourceFromHead, apacheAnt, tomcat, jre }: - -let - - sources = - [ (fetchurl { - name = "jigsaw_2.2.6.tar.gz"; - url="http://jigsaw.w3.org/Distrib/jigsaw_2.2.6.tar.gz"; - sha256 = "01cjpqjcs8gbvvzy0f488cb552f9b38hvwr97wydglrzndmcwypd"; - }) - (fetchurl { - name = "commons-collectionurl3.2.1-bin.tar.gz"; - url="http://www.apache.org/dist/commons/collections/binaries/commons-collections-3.2.1-bin.tar.gz"; - sha256 = "7843f8307495b2be446353b10c25218793b776fa3e22615a1f50f067d81713ce"; - }) - (fetchurl { - name = "commons-lang-2.4-bin.tar.gz"; - url="http://www.apache.org/dist/commons/lang/binaries/commons-lang-2.4-bin.tar.gz"; - sha256 = "0phwlgnvwj3n3j1aka2pkm0biacvgs72qc0ldir6s69i9qbv7rh0"; - }) - (fetchurl { - name = "velocity-1.6.1.tar.gz"; - url="http://www.apache.org/dist/velocity/engine/1.6.1/velocity-1.6.1.tar.gz"; - sha256 = "125s8yp8whx947kahm902wc49ms44knxdj6yfskhpk0a8h0rz9jm"; - }) - (fetchurl { - name = "Xerces-J-bin.2.9.1.tar.gz"; - url="http://www.apache.org/dist/xerces/j/Xerces-J-bin.2.9.1.tar.gz"; - sha256 = "1xlrrznfgdars0a9m9z5k9q8arbqskdfdfjx4s0pp52wn3r0gbns"; - }) - ]; - -in - -stdenv.mkDerivation { - name = "w3c-css-validator"; - - # REGION AUTO UPDATE: { name="w3c-css-validator"; type="cvs"; cvsRoot=":pserver:anonymous:anonymous@dev.w3.org:/sources/public"; module="2002/css-validator"; } - src = sourceFromHead "w3c-css-validator-F_17-52-37.tar.gz" - (fetchurl { url = "http://mawercer.de/~nix/repos/w3c-css-validator-F_17-52-37.tar.gz"; sha256 = "b6f05d4812eaa464906d101242689effa8b5516d32d6420315740a77d8ee11fd"; }); - # END - - buildInputs = [ apacheAnt ]; - - # prepare target downloads dependency .tar.gz into tmp - # note: There is a .war as well which could be deployed to tomcat - installPhase = '' - cd css-validator - mkdir tmp - ${ stdenv.lib.concatStringsSep "\n" (map (src: "tar xfz ${src} -C tmp") sources) } - sed -i -e 's@<property name="servlet.lib" value=".*"/>@<property name="servlet.lib" value="${tomcat}/lib/servlet-api.jar"/>@' \ - -e '/dest="tmp\//d' \ - -e '/untar/d' \ - build.xml - ant - mkdir -p $out/{bin,lib} - JAR=$out/lib/css-validator.jar - cat >> $out/bin/css-validator << EOF - #!/bin/sh - exec ${jre}/bin/java -jar $JAR "\$@" - EOF - chmod +x $out/bin/css-validator - cp css-validator.jar $out/lib - cp -r lib $out/lib/lib - ''; - - meta = { - description = "W3C CSS validator"; - homepage = http://dev.w3.org/cvsweb/2002/css-validator/; - # dependencies ship their own license files - # I think all .java files are covered by this license (?) - license = stdenv.lib.licenses.w3c; - maintainers = [ stdenv.lib.maintainers.marcweber ]; - platforms = stdenv.lib.platforms.linux; - broken = true; - }; -} diff --git a/pkgs/tools/misc/wyrd/default.nix b/pkgs/tools/misc/wyrd/default.nix index d76e393aaaa70..d02ce41b6aa1b 100644 --- a/pkgs/tools/misc/wyrd/default.nix +++ b/pkgs/tools/misc/wyrd/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ocaml, ncurses, remind }: +{ stdenv, fetchurl, ocaml, ncurses, remind, camlp4 }: stdenv.mkDerivation rec { version = "1.4.6"; @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { sha256 = "0zlrg602q781q8dij62lwdprpfliyy9j1rqfqcz8p2wgndpivddj"; }; - buildInputs = [ ocaml ncurses remind ]; + buildInputs = [ ocaml ncurses remind camlp4 ]; preferLocalBuild = true; diff --git a/pkgs/tools/misc/xclip/default.nix b/pkgs/tools/misc/xclip/default.nix index 20d5e66cfa24c..3f616fdad681d 100644 --- a/pkgs/tools/misc/xclip/default.nix +++ b/pkgs/tools/misc/xclip/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchsvn, x11, libXmu, autoconf, automake, libtool }: +{ stdenv, fetchsvn, xlibsWrapper, libXmu, autoconf, automake, libtool }: stdenv.mkDerivation rec { # The last release from 2012, 0.12, lacks '-targets' @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { preConfigure = "autoreconf -vfi"; - buildInputs = [ x11 libXmu autoconf automake libtool ]; + buildInputs = [ xlibsWrapper libXmu autoconf automake libtool ]; meta = { description = "Tool to access the X clipboard from a console application"; diff --git a/pkgs/tools/misc/xdaliclock/default.nix b/pkgs/tools/misc/xdaliclock/default.nix index 7d731650288c9..33c9489a70d0e 100644 --- a/pkgs/tools/misc/xdaliclock/default.nix +++ b/pkgs/tools/misc/xdaliclock/default.nix @@ -1,52 +1,27 @@ -x@{builderDefsPackage - , libX11, xproto, libXt, libICE - , libSM, libXext - , ...}: -builderDefsPackage -(a : -let - helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ - []; +{ stdenv, fetchurl, libX11, xproto, libXt, libICE, libSM, libXext }: - buildInputs = map (n: builtins.getAttr n x) - (builtins.attrNames (builtins.removeAttrs x helperArgNames)); - sourceInfo = rec { - baseName="xdaliclock"; - version = "2.41"; - name="${baseName}-${version}"; - project="${baseName}"; - url="http://www.jwz.org/${project}/${name}.tar.gz"; - }; -in -rec { - src = a.fetchurl { - url = sourceInfo.url; - sha256 = "1crkjvza692irkqm9vwgn58m8ps93n0rxigm6pasgl5dnx3p6d1d"; - }; +stdenv.mkDerivation rec { + name = "xdaliclock-${version}"; + version = "2.43"; - inherit (sourceInfo) name version; - inherit buildInputs; + src = fetchurl { + url="http://www.jwz.org/xdaliclock/${name}.tar.gz"; + sha256 = "194zzp1a989k2v8qzfr81gdknr8xiz16d6fdl63jx9r3mj5klmvb"; + }; - /* doConfigure should be removed if not needed */ - phaseNames = ["doConfigure" "prepareDirs" "doMakeInstall"]; + sourceRoot = "${name}/X11"; - prepareDirs = a.fullDepEntry '' - mkdir -p "$out/bin" "$out/share" "$out/share/man/man1" - '' ["minInit" "defEnsureDir"]; + buildInputs = [ libX11 xproto libXt libICE libSM libXext ]; - goSrcDir = "cd X11"; + preInstall = '' + mkdir -vp $out/bin $out/share/man/man1 + ''; - meta = { + meta = with stdenv.lib; { description = "A clock application that morphs digits when they are changed"; - maintainers = with a.lib.maintainers; - [ - raskin - ]; - platforms = with a.lib.platforms; - linux ++ freebsd; - license = a.lib.licenses.free; #TODO BSD on Gentoo, looks like MIT - downloadPage = "http://www.jwz.org/xdaliclock/"; - inherit version; - updateWalker = true; + maintainers = with maintainers; [ raskin rycee ]; + platforms = with platforms; linux ++ freebsd; + license = licenses.free; #TODO BSD on Gentoo, looks like MIT + downloadPage = http://www.jwz.org/xdaliclock/; }; -}) x +} diff --git a/pkgs/tools/misc/xflux/default.nix b/pkgs/tools/misc/xflux/default.nix index 0032eb24c971b..d0f358446952a 100644 --- a/pkgs/tools/misc/xflux/default.nix +++ b/pkgs/tools/misc/xflux/default.nix @@ -1,6 +1,6 @@ {stdenv, fetchurl, libXxf86vm, libXext, libX11, libXrandr, gcc}: stdenv.mkDerivation { - name = "xflux"; + name = "xflux-2013-09-01"; src = fetchurl { url = https://justgetflux.com/linux/xflux64.tgz; sha256 = "cc50158fabaeee58c331f006cc1c08fd2940a126e99d37b76c8e878ef20c2021"; diff --git a/pkgs/tools/misc/xsel/default.nix b/pkgs/tools/misc/xsel/default.nix index 74eadaf5e2e97..3fe0f409f29bf 100644 --- a/pkgs/tools/misc/xsel/default.nix +++ b/pkgs/tools/misc/xsel/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, x11}: +{stdenv, fetchurl, xlibsWrapper}: stdenv.mkDerivation { name = "xsel-1.2.0"; @@ -7,5 +7,5 @@ stdenv.mkDerivation { sha256 = "070lbcpw77j143jrbkh0y1v10ppn1jwmjf92800w7x42vh4cw9xr"; }; - buildInputs = [x11]; + buildInputs = [xlibsWrapper]; } diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index 60d31fec8c3dc..e9f7eadc9146c 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -1,31 +1,29 @@ -{ stdenv, fetchurl, makeWrapper, python, zip, pandoc, ffmpeg }: +{ stdenv, fetchurl, makeWrapper, buildPythonPackage, zip, ffmpeg +, pandoc ? null }: -with stdenv.lib; -stdenv.mkDerivation rec { +# 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 +# "pandoc = null" to this derivation; the man page will still be +# installed. We keep the pandoc argument and build input in place in +# case someone wants to use this derivation to build a Git version of +# the tool that doesn't have the formatted man page included. + +buildPythonPackage rec { name = "youtube-dl-${version}"; - version = "2015.04.03"; + version = "2015.08.28"; src = fetchurl { url = "http://youtube-dl.org/downloads/${version}/${name}.tar.gz"; - sha256 = "0ndzswv6vq5ld5p1ny23sh76cx6acf8yli9gi9r21dm94ida2885"; + sha256 = "0iahbynd6fw097a4cc57w26szlbqsmhb8v5ny6qrcil0d4wdqqvp"; }; - buildInputs = [ python makeWrapper zip pandoc ]; - - patchPhase = '' - rm youtube-dl - ''; - - configurePhase = '' - makeFlagsArray=( PREFIX=$out SYSCONFDIR=$out/etc PYTHON=${python}/bin/python ) - ''; + buildInputs = [ makeWrapper zip pandoc ]; - postInstall = '' - # ffmpeg is used for post-processing and fixups - wrapProgram $out/bin/youtube-dl --prefix PATH : "${ffmpeg}/bin" - ''; + # Ensure ffmpeg is available in $PATH for post-processing & transcoding support. + postInstall = stdenv.lib.optionalString (ffmpeg != null) + ''wrapProgram $out/bin/youtube-dl --prefix PATH : "${ffmpeg}/bin"''; - meta = { + meta = with stdenv.lib; { homepage = "http://rg3.github.com/youtube-dl/"; repositories.git = https://github.com/rg3/youtube-dl.git; description = "Command-line tool to download videos from YouTube.com and other sites"; diff --git a/pkgs/tools/misc/yubico-piv-tool/default.nix b/pkgs/tools/misc/yubico-piv-tool/default.nix index 9934620c11f65..fee4d44ce6676 100644 --- a/pkgs/tools/misc/yubico-piv-tool/default.nix +++ b/pkgs/tools/misc/yubico-piv-tool/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, openssl, pcsclite }: stdenv.mkDerivation rec { - name = "yubico-piv-tool-0.1.6"; + name = "yubico-piv-tool-1.0.2"; src = fetchurl { url = "https://developers.yubico.com/yubico-piv-tool/Releases/${name}.tar.gz"; - sha256 = "1fsr7wkbg2ff9igc3d8bfqijdxj88wpfnj7zlidzgzakj4b6bxzg"; + sha256 = "1l12bkyqs38212rizda6s3mypfr4wdiap0yhqfwx86lqcp4h0yb9"; }; buildInputs = [ pkgconfig openssl pcsclite ]; diff --git a/pkgs/tools/misc/yubikey-personalization-gui/default.nix b/pkgs/tools/misc/yubikey-personalization-gui/default.nix index 8e606de68c15e..269219e114359 100644 --- a/pkgs/tools/misc/yubikey-personalization-gui/default.nix +++ b/pkgs/tools/misc/yubikey-personalization-gui/default.nix @@ -1,14 +1,15 @@ { stdenv, fetchurl, pkgconfig, yubikey-personalization, qt, libyubikey }: stdenv.mkDerivation rec { - name = "yubikey-personalization-gui-3.1.20"; + name = "yubikey-personalization-gui-3.1.21"; src = fetchurl { url = "https://developers.yubico.com/yubikey-personalization-gui/Releases/${name}.tar.gz"; - sha256 = "157ra39m4rv7ni28q9n7v3n102h89fn43kccvs91fmqbj02i3qvh"; + sha256 = "1b5mf6h3jj35f3xwzdbqsyzk171sn8rp9ym4vipmzzcg10jxyp0m"; }; - buildInputs = [ pkgconfig yubikey-personalization qt libyubikey ]; + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ yubikey-personalization qt libyubikey ]; configurePhase = '' qmake diff --git a/pkgs/tools/misc/yubikey-personalization/default.nix b/pkgs/tools/misc/yubikey-personalization/default.nix index f6b14635d298e..c109903e6ee3c 100644 --- a/pkgs/tools/misc/yubikey-personalization/default.nix +++ b/pkgs/tools/misc/yubikey-personalization/default.nix @@ -2,14 +2,15 @@ stdenv.mkDerivation rec { name = "yubikey-personalization-${version}"; - version = "1.17.1"; + version = "1.17.2"; src = fetchurl { url = "https://developers.yubico.com/yubikey-personalization/Releases/ykpers-${version}.tar.gz"; - sha256 = "1i399z23skvyfdr3fp7a340qi3ynfcwdqr1y540swjy9pg1awssm"; + sha256 = "1z6ybpdhl74phwzg2lhxhipqf7xnfhg52dykkzb3fbx21m0i4jkh"; }; - buildInputs = [ pkgconfig libusb libyubikey json_c ]; + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libusb libyubikey json_c ]; configureFlags = [ "--with-backend=libusb-1.0" diff --git a/pkgs/tools/misc/zsh-navigation-tools/default.nix b/pkgs/tools/misc/zsh-navigation-tools/default.nix new file mode 100644 index 0000000000000..31c6cd20ec7a9 --- /dev/null +++ b/pkgs/tools/misc/zsh-navigation-tools/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "zsh-navigation-tools-${version}"; + version = "1.2"; + + src = fetchFromGitHub { + owner = "psprint"; + repo = "zsh-navigation-tools"; + rev = "v${version}"; + sha256 = "1p3r8pra88sjcc8b5d7qlz1axsyyspl3835y6mqwia57b9g0fpy8"; + }; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/share/zsh/site-functions/ + cp n-* $out/share/zsh/site-functions/ + ''; + + meta = with stdenv.lib; { + description = "Curses-based tools for ZSH"; + homepage = https://github.com/psprint/zsh-navigation-tools; + license = licenses.gpl3; + maintainers = with maintainers; [ pSub ]; + }; +} |