about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools')
-rw-r--r--nixpkgs/pkgs/tools/X11/ckbcomp/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/hsetroot/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/keynav/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/ksuperkey/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/ratmen/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/skippy-xd/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/X11/wpgtk/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/x11vnc/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/X11/x2vnc/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/X11/xcape/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xdotool/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xinput_calibrator/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xkb-switch/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/X11/xlayoutdisplay/default.nix34
-rw-r--r--nixpkgs/pkgs/tools/X11/xmacro/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xmagnify/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xnee/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/X11/xpointerbarrier/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/X11/xpra/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/X11/xpra/xf86videodummy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xvkbd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/acme.sh/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/ansible/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/awscli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/clair/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/admin/lego/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/lxd/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/admin/pulumi/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/admin/tigervnc/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/audio/abcmidi/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/ffmpeg.patch26
-rw-r--r--nixpkgs/pkgs/tools/audio/google-music-scripts/default.nix32
-rw-r--r--nixpkgs/pkgs/tools/audio/pasystray/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/audio/trx/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/backup/bareos/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/backup/dar/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/backup/duply/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/store-backup/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/backup/znapzend/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/bluetooth/blueman/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/compression/gzip/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/compression/zstd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/filesystems/btrfs-progs/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/filesystems/ceph/generic.nix3
-rw-r--r--nixpkgs/pkgs/tools/filesystems/disorderfs/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/filesystems/e2fsprogs/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/filesystems/file-rename/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/filesystems/go-mtpfs/deps.nix14
-rw-r--r--nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/gocryptfs/deps.nix103
-rw-r--r--nixpkgs/pkgs/tools/filesystems/squashfs/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch15
-rw-r--r--nixpkgs/pkgs/tools/filesystems/svnfs/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/filesystems/tmsu/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/graphics/fgallery/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/gifsicle/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/grim/default.nix34
-rw-r--r--nixpkgs/pkgs/tools/graphics/jhead/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/lprof/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/oxipng/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/graphics/pfstools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/qrencode/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/abduco/default.nix38
-rw-r--r--nixpkgs/pkgs/tools/misc/arp-scan/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/asciinema/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/misc/bandwidth/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/bat/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/bdf2psf/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/birdfont/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/misc/birdfont/xmlbird.nix28
-rw-r--r--nixpkgs/pkgs/tools/misc/bonfire/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/calamares/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/capture/0001-eval-fix.patch10
-rw-r--r--nixpkgs/pkgs/tools/misc/capture/0002-sane-defaults.patch22
-rw-r--r--nixpkgs/pkgs/tools/misc/capture/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/misc/chelf/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/misc/cht.sh/default.nix39
-rw-r--r--nixpkgs/pkgs/tools/misc/cloc/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/misc/coreutils/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/misc/crex/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/misc/ddcutil/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/debian-devscripts/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/misc/debianutils/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/debootstrap/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/diffoscope/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/direnv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/edid-decode/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/esptool/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/expect/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/fortune/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/misc/gif-for-cli/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/misc/gparted/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/graylog/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/grub/2.0x.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/grub/trusted.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/hebcal/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/hexyl/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/misc/ifdtool/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/misc/lbdb/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/lf/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/lf/deps.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/mbuffer/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/mc/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/mimeo/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/moreutils/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/misc/mstflint/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/ncdu/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/neofetch/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/oci-image-tool/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/misc/ostree/default.nix47
-rw-r--r--nixpkgs/pkgs/tools/misc/papis/default.nix62
-rw-r--r--nixpkgs/pkgs/tools/misc/parallel/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/parcellite/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/pb_cli/0001-eval-fix.patch10
-rw-r--r--nixpkgs/pkgs/tools/misc/pb_cli/default.nix40
-rw-r--r--nixpkgs/pkgs/tools/misc/picocom/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/pipreqs/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/misc/plantuml/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/profile-sync-daemon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/pubs/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/misc/qjoypad/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/recutils/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/misc/rmlint/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix59
-rw-r--r--nixpkgs/pkgs/tools/misc/rpm-ostree/fix-introspection-build.patch11
-rw-r--r--nixpkgs/pkgs/tools/misc/rrdtool/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/misc/sdate/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/misc/slurp/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/misc/snapper/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/sonota/default.nix54
-rw-r--r--nixpkgs/pkgs/tools/misc/sonota/set_resource_path.patch20
-rw-r--r--nixpkgs/pkgs/tools/misc/termtosvg/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/tmuxp/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/ttylog/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/txr/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/vdirsyncer/default.nix43
-rw-r--r--nixpkgs/pkgs/tools/misc/void/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/misc/watchexec/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/woeusb/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/xdaliclock/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/you-get/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/youtube-dl/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/yubico-piv-tool/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/yubikey-manager/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/misc/yubikey-personalization-gui/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/yubikey-personalization/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/amass/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/amass/deps.nix284
-rw-r--r--nixpkgs/pkgs/tools/networking/autossh/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/cmst/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/curl/7_59.nix111
-rw-r--r--nixpkgs/pkgs/tools/networking/curl/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/networking/curl/fix-ipv6-url-parsing.patch54
-rw-r--r--nixpkgs/pkgs/tools/networking/dd-agent/5.nix81
-rw-r--r--nixpkgs/pkgs/tools/networking/dd-agent/6.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/ddclient/ddclient-line-buffer-stdout.patch20
-rw-r--r--nixpkgs/pkgs/tools/networking/ddclient/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/dhcp/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/dnsperf/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/networking/dsniff/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/eternal-terminal/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/gmvault/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/networking/gping/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/networking/haproxy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/i2p/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/i2pd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/infiniband-diags/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/iperf/2.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/iperf/3.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/keepalived/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/minio-client/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/mosh/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/ndisc6/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/network-manager/applet.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/network-manager/default.nix41
-rw-r--r--nixpkgs/pkgs/tools/networking/network-manager/fix-paths.patch40
-rw-r--r--nixpkgs/pkgs/tools/networking/nyx/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ocserv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/offlineimap/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/networking/openfortivpn/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/openntpd/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/openssh/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/networking/pirate-get/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/polygraph/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/privoxy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/pykms/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/radvd/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/shadowsocks-libev/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/slimrat/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/smokeping/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/networking/spoofer/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ssmtp/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/strongswan/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/networking/strongswan/modprobe-path.patch56
-rw-r--r--nixpkgs/pkgs/tools/networking/stubby/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/swaks/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/swec/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/networking/tcpreplay/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/tinc/pre.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/twa/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ubridge/default.nix40
-rw-r--r--nixpkgs/pkgs/tools/networking/unbound/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/unbound/python.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/urlwatch/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/wavemon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/wget/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/networking/whois/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/wireguard-tools/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/package-management/apt/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/package-management/bunny/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/package-management/dpkg/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-review/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-universal-prefetch/default.nix32
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix/default.nix272
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixops/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixops/generic.nix10
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixops/unstable.nix6
-rw-r--r--nixpkgs/pkgs/tools/package-management/opkg/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/pacman/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/security/afl/default.nix122
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-config.h335
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-qemu-cpu-inl.h296
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-types.h79
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/cpu-exec.patch33
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/elfload.patch32
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/no-etc-install.patch11
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.10.0-glibc-2.27.patch28
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.3.0-glibc-2.26.patch121
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/syscall.patch25
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu-patches/translate-all.patch18
-rw-r--r--nixpkgs/pkgs/tools/security/afl/qemu.nix78
-rw-r--r--nixpkgs/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/bettercap/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/security/bettercap/deps.nix104
-rw-r--r--nixpkgs/pkgs/tools/security/ccid/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/certmgr/default.nix54
-rw-r--r--nixpkgs/pkgs/tools/security/clamav/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/diceware/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/ecdsautils/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/efitools/default.nix39
-rw-r--r--nixpkgs/pkgs/tools/security/eid-mw/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/gnupg/22.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/gopass/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/hashcash/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/security/hashcat/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/john/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/kbfs/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/keybase/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/security/keybase/gui.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/kpcli/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/kwalletcli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/monkeysphere/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/monkeysphere/monkeysphere.patch12
-rw-r--r--nixpkgs/pkgs/tools/security/opensc/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/pcsclite/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/pcsctools/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/security/signing-party/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/security/sshguard/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/tor/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/tor/torsocks.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/vault/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/Gemfile2
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock36
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/gemset.nix82
-rw-r--r--nixpkgs/pkgs/tools/system/acpica-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/bfs/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/system/facter/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/fakeroot/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/system/freeipmi/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/gdmap/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/inxi/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/system/logcheck/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/system/nvtop/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/osquery/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/plan9port/builder.sh4
-rw-r--r--nixpkgs/pkgs/tools/system/plan9port/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/system/proot/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/system/ps_mem/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/rsyslog/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/s6/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/sleuthkit/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/smartmontools/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/text/ansifilter/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/diffutils/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/discount/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/text/gnugrep/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/gnused/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/languagetool/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/mb2md/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/multitran/libmtquery/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/namazu/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/text/popfile/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/text/qshowdiff/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/text/schema2ldif/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/transifex-client/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/text/vale/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/text/vale/deps.nix246
-rw-r--r--nixpkgs/pkgs/tools/toml2nix/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/typesetting/biber/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/typesetting/docbook2odf/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/typesetting/docbook2x/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/typesetting/scdoc/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/typesetting/sile/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix39
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tikzit/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/typesetting/xmlto/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/video/bento4/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/video/bento4/libap4.patch5
-rw-r--r--nixpkgs/pkgs/tools/video/vncrec/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/virtualization/amazon-ecs-cli/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/virtualization/google-compute-engine/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/virtualization/nixos-container/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/virtualization/udocker/default.nix2
323 files changed, 2930 insertions, 2793 deletions
diff --git a/nixpkgs/pkgs/tools/X11/ckbcomp/default.nix b/nixpkgs/pkgs/tools/X11/ckbcomp/default.nix
index c8ade8db55fa..73ec20a57a3a 100644
--- a/nixpkgs/pkgs/tools/X11/ckbcomp/default.nix
+++ b/nixpkgs/pkgs/tools/X11/ckbcomp/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   name = "ckbcomp-${version}";
-  version = "1.187";
+  version = "1.188";
 
   src = fetchFromGitLab {
     domain = "salsa.debian.org";
     owner = "installer-team";
     repo = "console-setup";
     rev = version;
-    sha256 = "1dcsgdai5lm1r0bhlcfwh01s9k11iwgnd0111gpgbv568rs5isqh";
+    sha256 = "1741mg2wc5wa63clkijmv04zd6jxhc7c6aq7mkhqw1r4dhfhih19";
   };
 
   buildInputs = [ perl ];
diff --git a/nixpkgs/pkgs/tools/X11/hsetroot/default.nix b/nixpkgs/pkgs/tools/X11/hsetroot/default.nix
index 5baf6a4b51f8..cf2227403b01 100644
--- a/nixpkgs/pkgs/tools/X11/hsetroot/default.nix
+++ b/nixpkgs/pkgs/tools/X11/hsetroot/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoconf, automake, imlib2, libtool, libX11, pkgconfig, xproto }:
+{ stdenv, fetchurl, autoconf, automake, imlib2, libtool, libX11, pkgconfig, xorgproto }:
 
 stdenv.mkDerivation rec {
   name = "hsetroot-${version}";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ autoconf automake imlib2 libtool libX11 xproto ];
+  buildInputs = [ autoconf automake imlib2 libtool libX11 xorgproto ];
 
   patches = [ underlinkingPatch ];
 
diff --git a/nixpkgs/pkgs/tools/X11/keynav/default.nix b/nixpkgs/pkgs/tools/X11/keynav/default.nix
index 53ef29d7d43c..7863542d1900 100644
--- a/nixpkgs/pkgs/tools/X11/keynav/default.nix
+++ b/nixpkgs/pkgs/tools/X11/keynav/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libX11, xextproto, libXtst, libXi, libXext
+{ stdenv, fetchFromGitHub, pkgconfig, libX11, xorgproto, libXtst, libXi, libXext
 , libXinerama, libXrandr, glib, cairo, xdotool }:
 
 let release = "20180821"; in
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libX11 xextproto libXtst libXi libXext libXinerama libXrandr
+  buildInputs = [ libX11 xorgproto libXtst libXi libXext libXinerama libXrandr
                   glib cairo xdotool ];
 
   patchPhase = ''
diff --git a/nixpkgs/pkgs/tools/X11/ksuperkey/default.nix b/nixpkgs/pkgs/tools/X11/ksuperkey/default.nix
index cd80e3286576..f7d8914722a9 100644
--- a/nixpkgs/pkgs/tools/X11/ksuperkey/default.nix
+++ b/nixpkgs/pkgs/tools/X11/ksuperkey/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchgit, libX11, libXtst, pkgconfig, inputproto, libXi, xproto, xextproto }:
+{ stdenv, fetchgit, libX11, libXtst, pkgconfig, xorgproto, libXi }:
 
 stdenv.mkDerivation rec {
   name = "ksuperkey-git-2015-07-21";
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
-    libX11 libXtst inputproto libXi xproto xextproto
+    libX11 libXtst xorgproto libXi
   ];
 
   src = fetchgit {
diff --git a/nixpkgs/pkgs/tools/X11/ratmen/default.nix b/nixpkgs/pkgs/tools/X11/ratmen/default.nix
index 806a8388082a..aa5e346334a3 100644
--- a/nixpkgs/pkgs/tools/X11/ratmen/default.nix
+++ b/nixpkgs/pkgs/tools/X11/ratmen/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, perl, xproto, libX11}:
+{stdenv, fetchurl, perl, xorgproto, libX11}:
 let
   s = # Generated upstream information
   rec {
@@ -10,7 +10,7 @@ let
     sha256="0gnfqhnch9x8jhr87gvdjcp1wsqhchfjilpnqcwx5j0nlqyz6wi6";
   };
   buildInputs = [
-    perl xproto libX11
+    perl xorgproto libX11
   ];
 in
 stdenv.mkDerivation {
diff --git a/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix b/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
index 71a4f012a01d..16462f5243b7 100644
--- a/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
+++ b/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
@@ -1,9 +1,9 @@
-{stdenv, fetchgit, xproto, libX11, libXft, libXcomposite, libXdamage
-, libXext, xextproto, libXinerama, libjpeg, giflib, pkgconfig
+{stdenv, fetchgit, xorgproto, libX11, libXft, libXcomposite, libXdamage
+, libXext, libXinerama, libjpeg, giflib, pkgconfig
 }:
 let
   buildInputs = [
-    xproto libX11 libXft libXcomposite libXdamage libXext xextproto 
+    xorgproto libX11 libXft libXcomposite libXdamage libXext
     libXinerama libjpeg giflib pkgconfig
   ];
 in
diff --git a/nixpkgs/pkgs/tools/X11/wpgtk/default.nix b/nixpkgs/pkgs/tools/X11/wpgtk/default.nix
index cc7f213b88b6..59b0b4104cc0 100644
--- a/nixpkgs/pkgs/tools/X11/wpgtk/default.nix
+++ b/nixpkgs/pkgs/tools/X11/wpgtk/default.nix
@@ -3,13 +3,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "wpgtk";
-  version = "5.8.6";
+  version = "5.8.7";
 
   src = fetchFromGitHub {
     owner = "deviantfero";
     repo = "wpgtk";
     rev = "${version}";
-    sha256 = "1i29zdmgm8knp6mmz3nfl0dwn3vd2wcvf5vn0gg8sv2wjgk3i10y";
+    sha256 = "1pwchmipswk5sld1l5p8mdiicb848glnh7r3s5x9qvijp5s57c5i";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/tools/X11/x11vnc/default.nix b/nixpkgs/pkgs/tools/X11/x11vnc/default.nix
index 6dc785621b59..169f420357e6 100644
--- a/nixpkgs/pkgs/tools/X11/x11vnc/default.nix
+++ b/nixpkgs/pkgs/tools/X11/x11vnc/default.nix
@@ -4,23 +4,23 @@
 
 stdenv.mkDerivation rec {
   name = "x11vnc-${version}";
-  version = "0.9.15";
+  version = "0.9.16";
 
   src = fetchFromGitHub {
     owner = "LibVNC";
     repo = "x11vnc";
     rev = version;
-    sha256 = "1a1b65k1hsy4nhg2sx1yrpaz3vx6s7rmrx8nwygpaam8wpdlkh8p";
+    sha256 = "1g652mmi79pfq4p5p7spaswa164rpzjhc5rn2phy5pm71lm0vib1";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
 
   buildInputs =
-    [ xorg.libXfixes xorg.fixesproto openssl xorg.libXdamage
-      xorg.damageproto zlib xorg.libX11 xorg.xproto libjpeg
-      xorg.libXtst xorg.libXinerama xorg.xineramaproto xorg.libXrandr
-      xorg.randrproto xorg.libXext xorg.xextproto xorg.inputproto
-      xorg.recordproto xorg.libXi xorg.libXrender xorg.renderproto
+    [ xorg.libXfixes xorg.xorgproto openssl xorg.libXdamage
+      zlib xorg.libX11 libjpeg
+      xorg.libXtst xorg.libXinerama xorg.libXrandr
+      xorg.libXext
+      xorg.libXi xorg.libXrender
       libvncserver
     ];
 
diff --git a/nixpkgs/pkgs/tools/X11/x2vnc/default.nix b/nixpkgs/pkgs/tools/X11/x2vnc/default.nix
index f3ab23d364c5..cb01d0a4d4a4 100644
--- a/nixpkgs/pkgs/tools/X11/x2vnc/default.nix
+++ b/nixpkgs/pkgs/tools/X11/x2vnc/default.nix
@@ -8,9 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "00bh9j3m6snyd2fgnzhj5vlkj9ibh69gfny9bfzlxbnivb06s1yw";
   };
 
-  buildInputs =
-    [ xorg.libX11 xorg.xproto xorg.xextproto xorg.libXext
-      xorg.libXrandr xorg.randrproto
+  buildInputs = with xorg; [
+      libX11 xorgproto libXext libXrandr
     ];
 
   hardeningDisable = [ "format" ];
diff --git a/nixpkgs/pkgs/tools/X11/xcape/default.nix b/nixpkgs/pkgs/tools/X11/xcape/default.nix
index 23e675bb59b6..fae2d56fbbe8 100644
--- a/nixpkgs/pkgs/tools/X11/xcape/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xcape/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libX11, libXtst, xextproto,
+{ stdenv, fetchFromGitHub, pkgconfig, libX11, libXtst, xorgproto,
 libXi }:
 
 let
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ libX11 libXtst xextproto libXi ];
+  buildInputs = [ libX11 libXtst xorgproto libXi ];
 
   makeFlags = [ "PREFIX=$(out)" "MANDIR=/share/man/man1" ];
 
diff --git a/nixpkgs/pkgs/tools/X11/xdotool/default.nix b/nixpkgs/pkgs/tools/X11/xdotool/default.nix
index 59ddac0eca15..bb6abfa9b586 100644
--- a/nixpkgs/pkgs/tools/X11/xdotool/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xdotool/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libX11, perl, libXtst, xextproto, libXi, libXinerama, libxkbcommon }:
+{ stdenv, fetchurl, pkgconfig, libX11, perl, libXtst, xorgproto, libXi, libXinerama, libxkbcommon }:
 
 stdenv.mkDerivation rec {
   name = "xdotool-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig perl ];
-  buildInputs = [ libX11 libXtst xextproto libXi libXinerama libxkbcommon ];
+  buildInputs = [ libX11 libXtst xorgproto libXi libXinerama libxkbcommon ];
 
   preBuild = ''
     mkdir -p $out/lib
diff --git a/nixpkgs/pkgs/tools/X11/xinput_calibrator/default.nix b/nixpkgs/pkgs/tools/X11/xinput_calibrator/default.nix
index 1ed153030692..43b46fcb8d7b 100644
--- a/nixpkgs/pkgs/tools/X11/xinput_calibrator/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xinput_calibrator/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libXi, inputproto, autoconf, automake, libtool, m4, xlibsWrapper, pkgconfig }:
+{ stdenv, fetchurl, libXi, xorgproto, autoconf, automake, libtool, m4, xlibsWrapper, pkgconfig }:
 
 stdenv.mkDerivation rec {
   pname = "xinput_calibrator";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   preConfigure = "./autogen.sh --with-gui=X11";
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ inputproto libXi autoconf automake libtool m4 xlibsWrapper ];
+  buildInputs = [ xorgproto libXi autoconf automake libtool m4 xlibsWrapper ];
 
   meta = {
     homepage = https://github.com/tias/xinput_calibrator;
diff --git a/nixpkgs/pkgs/tools/X11/xkb-switch/default.nix b/nixpkgs/pkgs/tools/X11/xkb-switch/default.nix
index 4afa56f7fe27..e3bbd5990757 100644
--- a/nixpkgs/pkgs/tools/X11/xkb-switch/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xkb-switch/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, fetchgit, cmake, libX11 }:
+{ stdenv, fetchFromGitHub, cmake, libX11, libxkbfile }:
 
 stdenv.mkDerivation rec {
   name = "xkb-switch-${version}";
-  version = "1.3.1";
+  version = "1.5.0";
 
-  src = fetchgit {
-    url = https://github.com/ierton/xkb-switch.git;
-    rev = "351c84370ad0fa4aaaab9a32817859b1d5fb2a11";
-    sha256 = "0ilj3amwidi7imjvi8hr62y7j8zl809r5xhs7kv816773x32gpxq";
+  src = fetchFromGitHub {
+    owner = "ierton";
+    repo = "xkb-switch";
+    rev = version;
+    sha256 = "03wk2gg3py97kx0kjzbjrikld1sa55i6mgi398jbcbiyx2gjna78";
   };
 
-  buildInputs = [ cmake libX11 ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libX11 libxkbfile ];
 
   meta = with stdenv.lib; {
     description = "Switch your X keyboard layouts from the command line";
-
     homepage = https://github.com/ierton/xkb-switch;
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ smironov ];
     platforms = platforms.linux;
   };
 }
-
diff --git a/nixpkgs/pkgs/tools/X11/xlayoutdisplay/default.nix b/nixpkgs/pkgs/tools/X11/xlayoutdisplay/default.nix
new file mode 100644
index 000000000000..5983cd3e663a
--- /dev/null
+++ b/nixpkgs/pkgs/tools/X11/xlayoutdisplay/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, xorg, boost, cmake, gtest }:
+
+stdenv.mkDerivation rec {
+  name = "xlayoutdisplay-${version}";
+  version = "1.0.2";
+
+  src = fetchFromGitHub {
+    owner = "alex-courtis";
+    repo = "xlayoutdisplay";
+    rev = "v${version}";
+    sha256 = "1cqn98lpx9rkfhavbqalaaljw351hvqsrszgqnwvcyq05vq26dwx";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = with xorg; [ libX11 libXrandr libXcursor boost ];
+  checkInputs = [ gtest ];
+
+  doCheck = true;
+
+  # format security fixup
+  postPatch = ''
+    substituteInPlace test/test-Monitors.cpp \
+      --replace 'fprintf(lidStateFile, contents);' \
+                'fputs(contents, lidStateFile);'
+
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Detects and arranges linux display outputs, using XRandR for detection and xrandr for arrangement";
+    homepage = https://github.com/alex-courtis/xlayoutdisplay;
+    maintainers = with maintainers; [ dtzWill ];
+    license = licenses.asl20;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/X11/xmacro/default.nix b/nixpkgs/pkgs/tools/X11/xmacro/default.nix
index fee601d15750..fd944f400446 100644
--- a/nixpkgs/pkgs/tools/X11/xmacro/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xmacro/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libX11, libXtst, xextproto, libXi, inputproto }:
+{ stdenv, fetchurl, libX11, libXtst, xorgproto, libXi }:
 
 stdenv.mkDerivation rec {
   name = "xmacro-${version}";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   preInstall = "echo -e 'install:\n	mkdir \${out}/bin;\n	cp xmacrorec2 xmacroplay \${out}/bin;' >>Makefile; ";
 
-  buildInputs = [ libX11 libXtst xextproto libXi inputproto ];
+  buildInputs = [ libX11 libXtst xorgproto libXi ];
 
   meta = {
     platforms = stdenv.lib.platforms.linux;
diff --git a/nixpkgs/pkgs/tools/X11/xmagnify/default.nix b/nixpkgs/pkgs/tools/X11/xmagnify/default.nix
index ecc1f6b6f25c..463df6ad9351 100644
--- a/nixpkgs/pkgs/tools/X11/xmagnify/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xmagnify/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitLab, libX11, xproto }:
+{ stdenv, fetchFromGitLab, libX11, xorgproto }:
 
 stdenv.mkDerivation rec {
   name = "xmagnify-0.1.0";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   prePatch = ''substituteInPlace ./Makefile --replace /usr $out'';
 
-  buildInputs = [ libX11 xproto ];
+  buildInputs = [ libX11 xorgproto ];
 
   meta = with stdenv.lib; {
     description = "Tiny screen magnifier for X11";
diff --git a/nixpkgs/pkgs/tools/X11/xnee/default.nix b/nixpkgs/pkgs/tools/X11/xnee/default.nix
index c7fd376a8edc..7b7d5d1aeedc 100644
--- a/nixpkgs/pkgs/tools/X11/xnee/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xnee/default.nix
@@ -1,5 +1,5 @@
-{ fetchurl, stdenv, libX11, xproto, libXext, xextproto, libXtst
-, gtk2, libXi, inputproto, pkgconfig, recordproto, texinfo }:
+{ fetchurl, stdenv, libX11, xorgproto, libXext, libXtst
+, gtk2, libXi, pkgconfig, texinfo }:
 
 stdenv.mkDerivation rec {
   version = "3.19";
@@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
     '';
 
   buildInputs =
-    [ libX11 xproto libXext xextproto libXtst gtk2
-      libXi inputproto pkgconfig recordproto
+    [ libX11 xorgproto libXext libXtst gtk2
+      libXi pkgconfig
       texinfo
     ];
 
diff --git a/nixpkgs/pkgs/tools/X11/xpointerbarrier/default.nix b/nixpkgs/pkgs/tools/X11/xpointerbarrier/default.nix
index 50d0ac4f2b9a..435f2b2e9801 100644
--- a/nixpkgs/pkgs/tools/X11/xpointerbarrier/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xpointerbarrier/default.nix
@@ -1,13 +1,11 @@
-{ stdenv, xorg, fetchFromGitHub }:
+{ stdenv, xorg, fetchgit }:
 stdenv.mkDerivation rec {
   name = "xpointerbarrier-${version}";
-  version = "17.11";
-
-  src = fetchFromGitHub {
-    owner = "vain";
-    repo = "xpointerbarrier";
+  version = "18.06";
+  src = fetchgit {
+    url = "https://www.uninformativ.de/git/xpointerbarrier.git";
     rev = "v${version}";
-    sha256 = "0s6bd58xjyc2nqzjq6aglx6z64x9xavda3i6p8vrmxqmcpik54nm";
+    sha256 = "1k7i641x18qhjm0llsaqn2h2g9k31kgv6p8sildllmbvgxyrgvq7";
   };
 
   buildInputs = [ xorg.libX11 xorg.libXfixes xorg.libXrandr ];
@@ -15,7 +13,7 @@ stdenv.mkDerivation rec {
   makeFlags = "prefix=$(out)";
 
   meta = {
-    homepage = https://github.com/vain/xpointerbarrier;
+    homepage = https://uninformativ.de/git/xpointerbarrier;
     description = "Create X11 pointer barriers around your working area";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.xzfc ];
diff --git a/nixpkgs/pkgs/tools/X11/xpra/default.nix b/nixpkgs/pkgs/tools/X11/xpra/default.nix
index ecbd36e11625..1d6ea45c9c5e 100644
--- a/nixpkgs/pkgs/tools/X11/xpra/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xpra/default.nix
@@ -29,14 +29,13 @@ in buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [ pkgconfig gobject-introspection wrapGAppsHook ];
-  buildInputs = [
+  buildInputs = with xorg; [
+    libX11 xorgproto libXrender libXi
+    libXtst libXfixes libXcomposite libXdamage
+    libXrandr libxkbfile
+    ] ++ [
     cython
 
-    xorg.libX11 xorg.renderproto xorg.libXrender xorg.libXi xorg.inputproto xorg.kbproto
-    xorg.randrproto xorg.damageproto xorg.compositeproto xorg.xextproto xorg.recordproto
-    xorg.xproto xorg.fixesproto xorg.libXtst xorg.libXfixes xorg.libXcomposite xorg.libXdamage
-    xorg.libXrandr xorg.libxkbfile
-
     pango cairo gdk_pixbuf atk gtk3 glib
 
     ffmpeg libvpx x264 libwebp
diff --git a/nixpkgs/pkgs/tools/X11/xpra/xf86videodummy/default.nix b/nixpkgs/pkgs/tools/X11/xpra/xf86videodummy/default.nix
index ab786d9bce84..8d04745ed7fc 100644
--- a/nixpkgs/pkgs/tools/X11/xpra/xf86videodummy/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xpra/xf86videodummy/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl
-, fontsproto, randrproto, renderproto, videoproto, xf86dgaproto, xorgserver, xproto
+, xorgproto, xorgserver
 , pkgconfig
 , xpra }:
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     ./0005-support-for-30-bit-depth-in-dummy-driver.patch
   ];
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ];
+  buildInputs = [ xorgproto xorgserver ];
 
   meta = {
     description = "Dummy driver for Xorg with xpra patches";
diff --git a/nixpkgs/pkgs/tools/X11/xvkbd/default.nix b/nixpkgs/pkgs/tools/X11/xvkbd/default.nix
index 6ccc8a24caee..368012b468f3 100644
--- a/nixpkgs/pkgs/tools/X11/xvkbd/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xvkbd/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, imake, libXt, libXaw, libXtst
-, libXi, libXpm, xextproto, gccmakedep, Xaw3d }:
+, libXi, libXpm, xorgproto, gccmakedep, Xaw3d }:
 
 stdenv.mkDerivation rec {
   name = "xvkbd-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ imake gccmakedep ];
-  buildInputs = [ libXt libXaw libXtst xextproto libXi Xaw3d libXpm ];
+  buildInputs = [ libXt libXaw libXtst xorgproto libXi Xaw3d libXpm ];
   installTargets = [ "install" "install.man" ];
   makeFlags = [
     "BINDIR=$(out)/bin"
diff --git a/nixpkgs/pkgs/tools/admin/acme.sh/default.nix b/nixpkgs/pkgs/tools/admin/acme.sh/default.nix
index 4bdc9f096cf6..fc4f5e8843e4 100644
--- a/nixpkgs/pkgs/tools/admin/acme.sh/default.nix
+++ b/nixpkgs/pkgs/tools/admin/acme.sh/default.nix
@@ -1,13 +1,13 @@
 { stdenv, lib, fetchFromGitHub, makeWrapper, curl, openssl, socat, iproute }:
 stdenv.mkDerivation rec {
   name = "acme.sh-${version}";
-  version = "2.7.9";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "Neilpang";
     repo = "acme.sh";
     rev = version;
-    sha256 = "1fp1sifhm4in0cqmc8i0zms7fqxw0rgfi1rkkm496d3068a4a51x";
+    sha256 = "1h22bmx065v0lhwkr4zykybfl6ppjr2wibgwy2wnihy30g28zq7v";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix b/nixpkgs/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix
index 33b83bdb558f..02386a135f11 100644
--- a/nixpkgs/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix
+++ b/nixpkgs/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "amazon-ecr-credential-helper-${version}";
-  version = "0.1.0";
+  version = "0.3.0";
 
   goPackagePath = "github.com/awslabs/amazon-ecr-credential-helper";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "awslabs";
     repo = "amazon-ecr-credential-helper";
     rev = "v${version}";
-    sha256 = "0mpwm21fphg117ryxda7696s8bnvi4bbc8rvi4zp2m1rhl04j2yy";
+    sha256 = "06pcwgahcbi13ca5rs6giwdw3w364lbvmzcs4ka82igvcffxjvnd";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/admin/ansible/default.nix b/nixpkgs/pkgs/tools/admin/ansible/default.nix
index 73d1929c703d..e3916b0f8a9e 100644
--- a/nixpkgs/pkgs/tools/admin/ansible/default.nix
+++ b/nixpkgs/pkgs/tools/admin/ansible/default.nix
@@ -63,8 +63,8 @@ in rec {
   };
 
   ansible_2_7 = generic {
-    version = "2.7.4";
-    sha256  = "0p1n6yyc632522fl2r247p0jg4mncc7z4hqngzbh1zxq3dcb12s9";
+    version = "2.7.5";
+    sha256  = "1fsif2jmkrrgiawsd8r6sxrqvh01fvrmdhas0p540a6i9fby3yda";
   };
 
   ansible2 = ansible_2_7;
diff --git a/nixpkgs/pkgs/tools/admin/awscli/default.nix b/nixpkgs/pkgs/tools/admin/awscli/default.nix
index ee17922cb782..1f418ecf97fc 100644
--- a/nixpkgs/pkgs/tools/admin/awscli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/awscli/default.nix
@@ -19,11 +19,11 @@ let
 
 in py.pkgs.buildPythonApplication rec {
   pname = "awscli";
-  version = "1.16.72"; # N.B: if you change this, change botocore to a matching version too
+  version = "1.16.89"; # N.B: if you change this, change botocore to a matching version too
 
   src = py.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "1ld4a6yxnh0v96fjjp8wjf7zvx41grl57mqg92p6zbfssr2jbqfv";
+    sha256 = "1i2f8nx8w6150jws0b732pvh8s5r6wq9yvv2m0a2k7cz1ihnzkxd";
   };
 
   # No tests included
diff --git a/nixpkgs/pkgs/tools/admin/clair/default.nix b/nixpkgs/pkgs/tools/admin/clair/default.nix
new file mode 100644
index 000000000000..8f521ed36d09
--- /dev/null
+++ b/nixpkgs/pkgs/tools/admin/clair/default.nix
@@ -0,0 +1,29 @@
+{ lib, buildGoPackage, fetchFromGitHub, makeWrapper, rpm, xz }:
+
+buildGoPackage rec {
+  pname = "clair";
+  version = "2.0.7";
+
+  goPackagePath = "github.com/coreos/clair";
+
+  src = fetchFromGitHub {
+    owner = "coreos";
+    repo = "clair";
+    rev = "v${version}";
+    sha256 = "0n4pxdw71hd1rxzgf422fvycpjkrxxnvcidys0hpjy7gs88zjz5x";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    wrapProgram $bin/bin/clair \
+      --prefix PATH : "${lib.makeBinPath [ rpm xz ]}"
+  '';
+
+  meta = with lib; {
+    description = "Vulnerability Static Analysis for Containers";
+    homepage = https://github.com/coreos/clair;
+    license = licenses.asl20;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/admin/lego/default.nix b/nixpkgs/pkgs/tools/admin/lego/default.nix
index 4805a94e7e9e..e1964b2f1611 100644
--- a/nixpkgs/pkgs/tools/admin/lego/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lego/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "lego-${version}";
-  version = "1.2.1";
+  version = "2.0.1";
   rev = "v${version}";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "xenolf";
     repo = "lego";
-    sha256 = "1b2cv78v54afflz3gfyidkwzq7r2h5j45rmz0ybps03pr0hs4gk3";
+    sha256 = "17q5j2zxc2c0xw8pfhnls67dmwrkicjmd2jdyim3fhi5cgxl9h93";
   };
 
   goPackagePath = "github.com/xenolf/lego";
diff --git a/nixpkgs/pkgs/tools/admin/lxd/default.nix b/nixpkgs/pkgs/tools/admin/lxd/default.nix
index 9eb249bc5879..e48b525caba6 100644
--- a/nixpkgs/pkgs/tools/admin/lxd/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lxd/default.nix
@@ -3,6 +3,7 @@
 , squashfsTools, iproute, iptables, ebtables, libcap, dqlite
 , sqlite-replication
 , writeShellScriptBin, apparmor-profiles, apparmor-parser
+, bash
 }:
 
 buildGoPackage rec {
@@ -30,8 +31,8 @@ buildGoPackage rec {
     # binaries from test/
     rm $bin/bin/{deps,macaroon-identity}
 
-    wrapProgram $bin/bin/lxd --prefix PATH ":" ${stdenv.lib.makeBinPath [
-      acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute iptables ebtables
+    wrapProgram $bin/bin/lxd --prefix PATH : ${stdenv.lib.makeBinPath [
+      acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute iptables ebtables bash
       (writeShellScriptBin "apparmor_parser" ''
         exec '${apparmor-parser}/bin/apparmor_parser' -I '${apparmor-profiles}/etc/apparmor.d' "$@"
       '')
diff --git a/nixpkgs/pkgs/tools/admin/pulumi/default.nix b/nixpkgs/pkgs/tools/admin/pulumi/default.nix
index e2e1980dad92..956f688bb0a9 100644
--- a/nixpkgs/pkgs/tools/admin/pulumi/default.nix
+++ b/nixpkgs/pkgs/tools/admin/pulumi/default.nix
@@ -1,18 +1,20 @@
-{ stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, autoPatchelfHook }:
+
+with lib;
 
 let
 
-  version = "0.16.7";
+  version = "0.16.11";
 
   # switch the dropdown to “manual” on https://pulumi.io/quickstart/install.html # TODO: update script
   pulumiArchPackage = {
     "x86_64-linux" = {
       url = "https://get.pulumi.com/releases/sdk/pulumi-v${version}-linux-x64.tar.gz";
-      sha256 = "1l1cn8pk05vl7vpmhny9rlz1hj0iqclqjj1r2q12qip7f4qkgsfw";
+      sha256 = "176nwqp1dd8vdpl4qajaq2w458f8pgavwvwd93lgnccqw3cznv75";
     };
     "x86_64-darwin" = {
       url = "https://get.pulumi.com/releases/sdk/pulumi-v${version}-darwin-x64.tar.gz";
-      sha256 = "0p07jvgy0xl524fgb5d9wijxa91isv4h4mcn9qghycqj90yqnjhx";
+      sha256 = "1mkz9bkkvpvbpzfnvwpx4892zd05bvjz5rbfwhwzm3wzfcjjs16i";
     };
   };
 
@@ -27,7 +29,9 @@ in stdenv.mkDerivation rec {
     cp * $out/bin/
   '';
 
-  meta = with stdenv.lib; {
+  buildInputs = optionals stdenv.isLinux [ autoPatchelfHook ];
+
+  meta = {
     homepage = https://pulumi.io/;
     description = "Pulumi is a cloud development platform that makes creating cloud programs easy and productive";
     license = with licenses; [ asl20 ];
diff --git a/nixpkgs/pkgs/tools/admin/tigervnc/default.nix b/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
index 317646501caa..37a0f47c7afe 100644
--- a/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
+++ b/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
@@ -3,7 +3,7 @@
 , libjpeg_turbo, pixman, fltk
 , fontDirectories
 , cmake, gettext, libtool
-, glproto, libGLU
+, libGLU
 , gnutls, pam, nettle
 , xterm, openssh
 , makeWrapper}:
@@ -80,13 +80,11 @@ stdenv.mkDerivation rec {
   buildInputs = with xorg; [
     libjpeg_turbo fltk pixman
     gnutls pam nettle
-    fixesproto damageproto compositeproto randrproto
-    xcmiscproto bigreqsproto randrproto renderproto
-    fontsproto videoproto scrnsaverproto resourceproto presentproto
+    xorgproto
     utilmacros libXtst libXext libX11 libXext libICE libXi libSM libXft
-    libxkbfile libXfont2 libpciaccess xineramaproto
-    glproto libGLU
-  ] ++ xorgserver.buildInputs;
+    libxkbfile libXfont2 libpciaccess
+    libGLU
+  ] ++ xorg.xorgserver.buildInputs;
 
   nativeBuildInputs = with xorg; [ cmake zlib gettext libtool utilmacros fontutil makeWrapper ]
     ++ xorg.xorgserver.nativeBuildInputs;
diff --git a/nixpkgs/pkgs/tools/audio/abcmidi/default.nix b/nixpkgs/pkgs/tools/audio/abcmidi/default.nix
index 03e468a9b0a8..ffea29691d69 100644
--- a/nixpkgs/pkgs/tools/audio/abcmidi/default.nix
+++ b/nixpkgs/pkgs/tools/audio/abcmidi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "abcMIDI-${version}";
-  version = "2018.12.01";
+  version = "2019.01.01";
 
   src = fetchzip {
     url = "https://ifdo.ca/~seymour/runabc/${name}.zip";
-    sha256 = "133kdyin2lwidlnd8ivjyymrrb0rr1028apj2biyp6l0l5yrqw78";
+    sha256 = "10kqxw4vrz7xa8fc9z5cdyrvks8fsr2s9nai9yg1z9p5w7xhagrg";
   };
 
   # There is also a file called "makefile" which seems to be preferred by the standard build phase
diff --git a/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/default.nix b/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/default.nix
index f68671bc6fba..4c28c4f3458f 100644
--- a/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/default.nix
+++ b/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/default.nix
@@ -15,10 +15,13 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [ "-DTAGLIB_MIN_VERSION=${(builtins.parseDrvName taglib.name).version}" ];
 
-  patches = [ (fetchpatch {
-    url = "https://bitbucket.org/acoustid/acoustid-fingerprinter/commits/632e87969c3a5562a5d4842b03613267ba6236b2/raw";
-    sha256 = "15hm9knrpqn3yqrwyjz4zh2aypwbcycd0c5svrsy1fb2h2rh05jk";
-  }) ];
+  patches = [
+    (fetchpatch {
+      url = "https://bitbucket.org/acoustid/acoustid-fingerprinter/commits/632e87969c3a5562a5d4842b03613267ba6236b2/raw";
+      sha256 = "15hm9knrpqn3yqrwyjz4zh2aypwbcycd0c5svrsy1fb2h2rh05jk";
+    })
+    ./ffmpeg.patch
+  ];
 
   meta = with stdenv.lib; {
     homepage = https://acoustid.org/fingerprinter;
diff --git a/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/ffmpeg.patch b/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/ffmpeg.patch
new file mode 100644
index 000000000000..f3eacae26f77
--- /dev/null
+++ b/nixpkgs/pkgs/tools/audio/acoustid-fingerprinter/ffmpeg.patch
@@ -0,0 +1,26 @@
+diff --git a/decoder.h b/decoder.h
+index 028f58f..4428ac1 100644
+--- a/decoder.h
++++ b/decoder.h
+@@ -39,6 +39,8 @@ extern "C" {
+ #define AV_SAMPLE_FMT_S16 SAMPLE_FMT_S16
+ #endif
+ 
++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
++
+ class Decoder
+ {
+ public:
+diff --git a/ffmpeg/audioconvert.h b/ffmpeg/audioconvert.h
+index 2b28e2e..a699986 100644
+--- a/ffmpeg/audioconvert.h
++++ b/ffmpeg/audioconvert.h
+@@ -79,7 +79,7 @@ int avcodec_channel_layout_num_channels(int64_t channel_layout);
+  * @param fmt_name Format name, or NULL if unknown
+  * @return Channel layout mask
+  */
+-uint64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name);
++uint64_t avcodec_guess_channel_layout(int nb_channels, enum AVCodecID codec_id, const char *fmt_name);
+ 
+ struct AVAudioConvert;
+ typedef struct AVAudioConvert AVAudioConvert;
diff --git a/nixpkgs/pkgs/tools/audio/google-music-scripts/default.nix b/nixpkgs/pkgs/tools/audio/google-music-scripts/default.nix
new file mode 100644
index 000000000000..a718ea557469
--- /dev/null
+++ b/nixpkgs/pkgs/tools/audio/google-music-scripts/default.nix
@@ -0,0 +1,32 @@
+{ lib, python3 }:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "google-music-scripts";
+  version = "3.0.0";
+
+  src = python3.pkgs.fetchPypi {
+    inherit pname version;
+    sha256 = "12risivi11z3shrgs1kpi7x6lvk113cbp3dnczw9mmqhb4mmwviy";
+  };
+
+  propagatedBuildInputs = with python3.pkgs; [
+    appdirs
+    audio-metadata
+    click
+    click-default-group
+    google-music
+    google-music-utils
+    logzero
+    tomlkit
+  ];
+
+  # No tests
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = https://github.com/thebigmunch/google-music-scripts;
+    description = "A CLI utility for interacting with Google Music";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jakewaksbaum ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/audio/pasystray/default.nix b/nixpkgs/pkgs/tools/audio/pasystray/default.nix
index 57896fd7f637..41b3b15738d6 100644
--- a/nixpkgs/pkgs/tools/audio/pasystray/default.nix
+++ b/nixpkgs/pkgs/tools/audio/pasystray/default.nix
@@ -1,38 +1,26 @@
-{ stdenv, fetchFromGitHub, autoconf, automake, makeWrapper, pkgconfig
+{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, wrapGAppsHook
 , gnome3, avahi, gtk3, libappindicator-gtk3, libnotify, libpulseaudio
 , xlibsWrapper
 }:
 
 stdenv.mkDerivation rec {
   name = "pasystray-${version}";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "christophgysin";
     repo = "pasystray";
     rev = name;
-    sha256 = "0cc9hjyw4gr4ip4lw74pzb1l9sxs3ffhf0xn0m1fhmyfbjyixwkh";
+    sha256 = "0xx1bm9kimgq11a359ikabdndqg5q54pn1d1dyyjnrj0s41168fk";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig autoreconfHook wrapGAppsHook ];
   buildInputs = [
-    autoconf automake makeWrapper
     gnome3.defaultIconTheme
     avahi gtk3 libappindicator-gtk3 libnotify libpulseaudio xlibsWrapper
+    gnome3.gsettings-desktop-schemas
   ];
 
-  preConfigure = ''
-    aclocal
-    autoconf
-    autoheader
-    automake --add-missing
-  '';
-
-  preFixup = ''
-    wrapProgram "$out/bin/pasystray" \
-      --prefix XDG_DATA_DIRS : "${gnome3.defaultIconTheme}/share:$GSETTINGS_SCHEMAS_PATH"
-  '';
-
   meta = with stdenv.lib; {
     description = "PulseAudio system tray";
     homepage = https://github.com/christophgysin/pasystray;
diff --git a/nixpkgs/pkgs/tools/audio/trx/default.nix b/nixpkgs/pkgs/tools/audio/trx/default.nix
new file mode 100644
index 000000000000..a4dd7197be0f
--- /dev/null
+++ b/nixpkgs/pkgs/tools/audio/trx/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchgit, alsaLib, libopus, ortp, bctoolbox }:
+
+stdenv.mkDerivation rec {
+  name = "trx-unstable-${version}";
+  version = "2018-01-23";
+
+  src = fetchgit {
+    url = "http://www.pogo.org.uk/~mark/trx.git";
+    rev = "66b4707a24172751a131e24d2a800496c699137f";
+    sha256 = "0w0960p25944b30lkc8n4lj14xgsf0fjpmxqwlz2r8wl642bqnfm";
+  };
+
+  buildInputs = [ alsaLib libopus ortp bctoolbox ];
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    description = "A simple toolset for broadcasting live audio using RTP/UDP and Opus";
+    homepage = http://www.pogo.org.uk/~mark/trx/;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.hansjoergschurr ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/backup/bareos/default.nix b/nixpkgs/pkgs/tools/backup/bareos/default.nix
index 9d82777da817..5cf675a9af10 100644
--- a/nixpkgs/pkgs/tools/backup/bareos/default.nix
+++ b/nixpkgs/pkgs/tools/backup/bareos/default.nix
@@ -77,6 +77,5 @@ stdenv.mkDerivation rec {
     description = "A fork of the bacula project";
     license = licenses.agpl3;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/backup/dar/default.nix b/nixpkgs/pkgs/tools/backup/dar/default.nix
index 9a842c45f9c4..80d5937973f7 100644
--- a/nixpkgs/pkgs/tools/backup/dar/default.nix
+++ b/nixpkgs/pkgs/tools/backup/dar/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "2.5.18";
+  version = "2.6.1";
   name = "dar-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${name}.tar.gz";
-    sha256 = "14002ai4xji0dczgiargxs3z8yylswj8z94higcsw09xk13izlkk";
+    sha256 = "107l9nirlqp7vx542ybza5vdsyykam4bjziq47xyb9hr7js86020";
   };
 
   buildInputs = [ zlib bzip2 openssl lzo libgcrypt gpgme xz ]
diff --git a/nixpkgs/pkgs/tools/backup/duply/default.nix b/nixpkgs/pkgs/tools/backup/duply/default.nix
index 2ce6f7e92e7a..0ccc964c3e6a 100644
--- a/nixpkgs/pkgs/tools/backup/duply/default.nix
+++ b/nixpkgs/pkgs/tools/backup/duply/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "duply-${version}";
-  version = "2.1";
+  version = "2.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/ftplicity/duply%20%28simple%20duplicity%29/2.1.x/duply_${version}.tgz";
-    sha256 = "0i5j7h7h6ssrwhll0sfhymisshg54kx7j45zcqffzjxa0ylvzlm8";
+    url = "mirror://sourceforge/project/ftplicity/duply%20%28simple%20duplicity%29/2.2.x/duply_${version}.tgz";
+    sha256 = "1bd7ivswxmxg64n0fnwgz6bkgckhdhz2qnnlkqqx4ccdxx15krbr";
   };
 
   buildInputs = [ txt2man makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/backup/store-backup/default.nix b/nixpkgs/pkgs/tools/backup/store-backup/default.nix
index 4f8c234b752f..5f44e19fdf27 100644
--- a/nixpkgs/pkgs/tools/backup/store-backup/default.nix
+++ b/nixpkgs/pkgs/tools/backup/store-backup/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
     for p in $out/bin/*
       do wrapProgram "$p" \
-      --prefix PERL5LIB ":" "${perlPackages.DBFile}/lib/perl5/site_perl" \
+      --prefix PERL5LIB ":" "${perlPackages.DBFile}/${perlPackages.perl.libPrefix}" \
       --prefix PATH ":" "${stdenv.lib.makeBinPath [ which bzip2 ]}"
     done
 
diff --git a/nixpkgs/pkgs/tools/backup/znapzend/default.nix b/nixpkgs/pkgs/tools/backup/znapzend/default.nix
index bc57215c0c4b..5314eef9eb6a 100644
--- a/nixpkgs/pkgs/tools/backup/znapzend/default.nix
+++ b/nixpkgs/pkgs/tools/backup/znapzend/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     sha256 = checksum;
   };
 
-  buildInputs = [ wget perl perlPackages.TestHarness MojoIOLoopForkCall-0-17 perlPackages.TAPParserSourceHandlerpgTAP ];
+  buildInputs = [ wget perl MojoIOLoopForkCall-0-17 perlPackages.TAPParserSourceHandlerpgTAP ];
 
   nativeBuildInputs = [ autoconf automake ];
 
@@ -52,7 +52,6 @@ stdenv.mkDerivation rec {
   postInstall = ''
     substituteInPlace $out/bin/znapzend --replace "${perl}/bin/perl" \
       "${perl}/bin/perl \
-      -I${perlPackages.TestHarness}/${perl.libPrefix} \
       -I${Mojolicious-6-46}/${perl.libPrefix} \
       -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
       -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
@@ -60,7 +59,6 @@ stdenv.mkDerivation rec {
       "
     substituteInPlace $out/bin/znapzendzetup --replace "${perl}/bin/perl" \
       "${perl}/bin/perl \
-      -I${perlPackages.TestHarness}/${perl.libPrefix} \
       -I${Mojolicious-6-46}/${perl.libPrefix} \
       -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
       -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
@@ -68,7 +66,6 @@ stdenv.mkDerivation rec {
       "
     substituteInPlace $out/bin/znapzendztatz --replace "${perl}/bin/perl" \
       "${perl}/bin/perl \
-      -I${perlPackages.TestHarness}/${perl.libPrefix} \
       -I${Mojolicious-6-46}/${perl.libPrefix} \
       -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
       -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
diff --git a/nixpkgs/pkgs/tools/bluetooth/blueman/default.nix b/nixpkgs/pkgs/tools/bluetooth/blueman/default.nix
index fe180e8abc9c..63affdde7183 100644
--- a/nixpkgs/pkgs/tools/bluetooth/blueman/default.nix
+++ b/nixpkgs/pkgs/tools/bluetooth/blueman/default.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "blueman-${version}";
-  version = "2.0.6";
+  version = "2.0.8";
 
   src = fetchurl {
     url = "https://github.com/blueman-project/blueman/releases/download/${version}/${name}.tar.xz";
-    sha256 = "0bc1lfsjkbrg9f1jnw6mx7bp04x76ljy9g0rgx7n80vaj0hpz3bj";
+    sha256 = "0kkh6jppqcn3yf70vnny1l015kxrz3dxw4g774gl02lh9ixx1bq4";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/compression/gzip/default.nix b/nixpkgs/pkgs/tools/compression/gzip/default.nix
index 09065ede6827..bd4d85e90e36 100644
--- a/nixpkgs/pkgs/tools/compression/gzip/default.nix
+++ b/nixpkgs/pkgs/tools/compression/gzip/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "gzip-${version}";
-  version = "1.9";
+  version = "1.10";
 
   src = fetchurl {
     url = "mirror://gnu/gzip/${name}.tar.xz";
-    sha256 = "16h8g4acy7fgfxcjacr3wijjsnixwsfd2jhz3zwdi2qrzi262l5f";
+    sha256 = "1h6p374d3j8d4cdfydzls021xa2yby8myc0h8d6m8bc7k6ncq9c4";
   };
 
   outputs = [ "out" "man" "info" ];
@@ -15,10 +15,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ xz.bin ];
 
-  # In stdenv-linux, prevent a dependency on bootstrap-tools.
-  makeFlags = "SHELL=/bin/sh GREP=grep";
-
-  doCheck = false; # fails
+  makeFlags = [ "SHELL=/bin/sh" "GREP=grep" ];
 
   meta = {
     homepage = https://www.gnu.org/software/gzip/;
diff --git a/nixpkgs/pkgs/tools/compression/zstd/default.nix b/nixpkgs/pkgs/tools/compression/zstd/default.nix
index 85b2c280b8f7..815236466590 100644
--- a/nixpkgs/pkgs/tools/compression/zstd/default.nix
+++ b/nixpkgs/pkgs/tools/compression/zstd/default.nix
@@ -5,10 +5,10 @@
 
 stdenv.mkDerivation rec {
   name = "zstd-${version}";
-  version = "1.3.7";
+  version = "1.3.8";
 
   src = fetchFromGitHub {
-    sha256 = "04pdim2bgbbryalim6y8fflm9njpbzxh7148hi4pa828rn9p0jim";
+    sha256 = "03jfbjzgqy5gvpym28r2phphdn536zvwfc6cw58ffk5ssm6blnqd";
     rev = "v${version}";
     repo = "zstd";
     owner = "facebook";
diff --git a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 75737e2da7fc..eefc0beb1fcc 100644
--- a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -2,22 +2,24 @@
 , liburcu, zlib, libaio, zstd, lz4 }:
 
 stdenv.mkDerivation rec {
-  name = "bcachefs-tools-unstable-2018-10-12";
+  pname = "bcachefs-tools";
+  version = "2019-01-23";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs-tools.git";
-    rev = "55fbb25501330038e1714905b9ddeb25d875c11c";
-    sha256 = "0cwzbyf133jc0fkc8nmjcvv3wmglqhyxda1hh10hgxrbq5vm39wx";
+    rev = "35fca2f044d375b1590f499cfd34bef38ca0f8f1";
+    sha256 = "1mmpwksszdi4n7zv3fm7qnmfk94m56d65lfw30553bnfm3yaz3k7";
   };
 
   enableParallelBuilding = true;
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ attr libuuid libscrypt libsodium keyutils liburcu zlib libaio zstd lz4 ];
-  installFlags = [ "PREFIX=$(out)" ];
-  
+  installFlags = [ "PREFIX=${placeholder "out"}" ];
+
   preInstall = ''
-    sed -i \
-      "s,INITRAMFS_DIR=/etc/initramfs-tools,INITRAMFS_DIR=$out/etc/initramfs-tools,g" Makefile
+    substituteInPlace Makefile \
+      --replace "INITRAMFS_DIR=/etc/initramfs-tools" \
+                "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/filesystems/btrfs-progs/default.nix b/nixpkgs/pkgs/tools/filesystems/btrfs-progs/default.nix
index 8f3d41e8f4e9..27447fb2b8a3 100644
--- a/nixpkgs/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "btrfs-progs-${version}";
-  version = "4.19.1";
+  version = "4.20.1";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "1f7gpk9206ph081fr0af8k57i58zjb03xwd8k69177a7rzsjmn04";
+    sha256 = "1kagxh10qf1n38zbpya2ghjiybxnag36h9xyqb26fy6iy4gmsbsn";
   };
 
   nativeBuildInputs = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     description = "Utilities for the btrfs filesystem";
     homepage = https://btrfs.wiki.kernel.org/;
     license = licenses.gpl2;
-    maintainers = with maintainers; [ raskin wkennington ];
+    maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/ceph/generic.nix b/nixpkgs/pkgs/tools/filesystems/ceph/generic.nix
index c4856d925299..cb17a10cb738 100644
--- a/nixpkgs/pkgs/tools/filesystems/ceph/generic.nix
+++ b/nixpkgs/pkgs/tools/filesystems/ceph/generic.nix
@@ -83,7 +83,6 @@ let
   ceph-python-env = python2Packages.python.withPackages (ps: [
     ps.sphinx
     ps.flask
-    ps.argparse
     ps.cython
     ps.setuptools
     ps.pip
@@ -166,7 +165,7 @@ stdenv.mkDerivation {
     homepage = https://ceph.com/;
     description = "Distributed storage system";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ adev ak wkennington ];
+    maintainers = with maintainers; [ adev ak ];
     platforms = platforms.unix;
   };
 
diff --git a/nixpkgs/pkgs/tools/filesystems/disorderfs/default.nix b/nixpkgs/pkgs/tools/filesystems/disorderfs/default.nix
index 07a9015fa28e..b8028741d57f 100644
--- a/nixpkgs/pkgs/tools/filesystems/disorderfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/disorderfs/default.nix
@@ -2,19 +2,17 @@
 
 stdenv.mkDerivation rec {
   name = "disorderfs-${version}";
-  version = "0.5.5";
+  version = "0.5.6";
 
   src = fetchurl {
-    url = "http://http.debian.net/debian/pool/main/d/disorderfs/disorderfs_${version}.orig.tar.gz";
-    sha256 = "1y1i7k5mx2pxr9bpijnsjyyw8qd7ak1h48gf6a6ca3dhna9ws6i1";
+    url = "http://http.debian.net/debian/pool/main/d/disorderfs/disorderfs_${version}.orig.tar.bz2";
+    sha256 = "0xlsl6cw1p0d92crknrcf4iabgig0185dzp80qxh9iyjy42d27gk";
   };
 
   nativeBuildInputs = [ pkgconfig asciidoc ];
 
   buildInputs = [ fuse attr ];
 
-  sourceRoot = ".";
-
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/filesystems/e2fsprogs/default.nix b/nixpkgs/pkgs/tools/filesystems/e2fsprogs/default.nix
index 168bf7d076ce..2c597ccef35e 100644
--- a/nixpkgs/pkgs/tools/filesystems/e2fsprogs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/e2fsprogs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, fetchpatch, pkgconfig, libuuid, gettext, texinfo, perl }:
 
 stdenv.mkDerivation rec {
-  name = "e2fsprogs-1.44.4";
+  name = "e2fsprogs-1.44.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz";
-    sha256 = "1cnwfmv9r7s73xhgghqspjq593pc4qghh80wjd0kjdgwy247cw6x";
+    sha256 = "1k6iwv2bz2a8mcd1gg9kb5jpry7pil5v2h2f9apxax7g4yp1y89f";
   };
 
   outputs = [ "bin" "dev" "out" "man" "info" ];
@@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
   patches = if stdenv.hostPlatform.libc == "glibc" then null
     else [
       (fetchpatch {
-      url = "https://raw.githubusercontent.com/void-linux/void-packages/1f3b51493031cc0309009804475e3db572fc89ad/srcpkgs/e2fsprogs/patches/fix-glibcism.patch";
-      sha256 = "1q7y8nhsfwl9r1q7nhrlikazxxj97p93kgz5wh7723cshlji2vaa";
+      url = "https://raw.githubusercontent.com/void-linux/void-packages/9583597eb3e6e6b33f61dbc615d511ce030bc443/srcpkgs/e2fsprogs/patches/fix-glibcism.patch";
+      sha256 = "1fyml1iwrs412xn2w36ra28am3sq4klrrj60lnf7rysyw069nxk3";
       extraPrefix = "";
       })
     ];
diff --git a/nixpkgs/pkgs/tools/filesystems/file-rename/default.nix b/nixpkgs/pkgs/tools/filesystems/file-rename/default.nix
index 6c226bb97845..e799bc5a4dad 100644
--- a/nixpkgs/pkgs/tools/filesystems/file-rename/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/file-rename/default.nix
@@ -12,7 +12,7 @@ perlPackages.buildPerlPackage rec {
 
   postInstall = ''
     wrapProgram $out/bin/rename \
-      --prefix PERL5LIB : $out/lib/perl5/site_perl
+      --prefix PERL5LIB : $out/${perlPackages.perl.libPrefix}
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix
new file mode 100644
index 000000000000..515fdd4e2608
--- /dev/null
+++ b/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix
@@ -0,0 +1,27 @@
+{ pkgs, lib, autoreconfHook, pkgconfig, fuse3 }:
+
+let
+  version = "0.2";
+in
+  pkgs.stdenv.mkDerivation {
+    name = "fuse-overlayfs-${version}";
+
+    src = pkgs.fetchFromGitHub {
+      owner = "containers";
+      repo = "fuse-overlayfs";
+      rev = "1e2b65baa2f75eea0e4bab90b5ac81dd8471256c";
+      sha256 = "0a9ix8rqjs5r28jsriyiv4yq7iilmv69x05kf23s1ihzrvrfkl08";
+    };
+
+    nativeBuildInputs = [ autoreconfHook pkgconfig ];
+    buildInputs = [ fuse3 ];
+
+    meta = with lib; {
+      homepage = https://github.com/containers/fuse-overlayfs;
+      description = "FUSE implementation for overlayfs";
+      longDescription = "An implementation of overlay+shiftfs in FUSE for rootless containers.";
+      license = licenses.gpl3;
+      platforms = platforms.unix;
+      maintainers = [ maintainers.ma9e ];
+    };
+  }
diff --git a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
index 0438b9c38e4b..c1d41ff1622c 100644
--- a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -2,8 +2,8 @@
 
 buildGoPackage rec {
   name = "go-mtpfs-${version}";
-  version = "20150917-${stdenv.lib.strings.substring 0 7 rev}";
-  rev = "bc7c0f716e3b4ed5610069a55fc00828ebba890b";
+  version = "2018-02-09";
+  rev = "d6f8f3c05ce0ed31435057ec342268a0735863bb";
 
   goPackagePath = "github.com/hanwen/go-mtpfs";
 
@@ -13,7 +13,7 @@ buildGoPackage rec {
   src = fetchgit {
     inherit rev;
     url = "https://github.com/hanwen/go-mtpfs";
-    sha256 = "1jcqp9n8fd9psfsnhfj6w97yp0zmyxplsig8pyp2gqzh4lnb5fqm";
+    sha256 = "0a0d5dy92nzp1czh87hx3xfdcpa4jh14j0b64c025ha62s9a4gxk";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/deps.nix b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/deps.nix
index 4bba3f237392..f558a53f7d2d 100644
--- a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/deps.nix
+++ b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/deps.nix
@@ -1,11 +1,12 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
   {
     goPackagePath = "github.com/hanwen/go-fuse";
     fetch = {
       type = "git";
       url = "https://github.com/hanwen/go-fuse";
-      rev = "bd746dd8bcc8c059a9d953a786a6156eb83f398e";
-      sha256 = "1dvvclp418j3d02v9717sfqhl6fw6yyddr9r3j8gsiv8nb62ib56";
+      rev = "d1c826d19ad0c8d0c7e5b4eb34ee0f2ae09f6cef";
+      sha256 = "0hn2iqsb6rip2b05fvcngyh0sazln2h3fx18khq4fv41n1iy11dc";
     };
   }
   {
@@ -17,4 +18,13 @@
       sha256 = "01k0c2g395j65vm1w37mmrfkg6nm900khjrrizzpmx8f8yf20dky";
     };
   }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "48ac38b7c8cbedd50b1613c0fccacfc7d88dfcdf";
+      sha256 = "037vs8sdvq310j3b6z9k62zlby1mzmsr9ha01rcy98dv5v8bkhin";
+    };
+  }
 ]
diff --git a/nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix b/nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix
index 75f5e9ffe11f..d923dba0bc0a 100644
--- a/nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix
@@ -2,7 +2,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub, openssl, pandoc, pkgconfig }:
 
 let
-  version = "v1.5";
+  version = "v1.6.1";
   goFuseVersion = with stdenv.lib; substring 0 7 (head (filter (
     d: d.goPackagePath == "github.com/hanwen/go-fuse"
   ) (import ./deps.nix))).fetch.rev;
@@ -19,7 +19,7 @@ buildGoPackage rec {
     owner = "rfjakob";
     repo = "gocryptfs";
     rev = version;
-    sha256 = "0s5smjc7n9088n8a2mv7cy3cx31ci13i1i8fhg1vslc17a15qs2d";
+    sha256 = "0aqbl25g48b4jp6l09k6kic6w3p0q7d9ip2wvrcvh8lhnrbdkhzd";
   };
 
   postPatch = "rm -r tests";
diff --git a/nixpkgs/pkgs/tools/filesystems/gocryptfs/deps.nix b/nixpkgs/pkgs/tools/filesystems/gocryptfs/deps.nix
index cb5aec527f24..2589b41a0a5e 100644
--- a/nixpkgs/pkgs/tools/filesystems/gocryptfs/deps.nix
+++ b/nixpkgs/pkgs/tools/filesystems/gocryptfs/deps.nix
@@ -1,66 +1,129 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
 [
   {
-    goPackagePath = "github.com/hanwen/go-fuse";
+    goPackagePath  = "github.com/conejoninja/hid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/conejoninja/hid";
+      rev =  "3a959b87ebefc18767a31fa567eea402eb37239e";
+      sha256 = "1i1x7fhs3g9a48h2wxjczshx7gzmj9p6pd71l22ky998zgjadlim";
+    };
+  }
+  {
+    goPackagePath  = "github.com/conejoninja/tesoro";
+    fetch = {
+      type = "git";
+      url = "https://github.com/conejoninja/tesoro";
+      rev =  "e0e839b6a6f14bce56d1bfac9a86311a1646a6a3";
+      sha256 = "19q1ibj6l6pk2a3iwcyrj60sscvkqw450psd9zdflvb293cjsx8v";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
+      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hanwen/go-fuse";
     fetch = {
       type = "git";
       url = "https://github.com/hanwen/go-fuse";
-      rev = "291273cb8ce0f139636a6fd7414be3c7e2de6288";
-      sha256 = "1djfl6mni8k4wllhwcr6qwyg1nh6wykdalvdl6gpc1rwrjj9c6xi";
+      rev =  "95c6370914ac7822973d1893680e878e156f8d70";
+      sha256 = "1h701c1hxrw7ljh7kc0rjx18bfw2mzdbpmqqilb5wb0ngpdjpqxp";
     };
   }
   {
-    goPackagePath = "github.com/jacobsa/crypto";
+    goPackagePath  = "github.com/jacobsa/crypto";
     fetch = {
       type = "git";
       url = "https://github.com/jacobsa/crypto";
-      rev = "c73681c634de898c869684602cf0c0d2ce938c4d";
+      rev =  "c73681c634de898c869684602cf0c0d2ce938c4d";
       sha256 = "02jbiy6szshbzcmp4j3gpc577hrhikxqvm4kzxixp27k9f2cx5si";
     };
   }
   {
-    goPackagePath = "github.com/pkg/xattr";
+    goPackagePath  = "github.com/pkg/xattr";
     fetch = {
       type = "git";
       url = "https://github.com/pkg/xattr";
-      rev = "d15dbc2bb0b5da267362b5e066e2c44c1fcff6c7";
-      sha256 = "1vab8mpk2x4vbhx0kd0i0kn6sf7z5ivilcmdklyizzcfcwghh17g";
+      rev =  "f5b647e257e19d63831e7c7adb95dfb79d9ff4d9";
+      sha256 = "0cqxibbfllhs6ffxq65gn08088g7g7aw752p9g3vbnj35jk2p8i9";
     };
   }
   {
-    goPackagePath = "github.com/rfjakob/eme";
+    goPackagePath  = "github.com/rfjakob/eme";
     fetch = {
       type = "git";
       url = "https://github.com/rfjakob/eme";
-      rev = "2222dbd4ba467ab3fc7e8af41562fcfe69c0d770";
+      rev =  "2222dbd4ba467ab3fc7e8af41562fcfe69c0d770";
       sha256 = "0c227ly3z8pqaqg22lpd8nzgqrfsbjx5gi9rp9ks1cmd11dv2gl9";
     };
   }
   {
-    goPackagePath = "golang.org/x/crypto";
+    goPackagePath  = "github.com/trezor/trezord-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/trezor/trezord-go";
+      rev =  "bae9c40e5d71c459bde056d42d4b19ab318c90c2";
+      sha256 = "12j7b4vjs8n68214zrh5ivpqm3fcifk27bj6rszd9x2839nk3hy8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/xaionaro-go/cryptoWallet";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xaionaro-go/cryptoWallet";
+      rev =  "47f9f6877e4324a8bc47fc5661c32d2fe6d29586";
+      sha256 = "14h2vnl2jm2wj10znizdf2f0mxsk27rsjskjw5qffy8nf5a0i3i6";
+    };
+  }
+  {
+    goPackagePath  = "github.com/zserge/hid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zserge/hid";
+      rev =  "c86e7adeabafd6fcb3371ad64d6ed366b04d55db";
+      sha256 = "1y2zqndq6mafgsdai5gnkw4g8dzl9vmjcxq0i8xspaj4dmck19c4";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "a49355c7e3f8fe157a85be2f77e6e269a0f89602";
-      sha256 = "020q1laxjx5kcmnqy4wmdb63zhb0lyq6wpy40axhswzg2nd21s44";
+      rev =  "de0752318171da717af4ce24d0a2e8626afaeb11";
+      sha256 = "1ps1dl2a5lwr3vbwcy8n4i1v73m567y024sk961fk281phrzp13i";
     };
   }
   {
-    goPackagePath = "golang.org/x/sync";
+    goPackagePath  = "golang.org/x/sync";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sync";
-      rev = "1d60e4601c6fd243af51cc01ddf169918a5407ca";
+      rev =  "1d60e4601c6fd243af51cc01ddf169918a5407ca";
       sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
     };
   }
   {
-    goPackagePath = "golang.org/x/sys";
+    goPackagePath  = "golang.org/x/sys";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "151529c776cdc58ddbe7963ba9af779f3577b419";
-      sha256 = "149yfzs4k8vxhjr8f832drndir2k5ha0ggs2dw2fd6xvxf698bcx";
+      rev =  "14742f9018cd6651ec7364dc6ee08af0baaa1031";
+      sha256 = "17k06vwhnlb18n9rb1cdcdqyjcn353znfrr4c90xb3carz1sqfq5";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
     };
   }
-]
+]
\ No newline at end of file
diff --git a/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix b/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
index 389a614f54b0..2fd3d52bdf67 100644
--- a/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
@@ -1,18 +1,20 @@
 { stdenv, fetchFromGitHub, zlib, xz
 , lz4 ? null
 , lz4Support ? false
+, zstd
 }:
 
 assert lz4Support -> (lz4 != null);
 
 stdenv.mkDerivation rec {
-  name = "squashfs-4.4dev";
+  name = "squashfs-${version}";
+  version = "4.4dev_20180612";
 
   src = fetchFromGitHub {
     owner = "plougher";
     repo = "squashfs-tools";
-    sha256 = "059pa2shdysr3zfmwrhq28s12zbi5nyzbpzyaf5lmspgfh1493ks";
-    rev = "9c1db6d13a51a2e009f0027ef336ce03624eac0d";
+    sha256 = "1y53z8dkph3khdyhkmkmy0sg9p1n8czv3vj4l324nj8kxyih3l2c";
+    rev = "6e242dc95485ada8d1d0b3dd9346c5243d4a517f";
   };
 
   patches = [
@@ -28,14 +30,14 @@ stdenv.mkDerivation rec {
     ./squashfs-tools-4.3-4k-align.patch
   ] ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch;
 
-  buildInputs = [ zlib xz ]
+  buildInputs = [ zlib xz zstd ]
     ++ stdenv.lib.optional lz4Support lz4;
 
   preBuild = "cd squashfs-tools";
 
   installFlags = "INSTALL_DIR=\${out}/bin";
 
-  makeFlags = [ "XZ_SUPPORT=1" ]
+  makeFlags = [ "XZ_SUPPORT=1" "ZSTD_SUPPORT=1" ]
     ++ stdenv.lib.optional lz4Support "LZ4_SUPPORT=1";
 
   meta = {
diff --git a/nixpkgs/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch b/nixpkgs/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch
index b7c949182e0b..cd4308b489fe 100644
--- a/nixpkgs/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch
+++ b/nixpkgs/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch
@@ -27,11 +27,12 @@ index 8b1376f..683973d 100644
  int use_regex = FALSE;
  int nopad = FALSE;
  int exit_on_error = FALSE;
+ static off_t squashfs_start_offset = 0;
 +int do_4k_align = FALSE;
 +#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1))
- 
+
  long long global_uid = -1, global_gid = -1;
- 
+
 @@ -1513,6 +1515,9 @@ void unlock_fragments()
  	 * queue at this time.
  	 */
@@ -40,7 +41,7 @@ index 8b1376f..683973d 100644
 +		if(do_4k_align)
 +			ALIGN_UP(bytes, 4096);
  		write_buffer = queue_get(locked_fragment);
- 		frg = write_buffer->block;	
+ 		frg = write_buffer->block;
  		size = SQUASHFS_COMPRESSED_SIZE_BLOCK(fragment_table[frg].size);
 @@ -2420,6 +2420,9 @@
  	compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte);
@@ -55,18 +56,18 @@ index 8b1376f..683973d 100644
 @@ -2761,6 +2769,10 @@ int write_file_blocks(squashfs_inode *inode, struct dir_ent *dir_ent,
  	long long sparse = 0;
  	struct file_buffer *fragment_buffer = NULL;
- 
+
 +	// 4k align the start of each file.
 +	if(do_4k_align)
 +		ALIGN_UP(bytes, 4096);
 +
  	if(pre_duplicate(read_size))
  		return write_file_blocks_dup(inode, dir_ent, read_buffer, dup);
- 
+
 @@ -4692,6 +4704,7 @@ void write_filesystem_tables(struct squashfs_super_block *sBlk, int nopad)
  		"compressed", no_fragments ? "no" : noF ? "uncompressed" :
  		"compressed", no_xattrs ? "no" : noX ? "uncompressed" :
- 		"compressed");
+ 		"compressed", noI || noId ? "uncompressed" : "compressed");
 +	printf("\t4k %saligned\n", do_4k_align ? "" : "un");
  	printf("\tduplicates are %sremoved\n", duplicate_checking ? "" :
  		"not ");
@@ -88,5 +89,5 @@ index 8b1376f..683973d 100644
  			ERROR("\nFilesystem filter options:\n");
  			ERROR("-p <pseudo-definition>\tAdd pseudo file "
  				"definition\n");
--- 
+--
 2.14.1.480.gb18f417b89-goog (previously; hand-patched by charles-dyfis-net)
diff --git a/nixpkgs/pkgs/tools/filesystems/svnfs/default.nix b/nixpkgs/pkgs/tools/filesystems/svnfs/default.nix
index 333714182177..ebfb211732e8 100644
--- a/nixpkgs/pkgs/tools/filesystems/svnfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/svnfs/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   '';
 
   NIX_CFLAGS_COMPILE="-I ${subversion.dev}/include/subversion-1";
-  NIX_LDFLAGS="-lsvn_client-1";
+  NIX_LDFLAGS="-lsvn_client-1 -lsvn_subr-1";
 
   meta = {
     description = "FUSE filesystem for accessing Subversion repositories";
diff --git a/nixpkgs/pkgs/tools/filesystems/tmsu/default.nix b/nixpkgs/pkgs/tools/filesystems/tmsu/default.nix
index 3c6dd2648ef6..fef1d0699e73 100644
--- a/nixpkgs/pkgs/tools/filesystems/tmsu/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/tmsu/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "tmsu-${version}";
-  version = "0.7.1";
+  version = "0.7.4";
 
   go-sqlite3 = fetchgit {
     url = "git://github.com/mattn/go-sqlite3";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     owner = "oniony";
     repo = "tmsu";
     rev = "v${version}";
-    sha256 = "0d1sryq80chb9vrf9z0lfx4xb3sdkg01f9hqf3bb9c89vm6v2lwg";
+    sha256 = "1g9gxlll2g4qkqbrshq3888sy1lgw6p5dvcrl5qyh6w73yimi1cq";
   };
 
   buildInputs = [ go fuse ];
@@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
     patchShebangs tests/.
 
     export GOPATH=$PWD
+    export GOCACHE=$TMPDIR/go-cache
   '';
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/graphics/fgallery/default.nix b/nixpkgs/pkgs/tools/graphics/fgallery/default.nix
index a7bb616d82b5..2bce8ec4941b 100644
--- a/nixpkgs/pkgs/tools/graphics/fgallery/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/fgallery/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, unzip, makeWrapper, perl, ImageExifTool
-, CpanelJSONXS, coreutils, zip, imagemagick, pngcrush, lcms2
+{ stdenv, fetchurl, unzip, makeWrapper, perlPackages
+, coreutils, zip, imagemagick, pngcrush, lcms2
 , facedetect, fbida }:
 
 # TODO: add optional dependencies (snippet from fgallery source):
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     sha256 = "18wlvqbxcng8pawimbc8f2422s8fnk840hfr6946lzsxr0ijakvf";
   };
 
-  buildInputs = [ unzip makeWrapper perl ImageExifTool CpanelJSONXS ];
+  buildInputs = [ unzip makeWrapper ] ++ (with perlPackages; [ perl ImageExifTool CpanelJSONXS ]);
 
   installPhase = ''
     mkdir -p "$out/bin"
diff --git a/nixpkgs/pkgs/tools/graphics/gifsicle/default.nix b/nixpkgs/pkgs/tools/graphics/gifsicle/default.nix
index 76cb3ab199c2..0fbfae1b9668 100644
--- a/nixpkgs/pkgs/tools/graphics/gifsicle/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/gifsicle/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, xproto, libXt, libX11, gifview ? false, static ? false }:
+{ stdenv, fetchurl, xorgproto, libXt, libX11, gifview ? false, static ? false }:
 
 with stdenv.lib;
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "00586z1yz86qcblgmf16yly39n4lkjrscl52hvfxqk14m81fckha";
   };
 
-  buildInputs = optional gifview [ xproto libXt libX11 ];
+  buildInputs = optional gifview [ xorgproto libXt libX11 ];
 
   configureFlags = []
     ++ optional (!gifview) [ "--disable-gifview" ];
diff --git a/nixpkgs/pkgs/tools/graphics/grim/default.nix b/nixpkgs/pkgs/tools/graphics/grim/default.nix
new file mode 100644
index 000000000000..fcb2b4ba3274
--- /dev/null
+++ b/nixpkgs/pkgs/tools/graphics/grim/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, cairo, libjpeg, meson, ninja, wayland, pkgconfig, wayland-protocols }:
+
+stdenv.mkDerivation rec {
+  name = "grim-${version}";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "emersion";
+    repo = "grim";
+    rev = "v${version}";
+    sha256 = "1mpmxkzssgzqh9z263y8vk40dayw32kah66sb8ja7yw22rm7f4zf";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkgconfig
+  ];
+
+  buildInputs = [
+    cairo
+    libjpeg
+    wayland
+    wayland-protocols
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Grab images from a Wayland compositor";
+    homepage = https://github.com/emersion/grim;
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ buffet ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/graphics/jhead/default.nix b/nixpkgs/pkgs/tools/graphics/jhead/default.nix
index ce1d26e062c2..e4405455097d 100644
--- a/nixpkgs/pkgs/tools/graphics/jhead/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/jhead/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jhead-${version}";
-  version = "3.02";
+  version = "3.03";
 
   src = fetchurl {
     url = "http://www.sentex.net/~mwandel/jhead/${name}.tar.gz";
-    sha256 = "0apdqxqzssnlgn3z9ykvd487dvnbfsgxw1vklr0b916c7my77jc5";
+    sha256 = "1hn0yqcicq3qa20h1g313l1a671r8mccpb9gz0w1056r500lw6c2";
   };
 
   buildInputs = [ libjpeg ];
diff --git a/nixpkgs/pkgs/tools/graphics/lprof/default.nix b/nixpkgs/pkgs/tools/graphics/lprof/default.nix
index a4a2cfc1a7c4..42ccc4d5022e 100644
--- a/nixpkgs/pkgs/tools/graphics/lprof/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/lprof/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, scons, qt3, lcms1, libtiff, vigra }:
+{ stdenv, fetchurl, sconsPackages, qt3, lcms1, libtiff, vigra }:
 
 /*  how to calibrate your monitor:
     Eg see https://wiki.archlinux.org/index.php/ICC_Profiles#Loading_ICC_Profiles
 */
 stdenv.mkDerivation {
   name = "lprof-1.11.4.1";
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ sconsPackages.scons_3_0_1 ];
   buildInputs = [ qt3 lcms1 libtiff vigra ];
 
   hardeningDisable = [ "format" ];
diff --git a/nixpkgs/pkgs/tools/graphics/oxipng/default.nix b/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
index 10b4dd4a0318..0fdabfe35888 100644
--- a/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
@@ -1,17 +1,20 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  version = "2.1.8";
+  version = "2.2.0";
   name = "oxipng-${version}";
 
   src = fetchFromGitHub {
     owner = "shssoichiro";
     repo = "oxipng";
     rev = "v${version}";
-    sha256 = "18ld65vm58s6x918g6bhfkrg7lw2lca8daidv88ff14wm5khjvik";
+    sha256 = "00ys1dy8r1g84j04w50qcjas0qnfw4vphazvbfasd9q2b1p5z69l";
   };
 
-  cargoSha256 = "034i8hgi0zgv085bimlja1hl3nd096rqpi167pw6rda5aj18c625";
+  cargoSha256 = "125r3jmgwcq8qddm8hjpyzaam96kkifaxixksyaw2iqk9xq0nrpm";
+
+  # https://crates.io/crates/cloudflare-zlib#arm-vs-nightly-rust
+  cargoBuildFlags = [ "--features=cloudflare-zlib/arm-always" ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/shssoichiro/oxipng;
@@ -19,8 +22,5 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ dywedir ];
     platforms = platforms.all;
-
-    # Needs newer/unstable rust: error[E0658]: macro is_arm_feature_detected! is unstable
-    broken = stdenv.isAarch64;
   };
 }
diff --git a/nixpkgs/pkgs/tools/graphics/pfstools/default.nix b/nixpkgs/pkgs/tools/graphics/pfstools/default.nix
index 4c1ff5024331..77edcd345780 100644
--- a/nixpkgs/pkgs/tools/graphics/pfstools/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/pfstools/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, cmake, pkgconfig
 , openexr, zlib, imagemagick, libGLU_combined, freeglut, fftwFloat
-, fftw, gsl, libexif, perl, opencv, qt4
+, fftw, gsl, libexif, perl, opencv, qt5
 }:
 
 stdenv.mkDerivation rec {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [
     openexr zlib imagemagick libGLU_combined freeglut fftwFloat
-    fftw gsl libexif perl opencv qt4
+    fftw gsl libexif perl opencv qt5.qtbase
   ];
 
   patches = [ ./threads.patch ./pfstools.patch ];
diff --git a/nixpkgs/pkgs/tools/graphics/qrencode/default.nix b/nixpkgs/pkgs/tools/graphics/qrencode/default.nix
deleted file mode 100644
index 7c5aed9b4e23..000000000000
--- a/nixpkgs/pkgs/tools/graphics/qrencode/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, fetchurl, libpng, pkgconfig }:
-
-stdenv.mkDerivation rec {
-  name = "qrencode-4.0.2";
-
-  src = fetchurl {
-    url = "${meta.homepage}/${name}.tar.bz2";
-    sha256 = "1d2q5d3v8g3hsi3h5jq4n177bjhf3kawms09immw7p187f6jgjy9";
-  };
-
-  buildInputs = [ libpng ];
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = with stdenv.lib; {
-    homepage = https://fukuchi.org/works/qrencode/;
-    description = "QR code encoder";
-    platforms = platforms.all;
-    license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ yegortimoshenko ];
-  };
-}
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
index 01b092ef2a61..5699a7931dbc 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
@@ -10,7 +10,7 @@ let
   };
 in clangStdenv.mkDerivation rec {
   name = "ibus-mozc-${version}";
-  version = "2.20.2673.102";
+  version = "2.23.2815.102";
 
   meta = with clangStdenv.lib; {
     isIbusEngine = true;
@@ -27,8 +27,8 @@ in clangStdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner  = "google";
     repo   = "mozc";
-    rev    = "280e38fe3d9db4df52f0713acf2ca65898cd697a";
-    sha256 = "0s599f817gjgqynm4n1yll1ipd25ai2c55y8k6wvhg9s7qaxnyhs";
+    rev    = "afb03ddfe72dde4cf2409863a3bfea160f7a66d8";
+    sha256 = "0w2dy2j9x5nc7x3g95j17r3m60vbfyn5j617h7js9xryv33yzpgx";
   };
 
   postUnpack = ''
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
index 9b7895d614bc..3f2ab1fc96a9 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "ibus-table-${version}";
-  version = "1.9.20";
+  version = "1.9.21";
 
   src = fetchFromGitHub {
     owner  = "kaio";
     repo   = "ibus-table";
     rev    = version;
-    sha256 = "12rsbg8pfh567bd0n376qciclq5jr63h5gwcm54cs796bxls4w2j";
+    sha256 = "1rswbhbfvir443mw3p7xw6calkpfss4fcgn8nhfnrbin49q6w1vm";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
index 31d017de52b3..e1b01de11b25 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
@@ -13,13 +13,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "ibus-typing-booster-${version}";
-  version = "2.3.3";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "mike-fabian";
     repo = "ibus-typing-booster";
     rev = version;
-    sha256 = "0vzfnbld1k1ig1qgka30srmw1x53090xfn3cga80g64v0kqkwb5w";
+    sha256 = "1ghd9rqgs3xcv6crvc8x1nhrnr84rbp3b970mfg8f1yz6rsx9107";
   };
 
   patches = [ ./hunspell-dirs.patch ];
diff --git a/nixpkgs/pkgs/tools/misc/abduco/default.nix b/nixpkgs/pkgs/tools/misc/abduco/default.nix
index 4fc254b76b40..8545d86427a4 100644
--- a/nixpkgs/pkgs/tools/misc/abduco/default.nix
+++ b/nixpkgs/pkgs/tools/misc/abduco/default.nix
@@ -1,29 +1,27 @@
-{ stdenv, fetchurl, writeText, conf? null}:
+{ stdenv, fetchFromGitHub, writeText, conf ? null }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-    name = "abduco-0.6";
+  name = "abduco-2018-05-16";
 
-    meta = {
-        homepage = http://brain-dump.org/projects/abduco;
-        license = licenses.isc;
-        description = "Allows programs to be run independently from its controlling terminal";
-        maintainers = with maintainers; [ pSub ];
-        platforms = platforms.unix;
-    };
+  src = fetchFromGitHub {
+    owner = "martanne";
+    repo = "abduco";
+    rev = "8f80aa8044d7ecf0e43a0294a09007d056b20e4c";
+    sha256 = "0wqcif633nbgnznn46j0sng9l0wncppw1x1c42f75b4p9hrph203";
+  };
 
-    CFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-D_DARWIN_C_SOURCE";
+  configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
+  preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h";
 
-    src = fetchurl {
-        url = "http://www.brain-dump.org/projects/abduco/${name}.tar.gz";
-        sha256 = "1x1m58ckwsprljgmdy93mvgjyg9x3cqrzdf3mysp0mx97zhhj2f9";
-    };
+  CFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-D_DARWIN_C_SOURCE";
 
-    configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
-    preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h";
-
-    installPhase = ''
-      make PREFIX=$out install
-    '';
+  meta = {
+    homepage = http://brain-dump.org/projects/abduco;
+    license = licenses.isc;
+    description = "Allows programs to be run independently from its controlling terminal";
+    maintainers = with maintainers; [ pSub ];
+    platforms = platforms.unix;
+  };
 }
diff --git a/nixpkgs/pkgs/tools/misc/arp-scan/default.nix b/nixpkgs/pkgs/tools/misc/arp-scan/default.nix
index 4f683beb06ff..dc51d04e4b5e 100644
--- a/nixpkgs/pkgs/tools/misc/arp-scan/default.nix
+++ b/nixpkgs/pkgs/tools/misc/arp-scan/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     for name in get-{oui,iab}; do
-      wrapProgram "$out/bin/$name" --set PERL5LIB "${stdenv.lib.makePerlPath perlModules }"
+      wrapProgram "$out/bin/$name" --set PERL5LIB "${perlPackages.makePerlPath perlModules }"
     done;
   '';
 
diff --git a/nixpkgs/pkgs/tools/misc/asciinema/default.nix b/nixpkgs/pkgs/tools/misc/asciinema/default.nix
index daaffbf080fd..d42c666e9674 100644
--- a/nixpkgs/pkgs/tools/misc/asciinema/default.nix
+++ b/nixpkgs/pkgs/tools/misc/asciinema/default.nix
@@ -2,24 +2,16 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "asciinema";
-  version = "2.0.1";
-
-  buildInputs = with python3Packages; [ nose ];
-  propagatedBuildInputs = with python3Packages; [ requests ];
+  version = "2.0.2";
 
   src = fetchFromGitHub {
     owner = "asciinema";
     repo = "asciinema";
     rev = "v${version}";
-    sha256 = "09m9agkslrbm36y8pjqhg5nmyz9hppjyhafhzpglnadhfgwqzznr";
+    sha256 = "1a2pysxnp6icyd08mgf66xr6f6j0irnfxdpf3fmzcz31ix7l9kc4";
   };
 
-  patchPhase = ''
-    # disable one test which is failing with -> OSError: out of pty devices
-    rm tests/pty_recorder_test.py
-  '';
-
-  checkInputs = [ glibcLocales ];
+  checkInputs = [ glibcLocales python3Packages.nose ];
 
   checkPhase = ''
     LC_ALL=en_US.UTF-8 nosetests
diff --git a/nixpkgs/pkgs/tools/misc/bandwidth/default.nix b/nixpkgs/pkgs/tools/misc/bandwidth/default.nix
index e50faaca8995..4f90c0f03e9a 100644
--- a/nixpkgs/pkgs/tools/misc/bandwidth/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bandwidth/default.nix
@@ -34,6 +34,5 @@ stdenv.mkDerivation rec {
     description = "Artificial benchmark for identifying weaknesses in the memory subsystem";
     license = licenses.mit;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/bat/default.nix b/nixpkgs/pkgs/tools/misc/bat/default.nix
index b4913970715a..4da8527208e6 100644
--- a/nixpkgs/pkgs/tools/misc/bat/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bat/default.nix
@@ -22,13 +22,6 @@ rustPlatform.buildRustPackage rec {
 
   postInstall = ''
     install -m 444 -Dt $out/share/man/man1 doc/bat.1
-
-    install -Dm644 target/release/build/bat-*/out/_bat \
-      "$out/share/zsh/site-functions/_bat"
-    install -Dm644 target/release/build/bat-*/out/bat.bash \
-      "$out/share/bash-completions/completions/bat.bash"
-    install -Dm644 target/release/build/bat-*/out/bat.fish \
-      "$out/share/fish/vendor_completions.d/bat.fish"
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix b/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
index ac6f8c97c7b6..1b179d328702 100644
--- a/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "bdf2psf-${version}";
-  version = "1.187";
+  version = "1.188";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
-    sha256 = "05r5jg7n4hbdxcy3kc7038h1r0fkipwld6kd0d49nbkmywl2k1a8";
+    sha256 = "1g9i50a3x9p7kbyjg7z8xgxcknqxkxvzb0gg2jl2zgwjsyvjy5wn";
   };
 
   buildInputs = [ dpkg ];
diff --git a/nixpkgs/pkgs/tools/misc/birdfont/default.nix b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
new file mode 100644
index 000000000000..9dd84471922c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkgconfig, python3, xmlbird,
+cairo, gdk_pixbuf, libgee, glib, gtk3, webkitgtk, libnotify, sqlite, vala,
+gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "birdfont";
+  version = "2.25.0";
+
+  src = fetchurl {
+    url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
+    sha256 = "0fi86km9iaxs9b8lqz81079vppzp346kqiqk44vk45dclr5r6x22";
+  };
+
+  nativeBuildInputs = [ python3 pkgconfig vala gobject-introspection wrapGAppsHook ];
+  buildInputs = [ xmlbird libgee cairo gdk_pixbuf glib gtk3 webkitgtk libnotify sqlite gsettings-desktop-schemas ];
+
+  postPatch = "patchShebangs .";
+
+  buildPhase = "./build.py";
+
+  installPhase = "./install.py";
+
+  meta = with stdenv.lib; {
+    description = "Font editor which can generate fonts in TTF, EOT, SVG and BIRDFONT format";
+    homepage = https://birdfont.org;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/birdfont/xmlbird.nix b/nixpkgs/pkgs/tools/misc/birdfont/xmlbird.nix
new file mode 100644
index 000000000000..a5581c84d504
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/birdfont/xmlbird.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, python3, pkgconfig, vala, glib, gobject-introspection }:
+
+stdenv.mkDerivation rec {
+  pname = "xmlbird";
+  version = "1.2.10";
+
+  src = fetchurl {
+    url = "https://birdfont.org/${pname}-releases/lib${pname}-${version}.tar.xz";
+    sha256 = "0qpqpqqd4wj711jzczfsr38fgcz1rzxchrqbssxnan659ycd9c78";
+  };
+
+  nativeBuildInputs = [ python3 pkgconfig vala gobject-introspection ];
+
+  buildInputs = [ glib ];
+
+  postPatch = "patchShebangs .";
+
+  buildPhase = "./build.py";
+
+  installPhase = "./install.py";
+
+  meta = with stdenv.lib; {
+    description = "XML parser for Vala and C programs";
+    homepage = https://birdfont.org/xmlbird.php;
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/bonfire/default.nix b/nixpkgs/pkgs/tools/misc/bonfire/default.nix
index 9355f3e54076..b8e5e3de6506 100644
--- a/nixpkgs/pkgs/tools/misc/bonfire/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bonfire/default.nix
@@ -20,7 +20,8 @@ buildPythonApplication rec {
     # https://github.com/blue-yonder/bonfire/pull/24
     substituteInPlace requirements.txt \
       --replace "arrow>=0.5.4,<0.8" "arrow>=0.5.4" \
-      --replace "keyring>=9,<10"    "keyring>=9"
+      --replace "keyring>=9,<10"    "keyring>=9" \
+      --replace "click>=3.3,<7"     "click>=3.3"
     # pip fails when encountering the git hash for the package version
     substituteInPlace setup.py \
       --replace "version=version," "version='${version}',"
diff --git a/nixpkgs/pkgs/tools/misc/calamares/default.nix b/nixpkgs/pkgs/tools/misc/calamares/default.nix
index c799b08bd446..edc6a2e46437 100644
--- a/nixpkgs/pkgs/tools/misc/calamares/default.nix
+++ b/nixpkgs/pkgs/tools/misc/calamares/default.nix
@@ -24,8 +24,8 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = false;
 
   cmakeFlags = [
-    "-DPYTHON_LIBRARY=${python}/lib/libpython${python.majorVersion}m.so"
-    "-DPYTHON_INCLUDE_DIR=${python}/include/python${python.majorVersion}m"
+    "-DPYTHON_LIBRARY=${python}/lib/lib${python.libPrefix}.so"
+    "-DPYTHON_INCLUDE_DIR=${python}/include/${python.libPrefix}"
     "-DCMAKE_VERBOSE_MAKEFILE=True"
     "-DCMAKE_BUILD_TYPE=Release"
     "-DWITH_PYTHONQT:BOOL=ON"
diff --git a/nixpkgs/pkgs/tools/misc/capture/0001-eval-fix.patch b/nixpkgs/pkgs/tools/misc/capture/0001-eval-fix.patch
new file mode 100644
index 000000000000..4b5bdc6a0bcf
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/capture/0001-eval-fix.patch
@@ -0,0 +1,10 @@
+diff --git a/src/capture.sh b/src/capture.sh
+index a32b018..82d1f15 100755
+--- a/src/capture.sh
++++ b/src/capture.sh
+@@ -103,4 +103,4 @@ capture () {
+ 
+ 
+ # remove this line if you want to source this file instead
+-eval " ${0##*/}" "$@"
++capture "$@"
diff --git a/nixpkgs/pkgs/tools/misc/capture/0002-sane-defaults.patch b/nixpkgs/pkgs/tools/misc/capture/0002-sane-defaults.patch
new file mode 100644
index 000000000000..1bd49ae41e38
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/capture/0002-sane-defaults.patch
@@ -0,0 +1,22 @@
+diff --git a/src/capture.sh b/src/capture.sh
+index a32b018..42f3936 100755
+--- a/src/capture.sh
++++ b/src/capture.sh
+@@ -9,7 +9,7 @@ set -e
+ #
+ 
+ scale="-1:-1"
+-fps="15"
++fps="30"
+ raw_video="-vf fps=$fps -c:v utvideo -f nut"
+ raw_video_container=".nut"
+ 
+@@ -18,7 +18,7 @@ raw_video_container=".nut"
+ # https://stackoverflow.com/questions/41372045/vp9-encoding-limited-to-4-threads
+ webm_video="-pix_fmt yuv420p -c:v libvpx-vp9 -crf 25 -b:v 0 -f webm -tile-columns 6 -frame-parallel 1 -threads 8"
+ 
+-tmpdir="/var/tmp"
++tmpdir="/tmp"
+ 
+ 
+ # capture_raw ./foo.nut
diff --git a/nixpkgs/pkgs/tools/misc/capture/default.nix b/nixpkgs/pkgs/tools/misc/capture/default.nix
new file mode 100644
index 000000000000..49c238b0bd0f
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/capture/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, pkgs, slop, ffmpeg, fetchFromGitHub, makeWrapper}:
+
+stdenv.mkDerivation rec {
+  name = "capture-${version}";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "buhman";
+    repo = "capture";
+    rev  = "4be986f17462b8d520559429c74da6bf3a436259";
+    sha256 = "172y06vs993x5v78zwl81xma1gkvjq1ad9rvmf3a217fyxsz4nhh";
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  patches = [ ./0001-eval-fix.patch ./0002-sane-defaults.patch ];
+
+  installPhase = ''
+    install -Dm755 src/capture.sh $out/bin/capture
+
+    patchShebangs $out/bin/capture
+    wrapProgram $out/bin/capture \
+      --prefix PATH : '${stdenv.lib.makeBinPath [ slop ffmpeg ]}'
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A no bullshit screen capture tool";
+    homepage = "https://github.com/buhman/capture";
+    maintainers = [ maintainers.ar1a ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/chelf/default.nix b/nixpkgs/pkgs/tools/misc/chelf/default.nix
new file mode 100644
index 000000000000..4c54ab239d29
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/chelf/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "chelf-${version}";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "Gottox";
+    repo = "chelf";
+    rev = "v${version}";
+    sha256 = "0xwd84aynyqsi2kcndbff176vmhrak3jmn3lfcwya59653pppjr6";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv chelf $out/bin/chelf
+  '';
+
+  meta = with stdenv.lib; {
+    description = "change or display the stack size of an ELF binary";
+    homepage = https://github.com/Gottox/chelf;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/cht.sh/default.nix b/nixpkgs/pkgs/tools/misc/cht.sh/default.nix
new file mode 100644
index 000000000000..837bc0e9ed71
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/cht.sh/default.nix
@@ -0,0 +1,39 @@
+{ stdenv
+, fetchFromGitHub
+, makeWrapper
+, curl
+, ncurses
+, rlwrap
+, xsel
+}:
+
+stdenv.mkDerivation rec {
+  name = "cht.sh-${version}";
+  version = "unstable-2018-11-02";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  src = fetchFromGitHub {
+    owner = "chubin";
+    repo = "cheat.sh";
+    rev = "9595805ac68b3c096f7c51fa024dcb97a7dfac44";
+    sha256 = "11g8say5fksg0zg0bqrgl92rprn4lwp20g9rz1i0r38f0jy3nyrf";
+  };
+
+  # Fix ".cht.sh-wrapped" in the help message
+  postPatch = "substituteInPlace share/cht.sh.txt --replace '\${0##*/}' cht.sh";
+
+  installPhase = ''
+    install -m755 -D share/cht.sh.txt "$out/bin/cht.sh"
+    wrapProgram "$out/bin/cht.sh" \
+      --prefix PATH : "${stdenv.lib.makeBinPath [ curl rlwrap ncurses xsel ]}"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "CLI client for cheat.sh, a community driven cheat sheet";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fgaz ];
+    homepage = https://github.com/chubin/cheat.sh;
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/misc/cloc/default.nix b/nixpkgs/pkgs/tools/misc/cloc/default.nix
index 5a69a6ae7ad2..903b5b13f845 100644
--- a/nixpkgs/pkgs/tools/misc/cloc/default.nix
+++ b/nixpkgs/pkgs/tools/misc/cloc/default.nix
@@ -1,6 +1,4 @@
-{ stdenv, fetchFromGitHub, makeWrapper, perl
-, AlgorithmDiff, ParallelForkManager, RegexpCommon
-}:
+{ stdenv, fetchFromGitHub, makeWrapper, perlPackages }:
 
 stdenv.mkDerivation rec {
   name = "cloc-${version}";
@@ -17,9 +15,9 @@ stdenv.mkDerivation rec {
     sourceRoot=$(echo */Unix)
   '';
 
-  buildInputs = [
-    makeWrapper perl AlgorithmDiff ParallelForkManager RegexpCommon
-  ];
+  buildInputs = [ makeWrapper ] ++ (with perlPackages; [
+    perl AlgorithmDiff ParallelForkManager RegexpCommon
+  ]);
 
   makeFlags = [ "prefix=" "DESTDIR=$(out)" "INSTALL=install" ];
 
diff --git a/nixpkgs/pkgs/tools/misc/coreutils/default.nix b/nixpkgs/pkgs/tools/misc/coreutils/default.nix
index c252a8748bce..3a3486503081 100644
--- a/nixpkgs/pkgs/tools/misc/coreutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/coreutils/default.nix
@@ -25,16 +25,27 @@ stdenv.mkDerivation rec {
 
   patches = optional stdenv.hostPlatform.isCygwin ./coreutils-8.23-4.cygwin.patch;
 
-  # The test tends to fail on btrfs and maybe other unusual filesystems.
   postPatch = ''
+    # The test tends to fail on btrfs and maybe other unusual filesystems.
     sed '2i echo Skipping dd sparse test && exit 0' -i ./tests/dd/sparse.sh
     sed '2i echo Skipping cp sparse test && exit 0' -i ./tests/cp/sparse.sh
     sed '2i echo Skipping rm deep-2 test && exit 0' -i ./tests/rm/deep-2.sh
     sed '2i echo Skipping du long-from-unreadable test && exit 0' -i ./tests/du/long-from-unreadable.sh
+
+    # sandbox does not allow setgid
     sed '2i echo Skipping chmod setgid test && exit 0' -i ./tests/chmod/setgid.sh
-    sed '2i print "Skipping env -S test";  exit 0;' -i ./tests/misc/env-S.pl
     substituteInPlace ./tests/install/install-C.sh \
       --replace 'mode3=2755' 'mode3=1755'
+
+    sed '2i print "Skipping env -S test";  exit 0;' -i ./tests/misc/env-S.pl
+
+    # these tests fail in the unprivileged nix sandbox (without nix-daemon) as we break posix assumptions
+    for f in ./tests/chgrp/{basic.sh,recurse.sh,default-no-deref.sh,no-x.sh,posix-H.sh}; do
+      sed '2i echo Skipping chgrp && exit 0' -i "$f"
+    done
+    for f in gnulib-tests/{test-chown.c,test-fchownat.c,test-lchown.c}; do
+      echo "int main() { return 0; }" > "$f"
+    done
   '';
 
   outputs = [ "out" "info" ];
diff --git a/nixpkgs/pkgs/tools/misc/crex/default.nix b/nixpkgs/pkgs/tools/misc/crex/default.nix
new file mode 100644
index 000000000000..696fbe863832
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/crex/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "crex";
+  version = "0.2.5";
+
+  src = fetchFromGitHub {
+    owner = "octobanana";
+    repo = "crex";
+    rev = version;
+    sha256 = "086rvwl494z48acgsq3yq11qh1nxm8kbf11adn16aszai4d4ipr3";
+  };
+
+  postPatch = ''
+    substituteInPlace CMakeLists.txt --replace "/usr/local/bin" "bin"
+  '';
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "Explore, test, and check regular expressions in the terminal";
+    homepage = https://octobanana.com/software/crex;
+    license = licenses.mit;
+    maintainers = with maintainers; [ dtzWill ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/ddcutil/default.nix b/nixpkgs/pkgs/tools/misc/ddcutil/default.nix
index ca006339d023..25028a93e277 100644
--- a/nixpkgs/pkgs/tools/misc/ddcutil/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ddcutil/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "ddcutil-${version}";
-  version = "0.9.3";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner  = "rockowitz";
     repo   = "ddcutil";
     rev    = "v${version}";
-    sha256 = "02jl0mr5m3h839j3drrkdycnvlhji4xdmnjcqfglds0ir1q1yapi";
+    sha256 = "0ywrjp6r1z6jlwq1ycrr9qn3drjzbxvdf0v5f92rh68fwb06gn0y";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/misc/debian-devscripts/default.nix b/nixpkgs/pkgs/tools/misc/debian-devscripts/default.nix
index a08f465d6cd7..3ed284aa3e1f 100644
--- a/nixpkgs/pkgs/tools/misc/debian-devscripts/default.nix
+++ b/nixpkgs/pkgs/tools/misc/debian-devscripts/default.nix
@@ -1,5 +1,5 @@
-{stdenv, fetchurl, perl, CryptSSLeay, LWP, unzip, xz, dpkg, TimeDate, DBFile
-, FileDesktopEntry, libxslt, docbook_xsl, makeWrapper
+{stdenv, fetchurl, unzip, xz, dpkg
+, libxslt, docbook_xsl, makeWrapper
 , python3Packages
 , perlPackages, curl, gnupg, diffutils
 , sendmailPath ? "/run/wrappers/bin/sendmail"
@@ -16,10 +16,8 @@ in stdenv.mkDerivation rec {
     sha256 = "0xy1nvqrnifx46g8ch69pk31by0va6hn10wpi1fkrsrgncanjjh1";
   };
 
-  buildInputs = [ perl CryptSSLeay LWP unzip xz dpkg TimeDate DBFile 
-    FileDesktopEntry libxslt python setuptools makeWrapper
-    perlPackages.ParseDebControl perlPackages.LWPProtocolHttps
-    curl gnupg diffutils ];
+  buildInputs = [ unzip xz dpkg libxslt python setuptools makeWrapper curl gnupg diffutils ] ++
+    (with perlPackages; [ perl CryptSSLeay LWP TimeDate DBFile FileDesktopEntry ParseDebControl LWPProtocolHttps ]);
 
   preConfigure = ''
     export PERL5LIB="$PERL5LIB''${PERL5LIB:+:}${dpkg}";
diff --git a/nixpkgs/pkgs/tools/misc/debianutils/default.nix b/nixpkgs/pkgs/tools/misc/debianutils/default.nix
index bec0cbbd2b9b..ddd0053f529a 100644
--- a/nixpkgs/pkgs/tools/misc/debianutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/debianutils/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "4.8.6";
+  version = "4.8.6.1";
   name = "debianutils-${version}";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/d/debianutils/debianutils_${version}.tar.xz";
-    sha256 = "0wrz8ak4896f5i8wirijr9hdvc43xzxpg2gjs0snmpys8iqh82fv";
+    sha256 = "1vamrgzsfdb2183xgj1qmfzh710iqj2dlbdsl92n3ckqfa51x7q9";
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/tools/misc/debootstrap/default.nix b/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
index 222a29a0d9cb..0a3ae5c28e97 100644
--- a/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
+++ b/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
@@ -15,13 +15,13 @@ let binPath = stdenv.lib.makeBinPath [
   ];
 in stdenv.mkDerivation rec {
   name = "debootstrap-${version}";
-  version = "1.0.111";
+  version = "1.0.114";
 
   src = fetchurl {
     # git clone git://git.debian.org/d-i/debootstrap.git
     # I'd like to use the source. However it's lacking the lanny script ? (still true?)
     url = "mirror://debian/pool/main/d/debootstrap/debootstrap_${version}.tar.gz";
-    sha256 = "1m2678y2cswd2z7pksknv1cwlv3ww1fmhz4kkhvxlhpmyyc4260w";
+    sha256 = "14lw18bhxap1g15q0rhslacj1bcrl69wrqcx6azmbvd92rl4bqd8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
index 80e0cde7e54a..b4272dac5317 100644
--- a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
+++ b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
@@ -9,12 +9,12 @@
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python3Packages.buildPythonApplication rec {
   name = "diffoscope-${version}";
-  version = "99";
+  version = "110";
 
   src = fetchgit {
     url    = "https://anonscm.debian.org/git/reproducible/diffoscope.git";
     rev    = "refs/tags/${version}";
-    sha256 = "04a2sqv43g002b7s0crk9gnpdvf90j8j8p01b6shinxh6an8prs2";
+    sha256 = "0rhjxigwxbqbqk7xv7n4m4rh693rg3cbp4x565jv68iy423mf2fb";
   };
 
   patches = [
@@ -43,6 +43,7 @@ python3Packages.buildPythonApplication rec {
     ] ++ lib.optionals enableBloat [
       apktool cbfstool colord fpc ghc ghostscriptX giflib gnupg1 gnumeric imagemagick
       llvm jdk mono openssh pdftk poppler_utils tcpdump unoconv
+      python3Packages.guestfs
     ];
 
   doCheck = false; # Calls 'mknod' in squashfs tests, which needs root
diff --git a/nixpkgs/pkgs/tools/misc/direnv/default.nix b/nixpkgs/pkgs/tools/misc/direnv/default.nix
index 089ed6ce5166..2a02b0391aeb 100644
--- a/nixpkgs/pkgs/tools/misc/direnv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/direnv/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "direnv-${version}";
-  version = "2.18.2";
+  version = "2.19.0";
   goPackagePath = "github.com/direnv/direnv";
 
   src = fetchFromGitHub {
     owner = "direnv";
     repo = "direnv";
     rev = "v${version}";
-    sha256 = "011isxsc3byg8jd4jhi4pdfqrxa1acnzirhcv7lvw3jl0v7xnma8";
+    sha256 = "0v5r07b5r0wmmf8wndi0z1fp979pyqg6xpx7w847bkyn4pvgpscm";
   };
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/tools/misc/edid-decode/default.nix b/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
index 246898a72317..5eb4055d5b96 100644
--- a/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
+++ b/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchgit }:
 let
-  version = "2017-09-18";
+  version = "2018-12-06";
 in stdenv.mkDerivation rec {
   name = "edid-decode-unstable-${version}";
 
   src = fetchgit {
-    url = "git://anongit.freedesktop.org/xorg/app/edid-decode";
-    rev = "f56f329ed23a25d002352dedba1e8f092a47286f";
-    sha256 = "1qzaq342dsdid0d99y7kj60p6bzgp2zjsmspyckddc68mmz4cs9n";
+    url = "git://linuxtv.org/edid-decode.git";
+    rev = "6def7bc83dfb0338632e06a8b14c93faa6af8879";
+    sha256 = "0v6d6jy309pb02l377l0fpmgfsvcpiqc5bvyrli34v413mhq6p15";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/misc/esptool/default.nix b/nixpkgs/pkgs/tools/misc/esptool/default.nix
index fe574b4f8d43..50ee066d96a2 100644
--- a/nixpkgs/pkgs/tools/misc/esptool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esptool/default.nix
@@ -2,17 +2,17 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "esptool";
-  version = "2.5.1";
+  version = "2.6";
 
   src = fetchFromGitHub {
     owner = "espressif";
     repo = "esptool";
     rev = "v${version}";
-    sha256 = "19l3b1fqg1n3ch484dcibbi5a3nbmjq086has5pwqn348h4k57mh";
+    sha256 = "1hxgzqh5z81dq1k2xd6329h8idk9y8q29izrwm1vhn0m9v1pxa22";
   };
 
-  checkInputs = with python3.pkgs; [ flake8 flake8-future-import flake8-import-order ];
-  propagatedBuildInputs = with python3.pkgs; [ pyserial pyaes ecdsa openssl ];
+  checkInputs = with python3.pkgs; [ flake8 flake8-future-import flake8-import-order openssl ];
+  propagatedBuildInputs = with python3.pkgs; [ pyserial pyaes ecdsa ];
 
   meta = with stdenv.lib; {
     description = "ESP8266 and ESP32 serial bootloader utility";
diff --git a/nixpkgs/pkgs/tools/misc/expect/default.nix b/nixpkgs/pkgs/tools/misc/expect/default.nix
index ed210783db19..bb701f187fa8 100644
--- a/nixpkgs/pkgs/tools/misc/expect/default.nix
+++ b/nixpkgs/pkgs/tools/misc/expect/default.nix
@@ -38,6 +38,5 @@ stdenv.mkDerivation rec {
     homepage = http://expect.sourceforge.net/;
     license = "Expect";
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/fortune/default.nix b/nixpkgs/pkgs/tools/misc/fortune/default.nix
index 8e9557335982..45d27e7b7c82 100644
--- a/nixpkgs/pkgs/tools/misc/fortune/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fortune/default.nix
@@ -1,26 +1,35 @@
-{ stdenv, fetchurl, recode }:
+{ stdenv, fetchurl, cmake, recode, perl }:
 
+let srcs = {
+      fortune = fetchurl {
+        url = "https://github.com/shlomif/fortune-mod/archive/fortune-mod-${version}.tar.gz";
+        sha256 = "89223bb649ea62b030527f181539182d6a17a1a43b0cc499a52732b839f7b691";
+      };
+      shlomifCommon = fetchurl {
+        url = https://bitbucket.org/shlomif/shlomif-cmake-modules/raw/default/shlomif-cmake-modules/Shlomif_Common.cmake;
+        sha256 = "62f188a9f1b7ab0e757eb0bc6540d9c0026d75edc7acc1c3cdf7438871d0a94f";
+      };
+    };
+    version = "2.6.2";
+in
 stdenv.mkDerivation {
-  name = "fortune-mod-1.99.1";
+  name = "fortune-mod-${version}";
 
-  src = fetchurl {
-    url = http://ftp.de.debian.org/debian/pool/main/f/fortune-mod/fortune-mod_1.99.1.orig.tar.gz;
-    sha256 = "1kpa2hgbglj5dbfasvl9wc1q3xpl91mqn3sfby46r4rwyzhswlgw";
-  };
+  src = srcs.fortune;
+
+  sourceRoot = "fortune-mod-fortune-mod-${version}/fortune-mod";
+
+  nativeBuildInputs = [ cmake perl ];
 
   buildInputs = [ recode ];
 
   preConfigure = ''
-    sed -i "s|/usr/|$out/|" Makefile
-  '';
-
-  preBuild = ''
-    makeFlagsArray=("CC=$CC" "REGEXDEFS=-DHAVE_REGEX_H -DPOSIX_REGEX" "LDFLAGS=")
+    cp ${srcs.shlomifCommon} cmake/Shlomif_Common.cmake
   '';
 
   postInstall = ''
     mv $out/games/fortune $out/bin/fortune
-    rmdir $out/games
+    rm -r $out/games
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/misc/gif-for-cli/default.nix b/nixpkgs/pkgs/tools/misc/gif-for-cli/default.nix
new file mode 100644
index 000000000000..b8b86e07abb0
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/gif-for-cli/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, python3Packages, ffmpeg, zlib, libjpeg }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "gif-for-cli";
+  version = "unstable-2018-08-14";
+
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "gif-for-cli";
+    rev = "9696f25fea2e38499b7c248a3151030c3c68bb00";
+    sha256 = "1rj8wjfsabn27k1ds7a5fdqgf2r28zpz4lvhbzssjfj1yf0mfh7s";
+  };
+
+  checkInputs = [ python3Packages.coverage ];
+  buildInputs = [ ffmpeg zlib libjpeg ];
+  propagatedBuildInputs = with python3Packages; [ pillow requests x256 ];
+
+  meta = with stdenv.lib; {
+    description = "Render gifs as ASCII art in your cli";
+    longDescription = "Takes in a GIF, short video, or a query to the Tenor GIF API and converts it to animated ASCII art.";
+    homepage = https://github.com/google/gif-for-cli;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ Scriptkiddi ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/tools/misc/gparted/default.nix b/nixpkgs/pkgs/tools/misc/gparted/default.nix
index a3c30c15e5f7..c2d1a231c0a5 100644
--- a/nixpkgs/pkgs/tools/misc/gparted/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gparted/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gparted-0.32.0";
+  name = "gparted-0.33.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/gparted/${name}.tar.gz";
-    sha256 = "1fjp4c8jc0kjbbih1x1vs9v40d9lncma642kflnmy0bixxnvh7df";
+    sha256 = "1ml1ky3s75lbxr91p608q3prsdh9x899mw7nbgk252pqhg4vh8sh";
   };
 
   configureFlags = [ "--disable-doc" ];
diff --git a/nixpkgs/pkgs/tools/misc/graylog/default.nix b/nixpkgs/pkgs/tools/misc/graylog/default.nix
index bcc4674ac0f0..2f7d5e2a82cf 100644
--- a/nixpkgs/pkgs/tools/misc/graylog/default.nix
+++ b/nixpkgs/pkgs/tools/misc/graylog/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre_headless }:
 
 stdenv.mkDerivation rec {
-  version = "2.4.6";
+  version = "2.5.1";
   name = "graylog-${version}";
 
   src = fetchurl {
     url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz";
-    sha256 = "07bm5zz6b58ig082l6rwvvryh7svkv8nxp0d6izjka5f7x6g9ypw";
+    sha256 = "1n7s6j36rs4dj27fz5n7gvxagx6w4lhi1z2xhryc41pz77mjrnkb";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/tools/misc/grub/2.0x.nix b/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
index 86287779792d..d50797508596 100644
--- a/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
+++ b/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
@@ -109,8 +109,6 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   postInstall = ''
-    paxmark pms $out/sbin/grub-{probe,bios-setup}
-
     # Avoid a runtime reference to gcc
     sed -i $out/lib/grub/*/modinfo.sh -e "/grub_target_cppflags=/ s|'.*'|' '|"
   '';
diff --git a/nixpkgs/pkgs/tools/misc/grub/trusted.nix b/nixpkgs/pkgs/tools/misc/grub/trusted.nix
index d4d79c6e59fa..94beff8dfe37 100644
--- a/nixpkgs/pkgs/tools/misc/grub/trusted.nix
+++ b/nixpkgs/pkgs/tools/misc/grub/trusted.nix
@@ -90,10 +90,6 @@ stdenv.mkDerivation rec {
   doCheck = false;
   enableParallelBuilding = true;
 
-  postInstall = ''
-    paxmark pms $out/sbin/grub-{probe,bios-setup}
-  '';
-
   meta = with stdenv.lib; {
     description = "GRUB 2.0 extended with TCG (TPM) support for integrity measured boot process (trusted boot)";
     homepage = https://github.com/Sirrix-AG/TrustedGRUB2;
diff --git a/nixpkgs/pkgs/tools/misc/hebcal/default.nix b/nixpkgs/pkgs/tools/misc/hebcal/default.nix
index edb5973fbb70..2c19facd1d36 100644
--- a/nixpkgs/pkgs/tools/misc/hebcal/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hebcal/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version = "4.15";
+  version = "4.16";
   name = "hebcal-${version}";
 
   src = fetchFromGitHub {
     owner = "hebcal";
     repo = "hebcal";
     rev = "v${version}";
-    sha256 = "1s9iardqyzn42hs0x9p4rig2m87v87jvzcrbb9arcci7nds66y3i";
+    sha256 = "081h3dan0v14camv6j3swl9y31yzfwjfkp2h8xz5qmrh0scv8azr";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/misc/hexyl/default.nix b/nixpkgs/pkgs/tools/misc/hexyl/default.nix
new file mode 100644
index 000000000000..a672544f1300
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/hexyl/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  name    = "hexyl-${version}";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner  = "sharkdp";
+    repo   = "hexyl";
+    rev    = "v${version}";
+    sha256 = "09h01y0r7km0vgljgc8bgiswbrq47id408vpya2da4mijbg4h82r";
+  };
+
+  cargoSha256 = "1zy2jvzx62yjaiq25560krz1648vqwfr5kjbq3wz7nlmf1cs7s2c";
+
+  meta = with stdenv.lib; {
+    description = "A command-line hex viewer";
+    longDescription = ''
+      `hexyl` is a simple hex viewer for the terminal. It uses a colored
+      output to distinguish different categories of bytes (NULL bytes,
+      printable ASCII characters, ASCII whitespace characters, other ASCII
+      characters and non-ASCII).
+    '';
+    homepage    = https://github.com/sharkdp/hexyl;
+    license     = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ dywedir ];
+    platforms   = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/ifdtool/default.nix b/nixpkgs/pkgs/tools/misc/ifdtool/default.nix
new file mode 100644
index 000000000000..7d15825c27e8
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/ifdtool/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "ifdtool-${version}";
+  version = "4.9";
+
+  src = fetchurl {
+    url = "https://coreboot.org/releases/coreboot-${version}.tar.xz";
+    sha256 = "0xkai65d3z9fivwscbkm7ndcw2p9g794xz8fwdv979w77n5qsdij";
+  };
+
+  buildPhase = ''
+    make -C util/ifdtool
+    '';
+
+  installPhase = ''
+    install -Dm755 util/ifdtool/ifdtool $out/bin/ifdtool
+    '';
+
+  meta = with stdenv.lib; {
+    description = "Extract and dump Intel Firmware Descriptor information";
+    homepage = https://www.coreboot.org;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.petabyteboy ];
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/misc/lbdb/default.nix b/nixpkgs/pkgs/tools/misc/lbdb/default.nix
index abffd6c70d5a..0aadfa580154 100644
--- a/nixpkgs/pkgs/tools/misc/lbdb/default.nix
+++ b/nixpkgs/pkgs/tools/misc/lbdb/default.nix
@@ -7,7 +7,7 @@
 }:
 
 let
-  version = "0.47";
+  version = "0.48";
 in
 with stdenv.lib;
 with perlPackages;
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   name = "lbdb-${version}";
   src = fetchurl {
     url = "http://www.spinnaker.de/lbdb/download/lbdb_${version}.tar.gz";
-    sha256 = "06zgj03q75gc6ri4cw3jdmi01f22anwchlv2kw4zp9nbm5swv36b";
+    sha256 = "1j1ac0nnf6j5mwb6rh61ax9aidj4lvv2vrj5b1p71d4d1m3g180z";
   };
 
   buildInputs = [ goobook makeWrapper perl ConvertASN1 perlldap AuthenSASL ]
diff --git a/nixpkgs/pkgs/tools/misc/lf/default.nix b/nixpkgs/pkgs/tools/misc/lf/default.nix
index 8137379a4da6..cab1d1b5958b 100644
--- a/nixpkgs/pkgs/tools/misc/lf/default.nix
+++ b/nixpkgs/pkgs/tools/misc/lf/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   name = "lf-${version}";
-  version = "8";
+  version = "9";
 
   src = fetchFromGitHub {
     owner = "gokcehan";
     repo = "lf";
     rev = "r${version}";
-    sha256 = "0rmcac9wx9lldl57m1cim1adf2fqkva1yi4v6934jgccqhlqvk58";
+    sha256 = "08dwnlgw1dcnd2hl5ma6qqzcyjn9wjp28mjbnidyvc5dmmxc87dq";
   };
 
   goPackagePath = "github.com/gokcehan/lf";
diff --git a/nixpkgs/pkgs/tools/misc/lf/deps.nix b/nixpkgs/pkgs/tools/misc/lf/deps.nix
index 57877822b08d..8f1e5c75c281 100644
--- a/nixpkgs/pkgs/tools/misc/lf/deps.nix
+++ b/nixpkgs/pkgs/tools/misc/lf/deps.nix
@@ -4,8 +4,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/nsf/termbox-go";
-      rev = "b66b20ab708e289ff1eb3e218478302e6aec28ce"; # master
-      sha256 = "0wrgnwfdxrspni5q15vzr5q1bxnzb7m6q4xjhllcyddgn2zqprsa";
+      rev = "02980233997d87bbda048393d47b4d453f7a398d"; # master
+      sha256 = "1zxysi00bk7bv5ka6vn9dnzk5q9wjp0252cm3v6l2hbrcx7405zw";
     };
   }
   {
@@ -13,8 +13,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-runewidth";
-      rev = "ce7b0b5c7b45a81508558cd1dba6bb1e4ddb51bb"; # v0.0.3
-      sha256 = "0lc39b6xrxv7h3v3y1kgz49cgi5qxwlygs715aam6ba35m48yi7g";
+      rev = "3ee7d812e62a0804a7d0a324e0249ca2db3476d3"; # v0.0.4
+      sha256 = "00b3ssm7wiqln3k54z2wcnxr3k3c7m1ybyhb9h8ixzbzspld0qzs";
     };
   }
 ]
diff --git a/nixpkgs/pkgs/tools/misc/mbuffer/default.nix b/nixpkgs/pkgs/tools/misc/mbuffer/default.nix
index 67640cf30abe..e39a514bcb8c 100644
--- a/nixpkgs/pkgs/tools/misc/mbuffer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mbuffer/default.nix
@@ -3,12 +3,12 @@
  } :
 
 stdenv.mkDerivation rec {
-  version = "20181119";
+  version = "20190113";
   name = "mbuffer-${version}";
 
   src = fetchurl {
     url = "http://www.maier-komor.de/software/mbuffer/mbuffer-${version}.tgz";
-    sha256 = "1pysnvq03g3w4npw15cykgd0n7nj7lmv655szav4802pz1dgywj7";
+    sha256 = "07rgv98ys3bd0q35ivxjrgrhq199z19lj14jafzq96gcwspy8783";
   };
 
   buildInputs = [ openssl ];
diff --git a/nixpkgs/pkgs/tools/misc/mc/default.nix b/nixpkgs/pkgs/tools/misc/mc/default.nix
index bdae1e0cf848..a86b7fecc436 100644
--- a/nixpkgs/pkgs/tools/misc/mc/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mc/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "mc-${version}";
-  version = "4.8.21";
+  version = "4.8.22";
 
   src = fetchurl {
     url = "http://www.midnight-commander.org/downloads/${name}.tar.xz";
-    sha256 = "130lzrcmazinznnnpf00lcizdlmjdhfiqfx00g1cjcbwmi3fadwg";
+    sha256 = "060kh3dmk8fmmsibn1l815qjazzfxzbhgqggrhncz604pbbnhy7f";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/misc/mimeo/default.nix b/nixpkgs/pkgs/tools/misc/mimeo/default.nix
index 727732eb87bb..02637e4ea8fa 100644
--- a/nixpkgs/pkgs/tools/misc/mimeo/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mimeo/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   name = "mimeo-${version}";
-  version = "2018.11";
+  version = "2018.12";
 
   src = fetchurl {
     url = "https://xyne.archlinux.ca/projects/mimeo/src/${name}.tar.xz";
-    sha256 = "0qhsy6d1mg00s3mbykci7zk2n3qp2c27mh9nvjja9x8lx7xyfznm";
+    sha256 = "1bjhqwfi8rrf1m4fwwqvg0qzk035qcnxlmhh4kxrpm6rqhw48vk8";
   };
 
   buildInputs = [ file desktop-file-utils ];
diff --git a/nixpkgs/pkgs/tools/misc/moreutils/default.nix b/nixpkgs/pkgs/tools/misc/moreutils/default.nix
index caef0f7b8bb2..00cbc8b46295 100644
--- a/nixpkgs/pkgs/tools/misc/moreutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/moreutils/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchgit, libxml2, libxslt, docbook-xsl, docbook_xml_dtd_44, perl, IPCRun, TimeDate, TimeDuration, makeWrapper, darwin }:
+{ stdenv, fetchgit, libxml2, libxslt, docbook-xsl, docbook_xml_dtd_44, perlPackages, makeWrapper, darwin }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "moreutils-${version}";
-  version = "0.62";
+  version = "0.63";
 
   src = fetchgit {
     url = "git://git.joeyh.name/moreutils";
     rev = "refs/tags/${version}";
-    sha256 = "0sk7rgqsqbdwr69mh7y4v9lv4v0nfmsrqgvbpy2gvy82snhfzar2";
+    sha256 = "17sszmcdck4w01hgcq7vd25p2iw3yzvjwx1yf20jg85gzs1dplrd";
   };
 
   preBuild = ''
@@ -18,12 +18,15 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxml2 libxslt docbook-xsl docbook_xml_dtd_44 makeWrapper ]
     ++ optional stdenv.isDarwin darwin.cctools;
 
-  propagatedBuildInputs = [ perl IPCRun TimeDate TimeDuration ];
+  propagatedBuildInputs = with perlPackages; [ perl IPCRun TimeDate TimeDuration ];
 
   buildFlags = "CC=cc";
   installFlags = "PREFIX=$(out)";
 
-  postInstall = "wrapProgram $out/bin/chronic --prefix PERL5LIB : $PERL5LIB";
+  postInstall = ''
+    wrapProgram $out/bin/chronic --prefix PERL5LIB : $PERL5LIB
+    wrapProgram $out/bin/ts --prefix PERL5LIB : $PERL5LIB
+  '';
 
   meta = {
     description = "Growing collection of the unix tools that nobody thought to write long ago when unix was young";
diff --git a/nixpkgs/pkgs/tools/misc/mstflint/default.nix b/nixpkgs/pkgs/tools/misc/mstflint/default.nix
index 748c0917defb..f3cd1c6e5277 100644
--- a/nixpkgs/pkgs/tools/misc/mstflint/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mstflint/default.nix
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec {
     homepage = https://www.openfabrics.org/;
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ wkennington ];
     broken = true; # 2018-04-11
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ncdu/default.nix b/nixpkgs/pkgs/tools/misc/ncdu/default.nix
index b167d0f2c475..bb7924515647 100644
--- a/nixpkgs/pkgs/tools/misc/ncdu/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ncdu/default.nix
@@ -2,17 +2,17 @@
 
 stdenv.mkDerivation rec {
   name = "ncdu-${version}";
-  version = "1.13";
+  version = "1.14";
 
   src = fetchurl {
     url = "https://dev.yorhel.nl/download/${name}.tar.gz";
-    sha256 = "0ni56ymlii577src4dzfbrq1mznbf6i0nka4bvh2sb1971f2ingl";
+    sha256 = "0i4cap2z3037xx2rdzhrlazl2igk3xy4ncddp9j7xqi1mcx7i566";
   };
 
   buildInputs = [ ncurses ];
 
   meta = with stdenv.lib; {
-    description = "Ncurses disk usage analyzer";
+    description = "Disk usage analyzer with an ncurses interface";
     homepage = https://dev.yorhel.nl/ncdu;
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/tools/misc/neofetch/default.nix b/nixpkgs/pkgs/tools/misc/neofetch/default.nix
index a076a405ce78..18ae88547a09 100644
--- a/nixpkgs/pkgs/tools/misc/neofetch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/neofetch/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "neofetch-${version}";
-  version = "5.0.0";
+  version = "6.0.0";
   src = fetchFromGitHub {
     owner = "dylanaraps";
     repo = "neofetch";
     rev = version;
-    sha256 = "0yzyi2p0d8xp576lxyv5m9h60dl1d5dmrn40aad307872835b9rr";
+    sha256 = "0j0r40llyry1sgc6p9wd7jrpydps2lnj4rwajjp37697g2bik89i";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/tools/misc/oci-image-tool/default.nix b/nixpkgs/pkgs/tools/misc/oci-image-tool/default.nix
new file mode 100644
index 000000000000..6d508a48901a
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/oci-image-tool/default.nix
@@ -0,0 +1,23 @@
+{ lib, fetchFromGitHub, buildGoPackage }:
+
+buildGoPackage rec {
+  name = "oci-image-tool-${version}";
+  version = "1.0.0-rc1";
+
+  goPackagePath = "github.com/opencontainers/image-tools";
+  subPackages = [ "cmd/oci-image-tool" ];
+
+  src = fetchFromGitHub {
+    owner = "opencontainers";
+    repo = "image-tools";
+    rev = "v${version}";
+    sha256 = "0c4n69smqlkf0r6khy9gbg5f810qh9g8jqsl9kibb0dyswizr14r";
+  };
+
+  meta = {
+    description = "A collection of tools for working with the OCI image format specification";
+    homepage = https://github.com/opencontainers/image-tools;
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ nzhang-zh ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/ostree/default.nix b/nixpkgs/pkgs/tools/misc/ostree/default.nix
index fc3d016757b5..0054e38ed2da 100644
--- a/nixpkgs/pkgs/tools/misc/ostree/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ostree/default.nix
@@ -1,34 +1,17 @@
-{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, gtk-doc, gobject-introspection, gnome3
+{ stdenv, fetchurl, fetchpatch, pkgconfig, gtk-doc, gobject-introspection, gnome3
 , glib, systemd, xz, e2fsprogs, libsoup, gpgme, which, autoconf, automake, libtool, fuse, utillinuxMinimal, libselinux
 , libarchive, libcap, bzip2, yacc, libxslt, docbook_xsl, docbook_xml_dtd_42, python3
 }:
 
-let
-  version = "2018.9";
-
-  libglnx-src = fetchFromGitHub {
-    owner = "GNOME";
-    repo = "libglnx";
-    rev = "470af8763ff7b99bec950a6ae0a957c1dcfc8edd";
-    sha256 = "1fwik38i6w3r6pn4qkizradcqp1m83n7ljh9jg0y3p3kvrbfxh15";
-  };
-
-  bsdiff-src = fetchFromGitHub {
-    owner = "mendsley";
-    repo = "bsdiff";
-    rev = "1edf9f656850c0c64dae260960fabd8249ea9c60";
-    sha256 = "1h71d2h2d3anp4msvpaff445rnzdxii3id2yglqk7af9i43kdsn1";
-  };
-in stdenv.mkDerivation {
-  name = "ostree-${version}";
+stdenv.mkDerivation rec {
+  pname = "ostree";
+  version = "2019.1";
 
   outputs = [ "out" "dev" "man" "installedTests" ];
 
-  src = fetchFromGitHub {
-    rev = "v${version}";
-    owner = "ostreedev";
-    repo = "ostree";
-    sha256 = "0a8gr4qqxcvz3fqv9w4dxy6iq0rq4kdzf08rzv8xg4gic3ldgyvj";
+  src = fetchurl {
+    url = "https://github.com/ostreedev/ostree/releases/download/v${version}/libostree-${version}.tar.xz";
+    sha256 = "08y7nsxl305dnlfak4kyj88lld848y4kg6bvjqngcxaqqvkk9xqm";
   };
 
   patches = [
@@ -57,13 +40,6 @@ in stdenv.mkDerivation {
     (python3.withPackages (p: with p; [ pyyaml ])) gnome3.gjs # for tests
   ];
 
-  prePatch = ''
-    rmdir libglnx bsdiff
-    cp --no-preserve=mode -r ${libglnx-src} libglnx
-    cp --no-preserve=mode -r ${bsdiff-src} bsdiff
-  '';
-
-
   preConfigure = ''
     env NOCONFIGURE=1 ./autogen.sh
   '';
@@ -71,17 +47,16 @@ in stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   configureFlags = [
-    "--with-systemdsystemunitdir=$(out)/lib/systemd/system"
-    "--with-systemdsystemgeneratordir=$(out)/lib/systemd/system-generators"
+    "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
+    "--with-systemdsystemgeneratordir=${placeholder "out"}/lib/systemd/system-generators"
     "--enable-installed-tests"
   ];
 
   makeFlags = [
-    "installed_testdir=$(installedTests)/libexec/installed-tests/libostree"
-    "installed_test_metadir=$(installedTests)/share/installed-tests/libostree"
+    "installed_testdir=${placeholder "installedTests"}/libexec/installed-tests/libostree"
+    "installed_test_metadir=${placeholder "installedTests"}/share/installed-tests/libostree"
   ];
 
-
   meta = with stdenv.lib; {
     description = "Git for operating system binaries";
     homepage = https://ostree.readthedocs.io/en/latest/;
diff --git a/nixpkgs/pkgs/tools/misc/papis/default.nix b/nixpkgs/pkgs/tools/misc/papis/default.nix
index 52e704eb52e1..8bccfccfeabf 100644
--- a/nixpkgs/pkgs/tools/misc/papis/default.nix
+++ b/nixpkgs/pkgs/tools/misc/papis/default.nix
@@ -1,52 +1,52 @@
-{ lib, fetchFromGitHub, bashInteractive
-, python3, vim
+{ lib, fetchFromGitHub, fetchpatch
+, python36, xdg_utils
 }:
 
-let
-  python = python3;
-
-in python.pkgs.buildPythonApplication rec {
+python36.pkgs.buildPythonApplication rec {
   pname = "papis";
-  version = "0.6";
+  version = "0.7.5";
 
   # Missing tests on Pypi
   src = fetchFromGitHub {
     owner = "papis";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0zy8q154zhpqb75c775nwq3mdl1szhzhkfi0nvyjmzfgsv2g1wa2";
+    sha256 = "1b481sj92z9nw7gwbrpkgd4nlmqc1n73qilkc51k2r56cy1kjvss";
   };
 
-  postPatch = ''
-    sed -i 's/configparser>=3.0.0/# configparser>=3.0.0/' setup.py
-    patchShebangs tests
-  '';
+  # Update click version to 7.0.0
+  patches = fetchpatch {
+    url = https://github.com/papis/papis/commit/fddb80978a37a229300b604c26e992e2dc90913f.patch;
+    sha256 = "0cmagfdaaml1pxhnxggifpb47z5g1p231qywnvnqpd3dm93382w1";
+  };
 
-  propagatedBuildInputs = with python.pkgs; [
-    argcomplete arxiv2bib beautifulsoup4 bibtexparser
-    configparser dmenu-python habanero papis-python-rofi
-    pylibgen prompt_toolkit pyparser python_magic pyyaml
-    requests unidecode urwid vobject tkinter whoosh
-    vim
+  propagatedBuildInputs = with python36.pkgs; [
+    click requests filetype pyparsing configparser
+    arxiv2bib pyyaml chardet beautifulsoup4 prompt_toolkit
+    bibtexparser python-slugify pyparser pylibgen
+    habanero isbnlib
+    # optional dependencies
+    dmenu-python whoosh
   ];
 
-  checkInputs = with python.pkgs; [ pytest ];
-
-  # Papis tries to create the config folder under $HOME during the tests
-  checkPhase = ''
-    mkdir -p check-phase
-    export PATH=$out/bin:$PATH
-    # Still don't know why this fails
-    sed -i 's/--set dir=hello //' tests/bash/test_default.sh
+  postInstall = ''
+    install -Dt "$out/etc/bash_completion.d" scripts/shell_completion/build/bash/papis
+  '';
 
-    # This test has been disabled since it requires a network connaction
-    sed -i 's/test_downloader_getter(self):/disabled_test_downloader_getter(self):/' papis/downloaders/tests/test_main.py
+  checkInputs = (with python36.pkgs; [
+    pytest
+  ]) ++ [
+    xdg_utils
+  ];
 
-    export HOME=$(pwd)/check-phase
-    make test
-    SH=${bashInteractive}/bin/bash make test-non-pythonic
+  # most of the downloader tests require a network connection
+  checkPhase = ''
+    HOME=$(mktemp -d) pytest papis tests --ignore tests/downloaders
   '';
 
+  # FIXME: find out why 39 tests fail
+  doCheck = false;
+
   meta = {
     description = "Powerful command-line document and bibliography manager";
     homepage = http://papis.readthedocs.io/en/latest/;
diff --git a/nixpkgs/pkgs/tools/misc/parallel/default.nix b/nixpkgs/pkgs/tools/misc/parallel/default.nix
index 22a032a4a46e..6caaff37acd6 100644
--- a/nixpkgs/pkgs/tools/misc/parallel/default.nix
+++ b/nixpkgs/pkgs/tools/misc/parallel/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20181122";
+  name = "parallel-20190122";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "1mcqymf6vg8jhnjv71sswcz5xrwpq2h2ishi8m1hz8rwhc65h1ig";
+    sha256 = "030rjhis8s47gkm05k4vc9p886cxvadpgzs8rqmgzvlc38h5ywxf";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/misc/parcellite/default.nix b/nixpkgs/pkgs/tools/misc/parcellite/default.nix
index 37073daa699d..1e747961499c 100644
--- a/nixpkgs/pkgs/tools/misc/parcellite/default.nix
+++ b/nixpkgs/pkgs/tools/misc/parcellite/default.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook intltool pkgconfig wrapGAppsHook ];
   buildInputs = [ gtk2 hicolor-icon-theme ];
+  NIX_LDFLAGS = [ "-lgio-2.0" ];
 
   preFixup = ''
     # Need which and xdotool on path to fix auto-pasting.
diff --git a/nixpkgs/pkgs/tools/misc/pb_cli/0001-eval-fix.patch b/nixpkgs/pkgs/tools/misc/pb_cli/0001-eval-fix.patch
new file mode 100644
index 000000000000..7188cf372977
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/pb_cli/0001-eval-fix.patch
@@ -0,0 +1,10 @@
+diff --git a/src/pb.sh b/src/pb.sh
+index be1e472..eb9e6f9 100755
+--- a/src/pb.sh
++++ b/src/pb.sh
+@@ -61,4 +61,4 @@ pb () {
+   esac
+ }
+
+-eval " ${0##*/}" "$@"
++pb "$@"
diff --git a/nixpkgs/pkgs/tools/misc/pb_cli/default.nix b/nixpkgs/pkgs/tools/misc/pb_cli/default.nix
new file mode 100644
index 000000000000..6fab44891c52
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/pb_cli/default.nix
@@ -0,0 +1,40 @@
+{ screenshots ? true, video ? false, clipboard ? true
+, stdenv, pkgs, jq, curl, fetchFromGitHub, makeWrapper, maim ? null, xclip ? null, capture ? null }:
+
+assert screenshots -> maim != null;
+assert video -> capture != null;
+assert clipboard -> xclip != null;
+
+stdenv.mkDerivation rec {
+  name = "pb_cli-${version}";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "ptpb";
+    repo = "pb_cli";
+    rev  = "5242382b3d6b5c0ddaf6e4843a69746b40866e57";
+    sha256 = "0543x3377apinhxnsfq82zlp5sm8g1bf6hmsvvcwra5rsshv2ybk";
+  };
+
+  patches = [ ./0001-eval-fix.patch ];
+
+  buildInputs = [ makeWrapper ];
+
+  liveDeps = [ jq curl ] ++ stdenv.lib.optional screenshots maim
+                         ++ stdenv.lib.optional video capture
+                         ++ stdenv.lib.optional clipboard xclip;
+
+  installPhase = ''
+    install -Dm755 src/pb.sh $out/bin/pb
+
+    patchShebangs $out/bin/pb
+    wrapProgram $out/bin/pb \
+      --prefix PATH : '${stdenv.lib.makeBinPath liveDeps}'
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A no bullshit ptpb client";
+    homepage = "https://github.com/ptpb/pb_cli";
+    maintainers = [ maintainers.ar1a ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/picocom/default.nix b/nixpkgs/pkgs/tools/misc/picocom/default.nix
index bb66b97039da..c49695fd9ad9 100644
--- a/nixpkgs/pkgs/tools/misc/picocom/default.nix
+++ b/nixpkgs/pkgs/tools/misc/picocom/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, fetchFromGitHub, makeWrapper, lrzsz }:
+{ stdenv, fetchFromGitHub, makeWrapper, lrzsz, IOKit }:
+
+assert stdenv.isDarwin -> IOKit != null;
+
+with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "picocom-${version}";
@@ -11,7 +15,8 @@ stdenv.mkDerivation rec {
     sha256 = "1vvjydqf0ax47nvdyyl67jafw5b3sfsav00xid6qpgia1gs2r72n";
   };
 
-  buildInputs = [ makeWrapper ];
+  buildInputs = [ makeWrapper ]
+    ++ optionals stdenv.isDarwin [ IOKit ];
 
   installPhase = ''
     mkdir -p $out/bin $out/share/man/man1
@@ -26,6 +31,6 @@ stdenv.mkDerivation rec {
     description = "Minimal dumb-terminal emulation program";
     homepage = https://github.com/npat-efault/picocom/;
     license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;  # arbitrary choice
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/pipreqs/default.nix b/nixpkgs/pkgs/tools/misc/pipreqs/default.nix
new file mode 100644
index 000000000000..15c5cbc0eb11
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/pipreqs/default.nix
@@ -0,0 +1,24 @@
+{ lib, python2Packages }:
+
+# Using python 2 because when packaging with python 3 pipreqs fails to parse python 2 code.
+python2Packages.buildPythonApplication rec {
+  pname = "pipreqs";
+  version = "0.4.9";
+
+  src = python2Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "cec6eecc4685967b27eb386037565a737d036045f525b9eb314631a68d60e4bc";
+  };
+
+  propagatedBuildInputs = with python2Packages; [ yarg docopt ];
+
+  # Tests requires network access. Works fine without sandboxing
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Generate requirements.txt file for any project based on imports";
+    homepage = https://github.com/bndr/pipreqs;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ psyanticy ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/plantuml/default.nix b/nixpkgs/pkgs/tools/misc/plantuml/default.nix
index c3d3f916d979..6ef561efbc3f 100644
--- a/nixpkgs/pkgs/tools/misc/plantuml/default.nix
+++ b/nixpkgs/pkgs/tools/misc/plantuml/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre, graphviz }:
 
 stdenv.mkDerivation rec {
-  version = "1.2018.13";
+  version = "1.2019.0";
   name = "plantuml-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/plantuml/${version}/plantuml.${version}.jar";
-    sha256 = "181wm05gp4hs4g0z345pp1x9w1g5bx1vpipkhnwvmy4vdj17b4bg";
+    sha256 = "1qc1sgzblmgvwr0zjcqrsj7zlvxrb15aba5fzlv0dbhjalzjlyvn";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/misc/profile-sync-daemon/default.nix b/nixpkgs/pkgs/tools/misc/profile-sync-daemon/default.nix
index cfc13b0e108e..5140fc312cba 100644
--- a/nixpkgs/pkgs/tools/misc/profile-sync-daemon/default.nix
+++ b/nixpkgs/pkgs/tools/misc/profile-sync-daemon/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, utillinux}:
 
 stdenv.mkDerivation rec {
-  version = "6.33";
+  version = "6.34";
   name = "profile-sync-daemon-${version}";
 
   src = fetchurl {
     url = "http://github.com/graysky2/profile-sync-daemon/archive/v${version}.tar.gz";
-    sha256 = "0dzs51xbszzmcg82n2dil6nljj4gn0aw9rqjmhyi4a5frc8g6xmb";
+    sha256 = "0v6yzgfwv3mhf1q2fp6abrvr15p9b1c1gahj3mdh5b4bfcsg3n5a";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/misc/pubs/default.nix b/nixpkgs/pkgs/tools/misc/pubs/default.nix
index c9ab32035de4..393300ddd9e9 100644
--- a/nixpkgs/pkgs/tools/misc/pubs/default.nix
+++ b/nixpkgs/pkgs/tools/misc/pubs/default.nix
@@ -1,46 +1,21 @@
-{ stdenv, fetchFromGitHub, python3 }:
+{ stdenv, fetchFromGitHub, python3Packages }:
 
-let
-  python3Packages = (python3.override {
-    packageOverrides = self: super: {
-      # https://github.com/pubs/pubs/issues/131
-      pyfakefs = super.pyfakefs.overridePythonAttrs (oldAttrs: rec {
-        version = "3.3";
-        src = self.fetchPypi {
-          pname = "pyfakefs";
-          inherit version;
-          sha256 = "e3e198dea5e0d5627b73ba113fd0b139bb417da6bc15d920b2c873143d2f12a6";
-        };
-        postPatch = "";
-        doCheck = false;
-      });
-    };
-  }).pkgs;
-
-in python3Packages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "pubs";
-  version = "0.7.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "pubs";
     repo = "pubs";
     rev = "v${version}";
-    sha256 = "0n5wbjx9wqy6smfg625mhma739jyg7c92766biaiffp0a2bzr475";
+    sha256 = "16zwdqfbmlla6906g3a57a4nj8wnl11fq78r20qms717bzv211j0";
   };
 
   propagatedBuildInputs = with python3Packages; [
-    dateutil configobj bibtexparser pyyaml requests beautifulsoup4
+    argcomplete dateutil configobj feedparser bibtexparser pyyaml requests six beautifulsoup4
   ];
 
-  checkInputs = with python3Packages; [ pyfakefs ddt ];
-
-  preCheck = ''
-    # API tests require networking
-    rm tests/test_apis.py
-
-    # pyfakefs works weirdly in the sandbox
-    export HOME=/
-  '';
+  checkInputs = with python3Packages; [ pyfakefs mock ddt ];
 
   meta = with stdenv.lib; {
     description = "Command-line bibliography manager";
diff --git a/nixpkgs/pkgs/tools/misc/qjoypad/default.nix b/nixpkgs/pkgs/tools/misc/qjoypad/default.nix
index 6a5e674b698b..4d91c184b0ae 100644
--- a/nixpkgs/pkgs/tools/misc/qjoypad/default.nix
+++ b/nixpkgs/pkgs/tools/misc/qjoypad/default.nix
@@ -7,6 +7,7 @@ stdenv.mkDerivation rec {
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ libX11 libXtst qt4 ];
+  NIX_LDFLAGS = [ "-lX11" ];
   patchPhase = ''
     cd src
     substituteInPlace config --replace /bin/bash /bin/sh
diff --git a/nixpkgs/pkgs/tools/misc/recutils/default.nix b/nixpkgs/pkgs/tools/misc/recutils/default.nix
index df53235d0efb..8d648e293c5a 100644
--- a/nixpkgs/pkgs/tools/misc/recutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/recutils/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, emacs, curl, check, bc }:
 
 stdenv.mkDerivation rec {
-  name = "recutils-1.7";
+  name = "recutils-1.8";
 
   src = fetchurl {
     url = "mirror://gnu/recutils/${name}.tar.gz";
-    sha256 = "0cdwa4094x3yx7vn98xykvnlp9rngvd58d19vs3vh5hrvggccg93";
+    sha256 = "14xiln4immfsw8isnvwvq0h23f6z0wilpgsc4qzabnrzb5lsx3nz";
   };
 
   hardeningDisable = [ "format" ];
@@ -15,11 +15,6 @@ stdenv.mkDerivation rec {
   checkInputs = [ check bc ];
   doCheck = true;
 
-  # one file fails to compile with emacs 26
-  postInstall = ''
-    ${emacs}/bin/emacs -Q -batch -f batch-byte-compile $out/share/emacs/site-lisp/*.el || true
-  '';
-
   meta = {
     description = "Tools and libraries to access human-editable, text-based databases";
 
diff --git a/nixpkgs/pkgs/tools/misc/rmlint/default.nix b/nixpkgs/pkgs/tools/misc/rmlint/default.nix
index 640e641dd477..320edd83021f 100644
--- a/nixpkgs/pkgs/tools/misc/rmlint/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rmlint/default.nix
@@ -1,26 +1,30 @@
-{ stdenv, fetchFromGitHub,
-  gettext, glib, json-glib, libelf, pkgconfig, scons, sphinx, utillinux }:
+{ stdenv, fetchFromGitHub
+, gettext, pkgconfig, scons
+, glib, json-glib, libelf, sphinx, utillinux }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "rmlint-${version}";
-  version = "2.6.1";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "sahib";
     repo = "rmlint";
     rev = "v${version}";
-    sha256 = "1j09qk3zypw4my713q9g36kq37ggqd5v9vrs3h821p6p3qmmkdn8";
+    sha256 = "1gc7gbnh0qg1kl151cv1ld87vhpm1v3pnkn7prhscdcc21jrg8nz";
   };
 
-  configurePhase = "scons config";
+  CFLAGS="-I${stdenv.lib.getDev utillinux}/include";
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gettext glib json-glib libelf scons sphinx utillinux ];
+  nativeBuildInputs = [
+    pkgconfig sphinx gettext scons
+  ];
 
-  buildPhase = "scons";
+  buildInputs = [
+    glib json-glib libelf utillinux
+  ];
 
-  installPhase = "scons --prefix=$out install";
+  prefixKey = "--prefix=";
 
   meta = {
     description = "Extremely fast tool to remove duplicates and other lint from your filesystem";
diff --git a/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix b/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
index feb8fa4fbc1d..6127473343c1 100644
--- a/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
@@ -1,39 +1,28 @@
-{ stdenv, fetchpatch, fetchFromGitHub, ostree, rpm, which, autoconf, automake, libtool, pkgconfig,
-  gobject-introspection, gtk-doc, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_42, gperf, cmake,
+{ stdenv, fetchurl, ostree, rpm, which, autoconf, automake, libtool, pkgconfig, cargo, rustc,
+  gobject-introspection, gtk-doc, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_43, gperf, cmake,
   libcap, glib, systemd, json-glib, libarchive, libsolv, librepo, polkit,
   bubblewrap, pcre, check, python }:
 
-let
-  libglnx-src = fetchFromGitHub {
-    owner = "GNOME";
-    repo = "libglnx";
-    rev = "97b5c08d2f93dc93ba296a84bbd2a5ab9bd8fc97";
-    sha256 = "0cz4x63f6ys7dln54g6mrr7hksvqwz78wdc8qb7zr1h2cp1azcvs";
-  };
+stdenv.mkDerivation rec {
+  pname = "rpm-ostree";
+  version = "2019.1";
 
-  libdnf-src = fetchFromGitHub {
-    owner = "rpm-software-management";
-    repo = "libdnf";
-    rev = "b3fcc53f6f3baf4f51f836f5e1eb54eb82d5df49";
-    sha256 = "15nl9x4blyc9922rvz7iq56yy8hxhpsf31cs3ag7aypqpfx3czci";
+  src = fetchurl {
+    url = "https://github.com/projectatomic/${pname}/releases/download/v${version}/${pname}-${version}.tar.xz";
+    sha256 = "14qk8mq5yc67j3wl3fa9xnhh8ii8x5qdiavf7ybw7mp4ma4lwa8k";
   };
 
-  version = "2018.5";
-in stdenv.mkDerivation {
-  name = "rpm-ostree-${version}";
+  patches = [
+    # gobject-introspection requires curl in cflags
+    # https://github.com/NixOS/nixpkgs/pull/50953#issuecomment-449777169
+    # https://github.com/NixOS/nixpkgs/pull/50953#issuecomment-452177080
+    ./fix-introspection-build.patch
+  ];
 
   outputs = [ "out" "dev" "man" "devdoc" ];
-
-  src = fetchFromGitHub {
-    rev = "v${version}";
-    owner = "projectatomic";
-    repo = "rpm-ostree";
-    sha256 = "0y37hr8mmrsww4ka2hlqmz7wp57ibzhah4j87yg8q8dks5hxcbsx";
-  };
-
   nativeBuildInputs = [
-    pkgconfig which autoconf automake libtool cmake gperf
-    gobject-introspection gtk-doc libxml2 libxslt docbook_xsl docbook_xml_dtd_42
+    pkgconfig which autoconf automake libtool cmake gperf cargo rustc
+    gobject-introspection gtk-doc libxml2 libxslt docbook_xsl docbook_xml_dtd_42 docbook_xml_dtd_43
   ];
   buildInputs = [
     libcap ostree rpm glib systemd polkit bubblewrap
@@ -41,14 +30,6 @@ in stdenv.mkDerivation {
     pcre check python
   ];
 
-  patches = [
-    # Use gdbus-codegen from PATH
-    (fetchpatch {
-      url = https://github.com/projectatomic/rpm-ostree/commit/315406d8cd0937e786723986e88d376c88806c60.patch;
-      sha256 = "073yfa62515kyf58s0sz56w0a40062lh761y2y4assqipybwxbvp";
-    })
-  ];
-
   configureFlags = [
     "--enable-gtk-doc"
     "--with-bubblewrap=${bubblewrap}/bin/bwrap"
@@ -57,16 +38,9 @@ in stdenv.mkDerivation {
   dontUseCmakeConfigure = true;
 
   prePatch = ''
-    rmdir libglnx libdnf
-    cp --no-preserve=mode -r ${libglnx-src} libglnx
-    cp --no-preserve=mode -r ${libdnf-src} libdnf
-
     # According to #cmake on freenode, libdnf should bundle the FindLibSolv.cmake module
     cp ${libsolv}/share/cmake/Modules/FindLibSolv.cmake libdnf/cmake/modules/
 
-    # libdnf normally wants sphinx to build its hawkey manpages, but we don't care about those manpages since we don't use hawkey
-    substituteInPlace configure.ac --replace 'cmake \' 'cmake -DWITH_MAN=off \'
-
     # Let's not hardcode the rpm-gpg path...
     substituteInPlace libdnf/libdnf/dnf-keyring.cpp \
       --replace '"/etc/pki/rpm-gpg"' 'getenv("LIBDNF_RPM_GPG_PATH_OVERRIDE") ? getenv("LIBDNF_RPM_GPG_PATH_OVERRIDE") : "/etc/pki/rpm-gpg"'
@@ -84,4 +58,3 @@ in stdenv.mkDerivation {
     platforms = platforms.linux;
   };
 }
-
diff --git a/nixpkgs/pkgs/tools/misc/rpm-ostree/fix-introspection-build.patch b/nixpkgs/pkgs/tools/misc/rpm-ostree/fix-introspection-build.patch
new file mode 100644
index 000000000000..b82ad5b24b5c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/rpm-ostree/fix-introspection-build.patch
@@ -0,0 +1,11 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -103,7 +103,7 @@
+ 				     ostree-1 >= 2018.9
+ 				     libsystemd
+ 				     polkit-gobject-1
+-				     rpm librepo libsolv
++				     rpm librepo libsolv libcurl
+ 				     libarchive])
+ 
+ dnl -ldl: https://github.com/ostreedev/ostree/commit/1f832597fc83fda6cb8daf48c4495a9e1590774c
diff --git a/nixpkgs/pkgs/tools/misc/rrdtool/default.nix b/nixpkgs/pkgs/tools/misc/rrdtool/default.nix
index 4d826c97d29c..09df21e4c41c 100644
--- a/nixpkgs/pkgs/tools/misc/rrdtool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rrdtool/default.nix
@@ -2,21 +2,13 @@
 , tcl-8_5, darwin }:
 
 stdenv.mkDerivation rec {
-  name = "rrdtool-1.7.0";
+  name = "rrdtool-1.7.1";
 
   src = fetchurl {
     url = "https://oss.oetiker.ch/rrdtool/pub/${name}.tar.gz";
-    sha256 = "0ssjqpa0dwwzbylc0drmlbq922qcw8crffc0rpr805xr6n4k8zgr";
+    sha256 = "1bhsg119j94xwykp2sbp01hhxcg78gzblfn7j98slrv9va77g6wq";
   };
 
-  patches = [
-    # fix regression https://github.com/oetiker/rrdtool-1.x/issues/794
-    (fetchpatch {
-      url = "https://github.com/oetiker/rrdtool-1.x/compare/0f28f99...f1edd12.patch";
-      sha256 = "10g56zy0rdjpv3kvvmf6vvaysmla05wi8byy3l0xrz2x8m02ylqq";
-    })
-  ];
-
   nativeBuildInputs = [ pkgconfig ];
 
   buildInputs = [ gettext perl libxml2 pango cairo groff ]
@@ -24,8 +16,8 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     # for munin and rrdtool support
-    mkdir -p $out/lib/perl5/site_perl/
-    mv $out/lib/perl/5* $out/lib/perl5/site_perl/
+    mkdir -p $out/${perl.libPrefix}
+    mv $out/lib/perl/5* $out/${perl.libPrefix}
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/misc/sdate/default.nix b/nixpkgs/pkgs/tools/misc/sdate/default.nix
new file mode 100644
index 000000000000..23dccc0273d1
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/sdate/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, autoreconfHook }:
+stdenv.mkDerivation rec {
+  name = "sdate-${version}";
+  version = "0.5";
+  src = fetchurl {
+    url = "https://github.com/ChristophBerg/sdate/archive/${version}.tar.gz";
+    sha256 = "0gbjl1jfxjwiiwf9rz38yp6rb1mgzhawcyg0g9byl6m4kgivf0cx";
+  };
+
+  buildInputs = [ autoreconfHook ];
+
+  meta = {
+    homepage = https://www.df7cb.de/projects/sdate;
+    description = "Eternal september version of the date program";
+    license = stdenv.lib.licenses.gpl2Plus;
+    maintainers = with stdenv.lib.maintainers; [ edef ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/slurp/default.nix b/nixpkgs/pkgs/tools/misc/slurp/default.nix
new file mode 100644
index 000000000000..a729ea6381ac
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/slurp/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, cairo, meson, ninja, wayland, pkgconfig, wayland-protocols }:
+
+stdenv.mkDerivation rec {
+  name = "slurp-${version}";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "emersion";
+    repo = "slurp";
+    rev = "v${version}";
+    sha256 = "03igv8r8n772xb0y7whhs1pa298l3d94jbnknaxpwp2n4fi04syb";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkgconfig
+  ];
+
+  buildInputs = [
+    cairo
+    wayland
+    wayland-protocols
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Grab images from a Wayland compositor";
+    homepage = https://github.com/emersion/slurp;
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ buffet ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/snapper/default.nix b/nixpkgs/pkgs/tools/misc/snapper/default.nix
index 8f56ad6f6a27..3d1eedab8c47 100644
--- a/nixpkgs/pkgs/tools/misc/snapper/default.nix
+++ b/nixpkgs/pkgs/tools/misc/snapper/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "snapper-${version}";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "snapper";
     rev = "v${version}";
-    sha256 = "0kl0najv8jpx94v44v68fmqsg2vv6yz3y5dmy0q8la0zyz766dhm";
+    sha256 = "0f3xvvmyln7rjvv4w0zsd4b4d1mzcdx0xrgcscqj2v18xgwwcc4p";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/misc/sonota/default.nix b/nixpkgs/pkgs/tools/misc/sonota/default.nix
new file mode 100644
index 000000000000..de9366d1d0ff
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/sonota/default.nix
@@ -0,0 +1,54 @@
+{ fetchFromGitHub, fetchurl, lib, python3Packages
+, coreVersion ? "1.13.3" # the version of the binary espurna image to flash
+, coreSize    ? "1MB"    # size of the binary image to flash
+, coreSha256  ? "0pkb2nmml0blrfiqpc46xpjc2dw927i89k1lfyqx827wanhc704x" }:
+
+with python3Packages;
+
+let
+  core = fetchurl {
+    url    = "https://github.com/xoseperez/espurna/releases/download/${coreVersion}/espurna-${coreVersion}-espurna-core-${coreSize}.bin";
+    sha256 = coreSha256;
+  };
+
+in buildPythonApplication rec {
+  name = "sonota-unstable-${version}";
+  version = "2018-10-07";
+
+  src = fetchFromGitHub {
+    owner  = "mirko";
+    repo   = "SonOTA";
+    rev    = "d7f4b353858aae7ac403f95475a35560fb7ffeae";
+    sha256 = "0jd9xrhcyk8d2plbjnrlpn87536zr6n708797n0k5blf109q3c1z";
+  };
+
+  patches = [
+    ./set_resource_path.patch
+  ];
+
+  postPatch = ''
+    substituteInPlace sonota.py --subst-var out
+  '';
+
+  format = "other";
+
+  propagatedBuildInputs = [ httplib2 netifaces tornado ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 sonota.py $out/bin/sonota
+    install -d $out/share/sonota
+    cp -r ssl static $out/share/sonota
+    cp ${core} $out/share/sonota/static/image_arduino.bin
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Flash Itead Sonoff devices with custom firmware via original OTA mechanism";
+    homepage = src.meta.homepage;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ peterhoeg ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/sonota/set_resource_path.patch b/nixpkgs/pkgs/tools/misc/sonota/set_resource_path.patch
new file mode 100644
index 000000000000..f9a802657762
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/sonota/set_resource_path.patch
@@ -0,0 +1,20 @@
+diff --git a/sonota.py b/sonota.py
+index f67128b..9f2752e 100644
+--- a/sonota.py
++++ b/sonota.py
+@@ -475,14 +475,7 @@ def promptforval(msg):
+             return val
+
+ def resource_path(relative_path):
+-    """ Get absolute path to resource, works for dev and for PyInstaller """
+-    try:
+-        # PyInstaller creates a temp folder and stores path in _MEIPASS
+-        base_path = sys._MEIPASS
+-    except Exception:
+-        base_path = os.path.dirname(sys.argv[0])
+-
+-    return os.path.join(base_path, relative_path)
++    return os.path.join("@out@/share/sonota", relative_path)
+
+ def checkargs():
+     # Make sure all of the binary files that are needed are there
diff --git a/nixpkgs/pkgs/tools/misc/termtosvg/default.nix b/nixpkgs/pkgs/tools/misc/termtosvg/default.nix
index 1dca7f4a70bd..9912202f867e 100644
--- a/nixpkgs/pkgs/tools/misc/termtosvg/default.nix
+++ b/nixpkgs/pkgs/tools/misc/termtosvg/default.nix
@@ -2,20 +2,20 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "termtosvg";
-  version = "0.7.0";
+  version = "0.8.0";
 
   # tests are not available when fetching from pypi
   src = fetchFromGitHub {
     owner = "nbedos";
     repo = pname;
     rev = version;
-    sha256 = "17hhdrsn9ggcrwqp2c1h2la9cwhdazfrczd7nnm5mz7w6rk25lx3";
+    sha256 = "0si5l8cdbzapcibr4yavhld2vhfrpk7qj4cy7m4ws7js8g9iwzd4";
   };
 
   propagatedBuildInputs = with python3.pkgs; [ lxml pyte ];
 
   meta = with lib; {
-    homepage = https://github.com/nbedos/termtosvg;
+    homepage = https://nbedos.github.io/termtosvg/;
     description = "Record terminal sessions as SVG animations";
     license = licenses.bsd3;
     maintainers = with maintainers; [ ma27 ];
diff --git a/nixpkgs/pkgs/tools/misc/tmuxp/default.nix b/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
index fe31d324087c..c4cedf426507 100644
--- a/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
@@ -4,11 +4,11 @@ with python.pkgs;
 
 buildPythonApplication rec {
   pname = "tmuxp";
-  version = "1.4.2";
+  version = "1.5.0a1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "087icp1n1qdf53f1314g5biz16sigrnpqr835xqlr6vj85imm2dm";
+    sha256 = "88b6ece3ff59a0882b5c5bff169cc4c1d688161fe61e5553b0a0802ff64b6da8";
   };
 
   postPatch = ''
@@ -29,9 +29,8 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Manage tmux workspaces from JSON and YAML";
-    homepage = http://tmuxp.readthedocs.io;
+    homepage = https://tmuxp.git-pull.com/;
     license = licenses.bsd3;
-    platforms = platforms.linux;
     maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ttylog/default.nix b/nixpkgs/pkgs/tools/misc/ttylog/default.nix
index 3baafa29677b..fda9dc506e2f 100644
--- a/nixpkgs/pkgs/tools/misc/ttylog/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ttylog/default.nix
@@ -22,6 +22,5 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/txr/default.nix b/nixpkgs/pkgs/tools/misc/txr/default.nix
new file mode 100644
index 000000000000..c7ff9e18238f
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/txr/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, bison, flex, libffi }:
+
+stdenv.mkDerivation rec {
+  name = "txr-${version}";
+  version = "208";
+
+  src = fetchurl {
+    url = "http://www.kylheku.com/cgit/txr/snapshot/${name}.tar.bz2";
+    sha256 = "091yki3a24pscwd0lg2ymy86r223amjnz9c71z4a2kxz5brhl5my";
+  };
+
+  nativeBuildInputs = [ bison flex ];
+  buildInputs = [ libffi ];
+
+  enableParallelBuilding = true;
+
+  doCheck = true;
+  checkTarget = "tests";
+
+  # Remove failing test-- mentions 'usr/bin' so probably related :)
+  preCheck = "rm -rf tests/017";
+
+  # TODO: install 'tl.vim', make avail when txr is installed or via plugin
+
+  meta = with stdenv.lib; {
+    description = "Programming language for convenient data munging";
+    license = licenses.bsd2;
+    homepage = http://nongnu.org/txr;
+    maintainers = with stdenv.lib.maintainers; [ dtzWill ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix b/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
index 5e1661a6a299..8e2342f4269e 100644
--- a/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
+++ b/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "unclutter-xfixes";
-  version = "1.4";
+  version = "1.5";
 
   src = fetchFromGitHub {
     owner = "Airblader";
     repo = "unclutter-xfixes";
     rev = "v${version}";
-    sha256 = "0anny6hvwf5nh7ghgi4gdcywhwyhgfvqvp7fjhm59kjc3qxnwf96";
+    sha256 = "148m4wx8v57s3l2wb69y9imb00y8ca2li27hsxibwnl1wrkb7z4b";
   };
 
   nativeBuildInputs = [ pkgconfig asciidoc libxslt docbook_xsl ];
diff --git a/nixpkgs/pkgs/tools/misc/vdirsyncer/default.nix b/nixpkgs/pkgs/tools/misc/vdirsyncer/default.nix
index 49583ee28902..2212ba870c4a 100644
--- a/nixpkgs/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/vdirsyncer/default.nix
@@ -1,27 +1,28 @@
-{ stdenv, python3Packages, fetchpatch, glibcLocales, rustPlatform, pkgconfig, openssl, Security }:
+{ stdenv, python3Packages, fetchFromGitHub, fetchpatch, glibcLocales, rustPlatform, pkgconfig, openssl, Security }:
 
 # Packaging documentation at:
 # https://github.com/untitaker/vdirsyncer/blob/master/docs/packaging.rst
-let
-  pythonPackages = python3Packages;
-  version = "0.17.0a3";
+python3Packages.buildPythonApplication rec {
+  version = "unstable-2018-08-05";
   pname = "vdirsyncer";
-  name = pname + "-" + version;
-  src = pythonPackages.fetchPypi {
-    inherit pname version;
-    sha256 = "1n7izfa5x9mh0b4zp20gd8qxfcca5wpjh834bsbi5pk6zam5pfdy";
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "pimutils";
+    repo = pname;
+    rev = "ac45cf144b0ceb72cc2a9f454808688f3ac9ba4f";
+    sha256 = "0hqsjdpgvm7d34q5b2hzmrzfxk43ald1bx22mvgg559kw1ck54s9";
   };
+
   native = rustPlatform.buildRustPackage {
-    name = name + "-native";
+    name = "${name}-native";
     inherit src;
-    sourceRoot = name + "/rust";
-    cargoSha256 = "08xq9q5fx37azzkqqgwcnds1yd8687gh26dsl3ivql5h13fa2w3q";
+    sourceRoot = "source/rust";
+    cargoSha256 = "02fxxw4vr6rpdbslrc9c1zhzs704bw7i40akrmh5cxl26rsffdgk";
     buildInputs = [ pkgconfig openssl ] ++ stdenv.lib.optional stdenv.isDarwin Security;
   };
-in pythonPackages.buildPythonApplication rec {
-  inherit version pname src native;
 
-  propagatedBuildInputs = with pythonPackages; [
+  propagatedBuildInputs = with python3Packages; [
     click click-log click-threading
     requests_toolbelt
     requests
@@ -31,15 +32,12 @@ in pythonPackages.buildPythonApplication rec {
     shippai
   ];
 
-  buildInputs = with pythonPackages; [ setuptools_scm ];
+  buildInputs = with python3Packages; [ setuptools_scm ];
 
-  checkInputs = with pythonPackages; [ hypothesis pytest pytest-localserver pytest-subtesthack ] ++ [ glibcLocales ];
+  checkInputs = with python3Packages; [ hypothesis pytest pytest-localserver pytest-subtesthack ] ++ [ glibcLocales ];
 
   patches = [
-    (fetchpatch {
-      url = https://github.com/pimutils/vdirsyncer/commit/80a42e4c6c18ca4db737bc6700c50a3866832bbb.patch;
-      sha256 = "1vrhn0ma3y08w6f5abhl3r5rq30g60h1bp3wmyszw909hyvyzp5l";
-    })
+    # Fixes for hypothesis: https://github.com/pimutils/vdirsyncer/pull/779
     (fetchpatch {
       url = https://github.com/pimutils/vdirsyncer/commit/22ad88a6b18b0979c5d1f1d610c1d2f8f87f4b89.patch;
       sha256 = "0dbzj6jlxhdidnm3i21a758z83sdiwzhpd45pbkhycfhgmqmhjpl";
@@ -51,6 +49,9 @@ in pythonPackages.buildPythonApplication rec {
   ];
 
   postPatch = ''
+    # for setuptools_scm:
+    echo 'Version: ${version}' >PKG-INFO
+
     sed -i 's/spec.add_external_build(cmd=cmd/spec.add_external_build(cmd="true"/g' setup.py
   '';
 
@@ -63,7 +64,7 @@ in pythonPackages.buildPythonApplication rec {
 
   checkPhase = ''
     rm -rf vdirsyncer
-    export PYTHONPATH=$out/${pythonPackages.python.sitePackages}:$PYTHONPATH
+    export PYTHONPATH=$out/${python3Packages.python.sitePackages}:$PYTHONPATH
     make DETERMINISTIC_TESTS=true test
   '';
 
diff --git a/nixpkgs/pkgs/tools/misc/void/default.nix b/nixpkgs/pkgs/tools/misc/void/default.nix
new file mode 100644
index 000000000000..cba897431511
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/void/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  name = "void-${version}";
+  version = "1.1.5";
+
+  src = fetchFromGitHub {
+    owner = "spacejam";
+    repo = "void";
+    rev = "${version}";
+    sha256 = "08vazw4rszqscjz988k89z28skyj3grm81bm5iwknxxagmrb20fz";
+  };
+
+  # The tests are long-running and not that useful
+  doCheck = false;
+
+  cargoSha256 = "1rq947s82icl7gdkjynjwz426bpmd96dip2dv2y7p8rg7yz29x0m";
+
+  meta = with stdenv.lib; {
+    description = "Terminal-based personal organizer";
+    homepage = https://github.com/spacejam/void;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ spacekookie ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/watchexec/default.nix b/nixpkgs/pkgs/tools/misc/watchexec/default.nix
index dd3eddf73954..61f1752823d7 100644
--- a/nixpkgs/pkgs/tools/misc/watchexec/default.nix
+++ b/nixpkgs/pkgs/tools/misc/watchexec/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   name = "watchexec-${version}";
-  version = "1.9.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "watchexec";
     repo = "watchexec";
     rev = version;
-    sha256 = "0zp5s2dy5zbar0virvy1izjpvvgwbz7rvjmcy6bph6rb5c4bhm70";
+    sha256 = "15fnf3r4pvl9gyvq0fy0l7p8xjaz44z9g4dzkn1l0fdhldib6z1c";
   };
 
-  cargoSha256 = "1li84kq9myaw0zwx69y72f3lx01s7i9p8yays4rwvl1ymr614y1l";
+  cargoSha256 = "1xlcfr2q2pw47sav9iryjva7w9chv90g18hszq8s0q0w71sccv6j";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/nixpkgs/pkgs/tools/misc/woeusb/default.nix b/nixpkgs/pkgs/tools/misc/woeusb/default.nix
index f73aa4547993..c50543825074 100644
--- a/nixpkgs/pkgs/tools/misc/woeusb/default.nix
+++ b/nixpkgs/pkgs/tools/misc/woeusb/default.nix
@@ -3,14 +3,14 @@
 , wxGTK30 }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.10";
+  version = "3.2.12";
   name = "woeusb-${version}";
 
   src = fetchFromGitHub {
     owner = "slacka";
     repo = "WoeUSB";
     rev = "v${version}";
-    sha256 = "0jzgwh9xv92yns5yi5zpl49zbp3csh6m6iclgq070awpjpsqlqi0";
+    sha256 = "14arz0g95favbl5vsngxm3xznva223x67a9as5n2mpf5bbkd9zx5";
   };
 
   nativeBuildInputs = [ autoreconfHook makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix b/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
index dd3cbb33c1b1..8260d7921ecc 100644
--- a/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
+++ b/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchurl, libX11, xproto, libXt, libICE, libSM, libXext }:
+{ stdenv, fetchurl, libX11, xorgproto, libXt, libICE, libSM, libXext }:
 
 stdenv.mkDerivation rec {
   name = "xdaliclock-${version}";
-  version = "2.43";
+  version = "2.44";
 
   src = fetchurl {
     url="https://www.jwz.org/xdaliclock/${name}.tar.gz";
-    sha256 = "194zzp1a989k2v8qzfr81gdknr8xiz16d6fdl63jx9r3mj5klmvb";
+    sha256 = "1gsgnsm6ql0mcg9zpdkhws3g23r3a92bc3rpg4qbgbmd02nvj3c0";
   };
 
   # Note: don't change this to set sourceRoot, or updateAutotoolsGnuConfigScriptsHook
   # on aarch64 doesn't find the files to patch and the aarch64 build fails!
   preConfigure = "cd X11";
 
-  buildInputs = [ libX11 xproto libXt libICE libSM libXext ];
+  buildInputs = [ libX11 xorgproto libXt libICE libSM libXext ];
 
   preInstall = ''
     mkdir -vp $out/bin $out/share/man/man1
diff --git a/nixpkgs/pkgs/tools/misc/you-get/default.nix b/nixpkgs/pkgs/tools/misc/you-get/default.nix
index 2d0ed3ac1c50..9dbc4a57bca8 100644
--- a/nixpkgs/pkgs/tools/misc/you-get/default.nix
+++ b/nixpkgs/pkgs/tools/misc/you-get/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonApplication rec {
   pname = "you-get";
-  version = "0.4.1193";
+  version = "0.4.1205";
 
   # 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 = "1q7wha0d55pw077bs92bbzx6ck3nsmhnxblz7zaqzladn23hs9zg";
+    sha256 = "06xb72vm11pbqhw320kk3w4xj0ymkskx1bh80nvq2wc1y7rpd39n";
   };
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix b/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
index fbf925516f35..0598976ec98e 100644
--- a/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchurl, buildPythonPackage
-, zip, ffmpeg, rtmpdump, phantomjs2, atomicparsley, pycryptodome, pandoc
+, zip, ffmpeg_4, rtmpdump, phantomjs2, atomicparsley, pycryptodome, pandoc
 , fetchpatch
 # Pandoc is required to build the package's man page. Release tarballs contain a
 # formatted man page already, though, it will still be installed. We keep the
@@ -19,11 +19,11 @@ buildPythonPackage rec {
   # The websites youtube-dl deals with are a very moving target. That means that
   # downloads break constantly. Because of that, updates should always be backported
   # to the latest stable release.
-  version = "2018.12.17";
+  version = "2019.01.30.1";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1nd4zr3wd35vldm775m9wcgbzma2013yyj134lcz19ipjs38isrk";
+    sha256 = "0wamv1fs4w8jjx67p60rgrgdi6k04yy0h4p3cwscza5pzhpmvnlf";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -37,7 +37,7 @@ buildPythonPackage rec {
   makeWrapperArgs = let
       packagesToBinPath =
         [ atomicparsley ]
-        ++ lib.optional ffmpegSupport ffmpeg
+        ++ lib.optional ffmpegSupport ffmpeg_4
         ++ lib.optional rtmpSupport rtmpdump
         ++ lib.optional phantomjsSupport phantomjs2;
     in [ ''--prefix PATH : "${lib.makeBinPath packagesToBinPath}"'' ];
diff --git a/nixpkgs/pkgs/tools/misc/yubico-piv-tool/default.nix b/nixpkgs/pkgs/tools/misc/yubico-piv-tool/default.nix
index ab9eb5d001b2..c214598ce1b3 100644
--- a/nixpkgs/pkgs/tools/misc/yubico-piv-tool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yubico-piv-tool/default.nix
@@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
       certificates, and create certificate requests, and other operations.
       A shared library and a command-line tool is included.
     '';
-    maintainers = with maintainers; [ wkennington ];
     license = licenses.bsd2;
     platforms = platforms.all;
   };
diff --git a/nixpkgs/pkgs/tools/misc/yubikey-manager/default.nix b/nixpkgs/pkgs/tools/misc/yubikey-manager/default.nix
index e80eee2db3af..df07c291e26b 100644
--- a/nixpkgs/pkgs/tools/misc/yubikey-manager/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yubikey-manager/default.nix
@@ -1,17 +1,16 @@
-{ pythonPackages, fetchurl, lib,
+{ python3Packages, fetchurl, lib,
   yubikey-personalization, libu2f-host, libusb1 }:
 
-pythonPackages.buildPythonPackage rec {
-  name = "yubikey-manager-1.0.1";
+python3Packages.buildPythonPackage rec {
+  name = "yubikey-manager-2.0.0";
 
   srcs = fetchurl {
     url = "https://developers.yubico.com/yubikey-manager/Releases/${name}.tar.gz";
-    sha256 = "0i7w1f89hqlw7g800fjhbb6yvq9wjmj5d7w7p6v8bkyvk645v48z";
+    sha256 = "1x36pyg9g3by2pa11j6d73d79sdlb7qy98lwwn05f43fjm74qnz9";
   };
 
   propagatedBuildInputs =
-    with pythonPackages;
-    lib.optional (!pythonPackages.pythonAtLeast "3.4") enum34 ++ [
+    with python3Packages; [
       click
       cryptography
       pyscard
@@ -44,6 +43,6 @@ pythonPackages.buildPythonPackage rec {
 
     license = licenses.bsd2;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ benley ];
+    maintainers = with maintainers; [ benley mic92 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/yubikey-personalization-gui/default.nix b/nixpkgs/pkgs/tools/misc/yubikey-personalization-gui/default.nix
index d507816dbd38..405ff745baaf 100644
--- a/nixpkgs/pkgs/tools/misc/yubikey-personalization-gui/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yubikey-personalization-gui/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig qmake ];
   buildInputs = [ yubikey-personalization qtbase libyubikey ];
-  
+
   installPhase = ''
     mkdir -p $out/bin
     cp build/release/yubikey-personalization-gui $out/bin
@@ -21,6 +21,5 @@ stdenv.mkDerivation rec {
     description = "A QT based cross-platform utility designed to facilitate reconfiguration of the Yubikey";
     license = licenses.bsd2;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/yubikey-personalization/default.nix b/nixpkgs/pkgs/tools/misc/yubikey-personalization/default.nix
index 48827ec0aae4..43814a3f613f 100644
--- a/nixpkgs/pkgs/tools/misc/yubikey-personalization/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yubikey-personalization/default.nix
@@ -28,6 +28,5 @@ stdenv.mkDerivation rec {
     description = "A library and command line tool to personalize YubiKeys";
     license = licenses.bsd2;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/amass/default.nix b/nixpkgs/pkgs/tools/networking/amass/default.nix
index 16e87d2a5c97..f031cf09884c 100644
--- a/nixpkgs/pkgs/tools/networking/amass/default.nix
+++ b/nixpkgs/pkgs/tools/networking/amass/default.nix
@@ -6,7 +6,7 @@
 
 buildGoPackage rec {
   name = "amass-${version}";
-  version = "2.8.5";
+  version = "2.9.1";
 
   goPackagePath = "github.com/OWASP/Amass";
 
@@ -14,7 +14,7 @@ buildGoPackage rec {
     owner = "OWASP";
     repo = "Amass";
     rev = version;
-    sha256 = "1nsqg1p7hcv369d53n13xps3ks6fgzkkp6v9q87l04yj32nbr5qy";
+    sha256 = "07vs741vmhi735ba26wscldwdx0i2yamr2g8bq7jr3sjik8ncd29";
   };
 
   outputs = [ "bin" "out" "wordlists" ];
diff --git a/nixpkgs/pkgs/tools/networking/amass/deps.nix b/nixpkgs/pkgs/tools/networking/amass/deps.nix
index e9b5acf618e2..c81a603e39ce 100644
--- a/nixpkgs/pkgs/tools/networking/amass/deps.nix
+++ b/nixpkgs/pkgs/tools/networking/amass/deps.nix
@@ -1,101 +1,343 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
 [
+
+  {
+    goPackagePath = "cloud.google.com/go";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "v0.34.0";
+      sha256 = "1kclgclwar3r37zbvb9gg3qxbgzkb50zk3s9778zlh2773qikmai";
+    };
+  }
+
   {
     goPackagePath = "github.com/PuerkitoBio/fetchbot";
     fetch = {
       type = "git";
       url = "https://github.com/PuerkitoBio/fetchbot";
-      rev = "1f502d610659b899a007858812b601e715f531eb";
-      sha256 = "0yzv0xh3cwq87jv9whs5rmhaj8b2nqdm76vwppzn8mm34fg41n8s";
+      rev = "v1.1.2";
+      sha256 = "1xw8jszjmhf8wsyc02wfplyvvcaq3wjwbzr131afcsvc4i4nlrqq";
     };
   }
+
   {
     goPackagePath = "github.com/PuerkitoBio/goquery";
     fetch = {
       type = "git";
       url = "https://github.com/PuerkitoBio/goquery";
-      rev = "2d2796f41742ece03e8086188fa4db16a3a0b458";
-      sha256 = "1fqf4rs66wy02nxz6w4mvs2qawf2j8srz17i294v64y8gvxisp56";
+      rev = "v1.4.1";
+      sha256 = "11010z9ask21r0dskvm2pbh3z8951bnpcqg8aqa213if4h34gaa2";
     };
   }
+
   {
     goPackagePath = "github.com/andybalholm/cascadia";
     fetch = {
       type = "git";
       url = "https://github.com/andybalholm/cascadia";
-      rev = "680b6a57bda4f657485ad44bdea42342ead737bc";
-      sha256 = "0v95plagirbjlc4p00y9brhpvv4nm8q0gr63gcfs3shyh1a8xwbm";
+      rev = "v1.0.0";
+      sha256 = "09j8cavbhqqdxjqrkwbc40g8p0i49zf3184rpjm5p2rjbprcghcc";
     };
   }
+
   {
     goPackagePath = "github.com/asaskevich/EventBus";
     fetch = {
       type = "git";
       url = "https://github.com/asaskevich/EventBus";
-      rev = "d46933a94f05c6657d7b923fcf5ac563ee37ec79";
+      rev = "d46933a94f05";
       sha256 = "130mjlsc6jf17zdx8ymhxis70a13l2zbjmjzgvjdr6pb0jzxsqha";
     };
   }
+
+  {
+    goPackagePath = "github.com/caffix/cloudflare-roundtripper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/caffix/cloudflare-roundtripper";
+      rev = "4c29d231c9cb";
+      sha256 = "0i8z9p8wfvjphsgj88jcgpbyyb10hq24a72df4kdw7xl6189chra";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev = "v2.1.1";
+      sha256 = "1mf4lsl3rbb8kk42x0mrhzzy4ikqy0jf6nxpzhkr02rdgwh6rjk8";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/dghubble/go-twitter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dghubble/go-twitter";
+      rev = "7fd79e2bcc65";
+      sha256 = "0vk66ndhwvqq23v5xfla9npcrrxgphp318n7hn8vaw7zayznmfy7";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/dghubble/sling";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dghubble/sling";
+      rev = "v1.2.0";
+      sha256 = "0ns17xy7xig3zdcjqkxn33nzar1ybqpw2arc016i5vv09b1yypj6";
+    };
+  }
+
   {
     goPackagePath = "github.com/fatih/color";
     fetch = {
       type = "git";
       url = "https://github.com/fatih/color";
-      rev = "3f9d52f7176a6927daacff70a3e8d1dc2025c53e";
-      sha256 = "165ww24x6ba47ji4j14mp3f006ksnmi53ws9280pgd2zcw91nbn8";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/go-ini/ini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ini/ini";
+      rev = "v1.41.0";
+      sha256 = "1pm4s8j5azafvminc7ll0ncvfznwn9cvq2zhmxri5waffwr1sdxg";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.2.0";
+      sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
     };
   }
+
+  {
+    goPackagePath = "github.com/google/go-querystring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-querystring";
+      rev = "v1.0.0";
+      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/google/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/uuid";
+      rev = "v1.1.0";
+      sha256 = "0yx4kiafyshdshrmrqcf2say5mzsviz7r94a0y1l6xfbkkyvnc86";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.0";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+    };
+  }
+
   {
     goPackagePath = "github.com/irfansharif/cfilter";
     fetch = {
       type = "git";
       url = "https://github.com/irfansharif/cfilter";
-      rev = "d07d951ff29d52840ca5e798a17e80db4de8c820";
-      sha256 = "11gicb8jbpnsc7wylv7qs9dgc91qc3rld6ahsylb491knxr78yb2";
+      rev = "v0.1.1";
+      sha256 = "0hfxp57m37wygqy3y72fm9ydvfymkmqnif48spssc3zqaqvhcgkz";
     };
   }
+
   {
     goPackagePath = "github.com/johnnadratowski/golang-neo4j-bolt-driver";
     fetch = {
       type = "git";
       url = "https://github.com/johnnadratowski/golang-neo4j-bolt-driver";
-      rev = "6b24c0085aaeaf3b2844acd18066864e24b57387";
-      sha256 = "0dmfgy0ci0k0s4hxp9v5j4j0mab5x1nsc83icgq9ldb2446mn0fk";
+      rev = "c68f22031e42";
+      sha256 = "0v9cxzmj5r0zkh8p61rbknrw17zbciy3fvmg9d6srg1hb7wizp5c";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.0";
+      sha256 = "0kshi4hvm0ayrsxqxy0599iv81kryhd2fn9lwjyczpj593cq069r";
     };
   }
+
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.4";
+      sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+    };
+  }
+
   {
     goPackagePath = "github.com/miekg/dns";
     fetch = {
       type = "git";
       url = "https://github.com/miekg/dns";
-      rev = "1c9c9bf4c93ee029810272d3e5b8a126aee5bf1f";
-      sha256 = "002z8l5crsipdn2zkavjkjzxrj6c4132yqgbg1zk7w7gkv40q7wr";
+      rev = "v1.0.8";
+      sha256 = "1vmgkpmwlqg6pwrpvjbn4h4al6af5fjvwwnacyv18hvlfd3fyfmx";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/qasaur/gremgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/qasaur/gremgo";
+      rev = "fa23ada7c5da";
+      sha256 = "1cqz1zqwvcgnq3dfv9zcyjgmla8d9vbh0s31x8iv2r8jdzfgqik4";
     };
   }
+
+  {
+    goPackagePath = "github.com/robertkrimen/otto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/robertkrimen/otto";
+      rev = "15f95af6e78d";
+      sha256 = "07j7l340lmqwpfscwyb8llk3k37flvs20a4a8vzc85f16xyd9npf";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/satori/go.uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/satori/go.uuid";
+      rev = "v1.2.0";
+      sha256 = "1j4s5pfg2ldm35y8ls8jah4dya2grfnx2drb4jcbjsyrp4cm5yfb";
+    };
+  }
+
+  {
+    goPackagePath = "github.com/temoto/robotstxt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/temoto/robotstxt";
+      rev = "9e4646fa7053";
+      sha256 = "0hv3c8kbsqdbqwmkb5f2gllzxiqzld09fwmk2ljr3ikh4irqazx0";
+    };
+  }
+
   {
     goPackagePath = "github.com/temoto/robotstxt-go";
     fetch = {
       type = "git";
       url = "https://github.com/temoto/robotstxt-go";
-      rev = "97ee4a9ee6ea01ed0bbf0325dd789f74cac6cb94";
-      sha256 = "1nfnwz5lm9dgicsjh99gs4gh4gbrxdl16srz505f04mab51kd51r";
+      rev = "9e4646fa7053";
+      sha256 = "0hv3c8kbsqdbqwmkb5f2gllzxiqzld09fwmk2ljr3ikh4irqazx0";
     };
   }
+
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "c126467f60eb";
+      sha256 = "0xvvzwxqi1dbrnsvq00klx4bnjalf90haf1slnxzrdmbadyp992q";
+    };
+  }
+
   {
     goPackagePath = "golang.org/x/net";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "adae6a3d119ae4890b46832a2e88a95adc62b8e7";
-      sha256 = "1fx860zsgzqk28j7lmp96qsfrgb0kzbfjvr294hywswcbwdwkb01";
+      rev = "1e06a53dbb7e";
+      sha256 = "0lpqqvdccby48nixihvmn8ig1z48b950m1bxfqxn78air308qc3j";
     };
   }
+
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "99b60b757ec1";
+      sha256 = "119py9nia7957kf51gg9qvh34d18jb1a293zwfgvdf5inl1ja6y6";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "37e7f081c4d4";
+      sha256 = "1bb0mw6ckb1k7z8v3iil2qlqwfj408fvvp8m1cik2b46p7snyjhm";
+    };
+  }
+
   {
     goPackagePath = "golang.org/x/sys";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "ec83556a53fe16b65c452a104ea9d1e86a671852";
-      sha256 = "1ijlbyn5gs8g6z2pjlj5h77lg7wrljqxdls4xlcfqxmghxiyci2f";
+      rev = "e072cadbbdc8";
+      sha256 = "17l1diq0526zpdpwfmjs7w9w8sg6prv6sjnvmg869yrj26b1xdcc";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "4d8a0ac9f66c";
+      sha256 = "12cyxcijjsdg4wxl8hvxfbwdkqapvl1f7994963i6rf0qvh41qym";
+    };
+  }
+
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "v1.4.0";
+      sha256 = "06zl7w4sxgdq2pl94wy9ncii6h0z3szl4xpqds0sv3b3wbdlhbnn";
+    };
+  }
+
+  {
+    goPackagePath = "gopkg.in/sourcemap.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/sourcemap.v1";
+      rev = "v1.0.5";
+      sha256 = "08rf2dl13hbnm3fq2cm0nnsspy9fhf922ln23cz5463cv7h62as4";
     };
   }
 ]
diff --git a/nixpkgs/pkgs/tools/networking/autossh/default.nix b/nixpkgs/pkgs/tools/networking/autossh/default.nix
index 452837ef2e4f..a123e551a90a 100644
--- a/nixpkgs/pkgs/tools/networking/autossh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/autossh/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, openssh}:
 
 stdenv.mkDerivation rec {
-  name = "autossh-1.4f";
+  name = "autossh-1.4g";
   
   src = fetchurl {
     url = "http://www.harding.motd.ca/autossh/${name}.tgz";
-    sha256 = "1wpqwa2872nqgqbhnb6nnkrlzpdawd5k69gh1qp68354pvhyawh1";
+    sha256 = "0xqjw8df68f4kzkns5gcah61s5wk0m44qdk2z1d6388w6viwxhsz";
   };
   
   buildInputs = [ openssh ];
diff --git a/nixpkgs/pkgs/tools/networking/cmst/default.nix b/nixpkgs/pkgs/tools/networking/cmst/default.nix
index e20d62d1f077..cc88153bab9c 100644
--- a/nixpkgs/pkgs/tools/networking/cmst/default.nix
+++ b/nixpkgs/pkgs/tools/networking/cmst/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "cmst-${version}";
-  version = "2018.01.06";
+  version = "2019.01.13";
 
   src = fetchFromGitHub {
     repo = "cmst";
     owner = "andrew-bibb";
     rev = name;
-    sha256 = "1a3v7z75ghziymdj2w8603ql9nfac5q224ylfsqfxcqxw4bdip4r";
+    sha256 = "13739f0ddld34dcqlfhylzn1zqz5a7jbp4a4id7gj7pcxjx1lafh";
   };
 
   nativeBuildInputs = [ qmake ];
diff --git a/nixpkgs/pkgs/tools/networking/curl/7_59.nix b/nixpkgs/pkgs/tools/networking/curl/7_59.nix
deleted file mode 100644
index 272c38a99586..000000000000
--- a/nixpkgs/pkgs/tools/networking/curl/7_59.nix
+++ /dev/null
@@ -1,111 +0,0 @@
-{ stdenv, lib, fetchurl, pkgconfig, perl
-, http2Support ? true, nghttp2
-, idnSupport ? false, libidn ? null
-, ldapSupport ? false, openldap ? null
-, zlibSupport ? true, zlib ? null
-, sslSupport ? zlibSupport, openssl ? null
-, gnutlsSupport ? false, gnutls ? null
-, scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2 ? null
-, gssSupport ? !stdenv.hostPlatform.isWindows, libkrb5 ? 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 -> libkrb5 != 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 libkrb5 ++
-    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=${libkrb5.dev}"
-       # For the 'urandom', maybe it should be a cross-system option
-    ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform)
-       "--with-random=/dev/urandom"
-    ++ stdenv.lib.optionals stdenv.hostPlatform.isWindows [
-      "--disable-shared"
-      "--enable-static"
-    ];
-
-  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
-  '';
-
-  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 ];
-    license = licenses.curl;
-    platforms   = platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/tools/networking/curl/default.nix b/nixpkgs/pkgs/tools/networking/curl/default.nix
index 42ea641afb67..bf37678d06c9 100644
--- a/nixpkgs/pkgs/tools/networking/curl/default.nix
+++ b/nixpkgs/pkgs/tools/networking/curl/default.nix
@@ -24,21 +24,16 @@ assert brotliSupport -> brotli != null;
 assert gssSupport -> libkrb5 != null;
 
 stdenv.mkDerivation rec {
-  name = "curl-7.62.0";
+  name = "curl-7.63.0";
 
   src = fetchurl {
     urls = [
       "https://curl.haxx.se/download/${name}.tar.bz2"
       "https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] name}/${name}.tar.bz2"
     ];
-    sha256 = "084niy7cin13ba65p8x38w2xcyc54n3fgzbin40fa2shfr0ca0kq";
+    sha256 = "1n4dzlbllwks8xkz466j362da0pbnxgwr11d64504xzzxka7xawv";
   };
 
-  patches = [
-    # Cherry picked fix for https://github.com/curl/curl/issues/3218
-    ./fix-ipv6-url-parsing.patch
-  ];
-
   outputs = [ "bin" "dev" "out" "man" "devdoc" ];
   separateDebugInfo = stdenv.isLinux;
 
diff --git a/nixpkgs/pkgs/tools/networking/curl/fix-ipv6-url-parsing.patch b/nixpkgs/pkgs/tools/networking/curl/fix-ipv6-url-parsing.patch
deleted file mode 100644
index 8a74b27ce7fd..000000000000
--- a/nixpkgs/pkgs/tools/networking/curl/fix-ipv6-url-parsing.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From b28094833a971870fd8c07960b3b12bf6fbbaad3 Mon Sep 17 00:00:00 2001
-From: Daniel Stenberg <daniel@haxx.se>
-Date: Fri, 2 Nov 2018 15:11:16 +0100
-Subject: [PATCH] URL: fix IPv6 numeral address parser
-
-Regression from 46e164069d1a52. Extended test 1560 to verify.
-
-Reported-by: tpaukrt on github
-Fixes #3218
-Closes #3219
----
- lib/urlapi.c            | 8 ++++++--
- tests/libtest/lib1560.c | 9 +++++++++
- 2 files changed, 15 insertions(+), 2 deletions(-)
-
-diff --git a/lib/urlapi.c b/lib/urlapi.c
-index c53e523434..18a6076fff 100644
---- a/lib/urlapi.c
-+++ b/lib/urlapi.c
-@@ -499,8 +499,12 @@ static CURLUcode parse_port(struct Curl_URL *u, char *hostname)
-      (']' == endbracket)) {
-     /* this is a RFC2732-style specified IP-address */
-     portptr = &hostname[len];
--    if (*portptr != ':')
--      return CURLUE_MALFORMED_INPUT;
-+    if(*portptr) {
-+      if(*portptr != ':')
-+        return CURLUE_MALFORMED_INPUT;
-+    }
-+    else
-+      portptr = NULL;
-   }
-   else
-     portptr = strchr(hostname, ':');
-diff --git a/tests/libtest/lib1560.c b/tests/libtest/lib1560.c
-index e0faa12b29..57469a9063 100644
---- a/tests/libtest/lib1560.c
-+++ b/tests/libtest/lib1560.c
-@@ -128,6 +128,15 @@ struct querycase {
- };
- 
- static struct testcase get_parts_list[] ={
-+  {"http://[fd00:a41::50]:8080",
-+   "http | [11] | [12] | [13] | [fd00:a41::50] | 8080 | / | [16] | [17]",
-+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
-+  {"http://[fd00:a41::50]/",
-+   "http | [11] | [12] | [13] | [fd00:a41::50] | [15] | / | [16] | [17]",
-+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
-+  {"http://[fd00:a41::50]",
-+   "http | [11] | [12] | [13] | [fd00:a41::50] | [15] | / | [16] | [17]",
-+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
-   {"https://[::1%252]:1234",
-    "https | [11] | [12] | [13] | [::1%252] | 1234 | / | [16] | [17]",
-    CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
diff --git a/nixpkgs/pkgs/tools/networking/dd-agent/5.nix b/nixpkgs/pkgs/tools/networking/dd-agent/5.nix
index d3c4a2af7652..02bdb3e2a460 100644
--- a/nixpkgs/pkgs/tools/networking/dd-agent/5.nix
+++ b/nixpkgs/pkgs/tools/networking/dd-agent/5.nix
@@ -1,30 +1,41 @@
-{ stdenv, fetchFromGitHub, pythonPackages
+{ stdenv, fetchFromGitHub, python
 , unzip, makeWrapper }:
 let
-  inherit (pythonPackages) python;
-  docker_1_10 = pythonPackages.buildPythonPackage rec {
-    name = "docker-${version}";
-    version = "1.10.6";
+  python' = python.override {
+    packageOverrides = self: super: {
+      docker = self.buildPythonPackage rec {
+        name = "docker-${version}";
+        version = "1.10.6";
 
-    src = fetchFromGitHub {
-      owner = "docker";
-      repo = "docker-py";
-      rev = version;
-      sha256 = "1awzpbrkh4fympqzddz5i3ml81b7f0i0nwkvbpmyxjjfqx6l0m4m";
-    };
+        src = fetchFromGitHub {
+          owner = "docker";
+          repo = "docker-py";
+          rev = version;
+          sha256 = "1awzpbrkh4fympqzddz5i3ml81b7f0i0nwkvbpmyxjjfqx6l0m4m";
+        };
+
+        propagatedBuildInputs = with self; [
+          six
+          requests
+          websocket_client
+          ipaddress
+          backports_ssl_match_hostname
+          docker_pycreds
+          uptime
+        ];
 
-    propagatedBuildInputs = with pythonPackages; [
-      six
-      requests
-      websocket_client
-      ipaddress
-      backports_ssl_match_hostname
-      docker_pycreds
-      uptime
-    ];
+        # due to flake8
+        doCheck = false;
+      };
 
-    # due to flake8
-    doCheck = false;
+      pymongo = super.pymongo.overridePythonAttrs (oldAttrs: rec {
+        version = "2.9.5";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "912516ac6a355d7624374a38337b8587afe3eb535c0a5456b3bd12df637a6e70";
+        };
+      });
+    };
   };
 
 in stdenv.mkDerivation rec {
@@ -41,21 +52,21 @@ in stdenv.mkDerivation rec {
   patches = [ ./40103-iostat-fix.patch ];
 
   buildInputs = [
-    python
     unzip
     makeWrapper
-    pythonPackages.requests
-    pythonPackages.psycopg2
-    pythonPackages.psutil
-    pythonPackages.ntplib
-    pythonPackages.simplejson
-    pythonPackages.pyyaml
-    pythonPackages.pymongo_2_9_1
-    pythonPackages.python-etcd
-    pythonPackages.consul
-    docker_1_10
-  ];
-  propagatedBuildInputs = with pythonPackages; [ python tornado ];
+  ] ++ (with python'.pkgs; [
+    requests
+    psycopg2
+    psutil
+    ntplib
+    simplejson
+    pyyaml
+    pymongo
+    python-etcd
+    consul
+    docker
+  ]);
+  propagatedBuildInputs = with python'.pkgs; [ python tornado ];
 
   buildCommand = ''
     mkdir -p $out/bin
diff --git a/nixpkgs/pkgs/tools/networking/dd-agent/6.nix b/nixpkgs/pkgs/tools/networking/dd-agent/6.nix
index b26e915e6909..16955f9c4f1a 100644
--- a/nixpkgs/pkgs/tools/networking/dd-agent/6.nix
+++ b/nixpkgs/pkgs/tools/networking/dd-agent/6.nix
@@ -6,14 +6,14 @@ let
 
 in buildGoPackage rec {
   name = "datadog-agent-${version}";
-  version = "6.4.2";
+  version = "6.9.0";
   owner   = "DataDog";
   repo    = "datadog-agent";
 
   src = fetchFromGitHub {
     inherit owner repo;
-    rev    = "155fddb3547919bd54530dfdb250e0cb2defae7d";
-    sha256 = "0l7ic0p2h27x386k1gzzm20af2s06cpalmqz0h0c5zq4wszmw5zy";
+    rev    = "${version}";
+    sha256 = "1ddzml9ip5nm5z6cmnsrqxlmcr8411qlyr05hky7yn1dacin9ifw";
   };
 
   subPackages = [
@@ -57,7 +57,7 @@ in buildGoPackage rec {
   # 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/conf.d $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
diff --git a/nixpkgs/pkgs/tools/networking/ddclient/ddclient-line-buffer-stdout.patch b/nixpkgs/pkgs/tools/networking/ddclient/ddclient-line-buffer-stdout.patch
deleted file mode 100644
index d1ef9e024d2a..000000000000
--- a/nixpkgs/pkgs/tools/networking/ddclient/ddclient-line-buffer-stdout.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -u ddclient-3.8.1/ddclient ddclient-3.8.1.patched/ddclient
---- ddclient-3.8.1/ddclient	2011-07-11 23:04:21.000000000 +0200
-+++ ddclient-3.8.1.patched/ddclient	2012-11-08 11:52:31.930647236 +0100
-@@ -19,6 +19,7 @@ use strict;
- use Getopt::Long;
- use Sys::Hostname;
- use IO::Socket;
-+use IO::Handle qw( );
- 
- my ($VERSION) = q$Revision: 157 $ =~ /(\d+)/;
- 
-@@ -675,7 +676,7 @@ $SIG{'TERM'}   = sub { $caught_term = 1; };
- $SIG{'KILL'}   = sub { $caught_kill = 1; };
- # don't fork() if foreground or force is on
- if (opt('foreground') || opt('force')) {
--    ;
-+    STDOUT->autoflush(1);
- } elsif (opt('daemon')) {
-     $SIG{'CHLD'}   = 'IGNORE';
-     my $pid = fork;
diff --git a/nixpkgs/pkgs/tools/networking/ddclient/default.nix b/nixpkgs/pkgs/tools/networking/ddclient/default.nix
index 14de1fea4790..0a44adbbec2d 100644
--- a/nixpkgs/pkgs/tools/networking/ddclient/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ddclient/default.nix
@@ -2,19 +2,17 @@
 
 perlPackages.buildPerlPackage rec {
   name = "ddclient-${version}";
-  version = "3.8.3";
+  version = "3.9.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/ddclient/${name}.tar.gz";
-    sha256 = "1j8zdn7fy7i0bjk3jf0hxnbnshc2yf054vxq64imxdpfd7n5zgfy";
+    sha256 = "0fwyhab8yga2yi1kdfkbqxa83wxhwpagmj1w1mwkg2iffh1fjjlw";
   };
 
   # perl packages by default get devdoc which isn't present
   outputs = [ "out" ];
 
-  buildInputs = with perlPackages; [ IOSocketSSL DigestSHA1 ];
-
-  patches = [ ./ddclient-line-buffer-stdout.patch ];
+  buildInputs = with perlPackages; [ IOSocketSSL DigestSHA1 DataValidateIP JSONPP ];
 
   # Use iproute2 instead of ifconfig
   preConfigure = ''
diff --git a/nixpkgs/pkgs/tools/networking/dhcp/default.nix b/nixpkgs/pkgs/tools/networking/dhcp/default.nix
index 6c7f335891f5..41074e3dad6b 100644
--- a/nixpkgs/pkgs/tools/networking/dhcp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dhcp/default.nix
@@ -72,6 +72,5 @@ stdenv.mkDerivation rec {
     homepage = http://www.isc.org/products/DHCP/;
     license = licenses.isc;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/dnsperf/default.nix b/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
index 9d6b85092efc..77e61aaf3470 100644
--- a/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
@@ -1,30 +1,43 @@
-{ stdenv, fetchurl, bind, libseccomp, zlib, openssl, libcap }:
+{ stdenv, fetchurl, fetchFromGitHub, autoreconfHook
+, bind, libseccomp, zlib, openssl, libcap
+}:
 
 stdenv.mkDerivation rec {
   name = "dnsperf-${version}";
-  version = "2.1.0.0";
+  version = "2.2.0";
 
-  src = fetchurl {
-    url = "ftp://ftp.nominum.com/pub/nominum/dnsperf/${version}/"
-        + "dnsperf-src-${version}-1.tar.gz";
-    sha256 = "03kfc65s5a9csa5i7xjsv0psq144k8d9yw7xlny61bg1h2kg1db4";
+  # The same as the initial commit of the new GitHub repo (only readme changed).
+  src = fetchFromGitHub {
+    owner = "DNS-OARC";
+    repo = "dnsperf";
+    rev = "v${version}";
+    sha256 = "1acbpgk1d7hjs48j3w6xkmyf9xlxhqskjy50a16f9dvjwvvxp84b";
   };
 
   outputs = [ "out" "man" "doc" ];
 
+  nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ bind zlib openssl ]
-              ++ stdenv.lib.optional stdenv.isLinux [ libcap libcap.lib libseccomp ];
+    ++ stdenv.lib.optionals stdenv.isLinux [ libcap.lib ];
 
-  postInstall = ''
-    mkdir -p "$out/share/doc/"
-    cp -r ./doc "$out/share/doc/dnsperf"
+  # For now, keep including the old PDFs as well.
+  # https://github.com/DNS-OARC/dnsperf/issues/27
+  postInstall = let
+    src-doc = fetchurl {
+      url = "ftp://ftp.nominum.com/pub/nominum/dnsperf/2.1.0.0/"
+          + "dnsperf-src-2.1.0.0-1.tar.gz";
+      sha256 = "03kfc65s5a9csa5i7xjsv0psq144k8d9yw7xlny61bg1h2kg1db4";
+    };
+  in ''
+    tar xf '${src-doc}'
+    cp ./dnsperf-src-*/doc/*.pdf "$doc/share/doc/dnsperf/"
   '';
 
   meta = with stdenv.lib; {
-    outputsToInstall = outputs; # The man pages and PDFs are likely useful to most.
+    outputsToInstall = outputs; # The man pages and docs are likely useful to most.
 
     description = "Tools for DNS benchmaring";
-    homepage = https://www.akamai.com/us/en/products/network-operator/measurement-tools.jsp;
+    homepage = "https://github.com/DNS-OARC/dnsperf";
     license = licenses.isc;
     platforms = platforms.unix;
     maintainers = [ maintainers.vcunat ];
diff --git a/nixpkgs/pkgs/tools/networking/dsniff/default.nix b/nixpkgs/pkgs/tools/networking/dsniff/default.nix
index 41acb533a3de..50a3c98af0f7 100644
--- a/nixpkgs/pkgs/tools/networking/dsniff/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dsniff/default.nix
@@ -54,7 +54,7 @@ in stdenv.mkDerivation {
 
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ glib pcap ];
-  NIX_CFLAGS_LINK = "-lglib-2.0";
+  NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread";
   postPatch = ''
     for patch in debian/patches/*.patch; do
       patch < $patch
diff --git a/nixpkgs/pkgs/tools/networking/eternal-terminal/default.nix b/nixpkgs/pkgs/tools/networking/eternal-terminal/default.nix
index 73eaa07ac8ff..2543c791618c 100644
--- a/nixpkgs/pkgs/tools/networking/eternal-terminal/default.nix
+++ b/nixpkgs/pkgs/tools/networking/eternal-terminal/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "eternal-terminal-${version}";
-  version = "5.1.8";
+  version = "5.1.9";
 
   src = fetchFromGitHub {
     owner = "MisterTea";
     repo = "EternalTCP";
     rev = "refs/tags/et-v${version}";
-    sha256 = "0fq9a1fn0c77wfpypl3z7y23gbkw295ksy97wi9lhb5zj2m3dkq0";
+    sha256 = "07ynkcnk3z6wafdlnzdxcd308cw1rzabxyq47ybj79lyji3wsgk7";
   };
 
   nativeBuildInputs = [ cmake ninja ];
diff --git a/nixpkgs/pkgs/tools/networking/gmvault/default.nix b/nixpkgs/pkgs/tools/networking/gmvault/default.nix
index 06eb196c7a7e..e94c3e4330fb 100644
--- a/nixpkgs/pkgs/tools/networking/gmvault/default.nix
+++ b/nixpkgs/pkgs/tools/networking/gmvault/default.nix
@@ -12,8 +12,7 @@ pythonPackages.buildPythonApplication rec {
 
   doCheck = false;
 
-  propagatedBuildInputs = with pythonPackages; [ gdata IMAPClient Logbook
-    argparse chardet ];
+  propagatedBuildInputs = with pythonPackages; [ gdata IMAPClient Logbook chardet ];
 
   startScript = ./gmvault.py;
 
diff --git a/nixpkgs/pkgs/tools/networking/gping/default.nix b/nixpkgs/pkgs/tools/networking/gping/default.nix
new file mode 100644
index 000000000000..467f6f1586d5
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/gping/default.nix
@@ -0,0 +1,33 @@
+{ stdenv
+, lib
+, iputils
+, python3
+, python3Packages
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "gping";
+  version = "1.1";
+
+  propagatedBuildInputs = with python3Packages; [ colorama ];
+
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname  = "pinggraph";
+    sha256 = "0q5ma98457zb6vxsnhmrr3p38j1vg0gl155y0adzfg67wlniac92";
+  };
+
+  # Make path to ping explicit
+  postFixup = ''
+    substituteInPlace $out/${python3.sitePackages}/gping/pinger.py \
+      --replace 'subprocess.getoutput("ping ' 'subprocess.getoutput("${iputils}/bin/ping ' \
+      --replace 'args = ["ping"]' 'args = ["${iputils}/bin/ping"]'
+  '';
+
+  meta = with lib; {
+    description = "Ping, but with a graph";
+    homepage = https://github.com/orf/gping;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ andrew-d ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/haproxy/default.nix b/nixpkgs/pkgs/tools/networking/haproxy/default.nix
index 785c22ff4f8d..7ae42cbdf572 100644
--- a/nixpkgs/pkgs/tools/networking/haproxy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/haproxy/default.nix
@@ -9,12 +9,12 @@ assert usePcre -> pcre != null;
 
 stdenv.mkDerivation rec {
   pname = "haproxy";
-  version = "1.8.15";
+  version = "1.9.1";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://www.haproxy.org/download/${stdenv.lib.versions.majorMinor version}/src/${name}.tar.gz";
-    sha256 = "0cm008i7cz4gq0j7wxmpyzvwfcrmmck5ix34is5xxms624pqc4vi";
+    sha256 = "1qf8q49njx9n3b1g10zz3kcqmhji8lqcklh7723671z3l4pk2imd";
   };
 
   buildInputs = [ openssl zlib ]
diff --git a/nixpkgs/pkgs/tools/networking/i2p/default.nix b/nixpkgs/pkgs/tools/networking/i2p/default.nix
index 101f2a635a4b..ceadc231143f 100644
--- a/nixpkgs/pkgs/tools/networking/i2p/default.nix
+++ b/nixpkgs/pkgs/tools/networking/i2p/default.nix
@@ -27,10 +27,10 @@ let wrapper = stdenv.mkDerivation rec {
 in
 
 stdenv.mkDerivation rec {
-  name = "i2p-0.9.37";
+  name = "i2p-0.9.38";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "1lmqdqavy471s187y0lhckznlxx6id6h0dlwlyif2vr8c0pwv2q9";
+    sha256 = "0fxn8q6ccpjxr41s97nmjxg7hx12dzwrm5a7gyxgr44r7l77qlv6";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/nixpkgs/pkgs/tools/networking/i2pd/default.nix b/nixpkgs/pkgs/tools/networking/i2pd/default.nix
index 6e4cf45686b6..b2826a5cbc6b 100644
--- a/nixpkgs/pkgs/tools/networking/i2pd/default.nix
+++ b/nixpkgs/pkgs/tools/networking/i2pd/default.nix
@@ -11,13 +11,13 @@ stdenv.mkDerivation rec {
 
   name = pname + "-" + version;
   pname = "i2pd";
-  version = "2.22.0";
+  version = "2.23.0";
 
   src = fetchFromGitHub {
     owner = "PurpleI2P";
     repo = pname;
     rev = version;
-    sha256 = "1c4y5y6a9kssi9qmsyqz5hw29ya1s0i21fklnz48n08b7f4f9vlz";
+    sha256 = "0sw9fjamd5wjrsxnxsih9532yf6x3rrjmv5ybskkpk7b6acyqjj1";
   };
 
   buildInputs = with stdenv.lib; [ boost zlib openssl ]
diff --git a/nixpkgs/pkgs/tools/networking/infiniband-diags/default.nix b/nixpkgs/pkgs/tools/networking/infiniband-diags/default.nix
index fbca48fa17c8..0e41163577e7 100644
--- a/nixpkgs/pkgs/tools/networking/infiniband-diags/default.nix
+++ b/nixpkgs/pkgs/tools/networking/infiniband-diags/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     ./autogen.sh
   '';
 
-  configureFlags = [ "--with-perl-installdir=\${out}/lib/perl5/site_perl" "--sbindir=\${out}/bin" ];
+  configureFlags = [ "--with-perl-installdir=\${out}/${perl.libPrefix}" "--sbindir=\${out}/bin" ];
 
   postInstall = ''
     rmdir $out/var/run $out/var
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   postFixup = ''
     for pls in $out/bin/{ibfindnodesusing.pl,ibidsverify.pl}; do
       echo "wrapping $pls"
-      wrapProgram $pls --prefix PERL5LIB : "$out/lib/perl5/site_perl"
+      wrapProgram $pls --prefix PERL5LIB : "$out/${perl.libPrefix}"
     done
   '';
 
diff --git a/nixpkgs/pkgs/tools/networking/iperf/2.nix b/nixpkgs/pkgs/tools/networking/iperf/2.nix
index 6d26cf591bae..9faa0f953510 100644
--- a/nixpkgs/pkgs/tools/networking/iperf/2.nix
+++ b/nixpkgs/pkgs/tools/networking/iperf/2.nix
@@ -1,14 +1,15 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "iperf-2.0.12";
+  name = "iperf-2.0.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/iperf2/files/${name}.tar.gz";
-    sha256 = "0ii6sgp62x9ly2gyk00w58dy9qwcw2kvhhcfa7v16jr6n4gnazrn";
+    sha256 = "1bbq6xr0vrd88zssfiadvw3awyn236yv94fsdl9q2sh9cv4xx2n8";
   };
 
   hardeningDisable = [ "format" ];
+  configureFlags = [ "--enable-fastsampling" ];
 
   meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/iperf/;
diff --git a/nixpkgs/pkgs/tools/networking/iperf/3.nix b/nixpkgs/pkgs/tools/networking/iperf/3.nix
index 86ee7578bb67..9082a484aa5a 100644
--- a/nixpkgs/pkgs/tools/networking/iperf/3.nix
+++ b/nixpkgs/pkgs/tools/networking/iperf/3.nix
@@ -12,9 +12,9 @@ stdenv.mkDerivation rec {
 
   patches = stdenv.lib.optionals stdenv.hostPlatform.isMusl [
     (fetchpatch {
-      url = "http://git.alpinelinux.org/cgit/aports/plain/main/iperf3/remove-pg-flags.patch";
+      url = "https://git.alpinelinux.org/aports/plain/main/iperf3/remove-pg-flags.patch?id=99ec9e1c84e338629cf1b27b0fdc808bde4d8564";
       name = "remove-pg-flags.patch";
-      sha256 = "0lnczhass24kgq59drgdipnhjnw4l1cy6gqza7f2ah1qr4q104rm";
+      sha256 = "0b3vcw1pdyk10764p4vlglwi1acrm7wz2jjd6li7p11v4rggrb5c";
     })
   ];
 
@@ -23,10 +23,10 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://software.es.net/iperf/; 
+    homepage = http://software.es.net/iperf/;
     description = "Tool to measure IP bandwidth using UDP or TCP";
     platforms = platforms.unix;
     license = "as-is";
-    maintainers = with maintainers; [ wkennington fpletz ];
+    maintainers = with maintainers; [ fpletz ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/keepalived/default.nix b/nixpkgs/pkgs/tools/networking/keepalived/default.nix
index 185e86366815..d38ff60f7062 100644
--- a/nixpkgs/pkgs/tools/networking/keepalived/default.nix
+++ b/nixpkgs/pkgs/tools/networking/keepalived/default.nix
@@ -30,6 +30,5 @@ stdenv.mkDerivation rec {
     description = "Routing software written in C";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/minio-client/default.nix b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
index 8b8991db86c2..3a3ca03f18ae 100644
--- a/nixpkgs/pkgs/tools/networking/minio-client/default.nix
+++ b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   name = "minio-client-${version}";
 
-  version = "2018-12-05T22-59-07Z";
+  version = "2019-01-30T19-57-22Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "01vjgs96sb792rggc7da9fzbpam5pyr7x9zd4r8wv6jc6xnv7n3x";
+    sha256 = "1w0ig0daf0zxpkz449xq2hm7ajhzn8hlnnmpac6ip82qy53xnbm4";
   };
 
   goPackagePath = "github.com/minio/mc";
diff --git a/nixpkgs/pkgs/tools/networking/mosh/default.nix b/nixpkgs/pkgs/tools/networking/mosh/default.nix
index c83ab66b27a0..9f81e0d57211 100644
--- a/nixpkgs/pkgs/tools/networking/mosh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/mosh/default.nix
@@ -1,5 +1,5 @@
-{ lib, stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig, IOTty
-, makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion
+{ lib, stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig
+, makeWrapper, perlPackages, openssl, autoreconfHook, openssh, bash-completion
 , libutempter ? null, withUtempter ? stdenv.isLinux }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,9 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ protobuf ncurses zlib IOTty makeWrapper perl openssl bash-completion ] ++ lib.optional withUtempter libutempter;
+  buildInputs = [ protobuf ncurses zlib makeWrapper openssl bash-completion ]
+    ++ (with perlPackages; [ perl IOTty ])
+    ++ lib.optional withUtempter libutempter;
 
   patches = [ ./ssh_path.patch ./utempter_path.patch ];
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/networking/ndisc6/default.nix b/nixpkgs/pkgs/tools/networking/ndisc6/default.nix
index 619cdac92668..4dbc455103c5 100644
--- a/nixpkgs/pkgs/tools/networking/ndisc6/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ndisc6/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = https://www.remlab.net/ndisc6/;
     description = "A small collection of useful tools for IPv6 networking";
-    maintainers = with maintainers; [ eelco wkennington ];
+    maintainers = with maintainers; [ eelco ];
     platforms = platforms.linux;
     license = licenses.gpl2;
   };
diff --git a/nixpkgs/pkgs/tools/networking/network-manager/applet.nix b/nixpkgs/pkgs/tools/networking/network-manager/applet.nix
index 9f1b50085078..f3fe14e4f246 100644
--- a/nixpkgs/pkgs/tools/networking/network-manager/applet.nix
+++ b/nixpkgs/pkgs/tools/networking/network-manager/applet.nix
@@ -2,7 +2,7 @@
 , libnotify, libsecret, polkit, isocodes, modemmanager, libxml2, docbook_xsl, docbook_xml_dtd_43
 , mobile-broadband-provider-info, glib-networking, gsettings-desktop-schemas
 , libgudev, jansson, wrapGAppsHook, gobject-introspection, python3
-, libappindicator-gtk3, withGnome ? false }:
+, libappindicator-gtk3, withGnome ? false, gcr }:
 
 let
   pname = "network-manager-applet";
@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
     polkit isocodes mobile-broadband-provider-info libgudev
     modemmanager jansson glib-networking
     libappindicator-gtk3 gnome3.defaultIconTheme
-  ] ++ stdenv.lib.optionals withGnome [ gnome3.gcr ]; # advanced certificate chooser
+  ] ++ stdenv.lib.optionals withGnome [ gcr ]; # advanced certificate chooser
 
   nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobject-introspection python3 gtk-doc docbook_xsl docbook_xml_dtd_43 libxml2 ];
 
diff --git a/nixpkgs/pkgs/tools/networking/network-manager/default.nix b/nixpkgs/pkgs/tools/networking/network-manager/default.nix
index 7b06b521aaa8..48848c0ead72 100644
--- a/nixpkgs/pkgs/tools/networking/network-manager/default.nix
+++ b/nixpkgs/pkgs/tools/networking/network-manager/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, substituteAll, intltool, pkgconfig, dbus-glib
+{ stdenv, fetchurl, substituteAll, intltool, pkgconfig, dbus, dbus-glib
 , gnome3, systemd, libuuid, polkit, gnutls, ppp, dhcp, iptables
 , libgcrypt, dnsmasq, bluez5, readline
 , gobject-introspection, modemmanager, openresolv, libndp, newt, libsoup
@@ -9,11 +9,11 @@ let
   pname = "NetworkManager";
 in stdenv.mkDerivation rec {
   name = "network-manager-${version}";
-  version = "1.12.2";
+  version = "1.14.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "09hsh34m8hg4m402pw5n11f29vsfjw6lm3p5m56yxwq57bwnzq3b";
+    sha256 = "064cgj9za0kzarks0lrv0qw2ysdphb5l97iw0c964bfiqzjfv8rm";
   };
 
   outputs = [ "out" "dev" ];
@@ -25,16 +25,6 @@ in stdenv.mkDerivation rec {
   preConfigure = ''
     substituteInPlace configure --replace /usr/bin/uname ${coreutils}/bin/uname
     substituteInPlace configure --replace /usr/bin/file ${file}/bin/file
-    substituteInPlace data/84-nm-drivers.rules \
-      --replace /bin/sh ${stdenv.shell}
-    substituteInPlace data/85-nm-unmanaged.rules \
-      --replace /bin/sh ${stdenv.shell} \
-      --replace /usr/sbin/ethtool ${ethtool}/sbin/ethtool \
-      --replace /bin/sed ${gnused}/bin/sed
-    substituteInPlace data/NetworkManager.service.in \
-      --replace /bin/kill ${coreutils}/bin/kill
-    # to enable link-local connections
-    configureFlags="$configureFlags --with-udev-dir=$out/lib/udev"
 
     # Fixes: error: po/Makefile.in.in was not created by intltoolize.
     intltoolize --automake --copy --force
@@ -50,10 +40,11 @@ in stdenv.mkDerivation rec {
     "--with-dhcpcd=no"
     "--with-pppd=${ppp}/bin/pppd"
     "--with-iptables=${iptables}/bin/iptables"
-    #"--with-udev-dir=$(out)/lib/udev"
+    # to enable link-local connections
+    "--with-udev-dir=${placeholder "out"}/lib/udev"
     "--with-resolvconf=${openresolv}/sbin/resolvconf"
     "--sysconfdir=/etc" "--localstatedir=/var"
-    "--with-dbus-sys-dir=\${out}/etc/dbus-1/system.d"
+    "--with-dbus-sys-dir=${placeholder "out"}/etc/dbus-1/system.d"
     "--with-crypto=gnutls" "--disable-more-warnings"
     "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
     "--with-kernel-firmware-dir=/run/current-system/firmware"
@@ -66,18 +57,10 @@ in stdenv.mkDerivation rec {
   ];
 
   patches = [
-    # https://bugzilla.gnome.org/show_bug.cgi?id=796751
-    (fetchpatch {
-      url = https://bugzilla.gnome.org/attachment.cgi?id=372953;
-      sha256 = "0xg7bzs6dvkbv2qp67i7mi1c5yrmfd471xgmlkn15b33pqkzy3mc";
-    })
-    (fetchpatch {
-      url = https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/0a3755c1799d3a4dc1875d4c59c7c568a64c8456.patch;
-      sha256 = "0r7338q3za7mf419a244vi65b1q497rg84avijybmv6w4x6p1ksd";
-    })
     (substituteAll {
       src = ./fix-paths.patch;
-      inherit inetutils kmod openconnect;
+      inherit inetutils kmod openconnect ethtool coreutils dbus;
+      inherit (stdenv) shell;
     })
 
   ];
@@ -93,9 +76,11 @@ in stdenv.mkDerivation rec {
 
   doCheck = false; # requires /sys, the net
 
-  preInstall = ''
-    installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" "runstatedir=$out/var/run" )
-  '';
+  installFlags = [
+    "sysconfdir=${placeholder "out"}/etc"
+    "localstatedir=${placeholder "out"}/var"
+    "runstatedir=${placeholder "out"}/var/run"
+  ];
 
   postInstall = ''
     mkdir -p $out/lib/NetworkManager
diff --git a/nixpkgs/pkgs/tools/networking/network-manager/fix-paths.patch b/nixpkgs/pkgs/tools/networking/network-manager/fix-paths.patch
index 5deaa2026d0f..949608095528 100644
--- a/nixpkgs/pkgs/tools/networking/network-manager/fix-paths.patch
+++ b/nixpkgs/pkgs/tools/networking/network-manager/fix-paths.patch
@@ -1,17 +1,41 @@
 --- a/clients/common/nm-vpn-helpers.c
 +++ b/clients/common/nm-vpn-helpers.c
-@@ -205,7 +205,7 @@
- 	char *argv[4];
- 	const char *path;
+@@ -214,10 +214,7 @@
+ 		NULL,
+ 	};
  
--	path = nm_utils_find_helper ("openconnect", "/usr/sbin/openconnect", error);
+-	path = nm_utils_file_search_in_paths ("openconnect", "/usr/sbin/openconnect", DEFAULT_PATHS,
+-	                                      G_FILE_TEST_IS_EXECUTABLE, NULL, NULL, error);
+-	if (!path)
+-		return FALSE;
 +	path = "@openconnect@/bin/openconnect";
- 	if (!path)
- 		return FALSE;
  
+ 	argv[0] = (char *) path;
+ 	argv[1] = "--authenticate";
+--- a/data/84-nm-drivers.rules
++++ b/data/84-nm-drivers.rules
+@@ -7,6 +7,6 @@
+ # Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?)
+ ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end"
+ DRIVERS=="?*", GOTO="nm_drivers_end"
+-PROGRAM="/bin/sh -c 'ethtool -i $1 | sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c"
++PROGRAM="@shell@ -c '@ethtool@/bin/ethtool -i $1 | @coreutils@/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c"
+ 
+ LABEL="nm_drivers_end"
+--- a/data/NetworkManager.service.in
++++ b/data/NetworkManager.service.in
+@@ -8,7 +8,7 @@
+ [Service]
+ Type=dbus
+ BusName=org.freedesktop.NetworkManager
+-ExecReload=/usr/bin/dbus-send --print-reply --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.Reload uint32:0
++ExecReload=@dbus@/bin/dbus-send --print-reply --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.Reload uint32:0
+ #ExecReload=/bin/kill -HUP $MAINPID
+ ExecStart=@sbindir@/NetworkManager --no-daemon
+ Restart=on-failure
 --- a/src/devices/nm-device.c
 +++ b/src/devices/nm-device.c
-@@ -11828,14 +11828,14 @@
+@@ -12350,14 +12350,14 @@
  			gw = nm_ip4_config_best_default_route_get (priv->ip_config_4);
  			if (gw) {
  				nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf);
@@ -30,7 +54,7 @@
  		}
 --- a/src/nm-core-utils.c
 +++ b/src/nm-core-utils.c
-@@ -428,7 +428,7 @@
+@@ -421,7 +421,7 @@
  
  	/* construct the argument list */
  	argv = g_ptr_array_sized_new (4);
diff --git a/nixpkgs/pkgs/tools/networking/nyx/default.nix b/nixpkgs/pkgs/tools/networking/nyx/default.nix
index 3476e56993bf..901187c6abb9 100644
--- a/nixpkgs/pkgs/tools/networking/nyx/default.nix
+++ b/nixpkgs/pkgs/tools/networking/nyx/default.nix
@@ -4,11 +4,11 @@ with pythonPackages;
 
 buildPythonApplication rec {
   pname = "nyx";
-  version = "2.0.4";
+  version = "2.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0pm7vfcqr02pzqz4b2f6sw5prxxmgqwr1912am42xmy2i53n7nrq";
+    sha256 = "02rrlllz2ci6i6cs3iddyfns7ang9a54jrlygd2jw1f9s6418ll8";
   };
 
   propagatedBuildInputs = [ stem ];
diff --git a/nixpkgs/pkgs/tools/networking/ocserv/default.nix b/nixpkgs/pkgs/tools/networking/ocserv/default.nix
index d6458128b04f..63a74c3ddb61 100644
--- a/nixpkgs/pkgs/tools/networking/ocserv/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ocserv/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "ocserv-${version}";
-  version = "0.12.1";
+  version = "0.12.2";
 
   src = fetchFromGitLab {
     owner = "openconnect";
     repo = "ocserv";
     rev = "ocserv_${stdenv.lib.replaceStrings [ "." ] [ "_" ] version}";
-    sha256 = "0jn91a50r3ryj1ph9fzxwy2va877b0b37ahargxzn7biccd8nh0y";
+    sha256 = "13lijg5qkkpn35laaimpw9l5g2dnnbmqn74lpcknmp6nm6j2wvci";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/networking/offlineimap/default.nix b/nixpkgs/pkgs/tools/networking/offlineimap/default.nix
index 13c195d64e88..5ac64d36eaf9 100644
--- a/nixpkgs/pkgs/tools/networking/offlineimap/default.nix
+++ b/nixpkgs/pkgs/tools/networking/offlineimap/default.nix
@@ -1,20 +1,23 @@
 { stdenv, fetchFromGitHub, python2Packages,
-  asciidoc, libxml2, libxslt, docbook_xsl }:
+  asciidoc, cacert, libxml2, libxslt, docbook_xsl }:
 
 python2Packages.buildPythonApplication rec {
-  version = "7.2.1";
+  version = "7.2.2";
   pname = "offlineimap";
 
   src = fetchFromGitHub {
     owner = "OfflineIMAP";
     repo = "offlineimap";
     rev = "v${version}";
-    sha256 = "1m5i74baazwazqp98ssma968rnwzfl1nywb7icf0swc8447ps97q";
+    sha256 = "11nj7y9fa7v6vcxk3wr8smfgm3mxxnmq3l8q69rrjxlfzcv7dl8m";
   };
 
   postPatch = ''
     # Skip xmllint to stop failures due to no network access
     sed -i docs/Makefile -e "s|a2x -v -d |a2x -L -v -d |"
+
+    # Provide CA certificates (Used when "sslcacertfile = OS-DEFAULT" is configured")
+    sed -i offlineimap/utils/distro.py -e '/def get_os_sslcertfile():/a\ \ \ \ return "${cacert}/etc/ssl/certs/ca-bundle.crt"'
   '';
 
   doCheck = false;
diff --git a/nixpkgs/pkgs/tools/networking/openfortivpn/default.nix b/nixpkgs/pkgs/tools/networking/openfortivpn/default.nix
index 5512db9fe760..b95c3aed8e62 100644
--- a/nixpkgs/pkgs/tools/networking/openfortivpn/default.nix
+++ b/nixpkgs/pkgs/tools/networking/openfortivpn/default.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 let repo = "openfortivpn";
-    version = "1.7.1";
+    version = "1.8.0";
 
 in stdenv.mkDerivation {
   name = "${repo}-${version}";
@@ -12,7 +12,7 @@ in stdenv.mkDerivation {
     owner = "adrienverge";
     inherit repo;
     rev = "v${version}";
-    sha256 = "01nsgmmh72qk0aq2zdjh8qqn256mmvz1w2gl0wi7g29d82y2hdfm";
+    sha256 = "1p7zfysqvivca565ifb5anla3rgqavq2npavj1vlmhipa01080lk";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -20,9 +20,7 @@ in stdenv.mkDerivation {
 
   NIX_CFLAGS_COMPILE = "-Wno-error=unused-function";
 
-  preConfigure = ''
-    substituteInPlace src/tunnel.c --replace "/usr/sbin/pppd" "${ppp}/bin/pppd"
-  '';
+  configureFlags = [ "--with-pppd=${ppp}/bin/pppd" ];
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/tools/networking/openntpd/default.nix b/nixpkgs/pkgs/tools/networking/openntpd/default.nix
index a540120de2f9..019806fcd572 100644
--- a/nixpkgs/pkgs/tools/networking/openntpd/default.nix
+++ b/nixpkgs/pkgs/tools/networking/openntpd/default.nix
@@ -37,6 +37,5 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     description = "OpenBSD NTP daemon (Debian port)";
     platforms = platforms.all;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/openssh/default.nix b/nixpkgs/pkgs/tools/networking/openssh/default.nix
index 7b3c00894667..6ce574b9cdc4 100644
--- a/nixpkgs/pkgs/tools/networking/openssh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/openssh/default.nix
@@ -41,6 +41,15 @@ stdenv.mkDerivation rec {
 
       # See discussion in https://github.com/NixOS/nixpkgs/pull/16966
       ./dont_create_privsep_path.patch
+
+      # CVE-2018-20685, can probably be dropped with next version bump
+      # See https://sintonen.fi/advisories/scp-client-multiple-vulnerabilities.txt
+      # for details
+      (fetchpatch {
+        name = "CVE-2018-20685.patch";
+        url = https://github.com/openssh/openssh-portable/commit/6010c0303a422a9c5fa8860c061bf7105eb7f8b2.patch;
+        sha256 = "0q27i9ymr97yb628y44qi4m11hk5qikb1ji1vhvax8hp18lwskds";
+      })
     ]
     ++ optional withGssapiPatches (assert withKerberos; gssapiPatch);
 
diff --git a/nixpkgs/pkgs/tools/networking/pirate-get/default.nix b/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
index 3acf625fd00b..5d410685c0d0 100644
--- a/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
+++ b/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
@@ -4,13 +4,13 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "pirate-get";
-  version = "0.3.2";
+  version = "0.3.3";
 
   doCheck = false;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1iirip12zrxm2nqsib5wfqqnlfmhh432y3kkyih9crk4q2p914df";
+    sha256 = "1zwfgfiszkca44wlx5p2243hmf8594n7bnfva5if1f69dic6w7mi";
   };
 
   propagatedBuildInputs = [ colorama veryprettytable beautifulsoup4 pyperclip ];
diff --git a/nixpkgs/pkgs/tools/networking/polygraph/default.nix b/nixpkgs/pkgs/tools/networking/polygraph/default.nix
index 0b679bc60b53..bdc6e7b67f7d 100644
--- a/nixpkgs/pkgs/tools/networking/polygraph/default.nix
+++ b/nixpkgs/pkgs/tools/networking/polygraph/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, openssl, zlib, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "polygraph-4.12.0";
+  name = "polygraph-4.13.0";
 
   src = fetchurl {
     url = "http://www.web-polygraph.org/downloads/srcs/${name}-src.tgz";
-    sha256 = "1anrdc30yi9pb67642flmn7w82q37cnc45r9bh15mpbc66yk3kzz";
+    sha256 = "1rwzci3n7q33hw3spd79adnclzwgwlxcisc9szzjmcjqhbkcpj1a";
   };
 
   buildInputs = [ openssl zlib ncurses ];
diff --git a/nixpkgs/pkgs/tools/networking/privoxy/default.nix b/nixpkgs/pkgs/tools/networking/privoxy/default.nix
index 48a803268bed..56bd46427d86 100644
--- a/nixpkgs/pkgs/tools/networking/privoxy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/privoxy/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec{
 
   name = "privoxy-${version}";
-  version = "3.0.26";
+  version = "3.0.28";
 
   src = fetchurl {
     url = "mirror://sourceforge/ijbswa/Sources/${version}%20%28stable%29/${name}-stable-src.tar.gz";
-    sha256 = "1n4wpxmahl8m2y3d1azxa8lrdbpaad007k458skxrpz57ss1br2p";
+    sha256 = "0jl2yav1qzqnaqnnx8i6i53ayckkimcrs3l6ryvv7bda6v08rmxm";
   };
 
   hardeningEnable = [ "pie" ];
diff --git a/nixpkgs/pkgs/tools/networking/pykms/default.nix b/nixpkgs/pkgs/tools/networking/pykms/default.nix
index 676f1d048554..15ac5bceea33 100644
--- a/nixpkgs/pkgs/tools/networking/pykms/default.nix
+++ b/nixpkgs/pkgs/tools/networking/pykms/default.nix
@@ -40,7 +40,7 @@ in buildPythonApplication rec {
     sha256 = "17yj5n8byxp09l5zkap73hpphjy35px84wy68ps824w8l0l8kcd4";
   };
 
-  propagatedBuildInputs = [ argparse pytz ];
+  propagatedBuildInputs = [ pytz ];
 
   prePatch = ''
     siteDir=$out/${python.sitePackages}
diff --git a/nixpkgs/pkgs/tools/networking/radvd/default.nix b/nixpkgs/pkgs/tools/networking/radvd/default.nix
index 9ebce846e416..b8fa92e32022 100644
--- a/nixpkgs/pkgs/tools/networking/radvd/default.nix
+++ b/nixpkgs/pkgs/tools/networking/radvd/default.nix
@@ -17,6 +17,6 @@ stdenv.mkDerivation rec {
     description = "IPv6 Router Advertisement Daemon";
     platforms = platforms.linux;
     license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ wkennington fpletz ];
+    maintainers = with maintainers; [ fpletz ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/shadowsocks-libev/default.nix b/nixpkgs/pkgs/tools/networking/shadowsocks-libev/default.nix
index ca744d7b0d0a..de4fbbd365db 100644
--- a/nixpkgs/pkgs/tools/networking/shadowsocks-libev/default.nix
+++ b/nixpkgs/pkgs/tools/networking/shadowsocks-libev/default.nix
@@ -5,14 +5,14 @@
 
 stdenv.mkDerivation rec {
   name = "shadowsocks-libev-${version}";
-  version = "3.2.0";
+  version = "3.2.3";
 
   # Git tag includes CMake build files which are much more convenient.
   src = fetchFromGitHub {
     owner = "shadowsocks";
     repo = "shadowsocks-libev";
     rev = "refs/tags/v${version}";
-    sha256 = "0i9vz5b2c2bkdl2k9kqzvqyrlpdl94lf7k7rzxds8hn2kk0jizhb";
+    sha256 = "1nj2z3j41lqd6gvj6j7xc8g7jbn2f8b75phlkgwvw0j3zsqnbq30";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/tools/networking/slimrat/default.nix b/nixpkgs/pkgs/tools/networking/slimrat/default.nix
index ef2c91ee2fab..8632a33e3498 100644
--- a/nixpkgs/pkgs/tools/networking/slimrat/default.nix
+++ b/nixpkgs/pkgs/tools/networking/slimrat/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, perl, WWWMechanize, LWP, makeWrapper}:
+{stdenv, fetchurl, perlPackages, makeWrapper}:
 
 stdenv.mkDerivation {
   name = "slimrat-1.0";
@@ -7,10 +7,10 @@ stdenv.mkDerivation {
     sha256 = "139b71d45k4b1y47iq62a9732cnaqqbh8s4knkrgq2hx0jxpsk5a";
   };
 
-  buildInputs = [ perl WWWMechanize LWP makeWrapper ];
+  buildInputs = [ makeWrapper ] ++ (with perlPackages; [ perl WWWMechanize LWP ]);
 
   patchPhase = ''
-    sed -e 's,#!.*,#!${perl}/bin/perl,' -i src/{slimrat,slimrat-gui}
+    sed -e 's,#!.*,#!${perlPackages.perl}/bin/perl,' -i src/{slimrat,slimrat-gui}
   '';
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/networking/smokeping/default.nix b/nixpkgs/pkgs/tools/networking/smokeping/default.nix
index 87e0a788383c..08b5e6a211b8 100644
--- a/nixpkgs/pkgs/tools/networking/smokeping/default.nix
+++ b/nixpkgs/pkgs/tools/networking/smokeping/default.nix
@@ -1,8 +1,4 @@
-{ stdenv, fetchurl, fping, rrdtool, FCGI, CGI
-, CGIFast, ConfigGrammar, DigestHMAC, NetTelnet
-, NetOpenSSH, NetSNMP, LWP, IOTty, perl, NetDNS
-, perlldap
-}:
+{ stdenv, fetchurl, fping, rrdtool, perlPackages }:
 
 stdenv.mkDerivation rec {
   name = "smokeping-${version}";
@@ -11,9 +7,10 @@ stdenv.mkDerivation rec {
     url = "https://oss.oetiker.ch/smokeping/pub/smokeping-${version}.tar.gz";
     sha256 = "1p9hpa2zs33p7hzrds80kwrm5255s0869v3s3qmsyx2sx63c7czj";
   };
-  propagatedBuildInputs = [
-    rrdtool FCGI CGI CGIFast ConfigGrammar DigestHMAC NetTelnet NetOpenSSH
-      NetSNMP LWP IOTty fping perl NetDNS perlldap ];
+  propagatedBuildInputs = [ rrdtool ] ++
+    (with perlPackages; [ perl FCGI CGI CGIFast ConfigGrammar DigestHMAC NetTelnet
+      NetOpenSSH NetSNMP LWP IOTty fping NetDNS perlldap ]);
+
   postInstall = ''
     mv $out/htdocs/smokeping.fcgi.dist $out/htdocs/smokeping.fcgi
   '';
diff --git a/nixpkgs/pkgs/tools/networking/spoofer/default.nix b/nixpkgs/pkgs/tools/networking/spoofer/default.nix
index 1043007e1dd2..8893c5e37fe0 100644
--- a/nixpkgs/pkgs/tools/networking/spoofer/default.nix
+++ b/nixpkgs/pkgs/tools/networking/spoofer/default.nix
@@ -6,12 +6,12 @@ in
 
 stdenv.mkDerivation rec {
   pname = "spoofer";
-  version = "1.4.0";
+  version = "1.4.2";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://www.caida.org/projects/spoofer/downloads/${name}.tar.gz";
-    sha256 = "0d745w7cy83hw7j950dah4h5qzclcibj16dik2gpsjnw1zq63cna";
+    sha256 = "041piwc2r4fig5b4apm2ibq1wyd11ic8p3xv3ss2hrbn5d8inza1";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/networking/ssmtp/default.nix b/nixpkgs/pkgs/tools/networking/ssmtp/default.nix
index 4c906812f64d..22f60bfcee55 100644
--- a/nixpkgs/pkgs/tools/networking/ssmtp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ssmtp/default.nix
@@ -36,6 +36,8 @@ stdenv.mkDerivation {
 
   buildInputs = stdenv.lib.optional tlsSupport openssl;
 
+  NIX_LDFLAGS = stdenv.lib.optional tlsSupport [ "-lcrypto" ];
+
   meta = with stdenv.lib; {
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/nixpkgs/pkgs/tools/networking/strongswan/default.nix b/nixpkgs/pkgs/tools/networking/strongswan/default.nix
index c0ec4eb9b95d..9ee5a0cf8497 100644
--- a/nixpkgs/pkgs/tools/networking/strongswan/default.nix
+++ b/nixpkgs/pkgs/tools/networking/strongswan/default.nix
@@ -1,9 +1,10 @@
-{ stdenv, fetchurl
+{ stdenv, fetchurl, substituteAll
 , pkgconfig, autoreconfHook
 , gmp, python, iptables, ldns, unbound, openssl, pcsclite
 , openresolv
 , systemd, pam
 , curl
+, kmod
 , enableTNC            ? false, trousers, sqlite, libxml2
 , enableNetworkManager ? false, networkmanager
 , libpcap
@@ -40,6 +41,10 @@ stdenv.mkDerivation rec {
     ./ext_auth-path.patch
     ./firewall_defaults.patch
     ./updown-path.patch
+    (substituteAll {
+      src = ./modprobe-path.patch;
+      inherit kmod;
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/networking/strongswan/modprobe-path.patch b/nixpkgs/pkgs/tools/networking/strongswan/modprobe-path.patch
new file mode 100644
index 000000000000..4c0cb59c13a1
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/strongswan/modprobe-path.patch
@@ -0,0 +1,56 @@
+diff --git a/src/starter/klips.c b/src/starter/klips.c
+index 2216546..d626677 100644
+--- a/src/starter/klips.c
++++ b/src/starter/klips.c
+@@ -30,7 +30,7 @@ bool starter_klips_init(void)
+ 		/* ipsec module makes the pf_key proc interface visible */
+ 		if (stat(PROC_MODULES, &stb) == 0)
+ 		{
+-			ignore_result(system("modprobe -qv ipsec"));
++			ignore_result(system("@kmod@/bin/modprobe -qv ipsec"));
+ 		}
+ 
+ 		/* now test again */
+@@ -42,9 +42,9 @@ bool starter_klips_init(void)
+ 	}
+ 
+ 	/* load crypto algorithm modules */
+-	ignore_result(system("modprobe -qv ipsec_aes"));
+-	ignore_result(system("modprobe -qv ipsec_blowfish"));
+-	ignore_result(system("modprobe -qv ipsec_sha2"));
++	ignore_result(system("@kmod@/bin/modprobe -qv ipsec_aes"));
++	ignore_result(system("@kmod@/bin/modprobe -qv ipsec_blowfish"));
++	ignore_result(system("@kmod@/bin/modprobe -qv ipsec_sha2"));
+ 
+ 	DBG2(DBG_APP, "found KLIPS IPsec stack");
+ 	return TRUE;
+diff --git a/src/starter/netkey.c b/src/starter/netkey.c
+index b150d3e..0a7c2ff 100644
+--- a/src/starter/netkey.c
++++ b/src/starter/netkey.c
+@@ -30,7 +30,7 @@ bool starter_netkey_init(void)
+ 		/* af_key module makes the netkey proc interface visible */
+ 		if (stat(PROC_MODULES, &stb) == 0)
+ 		{
+-			ignore_result(system("modprobe -qv af_key"));
++			ignore_result(system("@kmod@/bin/modprobe -qv af_key"));
+ 		}
+ 
+ 		/* now test again */
+@@ -44,11 +44,11 @@ bool starter_netkey_init(void)
+ 	/* make sure that all required IPsec modules are loaded */
+ 	if (stat(PROC_MODULES, &stb) == 0)
+ 	{
+-		ignore_result(system("modprobe -qv ah4"));
+-		ignore_result(system("modprobe -qv esp4"));
+-		ignore_result(system("modprobe -qv ipcomp"));
+-		ignore_result(system("modprobe -qv xfrm4_tunnel"));
+-		ignore_result(system("modprobe -qv xfrm_user"));
++		ignore_result(system("@kmod@/bin/modprobe -qv ah4"));
++		ignore_result(system("@kmod@/bin/modprobe -qv esp4"));
++		ignore_result(system("@kmod@/bin/modprobe -qv ipcomp"));
++		ignore_result(system("@kmod@/bin/modprobe -qv xfrm4_tunnel"));
++		ignore_result(system("@kmod@/bin/modprobe -qv xfrm_user"));
+ 	}
+ 
+ 	DBG2(DBG_APP, "found netkey IPsec stack");
diff --git a/nixpkgs/pkgs/tools/networking/stubby/default.nix b/nixpkgs/pkgs/tools/networking/stubby/default.nix
index 2882ba217398..4685143c934b 100644
--- a/nixpkgs/pkgs/tools/networking/stubby/default.nix
+++ b/nixpkgs/pkgs/tools/networking/stubby/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   pname = "stubby";
   name = "${pname}-${version}";
-  version = "0.2.3";
+  version = "0.2.5";
 
   src = fetchFromGitHub {
     owner = "getdnsapi";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1n02dj1hvh0aml54asxj42f0j9wfgiyavbh0gr0j9lm4f2xcd60w";
+    sha256 = "034y783dvh43v5ajxlgn4y9y7mdk1lwy87d7isaxpkigs1jqbrma";
   };
 
   nativeBuildInputs = [ libtool m4 libbsd libyaml autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/networking/swaks/default.nix b/nixpkgs/pkgs/tools/networking/swaks/default.nix
index 8daf034d4bdd..2abdab773ddf 100644
--- a/nixpkgs/pkgs/tools/networking/swaks/default.nix
+++ b/nixpkgs/pkgs/tools/networking/swaks/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     mv swaks $out/bin/
 
     wrapProgram $out/bin/swaks --set PERL5LIB \
-      "${with perlPackages; stdenv.lib.makePerlPath [
+      "${with perlPackages; makePerlPath [
         NetSSLeay AuthenSASL NetDNS IOSocketInet6
       ]}"
   '';
diff --git a/nixpkgs/pkgs/tools/networking/swec/default.nix b/nixpkgs/pkgs/tools/networking/swec/default.nix
index bc9c9532e4f0..515fcee6963b 100644
--- a/nixpkgs/pkgs/tools/networking/swec/default.nix
+++ b/nixpkgs/pkgs/tools/networking/swec/default.nix
@@ -1,5 +1,4 @@
-{ fetchurl, stdenv, makeWrapper, perl, LWP, URI, HTMLParser
-, HTTPServerSimple, Parent }:
+{ fetchurl, stdenv, makeWrapper, perlPackages }:
 
 stdenv.mkDerivation rec {
   name = "swec-0.4";
@@ -9,13 +8,13 @@ stdenv.mkDerivation rec {
     sha256 = "1m3971z4z1wr0paggprfz0n8ng8vsnkc9m6s3bdplgyz7qjk6jwx";
   };
 
-  buildInputs = [ makeWrapper perl LWP URI HTMLParser ];
-  checkInputs = [ HTTPServerSimple Parent ];
+  buildInputs = [ makeWrapper perlPackages.perl perlPackages.LWP perlPackages.URI perlPackages.HTMLParser ];
+  checkInputs = [ perlPackages.HTTPServerSimple perlPackages.Parent ];
 
   configurePhase = ''
     for i in swec tests/{runTests,testServer}
     do
-      sed -i "$i" -e's|/usr/bin/perl|${perl}/bin/perl|g'
+      sed -i "$i" -e's|/usr/bin/perl|${perlPackages.perl}/bin/perl|g'
     done
   '';
 
@@ -29,9 +28,7 @@ stdenv.mkDerivation rec {
     sed -i "$out/bin/swec" -e"s|realpath(\$0)|'$out/share/${name}/swec'|g"
 
     wrapProgram "$out/bin/swec" \
-      --prefix PERL5LIB : \
-      ${stdenv.lib.concatStringsSep ":"
-          (map (x: "${x}/lib/perl5/site_perl") [ LWP URI HTMLParser ])}
+      --prefix PERL5LIB : ${with perlPackages; makePerlPath [ LWP URI HTMLParser ]}
   '';
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/tools/networking/tcpreplay/default.nix b/nixpkgs/pkgs/tools/networking/tcpreplay/default.nix
index 23f061445021..a977a83e23f0 100644
--- a/nixpkgs/pkgs/tools/networking/tcpreplay/default.nix
+++ b/nixpkgs/pkgs/tools/networking/tcpreplay/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "tcpreplay-${version}";
-  version = "4.3.0";
+  version = "4.3.1";
 
   src = fetchurl {
     url = "https://github.com/appneta/tcpreplay/releases/download/v${version}/tcpreplay-${version}.tar.gz";
-    sha256 = "17y7ga2r9pc0xi2lwg82r4xlmhg5gdn5n1ddlpazzw59hda9yp4k";
+    sha256 = "0d2ywaxq0iaa1kfhgsfhsk1c4w4lakxafsw90dn4m6k82486dflm";
   };
 
   buildInputs = [ libpcap ];
diff --git a/nixpkgs/pkgs/tools/networking/tinc/pre.nix b/nixpkgs/pkgs/tools/networking/tinc/pre.nix
index 0cc1fb99455a..4c3c428d3f01 100644
--- a/nixpkgs/pkgs/tools/networking/tinc/pre.nix
+++ b/nixpkgs/pkgs/tools/networking/tinc/pre.nix
@@ -39,6 +39,6 @@ stdenv.mkDerivation rec {
     homepage="http://www.tinc-vpn.org/";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ wkennington fpletz lassulus ];
+    maintainers = with maintainers; [ fpletz lassulus ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/twa/default.nix b/nixpkgs/pkgs/tools/networking/twa/default.nix
index 8f462dc41b49..018ce5407b1d 100644
--- a/nixpkgs/pkgs/tools/networking/twa/default.nix
+++ b/nixpkgs/pkgs/tools/networking/twa/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   name = "twa-${version}";
-  version = "1.6.2";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     owner = "trailofbits";
     repo = "twa";
     rev = version;
-    sha256 = "0b3wg6ia4dbf47baz3c6jinsi31n8iq7jrlsq86jr2ncggq7hlhj";
+    sha256 = "10ayxaf8x9md3ijx2w7h1ysnk8ky20crg3kq6ishia6fgsl33g2p";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/tools/networking/ubridge/default.nix b/nixpkgs/pkgs/tools/networking/ubridge/default.nix
new file mode 100644
index 000000000000..91ab22a3c5a0
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/ubridge/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub
+, libpcap
+}:
+
+stdenv.mkDerivation rec {
+  name = "ubridge-${version}";
+  version = "0.9.14";
+
+  src = fetchFromGitHub {
+    owner = "GNS3";
+    repo = "ubridge";
+    rev = "v${version}";
+    sha256 = "1m3j9jfj8fm0532jhaagqgsyr241j6z9wn8lgrl7q3973rhiahfs";
+  };
+
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace "/usr/local/bin" "$out/bin" \
+      --replace "setcap" "#setcap"
+  '';
+
+  buildInputs = [ libpcap ];
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Bridge for UDP tunnels, Ethernet, TAP, and VMnet interfaces";
+    longDescription = ''
+      uBridge is a simple application to create user-land bridges between
+      various technologies. Currently bridging between UDP tunnels, Ethernet
+      and TAP interfaces is supported. Packet capture is also supported.
+    '';
+    inherit (src.meta) homepage;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ primeos ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/unbound/default.nix b/nixpkgs/pkgs/tools/networking/unbound/default.nix
index 4da6f6e177be..0c7acaad49fe 100644
--- a/nixpkgs/pkgs/tools/networking/unbound/default.nix
+++ b/nixpkgs/pkgs/tools/networking/unbound/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "unbound-${version}";
-  version = "1.8.1";
+  version = "1.8.3";
 
   src = fetchurl {
     url = "https://unbound.net/downloads/${name}.tar.gz";
-    sha256 = "0p9w6spar5dfi7fplxjcq4394wldabaws0ns30cqq6sxqfwv6qn3";
+    sha256 = "1k6fljr7k721vg2ivn5dfr0hs1kn8p1sm003glgd9ypd261jns9b";
   };
 
   outputs = [ "out" "lib" "man" ]; # "dev" would only split ~20 kB
diff --git a/nixpkgs/pkgs/tools/networking/unbound/python.nix b/nixpkgs/pkgs/tools/networking/unbound/python.nix
index 67e6f2e9c43f..c20169d39135 100644
--- a/nixpkgs/pkgs/tools/networking/unbound/python.nix
+++ b/nixpkgs/pkgs/tools/networking/unbound/python.nix
@@ -19,7 +19,7 @@ in stdenv.mkDerivation rec {
     --replace "\$(LIBTOOL) --mode=install cp _unbound.la" "cp _unbound.la"
     '';
 
-  preConfigure = "export PYTHON_VERSION=${python.majorVersion}";
+  preConfigure = "export PYTHON_VERSION=${python.pythonVersion}";
 
   configureFlags = [
     "--with-ssl=${openssl.dev}"
@@ -46,13 +46,13 @@ in stdenv.mkDerivation rec {
 
   # All we want is the Unbound Python module
   postInstall = ''
-    # Generate the built in root anchor and root key and store these in a logical place 
+    # Generate the built in root anchor and root key and store these in a logical place
     # to be used by tools depending only on the Python module
     $out/bin/unbound-anchor -l | head -1 > $out/etc/${pname}/root.anchor
     $out/bin/unbound-anchor -l | tail --lines=+2 - > $out/etc/${pname}/root.key
     # We don't need anything else
     rm -fR $out/bin $out/share $out/include $out/etc/unbound
-    patchelf --replace-needed libunbound.so.2 $out/${python.sitePackages}/libunbound.so.2 $out/${python.sitePackages}/_unbound.so 
+    patchelf --replace-needed libunbound.so.2 $out/${python.sitePackages}/libunbound.so.2 $out/${python.sitePackages}/_unbound.so
     '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/networking/urlwatch/default.nix b/nixpkgs/pkgs/tools/networking/urlwatch/default.nix
index c9de3f8ea574..fc77846efc39 100644
--- a/nixpkgs/pkgs/tools/networking/urlwatch/default.nix
+++ b/nixpkgs/pkgs/tools/networking/urlwatch/default.nix
@@ -2,17 +2,18 @@
 
 python3Packages.buildPythonApplication rec {
   name = "urlwatch-${version}";
-  version = "2.15";
+  version = "2.16";
 
   src = fetchFromGitHub {
     owner  = "thp";
     repo   = "urlwatch";
     rev    = version;
-    sha256 = "1bkd0r5arzdvinpn1n23cw1gf7byxml95hl6qvvf6mnggb1ifcwg";
+    sha256 = "1bkwr151bnv72aka2r9jwaq8lkz1p6031wr5pss4sij978qn5xld";
   };
 
   propagatedBuildInputs = with python3Packages; [
     appdirs
+    cssselect
     keyring
     lxml
     minidb
diff --git a/nixpkgs/pkgs/tools/networking/wavemon/default.nix b/nixpkgs/pkgs/tools/networking/wavemon/default.nix
index a4c707442345..fefff8573816 100644
--- a/nixpkgs/pkgs/tools/networking/wavemon/default.nix
+++ b/nixpkgs/pkgs/tools/networking/wavemon/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, ncurses, libnl, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  version = "0.8.2";
+  version = "0.9.0";
   baseName = "wavemon";
   name = "${baseName}-${version}";
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     owner = "uoaerg";
     repo = "wavemon";
     rev = "v${version}";
-    sha256 = "0rqpp7rhl9rlwnihsapaiy62v33h45fm3d0ia2nhdjw7fwkwcqvs";
+    sha256 = "07cid0h3mcyr74nnrzzf8k5n1p9a4y3wij43jbiaqmkpxilcc1i6";
   };
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/networking/wget/default.nix b/nixpkgs/pkgs/tools/networking/wget/default.nix
index 077e440d27a3..57ab0bab5167 100644
--- a/nixpkgs/pkgs/tools/networking/wget/default.nix
+++ b/nixpkgs/pkgs/tools/networking/wget/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, gettext, pkgconfig, perl
+{ stdenv, fetchurl, gettext, pkgconfig, perlPackages
 , libidn2, zlib, pcre, libuuid, libiconv, libintl
-, IOSocketSSL, LWP, python3, lzip
+, python3, lzip
 , libpsl ? null
 , openssl ? null }:
 
 stdenv.mkDerivation rec {
   name = "wget-${version}";
-  version = "1.20";
+  version = "1.20.1";
 
   src = fetchurl {
     url = "mirror://gnu/wget/${name}.tar.lz";
-    sha256 = "07k8yd8rdn27x5fbzlnsz4db7z7qnisiqhs7r1b5wzy2b9b0zf5h";
+    sha256 = "0a29qsqxkk8145vkyy35q5a1wc7qzwx3qj3gmfrkmi9xs96yhqqg";
   };
 
   patches = [
@@ -28,12 +28,12 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  nativeBuildInputs = [ gettext pkgconfig perl lzip libiconv libintl ];
+  nativeBuildInputs = [ gettext pkgconfig perlPackages.perl lzip libiconv libintl ];
   buildInputs = [ libidn2 zlib pcre libuuid ]
-    ++ stdenv.lib.optionals doCheck [ IOSocketSSL LWP python3 ]
+    ++ stdenv.lib.optionals doCheck [ perlPackages.IOSocketSSL perlPackages.LWP python3 ]
     ++ stdenv.lib.optional (openssl != null) openssl
     ++ stdenv.lib.optional (libpsl != null) libpsl
-    ++ stdenv.lib.optional stdenv.isDarwin perl;
+    ++ stdenv.lib.optional stdenv.isDarwin perlPackages.perl;
 
   configureFlags = [
     (stdenv.lib.withFeatureAs (openssl != null) "ssl" "openssl")
diff --git a/nixpkgs/pkgs/tools/networking/whois/default.nix b/nixpkgs/pkgs/tools/networking/whois/default.nix
index f668998de7fd..6b944ee3ffc4 100644
--- a/nixpkgs/pkgs/tools/networking/whois/default.nix
+++ b/nixpkgs/pkgs/tools/networking/whois/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, perl, gettext, pkgconfig, libidn2, libiconv }:
 
 stdenv.mkDerivation rec {
-  version = "5.4.0";
+  version = "5.4.1";
   name = "whois-${version}";
 
   src = fetchFromGitHub {
     owner = "rfc1036";
     repo = "whois";
     rev = "v${version}";
-    sha256 = "1n90qpy079x97a27zpckc0vnaqrdjsxgy0hsz0z8gbrc1sy30sdz";
+    sha256 = "01pfil456q3241awilszx5iq1x6kr1rddkraj8yyxyab45l2ssk9";
   };
 
   nativeBuildInputs = [ perl gettext pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/networking/wireguard-tools/default.nix b/nixpkgs/pkgs/tools/networking/wireguard-tools/default.nix
index 07b75737a355..54210469fba8 100644
--- a/nixpkgs/pkgs/tools/networking/wireguard-tools/default.nix
+++ b/nixpkgs/pkgs/tools/networking/wireguard-tools/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchzip, libmnl ? null, makeWrapper ? null, wireguard-go ? null }:
+{ stdenv, fetchzip, openresolv ? null, libmnl ? null, procps ? null, iproute ? null, makeWrapper ? null, wireguard-go ? null }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "wireguard-tools-${version}";
-  version = "0.0.20181218";
+  version = "0.0.20190123";
 
   src = fetchzip {
     url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz";
-    sha256 = "15lch0s4za7q5mr0dzdzwfsr7pr2i9gjygmpdnidwlx4z72vsajj";
+    sha256 = "1lyl3nmsgp9jk9js3vz032vdx7cg9ynkwzdr19wrr26pkxhpcnxr";
   };
 
   sourceRoot = "source/src/tools";
 
-  nativeBuildInputs = optional stdenv.isDarwin makeWrapper;
+  nativeBuildInputs = [ makeWrapper ];
   buildInputs = optional stdenv.isLinux libmnl;
 
   makeFlags = [
@@ -27,6 +27,10 @@ stdenv.mkDerivation rec {
   postFixup = ''
     substituteInPlace $out/lib/systemd/system/wg-quick@.service \
       --replace /usr/bin $out/bin
+  '' + optionalString stdenv.isLinux ''
+    for f in $out/bin/*; do
+      wrapProgram $f --prefix PATH : ${makeBinPath [procps iproute openresolv]}
+    done
   '' + optionalString stdenv.isDarwin ''
     for f in $out/bin/*; do
       wrapProgram $f --prefix PATH : ${wireguard-go}/bin
diff --git a/nixpkgs/pkgs/tools/package-management/apt/default.nix b/nixpkgs/pkgs/tools/package-management/apt/default.nix
index abd5e6f2f4fb..46da85d97488 100644
--- a/nixpkgs/pkgs/tools/package-management/apt/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/apt/default.nix
@@ -1,9 +1,8 @@
-{ stdenv, lib, fetchzip, pkgconfig, cmake, perl, curl, gtest, lzma, bzip2 , lz4
+{ stdenv, lib, fetchzip, pkgconfig, cmake, perlPackages, curl, gtest, lzma, bzip2, lz4
 , db, dpkg, libxslt, docbook_xsl, docbook_xml_dtd_45
 
 # used when WITH_DOC=ON
 , w3m
-, Po4a
 , doxygen
 
 # used when WITH_NLS=ON
@@ -27,9 +26,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   buildInputs = [
-    cmake perl curl gtest lzma bzip2 lz4 db dpkg libxslt.bin
+    cmake perlPackages.perl curl gtest lzma bzip2 lz4 db dpkg libxslt.bin
   ] ++ lib.optionals withDocs [
-    doxygen Po4a w3m docbook_xml_dtd_45
+    doxygen perlPackages.Po4a w3m docbook_xml_dtd_45
   ] ++ lib.optionals withNLS [
     gettext
   ];
diff --git a/nixpkgs/pkgs/tools/package-management/bunny/default.nix b/nixpkgs/pkgs/tools/package-management/bunny/default.nix
index cb99e5af055b..0f45084f3c05 100644
--- a/nixpkgs/pkgs/tools/package-management/bunny/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/bunny/default.nix
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
     homepage = https://gitlab.com/tim241/bunny;
     license = licenses.gpl3;
     platforms = platforms.all;
-    maintainers = with maintainers; [ countingsort ];
+    maintainers = with maintainers; [ buffet ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/package-management/dpkg/default.nix b/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
index 8cb8237c538c..3ab7aa99c8df 100644
--- a/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "dpkg-${version}";
-  version = "1.19.2";
+  version = "1.19.4";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/d/dpkg/dpkg_${version}.tar.xz";
-    sha256 = "0w8vhvwnhvwq3k3cw9d1jiy61v4r81wv6q5rkliq2nq6z0naxwpq";
+    sha256 = "1bp0zq3h1ad6rzljmmalkh9ms4y6znk1gmgjpy39as2mhvlk8ln1";
   };
 
   configureFlags = [
diff --git a/nixpkgs/pkgs/tools/package-management/nix-review/default.nix b/nixpkgs/pkgs/tools/package-management/nix-review/default.nix
index 5481182fbd1d..a57056569c08 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-review/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-review/default.nix
@@ -8,13 +8,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "nix-review";
-  version = "1.0.2";
+  version = "1.0.5";
 
   src = fetchFromGitHub {
     owner = "Mic92";
     repo = "nix-review";
     rev = version;
-    sha256 = "0vgar8sb2471zipxa1cw0n90mrnn5da7wqdlxhamnkrylbh0mc0d";
+    sha256 = "13dv2zpnhf218hfmixsgsbvy9zgrp7b0d125hvq8sk5x57f6114q";
   };
 
   makeWrapperArgs = [
diff --git a/nixpkgs/pkgs/tools/package-management/nix-universal-prefetch/default.nix b/nixpkgs/pkgs/tools/package-management/nix-universal-prefetch/default.nix
new file mode 100644
index 000000000000..a4e43f149677
--- /dev/null
+++ b/nixpkgs/pkgs/tools/package-management/nix-universal-prefetch/default.nix
@@ -0,0 +1,32 @@
+{ stdenv
+, fetchFromGitHub
+, ruby
+}:
+
+# No gems used, so mkDerivation is fine.
+stdenv.mkDerivation rec {
+  pname = "nix-universal-prefetch";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "samueldr";
+    repo = "nix-universal-prefetch";
+    rev = "v${version}";
+    sha256 = "1id9iaibrm2d3fa9dkcxnb3sd0j1vh502181gdd199a1cfsmzh1i";
+  };
+
+  installPhase = ''
+    mkdir -pv $out/bin
+    cp nix-universal-prefetch $out/bin/nix-universal-prefetch
+    substituteInPlace "$out/bin/nix-universal-prefetch" \
+      --replace "/usr/bin/env nix-shell" "${ruby}/bin/ruby"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Uses nixpkgs fetchers to figure out hashes";
+    homepage = https://github.com/samueldr/nix-universal-prefetch;
+    license = licenses.mit;
+    maintainers = with maintainers; [ samueldr ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/package-management/nix/default.nix b/nixpkgs/pkgs/tools/package-management/nix/default.nix
index e6beee0b38ce..d86dfa316193 100644
--- a/nixpkgs/pkgs/tools/package-management/nix/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchFromGitHub, fetchpatch, perl, curl, bzip2, sqlite, openssl ? null, xz
-, pkgconfig, boehmgc, perlPackages, libsodium, brotli, boost
+, pkgconfig, boehmgc, perlPackages, libsodium, brotli, boost, editline
 , autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns
 , busybox-sandbox-shell
 , storeDir ? "/nix/store"
@@ -13,165 +13,163 @@ let
 
   sh = busybox-sandbox-shell;
 
-  common = { name, suffix ? "", src, fromGit ? false }: stdenv.mkDerivation rec {
-    inherit name src;
-    version = lib.getVersion name;
-
-    is20 = lib.versionAtLeast version "2.0pre";
-
-    VERSION_SUFFIX = lib.optionalString fromGit suffix;
-
-    outputs = [ "out" "dev" "man" "doc" ];
-
-    nativeBuildInputs =
-      [ pkgconfig ]
-      ++ lib.optionals (!is20) [ curl perl ]
-      ++ lib.optionals fromGit [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook_xsl_ns ];
-
-    buildInputs = [ curl openssl sqlite xz bzip2 ]
-      ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
-      ++ lib.optionals is20 [ brotli boost ]
-      ++ lib.optional withLibseccomp libseccomp
-      ++ lib.optional (withAWS && is20)
-          ((aws-sdk-cpp.override {
-            apis = ["s3" "transfer"];
-            customMemoryManagement = false;
-          }).overrideDerivation (args: {
-            patches = args.patches or [] ++ [(fetchpatch {
-              url = https://github.com/edolstra/aws-sdk-cpp/commit/7d58e303159b2fb343af9a1ec4512238efa147c7.patch;
-              sha256 = "103phn6kyvs1yc7fibyin3lgxz699qakhw671kl207484im55id1";
-            })];
-          }));
-
-    propagatedBuildInputs = [ boehmgc ];
-
-    # Seems to be required when using std::atomic with 64-bit types
-    NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.system == "armv6l-linux") "-latomic";
-
-    preConfigure =
-      # Copy libboost_context so we don't get all of Boost in our closure.
-      # https://github.com/NixOS/nixpkgs/issues/45462
-      if is20 then ''
-        mkdir -p $out/lib
-        cp ${boost}/lib/libboost_context* $out/lib
-      '' else ''
-        configureFlagsArray+=(BDW_GC_LIBS="-lgc -lgccpp")
+  common = { name, suffix ? "", src, fromGit ? false }:
+    let nix = stdenv.mkDerivation rec {
+      inherit name src;
+      version = lib.getVersion name;
+
+      is20 = lib.versionAtLeast version "2.0pre";
+
+      VERSION_SUFFIX = lib.optionalString fromGit suffix;
+
+      outputs = [ "out" "dev" "man" "doc" ];
+
+      nativeBuildInputs =
+        [ pkgconfig ]
+        ++ lib.optionals (!is20) [ curl perl ]
+        ++ lib.optionals fromGit [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook_xsl_ns ];
+
+      buildInputs = [ curl openssl sqlite xz bzip2 ]
+        ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
+        ++ lib.optionals is20 [ brotli boost editline ]
+        ++ lib.optional withLibseccomp libseccomp
+        ++ lib.optional (withAWS && is20)
+            ((aws-sdk-cpp.override {
+              apis = ["s3" "transfer"];
+              customMemoryManagement = false;
+            }).overrideDerivation (args: {
+              patches = args.patches or [] ++ [(fetchpatch {
+                url = https://github.com/edolstra/aws-sdk-cpp/commit/7d58e303159b2fb343af9a1ec4512238efa147c7.patch;
+                sha256 = "103phn6kyvs1yc7fibyin3lgxz699qakhw671kl207484im55id1";
+              })];
+            }));
+
+      propagatedBuildInputs = [ boehmgc ];
+
+      # Seems to be required when using std::atomic with 64-bit types
+      NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.system == "armv6l-linux") "-latomic";
+
+      preConfigure =
+        # Copy libboost_context so we don't get all of Boost in our closure.
+        # https://github.com/NixOS/nixpkgs/issues/45462
+        if is20 then ''
+          mkdir -p $out/lib
+          cp ${boost}/lib/libboost_context* $out/lib
+        '' else ''
+          configureFlagsArray+=(BDW_GC_LIBS="-lgc -lgccpp")
+        '';
+
+      configureFlags =
+        [ "--with-store-dir=${storeDir}"
+          "--localstatedir=${stateDir}"
+          "--sysconfdir=${confDir}"
+          "--disable-init-state"
+          "--enable-gc"
+        ]
+        ++ lib.optionals (!is20) [
+          "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
+          "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
+          "--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}"
+        ] ++ lib.optionals (is20 && stdenv.isLinux) [
+          "--with-sandbox-shell=${sh}/bin/busybox"
+        ]
+        ++ lib.optional (
+            stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform ? nix && stdenv.hostPlatform.nix ? system
+        ) ''--with-system=${stdenv.hostPlatform.nix.system}''
+           # RISC-V support in progress https://github.com/seccomp/libseccomp/pull/50
+        ++ lib.optional (!withLibseccomp) "--disable-seccomp-sandboxing";
+
+      makeFlags = "profiledir=$(out)/etc/profile.d";
+
+      installFlags = "sysconfdir=$(out)/etc";
+
+      doInstallCheck = true; # not cross
+
+      # socket path becomes too long otherwise
+      preInstallCheck = lib.optional stdenv.isDarwin ''
+        export TMPDIR=$NIX_BUILD_TOP
       '';
 
-    configureFlags =
-      [ "--with-store-dir=${storeDir}"
-        "--localstatedir=${stateDir}"
-        "--sysconfdir=${confDir}"
-        "--disable-init-state"
-        "--enable-gc"
-      ]
-      ++ lib.optionals (!is20) [
-        "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
-        "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
-        "--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}"
-      ] ++ lib.optionals (is20 && stdenv.isLinux) [
-        "--with-sandbox-shell=${sh}/bin/busybox"
-      ]
-      ++ lib.optional (
-          stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform ? nix && stdenv.hostPlatform.nix ? system
-      ) ''--with-system=${stdenv.hostPlatform.nix.system}''
-         # RISC-V support in progress https://github.com/seccomp/libseccomp/pull/50
-      ++ lib.optional (!withLibseccomp) "--disable-seccomp-sandboxing";
-
-    makeFlags = "profiledir=$(out)/etc/profile.d";
-
-    installFlags = "sysconfdir=$(out)/etc";
-
-    doInstallCheck = true; # not cross
-
-    # socket path becomes too long otherwise
-    preInstallCheck = lib.optional stdenv.isDarwin ''
-      export TMPDIR=$NIX_BUILD_TOP
-    '';
-
-    separateDebugInfo = stdenv.isLinux;
-
-    enableParallelBuilding = true;
-
-    meta = {
-      description = "Powerful package manager that makes package management reliable and reproducible";
-      longDescription = ''
-        Nix is a powerful package manager for Linux and other Unix systems that
-        makes package management reliable and reproducible. It provides atomic
-        upgrades and rollbacks, side-by-side installation of multiple versions of
-        a package, multi-user package management and easy setup of build
-        environments.
-      '';
-      homepage = https://nixos.org/;
-      license = stdenv.lib.licenses.lgpl2Plus;
-      maintainers = [ stdenv.lib.maintainers.eelco ];
-      platforms = stdenv.lib.platforms.all;
-      outputsToInstall = [ "out" "man" ];
+      separateDebugInfo = stdenv.isLinux;
+
+      enableParallelBuilding = true;
+
+      meta = {
+        description = "Powerful package manager that makes package management reliable and reproducible";
+        longDescription = ''
+          Nix is a powerful package manager for Linux and other Unix systems that
+          makes package management reliable and reproducible. It provides atomic
+          upgrades and rollbacks, side-by-side installation of multiple versions of
+          a package, multi-user package management and easy setup of build
+          environments.
+        '';
+        homepage = https://nixos.org/;
+        license = stdenv.lib.licenses.lgpl2Plus;
+        maintainers = [ stdenv.lib.maintainers.eelco ];
+        platforms = stdenv.lib.platforms.all;
+        outputsToInstall = [ "out" "man" ];
+      };
+
+      passthru = {
+        inherit fromGit;
+
+        perl-bindings = stdenv.mkDerivation {
+          name = "nix-perl-${version}";
+
+          inherit src;
+
+          postUnpack = "sourceRoot=$sourceRoot/perl";
+
+          # This is not cross-compile safe, don't have time to fix right now
+          # but noting for future travellers.
+          nativeBuildInputs =
+            [ perl pkgconfig curl nix libsodium ]
+            ++ lib.optionals fromGit [ autoreconfHook autoconf-archive ]
+            ++ lib.optional is20 boost;
+
+          configureFlags =
+            [ "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
+              "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
+            ];
+
+          preConfigure = "export NIX_STATE_DIR=$TMPDIR";
+
+          preBuild = "unset NIX_INDENT_MAKE";
+        };
+      };
     };
-
-    passthru = { inherit fromGit; };
-  };
-
-  perl-bindings = { nix, needsBoost ? false }: stdenv.mkDerivation {
-    name = "nix-perl-" + nix.version;
-
-    inherit (nix) src;
-
-    postUnpack = "sourceRoot=$sourceRoot/perl";
-
-    # This is not cross-compile safe, don't have time to fix right now
-    # but noting for future travellers.
-    nativeBuildInputs =
-      [ perl pkgconfig curl nix libsodium ]
-      ++ lib.optionals nix.fromGit [ autoreconfHook autoconf-archive ]
-      ++ lib.optional needsBoost boost;
-
-    configureFlags =
-      [ "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
-        "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
-      ];
-
-    preConfigure = "export NIX_STATE_DIR=$TMPDIR";
-
-    preBuild = "unset NIX_INDENT_MAKE";
-  };
+  in nix;
 
 in rec {
 
   nix = nixStable;
 
-  nix1 = (common rec {
+  nix1 = common rec {
     name = "nix-1.11.16";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
       sha256 = "0ca5782fc37d62238d13a620a7b4bff6a200bab1bd63003709249a776162357c";
     };
-  }) // { perl-bindings = nix1; };
+  };
 
-  nixStable = (common rec {
-    name = "nix-2.1.3";
+  nixStable = common rec {
+    name = "nix-2.2";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-      sha256 = "5d22dad058d5c800d65a115f919da22938c50dd6ba98c5e3a183172d149840a4";
+      sha256 = "63238d00d290b8a93925891fc9164439d3941e2ccc569bf7f7ca32f53c3ec0c7";
     };
-  }) // { perl-bindings = perl-bindings {
-    nix = nixStable;
-    needsBoost = true;
-  }; };
+  };
 
-  nixUnstable = (lib.lowPrio (common rec {
+  nixUnstable = lib.lowPrio (common rec {
     name = "nix-2.2${suffix}";
-    suffix = "pre6526_9f99d624";
+    suffix = "pre6600_85488a93";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "9f99d62480cf7c58c0a110b180f2096b7d25adab";
-      sha256 = "0fkmx7gmgg0yij9kw52fkyvib88hj1jsj90vbpy13ccfwknh1044";
+      rev = "85488a93ec3b07210339f2b05aa93e970f9ac3be";
+      sha256 = "1n5dp7p2lzpnj7f834d25k020v16gnnsm56jz46y87v2x7b69ccm";
     };
     fromGit = true;
-  })) // { perl-bindings = perl-bindings {
-    nix = nixUnstable;
-    needsBoost = true;
-  }; };
+  });
 
 }
diff --git a/nixpkgs/pkgs/tools/package-management/nixops/default.nix b/nixpkgs/pkgs/tools/package-management/nixops/default.nix
index ec82115087b7..56e0a31a97ec 100644
--- a/nixpkgs/pkgs/tools/package-management/nixops/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixops/default.nix
@@ -1,9 +1,9 @@
 { callPackage, fetchurl }:
 
 callPackage ./generic.nix (rec {
-  version = "1.6";
+  version = "1.6.1";
   src = fetchurl {
     url = "http://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2";
-    sha256 = "0f8ql1a9maf9swl8q054b1haxqckdn78p2xgpwl7paxc98l67i7x";
+    sha256 = "0lfx5fhyg3z6725ydsk0ibg5qqzp5s0x9nbdww02k8s307axiah3";
   };
 })
diff --git a/nixpkgs/pkgs/tools/package-management/nixops/generic.nix b/nixpkgs/pkgs/tools/package-management/nixops/generic.nix
index bc55f99aa81a..2ce7f9858a5b 100644
--- a/nixpkgs/pkgs/tools/package-management/nixops/generic.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixops/generic.nix
@@ -1,4 +1,4 @@
-{ lib, python2Packages, libxslt, docbook_xsl_ns, openssh
+{ lib, python2Packages, libxslt, docbook_xsl_ns, openssh, cacert
 # version args
 , src, version
 }:
@@ -29,7 +29,13 @@ python2Packages.buildPythonApplication {
       typing
     ];
 
-  doCheck = false;
+  checkPhase =
+  # Ensure, that there are no (python) import errors
+  ''
+    SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt \
+    HOME=$(pwd) \
+      $out/bin/nixops --version
+  '';
 
   postInstall = ''
     make -C doc/manual install nixops.1 docbookxsl=${docbook_xsl_ns}/xml/xsl/docbook \
diff --git a/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix b/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix
index b5487f5b11d2..dc71914f087b 100644
--- a/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix
@@ -5,9 +5,9 @@
 # Then copy the URL to the tarball.
 
 callPackage ./generic.nix (rec {
-  version = "1.6.1pre2706_d5ad09c";
+  version = "1.6.1pre2728_8ed39f9";
   src = fetchurl {
-    url = "https://hydra.nixos.org/build/84098258/download/2/nixops-${version}.tar.bz2";
-    sha256 = "0lr963a0bjrblv0d1nfl4d0p76jkq6l9xj3vxgzg38q0ld5qw345";
+    url = "https://hydra.nixos.org/build/88329589/download/2/nixops-${version}.tar.bz2";
+    sha256 = "1ppnhqmsbiijm6r77h86abv3fjny5iq35yvj207s520kjwzaj7kc";
   };
 })
diff --git a/nixpkgs/pkgs/tools/package-management/opkg/default.nix b/nixpkgs/pkgs/tools/package-management/opkg/default.nix
index 677dbda7b495..df1fe5f80f2f 100644
--- a/nixpkgs/pkgs/tools/package-management/opkg/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/opkg/default.nix
@@ -2,11 +2,11 @@
 , autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.6";
+  version = "0.4.0";
   name = "opkg-${version}";
   src = fetchurl {
     url = "https://downloads.yoctoproject.org/releases/opkg/opkg-${version}.tar.gz";
-    sha256 = "02ykhjpyxmh0qrqvc1s3vlhnr6wyxkcwqb8dplxqmkz83gkg01zn";
+    sha256 = "1zp6gyggqv359myagjsr0knq66ax64q3irx889kqzbd2v0ahbh7n";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/package-management/pacman/default.nix b/nixpkgs/pkgs/tools/package-management/pacman/default.nix
index 461e8ff1ec5d..b0b288b276a8 100644
--- a/nixpkgs/pkgs/tools/package-management/pacman/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/pacman/default.nix
@@ -3,15 +3,19 @@ zlib, bzip2, lzma }:
 
 stdenv.mkDerivation rec {
   name = "pacman-${version}";
-  version = "5.1.1";
+  version = "5.1.2";
 
   src = fetchurl {
     url = "https://git.archlinux.org/pacman.git/snapshot/pacman-${version}.tar.gz";
-    sha256 = "17g497q6ylq73rql9k2ji2l2b2bj3dd4am30z8i6khnhc0x8s2il";
+    sha256 = "19fr60h0ffxzjxmlmhrfcq8447l0bkxnh64fwjagqn133d3dgd5x";
   };
 
-  # trying to build docs fails with a2x errors, unable to fix through asciidoc
-  configureFlags = [ "--disable-doc" ];
+  configureFlags = [
+    # trying to build docs fails with a2x errors, unable to fix through asciidoc
+    "--disable-doc"
+
+    "--localstatedir=/var"
+  ];
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ perl libarchive openssl zlib bzip2 lzma ];
diff --git a/nixpkgs/pkgs/tools/security/afl/default.nix b/nixpkgs/pkgs/tools/security/afl/default.nix
index 3476606049d1..c90d031e989b 100644
--- a/nixpkgs/pkgs/tools/security/afl/default.nix
+++ b/nixpkgs/pkgs/tools/security/afl/default.nix
@@ -3,79 +3,73 @@
 }:
 
 let
-  afl-qemu = callPackage ./qemu.nix {};
+  afl-qemu = callPackage ./qemu.nix { inherit afl; };
   qemu-exe-name = if stdenv.hostPlatform.system == "x86_64-linux" then "qemu-x86_64"
     else if stdenv.hostPlatform.system == "i686-linux" then "qemu-i386"
     else throw "afl: no support for ${stdenv.hostPlatform.system}!";
-in
+  afl = stdenv.mkDerivation rec {
+    name    = "afl-${version}";
+    version = "2.52b";
 
-stdenv.mkDerivation rec {
-  name    = "afl-${version}";
-  version = "2.52b";
+    src = fetchurl {
+      url    = "http://lcamtuf.coredump.cx/afl/releases/${name}.tgz";
+      sha256 = "0ig0ij4n1pwry5dw1hk4q88801jzzy2cric6y2gd6560j55lnqa3";
+    };
+    enableParallelBuilding = true;
 
-  src = fetchurl {
-    url    = "http://lcamtuf.coredump.cx/afl/releases/${name}.tgz";
-    sha256 = "0ig0ij4n1pwry5dw1hk4q88801jzzy2cric6y2gd6560j55lnqa3";
-  };
-
-  # Note: libcgroup isn't needed for building, just for the afl-cgroup
-  # script.
-  buildInputs  = [ makeWrapper llvm which ];
+    # Note: libcgroup isn't needed for building, just for the afl-cgroup
+    # script.
+    nativeBuildInputs = [ makeWrapper which ];
+    buildInputs = [ llvm ];
 
-  buildPhase   = ''
-    make PREFIX=$out
-    cd llvm_mode
-    make PREFIX=$out
-    cd ..
-  '';
-  installPhase = ''
-    # Do the normal installation
-    make install PREFIX=$out
-
-    # Install the custom QEMU emulator for binary blob fuzzing.
-    cp ${afl-qemu}/bin/${qemu-exe-name} $out/bin/afl-qemu-trace
+    makeFlags = [ "PREFIX=$(out)" ];
+    postBuild = ''
+      make -C llvm_mode $makeFlags -j$NIX_BUILD_CORES
+    '';
+    postInstall = ''
+      # Install the custom QEMU emulator for binary blob fuzzing.
+      cp ${afl-qemu}/bin/${qemu-exe-name} $out/bin/afl-qemu-trace
 
-    # Install the cgroups wrapper for asan-based fuzzing.
-    cp experimental/asan_cgroups/limit_memory.sh $out/bin/afl-cgroup
-    chmod +x $out/bin/afl-cgroup
-    substituteInPlace $out/bin/afl-cgroup \
-      --replace "cgcreate" "${libcgroup}/bin/cgcreate" \
-      --replace "cgexec"   "${libcgroup}/bin/cgexec" \
-      --replace "cgdelete" "${libcgroup}/bin/cgdelete"
+      # Install the cgroups wrapper for asan-based fuzzing.
+      cp experimental/asan_cgroups/limit_memory.sh $out/bin/afl-cgroup
+      chmod +x $out/bin/afl-cgroup
+      substituteInPlace $out/bin/afl-cgroup \
+        --replace "cgcreate" "${libcgroup}/bin/cgcreate" \
+        --replace "cgexec"   "${libcgroup}/bin/cgexec" \
+        --replace "cgdelete" "${libcgroup}/bin/cgdelete"
 
-    # Patch shebangs before wrapping
-    patchShebangs $out/bin
+      # Patch shebangs before wrapping
+      patchShebangs $out/bin
 
-    # Wrap afl-clang-fast(++) with a *different* AFL_PATH, because it
-    # has totally different semantics in that case(?) - and also set a
-    # proper AFL_CC and AFL_CXX so we don't pick up the wrong one out
-    # of $PATH.
-    for x in $out/bin/afl-clang-fast $out/bin/afl-clang-fast++; do
-      wrapProgram $x \
-        --prefix AFL_PATH : "$out/lib/afl" \
-        --run 'export AFL_CC=''${AFL_CC:-${clang}/bin/clang} AFL_CXX=''${AFL_CXX:-${clang}/bin/clang++}'
-    done
-  '';
+      # Wrap afl-clang-fast(++) with a *different* AFL_PATH, because it
+      # has totally different semantics in that case(?) - and also set a
+      # proper AFL_CC and AFL_CXX so we don't pick up the wrong one out
+      # of $PATH.
+      for x in $out/bin/afl-clang-fast $out/bin/afl-clang-fast++; do
+        wrapProgram $x \
+          --prefix AFL_PATH : "$out/lib/afl" \
+          --run 'export AFL_CC=''${AFL_CC:-${clang}/bin/clang} AFL_CXX=''${AFL_CXX:-${clang}/bin/clang++}'
+      done
+    '';
 
-  passthru = {
-    qemu = afl-qemu;
-  };
+    passthru.qemu = afl-qemu;
 
-  meta = {
-    description = "Powerful fuzzer via genetic algorithms and instrumentation";
-    longDescription = ''
-      American fuzzy lop is a fuzzer that employs a novel type of
-      compile-time instrumentation and genetic algorithms to
-      automatically discover clean, interesting test cases that
-      trigger new internal states in the targeted binary. This
-      substantially improves the functional coverage for the fuzzed
-      code. The compact synthesized corpora produced by the tool are
-      also useful for seeding other, more labor or resource-intensive
-      testing regimes down the road.
-    '';
-    homepage    = "http://lcamtuf.coredump.cx/afl/";
-    license     = stdenv.lib.licenses.asl20;
-    platforms   = ["x86_64-linux" "i686-linux"];
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    meta = {
+      description = "Powerful fuzzer via genetic algorithms and instrumentation";
+      longDescription = ''
+        American fuzzy lop is a fuzzer that employs a novel type of
+        compile-time instrumentation and genetic algorithms to
+        automatically discover clean, interesting test cases that
+        trigger new internal states in the targeted binary. This
+        substantially improves the functional coverage for the fuzzed
+        code. The compact synthesized corpora produced by the tool are
+        also useful for seeding other, more labor or resource-intensive
+        testing regimes down the road.
+      '';
+      homepage    = "http://lcamtuf.coredump.cx/afl/";
+      license     = stdenv.lib.licenses.asl20;
+      platforms   = ["x86_64-linux" "i686-linux"];
+      maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    };
   };
-}
+in afl
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-config.h b/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-config.h
deleted file mode 100644
index cbf48881ade2..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-config.h
+++ /dev/null
@@ -1,335 +0,0 @@
-/*
-   american fuzzy lop - vaguely configurable bits
-   ----------------------------------------------
-
-   Written and maintained by Michal Zalewski <lcamtuf@google.com>
-
-   Copyright 2013, 2014, 2015 Google Inc. All rights reserved.
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at:
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- */
-
-#ifndef _HAVE_CONFIG_H
-#define _HAVE_CONFIG_H
-
-#include "afl-types.h"
-
-/******************************************************
- *                                                    *
- *  Settings that may be of interest to power users:  *
- *                                                    *
- ******************************************************/
-
-/* Comment out to disable terminal colors: */
-
-#define USE_COLOR
-
-/* Comment out to disable fancy ANSI boxes and use poor man's 7-bit UI: */
-
-#define FANCY_BOXES
-
-/* Default timeout for fuzzed code (milliseconds): */
-
-#define EXEC_TIMEOUT        1000
-
-/* Timeout rounding factor when auto-scaling (milliseconds): */
-
-#define EXEC_TM_ROUND       20
-
-/* Default memory limit for child process (MB): */
-
-#ifndef __x86_64__ 
-#  define MEM_LIMIT         25
-#else
-#  define MEM_LIMIT         50
-#endif /* ^!__x86_64__ */
-
-/* Default memory limit when running in QEMU mode (MB): */
-
-#define MEM_LIMIT_QEMU      200
-
-/* Number of calibration cycles per every new test case (and for test
-   cases that show variable behavior): */
-
-#define CAL_CYCLES          10
-#define CAL_CYCLES_LONG     40
-
-/* The same, but when AFL_NO_VAR_CHECK is set in the environment: */
-
-#define CAL_CYCLES_NO_VAR   4
-
-/* Number of subsequent hangs before abandoning an input file: */
-
-#define HANG_LIMIT          250
-
-/* Maximum number of unique hangs or crashes to record: */
-
-#define KEEP_UNIQUE_HANG    500
-#define KEEP_UNIQUE_CRASH   5000
-
-/* Baseline number of random tweaks during a single 'havoc' stage: */
-
-#define HAVOC_CYCLES        5000
-
-/* Maximum multiplier for the above (should be a power of two, beware
-   of 32-bit int overflows): */
-
-#define HAVOC_MAX_MULT      16
-
-/* Absolute minimum number of havoc cycles (after all adjustments): */
-
-#define HAVOC_MIN           10
-
-/* Maximum stacking for havoc-stage tweaks. The actual value is calculated
-   like this: 
-
-   n = random between 1 and HAVOC_STACK_POW2
-   stacking = 2^n
-
-   In other words, the default (n = 7) produces 2, 4, 8, 16, 32, 64, or
-   128 stacked tweaks: */
-
-#define HAVOC_STACK_POW2    7
-
-/* Caps on block sizes for cloning and deletion operations. Each of these
-   ranges has a 33% probability of getting picked, except for the first
-   two cycles where smaller blocks are favored: */
-
-#define HAVOC_BLK_SMALL     32
-#define HAVOC_BLK_MEDIUM    128
-#define HAVOC_BLK_LARGE     1500
-
-/* Probabilities of skipping non-favored entries in the queue, expressed as
-   percentages: */
-
-#define SKIP_TO_NEW_PROB    99 /* ...when there are new, pending favorites */
-#define SKIP_NFAV_OLD_PROB  95 /* ...no new favs, cur entry already fuzzed */
-#define SKIP_NFAV_NEW_PROB  75 /* ...no new favs, cur entry not fuzzed yet */
-
-/* Splicing cycle count: */
-
-#define SPLICE_CYCLES       20
-
-/* Nominal per-splice havoc cycle length: */
-
-#define SPLICE_HAVOC        500
-
-/* Maximum offset for integer addition / subtraction stages: */
-
-#define ARITH_MAX           35
-
-/* Limits for the test case trimmer. The absolute minimum chunk size; and
-   the starting and ending divisors for chopping up the input file: */
-
-#define TRIM_MIN_BYTES      4
-#define TRIM_START_STEPS    16
-#define TRIM_END_STEPS      1024
-
-/* Maximum size of input file, in bytes (keep under 100MB): */
-
-#define MAX_FILE            (1 * 1024 * 1024)
-
-/* The same, for the test case minimizer: */
-
-#define TMIN_MAX_FILE       (10 * 1024 * 1024)
-
-/* Block normalization steps for afl-tmin: */
-
-#define TMIN_SET_MIN_SIZE   4
-#define TMIN_SET_STEPS      128
-
-/* Maximum dictionary token size (-x), in bytes: */
-
-#define MAX_DICT_FILE       128
-
-/* Length limits for auto-detected dictionary tokens: */
-
-#define MIN_AUTO_EXTRA      3
-#define MAX_AUTO_EXTRA      32
-
-/* Maximum number of user-specified dictionary tokens to use in deterministic
-   steps; past this point, the "extras/user" step will be still carried out,
-   but with proportionally lower odds: */
-
-#define MAX_DET_EXTRAS      200
-
-/* Maximum number of auto-extracted dictionary tokens to actually use in fuzzing
-   (first value), and to keep in memory as candidates. The latter should be much
-   higher than the former. */
-
-#define USE_AUTO_EXTRAS     50
-#define MAX_AUTO_EXTRAS     (USE_AUTO_EXTRAS * 10)
-
-/* Scaling factor for the effector map used to skip some of the more
-   expensive deterministic steps. The actual divisor is set to
-   2^EFF_MAP_SCALE2 bytes: */
-
-#define EFF_MAP_SCALE2      3
-
-/* Minimum input file length at which the effector logic kicks in: */
-
-#define EFF_MIN_LEN         128
-
-/* Maximum effector density past which everything is just fuzzed
-   unconditionally (%): */
-
-#define EFF_MAX_PERC        90
-
-/* UI refresh frequency (Hz): */
-
-#define UI_TARGET_HZ        5
-
-/* Fuzzer stats file and plot update intervals (sec): */
-
-#define STATS_UPDATE_SEC    60
-#define PLOT_UPDATE_SEC     5
-
-/* Smoothing divisor for CPU load and exec speed stats (1 - no smoothing). */
-
-#define AVG_SMOOTHING       16
-
-/* Sync interval (every n havoc cycles): */
-
-#define SYNC_INTERVAL       5
-
-/* Output directory reuse grace period (minutes): */
-
-#define OUTPUT_GRACE        25
-
-/* Uncomment to use simple file names (id_NNNNNN): */
-
-// #define SIMPLE_FILES
-
-/* List of interesting values to use in fuzzing. */
-
-#define INTERESTING_8 \
-  -128,          /* Overflow signed 8-bit when decremented  */ \
-  -1,            /*                                         */ \
-   0,            /*                                         */ \
-   1,            /*                                         */ \
-   16,           /* One-off with common buffer size         */ \
-   32,           /* One-off with common buffer size         */ \
-   64,           /* One-off with common buffer size         */ \
-   100,          /* One-off with common buffer size         */ \
-   127           /* Overflow signed 8-bit when incremented  */
-
-#define INTERESTING_16 \
-  -32768,        /* Overflow signed 16-bit when decremented */ \
-  -129,          /* Overflow signed 8-bit                   */ \
-   128,          /* Overflow signed 8-bit                   */ \
-   255,          /* Overflow unsig 8-bit when incremented   */ \
-   256,          /* Overflow unsig 8-bit                    */ \
-   512,          /* One-off with common buffer size         */ \
-   1000,         /* One-off with common buffer size         */ \
-   1024,         /* One-off with common buffer size         */ \
-   4096,         /* One-off with common buffer size         */ \
-   32767         /* Overflow signed 16-bit when incremented */
-
-#define INTERESTING_32 \
-  -2147483648LL, /* Overflow signed 32-bit when decremented */ \
-  -100663046,    /* Large negative number (endian-agnostic) */ \
-  -32769,        /* Overflow signed 16-bit                  */ \
-   32768,        /* Overflow signed 16-bit                  */ \
-   65535,        /* Overflow unsig 16-bit when incremented  */ \
-   65536,        /* Overflow unsig 16 bit                   */ \
-   100663045,    /* Large positive number (endian-agnostic) */ \
-   2147483647    /* Overflow signed 32-bit when incremented */
-
-/***********************************************************
- *                                                         *
- *  Really exotic stuff you probably don't want to touch:  *
- *                                                         *
- ***********************************************************/
-
-/* Call count interval between reseeding the libc PRNG from /dev/urandom: */
-
-#define RESEED_RNG          10000
-
-/* Maximum line length passed from GCC to 'as' and used for parsing
-   configuration files: */
-
-#define MAX_LINE            8192
-
-/* Environment variable used to pass SHM ID to the called program. */
-
-#define SHM_ENV_VAR         "__AFL_SHM_ID"
-
-/* Other less interesting, internal-only variables. */
-
-#define CLANG_ENV_VAR       "__AFL_CLANG_MODE"
-#define AS_LOOP_ENV_VAR     "__AFL_AS_LOOPCHECK"
-
-/* Distinctive bitmap signature used to indicate failed execution: */
-
-#define EXEC_FAIL_SIG       0xfee1dead
-
-/* Distinctive exit code used to indicate MSAN trip condition: */
-
-#define MSAN_ERROR          86
-
-/* Designated file descriptors for forkserver commands (the application will
-   use FORKSRV_FD and FORKSRV_FD + 1): */
-
-#define FORKSRV_FD          198
-
-/* Fork server init timeout multiplier: we'll wait the user-selected
-   timeout plus this much for the fork server to spin up. */
-
-#define FORK_WAIT_MULT      10
-
-/* Calibration timeout adjustments, to be a bit more generous when resuming
-   fuzzing sessions or trying to calibrate already-added internal finds.
-   The first value is a percentage, the other is in milliseconds: */
-
-#define CAL_TMOUT_PERC      125
-#define CAL_TMOUT_ADD       50
-
-/* Number of chances to calibrate a case before giving up: */
-
-#define CAL_CHANCES         3
-
-/* Map size for the traced binary (2^MAP_SIZE_POW2). Must be greater than
-   2; you probably want to keep it under 18 or so for performance reasons
-   (adjusting AFL_INST_RATIO when compiling is probably a better way to solve
-   problems with complex programs). You need to recompile the target binary
-   after changing this - otherwise, SEGVs may ensue. */
-
-#define MAP_SIZE_POW2       16
-#define MAP_SIZE            (1 << MAP_SIZE_POW2)
-
-/* Maximum allocator request size (keep well under INT_MAX): */
-
-#define MAX_ALLOC           0x40000000
-
-/* A made-up hashing seed: */
-
-#define HASH_CONST          0xa5b35705
-
-/* Constants for afl-gotcpu to control busy loop timing: */
-
-#define  CTEST_TARGET_MS    5000
-#define  CTEST_BUSY_CYCLES  (10 * 1000 * 1000)
-
-/* Uncomment this to use inferior block-coverage-based instrumentation. Note
-   that you need to recompile the target binary for this to have any effect: */
-
-// #define COVERAGE_ONLY
-
-/* Uncomment this to ignore hit counts and output just one bit per tuple.
-   As with the previous setting, you will need to recompile the target
-   binary: */
-
-// #define SKIP_COUNTS
-
-/* Uncomment this to use instrumentation data to record newly discovered paths,
-   but do not use them as seeds for fuzzing. This is useful for conveniently
-   measuring coverage that could be attained by a "dumb" fuzzing algorithm: */
-
-// #define IGNORE_FINDS
-
-#endif /* ! _HAVE_CONFIG_H */
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-qemu-cpu-inl.h b/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-qemu-cpu-inl.h
deleted file mode 100644
index e4a470b55230..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-qemu-cpu-inl.h
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
-   american fuzzy lop - high-performance binary-only instrumentation
-   -----------------------------------------------------------------
-
-   Written by Andrew Griffiths <agriffiths@google.com> and
-              Michal Zalewski <lcamtuf@google.com>
-
-   Idea & design very much by Andrew Griffiths.
-
-   Copyright 2015 Google Inc. All rights reserved.
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at:
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
-   This code is a shim patched into the separately-distributed source
-   code of QEMU 2.2.0. It leverages the built-in QEMU tracing functionality
-   to implement AFL-style instrumentation and to take care of the remaining
-   parts of the AFL fork server logic.
-
-   The resulting QEMU binary is essentially a standalone instrumentation
-   tool; for an example of how to leverage it for other purposes, you can
-   have a look at afl-showmap.c.
-
- */
-
-#include <sys/shm.h>
-#include "afl-config.h"
-
-/***************************
- * VARIOUS AUXILIARY STUFF *
- ***************************/
-
-/* A snippet patched into tb_find_slow to inform the parent process that
-   we have hit a new block that hasn't been translated yet, and to tell
-   it to translate within its own context, too (this avoids translation
-   overhead in the next forked-off copy). */
-
-#define AFL_QEMU_CPU_SNIPPET1 do { \
-    afl_request_tsl(pc, cs_base, flags); \
-  } while (0)
-
-/* This snippet kicks in when the instruction pointer is positioned at
-   _start and does the usual forkserver stuff, not very different from
-   regular instrumentation injected via afl-as.h. */
-
-#define AFL_QEMU_CPU_SNIPPET2 do { \
-    if(tb->pc == afl_entry_point) { \
-      afl_setup(); \
-      afl_forkserver(env); \
-    } \
-    afl_maybe_log(tb->pc); \
-  } while (0)
-
-/* We use one additional file descriptor to relay "needs translation"
-   messages between the child and the fork server. */
-
-#define TSL_FD (FORKSRV_FD - 1)
-
-/* This is equivalent to afl-as.h: */
-
-static unsigned char *afl_area_ptr;
-
-/* Exported variables populated by the code patched into elfload.c: */
-
-abi_ulong afl_entry_point, /* ELF entry point (_start) */
-          afl_start_code,  /* .text start pointer      */
-          afl_end_code;    /* .text end pointer        */
-
-/* Set in the child process in forkserver mode: */
-
-static unsigned char afl_fork_child;
-unsigned int afl_forksrv_pid;
-
-/* Instrumentation ratio: */
-
-static unsigned int afl_inst_rms = MAP_SIZE;
-
-/* Function declarations. */
-
-static void afl_setup(void);
-static void afl_forkserver(CPUArchState*);
-static inline void afl_maybe_log(abi_ulong);
-
-static void afl_wait_tsl(CPUArchState*, int);
-static void afl_request_tsl(target_ulong, target_ulong, uint64_t);
-
-static TranslationBlock *tb_find_slow(CPUArchState*, target_ulong,
-                                      target_ulong, uint64_t);
-
-
-/* Data structure passed around by the translate handlers: */
-
-struct afl_tsl {
-  target_ulong pc;
-  target_ulong cs_base;
-  uint64_t flags;
-};
-
-
-/*************************
- * ACTUAL IMPLEMENTATION *
- *************************/
-
-
-/* Set up SHM region and initialize other stuff. */
-
-static void afl_setup(void) {
-
-  char *id_str = getenv(SHM_ENV_VAR),
-       *inst_r = getenv("AFL_INST_RATIO");
-
-  int shm_id;
-
-  if (inst_r) {
-
-    unsigned int r;
-
-    r = atoi(inst_r);
-
-    if (r > 100) r = 100;
-    if (!r) r = 1;
-
-    afl_inst_rms = MAP_SIZE * r / 100;
-
-  }
-
-  if (id_str) {
-
-    shm_id = atoi(id_str);
-    afl_area_ptr = shmat(shm_id, NULL, 0);
-
-    if (afl_area_ptr == (void*)-1) exit(1);
-
-    /* With AFL_INST_RATIO set to a low value, we want to touch the bitmap
-       so that the parent doesn't give up on us. */
-
-    if (inst_r) afl_area_ptr[0] = 1;
-
-
-  }
-
-  if (getenv("AFL_INST_LIBS")) {
-
-    afl_start_code = 0;
-    afl_end_code   = (abi_ulong)-1;
-
-  }
-
-}
-
-
-/* Fork server logic, invoked once we hit _start. */
-
-static void afl_forkserver(CPUArchState *env) {
-
-  static unsigned char tmp[4];
-
-  if (!afl_area_ptr) return;
-
-  /* Tell the parent that we're alive. If the parent doesn't want
-     to talk, assume that we're not running in forkserver mode. */
-
-  if (write(FORKSRV_FD + 1, tmp, 4) != 4) return;
-
-  afl_forksrv_pid = getpid();
-
-  /* All right, let's await orders... */
-
-  while (1) {
-
-    pid_t child_pid;
-    int status, t_fd[2];
-
-    /* Whoops, parent dead? */
-
-    if (read(FORKSRV_FD, tmp, 4) != 4) exit(2);
-
-    /* Establish a channel with child to grab translation commands. We'll 
-       read from t_fd[0], child will write to TSL_FD. */
-
-    if (pipe(t_fd) || dup2(t_fd[1], TSL_FD) < 0) exit(3);
-    close(t_fd[1]);
-
-    child_pid = fork();
-    if (child_pid < 0) exit(4);
-
-    if (!child_pid) {
-
-      /* Child process. Close descriptors and run free. */
-
-      afl_fork_child = 1;
-      close(FORKSRV_FD);
-      close(FORKSRV_FD + 1);
-      close(t_fd[0]);
-      return;
-
-    }
-
-    /* Parent. */
-
-    close(TSL_FD);
-
-    if (write(FORKSRV_FD + 1, &child_pid, 4) != 4) exit(5);
-
-    /* Collect translation requests until child dies and closes the pipe. */
-
-    afl_wait_tsl(env, t_fd[0]);
-
-    /* Get and relay exit status to parent. */
-
-    if (waitpid(child_pid, &status, WUNTRACED) < 0) exit(6);
-    if (write(FORKSRV_FD + 1, &status, 4) != 4) exit(7);
-
-  }
-
-}
-
-
-/* The equivalent of the tuple logging routine from afl-as.h. */
-
-static inline void afl_maybe_log(abi_ulong cur_loc) {
-
-  static abi_ulong prev_loc;
-
-  /* Optimize for cur_loc > afl_end_code, which is the most likely case on
-     Linux systems. */
-
-  if (cur_loc > afl_end_code || cur_loc < afl_start_code || !afl_area_ptr)
-    return;
-
-  /* Looks like QEMU always maps to fixed locations, so we can skip this:
-     cur_loc -= afl_start_code; */
-
-  /* Instruction addresses may be aligned. Let's mangle the value to get
-     something quasi-uniform. */
-
-  cur_loc  = (cur_loc >> 4) ^ (cur_loc << 8);
-  cur_loc &= MAP_SIZE - 1;
-
-  /* Implement probabilistic instrumentation by looking at scrambled block
-     address. This keeps the instrumented locations stable across runs. */
-
-  if (cur_loc >= afl_inst_rms) return;
-
-  afl_area_ptr[cur_loc ^ prev_loc]++;
-  prev_loc = cur_loc >> 1;
-
-}
-
-
-/* This code is invoked whenever QEMU decides that it doesn't have a
-   translation of a particular block and needs to compute it. When this happens,
-   we tell the parent to mirror the operation, so that the next fork() has a
-   cached copy. */
-
-static void afl_request_tsl(target_ulong pc, target_ulong cb, uint64_t flags) {
-
-  struct afl_tsl t;
-
-  if (!afl_fork_child) return;
-
-  t.pc      = pc;
-  t.cs_base = cb;
-  t.flags   = flags;
-
-  if (write(TSL_FD, &t, sizeof(struct afl_tsl)) != sizeof(struct afl_tsl))
-    return;
-
-}
-
-
-/* This is the other side of the same channel. Since timeouts are handled by
-   afl-fuzz simply killing the child, we can just wait until the pipe breaks. */
-
-static void afl_wait_tsl(CPUArchState *env, int fd) {
-
-  struct afl_tsl t;
-
-  while (1) {
-
-    /* Broken pipe means it's time to return to the fork server routine. */
-
-    if (read(fd, &t, sizeof(struct afl_tsl)) != sizeof(struct afl_tsl))
-      break;
-
-    tb_find_slow(env, t.pc, t.cs_base, t.flags);
-
-  }
-
-  close(fd);
-
-}
-
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-types.h b/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-types.h
deleted file mode 100644
index 58d6be51e2d0..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/afl-types.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-   american fuzzy lop - type definitions and minor macros
-   ------------------------------------------------------
-
-   Written and maintained by Michal Zalewski <lcamtuf@google.com>
-
-   Copyright 2013, 2014, 2015 Google Inc. All rights reserved.
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at:
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- */
-
-#ifndef _HAVE_TYPES_H
-#define _HAVE_TYPES_H
-
-#include <stdint.h>
-#include <stdlib.h>
-
-typedef uint8_t  u8;
-typedef uint16_t u16;
-typedef uint32_t u32;
-
-/*
-
-   Ugh. There is an unintended compiler / glibc #include glitch caused by
-   combining the u64 type an %llu in format strings, necessitating a workaround.
-
-   In essence, the compiler is always looking for 'unsigned long long' for %llu.
-   On 32-bit systems, the u64 type (aliased to uint64_t) is expanded to
-   'unsigned long long' in <bits/types.h>, so everything checks out.
-
-   But on 64-bit systems, it is #ifdef'ed in the same file as 'unsigned long'.
-   Now, it only happens in circumstances where the type happens to have the
-   expected bit width, *but* the compiler does not know that... and complains
-   about 'unsigned long' being unsafe to pass to %llu.
-
- */
-
-#ifdef __x86_64__
-typedef unsigned long long u64;
-#else
-typedef uint64_t u64;
-#endif /* ^sizeof(...) */
-
-typedef int8_t   s8;
-typedef int16_t  s16;
-typedef int32_t  s32;
-typedef int64_t  s64;
-
-#ifndef MIN
-#  define MIN(_a,_b) ((_a) > (_b) ? (_b) : (_a))
-#  define MAX(_a,_b) ((_a) > (_b) ? (_a) : (_b))
-#endif /* !MIN */
-
-#define SWAP16(_x) ({ \
-    u16 _ret = (_x); \
-    (u16)((_ret << 8) | (_ret >> 8)); \
-  })
-
-#define SWAP32(_x) ({ \
-    u32 _ret = (_x); \
-    (u32)((_ret << 24) | (_ret >> 24) | \
-          ((_ret << 8) & 0x00FF0000) | \
-          ((_ret >> 8) & 0x0000FF00)); \
-  })
-
-#define R(x) (random() % (x))
-
-#define STRINGIFY_INTERNAL(x) #x
-#define STRINGIFY(x) STRINGIFY_INTERNAL(x)
-
-#define MEM_BARRIER() \
-  asm volatile("" ::: "memory")
-
-#endif /* ! _HAVE_TYPES_H */
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/cpu-exec.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/cpu-exec.patch
deleted file mode 100644
index 75a7ea450eff..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/cpu-exec.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- qemu-2.3.0/cpu-exec.c.orig     2014-12-09 14:45:40.000000000 +0000
-+++ qemu-2.3.0/cpu-exec.c  2015-02-20 22:07:02.966000000 +0000
-@@ -28,6 +28,8 @@
- #include "exec/memory-internal.h"
- #include "qemu/rcu.h"
-
-+#include "afl-qemu-cpu-inl.h"
-+
- /* -icount align implementation. */
-
- typedef struct SyncClocks {
-@@ -296,8 +298,11 @@
-     }
-  not_found:
-    /* if no translated code available, then translate it now */
-+
-     tb = tb_gen_code(cpu, pc, cs_base, flags, 0);
-
-+    AFL_QEMU_CPU_SNIPPET1;
-+
-  found:
-     /* Move the last found TB to the head of the list */
-     if (likely(*ptb1)) {
-@@ -492,6 +497,9 @@
-                     next_tb = 0;
-                     tcg_ctx.tb_ctx.tb_invalidated_flag = 0;
-                 }
-+
-+                AFL_QEMU_CPU_SNIPPET2;
-+
-                 if (qemu_loglevel_mask(CPU_LOG_EXEC)) {
-                     qemu_log("Trace %p [" TARGET_FMT_lx "] %s\n",
-                              tb->tc_ptr, tb->pc, lookup_symbol(tb->pc));
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/elfload.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/elfload.patch
deleted file mode 100644
index 325c917d15a3..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/elfload.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- qemu-2.3.0/linux-user/elfload.c.orig	2014-12-09 14:45:42.000000000 +0000
-+++ qemu-2.3.0/linux-user/elfload.c	2015-01-28 02:51:23.719000000 +0000
-@@ -28,6 +28,8 @@
- 
- #define ELF_OSABI   ELFOSABI_SYSV
- 
-+extern abi_ulong afl_entry_point, afl_start_code, afl_end_code;
-+
- /* from personality.h */
- 
- /*
-@@ -1889,6 +1891,8 @@
-     info->brk = 0;
-     info->elf_flags = ehdr->e_flags;
- 
-+    if (!afl_entry_point) afl_entry_point = info->entry;
-+
-     for (i = 0; i < ehdr->e_phnum; i++) {
-         struct elf_phdr *eppnt = phdr + i;
-         if (eppnt->p_type == PT_LOAD) {
-@@ -1922,9 +1926,11 @@
-             if (elf_prot & PROT_EXEC) {
-                 if (vaddr < info->start_code) {
-                     info->start_code = vaddr;
-+                    if (!afl_start_code) afl_start_code = vaddr;
-                 }
-                 if (vaddr_ef > info->end_code) {
-                     info->end_code = vaddr_ef;
-+                    if (!afl_end_code) afl_end_code = vaddr_ef;
-                 }
-             }
-             if (elf_prot & PROT_WRITE) {
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/no-etc-install.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/no-etc-install.patch
index 81d29feea3de..5dfbfd780f1c 100644
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/no-etc-install.patch
+++ b/nixpkgs/pkgs/tools/security/afl/qemu-patches/no-etc-install.patch
@@ -2,13 +2,12 @@ diff --git a/Makefile b/Makefile
 index d6b9dc1..ce7c493 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -384,8 +384,7 @@ install-confdir:
- install-sysconfig: install-datadir install-confdir
- 	$(INSTALL_DATA) $(SRC_PATH)/sysconfigs/target/target-x86_64.conf "$(DESTDIR)$(qemu_confdir)"
+@@ -601,7 +601,7 @@ install-localstatedir:
+ endif
+ 
  
--install: all $(if $(BUILD_DOCS),install-doc) install-sysconfig \
--install-datadir install-localstatedir
+-install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-localstatedir
 +install: all $(if $(BUILD_DOCS),install-doc) install-datadir
  ifneq ($(TOOLS),)
- 	$(call install-prog,$(TOOLS),$(DESTDIR)$(bindir))
+ 	$(call install-prog,$(subst qemu-ga,qemu-ga$(EXESUF),$(TOOLS)),$(DESTDIR)$(bindir))
  endif
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.10.0-glibc-2.27.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.10.0-glibc-2.27.patch
new file mode 100644
index 000000000000..6cc663dc1fb9
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.10.0-glibc-2.27.patch
@@ -0,0 +1,28 @@
+A modified version of qemu commit 75e5b70e6b5dcc4f2219992d7cffa462aa406af0
+diff --git a/configure b/configure
+index 9c8aa5a..99ccc17 100755
+--- a/configure
++++ b/configure
+@@ -3855,7 +3855,7 @@ fi
+ # check if memfd is supported
+ memfd=no
+ cat > $TMPC << EOF
+-#include <sys/memfd.h>
++#include <sys/mman.h>
+ 
+ int main(void)
+ {
+diff --git a/util/memfd.c b/util/memfd.c
+index 4571d1a..412e94a 100644
+--- a/util/memfd.c
++++ b/util/memfd.c
+@@ -31,9 +31,7 @@
+ 
+ #include "qemu/memfd.h"
+ 
+-#ifdef CONFIG_MEMFD
+-#include <sys/memfd.h>
+-#elif defined CONFIG_LINUX
++#if defined CONFIG_LINUX && !defined CONFIG_MEMFD
+ #include <sys/syscall.h>
+ #include <asm/unistd.h>
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.3.0-glibc-2.26.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.3.0-glibc-2.26.patch
deleted file mode 100644
index 1c447c4051e8..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/qemu-2.3.0-glibc-2.26.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-diff --git a/user-exec.c b/user-exec.c
-index 8f57e8a..957f9f7 100644
---- a/user-exec.c
-+++ b/user-exec.c
-@@ -57,7 +57,7 @@ static void exception_action(CPUState *cpu)
- void cpu_resume_from_signal(CPUState *cpu, void *puc)
- {
- #ifdef __linux__
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
- #elif defined(__OpenBSD__)
-     struct sigcontext *uc = puc;
- #endif
-@@ -171,7 +171,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- #elif defined(__OpenBSD__)
-     struct sigcontext *uc = puc;
- #else
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
- #endif
-     unsigned long pc;
-     int trapno;
-@@ -226,7 +226,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- #elif defined(__OpenBSD__)
-     struct sigcontext *uc = puc;
- #else
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
- #endif
- 
-     pc = PC_sig(uc);
-@@ -288,7 +288,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- 
- #ifdef __APPLE__
- #include <sys/ucontext.h>
--typedef struct ucontext SIGCONTEXT;
-+typedef ucontext_t SIGCONTEXT;
- /* All Registers access - only for local access */
- #define REG_sig(reg_name, context)              \
-     ((context)->uc_mcontext->ss.reg_name)
-@@ -331,7 +331,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
-     ucontext_t *uc = puc;
- #else
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
- #endif
-     unsigned long pc;
-     int is_write;
-@@ -358,7 +358,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
-                            void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     uint32_t *pc = uc->uc_mcontext.sc_pc;
-     uint32_t insn = *pc;
-     int is_write = 0;
-@@ -456,7 +456,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- #if defined(__NetBSD__)
-     ucontext_t *uc = puc;
- #else
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
- #endif
-     unsigned long pc;
-     int is_write;
-@@ -483,7 +483,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- int cpu_signal_handler(int host_signum, void *pinfo, void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     uintptr_t pc = uc->uc_mcontext.pc;
-     uint32_t insn = *(uint32_t *)pc;
-     bool is_write;
-@@ -512,7 +512,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
-                        void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     unsigned long pc;
-     int is_write;
- 
-@@ -534,7 +534,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
- int cpu_signal_handler(int host_signum, void *pinfo, void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     unsigned long ip;
-     int is_write = 0;
- 
-@@ -565,7 +565,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
-                        void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     unsigned long pc;
-     uint16_t *pinsn;
-     int is_write = 0;
-@@ -618,7 +618,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
-                        void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     greg_t pc = uc->uc_mcontext.pc;
-     int is_write;
- 
-@@ -634,7 +634,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
-                        void *puc)
- {
-     siginfo_t *info = pinfo;
--    struct ucontext *uc = puc;
-+    ucontext_t *uc = puc;
-     unsigned long pc = uc->uc_mcontext.sc_iaoq[0];
-     uint32_t insn = *(uint32_t *)pc;
-     int is_write = 0;
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/syscall.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/syscall.patch
deleted file mode 100644
index 75d39386164e..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/syscall.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- qemu-2.3.0/linux-user/syscall.c.orig	2014-12-09 14:45:43.000000000 +0000
-+++ qemu-2.3.0/linux-user/syscall.c	2015-03-27 06:33:00.736000000 +0000
-@@ -227,7 +227,21 @@
- _syscall3(int,sys_rt_sigqueueinfo,int,pid,int,sig,siginfo_t *,uinfo)
- _syscall3(int,sys_syslog,int,type,char*,bufp,int,len)
- #if defined(TARGET_NR_tgkill) && defined(__NR_tgkill)
--_syscall3(int,sys_tgkill,int,tgid,int,pid,int,sig)
-+
-+extern unsigned int afl_forksrv_pid;
-+
-+static int sys_tgkill(int tgid, int pid, int sig) {
-+
-+  /* Workaround for -lpthread to make abort() work properly, without
-+     killing the forkserver due to a prematurely cached PID. */
-+
-+  if (afl_forksrv_pid && afl_forksrv_pid == pid && sig == SIGABRT)
-+    pid = tgid = getpid();
-+
-+  return syscall(__NR_sys_tgkill, pid, tgid, sig);
-+
-+}
-+
- #endif
- #if defined(TARGET_NR_tkill) && defined(__NR_tkill)
- _syscall2(int,sys_tkill,int,tid,int,sig)
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu-patches/translate-all.patch b/nixpkgs/pkgs/tools/security/afl/qemu-patches/translate-all.patch
deleted file mode 100644
index 180b3a55ab25..000000000000
--- a/nixpkgs/pkgs/tools/security/afl/qemu-patches/translate-all.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- qemu-2.3.0/translate-all.c.orig     2014-12-09 14:45:46.000000000 +0000
-+++ qemu-2.3.0/translate-all.c  2015-01-28 22:37:42.383000000 +0000
-@@ -393,8 +393,13 @@
-     /* We can't use g_malloc because it may recurse into a locked mutex. */
- # define ALLOC(P, SIZE)                                 \
-     do {                                                \
--        P = mmap(NULL, SIZE, PROT_READ | PROT_WRITE,    \
--                 MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);   \
-+      void* _tmp = mmap(NULL, SIZE, PROT_READ | PROT_WRITE, \
-+                        MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); \
-+      if (_tmp == (void*)-1) { \
-+        qemu_log(">>> Out of memory for stack, bailing out. <<<\n"); \
-+        exit(1); \
-+      } \
-+      (P) = _tmp; \
-     } while (0)
- #else
- # define ALLOC(P, SIZE) \
diff --git a/nixpkgs/pkgs/tools/security/afl/qemu.nix b/nixpkgs/pkgs/tools/security/afl/qemu.nix
index 82de6474e598..a007eb3913db 100644
--- a/nixpkgs/pkgs/tools/security/afl/qemu.nix
+++ b/nixpkgs/pkgs/tools/security/afl/qemu.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2, zlib, pkgconfig, glib, ncurses, perl
+{ stdenv, fetchurl, afl, python2, zlib, pkgconfig, glib, ncurses, perl
 , attr, libcap, vde2, texinfo, libuuid, flex, bison, lzo, snappy
 , libaio, libcap_ng, gnutls, pixman, autoconf
 , writeText
@@ -7,59 +7,65 @@
 with stdenv.lib;
 
 let
-  n = "qemu-2.3.0";
-
-  aflHeaderFile = writeText "afl-qemu-cpu-inl.h"
-    (builtins.readFile ./qemu-patches/afl-qemu-cpu-inl.h);
-  aflConfigFile = writeText "afl-config.h"
-    (builtins.readFile ./qemu-patches/afl-config.h);
-  aflTypesFile = writeText "afl-types.h"
-    (builtins.readFile ./qemu-patches/afl-types.h);
-
+  qemuName = "qemu-2.10.0";
+  aflName = afl.name;
   cpuTarget = if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64-linux-user"
     else if stdenv.hostPlatform.system == "i686-linux" then "i386-linux-user"
     else throw "afl: no support for ${stdenv.hostPlatform.system}!";
 in
 stdenv.mkDerivation rec {
-  name = "afl-${n}";
+  name = "afl-${qemuName}";
 
-  src = fetchurl {
-    url = "http://wiki.qemu.org/download/${n}.tar.bz2";
-    sha256 = "120m53c3p28qxmfzllicjzr8syjv6v4d9rsyrgkp7gnmcgvvgfmn";
-  };
+  srcs = [
+    (fetchurl {
+      url = "http://wiki.qemu.org/download/${qemuName}.tar.bz2";
+      sha256 = "0j3dfxzrzdp1w21k21fjvmakzc6lcha1rsclaicwqvbf63hkk7vy";
+    })
+    afl.src
+  ];
 
-  buildInputs =
-    [ python2 zlib pkgconfig glib pixman ncurses perl attr libcap
-      vde2 texinfo libuuid flex bison lzo snappy autoconf
-      libcap_ng gnutls
-    ]
-    ++ optionals (hasSuffix "linux" stdenv.hostPlatform.system) [ libaio ];
+  sourceRoot = qemuName;
 
-  enableParallelBuilding = true;
+  postUnpack = ''
+    cp ${aflName}/types.h $sourceRoot/afl-types.h
+    substitute ${aflName}/config.h $sourceRoot/afl-config.h \
+      --replace "types.h" "afl-types.h"
+    substitute ${aflName}/qemu_mode/patches/afl-qemu-cpu-inl.h $sourceRoot/afl-qemu-cpu-inl.h \
+      --replace "../../config.h" "afl-config.h"
+    substituteInPlace ${aflName}/qemu_mode/patches/cpu-exec.diff \
+      --replace "../patches/afl-qemu-cpu-inl.h" "afl-qemu-cpu-inl.h"
+  '';
 
-  patches =
-    [ ./qemu-patches/elfload.patch
-      ./qemu-patches/cpu-exec.patch
-      ./qemu-patches/no-etc-install.patch
-      ./qemu-patches/translate-all.patch
-      ./qemu-patches/syscall.patch
-      ./qemu-patches/qemu-2.3.0-glibc-2.26.patch
-    ];
+  nativeBuildInputs = [
+    python2 perl pkgconfig flex bison autoconf texinfo
+  ];
 
-  preConfigure = ''
-    cp ${aflTypesFile}  afl-types.h
-    cp ${aflConfigFile} afl-config.h
-    cp ${aflHeaderFile} afl-qemu-cpu-inl.h
-  '';
+  buildInputs = [
+    zlib glib pixman ncurses attr libcap
+    vde2 libuuid lzo snappy libcap_ng gnutls
+  ] ++ optionals (stdenv.isLinux) [ libaio ];
+
+  enableParallelBuilding = true;
+
+  patches = [
+    # patches extracted from afl source
+    "../${aflName}/qemu_mode/patches/cpu-exec.diff"
+    "../${aflName}/qemu_mode/patches/elfload.diff"
+    "../${aflName}/qemu_mode/patches/syscall.diff"
+    # nix-specific patches to make installation more well-behaved
+    ./qemu-patches/no-etc-install.patch
+    ./qemu-patches/qemu-2.10.0-glibc-2.27.patch
+  ];
 
   configureFlags =
     [ "--disable-system"
       "--enable-linux-user"
-      "--enable-guest-base"
       "--disable-gtk"
       "--disable-sdl"
       "--disable-vnc"
       "--target-list=${cpuTarget}"
+      "--enable-pie"
+      "--enable-kvm"
       "--sysconfdir=/etc"
       "--localstatedir=/var"
     ];
diff --git a/nixpkgs/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix b/nixpkgs/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix
index e04b41557482..ca2ea67e7881 100644
--- a/nixpkgs/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix
+++ b/nixpkgs/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, imagemagick, libqrencode
+{ stdenv, fetchFromGitHub, imagemagick, qrencode
 , testQR ? false, zbar ? null
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "0yrc302a2fhbzryb10718ky4fymfcps3lk67ivis1qab5kbp6z8r";
   };
 
-  buildInputs = [ imagemagick libqrencode ] ++ stdenv.lib.optional testQR zbar;
+  buildInputs = [ imagemagick qrencode ] ++ stdenv.lib.optional testQR zbar;
   dontBuild = true;
   dontStrip = true;
   dontPatchELF = true;
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   preInstall = ''
     substituteInPlace asc-to-gif.sh \
       --replace "convert" "${imagemagick}/bin/convert" \
-      --replace "qrencode" "${libqrencode}/bin/qrencode"
+      --replace "qrencode" "${qrencode.bin}/bin/qrencode"
   '';
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/security/bettercap/default.nix b/nixpkgs/pkgs/tools/security/bettercap/default.nix
index a85ce7df9216..f7e09d54de16 100644
--- a/nixpkgs/pkgs/tools/security/bettercap/default.nix
+++ b/nixpkgs/pkgs/tools/security/bettercap/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "bettercap-${version}";
-  version = "2.4";
+  version = "2.11";
 
   goPackagePath = "github.com/bettercap/bettercap";
 
@@ -10,10 +10,11 @@ buildGoPackage rec {
     owner = "bettercap";
     repo = "bettercap";
     rev = "v${version}";
-    sha256 = "1k1ank8z9sr3vxm86dfcrn1y3qa3gfwyb2z0fvkvi38gc88pfljb";
+    sha256 = "08hd7hk0jllfhdiky1f5pfsvl1x0bkgv1p4z9qvsksdg9a7qjznw";
   };
 
-  buildInputs = [libpcap libnfnetlink libnetfilter_queue pkgconfig];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libpcap libnfnetlink libnetfilter_queue ];
 
   goDeps = ./deps.nix;
 
diff --git a/nixpkgs/pkgs/tools/security/bettercap/deps.nix b/nixpkgs/pkgs/tools/security/bettercap/deps.nix
index 6a03e88000c2..cbfe7c54dad9 100644
--- a/nixpkgs/pkgs/tools/security/bettercap/deps.nix
+++ b/nixpkgs/pkgs/tools/security/bettercap/deps.nix
@@ -5,8 +5,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/adrianmo/go-nmea";
-      rev =  "22095aa1b48050243d3eb9a001ca80eb91a0c6fa";
-      sha256 = "0hgjfmnff794j537kbrjcsxzr9xyggm09rw3wp2xrzahh9pxdlm5";
+      rev =  "a32116e4989e2b0e17c057ee378b4d5246add74e";
+      sha256 = "167iwpwdwfbyghqfrzdfvfpvsmj92x7qqy6sx6yngdw21wd0m44f";
     };
   }
   {
@@ -14,8 +14,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/bettercap/gatt";
-      rev =  "6475b946a0bff32e906c25d861f2b1c6d2056baa";
-      sha256 = "0f2n35yz6fcbmswy1wyv2z72d3iia7xxapjkvwkbj2zqfxxwn26s";
+      rev =  "66e7446993acb3de936b3f487e5933522ed16923";
+      sha256 = "0hvm59zpbghgw8fq9yr4dd2x3209ii9856qklflkz2ywf7vryjqq";
     };
   }
   {
@@ -23,8 +23,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/bettercap/readline";
-      rev =  "9cec905dd29109b64e6752507fba73474c2efd46";
-      sha256 = "1lsnyckg2l78hz4la8dhwvjsyff706khw10nxds5afzl4mrih3vn";
+      rev =  "62c6fe6193755f722b8b8788aa7357be55a50ff1";
+      sha256 = "1qd2qhjps26x4pin2614w732giy89p22b2qww4wg15zz5g2365nk";
     };
   }
   {
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/dustin/go-humanize";
-      rev =  "bb3d318650d48840a39aa21a027c6630e198e626";
-      sha256 = "1lqd8ix3cb164j5iazjby2jpa6bdsflhy0h9mi4yldvvcvrc194c";
+      rev =  "9f541cc9db5d55bce703bd99987c9d5cb8eea45e";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
     };
   }
   {
@@ -50,8 +50,26 @@
     fetch = {
       type = "git";
       url = "https://github.com/elazarl/goproxy";
-      rev =  "a96fa3a318260eab29abaf32f7128c9eb07fb073";
-      sha256 = "0grm4n28mkj2w4c42ghl797svxykv1z3hsdi1ihnrvq6pr08xky4";
+      rev =  "f58a169a71a51037728990b2d3597a14f56b525b";
+      sha256 = "103crrh6zwdwcj7j6z63rbm467nff3r1rvpwdk0qj8x275zi45g6";
+    };
+  }
+  {
+    goPackagePath  = "github.com/evilsocket/islazy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/evilsocket/islazy";
+      rev =  "3d8400c74f9dbc626d913e0575cda05d914bea57";
+      sha256 = "0yfqvcxaympfgsda0jhqnaqhbhic2irdjn0h2bppz4misjv6sxn9";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gobwas/glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/glob";
+      rev =  "e7a84e9525fe90abcda167b604e483cc959ad4aa";
+      sha256 = "1v6vjklq06wqddv46ihajahaj1slv0imgaivlxr8bsx59i90js5q";
     };
   }
   {
@@ -59,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/google/go-github";
-      rev =  "437797734d06eec5394734a84cb5b59c82a66ee6";
-      sha256 = "09ajj73rwsxc03dmm39g8b0qaz88h6gnraw2xn8h7z57qqv6ikcx";
+      rev =  "e48060a28fac52d0f1cb758bc8b87c07bac4a87d";
+      sha256 = "0a15gsqpshcipd4vmm0dzxgi99pfk0c5b60n3czfw2px864mg7x9";
     };
   }
   {
@@ -68,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/google/go-querystring";
-      rev =  "53e6ce116135b80d037921a7fdd5138cf32d7a8a";
-      sha256 = "0lkbm067nhmxk66pyjx59d77dbjjzwyi43gdvzyx2f8m1942rq7f";
+      rev =  "44c6ddd0a2342c386950e880b658017258da92fc";
+      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
     };
   }
   {
@@ -77,8 +95,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/google/gopacket";
-      rev =  "1d3841317373a001d49e2abcc5be4e442211d454";
-      sha256 = "1jffnrvrma3rm5zxmig52145y9bxc3b4ys4jr1nwmq43jk15s3kp";
+      rev =  "d67ddb98d5a1b7c79a8977ec2d552e1db45eda86";
+      sha256 = "0pk4hddx6fnbbjjgi86vx12xs5d8591dlkx1q5cswc0jghymbplh";
     };
   }
   {
@@ -95,8 +113,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/gorilla/mux";
-      rev =  "4dbd923b0c9e99ff63ad54b0e9705ff92d3cdb06";
-      sha256 = "02d5c3vh81v2j6g6fnca87ksxjx0xrgp7x7iivfw5x92q1l5h254";
+      rev =  "e3702bed27f0d39777b0b37b664b6280e8ef8fbf";
+      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
     };
   }
   {
@@ -104,8 +122,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/gorilla/websocket";
-      rev =  "eb925808374e5ca90c83401a40d711dc08c0c0f6";
-      sha256 = "0swncxnl97pmsl78q1p4npx9jghnrzj7alkxab89jy9cza5w165x";
+      rev =  "66b9c49e59c6c48f0ffce28c2d8b8a5678502c6d";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
     };
   }
   {
@@ -122,8 +140,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/jpillora/go-tld";
-      rev =  "a31ae10e978ab5f352c5dad2cfbd60546dcea75f";
-      sha256 = "1gfxnbr1xsnlja2qpqxis8ynnk1lrz9c65aah7vc2c44g8vyy78x";
+      rev =  "4bfc8d9a90b591e101a56265afc2239359fb0810";
+      sha256 = "04pv1rwpfq3ip3vn0yfixxczcnv56w1l0z8bp4fjscw1bfqbb4pn";
     };
   }
   {
@@ -140,8 +158,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-colorable";
-      rev =  "efa589957cd060542a26d2dd7832fd6a6c6c3ade";
-      sha256 = "0kshi4hvm0ayrsxqxy0599iv81kryhd2fn9lwjyczpj593cq069r";
+      rev =  "167de6bfdfba052fa6b2d3664c8f5272e23c9072";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
     };
   }
   {
@@ -163,6 +181,15 @@
     };
   }
   {
+    goPackagePath  = "github.com/mdlayher/raw";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mdlayher/raw";
+      rev =  "67a536258490ec29bca6d465b51dea32c0db3623";
+      sha256 = "1fba4c6kc7llwr4n5rsspsc3yb0c81xsqzxv86wnj1b0d8l2s7nr";
+    };
+  }
+  {
     goPackagePath  = "github.com/mgutz/ansi";
     fetch = {
       type = "git";
@@ -185,8 +212,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/pkg/errors";
-      rev =  "816c9085562cd7ee03e7f8188a1cfd942858cded";
-      sha256 = "1ws5crb7c70wdicavl6qr4g03nn6m92zd6wwp9n2ygz5c8rmxh8k";
+      rev =  "645ef00459ed84a119197bfb8d8205042c6df63d";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
     };
   }
   {
@@ -194,8 +221,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/robertkrimen/otto";
-      rev =  "6c383dd335ef8dcccef05e651ce1eccfe4d0f011";
-      sha256 = "1n6h7c8gi6wv4nklqd7ygzx2afvh7ddxbml9w9x0jxwcfb3bdy17";
+      rev =  "15f95af6e78dcd2030d8195a138bd88d4f403546";
+      sha256 = "07j7l340lmqwpfscwyb8llk3k37flvs20a4a8vzc85f16xyd9npf";
     };
   }
   {
@@ -203,8 +230,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/tarm/serial";
-      rev =  "eaafced92e9619f03c72527efeab21e326f3bc36";
-      sha256 = "09pii3q72bygv40v9xsh3nzj821iwqwa0b14wvkagid8mfnl3a7k";
+      rev =  "98f6abe2eb07edd42f6dfa2a934aea469acc29b7";
+      sha256 = "1yj4jiv2f3x3iawxdflrlmdan0k9xsbnccgc9yz658rmif1ag3pb";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev =  "49bb7cea24b1df9410e1712aa6433dae904ff66a";
+      sha256 = "111q4qm3hcjvzvyv9y5rz8ydnyg48rckcygxqy6gv63q618wz6gn";
     };
   }
   {
@@ -212,8 +248,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev =  "378d26f46672a356c46195c28f61bdb4c0a781dd";
-      sha256 = "1d02saysx8lh2wv8s915k4shiqicg4j1fh6sxmcxy6bvywax2q9c";
+      rev =  "fa43e7bc11baaae89f3f902b2b4d832b68234844";
+      sha256 = "1z96xhgw930jpd53g1sy9x6wiijgz751czbvr2zzgc55y0md1mfw";
     };
   }
   {
@@ -221,8 +257,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-sourcemap/sourcemap";
-      rev =  "b019cc30c1eaa584753491b0d8f8c1534bf1eb44";
-      sha256 = "03k44fdrnknba05f7cd58lq4rzk7jdpiqksmc0wxrdzwschrbgw8";
+      rev =  "6e83acea0053641eff084973fee085f0c193c61a";
+      sha256 = "08rf2dl13hbnm3fq2cm0nnsspy9fhf922ln23cz5463cv7h62as4";
     };
   }
 ]
\ No newline at end of file
diff --git a/nixpkgs/pkgs/tools/security/ccid/default.nix b/nixpkgs/pkgs/tools/security/ccid/default.nix
index 67252453743b..c5a0de0c75f6 100644
--- a/nixpkgs/pkgs/tools/security/ccid/default.nix
+++ b/nixpkgs/pkgs/tools/security/ccid/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
     description = "ccid drivers for pcsclite";
     homepage = https://ccid.apdu.fr/;
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ wkennington ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/certmgr/default.nix b/nixpkgs/pkgs/tools/security/certmgr/default.nix
index fa3076e8b593..4a9cd4867da6 100644
--- a/nixpkgs/pkgs/tools/security/certmgr/default.nix
+++ b/nixpkgs/pkgs/tools/security/certmgr/default.nix
@@ -1,23 +1,43 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub, fetchpatch }:
 
-buildGoPackage rec {
-  version = "1.6.1";
-  name = "certmgr-${version}";
+let
+  generic = { patches ? [] }:
+    buildGoPackage rec {
+      version = "1.6.1";
+      name = "certmgr-${version}";
 
-  goPackagePath = "github.com/cloudflare/certmgr/";
+      goPackagePath = "github.com/cloudflare/certmgr/";
 
-  src = fetchFromGitHub {
-    owner = "cloudflare";
-    repo = "certmgr";
-    rev = "v${version}";
-    sha256 = "1ky2pw1wxrb2fxfygg50h0mid5l023x6xz9zj5754a023d01qqr2";
-  };
+      src = fetchFromGitHub {
+        owner = "cloudflare";
+        repo = "certmgr";
+        rev = "v${version}";
+        sha256 = "1ky2pw1wxrb2fxfygg50h0mid5l023x6xz9zj5754a023d01qqr2";
+      };
+
+      inherit patches;
+
+      meta = with stdenv.lib; {
+        homepage = https://cfssl.org/;
+        description = "Cloudflare's certificate manager";
+        platforms = platforms.linux;
+        license = licenses.bsd2;
+        maintainers = with maintainers; [ johanot srhb ];
+      };
+    };
+in
+{
+  certmgr = generic {};
 
-  meta = with stdenv.lib; {
-    homepage = https://cfssl.org/;
-    description = "Cloudflare's certificate manager";
-    platforms = platforms.linux;
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ johanot srhb ];
+  certmgr-selfsigned = generic {
+    # The following patch makes it possible to use a self-signed x509 cert
+    # for the cfssl apiserver.
+    # TODO: remove patch when PR is merged.
+    patches = [
+      (fetchpatch {
+        url    = "https://github.com/cloudflare/certmgr/pull/51.patch";
+        sha256 = "0jhsw159d2mgybvbbn6pmvj4yqr5cwcal5fjwkcn9m4f4zlb6qrs";
+      })
+    ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/clamav/default.nix b/nixpkgs/pkgs/tools/security/clamav/default.nix
index 650ad6ff78d6..8e641ba4a0ed 100644
--- a/nixpkgs/pkgs/tools/security/clamav/default.nix
+++ b/nixpkgs/pkgs/tools/security/clamav/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "clamav-${version}";
-  version = "0.101.0";
+  version = "0.101.1";
 
   src = fetchurl {
     url = "https://www.clamav.net/downloads/production/${name}.tar.gz";
-    sha256 = "1ljs799xkd9ljj833rkwp961iaysqx4hrlyjrbkbvq64dgc5lapi";
+    sha256 = "01mq3z04fjbq5iq8wfwfim72iv3dn04d3ishc5lkhxpmnalqydps";
   };
 
   # don't install sample config files into the absolute sysconfdir folder
diff --git a/nixpkgs/pkgs/tools/security/diceware/default.nix b/nixpkgs/pkgs/tools/security/diceware/default.nix
index 32819b603f90..1c3d5f1d465f 100644
--- a/nixpkgs/pkgs/tools/security/diceware/default.nix
+++ b/nixpkgs/pkgs/tools/security/diceware/default.nix
@@ -6,11 +6,11 @@ with pythonPackages;
 
 buildPythonApplication rec {
   pname = "diceware";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "22a998361fd2afbc7890062e228235b3501084de1e6a5bb61f16d2637977f50d";
+    sha256 = "0klb0ysybzlh2wihvir82hgq62v0jjmlcqklwajyms7c0p529yby";
   };
 
   nativeBuildInputs = [ pytestrunner ];
diff --git a/nixpkgs/pkgs/tools/security/ecdsautils/default.nix b/nixpkgs/pkgs/tools/security/ecdsautils/default.nix
index 2766c2c07a4f..48a713287b8b 100644
--- a/nixpkgs/pkgs/tools/security/ecdsautils/default.nix
+++ b/nixpkgs/pkgs/tools/security/ecdsautils/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   name = "ecdsautils-${version}";
 
   src = pkgs.fetchFromGitHub {
-    owner = "tcatm";
+    owner = "freifunk-gluon";
     repo = "ecdsautils";
     rev = "07538893fb6c2a9539678c45f9dbbf1e4f222b46";
     sha256 = "18sr8x3qiw8s9l5pfi7r9i3ayplz4jqdml75ga9y933vj7vs0k4d";
diff --git a/nixpkgs/pkgs/tools/security/efitools/default.nix b/nixpkgs/pkgs/tools/security/efitools/default.nix
new file mode 100644
index 000000000000..1d983cb8599a
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/efitools/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, gnu-efi, openssl, sbsigntool, perl, perlPackages,
+help2man, fetchgit }:
+stdenv.mkDerivation rec {
+  name = "efitools-${version}";
+  version = "1.9.2";
+
+  buildInputs = [
+    gnu-efi
+    openssl
+    sbsigntool
+  ];
+
+  nativeBuildInputs = [
+    perl
+    perlPackages.FileSlurp
+    help2man
+  ];
+
+  src = fetchgit {
+    url = "git://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git";
+    rev = "v${version}";
+    sha256 = "0jabgl2pxvfl780yvghq131ylpf82k7banjz0ksjhlm66ik8gb1i";
+  };
+
+  postPatch = ''
+    sed -i -e 's#/usr/include/efi#${gnu-efi}/include/efi/#g' Make.rules
+    sed -i -e 's#/usr/lib64/gnuefi#${gnu-efi}/lib/#g' Make.rules
+    sed -i -e 's#$(DESTDIR)/usr#$(out)#g' Make.rules
+    patchShebangs .
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Tools for manipulating UEFI secure boot platforms";
+    homepage = "https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.grahamc ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/eid-mw/default.nix b/nixpkgs/pkgs/tools/security/eid-mw/default.nix
index 3534115bdb02..6bdc8570982d 100644
--- a/nixpkgs/pkgs/tools/security/eid-mw/default.nix
+++ b/nixpkgs/pkgs/tools/security/eid-mw/default.nix
@@ -7,10 +7,10 @@
 
 stdenv.mkDerivation rec {
   name = "eid-mw-${version}";
-  version = "4.4.11";
+  version = "4.4.13";
 
   src = fetchFromGitHub {
-    sha256 = "13mhz23j2gp5bywdq2xiwkk0gnc354j31ry8x35pzlwrcn19by10"; 
+    sha256 = "14bgn2k0xbd6241qdghg787pgxy7k9rvcspaf74zwwyibaqknzyx"; 
     rev = "v${version}";
     repo = "eid-mw";
     owner = "Fedict";
diff --git a/nixpkgs/pkgs/tools/security/gnupg/22.nix b/nixpkgs/pkgs/tools/security/gnupg/22.nix
index 08dc68889809..ad4eae9578cb 100644
--- a/nixpkgs/pkgs/tools/security/gnupg/22.nix
+++ b/nixpkgs/pkgs/tools/security/gnupg/22.nix
@@ -15,11 +15,11 @@ assert guiSupport -> pinentry != null;
 stdenv.mkDerivation rec {
   name = "gnupg-${version}";
 
-  version = "2.2.11";
+  version = "2.2.12";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${name}.tar.bz2";
-    sha256 = "1ncwqjhcxh46fgkp84g2lhf91amcha7abk6wdm1kagzm7q93wv29";
+    sha256 = "1jw282iy27j1qygym52aa44zxy7ly4bdadhd628hwr4q9j5hy0yv";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
       frontend applications and libraries are available.  Version 2 of GnuPG
       also provides support for S/MIME.
     '';
-    maintainers = with maintainers; [ wkennington peti fpletz vrthra ];
+    maintainers = with maintainers; [ peti fpletz vrthra ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/gopass/default.nix b/nixpkgs/pkgs/tools/security/gopass/default.nix
index 2242a9c109e4..33b60ae6fe26 100644
--- a/nixpkgs/pkgs/tools/security/gopass/default.nix
+++ b/nixpkgs/pkgs/tools/security/gopass/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub, git, gnupg, xclip, makeWrapper }:
 
 buildGoPackage rec {
-  version = "1.8.3";
+  version = "1.8.4";
   name = "gopass-${version}";
 
   goPackagePath = "github.com/gopasspw/gopass";
@@ -12,7 +12,7 @@ buildGoPackage rec {
     owner = "gopasspw";
     repo = "gopass";
     rev = "v${version}";
-    sha256 = "1m4dmydgbpyrqv0blbrw66f2340c6hbz2wg22mpybf0zvd5i9ba6";
+    sha256 = "1gw16k09vwarh5qz118s7w2j090phdrrgd2h1q52pv93jpi3br7n";
   };
 
   wrapperPath = with stdenv.lib; makeBinPath ([
diff --git a/nixpkgs/pkgs/tools/security/hashcash/default.nix b/nixpkgs/pkgs/tools/security/hashcash/default.nix
new file mode 100644
index 000000000000..a28822ecd951
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/hashcash/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, openssl }:
+
+stdenv.mkDerivation rec {
+  pname = "hashcash";
+  version = "1.22";
+  
+  buildInputs = [ openssl ];
+
+  src = fetchurl {
+    url = "http://www.hashcash.org/source/hashcash-${version}.tgz";
+    sha256 = "15kqaimwb2y8wvzpn73021bvay9mz1gqqfc40gk4hj6f84nz34h1";
+  };
+  
+  makeFlags = [
+    "generic-openssl"
+    "LIBCRYPTO=-lcrypto"
+  ];
+
+  installFlags = [
+    "INSTALL_PATH=${placeholder "out"}/bin"
+    "MAN_INSTALL_PATH=${placeholder "out"}/share/man/man1"
+    "DOC_INSTALL_PATH=${placeholder "out"}/share/doc/hashcash-$(version)"
+  ];
+  
+  meta = with stdenv.lib; {
+    description = "Proof-of-work algorithm used as spam and denial-of-service counter measure";
+    homepage = http://hashcash.org;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ kisonecat ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/hashcat/default.nix b/nixpkgs/pkgs/tools/security/hashcat/default.nix
index 68866a8cad4f..8316adb5a1e2 100644
--- a/nixpkgs/pkgs/tools/security/hashcat/default.nix
+++ b/nixpkgs/pkgs/tools/security/hashcat/default.nix
@@ -14,18 +14,12 @@ stdenv.mkDerivation rec {
   buildInputs = [ opencl-headers xxHash ];
 
   makeFlags = [
+    "PREFIX=${placeholder "out"}"
     "OPENCL_HEADERS_KHRONOS=${opencl-headers}/include"
     "COMPTIME=1337"
     "VERSION_TAG=${version}"
   ];
 
-  # $out is not known until the build has started.
-  configurePhase = ''
-    runHook preConfigure
-    makeFlags="$makeFlags PREFIX=$out"
-    runHook postConfigure
-  '';
-
   postFixup = ''
     wrapProgram $out/bin/hashcat --prefix LD_LIBRARY_PATH : ${ocl-icd}/lib
   '';
diff --git a/nixpkgs/pkgs/tools/security/john/default.nix b/nixpkgs/pkgs/tools/security/john/default.nix
index cb545570f51f..97f6ec21b548 100644
--- a/nixpkgs/pkgs/tools/security/john/default.nix
+++ b/nixpkgs/pkgs/tools/security/john/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ openssl nss nspr kerberos gmp zlib libpcap re2 gcc pythonPackages.wrapPython perl makeWrapper ];
   propagatedBuildInputs = (with pythonPackages; [ dpkt scapy lxml ]) ++ # For pcap2john.py
-                          (with perlPackages; [ DigestMD4 DigestMD5 DigestSHA1 GetoptLong # For pass_gen.pl
+                          (with perlPackages; [ DigestMD4 DigestSHA1 GetoptLong # For pass_gen.pl
                                                 perlldap ]); # For sha-dump.pl
                           # TODO: Get dependencies for radius2john.pl and lion2john-alt.pl
 
diff --git a/nixpkgs/pkgs/tools/security/kbfs/default.nix b/nixpkgs/pkgs/tools/security/kbfs/default.nix
index e8824bd73fcd..7c96085d37f6 100644
--- a/nixpkgs/pkgs/tools/security/kbfs/default.nix
+++ b/nixpkgs/pkgs/tools/security/kbfs/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "kbfs-${version}";
-  version = "2.10.1";
+  version = "2.11.0";
 
   goPackagePath = "github.com/keybase/kbfs";
   subPackages = [ "kbfsfuse" "kbfsgit/git-remote-keybase" ];
@@ -13,7 +13,7 @@ buildGoPackage rec {
     owner = "keybase";
     repo = "kbfs";
     rev = "v${version}";
-    sha256 = "0c03jm4pxqh4cfg1d7c833hdl8l57f1sbfqxwdq16y5s2cac1yss";
+    sha256 = "1qlns7vpyj3ivm7d3vvlmx3iksl7hpcg87yh30f3n64c8jk0xc83";
   };
 
   buildFlags = [ "-tags production" ];
@@ -22,7 +22,7 @@ buildGoPackage rec {
     homepage = https://www.keybase.io;
     description = "The Keybase FS FUSE driver";
     platforms = platforms.linux;
-    maintainers = with maintainers; [ bennofs np ];
+    maintainers = with maintainers; [ rvolosatovs bennofs np ];
     license = licenses.bsd3;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/keybase/default.nix b/nixpkgs/pkgs/tools/security/keybase/default.nix
index a13adad037d1..ae726544453a 100644
--- a/nixpkgs/pkgs/tools/security/keybase/default.nix
+++ b/nixpkgs/pkgs/tools/security/keybase/default.nix
@@ -1,22 +1,20 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub, cf-private
+{ stdenv, lib, buildGoPackage, fetchurl, cf-private
 , AVFoundation, AudioToolbox, ImageIO, CoreMedia
 , Foundation, CoreGraphics, MediaToolbox
 }:
 
 buildGoPackage rec {
   name = "keybase-${version}";
-  version = "2.10.1";
+  version = "2.13.1";
 
   goPackagePath = "github.com/keybase/client";
   subPackages = [ "go/keybase" ];
 
   dontRenameImports = true;
 
-  src = fetchFromGitHub {
-    owner  = "keybase";
-    repo   = "client";
-    rev    = "v${version}";
-    sha256 = "1gfxnqzs8msxmykg1zrhrrl2slmb29gl7b8s4m2g44zxaj91gfi9";
+  src = fetchurl {
+    url = "https://github.com/keybase/client/archive/v${version}.tar.gz";
+    sha256 = "0avq87y7cs3jipl444ssz1zd5jygpks20hls0fkqxxaikkpdsy4v";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/tools/security/keybase/gui.nix b/nixpkgs/pkgs/tools/security/keybase/gui.nix
index 422ca4ac9cfa..bd8166b214dc 100644
--- a/nixpkgs/pkgs/tools/security/keybase/gui.nix
+++ b/nixpkgs/pkgs/tools/security/keybase/gui.nix
@@ -3,16 +3,16 @@
 , libnotify, nspr, nss, pango, systemd, xorg, autoPatchelfHook, wrapGAppsHook }:
 
 let
-  versionSuffix = "20181121195344.99751ac04f";
+  versionSuffix = "20190115203650.eec94506e4";
 in
 
 stdenv.mkDerivation rec {
   name = "keybase-gui-${version}";
-  version = "2.11.0"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
+  version = "2.13.1"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version + "-" + versionSuffix}_amd64.deb";
-    sha256 = "1gh7brdw2p4xfdgc43vrmv0lvki2f3691mfh6lvksy1dv43yb8zl";
+    sha256 = "01663jknr8s4sp51mclw9llhx07ww6yh22apawxikvpwmw9yg2qr";
   };
 
   nativeBuildInputs = [
@@ -106,7 +106,7 @@ stdenv.mkDerivation rec {
     homepage = https://www.keybase.io/;
     description = "The Keybase official GUI";
     platforms = platforms.linux;
-    maintainers = with maintainers; [ puffnfresh np ];
+    maintainers = with maintainers; [ rvolosatovs puffnfresh np ];
     license = licenses.bsd3;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/kpcli/default.nix b/nixpkgs/pkgs/tools/security/kpcli/default.nix
index cb471d663ecb..350d0e66dc7d 100644
--- a/nixpkgs/pkgs/tools/security/kpcli/default.nix
+++ b/nixpkgs/pkgs/tools/security/kpcli/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     chmod +x $out/share/kpcli.pl
 
     makeWrapper $out/share/kpcli.pl $out/bin/kpcli --set PERL5LIB \
-      "${with perlPackages; stdenv.lib.makePerlPath ([
+      "${with perlPackages; makePerlPath ([
          CaptureTiny Clipboard Clone CryptRijndael SortNaturally TermReadKey TermShellUI FileKeePass TermReadLineGnu XMLParser
       ] ++ stdenv.lib.optional stdenv.isDarwin MacPasteboard)}"
   '';
diff --git a/nixpkgs/pkgs/tools/security/kwalletcli/default.nix b/nixpkgs/pkgs/tools/security/kwalletcli/default.nix
index 2831ffd31414..52e8ab8cf570 100644
--- a/nixpkgs/pkgs/tools/security/kwalletcli/default.nix
+++ b/nixpkgs/pkgs/tools/security/kwalletcli/default.nix
@@ -7,14 +7,14 @@
 
 let
   pname = "kwalletcli";
-  version = "3.01";
+  version = "3.02";
 in
 mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://www.mirbsd.org/MirOS/dist/hosted/kwalletcli/${name}.tar.gz";
-    sha256 = "03jd7m868dc5dkmm7wbr6dj1h1kp4cb2x8ay8jwvlcbnf7srjzcs";
+    sha256 = "05njayi07996ljfl8a6frlk2s60grk5w27f0f445nmvd5n0bzgpn";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/security/monkeysphere/default.nix b/nixpkgs/pkgs/tools/security/monkeysphere/default.nix
index 46be3b98c550..af507dbf993b 100644
--- a/nixpkgs/pkgs/tools/security/monkeysphere/default.nix
+++ b/nixpkgs/pkgs/tools/security/monkeysphere/default.nix
@@ -14,14 +14,14 @@ let
   });
 in stdenv.mkDerivation rec {
   name = "monkeysphere-${version}";
-  version = "0.42";
+  version = "0.43";
 
   # The patched OpenSSH binary MUST NOT be used (except in the check phase):
   disallowedRequisites = [ opensshUnsafe ];
 
   src = fetchurl {
     url = "http://archive.monkeysphere.info/debian/pool/monkeysphere/m/monkeysphere/monkeysphere_${version}.orig.tar.gz";
-    sha256 = "1haqgjxm8v2xnhc652lx79p2cqggb9gxgaf19w9l9akar2qmdjf1";
+    sha256 = "18i7qpvp5qb7mmd0z5rqai550rya9l3nbsq2hamwkl3smqsjdqc0";
   };
 
   patches = [ ./monkeysphere.patch ];
@@ -60,7 +60,7 @@ in stdenv.mkDerivation rec {
   postFixup =
     let wrapperArgs = runtimeDeps:
           "--prefix PERL5LIB : "
-          + (with perlPackages; stdenv.lib.makePerlPath [
+          + (with perlPackages; makePerlPath [
               CryptOpenSSLRSA
               CryptOpenSSLBignum
             ])
diff --git a/nixpkgs/pkgs/tools/security/monkeysphere/monkeysphere.patch b/nixpkgs/pkgs/tools/security/monkeysphere/monkeysphere.patch
index fdf4b9335b19..0a05635d6a80 100644
--- a/nixpkgs/pkgs/tools/security/monkeysphere/monkeysphere.patch
+++ b/nixpkgs/pkgs/tools/security/monkeysphere/monkeysphere.patch
@@ -28,5 +28,17 @@ diff --git a/src/share/keytrans b/src/share/keytrans
  
  # keytrans: this is an RSA key translation utility; it is capable of
  # transforming RSA keys (both public keys and secret keys) between
+diff --git a/tests/basic b/tests/basic
+--- a/tests/basic
++++ b/tests/basic
+@@ -343,7 +340,7 @@ if [ "$MONKEYSPHERE_TEST_USE_ED25519" = true ]; then
+     echo "### generating ed25519 key for testuser..."
+     # from the imported secret key
+     USER_FPR=8A4B353B4CBA6F30625498BAE00B5EEEBA79B482
+-    gpg --quick-add-key "$USER_FPR" ed25519 auth 2d
++    gpg --no-tty --quick-add-key "$USER_FPR" ed25519 auth 2d
+ else
+     echo "### generating standard monkeysphere key for testuser..."
+     monkeysphere gen-subkey
 -- 
 2.16.3
diff --git a/nixpkgs/pkgs/tools/security/opensc/default.nix b/nixpkgs/pkgs/tools/security/opensc/default.nix
index c23827842f23..7d709712fc80 100644
--- a/nixpkgs/pkgs/tools/security/opensc/default.nix
+++ b/nixpkgs/pkgs/tools/security/opensc/default.nix
@@ -44,7 +44,6 @@ stdenv.mkDerivation rec {
     description = "Set of libraries and utilities to access smart cards";
     homepage = https://github.com/OpenSC/OpenSC/wiki;
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ wkennington ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/pcsclite/default.nix b/nixpkgs/pkgs/tools/security/pcsclite/default.nix
index 95f9bf16ebac..66a5615ee135 100644
--- a/nixpkgs/pkgs/tools/security/pcsclite/default.nix
+++ b/nixpkgs/pkgs/tools/security/pcsclite/default.nix
@@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
     description = "Middleware to access a smart card using SCard API (PC/SC)";
     homepage = https://pcsclite.apdu.fr/;
     license = licenses.bsd3;
-    maintainers = with maintainers; [ wkennington ];
     platforms = with platforms; unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/pcsctools/default.nix b/nixpkgs/pkgs/tools/security/pcsctools/default.nix
index c1ab5e82af34..24519654e9a5 100644
--- a/nixpkgs/pkgs/tools/security/pcsctools/default.nix
+++ b/nixpkgs/pkgs/tools/security/pcsctools/default.nix
@@ -1,6 +1,5 @@
 { stdenv, lib, fetchurl, makeWrapper, pkgconfig, udev, dbus, pcsclite
-, wget, coreutils
-, perl, pcscperl, Glib, Gtk2, Pango, Cairo
+, wget, coreutils, perlPackages
 }:
 
 let deps = lib.makeBinPath [ wget coreutils ];
@@ -13,17 +12,17 @@ in stdenv.mkDerivation rec {
     sha256 = "14vw6ya8gzyw3lzyrsvfcxx7qm7ry39fbxcdqqh552c1lyxnm7n3";
   };
 
-  buildInputs = [ udev dbus perl pcsclite ];
+  buildInputs = [ udev dbus perlPackages.perl pcsclite ];
 
   nativeBuildInputs = [ makeWrapper pkgconfig ];
 
   postInstall = ''
     wrapProgram $out/bin/scriptor \
-      --set PERL5LIB "${lib.makePerlPath [ pcscperl ]}"
+      --set PERL5LIB "${with perlPackages; makePerlPath [ pcscperl ]}"
     wrapProgram $out/bin/gscriptor \
-      --set PERL5LIB "${lib.makePerlPath [ pcscperl Glib Gtk2 Pango Cairo ]}"
+      --set PERL5LIB "${with perlPackages; makePerlPath [ pcscperl Glib Gtk2 Pango Cairo ]}"
     wrapProgram $out/bin/ATR_analysis \
-      --set PERL5LIB "${lib.makePerlPath [ pcscperl ]}"
+      --set PERL5LIB "${with perlPackages; makePerlPath [ pcscperl ]}"
     wrapProgram $out/bin/pcsc_scan \
       --set PATH "$out/bin:${deps}"
   '';
diff --git a/nixpkgs/pkgs/tools/security/signing-party/default.nix b/nixpkgs/pkgs/tools/security/signing-party/default.nix
index 14848df3f3ad..7202f2aa28a1 100644
--- a/nixpkgs/pkgs/tools/security/signing-party/default.nix
+++ b/nixpkgs/pkgs/tools/security/signing-party/default.nix
@@ -1,29 +1,26 @@
 { stdenv, fetchurl, autoconf, automake, makeWrapper
-, python, perl, perlPackages
+, python3, perl, perlPackages
 , libmd, gnupg1, which, getopt, libpaper, nettools, qprint
 , sendmailPath ? "/run/wrappers/bin/sendmail" }:
 
 let
   # All runtime dependencies from the CPAN graph:
   # https://widgets.stratopan.com/wheel?q=GnuPG-Interface-0.52&runtime=1&fs=1
-  # TODO: XSLoader seems optional
   GnuPGInterfaceRuntimeDependencies = with perlPackages; [
     strictures ClassMethodModifiers DataPerl DevelGlobalDestruction ExporterTiny
     GnuPGInterface ListMoreUtils ModuleRuntime Moo MooXHandlesVia MooXlate
-    RoleTiny SubExporterProgressive SubQuote TypeTiny XSLoader
+    RoleTiny SubExporterProgressive SubQuote TypeTiny
   ];
 in stdenv.mkDerivation rec {
   pname = "signing-party";
-  version = "2.7";
+  version = "2.8";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/s/${pname}/${pname}_${version}.orig.tar.gz";
-    sha256 = "0znklgvxn7k7p6q7r8chcj86zmzildjamr3qlqfxkj5m7yziqr21";
+    sha256 = "1dfry04gsa8kv7a2kr4p7a4b616sql41hsyff4pmfvrhiv2fz39z";
   };
 
-  sourceRoot = ".";
-
   # TODO: Get this patch upstream...
   patches = [ ./gpgwrap_makefile.patch ];
 
@@ -45,7 +42,7 @@ in stdenv.mkDerivation rec {
   # Perl is required for it's pod2man.
   # Python and Perl are required for patching the script interpreter paths.
   nativeBuildInputs = [ autoconf automake makeWrapper ];
-  buildInputs = [ python perl perlPackages.GnuPGInterface libmd gnupg1 ];
+  buildInputs = [ python3 perl perlPackages.GnuPGInterface libmd gnupg1 ];
 
   postInstall = ''
     # Install all tools which aren't handled by 'make install'.
@@ -122,14 +119,14 @@ in stdenv.mkDerivation rec {
     # scripts)
 
     wrapProgram $out/bin/caff --set PERL5LIB \
-      ${with perlPackages; stdenv.lib.makePerlPath ([
+      ${with perlPackages; makePerlPath ([
         TextTemplate MIMETools MailTools TimeDate NetIDNEncode ]
         ++ GnuPGInterfaceRuntimeDependencies)} \
       --prefix PATH ":" \
       "${stdenv.lib.makeBinPath [ nettools gnupg1 ]}"
 
     wrapProgram $out/bin/gpg-key2latex --set PERL5LIB \
-      ${stdenv.lib.makePerlPath GnuPGInterfaceRuntimeDependencies} \
+      ${perlPackages.makePerlPath GnuPGInterfaceRuntimeDependencies} \
       --prefix PATH ":" \
       "${stdenv.lib.makeBinPath [ gnupg1 libpaper ]}"
 
@@ -140,7 +137,7 @@ in stdenv.mkDerivation rec {
       "${stdenv.lib.makeBinPath [ gnupg1 qprint ]}"
 
     wrapProgram $out/bin/gpgdir --set PERL5LIB \
-      ${with perlPackages; stdenv.lib.makePerlPath ([
+      ${with perlPackages; makePerlPath ([
         TermReadKey ]
         ++ GnuPGInterfaceRuntimeDependencies)} \
       --prefix PATH ":" \
@@ -155,7 +152,7 @@ in stdenv.mkDerivation rec {
 #    wrapProgram $out/bin/gpgparticipants-prefill
 
     wrapProgram $out/bin/gpgsigs --set PERL5LIB \
-      ${stdenv.lib.makePerlPath GnuPGInterfaceRuntimeDependencies} \
+      ${perlPackages.makePerlPath GnuPGInterfaceRuntimeDependencies} \
       --prefix PATH ":" \
       "${stdenv.lib.makeBinPath [ gnupg1 ]}"
 
@@ -171,12 +168,12 @@ in stdenv.mkDerivation rec {
       "${stdenv.lib.makeBinPath [ gnupg1 ]}"
 
     wrapProgram $out/bin/pgp-clean --set PERL5LIB \
-      ${stdenv.lib.makePerlPath GnuPGInterfaceRuntimeDependencies} \
+      ${perlPackages.makePerlPath GnuPGInterfaceRuntimeDependencies} \
       --prefix PATH ":" \
       "${stdenv.lib.makeBinPath [ gnupg1 ]}"
 
     wrapProgram $out/bin/pgp-fixkey --set PERL5LIB \
-      ${stdenv.lib.makePerlPath GnuPGInterfaceRuntimeDependencies} \
+      ${perlPackages.makePerlPath GnuPGInterfaceRuntimeDependencies} \
       --prefix PATH ":" \
       "${stdenv.lib.makeBinPath [ gnupg1 ]}"
 
@@ -189,11 +186,11 @@ in stdenv.mkDerivation rec {
 #    wrapProgram $out/bin/sig2dot
 
     wrapProgram $out/bin/springgraph --set PERL5LIB \
-      ${with perlPackages; stdenv.lib.makePerlPath [ GD ]}
+      ${with perlPackages; makePerlPath [ GD ]}
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pgp-tools.alioth.debian.org/;
+    homepage = https://salsa.debian.org/signing-party-team/signing-party;
     description = "A collection of several projects relating to OpenPGP";
     longDescription = ''
       This is a collection of several projects relating to OpenPGP.
diff --git a/nixpkgs/pkgs/tools/security/sshguard/default.nix b/nixpkgs/pkgs/tools/security/sshguard/default.nix
index facbfcad4cfd..4774e5cef139 100644
--- a/nixpkgs/pkgs/tools/security/sshguard/default.nix
+++ b/nixpkgs/pkgs/tools/security/sshguard/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, autoreconfHook, yacc, flex}:
 
 stdenv.mkDerivation rec {
-  version = "2.2.0";
+  version = "2.3.1";
   name = "sshguard-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/sshguard/${name}.tar.gz";
-    sha256 = "1hjn6smd6kc3yg2xm1kvszqpm5w9a6vic6a1spzy8czcwvz0gzra";
+    sha256 = "18i0kmjvym9xym3ysg5kap0298nzcprar9y96k54p3zpdpi5b43n";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/tools/security/tor/default.nix b/nixpkgs/pkgs/tools/security/tor/default.nix
index d43b8598c18b..1bda80dab454 100644
--- a/nixpkgs/pkgs/tools/security/tor/default.nix
+++ b/nixpkgs/pkgs/tools/security/tor/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, libevent, openssl, zlib, torsocks
-, libseccomp, systemd, libcap
+, libseccomp, systemd, libcap, lzma, zstd, scrypt
 
 # for update.nix
 , writeScript
@@ -14,17 +14,17 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tor-0.3.4.9";
+  name = "tor-0.3.5.7";
 
   src = fetchurl {
     url = "https://dist.torproject.org/${name}.tar.gz";
-    sha256 = "0jhnvnp08hsfrzgsvg5xnfxyaw3nzgg9h24cwbwnz6iby20i05qs";
+    sha256 = "17l31p58rsd30w4b6r4d8pbr84z3y7awahvjxbpmnlxc47y8f20v";
   };
 
   outputs = [ "out" "geoip" ];
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libevent openssl zlib ] ++
+  buildInputs = [ libevent openssl zlib lzma zstd scrypt ] ++
     stdenv.lib.optionals stdenv.isLinux [ libseccomp systemd libcap ];
 
   NIX_CFLAGS_LINK = stdenv.lib.optionalString stdenv.cc.isGNU "-lgcc_s";
diff --git a/nixpkgs/pkgs/tools/security/tor/torsocks.nix b/nixpkgs/pkgs/tools/security/tor/torsocks.nix
index ebc567f54cea..686d03b7c3fa 100644
--- a/nixpkgs/pkgs/tools/security/tor/torsocks.nix
+++ b/nixpkgs/pkgs/tools/security/tor/torsocks.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "torsocks-${version}";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchgit {
     url    = meta.repositories.git;
     rev    = "refs/tags/v${version}";
-    sha256 = "1xwkmfaxhhnbmvp37agnby1n53hznwhvx0dg1hj35467qfx985zc";
+    sha256 = "0x0wpcigf22sjxg7bm0xzqihmsrz51hl4v8xf91qi4qnmr4ny1hb";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/security/vault/default.nix b/nixpkgs/pkgs/tools/security/vault/default.nix
index 4d646cfd332f..c21064c708d4 100644
--- a/nixpkgs/pkgs/tools/security/vault/default.nix
+++ b/nixpkgs/pkgs/tools/security/vault/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "vault-${version}";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "17gyl8hb72gwb3vy7nrp3cj9lrj0zgb8xja0bgwqpv511hg1qwwf";
+    sha256 = "1nrqwgxfs6n2bjhjndqvwzn9c62pb5ky9biyh47i0wvbxhdh0hfj";
   };
 
   nativeBuildInputs = [ go gox removeReferencesTo ];
diff --git a/nixpkgs/pkgs/tools/security/wpscan/Gemfile b/nixpkgs/pkgs/tools/security/wpscan/Gemfile
index f20afe0e6543..3b5e4282ab58 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/Gemfile
+++ b/nixpkgs/pkgs/tools/security/wpscan/Gemfile
@@ -1,2 +1,2 @@
 source 'https://rubygems.org'
-gem 'wpscan', '= 3.4.0'
+gem 'wpscan', '= 3.4.3'
diff --git a/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock b/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
index 47283ab6de84..877e3f4b53bf 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
+++ b/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
@@ -1,35 +1,33 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    activesupport (5.2.1)
+    activesupport (5.2.2)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
       tzinfo (~> 1.1)
     addressable (2.5.2)
       public_suffix (>= 2.0.2, < 4.0)
-    cms_scanner (0.0.41.0)
-      activesupport (~> 5.2)
-      addressable (~> 2.5)
-      nokogiri (~> 1.8.0)
-      opt_parse_validator (~> 0.0.16.4)
+    cms_scanner (0.0.41.3)
+      nokogiri (~> 1.10.0)
+      opt_parse_validator (~> 0.0.16.6)
       public_suffix (~> 3.0.0)
       ruby-progressbar (~> 1.10.0)
       typhoeus (~> 1.3.0)
       xmlrpc (~> 0.3)
       yajl-ruby (~> 1.4.1)
-    concurrent-ruby (1.1.3)
-    ethon (0.11.0)
+    concurrent-ruby (1.1.4)
+    ethon (0.12.0)
       ffi (>= 1.3.0)
-    ffi (1.9.25)
-    i18n (1.1.1)
+    ffi (1.10.0)
+    i18n (1.5.2)
       concurrent-ruby (~> 1.0)
-    mini_portile2 (2.3.0)
+    mini_portile2 (2.4.0)
     minitest (5.11.3)
-    nokogiri (1.8.5)
-      mini_portile2 (~> 2.3.0)
-    opt_parse_validator (0.0.16.4)
-      activesupport (~> 5.2.1)
+    nokogiri (1.10.1)
+      mini_portile2 (~> 2.4.0)
+    opt_parse_validator (0.0.16.6)
+      activesupport (>= 4.2, < 5.3.0)
       addressable (~> 2.5.0)
     public_suffix (3.0.3)
     ruby-progressbar (1.10.0)
@@ -38,10 +36,8 @@ GEM
       ethon (>= 0.9.0)
     tzinfo (1.2.5)
       thread_safe (~> 0.1)
-    wpscan (3.4.0)
-      activesupport (~> 5.2)
-      cms_scanner (~> 0.0.41.0)
-      yajl-ruby (~> 1.3)
+    wpscan (3.4.3)
+      cms_scanner (~> 0.0.41.2)
     xmlrpc (0.3.0)
     yajl-ruby (1.4.1)
 
@@ -49,7 +45,7 @@ PLATFORMS
   ruby
 
 DEPENDENCIES
-  wpscan (= 3.4.0)
+  wpscan (= 3.4.3)
 
 BUNDLED WITH
    1.16.3
diff --git a/nixpkgs/pkgs/tools/security/wpscan/gemset.nix b/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
index 5c27c726be6f..6377f05607fe 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
+++ b/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
@@ -1,15 +1,19 @@
 {
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ziy6xk31k4fs115cdkba1ys4i8nzcyri7a2jig7nx7k5h7li6l2";
+      sha256 = "1iya7vxqwxysr74s7b4z1x19gmnx5advimzip3cbmsd5bd43wfgz";
       type = "gem";
     };
-    version = "5.2.1";
+    version = "5.2.2";
   };
   addressable = {
     dependencies = ["public_suffix"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
@@ -18,57 +22,71 @@
     version = "2.5.2";
   };
   cms_scanner = {
-    dependencies = ["activesupport" "addressable" "nokogiri" "opt_parse_validator" "public_suffix" "ruby-progressbar" "typhoeus" "xmlrpc" "yajl-ruby"];
+    dependencies = ["nokogiri" "opt_parse_validator" "public_suffix" "ruby-progressbar" "typhoeus" "xmlrpc" "yajl-ruby"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1azsvgg070dng2jaz44zaqkvqyhf3pj131nqa7wdv3bsqp8y7kap";
+      sha256 = "0m09dlyd4c51nd81dp09nddjpp81n1y0k8g36jf4d78nlgsc83s6";
       type = "gem";
     };
-    version = "0.0.41.0";
+    version = "0.0.41.3";
   };
   concurrent-ruby = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18q9skp5pfq4jwbxzmw8q2rn4cpw6mf4561i2hsjcl1nxdag2jvb";
+      sha256 = "1ixcx9pfissxrga53jbdpza85qd5f6b5nq1sfqa9rnfq82qnlbp1";
       type = "gem";
     };
-    version = "1.1.3";
+    version = "1.1.4";
   };
   ethon = {
     dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0y70szwm2p0b9qfvpqrzjrgm3jz0ig65vlbfr6ppc3z0m1h7kv48";
+      sha256 = "0gggrgkcq839mamx7a8jbnp2h7x2ykfn34ixwskwb0lzx2ak17g9";
       type = "gem";
     };
-    version = "0.11.0";
+    version = "0.12.0";
   };
   ffi = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
+      sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
       type = "gem";
     };
-    version = "1.9.25";
+    version = "1.10.0";
   };
   i18n = {
     dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gcp1m1p6dpasycfz2sj82ci9ggz7lsskz9c9q6gvfwxrl8y9dx7";
+      sha256 = "088xnnpi7hq243n44fmgqvjr0m86ivk8r87k9b3ddq3b7nl6nyf9";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.5.2";
   };
   mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.4.0";
   };
   minitest = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
@@ -78,23 +96,29 @@
   };
   nokogiri = {
     dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz";
+      sha256 = "09zll7c6j7xr6wyvh5mm5ncj6pkryp70ybcsxdbw1nyphx5dh184";
       type = "gem";
     };
-    version = "1.8.5";
+    version = "1.10.1";
   };
   opt_parse_validator = {
     dependencies = ["activesupport" "addressable"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m3flpg1d7la1frip3vn0hgm6d91f0ys1jq2bhxr5va1vjbfvgbs";
+      sha256 = "127qxgf6kvv4fnnn5bxx8ivfknjf3ydz3vkxrxj26mva4ijwnkl4";
       type = "gem";
     };
-    version = "0.0.16.4";
+    version = "0.0.16.6";
   };
   public_suffix = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
@@ -103,6 +127,8 @@
     version = "3.0.3";
   };
   ruby-progressbar = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1cv2ym3rl09svw8940ny67bav7b2db4ms39i4raaqzkf59jmhglk";
@@ -111,6 +137,8 @@
     version = "1.10.0";
   };
   thread_safe = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
@@ -120,6 +148,8 @@
   };
   typhoeus = {
     dependencies = ["ethon"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0cni8b1idcp0dk8kybmxydadhfpaj3lbs99w5kjibv8bsmip2zi5";
@@ -129,6 +159,8 @@
   };
   tzinfo = {
     dependencies = ["thread_safe"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
@@ -137,15 +169,19 @@
     version = "1.2.5";
   };
   wpscan = {
-    dependencies = ["activesupport" "cms_scanner" "yajl-ruby"];
+    dependencies = ["cms_scanner"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17mqqaiawp3apdfw4l6r2wp0a4f0rp8wdqd2426xkna7vsxgh8gs";
+      sha256 = "13wmgmkh7n2jkgf46q9755nsvj34fag1gnns7rlbynkk1277ng6x";
       type = "gem";
     };
-    version = "3.4.0";
+    version = "3.4.3";
   };
   xmlrpc = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1s744iwblw262gj357pky3d9fcx9hisvla7rnw29ysn5zsb6i683";
@@ -154,6 +190,8 @@
     version = "0.3.0";
   };
   yajl-ruby = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "16v0w5749qjp13xhjgr2gcsvjv6mf35br7iqwycix1n2h7kfcckf";
diff --git a/nixpkgs/pkgs/tools/system/acpica-tools/default.nix b/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
index beb2e75b08b5..4f48266cc1ad 100644
--- a/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
+++ b/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "acpica-tools-${version}";
-  version = "20181213";
+  version = "20190108";
 
   src = fetchurl {
     url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
-    sha256 = "1vgqlv9pvxc52faxixpgz7hi1awqmj88bw5vqn3bldf6fmkh147w";
+    sha256 = "0bqhr3ndchvfhxb31147z8gd81dysyz5dwkvmp56832d0js2564q";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";
diff --git a/nixpkgs/pkgs/tools/system/bfs/default.nix b/nixpkgs/pkgs/tools/system/bfs/default.nix
index 3734fefe60a2..234b40e03860 100644
--- a/nixpkgs/pkgs/tools/system/bfs/default.nix
+++ b/nixpkgs/pkgs/tools/system/bfs/default.nix
@@ -1,23 +1,17 @@
-{ stdenv, fetchFromGitHub, bash }:
+{ stdenv, fetchFromGitHub, libcap, acl }:
 
 stdenv.mkDerivation rec {
   name = "bfs-${version}";
-  version = "1.2.4";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     repo = "bfs";
     owner = "tavianator";
     rev = version;
-    sha256 = "0nxx2njjp04ik6msfmf07hprw0j88wg04m0q1sf17mhkliw2d78s";
+    sha256 = "0cyylqmq31if93zz0l1fnm454dsmcx34j4c2r0xprcggihdxbwk5";
   };
 
-  postPatch = ''
-    # Patch tests (both shebangs and usage in scripts)
-    for f in $(find -type f -name '*.sh'); do
-      substituteInPlace $f --replace "/bin/bash" "${bash}/bin/bash"
-    done
-  '';
-  doCheck = true;
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ libcap acl ];
 
   makeFlags = [ "PREFIX=$(out)" ];
   buildFlags = [ "release" ]; # "release" enables compiler optimizations
@@ -30,7 +24,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = https://github.com/tavianator/bfs;
     license = licenses.bsd0;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ yesbox ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/facter/default.nix b/nixpkgs/pkgs/tools/system/facter/default.nix
index 8fe8ac836ba9..c180ef4070c0 100644
--- a/nixpkgs/pkgs/tools/system/facter/default.nix
+++ b/nixpkgs/pkgs/tools/system/facter/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "facter-${version}";
-  version = "3.12.2";
+  version = "3.12.3";
 
   src = fetchFromGitHub {
-    sha256 = "021z0r6m5nyi37045ycjpw0lawvw70w4pjl56cj1mwz99pq1qqns";
+    sha256 = "0b9ci3r42dvqvvh3vflba75iv52n0viwddw9qpjsprb35ff9vzp7";
     rev = version;
     repo = "facter";
     owner = "puppetlabs";
diff --git a/nixpkgs/pkgs/tools/system/fakeroot/default.nix b/nixpkgs/pkgs/tools/system/fakeroot/default.nix
index 8796de4e9e07..1a16a8a34c7f 100644
--- a/nixpkgs/pkgs/tools/system/fakeroot/default.nix
+++ b/nixpkgs/pkgs/tools/system/fakeroot/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, getopt, libcap }:
+{ stdenv, fetchurl, fetchpatch, getopt, libcap, gnused }:
 
 stdenv.mkDerivation rec {
   version = "1.23";
@@ -29,14 +29,12 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  buildInputs = [ getopt ]
+  buildInputs = [ getopt gnused ]
     ++ stdenv.lib.optional (!stdenv.isDarwin) libcap
     ;
 
   postUnpack = ''
-    for prog in getopt; do
-      sed -i "s@getopt@$(type -p getopt)@g" ${name}/scripts/fakeroot.in
-    done
+    sed -i -e "s@getopt@$(type -p getopt)@g" -e "s@sed@$(type -p sed)@g" ${name}/scripts/fakeroot.in
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/tools/system/freeipmi/default.nix b/nixpkgs/pkgs/tools/system/freeipmi/default.nix
index 5fd4136e3c2d..079494bb5990 100644
--- a/nixpkgs/pkgs/tools/system/freeipmi/default.nix
+++ b/nixpkgs/pkgs/tools/system/freeipmi/default.nix
@@ -1,12 +1,12 @@
 { fetchurl, stdenv, libgcrypt, readline, libgpgerror }:
 
 stdenv.mkDerivation rec {
-  version = "1.6.2";
+  version = "1.6.3";
   name = "freeipmi-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/freeipmi/${name}.tar.gz";
-    sha256 = "0jhjf21gn1m9lhjsc1ard9zymq25mk7rxcyygjfxgy0vb4j36l9i";
+    sha256 = "1sg12ycig2g5yv9l3vx25wsjmz7ybnrsvji0vs51yjmclwsygm5a";
   };
 
   buildInputs = [ libgcrypt readline libgpgerror ];
diff --git a/nixpkgs/pkgs/tools/system/gdmap/default.nix b/nixpkgs/pkgs/tools/system/gdmap/default.nix
index 72938216b0a4..0c254bb28545 100644
--- a/nixpkgs/pkgs/tools/system/gdmap/default.nix
+++ b/nixpkgs/pkgs/tools/system/gdmap/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
+  NIX_LDFLAGS = [
+    "-lm"
+  ];
+
   meta = with stdenv.lib; {
     homepage = http://gdmap.sourceforge.net;
     description = "Recursive rectangle map of disk usage";
diff --git a/nixpkgs/pkgs/tools/system/inxi/default.nix b/nixpkgs/pkgs/tools/system/inxi/default.nix
new file mode 100644
index 000000000000..02379bcfe5c8
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/inxi/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, perl }:
+
+stdenv.mkDerivation rec {
+  name = "inxi-${version}";
+  version = "3.0.30-1";
+
+  src = fetchFromGitHub {
+    owner = "smxi";
+    repo = "inxi";
+    rev = version;
+    sha256 = "04dkws3716clscl6iq3sy6m822rqzwdg5mn03l0vhcdbqcng46s6";
+  };
+
+  buildInputs = [ perl ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp inxi $out/bin/
+    mkdir -p $out/share/man/man1
+    cp inxi.1 $out/share/man/man1/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A full featured CLI system information tool";
+    homepage = https://smxi.org/docs/inxi.htm;
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ primeos ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/system/logcheck/default.nix b/nixpkgs/pkgs/tools/system/logcheck/default.nix
index 0f2de9888e44..25a9660aed90 100644
--- a/nixpkgs/pkgs/tools/system/logcheck/default.nix
+++ b/nixpkgs/pkgs/tools/system/logcheck/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, lockfileProgs, perl, mimeConstruct }:
+{ stdenv, fetchurl, lockfileProgs, perlPackages }:
 
 stdenv.mkDerivation rec {
   name = "logcheck-${version}";
@@ -16,13 +16,13 @@ stdenv.mkDerivation rec {
   '';
 
   preConfigure = ''
-    substituteInPlace src/logtail --replace "/usr/bin/perl" "${perl}/bin/perl"
-    substituteInPlace src/logtail2 --replace "/usr/bin/perl" "${perl}/bin/perl"
+    substituteInPlace src/logtail --replace "/usr/bin/perl" "${perlPackages.perl}/bin/perl"
+    substituteInPlace src/logtail2 --replace "/usr/bin/perl" "${perlPackages.perl}/bin/perl"
 
     sed -i -e 's|! -f /usr/bin/lockfile|! -f ${lockfileProgs}/bin/lockfile|' \
            -e 's|^\([ \t]*\)lockfile-|\1${lockfileProgs}/bin/lockfile-|' \
            -e "s|/usr/sbin/logtail2|$out/sbin/logtail2|" \
-           -e 's|mime-construct|${mimeConstruct}/bin/mime-construct|' \
+           -e 's|mime-construct|${perlPackages.mimeConstruct}/bin/mime-construct|' \
            -e 's|\$(run-parts --list "\$dir")|"$dir"/*|' src/logcheck
   '';
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     "SBINDIR=sbin"
     "BINDIR=bin"
     "SHAREDIR=share/logtail/detectrotate"
- ];
+  ];
 
   meta = with stdenv.lib; {
     description = "Mails anomalies in the system logfiles to the administrator";
@@ -44,6 +44,5 @@ stdenv.mkDerivation rec {
     homepage = http://logcheck.alioth.debian.org/;
     license = licenses.gpl2;
     maintainers = [ maintainers.bluescreen303 ];
-    
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/nvtop/default.nix b/nixpkgs/pkgs/tools/system/nvtop/default.nix
index 0b4a33e43853..19581c82c78f 100644
--- a/nixpkgs/pkgs/tools/system/nvtop/default.nix
+++ b/nixpkgs/pkgs/tools/system/nvtop/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "nvtop-${version}";
-  version = "0.2.2";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "Syllo";
     repo  = "nvtop";
     rev = version;
-    sha256 = "0gampikzmd1l0vdhvarl0hckl6kmjh2rwcllpg6rrm2p75njw7hv";
+    sha256 = "1b6yz54xddip1r0k8cbqg41dpyhds18fj29bj3yf40xvysklb0f4";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/tools/system/osquery/default.nix b/nixpkgs/pkgs/tools/system/osquery/default.nix
index c7faf4d3889e..32c085e2ec5f 100644
--- a/nixpkgs/pkgs/tools/system/osquery/default.nix
+++ b/nixpkgs/pkgs/tools/system/osquery/default.nix
@@ -39,6 +39,10 @@ stdenv.mkDerivation rec {
     pkgconfig cmake pythonPackages.python pythonPackages.jinja2 doxygen fpm
   ];
 
+  NIX_LDFLAGS = [
+    "-lcrypto"
+  ];
+
   buildInputs = let
     gflags' = google-gflags.overrideAttrs (old: {
       cmakeFlags = stdenv.lib.filter (f: isNull (builtins.match ".*STATIC.*" f)) old.cmakeFlags;
diff --git a/nixpkgs/pkgs/tools/system/plan9port/builder.sh b/nixpkgs/pkgs/tools/system/plan9port/builder.sh
index 7729bae897c0..c0d7134bcc59 100644
--- a/nixpkgs/pkgs/tools/system/plan9port/builder.sh
+++ b/nixpkgs/pkgs/tools/system/plan9port/builder.sh
@@ -5,8 +5,8 @@ export PLAN9_TARGET=$PLAN9
 
 configurePhase()
 {
-    echo CFLAGS=\"-I${fontconfig_dev}/include -I${xproto_exp}/include -I${xextproto_exp}/include -I${libX11_dev}/include -I${libXt_dev}/include -I${libXext_dev}/include -I${freetype_dev}/include -I${zlib_dev}/include\" > LOCAL.config
-    echo LDFLAGS=\"-L${fontconfig_lib}/lib -L${xproto_exp}/lib -L${xextproto_exp}/lib -L${libX11_exp}/lib -L${libXt_exp}/lib -L${libXext_exp}/lib -L${freetype_exp}/lib -L${zlib_exp}/lib\" >> LOCAL.config    
+    echo CFLAGS=\"-I${fontconfig_dev}/include -I${xorgproto_exp}/include -I${libX11_dev}/include -I${libXt_dev}/include -I${libXext_dev}/include -I${freetype_dev}/include -I${zlib_dev}/include\" > LOCAL.config
+    echo LDFLAGS=\"-L${fontconfig_lib}/lib -L${xorgproto_exp}/lib -L${libX11_exp}/lib -L${libXt_exp}/lib -L${libXext_exp}/lib -L${freetype_exp}/lib -L${zlib_exp}/lib\" >> LOCAL.config    
     echo X11=\"${libXt_dev}/include\" >> LOCAL.config
 
     for f in `grep -l -r /usr/local/plan9`; do
diff --git a/nixpkgs/pkgs/tools/system/plan9port/default.nix b/nixpkgs/pkgs/tools/system/plan9port/default.nix
index c71c70b57a7a..83b006e786f1 100644
--- a/nixpkgs/pkgs/tools/system/plan9port/default.nix
+++ b/nixpkgs/pkgs/tools/system/plan9port/default.nix
@@ -1,6 +1,5 @@
 { stdenv, fetchgit, which, libX11, libXt, fontconfig, freetype
-, xproto ? null
-, xextproto ? null
+, xorgproto ? null
 , libXext ? null
 , zlib ? null
   # For building web manuals
@@ -45,9 +44,8 @@ stdenv.mkDerivation rec {
     perl
     libX11
     fontconfig
-    xproto
+    xorgproto
     libXt
-    xextproto
     libXext
     freetype #fontsrv wants ft2build.h. provides system fonts for acme and sam.
   ];
@@ -69,8 +67,7 @@ stdenv.mkDerivation rec {
   freetype_dev = freetype.dev;
   zlib_dev = zlib.dev;
   
-  xproto_exp = xproto;
-  xextproto_exp = xextproto;
+  xorgproto_exp = xorgproto;
   libX11_exp = libX11;
   libXt_exp = libXt;
   libXext_exp = libXext;
diff --git a/nixpkgs/pkgs/tools/system/proot/default.nix b/nixpkgs/pkgs/tools/system/proot/default.nix
index 63e135075b9c..1d72429323d8 100644
--- a/nixpkgs/pkgs/tools/system/proot/default.nix
+++ b/nixpkgs/pkgs/tools/system/proot/default.nix
@@ -8,7 +8,7 @@
   src = fetchFromGitHub {
     inherit rev sha256;
     repo = "proot";
-    owner = "cedric-vincent";
+    owner = "proot-me";
   };
 
   buildInputs = [ talloc ];
@@ -35,7 +35,7 @@
     description = "User-space implementation of chroot, mount --bind and binfmt_misc";
     platforms = platforms.linux;
     license = licenses.gpl2;
-    maintainers = with maintainers; [ ianwookim makefu ];
+    maintainers = with maintainers; [ ianwookim makefu veprbl ];
   };
 })
 (if stdenv.isAarch64 then rec {
@@ -49,8 +49,8 @@
     })
   ];
 } else {
-  version = "5.1.0.20171015";
-  sha256 = "0jam87msh5jx8vpb19n6xwxw1xlig5amdcqif7gn2rc8nhswpxif";
-  rev = "0bf2ee17daafeeadfed079cec97fe1ac781e696a";
+  version = "5.1.0.20181214";
+  sha256 = "07g1gfyjq7rypjdwxw495sk8k1y2i3y3nsm1rh9kgx3z47z28aah";
+  rev = "11972c0dab34e088c55c16a94d26c399ca7a26d8";
   patches = [];
 })
diff --git a/nixpkgs/pkgs/tools/system/ps_mem/default.nix b/nixpkgs/pkgs/tools/system/ps_mem/default.nix
index bbac78f4864b..3e7bb301a6b9 100644
--- a/nixpkgs/pkgs/tools/system/ps_mem/default.nix
+++ b/nixpkgs/pkgs/tools/system/ps_mem/default.nix
@@ -1,7 +1,7 @@
 { stdenv, pythonPackages, fetchFromGitHub }:
 
 let
-  version = "3.9";
+  version = "3.12";
   pname = "ps_mem";
 in pythonPackages.buildPythonApplication rec {
   name = "${pname}-${version}";
@@ -9,8 +9,8 @@ in pythonPackages.buildPythonApplication rec {
   src = fetchFromGitHub {
     owner = "pixelb";
     repo = "${pname}";
-    rev = "f0891def54f1edb78a70006603d2b025236b830f";
-    sha256 = "1vy0z5nhia61hpqndf7kkjm12mgi0kh33jx5g1glggy45ymcisif";
+    rev = "v${version}";
+    sha256 = "0kcxlmfisbwf24p2k72njfyfp22fjr9p9zalg9b4w0yhnlzk24ph";
   };
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/system/rsyslog/default.nix b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
index 91923e7e59b5..0ce6cb12a638 100644
--- a/nixpkgs/pkgs/tools/system/rsyslog/default.nix
+++ b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
@@ -110,6 +110,5 @@ stdenv.mkDerivation rec {
     description = "Enhanced syslog implementation";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/s6/default.nix b/nixpkgs/pkgs/tools/system/s6/default.nix
index 031439d56d5c..4389755bc4c1 100644
--- a/nixpkgs/pkgs/tools/system/s6/default.nix
+++ b/nixpkgs/pkgs/tools/system/s6/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6";
-  version = "2.7.2.0";
-  sha256 = "02canrzmhr66gi16ldyylk378jlmyfl73vn72ayr12h2wyxgqm5g";
+  version = "2.7.2.2";
+  sha256 = "0psjmfidjdciswakw9agzzniqfmhrr21765m0q77kwxg7iisgpsq";
 
   description = "skarnet.org's small & secure supervision software suite";
 
diff --git a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
index a7d749204b7a..d35f56e25197 100644
--- a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
+++ b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, autoreconfHook, libewf, afflib, openssl, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "4.6.4";
+  version = "4.6.5";
   name = "sleuthkit-${version}";
 
   src = fetchFromGitHub {
     owner = "sleuthkit";
     repo = "sleuthkit";
     rev = name;
-    sha256 = "0c6cglc4877pw6069ph72s3rv6747ps4vzhs6l2qxxncsrdlbzv0";
+    sha256 = "1q1cdixnfv9v4qlzza8xwdsyvq1vdw6gjgkd41yc1d57ldp1qm0c";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/system/smartmontools/default.nix b/nixpkgs/pkgs/tools/system/smartmontools/default.nix
index e8fbe90acde7..6c26855b9561 100644
--- a/nixpkgs/pkgs/tools/system/smartmontools/default.nix
+++ b/nixpkgs/pkgs/tools/system/smartmontools/default.nix
@@ -2,13 +2,13 @@
 , IOKit ? null , ApplicationServices ? null }:
 
 let
-  version = "6.6";
+  version = "7.0";
 
-  dbrev = "4852";
+  dbrev = "4883";
   drivedbBranch = "RELEASE_${builtins.replaceStrings ["."] ["_"] version}_DRIVEDB";
   driverdb = fetchurl {
     url    = "https://sourceforge.net/p/smartmontools/code/${dbrev}/tree/branches/${drivedbBranch}/smartmontools/drivedb.h?format=raw";
-    sha256 = "15gbwiw38yzl3cdvys6r7wknv5zdycm7zbswa2p9vzxlc8s63rlr";
+    sha256 = "07x3haz65jyhj579h4z17v6jkw6bbyid34442gl4qddmgv2qzvwx";
     name   = "smartmontools-drivedb.h";
   };
 
@@ -17,17 +17,10 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/smartmontools/${name}.tar.gz";
-    sha256 = "0m1hllbb78rr6cxkbalmz1gqkl0psgq8rrmv4gwcmz34n07kvx2i";
+    sha256 = "077nx2rn9szrg6isdh0938zbp7vr3dsyxl4jdyyzv1xwhqksrqg5";
   };
 
-  patches = [ ./smartmontools.patch ]
-    # https://www.smartmontools.org/changeset/4603
-    ++ stdenv.lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
-      name = "musl-canonicalize_file_name.patch";
-      url = "https://www.smartmontools.org/changeset/4603?format=diff&new=4603";
-      sha256 = "06s9pcd95snjkrbfrsjby2lln3lnwjd21bgabmvr4p7fx19b75zp";
-      stripLen = 2;
-    });
+  patches = [ ./smartmontools.patch ];
   postPatch = "cp -v ${driverdb} drivedb.h";
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/text/ansifilter/default.nix b/nixpkgs/pkgs/tools/text/ansifilter/default.nix
index 54591bf24424..4d75e328307a 100644
--- a/nixpkgs/pkgs/tools/text/ansifilter/default.nix
+++ b/nixpkgs/pkgs/tools/text/ansifilter/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "ansifilter-${version}";
-  version = "2.12";
+  version = "2.13";
 
   src = fetchurl {
     url = "http://www.andre-simon.de/zip/ansifilter-${version}.tar.bz2";
-    sha256 = "0ssvc51x90l1s9pxdxaw6ba01dcalrp0b5glrnh1j43i2pskc750";
+    sha256 = "1h0j30lg1lcr8p5dlhrgpm76bvlnhxn2cr3jqjnvnb2icgbyc8j0";
 
   };
 
diff --git a/nixpkgs/pkgs/tools/text/diffutils/default.nix b/nixpkgs/pkgs/tools/text/diffutils/default.nix
index 68b2e5121010..67f397dbe48a 100644
--- a/nixpkgs/pkgs/tools/text/diffutils/default.nix
+++ b/nixpkgs/pkgs/tools/text/diffutils/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, xz, coreutils ? null }:
 
 stdenv.mkDerivation rec {
-  name = "diffutils-3.6";
+  name = "diffutils-3.7";
 
   src = fetchurl {
     url = "mirror://gnu/diffutils/${name}.tar.xz";
-    sha256 = "1mivg0fy3a6fcn535ln8nkgfj6vxh5hsxxs5h6692wxmsjyyh8fn";
+    sha256 = "09isrg0isjinv8c535nxsi1s86wfdfzml80dbw41dj9x3hiad9xk";
   };
 
   outputs = [ "out" "info" ];
diff --git a/nixpkgs/pkgs/tools/text/discount/default.nix b/nixpkgs/pkgs/tools/text/discount/default.nix
index 75e380a6b661..69fce7a109cc 100644
--- a/nixpkgs/pkgs/tools/text/discount/default.nix
+++ b/nixpkgs/pkgs/tools/text/discount/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl}:
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   version = "2.2.4";
@@ -12,6 +12,13 @@ stdenv.mkDerivation rec {
   patches = ./fix-configure-path.patch;
   configureScript = "./configure.sh";
 
+  configureFlags = [
+    "--enable-all-features"
+    "--pkg-config"
+    "--shared"
+    "--with-fenced-code"
+  ];
+
   meta = with stdenv.lib; {
     description = "Implementation of Markdown markup language in C";
     homepage = http://www.pell.portland.or.us/~orc/Code/discount/;
diff --git a/nixpkgs/pkgs/tools/text/gnugrep/default.nix b/nixpkgs/pkgs/tools/text/gnugrep/default.nix
index 0b6f36bea724..702d1b4d89fa 100644
--- a/nixpkgs/pkgs/tools/text/gnugrep/default.nix
+++ b/nixpkgs/pkgs/tools/text/gnugrep/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, pcre, libiconv, perl }:
 
-let version = "3.1"; in
+let version = "3.3"; in
 
 stdenv.mkDerivation {
   name = "gnugrep-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/grep/grep-${version}.tar.xz";
-    sha256 = "0zm0ywmyz9g8vn1plw14mn8kj74yipx5qsljndbyfgmvndx5qqnv";
+    sha256 = "055mqp6vrd0brkygmygb2673qwz409a7kyp1mzbfy6cn94f58q5r";
   };
 
   # Perl is needed for testing
diff --git a/nixpkgs/pkgs/tools/text/gnused/default.nix b/nixpkgs/pkgs/tools/text/gnused/default.nix
index 4fa1a44f4ae8..8a44e434d4c1 100644
--- a/nixpkgs/pkgs/tools/text/gnused/default.nix
+++ b/nixpkgs/pkgs/tools/text/gnused/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "gnused-${version}";
-  version = "4.5";
+  version = "4.7";
 
   src = fetchurl {
     url = "mirror://gnu/sed/sed-${version}.tar.xz";
-    sha256 = "0h3b2jfj57wmz680vkbyavlsrkak556qhvs7m7fdlawwhg477bbs";
+    sha256 = "0smxcx66vx29djzb542nxcynl7qnzxqa5032ibazi7x2s267d198";
   };
 
   outputs = [ "out" "info" ];
diff --git a/nixpkgs/pkgs/tools/text/languagetool/default.nix b/nixpkgs/pkgs/tools/text/languagetool/default.nix
index 7e784b917b42..402bc17341e0 100644
--- a/nixpkgs/pkgs/tools/text/languagetool/default.nix
+++ b/nixpkgs/pkgs/tools/text/languagetool/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "LanguageTool-${version}";
-  version = "4.3";
+  version = "4.4";
 
   src = fetchzip {
     url = "https://www.languagetool.org/download/${name}.zip";
-    sha256 = "0zsz82jc39j5wjwynmjny7h82kjz7clyk37n6pxmi85ibbdm0zn4";
+    sha256 = "0cdrh59jcwrj5zp2lhbi9wp29pzabp35i8f7lbrs6z1wib6mgmp1";
   };
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ jre ];
diff --git a/nixpkgs/pkgs/tools/text/mb2md/default.nix b/nixpkgs/pkgs/tools/text/mb2md/default.nix
index a920cbf39482..adaff3e2f436 100644
--- a/nixpkgs/pkgs/tools/text/mb2md/default.nix
+++ b/nixpkgs/pkgs/tools/text/mb2md/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, perl, makeWrapper, perlPackages }:
+{ stdenv, lib, fetchurl, makeWrapper, perlPackages }:
 
 let
   perlDeps = with perlPackages; [ TimeDate ];
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ perl ];
+  buildInputs = [ perlPackages.perl ];
 
   unpackPhase = ''
     sourceRoot=.
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     wrapProgram $out/bin/mb2md \
-      --set PERL5LIB "${lib.makePerlPath perlDeps}"
+      --set PERL5LIB "${perlPackages.makePerlPath perlDeps}"
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/text/multitran/libmtquery/default.nix b/nixpkgs/pkgs/tools/text/multitran/libmtquery/default.nix
index 153184bf70f3..8b2032dcaba5 100644
--- a/nixpkgs/pkgs/tools/text/multitran/libmtquery/default.nix
+++ b/nixpkgs/pkgs/tools/text/multitran/libmtquery/default.nix
@@ -9,6 +9,10 @@ stdenv.mkDerivation {
 
   buildInputs = [ libmtsupport libfacet libbtree multitrandata ];
 
+  NIX_LDFLAGS = [
+    "-lbtree"
+  ];
+
   patchPhase = ''
     sed -i -e 's@\$(DESTDIR)/usr@'$out'@' \
       -e 's@/usr/include/mt/support@${libmtsupport}/include/mt/support@' \
diff --git a/nixpkgs/pkgs/tools/text/namazu/default.nix b/nixpkgs/pkgs/tools/text/namazu/default.nix
index 67a26cb41aa0..59cfc86efbf3 100644
--- a/nixpkgs/pkgs/tools/text/namazu/default.nix
+++ b/nixpkgs/pkgs/tools/text/namazu/default.nix
@@ -11,14 +11,13 @@ stdenv.mkDerivation rec {
   buildInputs = [ perl ];
 
   # First install the `File::MMagic' Perl module.
-  # !!! this shouldn't refer to Perl 5.10.0!
   preConfigure = ''
-    ( cd File-MMagic &&				\
-      perl Makefile.PL				\
-        LIB="$out/lib/perl5/site_perl/5.10.0"	\
-        INSTALLSITEMAN3DIR="$out/man" &&	\
+    ( cd File-MMagic &&                              \
+      perl Makefile.PL                               \
+        LIB="$out/${perl.libPrefix}/${perl.version}" \
+        INSTALLSITEMAN3DIR="$out/man" &&             \
       make && make install )
-    export PERL5LIB="$out/lib/perl5/site_perl/5.10.0:$PERL5LIB"
+    export PERL5LIB="$out/${perl.libPrefix}/${perl.version}:$PERL5LIB"
   '';
 
   # FIXME: The `tests/namazu-6' test fails on GNU/Linux, presumably because
diff --git a/nixpkgs/pkgs/tools/text/popfile/default.nix b/nixpkgs/pkgs/tools/text/popfile/default.nix
index dbc16cf7a453..5e76e3541733 100644
--- a/nixpkgs/pkgs/tools/text/popfile/default.nix
+++ b/nixpkgs/pkgs/tools/text/popfile/default.nix
@@ -18,7 +18,6 @@ stdenv.mkDerivation rec {
     perl
     DBI
     DBDSQLite
-    DigestMD5
     HTMLTagset
     TimeDate # == DateParse
     HTMLTemplate
diff --git a/nixpkgs/pkgs/tools/text/qshowdiff/default.nix b/nixpkgs/pkgs/tools/text/qshowdiff/default.nix
index 761a498bcfb6..e3970c059027 100644
--- a/nixpkgs/pkgs/tools/text/qshowdiff/default.nix
+++ b/nixpkgs/pkgs/tools/text/qshowdiff/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   configurePhase = ''
     mkdir -p $out/{bin,man/man1}
-    makeFlags="PREFIX=$out"
+    makeFlags="PREFIX=$out CC=$CXX"
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/tools/text/schema2ldif/default.nix b/nixpkgs/pkgs/tools/text/schema2ldif/default.nix
index 699d2d28b82b..2df6cbb27a2d 100644
--- a/nixpkgs/pkgs/tools/text/schema2ldif/default.nix
+++ b/nixpkgs/pkgs/tools/text/schema2ldif/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, makeWrapper, perl, perlPackages }: stdenv.mkDerivation rec {
+{ stdenv, fetchurl, makeWrapper, perlPackages }: stdenv.mkDerivation rec {
   name = "schema2ldif-${version}";
   version = "1.3";
 
@@ -7,7 +7,7 @@
     sha256 = "00cd9xx9g0mnnfn5lvay3vg166z84jla0ya1x34ljdc8bflxsr9a";
   };
 
-  buildInputs = [ perl ];
+  buildInputs = [ perlPackages.perl ];
   nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
@@ -18,7 +18,7 @@
     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 ]}"
+       --prefix PERL5PATH : "${perlPackages.makePerlPath [ perlPackages.GetoptLong ]}"
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/text/transifex-client/default.nix b/nixpkgs/pkgs/tools/text/transifex-client/default.nix
new file mode 100644
index 000000000000..62fdc0c7c84b
--- /dev/null
+++ b/nixpkgs/pkgs/tools/text/transifex-client/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, buildPythonApplication, fetchPypi
+, python-slugify, requests, urllib3 }:
+
+buildPythonApplication rec {
+  pname = "transifex-client";
+  version = "0.13.5";
+
+  propagatedBuildInputs = [
+    urllib3 requests python-slugify
+  ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "00igk35nyzqp1slj7lbhiv4lc42k87ix43ipx2zcrsjf6xxv6l7v";
+  };
+
+  prePatch = ''
+    substituteInPlace requirements.txt --replace "urllib3<1.24" "urllib3<2.0"
+  '';
+
+  # Requires external resources
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://www.transifex.com/;
+    license = licenses.gpl2;
+    description = "Transifex translation service client";
+    maintainers = [ maintainers.etu ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/text/vale/default.nix b/nixpkgs/pkgs/tools/text/vale/default.nix
index dc2e330e0134..ba7d1a336a02 100644
--- a/nixpkgs/pkgs/tools/text/vale/default.nix
+++ b/nixpkgs/pkgs/tools/text/vale/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "vale-${version}";
-  version = "1.2.6";
+  version = "1.3.0";
 
   goPackagePath = "github.com/errata-ai/vale";
 
@@ -10,14 +10,14 @@ buildGoPackage rec {
     owner  = "errata-ai";
     repo   = "vale";
     rev    = "v${version}";
-    sha256 = "1mhynasikncwz9dkk9z27qvwk03j7q0vx0wjnqg69pd97lgrp7zp";
+    sha256 = "1yfrn27z3ifdlvalgrnhdrkhxkh09xpyv681sr01wc2hxq6v3hqn";
   };
 
-  goDeps = ./deps.nix;
+  doCheck = true;
 
   meta = with stdenv.lib; {
     homepage = https://errata-ai.github.io/vale/;
-    description = "Vale is an open source linter for prose";
+    description = "A syntax-aware linter for prose built with speed and extensibility in mind";
     license = licenses.mit;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/nixpkgs/pkgs/tools/text/vale/deps.nix b/nixpkgs/pkgs/tools/text/vale/deps.nix
deleted file mode 100644
index c19af2cd4f0f..000000000000
--- a/nixpkgs/pkgs/tools/text/vale/deps.nix
+++ /dev/null
@@ -1,246 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "github.com/ValeLint/gospell";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ValeLint/gospell";
-      rev =  "90dfc71015dfebd3a7274f1ad2756c1dbf09e250";
-      sha256 = "0i2ha76q2xja8r4j72kqiarnylrbk4l1b29632skgzib6k4fh4g1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/client9/gospell";
-    fetch = {
-      type = "git";
-      url = "https://github.com/client9/gospell";
-      rev =  "90dfc71015dfebd3a7274f1ad2756c1dbf09e250";
-      sha256 = "0i2ha76q2xja8r4j72kqiarnylrbk4l1b29632skgzib6k4fh4g1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev =  "346938d642f2ec3594ed81d874461961cd0faa76";
-      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/fatih/color";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fatih/color";
-      rev =  "570b54cabe6b8eb0bc2dfce68d964677d63b5260";
-      sha256 = "1hw9hgkfzbzqjhy29pqpk20xggxaqjv45wx8yn69488mw5ph7khh";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gobwas/glob";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gobwas/glob";
-      rev =  "bea32b9cd2d6f55753d94a28e959b13f0244797a";
-      sha256 = "0dx0f293v1a0d8qi7ik5hdl26dapd8xm0hj9a9gc620vhj7khi9q";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jdkato/prose";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jdkato/prose";
-      rev =  "4d68d1b77f66e36b6897a79f59f434d558e5e0c2";
-      sha256 = "1g2wwj6azpcjy6j7pk4dqx868v3hrqwjg5d737p4441a55026prj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jdkato/regexp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jdkato/regexp";
-      rev =  "38ab2f7842bf2a539528aa7d0014b37421b886e1";
-      sha256 = "11z21z2h2l8vlh4nwkcn7vbfdcmdjk9sc90kn8ji1923i3s7p3bw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-colorable";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-colorable";
-      rev =  "941b50ebc6efddf4c41c8e4537a5f68a4e686b24";
-      sha256 = "0dw492z5w0fzv1cxm3xx26n8qpqjaf2ybiwpmvimzyhv65n8nrf8";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-isatty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-isatty";
-      rev =  "fc9e8d8ef48496124e79ae0df75490096eccf6fe";
-      sha256 = "1r5f9gkavkb1w6sr0qs5kj16706xirl3qnlq3hqpszkw9w27x65a";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-runewidth";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-runewidth";
-      rev =  "9e777a8366cce605130a531d2cd6363d07ad7317";
-      sha256 = "0vkrfrz3fzn5n6ix4k8s0cg0b448459sldq8bp4riavsxm932jzb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/go-homedir";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-homedir";
-      rev =  "b8bc1bf767474819792c23f32d8286a45736f1c6";
-      sha256 = "13ry4lylalkh4g2vny9cxwvryslzyzwp9r92z0b10idhdq3wad1q";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev =  "d0303fe809921458f417bcf828397a65db30a7e4";
-      sha256 = "1fjwi5ghc1ibyx93apz31n4hj6gcq1hzismpdfbg2qxwshyg0ya8";
-    };
-  }
-  {
-    goPackagePath  = "github.com/montanaflynn/stats";
-    fetch = {
-      type = "git";
-      url = "https://github.com/montanaflynn/stats";
-      rev =  "eeaced052adbcfeea372c749c281099ed7fdaa38";
-      sha256 = "0kamcla633692n81w0j0d423ws3qdds97r2c0i193ypsh9xknpq9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/olekukonko/tablewriter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/olekukonko/tablewriter";
-      rev =  "be5337e7b39e64e5f91445ce7e721888dbab7387";
-      sha256 = "04zg261i4bq29bc460nyx9r2j70mj0sbxlprn87ylk8y5j2m1d1w";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/remeh/sizedwaitgroup";
-    fetch = {
-      type = "git";
-      url = "https://github.com/remeh/sizedwaitgroup";
-      rev =  "4b44541c93591ee0e73747d6081e61bd8c58b5c7";
-      sha256 = "1kz7h8r09c95r3hc8bngznc4lrnkz2vm50lrl96cqxja0pw8jl92";
-    };
-  }
-  {
-    goPackagePath  = "github.com/russross/blackfriday";
-    fetch = {
-      type = "git";
-      url = "https://github.com/russross/blackfriday";
-      rev =  "0b647d0506a698cca42caca173e55559b12a69f2";
-      sha256 = "1bv6mvnrqrcrp5d45l5p07q855sval8l3jzw1cf2dajkpcpysqln";
-    };
-  }
-  {
-    goPackagePath  = "github.com/shogo82148/go-shuffle";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shogo82148/go-shuffle";
-      rev =  "4789c7c401f229b3ae1673acbccca451480660cd";
-      sha256 = "1gaii1h51df8vr28ww5np8nhvfcy4plv0nja9b9h0cmcxa3jf1lp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/shurcooL/sanitized_anchor_name";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shurcooL/sanitized_anchor_name";
-      rev =  "541ff5ee47f1dddf6a5281af78307d921524bcb5";
-      sha256 = "1fslblamqkd0yrvl1kbq95hnnji78bq9m33nnxiqs7y9w32zylv5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev =  "69483b4bd14f5845b5a1e55bca19e954e827f1d0";
-      sha256 = "11lzrwkdzdd8yyag92akncc008h2f9d1bpc489mxiwp0jrmz4ivb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/urfave/cli";
-    fetch = {
-      type = "git";
-      url = "https://github.com/urfave/cli";
-      rev =  "0bdeddeeb0f650497d603c4ad7b20cfe685682f6";
-      sha256 = "1ny63c7bfwfrsp7vfkvb4i0xhq4v7yxqnwxa52y4xlfxs4r6v6fg";
-    };
-  }
-  {
-    goPackagePath  = "github.com/xrash/smetrics";
-    fetch = {
-      type = "git";
-      url = "https://github.com/xrash/smetrics";
-      rev =  "a3153f7040e90324c58c6287535e26a0ac5c1cc1";
-      sha256 = "1phq5y6mcg741spq7snc6xsky1ybc7fllh2444sfr3p41sjq9hg6";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev =  "ab5485076ff3407ad2d02db054635913f017b0ed";
-      sha256 = "10805rk5rfgc3ivx35r9qmnps8hy3k3m57g0j6mz10w96k8i7pk7";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev =  "14ac33bf8474b62c65cae263af2e4d3b543cc699";
-      sha256 = "1453l5v5kizq142fiq3bg5hka7b0yvnf9fsq8y2ayj4bc9h5vqf3";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/ini.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-ini/ini";
-      rev =  "d3de07a94d22b4a0972deb4b96d790c2c0ce8333";
-      sha256 = "1lpwqhcfhaa6aighd2lpjfswbb6aw5d5bsmyr0vqaqg6g5kz0ikg";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/neurosnap/sentences.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/neurosnap/sentences";
-      rev =  "a7f18ead1433a139742a8b42ce7a059cfb484d60";
-      sha256 = "1b64xv5anfbnq6354jaygxapwgkdhbszzi604b96sm682brwl0p7";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-yaml/yaml";
-      rev =  "25c4ec802a7d637f88d584ab26798e94ad14c13b";
-      sha256 = "053mknsl3xhjscmd552005xnwbfcg0z2iphvbvj3wi0w3pvmlw44";
-    };
-  }
-]
\ No newline at end of file
diff --git a/nixpkgs/pkgs/tools/toml2nix/default.nix b/nixpkgs/pkgs/tools/toml2nix/default.nix
new file mode 100644
index 000000000000..ac4de4eee144
--- /dev/null
+++ b/nixpkgs/pkgs/tools/toml2nix/default.nix
@@ -0,0 +1,18 @@
+# Generated by carnix 0.9.7: carnix generate-nix
+{ lib, buildPlatform, buildRustCrate, buildRustCrateHelpers, cratesIO, fetchgit }:
+with buildRustCrateHelpers;
+let inherit (lib.lists) fold;
+    inherit (lib.attrsets) recursiveUpdate;
+in
+let crates = cratesIO; in
+rec {
+  toml2nix = crates.crates.toml2nix."0.1.1" deps;
+  __all = [ (toml2nix {}) ];
+  deps.serde."1.0.84" = {};
+  deps.toml."0.4.10" = {
+    serde = "1.0.84";
+  };
+  deps.toml2nix."0.1.1" = {
+    toml = "0.4.10";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/typesetting/biber/default.nix b/nixpkgs/pkgs/tools/typesetting/biber/default.nix
index ea9b68f02b9e..123147cb5f17 100644
--- a/nixpkgs/pkgs/tools/typesetting/biber/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/biber/default.nix
@@ -20,8 +20,8 @@ perlPackages.buildPerlModule rec {
     DateTime DateTimeFormatBuilder DateTimeCalendarJulian
     ExtUtilsLibBuilder FileSlurper FileWhich IPCRun3 LogLog4perl LWPProtocolHttps ListAllUtils
     ListMoreUtils MozillaCA ReadonlyXS RegexpCommon TextBibTeX
-    UnicodeCollate UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter
-    ClassAccessor TextCSV TextCSV_XS TextRoman DataUniqid LinguaTranslit UnicodeNormalize SortKey
+    UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter
+    ClassAccessor TextCSV TextCSV_XS TextRoman DataUniqid LinguaTranslit SortKey
     TestDifferences
   ];
 
diff --git a/nixpkgs/pkgs/tools/typesetting/docbook2odf/default.nix b/nixpkgs/pkgs/tools/typesetting/docbook2odf/default.nix
index 029227cd1186..7200909660bd 100644
--- a/nixpkgs/pkgs/tools/typesetting/docbook2odf/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/docbook2odf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, perl, makeWrapper, zip, libxslt, PerlMagick }:
+{ stdenv, fetchurl, perlPackages, makeWrapper, zip, libxslt }:
 
 stdenv.mkDerivation rec {
   name = "docbook2odf-0.244";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "10k44g0qqa37k30pfj8vz95j6zdzz0nmnqjq1lyahfs2h4glzgwb";
   };
 
-  buildInputs = [ perl makeWrapper ];
+  buildInputs = [ perlPackages.perl makeWrapper ];
 
   installPhase = ''
     mkdir -p "$out/bin/"
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
     wrapProgram "$out/bin/docbook2odf" \
       --prefix PATH : "${stdenv.lib.makeBinPath [ zip libxslt ]}" \
-      --prefix PERL5PATH : "${stdenv.lib.makePerlPath [PerlMagick]}"
+      --prefix PERL5PATH : "${perlPackages.makePerlPath [ perlPackages.PerlMagick ]}"
   '';
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/tools/typesetting/docbook2x/default.nix b/nixpkgs/pkgs/tools/typesetting/docbook2x/default.nix
index e38e4a1f0596..5309e4555b49 100644
--- a/nixpkgs/pkgs/tools/typesetting/docbook2x/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/docbook2x/default.nix
@@ -1,5 +1,4 @@
-{ fetchurl, stdenv, texinfo, perl
-, XMLSAX, XMLSAXBase, XMLParser, XMLNamespaceSupport
+{ fetchurl, stdenv, texinfo, perlPackages
 , groff, libxml2, libxslt, gnused, libiconv, opensp
 , docbook_xml_dtd_43
 , makeWrapper }:
@@ -16,9 +15,8 @@ stdenv.mkDerivation rec {
   # writes its output to stdout instead of creating a file.
   patches = [ ./db2x_texixml-to-stdout.patch ];
 
-  buildInputs = [ perl texinfo groff libxml2 libxslt makeWrapper
-                  XMLSAX XMLParser XMLNamespaceSupport opensp libiconv
-                ];
+  buildInputs = [ texinfo groff libxml2 libxslt makeWrapper opensp libiconv ]
+    ++ (with perlPackages; [ perl XMLSAX XMLParser XMLNamespaceSupport ]);
 
   postConfigure = ''
     # Broken substitution is used for `perl/config.pl', which leaves literal
@@ -36,10 +34,8 @@ stdenv.mkDerivation rec {
     do
       # XXX: We work around the fact that `wrapProgram' doesn't support
       # spaces below by inserting escaped backslashes.
-      wrapProgram $out/bin/$i --prefix PERL5LIB : \
-        "${XMLSAX}/lib/perl5/site_perl:${XMLSAXBase}/lib/perl5/site_perl:${XMLParser}/lib/perl5/site_perl" \
-        --prefix PERL5LIB : \
-        "${XMLNamespaceSupport}/lib/perl5/site_perl" \
+      wrapProgram $out/bin/$i \
+        --prefix PERL5LIB : ${with perlPackages; makeFullPerlPath [XMLSAX XMLParser XMLNamespaceSupport]} \
         --prefix XML_CATALOG_FILES "\ " \
         "$out/share/docbook2X/dtd/catalog.xml\ $out/share/docbook2X/xslt/catalog.xml\ ${docbook_xml_dtd_43}/xml/dtd/docbook/catalog.xml"
     done
diff --git a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
index fa582d4594cb..ce9056af0e42 100644
--- a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, djvulibre, poppler, fontconfig, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.11";
+  version = "0.9.12";
   name = "pdf2djvu-${version}";
 
   src = fetchurl {
     url = "https://github.com/jwilk/pdf2djvu/releases/download/${version}/${name}.tar.xz";
-    sha256 = "1hscpm5lsqmiv1niwnq999wmcvj9wlajw8wd3diaaxcq207kvsvd";
+    sha256 = "10wfgnrkhdzscax5j57wdgqhiw7rwmsfsq945rb6n25ql6d9vyh3";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/nixpkgs/pkgs/tools/typesetting/scdoc/default.nix b/nixpkgs/pkgs/tools/typesetting/scdoc/default.nix
index 1ff804f0d4a4..d18164be3be9 100644
--- a/nixpkgs/pkgs/tools/typesetting/scdoc/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/scdoc/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "scdoc-${version}";
-  version = "1.6.0";
+  version = "1.8.1";
 
   src = fetchurl {
     url = "https://git.sr.ht/~sircmpwn/scdoc/archive/${version}.tar.gz";
-    sha256 = "1ca3js4arkg28gg2iszxxyrq7kgsrz482d1szv5dfd471h3vr5m3";
+    sha256 = "1f3qrnbjr9ikbdvpsyx726nyiz4f7ka38rimy9fvbl7kmi62w1v7";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/typesetting/sile/default.nix b/nixpkgs/pkgs/tools/typesetting/sile/default.nix
index 18ab2d1f9c7c..d12d39016ff1 100644
--- a/nixpkgs/pkgs/tools/typesetting/sile/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/sile/default.nix
@@ -1,5 +1,5 @@
 { stdenv, darwin, fetchurl, makeWrapper, pkgconfig
-, harfbuzz, icu, lpeg, luaexpat, luazlib, luafilesystem
+, harfbuzz, icu, lpeg, luaexpat, luazlib, luafilesystem, luasocket, luasec
 , fontconfig, lua, libiconv
 }:
 
@@ -7,7 +7,7 @@ with stdenv.lib;
 
 let
 
-  libs          = [lpeg luaexpat luazlib luafilesystem];
+  libs          = [ lpeg luaexpat luazlib luafilesystem luasocket luasec ];
   getPath       = lib : type : "${lib}/lib/lua/${lua.luaversion}/?.${type};${lib}/share/lua/${lua.luaversion}/?.${type}";
   getLuaPath    = lib : getPath lib "lua";
   getLuaCPath   = lib : getPath lib "so";
@@ -18,15 +18,16 @@ in
 
 stdenv.mkDerivation rec {
   name = "sile-${version}";
-  version = "0.9.4";
+  version = "0.9.5.1";
 
   src = fetchurl {
     url = "https://github.com/simoncozens/sile/releases/download/v${version}/${name}.tar.bz2";
-    sha256 = "1mald727hy9bi17rcaph8q400yn5xqkn5f2xf1408g94wmwncs8w";
+    sha256 = "0fh0jbpsyqyq0hzq4midn7yw2z11hqdgqb9mmgz766cp152wrkb0";
   };
 
   nativeBuildInputs = [pkgconfig makeWrapper];
-  buildInputs = [ harfbuzz icu lua lpeg luaexpat luazlib luafilesystem fontconfig libiconv ]
+  buildInputs = [ harfbuzz icu lua fontconfig libiconv ]
+  ++ libs
   ++ optional stdenv.isDarwin darwin.apple_sdk.frameworks.AppKit
   ;
 
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
index 29a7f05af071..4845c3703dc3 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -28,9 +28,19 @@ let
 
     patches = [
       (fetchurl {
-        name = "texlive-poppler-0.64.patch";
-        url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/texlive-poppler-0.64.patch?h=packages/texlive-bin&id=da56abf0f8a1e85daca0ec0f031b8fa268519e6b;
-        sha256 = "0443d074zl3c5raba8jyhavish706arjcd80ibb84zwnwck4ai0w";
+        name = "poppler-compat-fixes-up-to-0.70.patch";
+        url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/poppler-compat-fixes-up-to-0.70.patch?h=packages/texlive-bin&id=85ee0539525d8012f134b76c18dfb10d0837a7e2;
+        sha256 = "0a8bvyl7v6zlyyg3ycl0dmg2g2qahxlq3qmc1nv33r24anzb8xhs";
+      })
+      (fetchurl {
+        name = "luatex-poppler-0.70-const-fixes.patch";
+        url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/luatex-poppler-0.70-const-fixes.patch?h=packages/texlive-bin&id=85ee0539525d8012f134b76c18dfb10d0837a7e2;
+        sha256 = "0yiw2x97whdi23dc10xnqpxqj3aja15alir1byp1y03j60zv5n7i";
+      })
+      (fetchurl {
+        name = "texlive-poppler-0.71.patch";
+        url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/texlive-poppler-0.71.patch?h=packages/texlive-bin&id=85ee0539525d8012f134b76c18dfb10d0837a7e2;
+        sha256 = "164wibyf786gdcb0ij4svsmyi13wvcx0cpdr4flki0lpy3igvlnq";
       })
       (fetchurl {
         name = "synctex-missing-header.patch";
@@ -38,6 +48,17 @@ let
         sha256 = "1c4aq8lk8g3mlfq3mdjnxvmhss3qs7nni5rmw0k054dmj6q1xj5n";
       })
     ];
+
+    postPatch = ''
+      for i in texk/kpathsea/mktex*; do
+        sed -i '/^mydir=/d' "$i"
+      done
+      cp -pv texk/web2c/pdftexdir/pdftoepdf{-poppler0.70.0,}.cc
+      cp -pv texk/web2c/pdftexdir/pdftosrc{-newpoppler,}.cc
+      # fix build with poppler 0.71
+      find texk/web2c/{lua,pdf}texdir -type f | xargs sed -e 's|gTrue|true|g' -e 's|gFalse|false|g' -e 's|GBool|bool|g' -e 's|getCString|c_str|g' -e 's|Gulong|unsigned long|g' -e 's|Guint|unsigned int|g' -e 's|Gushort|unsigned short|g' -e 's|Guchar|unsigned char|g' -i
+    '';
+
     # remove when removing synctex-missing-header.patch
     preAutoreconf = "pushd texk/web2c";
     postAutoreconf = "popd";
@@ -72,7 +93,7 @@ texliveYear = year;
 core = stdenv.mkDerivation rec {
   name = "texlive-bin-${version}";
 
-  inherit (common) src patches preAutoreconf postAutoreconf;
+  inherit (common) src patches postPatch preAutoreconf postAutoreconf;
 
   outputs = [ "out" "doc" ];
 
@@ -85,14 +106,6 @@ core = stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  postPatch = ''
-    for i in texk/kpathsea/mktex*; do
-      sed -i '/^mydir=/d' "$i"
-    done
-    cp -pv texk/web2c/pdftexdir/pdftoepdf{-newpoppler.cc,.cc}
-    cp -pv texk/web2c/pdftexdir/pdftosrc{-newpoppler.cc,.cc}
-  '';
-
   preConfigure = ''
     rm -r libs/{cairo,freetype2,gd,gmp,graphite2,harfbuzz,icu,libpaper,libpng} \
       libs/{mpfr,pixman,poppler,potrace,xpdf,zlib,zziplib}
@@ -172,7 +185,7 @@ inherit (core-big) metafont metapost luatex xetex;
 core-big = stdenv.mkDerivation { #TODO: upmendex
   name = "texlive-core-big.bin-${version}";
 
-  inherit (common) src patches preAutoreconf postAutoreconf;
+  inherit (common) src patches postPatch preAutoreconf postAutoreconf;
 
   hardeningDisable = [ "format" ];
 
diff --git a/nixpkgs/pkgs/tools/typesetting/tikzit/default.nix b/nixpkgs/pkgs/tools/typesetting/tikzit/default.nix
index 23d8093606be..69e3995bf624 100644
--- a/nixpkgs/pkgs/tools/typesetting/tikzit/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tikzit/default.nix
@@ -1,18 +1,23 @@
-{ stdenv, fetchFromGitHub, qmake, qttools, qtbase, flex, bison }:
+{ stdenv, fetchFromGitHub, qmake, qttools, qtbase, libsForQt5, flex, bison }:
 
 stdenv.mkDerivation rec {
   name = "tikzit-${version}";
-  version = "2.0";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "tikzit";
     repo = "tikzit";
-    rev = "v${version}";
-    sha256 = "0fwxr9rc9vmw2jzpj084rygzyhp4xm3vm737668az600ln2scyad";
+    # We don't reference the revision by the appropriate tag (v2.1) here,
+    # as the version of that tag still has the old version number in the
+    # relevant header file. This would cause a bad user experience, as
+    # "Help > About" would still display the old version number even though
+    # we indeed ship the new version 2.1.
+    rev = "97c2a2a7ecae12bf376558997805c24c3b6e3e07";
+    sha256 = "0sbgijbln18gac9989x484r62jlxyagkq0ap0fvzislrkac4z3y9";
   };
 
   nativeBuildInputs = [ qmake qttools flex bison ];
-  buildInputs = [ qtbase ];
+  buildInputs = [ qtbase libsForQt5.poppler ];
 
   enableParallelBuilding = true;
 
@@ -22,6 +27,7 @@ stdenv.mkDerivation rec {
       TikZiT is a simple GUI editor for graphs and string diagrams.
       Its native file format is a subset of PGF/TikZ, which means TikZiT files
       can be included directly in papers typeset using LaTeX.
+      For preview support the texlive package 'preview' has to be installed.
     '';
     homepage = https://tikzit.github.io/;
     license = licenses.gpl3Plus;
diff --git a/nixpkgs/pkgs/tools/typesetting/xmlto/default.nix b/nixpkgs/pkgs/tools/typesetting/xmlto/default.nix
index 400a26f84fd2..b5b03b470cde 100644
--- a/nixpkgs/pkgs/tools/typesetting/xmlto/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/xmlto/default.nix
@@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
 
   # `libxml2' provides `xmllint', needed at build-time and run-time.
   # `libxslt' provides `xsltproc', used by `xmlto' at run-time.
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ libxml2 libxslt docbook_xml_dtd_45 docbook_xsl getopt ];
+  nativeBuildInputs = [ makeWrapper getopt ];
+  buildInputs = [ libxml2 libxslt docbook_xml_dtd_45 docbook_xsl ];
 
   postInstall = ''
     wrapProgram "$out/bin/xmlto" \
diff --git a/nixpkgs/pkgs/tools/video/bento4/default.nix b/nixpkgs/pkgs/tools/video/bento4/default.nix
index 75964a3c2e5e..4f5a348b144e 100644
--- a/nixpkgs/pkgs/tools/video/bento4/default.nix
+++ b/nixpkgs/pkgs/tools/video/bento4/default.nix
@@ -3,16 +3,21 @@
 }:
 stdenv.mkDerivation rec {
   name = "bento4-${version}";
-  version = "1.5.1-624";
+  version = "1.5.1-628";
 
   src = fetchFromGitHub {
     owner = "axiomatic-systems";
     repo = "Bento4";
     rev = "v${version}";
-    sha256 = "1cq6vhrq3n3lc1n454slbc66qdyqam2srxgdhfpyfxbq5c4y06nf";
+    sha256 = "1fv0k7f3ifwa0c0x22wblm6i8x9zbc13pg047a9i74n456p0mzp3";
   };
 
+  patches = [ ./libap4.patch ];
+
   nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+
   installPhase = ''
     mkdir -p $out/{lib,bin}
     find -iname '*.so' -exec mv --target-directory="$out/lib" {} \;
diff --git a/nixpkgs/pkgs/tools/video/bento4/libap4.patch b/nixpkgs/pkgs/tools/video/bento4/libap4.patch
new file mode 100644
index 000000000000..ca2936003b84
--- /dev/null
+++ b/nixpkgs/pkgs/tools/video/bento4/libap4.patch
@@ -0,0 +1,5 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -36 +36 @@ endif()
+-add_library(ap4 STATIC ${AP4_SOURCES})
++add_library(ap4 ${AP4_SOURCES})
diff --git a/nixpkgs/pkgs/tools/video/vncrec/default.nix b/nixpkgs/pkgs/tools/video/vncrec/default.nix
index 49a2c4d4acb0..411409495934 100644
--- a/nixpkgs/pkgs/tools/video/vncrec/default.nix
+++ b/nixpkgs/pkgs/tools/video/vncrec/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, libX11, xproto, imake, gccmakedep, libXt, libXmu
-, libXaw, libXext, xextproto, libSM, libICE, libXpm, libXp
+{ stdenv, fetchurl, libX11, xorgproto, imake, gccmakedep, libXt, libXmu
+, libXaw, libXext, libSM, libICE, libXpm, libXp
 }:
 
 stdenv.mkDerivation rec {
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ imake gccmakedep ];
   buildInputs = [
-    libX11 xproto libXt libXmu libXaw
-    libXext xextproto libSM libICE libXpm libXp
+    libX11 xorgproto libXt libXmu libXaw
+    libXext libSM libICE libXpm libXp
   ];
 
   makeFlags = [
diff --git a/nixpkgs/pkgs/tools/virtualization/amazon-ecs-cli/default.nix b/nixpkgs/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
new file mode 100644
index 000000000000..33937c7c53b4
--- /dev/null
+++ b/nixpkgs/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "amazon-ecs-cli-${version}";
+  version = "1.12.1";
+
+  src = fetchurl {
+    url = "https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-v${version}";
+    sha256 = "100iv4cchnxl1s02higga5v3hvawi4c7sqva97x34qigr4r7fxwm";
+  };
+
+  unpackPhase = ":";
+
+  installPhase =
+    ''
+      mkdir -p $out/bin
+      cp $src $out/bin/ecs-cli
+      chmod +x $out/bin/ecs-cli
+    '';  # */
+
+  meta = with stdenv.lib; {
+    homepage = https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_CLI.html;
+    description = "The Amazon ECS command line interface";
+    longDescription = "The Amazon Elastic Container Service (Amazon ECS) command line interface (CLI) provides high-level commands to simplify creating, updating, and monitoring clusters and tasks from a local development environment.";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ Scriptkiddi ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/virtualization/google-compute-engine/default.nix b/nixpkgs/pkgs/tools/virtualization/google-compute-engine/default.nix
index 73a8f5184778..0db43ccfcfdd 100644
--- a/nixpkgs/pkgs/tools/virtualization/google-compute-engine/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/google-compute-engine/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonApplication rec {
   name = "google-compute-engine-${version}";
-  version = "20181023";
+  version = "20190124";
   namePrefix = "";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "compute-image-packages";
     rev = version;
-    sha256 = "0bhh62f4kx4d7k673fvyzgr9h771lzk7dxhq3ld7zzcz0pmxlx3a";
+    sha256 = "08cy0jd463kng6hwbd3nfldsp4dpd2lknlvdm88cq795wy0kh4wp";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/virtualization/nixos-container/default.nix b/nixpkgs/pkgs/tools/virtualization/nixos-container/default.nix
index 0763536533f0..94a19c5375ea 100644
--- a/nixpkgs/pkgs/tools/virtualization/nixos-container/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/nixos-container/default.nix
@@ -1,11 +1,11 @@
-{ substituteAll, perl, perlPackages, shadow, utillinux }:
+{ substituteAll, perlPackages, shadow, utillinux }:
 
 substituteAll {
     name = "nixos-container";
     dir = "bin";
     isExecutable = true;
     src = ./nixos-container.pl;
-    perl = "${perl}/bin/perl -I${perlPackages.FileSlurp}/lib/perl5/site_perl";
+    perl = "${perlPackages.perl}/bin/perl -I${perlPackages.FileSlurp}/${perlPackages.perl.libPrefix}";
     su = "${shadow.su}/bin/su";
     inherit utillinux;
 
diff --git a/nixpkgs/pkgs/tools/virtualization/udocker/default.nix b/nixpkgs/pkgs/tools/virtualization/udocker/default.nix
index cad6b9866171..446cfff37ff6 100644
--- a/nixpkgs/pkgs/tools/virtualization/udocker/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/udocker/default.nix
@@ -28,7 +28,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "basic user tool to execute simple docker containers in user space without root privileges";
-    homepage = https://www.gitbook.com/book/indigo-dc/udocker;
+    homepage = https://indigo-dc.gitbooks.io/udocker;
     license = licenses.asl20;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.linux;