summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/audio/chuck/default.nix32
-rw-r--r--pkgs/applications/audio/drumgizmo/default.nix4
-rw-r--r--pkgs/applications/audio/fldigi/default.nix4
-rw-r--r--pkgs/applications/audio/google-musicmanager/default.nix76
-rw-r--r--pkgs/applications/audio/ir.lv2/default.nix6
-rw-r--r--pkgs/applications/audio/musescore/default.nix4
-rw-r--r--pkgs/applications/audio/qmidinet/default.nix4
-rw-r--r--pkgs/applications/audio/radiotray-ng/default.nix17
-rw-r--r--pkgs/applications/audio/x42-plugins/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-packages.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix6
-rw-r--r--pkgs/applications/editors/geany/default.nix2
-rw-r--r--pkgs/applications/editors/geany/with-vte.nix2
-rw-r--r--pkgs/applications/editors/neovim/default.nix4
-rw-r--r--pkgs/applications/editors/neovim/qt.nix19
-rw-r--r--pkgs/applications/editors/okteta/default.nix12
-rw-r--r--pkgs/applications/graphics/avocode/default.nix4
-rw-r--r--pkgs/applications/graphics/exrtools/default.nix5
-rw-r--r--pkgs/applications/graphics/feh/default.nix8
-rw-r--r--pkgs/applications/graphics/fig2dev/default.nix25
-rw-r--r--pkgs/applications/graphics/gimp/default.nix8
-rw-r--r--pkgs/applications/graphics/xfig/builder.sh28
-rw-r--r--pkgs/applications/graphics/xfig/default.nix59
-rw-r--r--pkgs/applications/kde/default.nix1
-rw-r--r--pkgs/applications/kde/dragon.nix25
-rw-r--r--pkgs/applications/misc/1password/default.nix8
-rw-r--r--pkgs/applications/misc/buku/default.nix21
-rw-r--r--pkgs/applications/misc/chirp/default.nix4
-rw-r--r--pkgs/applications/misc/doomseeker/default.nix6
-rw-r--r--pkgs/applications/misc/dozenal/default.nix61
-rw-r--r--pkgs/applications/misc/dozenal/lua-header.patch16
-rw-r--r--pkgs/applications/misc/hdate/default.nix16
-rw-r--r--pkgs/applications/misc/hugo/default.nix4
-rw-r--r--pkgs/applications/misc/hugo/deps.nix20
-rw-r--r--pkgs/applications/misc/keepassx/community.nix4
-rw-r--r--pkgs/applications/misc/kitty/default.nix4
-rw-r--r--pkgs/applications/misc/kiwix/default.nix5
-rw-r--r--pkgs/applications/misc/krusader/default.nix4
-rw-r--r--pkgs/applications/misc/navit/default.nix64
-rw-r--r--pkgs/applications/misc/ranger/default.nix2
-rw-r--r--pkgs/applications/misc/tilix/default.nix11
-rw-r--r--pkgs/applications/misc/tootle/default.nix38
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix1
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix75
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix2
-rw-r--r--pkgs/applications/networking/browsers/firefox/wrapper.nix24
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle/default.nix1
-rw-r--r--pkgs/applications/networking/feedreaders/rsstail/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix18
-rw-r--r--pkgs/applications/networking/instant-messengers/ring-daemon/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix15
-rw-r--r--pkgs/applications/networking/instant-messengers/utox/default.nix9
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/default.nix36
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/run_tests.diff10
-rw-r--r--pkgs/applications/networking/msmtp/default.nix10
-rw-r--r--pkgs/applications/networking/owncloud-client/default.nix4
-rw-r--r--pkgs/applications/networking/resilio-sync/default.nix6
-rw-r--r--pkgs/applications/networking/seafile-client/default.nix4
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/cmake.patch19
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix7
-rw-r--r--pkgs/applications/office/tryton/default.nix4
-rw-r--r--pkgs/applications/office/trytond/default.nix4
-rw-r--r--pkgs/applications/science/biology/bowtie2/default.nix5
-rw-r--r--pkgs/applications/science/biology/strelka/default.nix37
-rw-r--r--pkgs/applications/science/chemistry/molden/default.nix6
-rw-r--r--pkgs/applications/science/chemistry/molden/dont_register_file_types.patch29
-rw-r--r--pkgs/applications/science/chemistry/pymol/default.nix4
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle.nix83
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle7.nix (renamed from pkgs/applications/science/electronics/eagle/default.nix)2
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle7_fixer.c (renamed from pkgs/applications/science/electronics/eagle/eagle_fixer.c)0
-rw-r--r--pkgs/applications/science/logic/aiger/default.nix3
-rw-r--r--pkgs/applications/science/logic/verit/default.nix5
-rw-r--r--pkgs/applications/science/math/ginac/default.nix1
-rw-r--r--pkgs/applications/science/math/glsurf/default.nix1
-rw-r--r--pkgs/applications/version-management/fossil/default.nix5
-rw-r--r--pkgs/applications/version-management/gitkraken/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix6
-rw-r--r--pkgs/applications/version-management/mr/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch100
-rw-r--r--pkgs/applications/version-management/redmine/2003_externalize_session_config.patch72
-rw-r--r--pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch11
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile120
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock278
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.nix332
-rw-r--r--pkgs/applications/version-management/redmine/README6
-rw-r--r--pkgs/applications/version-management/redmine/bootstrap.nix47
-rw-r--r--pkgs/applications/version-management/redmine/default.nix108
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix472
-rw-r--r--pkgs/applications/version-management/redmine/generate_nix_requirements.rb56
-rw-r--r--pkgs/applications/version-management/smartgithg/default.nix7
-rw-r--r--pkgs/applications/version-management/subversion/default.nix1
-rw-r--r--pkgs/applications/video/webtorrent_desktop/default.nix2
-rw-r--r--pkgs/applications/virtualization/containerd/default.nix2
-rw-r--r--pkgs/applications/virtualization/docker/default.nix10
-rw-r--r--pkgs/applications/virtualization/open-vm-tools/default.nix5
-rw-r--r--pkgs/applications/virtualization/runc/default.nix2
-rw-r--r--pkgs/applications/window-managers/velox/default.nix2
98 files changed, 1593 insertions, 1149 deletions
diff --git a/pkgs/applications/audio/chuck/default.nix b/pkgs/applications/audio/chuck/default.nix
index e94172b0f879..c10556260c71 100644
--- a/pkgs/applications/audio/chuck/default.nix
+++ b/pkgs/applications/audio/chuck/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchurl, alsaLib, bison, flex, libsndfile, which
+{ stdenv, lib, fetchurl, alsaLib, bison, flex, libsndfile, which
 , AppKit, Carbon, CoreAudio, CoreMIDI, CoreServices, Kernel
+, xcbuild
 }:
 
 stdenv.mkDerivation rec {
@@ -11,31 +12,28 @@ stdenv.mkDerivation rec {
     sha256 = "02z7sglax3j09grj5s1skmw8z6wz7b21hjrm95nrrdpwbxabh079";
   };
 
-  buildInputs = [ bison flex libsndfile which ]
-    ++ stdenv.lib.optional (!stdenv.isDarwin) alsaLib
-    ++ stdenv.lib.optional stdenv.isDarwin [ AppKit Carbon CoreAudio CoreMIDI CoreServices Kernel ];
+  nativeBuildInputs = [ flex bison which ];
+
+  buildInputs = [ libsndfile ]
+    ++ lib.optional (!stdenv.isDarwin) alsaLib
+    ++ lib.optional stdenv.isDarwin [ AppKit Carbon CoreAudio CoreMIDI CoreServices Kernel ];
 
   patches = [ ./clang.patch ./darwin-limits.patch ];
 
-  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-Wno-missing-sysroot";
-  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-framework MultitouchSupport";
+  NIX_CFLAGS_COMPILE = lib.optional stdenv.isDarwin "-Wno-missing-sysroot";
+  NIX_LDFLAGS = lib.optional stdenv.isDarwin "-framework MultitouchSupport";
 
   postPatch = ''
     substituteInPlace src/makefile --replace "/usr/bin" "$out/bin"
-    substituteInPlace src/makefile.osx --replace "xcodebuild" "/usr/bin/xcodebuild"
-    substituteInPlace src/makefile.osx --replace "weak_framework" "framework"
-    substituteInPlace src/makefile.osx --replace "MACOSX_DEPLOYMENT_TARGET=10.5" "MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET"
-  '';
-
-  buildPhase = ''
-    make -C src ${if stdenv.isDarwin then "osx" else "linux-alsa"}
+    substituteInPlace src/makefile.osx \
+      --replace "weak_framework" "framework" \
+      --replace "MACOSX_DEPLOYMENT_TARGET=10.5" "MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET"
   '';
 
-  installPhase = ''
-    install -Dm755 ./src/chuck $out/bin/chuck
-  '';
+  makeFlags = [ "-C src" "DESTDIR=$(out)/bin" ];
+  buildFlags = [ (if stdenv.isDarwin then "osx" else "linux-alsa") ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Programming language for real-time sound synthesis and music creation";
     homepage = http://chuck.cs.princeton.edu;
     license = licenses.gpl2;
diff --git a/pkgs/applications/audio/drumgizmo/default.nix b/pkgs/applications/audio/drumgizmo/default.nix
index e004e8c847cb..18673a2186cc 100644
--- a/pkgs/applications/audio/drumgizmo/default.nix
+++ b/pkgs/applications/audio/drumgizmo/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.14";
+  version = "0.9.15";
   name = "drumgizmo-${version}";
 
   src = fetchurl {
     url = "https://www.drumgizmo.org/releases/${name}/${name}.tar.gz";
-    sha256 = "1q2jghjz0ygaja8dgvxp914if8yyzpa204amdcwb9yyinpxsahz4";
+    sha256 = "13bgqyw74pq3ss63zd9bjmgr4dah792pcphyqmr7bnvrgfjr6bx6";
   };
 
   configureFlags = [ "--enable-lv2" ];
diff --git a/pkgs/applications/audio/fldigi/default.nix b/pkgs/applications/audio/fldigi/default.nix
index fc01a543e285..fb4454269d78 100644
--- a/pkgs/applications/audio/fldigi/default.nix
+++ b/pkgs/applications/audio/fldigi/default.nix
@@ -2,13 +2,13 @@
   libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
 
 stdenv.mkDerivation rec {
-  version = "4.0.17";
+  version = "4.0.18";
   pname = "fldigi";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${name}.tar.gz";
-    sha256 = "1z8w0dxfc2nm1iy1vv18s5s88ys9vvbqawjvhsymxj56jqjzzp4q";
+    sha256 = "0a3z9xj9gsa6fskiai9410kwqfb6156km59y36a31mhyddzk27p7";
   };
 
   buildInputs = [ libXinerama gettext hamlib fltk13 libjpeg libpng portaudio
diff --git a/pkgs/applications/audio/google-musicmanager/default.nix b/pkgs/applications/audio/google-musicmanager/default.nix
index 72bec52b2663..4cd3010ec3d3 100644
--- a/pkgs/applications/audio/google-musicmanager/default.nix
+++ b/pkgs/applications/audio/google-musicmanager/default.nix
@@ -1,12 +1,9 @@
-{ stdenv, fetchurl, readline, patchelf, ncurses, qt48, libidn, expat, flac
-, libvorbis }:
+{ stdenv, fetchurl
+, flac, expat, libidn, qtbase, qtwebkit, libvorbis }:
+assert stdenv.system == "x86_64-linux";
 
-assert stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux";
-let
-  archUrl = name: arch: "http://dl.google.com/linux/musicmanager/deb/pool/main/g/google-musicmanager-beta/${name}_${arch}.deb";
-in
 stdenv.mkDerivation rec {
-  version = "beta_1.0.243.1116-r0"; # friendly to nix-env version sorting algo
+  version = "beta_1.0.467.4929-r0"; # friendly to nix-env version sorting algo
   product = "google-musicmanager";
   name    = "${product}-${version}";
 
@@ -16,37 +13,58 @@ stdenv.mkDerivation rec {
   # curl http://dl.google.com/linux/musicmanager/deb/dists/stable/main/binary-amd64/Packages
   # which will contain the links to all available *.debs for the arch.
 
-  src = if stdenv.system == "x86_64-linux"
-    then fetchurl {
-      url    = archUrl name "amd64";
-      sha256 = "54f97f449136e173492d36084f2c01244b84f02d6e223fb8a40661093e0bec7c";
-    }
-    else fetchurl {
-        url    = archUrl name "i386";
-        sha256 = "121a7939015e2270afa3f1c73554102e2b4f2e6a31482ff7be5e7c28dd101d3c";
-    };
+  src = fetchurl {
+    url    = "http://dl.google.com/linux/musicmanager/deb/pool/main/g/google-musicmanager-beta/${name}_amd64.deb";
+    sha256 = "0yaprpbp44var88kdj1h11fqkhgcklixr69jyia49v9m22529gg2";
+  };
 
   unpackPhase = ''
     ar vx ${src}
-    tar -xvf data.tar.lzma
+    tar xvf data.tar.xz
+    tar xvf control.tar.gz
   '';
 
-  buildInputs = [ patchelf ];
+  prePatch = ''
+    sed -i "s@\(Exec=\).*@\1$out/bin/google-musicmanager@" opt/google/musicmanager/google-musicmanager.desktop
+  '';
 
-  buildPhase = ''
-    patchelf \
-      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath "$out/opt/google/musicmanager:${stdenv.lib.makeLibraryPath [ readline ncurses stdenv.cc.libc.out qt48 stdenv.cc.cc libidn expat flac libvorbis ]}" opt/google/musicmanager/MusicManager
+  installPhase = ''
+    mkdir -p $out/bin
+    mkdir -p $out/lib
+    mkdir -p $out/share/applications
+
+    cp -r opt $out
+    find -name "*.so*" -exec cp "{}" $out/lib \;
+    ln -s $out/opt/google/musicmanager/google-musicmanager $out/bin
+    ln -s $out/opt/google/musicmanager/google-musicmanager.desktop $out/share/applications
+
+    for i in 16 32 48 128
+    do
+      iconDirectory=$out/usr/share/icons/hicolor/"$i"x"$i"/apps
+
+      mkdir -p $iconDirectory
+      ln -s $out/opt/google/musicmanager/product_logo_"$i".png $iconDirectory/google-musicmanager.png
+    done
   '';
 
-  dontPatchELF = true;
-  dontStrip    = true;
+  postFixup = ''
+    patchelf \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "$(patchelf --print-rpath $out/opt/google/musicmanager/minidump_upload):${stdenv.lib.makeLibraryPath [ stdenv.cc.cc.lib ]}" \
+      $out/opt/google/musicmanager/minidump_upload
 
-  installPhase = ''
-    mkdir -p "$out"
-    cp -r opt "$out"
-    mkdir "$out/bin"
-    ln -s "$out/opt/google/musicmanager/google-musicmanager" "$out/bin"
+    patchelf \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "$(patchelf --print-rpath $out/opt/google/musicmanager/MusicManager):$out/lib:${stdenv.lib.makeLibraryPath [
+        flac
+        expat
+        libidn
+        qtbase
+        qtwebkit
+        libvorbis
+        stdenv.cc.cc.lib
+      ]}" \
+      $out/opt/google/musicmanager/MusicManager
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/ir.lv2/default.nix b/pkgs/applications/audio/ir.lv2/default.nix
index cc613541a256..84be6b866fae 100644
--- a/pkgs/applications/audio/ir.lv2/default.nix
+++ b/pkgs/applications/audio/ir.lv2/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "ir.lv2-${version}";
-  version = "1.2.3";
+  version = "1.2.4";
 
   src = fetchFromGitHub {
     owner = "tomszilagyi";
     repo = "ir.lv2";
     rev = "${version}";
-    sha256 = "16vy06qb0vgwg4yx15grzh5m2q3cbzm3jd0p37g2qb8rgvjhladg";
+    sha256 = "1p6makmgr898fakdxzl4agh48qqwgv1k1kwm8cgq187n0mhiknp6";
   };
 
   buildInputs = [ fftw gtk2 lv2 libsamplerate libsndfile zita-convolver ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     mkdir "$out/include"
     mkdir -p "$out/share/doc"
 
-    make PREFIX="$out" install
+    make PREFIX="$out" INSTDIR="$out/lib/lv2" install
     install -Dm755 convert4chan "$out/bin/convert4chan"
   '';
 
diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix
index a5c38a477415..28381fcfee62 100644
--- a/pkgs/applications/audio/musescore/default.nix
+++ b/pkgs/applications/audio/musescore/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   name = "musescore-${version}";
-  version = "2.3.1";
+  version = "2.3.2";
 
   src = fetchFromGitHub {
     owner  = "musescore";
     repo   = "MuseScore";
     rev    = "v${version}";
-    sha256 = "00inrw9g8g34g74bhg5gp0rr5nydhjraiyn7vpl7kaqi5yzmhawd";
+    sha256 = "0ncv0xfmq87plqa43cm0fpidlwzz1nq5s7h7139llrbc36yp3pr1";
   };
 
   cmakeFlags = [
diff --git a/pkgs/applications/audio/qmidinet/default.nix b/pkgs/applications/audio/qmidinet/default.nix
index 6431a50ddd9a..37677cc211cc 100644
--- a/pkgs/applications/audio/qmidinet/default.nix
+++ b/pkgs/applications/audio/qmidinet/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, qt5, alsaLib, libjack2 }:
 
 stdenv.mkDerivation rec {
-  version = "0.5.1";
+  version = "0.5.2";
   name = "qmidinet-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/qmidinet/${name}.tar.gz";
-    sha256 = "1cvz8y63vdqfpxh7lq5qadqjcyhahbyq0py0qz6xrmpk5sxvy7ml";
+    sha256 = "0y2w3rymvc35r291sp2qaxn36wjwvxzk2iaw9y30q9fqc0vlpdns";
   };
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index 9efd7bb386fb..82bc42143c67 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -23,7 +23,7 @@
 # rt2rtng
 , python2
 # Testing
-, gmock
+, gtest
 # Fixup
 , wrapGAppsHook
 , makeWrapper
@@ -58,11 +58,10 @@ stdenv.mkDerivation rec {
     libxdg_basedir
     lsb-release
     wxGTK
-  ] ++ stdenv.lib.optional doCheck gmock
-    ++ gstInputs
+  ] ++ gstInputs
     ++ pythonInputs;
 
-  prePatch = ''
+  postPatch = ''
     for x in debian/CMakeLists.txt include/radiotray-ng/common.hpp data/*.desktop; do
       substituteInPlace $x --replace /usr $out
     done
@@ -74,14 +73,16 @@ stdenv.mkDerivation rec {
       --replace radiotray-ng-notification radiotray-ng-on
   '';
 
-  cmakeFlags = stdenv.lib.optional doCheck "-DBUILD_TESTS=ON";
+  cmakeFlags = [
+    "-DBUILD_TESTS=${if doCheck then "ON" else "OFF"}"
+  ];
 
   enableParallelBuilding = true;
 
- # XXX: as of 0.2.2, tries to download gmock instead of checking for provided
-  doCheck = false;
-
+  checkInputs = [ gtest ];
   checkPhase = "ctest";
+  # doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+  doCheck = false; # fails to pick up supplied gtest, tries to download it instead
 
   preFixup = ''
     gappsWrapperArgs+=(--suffix PATH : ${stdenv.lib.makeBinPath [ dbus ]})
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
index cb581bc83033..7c57b884c8eb 100644
--- a/pkgs/applications/audio/x42-plugins/default.nix
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -3,12 +3,12 @@
 , libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
 
 stdenv.mkDerivation rec {
-  version = "20180803";
+  version = "20180812";
   name = "x42-plugins-${version}";
 
   src = fetchurl {
     url = "https://gareus.org/misc/x42-plugins/${name}.tar.xz";
-    sha256 = "1v7p6vnkcbzyvmcysabhmn603cndzx9mwzaw5dppy4wd687vhgis";
+    sha256 = "0gzwzxpa2k2w9c6j3pspwi9slfyd57wb192d6yqcg92pfmnxy9dz";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index a420c5425565..bec845b815ce 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -202,6 +202,12 @@ self:
       # missing OCaml
       utop = markBroken super.utop;
 
+      vdiff-magit =
+        (super.vdiff-magit.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        }));
+
       # upstream issue: missing file header
       voca-builder = markBroken super.voca-builder;
 
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
index f3b77c708a7b..61086b96230e 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
@@ -194,6 +194,12 @@ self:
       # missing OCaml
       utop = markBroken super.utop;
 
+      vdiff-magit =
+        (super.vdiff-magit.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        }));
+
       # upstream issue: missing file header
       voca-builder = markBroken super.voca-builder;
 
diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index ed77e6f4b471..24954a602ccc 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       - Plugin interface
     '';
     homepage = https://www.geany.org/;
-    license = "GPL";
+    license = licenses.gpl2;
     maintainers = [];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/editors/geany/with-vte.nix b/pkgs/applications/editors/geany/with-vte.nix
index 7689ebad0f01..ac35560c7f63 100644
--- a/pkgs/applications/editors/geany/with-vte.nix
+++ b/pkgs/applications/editors/geany/with-vte.nix
@@ -1,7 +1,7 @@
 { runCommand, makeWrapper, geany, gnome2 }:
 let name = builtins.replaceStrings ["geany-"] ["geany-with-vte-"] geany.name;
 in
-runCommand "${name}" { nativeBuildInputs = [ makeWrapper ]; } "
+runCommand "${name}" { nativeBuildInputs = [ makeWrapper ]; inherit (geany.meta); } "
    mkdir -p $out
    ln -s ${geany}/share $out
    makeWrapper ${geany}/bin/geany $out/bin/geany --prefix LD_LIBRARY_PATH : ${gnome2.vte}/lib
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
index a0a14e89860b..6690e4c9c1b9 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, gettext, libmsgpack, libtermkey, libiconv
+{ stdenv, fetchFromGitHub, cmake, gettext, msgpack, libtermkey, libiconv
 , libuv, luaPackages, ncurses, pkgconfig
 , unibilium, xsel, gperf
 , libvterm-neovim
@@ -25,7 +25,7 @@ let
     buildInputs = [
       libtermkey
       libuv
-      libmsgpack
+      msgpack
       ncurses
       libvterm-neovim
       unibilium
diff --git a/pkgs/applications/editors/neovim/qt.nix b/pkgs/applications/editors/neovim/qt.nix
index 48f7b29f407f..d17d5c1e85df 100644
--- a/pkgs/applications/editors/neovim/qt.nix
+++ b/pkgs/applications/editors/neovim/qt.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, cmake, doxygen, makeWrapper
-, libmsgpack, neovim, pythonPackages, qtbase }:
+, msgpack, neovim, pythonPackages, qtbase }:
 
 stdenv.mkDerivation rec {
   name = "neovim-qt-${version}";
@@ -13,12 +13,11 @@ stdenv.mkDerivation rec {
   };
 
   cmakeFlags = [
-    "-DMSGPACK_INCLUDE_DIRS=${libmsgpack}/include"
-    "-DMSGPACK_LIBRARIES=${libmsgpack}/lib/libmsgpackc.so"
+    "-DUSE_SYSTEM_MSGPACK=1"
   ];
 
   buildInputs = with pythonPackages; [
-    neovim qtbase libmsgpack
+    neovim qtbase msgpack
   ] ++ (with pythonPackages; [
     jinja2 msgpack python
   ]);
@@ -28,13 +27,12 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   preConfigure = ''
-    # avoid cmake trying to download libmsgpack
-    echo "" > third-party/CMakeLists.txt
     # we rip out a number of tests that fail in the build env
     # the GUI tests will never work but the others should - they did before neovim 0.2.0
     # was released
     sed -i test/CMakeLists.txt \
       -e '/^add_xtest_gui/d' \
+      -e '/tst_neovimobject/d' \
       -e '/tst_neovimconnector/d' \
       -e '/tst_callallmethods/d' \
       -e '/tst_encoding/d'
@@ -42,7 +40,14 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  postInstall = ''
+  postInstall = if stdenv.isDarwin then ''
+    mkdir -p $out/Applications
+    mv $out/bin/nvim-qt.app $out/Applications
+    rmdir $out/bin || :
+
+    wrapProgram "$out/Applications/nvim-qt.app/Contents/MacOS/nvim-qt" \
+      --prefix PATH : "${neovim}/bin"
+  '' else ''
     wrapProgram "$out/bin/nvim-qt" \
       --prefix PATH : "${neovim}/bin"
   '';
diff --git a/pkgs/applications/editors/okteta/default.nix b/pkgs/applications/editors/okteta/default.nix
index abbffeb91807..efe728f68494 100644
--- a/pkgs/applications/editors/okteta/default.nix
+++ b/pkgs/applications/editors/okteta/default.nix
@@ -4,16 +4,16 @@
 
 stdenv.mkDerivation rec {
   name = "okteta-${version}";
-  version = "17.12.3";
+  version = "0.25.2";
 
   src = fetchurl {
-    url = "mirror://kde/stable/applications/${version}/src/${name}.tar.xz";
-    sha256 = "03wsv83l1cay2dpcsksad124wzan7kh8zxdw1h0yicn398kdbck4";
+    url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
+    sha256 = "00mw8gdqvn6vn6ir6kqnp7xi3lpn6iyp4f5aknxwq6mdcxgjmh1p";
   };
-  
+
   nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
   buildInputs = [ shared-mime-info ];
-  
+
   propagatedBuildInputs = [
     kconfig
     kinit
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     karchive
     kcrash
   ];
-  
+
   meta = with stdenv.lib; {
     license = licenses.gpl2;
     maintainers = with maintainers; [ peterhoeg bkchr ];
diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix
index 521f957ec1e9..e0aea87c90c3 100644
--- a/pkgs/applications/graphics/avocode/default.nix
+++ b/pkgs/applications/graphics/avocode/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "avocode-${version}";
-  version = "3.2.0";
+  version = "3.4.0";
 
   src = fetchurl {
     url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
-    sha256 = "111kcjqm8j2v941m2ly4ahhxalylnsvy5zmclj1f490japz2h1xy";
+    sha256 = "1dk4vgam9r5nl8dvpfwrn52gq6r4zxs4zz63p3c4gk73d8qnh4dl";
   };
 
   libPath = stdenv.lib.makeLibraryPath (with xorg; with gnome2; [
diff --git a/pkgs/applications/graphics/exrtools/default.nix b/pkgs/applications/graphics/exrtools/default.nix
index 7980d09fed12..01af81d4de74 100644
--- a/pkgs/applications/graphics/exrtools/default.nix
+++ b/pkgs/applications/graphics/exrtools/default.nix
@@ -9,6 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "0jpkskqs1yjiighab4s91jy0c0qxcscwadfn94xy2mm2bx2qwp4z";
   };
 
+  preConfigure = ''
+    CC=${stdenv.cc.targetPrefix}cc
+    CXX=${stdenv.cc.targetPrefix}c++
+  '';
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ stdenv openexr libpng12 libjpeg ];
 
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 91d5d2f14678..f10916bcd631 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -15,8 +15,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "man" "doc" ];
 
-  nativeBuildInputs = [ makeWrapper xorg.libXt ]
-    ++ optionals doCheck [ perlPackages.TestCommand perlPackages.TestHarness ];
+  nativeBuildInputs = [ makeWrapper xorg.libXt ];
 
   buildInputs = [ xorg.libX11 xorg.libXinerama imlib2 libjpeg libpng curl libexif ];
 
@@ -36,8 +35,9 @@ stdenv.mkDerivation rec {
     install -D -m 644 man/*.1 $out/share/man/man1
   '';
 
-  checkPhase = ''
-    PERL5LIB="${perlPackages.TestCommand}/lib/perl5/site_perl" make test
+  checkInputs = [ perlPackages.TestCommand perlPackages.TestHarness ];
+  preCheck = ''
+    export PERL5LIB="${perlPackages.TestCommand}/lib/perl5/site_perl"
   '';
 
   doCheck = true;
diff --git a/pkgs/applications/graphics/fig2dev/default.nix b/pkgs/applications/graphics/fig2dev/default.nix
new file mode 100644
index 000000000000..1e54152fff4d
--- /dev/null
+++ b/pkgs/applications/graphics/fig2dev/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, ghostscript, libpng } :
+
+let
+  version = "3.2.7a";
+
+in stdenv.mkDerivation {
+  name = "fig2dev-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/mcj/fig2dev-${version}.tar.xz";
+    sha256 = "0a7vkfl38fvkhg3na5gr9c4fskas9wbs84y9djg85nzwbshik8mx";
+  };
+
+  buildInputs = [ libpng ];
+
+  GSEXE="${ghostscript}/bin/gs";
+
+  meta = with stdenv.lib; {
+    description = "Tool to convert Xfig files to other formats";
+    homepage = http://mcj.sourceforge.net/;
+    license = licenses.xfig;
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/pkgs/applications/graphics/gimp/default.nix b/pkgs/applications/graphics/gimp/default.nix
index 8e18d531605c..15033b8b2b09 100644
--- a/pkgs/applications/graphics/gimp/default.nix
+++ b/pkgs/applications/graphics/gimp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoreconfHook, pkgconfig, intltool, babl, gegl, gtk2, glib, gdk_pixbuf, isocodes
+{ stdenv, fetchurl, pkgconfig, intltool, babl, gegl, gtk2, glib, gdk_pixbuf, isocodes
 , pango, cairo, freetype, fontconfig, lcms, libpng, libjpeg, poppler, poppler_data, libtiff
 , libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, shared-mime-info
 , python2Packages, libexif, gettext, xorg, glib-networking, libmypaint, gexiv2
@@ -9,14 +9,14 @@ let
   inherit (python2Packages) pygtk wrapPython python;
 in stdenv.mkDerivation rec {
   name = "gimp-${version}";
-  version = "2.10.4";
+  version = "2.10.6";
 
   src = fetchurl {
     url = "http://download.gimp.org/pub/gimp/v${stdenv.lib.versions.majorMinor version}/${name}.tar.bz2";
-    sha256 = "14pi0q3wwkapy0inqxk1hjsa2h8lff1z4wgdsyrk29jaw66pdc7z";
+    sha256 = "07qh2ljbza2mph1gh8sicn27qihhj8hx3ivvry2874cfh8ghgj2f";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig intltool gettext wrapPython ];
+  nativeBuildInputs = [ pkgconfig intltool gettext wrapPython ];
   propagatedBuildInputs = [ gegl ]; # needed by gimp-2.0.pc
   buildInputs = [
     babl gegl gtk2 glib gdk_pixbuf pango cairo gexiv2 harfbuzz isocodes
diff --git a/pkgs/applications/graphics/xfig/builder.sh b/pkgs/applications/graphics/xfig/builder.sh
deleted file mode 100644
index 9d95eca01226..000000000000
--- a/pkgs/applications/graphics/xfig/builder.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-source $stdenv/setup
-
-makeFlags="XAWLIB=-lXaw3d BINDIR=$out/bin XAPPLOADDIR=$out/etc/X11/app-defaults LIBDIR=$out/lib/X11 XFIGDOCDIR=$out/share/doc/xfig MANPATH=$out/man"
-
-# We need chmod +wx on dirs, not just chmod +w
-dontMakeSourcesWritable=1
-postUnpack() {
-    find . -type d -exec chmod +x '{}' \;
-}
-
-preBuild() {
-    echo "#define XAW3D" >> Imakefile.tmp
-    echo "#define XAW3D1_5E" >> Imakefile.tmp
-    cat Imakefile >> Imakefile.tmp
-    mv Imakefile.tmp Imakefile
-    xmkmf
-
-    sed -e 's@[$][$]m@-- &@g' -i Makefile
-}
-
-installPhase() {
-    make install.all $makeFlags
-
-    wrapProgram $out/bin/xfig \
-        --set XAPPLRESDIR $out/etc/X11/app-defaults
-}
-
-genericBuild
diff --git a/pkgs/applications/graphics/xfig/default.nix b/pkgs/applications/graphics/xfig/default.nix
index 545675ab1545..429af12b9bb3 100644
--- a/pkgs/applications/graphics/xfig/default.nix
+++ b/pkgs/applications/graphics/xfig/default.nix
@@ -1,47 +1,42 @@
-{ stdenv, fetchurl, makeWrapper, imake
-, xlibsWrapper, libXpm, libXmu, libXi, libXp, Xaw3d, libpng, libjpeg}:
+{ stdenv, fetchurl, xlibsWrapper, makeWrapper, libXpm
+, libXmu, libXi, libXp, Xaw3d, fig2dev
+}:
 
-let version = "3.2.5b"; in
-stdenv.mkDerivation {
+let
+  version = "3.2.7a";
+
+in stdenv.mkDerivation {
   name = "xfig-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mcj/xfig.${version}.full.tar.gz";
-    sha256 = "1hl5x49sgc0vap411whhcq6qhvh4xbjg7jggv7ih9pplg5nwy0aw";
+    url = "mirror://sourceforge/mcj/xfig-${version}.tar.xz";
+    sha256 = "096zgp0bqnxhgxbrv2jjylrjz3pr4da0xxznlk2z7ffxr5pri2fa";
   };
 
-  builder = ./builder.sh;
+  postPatch = ''
+    sed -i 's:"fig2dev":"${fig2dev}/bin/fig2dev":' src/main.c
+  '';
 
-  buildInputs = [xlibsWrapper libXpm libXmu libXi libXp Xaw3d libpng libjpeg];
+  postInstall = ''
+    mkdir -p $out/share/X11/app-defaults
+    cp app-defaults/* $out/share/X11/app-defaults
 
-  nativeBuildInputs = [ imake makeWrapper ];
+    wrapProgram $out/bin/xfig \
+      --set XAPPLRESDIR $out/share/X11/app-defaults
+  '';
 
-  hardeningDisable = [ "format" ];
+  enableParallelBuilding = true;
 
-  NIX_CFLAGS_COMPILE = "-I${libXpm.dev}/include/X11";
+  nativeBuildInputs = [ makeWrapper ];
 
-  patches =
-    let
-      debPrefix = "http://patch-tracker.debian.org/patch/series/dl/xfig/1:3.2.5.b-3";
-    in
-    [
-      (fetchurl {
-        url = "${debPrefix}/35_CVE-2010-4262.patch";
-        sha256 = "1pj669sz49wzjvvm96gwbnani7wqi0ijh21imqdzqw47qxdv7zp5";
-      })
-      (fetchurl {
-        url = "${debPrefix}/13_remove_extra_libs.patch";
-        sha256 = "1qb14ay0c8xrjzhi21jl7sl8mdzxardldzpnflkzml774bbpn8av";
-      })
-      (fetchurl {
-        url = "${debPrefix}/36_libpng15.patch";
-        sha256 = "0jd5bqj7sj9bbnxg2d0y6zmv4ka4qif2x4zc84ngdqga5433anvn";
-      })
-    ];
+  buildInputs = [ xlibsWrapper libXpm libXmu libXi libXp Xaw3d ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "An interactive drawing tool for X11";
-    homepage = http://xfig.org;
-    platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;         # arbitrary choice
+    longDescription = ''
+      Note that you need to have the <literal>netpbm</literal> tools
+      in your path to export bitmaps.
+    '';
+    inherit (fig2dev.meta) license homepage platforms;
   };
 }
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index d839a7141e3b..f995abf28361 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -77,6 +77,7 @@ let
       calendarsupport = callPackage ./calendarsupport.nix {};
       dolphin = callPackage ./dolphin.nix {};
       dolphin-plugins = callPackage ./dolphin-plugins.nix {};
+      dragon = callPackage ./dragon.nix {};
       eventviews = callPackage ./eventviews.nix {};
       ffmpegthumbs = callPackage ./ffmpegthumbs.nix { };
       filelight = callPackage ./filelight.nix {};
diff --git a/pkgs/applications/kde/dragon.nix b/pkgs/applications/kde/dragon.nix
new file mode 100644
index 000000000000..9dd55ec4b9c1
--- /dev/null
+++ b/pkgs/applications/kde/dragon.nix
@@ -0,0 +1,25 @@
+{
+  mkDerivation, lib,
+  extra-cmake-modules, kdoctools,
+  baloo, baloo-widgets, kactivities, kbookmarks, kcmutils,
+  kcompletion, kconfig, kcoreaddons, kdelibs4support, kdbusaddons,
+  kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications,
+  kparts, ktexteditor, kwindowsystem, phonon, solid, phonon-backend-gstreamer
+}:
+
+mkDerivation {
+  name = "dragon";
+  meta = {
+    license = with lib.licenses; [ gpl2 fdl12 ];
+    description = "A simple media player for KDE";
+    maintainers = [ lib.maintainers.jonathanreeve ];
+  };
+  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+  propagatedBuildInputs = [
+    baloo baloo-widgets kactivities kbookmarks kcmutils kcompletion kconfig
+    kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes
+    kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem
+    phonon solid phonon-backend-gstreamer
+  ];
+  outputs = [ "out" "dev" ];
+}
diff --git a/pkgs/applications/misc/1password/default.nix b/pkgs/applications/misc/1password/default.nix
index a44ce2d8b4c2..94dfc68fb59b 100644
--- a/pkgs/applications/misc/1password/default.nix
+++ b/pkgs/applications/misc/1password/default.nix
@@ -2,24 +2,24 @@
 
 stdenv.mkDerivation rec {
   name = "1password-${version}";
-  version = "0.5.1";
+  version = "0.5.3";
   src =
     if stdenv.system == "i686-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip";
-        sha256 = "08kzjilxpkvlwqjyxnic1n6xiy6gkndijwxdksm59k7c56mdawsz";
+        sha256 = "05s223h1yps4k9kmignl0r5sbh6w7m1hnlmafnf1kiwv7gacvxjc";
         stripRoot = false;
       }
     else if stdenv.system == "x86_64-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip";
-        sha256 = "1bsbzaqws0z991r6rkjrxay74fj4g5ld4d748ygr0950zwi1m3h7";
+        sha256 = "0p9x1fx0309v8dxxaf88m8x8q15zzqywfmjn6v5wb9v3scp9396v";
         stripRoot = false;
       }
     else if stdenv.system == "x86_64-darwin" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.zip";
-        sha256 = "1dhr8m9icip27v802gxl1vhl9rf0jq5awirdm72lqmlypj86df0g";
+        sha256 = "1z2xp9bn93gr4ha6zx65va1fb58a2xlnnmpv583y96gq3vbnqdcj";
         stripRoot = false;
       }
     else throw "Architecture not supported";
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 83ba02933fd5..dacfa908b516 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -1,28 +1,23 @@
 { stdenv, python3, fetchFromGitHub, fetchpatch }:
 
 with python3.pkgs; buildPythonApplication rec {
-  version = "3.7";
+  version = "3.8";
   pname = "buku";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "buku";
     rev = "v${version}";
-    sha256 = "0qc6xkrhf2phaj9fhym19blr4rr2vllvnyljjz909xr4vsynvb41";
-  };
-
-  patches = fetchpatch {
-    url = https://github.com/jarun/Buku/commit/495d6eac4d9371e8ce6d3f601e2bb9e5e74962b4.patch;
-    sha256 = "0py4l5qcgdzqr0iqmcc8ddld1bspk8iwypz4dcr88y70j86588gk";
+    sha256 = "0gv26c4rr1akcaiff1nrwil03sv7d58mfxr86pgsw6nwld67ns0r";
   };
 
   checkInputs = [
     pytestcov
-    pytest-catchlog
     hypothesis
     pytest
     pylint
     flake8
+    pyyaml
   ];
 
   propagatedBuildInputs = [
@@ -30,6 +25,14 @@ with python3.pkgs; buildPythonApplication rec {
     beautifulsoup4
     requests
     urllib3
+    flask
+    flask-api
+    flask-bootstrap
+    flask-paginate
+    flask_wtf
+    arrow
+    werkzeug
+    click
   ];
 
   preCheck = ''
@@ -43,7 +46,7 @@ with python3.pkgs; buildPythonApplication rec {
       --replace "self.assertEqual(url, 'https://www.google.com')" ""
   '';
 
-  installPhase = ''
+  postInstall = ''
     make install PREFIX=$out
 
     mkdir -p $out/share/zsh/site-functions $out/share/bash-completion/completions $out/share/fish/vendor_completions.d
diff --git a/pkgs/applications/misc/chirp/default.nix b/pkgs/applications/misc/chirp/default.nix
index 8c57ebead6ae..8a26631d5c0d 100644
--- a/pkgs/applications/misc/chirp/default.nix
+++ b/pkgs/applications/misc/chirp/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "chirp-daily-${version}";
-  version = "20180707";
+  version = "20180815";
 
   src = fetchurl {
     url = "https://trac.chirp.danplanet.com/chirp_daily/daily-${version}/${name}.tar.gz";
-    sha256 = "09siq74k0ss65ssck7i7h515dxp7fhdz5klc3y0yp9wajn706ic3";
+    sha256 = "0z3jh9sbszs8x0xjmkgxa3b1xnw3w9b13pml4i5apx3mj171npyv";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/doomseeker/default.nix b/pkgs/applications/misc/doomseeker/default.nix
index 504ef78743c2..fd08ed9c3916 100644
--- a/pkgs/applications/misc/doomseeker/default.nix
+++ b/pkgs/applications/misc/doomseeker/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, cmake, fetchFromBitbucket, pkgconfig, qtbase, qttools, qtmultimedia, zlib, bzip2 }:
+{ stdenv, cmake, fetchFromBitbucket, pkgconfig, qtbase, qttools, qtmultimedia, zlib, bzip2, xxd }:
 
 stdenv.mkDerivation rec {
   name = "doomseeker-${version}";
@@ -15,10 +15,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ qtbase qtmultimedia zlib bzip2 ];
 
-  nativeBuildInputs = [ cmake qttools pkgconfig ];
+  nativeBuildInputs = [ cmake qttools pkgconfig xxd ];
 
   enableParallelBuilding = true;
 
+  NIX_CFLAGS_COMPILE = stdenv.lib.optional stdenv.cc.isClang "-Wno-error=format-security";
+
   meta = with stdenv.lib; {
     homepage = http://doomseeker.drdteam.org/;
     description = "Multiplayer server browser for many Doom source ports";
diff --git a/pkgs/applications/misc/dozenal/default.nix b/pkgs/applications/misc/dozenal/default.nix
new file mode 100644
index 000000000000..b5ae9fb567ca
--- /dev/null
+++ b/pkgs/applications/misc/dozenal/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchFromGitHub, ncurses, hdate, lua5_2 }:
+
+stdenv.mkDerivation rec {
+  version = "12010904";
+  name = "dozenal-${version}";
+  src = fetchFromGitHub {
+    owner = "dgoodmaniii";
+    repo = "dozenal";
+    rev = "v${version}";
+    sha256 = "1ic63gpdda762x6ks3al71dwgmsy2isicqyr2935bd245jx8s209";
+  };
+  makeFlags = [
+              # author do not use configure and prefix directly using $prefix
+              "prefix=$(out)"
+              # graphical version of dozdc requires xforms, which is not i nixpkgs so I turned it down
+              "XFORMS_FLAGS=-UXFORMS"
+              "LUALIB=-llua"
+              "bindir=$(prefix)/bin/"
+            ];
+  # some include hardcodes the lua libraries path. This is a patch for that
+  patches = [ ./lua-header.patch ];
+  preBuild = "cd dozenal";
+  buildInputs = [ ncurses hdate lua5_2 ];
+  # I remove gdozdc, as I didn't figure all it's dependency yet.
+  postInstall = "rm $out/bin/gdozdc";
+
+  meta = {
+    description = "A complete suite of dozenal (base twelve) programs";
+    longDescription = ''
+      Programs
+
+      doz --- a converter; converts decimal numbers into dozenal. Accepts
+         input in standard or exponential notation (i.e., "1492.2" or "1.4922e3").
+      dec --- a converter; converts dozenal numbers into decimal. Accepts input
+         in standard or exponential notation (i.e., "X44;4" or "X;444e2").
+      dozword --- converts a dozenal number (integers only) into words,
+         according to the Pendlebury system.
+      dozdc --- a full-featured scientific calculator which works in the
+         dozenal base. RPN command line.
+      tgmconv --- a converter for all standard measurements; converts to and
+         from TGM, Imperial, customary, and SI metric.
+      dozpret --- a pretty-printer for dozenal numbers; inserts spacing (or
+         other characters) as desired, and can also transform transdecimal digits
+         from 'X' to 'E' into any character or sequence of characters desired.
+      dozdate --- a more-or-less drop-in replacement for GNU and BSD date, it
+         outputs the date and time in dozenal, as well as containing some TGM
+         extensions.
+      dozstring --- a simple byte converter; absorbs a string either from
+         standard input or a command line argument, leaving it identical but
+         for the numbers, which it converts into dozenal. Options for padding
+         and for not converting specific numbers.
+      doman --- a converter which takes a dozenal integer and
+         emits its equivalent in a non-place-value system, such as
+         Roman numerals.  Arbitrary ranks and symbols may be used.
+         Defaults to dozenal Roman numerals.
+    '';
+    homepage = https://github.com/dgoodmaniii/dozenal/;
+    maintainers = with stdenv.lib.maintainers; [ CharlesHD ];
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/misc/dozenal/lua-header.patch b/pkgs/applications/misc/dozenal/lua-header.patch
new file mode 100644
index 000000000000..45b76e159a11
--- /dev/null
+++ b/pkgs/applications/misc/dozenal/lua-header.patch
@@ -0,0 +1,16 @@
+diff -ruN dozenal-12010904/dozenal/dozcal/call_lua.c dozenal-patched/dozenal/dozcal/call_lua.c
+--- dozenal-12010904/dozenal/dozcal/call_lua.c	2017-09-04 19:25:01.000000000 +0200
++++ dozenal-patched/dozenal/dozcal/call_lua.c	2018-06-13 10:19:57.821950327 +0200
+@@ -38,9 +38,9 @@
+ #include"utility.h"
+ #include"conv.h"
+ #include"proc_date.h"
+-#include<lua5.2/lua.h>
+-#include<lua5.2/lauxlib.h>
+-#include<lua5.2/lualib.h>
++#include<lua.h>
++#include<lauxlib.h>
++#include<lualib.h>
+ 
+ void bail(lua_State *L, int err_code, char *filename);
+ int file_prefix(char **s, char *t);
diff --git a/pkgs/applications/misc/hdate/default.nix b/pkgs/applications/misc/hdate/default.nix
new file mode 100644
index 000000000000..e2f5f653d47c
--- /dev/null
+++ b/pkgs/applications/misc/hdate/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  version = "1.6.02";
+  name = "hdate-${version}";
+  src = fetchurl {
+    url = "https://sourceforge.net/projects/libhdate/files/libhdate/libhdate-${version}/libhdate-${version}.tar.bz2";
+    sha256 = "3c930a8deb57c01896dc37f0d7804e5a330ee8e88c4ff610b71f9d2b02c17762";
+  };
+  meta = {
+    description = "Hebrew calendar and solar astronomical times library and utilities";
+    homepage = https://sourceforge.net/projects/libhdate/;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ CharlesHD ];
+  };
+}
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 8293e0434cdf..a6a489492e31 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "hugo-${version}";
-  version = "0.47";
+  version = "0.47.1";
 
   goPackagePath = "github.com/gohugoio/hugo";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner  = "gohugoio";
     repo   = "hugo";
     rev    = "v${version}";
-    sha256 = "1h62ix285mx977mgawyanyvsqqic1xx0gmi1r5wn43w9yc29wr0z";
+    sha256 = "0n27vyg66jfx4lwswsmdlybly8c9gy5rk7yhy7wzs3rwzlqv1jzj";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/applications/misc/hugo/deps.nix b/pkgs/applications/misc/hugo/deps.nix
index 061a6612ee7e..47487029ea01 100644
--- a/pkgs/applications/misc/hugo/deps.nix
+++ b/pkgs/applications/misc/hugo/deps.nix
@@ -104,8 +104,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/disintegration/imaging";
-      rev = "8021a62ea0dfe0ed2e6107f5ccd37e0d4a92a996";
-      sha256 = "1c32sqfz78g9wxvpng8n9r404lf2lgjn9b24mg8y3rxylx29gks7";
+      rev = "0bd5694c78c9c3d9a3cd06a706a8f3c59296a9ac";
+      sha256 = "1laxccmzi7q51zxn81ringmdwp8iaipivrl375yc3gq56d70sp0r";
     };
   }
   {
@@ -140,8 +140,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/gobuffalo/envy";
-      rev = "2d0f467653f3d961ce9ada4d32a230bdcb3bfe11";
-      sha256 = "0p9raqrsqg2z1hq2kbvbq5qcwqihjqf28xnfh62214p7ak9b9x8n";
+      rev = "3c96536452167a705ca5a70b831d3810e1e10452";
+      sha256 = "0ixqpdmb7kjlarkv0qlbwnbr194sajx9flysnhcldzmciqgk5bqs";
     };
   }
   {
@@ -347,8 +347,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/spf13/cobra";
-      rev = "7c4570c3ebeb8129a1f7456d0908a8b676b6f9f1";
-      sha256 = "16amh0prlzqrrbg5j629sg0f688nfzfgn9sair8jyybqampr3wc7";
+      rev = "ff0d02e8555041edecbd0ce27f32c6ea4b214483";
+      sha256 = "1ilw6b2nir1bg7hmx8hrn60za37qqm18xvamv90fx5vxq85fsml9";
     };
   }
   {
@@ -446,8 +446,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "aaf60122140d3fcf75376d319f0554393160eb50";
-      sha256 = "03i6ij7jcf5mp9dc8ps8b63g1k843z7c823qyzn5a276gpxvxlvv";
+      rev = "922f4815f713f213882e8ef45e0d315b164d705c";
+      sha256 = "1ci1rxk2d6hmfsjjc19n2sxhyn4jqr5ia3ykyah1h08p0pn7k52w";
     };
   }
   {
@@ -464,8 +464,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "1c9583448a9c3aa0f9a6a5241bf73c0bd8aafded";
-      sha256 = "0g0nc549pmdmvja4mdqh0kgvznnw6wliqmx5wrnj02l3a23vizmi";
+      rev = "4ea2f632f6e912459fe60b26b1749377f0d889d5";
+      sha256 = "16pdi4mmjlcrjdcz7k559jqnsvkhdmff68bbqq7ii1lp8vrpqqmy";
     };
   }
   {
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index 5c5769db1b46..b6258491a8c3 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -26,13 +26,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "keepassxc-${version}";
-  version = "2.3.3";
+  version = "2.3.4";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = "${version}";
-    sha256 = "08cj1nxbjy2m80h3irnra2qha7fc5ahhzcgkyk9jv4zyys9xv998";
+    sha256 = "1gja402dsbws4z8ybnhqbw7rc9svgqnshqjgf7158d6x0ni386m3";
   };
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index 0c894fb0b612..d3fff65a3995 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -7,7 +7,7 @@
 
 with python3Packages;
 buildPythonApplication rec {
-  version = "0.11.2";
+  version = "0.11.3";
   name = "kitty-${version}";
   format = "other";
 
@@ -15,7 +15,7 @@ buildPythonApplication rec {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "0vmxgyxrgaqijwd51ldd8pkz7jn9hdcfib1dqr0ai614286v69hw";
+    sha256 = "1fql8ayxvip8hgq9gy0dhqfvngv13gh5bf71vnc3agd80kzq1n73";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/kiwix/default.nix b/pkgs/applications/misc/kiwix/default.nix
index c37d26f3dbcc..cfba3a0c83d1 100644
--- a/pkgs/applications/misc/kiwix/default.nix
+++ b/pkgs/applications/misc/kiwix/default.nix
@@ -81,6 +81,11 @@ stdenv.mkDerivation rec {
     cd ../../..
   '';
 
+  preConfigure = ''
+    CC=${stdenv.cc.targetPrefix}cc
+    CXX=${stdenv.cc.targetPrefix}c++
+  '';
+
   configureFlags = [
     "--disable-static"
     "--disable-staticbins"
diff --git a/pkgs/applications/misc/krusader/default.nix b/pkgs/applications/misc/krusader/default.nix
index 6dc448c6bf48..70915ca87073 100644
--- a/pkgs/applications/misc/krusader/default.nix
+++ b/pkgs/applications/misc/krusader/default.nix
@@ -6,13 +6,13 @@
 
 let
   pname = "krusader";
-  version = "2.7.0";
+  version = "2.7.1";
 in mkDerivation rec {
   name = "krusader-${version}";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/${name}.tar.xz";
-    sha256 = "09ws3samxnjk0qi9pcfm2rmw0nr5mzn9pzpljgrdb5qj7cmm4hcb";
+    sha256 = "1svxj1qygyr3a4dkx0nh2d6r4q7pfj00brzghl94mf4q0rz4vhfm";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/navit/default.nix b/pkgs/applications/misc/navit/default.nix
index 362d28d2607f..4db5ed4f8eb6 100644
--- a/pkgs/applications/misc/navit/default.nix
+++ b/pkgs/applications/misc/navit/default.nix
@@ -1,30 +1,58 @@
-{ stdenv, fetchsvn, pkgconfig, gtk2, SDL, fontconfig, freetype, imlib2, SDL_image, libGLU_combined,
-libXmu, freeglut, python, gettext, quesoglc, gd, postgresql, cmake, qt4, SDL_ttf, fribidi}:
+{ stdenv, fetchFromGitHub, pkgconfig, gtk2, SDL, fontconfig, freetype, imlib2, SDL_image, libGLU_combined,
+libXmu, freeglut, pcre, dbus-glib, glib, librsvg, freeimage, libxslt,
+qtbase, qtquickcontrols, qtsvg, qtdeclarative, qtlocation, qtsensors, qtmultimedia, qtspeech, espeak,
+cairo, gdk_pixbuf, pango, atk, patchelf, fetchurl, bzip2,
+python, gettext, quesoglc, gd, postgresql, cmake, shapelib, SDL_ttf, fribidi}:
+
 stdenv.mkDerivation rec {
-  name = "navit-svn-3537";
+  name = "navit-${version}";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "navit-gps";
+    repo = "navit";
+    rev = "v${version}";
+    sha256 = "0jf2gjh2sszr5y5c2wvamfj2qggi2y5k3ynb32pak9vhf5xyl5xj";
+  };
 
-  src = fetchsvn {
-    url = svn://svn.code.sf.net/p/navit/code/trunk/navit;
-    rev = 5576;
-    sha256 = "1xx62l5srfhh9cfi7n3pxj8hpcgr1rpa0hzfmbrqadzv09z36723";
+  sample_map = fetchurl {
+    url = "http://www.navit-project.org/maps/osm_bbox_11.3,47.9,11.7,48.2.osm.bz2";
+    name = "sample_map.bz2";
+    sha256 = "0vg6b6rhsa2cxqj4rbhfhhfss71syhnfa6f1jg2i2d7l88dm5x7d";
   };
 
-  hardeningDisable = [ "format" ];
+  #hardeningDisable = [ "format" ];
+  NIX_CFLAGS_COMPILE = [ "-I${SDL.dev}/include/SDL" ];
 
-  buildInputs = [ gtk2 SDL fontconfig freetype imlib2 SDL_image libGLU_combined
-    libXmu freeglut python gettext quesoglc gd postgresql qt4 SDL_ttf fribidi ];
+  # TODO: fix speech options.
+  cmakeFlags = [ "-DSAMPLE_MAP=n " "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-Dsupport/espeak=FALSE" "-Dspeech/qt5_espeak=FALSE" ];
 
-  nativeBuildInputs = [ pkgconfig cmake ];
+  buildInputs = [ gtk2 SDL fontconfig freetype imlib2 SDL_image libGLU_combined freeimage libxslt
+    libXmu freeglut python gettext quesoglc gd postgresql qtbase SDL_ttf fribidi pcre qtquickcontrols
+    espeak qtmultimedia qtspeech qtsensors qtlocation qtdeclarative qtsvg dbus-glib librsvg shapelib glib 
+    cairo gdk_pixbuf pango atk ];
 
-  NIX_CFLAGS_COMPILE = [ "-I${SDL.dev}/include/SDL" ];
+  nativeBuildInputs = [ pkgconfig cmake patchelf bzip2 ];
+
+  # we dont want blank screen by defaut
+  postInstall = ''
+    # emulate DSAMPLE_MAP
+    mkdir -p $out/share/navit/maps/maps
+    bzcat "${sample_map}" | $out/bin/maptool "$out/share/navit/maps/osm_bbox_11.3,47.9,11.7,48.2.bin"
+  '';
 
-  cmakeFlags = [ "-DSAMPLE_MAP=n" ];
+  # TODO: fix upstream?
+  postFixup = ''
+    for lib in $(find "$out/lib/navit/" -iname "*.so" ); do
+      patchelf --set-rpath ${stdenv.lib.makeLibraryPath buildInputs} $lib
+    done
+  '';
 
-  meta = {
-    homepage = http://www.navit-project.org/;
+  meta = with stdenv.lib; {
+    homepage = http://www.navit-project.org;
     description = "Car navigation system with routing engine using OSM maps";
-    license = stdenv.lib.licenses.gpl2;
-    maintainers = with stdenv.lib.maintainers; [ ];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.genesis ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/ranger/default.nix b/pkgs/applications/misc/ranger/default.nix
index e3a3a5e80d68..33b8c33033ea 100644
--- a/pkgs/applications/misc/ranger/default.nix
+++ b/pkgs/applications/misc/ranger/default.nix
@@ -43,7 +43,7 @@ python3Packages.buildPythonApplication rec {
 
     # give image previews out of the box when building with w3m
     substituteInPlace ranger/config/rc.conf \
-      --replace "set preview_images false" "set preview_images true" \
+      --replace "set preview_images false" "set preview_images true"
   '';
 
   meta =  with stdenv.lib; {
diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/misc/tilix/default.nix
index f30c6a639489..e101005e44ec 100644
--- a/pkgs/applications/misc/tilix/default.nix
+++ b/pkgs/applications/misc/tilix/default.nix
@@ -1,23 +1,23 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, dmd, gnome3, dbus
-, gsettings-desktop-schemas, desktop-file-utils, gettext, gtkd
+, gsettings-desktop-schemas, desktop-file-utils, gettext, gtkd, libsecret
 , perlPackages, wrapGAppsHook, xdg_utils }:
 
 stdenv.mkDerivation rec {
   name = "tilix-${version}";
-  version = "1.8.1";
+  version = "1.8.3";
 
   src = fetchFromGitHub {
     owner = "gnunn1";
     repo = "tilix";
     rev = "${version}";
-    sha256 = "19dx3hlj40cqwph98pcifkm6axfszfr0v9k6sr3caw4ycml84ci1";
+    sha256 = "05x2nyyb5w3122j90g0f7lh9jl7xi1nk176sl01vl2ks7zar00dq";
   };
 
   nativeBuildInputs = [
     autoreconfHook dmd desktop-file-utils perlPackages.Po4a pkgconfig xdg_utils
     wrapGAppsHook
   ];
-  buildInputs = [ gnome3.dconf gettext gsettings-desktop-schemas gtkd dbus ];
+  buildInputs = [ gnome3.dconf gettext gsettings-desktop-schemas gtkd dbus libsecret ];
 
   preBuild = ''
     makeFlagsArray=(
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
 
   postInstall = with gnome3; ''
     ${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
+
+    wrapProgram $out/bin/tilix \
+      --prefix LD_LIBRARY_PATH ":" "${libsecret}/lib"
   '';
 
 
diff --git a/pkgs/applications/misc/tootle/default.nix b/pkgs/applications/misc/tootle/default.nix
new file mode 100644
index 000000000000..b2aab54c1047
--- /dev/null
+++ b/pkgs/applications/misc/tootle/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchFromGitHub
+, meson, ninja, pkgconfig
+, gnome3, vala, gobjectIntrospection, wrapGAppsHook
+, gtk3, granite
+, json-glib, glib, glib-networking
+}:
+
+let
+  pname = "tootle";
+  version = "0.1.5";
+in stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "bleakgrey";
+    repo = pname;
+    rev = version;
+    sha256 = "022h1rh1jk3m1f9al0s1rylmnqnkydyc81idfc8jf1g0frnvn5i6";
+  };
+
+  nativeBuildInputs = [ meson ninja pkgconfig vala gobjectIntrospection wrapGAppsHook ];
+  buildInputs = [
+    gtk3 granite json-glib glib glib-networking
+    gnome3.libgee gnome3.libsoup gnome3.gsettings-desktop-schemas
+  ];
+
+  postPatch = ''
+    chmod +x ./meson/post_install.py
+    patchShebangs ./meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simple Mastodon client designed for elementary OS";
+    homepage    = https://github.com/bleakgrey/tootle;
+    license     = licenses.gpl3;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index ff9b8b10b18e..ebc700a7f37c 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -82,8 +82,8 @@ let
     xdg_utils yasm minizip libwebp
     libusb1 re2 zlib
     ffmpeg libxslt libxml2
-    # harfbuzz-icu # in versions over 63 harfbuzz and freetype are being built together
-                   # so we can't build with one from system and other from source
+    # harfbuzz # in versions over 63 harfbuzz and freetype are being built together
+               # so we can't build with one from system and other from source
   ];
 
   # build paths and release info
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 570180d4c4df..1fbcb3d97143 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -174,6 +174,7 @@ stdenv.mkDerivation {
       gappsWrapperArgs+=(--argv0 "$out/bin/.firefox-wrapped")
     '';
 
+  passthru.execdir = "/bin";
   passthru.ffmpegSupport = true;
   passthru.gssSupport = true;
   # update with:
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 336cd2556611..944844d6b846 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -16,7 +16,7 @@
 
 ## optional libraries
 
-, alsaSupport ? true, alsaLib
+, alsaSupport ? stdenv.isLinux, alsaLib
 , pulseaudioSupport ? true, libpulseaudio
 , ffmpegSupport ? true, gstreamer, gst-plugins-base
 , gtk3Support ? !isTorBrowserLike, gtk2, gtk3, wrapGAppsHook
@@ -39,6 +39,10 @@
 , safeBrowsingSupport ? false
 , drmSupport ? false
 
+# macOS dependencies
+, xcbuild, CoreMedia, ExceptionHandling, Kerberos, AVFoundation, MediaToolbox
+, CoreLocation, Foundation, AddressBook, libobjc, cups, rsync
+
 ## other
 
 # As stated by Sylvestre Ledru (@sylvestre) on Nov 22, 2017 at
@@ -66,7 +70,14 @@ assert stdenv.cc.libc or null != null;
 
 let
   flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")];
-  gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
+
+  default-toolkit = if stdenv.isDarwin then "cairo-cocoa"
+                    else "cairo-gtk${if gtk3Support then "3" else "2"}";
+
+  execdir = if stdenv.isDarwin
+            then "/Applications/${browserName}.app/Contents/MacOS"
+            else "/bin";
+  browserName = if stdenv.isDarwin then "Firefox" else "firefox";
 in
 
 stdenv.mkDerivation (rec {
@@ -90,13 +101,27 @@ stdenv.mkDerivation (rec {
   ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
   ++ lib.optionals ffmpegSupport [ gstreamer gst-plugins-base ]
   ++ lib.optional  gtk3Support gtk3
-  ++ lib.optional  gssSupport kerberos;
-
-  NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss.dev}/include/nss -I${glib.dev}/include/gio-unix-2.0";
+  ++ lib.optional  gssSupport kerberos
+  ++ lib.optionals stdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
+                                     AVFoundation MediaToolbox CoreLocation
+                                     Foundation libobjc AddressBook cups ];
+
+  NIX_CFLAGS_COMPILE = [ "-I${nspr.dev}/include/nspr"
+                         "-I${nss.dev}/include/nss"
+                         "-I${glib.dev}/include/gio-unix-2.0" ]
+                      ++ lib.optional stdenv.isDarwin [
+                         "-isystem ${llvmPackages.libcxx}/include/c++/v1"
+                         "-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10" ];
+
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace js/src/jsmath.cpp --replace 'defined(HAVE___SINCOS)' 0
+  '';
 
   nativeBuildInputs =
     [ autoconf213 which gnused pkgconfig perl python2 cargo rustc ]
-    ++ lib.optional gtk3Support wrapGAppsHook ++ extraNativeBuildInputs;
+    ++ lib.optional gtk3Support wrapGAppsHook
+    ++ lib.optionals stdenv.isDarwin [ xcbuild rsync ]
+    ++ extraNativeBuildInputs;
 
   preConfigure = ''
     # remove distributed configuration files
@@ -110,11 +135,23 @@ stdenv.mkDerivation (rec {
   '' else ''
     make -f client.mk configure-files
     configureScript="$(realpath ./configure)"
-  '') + ''
-    cxxLib=$( echo -n ${gcc}/include/c++/* )
-    archLib=$cxxLib/$( ${gcc}/bin/gcc -dumpmachine )
-
-    test -f layout/style/ServoBindings.toml && sed -i -e '/"-DRUST_BINDGEN"/ a , "-cxx-isystem", "'$cxxLib'", "-isystem", "'$archLib'"' layout/style/ServoBindings.toml
+  '') + lib.optionalString (!isTorBrowserLike && lib.versionAtLeast version "53") ''
+    export MOZCONFIG=$(pwd)/mozconfig
+
+    # Set C flags for Rust's bindgen program. Unlike ordinary C
+    # compilation, bindgen does not invoke $CC directly. Instead it
+    # uses LLVM's libclang. To make sure all necessary flags are
+    # included we need to look in a few places.
+    # TODO: generalize this process for other use-cases.
+
+    BINDGEN_CFLAGS="$(< ${stdenv.cc}/nix-support/libc-cflags) \
+      $(< ${stdenv.cc}/nix-support/cc-cflags) \
+      ${stdenv.cc.default_cxx_stdlib_compile} \
+      ${lib.optionalString stdenv.cc.isClang "-idirafter ${stdenv.cc.cc}/lib/clang/${lib.getVersion stdenv.cc.cc}/include"} \
+      ${lib.optionalString stdenv.cc.isGNU "-isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc} -isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc}/$(cc -dumpmachine)"} \
+      $NIX_CFLAGS_COMPILE"
+
+    echo "ac_add_options BINDGEN_CFLAGS='$BINDGEN_CFLAGS'" >> $MOZCONFIG
   '' + lib.optionalString googleAPISupport ''
     # Google API key used by Chromium and Firefox.
     # Note: These are for NixOS/nixpkgs use ONLY. For your own distribution,
@@ -146,7 +183,7 @@ stdenv.mkDerivation (rec {
     "--enable-jemalloc"
     "--disable-maintenance-service"
     "--disable-gconf"
-    "--enable-default-toolkit=cairo-gtk${if gtk3Support then "3" else "2"}"
+    "--enable-default-toolkit=${default-toolkit}"
   ]
   ++ lib.optional (lib.versionOlder version "61") "--enable-system-hunspell"
   ++ lib.optionals (lib.versionAtLeast version "56" && !stdenv.hostPlatform.isi686) [
@@ -223,7 +260,12 @@ stdenv.mkDerivation (rec {
     paxmark m dist/bin/xpcshell
   '';
 
-  postInstall = ''
+  installPhase = if stdenv.isDarwin then ''
+    mkdir -p $out/Applications
+    cp -LR dist/Firefox.app $out/Applications
+  '' else null;
+
+  postInstall = lib.optionalString stdenv.isLinux ''
     # For grsecurity kernels
     paxmark m $out/lib/firefox*/{firefox,firefox-bin,plugin-container}
 
@@ -234,7 +276,7 @@ stdenv.mkDerivation (rec {
     gappsWrapperArgs+=(--argv0 "$out/bin/.firefox-wrapped")
   '';
 
-  postFixup = ''
+  postFixup = lib.optionalString stdenv.isLinux ''
     # Fix notifications. LibXUL uses dlopen for this, unfortunately; see #18712.
     patchelf --set-rpath "${lib.getLib libnotify
       }/lib:$(patchelf --print-rpath "$out"/lib/firefox*/libxul.so)" \
@@ -244,11 +286,10 @@ stdenv.mkDerivation (rec {
   doInstallCheck = true;
   installCheckPhase = ''
     # Some basic testing
-    "$out/bin/firefox" --version
+    "$out${execdir}/${browserName}" --version
   '';
 
   passthru = {
-    browserName = "firefox";
     inherit version updateScript;
     isFirefox3Like = true;
     inherit isTorBrowserLike;
@@ -256,6 +297,8 @@ stdenv.mkDerivation (rec {
     inherit nspr;
     inherit ffmpegSupport;
     inherit gssSupport;
+    inherit execdir;
+    inherit browserName;
   } // lib.optionalAttrs gtk3Support { inherit gtk3; };
 
 } // overrides)
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 3c4208c05c2c..984d80167c39 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -36,7 +36,7 @@ rec {
       description = "A web browser built from Firefox source tree";
       homepage = http://www.mozilla.com/en-US/firefox/;
       maintainers = with lib.maintainers; [ eelco ];
-      platforms = lib.platforms.linux;
+      platforms = lib.platforms.unix;
       license = lib.licenses.mpl20;
     };
     updateScript = callPackage ./update.nix {
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 38d596480328..b64a6cf7ad98 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -101,24 +101,28 @@ let
         ];
       };
 
-      buildInputs = [makeWrapper]
-        ++ lib.optional (browser ? gtk3) browser.gtk3;
-
-      buildCommand = ''
-        if [ ! -x "${browser}/bin/${browserName}" ]
+      nativeBuildInputs = [ makeWrapper lndir ];
+      buildInputs = lib.optional (browser ? gtk3) browser.gtk3;
+
+      buildCommand = lib.optionalString stdenv.isDarwin ''
+        mkdir -p $out/Applications
+        cp -R --no-preserve=mode,ownership ${browser}/Applications/${browserName}.app $out/Applications
+        rm -f $out${browser.execdir or "/bin"}/${browserName}
+      '' + ''
+        if [ ! -x "${browser}${browser.execdir or "/bin"}/${browserName}" ]
         then
-            echo "cannot find executable file \`${browser}/bin/${browserName}'"
+            echo "cannot find executable file \`${browser}${browser.execdir or "/bin"}/${browserName}'"
             exit 1
         fi
 
-        makeWrapper "$(readlink -v --canonicalize-existing "${browser}/bin/${browserName}")" \
-            "$out/bin/${browserName}${nameSuffix}" \
+        makeWrapper "$(readlink -v --canonicalize-existing "${browser}${browser.execdir or "/bin"}/${browserName}")" \
+          "$out${browser.execdir or "/bin"}/${browserName}${nameSuffix}" \
             --suffix-each MOZ_PLUGIN_PATH ':' "$plugins" \
             --suffix LD_LIBRARY_PATH ':' "$libs" \
             --suffix-each GTK_PATH ':' "$gtk_modules" \
             --suffix-each LD_PRELOAD ':' "$(cat $(filterExisting $(addSuffix /extra-ld-preload $plugins)))" \
             --prefix-contents PATH ':' "$(filterExisting $(addSuffix /extra-bin-path $plugins))" \
-            --suffix PATH ':' "$out/bin" \
+            --suffix PATH ':' "$out${browser.execdir or "/bin"}" \
             --set MOZ_APP_LAUNCHER "${browserName}${nameSuffix}" \
             --set MOZ_SYSTEM_DIR "$out/lib/mozilla" \
             ${lib.optionalString (browser ? gtk3)
@@ -144,7 +148,7 @@ let
 
         mkdir -p $out/lib/mozilla
         for ext in ${toString nativeMessagingHosts}; do
-            ${lndir}/bin/lndir -silent $ext/lib/mozilla $out/lib/mozilla
+            lndir -silent $ext/lib/mozilla $out/lib/mozilla
         done
 
         # For manpages, in case the program supplies them
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle/default.nix
index 031c520275fe..50b992253cea 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle/default.nix
@@ -337,6 +337,7 @@ stdenv.mkDerivation rec {
     $out/bin/tor-browser -version >/dev/null
   '';
 
+  passthru.execdir = "/bin";
   meta = with stdenv.lib; {
     description = "An unofficial version of the tor browser bundle, built from source";
     homepage = https://torproject.org/;
diff --git a/pkgs/applications/networking/feedreaders/rsstail/default.nix b/pkgs/applications/networking/feedreaders/rsstail/default.nix
index a7fd31cac2ff..459aee01f43f 100644
--- a/pkgs/applications/networking/feedreaders/rsstail/default.nix
+++ b/pkgs/applications/networking/feedreaders/rsstail/default.nix
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
     owner = "flok99";
   };
 
-  buildInputs = [ libmrss ]
-    ++ stdenv.lib.optional doCheck cppcheck;
+  buildInputs = [ libmrss ];
+  checkInputs = [ cppcheck ];
 
   postPatch = ''
     substituteInPlace Makefile --replace -liconv_hook ""
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index 2e2489870ed1..983646fbad53 100644
--- a/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, qtbase, qtquickcontrols, cmake, libqmatrixclient }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, qtbase, qtquickcontrols, cmake, libqmatrixclient }:
 
 stdenv.mkDerivation rec {
   name = "quaternion-${version}";
@@ -11,10 +11,18 @@ stdenv.mkDerivation rec {
     sha256 = "0zrr4khbbdf5ziq65gi0cb1yb1d0y5rv18wld22w1x96f7fkmrib";
   };
 
-  buildInputs = [ qtbase qtquickcontrols libqmatrixclient ];
+  buildInputs = [ qtbase qtquickcontrols ];
 
   nativeBuildInputs = [ cmake ];
 
+  patches = [
+    # https://github.com/QMatrixClient/Quaternion/pull/400
+    (fetchpatch {
+      url = "https://github.com/QMatrixClient/Quaternion/commit/6cb29834efc343dc2bcf1db62cfad2dc4c121c54.patch";
+      sha256 = "0n7mgzzrvx9sa657rfb99i0mjh1k0sn5br344mknqy3wgqdr7s3x";
+    })
+  ];
+
   # libqmatrixclient is now compiled as a dynamic library but quarternion cannot use it yet
   # https://github.com/QMatrixClient/Quaternion/issues/239
   postPatch = ''
@@ -22,7 +30,11 @@ stdenv.mkDerivation rec {
     ln -s ${libqmatrixclient.src} lib
   '';
 
-  postInstall = ''
+  postInstall = if stdenv.isDarwin then ''
+    mkdir -p $out/Applications
+    mv $out/bin/quaternion.app $out/Applications
+    rmdir $out/bin || :
+  '' else ''
     substituteInPlace $out/share/applications/quaternion.desktop \
       --replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
   '';
diff --git a/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix b/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
index f858bb38dd19..168719bf0e4c 100644
--- a/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
@@ -20,7 +20,7 @@
 , speex
 , boost
 , opendht
-, libmsgpack
+, msgpack
 , gnutls
 , zlib
 , jsoncpp
@@ -108,7 +108,7 @@ stdenv.mkDerivation rec {
     speex
     boost
     opendht
-    libmsgpack
+    msgpack
     gnutls
     zlib
     jsoncpp
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index 5899ca92eb0c..9fe03b274cff 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, dpkg, makeWrapper
+{ stdenv, fetchurl, dpkg
 , alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, gdk_pixbuf, glib, glibc, gnome2, gnome3
-, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, xorg }:
+, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg }:
 
 let
 
@@ -68,7 +68,12 @@ in stdenv.mkDerivation {
 
   inherit src;
 
-  buildInputs = [ dpkg makeWrapper ];
+  nativeBuildInputs = [
+    wrapGAppsHook
+    glib # For setup hook populating GSETTINGS_SCHEMA_PATH
+  ];
+
+  buildInputs = [ dpkg ];
 
   unpackPhase = "true";
   installPhase = ''
@@ -78,6 +83,8 @@ in stdenv.mkDerivation {
     rm -rf $out/opt $out/usr
     rm $out/bin/skypeforlinux
 
+    ln -s "$out/share/skypeforlinux/skypeforlinux" "$out/bin/skypeforlinux"
+
     # Otherwise it looks "suspicious"
     chmod -R g-w $out
   '';
@@ -88,8 +95,6 @@ in stdenv.mkDerivation {
       patchelf --set-rpath ${rpath}:$out/share/skypeforlinux $file || true
     done
 
-    ln -s "$out/share/skypeforlinux/skypeforlinux" "$out/bin/skypeforlinux"
-
     # Fix the desktop link
     substituteInPlace $out/share/applications/skypeforlinux.desktop \
       --replace /usr/bin/ $out/bin/ \
diff --git a/pkgs/applications/networking/instant-messengers/utox/default.nix b/pkgs/applications/networking/instant-messengers/utox/default.nix
index 5955ecb60bd9..531ca5cbadc6 100644
--- a/pkgs/applications/networking/instant-messengers/utox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/utox/default.nix
@@ -22,15 +22,16 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    check cmake pkgconfig
+    cmake pkgconfig
   ];
 
   cmakeFlags = [
     "-DENABLE_AUTOUPDATE=OFF"
-  ] ++ lib.optional (doCheck) "-DENABLE_TESTS=ON";
-
-  doCheck = stdenv.isLinux;
+    "-DENABLE_TESTS=${if doCheck then "ON" else "OFF"}"
+  ];
 
+  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+  checkInputs = [ check ];
   checkPhase = ''
     runHook preCheck
     ctest -VV
diff --git a/pkgs/applications/networking/mailreaders/astroid/default.nix b/pkgs/applications/networking/mailreaders/astroid/default.nix
index 9a348fc03f7a..0cb07b8ce755 100644
--- a/pkgs/applications/networking/mailreaders/astroid/default.nix
+++ b/pkgs/applications/networking/mailreaders/astroid/default.nix
@@ -1,22 +1,44 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, gnome3, gmime3, webkitgtk24x-gtk3
-, libsass, notmuch, boost, wrapGAppsHook, glib-networking }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, gnome3, gmime3, webkitgtk
+, libsass, notmuch, boost, wrapGAppsHook, glib-networking, protobuf, vim_configurable
+, makeWrapper, python3, python3Packages
+, vim ? vim_configurable.override {
+                    features = "normal";
+                    gui = "auto";
+                  }
+}:
 
 stdenv.mkDerivation rec {
   name = "astroid-${version}";
-  version = "0.11.1";
+  version = "0.13";
 
   src = fetchFromGitHub {
     owner = "astroidmail";
     repo = "astroid";
     rev = "v${version}";
-    sha256 = "1z48rvlzwi7bq7j55rnb0gg1a4k486yj910z2cxz1p46lxk332j1";
+    sha256 = "105x5g44hng3fi03h67j3an53088148jbq8726nmcp0zs0cy9gac";
   };
 
   nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook ];
 
-  buildInputs = [ gnome3.gtkmm gmime3 webkitgtk24x-gtk3 libsass gnome3.libpeas
-                  notmuch boost gnome3.gsettings-desktop-schemas
-                  glib-networking ];
+  buildInputs = [ gnome3.gtkmm gmime3 webkitgtk libsass gnome3.libpeas
+                  python3 python3Packages.pygobject3
+                  notmuch boost gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme
+                  glib-networking protobuf ] ++ (if vim == null then [] else [ vim ]);
+
+  patches = [
+    # TODO: remove when https://github.com/astroidmail/astroid/pull/531
+    #       is released
+    ./run_tests.diff
+  ];
+
+  postPatch = ''
+    sed -i "s~gvim ~${vim}/bin/vim -g ~g" src/config.cc
+    sed -i "s~ -geom 10x10~~g" src/config.cc
+  '';
+
+  postInstall = ''
+    wrapProgram "$out/bin/astroid" --set CHARSET=en_us.UTF-8
+  '';
 
   meta = with stdenv.lib; {
     homepage = https://astroidmail.github.io/;
diff --git a/pkgs/applications/networking/mailreaders/astroid/run_tests.diff b/pkgs/applications/networking/mailreaders/astroid/run_tests.diff
new file mode 100644
index 000000000000..21b466741ce1
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/astroid/run_tests.diff
@@ -0,0 +1,10 @@
+diff --git a/tests/run_test.sh b/tests/run_test.sh
+index f2ea7d7..927c61d 100755
+--- a/tests/run_test.sh
++++ b/tests/run_test.sh
+@@ -1,4 +1,4 @@
+-#! /bin/bash
++#! /usr/bin/env bash
+ #
+ # Set up environment and run test specified on command line
+ 
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index 2372685dc278..4e2f9e636d5d 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig
+{ stdenv, lib, fetchpatch, fetchurl, autoreconfHook, pkgconfig
 , openssl, netcat-gnu, gnutls, gsasl, libidn, Security
 , withKeyring ? true, libsecret ? null
 , systemd ? null }:
@@ -19,6 +19,14 @@ in stdenv.mkDerivation rec {
 
   patches = [
     ./paths.patch
+
+    # To support passwordeval commands that do not print a final
+    # newline.
+    (fetchpatch {
+      name = "passwordeval-without-nl.patch";
+      url = "https://gitlab.marlam.de/marlam/msmtp/commit/df22dccf9d1af06fcd09dfdd0d6a38e1372dd5e8.patch";
+      sha256 = "06gbhvzi46zqigmmsin2aard7b9v3ihx62hbz5ljmfbj9rfs1x5y";
+    })
   ];
 
   buildInputs = [ openssl gnutls gsasl libidn ]
diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix
index 9bb266665a63..c142661fd033 100644
--- a/pkgs/applications/networking/owncloud-client/default.nix
+++ b/pkgs/applications/networking/owncloud-client/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "owncloud-client-${version}";
-  version = "2.4.2";
+  version = "2.4.3";
 
   src = fetchurl {
     url = "https://download.owncloud.com/desktop/stable/owncloudclient-${version}.tar.xz";
-    sha256 = "0pxga45fi7iyayy278hgl8x099isz6d7x1jq57p2m9qlsvfx8ap5";
+    sha256 = "1gz6xg1vm054ksrsakzfkzxgpskm0xkhsqwq0fj3i2kas09zzczk";
   };
 
   patches = [ ./find-sql.patch ];
diff --git a/pkgs/applications/networking/resilio-sync/default.nix b/pkgs/applications/networking/resilio-sync/default.nix
index 46de1d532dd4..0db18e77bfa6 100644
--- a/pkgs/applications/networking/resilio-sync/default.nix
+++ b/pkgs/applications/networking/resilio-sync/default.nix
@@ -9,13 +9,13 @@ let
 
 in stdenv.mkDerivation rec {
   name = "resilio-sync-${version}";
-  version = "2.5.12";
+  version = "2.6.0";
 
   src = fetchurl {
     url = "https://download-cdn.resilio.com/${version}/linux-${arch}/resilio-sync_${arch}.tar.gz";
     sha256 = {
-      "x86_64-linux" = "176gf5704wh22kqig8n0gg83048w71grw7h37k2qvxjaf4vypnc7";
-      "i686-linux"   = "15m2s2cqrkpb7ladbwimbs9agqb4ww9jr4gf0ifjwzm2grv5ffnh";
+      "x86_64-linux" = "0041axi9carspkfaxvyirfvsa29zz55al01x90nh93nzxvpvywsz";
+      "i686-linux"   = "1ar36lp4f6a1z9i82g3gpak4q4ny09faqxdd59q1pvfzq25ypdhs";
     }.${stdenv.system};
   };
 
diff --git a/pkgs/applications/networking/seafile-client/default.nix b/pkgs/applications/networking/seafile-client/default.nix
index d28e241e746f..06c84759a590 100644
--- a/pkgs/applications/networking/seafile-client/default.nix
+++ b/pkgs/applications/networking/seafile-client/default.nix
@@ -5,14 +5,14 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "6.2.3";
+  version = "6.2.4";
   name = "seafile-client-${version}";
 
   src = fetchFromGitHub {
     owner = "haiwen";
     repo = "seafile-client";
     rev = "v${version}";
-    sha256 = "1wdpz7vxhn9mcc7kxhrz9c5dwd492akirz351wfi4xxy5np6p6kp";
+    sha256 = "0z5li1d7ipsm1mp0lk6mls220v4vlmsqm8ym8kxlkinqbmkky0hz";
   };
 
   nativeBuildInputs = [ pkgconfig cmake makeWrapper ];
diff --git a/pkgs/applications/networking/sniffers/wireshark/cmake.patch b/pkgs/applications/networking/sniffers/wireshark/cmake.patch
deleted file mode 100644
index 890fffedce03..000000000000
--- a/pkgs/applications/networking/sniffers/wireshark/cmake.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -19,6 +19,7 @@
- # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- #
- 
-+cmake_minimum_required(VERSION 3.7)
- project(Wireshark C CXX)
- 
- # Updated by make-version.pl
-@@ -40,7 +41,7 @@
- 	# Needed for GREATER_EQUAL operator
- 	cmake_minimum_required(VERSION 3.7)
- else()
--	cmake_minimum_required(VERSION 2.8.8)
-+	cmake_minimum_required(VERSION 3.7)
- endif()
- 
- # Needs to be set after cmake_minimum_required or cmake_policy(VERSION)
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index 850fdb0b715f..867768d9f9f1 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -49,8 +49,11 @@ in stdenv.mkDerivation {
       name = "fix-timeout.patch";
       url = "https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commitdiff_plain;h=8b5b843fcbc3e03e0fc45f3caf8cf5fc477e8613;hp=94af9724d140fd132896b650d10c4d060788e4f0";
       sha256 = "1g2dm7lwsnanwp68b9xr9swspx7hfj4v3z44sz3yrfmynygk8zlv";
-    })
-    ++ stdenv.lib.optional stdenv.isDarwin ./cmake.patch;
+    });
+
+  postPatch = ''
+    sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt
+  '';
 
   preBuild = ''
     export LD_LIBRARY_PATH="$PWD/run"
diff --git a/pkgs/applications/office/tryton/default.nix b/pkgs/applications/office/tryton/default.nix
index 8037cc636ae0..0543bb07a111 100644
--- a/pkgs/applications/office/tryton/default.nix
+++ b/pkgs/applications/office/tryton/default.nix
@@ -14,10 +14,10 @@ with stdenv.lib;
 
 python2Packages.buildPythonApplication rec {
   pname = "tryton";
-  version = "4.8.4";
+  version = "4.8.5";
   src = python2Packages.fetchPypi {
     inherit pname version;
-    sha256 = "6cf3091424853e1270d61f3a9b15ad8e6b36a44c28becf216c324ca8dc1474b0";
+    sha256 = "43759d22b061a7a392a534d19a045fafd442ce98a0e390ee830127367dcaf4b4";
   };
   nativeBuildInputs = [ pkgconfig gobjectIntrospection ];
   propagatedBuildInputs = with python2Packages; [
diff --git a/pkgs/applications/office/trytond/default.nix b/pkgs/applications/office/trytond/default.nix
index 36a547699616..dc63acd6db64 100644
--- a/pkgs/applications/office/trytond/default.nix
+++ b/pkgs/applications/office/trytond/default.nix
@@ -5,10 +5,10 @@ with stdenv.lib;
 
 python2Packages.buildPythonApplication rec {
   pname = "trytond";
-  version = "4.8.3";
+  version = "4.8.4";
   src = python2Packages.fetchPypi {
     inherit pname version;
-    sha256 = "11d01dc984d9274229b5c80f883679d130a55e14e9124b051274fce9aea4ef77";
+    sha256 = "1935045b1b4674de602b4279a9cfd0a14431624a28ccb490234cffecb81fbca7";
   };
 
   # Tells the tests which database to use
diff --git a/pkgs/applications/science/biology/bowtie2/default.nix b/pkgs/applications/science/biology/bowtie2/default.nix
index 829672d64cc2..675c7d4eb0b4 100644
--- a/pkgs/applications/science/biology/bowtie2/default.nix
+++ b/pkgs/applications/science/biology/bowtie2/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "bowtie2";
-  version = "2.3.4.1";
+  version = "2.3.4.2";
   name = "${pname}-${version}";
 
   src = fetchFromGitHub {
     owner = "BenLangmead";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07cvcy6483araayj41arjzpxjmf4fmn4iqyl6gp6zmrbzw72wwzj";
+    sha256 = "1gsfaf7rjg4nwhs7vc1vf63xd5r5v1yq58w7x3barycplzbvixzz";
   };
 
   buildInputs = [ zlib tbb ];
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     homepage = http://bowtie-bio.sf.net/bowtie2;
     maintainers = with maintainers; [ rybern ];
     platforms = platforms.all;
+    broken = stdenv.isAarch64;
   };
 }
diff --git a/pkgs/applications/science/biology/strelka/default.nix b/pkgs/applications/science/biology/strelka/default.nix
new file mode 100644
index 000000000000..1527f5d3ddad
--- /dev/null
+++ b/pkgs/applications/science/biology/strelka/default.nix
@@ -0,0 +1,37 @@
+{stdenv, fetchFromGitHub, cmake, zlib, python2}:
+
+stdenv.mkDerivation rec {
+  name = "strelka-${version}";
+  version = "2.9.5";
+
+  src = fetchFromGitHub {
+    owner = "Illumina";
+    repo = "strelka";
+    rev = "v${version}";
+    sha256 = "0x4a6nkx1jnyag9svghsdjz1fz6q7qx5pn77wphdfnk81f9yspf8";
+  };
+
+  buildInputs = [ cmake zlib python2 ];
+
+  preConfigure = ''
+    sed -i 's|/usr/bin/env python|${python2}/bin/python|' src/python/lib/makeRunScript.py
+    patchShebangs .
+  '';
+
+  postFixup = ''
+    pushd $out/lib/python/pyflow
+    sed -i 's|/bin/bash|${stdenv.shell}|' pyflowTaskWrapper.py
+    rm pyflowTaskWrapper.pyc
+    echo "import pyflowTaskWrapper" | python2
+    popd
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Germline and small variant caller";
+    license = licenses.gpl3;
+    homepage = https://github.com/Illumina/strelka;
+    maintainers = with maintainers; [ jbedo ];
+    platforms = [ "x86_64-linux" ];
+  };
+
+}
diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix
index 1472b4b2af9e..76a19d410ef8 100644
--- a/pkgs/applications/science/chemistry/molden/default.nix
+++ b/pkgs/applications/science/chemistry/molden/default.nix
@@ -1,17 +1,19 @@
 { stdenv, fetchurl, which, gfortran, libGLU, xorg } :
 
 stdenv.mkDerivation rec {
-  version = "5.7";
+  version = "5.8.2";
   name = "molden-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden${version}.tar.gz";
-    sha256 = "0gaq11gm09ax25lvgfrvxv9dxvi76hps116fp6k7sqgvdd68vf0s";
+    sha256 = "1lhjx8fa8xynnlk5g6ipvchhfnz6j5lgqxlsifx82pbbnbm6mps4";
   };
 
   nativeBuildInputs = [ which ];
   buildInputs = [ gfortran libGLU xorg.libX11 xorg.libXmu ];
 
+  patches = [ ./dont_register_file_types.patch ];
+
   postPatch = ''
      substituteInPlace ./makefile --replace '-L/usr/X11R6/lib'  "" \
                                   --replace '-I/usr/X11R6/include' "" \
diff --git a/pkgs/applications/science/chemistry/molden/dont_register_file_types.patch b/pkgs/applications/science/chemistry/molden/dont_register_file_types.patch
new file mode 100644
index 000000000000..75ce593ed29a
--- /dev/null
+++ b/pkgs/applications/science/chemistry/molden/dont_register_file_types.patch
@@ -0,0 +1,29 @@
+diff --git a/makefile b/makefile
+index 58a9e74..64615b6 100644
+--- a/makefile
++++ b/makefile
+@@ -32,8 +32,6 @@ os :=
+ ifeq ($(uname), Linux)
+  os := $(shell head -n 1 /etc/issue | cut -d" " -f1)
+  ifeq ($(os), Ubuntu)
+-    EXTEN = exten
+-    EXTENZ = exten2
+     LIBSG = -L/usr/X11R6/lib -lGLU -lGL -lX11 -lm
+  endif
+  ifeq ($(os), Debian)
+@@ -278,7 +276,7 @@ LIBSOGL = -lglut -lGLU -lGL -lXmu -lX11 -lm
+ #
+ #LIBSG = -L/usr/X11R6/lib -Wl,-framework -Wl,GLUT -Wl,-framework -Wl,OpenGL -Wl,-framework -Wl,Cocoa -lGLU -lGL -lXmu -lX11 -lm
+ 
+-all:	molden gmolden ambfor/ambfor ambfor/ambmd surf/surf $(EXTEN)
++all:	molden gmolden ambfor/ambfor ambfor/ambmd surf/surf
+ xwin.o:	xwin.c rots.h
+ xwingl.o:	xwin.c rots.h
+ 
+@@ -344,5 +342,5 @@ exten:
+ exten2:
+ 	./register_extension.sh /usr/local/bin
+ 
+-install:	$(EXTENZ)
++install:
+ 	sudo install -t /usr/local/bin -m 755 molden gmolden ambfor/ambfor ambfor/ambmd surf/surf
diff --git a/pkgs/applications/science/chemistry/pymol/default.nix b/pkgs/applications/science/chemistry/pymol/default.nix
index e7dd04377be7..7b482d82e2fa 100644
--- a/pkgs/applications/science/chemistry/pymol/default.nix
+++ b/pkgs/applications/science/chemistry/pymol/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, makeDesktopItem
 , python3, python3Packages
-, glew, freeglut, libpng, libxml2, tk, freetype, libmsgpack }:
+, glew, freeglut, libpng, libxml2, tk, freetype, msgpack }:
 
 
 with stdenv.lib;
@@ -29,7 +29,7 @@ python3Packages.buildPythonApplication {
     sha256 = "1qpacd5w4r9a0nm5iqmkd92ym3ai00dp7v61cwd6jgakk6wfps3s";
   };
 
-  buildInputs = [ python3Packages.numpy glew freeglut libpng libxml2 tk freetype libmsgpack ];
+  buildInputs = [ python3Packages.numpy glew freeglut libpng libxml2 tk freetype msgpack ];
   NIX_CFLAGS_COMPILE = "-I ${libxml2.dev}/include/libxml2";
 
   installPhase = ''
diff --git a/pkgs/applications/science/electronics/eagle/eagle.nix b/pkgs/applications/science/electronics/eagle/eagle.nix
new file mode 100644
index 000000000000..b97ede413963
--- /dev/null
+++ b/pkgs/applications/science/electronics/eagle/eagle.nix
@@ -0,0 +1,83 @@
+{ stdenv, fetchurl, makeDesktopItem, patchelf
+, libXrender, libXrandr, libXcursor, libX11, libXext, libXi, libxcb
+, cups , libGL, glib, nss, nspr, expat, alsaLib
+, qtbase, qtdeclarative, qtsvg, qtlocation, qtwebchannel, qtwebengine
+}:
+
+let
+  libPath = stdenv.lib.makeLibraryPath
+    [ libXrender libXrandr libXcursor libX11 libXext libXi libxcb
+      libGL glib nss nspr expat alsaLib
+      qtbase qtdeclarative qtsvg qtlocation qtwebchannel qtwebengine
+    ];
+  in
+  stdenv.mkDerivation rec {
+    name = "eagle-${version}";
+    version = "9.1.2";
+
+    src = fetchurl {
+      url = "https://eagle-updates.circuits.io/downloads/${builtins.replaceStrings ["."] ["_"] version}/Autodesk_EAGLE_${version}_English_Linux_64bit.tar.gz";
+      sha256 = "0y7ahl9z5a7l9cjk8hzmyv6ga8chlry5rr8v116q5mnsgs4i11an";
+    };
+
+    desktopItem = makeDesktopItem {
+      name = "eagle";
+      exec = "eagle";
+      icon = "eagle";
+      comment = "Schematic capture and PCB layout";
+      desktopName = "Eagle";
+      genericName = "Schematic editor";
+      categories = "Application;Development;";
+    };
+
+    buildInputs =
+      [ libXrender libXrandr libXcursor libX11 libXext libXi libxcb
+        libGL glib nss nspr expat alsaLib
+        qtbase qtdeclarative qtsvg qtlocation qtwebchannel qtwebengine
+      ];
+
+    doConfigure = false;
+    doBuild = false;
+
+    installPhase = ''
+      # Extract eagle tarball
+      mkdir "$out"
+      tar -xzf "$src" -C "$out"
+
+      # Install manpage
+      mkdir -p "$out"/share/man/man1
+      ln -s "$out"/eagle-${version}/doc/eagle.1 "$out"/share/man/man1/eagle.1
+
+      patchelf \
+        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        --set-rpath "${libPath}:$out/eagle-${version}/lib:${stdenv.cc.cc.lib}/lib" \
+        "$out"/eagle-${version}/eagle
+
+      mkdir -p "$out"/bin
+      ln -s "$out"/eagle-${version}/eagle "$out"/bin/eagle
+
+      # Remove bundled libraries that are available in nixpkgs
+      # TODO: There still may be unused bundled libraries
+      rm "$out"/eagle-${version}/lib/libQt5*.so.5
+      rm "$out"/eagle-${version}/lib/{libxcb-*.so.*,libX*.so.*,libxshmfence.so.1}
+      rm "$out"/eagle-${version}/lib/{libEGL.so.1,libglapi.so.0,libgbm.so.1}
+
+      # No longer needed (we don't use the bundled Qt libraries)
+      rm -r "$out"/eagle-${version}/libexec
+      rm -r "$out"/eagle-${version}/plugins
+
+      # Make desktop item
+      mkdir -p "$out"/share/applications
+      cp "$desktopItem"/share/applications/* "$out"/share/applications/
+      mkdir -p "$out"/share/icons
+      ln -s "$out/eagle-${version}/bin/eagle-logo.png" "$out"/share/icons/eagle.png
+    '';
+
+    meta = with stdenv.lib; {
+      description = "Schematic editor and PCB layout tool from Autodesk (formerly CadSoft)";
+      homepage = https://www.autodesk.com/products/eagle/overview;
+      license = licenses.unfree;
+      platforms = [ "x86_64-linux" ];
+      maintainers = [ maintainers.rittelle ];
+    };
+  }
diff --git a/pkgs/applications/science/electronics/eagle/default.nix b/pkgs/applications/science/electronics/eagle/eagle7.nix
index b9294ef3639a..9b8827187b26 100644
--- a/pkgs/applications/science/electronics/eagle/default.nix
+++ b/pkgs/applications/science/electronics/eagle/eagle7.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     # Build LD_PRELOAD library that redirects license file access to the home
     # directory of the user
     mkdir -p "$out"/lib
-    gcc -shared -fPIC -DEAGLE_PATH=\"$out/eagle-${version}\" ${./eagle_fixer.c} -o "$out"/lib/eagle_fixer.so -ldl
+    gcc -shared -fPIC -DEAGLE_PATH=\"$out/eagle-${version}\" ${./eagle7_fixer.c} -o "$out"/lib/eagle_fixer.so -ldl
 
     # Make wrapper script
     dynlinker="$(cat $NIX_CC/nix-support/dynamic-linker)"
diff --git a/pkgs/applications/science/electronics/eagle/eagle_fixer.c b/pkgs/applications/science/electronics/eagle/eagle7_fixer.c
index da9da4dcbd3a..da9da4dcbd3a 100644
--- a/pkgs/applications/science/electronics/eagle/eagle_fixer.c
+++ b/pkgs/applications/science/electronics/eagle/eagle7_fixer.c
diff --git a/pkgs/applications/science/logic/aiger/default.nix b/pkgs/applications/science/logic/aiger/default.nix
index 03524fc6b222..a03e777a033e 100644
--- a/pkgs/applications/science/logic/aiger/default.nix
+++ b/pkgs/applications/science/logic/aiger/default.nix
@@ -12,6 +12,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   configurePhase = ''
+    CC=${stdenv.cc.targetPrefix}cc
+    CXX=${stdenv.cc.targetPrefix}c++
+
     # Set up picosat, so we can build 'aigbmc'
     mkdir ../picosat
     ln -s ${picosat}/include/picosat/picosat.h ../picosat/picosat.h
diff --git a/pkgs/applications/science/logic/verit/default.nix b/pkgs/applications/science/logic/verit/default.nix
index ca3673d7bf97..d8873604b213 100644
--- a/pkgs/applications/science/logic/verit/default.nix
+++ b/pkgs/applications/science/logic/verit/default.nix
@@ -15,6 +15,11 @@ stdenv.mkDerivation rec {
   # --disable-static actually enables static linking here...
   dontDisableStatic = true;
 
+  preConfigure = ''
+    CC=${stdenv.cc.targetPrefix}gcc
+    CXX=${stdenv.cc.targetPrefix}g++
+  '';
+
   makeFlags = [ "LEX=${flex}/bin/flex" ];
 
   preInstall = ''
diff --git a/pkgs/applications/science/math/ginac/default.nix b/pkgs/applications/science/math/ginac/default.nix
index 18b13e11d350..18a5281bebb0 100644
--- a/pkgs/applications/science/math/ginac/default.nix
+++ b/pkgs/applications/science/math/ginac/default.nix
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
     description = "GiNaC is Not a CAS";
     homepage    = http://www.ginac.de/;
     maintainers = with maintainers; [ lovek323 ];
+    license = licenses.gpl2;
     platforms   = platforms.all;
   };
 }
diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix
index a53829347053..4de683cdce90 100644
--- a/pkgs/applications/science/math/glsurf/default.nix
+++ b/pkgs/applications/science/math/glsurf/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation {
   meta = {
     homepage = http://www.lama.univ-savoie.fr/~raffalli/glsurf;
     description = "A program to draw implicit surfaces and curves";
+    license = stdenv.lib.licenses.lgpl21;
   };
 }
diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix
index 396ed10392ca..b65ada145b9e 100644
--- a/pkgs/applications/version-management/fossil/default.nix
+++ b/pkgs/applications/version-management/fossil/default.nix
@@ -21,10 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ tcl ];
 
   doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
-
-  checkTarget = "test";
-
-  preCheck = stdenv.lib.optional doCheck ''
+  preCheck = ''
     export TCLLIBPATH="${tcllib}/lib/tcllib${tcllib.version}"
   '';
   configureFlags = stdenv.lib.optional withJson "--json";
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index 80f0786af4d2..051ea080fb4e 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -12,11 +12,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "gitkraken-${version}";
-  version = "4.0.1";
+  version = "4.0.2";
 
   src = fetchurl {
     url = "https://release.gitkraken.com/linux/v${version}.deb";
-    sha256 = "0y4r5d21mxwnwla9ggy9c4pm3zbz67yi9z06znkdz9x2chv1ci3n";
+    sha256 = "0dnckd75fcgc9wa4ivbnw2djmk4phzzr891snhxpsvb1dhlc7rgx";
   };
 
   libPath = makeLibraryPath [
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 71c62b758682..90d16d846608 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -104,4 +104,10 @@ stdenv.mkDerivation rec {
     inherit rubyEnv;
     ruby = rubyEnv.wrappedRuby;
   };
+
+  meta = with stdenv.lib; {
+    description = "Web-based Git-repository manager";
+    homepage = https://gitlab.com;
+    license = licenses.mit;
+  };
 }
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index 4d7ccaf30274..16948003a7a1 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -10,6 +10,10 @@ stdenv.mkDerivation rec {
     sha256 = "15i9bs2i25l7ibv530ghy8280kklcgm5kr6j86s7iwcqqckd0czp";
   };
 
+  postPatch = ''
+    patchShebangs .
+  '';
+
   buildInputs = [ perl ];
 
   makeFlags = "PREFIX=$(out)";
diff --git a/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch b/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch
deleted file mode 100644
index 889b8c930e73..000000000000
--- a/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-Description: FHS through env vars
-Forwarded: not-needed
-Author: Jérémy Lal <kapouer@melix.org>
-Last-Update: 2013-09-28
---- redmine.orig/app/models/attachment.rb
-+++ redmine/app/models/attachment.rb
-@@ -46,10 +46,10 @@ class Attachment < ActiveRecord::Base
-                                                         "LEFT JOIN #{Project.table_name} ON #{Document.table_name}.project_id = #{Project.table_name}.id"}
- 
-   cattr_accessor :storage_path
--  @@storage_path = Redmine::Configuration['attachments_storage_path'] || File.join(Rails.root, "files")
-+  @@storage_path = Redmine::Configuration['attachments_storage_path'] || ENV['RAILS_VAR'] ? File.join(ENV['RAILS_VAR'], "files") : File.join(Rails.root, "files")
- 
-   cattr_accessor :thumbnails_storage_path
--  @@thumbnails_storage_path = File.join(Rails.root, "tmp", "thumbnails")
-+  @@thumbnails_storage_path = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], "thumbnails") : File.join(Rails.root, "tmp", "thumbnails")
- 
-   before_save :files_to_final_location
-   after_destroy :delete_from_disk
---- redmine.orig/lib/redmine/configuration.rb
-+++ redmine/lib/redmine/configuration.rb
-@@ -32,7 +32,7 @@ module Redmine
-       # * <tt>:file</tt>: the configuration file to load (default: config/configuration.yml)
-       # * <tt>:env</tt>: the environment to load the configuration for (default: Rails.env)
-       def load(options={})
--        filename = options[:file] || File.join(Rails.root, 'config', 'configuration.yml')
-+        filename = options[:file] || ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'configuration.yml') : File.join(Rails.root, 'config', 'configuration.yml')
-         env = options[:env] || Rails.env
- 
-         @config = @defaults.dup
-@@ -103,7 +103,7 @@ module Redmine
-       end
- 
-       def load_deprecated_email_configuration(env)
--        deprecated_email_conf = File.join(Rails.root, 'config', 'email.yml')
-+        deprecated_email_conf = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'email.yml') : File.join(Rails.root, 'config', 'email.yml')
-         if File.file?(deprecated_email_conf)
-           warn "Storing outgoing emails configuration in config/email.yml is deprecated. You should now store it in config/configuration.yml using the email_delivery setting."
-           @config.merge!({'email_delivery' => load_from_yaml(deprecated_email_conf, env)})
---- redmine.orig/lib/redmine/export/pdf.rb
-+++ redmine/lib/redmine/export/pdf.rb
-@@ -38,7 +38,7 @@ module Redmine
-         attr_accessor :footer_date
- 
-         def initialize(lang, orientation='P')
--          @@k_path_cache = Rails.root.join('tmp', 'pdf')
-+          @@k_path_cache = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'pdf') : Rails.root.join('tmp', 'pdf')
-           FileUtils.mkdir_p @@k_path_cache unless File::exist?(@@k_path_cache)
-           set_language_if_valid lang
-           pdf_encoding = l(:general_pdf_encoding).upcase
---- redmine.orig/config/application.rb
-+++ redmine/config/application.rb
-@@ -52,8 +63,21 @@ module RedmineApp
-     # Do not include all helpers
-     config.action_controller.include_all_helpers = false
- 
-+    # move tmp directory to RAILS_TMP
-+    config.paths['tmp'] = ENV['RAILS_TMP']
-+
-     config.session_store :cookie_store, :key => '_redmine_session'
- 
-+    # log path
-+    config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']
-+
-+    config.paths['public'] = ENV['RAILS_PUBLIC'] unless !ENV['RAILS_PUBLIC']
-+
-+    config.cache_store = :file_store, File.join(ENV['RAILS_TMP'], "cache")
-+
-+    # Set Active Record's database.yml path
-+    config.paths['config/database'] = File.join(ENV['RAILS_ETC'], 'database.yml') unless !ENV['RAILS_ETC']
-+
-     if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
-       instance_eval File.read(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
-     end
---- redmine.orig/lib/plugins/rfpdf/lib/tcpdf.rb
-+++ redmine/lib/plugins/rfpdf/lib/tcpdf.rb
-@@ -89,10 +89,10 @@ class TCPDF
-   @@k_small_ratio = 2/3.0
-   
-   cattr_accessor :k_path_cache
--  @@k_path_cache = Rails.root.join('tmp')
-+  @@k_path_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
-   
-   cattr_accessor :k_path_url_cache
--  @@k_path_url_cache = Rails.root.join('tmp')
-+  @@k_path_url_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
-   
- 	attr_accessor :barcode
- 	
---- redmine.orig/lib/redmine/scm/adapters/abstract_adapter.rb
-+++ redmine/lib/redmine/scm/adapters/abstract_adapter.rb
-@@ -222,7 +222,7 @@ module Redmine
-           if @stderr_log_file.nil?
-             writable = false
-             path = Redmine::Configuration['scm_stderr_log_file'].presence
--            path ||= Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
-+            path ||= ENV['RAILS_LOG'] ? File.join(ENV['RAILS_LOG'], "#{Rails.env}.scm.stderr.log").to_s : Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
-             if File.exists?(path)
-               if File.file?(path) && File.writable?(path) 
-                 writable = true
diff --git a/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch b/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch
deleted file mode 100644
index 39af8e02e556..000000000000
--- a/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-Description: Externalize session config to yml in /etc
-Forwarded: not-needed
-Author: Jérémy Lal <kapouer@melix.org>
-Last-Update: 2010-01-10
---- redmine.orig/lib/tasks/initializers.rake
-+++ redmine/lib/tasks/initializers.rake
-@@ -1,11 +1,12 @@
- desc 'Generates a secret token for the application.'
-+task :generate_secret_token do
- 
--file 'config/initializers/secret_token.rb' do
--  path = File.join(Rails.root, 'config', 'initializers', 'secret_token.rb')
--  secret = SecureRandom.hex(40)
--  File.open(path, 'w') do |f|
--    f.write <<"EOF"
--# This file was generated by 'rake generate_secret_token', and should
-+filename = ENV['YML_SESSION_FILENAME'] ? ENV['YML_SESSION_FILENAME'] : 'session.yml'
-+path = File.join(ENV['RAILS_ETC'] ? ENV['RAILS_ETC'] : File.join(Rails.root, 'config'), filename)
-+secret = SecureRandom.hex(40)
-+File.open(path, 'w') do |f|
-+  f.write <<"EOF"
-+# This file was generated by 'rake generate_session_store',
- # not be made visible to public.
- # If you have a load-balancing Redmine cluster, you will need to use the
- # same version of this file on each machine. And be sure to restart your
-@@ -15,10 +18,18 @@ file 'config/initializers/secret_token.r
- # change this key, all old sessions will become invalid! Make sure the
- # secret is at least 30 characters and all random, no regular words or
- # you'll be exposed to dictionary attacks.
--RedmineApp::Application.config.secret_token = '#{secret}'
-+
-+production:
-+  key: _redmine_
-+  secret: #{secret}
-+
-+development:
-+  key: _redmine_
-+  secret: #{secret}
-+
-+test:
-+  key: _redmine_
-+  secret: #{secret}
- EOF
-   end
- end
--
--desc 'Generates a secret token for the application.'
--task :generate_secret_token => ['config/initializers/secret_token.rb']
---- redmine.orig/config/application.rb
-+++ redmine/config/application.rb
-@@ -66,7 +66,20 @@ module RedmineApp
-     # move tmp directory to RAILS_TMP
-     config.paths['tmp'] = ENV['RAILS_TMP']
- 
--    config.session_store :cookie_store, :key => '_redmine_session'
-+    # loads cookie based session session and secret keys
-+    # this is needed here because initializers are loaded after plugins,
-+    # and some plugins initialize ActionController which requires a secret to be set.
-+    # crash if file not found
-+    relativeUrlRoot = ENV['RAILS_RELATIVE_URL_ROOT']
-+    filename = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'session.yml') : File.join(File.dirname(__FILE__), '..', 'session.yml')
-+    if File.exists?(filename)
-+      sessionconfig = YAML::load_file(filename)
-+      config.session_store :cookie_store, :key => sessionconfig[Rails.env]['key'], :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
-+      config.secret_token = sessionconfig[Rails.env]['secret']
-+    else
-+      # temporary settings before session.yml is created
-+      config.session_store :cookie_store, :key => '_redmine_session', :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
-+    end
- 
-     # log path
-     config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']
diff --git a/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch b/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch
deleted file mode 100644
index d9a6844a6a35..000000000000
--- a/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- redmine.orig/lib/redmine/plugin.rb
-+++ redmine/lib/redmine/plugin.rb
-@@ -47,7 +47,7 @@ module Redmine #:nodoc:
-     self.directory = File.join(Rails.root, 'plugins')
- 
-     cattr_accessor :public_directory
--    self.public_directory = File.join(Rails.root, 'public', 'plugin_assets')
-+    self.public_directory = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'plugin_assets') : File.join(Rails.root, 'public', 'plugin_assets')
- 
-     @registered_plugins = {}
-     class << self
diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile
new file mode 100644
index 000000000000..744d6bfdd74e
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/Gemfile
@@ -0,0 +1,120 @@
+source 'https://rubygems.org'
+
+if Gem::Version.new(Bundler::VERSION) < Gem::Version.new('1.5.0')
+  abort "Redmine requires Bundler 1.5.0 or higher (you're using #{Bundler::VERSION}).\nPlease update with 'gem update bundler'."
+end
+
+gem "rails", "4.2.8"
+gem "addressable", "2.4.0" if RUBY_VERSION < "2.0"
+if RUBY_VERSION < "2.1"
+  gem "public_suffix", (RUBY_VERSION < "2.0" ? "~> 1.4" : "~> 2.0.5")
+end
+gem "jquery-rails", "~> 3.1.4"
+gem "coderay", "~> 1.1.1"
+gem "request_store", "1.0.5"
+gem "mime-types", (RUBY_VERSION >= "2.0" ? "~> 3.0" : "~> 2.99")
+gem "protected_attributes"
+gem "actionpack-xml_parser"
+gem "roadie-rails", "~> 1.1.1"
+gem "roadie", "~> 3.2.1"
+gem "mimemagic"
+gem "mail", "~> 2.6.4"
+
+gem "nokogiri", (RUBY_VERSION >= "2.1" ? "~> 1.8.1" : "~> 1.6.8")
+gem "i18n", "~> 0.7.0"
+gem "ffi", "1.9.14", :platforms => :mingw if RUBY_VERSION < "2.0"
+
+# Request at least rails-html-sanitizer 1.0.3 because of security advisories
+gem "rails-html-sanitizer", ">= 1.0.3"
+
+# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
+gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin]
+gem "rbpdf", "~> 1.19.3"
+
+# Optional gem for LDAP authentication
+group :ldap do
+  gem "net-ldap", "~> 0.12.0"
+end
+
+# Optional gem for OpenID authentication
+group :openid do
+  gem "ruby-openid", "~> 2.3.0", :require => "openid"
+  gem "rack-openid"
+end
+
+platforms :mri, :mingw, :x64_mingw do
+  # Optional gem for exporting the gantt to a PNG file, not supported with jruby
+  group :rmagick do
+    gem "rmagick", ">= 2.14.0"
+  end
+
+  # Optional Markdown support, not for JRuby
+  group :markdown do
+    gem "redcarpet", "~> 3.4.0"
+  end
+end
+
+# Include database gems for the adapters found in the database
+# configuration file
+require 'erb'
+require 'yaml'
+
+# NixOS - manually added to ensure mysql and postgres will always be include
+gem "mysql2", "~> 0.4.6", :platforms => [:mri, :mingw, :x64_mingw]
+gem "pg", "~> 0.18.1", :platforms => [:mri, :mingw, :x64_mingw]
+
+database_file = File.join(File.dirname(__FILE__), "config/database.yml")
+if File.exist?(database_file)
+  database_config = YAML::load(ERB.new(IO.read(database_file)).result)
+  adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
+  if adapters.any?
+    adapters.each do |adapter|
+      case adapter
+      when 'mysql2'
+        gem "mysql2", "~> 0.4.6", :platforms => [:mri, :mingw, :x64_mingw]
+      when /postgresql/
+        gem "pg", "~> 0.18.1", :platforms => [:mri, :mingw, :x64_mingw]
+      when /sqlite3/
+        gem "sqlite3", (RUBY_VERSION < "2.0" && RUBY_PLATFORM =~ /mingw/ ? "1.3.12" : "~>1.3.12"),
+                       :platforms => [:mri, :mingw, :x64_mingw]
+      when /sqlserver/
+        gem "tiny_tds", (RUBY_VERSION >= "2.0" ? "~> 1.0.5" : "~> 0.7.0"), :platforms => [:mri, :mingw, :x64_mingw]
+        gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw, :x64_mingw]
+      else
+        warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems")
+      end
+    end
+  else
+    warn("No adapter found in config/database.yml, please configure it first")
+  end
+else
+  warn("Please configure your config/database.yml first")
+end
+
+# NixOS - manually removed because I couldn't figure out how to get "bundle exec rails server webrick -e production" to ignore these groups
+#group :development do
+#  gem "rdoc", "~> 4.3"
+#  gem "yard"
+#end
+
+#group :test do
+#  gem "minitest"
+#  gem "rails-dom-testing"
+#  gem "mocha"
+#  gem "simplecov", "~> 0.9.1", :require => false
+#  # TODO: remove this after upgrading to Rails 5
+#  gem "test_after_commit", "~> 0.4.2"
+#  # For running UI tests
+#  gem "capybara"
+#  gem "selenium-webdriver", "~> 2.53.4"
+#end
+
+local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local")
+if File.exists?(local_gemfile)
+  eval_gemfile local_gemfile
+end
+
+# Load plugins' Gemfiles
+Dir.glob File.expand_path("../plugins/*/{Gemfile,PluginGemfile}", __FILE__) do |file|
+  eval_gemfile file
+end
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index c660e73f4a0f..589537c2af75 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -1,152 +1,162 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    actionmailer (3.2.19)
-      actionpack (= 3.2.19)
-      mail (~> 2.5.4)
-    actionpack (3.2.19)
-      activemodel (= 3.2.19)
-      activesupport (= 3.2.19)
-      builder (~> 3.0.0)
+    actionmailer (4.2.8)
+      actionpack (= 4.2.8)
+      actionview (= 4.2.8)
+      activejob (= 4.2.8)
+      mail (~> 2.5, >= 2.5.4)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+    actionpack (4.2.8)
+      actionview (= 4.2.8)
+      activesupport (= 4.2.8)
+      rack (~> 1.6)
+      rack-test (~> 0.6.2)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+      rails-html-sanitizer (~> 1.0, >= 1.0.2)
+    actionpack-xml_parser (1.0.2)
+      actionpack (>= 4.0.0, < 5)
+    actionview (4.2.8)
+      activesupport (= 4.2.8)
+      builder (~> 3.1)
       erubis (~> 2.7.0)
-      journey (~> 1.0.4)
-      rack (~> 1.4.5)
-      rack-cache (~> 1.2)
-      rack-test (~> 0.6.1)
-      sprockets (~> 2.2.1)
-    activemodel (3.2.19)
-      activesupport (= 3.2.19)
-      builder (~> 3.0.0)
-    activerecord (3.2.19)
-      activemodel (= 3.2.19)
-      activesupport (= 3.2.19)
-      arel (~> 3.0.2)
-      tzinfo (~> 0.3.29)
-    activeresource (3.2.19)
-      activemodel (= 3.2.19)
-      activesupport (= 3.2.19)
-    activesupport (3.2.19)
-      i18n (~> 0.6, >= 0.6.4)
-      multi_json (~> 1.0)
-    arel (3.0.3)
-    awesome_nested_set (2.1.6)
-      activerecord (>= 3.0.0)
-    builder (3.0.0)
-    capybara (2.1.0)
-      mime-types (>= 1.16)
-      nokogiri (>= 1.3.3)
-      rack (>= 1.0.0)
-      rack-test (>= 0.5.4)
-      xpath (~> 2.0)
-    childprocess (0.5.5)
-      ffi (~> 1.0, >= 1.0.11)
-    coderay (1.1.0)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+      rails-html-sanitizer (~> 1.0, >= 1.0.3)
+    activejob (4.2.8)
+      activesupport (= 4.2.8)
+      globalid (>= 0.3.0)
+    activemodel (4.2.8)
+      activesupport (= 4.2.8)
+      builder (~> 3.1)
+    activerecord (4.2.8)
+      activemodel (= 4.2.8)
+      activesupport (= 4.2.8)
+      arel (~> 6.0)
+    activesupport (4.2.8)
+      i18n (~> 0.7)
+      minitest (~> 5.1)
+      thread_safe (~> 0.3, >= 0.3.4)
+      tzinfo (~> 1.1)
+    addressable (2.5.2)
+      public_suffix (>= 2.0.2, < 4.0)
+    arel (6.0.4)
+    builder (3.2.3)
+    coderay (1.1.2)
+    concurrent-ruby (1.0.5)
+    crass (1.0.4)
+    css_parser (1.6.0)
+      addressable
     erubis (2.7.0)
-    fastercsv (1.5.5)
-    ffi (1.9.5)
-    hike (1.2.3)
-    i18n (0.6.11)
-    journey (1.0.4)
-    jquery-rails (2.0.3)
-      railties (>= 3.1.0, < 5.0)
-      thor (~> 0.14)
-    json (1.8.3)
-    mail (2.5.4)
-      mime-types (~> 1.16)
-      treetop (~> 1.4.8)
-    metaclass (0.0.4)
-    mime-types (1.25.1)
-    mini_portile (0.6.0)
-    mocha (1.0.0)
-      metaclass (~> 0.0.1)
-    multi_json (1.10.1)
-    net-ldap (0.3.1)
-    nokogiri (1.6.3.1)
-      mini_portile (= 0.6.0)
-    pg (0.17.1)
-    polyglot (0.3.5)
-    rack (1.4.5)
-    rack-cache (1.2)
-      rack (>= 0.4)
+    globalid (0.4.1)
+      activesupport (>= 4.2.0)
+    htmlentities (4.3.4)
+    i18n (0.7.0)
+    jquery-rails (3.1.5)
+      railties (>= 3.0, < 5.0)
+      thor (>= 0.14, < 2.0)
+    loofah (2.2.2)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    mail (2.6.6)
+      mime-types (>= 1.16, < 4)
+    mime-types (3.2.2)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2018.0812)
+    mimemagic (0.3.2)
+    mini_portile2 (2.3.0)
+    minitest (5.11.3)
+    mysql2 (0.4.10)
+    net-ldap (0.12.1)
+    nokogiri (1.8.4)
+      mini_portile2 (~> 2.3.0)
+    pg (0.18.4)
+    protected_attributes (1.1.4)
+      activemodel (>= 4.0.1, < 5.0)
+    public_suffix (3.0.3)
+    rack (1.6.10)
     rack-openid (1.4.2)
       rack (>= 1.1.0)
       ruby-openid (>= 2.1.8)
-    rack-ssl (1.3.4)
-      rack
-    rack-test (0.6.2)
+    rack-test (0.6.3)
       rack (>= 1.0)
-    rails (3.2.19)
-      actionmailer (= 3.2.19)
-      actionpack (= 3.2.19)
-      activerecord (= 3.2.19)
-      activeresource (= 3.2.19)
-      activesupport (= 3.2.19)
-      bundler (~> 1.0)
-      railties (= 3.2.19)
-    railties (3.2.19)
-      actionpack (= 3.2.19)
-      activesupport (= 3.2.19)
-      rack-ssl (~> 1.3.2)
+    rails (4.2.8)
+      actionmailer (= 4.2.8)
+      actionpack (= 4.2.8)
+      actionview (= 4.2.8)
+      activejob (= 4.2.8)
+      activemodel (= 4.2.8)
+      activerecord (= 4.2.8)
+      activesupport (= 4.2.8)
+      bundler (>= 1.3.0, < 2.0)
+      railties (= 4.2.8)
+      sprockets-rails
+    rails-deprecated_sanitizer (1.0.3)
+      activesupport (>= 4.2.0.alpha)
+    rails-dom-testing (1.0.9)
+      activesupport (>= 4.2.0, < 5.0)
+      nokogiri (~> 1.6)
+      rails-deprecated_sanitizer (>= 1.0.1)
+    rails-html-sanitizer (1.0.4)
+      loofah (~> 2.2, >= 2.2.2)
+    railties (4.2.8)
+      actionpack (= 4.2.8)
+      activesupport (= 4.2.8)
       rake (>= 0.8.7)
-      rdoc (~> 3.4)
-      thor (>= 0.14.6, < 2.0)
-    rake (10.1.1)
-    rdoc (3.12.2)
-      json (~> 1.4)
-    redcarpet (2.3.0)
-    rmagick (2.13.3)
+      thor (>= 0.18.1, < 2.0)
+    rake (12.3.1)
+    rbpdf (1.19.5)
+      htmlentities
+      rbpdf-font (~> 1.19.0)
+    rbpdf-font (1.19.1)
+    redcarpet (3.4.0)
+    request_store (1.0.5)
+    rmagick (2.16.0)
+    roadie (3.2.2)
+      css_parser (~> 1.4)
+      nokogiri (~> 1.5)
+    roadie-rails (1.1.1)
+      railties (>= 3.0, < 5.1)
+      roadie (~> 3.1)
     ruby-openid (2.3.0)
-    rubyzip (1.1.6)
-    selenium-webdriver (2.43.0)
-      childprocess (~> 0.5)
-      multi_json (~> 1.0)
-      rubyzip (~> 1.0)
-      websocket (~> 1.0)
-    shoulda (3.3.2)
-      shoulda-context (~> 1.0.1)
-      shoulda-matchers (~> 1.4.1)
-    shoulda-context (1.0.2)
-    shoulda-matchers (1.4.1)
-      activesupport (>= 3.0.0)
-    sprockets (2.2.2)
-      hike (~> 1.2)
-      multi_json (~> 1.0)
-      rack (~> 1.0)
-      tilt (~> 1.1, != 1.3.0)
-    thor (0.19.1)
-    tilt (1.4.1)
-    treetop (1.4.15)
-      polyglot
-      polyglot (>= 0.3.1)
-    tzinfo (0.3.41)
-    websocket (1.2.1)
-    xpath (2.0.0)
-      nokogiri (~> 1.3)
-    yard (0.8.7.4)
+    sprockets (3.7.2)
+      concurrent-ruby (~> 1.0)
+      rack (> 1, < 3)
+    sprockets-rails (3.2.1)
+      actionpack (>= 4.0)
+      activesupport (>= 4.0)
+      sprockets (>= 3.0.0)
+    thor (0.20.0)
+    thread_safe (0.3.6)
+    tzinfo (1.2.5)
+      thread_safe (~> 0.1)
 
 PLATFORMS
   ruby
 
 DEPENDENCIES
-  activerecord-jdbc-adapter (~> 1.3.2)
-  activerecord-jdbcpostgresql-adapter
-  awesome_nested_set (= 2.1.6)
-  builder (= 3.0.0)
-  capybara (~> 2.1.0)
-  coderay (~> 1.1.0)
-  fastercsv (~> 1.5.0)
-  jquery-rails (~> 2.0.2)
-  mime-types
-  mocha (~> 1.0.0)
-  net-ldap (~> 0.3.1)
-  pg (>= 0.11.0)
+  actionpack-xml_parser
+  coderay (~> 1.1.1)
+  i18n (~> 0.7.0)
+  jquery-rails (~> 3.1.4)
+  mail (~> 2.6.4)
+  mime-types (~> 3.0)
+  mimemagic
+  mysql2 (~> 0.4.6)
+  net-ldap (~> 0.12.0)
+  nokogiri (~> 1.8.1)
+  pg (~> 0.18.1)
+  protected_attributes
   rack-openid
-  rails (= 3.2.19)
-  rake (~> 10.1.1)
-  rdoc (>= 2.4.2)
-  redcarpet (~> 2.3.0)
-  rmagick (>= 2.0.0)
+  rails (= 4.2.8)
+  rails-html-sanitizer (>= 1.0.3)
+  rbpdf (~> 1.19.3)
+  redcarpet (~> 3.4.0)
+  request_store (= 1.0.5)
+  rmagick (>= 2.14.0)
+  roadie (~> 3.2.1)
+  roadie-rails (~> 1.1.1)
   ruby-openid (~> 2.3.0)
-  selenium-webdriver
-  shoulda (~> 3.3.2)
-  yard
+  tzinfo-data
+
+BUNDLED WITH
+   1.16.1
diff --git a/pkgs/applications/version-management/redmine/Gemfile.nix b/pkgs/applications/version-management/redmine/Gemfile.nix
deleted file mode 100644
index 77adfba334ec..000000000000
--- a/pkgs/applications/version-management/redmine/Gemfile.nix
+++ /dev/null
@@ -1,332 +0,0 @@
-[
-{
-name = "actionmailer";
-hash = "cd9f0b22f755b0adeae13cf949adaf63fa1c068c72d0a100572c6a11aecd3ba7";
-url = "http://rubygems.org/downloads/actionmailer-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "actionpack";
-hash = "c58ca2342aff2062f4f478551ce46d81918ac93200bc62d099764d2cd7499fcd";
-url = "http://rubygems.org/downloads/actionpack-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "activemodel";
-hash = "4ea3abf790eca9ee8228e9e2a465350e258294270a639b63f0e1dfad236fe70e";
-url = "http://rubygems.org/downloads/activemodel-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "activerecord";
-hash = "052945ad510744aaa3e35a817a6f515a2316e7dd96df6460f75b36067bb60372";
-url = "http://rubygems.org/downloads/activerecord-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "activeresource";
-hash = "8617d24537ca937cc67aac46aaa29782510d66136605426d0a23a3585a839daf";
-url = "http://rubygems.org/downloads/activeresource-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "activesupport";
-hash = "2c837a59250da14b12a6b0cfb6774f0afae90aa749fd96ad4347344d8417ad3d";
-url = "http://rubygems.org/downloads/activesupport-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "arel";
-hash = "c0006e2169deee3b8cc2d258296388822eeb2db59832450b9b7316e1387d0da4";
-url = "http://rubygems.org/downloads/arel-3.0.3.gem";
-version = "3.0.3";
-}
-{
-name = "awesome_nested_set";
-hash = "0dcd801aea5048f5ab907b62b4174b6763b191eaa4e1e11bb83f996f01349af8";
-url = "http://rubygems.org/downloads/awesome_nested_set-2.1.6.gem";
-version = "2.1.6";
-}
-{
-name = "builder";
-hash = "fbd3e15e5de02245f7d649b3415b2c2875cdc9a14dccde89aa30fc14a314618e";
-url = "http://rubygems.org/downloads/builder-3.0.0.gem";
-version = "3.0.0";
-}
-{
-name = "capybara";
-hash = "a9a19f8d6bb2dfcb1f05ea3e1727cb556d1cba0d234d1712b481e8d4f7bbb91e";
-url = "http://rubygems.org/downloads/capybara-2.1.0.gem";
-version = "2.1.0";
-}
-{
-name = "childprocess";
-hash = "9b583295a11932d2eeffa1e8f5b8fb2fb0064a2f0111ad98c3b752b94f80bf33";
-url = "http://rubygems.org/downloads/childprocess-0.5.5.gem";
-version = "0.5.5";
-}
-{
-name = "coderay";
-hash = "5a943c59e36f7ef9dd2677855735656413af02e3f302431e9c548aabe89f3c15";
-url = "http://rubygems.org/downloads/coderay-1.1.0.gem";
-version = "1.1.0";
-}
-{
-name = "erubis";
-hash = "63653f5174a7997f6f1d6f465fbe1494dcc4bdab1fb8e635f6216989fb1148ba";
-url = "http://rubygems.org/downloads/erubis-2.7.0.gem";
-version = "2.7.0";
-}
-{
-name = "fastercsv";
-hash = "d098199e62e4e10eec436a9ea9b8c189dacd5c06f2825f00d1e0f1c29fdbc3b5";
-url = "http://rubygems.org/downloads/fastercsv-1.5.5.gem";
-version = "1.5.5";
-}
-{
-name = "ffi";
-hash = "0d2ef90163eef8545689e8dfc27fb1245a2d82e3500d587de1e38290629e662f";
-url = "http://rubygems.org/downloads/ffi-1.9.5.gem";
-version = "1.9.5";
-}
-{
-name = "hike";
-hash = "154e2f2593845e5bcd8ed2ba3092600c55c6ad8c630722857de3fdaf334ccc44";
-url = "http://rubygems.org/downloads/hike-1.2.3.gem";
-version = "1.2.3";
-}
-{
-name = "i18n";
-hash = "b37dda25b30484f2674a851e24ae098a38564a61c976fa91a34bf8fceaa3923b";
-url = "http://rubygems.org/downloads/i18n-0.6.11.gem";
-version = "0.6.11";
-}
-{
-name = "journey";
-hash = "7454b8612530784000fbb17ea2df749a71b70702a0ac8ebef4a1e7f05aecc10f";
-url = "http://rubygems.org/downloads/journey-1.0.4.gem";
-version = "1.0.4";
-}
-{
-name = "jquery-rails";
-hash = "cc4eab342fb3b1fcbb2fc1c9a61b09ecd86d795b1f74d607994b0bc6fd5ef444";
-url = "http://rubygems.org/downloads/jquery-rails-2.0.3.gem";
-version = "2.0.3";
-}
-{
-name = "json";
-hash = "1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc";
-url = "http://rubygems.org/downloads/json-1.8.3.gem";
-version = "1.8.3";
-}
-{
-name = "mail";
-hash = "446585c38b062121252688dcc9cc70af1f470822e30db021bb97d185969e257c";
-url = "http://rubygems.org/downloads/mail-2.5.4.gem";
-version = "2.5.4";
-}
-{
-name = "metaclass";
-hash = "8569685c902108b1845be4e5794d646f2a8adcb0280d7651b600dab0844fe942";
-url = "http://rubygems.org/downloads/metaclass-0.0.4.gem";
-version = "0.0.4";
-}
-{
-name = "mime-types";
-hash = "88ef3c596481678710ffd4018fa40f1999b02d97babea39682ba7d5badd21f56";
-url = "http://rubygems.org/downloads/mime-types-1.25.1.gem";
-version = "1.25.1";
-}
-{
-name = "mini_portile";
-hash = "762b3e241362de24b2eb2bb1b98638399b931e9e51bece5f8e2df7611eb16c26";
-url = "http://rubygems.org/downloads/mini_portile-0.6.0.gem";
-version = "0.6.0";
-}
-{
-name = "mocha";
-hash = "788fd93c8009a7e0eebd155509953e5987f4681902aad666a294283baa09899a";
-url = "http://rubygems.org/downloads/mocha-1.0.0.gem";
-version = "1.0.0";
-}
-{
-name = "multi_json";
-hash = "2c98979877e87df0b338ebf5c86091b390f53d62c11a8232bd51ca007e0b82d2";
-url = "http://rubygems.org/downloads/multi_json-1.10.1.gem";
-version = "1.10.1";
-}
-{
-name = "net-ldap";
-hash = "953551665fb0d398740a72a26314c6d34bd70fa35419c96dc58351f17d9a5081";
-url = "http://rubygems.org/downloads/net-ldap-0.3.1.gem";
-version = "0.3.1";
-}
-{
-name = "nokogiri";
-hash = "91761a654439406b5bed71adf6092d49829e26332b4c0e7c8a23a2e628442585";
-url = "http://rubygems.org/downloads/nokogiri-1.6.3.1.gem";
-version = "1.6.3.1";
-}
-{
-name = "pg";
-hash = "e7933e8f7f184c28e820ed85ddfb3ad8a13933b2b2ab8656aa8f81cb0aa610a6";
-url = "http://rubygems.org/downloads/pg-0.17.1.gem";
-version = "0.17.1";
-}
-{
-name = "polyglot";
-hash = "59d66ef5e3c166431c39cb8b7c1d02af419051352f27912f6a43981b3def16af";
-url = "http://rubygems.org/downloads/polyglot-0.3.5.gem";
-version = "0.3.5";
-}
-{
-name = "rack";
-hash = "f7bf3faa8e09a2ff26475372de36a724e7470d6bdc33d189a0ec34b49605f308";
-url = "http://rubygems.org/downloads/rack-1.4.5.gem";
-version = "1.4.5";
-}
-{
-name = "rack-cache";
-hash = "02bfed05f8b3266db804f2fa445801636ca2c6d211a3137ec796f88af5756e1c";
-url = "http://rubygems.org/downloads/rack-cache-1.2.gem";
-version = "1.2";
-}
-{
-name = "rack-openid";
-hash = "8cd2305e738463a7da98791f9ac4df4cf3f6ed27908d982350430694ac2fe869";
-url = "http://rubygems.org/downloads/rack-openid-1.4.2.gem";
-version = "1.4.2";
-}
-{
-name = "rack-ssl";
-hash = "d703764fa2a0d44a2163d6add65be89f5dba4477d1959b90d3727682a9c37dcf";
-url = "http://rubygems.org/downloads/rack-ssl-1.3.4.gem";
-version = "1.3.4";
-}
-{
-name = "rack-test";
-hash = "7e920b6aac888e4a3846e5997fb1cbf456bdb5846322b58dc31697a54a38b306";
-url = "http://rubygems.org/downloads/rack-test-0.6.2.gem";
-version = "0.6.2";
-}
-{
-name = "rails";
-hash = "33b64cf78dfcf3206d961ce03e8fe6d260081da696e60da39d0b2a4a160fe22b";
-url = "http://rubygems.org/downloads/rails-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "railties";
-hash = "c569009ee5c005190d208ac228087fdc094b10c6f0cf209f1d12c552b447cc10";
-url = "http://rubygems.org/downloads/railties-3.2.19.gem";
-version = "3.2.19";
-}
-{
-name = "rake";
-hash = "85e446590871dd3469c80dfe70a0296c20b76a9006af6b728c1f47d0b460412d";
-url = "http://rubygems.org/downloads/rake-10.1.1.gem";
-version = "10.1.1";
-}
-{
-name = "rdoc";
-hash = "a8e2b78f7e5ec4cc4716cd863975645f2f2377dc6db267a15e427e5fae2633ed";
-url = "http://rubygems.org/downloads/rdoc-3.12.2.gem";
-version = "3.12.2";
-}
-{
-name = "redcarpet";
-hash = "5c9bcc307fba97ff5a25eec74f08365c17e929d2a5c707db32d6fc99ec81f0b9";
-url = "http://rubygems.org/downloads/redcarpet-2.3.0.gem";
-version = "2.3.0";
-}
-{
-name = "rmagick";
-hash = "109f3b8be90afdea9abbdd2a79a955cd808b5cad65d937ed12676da22870d3b4";
-url = "http://rubygems.org/downloads/rmagick-2.13.3.gem";
-version = "2.13.3";
-}
-{
-name = "ruby-openid";
-hash = "f69ed004e95f7094e23bfd8bc9ebfb1dc88a7b46637252ca2907a1189870ea7b";
-url = "http://rubygems.org/downloads/ruby-openid-2.3.0.gem";
-version = "2.3.0";
-}
-{
-name = "rubyzip";
-hash = "a996435ee9698be6a09d3748f4d23ee15aaf45cbfef1749def165af6ea3c0a9e";
-url = "http://rubygems.org/downloads/rubyzip-1.1.6.gem";
-version = "1.1.6";
-}
-{
-name = "selenium-webdriver";
-hash = "09fe4374d1541cb45403ad1238c2d88129f3afb985218635af087a06c99a521a";
-url = "http://rubygems.org/downloads/selenium-webdriver-2.43.0.gem";
-version = "2.43.0";
-}
-{
-name = "shoulda";
-hash = "52e70b71cbfb7c01dace14e268a62d86c21ddd1e5ec0116c8b1e632d8e04e412";
-url = "http://rubygems.org/downloads/shoulda-3.3.2.gem";
-version = "3.3.2";
-}
-{
-name = "shoulda-context";
-hash = "ee5559aa13248c70fdec6868a3c144adf7438c904c59d1a76b04a002e5151de5";
-url = "http://rubygems.org/downloads/shoulda-context-1.0.2.gem";
-version = "1.0.2";
-}
-{
-name = "shoulda-matchers";
-hash = "c35693cbfa84213212dffbc2c87487427ef364927340151329a842f0a06086b9";
-url = "http://rubygems.org/downloads/shoulda-matchers-1.4.1.gem";
-version = "1.4.1";
-}
-{
-name = "sprockets";
-hash = "fae893b7e86e83c1936f6f2a64db3550510f86eabdd5fa9f0f23fb25d7e0cf96";
-url = "http://rubygems.org/downloads/sprockets-2.2.2.gem";
-version = "2.2.2";
-}
-{
-name = "thor";
-hash = "9ff834f031b5550c743bb8a3139317fefdae9cdebd02d60de376658f427fe522";
-url = "http://rubygems.org/downloads/thor-0.19.1.gem";
-version = "0.19.1";
-}
-{
-name = "tilt";
-hash = "39820562c4f5db45fe18de87ccc30a0e77a998bf5334b1d8c10a2f7dbc1f5903";
-url = "http://rubygems.org/downloads/tilt-1.4.1.gem";
-version = "1.4.1";
-}
-{
-name = "treetop";
-hash = "ffa68f201c0f62c26b0a1d13233d73194400596964696843f87ebb5d812f12ff";
-url = "http://rubygems.org/downloads/treetop-1.4.15.gem";
-version = "1.4.15";
-}
-{
-name = "tzinfo";
-hash = "381b22fd1744a35d0a0239f563f505773681e626e6d900063b14cb9b1b68e98c";
-url = "http://rubygems.org/downloads/tzinfo-0.3.41.gem";
-version = "0.3.41";
-}
-{
-name = "websocket";
-hash = "e626c8c3e8593735d900265fb1fc3439fd06b394069860177d8f40733b12ae9e";
-url = "http://rubygems.org/downloads/websocket-1.2.1.gem";
-version = "1.2.1";
-}
-{
-name = "xpath";
-hash = "9ca4a1cc88d9ab16c591468cce7b5d00ee06a8a76b841f8438970c7a44c86c12";
-url = "http://rubygems.org/downloads/xpath-2.0.0.gem";
-version = "2.0.0";
-}
-{
-name = "yard";
-hash = "e65a26f9b9dc6e2aa9b1d1d2e1a45bee3edf540a6a7e6c30fa6aa1df7f7a29b4";
-url = "http://rubygems.org/downloads/yard-0.8.7.4.gem";
-version = "0.8.7.4";
-}
-]
diff --git a/pkgs/applications/version-management/redmine/README b/pkgs/applications/version-management/redmine/README
deleted file mode 100644
index 1cc4772568a4..000000000000
--- a/pkgs/applications/version-management/redmine/README
+++ /dev/null
@@ -1,6 +0,0 @@
-to regenerate Gemfile.nix and Gemfile.lock you need to
-
-  % nix-build bootstrap.nix
-  % cp result/Gemfile.nix ./
-  % cp result/Gemfile.lock ./
-
diff --git a/pkgs/applications/version-management/redmine/bootstrap.nix b/pkgs/applications/version-management/redmine/bootstrap.nix
deleted file mode 100644
index 53757c37ed82..000000000000
--- a/pkgs/applications/version-management/redmine/bootstrap.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ pkgs ? import <nixpkgs> {}
-}:
-
-with pkgs;
-
-let
-
-in stdenv.mkDerivation rec {
-  version = "2.5.2";
-  name = "redmine-${version}";
-  __noChroot = true;
-  src = fetchurl {
-    url = "http://www.redmine.org/releases/${name}.tar.gz";
-    sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [
-    ruby bundler libiconv libxslt libxml2
-    libffi imagemagickBig postgresql which stdenv
-  ];
-  installPhase = ''
-    unset http_proxy
-    unset ftp_proxy
-
-    cp -R . $out
-    cp ${./generate_nix_requirements.rb} $out/generate_nix_requirements.rb
-    cd $out
-
-    cat > config/database.yml <<EOF
-    production:
-      adapter: postgresql
-    EOF
-
-    bundle config --local build.nokogiri --use-system-libraries \
-      --with-iconv-dir=${libiconv} \
-      --with-xslt-dir=${libxslt.out} \
-      --with-xml2-dir=${libxml2.out} \
-      --with-pkg-config \
-      --with-pg-config=${postgresql}/bin/pg_config
-
-    bundle install --verbose --without development test rmagick --path /tmp/redmine-${version}
-
-    HOME="/tmp/redmine-${version}" ruby generate_nix_requirements.rb
-    rm -R /tmp/gems
-  '';
-}
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
index 5a23c38a8863..3c3fd4da33d4 100644
--- a/pkgs/applications/version-management/redmine/default.nix
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -1,74 +1,42 @@
-{ stdenv, fetchurl, ruby, bundler, libiconv, libxslt, libxml2, pkgconfig, libffi, imagemagickBig, postgresql }:
+{ stdenv, fetchurl, bundlerEnv, ruby }:
 
 let
-  gemspec = map (gem: fetchurl { url=gem.url; sha256=gem.hash; }) (import ./Gemfile.nix);
-in stdenv.mkDerivation rec {
-  version = "2.5.2";
-  name = "redmine-${version}";
+  version = "3.4.6";
+  rubyEnv = bundlerEnv {
+    name = "redmine-env-${version}";
 
-  src = fetchurl {
-    url = "https://www.redmine.org/releases/${name}.tar.gz";
-    sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
+    inherit ruby;
+    gemdir = ./.;
   };
-
-  hardeningDisable = [ "format" ];
-
-  # taken from redmine (2.5.1-2~bpo70+3) in debian wheezy-backports
-  # needed to separate run-time and build-time directories
-  patches = [
-    ./2002_FHS_through_env_vars.patch
-    ./2004_FHS_plugins_assets.patch
-    ./2003_externalize_session_config.patch
-  ];
-
-  postPatch = ''
-    substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins')" "ENV['RAILS_PLUGINS']"
-    substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins', id.to_s, 'db', 'migrate')" "File.join(ENV['RAILS_PLUGINS'], id.to_s, 'db', 'migrate')"
-    substituteInPlace config/routes.rb --replace '"plugins/*", Rails.root' 'ENV["RAILS_PLUGINS"] + "/*"'
-  '';
-
-  buildInputs = [
-    ruby bundler libiconv
-    libxslt libxml2 pkgconfig libffi
-    imagemagickBig postgresql
-  ];
-
-  installPhase = ''
-    mkdir -p $out/share/redmine/
-    cp -R . $out/share/redmine/
-    cd $out/share/redmine
-    ln -s ${./Gemfile.lock} Gemfile.lock
-    export HOME=$(pwd)
-
-    cat > config/database.yml <<EOF
-      production:
-        adapter: postgresql
-    EOF
-
-    mkdir -p vendor/cache
-    ${stdenv.lib.concatStrings (map (gem: "ln -s ${gem} vendor/cache/${gem.name};") gemspec)}
-
-    bundle config build.nokogiri --use-system-libraries --with-iconv-dir="${libiconv}" --with-xslt-dir="${libxslt.dev}" --with-xml2-dir="${libxml2.dev}"
-
-    bundle install --verbose --local --deployment
-
-    # make sure we always load pg package
-    echo "gem \"pg\"" >> Gemfile
-
-    # make rails server happy
-    mkdir -p tmp/pids
-
-    # cleanup
-    rm config/database.yml
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://www.redmine.org/;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.garbas ];
-    license = licenses.gpl2;
-    # Marked as broken due to needing an update for security issues.
-    # See: https://github.com/NixOS/nixpkgs/issues/18856
-    broken = true;
-  };
-}
+in
+  stdenv.mkDerivation rec {
+    name = "redmine-${version}";
+
+    src = fetchurl {
+      url = "https://www.redmine.org/releases/${name}.tar.gz";
+      sha256 = "15akq6pn42w7cf7dg45xmvw06fixck1qznp7s8ix7nyxlmcyvcg3";
+    };
+
+    buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ];
+
+    buildPhase = ''
+      mv config config.dist
+    '';
+
+    installPhase = ''
+      mkdir -p $out/share
+      cp -r . $out/share/redmine
+
+      for i in config files log plugins tmp; do
+        rm -rf $out/share/redmine/$i
+        ln -fs /run/redmine/$i $out/share/redmine/
+      done
+    '';
+
+    meta = with stdenv.lib; {
+      homepage = http://www.redmine.org/;
+      platforms = platforms.linux;
+      maintainers = [ maintainers.garbas ];
+      license = licenses.gpl2;
+    };
+  }
diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix
new file mode 100644
index 000000000000..7423fcdb9fb9
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/gemset.nix
@@ -0,0 +1,472 @@
+{
+  actionmailer = {
+    dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pr3cmr0bpgg5d0f6wy1z6r45n14r9yin8jnr4hi3ssf402xpc0q";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09fbazl0ja80na2wadfp3fzmdmdy1lsb4wd2yg7anbj0zk0ap7a9";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  actionpack-xml_parser = {
+    dependencies = ["actionpack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17am4nd7x6g8x7f8i35rzzv2qrxlkc230rbgzg98af0yf50j8gka";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  actionview = {
+    dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mg4a8143q2wjhjq4mngl69jkv249z5jvg0jkdribdv4zkg586rp";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  activejob = {
+    dependencies = ["activesupport" "globalid"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kazbpfgzz6cdmwjnlb9m671ps4qgggwv2hy8y9xi4h96djyyfqz";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  activemodel = {
+    dependencies = ["activesupport" "builder"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11vhh7zmp92880s5sx8r32v2p0b7xg039mfr92pjynpkz4q901ld";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  activerecord = {
+    dependencies = ["activemodel" "activesupport" "arel"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kk4dhn8jfhqfsf1dmb3a183gix6k46xr6cjkxj0rp51w2za1ns0";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  activesupport = {
+    dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wibdzd2f5l5rlsw1a1y3j3fhw2imrrbkxggdraa6q9qbdnc66hi";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+      type = "gem";
+    };
+    version = "2.5.2";
+  };
+  arel = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nfcrdiys6q6ylxiblky9jyssrw2xj96fmxmal7f4f0jj3417vj4";
+      type = "gem";
+    };
+    version = "6.0.4";
+  };
+  builder = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qibi5s67lpdv1wgcj66wcymcr04q6j4mzws6a479n0mlrmh5wr1";
+      type = "gem";
+    };
+    version = "3.2.3";
+  };
+  coderay = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  concurrent-ruby = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  crass = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  css_parser = {
+    dependencies = ["addressable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gwvf8mc8gnz4aizfijplv3594998h2j44ydakpzsdmkivs07v61";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  erubis = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  globalid = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02smrgdi11kziqi9zhnsy9i6yr2fnxrqlv3lllsvdjki3cd4is38";
+      type = "gem";
+    };
+    version = "0.4.1";
+  };
+  htmlentities = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj";
+      type = "gem";
+    };
+    version = "4.3.4";
+  };
+  i18n = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758";
+      type = "gem";
+    };
+    version = "0.7.0";
+  };
+  jquery-rails = {
+    dependencies = ["railties" "thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lk7xqmms45czylxs22kv5khlbm7a0yqcchqijxb9m10zsqc6lp5";
+      type = "gem";
+    };
+    version = "3.1.5";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yjs6wbcj3n06d3xjqpy3qbpx0bfa12h3x2rbpc2k33ldjlkx6zy";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  mail = {
+    dependencies = ["mime-types"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9";
+      type = "gem";
+    };
+    version = "2.6.6";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
+      type = "gem";
+    };
+    version = "3.2.2";
+  };
+  mime-types-data = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
+      type = "gem";
+    };
+    version = "3.2018.0812";
+  };
+  mimemagic = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00ibc1mhvdfyfyl103xwb45621nwyqxf124cni5hyfhag0fn1c3q";
+      type = "gem";
+    };
+    version = "0.3.2";
+  };
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  minitest = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
+      type = "gem";
+    };
+    version = "5.11.3";
+  };
+  mysql2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qjd97w6a0w9aldsrhb2y6jrc4wnnlbj5j8kcl7pp7vviwa0r5iq";
+      type = "gem";
+    };
+    version = "0.4.10";
+  };
+  net-ldap = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z1j0zklbbx3vi91zcd2v0fnkfgkvq3plisa6hxaid8sqndyak46";
+      type = "gem";
+    };
+    version = "0.12.1";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      type = "gem";
+    };
+    version = "1.8.4";
+  };
+  pg = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07dv4ma9xd75xpsnnwwg1yrpwpji7ydy0q1d9dl0yfqbzpidrw32";
+      type = "gem";
+    };
+    version = "0.18.4";
+  };
+  protected_attributes = {
+    dependencies = ["activemodel"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18lvrvmcwjvjr2mrn20vaf68a0q6mg4cy9f0m1i7x83p0ljhhyar";
+      type = "gem";
+    };
+    version = "1.1.4";
+  };
+  public_suffix = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
+      type = "gem";
+    };
+    version = "3.0.3";
+  };
+  rack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      type = "gem";
+    };
+    version = "1.6.10";
+  };
+  rack-openid = {
+    dependencies = ["rack" "ruby-openid"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sg85yn981j3a0iri3ch4znzdwscvz29l7vrk3dafqw4fdg31llc";
+      type = "gem";
+    };
+    version = "1.4.2";
+  };
+  rack-test = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
+      type = "gem";
+    };
+    version = "0.6.3";
+  };
+  rails = {
+    dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dpbf3ybzbhqqkwg5vi60121860cr8fybvchrxk5wy3f2jcj0mch";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  rails-deprecated_sanitizer = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wssfqpn00byhvp2372p99mphkcj8qx6pf6646avwr9ifvq0q1x6";
+      type = "gem";
+    };
+    version = "1.0.9";
+  };
+  rails-html-sanitizer = {
+    dependencies = ["loofah"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gv7vr5d9g2xmgpjfq4nxsqr70r9pr042r9ycqqnfvw5cz9c7jwr";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  railties = {
+    dependencies = ["actionpack" "activesupport" "rake" "thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bavl4hj7bnl3ryqi9rvykm410kflplgingkcxasfv1gdilddh4g";
+      type = "gem";
+    };
+    version = "4.2.8";
+  };
+  rake = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg";
+      type = "gem";
+    };
+    version = "12.3.1";
+  };
+  rbpdf = {
+    dependencies = ["htmlentities" "rbpdf-font"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "021fda3gcz9pyydxnn40vs1nrkycwslb9ip4q0yg3hlip41k1b49";
+      type = "gem";
+    };
+    version = "1.19.5";
+  };
+  rbpdf-font = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pxlr0l4vf785qpy55m439dyii63a26l0sd0yyhbwwcy9zm9hd1v";
+      type = "gem";
+    };
+    version = "1.19.1";
+  };
+  redcarpet = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h9qz2hik4s9knpmbwrzb3jcp3vc5vygp9ya8lcpl7f1l9khmcd7";
+      type = "gem";
+    };
+    version = "3.4.0";
+  };
+  request_store = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ky19wb6mpq6dxb81a0h4hnzx7a4ka99n9ay2syi68djbr4bkbbh";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  rmagick = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m9x15cdlkcb9826s3s2jd97hxf50hln22p94x8hcccxi1lwklq6";
+      type = "gem";
+    };
+    version = "2.16.0";
+  };
+  roadie = {
+    dependencies = ["css_parser" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0frp5yb07ib9y1k43shd4xjkb9a6wavhqq892l8yi9y73qi2cqbc";
+      type = "gem";
+    };
+    version = "3.2.2";
+  };
+  roadie-rails = {
+    dependencies = ["railties" "roadie"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hxgl5marq2hi6lcc73f7g6afd7dz4w893rrgrbh7m3k8zrwjyk1";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  ruby-openid = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yzaf2c1i88757554wk38rxqmj0xzgmwk2zx7gi98w2zx42d17pn";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  sprockets-rails = {
+    dependencies = ["actionpack" "activesupport" "sprockets"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1";
+      type = "gem";
+    };
+    version = "3.2.1";
+  };
+  thor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmqpyj642sk4g16nkbq6pj856adpv91lp4krwhqkh2iw63aszdl";
+      type = "gem";
+    };
+    version = "0.20.0";
+  };
+  thread_safe = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/redmine/generate_nix_requirements.rb b/pkgs/applications/version-management/redmine/generate_nix_requirements.rb
deleted file mode 100644
index ed47d52c9c1b..000000000000
--- a/pkgs/applications/version-management/redmine/generate_nix_requirements.rb
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env ruby
-
-require 'rubygems'
-require 'bundler'
-require 'fileutils'
-require 'net/http'
-require 'net/https'
-require 'uri'
-
-TMP_DIR = "/tmp/gems"
-
-FileUtils.rm_rf(TMP_DIR) if File.exists?(TMP_DIR)
-FileUtils.mkdir TMP_DIR
-
-GEMSERVER = "http://rubygems.org"
-
-# inspect Gemfile.lock
-lockfile = Bundler::LockfileParser.new(Bundler.read_file("Gemfile.lock"))
-
-to_mirror = {}
-
-uri = URI(GEMSERVER)
-http = Net::HTTP.new(uri.host, uri.port)
-http.use_ssl = uri.scheme == 'https'
-
-requirements = {}
-
-lockfile.specs.each do |s|
-  possible_gem_name = "#{s.name}-#{s.version.to_s}.gem"
-
-  Dir.chdir TMP_DIR do
-    filename = `gem fetch #{s.name} -v #{s.version.to_s}`.split()[1]
-    hash = `sha256sum #{filename}.gem`
-    url = "#{GEMSERVER}/downloads/#{filename}.gem"
-    puts url
-    requirements[s.name] = { :version => s.version.to_s, 
-                             :hash => hash.split().first,
-                             :url => url,}
-    
-  end
-end
-
-filename = 'Gemfile.nix'
-
-File.open(filename, 'w') do |file|
-  file.puts "["
-  requirements.each do |name, info|
-    file.puts "{"
-    file.puts ['name = ', '"', name, '";'].join('')
-    file.puts ['hash = ', '"', info[:hash], '";'].join('')
-    file.puts ['url = ', '"', info[:url], '";'].join('')
-    file.puts ['version = ', '"', info[:version], '";'].join('')
-    file.puts "}"
-  end
-  file.puts "]"
-end
diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix
index 519f339a5083..106b66bcfecb 100644
--- a/pkgs/applications/version-management/smartgithg/default.nix
+++ b/pkgs/applications/version-management/smartgithg/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   name = "smartgithg-${version}";
-  version = "17_1_4";
+  version = "18_1_4";
 
   src = fetchurl {
     url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${version}.tar.gz";
-    sha256 = "1x8s1mdxg7m3fy3izgnb1smrn4ng3q31x0sqnjlchkb5vx7gp5rh";
+    sha256 = "18gyfcs5g7xq8fqnn1zjzx350jaynrniain0giay8sxych12p4cm";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -37,6 +37,8 @@ stdenv.mkDerivation rec {
     mkdir -pv ${pkg_path}
     # unpacking should have produced a dir named 'smartgit'
     cp -a smartgit/* ${pkg_path}
+    # prevent using packaged jre
+    rm -r ${pkg_path}/jre
     mkdir -pv ${bin_path}
     jre=${jre.home}
     makeWrapper ${pkg_path}/bin/smartgit.sh ${bin_path}/smartgit \
@@ -45,6 +47,7 @@ stdenv.mkDerivation rec {
       --prefix JRE_HOME : ${jre} \
       --prefix JAVA_HOME : ${jre} \
       --prefix SMARTGITHG_JAVA_HOME : ${jre}
+    sed -i '/ --login/d' ${pkg_path}/bin/smartgit.sh
     patchShebangs $out
     cp ${bin_path}/smartgit ${bin_path}/smartgithg
 
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 981f25f00f84..0a61dc38c64a 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -91,6 +91,7 @@ let
 
     enableParallelBuilding = true;
 
+    checkInputs = [ python ];
     doCheck = false; # fails 10 out of ~2300 tests
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/webtorrent_desktop/default.nix b/pkgs/applications/video/webtorrent_desktop/default.nix
index b03ca2328b39..c99aed0c1afb 100644
--- a/pkgs/applications/video/webtorrent_desktop/default.nix
+++ b/pkgs/applications/video/webtorrent_desktop/default.nix
@@ -73,7 +73,7 @@
 
       # Fix the desktop link
       substituteInPlace $out/share/applications/webtorrent-desktop.desktop \
-        --replace /opt/webtorrent-desktop/WebTorrent $out/bin/WebTorrent
+        --replace /opt/webtorrent-desktop $out/bin
     '';
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/virtualization/containerd/default.nix b/pkgs/applications/virtualization/containerd/default.nix
index 882ee3047f0b..2fa93af48310 100644
--- a/pkgs/applications/virtualization/containerd/default.nix
+++ b/pkgs/applications/virtualization/containerd/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     homepage = https://containerd.tools/;
     description = "A daemon to control runC";
     license = licenses.asl20;
-    maintainers = with maintainers; [ offline ];
+    maintainers = with maintainers; [ offline vdemeester ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index d52b5365b5ef..e83a1af44665 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -198,13 +198,13 @@ rec {
   # https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/*
 
   docker_18_06 = dockerGen rec {
-    version = "18.06.0-ce";
-    rev = "0ffa8257ec673ed6849b73b03fb01b0cac90fdb3"; # git commit
-    sha256 = "1w6jgqbc53pkgfkf2p6z5g316q1r5jvnw4lq11j4qdkw7vy8q5d9";
+    version = "18.06.1-ce";
+    rev = "e68fc7a215d7133c34aa18e3b72b4a21fd0c6136"; # git commit
+    sha256 = "1bqd6pv5hga4j1s8jm8q5qdnfbjf8lw1ghdk0bw9hhqkn7rcnrv4";
     runcRev = "69663f0bd4b60df09991c08812a60108003fa340";
     runcSha256 = "1l37r97l3ra4ph069w190d05r0a43s76nn9jvvlkbwrip1cp6gyq";
-    containerdRev = "d64c661f1d51c48782c9cec8fda7604785f93587";
-    containerdSha256 = "0pk1kii8bmlvziblrqwb88w5cd486pmb7vw8p7kcyn9lqsw32ria";
+    containerdRev = "468a545b9edcd5932818eb9de8e72413e616e86e";
+    containerdSha256 = "1rp015cm5fw9kfarcmfhfkr1sh0iz7kvqls6f8nfhwrrz5armd5v";
     tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662";
     tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
   };
diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix
index e42c1d5dd1e4..13fa9d369b60 100644
--- a/pkgs/applications/virtualization/open-vm-tools/default.nix
+++ b/pkgs/applications/virtualization/open-vm-tools/default.nix
@@ -41,6 +41,11 @@ stdenv.mkDerivation rec {
      sed -i 's,/sbin/shutdown,shutdown,' lib/system/systemLinux.c
   '';
 
+  preConfigure = ''
+    CC=${stdenv.cc.targetPrefix}cc
+    CXX=${stdenv.cc.targetPrefix}c++
+  '';
+
   configureFlags = [ "--without-kernel-modules" "--without-xmlsecurity" ]
     ++ lib.optional (!withX) "--without-x";
 
diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix
index 7172b172ef2f..c1ec514640d5 100644
--- a/pkgs/applications/virtualization/runc/default.nix
+++ b/pkgs/applications/virtualization/runc/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
     homepage = https://runc.io/;
     description = "A CLI tool for spawning and running containers according to the OCI specification";
     license = licenses.asl20;
-    maintainers = with maintainers; [ offline ];
+    maintainers = with maintainers; [ offline vdemeester ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/velox/default.nix b/pkgs/applications/window-managers/velox/default.nix
index 0b430693eeed..f8cb6c266839 100644
--- a/pkgs/applications/window-managers/velox/default.nix
+++ b/pkgs/applications/window-managers/velox/default.nix
@@ -47,7 +47,7 @@ in with self; stdenv.mkDerivation rec {
       --prefix PATH : "${stdenv.lib.makeBinPath [ dmenu-velox st-velox ]}"
   '';
 
-  enableParallelBuilding = true;
+  enableParallelBuilding = false; # https://hydra.nixos.org/build/79799608
 
   meta = {
     description = "velox window manager";