summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2017-05-24 13:56:28 +0200
committerVladimír Čunát <vcunat@gmail.com>2017-05-24 13:56:28 +0200
commit78ea189a6b1c59e7c331fe57d1eb035b8977bdac (patch)
tree67f04910c45d8bdd1a4540f7777791bd04e7dc26 /pkgs/development
parent8004e794153b34507f81a26f88174bdfee975aa8 (diff)
parent760248360c1d3b2a0a648a76803180e7a6c13275 (diff)
downloadnixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar.gz
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar.bz2
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar.lz
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar.xz
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.tar.zst
nixlib-78ea189a6b1c59e7c331fe57d1eb035b8977bdac.zip
Merge branch 'master' into staging
... to fix *some* of the evaluation problems.
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/go/1.7.nix4
-rw-r--r--pkgs/development/compilers/go/1.8.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg-full/default.nix2
-rw-r--r--pkgs/development/libraries/ffmpeg/3.3.nix2
-rw-r--r--pkgs/development/python-modules/feedgenerator/default.nix22
-rw-r--r--pkgs/development/tools/build-managers/pants/default.nix50
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix14
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch25
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/v1-fix-shell-path.patch13
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/v1.nix10
10 files changed, 114 insertions, 32 deletions
diff --git a/pkgs/development/compilers/go/1.7.nix b/pkgs/development/compilers/go/1.7.nix
index 7ecae36a4d5a..d7a824239b84 100644
--- a/pkgs/development/compilers/go/1.7.nix
+++ b/pkgs/development/compilers/go/1.7.nix
@@ -24,13 +24,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "go-${version}";
-  version = "1.7.5";
+  version = "1.7.6";
 
   src = fetchFromGitHub {
     owner = "golang";
     repo = "go";
     rev = "go${version}";
-    sha256 = "00radlwbrssn0x3naamb33cfx7ap2jv7s51bqr705nmn2j5yyblk";
+    sha256 = "1gacjwbs1qbx8x84746qdxx2xwylirvd31ybgagfglfsl77vi4m2";
   };
 
   # perl is used for testing go vet
diff --git a/pkgs/development/compilers/go/1.8.nix b/pkgs/development/compilers/go/1.8.nix
index 24a40ca0ba0c..99744d76cd03 100644
--- a/pkgs/development/compilers/go/1.8.nix
+++ b/pkgs/development/compilers/go/1.8.nix
@@ -25,13 +25,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "go-${version}";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchFromGitHub {
     owner = "golang";
     repo = "go";
     rev = "go${version}";
-    sha256 = "1157mmzjpk887cpcpn2qy9c69anc22c4p3cjpl84zl7an41x660j";
+    sha256 = "0haazh0sk1zys1gbmbi128rmcyrd6f32amp6a872jqhadjlvj9qv";
   };
 
   # perl is used for testing go vet
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
index 848cae09ed47..47be28f51302 100644
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -234,7 +234,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
-    sha256 = "0bwgm6z6k3khb91qh9xv15inykkfchpkm0lcdckkxhkacpyaf0mp";
+    sha256 = "0c37bdqwmaziikr2d5pqp7504ail6i7a1mfcmc06mdpwfxxwvcpw";
   };
 
   patchPhase = ''patchShebangs .
diff --git a/pkgs/development/libraries/ffmpeg/3.3.nix b/pkgs/development/libraries/ffmpeg/3.3.nix
index 0227d7489ba9..d6380b795af8 100644
--- a/pkgs/development/libraries/ffmpeg/3.3.nix
+++ b/pkgs/development/libraries/ffmpeg/3.3.nix
@@ -7,6 +7,6 @@
 callPackage ./generic.nix (args // rec {
   version = "${branch}";
   branch = "3.3.1";
-  sha256 = "0bwgm6z6k3khb91qh9xv15inykkfchpkm0lcdckkxhkacpyaf0mp";
+  sha256 = "0c37bdqwmaziikr2d5pqp7504ail6i7a1mfcmc06mdpwfxxwvcpw";
   darwinFrameworks = [ Cocoa CoreMedia ];
 })
