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/altcoins/default.nix2
-rw-r--r--pkgs/applications/altcoins/masari.nix27
-rw-r--r--pkgs/applications/backup/deja-dup/default.nix5
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix40
-rw-r--r--pkgs/applications/graphics/exrdisplay/default.nix6
-rw-r--r--pkgs/applications/graphics/goxel/default.nix4
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix8
-rw-r--r--pkgs/applications/misc/copyq/default.nix4
-rw-r--r--pkgs/applications/misc/electron-cash/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-usage/default.nix37
-rw-r--r--pkgs/applications/misc/gqrx/default.nix4
-rw-r--r--pkgs/applications/misc/orca/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/eolie/0001-Remove-post-install-script-handle-in-nix-config-inst.patch23
-rw-r--r--pkgs/applications/networking/browsers/eolie/default.nix17
-rw-r--r--pkgs/applications/networking/corebird/default.nix22
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/generic.nix52
-rw-r--r--pkgs/applications/networking/syncthing-gtk/default.nix2
-rw-r--r--pkgs/applications/science/math/jags/default.nix4
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile11
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile.lock59
-rw-r--r--pkgs/applications/version-management/gitaly/default.nix4
-rw-r--r--pkgs/applications/version-management/gitaly/gemset.nix115
-rw-r--r--pkgs/applications/version-management/gitlab-shell/default.nix30
-rw-r--r--pkgs/applications/version-management/gitlab-shell/fixes.patch7
-rw-r--r--pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch43
-rw-r--r--pkgs/applications/version-management/gitlab-workhorse/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/Gemfile56
-rw-r--r--pkgs/applications/version-management/gitlab/Gemfile.lock137
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix9
-rw-r--r--pkgs/applications/version-management/gitlab/gemset.nix199
-rw-r--r--pkgs/applications/version-management/gitlab/nulladapter.patch33
-rw-r--r--pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch62
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot.nix4
34 files changed, 600 insertions, 444 deletions
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index daf2a0e53ef1..d7cce586b9b7 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -46,6 +46,8 @@ rec {
   litecoin  = callPackage ./litecoin.nix { withGui = true; };
   litecoind = callPackage ./litecoin.nix { withGui = false; };
 
+  masari = callPackage ./masari.nix { };
+
   memorycoin  = callPackage ./memorycoin.nix { boost = boost165; withGui = true; };
   memorycoind = callPackage ./memorycoin.nix { boost = boost165; withGui = false; };
 
diff --git a/pkgs/applications/altcoins/masari.nix b/pkgs/applications/altcoins/masari.nix
new file mode 100644
index 000000000000..02a6d25df516
--- /dev/null
+++ b/pkgs/applications/altcoins/masari.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, cmake, pkgconfig, unbound, openssl, boost
+, lmdb, miniupnpc, readline }:
+
+stdenv.mkDerivation rec {
+  name = "masari-${version}";
+  version = "0.1.4.0";
+
+  src = fetchFromGitHub {
+    owner = "masari-project";
+    repo = "masari";
+    rev = "v${version}";
+    sha256 = "0l6i21wkq5f6z8xr756i7vqgkzk7lixaa31ydy34fkfcqxppgxz3";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ boost miniupnpc openssl lmdb unbound readline ];
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    description = "scalability-focused, untraceable, secure, and fungible cryptocurrency using the RingCT protocol";
+    homepage = "https://www.getmasari.org/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fpletz ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/backup/deja-dup/default.nix b/pkgs/applications/backup/deja-dup/default.nix
index e46ffec39795..b0d8ae8d3cf6 100644
--- a/pkgs/applications/backup/deja-dup/default.nix
+++ b/pkgs/applications/backup/deja-dup/default.nix
@@ -47,11 +47,6 @@ stdenv.mkDerivation rec {
   postFixup = ''
     # Unwrap accidentally wrapped library
     mv $out/libexec/deja-dup/tools/.libduplicity.so-wrapped $out/libexec/deja-dup/tools/libduplicity.so
-
-    # Patched meson does not add internal libraries to rpath
-    for elf in "$out/bin/.deja-dup-wrapped" "$out/libexec/deja-dup/.deja-dup-monitor-wrapped" "$out/libexec/deja-dup/tools/libduplicity.so"; do
-      patchelf --set-rpath "$(patchelf --print-rpath "$elf"):$out/lib/deja-dup" "$elf"
-    done
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index a02773f715c4..a4a71c12820e 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -234,12 +234,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2017.3.3"; /* updated by script */
+    version = "2017.3.4"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "0j090863y68ppw34qkldm8h4lpbhalhqn70gb0ifj9bglf17503d"; /* updated by script */
+      sha256 = "1yxjvsp89mkk7gghbz5lqh7bbqi6l1ihg876c60bhqg0f5m98zcg"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion_Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -247,12 +247,12 @@ in
 
   datagrip = buildDataGrip rec {
     name = "datagrip-${version}";
-    version = "2017.3.5"; /* updated by script */
+    version = "2017.3.7"; /* updated by script */
     description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "1hfy0mxdsvydjjklh8fwdz6f6qxajhngmcmyyzw0gdfhw6ldrv9c"; /* updated by script */
+      sha256 = "1pmkv1yd8xwqa4kdffg0vvk3whmnvrs9js7vnq4ilm39zzksqmpa"; /* updated by script */
     };
     wmClass = "jetbrains-datagrip";
     update-channel = "datagrip_2017_3";
@@ -260,12 +260,12 @@ in
 
   goland = buildGoland rec {
     name = "goland-${version}";
-    version = "2017.3.2"; /* updated by script */
+    version = "2017.3.3"; /* updated by script */
     description = "Up and Coming Go IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/go/${name}.tar.gz";
-      sha256 = "0bhvj1xqlpy58yq2s5nrhhaw53i913zpr135b1f6r5s22nvkigvm"; /* updated by script */
+      sha256 = "073wwhg58hkd8w4jazvwngl78gbhnmilm63jhpirr98jk7i7a4mq"; /* updated by script */
     };
     wmClass = "jetbrains-goland";
     update-channel = "goland_release";
@@ -273,12 +273,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2017.3.4"; /* updated by script */
+    version = "2017.3.5"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "15qsfirzmmjhwzkhx36zr4n0z5lhs021n2n3wim01g309ymr4gl9"; /* updated by script */
+      sha256 = "124rzc46f4bqyhllwyb26lkavh7zwbj62axrwhif34rayl2rcmpm"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IDEA_Release";
@@ -286,12 +286,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2017.3.4"; /* updated by script */
+    version = "2017.3.5"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
-      sha256 = "0f937s6zc1sv0gdlxf9kkc8l8rg78a5mxsfr2laab0g37rfy8c99"; /* updated by script */
+      sha256 = "10r3z37mhr8daxi14k011bhx3pxpx3lsj7jvikwll4wjlv1znhiw"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IDEA_Release";
@@ -299,12 +299,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2017.3.4"; /* updated by script */
+    version = "2017.3.5"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "1hxkn0p0lp021bbysypwn8s69iggb76iwq38jv5a1ql7v5r1nwvd"; /* updated by script */
+      sha256 = "1mcq8n7rd074aghmiyqf1yg3qvs28w97kk4dygj2a46y3s1ha4cd"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PS2017.3";
@@ -312,12 +312,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2017.3.3"; /* updated by script */
+    version = "2017.3.4"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "1j9pp8lfy62d9l3953d5mpij60s6sqyv3bcjimgy85hsrw570x3r"; /* updated by script */
+      sha256 = "027w73qrrj7aml2kdj3sx890q7jyj2jfnsg0pivi7i4kh8i11204"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm_Release";
@@ -325,12 +325,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2017.3.3"; /* updated by script */
+    version = "2017.3.4"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "180cwva49air4j7g409algrm4svvmcbapspf9als3djhazqmczgr"; /* updated by script */
+      sha256 = "0040ryx7kj64vwc10gvns43f1c97dvrgnwlmdm1m1506ldvaw0si"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm_Release";
@@ -351,12 +351,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2017.3.2"; /* updated by script */
+    version = "2017.3.3"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "1dc14k7i0nfhkzi0j53hysqzxcls29j487jr9kv1aqp81k544bdy"; /* updated by script */
+      sha256 = "1b0y8pcg8wwprm1swrl4laajnmx2c359bi7ahsyfjfprlzwx7wck"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "rm2017.3";
@@ -364,12 +364,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2017.3.4"; /* updated by script */
+    version = "2017.3.5"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "0d5whqa6c76l6g5yj0yq8a3k1x6d9kxwnac1dwsiy5dbr5jk0cyj"; /* updated by script */
+      sha256 = "123v4m8p7acndj8p8frn1bjvycijlx904pa84ka9pv18c90qiym9"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WS_Release";
diff --git a/pkgs/applications/graphics/exrdisplay/default.nix b/pkgs/applications/graphics/exrdisplay/default.nix
index aee65803e53f..e698fb8f2341 100644
--- a/pkgs/applications/graphics/exrdisplay/default.nix
+++ b/pkgs/applications/graphics/exrdisplay/default.nix
@@ -3,11 +3,11 @@
 assert fltk.glSupport;
 
 stdenv.mkDerivation {
-  name ="openexr_viewers-2.2.0";
+  name ="openexr_viewers-2.2.1";
 
   src = fetchurl {
-    url =  "mirror://savannah/openexr/openexr_viewers-2.2.0.tar.gz";
-    sha256 = "1s84vnas12ybx8zz0jcmpfbk9m4ab5bg2d3cglqwk3wys7jf4gzp";
+    url =  "mirror://savannah/openexr/openexr_viewers-2.2.1.tar.gz";
+    sha256 = "1ixx2wbjp4rvsf7h3bkja010gl1ihjrcjzy7h20jnn47ikg12vj8";
   };
 
   configurePhase = ''
diff --git a/pkgs/applications/graphics/goxel/default.nix b/pkgs/applications/graphics/goxel/default.nix
index 6fb7182035b6..8df630d582cc 100644
--- a/pkgs/applications/graphics/goxel/default.nix
+++ b/pkgs/applications/graphics/goxel/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "goxel-${version}";
-  version = "0.7.2";
+  version = "0.7.3";
 
   src = fetchFromGitHub {
     owner = "guillaumechereau";
     repo = "goxel";
     rev = "v${version}";
-    sha256 = "1d6waj8zz9iq3ddbi9wbpcnh200ajjy9x53xrj5bij01pb8jwskv";
+    sha256 = "114s1pbv3ixc2gzkg7n927hffd6ly5gg59izw4z6drgjcdhd7xj9";
   };
 
   nativeBuildInputs = [ scons pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index bba6a189b8f0..5a24a364587e 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -1,23 +1,23 @@
 { fetchurl, stdenv, meson, ninja, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite
 , webkitgtk, pkgconfig, gnome3, gst_all_1, libgudev, libraw, glib, json-glib
 , gettext, desktop-file-utils, gdk_pixbuf, librsvg, wrapGAppsHook
-, itstool, libgdata }:
+, gobjectIntrospection, itstool, libgdata }:
 
 # for dependencies see https://wiki.gnome.org/Apps/Shotwell/BuildingAndInstalling
 
 let
   pname = "shotwell";
-  version = "0.27.4";
+  version = "0.28.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
-    sha256 = "0g2vphhpxrljpy9sryfsgaayix807i1i9plj9bay72dk0zphqab2";
+    sha256 = "1d797nmlz9gs6ri0h65b76s40ss6ma6h6405xqx03lhg5xni3kmg";
   };
 
   nativeBuildInputs = [
-    meson ninja vala pkgconfig itstool gettext desktop-file-utils wrapGAppsHook
+    meson ninja vala pkgconfig itstool gettext desktop-file-utils wrapGAppsHook gobjectIntrospection
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/copyq/default.nix b/pkgs/applications/misc/copyq/default.nix
index 37afea2bb6f6..45bd417abb4f 100644
--- a/pkgs/applications/misc/copyq/default.nix
+++ b/pkgs/applications/misc/copyq/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "CopyQ-${version}";
-  version = "3.1.2";
+  version = "3.3.0";
 
   src  = fetchFromGitHub {
     owner = "hluk";
     repo = "CopyQ";
     rev = "v${version}";
-    sha256 = "0gdx1bqqqr4fk6wcrxqm9li6z48j1w84wjwyjpzp2cjzg96bp6bl";
+    sha256 = "0j46h87ifinkydi0m725p422m9svk3dpcz8dnrci4mxx0inn6qs3";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix
index 21af05133bf8..76b61de56088 100644
--- a/pkgs/applications/misc/electron-cash/default.nix
+++ b/pkgs/applications/misc/electron-cash/default.nix
@@ -7,14 +7,14 @@ let
 in
 
 python3Packages.buildPythonApplication rec {
-  version = "3.1.2";
+  version = "3.1.6";
   name = "electron-cash-${version}";
 
   src = fetchurl {
     url = "https://electroncash.org/downloads/${version}/win-linux/ElectronCash-${version}.tar.gz";
     # Verified using official SHA-1 and signature from
     # https://github.com/fyookball/keys-n-hashes
-    sha256 = "18h44jfbc2ksj34hdzgszvvq82xi28schl3wp3lkq9fjp7ny0mf3";
+    sha256 = "062k5iw0jcp10zxrffvgiyfg51c5xzs7gmm638icx01yy67d58dm";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/misc/gnome-usage/default.nix b/pkgs/applications/misc/gnome-usage/default.nix
new file mode 100644
index 000000000000..f99344b83d64
--- /dev/null
+++ b/pkgs/applications/misc/gnome-usage/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, meson, ninja, pkgconfig, vala, gettext
+, libxml2, desktop-file-utils, wrapGAppsHook
+, glib, gtk3, libgtop, gnome3 }:
+
+let
+  pname = "gnome-usage";
+  version = "3.28.0";
+in stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
+    sha256 = "0130bwinpkz307nalw6ndi5mk38k5g6jna4gbw2916d54df6a4nq";
+  };
+
+  nativeBuildInputs = [ meson ninja pkgconfig vala gettext libxml2 desktop-file-utils wrapGAppsHook ];
+
+  buildInputs = [ glib gtk3 libgtop gnome3.defaultIconTheme ];
+
+  postPatch = ''
+    chmod +x build-aux/meson/postinstall.sh
+    patchShebangs build-aux/meson/postinstall.sh
+  '';
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+    };
+  };
+
+  meta = with stdenv.lib; {
+    description = "";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = gnome3.maintainers;
+  };
+}
diff --git a/pkgs/applications/misc/gqrx/default.nix b/pkgs/applications/misc/gqrx/default.nix
index f6d9f4edb627..b376e8283a2b 100644
--- a/pkgs/applications/misc/gqrx/default.nix
+++ b/pkgs/applications/misc/gqrx/default.nix
@@ -8,13 +8,13 @@ assert pulseaudioSupport -> libpulseaudio != null;
 
 stdenv.mkDerivation rec {
   name = "gqrx-${version}";
-  version = "2.10";
+  version = "2.11.1";
 
   src = fetchFromGitHub {
     owner = "csete";
     repo = "gqrx";
     rev = "v${version}";
-    sha256 = "1qc944sn1kjdnhdhcsdc39764vqcryk86808xxl49vy8sznqr0mf";
+    sha256 = "06l90m3lx05290lvgghrgqrcg6732p69dvv3bsyw7cyxy3fvdhm6";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix
index c9f00d48aecc..9bc9218305c3 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/applications/misc/orca/default.nix
@@ -10,7 +10,7 @@
 with lib;
 let
   pname = "orca";
-  version = "3.26.0";
+  version = "3.27.91";
 in buildPythonApplication rec {
   name = "${pname}-${version}";
 
@@ -18,7 +18,7 @@ in buildPythonApplication rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
-    sha256 = "0xk5k9cbswymma60nrfj00dl97wypx59c107fb1hwi75gm0i07a7";
+    sha256 = "0phlkn6ffqncvsg7ph3l4xw388baddav9s4pbkvqqa8myca9g4wg";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/browsers/eolie/0001-Remove-post-install-script-handle-in-nix-config-inst.patch b/pkgs/applications/networking/browsers/eolie/0001-Remove-post-install-script-handle-in-nix-config-inst.patch
deleted file mode 100644
index 770cd8afa9ef..000000000000
--- a/pkgs/applications/networking/browsers/eolie/0001-Remove-post-install-script-handle-in-nix-config-inst.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From a79d2dcd1b6275904193454fb9d68614813929f3 Mon Sep 17 00:00:00 2001
-From: Sam Parkinson <sam@sam.today>
-Date: Mon, 27 Nov 2017 11:17:35 +1100
-Subject: [PATCH] Remove post install script - handle in nix config instead
-
----
- meson.build | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index fc45296..2227f1f 100644
---- a/meson.build
-+++ b/meson.build
-@@ -53,5 +53,3 @@ configure_file(
-   configuration: conf,
-   install_dir: bindir
- )
--
--meson.add_install_script('meson_post_install.py')
--- 
-2.15.0
-
-
diff --git a/pkgs/applications/networking/browsers/eolie/default.nix b/pkgs/applications/networking/browsers/eolie/default.nix
index d1741774d347..9d4c858298d6 100644
--- a/pkgs/applications/networking/browsers/eolie/default.nix
+++ b/pkgs/applications/networking/browsers/eolie/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchgit, intltool, itstool, meson, ninja, pkgconfig, wrapGAppsHook
-, git, glib, glib-networking, gsettings-desktop-schemas, gst_all_1, gtk3
+, glib, glib-networking, gsettings-desktop-schemas, gst_all_1, gtk3, gobjectIntrospection
 , gtkspell3, libsecret, python36, python36Packages, webkitgtk }:
 
 stdenv.mkDerivation rec {
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   version = "0.9.16";
 
   src = fetchgit {
-    url = "https://gitlab.gnome.org/gnumdk/eolie";
+    url = https://gitlab.gnome.org/gnumdk/eolie;
     rev = version;
     sha256 = "0mvhr6hy4nx7xaq9r9qp5rb0y293kjjryw5ykzb473cr3iwzk25b";
   };
@@ -19,10 +19,11 @@ stdenv.mkDerivation rec {
     ninja
     pkgconfig
     wrapGAppsHook
+    gobjectIntrospection
   ];
 
   buildInputs = [
-    git # required to download ad blocking DB
+    glib
     glib-networking
     gsettings-desktop-schemas
     gst_all_1.gstreamer
@@ -47,20 +48,18 @@ stdenv.mkDerivation rec {
 
   wrapPrefixVariables = [ "PYTHONPATH" ];
 
-  enableParallelBuilding = true;
-
-  postInstall = ''
-    ${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
+  postPatch = ''
+    chmod +x meson_post_install.py # patchShebangs requires executable file
+    patchShebangs meson_post_install.py
   '';
 
   patches = [
-    ./0001-Remove-post-install-script-handle-in-nix-config-inst.patch
     ./0001-Extend-the-python-path-rather-than-replacing-it.patch
   ];
 
   meta = with stdenv.lib; {
     description = "A new GNOME web browser";
-    homepage = https://gitlab.gnome.org/gnumdk/eolie;
+    homepage = https://wiki.gnome.org/Apps/Eolie;
     license = licenses.gpl3;
     maintainers = [ maintainers.samdroid-apps ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/corebird/default.nix b/pkgs/applications/networking/corebird/default.nix
index 6a71afcaf60a..216569cc8210 100644
--- a/pkgs/applications/networking/corebird/default.nix
+++ b/pkgs/applications/networking/corebird/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchFromGitHub, gtk3, json-glib, sqlite, libsoup, gettext, vala_0_32
-, automake, autoconf, libtool, pkgconfig, gnome3, gst_all_1, wrapGAppsHook
+{ stdenv, fetchFromGitHub, glib, gtk3, json-glib, sqlite, libsoup, gettext, vala_0_40
+, meson, ninja, pkgconfig, gnome3, gst_all_1, wrapGAppsHook, gobjectIntrospection
 , glib-networking }:
 
 stdenv.mkDerivation rec {
@@ -13,20 +13,24 @@ stdenv.mkDerivation rec {
     sha256 = "0qjffsmg1hm64dgsbkfwzbzy9q4xa1q4fh4h8ni8a2b1p3h80x7n";
   };
 
-  preConfigure = ''
-    ./autogen.sh
-  '';
-
-  nativeBuildInputs = [ automake autoconf libtool pkgconfig wrapGAppsHook ];
+  nativeBuildInputs = [
+    meson ninja vala_0_40 pkgconfig wrapGAppsHook
+    gobjectIntrospection # for setup hook
+  ];
 
   buildInputs = [
-    gtk3 json-glib sqlite libsoup gettext vala_0_32 gnome3.dconf gnome3.gspell glib-networking
+    glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
   ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good (gst-plugins-bad.override { gtkSupport = true; }) gst-libav ]);
 
+  postPatch = ''
+    chmod +x data/meson_post_install.py # patchShebangs requires executable file
+    patchShebangs data/meson_post_install.py
+  '';
+
   meta = {
     description = "Native Gtk+ Twitter client for the Linux desktop";
     longDescription = "Corebird is a modern, easy and fun Twitter client.";
-    homepage = http://corebird.baedert.org;
+    homepage = https://corebird.baedert.org/;
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.jonafato ];
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 134066cd352a..adf718a70ea1 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -6,10 +6,16 @@ in {
     stable = true;
     version = "1.2.6";
     sha256Hash = "15g0m2wwqfp13wd7j31p8cx1kpylx5m8ljaksnsqdkgyr9l1ar8w";
+    # svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
+    archPatchesRevision = "283641";
+    archPatchesHash = "0v4213vrabfa2dmwnqgb8n6hl54938mw9glaim3amyslxphmdrfb";
   };
   preview = mkTelegram {
     stable = false;
     version = "1.2.12";
     sha256Hash = "1b9qc4a14jqjl30z4bjh1zbqsmgl25kdp0hj8p7xbj34zlkzfw5m";
+    # svn ls -v --depth empty svn://svn.archlinux.org/community/telegram-desktop/trunk
+    archPatchesRevision = "308775";
+    archPatchesHash = "0ggx64kdadrbd4bw5z0wi0fdg6hni7n9nxz9dp56p8hlw1wgpsls";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/generic.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/generic.nix
index a165e90c3bdc..89bc3da56b8a 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/generic.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/generic.nix
@@ -1,6 +1,6 @@
-{ stable, version, sha256Hash }:
+{ stable, version, sha256Hash, archPatchesRevision, archPatchesHash }:
 
-{ mkDerivation, lib, fetchgit, fetchpatch
+{ mkDerivation, lib, fetchgit, fetchsvn
 , pkgconfig, pythonPackages, cmake, makeWrapper
 , qtbase, qtimageformats, gtk3, libappindicator-gtk3, libnotify
 , dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
@@ -12,7 +12,7 @@ mkDerivation rec {
   name = "telegram-desktop-${version}";
   inherit version;
 
-  # Submodules
+  # Telegram-Desktop with submodules
   src = fetchgit {
     url = "git://github.com/telegramdesktop/tdesktop";
     rev = "v${version}";
@@ -20,29 +20,21 @@ mkDerivation rec {
     fetchSubmodules = true;
   };
 
-  # TODO: Not active anymore.
-  tgaur = fetchgit {
-    url = "https://aur.archlinux.org/telegram-desktop-systemqt.git";
-    rev = "1ed27ce40913b9e6e87faf7a2310660c2790b98e";
-    sha256 = "1i7ipqgisaw54g1nbg2cvpbx89g9gyjjb3sak1486pxsasp1qhyc";
+  # Arch patches (svn export telegram-desktop/trunk)
+  archPatches = fetchsvn {
+    url = "svn://svn.archlinux.org/community/telegram-desktop/trunk";
+    rev = archPatchesRevision;
+    sha256 = archPatchesHash;
   };
 
-  patches = [ (if stable
-    then (fetchpatch {
-      name = "tdesktop.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/repos/community-x86_64/tdesktop.patch?h=packages/telegram-desktop&id=f0eefac36f529295f8b065a14b6d5f1a51d7614d";
-      sha256 = "1a4wap5xnp6zn4913r3zdpy6hvkcfxcy4zzimy7fwzp7iwy20iqa";
-    })
-    else (fetchpatch {
-      name = "tdesktop.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/repos/community-x86_64/tdesktop.patch?h=packages/telegram-desktop&id=59ca8bd4428cf2fb3f02d7f1e1a5558545a4c075";
-      sha256 = "0jj2kifzx83f9nhk30csy2373avpyx0ci70a8bc7j2dm3wxym50l";
-    }))
-  ];
+  # TODO: libtgvoip.patch no-gtk2.patch
+  patches = [ "${archPatches}/tdesktop.patch" ];
 
   postPatch = ''
-    substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp --replace '"appindicator"' '"${libappindicator-gtk3}/lib/libappindicator3.so"'
-    substituteInPlace Telegram/SourceFiles/platform/linux/linux_libnotify.cpp --replace '"notify"' '"${libnotify}/lib/libnotify.so"'
+    substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp \
+      --replace '"appindicator"' '"${libappindicator-gtk3}/lib/libappindicator3.so"'
+    substituteInPlace Telegram/SourceFiles/platform/linux/linux_libnotify.cpp \
+      --replace '"notify"' '"${libnotify}/lib/libnotify.so"'
   '';
 
   nativeBuildInputs = [ pkgconfig pythonPackages.gyp cmake makeWrapper ];
@@ -61,8 +53,8 @@ mkDerivation rec {
   ];
 
   NIX_CFLAGS_COMPILE = [
-    "-DTDESKTOP_DISABLE_AUTOUPDATE"
     "-DTDESKTOP_DISABLE_CRASH_REPORTS"
+    "-DTDESKTOP_DISABLE_AUTOUPDATE"
     "-DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME"
     "-I${minizip}/include/minizip"
     # See Telegram/gyp/qt.gypi
@@ -74,13 +66,12 @@ mkDerivation rec {
     "-I${getDev libopus}/include/opus"
     "-I${getDev alsaLib}/include/alsa"
     "-I${getDev libpulseaudio}/include/pulse"
-  ]) [ "QtCore" "QtGui" "QtDBus" ];
+    ]) [ "QtCore" "QtGui" "QtDBus" ];
   CPPFLAGS = NIX_CFLAGS_COMPILE;
 
   preConfigure = ''
-
     pushd "Telegram/ThirdParty/libtgvoip"
-    patch -Np1 -i "${tgaur}/libtgvoip.patch"
+    patch -Np1 -i "${archPatches}/libtgvoip.patch"
     popd
 
     sed -i Telegram/gyp/telegram_linux.gypi \
@@ -102,22 +93,23 @@ mkDerivation rec {
       --depth=Telegram/gyp \
       --generator-output=../.. \
       -Goutput_dir=out \
-       --format=cmake \
+      --format=cmake \
       Telegram/gyp/Telegram.gyp
 
     cd out/Release
 
     NUM=$((`wc -l < CMakeLists.txt` - 2))
-    sed -i "$NUM r $tgaur/CMakeLists.inj" CMakeLists.txt
+    sed -i "$NUM r $archPatches/CMakeLists.inj" CMakeLists.txt
 
     export ASM=$(type -p gcc)
   '';
 
   installPhase = ''
     install -Dm755 Telegram $out/bin/telegram-desktop
+
     mkdir -p $out/share/applications $out/share/kde4/services
-    sed "s,/usr/bin,$out/bin,g" $tgaur/telegram-desktop.desktop > $out/share/applications/telegram-desktop.desktop
-    sed "s,/usr/bin,$out/bin,g" $tgaur/tg.protocol > $out/share/kde4/services/tg.protocol
+    install -m444 "$src/lib/xdg/telegramdesktop.desktop" "$out/share/applications/telegram-desktop.desktop"
+    sed "s,/usr/bin,$out/bin,g" $archPatches/tg.protocol > $out/share/kde4/services/tg.protocol
     for icon_size in 16 32 48 64 128 256 512; do
       install -Dm644 "../../../Telegram/Resources/art/icon''${icon_size}.png" "$out/share/icons/hicolor/''${icon_size}x''${icon_size}/apps/telegram-desktop.png"
     done
diff --git a/pkgs/applications/networking/syncthing-gtk/default.nix b/pkgs/applications/networking/syncthing-gtk/default.nix
index 5e48f85852df..ae715aa4321c 100644
--- a/pkgs/applications/networking/syncthing-gtk/default.nix
+++ b/pkgs/applications/networking/syncthing-gtk/default.nix
@@ -18,7 +18,7 @@ buildPythonApplication rec {
   ];
 
   buildInputs = [
-    gtk3 (librsvg.override { enableIntrospection = true; })
+    gtk3 librsvg
     libnotify
     # Schemas with proxy configuration
     gnome3.gsettings-desktop-schemas
diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix
index a30343dd0b9e..2925e601e32b 100644
--- a/pkgs/applications/science/math/jags/default.nix
+++ b/pkgs/applications/science/math/jags/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, gfortran, openblas}:
 
 stdenv.mkDerivation rec {
-  name = "JAGS-4.1.0";
+  name = "JAGS-4.3.0";
   src = fetchurl {
     url = "mirror://sourceforge/mcmc-jags/${name}.tar.gz";
-    sha256 = "08pmrnbwibc0brgn5cx860jcl0s2xaw4amw7g45649r1bcdz7v25";
+    sha256 = "1z3icccg2ic56vmhyrpinlsvpq7kcaflk1731rgpvz9bk1bxvica";
   };
   buildInputs = [gfortran openblas];
   configureFlags = [ "--with-blas=-lopenblas" "--with-lapack=-lopenblas" ];
diff --git a/pkgs/applications/version-management/gitaly/Gemfile b/pkgs/applications/version-management/gitaly/Gemfile
index 2aaf872d109b..2b95446161b8 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitaly/Gemfile
@@ -1,11 +1,18 @@
 source 'https://rubygems.org'
 
 gem 'github-linguist', '~> 4.7.0', require: 'linguist'
-gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
-gem 'activesupport'
+gem 'gitlab-markup', '~> 1.6.2'
+gem 'gitaly-proto', '~> 0.83.0', require: 'gitaly'
+gem 'activesupport', '~> 5.0.2'
+gem 'rdoc', '~> 4.2'
 gem 'gollum-lib', '~> 4.2', require: false
 gem 'gollum-rugged_adapter', '~> 0.4.4', require: false
+gem 'grpc', '~> 1.8.0'
+
+# Locked until https://github.com/google/protobuf/issues/4210 is closed
+gem 'google-protobuf', '= 3.5.1'
 
 group :development, :test do
   gem 'gitlab-styles', '~> 2.0.0', require: false
+  gem 'rspec', require: false
 end
diff --git a/pkgs/applications/version-management/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitaly/Gemfile.lock
index f4e4ab10883e..cb53bb10122a 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitaly/Gemfile.lock
@@ -1,23 +1,23 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    activesupport (5.0.0.1)
+    activesupport (5.0.6)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (~> 0.7)
       minitest (~> 5.1)
       tzinfo (~> 1.1)
-    addressable (2.5.1)
-      public_suffix (~> 2.0, >= 2.0.2)
+    addressable (2.5.2)
+      public_suffix (>= 2.0.2, < 4.0)
     ast (2.3.0)
     charlock_holmes (0.7.5)
     concurrent-ruby (1.0.5)
     diff-lcs (1.3)
     escape_utils (1.1.1)
-    faraday (0.12.2)
+    faraday (0.14.0)
       multipart-post (>= 1.2, < 3)
     gemojione (3.3.0)
       json
-    gitaly-proto (0.59.0)
+    gitaly-proto (0.83.0)
       google-protobuf (~> 3.1)
       grpc (~> 1.0)
     github-linguist (4.7.6)
@@ -31,6 +31,7 @@ GEM
       diff-lcs (~> 1.1)
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
+    gitlab-markup (1.6.3)
     gitlab-styles (2.0.0)
       rubocop (~> 0.49)
       rubocop-gitlab-security (~> 0.1.0)
@@ -48,21 +49,24 @@ GEM
     gollum-rugged_adapter (0.4.4)
       mime-types (>= 1.15)
       rugged (~> 0.25)
-    google-protobuf (3.4.0.2)
-    googleauth (0.5.3)
+    google-protobuf (3.5.1)
+    googleapis-common-protos-types (1.0.1)
+      google-protobuf (~> 3.0)
+    googleauth (0.6.2)
       faraday (~> 0.12)
-      jwt (~> 1.4)
+      jwt (>= 1.4, < 3.0)
       logging (~> 2.0)
       memoist (~> 0.12)
       multi_json (~> 1.11)
       os (~> 0.9)
       signet (~> 0.7)
-    grpc (1.6.0)
+    grpc (1.8.7)
       google-protobuf (~> 3.1)
-      googleauth (~> 0.5.1)
+      googleapis-common-protos-types (~> 1.0.0)
+      googleauth (>= 0.5.1, < 0.7)
     i18n (0.8.1)
     json (2.1.0)
-    jwt (1.5.6)
+    jwt (2.1.0)
     little-plugger (1.1.4)
     logging (2.2.2)
       little-plugger (~> 1.1)
@@ -73,7 +77,7 @@ GEM
     mime-types-data (3.2016.0521)
     mini_portile2 (2.3.0)
     minitest (5.9.1)
-    multi_json (1.12.1)
+    multi_json (1.13.1)
     multipart-post (2.0.0)
     nokogiri (1.8.1)
       mini_portile2 (~> 2.3.0)
@@ -83,11 +87,25 @@ GEM
       ast (~> 2.2)
     posix-spawn (0.3.13)
     powerpack (0.1.1)
-    public_suffix (2.0.5)
+    public_suffix (3.0.1)
     rainbow (2.2.2)
       rake
     rake (12.1.0)
+    rdoc (4.3.0)
     rouge (2.2.1)
+    rspec (3.6.0)
+      rspec-core (~> 3.6.0)
+      rspec-expectations (~> 3.6.0)
+      rspec-mocks (~> 3.6.0)
+    rspec-core (3.6.0)
+      rspec-support (~> 3.6.0)
+    rspec-expectations (3.6.0)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.6.0)
+    rspec-mocks (3.6.0)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.6.0)
+    rspec-support (3.6.0)
     rubocop (0.50.0)
       parallel (~> 1.10)
       parser (>= 2.3.3.1, < 3.0)
@@ -103,10 +121,10 @@ GEM
     rugged (0.26.0)
     sanitize (2.1.0)
       nokogiri (>= 1.4.4)
-    signet (0.7.3)
+    signet (0.8.1)
       addressable (~> 2.3)
       faraday (~> 0.9)
-      jwt (~> 1.5)
+      jwt (>= 1.5, < 3.0)
       multi_json (~> 1.10)
     stringex (2.7.1)
     thread_safe (0.3.6)
@@ -118,12 +136,17 @@ PLATFORMS
   ruby
 
 DEPENDENCIES
-  activesupport
-  gitaly-proto (~> 0.59.0)
+  activesupport (~> 5.0.2)
+  gitaly-proto (~> 0.83.0)
   github-linguist (~> 4.7.0)
+  gitlab-markup (~> 1.6.2)
   gitlab-styles (~> 2.0.0)
   gollum-lib (~> 4.2)
   gollum-rugged_adapter (~> 0.4.4)
+  google-protobuf (= 3.5.1)
+  grpc (~> 1.8.0)
+  rdoc (~> 4.2)
+  rspec
 
 BUNDLED WITH
-   1.16.0
+   1.16.1
diff --git a/pkgs/applications/version-management/gitaly/default.nix b/pkgs/applications/version-management/gitaly/default.nix
index 43ac470dcd46..7a8ba0fda744 100644
--- a/pkgs/applications/version-management/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitaly/default.nix
@@ -7,14 +7,14 @@ let
     gemdir = ./.;
   };
 in buildGoPackage rec {
-  version = "0.59.2";
+  version = "0.81.0";
   name = "gitaly-${version}";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "08f109rw3qxdr93l0kl8wxmrvn846a6vdkssvrp2zr40yn9wif7m";
+    sha256 = "01sw5y201xbd21k9r7xmzqiiypb924ac95nqqfhzplqnssa98n9y";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitaly";
diff --git a/pkgs/applications/version-management/gitaly/gemset.nix b/pkgs/applications/version-management/gitaly/gemset.nix
index 81bb334085ac..efe786216628 100644
--- a/pkgs/applications/version-management/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitaly/gemset.nix
@@ -3,19 +3,19 @@
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vgjr48yiynwf9rh2nsxa8w134na0805l40chf9g9scii9k70rj9";
+      sha256 = "0g85lqq0smj71g8a2dxb54ajjzw59c9snana4p61knryc83q3yg6";
       type = "gem";
     };
-    version = "5.0.0.1";
+    version = "5.0.6";
   };
   addressable = {
     dependencies = ["public_suffix"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i8q32a4gr0zghxylpyy7jfqwxvwrivsxflg9mks6kx92frh75mh";
+      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.5.2";
   };
   ast = {
     source = {
@@ -61,10 +61,10 @@
     dependencies = ["multipart-post"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
+      sha256 = "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr";
       type = "gem";
     };
-    version = "0.12.2";
+    version = "0.14.0";
   };
   gemojione = {
     dependencies = ["json"];
@@ -79,10 +79,10 @@
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
+      sha256 = "0z3asy104q36sshq9zhmgcm32sg8qr8jvy0mi19nakkq7prrkwqv";
       type = "gem";
     };
-    version = "0.59.0";
+    version = "0.83.0";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@@ -110,6 +110,14 @@
     };
     version = "2.8.2";
   };
+  gitlab-markup = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
+      type = "gem";
+    };
+    version = "1.6.3";
+  };
   gitlab-styles = {
     dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
     source = {
@@ -149,28 +157,37 @@
   google-protobuf = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jh8axm5m75rvdf2i3s24pmi7p613armh9vk3p1d0ryfx159mqkl";
+      sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
       type = "gem";
     };
-    version = "3.4.0.2";
+    version = "3.5.1";
+  };
+  googleapis-common-protos-types = {
+    dependencies = ["google-protobuf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
+      type = "gem";
+    };
+    version = "1.0.1";
   };
   googleauth = {
     dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xpmvrzhczak25nm0k3r9aa083lmfnzi94mir3g1xyrgzz66vxli";
+      sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f";
       type = "gem";
     };
-    version = "0.5.3";
+    version = "0.6.2";
   };
   grpc = {
-    dependencies = ["google-protobuf" "googleauth"];
+    dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "056ipqai887x5jpbgcc215kdi0lfqjzcjbx3hx11cjrfww01zc52";
+      sha256 = "02b80pyg4rgkiafyh1jqnfh6xp9abpd1x0a9c2h98f0851scw28b";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.8.7";
   };
   i18n = {
     source = {
@@ -191,10 +208,10 @@
   jwt = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "124zz1142bi2if7hl5pcrcamwchv4icyr5kaal9m2q6wqbdl6aw4";
+      sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky";
       type = "gem";
     };
-    version = "1.5.6";
+    version = "2.1.0";
   };
   little-plugger = {
     source = {
@@ -257,10 +274,10 @@
   multi_json = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wpc23ls6v2xbk3l1qncsbz16npvmw8p0b38l8czdzri18mp51xk";
+      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
       type = "gem";
     };
-    version = "1.12.1";
+    version = "1.13.1";
   };
   multipart-post = {
     source = {
@@ -323,10 +340,10 @@
   public_suffix = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
+      sha256 = "0mvzd9ycjw8ydb9qy3daq3kdzqs2vpqvac4dqss6ckk4rfcjc637";
       type = "gem";
     };
-    version = "2.0.5";
+    version = "3.0.1";
   };
   rainbow = {
     dependencies = ["rake"];
@@ -345,6 +362,14 @@
     };
     version = "12.1.0";
   };
+  rdoc = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13ba2mhqqcsp3k97x3iz9x29xk26rv4561lfzzzibcy41vvj1n4c";
+      type = "gem";
+    };
+    version = "4.3.0";
+  };
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -353,6 +378,50 @@
     };
     version = "2.2.1";
   };
+  rspec = {
+    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
+  rspec-core = {
+    dependencies = ["rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
+  rspec-expectations = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
+  rspec-mocks = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
+  rspec-support = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
   rubocop = {
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
     source = {
@@ -409,10 +478,10 @@
     dependencies = ["addressable" "faraday" "jwt" "multi_json"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "149668991xqibvm8kvl10kzy891yd6f994b4gwlx6c3vl24v5jq6";
+      sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv";
       type = "gem";
     };
-    version = "0.7.3";
+    version = "0.8.1";
   };
   stringex = {
     source = {
diff --git a/pkgs/applications/version-management/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab-shell/default.nix
index ab0ff74f03f5..ca5b8a84fbf9 100644
--- a/pkgs/applications/version-management/gitlab-shell/default.nix
+++ b/pkgs/applications/version-management/gitlab-shell/default.nix
@@ -1,14 +1,14 @@
 { stdenv, ruby, bundler, fetchFromGitLab, go }:
 
 stdenv.mkDerivation rec {
-  version = "5.10.2";
+  version = "6.0.3";
   name = "gitlab-shell-${version}";
 
   srcs = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-shell";
     rev = "v${version}";
-    sha256 = "16lwnzsppql7pkf8fka6cwkghdr57g225zvln9ii29w7nzz1hvaf";
+    sha256 = "073y41d9sqy6l6dxbiml6c13fq98qcb0jf86w9slld1mcw19cmrk";
   };
 
   buildInputs = [ ruby bundler go ];
@@ -30,29 +30,9 @@ stdenv.mkDerivation rec {
   # code by default which doesn't work in nixos because it's a
   # read-only filesystem
   postPatch = ''
-    substituteInPlace lib/gitlab_config.rb --replace\
-       "File.join(ROOT_PATH, 'config.yml')"\
-       "ENV['GITLAB_SHELL_CONFIG_PATH']"
-
-    # Note that we're running gitlab-shell from current-system/sw
-    # because otherwise updating gitlab-shell won't be reflected in
-    # the hardcoded path of the authorized-keys file:
-    substituteInPlace lib/gitlab_keys.rb --replace\
-        "\"#{ROOT_PATH}/bin/gitlab-shell"\
-        "\"GITLAB_SHELL_CONFIG_PATH=#{ENV['GITLAB_SHELL_CONFIG_PATH']} /run/current-system/sw/bin/gitlab-shell"
-
-    # We're setting GITLAB_SHELL_CONFIG_PATH in the ssh authorized key
-    # environment because we need it in gitlab_configrb
-    # . unsetenv_others will remove that so we're not doing it for
-    # now.
-    #
-    # TODO: Are there any security implications? The commit adding
-    # unsetenv_others didn't mention anything...
-    #
-    # Kernel::exec({'PATH' => ENV['PATH'], 'LD_LIBRARY_PATH' => ENV['LD_LIBRARY_PATH'], 'GL_ID' => ENV['GL_ID']}, *args, unsetenv_others: true)
-    substituteInPlace lib/gitlab_shell.rb --replace\
-        " *args, unsetenv_others: true)"\
-        " *args)"
+    substituteInPlace lib/gitlab_config.rb --replace \
+       "File.join(ROOT_PATH, 'config.yml')" \
+       "'/run/gitlab/shell-config.yml'"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/version-management/gitlab-shell/fixes.patch b/pkgs/applications/version-management/gitlab-shell/fixes.patch
index 1c694266e470..b0ee31cf39dd 100644
--- a/pkgs/applications/version-management/gitlab-shell/fixes.patch
+++ b/pkgs/applications/version-management/gitlab-shell/fixes.patch
@@ -1,12 +1,11 @@
 diff --git a/support/go_build.rb b/support/go_build.rb
-index 82f94d2..40ba35e 100644
+index 30a6b71..46b4dfa 100644
 --- a/support/go_build.rb
 +++ b/support/go_build.rb
-@@ -25,9 +25,8 @@ module GoBuild
-   def run!(env, cmd)
+@@ -26,8 +26,8 @@ module GoBuild
      raise "env must be a hash" unless env.is_a?(Hash)
      raise "cmd must be an array" unless cmd.is_a?(Array)
--  
+   
 -    if !system(env, *cmd)
 -      abort "command failed: #{env.inspect} #{cmd.join(' ')}"
 -    end
diff --git a/pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch b/pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch
index f28e74b88c50..bc1aa8583867 100644
--- a/pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch
+++ b/pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch
@@ -1,30 +1,3 @@
-diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb
-index 0b11ce3..ffc3faf 100644
---- a/lib/gitlab_projects.rb
-+++ b/lib/gitlab_projects.rb
-@@ -8,7 +8,7 @@ require_relative 'gitlab_metrics'
- require_relative 'gitlab_metrics'
- 
- class GitlabProjects
--  GLOBAL_HOOKS_DIRECTORY = File.join(ROOT_PATH, 'hooks')
-+  GLOBAL_HOOKS_DIRECTORY = ENV['GITLAB_SHELL_HOOKS_PATH'] || File.join(ROOT_PATH, 'hooks')
- 
-   # Project name is a directory name for repository with .git at the end
-   # It may be namespaced or not. Like repo.git or gitlab/repo.git
-diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
-index e7d0254..181ec8a 100644
---- a/lib/gitlab_shell.rb
-+++ b/lib/gitlab_shell.rb
-@@ -188,7 +188,8 @@ class GitlabShell
-     end
- 
-     # We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
--    Kernel::exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
-+    # Except we don't, because we're already in the right directory on nixos !
-+    Kernel::exec(env, *args, unsetenv_others: true)
-   end
- 
-   def api
 diff --git a/go/internal/config/config.go b/go/internal/config/config.go
 index c57b4de..88cfc95 100644
 --- a/go/internal/config/config.go
@@ -34,7 +7,21 @@ index c57b4de..88cfc95 100644
  	cfg.RootDir = dir
  
 -	configBytes, err := ioutil.ReadFile(path.Join(cfg.RootDir, configFile))
-+	configBytes, err := ioutil.ReadFile(os.Getenv("GITLAB_SHELL_CONFIG_PATH"))
++	configBytes, err := ioutil.ReadFile("/run/gitlab/shell-config.yml")
  	if err != nil {
  		return nil, err
  	}
+diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
+index 1452f95..2b40327 100644
+--- a/lib/gitlab_shell.rb
++++ b/lib/gitlab_shell.rb
+@@ -180,7 +180,8 @@ class GitlabShell
+     end
+ 
+     # We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
+-    Kernel::exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
++    # Except we don't, because we're already in the right directory on nixos!
++    Kernel::exec(env, *args, unsetenv_others: true)
+   end
+ 
+   def api
diff --git a/pkgs/applications/version-management/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab-workhorse/default.nix
index c43b5ab2a1b6..6bb696406c9d 100644
--- a/pkgs/applications/version-management/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab-workhorse/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitLab, git, go }:
 
 stdenv.mkDerivation rec {
-  version = "3.3.1";
+  version = "3.6.0";
   name = "gitlab-workhorse-${version}";
 
   srcs = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "19x9ryp99xygj39kq2r756rahh9mxp6j83hxvv09y33vgz64y8xh";
+    sha256 = "1vcxm9m82m1dcc86r29k5v8cp3zvpby4kszbkavl3frm3ws0w9lz";
   };
 
   buildInputs = [ git go ];
diff --git a/pkgs/applications/version-management/gitlab/Gemfile b/pkgs/applications/version-management/gitlab/Gemfile
index 916314f42f93..97d40857e117 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile
+++ b/pkgs/applications/version-management/gitlab/Gemfile
@@ -12,7 +12,7 @@ gem 'sprockets', '~> 3.7.0'
 gem 'default_value_for', '~> 3.0.0'
 
 # Supported DBs
-gem 'mysql2', '~> 0.4.5', group: :mysql
+gem 'mysql2', '~> 0.4.10', group: :mysql
 gem 'pg', '~> 0.18.2', group: :postgres
 
 gem 'rugged', '~> 0.26.0'
@@ -25,7 +25,7 @@ gem 'devise', '~> 4.2'
 gem 'doorkeeper', '~> 4.2.0'
 gem 'doorkeeper-openid_connect', '~> 1.2.0'
 gem 'omniauth', '~> 1.4.2'
-gem 'omniauth-auth0', '~> 1.4.1'
+gem 'omniauth-auth0', '~> 2.0.0'
 gem 'omniauth-azure-oauth2', '~> 0.0.9'
 gem 'omniauth-cas3', '~> 1.1.4'
 gem 'omniauth-facebook', '~> 4.0.0'
@@ -69,7 +69,15 @@ gem 'net-ldap'
 
 # Git Wiki
 # Required manually in config/initializers/gollum.rb to control load order
+# Before updating this gem, check if
+# https://github.com/gollum/gollum-lib/pull/292 has been merged.
+# If it has, then remove the monkey patch for update_page, rename_page and raw_data_in_committer
+# in config/initializers/gollum.rb
 gem 'gollum-lib', '~> 4.2', require: false
+
+# Before updating this gem, check if
+# https://github.com/gollum/rugged_adapter/pull/28 has been merged.
+# If it has, then remove the monkey patch for tree_entry in config/initializers/gollum.rb
 gem 'gollum-rugged_adapter', '~> 0.4.4', require: false
 
 # Language detection
@@ -78,7 +86,7 @@ gem 'github-linguist', '~> 4.7.0', require: 'linguist'
 # API
 gem 'grape', '~> 1.0'
 gem 'grape-entity', '~> 0.6.0'
-gem 'rack-cors', '~> 0.4.0', require: 'rack/cors'
+gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
 
 # Disable strong_params so that Mash does not respond to :permitted?
 gem 'hashie-forbidden_attributes'
@@ -111,7 +119,7 @@ gem 'google-api-client', '~> 0.13.6'
 gem 'unf', '~> 0.1.4'
 
 # Seed data
-gem 'seed-fu', '2.3.6' # Upgrade to > 2.3.7 once https://github.com/mbleigh/seed-fu/issues/123 is solved
+gem 'seed-fu', '~> 2.3.7'
 
 # Markdown and HTML processing
 gem 'html-pipeline', '~> 1.11.0'
@@ -128,7 +136,7 @@ gem 'asciidoctor-plantuml', '0.0.7'
 gem 'rouge', '~> 2.0'
 gem 'truncato', '~> 0.7.9'
 gem 'bootstrap_form', '~> 2.7.0'
-gem 'nokogiri', '~> 1.8.1'
+gem 'nokogiri', '~> 1.8.2'
 
 # Diffs
 gem 'diffy', '~> 3.1.0'
@@ -229,6 +237,9 @@ gem 'charlock_holmes', '~> 0.7.5'
 # Faster JSON
 gem 'oj', '~> 2.17.4'
 
+# Faster blank
+gem 'fast_blank'
+
 # Parse time & duration
 gem 'chronic', '~> 0.10.2'
 gem 'chronic_duration', '~> 0.10.6'
@@ -263,7 +274,7 @@ gem 'gettext_i18n_rails', '~> 1.8.0'
 gem 'gettext_i18n_rails_js', '~> 1.2.0'
 gem 'gettext', '~> 3.2.2', require: false, group: :development
 
-gem 'batch-loader'
+gem 'batch-loader', '~> 1.2.1'
 
 # Perf bar
 gem 'peek', '~> 1.0.1'
@@ -283,7 +294,7 @@ group :metrics do
   gem 'influxdb', '~> 0.2', require: false
 
   # Prometheus
-  gem 'prometheus-client-mmap', '~> 0.7.0.beta43'
+  gem 'prometheus-client-mmap', '~> 0.9.1'
   gem 'raindrops', '~> 0.18'
 end
 
@@ -311,14 +322,14 @@ group :development, :test do
   gem 'fuubar', '~> 2.2.0'
 
   gem 'database_cleaner', '~> 1.5.0'
-  gem 'factory_girl_rails', '~> 4.7.0'
+  gem 'factory_bot_rails', '~> 4.8.2'
   gem 'rspec-rails', '~> 3.6.0'
   gem 'rspec-retry', '~> 0.4.5'
   gem 'spinach-rails', '~> 0.2.1'
   gem 'spinach-rerun-reporter', '~> 0.0.2'
   gem 'rspec_profiling', '~> 0.0.5'
   gem 'rspec-set', '~> 0.1.3'
-  gem 'rspec-parameterized'
+  gem 'rspec-parameterized', require: false
 
   # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
   gem 'minitest', '~> 5.7.0'
@@ -334,13 +345,15 @@ group :development, :test do
   gem 'spring-commands-rspec', '~> 1.0.4'
   gem 'spring-commands-spinach', '~> 1.1.0'
 
-  gem 'rubocop', '~> 0.49.1', require: false
-  gem 'rubocop-rspec', '~> 1.15.1', require: false
-  gem 'rubocop-gitlab-security', '~> 0.1.0', require: false
-  gem 'scss_lint', '~> 0.54.0', require: false
+  gem 'gitlab-styles', '~> 2.3', require: false
+  # Pin these dependencies, otherwise a new rule could break the CI pipelines
+  gem 'rubocop', '~> 0.52.1'
+  gem 'rubocop-rspec', '~> 1.22.1'
+
+  gem 'scss_lint', '~> 0.56.0', require: false
   gem 'haml_lint', '~> 0.26.0', require: false
   gem 'simplecov', '~> 0.14.0', require: false
-  gem 'flay', '~> 2.8.0', require: false
+  gem 'flay', '~> 2.10.0', require: false
   gem 'bundler-audit', '~> 0.5.0', require: false
 
   gem 'benchmark-ips', '~> 2.3.0', require: false
@@ -379,9 +392,6 @@ gem 'ruby-prof', '~> 0.16.2'
 # OAuth
 gem 'oauth2', '~> 1.4'
 
-# Soft deletion
-gem 'paranoia', '~> 2.3.1'
-
 # Health check
 gem 'health_check', '~> 2.6.0'
 
@@ -400,16 +410,20 @@ group :ed25519 do
 end
 
 # Gitaly GRPC client
-gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
+gem 'gitaly-proto', '~> 0.84.0', require: 'gitaly'
+# Locked until https://github.com/google/protobuf/issues/4210 is closed
+gem 'google-protobuf', '= 3.5.1'
 
 gem 'toml-rb', '~> 0.3.15', require: false
 
 # Feature toggles
-gem 'flipper', '~> 0.10.2'
-gem 'flipper-active_record', '~> 0.10.2'
+gem 'flipper', '~> 0.11.0'
+gem 'flipper-active_record', '~> 0.11.0'
+gem 'flipper-active_support_cache_store', '~> 0.11.0'
 
 # Structured logging
 gem 'lograge', '~> 0.5'
 gem 'grape_logging', '~> 1.7'
 
-gem 'activerecord-nulldb-adapter'
+# Asset synchronization
+gem 'asset_sync', '~> 2.2.0'
diff --git a/pkgs/applications/version-management/gitlab/Gemfile.lock b/pkgs/applications/version-management/gitlab/Gemfile.lock
index c8915e9172c5..4022e2896116 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/Gemfile.lock
@@ -33,8 +33,6 @@ GEM
       activemodel (= 4.2.10)
       activesupport (= 4.2.10)
       arel (~> 6.0)
-    activerecord-nulldb-adapter (0.3.7)
-      activerecord (>= 2.0.0)
     activerecord_sane_schema_dumper (0.2)
       rails (>= 4, < 5)
     activesupport (4.2.10)
@@ -60,6 +58,11 @@ GEM
     asciidoctor (1.5.3)
     asciidoctor-plantuml (0.0.7)
       asciidoctor (~> 1.5)
+    asset_sync (2.2.0)
+      activemodel (>= 4.1.0)
+      fog-core
+      mime-types (>= 2.99)
+      unf
     ast (2.3.0)
     atomic (1.1.99)
     attr_encrypted (3.0.3)
@@ -75,7 +78,7 @@ GEM
       thread_safe (~> 0.3, >= 0.3.1)
     babosa (1.0.2)
     base32 (0.3.2)
-    batch-loader (1.1.1)
+    batch-loader (1.2.1)
     bcrypt (3.1.11)
     bcrypt_pbkdf (1.0.0)
     benchmark-ips (2.3.0)
@@ -192,10 +195,10 @@ GEM
     excon (0.57.1)
     execjs (2.6.0)
     expression_parser (0.9.0)
-    factory_girl (4.7.0)
+    factory_bot (4.8.2)
       activesupport (>= 3.0.0)
-    factory_girl_rails (4.7.0)
-      factory_girl (~> 4.7.0)
+    factory_bot_rails (4.8.2)
+      factory_bot (~> 4.8.2)
       railties (>= 3.0.0)
     faraday (0.12.2)
       multipart-post (>= 1.2, < 3)
@@ -204,18 +207,22 @@ GEM
     faraday_middleware-multi_json (0.0.6)
       faraday_middleware
       multi_json
+    fast_blank (1.0.0)
     fast_gettext (1.4.0)
     ffaker (2.4.0)
     ffi (1.9.18)
-    flay (2.8.1)
+    flay (2.10.0)
       erubis (~> 2.7.0)
       path_expander (~> 1.0)
       ruby_parser (~> 3.0)
       sexp_processor (~> 4.0)
-    flipper (0.10.2)
-    flipper-active_record (0.10.2)
+    flipper (0.11.0)
+    flipper-active_record (0.11.0)
       activerecord (>= 3.2, < 6)
-      flipper (~> 0.10.2)
+      flipper (~> 0.11.0)
+    flipper-active_support_cache_store (0.11.0)
+      activesupport (>= 3.2, < 6)
+      flipper (~> 0.11.0)
     flowdock (0.7.1)
       httparty (~> 0.7)
       multi_json
@@ -278,7 +285,7 @@ GEM
       po_to_json (>= 1.0.0)
       rails (>= 3.2.0)
     gherkin-ruby (0.3.2)
-    gitaly-proto (0.59.0)
+    gitaly-proto (0.84.0)
       google-protobuf (~> 3.1)
       grpc (~> 1.0)
     github-linguist (4.7.6)
@@ -297,6 +304,10 @@ GEM
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
     gitlab-markup (1.6.3)
+    gitlab-styles (2.3.2)
+      rubocop (~> 0.51)
+      rubocop-gitlab-security (~> 0.1.0)
+      rubocop-rspec (~> 1.19)
     gitlab_omniauth-ldap (2.0.4)
       net-ldap (~> 0.16)
       omniauth (~> 1.3)
@@ -329,7 +340,9 @@ GEM
       mime-types (~> 3.0)
       representable (~> 3.0)
       retriable (>= 2.0, < 4.0)
-    google-protobuf (3.4.1.1)
+    google-protobuf (3.5.1)
+    googleapis-common-protos-types (1.0.1)
+      google-protobuf (~> 3.0)
     googleauth (0.5.3)
       faraday (~> 0.12)
       jwt (~> 1.4)
@@ -356,9 +369,10 @@ GEM
       rake
     grape_logging (1.7.0)
       grape
-    grpc (1.4.5)
+    grpc (1.8.3)
       google-protobuf (~> 3.1)
-      googleauth (~> 0.5.1)
+      googleapis-common-protos-types (~> 1.0.0)
+      googleauth (>= 0.5.1, < 0.7)
     haml (4.0.7)
       tilt
     haml_lint (0.26.0)
@@ -495,11 +509,11 @@ GEM
     mustermann (1.0.0)
     mustermann-grape (1.0.0)
       mustermann (~> 1.0.0)
-    mysql2 (0.4.5)
+    mysql2 (0.4.10)
     net-ldap (0.16.0)
     net-ssh (4.1.0)
     netrc (0.11.0)
-    nokogiri (1.8.1)
+    nokogiri (1.8.2)
       mini_portile2 (~> 2.3.0)
     numerizer (0.1.1)
     oauth (0.5.1)
@@ -515,8 +529,8 @@ GEM
     omniauth (1.4.2)
       hashie (>= 1.2, < 4)
       rack (>= 1.0, < 3)
-    omniauth-auth0 (1.4.1)
-      omniauth-oauth2 (~> 1.1)
+    omniauth-auth0 (2.0.0)
+      omniauth-oauth2 (~> 1.4)
     omniauth-authentiq (0.3.1)
       omniauth-oauth2 (~> 1.3, >= 1.3.1)
     omniauth-azure-oauth2 (0.0.9)
@@ -569,14 +583,12 @@ GEM
       rubypants (~> 0.2)
     orm_adapter (0.5.0)
     os (0.9.6)
-    parallel (1.12.0)
-    paranoia (2.3.1)
-      activerecord (>= 4.0, < 5.2)
+    parallel (1.12.1)
     parser (2.4.0.2)
       ast (~> 2.3)
     parslet (1.5.0)
       blankslate (~> 2.0)
-    path_expander (1.0.1)
+    path_expander (1.0.2)
     peek (1.0.1)
       concurrent-ruby (>= 0.9.0)
       concurrent-ruby-ext (>= 0.9.0)
@@ -624,7 +636,7 @@ GEM
       parser
       unparser
     procto (0.0.3)
-    prometheus-client-mmap (0.7.0.beta43)
+    prometheus-client-mmap (0.9.1)
     pry (0.10.4)
       coderay (~> 1.1.0)
       method_source (~> 0.8.1)
@@ -641,7 +653,7 @@ GEM
       rack (>= 0.4)
     rack-attack (4.4.1)
       rack
-    rack-cors (0.4.0)
+    rack-cors (1.0.2)
     rack-oauth2 (1.2.3)
       activesupport (>= 2.3)
       attr_required (>= 0.0.5)
@@ -685,6 +697,9 @@ GEM
       rake
     raindrops (0.18.0)
     rake (12.3.0)
+    rb-fsevent (0.10.2)
+    rb-inotify (0.9.10)
+      ffi (>= 0.5.0, < 2)
     rblineprof (0.3.6)
       debugger-ruby_core_source (~> 1.3)
     rbnacl (4.0.2)
@@ -698,7 +713,7 @@ GEM
       json
     recursive-open-struct (1.0.0)
     redcarpet (3.4.0)
-    redis (3.3.3)
+    redis (3.3.5)
     redis-actionpack (5.0.2)
       actionpack (>= 4.0, < 6)
       redis-rack (>= 1, < 3)
@@ -771,21 +786,21 @@ GEM
       pg
       rails
       sqlite3
-    rubocop (0.49.1)
+    rubocop (0.52.1)
       parallel (~> 1.10)
-      parser (>= 2.3.3.1, < 3.0)
+      parser (>= 2.4.0.2, < 3.0)
       powerpack (~> 0.1)
-      rainbow (>= 1.99.1, < 3.0)
+      rainbow (>= 2.2.2, < 4.0)
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
-    rubocop-gitlab-security (0.1.0)
-      rubocop (>= 0.47.1)
-    rubocop-rspec (1.15.1)
-      rubocop (>= 0.42.0)
+    rubocop-gitlab-security (0.1.1)
+      rubocop (>= 0.51)
+    rubocop-rspec (1.22.1)
+      rubocop (>= 0.52.1)
     ruby-fogbugz (0.2.1)
       crack (~> 0.4)
     ruby-prof (0.16.2)
-    ruby-progressbar (1.8.1)
+    ruby-progressbar (1.9.0)
     ruby-saml (1.4.1)
       nokogiri (>= 1.5.10)
     ruby_parser (3.9.0)
@@ -799,7 +814,11 @@ GEM
     safe_yaml (1.0.4)
     sanitize (2.1.0)
       nokogiri (>= 1.4.4)
-    sass (3.4.22)
+    sass (3.5.5)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
     sass-rails (5.0.6)
       railties (>= 4.0.0, < 6)
       sass (~> 3.1)
@@ -809,11 +828,11 @@ GEM
     sawyer (0.8.1)
       addressable (>= 2.3.5, < 2.6)
       faraday (~> 0.8, < 1.0)
-    scss_lint (0.54.0)
+    scss_lint (0.56.0)
       rake (>= 0.9, < 13)
-      sass (~> 3.4.20)
+      sass (~> 3.5.3)
     securecompare (1.0.0)
-    seed-fu (2.3.6)
+    seed-fu (2.3.7)
       activerecord (>= 3.1)
       activesupport (>= 3.1)
     select2-rails (3.5.9.3)
@@ -829,11 +848,11 @@ GEM
       rack
     shoulda-matchers (3.1.2)
       activesupport (>= 4.0.0)
-    sidekiq (5.0.4)
+    sidekiq (5.0.5)
       concurrent-ruby (~> 1.0)
       connection_pool (~> 2.2, >= 2.2.0)
       rack-protection (>= 1.5.0)
-      redis (~> 3.3, >= 3.3.3)
+      redis (>= 3.3.4, < 5)
     sidekiq-cron (0.6.0)
       rufus-scheduler (>= 3.3.0)
       sidekiq (>= 4.2.1)
@@ -969,7 +988,6 @@ PLATFORMS
 DEPENDENCIES
   RedCloth (~> 4.3.2)
   ace-rails-ap (~> 4.1.0)
-  activerecord-nulldb-adapter
   activerecord_sane_schema_dumper (= 0.2)
   acts-as-taggable-on (~> 4.0)
   addressable (~> 2.5.2)
@@ -978,11 +996,12 @@ DEPENDENCIES
   asana (~> 0.6.0)
   asciidoctor (~> 1.5.2)
   asciidoctor-plantuml (= 0.0.7)
+  asset_sync (~> 2.2.0)
   attr_encrypted (~> 3.0.0)
   awesome_print (~> 1.2.0)
   babosa (~> 1.0.2)
   base32 (~> 0.3.0)
-  batch-loader
+  batch-loader (~> 1.2.1)
   bcrypt_pbkdf (~> 1.0)
   benchmark-ips (~> 2.3.0)
   better_errors (~> 2.1.0)
@@ -1014,12 +1033,14 @@ DEPENDENCIES
   dropzonejs-rails (~> 0.7.1)
   email_reply_trimmer (~> 0.1)
   email_spec (~> 1.6.0)
-  factory_girl_rails (~> 4.7.0)
+  factory_bot_rails (~> 4.8.2)
   faraday (~> 0.12)
+  fast_blank
   ffaker (~> 2.4)
-  flay (~> 2.8.0)
-  flipper (~> 0.10.2)
-  flipper-active_record (~> 0.10.2)
+  flay (~> 2.10.0)
+  flipper (~> 0.11.0)
+  flipper-active_record (~> 0.11.0)
+  flipper-active_support_cache_store (~> 0.11.0)
   fog-aliyun (~> 0.2.0)
   fog-aws (~> 1.4)
   fog-core (~> 1.44)
@@ -1035,15 +1056,17 @@ DEPENDENCIES
   gettext (~> 3.2.2)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.2.0)
-  gitaly-proto (~> 0.59.0)
+  gitaly-proto (~> 0.84.0)
   github-linguist (~> 4.7.0)
   gitlab-flowdock-git-hook (~> 1.0.1)
   gitlab-markup (~> 1.6.2)
+  gitlab-styles (~> 2.3)
   gitlab_omniauth-ldap (~> 2.0.4)
   gollum-lib (~> 4.2)
   gollum-rugged_adapter (~> 0.4.4)
   gon (~> 6.1.0)
   google-api-client (~> 0.13.6)
+  google-protobuf (= 3.5.1)
   gpgme
   grape (~> 1.0)
   grape-entity (~> 0.6.0)
@@ -1075,15 +1098,15 @@ DEPENDENCIES
   method_source (~> 0.8)
   minitest (~> 5.7.0)
   mousetrap-rails (~> 1.4.6)
-  mysql2 (~> 0.4.5)
+  mysql2 (~> 0.4.10)
   net-ldap
   net-ssh (~> 4.1.0)
-  nokogiri (~> 1.8.1)
+  nokogiri (~> 1.8.2)
   oauth2 (~> 1.4)
   octokit (~> 4.6.2)
   oj (~> 2.17.4)
   omniauth (~> 1.4.2)
-  omniauth-auth0 (~> 1.4.1)
+  omniauth-auth0 (~> 2.0.0)
   omniauth-authentiq (~> 0.3.1)
   omniauth-azure-oauth2 (~> 0.0.9)
   omniauth-cas3 (~> 1.1.4)
@@ -1098,7 +1121,6 @@ DEPENDENCIES
   omniauth-twitter (~> 1.2.0)
   omniauth_crowd (~> 2.2.0)
   org-ruby (~> 0.9.12)
-  paranoia (~> 2.3.1)
   peek (~> 1.0.1)
   peek-gc (~> 0.0.2)
   peek-host (~> 1.0.0)
@@ -1110,11 +1132,11 @@ DEPENDENCIES
   peek-sidekiq (~> 1.0.3)
   pg (~> 0.18.2)
   premailer-rails (~> 1.9.7)
-  prometheus-client-mmap (~> 0.7.0.beta43)
+  prometheus-client-mmap (~> 0.9.1)
   pry-byebug (~> 3.4.1)
   pry-rails (~> 0.3.4)
   rack-attack (~> 4.4.1)
-  rack-cors (~> 0.4.0)
+  rack-cors (~> 1.0.0)
   rack-oauth2 (~> 1.2.1)
   rack-proxy (~> 0.6.0)
   rails (= 4.2.10)
@@ -1141,9 +1163,8 @@ DEPENDENCIES
   rspec-retry (~> 0.4.5)
   rspec-set (~> 0.1.3)
   rspec_profiling (~> 0.0.5)
-  rubocop (~> 0.49.1)
-  rubocop-gitlab-security (~> 0.1.0)
-  rubocop-rspec (~> 1.15.1)
+  rubocop (~> 0.52.1)
+  rubocop-rspec (~> 1.22.1)
   ruby-fogbugz (~> 0.2.1)
   ruby-prof (~> 0.16.2)
   ruby_parser (~> 3.8)
@@ -1151,8 +1172,8 @@ DEPENDENCIES
   rugged (~> 0.26.0)
   sanitize (~> 2.0)
   sass-rails (~> 5.0.6)
-  scss_lint (~> 0.54.0)
-  seed-fu (= 2.3.6)
+  scss_lint (~> 0.56.0)
+  seed-fu (~> 2.3.7)
   select2-rails (~> 3.5.9)
   selenium-webdriver (~> 3.5)
   sentry-raven (~> 2.5.3)
@@ -1194,4 +1215,4 @@ DEPENDENCIES
   wikicloth (= 0.8.1)
 
 BUNDLED WITH
-   1.16.0
+   1.16.1
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index d13e61395827..1c3d1928a8b0 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -18,11 +18,11 @@ let
     };
   };
 
-  version = "10.3.4";
+  version = "10.5.6";
 
   gitlabDeb = fetchurl {
     url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
-    sha256 = "0b6508hcahvhfpxyrqs05kz9a7c1wv658asm6a7ccish6hnwcica";
+    sha256 = "1kml7iz4q9g5gcfqqarivlnkmkmq9250wgm95yi4rgzynb5jndd0";
   };
 
 in
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     owner = "gitlabhq";
     repo = "gitlabhq";
     rev = "v${version}";
-    sha256 = "0cvp4wwkc04qffsq738867j31igwzj7zlmahdl24yddbmpa5x8r1";
+    sha256 = "059h63jn552fcir2dgsjv85zv1ihbyiwzws4h2j15mwj2cdpjkh0";
   };
 
   buildInputs = [
@@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./remove-hardcoded-locations.patch
-    ./nulladapter.patch
     ./fix-36783.patch
   ];
 
@@ -59,6 +58,8 @@ stdenv.mkDerivation rec {
     substituteInPlace app/controllers/admin/background_jobs_controller.rb \
         --replace "ps -U" "${procps}/bin/ps -U"
 
+    sed -i '/ask_to_continue/d' lib/tasks/gitlab/two_factor.rake
+
     # required for some gems:
     cat > config/database.yml <<EOF
       production:
diff --git a/pkgs/applications/version-management/gitlab/gemset.nix b/pkgs/applications/version-management/gitlab/gemset.nix
index fe861e143046..4a021f5f2d97 100644
--- a/pkgs/applications/version-management/gitlab/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gemset.nix
@@ -69,15 +69,6 @@
     };
     version = "4.2.10";
   };
-  activerecord-nulldb-adapter = {
-    dependencies = ["activerecord"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1dxk26drn3s0mpyk8ir30k1pg5fqndrnsdjkkncn0acylq4ja27z";
-      type = "gem";
-    };
-    version = "0.3.7";
-  };
   activerecord_sane_schema_dumper = {
     dependencies = ["rails"];
     source = {
@@ -173,6 +164,15 @@
     };
     version = "0.0.7";
   };
+  asset_sync = {
+    dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "044nqqnbib1bpld33j5jxcql06d6fr6zmhq8hlm69zqd0xd509p0";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
   ast = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -251,10 +251,10 @@
   batch-loader = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w4ysjfh74612wsgdnnaq3xqw25hzsr6ajb5syiv1ix7fi15y8bv";
+      sha256 = "1nvmwzn8q6dkp2n8wz47z7gldj3yrj7h6syy0cwrkzi19bfvxba2";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.2.1";
   };
   bcrypt = {
     source = {
@@ -803,23 +803,23 @@
     };
     version = "0.9.0";
   };
-  factory_girl = {
+  factory_bot = {
     dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xzl4z9z390fsnyxp10c9if2n46zan3n6zwwpfnwc33crv4s410i";
+      sha256 = "0r975ba6y0mcy3aya099gpnjn5gf1h6fbw8f3smmjay5zvin3nwx";
       type = "gem";
     };
-    version = "4.7.0";
+    version = "4.8.2";
   };
-  factory_girl_rails = {
-    dependencies = ["factory_girl" "railties"];
+  factory_bot_rails = {
+    dependencies = ["factory_bot" "railties"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hzpirb33xdqaz44i1mbcfv0icjrghhgaz747llcfsflljd4pa4r";
+      sha256 = "0cdbp12ih2w77l331frv8gv6bv9dinn1663dy1jn0gb9ss1hwvs2";
       type = "gem";
     };
-    version = "4.7.0";
+    version = "4.8.2";
   };
   faraday = {
     dependencies = ["multipart-post"];
@@ -848,6 +848,14 @@
     };
     version = "0.0.6";
   };
+  fast_blank = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16s1ilyvwzmkcgmklbrn0c2pch5n02vf921njx0bld4crgdr6z56";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
   fast_gettext = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -876,27 +884,36 @@
     dependencies = ["erubis" "path_expander" "ruby_parser" "sexp_processor"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x563gyx292ka3awps6h6hmswqf71zdxnzw0pfv6p2mhd2zwxaba";
+      sha256 = "0rzggr9w6z2jvs3mv0bp7d64yjivpp93ww9g4j9azzcfjqnh9hn3";
       type = "gem";
     };
-    version = "2.8.1";
+    version = "2.10.0";
   };
   flipper = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gbvd4j0rkr7qc3mnjdw4r9p6lffnwv7rvm1cyr8a0avjky34n8p";
+      sha256 = "0j3zn54x0a6vvjmyhggl992df7zpcrhzv9ibr6af5gkcx502pg87";
       type = "gem";
     };
-    version = "0.10.2";
+    version = "0.11.0";
   };
   flipper-active_record = {
     dependencies = ["activerecord" "flipper"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "053lq791z8bf3xv6kb14nq3yrzjpmlyhzq3kvys978dc8yw78ld7";
+      sha256 = "0bm1wh1nrl6zbrcqk1nyqbrpddd5fvi72jyqv1j7y2df5sqwfj91";
       type = "gem";
     };
-    version = "0.10.2";
+    version = "0.11.0";
+  };
+  flipper-active_support_cache_store = {
+    dependencies = ["activesupport" "flipper"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18w11dmby55cyd4azic1nsb7h632y6nx3ka8ndlrd1g6g28afvfb";
+      type = "gem";
+    };
+    version = "0.11.0";
   };
   flowdock = {
     dependencies = ["httparty" "multi_json"];
@@ -1088,10 +1105,10 @@
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
+      sha256 = "05ql75gbcw8px03y4pjvbnfy272mh68777f4m3sfajr1jjjp4lw8";
       type = "gem";
     };
-    version = "0.59.0";
+    version = "0.84.0";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@@ -1136,6 +1153,15 @@
     };
     version = "1.6.3";
   };
