summary refs log tree commit diff
path: root/pkgs/applications/version-management/gitlab/default.nix
diff options
context:
space:
mode:
authorFranz Pletz <fpletz@fnordicwalking.de>2017-03-02 04:18:19 +0100
committerFranz Pletz <fpletz@fnordicwalking.de>2017-03-21 13:16:31 +0100
commit29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d (patch)
tree9d1c7f4379014ad53a8bfc3e29782ea3b5e4ac9d /pkgs/applications/version-management/gitlab/default.nix
parent37c31c635d77c319c151905678983ae12789188e (diff)
downloadnixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar.gz
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar.bz2
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar.lz
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar.xz
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.tar.zst
nixlib-29f57ac4479fa5baed5bbbf29fe1b4eac7a86b4d.zip
gitlab: 8.16.6 -> 8.17.4 for CVE-2017-0882
Diffstat (limited to 'pkgs/applications/version-management/gitlab/default.nix')
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix30
1 files changed, 22 insertions, 8 deletions
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 60921fc54886..0e078950e665 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, bundler, fetchFromGitHub, bundlerEnv, libiconv, ruby
-, tzdata, git, nodejs, procps
+{ stdenv, lib, bundler, fetchurl, fetchFromGitHub, bundlerEnv, libiconv, ruby
+, tzdata, git, nodejs, procps, dpkg
 }:
 
 /* When updating the Gemfile add `gem "activerecord-nulldb-adapter"`
@@ -18,19 +18,27 @@ let
     };
   };
 
+  version = "8.17.4";
+
+  gitlabDeb = fetchurl {
+    url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
+    sha256 = "1fd6y9lyavzsm2ac10sip01dnvcd73ymcn2rqdljr4sq4f222mry";
+  };
+
 in
 
 stdenv.mkDerivation rec {
   name = "gitlab-${version}";
-  version = "8.16.6";
 
-  buildInputs = [ env ruby bundler tzdata git nodejs procps ];
+  buildInputs = [
+    env ruby bundler tzdata git nodejs procps dpkg
+  ];
 
   src = fetchFromGitHub {
     owner = "gitlabhq";
     repo = "gitlabhq";
     rev = "v${version}";
-    sha256 = "03rzms2frwx4c09l2rig1amlxj965s2iq421i52j8wj2khb7pd7g";
+    sha256 = "1yrbbf55pz7863xngl2mxwj9w4imdlqvmqywd1zpnswdsjqxa5xj";
   };
 
   patches = [
@@ -64,9 +72,15 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     mv config/gitlab.yml.example config/gitlab.yml
-    GITLAB_DATABASE_ADAPTER=nulldb \
-      SKIP_STORAGE_VALIDATION=true \
-      rake assets:precompile RAILS_ENV=production
+
+    dpkg -x ${gitlabDeb} .
+    mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public
+    rm -rf opt
+
+    export GITLAB_DATABASE_ADAPTER=nulldb
+    export SKIP_STORAGE_VALIDATION=true
+    rake assets:precompile RAILS_ENV=production
+
     mv config/gitlab.yml config/gitlab.yml.example
     rm config/secrets.yml
     mv config config.dist