diff options
Diffstat (limited to 'pkgs/tools')
53 files changed, 970 insertions, 113 deletions
diff --git a/pkgs/tools/X11/xidlehook/default.nix b/pkgs/tools/X11/xidlehook/default.nix index 733a8eb630dd..e22338dbc718 100644 --- a/pkgs/tools/X11/xidlehook/default.nix +++ b/pkgs/tools/X11/xidlehook/default.nix @@ -1,19 +1,21 @@ -{ lib, rustPlatform, fetchFromGitHub, x11, xorg, libpulseaudio, pkgconfig, patchelf -, stdenv}: +{ lib, stdenv, rustPlatform, fetchFromGitHub, x11, xorg, libpulseaudio, pkgconfig, patchelf }: rustPlatform.buildRustPackage rec { name = "xidlehook-${version}"; - version = "0.4.6"; + version = "0.4.8"; + + doCheck = false; src = fetchFromGitHub { owner = "jD91mZM2"; repo = "xidlehook"; rev = version; - sha256 = "0h84ichm1v2wdmm4w1n7jr70yfb9hhi7kykvd99ppg00h1x9lr7w"; + sha256 = "1125n5szgq7bziz3lkrhb2a2iac93ap63g2xr78ap7b9i3gxs3xh"; }; - cargoSha256 = "0a1bl6fnfw6xy71q3b5zij52p9skylj1ivqj8my44bfsid2qfn7d"; + cargoBuildFlags = lib.optionals (!stdenv.isLinux) ["--no-default-features" "--features" "pulse"]; + cargoSha256 = "1mrg59flmmqg5wwi2l8lw6p1xpgdw597fdfsmpn8b126rgzqmjl8"; buildInputs = [ x11 xorg.libXScrnSaver libpulseaudio ]; nativeBuildInputs = [ pkgconfig patchelf ]; diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix index f8174a03cacf..279b2e8321a4 100644 --- a/pkgs/tools/X11/xpra/default.nix +++ b/pkgs/tools/X11/xpra/default.nix @@ -12,11 +12,11 @@ let inherit (python2Packages) python cython buildPythonApplication; in buildPythonApplication rec { name = "xpra-${version}"; - version = "2.3"; + version = "2.3.1"; src = fetchurl { url = "http://xpra.org/src/${name}.tar.xz"; - sha256 = "0kq0ambpy8r7m3wxdp79cgxgnl9yfmr19lv88f617gnv0sp0aarp"; + sha256 = "0wghjmrw77pkh6agc5rz7ynr6s8yyc68qvj9rnp0vlwa3x1fl3ry"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/tools/admin/certbot/default.nix b/pkgs/tools/admin/certbot/default.nix index 7a26896bbc28..353abe9c8bca 100644 --- a/pkgs/tools/admin/certbot/default.nix +++ b/pkgs/tools/admin/certbot/default.nix @@ -42,6 +42,8 @@ pythonPackages.buildPythonApplication rec { done ''; + doCheck = !stdenv.isDarwin; # On Hydra Darwin tests fail with "Too many open files". + meta = with stdenv.lib; { homepage = src.meta.homepage; description = "ACME client that can obtain certs and extensibly update server configurations"; diff --git a/pkgs/tools/backup/znapzend/default.nix b/pkgs/tools/backup/znapzend/default.nix index 796a34c253a9..f78c300afd0a 100644 --- a/pkgs/tools/backup/znapzend/default.nix +++ b/pkgs/tools/backup/znapzend/default.nix @@ -1,6 +1,23 @@ -{ stdenv, fetchFromGitHub, zfs, mbuffer, perl, perlPackages, wget, autoconf, automake }: +{ stdenv, fetchFromGitHub, fetchurl, zfs, mbuffer, perl, perlPackages, wget, autoconf, automake }: let + # when upgrade znapzend, check versions of Perl libs here: https://github.com/oetiker/znapzend/blob/master/PERL_MODULES + Mojolicious-6-46 = perlPackages.buildPerlPackage rec { + name = "Mojolicious-6.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/${name}.tar.gz"; + sha256 = "0i3axmx4506fx5gms148pj65x6ys7flaz1aqjd8hd9zfkd8pzdfr"; + }; + }; + MojoIOLoopForkCall-0-17 = perlPackages.buildPerlModule rec { + name = "Mojo-IOLoop-ForkCall-0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/${name}.tar.gz"; + sha256 = "090qxz1nbah2qxvfg4whl6yp6q03qkx7a42751iai521nk1yavc8"; + }; + propagatedBuildInputs = [ perlPackages.IOPipely Mojolicious-6-46 ]; + }; + version = "0.18.0"; checksum = "1nlvw56viwgafma506slywfg54z6009jmzc9q6wljgr6mqfmmchd"; in @@ -14,9 +31,7 @@ stdenv.mkDerivation rec { sha256 = checksum; }; - buildInputs = [ perl perlPackages.TestHarness perlPackages.Mojolicious - perlPackages.TAPParserSourceHandlerpgTAP perlPackages.MojoIOLoopForkCall - perlPackages.IOPipely wget ]; + buildInputs = [ wget perl perlPackages.TestHarness MojoIOLoopForkCall-0-17 perlPackages.TAPParserSourceHandlerpgTAP ]; nativeBuildInputs = [ autoconf automake ]; @@ -38,25 +53,25 @@ stdenv.mkDerivation rec { substituteInPlace $out/bin/znapzend --replace "${perl}/bin/perl" \ "${perl}/bin/perl \ -I${perlPackages.TestHarness}/${perl.libPrefix} \ - -I${perlPackages.Mojolicious}/${perl.libPrefix} \ + -I${Mojolicious-6-46}/${perl.libPrefix} \ -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \ - -I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \ + -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \ -I${perlPackages.IOPipely}/${perl.libPrefix} \ " substituteInPlace $out/bin/znapzendzetup --replace "${perl}/bin/perl" \ "${perl}/bin/perl \ -I${perlPackages.TestHarness}/${perl.libPrefix} \ - -I${perlPackages.Mojolicious}/${perl.libPrefix} \ + -I${Mojolicious-6-46}/${perl.libPrefix} \ -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \ - -I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \ + -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \ -I${perlPackages.IOPipely}/${perl.libPrefix} \ " substituteInPlace $out/bin/znapzendztatz --replace "${perl}/bin/perl" \ "${perl}/bin/perl \ -I${perlPackages.TestHarness}/${perl.libPrefix} \ - -I${perlPackages.Mojolicious}/${perl.libPrefix} \ + -I${Mojolicious-6-46}/${perl.libPrefix} \ -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \ - -I${perlPackages.MojoIOLoopForkCall}/${perl.libPrefix} \ + -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \ -I${perlPackages.IOPipely}/${perl.libPrefix} \ " ''; diff --git a/pkgs/tools/cd-dvd/unetbootin/default.nix b/pkgs/tools/cd-dvd/unetbootin/default.nix index 7deac71f1512..502937dd565b 100644 --- a/pkgs/tools/cd-dvd/unetbootin/default.nix +++ b/pkgs/tools/cd-dvd/unetbootin/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "unetbootin-${version}"; - version = "657"; + version = "661"; src = fetchFromGitHub { owner = "unetbootin"; repo = "unetbootin"; rev = version; - sha256 = "18bbcrjk6ladr46kl3dvqz5pq2xcv4nnwmajqllb4sl3k1xqsngy"; + sha256 = "0jwmmym86x9hc6yr619dxdbxdawx8x0zwld0dfrhzwxvwbqbpav5"; }; setSourceRoot = '' diff --git a/pkgs/tools/compression/xar/default.nix b/pkgs/tools/compression/xar/default.nix index 01d18fe6ad7d..69d4284b795d 100644 --- a/pkgs/tools/compression/xar/default.nix +++ b/pkgs/tools/compression/xar/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, libxml2, openssl, zlib, bzip2, musl-fts }: +{ stdenv, fetchurl, libxml2, openssl, zlib, bzip2, fts }: stdenv.mkDerivation rec { version = "1.6.1"; @@ -9,8 +9,7 @@ stdenv.mkDerivation rec { sha256 = "0ghmsbs6xwg1092v7pjcibmk5wkyifwxw6ygp08gfz25d2chhipf"; }; - buildInputs = [ libxml2 openssl zlib bzip2 ] - ++ stdenv.lib.optional stdenv.hostPlatform.isMusl musl-fts; + buildInputs = [ libxml2 openssl zlib bzip2 fts ]; meta = { homepage = https://mackyle.github.io/xar/; diff --git a/pkgs/tools/filesystems/genimage/default.nix b/pkgs/tools/filesystems/genimage/default.nix index 792b2e2c75b4..b39c51a0c881 100644 --- a/pkgs/tools/filesystems/genimage/default.nix +++ b/pkgs/tools/filesystems/genimage/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libconfuse }: +{ stdenv, fetchurl, pkgconfig, libconfuse, gettext }: stdenv.mkDerivation rec { name = "genimage-${version}"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libconfuse ]; + buildInputs = [ libconfuse gettext ]; postInstall = '' # As there is no manpage or built-in --help, add the README file for diff --git a/pkgs/tools/filesystems/securefs/default.nix b/pkgs/tools/filesystems/securefs/default.nix index 6fc7ba6499ea..37eb8b9aa72c 100644 --- a/pkgs/tools/filesystems/securefs/default.nix +++ b/pkgs/tools/filesystems/securefs/default.nix @@ -4,10 +4,10 @@ stdenv.mkDerivation rec { name = "securefs-${version}"; - version = "0.8.1"; + version = "0.8.2"; src = fetchFromGitHub { - sha256 = "065n3mskv0b2dlk9w4b3pa70h5ymrnanydbanwyx74mf7n8c80r2"; + sha256 = "0m3nv748g31b5nzxbwqqqjvygmz41x9vmhrjh655086g26gzrfib"; rev = version; repo = "securefs"; owner = "netheril96"; diff --git a/pkgs/tools/filesystems/squashfs/darwin.patch b/pkgs/tools/filesystems/squashfs/darwin.patch new file mode 100644 index 000000000000..6022e65be479 --- /dev/null +++ b/pkgs/tools/filesystems/squashfs/darwin.patch @@ -0,0 +1,431 @@ +diff --git a/squashfs-tools/action.c b/squashfs-tools/action.c +index 4b06ccb..26365e7 100644 +--- a/squashfs-tools/action.c ++++ b/squashfs-tools/action.c +@@ -38,6 +38,10 @@ + #include <limits.h> + #include <errno.h> + ++#ifndef FNM_EXTMATCH /* glibc extension */ ++ #define FNM_EXTMATCH 0 ++#endif ++ + #include "squashfs_fs.h" + #include "mksquashfs.h" + #include "action.h" +@@ -2284,9 +2288,12 @@ static char *get_start(char *s, int n) + + static int subpathname_fn(struct atom *atom, struct action_data *action_data) + { +- return fnmatch(atom->argv[0], get_start(strdupa(action_data->subpath), ++ char *path = strdup(action_data->subpath); ++ int is_match = fnmatch(atom->argv[0], get_start(path, + count_components(atom->argv[0])), + FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) == 0; ++ free(path); ++ return is_match; + } + + /* +diff --git a/squashfs-tools/info.c b/squashfs-tools/info.c +index 7968c77..c8e4c52 100644 +--- a/squashfs-tools/info.c ++++ b/squashfs-tools/info.c +@@ -134,31 +134,22 @@ void dump_state() + void *info_thrd(void *arg) + { + sigset_t sigmask; +- struct timespec timespec = { .tv_sec = 1, .tv_nsec = 0 }; +- int sig, waiting = 0; ++ int sig, err, waiting = 0; + + sigemptyset(&sigmask); + sigaddset(&sigmask, SIGQUIT); + sigaddset(&sigmask, SIGHUP); ++ sigaddset(&sigmask, SIGALRM); + + while(1) { +- if(waiting) +- sig = sigtimedwait(&sigmask, NULL, ×pec); +- else +- sig = sigwaitinfo(&sigmask, NULL); ++ err = sigwait(&sigmask, &sig); + +- if(sig == -1) { ++ if(err == -1) { + switch(errno) { +- case EAGAIN: +- /* interval timed out */ +- waiting = 0; +- /* FALLTHROUGH */ + case EINTR: +- /* if waiting, the wait will be longer, but +- that's OK */ + continue; + default: +- BAD_ERROR("sigtimedwait/sigwaitinfo failed " ++ BAD_ERROR("sigwaitfailed " + "because %s\n", strerror(errno)); + } + } +@@ -169,8 +160,12 @@ void *info_thrd(void *arg) + /* set one second interval period, if ^\ received + within then, dump queue and cache status */ + waiting = 1; +- } else ++ alarm(1); ++ } else if (sig == SIGQUIT) { + dump_state(); ++ } else if (sig == SIGALRM) { ++ waiting = 0; ++ } + } + } + +diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c +index d696a51..c86d1b3 100644 +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -50,6 +50,10 @@ + #include <limits.h> + #include <ctype.h> + ++#ifndef FNM_EXTMATCH /* glibc extension */ ++ #define FNM_EXTMATCH 0 ++#endif ++ + #ifndef linux + #define __BYTE_ORDER BYTE_ORDER + #define __BIG_ENDIAN BIG_ENDIAN +@@ -831,13 +835,13 @@ char *subpathname(struct dir_ent *dir_ent) + } + + +-inline unsigned int get_inode_no(struct inode_info *inode) ++static inline unsigned int get_inode_no(struct inode_info *inode) + { + return inode->inode_number; + } + + +-inline unsigned int get_parent_no(struct dir_info *dir) ++static inline unsigned int get_parent_no(struct dir_info *dir) + { + return dir->depth ? get_inode_no(dir->dir_ent->inode) : inode_no; + } +@@ -2030,7 +2034,7 @@ struct file_info *duplicate(long long file_size, long long bytes, + } + + +-inline int is_fragment(struct inode_info *inode) ++static inline int is_fragment(struct inode_info *inode) + { + off_t file_size = inode->buf.st_size; + +@@ -2999,13 +3003,13 @@ struct inode_info *lookup_inode2(struct stat *buf, int pseudo, int id) + } + + +-inline struct inode_info *lookup_inode(struct stat *buf) ++static inline struct inode_info *lookup_inode(struct stat *buf) + { + return lookup_inode2(buf, 0, 0); + } + + +-inline void alloc_inode_no(struct inode_info *inode, unsigned int use_this) ++static inline void alloc_inode_no(struct inode_info *inode, unsigned int use_this) + { + if (inode->inode_number == 0) { + inode->inode_number = use_this ? : inode_no ++; +@@ -3016,7 +3020,7 @@ inline void alloc_inode_no(struct inode_info *inode, unsigned int use_this) + } + + +-inline struct dir_ent *create_dir_entry(char *name, char *source_name, ++static inline struct dir_ent *create_dir_entry(char *name, char *source_name, + char *nonstandard_pathname, struct dir_info *dir) + { + struct dir_ent *dir_ent = malloc(sizeof(struct dir_ent)); +@@ -3034,7 +3038,7 @@ inline struct dir_ent *create_dir_entry(char *name, char *source_name, + } + + +-inline void add_dir_entry(struct dir_ent *dir_ent, struct dir_info *sub_dir, ++static inline void add_dir_entry(struct dir_ent *dir_ent, struct dir_info *sub_dir, + struct inode_info *inode_info) + { + struct dir_info *dir = dir_ent->our_dir; +@@ -3050,7 +3054,7 @@ inline void add_dir_entry(struct dir_ent *dir_ent, struct dir_info *sub_dir, + } + + +-inline void add_dir_entry2(char *name, char *source_name, ++static inline void add_dir_entry2(char *name, char *source_name, + char *nonstandard_pathname, struct dir_info *sub_dir, + struct inode_info *inode_info, struct dir_info *dir) + { +@@ -3062,7 +3066,7 @@ inline void add_dir_entry2(char *name, char *source_name, + } + + +-inline void free_dir_entry(struct dir_ent *dir_ent) ++static inline void free_dir_entry(struct dir_ent *dir_ent) + { + if(dir_ent->name) + free(dir_ent->name); +@@ -3083,7 +3087,7 @@ inline void free_dir_entry(struct dir_ent *dir_ent) + } + + +-inline void add_excluded(struct dir_info *dir) ++static inline void add_excluded(struct dir_info *dir) + { + dir->excluded ++; + } +@@ -4200,6 +4204,7 @@ void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq, + sigemptyset(&sigmask); + sigaddset(&sigmask, SIGQUIT); + sigaddset(&sigmask, SIGHUP); ++ sigaddset(&sigmask, SIGALRM); + if(pthread_sigmask(SIG_BLOCK, &sigmask, NULL) == -1) + BAD_ERROR("Failed to set signal mask in intialise_threads\n"); + +@@ -4987,6 +4992,36 @@ int parse_num(char *arg, int *res) + + int get_physical_memory() + { ++ int phys_mem; ++#ifndef linux ++ #ifdef HW_MEMSIZE ++ #define SYSCTL_PHYSMEM HW_MEMSIZE ++ #elif defined(HW_PHYSMEM64) ++ #define SYSCTL_PHYSMEM HW_PHYSMEM64 ++ #else ++ #define SYSCTL_PHYSMEM HW_PHYSMEM ++ #endif ++ ++ int mib[2]; ++ uint64_t sysctl_physmem = 0; ++ size_t sysctl_len = sizeof(sysctl_physmem); ++ ++ mib[0] = CTL_HW; ++ mib[1] = SYSCTL_PHYSMEM; ++ ++ if(sysctl(mib, 2, &sysctl_physmem, &sysctl_len, NULL, 0) == 0) { ++ /* some systems use 32-bit values, work with what we're given */ ++ if (sysctl_len == 4) ++ sysctl_physmem = *(uint32_t*)&sysctl_physmem; ++ phys_mem = sysctl_physmem >> 20; ++ } else { ++ ERROR_START("Failed to get amount of available " ++ "memory."); ++ ERROR_EXIT(" Defaulting to least viable amount\n"); ++ phys_mem = SQUASHFS_LOWMEM; ++ } ++ #undef SYSCTL_PHYSMEM ++#else + /* + * Long longs are used here because with PAE, a 32-bit + * machine can have more than 4GB of physical memory +@@ -4996,10 +5031,11 @@ int get_physical_memory() + */ + long long num_pages = sysconf(_SC_PHYS_PAGES); + long long page_size = sysconf(_SC_PAGESIZE); +- int phys_mem = num_pages * page_size >> 20; ++ phys_mem = num_pages * page_size >> 20; + + if(num_pages == -1 || page_size == -1) + return 0; ++#endif + + if(phys_mem < SQUASHFS_LOWMEM) + BAD_ERROR("Mksquashfs requires more physical memory than is " +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h +index 55708a3..d44d1fd 100644 +--- a/squashfs-tools/mksquashfs.h ++++ b/squashfs-tools/mksquashfs.h +@@ -24,6 +24,7 @@ + * mksquashfs.h + * + */ ++#include <pthread.h> + + struct dir_info { + char *pathname; +diff --git a/squashfs-tools/pseudo.c b/squashfs-tools/pseudo.c +index cb74cf6..fe2b4bc 100644 +--- a/squashfs-tools/pseudo.c ++++ b/squashfs-tools/pseudo.c +@@ -30,6 +30,7 @@ + #include <errno.h> + #include <string.h> + #include <stdlib.h> ++#include <sys/stat.h> + #include <sys/types.h> + #include <sys/wait.h> + #include <sys/stat.h> +diff --git a/squashfs-tools/read_xattrs.c b/squashfs-tools/read_xattrs.c +index 42106f5..837d3fb 100644 +--- a/squashfs-tools/read_xattrs.c ++++ b/squashfs-tools/read_xattrs.c +@@ -39,13 +39,13 @@ + #include <endian.h> + #endif + ++#include <stdlib.h> ++ + #include "squashfs_fs.h" + #include "squashfs_swap.h" + #include "xattr.h" + #include "error.h" + +-#include <stdlib.h> +- + extern int read_fs_bytes(int, long long, int, void *); + extern int read_block(int, long long, long long *, int, void *); + +diff --git a/squashfs-tools/unsquashfs.c b/squashfs-tools/unsquashfs.c +index f190e96..927e441 100644 +--- a/squashfs-tools/unsquashfs.c ++++ b/squashfs-tools/unsquashfs.c +@@ -32,7 +32,12 @@ + #include "stdarg.h" + #include "fnmatch_compat.h" + ++#ifndef linux ++#include <sys/sysctl.h> ++#else + #include <sys/sysinfo.h> ++#endif ++ + #include <sys/types.h> + #include <sys/time.h> + #include <sys/resource.h> +@@ -2185,6 +2190,7 @@ void initialise_threads(int fragment_buffer_size, int data_buffer_size) + sigemptyset(&sigmask); + sigaddset(&sigmask, SIGQUIT); + sigaddset(&sigmask, SIGHUP); ++ sigaddset(&sigmask, SIGALRM); + if(pthread_sigmask(SIG_BLOCK, &sigmask, NULL) == -1) + EXIT_UNSQUASH("Failed to set signal mask in initialise_threads" + "\n"); +diff --git a/squashfs-tools/unsquashfs.h b/squashfs-tools/unsquashfs.h +index 0edbd25..cea9caa 100644 +--- a/squashfs-tools/unsquashfs.h ++++ b/squashfs-tools/unsquashfs.h +@@ -46,6 +46,10 @@ + #include <sys/ioctl.h> + #include <sys/time.h> + ++#ifndef FNM_EXTMATCH /* glibc extension */ ++ #define FNM_EXTMATCH 0 ++#endif ++ + #ifndef linux + #define __BYTE_ORDER BYTE_ORDER + #define __BIG_ENDIAN BIG_ENDIAN +diff --git a/squashfs-tools/unsquashfs_info.c b/squashfs-tools/unsquashfs_info.c +index c8e2b9b..7d4f7af 100644 +--- a/squashfs-tools/unsquashfs_info.c ++++ b/squashfs-tools/unsquashfs_info.c +@@ -97,31 +97,22 @@ void dump_state() + void *info_thrd(void *arg) + { + sigset_t sigmask; +- struct timespec timespec = { .tv_sec = 1, .tv_nsec = 0 }; +- int sig, waiting = 0; ++ int sig, err, waiting = 0; + + sigemptyset(&sigmask); + sigaddset(&sigmask, SIGQUIT); + sigaddset(&sigmask, SIGHUP); ++ sigaddset(&sigmask, SIGALRM); + + while(1) { +- if(waiting) +- sig = sigtimedwait(&sigmask, NULL, ×pec); +- else +- sig = sigwaitinfo(&sigmask, NULL); ++ err = sigwait(&sigmask, &sig); + +- if(sig == -1) { ++ if(err == -1) { + switch(errno) { +- case EAGAIN: +- /* interval timed out */ +- waiting = 0; +- /* FALLTHROUGH */ + case EINTR: +- /* if waiting, the wait will be longer, but +- that's OK */ + continue; + default: +- BAD_ERROR("sigtimedwait/sigwaitinfo failed " ++ BAD_ERROR("sigwait failed " + "because %s\n", strerror(errno)); + } + } +@@ -133,8 +124,12 @@ void *info_thrd(void *arg) + /* set one second interval period, if ^\ received + within then, dump queue and cache status */ + waiting = 1; +- } else ++ alarm(1); ++ } else if (sig == SIGQUIT) { + dump_state(); ++ } else if (sig == SIGALRM) { ++ waiting = 0; ++ } + } + } + +diff --git a/squashfs-tools/unsquashfs_xattr.c b/squashfs-tools/unsquashfs_xattr.c +index 59f4aae..13f0e35 100644 +--- a/squashfs-tools/unsquashfs_xattr.c ++++ b/squashfs-tools/unsquashfs_xattr.c +@@ -27,6 +27,11 @@ + + #include <sys/xattr.h> + ++#ifdef XATTR_NOFOLLOW /* Apple's xattrs */ ++ #define lsetxattr(path_, name_, val_, sz_, flags_) \ ++ setxattr(path_, name_, val_, sz_, 0, flags_ | XATTR_NOFOLLOW) ++#endif ++ + #define NOSPACE_MAX 10 + + extern int root_process; +diff --git a/squashfs-tools/xattr.c b/squashfs-tools/xattr.c +index b46550c..5b32eca 100644 +--- a/squashfs-tools/xattr.c ++++ b/squashfs-tools/xattr.c +@@ -22,6 +22,14 @@ + * xattr.c + */ + ++#ifndef linux ++#define __BYTE_ORDER BYTE_ORDER ++#define __BIG_ENDIAN BIG_ENDIAN ++#define __LITTLE_ENDIAN LITTLE_ENDIAN ++#else ++#include <endian.h> ++#endif ++ + #define TRUE 1 + #define FALSE 0 + +@@ -36,6 +44,13 @@ + #include <stdlib.h> + #include <sys/xattr.h> + ++#ifdef XATTR_NOFOLLOW /* Apple's xattrs */ ++ #define llistxattr(path_, buf_, sz_) \ ++ listxattr(path_, buf_, sz_, XATTR_NOFOLLOW) ++ #define lgetxattr(path_, name_, val_, sz_) \ ++ getxattr(path_, name_, val_, sz_, 0, XATTR_NOFOLLOW) ++#endif ++ + #include "squashfs_fs.h" + #include "squashfs_swap.h" + #include "mksquashfs.h" diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix index a7f4e85eb34f..d5bcd912c957 100644 --- a/pkgs/tools/filesystems/squashfs/default.nix +++ b/pkgs/tools/filesystems/squashfs/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { ./0001-If-SOURCE_DATE_EPOCH-is-set-override-timestamps-with.patch ./0002-If-SOURCE_DATE_EPOCH-is-set-also-clamp-content-times.patch ./0003-remove-frag-deflator-thread.patch - ]; + ] ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch; buildInputs = [ zlib xz ] ++ stdenv.lib.optional lz4Support lz4; @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://squashfs.sourceforge.net/; description = "Tool for creating and unpacking squashfs filesystems"; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; license = stdenv.lib.licenses.gpl2Plus; maintainers = with stdenv.lib.maintainers; [ ruuda ]; }; diff --git a/pkgs/tools/graphics/dcraw/default.nix b/pkgs/tools/graphics/dcraw/default.nix index 0223375a0884..44ad267f9d4e 100644 --- a/pkgs/tools/graphics/dcraw/default.nix +++ b/pkgs/tools/graphics/dcraw/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, libjpeg, lcms2, gettext, jasper }: stdenv.mkDerivation rec { - name = "dcraw-9.27.0"; + name = "dcraw-9.28.0"; src = fetchurl { url = "http://www.cybercom.net/~dcoffin/dcraw/archive/${name}.tar.gz"; - sha256 = "16bhk3pl5kb9ikv367szl8m92nx85rqypz5im8x3sakm357wrn61"; + sha256 = "1fdl3xa1fbm71xzc3760rsjkvf0x5jdjrvdzyg2l9ka24vdc7418"; }; buildInputs = [ libjpeg lcms2 gettext jasper ]; diff --git a/pkgs/tools/graphics/gnuplot/default.nix b/pkgs/tools/graphics/gnuplot/default.nix index b2b8508640bf..0a4ebf495b24 100644 --- a/pkgs/tools/graphics/gnuplot/default.nix +++ b/pkgs/tools/graphics/gnuplot/default.nix @@ -20,11 +20,11 @@ let withX = libX11 != null && !aquaterm && !stdenv.isDarwin; in stdenv.mkDerivation rec { - name = "gnuplot-5.2.3"; + name = "gnuplot-5.2.4"; src = fetchurl { url = "mirror://sourceforge/gnuplot/${name}.tar.gz"; - sha256 = "0977vgjszjpqhz2jahq07zmcmi0k9d6v7wq70ph2klfrb29qrdgy"; + sha256 = "1jvh8xmd2cvrhlsg88kxwh55wkwx31sg50v1n59slfippl0g058m"; }; nativeBuildInputs = [ makeWrapper pkgconfig texinfo ] ++ lib.optional withQt qttools; diff --git a/pkgs/tools/graphics/pdfredacttools/default.nix b/pkgs/tools/graphics/pdfredacttools/default.nix new file mode 100644 index 000000000000..d66c0b0a9451 --- /dev/null +++ b/pkgs/tools/graphics/pdfredacttools/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchFromGitHub, pythonPackages, imagemagick, exiftool, file, ghostscript }: + +pythonPackages.buildPythonApplication rec { + pname = "pdf-redact-tools"; + version = "0.1.2"; + + src = fetchFromGitHub { + owner = "firstlookmedia"; + repo = pname; + rev = "v${version}"; + sha256 = "01vs1bc0pfgk6x2m36vwra605fg59yc31d0hl9jmj86n8q6wwvss"; + }; + + patchPhase = ''substituteInPlace pdf-redact-tools \ + --replace \'convert\' \'${imagemagick}/bin/convert\' \ + --replace \'exiftool\' \'${exiftool}/bin/exiftool\' \ + --replace \'file\' \'${file}/bin/file\' + ''; + + propagatedBuildInputs = [ imagemagick exiftool ghostscript ]; + + meta = with stdenv.lib; { + description = "Redact and strip metadata from documents before publishing"; + longDescription = '' + PDF Redact Tools helps with securely redacting and stripping metadata + from documents before publishing. Note that this is not a security tool. + It uses ImageMagick to parse PDFs. While ImageMagick is a versatile tool, it has + a history of several security bugs. A malicious PDF could exploit a bug in + ImageMagick to take over your computer. If you're working with potentially + malicious PDFs, it's safest to run them through PDF Redact Tools in an isolated + environment, such as a virtual machine, or by using a tool such as the Qubes + PDF Converter instead. + ''; + platforms = platforms.all; + license = licenses.gpl3; + maintainers = with maintainers; [ leenaars ]; + }; +} diff --git a/pkgs/tools/graphics/plotutils/default.nix b/pkgs/tools/graphics/plotutils/default.nix index 85685e0b0482..780e09ee91cf 100644 --- a/pkgs/tools/graphics/plotutils/default.nix +++ b/pkgs/tools/graphics/plotutils/default.nix @@ -17,6 +17,11 @@ stdenv.mkDerivation rec { buildInputs = [ libpng ]; patches = map fetchurl (import ./debian-patches.nix); + preBuild = '' + # Fix parallel building. + make -C libplot xmi.h + ''; + configureFlags = "--enable-libplotter"; # required for pstoedit hardeningDisable = [ "format" ]; diff --git a/pkgs/tools/graphics/pstoedit/default.nix b/pkgs/tools/graphics/pstoedit/default.nix index a31a9848c101..623415a314b5 100644 --- a/pkgs/tools/graphics/pstoedit/default.nix +++ b/pkgs/tools/graphics/pstoedit/default.nix @@ -4,11 +4,11 @@ }: stdenv.mkDerivation rec { - name = "pstoedit-3.71"; + name = "pstoedit-3.73"; src = fetchurl { url = "mirror://sourceforge/pstoedit/${name}.tar.gz"; - sha256 = "15dwrwjbixjqph2jmdqzi9fihwpqc1kz5jcv5phxw8wwrlicv285"; + sha256 = "147jkgvm9n6mbkl6ndqnm9x74x5y9agbxkfwj0jrw6yxyhxx2cdd"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/tools/graphics/qrencode/default.nix b/pkgs/tools/graphics/qrencode/default.nix index a83e38e577dd..5620f5058a5f 100644 --- a/pkgs/tools/graphics/qrencode/default.nix +++ b/pkgs/tools/graphics/qrencode/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libpng, pkgconfig }: stdenv.mkDerivation rec { - name = "qrencode-4.0.0"; + name = "qrencode-4.0.1"; src = fetchurl { url = "${meta.homepage}/${name}.tar.bz2"; - sha256 = "02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069"; + sha256 = "0j7cqhjc0l6i99lzph51gakmcmfs74x483plna93r4ngz328knph"; }; buildInputs = [ libpng ]; diff --git a/pkgs/tools/inputmethods/fcitx-engines/fcitx-table-extra/default.nix b/pkgs/tools/inputmethods/fcitx-engines/fcitx-table-extra/default.nix new file mode 100644 index 000000000000..918edf0240a5 --- /dev/null +++ b/pkgs/tools/inputmethods/fcitx-engines/fcitx-table-extra/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, cmake, fcitx, gettext }: + +stdenv.mkDerivation rec { + name = "fcitx-table-extra-${version}"; + version = "0.3.8"; + + src = fetchurl { + url = "http://download.fcitx-im.org/fcitx-table-extra/${name}.tar.xz"; + sha256 = "c91bb19c1a7b53c5339bf2f75ae83839020d337990f237a8b9bc0f4416c120ef"; + }; + + buildInputs = [ cmake fcitx gettext ]; + + preInstall = '' + substituteInPlace tables/cmake_install.cmake \ + --replace ${fcitx} $out + ''; + + meta = with stdenv.lib; { + isFcitxEngine = true; + homepage = "https://github.com/fcitx/fcitx-table-extra"; + downloadPage = "http://download.fcitx-im.org/fcitx-table-extra/"; + description = "Provides extra table for Fcitx, including Boshiamy, Zhengma, Cangjie, and Quick"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ linc01n ]; + }; + +} diff --git a/pkgs/tools/misc/bat/default.nix b/pkgs/tools/misc/bat/default.nix index b869f1e634c5..01fbe67e5f20 100644 --- a/pkgs/tools/misc/bat/default.nix +++ b/pkgs/tools/misc/bat/default.nix @@ -1,25 +1,29 @@ -{ stdenv, pkgs, rustPlatform, fetchFromGitHub }: +{ stdenv, rustPlatform, fetchFromGitHub, cmake, pkgconfig, zlib, libiconv, darwin }: rustPlatform.buildRustPackage rec { name = "bat-${version}"; - version = "0.3.0"; + version = "0.4.1"; src = fetchFromGitHub { owner = "sharkdp"; repo = "bat"; rev = "v${version}"; - sha256 = "15d7i0iy5lks3jg9js6n6fy4xanjk76fpryl2kq88kdkq67hpzfp"; + sha256 = "0fiif6b8g2hdb05s028dbcpav6ax0qap2hbsr9p2bld4z7j7321m"; }; - cargoSha256 = "179a7abhzpxjp3cc820jzxg0qk1fiv9rkpazwnzhkjl8yd7b7qi3"; + cargoSha256 = "0w0y3sfrpk8sn9rls90kjqrqr62pd690ripdfbvb5ipkzizp429l"; - buildInputs = with pkgs; [ pkgconfig cmake zlib file perl curl ]; + nativeBuildInputs = [ cmake pkgconfig zlib ]; + + buildInputs = [ libiconv ] ++ stdenv.lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Security + ]; meta = with stdenv.lib; { description = "A cat(1) clone with syntax highlighting and Git integration"; homepage = https://github.com/sharkdp/bat; license = with licenses; [ asl20 /* or */ mit ]; maintainers = with maintainers; [ dywedir ]; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; }; } diff --git a/pkgs/tools/misc/bibutils/default.nix b/pkgs/tools/misc/bibutils/default.nix index b720ac22f27e..90a2211235d7 100644 --- a/pkgs/tools/misc/bibutils/default.nix +++ b/pkgs/tools/misc/bibutils/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "bibutils-${version}"; - version = "6.2"; + version = "6.3"; src = fetchurl { url = "mirror://sourceforge/bibutils/bibutils_${version}_src.tgz"; - sha256 = "07wgzk01kfdrjl6g3qlxg9qbi3kyrxxmxyy49qmcfq24fpmf9mrr"; + sha256 = "10r5v5xbhsxdh6vq6g2xp6lgmpjdzba83h4m4clfhrzqis8clwqy"; }; configureFlags = [ "--dynamic" "--install-dir" "$(out)/bin" "--install-lib" "$(out)/lib" ]; diff --git a/pkgs/tools/misc/detox/default.nix b/pkgs/tools/misc/detox/default.nix index 7d17dee8b53c..874da29da4fa 100644 --- a/pkgs/tools/misc/detox/default.nix +++ b/pkgs/tools/misc/detox/default.nix @@ -12,6 +12,10 @@ stdenv.mkDerivation { hardeningDisable = [ "format" ]; + postInstall = '' + install -m644 safe.tbl $out/share/detox/ + ''; + meta = with stdenv.lib; { homepage = http://detox.sourceforge.net/; description = "Utility designed to clean up filenames"; diff --git a/pkgs/tools/misc/dylibbundler/default.nix b/pkgs/tools/misc/dylibbundler/default.nix new file mode 100644 index 000000000000..c88e29bb4553 --- /dev/null +++ b/pkgs/tools/misc/dylibbundler/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "dylibbundler"; + + src = fetchFromGitHub { + owner = "auriamg"; + repo = "/macdylibbundler"; + rev = "27923fbf6d1bc4d18c18e118280c4fe51fc41a80"; + sha256 = "1mpd43hvpfp7pskfrjnd6vcmfii9v3p97q0ws50krkdvshp0bv2h"; + }; + + makeFlags = "PREFIX=$(out)"; + + meta = with stdenv.lib; { + description = "Small command-line program that aims to make bundling .dylibs as easy as possible"; + homepage = "https://github.com/auriamg/macdylibbundler"; + license = licenses.mit; + maintainers = with maintainers; [ alexfmpe ]; + platforms = with platforms; darwin ++ linux; + }; +} diff --git a/pkgs/tools/misc/graylog/default.nix b/pkgs/tools/misc/graylog/default.nix index f79be961378b..60e7f273a338 100644 --- a/pkgs/tools/misc/graylog/default.nix +++ b/pkgs/tools/misc/graylog/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, makeWrapper, jre_headless }: stdenv.mkDerivation rec { - version = "2.4.4"; + version = "2.4.5"; name = "graylog-${version}"; src = fetchurl { url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz"; - sha256 = "0wiqwwsy306hr7zn57f5hvh8wvcc2q46x0hdlabi0n9m44wk993i"; + sha256 = "0yb8r7f64s1m83dqw64yakxmlyn7d3kdi2rd9mpw3rnz4kqcarly"; }; dontBuild = true; diff --git a/pkgs/tools/misc/mc/default.nix b/pkgs/tools/misc/mc/default.nix index bc097e2a0857..bdae1e0cf848 100644 --- a/pkgs/tools/misc/mc/default.nix +++ b/pkgs/tools/misc/mc/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "mc-${version}"; - version = "4.8.20"; + version = "4.8.21"; src = fetchurl { url = "http://www.midnight-commander.org/downloads/${name}.tar.xz"; - sha256 = "072h7n9b3j79fqn48xaw0xhlcjavpsmfpz6nyh20lhmfz3sffzh1"; + sha256 = "130lzrcmazinznnnpf00lcizdlmjdhfiqfx00g1cjcbwmi3fadwg"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix index 9bb09d227c4c..75be4efe7d1b 100644 --- a/pkgs/tools/misc/parallel/default.nix +++ b/pkgs/tools/misc/parallel/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, perl, makeWrapper, procps }: stdenv.mkDerivation rec { - name = "parallel-20180422"; + name = "parallel-20180522"; src = fetchurl { url = "mirror://gnu/parallel/${name}.tar.bz2"; - sha256 = "0xsfpbxwgd4197gra981iv0nmjfk58c0d88dxx6dh6yrqz523klx"; + sha256 = "1khcz9pm7rjnq4gw8pn30k1d40x337a204dxj4y4qijpx8m7w0gb"; }; nativeBuildInputs = [ makeWrapper perl ]; diff --git a/pkgs/tools/misc/powerline-rs/default.nix b/pkgs/tools/misc/powerline-rs/default.nix index 138145683cb8..b16be0b5bdca 100644 --- a/pkgs/tools/misc/powerline-rs/default.nix +++ b/pkgs/tools/misc/powerline-rs/default.nix @@ -2,14 +2,14 @@ rustPlatform.buildRustPackage rec { pname = "powerline-rs"; name = "${pname}-${version}"; - version = "0.1.7"; + version = "0.1.8"; src = fetchFromGitHub { owner = "jD91mZM2"; repo = "powerline-rs"; rev = version; - sha256 = "0ry1axia78sp9vmn6p119l69sj3dqx2san1k71a5npf60rf4gfkc"; + sha256 = "018i9qq98afbgv0nxs1n83zb09lqhqxpdrd95f2maic3rr5ngnj5"; }; cargoSha256 = "184s432a6damzvl0lv6jar1iml9dq60r190aqjy44lcg938981zc"; diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix index 709cbbe07912..169389928d06 100644 --- a/pkgs/tools/misc/skim/default.nix +++ b/pkgs/tools/misc/skim/default.nix @@ -2,18 +2,18 @@ rustPlatform.buildRustPackage rec { name = "skim-${version}"; - version = "0.3.2"; + version = "0.4.0"; src = fetchFromGitHub { owner = "lotabout"; repo = "skim"; rev = "v${version}"; - sha256 = "0spkkgjjrch1grb0115rn0wxzsh8pzmm96a7j69zy5pc1il2m5lp"; + sha256 = "067ds1sdi9ya1yqz9saczj1vml8arwzd46w35gmvdxgmxx4wmihs"; }; outputs = [ "out" "vim" ]; - cargoSha256 = "0zbjnii8r41ih2m2vqhm3wdiwgi13kipvxx75sg4vm4maf4wpmhv"; + cargoSha256 = "18lgjh1b1wfm9xsd6y6slfj1i3dwrvzkzszdzk3lmqx1f8515gx7"; patchPhase = '' sed -i -e "s|expand('<sfile>:h:h')|'$out'|" plugin/skim.vim @@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec { description = "Fuzzy Finder in rust!"; homepage = https://github.com/lotabout/skim; license = licenses.mit; - maintainers = []; + maintainers = with maintainers; [ dywedir ]; platforms = platforms.all; }; } diff --git a/pkgs/tools/misc/trash-cli/default.nix b/pkgs/tools/misc/trash-cli/default.nix index 7be2e3fc61d7..77308ecf2ed8 100644 --- a/pkgs/tools/misc/trash-cli/default.nix +++ b/pkgs/tools/misc/trash-cli/default.nix @@ -1,5 +1,7 @@ -{ stdenv, fetchFromGitHub, fetchpatch, python3, python3Packages -, lib, makeWrapper, coreutils }: +{ stdenv, fetchFromGitHub, fetchpatch, coreutils +, python3, python3Packages, substituteAll }: + +assert stdenv.isLinux; python3Packages.buildPythonApplication rec { name = "trash-cli-${version}"; @@ -14,6 +16,12 @@ python3Packages.buildPythonApplication rec { }; patches = [ + (substituteAll { + src = ./nix-paths.patch; + df = "${coreutils}/bin/df"; + libc = "${stdenv.cc.libc.out}/lib/libc.so.6"; + }) + # Fix build on Python 3.6. (fetchpatch { url = "https://github.com/andreafrancia/trash-cli/commit/a21b80d1e69783bb09376c3f60dd2f2a10578805.patch"; @@ -22,19 +30,10 @@ python3Packages.buildPythonApplication rec { ]; buildInputs = with python3Packages; [ nose mock ]; - nativeBuildInputs = [ makeWrapper ]; - - preFixup = '' - for bin in $out/bin/*; do - wrapProgram $bin \ - --prefix PATH : ${lib.makeBinPath [ coreutils ]} \ - --prefix DYLD_LIBRARY_PATH : ${lib.makeSearchPath "lib" (lib.optional (stdenv.hostPlatform.libc == "glibc") (lib.getDev stdenv.cc.libc))} - done - ''; checkPhase = "nosetests"; - meta = with lib; { + meta = with stdenv.lib; { homepage = https://github.com/andreafrancia/trash-cli; description = "Command line tool for the desktop trash can"; maintainers = [ maintainers.rycee ]; diff --git a/pkgs/tools/misc/trash-cli/nix-paths.patch b/pkgs/tools/misc/trash-cli/nix-paths.patch new file mode 100644 index 000000000000..d7b485eec158 --- /dev/null +++ b/pkgs/tools/misc/trash-cli/nix-paths.patch @@ -0,0 +1,26 @@ +--- a/trashcli/list_mount_points.py 2014-12-23 10:10:43.808470486 +0100 ++++ a/trashcli/list_mount_points.py 2014-12-23 10:19:04.954796457 +0100 +@@ -12,7 +12,7 @@ def mount_points_from_getmnt(): + + def mount_points_from_df(): + import subprocess +- df_output = subprocess.Popen(["df", "-P"], stdout=subprocess.PIPE).stdout ++ df_output = subprocess.Popen(["@df@", "-P"], stdout=subprocess.PIPE).stdout + return list(_mount_points_from_df_output(df_output)) + + def _mount_points_from_df_output(df_output): +@@ -46,13 +46,7 @@ def _mounted_filesystems_from_getmnt() : + ("mnt_freq", c_int), # Dump frequency (in days). + ("mnt_passno", c_int)] # Pass number for `fsck'. + +- if sys.platform == "cygwin": +- libc_name = "cygwin1.dll" +- else: +- libc_name = find_library("c") +- +- if libc_name == None : +- libc_name="/lib/libc.so.6" # fix for my Gentoo 4.0 ++ libc_name = "@libc@" + + libc = cdll.LoadLibrary(libc_name) + libc.getmntent.restype = POINTER(mntent_struct) diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix index 29186906d27b..87725f51a7fb 100644 --- a/pkgs/tools/networking/aria2/default.nix +++ b/pkgs/tools/networking/aria2/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { name = "aria2-${version}"; - version = "1.33.1"; + version = "1.34.0"; src = fetchFromGitHub { owner = "aria2"; repo = "aria2"; rev = "release-${version}"; - sha256 = "0ai84ijgsvnixwhxkj8if2mj9hcg2a41w81vy8bdvi89h3bmq9zf"; + sha256 = "0hwqnjyszasr6049vr5mn48slb48v5kw39cbpbxa68ggmhj9bw6m"; }; nativeBuildInputs = [ pkgconfig autoreconfHook ]; diff --git a/pkgs/tools/networking/curl/7_59.nix b/pkgs/tools/networking/curl/7_59.nix new file mode 100644 index 000000000000..5980392267b0 --- /dev/null +++ b/pkgs/tools/networking/curl/7_59.nix @@ -0,0 +1,113 @@ +{ stdenv, lib, fetchurl, pkgconfig, perl +, http2Support ? true, nghttp2 +, idnSupport ? false, libidn ? null +, ldapSupport ? false, openldap ? null +, zlibSupport ? false, zlib ? null +, sslSupport ? false, openssl ? null +, gnutlsSupport ? false, gnutls ? null +, scpSupport ? false, libssh2 ? null +, gssSupport ? false, kerberos ? null +, c-aresSupport ? false, c-ares ? null +, brotliSupport ? false, brotli ? null +}: + +assert http2Support -> nghttp2 != null; +assert idnSupport -> libidn != null; +assert ldapSupport -> openldap != null; +assert zlibSupport -> zlib != null; +assert sslSupport -> openssl != null; +assert !(gnutlsSupport && sslSupport); +assert gnutlsSupport -> gnutls != null; +assert scpSupport -> libssh2 != null; +assert c-aresSupport -> c-ares != null; +assert brotliSupport -> brotli != null; +assert gssSupport -> kerberos != null; + +stdenv.mkDerivation rec { + name = "curl-7.59.0"; + + src = fetchurl { + urls = [ + "https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] name}/${name}.tar.bz2" + "https://curl.haxx.se/download/${name}.tar.bz2" + ]; + sha256 = "185mazhi4bc5mc6rvhrmnc67j8l3sg7f0w2hp5gmi5ccdbyhz4mm"; + }; + + outputs = [ "bin" "dev" "out" "man" "devdoc" ]; + separateDebugInfo = stdenv.isLinux; + + enableParallelBuilding = true; + + nativeBuildInputs = [ pkgconfig perl ]; + + # Zlib and OpenSSL must be propagated because `libcurl.la' contains + # "-lz -lssl", which aren't necessary direct build inputs of + # applications that use Curl. + propagatedBuildInputs = with stdenv.lib; + optional http2Support nghttp2 ++ + optional idnSupport libidn ++ + optional ldapSupport openldap ++ + optional zlibSupport zlib ++ + optional gssSupport kerberos ++ + optional c-aresSupport c-ares ++ + optional sslSupport openssl ++ + optional gnutlsSupport gnutls ++ + optional scpSupport libssh2 ++ + optional brotliSupport brotli; + + # for the second line see https://curl.haxx.se/mail/tracker-2014-03/0087.html + preConfigure = '' + sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure + rm src/tool_hugehelp.c + ''; + + configureFlags = [ + "--with-ca-fallback" + "--disable-manual" + ( if sslSupport then "--with-ssl=${openssl.dev}" else "--without-ssl" ) + ( if gnutlsSupport then "--with-gnutls=${gnutls.dev}" else "--without-gnutls" ) + ( if scpSupport then "--with-libssh2=${libssh2.dev}" else "--without-libssh2" ) + ( if ldapSupport then "--enable-ldap" else "--disable-ldap" ) + ( if ldapSupport then "--enable-ldaps" else "--disable-ldaps" ) + ( if idnSupport then "--with-libidn=${libidn.dev}" else "--without-libidn" ) + ( if brotliSupport then "--with-brotli" else "--without-brotli" ) + ] + ++ stdenv.lib.optional c-aresSupport "--enable-ares=${c-ares}" + ++ stdenv.lib.optional gssSupport "--with-gssapi=${kerberos.dev}"; + + CXX = "${stdenv.cc.targetPrefix}c++"; + CXXCPP = "${stdenv.cc.targetPrefix}c++ -E"; + + doCheck = false; # expensive, fails + + postInstall = '' + moveToOutput bin/curl-config "$dev" + sed '/^dependency_libs/s|${libssh2.dev}|${libssh2.out}|' -i "$out"/lib/*.la + '' + stdenv.lib.optionalString gnutlsSupport '' + ln $out/lib/libcurl.so $out/lib/libcurl-gnutls.so + ln $out/lib/libcurl.so $out/lib/libcurl-gnutls.so.4 + ln $out/lib/libcurl.so $out/lib/libcurl-gnutls.so.4.4.0 + ''; + + crossAttrs = { + # We should refer to the cross built openssl + # For the 'urandom', maybe it should be a cross-system option + configureFlags = [ + ( if sslSupport then "--with-ssl=${openssl.crossDrv}" else "--without-ssl" ) + ( if gnutlsSupport then "--with-gnutls=${gnutls.crossDrv}" else "--without-gnutls" ) + "--with-random /dev/urandom" + ]; + }; + + passthru = { + inherit sslSupport openssl; + }; + + meta = with stdenv.lib; { + description = "A command line tool for transferring files with URL syntax"; + homepage = https://curl.haxx.se/; + maintainers = with maintainers; [ lovek323 ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/networking/haproxy/default.nix b/pkgs/tools/networking/haproxy/default.nix index 598557380e28..1690d3fcc3e3 100644 --- a/pkgs/tools/networking/haproxy/default.nix +++ b/pkgs/tools/networking/haproxy/default.nix @@ -1,6 +1,6 @@ { useLua ? !stdenv.isDarwin , usePcre ? true -, stdenv, fetchurl +, stdenv, fetchurl, fetchpatch , openssl, zlib, lua5_3 ? null, pcre ? null }: @@ -9,14 +9,26 @@ assert usePcre -> pcre != null; stdenv.mkDerivation rec { pname = "haproxy"; - version = "1.8.4"; + version = "1.8.9"; name = "${pname}-${version}"; src = fetchurl { url = "https://www.haproxy.org/download/${stdenv.lib.versions.majorMinor version}/src/${name}.tar.gz"; - sha256 = "19l4i0p92ahm3vaw42gz3rmmidfivk36mvqyhir81h6ywyjb01g3"; + sha256 = "00miblgwll3mycsgmp3gd3cn4lwsagxzgjxk5i6csnyqgj97fss3"; }; + patches = [ + (fetchpatch { + name = "CVE-2018-11469.patch"; + url = "https://git.haproxy.org/?p=haproxy-1.8.git;a=patch;h=17514045e5d934dede62116216c1b016fe23dd06"; + sha256 = "0hzcvghg8qz45n3mrcgsjgvrvicvbvm52cc4hs5jbk1yb50qvls7"; + }) + ] ++ stdenv.lib.optional stdenv.isDarwin (fetchpatch { + name = "fix-darwin-no-threads-build.patch"; + url = "https://git.haproxy.org/?p=haproxy-1.8.git;a=patch;h=fbf09c441a4e72c4a690bc7ef25d3374767fe5c5;hp=3157ef219c493f3b01192f1b809a086a5b119a1e"; + sha256 = "16ckzb160anf7xih7mmqy59pfz8sdywmyblxnr7lz9xix3jwk55r"; + }); + buildInputs = [ openssl zlib ] ++ stdenv.lib.optional useLua lua5_3 ++ stdenv.lib.optional usePcre pcre; diff --git a/pkgs/tools/networking/mosh/default.nix b/pkgs/tools/networking/mosh/default.nix index fb94b750e1d8..1a2086810724 100644 --- a/pkgs/tools/networking/mosh/default.nix +++ b/pkgs/tools/networking/mosh/default.nix @@ -1,5 +1,6 @@ -{ stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig, IOTty -, makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion }: +{ lib, stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig, IOTty +, makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion +, libutempter ? null, withUtempter ? stdenv.isLinux }: stdenv.mkDerivation rec { name = "mosh-1.3.2"; @@ -10,15 +11,15 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ protobuf ncurses zlib IOTty makeWrapper perl openssl bash-completion ]; + buildInputs = [ protobuf ncurses zlib IOTty makeWrapper perl openssl bash-completion ] ++ lib.optional withUtempter libutempter; - patches = [ ./ssh_path.patch ]; + patches = [ ./ssh_path.patch ./utempter_path.patch ]; postPatch = '' substituteInPlace scripts/mosh.pl \ --subst-var-by ssh "${openssh}/bin/ssh" ''; - configureFlags = [ "--enable-completion" ]; + configureFlags = [ "--enable-completion" ] ++ lib.optional withUtempter "--with-utempter"; postInstall = '' wrapProgram $out/bin/mosh --prefix PERL5LIB : $PERL5LIB diff --git a/pkgs/tools/networking/mosh/utempter_path.patch b/pkgs/tools/networking/mosh/utempter_path.patch new file mode 100644 index 000000000000..a981708ffadf --- /dev/null +++ b/pkgs/tools/networking/mosh/utempter_path.patch @@ -0,0 +1,14 @@ +diff -ur mosh-1.3.2/src/frontend/mosh-server.cc mosh-1.3.2.patched/src/frontend/mosh-server.cc +--- mosh-1.3.2/src/frontend/mosh-server.cc 2017-07-22 23:14:53.000000000 +0200 ++++ mosh-1.3.2.patched/src/frontend/mosh-server.cc 2018-06-06 10:45:50.725352804 +0200 +@@ -351,6 +351,10 @@ + } + } + ++#ifdef HAVE_UTEMPTER ++ utempter_set_helper( "utempter" ); ++#endif ++ + try { + return run_server( desired_ip, desired_port, command_path, command_argv, colors, verbose, with_motd ); + } catch ( const Network::NetworkException &e ) { diff --git a/pkgs/tools/networking/nzbget/default.nix b/pkgs/tools/networking/nzbget/default.nix index ef65444ae331..20a448b0ded6 100644 --- a/pkgs/tools/networking/nzbget/default.nix +++ b/pkgs/tools/networking/nzbget/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "nzbget-${version}"; - version = "19.1"; + version = "20.0"; src = fetchurl { url = "http://github.com/nzbget/nzbget/releases/download/v${version}/nzbget-${version}-src.tar.gz"; - sha256 = "1rjwv555zc2hiagf00k8l1pzav91qglsnqbqkyy3pmn2d8sl5pq6"; + sha256 = "0vyhmjg3ipjlv41il6kklys3m6rhqifdkv25a7ak772l6ba3dp04"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/tools/networking/phodav/default.nix b/pkgs/tools/networking/phodav/default.nix new file mode 100644 index 000000000000..e585af81991e --- /dev/null +++ b/pkgs/tools/networking/phodav/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl +, intltool, pkgconfig, glib, libsoup }: + +let + version = "2.2"; +in stdenv.mkDerivation rec { + name = "phodav-${version}"; + + src = fetchurl { + url = "http://ftp.gnome.org/pub/GNOME/sources/phodav/${version}/${name}.tar.xz"; + sha256 = "1hap0lncbcmivnflh0fbx7y58ry78p9wgj7z03r64ic0kvf0a0q8"; + }; + + buildInputs = [ intltool glib libsoup ]; + + nativeBuildInputs = [ pkgconfig ]; + + meta = with stdenv.lib; { + description = "WebDav server implementation and library using libsoup"; + homepage = https://wiki.gnome.org/phodav; + license = licenses.lgpl21; + maintainers = with maintainers; [ gnidorah ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/networking/shadowsocks-libev/default.nix b/pkgs/tools/networking/shadowsocks-libev/default.nix index 2823917fc31d..d2e8a9a30519 100644 --- a/pkgs/tools/networking/shadowsocks-libev/default.nix +++ b/pkgs/tools/networking/shadowsocks-libev/default.nix @@ -24,6 +24,19 @@ stdenv.mkDerivation rec { cp lib/* $out/lib chmod +x $out/bin/* mv $out/pkgconfig $out/lib + + ${stdenv.lib.optionalString stdenv.isDarwin '' + install_name_tool -change libcork.dylib $out/lib/libcork.dylib $out/lib/libipset.dylib + install_name_tool -change libbloom.dylib $out/lib/libbloom.dylib $out/lib/libipset.dylib + + for exe in $out/bin/*; do + install_name_tool -change libmbedtls.dylib ${mbedtls}/lib/libmbedtls.dylib $exe + install_name_tool -change libmbedcrypto.dylib ${mbedtls}/lib/libmbedcrypto.dylib $exe + install_name_tool -change libcork.dylib $out/lib/libcork.dylib $exe + install_name_tool -change libipset.dylib $out/lib/libipset.dylib $exe + install_name_tool -change libbloom.dylib $out/lib/libbloom.dylib $exe + done + ''} ''; meta = with stdenv.lib; { @@ -35,6 +48,6 @@ stdenv.mkDerivation rec { homepage = https://github.com/shadowsocks/shadowsocks-libev; license = licenses.gpl3Plus; maintainers = [ maintainers.nfjinjing ]; - platforms = platforms.linux; + platforms = platforms.all; }; } diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix index 3efc9e6be232..ecaf498da42d 100644 --- a/pkgs/tools/networking/urlwatch/default.nix +++ b/pkgs/tools/networking/urlwatch/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { name = "urlwatch-${version}"; - version = "2.11"; + version = "2.13"; src = fetchFromGitHub { owner = "thp"; repo = "urlwatch"; rev = version; - sha256 = "0vp85d62zhca7d841vg82mwlqb8yihshyc8q2cvwm3rpn5vwf0pi"; + sha256 = "0rspb5j02mmb0r2dnfryx7jaczvb22lsnysgrr1l9iag0djcgdf5"; }; propagatedBuildInputs = with python3Packages; [ diff --git a/pkgs/tools/networking/wireguard-go/default.nix b/pkgs/tools/networking/wireguard-go/default.nix index 37220acf8cf8..62ea3d64468a 100644 --- a/pkgs/tools/networking/wireguard-go/default.nix +++ b/pkgs/tools/networking/wireguard-go/default.nix @@ -2,13 +2,13 @@ buildGoPackage rec { name = "wireguard-go-${version}"; - version = "0.0.20180519"; + version = "0.0.20180531"; - goPackagePath = "wireguard-go"; + goPackagePath = "git.zx2c4.com/wireguard-go"; src = fetchzip { url = "https://git.zx2c4.com/wireguard-go/snapshot/wireguard-go-${version}.tar.xz"; - sha256 = "0b3wpc0ccf24567fjafv1sjs3yqq1xjam3gpfp37avxqy9789nb7"; + sha256 = "1vs11kr5a2s99v0g7079nfrfvmjfh1p2lnkj2icjyn2cb0s1vqiy"; }; goDeps = ./deps.nix; @@ -22,7 +22,7 @@ buildGoPackage rec { description = "Userspace Go implementation of WireGuard"; homepage = https://git.zx2c4.com/wireguard-go/about/; license = licenses.gpl2; - maintainers = with maintainers; [ kirelagin zx2c4 ]; + maintainers = with maintainers; [ kirelagin yegortimoshenko zx2c4 ]; platforms = platforms.darwin; }; } diff --git a/pkgs/tools/networking/wireguard-go/deps.nix b/pkgs/tools/networking/wireguard-go/deps.nix index 88381d5f207a..87e3d73018be 100644 --- a/pkgs/tools/networking/wireguard-go/deps.nix +++ b/pkgs/tools/networking/wireguard-go/deps.nix @@ -5,8 +5,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/crypto"; - rev = "1a580b3eff7814fc9b40602fd35256c63b50f491"; - sha256 = "11adgxc6fzcb3dxr5v2g4nk6ggrz04qnx633hzgmzfh2wv3blgv7"; + rev = "8ac0e0d97ce45cd83d1d7243c060cb8461dda5e9"; + sha256 = "0vg0dfpv1wgj5imlakpma763yfd67aqbiy0fcklq3cw46qmfbzf1"; }; } { @@ -14,8 +14,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/net"; - rev = "2491c5de3490fced2f6cff376127c667efeed857"; - sha256 = "1wmijnrxi9p2rv8g6clqkzdihn5ncv29j0s4s1bz9ksncdr36ll3"; + rev = "1e491301e022f8f977054da4c2d852decd59571f"; + sha256 = "1wc18flnz99bip2j1gpnvr3qdp1y7wgyvawlvvc8rmd6ggf5f2yq"; }; } { @@ -23,8 +23,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/sys"; - rev = "7c87d13f8e835d2fb3a70a2912c811ed0c1d241b"; - sha256 = "03fhkng37rczqwfgah5hd7d373jps3hcfx79dmky2fh62yvpcyn3"; + rev = "9527bec2660bd847c050fda93a0f0c6dee0800bb"; + sha256 = "02kd2lnw7dnyqs0vvcpzwkv5brpgkwagqly2xs7dwmsi1vvf400p"; }; } ] \ No newline at end of file diff --git a/pkgs/tools/networking/wireguard-tools/default.nix b/pkgs/tools/networking/wireguard-tools/default.nix index 7411aeed6d2e..276d7066c561 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.20180524"; + version = "0.0.20180531"; src = fetchzip { url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz"; - sha256 = "0h503h9hh1vl3j2daz7lm2fp4wda65iphmx8k21md6yql8f56vmi"; + sha256 = "0944zxmpx2cs71nxl7rcyhpqlwplkzd7jsf1n66vflngw2sjxm03"; }; sourceRoot = "source/src/tools"; diff --git a/pkgs/tools/security/ctmg/default.nix b/pkgs/tools/security/ctmg/default.nix new file mode 100644 index 000000000000..1e0618412210 --- /dev/null +++ b/pkgs/tools/security/ctmg/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchzip }: + +stdenv.mkDerivation rec { + name = "ctmg-${version}"; + version = "1.2"; + + src = fetchzip { + url = "https://git.zx2c4.com/ctmg/snapshot/ctmg-${version}.tar.xz"; + sha256 = "1i4v8sriwjrmj3yizbl1ysckb711yl9qsn9x45jq0ij1apsydhyc"; + }; + + installPhase = "install -D ctmg.sh $out/bin/ctmg"; + + meta = with stdenv.lib; { + description = "An encrypted container manager for Linux using cryptsetup"; + homepage = https://git.zx2c4.com/ctmg/about/; + license = licenses.isc; + maintainers = with maintainers; [ mrVanDalo ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix index eb8861486747..53ce183d4afb 100644 --- a/pkgs/tools/security/eid-mw/default.nix +++ b/pkgs/tools/security/eid-mw/default.nix @@ -7,10 +7,10 @@ stdenv.mkDerivation rec { name = "eid-mw-${version}"; - version = "4.4.1"; + version = "4.4.2"; src = fetchFromGitHub { - sha256 = "0an7xgj5rzl75kq6qfrmm886v639hhlh7c9yfs8iihc47wghpma8"; + sha256 = "0jsa1jl51kz8i8dpi3664a7y3bhypr3ipk1srzxfkk6aph4a5cdf"; rev = "v${version}"; repo = "eid-mw"; owner = "Fedict"; diff --git a/pkgs/tools/security/keybase/default.nix b/pkgs/tools/security/keybase/default.nix index 331375273edd..47941a9d7787 100644 --- a/pkgs/tools/security/keybase/default.nix +++ b/pkgs/tools/security/keybase/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "keybase-${version}"; - version = "1.0.44"; + version = "2.0.0"; goPackagePath = "github.com/keybase/client"; subPackages = [ "go/keybase" ]; @@ -13,7 +13,7 @@ buildGoPackage rec { owner = "keybase"; repo = "client"; rev = "v${version}"; - sha256 = "1np8fk15wwqkswzcyygga52r74dp101ny63i3m1wypgfky4hvsbb"; + sha256 = "0lapcw9csr18n4pc1mlljs1bd8w8imzsic4qgr07s53i80bd8l6n"; }; buildFlags = [ "-tags production" ]; diff --git a/pkgs/tools/security/pass/extensions/audit.nix b/pkgs/tools/security/pass/extensions/audit.nix new file mode 100644 index 000000000000..79dd1fadb01c --- /dev/null +++ b/pkgs/tools/security/pass/extensions/audit.nix @@ -0,0 +1,42 @@ +{ stdenv, pass, fetchFromGitHub, pythonPackages, makeWrapper }: + +let + pythonEnv = pythonPackages.python.withPackages (p: [ p.requests ]); + +in stdenv.mkDerivation rec { + name = "pass-audit-${version}"; + version = "0.1"; + + src = fetchFromGitHub { + owner = "roddhjav"; + repo = "pass-audit"; + rev = "v${version}"; + sha256 = "0v0db8bzpcaa7zqz17syn3c78mgvw4mpg8qg1gh5rmbjsjfxw6sm"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + buildInputs = [ pythonEnv ]; + + patchPhase = '' + sed -i -e "s|/usr/lib|$out/lib|" audit.bash + sed -i -e 's|$0|${pass}/bin/pass|' audit.bash + ''; + + dontBuild = true; + + installFlags = [ "PREFIX=$(out)" ]; + + postFixup = '' + wrapProgram $out/lib/password-store/extensions/audit.bash \ + --prefix PATH : "${pythonEnv}/bin" \ + --run "export PREFIX" + ''; + + meta = with stdenv.lib; { + description = "Pass extension for auditing your password repository."; + homepage = https://github.com/roddhjav/pass-audit; + license = licenses.gpl3Plus; + platforms = platforms.unix; + }; +} diff --git a/pkgs/tools/security/pass/extensions/default.nix b/pkgs/tools/security/pass/extensions/default.nix index dfb853c0a0bf..f69687e512b8 100644 --- a/pkgs/tools/security/pass/extensions/default.nix +++ b/pkgs/tools/security/pass/extensions/default.nix @@ -3,6 +3,9 @@ with pkgs; { + pass-audit = callPackage ./audit.nix { + pythonPackages = python3Packages; + }; pass-import = callPackage ./import.nix { pythonPackages = python3Packages; }; diff --git a/pkgs/tools/security/pass/extensions/import.nix b/pkgs/tools/security/pass/extensions/import.nix index 8ba4abc5e3db..9e69cf376210 100644 --- a/pkgs/tools/security/pass/extensions/import.nix +++ b/pkgs/tools/security/pass/extensions/import.nix @@ -18,13 +18,18 @@ in stdenv.mkDerivation rec { buildInputs = [ pythonEnv ]; + patchPhase = '' + sed -i -e 's|$0|${pass}/bin/pass|' import.bash + ''; + dontBuild = true; installFlags = [ "PREFIX=$(out)" ]; postFixup = '' wrapProgram $out/lib/password-store/extensions/import.bash \ - --prefix PATH : "${pythonEnv}/bin" + --prefix PATH : "${pythonEnv}/bin" \ + --run "export PREFIX" ''; meta = with stdenv.lib; { diff --git a/pkgs/tools/security/pinentry/default.nix b/pkgs/tools/security/pinentry/default.nix index 07cf15baa224..3a7e1b5a3437 100644 --- a/pkgs/tools/security/pinentry/default.nix +++ b/pkgs/tools/security/pinentry/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { patches = lib.optionals (gtk2 != null) [ (fetchpatch { - url = https://anonscm.debian.org/cgit/pkg-gnupg/pinentry.git/plain/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch; + url = https://sources.debian.org/data/main/p/pinentry/1.1.0-1/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch; sha256 = "15r1axby3fdlzz9wg5zx7miv7gqx2jy4immaw4xmmw5skiifnhfd"; }) ]; diff --git a/pkgs/tools/system/fio/default.nix b/pkgs/tools/system/fio/default.nix index 6e63f467f600..2a5eea0b2516 100644 --- a/pkgs/tools/system/fio/default.nix +++ b/pkgs/tools/system/fio/default.nix @@ -1,8 +1,8 @@ { stdenv, fetchFromGitHub, libaio, python, zlib }: let - version = "3.6"; - sha256 = "1dilsn6r958skq1kpknm13fdzw7whb3bqa3wwnn2j9gba28599pq"; + version = "3.7"; + sha256 = "1m2slyxhzyznq283m6ljjgjg38i0hxg537bwhfs12qskv00c4vsk"; in stdenv.mkDerivation rec { diff --git a/pkgs/tools/system/ipmiutil/default.nix b/pkgs/tools/system/ipmiutil/default.nix index bace31a17bda..f3bd820e3e85 100644 --- a/pkgs/tools/system/ipmiutil/default.nix +++ b/pkgs/tools/system/ipmiutil/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { baseName = "ipmiutil"; - version = "3.1.0"; + version = "3.1.1"; name = "${baseName}-${version}"; src = fetchurl { url = "mirror://sourceforge/project/${baseName}/${name}.tar.gz"; - sha256 = "1vvdydql5gmq103wr0ris2fvr3l5an2a8zgg2mmgdi88pxi11xfx"; + sha256 = "1w1smjhinddf139yir44y88j5bjw5kzmprk2ljc3k6xz3va7v1k0"; }; buildInputs = [ openssl ]; diff --git a/pkgs/tools/system/logcheck/default.nix b/pkgs/tools/system/logcheck/default.nix index f27a0cbcb999..0f2de9888e44 100644 --- a/pkgs/tools/system/logcheck/default.nix +++ b/pkgs/tools/system/logcheck/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { name = "logcheck-${version}"; - version = "1.3.18"; + version = "1.3.19"; _name = "logcheck_${version}"; src = fetchurl { url = "mirror://debian/pool/main/l/logcheck/${_name}.tar.xz"; - sha256 = "1x4skb5nmv2xj8cygj8pq1rd1ws4m2fsibw54yslgdyjri4r2yq7"; + sha256 = "1a9ccy92lg1lnx86di6i1wpdv4ccf5w7gials2iyq5915c4lqa86"; }; prePatch = '' diff --git a/pkgs/tools/system/monit/default.nix b/pkgs/tools/system/monit/default.nix index a5d6f2f518c8..17e472b8d2be 100644 --- a/pkgs/tools/system/monit/default.nix +++ b/pkgs/tools/system/monit/default.nix @@ -3,11 +3,11 @@ let useSSL = (openssl != null); isCross = ( buildPlatform != hostPlatform ) ; in stdenv.mkDerivation rec { - name = "monit-5.25.1"; + name = "monit-5.25.2"; src = fetchurl { url = "${meta.homepage}dist/${name}.tar.gz"; - sha256 = "1g417cf6j0v6z233a3625fw1cxsh45xql7ag83jz2988n772ap2b"; + sha256 = "0jn6mdsh50zd3jc61hr1y8sd80r01gqcyvd860zf8m8i3lvfc35a"; }; nativeBuildInputs = [ bison flex ]; diff --git a/pkgs/tools/text/odt2txt/default.nix b/pkgs/tools/text/odt2txt/default.nix index 3feecdf4f53c..48abee018306 100644 --- a/pkgs/tools/text/odt2txt/default.nix +++ b/pkgs/tools/text/odt2txt/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, zlib, libiconv }: stdenv.mkDerivation rec { - name = "odt2txt-0.4"; + name = "odt2txt-${version}"; + version = "0.5"; src = fetchurl { - url = "${meta.homepage}/${name}.tar.gz"; - sha256 = "1y36s7w2ng0r4nismxb3hb3zvsim8aimvvblz9hgnanw3kwbvx55"; + url = "${meta.homepage}/archive/v${version}.tar.gz"; + sha256 = "23a889109ca9087a719c638758f14cc3b867a5dcf30a6c90bf6a0985073556dd"; }; configurePhase="export makeFlags=\"DESTDIR=$out\""; @@ -14,7 +15,7 @@ stdenv.mkDerivation rec { meta = { description = "Simple .odt to .txt converter"; - homepage = http://stosberg.net/odt2txt; + homepage = https://github.com/dstosberg/odt2txt; platforms = stdenv.lib.platforms.all; license = stdenv.lib.licenses.gpl2; maintainers = [ ]; diff --git a/pkgs/tools/text/schema2ldif/default.nix b/pkgs/tools/text/schema2ldif/default.nix new file mode 100644 index 000000000000..699d2d28b82b --- /dev/null +++ b/pkgs/tools/text/schema2ldif/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, makeWrapper, perl, perlPackages }: stdenv.mkDerivation rec { + name = "schema2ldif-${version}"; + version = "1.3"; + + src = fetchurl { + url = "https://repos.fusiondirectory.org/sources/schema2ldif/schema2ldif-${version}.tar.gz"; + sha256 = "00cd9xx9g0mnnfn5lvay3vg166z84jla0ya1x34ljdc8bflxsr9a"; + }; + + buildInputs = [ perl ]; + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/bin $out/share/man/man1 + + cp bin/{schema2ldif,ldap-schema-manager} $out/bin + gzip -c man/schema2ldif.1 > $out/share/man/man1/schema2ldif.1.gz + gzip -c man/ldap-schema-manager.1 > $out/share/man/man1/ldap-schema-manager.1.gz + + wrapProgram $out/bin/schema2ldif \ + --prefix PERL5PATH : "${stdenv.lib.makePerlPath [ perlPackages.GetoptLong perlPackages.PodUsage ]}" + ''; + + meta = with stdenv.lib; { + description = "Utilities to manage schema in .schema and .ldif format"; + homepage = "https://www.fusiondirectory.org/schema2ldif-project-and-components/"; + license = licenses.bsd3; + platforms = platforms.unix; + maintainers = with maintainers; [ das_j ]; + }; +} |