+  gitlab-styles = {
+    dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m0ihbp7kjis03pcdx5310j7nzsxh22hfailnz0j467zab9jiap0";
+      type = "gem";
+    };
+    version = "2.3.2";
+  };
   gitlab_omniauth-ldap = {
     dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
     source = {
@@ -1202,10 +1228,19 @@
   google-protobuf = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1l9b2f4msp1gkay2mqjbjs7kfhchf916zh1y365singiysrwn2i6";
+      sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
       type = "gem";
     };
-    version = "3.4.1.1";
+    version = "3.5.1";
+  };
+  googleapis-common-protos-types = {
+    dependencies = ["google-protobuf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
+      type = "gem";
+    };
+    version = "1.0.1";
   };
   googleauth = {
     dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
@@ -1262,13 +1297,13 @@
     version = "1.7.0";
   };
   grpc = {
-    dependencies = ["google-protobuf" "googleauth"];
+    dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zhci260088zlghpaz6ania1blz1dd7lgklsjnqk1vcymhpr6b38";
+      sha256 = "0fpbxzqacmc78m7whbv3vyfsfyk3cnfbppsy4789mwrlnbnfnp1j";
       type = "gem";
     };
-    version = "1.4.5";
+    version = "1.8.3";
   };
   haml = {
     dependencies = ["tilt"];
@@ -1803,10 +1838,10 @@
   mysql2 = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1kh96xp396swyaddz5l2zqjxi3cvyqv62scak9b3f98j14ynfscl";
+      sha256 = "0qjd97w6a0w9aldsrhb2y6jrc4wnnlbj5j8kcl7pp7vviwa0r5iq";
       type = "gem";
     };
