diff options
Diffstat (limited to 'pkgs/tools')
37 files changed, 864 insertions, 114 deletions
diff --git a/pkgs/tools/X11/xsecurelock/default.nix b/pkgs/tools/X11/xsecurelock/default.nix index 176b9fa0068a..c252894dbfec 100644 --- a/pkgs/tools/X11/xsecurelock/default.nix +++ b/pkgs/tools/X11/xsecurelock/default.nix @@ -3,13 +3,14 @@ , pamtester, xscreensaver }: stdenv.mkDerivation rec { - name = "xsecurelock-git-2018-07-10"; + name = "xsecurelock-${version}"; + version = "1.0"; src = fetchFromGitHub { owner = "google"; repo = "xsecurelock"; - rev = "0fa0d7dd87a4cc4bdb402323f95c3fcacc6f5049"; - sha256 = "071b3gslszql1mgabs53r82jgbk9mn263m5v6adskfxbkamks8g0"; + rev = "v${version}"; + sha256 = "0k135hnfnn1j82wvc03b8jkq06wws1xk325x5m25ps6xwsn725sw"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix index 2313f27f2e54..c38dc7bbfbe7 100644 --- a/pkgs/tools/archivers/cpio/default.nix +++ b/pkgs/tools/archivers/cpio/default.nix @@ -31,10 +31,11 @@ in stdenv.mkDerivation { enableParallelBuilding = true; - meta = { + meta = with stdenv.lib; { homepage = http://www.gnu.org/software/cpio/; description = "A program to create or extract from cpio archives"; - platforms = stdenv.lib.platforms.all; + license = licenses.gpl3; + platforms = platforms.all; priority = 6; # resolves collision with gnutar's "libexec/rmt" }; } diff --git a/pkgs/tools/archivers/cromfs/default.nix b/pkgs/tools/archivers/cromfs/default.nix index 68f7f02e7413..57a8a8e97380 100644 --- a/pkgs/tools/archivers/cromfs/default.nix +++ b/pkgs/tools/archivers/cromfs/default.nix @@ -21,10 +21,11 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ fuse perl ]; - meta = { + meta = with stdenv.lib; { description = "FUSE Compressed ROM filesystem with lzma"; homepage = https://bisqwit.iki.fi/source/cromfs.html; - maintainers = [ stdenv.lib.maintainers.viric ]; - platforms = stdenv.lib.platforms.linux; + license = licenses.gpl3; + maintainers = [ maintainers.viric ]; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/archivers/p7zip/12-CVE-2016-9296.patch b/pkgs/tools/archivers/p7zip/12-CVE-2016-9296.patch new file mode 100644 index 000000000000..42245c92c0aa --- /dev/null +++ b/pkgs/tools/archivers/p7zip/12-CVE-2016-9296.patch @@ -0,0 +1,23 @@ +From: Robert Luberda <robert@debian.org> +Date: Sat, 19 Nov 2016 08:48:08 +0100 +Subject: Fix nullptr dereference (CVE-2016-9296) + +Patch taken from https://sourceforge.net/p/p7zip/bugs/185/ +--- + CPP/7zip/Archive/7z/7zIn.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/CPP/7zip/Archive/7z/7zIn.cpp b/CPP/7zip/Archive/7z/7zIn.cpp +index b0c6b98..7c6dde2 100644 +--- a/CPP/7zip/Archive/7z/7zIn.cpp ++++ b/CPP/7zip/Archive/7z/7zIn.cpp +@@ -1097,7 +1097,8 @@ HRESULT CInArchive::ReadAndDecodePackedStreams( + if (CrcCalc(data, unpackSize) != folders.FolderCRCs.Vals[i]) + ThrowIncorrect(); + } +- HeadersSize += folders.PackPositions[folders.NumPackStreams]; ++ if (folders.PackPositions) ++ HeadersSize += folders.PackPositions[folders.NumPackStreams]; + return S_OK; + } + diff --git a/pkgs/tools/archivers/p7zip/13-CVE-2017-17969.patch b/pkgs/tools/archivers/p7zip/13-CVE-2017-17969.patch new file mode 100644 index 000000000000..a9787c4a9088 --- /dev/null +++ b/pkgs/tools/archivers/p7zip/13-CVE-2017-17969.patch @@ -0,0 +1,35 @@ +From: =?utf-8?q?Antoine_Beaupr=C3=A9?= <anarcat@debian.org> +Date: Fri, 2 Feb 2018 11:11:41 +0100 +Subject: Heap-based buffer overflow in 7zip/Compress/ShrinkDecoder.cpp + +Origin: vendor, https://sourceforge.net/p/p7zip/bugs/_discuss/thread/0920f369/27d7/attachment/CVE-2017-17969.patch +Forwarded: https://sourceforge.net/p/p7zip/bugs/_discuss/thread/0920f369/#27d7 +Bug: https://sourceforge.net/p/p7zip/bugs/204/ +Bug-Debian: https://bugs.debian.org/888297 +Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2017-17969 +Reviewed-by: Salvatore Bonaccorso <carnil@debian.org> +Last-Update: 2018-02-01 +Applied-Upstream: 18.00-beta +--- + CPP/7zip/Compress/ShrinkDecoder.cpp | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/CPP/7zip/Compress/ShrinkDecoder.cpp b/CPP/7zip/Compress/ShrinkDecoder.cpp +index 80b7e67..ca37764 100644 +--- a/CPP/7zip/Compress/ShrinkDecoder.cpp ++++ b/CPP/7zip/Compress/ShrinkDecoder.cpp +@@ -121,8 +121,13 @@ HRESULT CDecoder::CodeReal(ISequentialInStream *inStream, ISequentialOutStream * + { + _stack[i++] = _suffixes[cur]; + cur = _parents[cur]; ++ if (cur >= kNumItems || i >= kNumItems) ++ break; + } +- ++ ++ if (cur >= kNumItems || i >= kNumItems) ++ break; ++ + _stack[i++] = (Byte)cur; + lastChar2 = (Byte)cur; + diff --git a/pkgs/tools/archivers/p7zip/default.nix b/pkgs/tools/archivers/p7zip/default.nix index 4d8b2477ed58..4886217211df 100644 --- a/pkgs/tools/archivers/p7zip/default.nix +++ b/pkgs/tools/archivers/p7zip/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchpatch }: +{ stdenv, fetchurl }: stdenv.mkDerivation rec { name = "p7zip-${version}"; @@ -10,16 +10,8 @@ stdenv.mkDerivation rec { }; patches = [ - (fetchpatch rec { - name = "CVE-2016-9296.patch"; - url = "https://salsa.debian.org/debian/p7zip/raw/debian/${version}+dfsg-6/debian/patches/12-${name}"; - sha256 = "09wbkzai46bwm8zmplsz0m4jck3qn7snr68i9p1gsih300zidj0m"; - }) - (fetchpatch rec { - name = "CVE-2017-17969.patch"; - url = "https://salsa.debian.org/debian/p7zip/raw/debian/${version}+dfsg-6/debian/patches/13-${name}"; - sha256 = "00pycdwx6gw7w591bg54ym6zhbxgn47p3zhms6mnmaycfzw09mkn"; - }) + ./12-CVE-2016-9296.patch + ./13-CVE-2017-17969.patch ]; # Default makefile is full of impurities on Darwin. The patch doesn't hurt Linux so I'm leaving it unconditional diff --git a/pkgs/tools/filesystems/ifuse/default.nix b/pkgs/tools/filesystems/ifuse/default.nix index 942b6272071c..f9021c5a3aa7 100644 --- a/pkgs/tools/filesystems/ifuse/default.nix +++ b/pkgs/tools/filesystems/ifuse/default.nix @@ -1,25 +1,31 @@ -{ stdenv, fetchurl, pkgconfig, usbmuxd, fuse, gnutls, libgcrypt, - libplist, libimobiledevice }: +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, usbmuxd, fuse, libimobiledevice }: stdenv.mkDerivation rec { - name = "ifuse-1.1.3"; + pname = "ifuse"; + version = "1.1.3"; - nativeBuildInputs = [ pkgconfig fuse libplist usbmuxd gnutls libgcrypt libimobiledevice ]; + name = "${pname}-${version}"; - src = fetchurl { - url = "${meta.homepage}/downloads/${name}.tar.bz2"; - sha256 = "1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257"; + src = fetchFromGitHub { + owner = "libimobiledevice"; + repo = pname; + rev = version; + sha256 = "0p01rds3vc5864v48swgqw5dv0h937nqnxggryixg9pkvzhc6cx5"; }; - meta = { - homepage = http://www.libimobiledevice.org; - license = stdenv.lib.licenses.lgpl21Plus; + nativeBuildInputs = [ autoreconfHook pkgconfig fuse usbmuxd libimobiledevice ]; + + meta = with stdenv.lib; { + homepage = https://github.com/libimobiledevice/ifuse; description = "A fuse filesystem implementation to access the contents of iOS devices"; longDescription = '' - Mount directories of an iOS device locally using fuse. By default the media - directory is mounted, options allow to also mount the sandbox container of an - app, an app's documents folder or even the root filesystem on jailbroken - devices.''; - inherit (usbmuxd.meta) platforms maintainers; + Mount directories of an iOS device locally using fuse. By default the media + directory is mounted, options allow to also mount the sandbox container of an + app, an app's documents folder or even the root filesystem on jailbroken + devices. + ''; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/tools/graphics/blockhash/default.nix b/pkgs/tools/graphics/blockhash/default.nix index c48b85cedb26..5ddf8185b3cf 100644 --- a/pkgs/tools/graphics/blockhash/default.nix +++ b/pkgs/tools/graphics/blockhash/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "blockhash-${version}"; - version = "0.3"; + version = "0.3.1"; src = fetchFromGitHub { owner = "commonsmachinery"; repo = "blockhash"; rev = "v${version}"; - sha256 = "15iwljpkykn2711jhls7cwkb23gk6iawlvvk4prl972wic2wlxcj"; + sha256 = "0m7ikppl42iicgmwsb7baajmag7v0p1ab06xckifvrr0zm21bq9p"; }; nativeBuildInputs = [ python pkgconfig ]; diff --git a/pkgs/tools/graphics/dcraw/default.nix b/pkgs/tools/graphics/dcraw/default.nix index dd81c3e4ecc0..e4ceff36f92a 100644 --- a/pkgs/tools/graphics/dcraw/default.nix +++ b/pkgs/tools/graphics/dcraw/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, libjpeg, lcms2, gettext, jasper }: +{stdenv, fetchurl, libjpeg, lcms2, gettext, jasper, libiconv }: stdenv.mkDerivation rec { name = "dcraw-9.28.0"; @@ -8,15 +8,18 @@ stdenv.mkDerivation rec { sha256 = "1fdl3xa1fbm71xzc3760rsjkvf0x5jdjrvdzyg2l9ka24vdc7418"; }; + nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin libiconv; buildInputs = [ libjpeg lcms2 gettext jasper ]; patchPhase = '' - sed -i -e s@/usr/local@$out@ install + substituteInPlace install \ + --replace 'prefix=/usr/local' 'prefix=$out' \ + --replace gcc '$CC' ''; buildPhase = '' mkdir -p $out/bin - sh install + sh -e install ''; meta = { diff --git a/pkgs/tools/inputmethods/m17n-lib/otf.nix b/pkgs/tools/inputmethods/m17n-lib/otf.nix new file mode 100644 index 000000000000..6e13b4a949c4 --- /dev/null +++ b/pkgs/tools/inputmethods/m17n-lib/otf.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, libXaw, freetype }: +stdenv.mkDerivation rec { + name = "libotf-0.9.16"; + + src = fetchurl { + url = "http://download.savannah.gnu.org/releases/m17n/${name}.tar.gz"; + sha256 = "0sq6g3xaxw388akws6qrllp3kp2sxgk2dv4j79k6mm52rnihrnv8"; + }; + + buildInputs = [ libXaw freetype ]; + + meta = { + homepage = http://www.nongnu.org/m17n/; + description = "Multilingual text processing library (libotf)"; + license = stdenv.lib.licenses.lgpl21Plus; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ bendlas ]; + }; +} diff --git a/pkgs/tools/misc/bc/default.nix b/pkgs/tools/misc/bc/default.nix index 52bd28e9748d..ea8cefd14d3e 100644 --- a/pkgs/tools/misc/bc/default.nix +++ b/pkgs/tools/misc/bc/default.nix @@ -1,4 +1,6 @@ -{stdenv, autoreconfHook, buildPackages, fetchurl, flex, readline, ed, texinfo}: +{ stdenv, autoreconfHook, buildPackages +, fetchurl, flex, readline, ed, texinfo +}: stdenv.mkDerivation rec { name = "bc-1.07.1"; @@ -31,6 +33,7 @@ stdenv.mkDerivation rec { meta = { description = "GNU software calculator"; homepage = http://www.gnu.org/software/bc/; + license = stdenv.lib.licenses.gpl3; platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/tools/misc/cowsay/default.nix b/pkgs/tools/misc/cowsay/default.nix index 0a7b079445d5..4d55b70d007b 100644 --- a/pkgs/tools/misc/cowsay/default.nix +++ b/pkgs/tools/misc/cowsay/default.nix @@ -1,12 +1,12 @@ -{ stdenv, fetchgit, perl }: +{ stdenv, fetchurl, perl }: -stdenv.mkDerivation { - name = "cowsay-3.03+dfsg1-16"; +stdenv.mkDerivation rec{ + version = "3.03+dfsg2"; + name = "cowsay-${version}"; - src = fetchgit { - url = https://anonscm.debian.org/git/collab-maint/cowsay.git; - rev = "acb946c166fa3b9526b9c471ef1330f9f89f9c8b"; - sha256 = "1ji66nrdcc8sh79hwils3nbaj897s352r5wp7kzjwiym8bm2azk6"; + src = fetchurl { + url = "http://http.debian.net/debian/pool/main/c/cowsay/cowsay_${version}.orig.tar.gz"; + sha256 = "0ghqnkp8njc3wyqx4mlg0qv0v0pc996x2nbyhqhz66bbgmf9d29v"; }; buildInputs = [ perl ]; @@ -15,10 +15,11 @@ stdenv.mkDerivation { bash ./install.sh $out ''; - meta = { + meta = with stdenv.lib; { description = "A program which generates ASCII pictures of a cow with a message"; - homepage = http://www.nog.net/~tony/warez/cowsay.shtml; - platforms = stdenv.lib.platforms.all; - maintainers = [ stdenv.lib.maintainers.rob ]; + homepage = https://en.wikipedia.org/wiki/Cowsay; + license = licenses.gpl1; + platforms = platforms.all; + maintainers = [ maintainers.rob ]; }; } diff --git a/pkgs/tools/misc/fortune/default.nix b/pkgs/tools/misc/fortune/default.nix index 59c0396eebea..8e9557335982 100644 --- a/pkgs/tools/misc/fortune/default.nix +++ b/pkgs/tools/misc/fortune/default.nix @@ -23,8 +23,9 @@ stdenv.mkDerivation { rmdir $out/games ''; - meta = { + meta = with stdenv.lib; { description = "A program that displays a pseudorandom message from a database of quotations"; - platforms = stdenv.lib.platforms.unix; + license = licenses.bsdOriginal; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/misc/grub/default.nix b/pkgs/tools/misc/grub/default.nix index bb565bacfe79..6ba931ad80d6 100644 --- a/pkgs/tools/misc/grub/default.nix +++ b/pkgs/tools/misc/grub/default.nix @@ -50,7 +50,8 @@ stdenv.mkDerivation { passthru.grubTarget = ""; - meta = { - platforms = stdenv.lib.platforms.linux; + meta = with stdenv.lib; { + license = licenses.gpl2; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix index 57eeb39f5431..c961ea938bab 100644 --- a/pkgs/tools/misc/less/default.nix +++ b/pkgs/tools/misc/less/default.nix @@ -13,10 +13,11 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses ]; - meta = { + meta = with stdenv.lib; { homepage = http://www.greenwoodsoftware.com/less/; description = "A more advanced file pager than ‘more’"; - platforms = stdenv.lib.platforms.unix; - maintainers = [ stdenv.lib.maintainers.eelco ]; + platforms = platforms.unix; + license = licenses.gpl3; + maintainers = [ maintainers.eelco ]; }; } diff --git a/pkgs/tools/misc/pdd/default.nix b/pkgs/tools/misc/pdd/default.nix index d84f0f966e49..da595e0591a4 100644 --- a/pkgs/tools/misc/pdd/default.nix +++ b/pkgs/tools/misc/pdd/default.nix @@ -2,13 +2,13 @@ buildPythonApplication rec { pname = "pdd"; - version = "1.3"; + version = "1.3.1"; src = fetchFromGitHub { owner = "jarun"; repo = "pdd"; rev = "v${version}"; - sha256 = "1r7861qg73jpchgmk8zcz0iki95ic1i3f77sd7j7vf5bvkikv739"; + sha256 = "0kl6d9nivf6jj1j70alz64iwbp3ip9rg4x506nannii2cfmmx5wr"; }; format = "other"; diff --git a/pkgs/tools/misc/pspg/default.nix b/pkgs/tools/misc/pspg/default.nix index f68c87df5ce5..a1492259e8c4 100644 --- a/pkgs/tools/misc/pspg/default.nix +++ b/pkgs/tools/misc/pspg/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "pspg-${version}"; - version = "1.2.1"; + version = "1.3.0"; src = fetchFromGitHub { owner = "okbob"; repo = "pspg"; rev = "${version}"; - sha256 = "172kphgy6rjs4np1azxldi6mcknjaksj7vfjs3ijldkzz87i7w95"; + sha256 = "1m63bhhglrpc2g68i5bigrzlpvg98qs83jgvf2gsbc4gnx9hywk5"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/tools/misc/usbmuxd/default.nix b/pkgs/tools/misc/usbmuxd/default.nix index 2a792669ba8b..6c26564c9dbb 100644 --- a/pkgs/tools/misc/usbmuxd/default.nix +++ b/pkgs/tools/misc/usbmuxd/default.nix @@ -1,30 +1,40 @@ -{ stdenv, fetchurl, libplist, libusb1, pkgconfig, libimobiledevice }: +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libusb1, libimobiledevice }: stdenv.mkDerivation rec { - name = "usbmuxd-${version}"; - version = "1.1.0"; + pname = "usbmuxd"; + version = "2018-07-22"; - src = fetchurl { - url = "https://www.libimobiledevice.org/downloads/${name}.tar.bz2"; - sha256 = "0bdlc7a8plvglqqx39qqampqm6y0hcdws76l9dffwl22zss4i29y"; + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "libimobiledevice"; + repo = pname; + rev = "ee85938c21043ef5f7cd4dfbc7677f385814d4d8"; + sha256 = "1qsnxvcagxa92rz0w78m0n2drgaghi0pqpbjdk2080sczzi1g76y"; }; - nativeBuildInputs = [ pkgconfig ]; - propagatedBuildInputs = [ libusb1 libplist libimobiledevice ]; + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + propagatedBuildInputs = [ libimobiledevice libusb1 ]; preConfigure = '' configureFlags="$configureFlags --with-udevrulesdir=$out/lib/udev/rules.d" configureFlags="$configureFlags --with-systemdsystemunitdir=$out/lib/systemd/system" ''; - meta = { - homepage = http://marcansoft.com/blog/iphonelinux/usbmuxd/; - description = "USB Multiplex Daemon (for talking to iPhone or iPod)"; + meta = with stdenv.lib; { + homepage = https://github.com/libimobiledevice/usbmuxd; + description = "A socket daemon to multiplex connections from and to iOS devices"; longDescription = '' - usbmuxd: USB Multiplex Daemon. This bit of software is in charge of - talking to your iPhone or iPod Touch over USB and coordinating access to - its services by other applications.''; - platforms = stdenv.lib.platforms.linux; - maintainers = [ ]; + usbmuxd stands for "USB multiplexing daemon". This daemon is in charge of + multiplexing connections over USB to an iOS device. To users, it means + you can sync your music, contacts, photos, etc. over USB. To developers, it + means you can connect to any listening localhost socket on the device. usbmuxd + is not used for tethering data transfer which uses a dedicated USB interface as + a virtual network device. Multiple connections to different TCP ports can happen + in parallel. The higher-level layers are handled by libimobiledevice. + ''; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/tools/misc/you-get/default.nix b/pkgs/tools/misc/you-get/default.nix index e9cd23f5bbc4..5254d1091680 100644 --- a/pkgs/tools/misc/you-get/default.nix +++ b/pkgs/tools/misc/you-get/default.nix @@ -2,7 +2,7 @@ buildPythonApplication rec { pname = "you-get"; - version = "0.4.1099"; + version = "0.4.1128"; # Tests aren't packaged, but they all hit the real network so # probably aren't suitable for a build environment anyway. @@ -10,7 +10,7 @@ buildPythonApplication rec { src = fetchPypi { inherit pname version; - sha256 = "1z9zhxv2vgbb20hgjiksyqm2zglwq71azbp27na1779hbqc467ik"; + sha256 = "0i0wspmgblxwvvbm3q8zz4l450fs3bccqxxfm0ysfgprgcy8fp3l"; }; meta = with stdenv.lib; { diff --git a/pkgs/tools/networking/altermime/default.nix b/pkgs/tools/networking/altermime/default.nix index f1e85487d8fc..fee133b1d736 100644 --- a/pkgs/tools/networking/altermime/default.nix +++ b/pkgs/tools/networking/altermime/default.nix @@ -21,12 +21,11 @@ stdenv.mkDerivation rec { mkdir -p "$out/bin" ''; - meta = { + meta = with stdenv.lib; { description = "MIME alteration tool"; - maintainers = with stdenv.lib.maintainers; [ - raskin - ]; - platforms = with stdenv.lib.platforms; linux; + maintainers = [ maintainers.raskin ]; + platforms = platforms.linux; + license.fullName = "alterMIME LICENSE"; downloadPage = "http://www.pldaniels.com/altermime/"; }; } diff --git a/pkgs/tools/networking/curl/7_59.nix b/pkgs/tools/networking/curl/7_59.nix index 71a87a8e9d15..0482bcf52629 100644 --- a/pkgs/tools/networking/curl/7_59.nix +++ b/pkgs/tools/networking/curl/7_59.nix @@ -101,6 +101,7 @@ stdenv.mkDerivation rec { description = "A command line tool for transferring files with URL syntax"; homepage = https://curl.haxx.se/; maintainers = with maintainers; [ lovek323 ]; + license = licenses.curl; platforms = platforms.all; }; } diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index d15e6084a8b9..d42cdcd4a347 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -105,6 +105,7 @@ stdenv.mkDerivation rec { description = "A command line tool for transferring files with URL syntax"; homepage = https://curl.haxx.se/; maintainers = with maintainers; [ lovek323 ]; - platforms = platforms.all; + license = licenses.curl; + platforms = platforms.all; }; } diff --git a/pkgs/tools/networking/dd-agent/default.nix b/pkgs/tools/networking/dd-agent/5.nix index ff4a24fb7810..d3c4a2af7652 100644 --- a/pkgs/tools/networking/dd-agent/default.nix +++ b/pkgs/tools/networking/dd-agent/5.nix @@ -89,7 +89,10 @@ in stdenv.mkDerivation rec { ''; meta = { - description = "Event collector for the DataDog analysis service"; + description = '' + Event collector for the DataDog analysis service + -- v5 Python implementation + ''; homepage = https://www.datadoghq.com; license = stdenv.lib.licenses.bsd3; platforms = stdenv.lib.platforms.all; diff --git a/pkgs/tools/networking/dd-agent/6.nix b/pkgs/tools/networking/dd-agent/6.nix new file mode 100644 index 000000000000..56a71595cea7 --- /dev/null +++ b/pkgs/tools/networking/dd-agent/6.nix @@ -0,0 +1,77 @@ +{ stdenv, fetchFromGitHub, buildGoPackage, makeWrapper, pythonPackages, pkgconfig }: + +let + # keep this in sync with github.com/DataDog/agent-payload dependency + payloadVersion = "4.7"; + +in buildGoPackage rec { + name = "datadog-agent-${version}"; + version = "6.1.4"; + owner = "DataDog"; + repo = "datadog-agent"; + + src = fetchFromGitHub { + inherit owner repo; + rev = "a8ee76deb11fa334470d9b8f2356214999980894"; + sha256 = "06grcwwbfvcw1k1d4nqrasrf76qkpik1gsw60zwafllfd9ffhl1v"; + }; + + subPackages = [ + "cmd/agent" + "cmd/dogstatsd" + "cmd/py-launcher" + "cmd/cluster-agent" + ]; + goDeps = ./deps.nix; + goPackagePath = "github.com/${owner}/${repo}"; + + # Explicitly set this here to allow it to be overridden. + python = pythonPackages.python; + + nativeBuildInputs = [ pkgconfig makeWrapper ]; + PKG_CONFIG_PATH = "${python}/lib/pkgconfig"; + + buildFlagsArray = let + ldFlags = stdenv.lib.concatStringsSep " " [ + "-X ${goPackagePath}/pkg/version.Commit=${src.rev}" + "-X ${goPackagePath}/pkg/version.AgentVersion=${version}" + "-X ${goPackagePath}/pkg/serializer.AgentPayloadVersion=${payloadVersion}" + "-X ${goPackagePath}/pkg/collector/py.pythonHome=${python}" + "-r ${python}/lib" + ]; + in [ + "-ldflags=${ldFlags}" + ]; + buildFlags = "-tags cpython"; + + # DataDog use paths relative to the agent binary, so fix these. + postPatch = '' + sed -e "s|PyChecksPath =.*|PyChecksPath = \"$bin/${python.sitePackages}\"|" \ + -e "s|distPath =.*|distPath = \"$bin/share/datadog-agent\"|" \ + -i cmd/agent/common/common_nix.go + ''; + + # Install the config files and python modules from the "dist" dir + # into standard paths. + postInstall = '' + mkdir -p $bin/${python.sitePackages} $bin/share/datadog-agent + cp -R $src/cmd/agent/dist/{conf.d,trace-agent.conf} $bin/share/datadog-agent + cp -R $src/cmd/agent/dist/{checks,utils,config.py} $bin/${python.sitePackages} + + cp -R $src/pkg/status/dist/templates $bin/share/datadog-agent + + wrapProgram "$bin/bin/agent" \ + --set PYTHONPATH "$bin/${python.sitePackages}" + ''; + + meta = with stdenv.lib; { + description = '' + Event collector for the DataDog analysis service + -- v6 new golang implementation. + ''; + homepage = https://www.datadoghq.com; + license = licenses.bsd3; + platforms = platforms.all; + maintainers = with maintainers; [ thoughtpolice domenkozar rvl ]; + }; +} diff --git a/pkgs/tools/networking/dd-agent/deps.nix b/pkgs/tools/networking/dd-agent/deps.nix new file mode 100644 index 000000000000..7a8fc69b2a42 --- /dev/null +++ b/pkgs/tools/networking/dd-agent/deps.nix @@ -0,0 +1,353 @@ +[ + { + goPackagePath = "github.com/DataDog/agent-payload"; + fetch = { + type = "git"; + url = "https://github.com/DataDog/agent-payload"; + rev = "3b793015ecfa5b829e8a466bd7cce836891502cc"; + sha256 = "0lg7c1whmvk4a13mrivdjfzfxqan07kvs2calgylncy7yf4szdp6"; + }; + } + { + goPackagePath = "github.com/DataDog/gohai"; + fetch = { + type = "git"; + url = "https://github.com/DataDog/gohai"; + rev = "d80d0f562a71fa2380fbeccc93ba5a2e325606e4"; + sha256 = "1frslms7f5i8dc8n0v9pb64mf4zdj3q2c005qxajl8j8i9nhj7yb"; + }; + } + { + goPackagePath = "github.com/DataDog/mmh3"; + fetch = { + type = "git"; + url = "https://github.com/DataDog/mmh3"; + rev = "2cfb68475274527a10701355c739f31dd404718c"; + sha256 = "09jgzxi08pkxllxk3f5qwipz96jxrw5v035fj2bkid1d4akn8y0b"; + }; + } + { + goPackagePath = "github.com/beevik/ntp"; + fetch = { + type = "git"; + url = "https://github.com/beevik/ntp"; + rev = "cb3dae3a7588ae35829eb5724df611cd75152fba"; + sha256 = "0nc6f7d0xw23y18z9qxrmm8kvnywihassyk706mn9v4makmhalnz"; + }; + } + { + goPackagePath = "github.com/cihub/seelog"; + fetch = { + type = "git"; + url = "https://github.com/cihub/seelog"; + rev = "f561c5e57575bb1e0a2167028b7339b3a8d16fb4"; + sha256 = "0r3228hvgljgpaggj6b9mvxfsizfw25q2c1761wsvcif8gz49cvl"; + }; + } + { + goPackagePath = "github.com/docker/docker"; + fetch = { + type = "git"; + url = "https://github.com/docker/docker"; + rev = "092cba3727bb9b4a2f0e922cd6c0f93ea270e363"; + sha256 = "0l9kjibnpwcgk844sibxk9ppyqniw9r0np1mzp95f8f461jb0iar"; + }; + } + { + goPackagePath = "github.com/dsnet/compress"; + fetch = { + type = "git"; + url = "https://github.com/dsnet/compress"; + rev = "cc9eb1d7ad760af14e8f918698f745e80377af4f"; + sha256 = "159liclywmyb6zx88ga5gn42hfl4cpk1660zss87fkx31hdq9fgx"; + }; + } + { + goPackagePath = "github.com/fatih/color"; + fetch = { + type = "git"; + url = "https://github.com/fatih/color"; + rev = "507f6050b8568533fb3f5504de8e5205fa62a114"; + sha256 = "0k1v9dkhrxiqhg48yqkwzpd7x40xx38gv2pgknswbsy4r8w644i7"; + }; + } + { + goPackagePath = "github.com/fsnotify/fsnotify"; + fetch = { + type = "git"; + url = "https://github.com/fsnotify/fsnotify"; + rev = "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9"; + sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g"; + }; + } + { + goPackagePath = "github.com/go-ini/ini"; + fetch = { + type = "git"; + url = "https://github.com/go-ini/ini"; + rev = "bda519ae5f4cbc60d391ff8610711627a08b86ae"; + sha256 = "05vcc3ssxyrk8g3sr4gs888vllgjqfq11na63qz2pvaiy7m0rqrs"; + }; + } + { + goPackagePath = "github.com/gogo/protobuf"; + fetch = { + type = "git"; + url = "https://github.com/gogo/protobuf"; + rev = "1ef32a8b9fc3f8ec940126907cedb5998f6318e4"; + sha256 = "0zk2n0n35ksskr5cd83k5k8wg21ckrcggjy88bym2s21ngj5w4fh"; + }; + } + { + goPackagePath = "github.com/golang/snappy"; + fetch = { + type = "git"; + url = "https://github.com/golang/snappy"; + rev = "553a641470496b2327abcac10b36396bd98e45c9"; + sha256 = "0kssxnih1l722hx9219c7javganjqkqhvl3i0hp0hif6xm6chvqk"; + }; + } + { + goPackagePath = "github.com/gorilla/mux"; + fetch = { + type = "git"; + url = "https://github.com/gorilla/mux"; + rev = "ded0c29b24f96f46cf349e6701b099db601cf8ec"; + sha256 = "125dxfxs7his95fd2r28bn1rpb78pldfgm3lmw84ha1c0v5gfh33"; + }; + } + { + goPackagePath = "github.com/hashicorp/hcl"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/hcl"; + rev = "ef8a98b0bbce4a65b5aa4c368430a80ddc533168"; + sha256 = "1qalfsc31fra7hcw2lc3s20aj7al62fq3j5fn5kga3mg99b82nyr"; + }; + } + { + goPackagePath = "github.com/kardianos/osext"; + fetch = { + type = "git"; + url = "https://github.com/kardianos/osext"; + rev = "ae77be60afb1dcacde03767a8c37337fad28ac14"; + sha256 = "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"; + }; + } + { + goPackagePath = "github.com/magiconair/properties"; + fetch = { + type = "git"; + url = "https://github.com/magiconair/properties"; + rev = "2c9e9502788518c97fe44e8955cd069417ee89df"; + sha256 = "1w0rl9rla61m0qbha75jg48yiq1vs91sfy96rgqa6nags9v9b1rl"; + }; + } + { + goPackagePath = "github.com/mholt/archiver"; + fetch = { + type = "git"; + url = "https://github.com/mholt/archiver"; + rev = "e4ef56d48eb029648b0e895bb0b6a393ef0829c3"; + sha256 = "1krxyh6iq0s0rwhz7gg6dn795j9qq64rsgq9nivav7fhrqpgr6hb"; + }; + } + { + goPackagePath = "github.com/mitchellh/mapstructure"; + fetch = { + type = "git"; + url = "https://github.com/mitchellh/mapstructure"; + rev = "00c29f56e2386353d58c599509e8dc3801b0d716"; + sha256 = "1vw8fvhax0d567amgvxr7glcl12lvzg2sbzs007q5k5bbwn1szyb"; + }; + } + { + goPackagePath = "github.com/nwaples/rardecode"; + fetch = { + type = "git"; + url = "https://github.com/nwaples/rardecode"; + rev = "e06696f847aeda6f39a8f0b7cdff193b7690aef6"; + sha256 = "1aj7l8ii7hxnn3q4wzxlx3f92b1aspck6ncyqgb4h2g228phcibw"; + }; + } + { + goPackagePath = "github.com/patrickmn/go-cache"; + fetch = { + type = "git"; + url = "https://github.com/patrickmn/go-cache"; + rev = "a3647f8e31d79543b2d0f0ae2fe5c379d72cedc0"; + sha256 = "10020inkzrm931r4bixf8wqr9n39wcrb78vfyxmbvjavvw4zybgs"; + }; + } + { + goPackagePath = "github.com/pelletier/go-toml"; + fetch = { + type = "git"; + url = "https://github.com/pelletier/go-toml"; + rev = "66540cf1fcd2c3aee6f6787dfa32a6ae9a870f12"; + sha256 = "1n8na0yg90gm0rpifmzrby5r385vvd62cdam3ls7ssy02bjvfw15"; + }; + } + { + goPackagePath = "github.com/pierrec/lz4"; + fetch = { + type = "git"; + url = "https://github.com/pierrec/lz4"; + rev = "ed8d4cc3b461464e69798080a0092bd028910298"; + sha256 = "0flsn2ka108lb63gkxfzl90bkhndh1znnscv4v1k6j5h2s3zksls"; + }; + } + { + goPackagePath = "github.com/pierrec/xxHash"; + fetch = { + type = "git"; + url = "https://github.com/pierrec/xxHash"; + rev = "a0006b13c722f7f12368c00a3d3c2ae8a999a0c6"; + sha256 = "1hf7hqrqx0cbgx0alfwnqs0mrxg9rnwsijn5d0lv06w6vzqbvnzj"; + }; + } + { + goPackagePath = "github.com/shirou/gopsutil"; + fetch = { + type = "git"; + url = "https://github.com/shirou/gopsutil"; + rev = "57f370e13068146efe1cb7129f79e5d51da8a242"; + sha256 = "1ij0bbnfjj65afin8vhccr3cxvg6r0awmvcvb2ilza5wbbsslggb"; + }; + } + { + goPackagePath = "github.com/spf13/afero"; + fetch = { + type = "git"; + url = "https://github.com/spf13/afero"; + rev = "63644898a8da0bc22138abf860edaf5277b6102e"; + sha256 = "13piahaq4vw1y1sklq5scrsflqx0a8hzmdqfz1fy4871kf2gl8qw"; + }; + } + { + goPackagePath = "github.com/spf13/cast"; + fetch = { + type = "git"; + url = "https://github.com/spf13/cast"; + rev = "8965335b8c7107321228e3e3702cab9832751bac"; + sha256 = "177bk7lq40jbgv9p9r80aydpaccfk8ja3a7jjhfwiwk9r1pa4rr2"; + }; + } + { + goPackagePath = "github.com/spf13/cobra"; + fetch = { + type = "git"; + url = "https://github.com/spf13/cobra"; + rev = "ef82de70bb3f60c65fb8eebacbb2d122ef517385"; + sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd"; + }; + } + { + goPackagePath = "github.com/spf13/jwalterweatherman"; + fetch = { + type = "git"; + url = "https://github.com/spf13/jwalterweatherman"; + rev = "7c0cea34c8ece3fbeb2b27ab9b59511d360fb394"; + sha256 = "132p84i20b9s5r6fs597lsa6648vd415ch7c0d018vm8smzqpd0h"; + }; + } + { + goPackagePath = "github.com/spf13/pflag"; + fetch = { + type = "git"; + url = "https://github.com/spf13/pflag"; + rev = "583c0c0531f06d5278b7d917446061adc344b5cd"; + sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5"; + }; + } + { + goPackagePath = "github.com/spf13/viper"; + fetch = { + type = "git"; + url = "https://github.com/spf13/viper"; + rev = "8dc2790b029dc41e2b8ff772c63c26adbb1db70d"; + sha256 = "147zq6v34pgb79r4m0m2mwm8739jxwawxs8mpqvvhq7gxwvhng40"; + }; + } + { + goPackagePath = "github.com/stretchr/testify"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/testify"; + rev = "c679ae2cc0cb27ec3293fea7e254e47386f05d69"; + sha256 = "1rrdn7k83j492rzhqwkh6956sj8m2nbk44d7r1xa9nsn3hfwj691"; + }; + } + { + goPackagePath = "github.com/ulikunitz/xz"; + fetch = { + type = "git"; + url = "https://github.com/ulikunitz/xz"; + rev = "0c6b41e72360850ca4f98dc341fd999726ea007f"; + sha256 = "0a6l7sp67ipxim093qh6fvw8knbxj24l7bj5lykcddi5gwfi78n3"; + }; + } + { + goPackagePath = "github.com/urfave/negroni"; + fetch = { + type = "git"; + url = "https://github.com/urfave/negroni"; + rev = "22c5532ea862c34fdad414e90f8cc00b4f6f4cab"; + sha256 = "0jxd10cr3imm96xa01mdgyad4nq6mc7yr49z830fv3vywfr7bac8"; + }; + } + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "640f4622ab692b87c2f3a94265e6f579fe38263d"; + sha256 = "097m4qhcljhp180171j5fjhq4740iirfkkajfd7yrxqhp4s9hljx"; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "6f686a352de66814cdd080d970febae7767857a3"; + sha256 = "1z3pwvxlzq8kghjdsd9xmf184iiz13h8h66ipp626k4rc7kydr03"; + }; + } + { + goPackagePath = "golang.org/x/text"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/text"; + rev = "7922cc490dd5a7dbaa7fd5d6196b49db59ac042f"; + sha256 = "06sicjc24hv7v9p1l6psaq87w4lycx3mjixd6gsd1wnd4jhqvlnr"; + }; + } + { + goPackagePath = "gopkg.in/yaml.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/yaml.v2"; + rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183"; + sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1"; + }; + } + { + goPackagePath = "github.com/sbinet/go-python"; + fetch = { + type = "git"; + url = "https://github.com/sbinet/go-python"; + rev = "6d13f941744b9332d6ed00dc2cd2722acd79a47e"; + sha256 = "0x5q4nyv6gck9q33g54gy2ajmyjksxjmzh0jfqqn97jpgf4qfaym"; + }; + } + { + goPackagePath = "github.com/mitchellh/reflectwalk"; + fetch = { + type = "git"; + url = "https://github.com/mitchellh/reflectwalk"; + rev = "63d60e9d0dbc60cf9164e6510889b0db6683d98c"; + sha256 = "1hpq6sjr6l1h25x68mz13q7sd52dv1mjfxbl5p7m3j7cv85khnvc"; + }; + } +] diff --git a/pkgs/tools/networking/dd-agent/integrations-core.nix b/pkgs/tools/networking/dd-agent/integrations-core.nix new file mode 100644 index 000000000000..9212209e775b --- /dev/null +++ b/pkgs/tools/networking/dd-agent/integrations-core.nix @@ -0,0 +1,91 @@ +# The declarations in this file build the Datadog agent's core +# integrations. These integrations are tracked in a separate +# repository[1] outside of the agent's primary repository and provide +# checks for various kinds of services. +# +# Not all services are relevant for all users, however. As some of +# them depend on various tools and Python packages it is nonsensical +# to build *all* integrations by default. +# +# A set of default integrations is defined and built either way. +# Additional integrations can be specified by overriding +# `extraIntegrations` in datadog-integrations-core. +# +# In practice the syntax for using this with additional integrations +# is not the most beautiful, but it works. For example to use +# datadog-agent from the top-level with the `ntp`-integration +# included, one could say: +# +# let +# integrationsWithNtp = datadog-integrations-core { +# # Extra integrations map from the integration name (as in the +# # integrations-core repository) to a function that receives the +# # Python package set and returns the required dependencies.g +# ntp = (ps: [ ps.ntplib ]); +# }; +# +# in ddAgentWithNtp = datadog-agent.overrideAttrs(_ : { +# python = integrationsWithNtp.python; +# }); +# +# The NixOS module 'datadog-agent' provides a simplified interface to +# this. Please see the module itself for more information. +# +# [1]: https://github.com/DataDog/integrations-core + +{ pkgs, python, extraIntegrations ? {} }: + +with pkgs.lib; + +let + src = pkgs.fetchFromGitHub { + owner = "DataDog"; + repo = "integrations-core"; + rev = "7be76e73969a8b9c993903681b300e1dd32f4b4d"; + sha256 = "1qsqzm5iswgv9jrflh5mvbz9a7js7jf42cb28lzdzsp45iwfs2aa"; + }; + version = "git-2018-05-27"; + + # Build helper to build a single datadog integration package. + buildIntegration = { pname, ... }@args: python.pkgs.buildPythonPackage (args // { + inherit src version; + name = "datadog-integration-${pname}-${version}"; + + postPatch = '' + # jailbreak install_requires + sed -i 's/==.*//' requirements.in + cp requirements.in requirements.txt + ''; + sourceRoot = "source/${args.sourceRoot or pname}"; + doCheck = false; + }); + + # Base package depended on by all other integrations. + datadog_checks_base = buildIntegration { + pname = "checks-base"; + sourceRoot = "datadog_checks_base"; + propagatedBuildInputs = with python.pkgs; [ + requests protobuf prometheus_client uuid simplejson uptime + ]; + }; + + # Default integrations that should be built: + defaultIntegrations = { + disk = (ps: [ ps.psutil ]); + mongo = (ps: [ ps.pymongo ]); + network = (ps: [ ps.psutil ]); + nginx = (ps: []); + postgres = (ps: with ps; [ pg8000 psycopg2 ]); + }; + + # All integrations (default + extra): + integrations = defaultIntegrations // extraIntegrations; + builtIntegrations = mapAttrs (pname: fdeps: buildIntegration { + inherit pname; + propagatedBuildInputs = (fdeps python.pkgs) ++ [ datadog_checks_base ]; + }) integrations; + +in builtIntegrations // { + inherit datadog_checks_base; + python = python.withPackages (_: (attrValues builtIntegrations)); +} diff --git a/pkgs/tools/networking/polygraph/default.nix b/pkgs/tools/networking/polygraph/default.nix index 46680ab47af4..c05e44fb1c07 100644 --- a/pkgs/tools/networking/polygraph/default.nix +++ b/pkgs/tools/networking/polygraph/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, openssl, zlib, ncurses }: stdenv.mkDerivation rec { - name = "polygraph-4.11.0"; + name = "polygraph-4.12.0"; src = fetchurl { url = "http://www.web-polygraph.org/downloads/srcs/${name}-src.tgz"; - sha256 = "1ii60yl3p89qawvl19sd1bkpkw39fz8kpvmc3cawa32nxzbm9pbs"; + sha256 = "1anrdc30yi9pb67642flmn7w82q37cnc45r9bh15mpbc66yk3kzz"; }; buildInputs = [ openssl zlib ncurses ]; diff --git a/pkgs/tools/networking/slack-cli/default.nix b/pkgs/tools/networking/slack-cli/default.nix new file mode 100644 index 000000000000..18f192d3535f --- /dev/null +++ b/pkgs/tools/networking/slack-cli/default.nix @@ -0,0 +1,48 @@ +# slack-cli must be configured using the SLACK_CLI_TOKEN environment variable. +# Using `slack init` will not work because it tries to write to the Nix store. +# +# There is no reason that we couldn't change the file path that slack-cli uses +# for token storage, except that it would make the Nix package inconsistent with +# upstream and other distributions. + +{ stdenv, lib, writeShellScriptBin, fetchFromGitHub, curl, jq }: + +stdenv.mkDerivation rec { + name = "slack-cli-${version}"; + version = "0.18.0"; + + src = fetchFromGitHub { + owner = "rockymadden"; + repo = "slack-cli"; + rev = "v${version}"; + sha256 = "022yr3cpfg0v7cxi62zzk08vp0l3w851qpfh6amyfgjiynnfyddl"; + }; + + dontBuild = true; + + installPhase = '' + mkdir -p "$out/bin" + cp src/slack "$out/bin/.slack-wrapped" + + cat <<-WRAPPER > "$out/bin/slack" + #!${stdenv.shell} + [ "\$1" = "init" -a -z "\$SLACK_CLI_TOKEN" ] && cat <<-'MESSAGE' >&2 + WARNING: slack-cli must be configured using the SLACK_CLI_TOKEN + environment variable. Using \`slack init\` will not work because it tries + to write to the Nix store. + + MESSAGE + + export PATH=${lib.makeBinPath [ curl jq ]}:"\$PATH" + exec "$out/bin/.slack-wrapped" "\$@" + WRAPPER + + chmod +x "$out/bin/slack" + ''; + + meta = { + license = lib.licenses.mit; + maintainers = [ lib.maintainers.qyliss ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/tools/networking/wireguard-tools/default.nix b/pkgs/tools/networking/wireguard-tools/default.nix index d2b124bf1a18..96e2a094ac0a 100644 --- a/pkgs/tools/networking/wireguard-tools/default.nix +++ b/pkgs/tools/networking/wireguard-tools/default.nix @@ -4,11 +4,11 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "wireguard-tools-${version}"; - version = "0.0.20180802"; + version = "0.0.20180809"; src = fetchzip { url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz"; - sha256 = "1bz9hk3h57r160hxzwa942xkczhgrpwni9sr7gswrkfv3n0as3fa"; + sha256 = "07sbaignf8l4lndfxypgacaf2qmgyfkv1j5z7kn0cw5mgfsphmkx"; }; sourceRoot = "source/src/tools"; diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 2302476eb918..56bfdb046a8c 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -132,7 +132,7 @@ in rec { url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz"; sha256 = "0ca5782fc37d62238d13a620a7b4bff6a200bab1bd63003709249a776162357c"; }; - }) // { perl-bindings = nixStable; }; + }) // { perl-bindings = nix1; }; nixStable = (common rec { name = "nix-2.0.4"; diff --git a/pkgs/tools/security/aws-iam-authenticator/default.nix b/pkgs/tools/security/aws-iam-authenticator/default.nix new file mode 100644 index 000000000000..39c0c02890bd --- /dev/null +++ b/pkgs/tools/security/aws-iam-authenticator/default.nix @@ -0,0 +1,27 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +{ stdenv, buildGoPackage, fetchgit }: + +buildGoPackage rec { + name = "aws-iam-authenticator-${version}"; + # This is meant to be a stable release, but since the rename from + # heptio, there has been no release. Please pin this to an actual + # release once that happens. + version = "2018-07-29"; + rev = "01dd27d77ec1e2ec640a010970f00b2f8074b0b5"; + + goPackagePath = "github.com/kubernetes-sigs/aws-iam-authenticator"; + + src = fetchgit { + inherit rev; + url = "https://github.com/kubernetes-sigs/aws-iam-authenticator"; + sha256 = "1n7khd2qvl527x3ac6f89smf12za92g08d9v2j393i7n9l1rgw38"; + }; + + meta = { + homepage = "https://github.com/kubernetes-sigs/aws-iam-authenticator"; + description = "AWS IAM credentials for Kubernetes authentication"; + license = stdenv.lib.licenses.asl20; + platforms = stdenv.lib.platforms.all; + maintainers = [ stdenv.lib.maintainers.srhb ]; + }; +} diff --git a/pkgs/tools/security/spectre-meltdown-checker/default.nix b/pkgs/tools/security/spectre-meltdown-checker/default.nix index 4d90289f3f35..c406316940e4 100644 --- a/pkgs/tools/security/spectre-meltdown-checker/default.nix +++ b/pkgs/tools/security/spectre-meltdown-checker/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "spectre-meltdown-checker-${version}"; - version = "0.38"; + version = "0.39"; src = fetchFromGitHub { owner = "speed47"; repo = "spectre-meltdown-checker"; rev = "v${version}"; - sha256 = "151w68i0bhryij79s9xny8wh2256zayc5gyrj0s5nwnhl9yxz0f1"; + sha256 = "1llp6iyvbykn9w7vnz1jklmy6gmbksk234b46mzjfvg7mvg91dc5"; }; prePatch = '' @@ -19,16 +19,20 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; installPhase = with stdenv.lib; '' - install -D spectre-meltdown-checker.sh $out/bin/spectre-meltdown-checker + runHook preInstall + + install -Dm755 spectre-meltdown-checker.sh $out/bin/spectre-meltdown-checker wrapProgram $out/bin/spectre-meltdown-checker \ --prefix PATH : ${makeBinPath [ binutils-unwrapped ]} + + runHook postInstall ''; meta = with stdenv.lib; { description = "Spectre & Meltdown vulnerability/mitigation checker for Linux"; homepage = https://github.com/speed47/spectre-meltdown-checker; license = licenses.gpl3; - platforms = platforms.linux; maintainers = with maintainers; [ dotlambda ]; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/security/ssdeep/default.nix b/pkgs/tools/security/ssdeep/default.nix index 50b16ad58399..1ff9c73d8b58 100644 --- a/pkgs/tools/security/ssdeep/default.nix +++ b/pkgs/tools/security/ssdeep/default.nix @@ -1,24 +1,21 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchFromGitHub, autoreconfHook }: stdenv.mkDerivation rec { name = "ssdeep-${version}"; - version = "2.13"; + version = "2.14.1"; - src = fetchurl { - url = "mirror://sourceforge/ssdeep/${name}.tar.gz"; - sha256 = "1igqy0j7jrklb8fdlrm6ald4cyl1fda5ipfl8crzyl6bax2ajk3f"; + src = fetchFromGitHub { + owner = "ssdeep-project"; + repo = "ssdeep"; + rev = "release-${version}"; + sha256 = "1yx6yjkggshw5yl89m4kvyzarjdg2l3hs0bbjbrfzwp1lkfd8i0c"; }; + nativeBuildInputs = [ autoreconfHook ]; + # Hack to avoid TMPDIR in RPATHs. preFixup = ''rm -rf "$(pwd)" ''; - # For some reason (probably a build system bug), the binary isn't - # properly linked to $out/lib to find libfuzzy.so - postFixup = stdenv.lib.optionalString (!stdenv.isDarwin) '' - rp=$(patchelf --print-rpath $out/bin/ssdeep) - patchelf --set-rpath $rp:$out/lib $out/bin/ssdeep - ''; - meta = { description = "A program for calculating fuzzy hashes"; homepage = "http://www.ssdeep.sf.net"; diff --git a/pkgs/tools/system/cron/default.nix b/pkgs/tools/system/cron/default.nix index d6347798053b..374f0ac19d89 100644 --- a/pkgs/tools/system/cron/default.nix +++ b/pkgs/tools/system/cron/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation { hardeningEnable = [ "pie" ]; preBuild = '' - # do not set sticky bit in /nix/store + # do not set sticky bit in /nix/store substituteInPlace Makefile --replace ' -o root' ' ' --replace 111 755 --replace 4755 0755 # do not strip during install, broken on cross and we'll do ourselves as needed substituteInPlace Makefile --replace ' -s cron' ' cron' @@ -36,8 +36,9 @@ stdenv.mkDerivation { preInstall = "mkdir -p $out/bin $out/sbin $out/share/man/man1 $out/share/man/man5 $out/share/man/man8"; - meta = { + meta = with stdenv.lib; { description = "Daemon for running commands at specific times (Vixie Cron)"; - platforms = with stdenv.lib.platforms; linux ++ darwin; + license = licenses.bsd0; + platforms = with platforms; linux ++ darwin; }; } diff --git a/pkgs/tools/system/rofi-systemd/default.nix b/pkgs/tools/system/rofi-systemd/default.nix new file mode 100644 index 000000000000..ee7626d27126 --- /dev/null +++ b/pkgs/tools/system/rofi-systemd/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchFromGitHub, rofi, systemd, coreutils, utillinux, gawk, makeWrapper +}: + +stdenv.mkDerivation rec { + name = "rofi-systemd-${version}"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "IvanMalison"; + repo = "rofi-systemd"; + rev = "v${version}"; + sha256 = "1dbygq3qaj1f73hh3njdnmibq7vi6zbyzdc6c0j989c0r1ksv0zi"; + }; + + buildInputs = [ makeWrapper ]; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/bin + cp -a rofi-systemd $out/bin/rofi-systemd + ''; + + wrapperPath = with stdenv.lib; makeBinPath [ + rofi + coreutils + utillinux + gawk + systemd + ]; + + fixupPhase = '' + patchShebangs $out/bin + + wrapProgram $out/bin/rofi-systemd --prefix PATH : "${wrapperPath}" + ''; + + meta = { + description = "Control your systemd units using rofi"; + homepage = https://github.com/IvanMalison/rofi-systemd; + maintainers = with stdenv.lib.maintainers; [ imalison ]; + license = stdenv.lib.licenses.gpl3; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/tools/text/diffutils/default.nix b/pkgs/tools/text/diffutils/default.nix index 60628e2139ce..fff81fbc860a 100644 --- a/pkgs/tools/text/diffutils/default.nix +++ b/pkgs/tools/text/diffutils/default.nix @@ -20,9 +20,10 @@ stdenv.mkDerivation rec { stdenv.lib.optional (coreutils != null) "PR_PROGRAM=${coreutils}/bin/pr" ++ stdenv.lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "gl_cv_func_getopt_gnu=yes"; - meta = { + meta = with stdenv.lib; { homepage = http://www.gnu.org/software/diffutils/diffutils.html; description = "Commands for showing the differences between files (diff, cmp, etc.)"; - platforms = stdenv.lib.platforms.unix; + license = licenses.gpl3; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/virtualization/cri-tools/default.nix b/pkgs/tools/virtualization/cri-tools/default.nix index 120727f3873d..f57befce3081 100644 --- a/pkgs/tools/virtualization/cri-tools/default.nix +++ b/pkgs/tools/virtualization/cri-tools/default.nix @@ -1,4 +1,4 @@ -{ buildGoPackage, fetchurl }: +{ buildGoPackage, fetchurl, lib }: buildGoPackage { name = "cri-tools-1.0.0-alpha.0"; @@ -10,6 +10,10 @@ buildGoPackage goPackagePath = "github.com/kubernetes-incubator/cri-tools"; subPackages = [ "cmd/crictl" "cmd/critest" ]; + meta = { + license = lib.licenses.asl20; + }; + goDeps = ./deps.nix; } |