diff --git a/pkgs/development/python-modules/feedgenerator/default.nix b/pkgs/development/python-modules/feedgenerator/default.nix
new file mode 100644
index 000000000000..4a10b088d987
--- /dev/null
+++ b/pkgs/development/python-modules/feedgenerator/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, glibcLocales, fetchurl, six, pytz }:
+
+buildPythonPackage rec {
+  name = "feedgenerator-1.9";
+
+  src = fetchurl {
+    url = "mirror://pypi/f/feedgenerator/${name}.tar.gz";
+    sha256 = "01mirwkm7xfx539hmvj7g9da1j51gw5lsx74dr0glizskjm5vq2s";
+  };
+
+  buildInputs = [ glibcLocales ];
+
+  LC_ALL="en_US.UTF-8";
+
+  propagatedBuildInputs = [ six pytz ];
+
+  meta = with stdenv.lib; {
+    description = "Standalone version of django.utils.feedgenerator, compatible with Py3k";
+    homepage = https://github.com/dmdm/feedgenerator-py3k.git;
+    maintainers = with maintainers; [ garbas ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/pants/default.nix b/pkgs/development/tools/build-managers/pants/default.nix
index 624e273cc905..66d99c7fd938 100644
--- a/pkgs/development/tools/build-managers/pants/default.nix
+++ b/pkgs/development/tools/build-managers/pants/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pythonPackages }:
+{ stdenv, pythonPackages, runCommand, curl }:
 
 with stdenv.lib;
 with pythonPackages;
@@ -22,6 +22,38 @@ let
      maintainers = with maintainers; [ copumpkin ];
     };
   };