-    version = "0.4.5";
+    version = "0.4.10";
   };
   net-ldap = {
     source = {
@@ -1836,10 +1871,10 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "105xh2zkr8nsyfaj2izaisarpnkrrl9000y3nyflg9cbzrfxv021";
+      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "1.8.2";
   };
   numerizer = {
     source = {
@@ -1896,10 +1931,10 @@
     dependencies = ["omniauth-oauth2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0dhfl01519q1cp4w0ml481j1cg05g7qvam0x4ia9jhdz8yx6npfs";
+      sha256 = "0id5gn14av81kh41cq4q6c9knyvzl7vc4rs3m4pmpd43g2z6jdw2";
       type = "gem";
     };
-    version = "1.4.1";
+    version = "2.0.0";
   };
   omniauth-authentiq = {
     dependencies = ["omniauth-oauth2"];
@@ -2073,19 +2108,10 @@
   parallel = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qv2yj4sxr36ga6xdxvbq9h05hn10bwcbkqv6j6q1fiixhsdnnzd";
-      type = "gem";
-    };
-    version = "1.12.0";
-  };
-  paranoia = {
-    dependencies = ["activerecord"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1ibdga0a0px8rf82qnmgm59z3z4s27r11i2i24087f0yh8z8bd7z";
+      sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
       type = "gem";
     };
-    version = "2.3.1";
+    version = "1.12.1";
   };
   parser = {
     dependencies = ["ast"];
@@ -2108,10 +2134,10 @@
   path_expander = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hklnfb0br6mx6l25zknz2zj6r152i0jiy6fn6ki220x0l5m2h59";
+      sha256 = "0wsymhprfjazdkmfv02kski3iwjjkciwxqjg9brh56sbymcgk34a";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.0.2";
   };
   peek = {
     dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "railties"];
@@ -2265,10 +2291,10 @@
   prometheus-client-mmap = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wpk9zfbr7c1asvnq1v6jmc3ydbl8y17v24cj4vyhy3nkpds0cij";
+      sha256 = "1p3xkk9zal95di5v999mk7sq02fk0fimg633ixvhvv70ph6c8dhn";
       type = "gem";
     };
