Skip to content

Commit

Permalink
Merge commit '2e56ba' from staging into master
Browse files Browse the repository at this point in the history
  • Loading branch information
dezgeg committed Jan 17, 2018
2 parents 5ab499d + 2e56ba6 commit 67c73b4
Show file tree
Hide file tree
Showing 97 changed files with 230 additions and 304 deletions.
2 changes: 1 addition & 1 deletion pkgs/applications/misc/gnuradio/default.nix
Expand Up @@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
addGRCBlocksPath() {
addToSearchPath GRC_BLOCKS_PATH $1/share/gnuradio/grc/blocks
}
envHooks+=(addGRCBlocksPath)
addEnvHooks "$targetOffset" addGRCBlocksPath
'';

setupHook = [ grcSetupHook ];
Expand Down
1 change: 0 additions & 1 deletion pkgs/applications/video/gnome-mpv/default.nix
Expand Up @@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
'';

doCheck = true;
checkPhase = "meson test";

meta = with stdenv.lib; {
description = "Simple GTK+ frontend for the mpv video player";
Expand Down
3 changes: 1 addition & 2 deletions pkgs/build-support/fetchbower/default.nix
Expand Up @@ -11,7 +11,6 @@ let

fetchbower = name: version: target: outputHash: stdenvNoCC.mkDerivation {
name = "${cleanName name}-${bowerVersion version}";
SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
buildCommand = ''
fetch-bower --quiet --out=$PWD/out "${name}" "${target}" "${version}"
# In some cases, the result of fetchBower is different depending
Expand All @@ -23,7 +22,7 @@ let
outputHashMode = "recursive";
outputHashAlgo = "sha256";
inherit outputHash;
nativeBuildInputs = [ bower2nix ];
nativeBuildInputs = [ bower2nix cacert ];
};

in fetchbower
3 changes: 1 addition & 2 deletions pkgs/build-support/fetchdarcs/default.nix
Expand Up @@ -7,9 +7,8 @@ if md5 != "" then
else
stdenvNoCC.mkDerivation {
name = "fetchdarcs";
NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
builder = ./builder.sh;
nativeBuildInputs = [darcs];
nativeBuildInputs = [cacert darcs];

outputHashAlgo = "sha256";
outputHashMode = "recursive";
Expand Down
4 changes: 1 addition & 3 deletions pkgs/build-support/fetchgx/default.nix
Expand Up @@ -6,16 +6,14 @@ stdenvNoCC.mkDerivation {
name = "${name}-gxdeps";
inherit src;

nativeBuildInputs = [ go gx gx-go ];
nativeBuildInputs = [ cacert go gx gx-go ];

outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = sha256;

phases = [ "unpackPhase" "buildPhase" "installPhase" ];

NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";

buildPhase = ''
export GOPATH=$(pwd)/vendor
mkdir -p vendor
Expand Down
3 changes: 1 addition & 2 deletions pkgs/build-support/rust/default.nix
Expand Up @@ -32,7 +32,7 @@ in stdenv.mkDerivation (args // {

patchRegistryDeps = ./patch-registry-deps;

buildInputs = [ git rust.cargo rust.rustc ] ++ buildInputs;
buildInputs = [ cacert git rust.cargo rust.rustc ] ++ buildInputs;

configurePhase = args.configurePhase or ''
runHook preConfigure
Expand Down Expand Up @@ -60,7 +60,6 @@ in stdenv.mkDerivation (args // {
unset cargoDepsCopy
export RUST_LOG=${logLevel}
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
'' + (args.postUnpack or "");

buildPhase = with builtins; args.buildPhase or ''
Expand Down
1 change: 0 additions & 1 deletion pkgs/build-support/rust/fetchcargo.nix
Expand Up @@ -19,7 +19,6 @@ stdenv.mkDerivation {
exit 1
fi
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
export CARGO_HOME=$(mktemp -d cargo-home.XXX)
cargo vendor
Expand Down
2 changes: 2 additions & 0 deletions pkgs/data/misc/cacert/default.nix
Expand Up @@ -52,6 +52,8 @@ stdenv.mkDerivation rec {
cp -v ca-bundle.crt $out/etc/ssl/certs
'';

setupHook = ./setup-hook.sh;

meta = {
homepage = https://curl.haxx.se/docs/caextract.html;
description = "A bundle of X.509 certificates of public Certificate Authorities (CA)";
Expand Down
5 changes: 5 additions & 0 deletions pkgs/data/misc/cacert/setup-hook.sh
@@ -0,0 +1,5 @@
cacertHook() {
export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
}

addEnvHooks "$targetOffset" cacertHook
4 changes: 2 additions & 2 deletions pkgs/data/misc/iana-etc/default.nix
Expand Up @@ -2,11 +2,11 @@

stdenv.mkDerivation rec {
name = "iana-etc-${version}";
version = "20171106";
version = "20180108";

src = fetchurl {
url = "https://github.com/Mic92/iana-etc/releases/download/${version}/iana-etc-${version}.tar.gz";
sha256 = "0pbmq95gdkp66cljwklv4gzh8lvl30l4k77hfwvrxz5mfqia6qdd";
sha256 = "1x4jacrvjwcsan88rg2wf2a8bajsglg6w4396vbr18zh0sya84a2";
};

installPhase = ''
Expand Down
3 changes: 1 addition & 2 deletions pkgs/data/misc/tzdata/tzdata-setup-hook.sh
Expand Up @@ -2,5 +2,4 @@ tzdataHook() {
export TZDIR=@out@/share/zoneinfo
}

envHooks+=(tzdataHook)
crossEnvHooks+=(tzdataHook)
addEnvHooks "$targetOffset" tzdataHook
1 change: 0 additions & 1 deletion pkgs/desktops/gnome-3/apps/bijiben/default.nix
Expand Up @@ -8,7 +8,6 @@ stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src;

doCheck = true;
checkPhase = "meson test";

patches = [
./no-update-icon-cache.patch
Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix
Expand Up @@ -18,8 +18,6 @@ stdenv.mkDerivation rec {

prePatch = "patchShebangs build-aux/";

checkPhase = "meson test";

meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Clocks;
description = "Clock application designed for GNOME 3";
Expand Down
6 changes: 2 additions & 4 deletions pkgs/desktops/gnome-3/apps/nautilus-sendto/default.nix
@@ -1,6 +1,4 @@
{ stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib
, gettext, gobjectIntrospection
}:
{ stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib, gettext }:

stdenv.mkDerivation rec {
name = "nautilus-sendto-${version}";
Expand All @@ -12,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d";
};

nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext gobjectIntrospection ];
nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext ];
buildInputs = [ glib ];

meta = with stdenv.lib; {
Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/core/gnome-dictionary/default.nix
Expand Up @@ -14,8 +14,6 @@ stdenv.mkDerivation rec {
desktop_file_utils appstream-glib libxslt docbook_xsl docbook_xml_dtd_43];
buildInputs = [ gtk glib gnome3.gsettings_desktop_schemas ];

checkPhase = "meson test";

meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Dictionary;
description = "Dictionary is the GNOME application to look up definitions";
Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/core/gnome-font-viewer/default.nix
Expand Up @@ -7,8 +7,6 @@ stdenv.mkDerivation rec {

doCheck = true;

checkPhase = "meson test";

nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook libxml2 ];
buildInputs = [ gtk3 glib gnome3.gnome_desktop gnome3.defaultIconTheme ];

Expand Down
8 changes: 2 additions & 6 deletions pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
@@ -1,15 +1,12 @@
{ stdenv, gettext, libxml2, fetchurl, pkgconfig, libcanberra_gtk3
, bash, gtk3, glib, meson, ninja, wrapGAppsHook, appstream-glib
, gnome3, librsvg, gdk_pixbuf, gobjectIntrospection }:
, gnome3, librsvg, gdk_pixbuf }:

stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src;

doCheck = true;

checkPhase = "meson test";


postPatch = ''
chmod +x build-aux/postinstall.py # patchShebangs requires executable file
patchShebangs build-aux/postinstall.py
Expand All @@ -18,8 +15,7 @@ stdenv.mkDerivation rec {
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gdk_pixbuf gnome3.defaultIconTheme librsvg ];

nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2
wrapGAppsHook gobjectIntrospection ];
nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2 wrapGAppsHook ];
buildInputs = [ bash gtk3 glib libcanberra_gtk3
gnome3.gsettings_desktop_schemas ];

Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/core/libgepub/default.nix
Expand Up @@ -11,8 +11,6 @@ stdenv.mkDerivation rec {

doCheck = true;

checkPhase = "meson test";

nativeBuildInputs = [ meson ninja pkgconfig gobjectIntrospection ];
buildInputs = [ glib webkitgtk libsoup libxml2 libarchive ];

Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/core/simple-scan/default.nix
Expand Up @@ -39,8 +39,6 @@ stdenv.mkDerivation rec {

doCheck = true;

checkPhase = "meson test";

meta = with stdenv.lib; {
description = "Simple scanning utility";
longDescription = ''
Expand Down
2 changes: 0 additions & 2 deletions pkgs/desktops/gnome-3/core/totem/default.nix
Expand Up @@ -27,8 +27,6 @@ stdenv.mkDerivation rec {

propagatedBuildInputs = [ gobjectIntrospection python3Packages.pylint python3Packages.pygobject2 ];

checkPhase = "meson test";

patches = [
(fetchurl {
name = "remove-pycompile.patch";
Expand Down
4 changes: 1 addition & 3 deletions pkgs/development/compilers/go/1.7.nix
Expand Up @@ -35,7 +35,7 @@ stdenv.mkDerivation rec {

# perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch ];
buildInputs = [ pcre ];
buildInputs = [ cacert pcre ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];

hardeningDisable = [ "all" ];
Expand Down Expand Up @@ -116,8 +116,6 @@ stdenv.mkDerivation rec {
})
];

NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";

GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386"
Expand Down
4 changes: 1 addition & 3 deletions pkgs/development/compilers/go/1.8.nix
Expand Up @@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
# perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ]
++ optionals stdenv.isLinux [ procps ];
buildInputs = [ pcre ]
buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];

Expand Down Expand Up @@ -122,8 +122,6 @@ stdenv.mkDerivation rec {
substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil
'';

NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";

GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386"
Expand Down
4 changes: 1 addition & 3 deletions pkgs/development/compilers/go/1.9.nix
Expand Up @@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
# perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ]
++ optionals stdenv.isLinux [ procps ];
buildInputs = [ pcre ]
buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];

Expand Down Expand Up @@ -128,8 +128,6 @@ stdenv.mkDerivation rec {
substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil
'';

NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";

GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386"
Expand Down
6 changes: 4 additions & 2 deletions pkgs/development/compilers/llvm/3.8/clang/default.nix
Expand Up @@ -29,7 +29,7 @@ let
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
'';

outputs = [ "out" "python" ];
outputs = [ "out" "lib" "python" ];

# Clang expects to find LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix
Expand All @@ -38,6 +38,9 @@ let
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then
Expand All @@ -51,7 +54,6 @@ let
enableParallelBuilding = true;

passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true;
inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux {
Expand Down
2 changes: 2 additions & 0 deletions pkgs/development/compilers/llvm/3.8/default.nix
Expand Up @@ -22,6 +22,8 @@ let
inherit clang-tools-extra_src stdenv;
};

libclang = self.clang-unwrapped.lib;

clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;

libstdcxxClang = ccWrapperFun {
Expand Down
6 changes: 4 additions & 2 deletions pkgs/development/compilers/llvm/3.9/clang/default.nix
Expand Up @@ -31,7 +31,7 @@ let
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
'';

outputs = [ "out" "python" ];
outputs = [ "out" "lib" "python" ];

# Clang expects to find LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix
Expand All @@ -40,6 +40,9 @@ let
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then
Expand All @@ -53,7 +56,6 @@ let
enableParallelBuilding = true;

passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true;
inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux {
Expand Down
2 changes: 2 additions & 0 deletions pkgs/development/compilers/llvm/3.9/default.nix
Expand Up @@ -22,6 +22,8 @@ let
inherit clang-tools-extra_src stdenv;
};

libclang = self.clang-unwrapped.lib;

clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;

libstdcxxClang = ccWrapperFun {
Expand Down
7 changes: 4 additions & 3 deletions pkgs/development/compilers/llvm/4/clang/default.nix
Expand Up @@ -49,7 +49,7 @@ let
sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
'';

outputs = [ "out" "python" ]
outputs = [ "out" "lib" "python" ]
++ stdenv.lib.optional enableManpages "man";

# Clang expects to find LLVMgold in its own prefix
Expand All @@ -59,13 +59,15 @@ let
ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/
ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then
mv $out/bin/set-xcode-analyzer $python/bin
fi
mv $out/share/clang/*.py $python/share/clang
rm $out/bin/c-index-test
''
+ stdenv.lib.optionalString enableManpages ''
Expand All @@ -79,7 +81,6 @@ let
enableParallelBuilding = true;

passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true;
inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux {
Expand Down
1 change: 1 addition & 0 deletions pkgs/development/compilers/llvm/4/default.nix
Expand Up @@ -34,6 +34,7 @@ let
llvm = overrideManOutput llvm;
clang-unwrapped = overrideManOutput clang-unwrapped;

libclang = self.clang-unwrapped.lib;
llvm-manpages = lowPrio self.llvm.man;
clang-manpages = lowPrio self.clang-unwrapped.man;

Expand Down

3 comments on commit 67c73b4

@vcunat
Copy link
Member

@vcunat vcunat commented on 67c73b4 Jan 17, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dezgeg: I assume you wanted to avoid the mass Darwin rebuild due to clang? #33953 I think it fixes some real problems, but maybe much will be fixed by cherry-picking the subsequent commits.

@dezgeg
Copy link
Contributor Author

@dezgeg dezgeg commented on 67c73b4 Jan 17, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that was the plan. Is there that much breakage?

@dezgeg
Copy link
Contributor Author

@dezgeg dezgeg commented on 67c73b4 Jan 17, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did cherry picks based on some IRC conversations.

Please sign in to comment.