+
+  pants13-version = "1.3.0rc2";
+
+  # TODO: compile the rust native engine ourselves so we don't need to do this shit. We don't use
+  # fetchurl because we don't know the URL ahead of time, even though it's deterministic. So we have
+  # this downloader figure out the URL on the fly and then produce the deterministic result, so we
+  # can still be a fixed-output derivation.
+  pants13-native-engine-prefix = {
+    "x86_64-darwin" = "mac/10.11";
+    "x86_64-linux"  = "linux/x86_64";
+    "i686-linux"    = "linux/i386";
+  }.${stdenv.system} or (throw "Unsupported system ${stdenv.system}!");
+
+  pants13-native-engine = runCommand "pants-native-${pants13-version}" {
+    buildInputs    = [ curl ];
+    outputHashMode = "recursive";
+    outputHashAlgo = "sha256";
+    outputHash     = "0n8z7rg0yfpxplvcw88lwv733zkhbzhc4w4zd4aznbcmfqdiz5br";
+  } ''
+    native_version=$(curl -k -L https://raw.githubusercontent.com/pantsbuild/pants/release_${pants13-version}/src/python/pants/engine/subsystem/native_engine_version)
+    curl -kLO "https://dl.bintray.com/pantsbuild/bin/build-support/bin/native-engine/${pants13-native-engine-prefix}/$native_version/native_engine.so"
+
+    # Ugh it tries to "download" from this prefix so let's just replicate their directory structure for now...
+    mkdir -p $out/bin/native-engine/${pants13-native-engine-prefix}/$native_version/
+
+    # These should behave the same way in Nix land and we try not to differentiate between OS revisions...
+    mkdir -p $out/bin/native-engine/mac/
+    ln -s 10.11 $out/bin/native-engine/mac/10.10
+    ln -s 10.11 $out/bin/native-engine/mac/10.12
+
+    cp native_engine.so $out/bin/native-engine/${pants13-native-engine-prefix}/$native_version/
+  '';
 in {
   pants =
     pythonPackages.buildPythonPackage rec {
@@ -61,7 +93,7 @@ in {
 
   pants13-pre = buildPythonApplication rec {
     pname   = "pantsbuild.pants";
-    version = "1.3.0rc2";
+    version = pants13-version;
     name    = "${pname}-${version}";
 
     src = fetchPypi {
@@ -71,6 +103,9 @@ in {
 
     prePatch = ''
       sed -E -i "s/'([[:alnum:].-]+)[=><][[:digit:]=><.,]*'/'\\1'/g" setup.py
+
+      substituteInPlace src/pants/option/global_options.py \
+        --replace "'/etc/pantsrc'" "'$out/etc/pantsrc', '/etc/pantsrc'"
     '';
 
     # Unnecessary, and causes some really weird behavior around .class files, which
@@ -84,6 +119,17 @@ in {
       fasteners coverage pywatchman futures cffi
     ];
 
+    # Teach pants about where its native engine lives.
+    # TODO: there's probably a better way to teach it this without having it "download"
+    # from a local file: URL to its cache, but I don't know how and this seems to work.
+    postFixup = ''
+      mkdir -p $out/etc
+      cat >$out/etc/pantsrc <<EOF
+      [binaries]
+      baseurls: [ 'file://${pants13-native-engine}' ]
+      EOF
+    '';
+
     meta = {
       description = "A build system for software projects in a variety of languages";
       homepage    = "http://www.pantsbuild.org/";
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index d7f13de1d26b..e3f6e3c623ca 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
 
 let
-  version = "9.1.0";
+  version = "9.2.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
-    sha256 = "1mdcw755fygnf30v0gr13mx20zjqmxg5w2kj3k2jgcsh3gyrvymr";
+    sha256 = "0x6pwh3wjq2czvzb8rl8npa8a58snwf1f9dwr6rbbxijaf886jfc";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
-    sha256 = "1m5p6mlhy3xf0chrjlfpdyp24pv32b61s8iryh6a617i91vpzjg6";
+    sha256 = "1y6i5dn1l1qlwyg95qw4sff2y9zypxwmvsw4mb0555vf157h88kg";
   };
 in
 buildGoPackage rec {
@@ -29,9 +29,11 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-ci-multi-runner";
     rev = "v${version}";
-    sha256 = "0n8hcj2b1pb95x4bd7fb9ri43vgc4h2dj2v3iiziw2imqjyphfx4";
+    sha256 = "0gz6byjnnfn9acy40hcbyzdql4199xn0yvjx2cfjjjzd9kryjrxp";
   };
 
+  patches = [ ./fix-shell-path.patch ];
+
   buildInputs = [ go-bindata ];
 
   preBuild = ''
@@ -60,7 +62,7 @@ buildGoPackage rec {
     description = "GitLab Runner the continuous integration executor of GitLab";
     license = licenses.mit;
     homepage = "https://about.gitlab.com/gitlab-ci/";
-    platforms = platforms.unix;
-    maintainers = [ lib.maintainers.bachp ];
+    platforms = platforms.unix ++ platforms.darwin;
+    maintainers = with maintainers; [ bachp zimbatm ];
   };
 }
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch b/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch
new file mode 100644
index 000000000000..8f71f9ed630c
--- /dev/null
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch
@@ -0,0 +1,25 @@
+diff --git a/shells/bash.go b/shells/bash.go
+index 839b7781..2b478e1e 100644
+--- a/shells/bash.go
++++ b/shells/bash.go
+@@ -7,6 +7,7 @@ import (
+ 	"gitlab.com/gitlab-org/gitlab-ci-multi-runner/common"
+ 	"gitlab.com/gitlab-org/gitlab-ci-multi-runner/helpers"
+ 	"io"
++	"os/exec"
+ 	"path"
+ 	"runtime"
+ 	"strconv"
+@@ -208,7 +209,11 @@ func (b *BashShell) GetConfiguration(info common.ShellScriptInfo) (script *commo
+ 	if info.User != "" {
+ 		script.Command = "su"
+ 		if runtime.GOOS == "linux" {
+-			script.Arguments = append(script.Arguments, "-s", "/bin/"+b.Shell)
++			shellPath, err := exec.LookPath(b.Shell)
++			if err != nil {
++				shellPath = "/bin/"+b.Shell
++			}
++			script.Arguments = append(script.Arguments, "-s", shellPath)
+ 		}
+ 		script.Arguments = append(script.Arguments, info.User)
+ 		script.Arguments = append(script.Arguments, "-c", shellCommand)
\ No newline at end of file
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/v1-fix-shell-path.patch b/pkgs/development/tools/continuous-integration/gitlab-runner/v1-fix-shell-path.patch
deleted file mode 100644
index 612c9a51f281..000000000000
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/v1-fix-shell-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/shells/bash.go b/shells/bash.go
-index c9c8b68..c97dbb5 100644
---- a/shells/bash.go
-+++ b/shells/bash.go
-@@ -208,7 +208,7 @@ func (b *BashShell) GetConfiguration(info common.ShellScriptInfo) (script *commo
- 	if info.User != "" {
- 		script.Command = "su"
- 		if runtime.GOOS == "linux" {
--			script.Arguments = append(script.Arguments, "-s", "/bin/"+b.Shell)
-+			script.Arguments = append(script.Arguments, "-s", "/run/current-system/sw/bin/"+b.Shell)
- 		}
- 		script.Arguments = append(script.Arguments, info.User)
- 		script.Arguments = append(script.Arguments, "-c", shellCommand)
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/v1.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/v1.nix
index e0c3854740ab..d51a32705923 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/v1.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/v1.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
 
 let
-  version = "1.11.2";
+  version = "1.11.4";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
-    sha256 = "08lacd2p7915y7yjnwkj2k0b0x4qj9kc53p7qgvmq8kdi31xnh4z";
+    sha256 = "1ijkzn8jkzx1dzxhkf17987ligyf758xzas6ysix5b781jnkdm8z";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
-    sha256 = "0lzvx3jfy8493q8zkbs7kgm5a3jgsi3f2x25jwg4lx7agcwwsygw";
+    sha256 = "0sq2nndnkzqv2yjljg08xwa3ppddn6vqcivhfh43zwwmansvb9ha";
   };
 in
 buildGoPackage rec {
@@ -29,10 +29,10 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-ci-multi-runner";
     rev = "v${version}";
-    sha256 = "1sjvlb5981ykc8hr4kp1ibh9jw2wdjjp9zs2nqs9lpsav4nda5fr";
+    sha256 = "1pm88546cijmrrcvvrajp2g6rsrzxhy83cwwwky8jjkl5w4hhmz4";
   };
 
-  patches = [ ./v1-fix-shell-path.patch ];
+  patches = [ ./fix-shell-path.patch ];
 
   buildInputs = [ go-bindata ];