-    version = "0.7.0.beta43";
+    version = "0.9.1";
   };
   pry = {
     dependencies = ["coderay" "method_source" "slop"];
@@ -2342,10 +2368,10 @@
   rack-cors = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sz9d9gjmv2vjl3hddzk269hb1k215k8sp37gicphx82h3chk1kw";
+      sha256 = "1j27vy1bmhbqcyzhxg8d07qassmax769xjalfwcwz6qfiq8cf013";
       type = "gem";
     };
-    version = "0.4.0";
+    version = "1.0.2";
   };
   rack-oauth2 = {
     dependencies = ["activesupport" "attr_required" "httpclient" "multi_json" "rack"];
@@ -2462,6 +2488,23 @@
     };
     version = "12.3.0";
   };
+  rb-fsevent = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
+      type = "gem";
+    };
+    version = "0.9.10";
+  };
   rblineprof = {
     dependencies = ["debugger-ruby_core_source"];
     source = {
@@ -2542,10 +2585,10 @@
   redis = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0kdj7511l6kqvqmaiw7kw604c83pk6f4b540gdsq1bf7yxm6qx6g";
+      sha256 = "0i415x8gi0c5vsiy6ikvx5js6fhc4x80a5lqv8iidy2iymd20irv";
       type = "gem";
     };
-    version = "3.3.3";
+    version = "3.3.5";
   };
   redis-actionpack = {
     dependencies = ["actionpack" "redis-rack" "redis-store"];
@@ -2778,28 +2821,28 @@
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mqyylfzch0967w7nfnqza84sqhljijd9y4bnq8hcmrscch75cxw";
+      sha256 = "0d22rr1jnjfkw10rbnqb8plyd7kzf553nm3sbv14xil65s4mkijf";
       type = "gem";
     };
-    version = "0.49.1";
+    version = "0.52.1";
   };
   rubocop-gitlab-security = {
     dependencies = ["rubocop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0aw9qmyc6xj6fi0jxp8m4apk358rd91z492ragn6jp4rghkqj5cy";
+      sha256 = "0v0040kpx46fxz3p7dsdjgvsx89qjhwy17n8vxnqg9a7g1rfvxln";
       type = "gem";
     };
-    version = "0.1.0";
+    version = "0.1.1";
   };
   rubocop-rspec = {
     dependencies = ["rubocop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "16qgakivl2vqbx82fm78999cximbb10jbz3ix1ga4a2rns5xxlf3";
+      sha256 = "18rd3w2q07vkfdk9nl8apkpyjfw1478qg82zgfnd4hn3r40jkbcx";
       type = "gem";
     };
-    version = "1.15.1";
+    version = "1.22.1";
   };
   ruby-fogbugz = {
     dependencies = ["crack"];
@@ -2821,10 +2864,10 @@
   ruby-progressbar = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qzc7s7r21bd7ah06kskajc2bjzkr9y0v5q48y0xwh2l55axgplm";
+      sha256 = "1igh1xivf5h5g3y5m9b4i4j2mhz2r43kngh4ww3q1r80ch21nbfk";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "1.9.0";
   };
   ruby-saml = {
     dependencies = ["nokogiri"];
@@ -2903,12 +2946,22 @@
     version = "2.1.0";
   };
   sass = {
+    dependencies = ["sass-listen"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0dkj6v26fkg1g0majqswwmhxva7cd6p3psrhdlx93qal72dssywy";
+      sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
       type = "gem";
     };
-    version = "3.4.22";
+    version = "3.5.5";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
+      type = "gem";
+    };
+    version = "4.0.0";
   };
   sass-rails = {
     dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"];
@@ -2932,10 +2985,10 @@
     dependencies = ["rake" "sass"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01lwbrz7637j79jkm6yaq4wsd4cqgzn0r74whn85v7j9dir73l98";
+      sha256 = "01bfkrjn1i0hfg1ifwn1rs7vqwdbdw158krwr5fm6iasd9zgl10g";
       type = "gem";
     };
-    version = "0.54.0";
+    version = "0.56.0";
   };
   securecompare = {
     source = {
@@ -2949,10 +3002,10 @@
     dependencies = ["activerecord" "activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nkp1pvkdydclbl2v4qf9cixmiycvlqnrgxd61sv9r85spb01z3p";
+      sha256 = "0x6gclryl0hds3zms095d2iyafcvm2kfrm7362vrkxws7r2775pi";
       type = "gem";
     };
-    version = "2.3.6";
+    version = "2.3.7";
   };
   select2-rails = {
     dependencies = ["thor"];
@@ -3019,10 +3072,10 @@
     dependencies = ["concurrent-ruby" "connection_pool" "rack-protection" "redis"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nazi3a9aq7c7cxk749qz9ilp7dv39r9n3zsbjg4frc96bb85s9w";
+      sha256 = "0mmmv6k4l5rd74zw4xmwsadi0pbbcyzk1cm73zd8fzwra6nfz7sh";
       type = "gem";
     };
-    version = "5.0.4";
+    version = "5.0.5";
   };
   sidekiq-cron = {
     dependencies = ["rufus-scheduler" "sidekiq"];
@@ -3537,4 +3590,4 @@
     };
     version = "2.1.0";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/nulladapter.patch b/pkgs/applications/version-management/gitlab/nulladapter.patch
deleted file mode 100644
index a495ce63cc59..000000000000
--- a/pkgs/applications/version-management/gitlab/nulladapter.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff --git a/Gemfile b/Gemfile
-index 4861171ef5..f6e701c548 100644
---- a/Gemfile
-+++ b/Gemfile
-@@ -1,5 +1,7 @@
- source 'https://rubygems.org'
- 
-+gem 'activerecord-nulldb-adapter'
-+
- gem 'rails', '4.2.10'
- gem 'rails-deprecated_sanitizer', '~> 1.0.3'
- 
-diff --git a/Gemfile.lock b/Gemfile.lock
-index 38944248f9..08ce4486ba 100644
---- a/Gemfile.lock
-+++ b/Gemfile.lock
-@@ -33,6 +33,8 @@ GEM
-       activemodel (= 4.2.8)
-       activesupport (= 4.2.8)
-       arel (~> 6.0)
-+    activerecord-nulldb-adapter (0.3.7)
-+      activerecord (>= 2.0.0)
-     activerecord_sane_schema_dumper (0.2)
-       rails (>= 4, < 5)
-     activesupport (4.2.8)
-@@ -963,6 +965,7 @@ PLATFORMS
- DEPENDENCIES
-   RedCloth (~> 4.3.2)
-   ace-rails-ap (~> 4.1.0)
-+  activerecord-nulldb-adapter
-   activerecord_sane_schema_dumper (= 0.2)
-   acts-as-taggable-on (~> 4.0)
-   addressable (~> 2.5.2)
diff --git a/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch b/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
index acc615c63ca5..7a2bfea0c109 100644
--- a/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
+++ b/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
@@ -1,8 +1,8 @@
 diff --git a/config/environments/production.rb b/config/environments/production.rb
-index c5cbfcf64c..e40f10e25f 100644
+index c5cbfcf64c..4d01f6fab8 100644
 --- a/config/environments/production.rb
 +++ b/config/environments/production.rb
-@@ -70,14 +70,16 @@ Rails.application.configure do
+@@ -70,10 +70,10 @@ Rails.application.configure do
  
    config.action_mailer.delivery_method = :sendmail
    # Defaults to:
@@ -11,23 +11,17 @@ index c5cbfcf64c..e40f10e25f 100644
 -  # #   arguments: '-i -t'
 -  # # }
 +  config.action_mailer.sendmail_settings = {
-+    location: '/run/wrappers/bin/sendmail',
++    location: '/usr/sbin/sendmail',
 +    arguments: '-i -t'
 +  }
    config.action_mailer.perform_deliveries = true
    config.action_mailer.raise_delivery_errors = true
  
-   config.eager_load = true
- 
-   config.allow_concurrency = false
-+
-+  config.active_record.dump_schema_after_migration = false
- end
 diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
-index 0b33783869..cd4e41d9bd 100644
+index bd696a7f2c..44e3863736 100644
 --- a/config/gitlab.yml.example
 +++ b/config/gitlab.yml.example
-@@ -574,7 +574,7 @@ production: &base
+@@ -590,7 +590,7 @@ production: &base
    # CAUTION!
    # Use the default values unless you really know what you are doing
    git:
@@ -37,10 +31,10 @@ index 0b33783869..cd4e41d9bd 100644
    ## Webpack settings
    # If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
 diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb
-index 8ddf8e4d2e..559cf9adf7 100644
+index 0bea8a4f4b..290248547b 100644
 --- a/config/initializers/1_settings.rb
 +++ b/config/initializers/1_settings.rb
-@@ -252,7 +252,7 @@ Settings.gitlab['user']       ||= 'git'
+@@ -255,7 +255,7 @@ Settings.gitlab['user']       ||= 'git'
  Settings.gitlab['user_home']  ||= begin
    Etc.getpwnam(Settings.gitlab['user']).dir
  rescue ArgumentError # no user configured
@@ -49,7 +43,7 @@ index 8ddf8e4d2e..559cf9adf7 100644
  end
  Settings.gitlab['time_zone'] ||= nil
  Settings.gitlab['signup_enabled'] ||= true if Settings.gitlab['signup_enabled'].nil?
-@@ -491,7 +491,7 @@ Settings.backup['upload']['storage_class'] ||= nil
+@@ -507,7 +507,7 @@ Settings.backup['upload']['storage_class'] ||= nil
  # Git
  #
  Settings['git'] ||= Settingslogic.new({})
@@ -58,29 +52,42 @@ index 8ddf8e4d2e..559cf9adf7 100644
  
  # Important: keep the satellites.path setting until GitLab 9.0 at
  # least. This setting is fed to 'rm -rf' in
+diff --git a/lib/api/api.rb b/lib/api/api.rb
+index e953f3d2ec..3a8d9f076b 100644
+--- a/lib/api/api.rb
++++ b/lib/api/api.rb
+@@ -2,7 +2,7 @@ module API
+   class API < Grape::API
+     include APIGuard
+ 
+-    LOG_FILENAME = Rails.root.join("log", "api_json.log")
++    LOG_FILENAME = File.join(ENV["GITLAB_LOG_PATH"], "api_json.log")
+ 
+     NO_SLASH_URL_PART_REGEX = %r{[^/]+}
+     PROJECT_ENDPOINT_REQUIREMENTS = { id: NO_SLASH_URL_PART_REGEX }.freeze
 diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb
-index 59b21149a9..4f4a39a06c 100644
+index a42e312b5d..ccaab9229e 100644
 --- a/lib/gitlab/logger.rb
 +++ b/lib/gitlab/logger.rb
-@@ -26,7 +26,7 @@
+@@ -26,7 +26,7 @@ module Gitlab
      end
  
      def self.full_log_path
 -      Rails.root.join("log", file_name)
-+      File.join(ENV["GITLAB_LOG_PATH"], file_name)
++        File.join(ENV["GITLAB_LOG_PATH"], file_name)
      end
  
      def self.cache_key
 diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb
-index b5f4124052..f72c556983 100644
+index 7d7400bdab..cb25211d44 100644
 --- a/lib/gitlab/uploads_transfer.rb
 +++ b/lib/gitlab/uploads_transfer.rb
 @@ -1,7 +1,7 @@
  module Gitlab
    class UploadsTransfer < ProjectTransfer
      def root_dir
--      File.join(CarrierWave.root, FileUploader.base_dir)
-+      ENV['GITLAB_UPLOADS_PATH'] || File.join(CarrierWave.root, FileUploader.base_dir)
+-      FileUploader.root
++      ENV['GITLAB_UPLOADS_PATH'] || FileUploader.root
      end
    end
  end
@@ -98,7 +105,7 @@ index 3e0c436d6e..28cefc5514 100644
      end
    end
 diff --git a/lib/system_check/app/uploads_directory_exists_check.rb b/lib/system_check/app/uploads_directory_exists_check.rb
-index 7026d0ba07..6d88b8b9fb 100644
+index 7026d0ba07..c56e1f7ed9 100644
 --- a/lib/system_check/app/uploads_directory_exists_check.rb
 +++ b/lib/system_check/app/uploads_directory_exists_check.rb
 @@ -4,12 +4,13 @@ module SystemCheck
@@ -113,7 +120,7 @@ index 7026d0ba07..6d88b8b9fb 100644
 +        uploads_dir = ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads')
          try_fixing_it(
 -          "sudo -u #{gitlab_user} mkdir #{Rails.root}/public/uploads"
-+          "sudo -u #{gitlab_user} mkdir #{uploads_dir}"
++            "sudo -u #{gitlab_user} mkdir #{uploads_dir}"
          )
          for_more_information(
            see_installation_guide_section 'GitLab'
@@ -143,14 +150,3 @@ index b276a81eac..070e3ebd81 100644
        end
      end
    end
---- a/lib/api/api.rb	1970-01-01 01:00:01.000000000 +0100
-+++ b/lib/api/api.rb	2017-09-28 19:37:24.953605705 +0200
-@@ -2,7 +2,7 @@
-   class API < Grape::API
-     include APIGuard
- 
--    LOG_FILENAME = Rails.root.join("log", "api_json.log")
-+    LOG_FILENAME = File.join(ENV["GITLAB_LOG_PATH"], "api_json.log")
- 
-     use GrapeLogging::Middleware::RequestLogger,
-         logger: Logger.new(LOG_FILENAME),
diff --git a/pkgs/applications/video/openshot-qt/libopenshot.nix b/pkgs/applications/video/openshot-qt/libopenshot.nix
index 02a19c935e73..f84e2e83761a 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot.nix
@@ -8,13 +8,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "libopenshot-${version}";
-  version = "0.1.7";
+  version = "0.1.9";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot";
     rev = "v${version}";
-    sha256 = "1dk40qild8d3s99p2kkm0mjvxfxrz2wns7ij1brzqmcdnaxqdhlp";
+    sha256 = "0c7q5cfnp481ysyvgzznvix7j4licq9knwrb83g3xqs4cx573xr3";
   };
 
   patchPhase = ''