Merge commit '2e56ba' from staging into master

This commit is contained in:
Tuomas Tynkkynen 2018-01-17 12:50:46 +02:00
commit 67c73b4e64
97 changed files with 231 additions and 305 deletions

View File

@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
addGRCBlocksPath() { addGRCBlocksPath() {
addToSearchPath GRC_BLOCKS_PATH $1/share/gnuradio/grc/blocks addToSearchPath GRC_BLOCKS_PATH $1/share/gnuradio/grc/blocks
} }
envHooks+=(addGRCBlocksPath) addEnvHooks "$targetOffset" addGRCBlocksPath
''; '';
setupHook = [ grcSetupHook ]; setupHook = [ grcSetupHook ];

View File

@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
''; '';
doCheck = true; doCheck = true;
checkPhase = "meson test";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Simple GTK+ frontend for the mpv video player"; description = "Simple GTK+ frontend for the mpv video player";

View File

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

View File

@ -7,9 +7,8 @@ if md5 != "" then
else else
stdenvNoCC.mkDerivation { stdenvNoCC.mkDerivation {
name = "fetchdarcs"; name = "fetchdarcs";
NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
builder = ./builder.sh; builder = ./builder.sh;
nativeBuildInputs = [darcs]; nativeBuildInputs = [cacert darcs];
outputHashAlgo = "sha256"; outputHashAlgo = "sha256";
outputHashMode = "recursive"; outputHashMode = "recursive";

View File

@ -6,7 +6,7 @@ stdenvNoCC.mkDerivation {
name = "${name}-gxdeps"; name = "${name}-gxdeps";
inherit src; inherit src;
nativeBuildInputs = [ go gx gx-go ]; nativeBuildInputs = [ cacert go gx gx-go ];
outputHashAlgo = "sha256"; outputHashAlgo = "sha256";
outputHashMode = "recursive"; outputHashMode = "recursive";
@ -14,8 +14,6 @@ stdenvNoCC.mkDerivation {
phases = [ "unpackPhase" "buildPhase" "installPhase" ]; phases = [ "unpackPhase" "buildPhase" "installPhase" ];
NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
buildPhase = '' buildPhase = ''
export GOPATH=$(pwd)/vendor export GOPATH=$(pwd)/vendor
mkdir -p vendor mkdir -p vendor

View File

@ -32,7 +32,7 @@ in stdenv.mkDerivation (args // {
patchRegistryDeps = ./patch-registry-deps; patchRegistryDeps = ./patch-registry-deps;
buildInputs = [ git rust.cargo rust.rustc ] ++ buildInputs; buildInputs = [ cacert git rust.cargo rust.rustc ] ++ buildInputs;
configurePhase = args.configurePhase or '' configurePhase = args.configurePhase or ''
runHook preConfigure runHook preConfigure
@ -60,7 +60,6 @@ in stdenv.mkDerivation (args // {
unset cargoDepsCopy unset cargoDepsCopy
export RUST_LOG=${logLevel} export RUST_LOG=${logLevel}
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
'' + (args.postUnpack or ""); '' + (args.postUnpack or "");
buildPhase = with builtins; args.buildPhase or '' buildPhase = with builtins; args.buildPhase or ''

View File

@ -19,7 +19,6 @@ stdenv.mkDerivation {
exit 1 exit 1
fi fi
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
export CARGO_HOME=$(mktemp -d cargo-home.XXX) export CARGO_HOME=$(mktemp -d cargo-home.XXX)
cargo vendor cargo vendor

View File

@ -52,6 +52,8 @@ stdenv.mkDerivation rec {
cp -v ca-bundle.crt $out/etc/ssl/certs cp -v ca-bundle.crt $out/etc/ssl/certs
''; '';
setupHook = ./setup-hook.sh;
meta = { meta = {
homepage = https://curl.haxx.se/docs/caextract.html; homepage = https://curl.haxx.se/docs/caextract.html;
description = "A bundle of X.509 certificates of public Certificate Authorities (CA)"; description = "A bundle of X.509 certificates of public Certificate Authorities (CA)";

View File

@ -0,0 +1,5 @@
cacertHook() {
export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
}
addEnvHooks "$targetOffset" cacertHook

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "iana-etc-${version}"; name = "iana-etc-${version}";
version = "20171106"; version = "20180108";
src = fetchurl { src = fetchurl {
url = "https://github.com/Mic92/iana-etc/releases/download/${version}/iana-etc-${version}.tar.gz"; url = "https://github.com/Mic92/iana-etc/releases/download/${version}/iana-etc-${version}.tar.gz";
sha256 = "0pbmq95gdkp66cljwklv4gzh8lvl30l4k77hfwvrxz5mfqia6qdd"; sha256 = "1x4jacrvjwcsan88rg2wf2a8bajsglg6w4396vbr18zh0sya84a2";
}; };
installPhase = '' installPhase = ''

View File

@ -2,5 +2,4 @@ tzdataHook() {
export TZDIR=@out@/share/zoneinfo export TZDIR=@out@/share/zoneinfo
} }
envHooks+=(tzdataHook) addEnvHooks "$targetOffset" tzdataHook
crossEnvHooks+=(tzdataHook)

View File

@ -8,7 +8,6 @@ stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
doCheck = true; doCheck = true;
checkPhase = "meson test";
patches = [ patches = [
./no-update-icon-cache.patch ./no-update-icon-cache.patch

View File

@ -18,8 +18,6 @@ stdenv.mkDerivation rec {
prePatch = "patchShebangs build-aux/"; prePatch = "patchShebangs build-aux/";
checkPhase = "meson test";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Clocks; homepage = https://wiki.gnome.org/Apps/Clocks;
description = "Clock application designed for GNOME 3"; description = "Clock application designed for GNOME 3";

View File

@ -1,6 +1,4 @@
{ stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib { stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib, gettext }:
, gettext, gobjectIntrospection
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "nautilus-sendto-${version}"; name = "nautilus-sendto-${version}";
@ -12,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d"; sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d";
}; };
nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext gobjectIntrospection ]; nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext ];
buildInputs = [ glib ]; buildInputs = [ glib ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -14,8 +14,6 @@ stdenv.mkDerivation rec {
desktop_file_utils appstream-glib libxslt docbook_xsl docbook_xml_dtd_43]; desktop_file_utils appstream-glib libxslt docbook_xsl docbook_xml_dtd_43];
buildInputs = [ gtk glib gnome3.gsettings_desktop_schemas ]; buildInputs = [ gtk glib gnome3.gsettings_desktop_schemas ];
checkPhase = "meson test";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Dictionary; homepage = https://wiki.gnome.org/Apps/Dictionary;
description = "Dictionary is the GNOME application to look up definitions"; description = "Dictionary is the GNOME application to look up definitions";

View File

@ -7,8 +7,6 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
checkPhase = "meson test";
nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook libxml2 ]; nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook libxml2 ];
buildInputs = [ gtk3 glib gnome3.gnome_desktop gnome3.defaultIconTheme ]; buildInputs = [ gtk3 glib gnome3.gnome_desktop gnome3.defaultIconTheme ];

View File

@ -1,15 +1,12 @@
{ stdenv, gettext, libxml2, fetchurl, pkgconfig, libcanberra_gtk3 { stdenv, gettext, libxml2, fetchurl, pkgconfig, libcanberra_gtk3
, bash, gtk3, glib, meson, ninja, wrapGAppsHook, appstream-glib , bash, gtk3, glib, meson, ninja, wrapGAppsHook, appstream-glib
, gnome3, librsvg, gdk_pixbuf, gobjectIntrospection }: , gnome3, librsvg, gdk_pixbuf }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
doCheck = true; doCheck = true;
checkPhase = "meson test";
postPatch = '' postPatch = ''
chmod +x build-aux/postinstall.py # patchShebangs requires executable file chmod +x build-aux/postinstall.py # patchShebangs requires executable file
patchShebangs build-aux/postinstall.py patchShebangs build-aux/postinstall.py
@ -18,8 +15,7 @@ stdenv.mkDerivation rec {
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gdk_pixbuf gnome3.defaultIconTheme librsvg ]; propagatedBuildInputs = [ gdk_pixbuf gnome3.defaultIconTheme librsvg ];
nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2 nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2 wrapGAppsHook ];
wrapGAppsHook gobjectIntrospection ];
buildInputs = [ bash gtk3 glib libcanberra_gtk3 buildInputs = [ bash gtk3 glib libcanberra_gtk3
gnome3.gsettings_desktop_schemas ]; gnome3.gsettings_desktop_schemas ];

View File

@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
checkPhase = "meson test";
nativeBuildInputs = [ meson ninja pkgconfig gobjectIntrospection ]; nativeBuildInputs = [ meson ninja pkgconfig gobjectIntrospection ];
buildInputs = [ glib webkitgtk libsoup libxml2 libarchive ]; buildInputs = [ glib webkitgtk libsoup libxml2 libarchive ];

View File

@ -39,8 +39,6 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
checkPhase = "meson test";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Simple scanning utility"; description = "Simple scanning utility";
longDescription = '' longDescription = ''

View File

@ -27,8 +27,6 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ gobjectIntrospection python3Packages.pylint python3Packages.pygobject2 ]; propagatedBuildInputs = [ gobjectIntrospection python3Packages.pylint python3Packages.pygobject2 ];
checkPhase = "meson test";
patches = [ patches = [
(fetchurl { (fetchurl {
name = "remove-pycompile.patch"; name = "remove-pycompile.patch";

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
# perl is used for testing go vet # perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch ]; nativeBuildInputs = [ perl which pkgconfig patch ];
buildInputs = [ pcre ]; buildInputs = [ cacert pcre ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ]; propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
hardeningDisable = [ "all" ]; hardeningDisable = [ "all" ];
@ -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"; GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64" GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "i686-linux" then "386"

View File

@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
# perl is used for testing go vet # perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ] nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ]
++ optionals stdenv.isLinux [ procps ]; ++ optionals stdenv.isLinux [ procps ];
buildInputs = [ pcre ] buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ]; ++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ]; propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
@ -122,8 +122,6 @@ stdenv.mkDerivation rec {
substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil 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"; GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64" GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "i686-linux" then "386"

View File

@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
# perl is used for testing go vet # perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ] nativeBuildInputs = [ perl which pkgconfig patch makeWrapper ]
++ optionals stdenv.isLinux [ procps ]; ++ optionals stdenv.isLinux [ procps ];
buildInputs = [ pcre ] buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ]; ++ optionals stdenv.isLinux [ stdenv.glibc.out stdenv.glibc.static ];
propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ]; propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
@ -128,8 +128,6 @@ stdenv.mkDerivation rec {
substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil 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"; GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64" GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "i686-linux" then "386"

View File

@ -29,7 +29,7 @@ let
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp 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 LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix # Clang expects to find sanitizer libraries in its own prefix
@ -38,6 +38,9 @@ let
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/ ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
ln -sv $out/bin/clang $out/bin/cpp ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/ mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then if [ -e $out/bin/set-xcode-analyzer ]; then
@ -51,7 +54,6 @@ let
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true; isClang = true;
inherit llvm; inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux { } // stdenv.lib.optionalAttrs stdenv.isLinux {

View File

@ -22,6 +22,8 @@ let
inherit clang-tools-extra_src stdenv; inherit clang-tools-extra_src stdenv;
}; };
libclang = self.clang-unwrapped.lib;
clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang; clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;
libstdcxxClang = ccWrapperFun { libstdcxxClang = ccWrapperFun {

View File

@ -31,7 +31,7 @@ let
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp 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 LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix # Clang expects to find sanitizer libraries in its own prefix
@ -40,6 +40,9 @@ let
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/ ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
ln -sv $out/bin/clang $out/bin/cpp ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/ mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then if [ -e $out/bin/set-xcode-analyzer ]; then
@ -53,7 +56,6 @@ let
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true; isClang = true;
inherit llvm; inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux { } // stdenv.lib.optionalAttrs stdenv.isLinux {

View File

@ -22,6 +22,8 @@ let
inherit clang-tools-extra_src stdenv; inherit clang-tools-extra_src stdenv;
}; };
libclang = self.clang-unwrapped.lib;
clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang; clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;
libstdcxxClang = ccWrapperFun { libstdcxxClang = ccWrapperFun {

View File

@ -49,7 +49,7 @@ let
sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
''; '';
outputs = [ "out" "python" ] outputs = [ "out" "lib" "python" ]
++ stdenv.lib.optional enableManpages "man"; ++ stdenv.lib.optional enableManpages "man";
# Clang expects to find LLVMgold in its own prefix # Clang expects to find LLVMgold in its own prefix
@ -59,13 +59,15 @@ let
ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/ ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/
ln -sv $out/bin/clang $out/bin/cpp ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/ mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then if [ -e $out/bin/set-xcode-analyzer ]; then
mv $out/bin/set-xcode-analyzer $python/bin mv $out/bin/set-xcode-analyzer $python/bin
fi fi
mv $out/share/clang/*.py $python/share/clang mv $out/share/clang/*.py $python/share/clang
rm $out/bin/c-index-test rm $out/bin/c-index-test
'' ''
+ stdenv.lib.optionalString enableManpages '' + stdenv.lib.optionalString enableManpages ''
@ -79,7 +81,6 @@ let
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true; isClang = true;
inherit llvm; inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux { } // stdenv.lib.optionalAttrs stdenv.isLinux {

View File

@ -34,6 +34,7 @@ let
llvm = overrideManOutput llvm; llvm = overrideManOutput llvm;
clang-unwrapped = overrideManOutput clang-unwrapped; clang-unwrapped = overrideManOutput clang-unwrapped;
libclang = self.clang-unwrapped.lib;
llvm-manpages = lowPrio self.llvm.man; llvm-manpages = lowPrio self.llvm.man;
clang-manpages = lowPrio self.clang-unwrapped.man; clang-manpages = lowPrio self.clang-unwrapped.man;

View File

@ -50,7 +50,7 @@ let
sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
''; '';
outputs = [ "out" "python" ] outputs = [ "out" "lib" "python" ]
++ stdenv.lib.optional enableManpages "man"; ++ stdenv.lib.optional enableManpages "man";
# Clang expects to find LLVMgold in its own prefix # Clang expects to find LLVMgold in its own prefix
@ -60,13 +60,15 @@ let
ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/ ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/
ln -sv $out/bin/clang $out/bin/cpp ln -sv $out/bin/clang $out/bin/cpp
# Move libclang to 'lib' output
moveToOutput "lib/libclang.*" "$lib"
mkdir -p $python/bin $python/share/clang/ mkdir -p $python/bin $python/share/clang/
mv $out/bin/{git-clang-format,scan-view} $python/bin mv $out/bin/{git-clang-format,scan-view} $python/bin
if [ -e $out/bin/set-xcode-analyzer ]; then if [ -e $out/bin/set-xcode-analyzer ]; then
mv $out/bin/set-xcode-analyzer $python/bin mv $out/bin/set-xcode-analyzer $python/bin
fi fi
mv $out/share/clang/*.py $python/share/clang mv $out/share/clang/*.py $python/share/clang
rm $out/bin/c-index-test rm $out/bin/c-index-test
'' ''
+ stdenv.lib.optionalString enableManpages '' + stdenv.lib.optionalString enableManpages ''
@ -80,7 +82,6 @@ let
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
isClang = true; isClang = true;
inherit llvm; inherit llvm;
} // stdenv.lib.optionalAttrs stdenv.isLinux { } // stdenv.lib.optionalAttrs stdenv.isLinux {

View File

@ -34,6 +34,7 @@ let
llvm = overrideManOutput llvm; llvm = overrideManOutput llvm;
clang-unwrapped = overrideManOutput clang-unwrapped; clang-unwrapped = overrideManOutput clang-unwrapped;
libclang = self.clang-unwrapped.lib;
llvm-manpages = lowPrio self.llvm.man; llvm-manpages = lowPrio self.llvm.man;
clang-manpages = lowPrio self.clang-unwrapped.man; clang-manpages = lowPrio self.clang-unwrapped.man;

View File

@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
passthru.rustc = rustc; passthru.rustc = rustc;
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ file curl python openssl cmake zlib makeWrapper libgit2 ] buildInputs = [ cacert file curl python openssl cmake zlib makeWrapper libgit2 ]
++ stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation libiconv ]; ++ stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation libiconv ];
LIBGIT2_SYS_USE_PKG_CONFIG=1; LIBGIT2_SYS_USE_PKG_CONFIG=1;
@ -48,8 +48,6 @@ rustPlatform.buildRustPackage rec {
''; '';
checkPhase = '' checkPhase = ''
# Export SSL_CERT_FILE as without it one test fails with SSL verification error
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
# Disable cross compilation tests # Disable cross compilation tests
export CFG_DISABLE_CROSS_TESTS=1 export CFG_DISABLE_CROSS_TESTS=1
cargo test cargo test

View File

@ -36,7 +36,7 @@ mkDerivation rec {
tar xf "${manpages}" -C "$out/lib/erlang" tar xf "${manpages}" -C "$out/lib/erlang"
for i in "$out"/lib/erlang/man/man[0-9]/*.[0-9]; do for i in "$out"/lib/erlang/man/man[0-9]/*.[0-9]; do
prefix="''${i%/*}" prefix="''${i%/*}"
ensureDir "$out/share/man/''${prefix##*/}" mkdir -p "$out/share/man/''${prefix##*/}"
ln -s "$i" "$out/share/man/''${prefix##*/}/''${i##*/}erl" ln -s "$i" "$out/share/man/''${prefix##*/}/''${i##*/}erl"
done done
''; '';

View File

@ -3,11 +3,15 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "boehm-gc-7.6.0"; name = "boehm-gc-${version}";
version = "7.6.2";
src = fetchurl { src = fetchurl {
url = http://www.hboehm.info/gc/gc_source/gc-7.6.0.tar.gz; urls = [
sha256 = "143x7g0d0k6250ai6m2x3l4y352mzizi4wbgrmahxscv2aqjhjm1"; "http://www.hboehm.info/gc/gc_source/gc-${version}.tar.gz"
"https://github.com/ivmai/bdwgc/releases/download/v${version}/gc-${version}.tar.gz"
];
sha256 = "07nli9hgdzc09qzw169sn7gchkrn5kqgyniv2rspcy1xaq2j04dx";
}; };
buildInputs = [ libatomic_ops ]; buildInputs = [ libatomic_ops ];
@ -25,12 +29,6 @@ stdenv.mkDerivation rec {
# Don't run the native `strip' when cross-compiling. # Don't run the native `strip' when cross-compiling.
dontStrip = hostPlatform != buildPlatform; dontStrip = hostPlatform != buildPlatform;
postInstall =
''
mkdir -p $out/share/doc
mv $out/share/gc $out/share/doc/gc
'';
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { meta = {

View File

@ -5,5 +5,4 @@ addDleynaConnectorPath () {
fi fi
} }
envHooks+=(addDleynaConnectorPath) addEnvHooks "$targetOffset" addDleynaConnectorPath

View File

@ -1,11 +1,11 @@
{ stdenv, lib, buildPlatform, fetchurl }: { stdenv, lib, buildPlatform, fetchurl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gdbm-1.13"; name = "gdbm-1.14";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/gdbm/${name}.tar.gz"; url = "mirror://gnu/gdbm/${name}.tar.gz";
sha256 = "0lx201q20dvc70f8a3c9s7s18z15inlxvbffph97ngvrgnyjq9cx"; sha256 = "02dakgrq93xwgln8qfv3vs5jyz5yvds5nyzkx6rhg9v585x478dd";
}; };
doCheck = true; # not cross; doCheck = true; # not cross;

View File

@ -4,4 +4,4 @@ gettextDataDirsHook() {
fi fi
} }
envHooks+=(gettextDataDirsHook) addEnvHooks "$hostOffset" gettextDataDirsHook

View File

@ -11,7 +11,7 @@ addEnvHooks "$hostOffset" make_glib_find_gsettings_schemas
glibPreInstallPhase() { glibPreInstallPhase() {
installFlagsArray+=("gsettingsschemadir=${!outputLib}/share/gsettings-schemas/$name/glib-2.0/schemas/") installFlagsArray+=("gsettingsschemadir=${!outputLib}/share/gsettings-schemas/$name/glib-2.0/schemas/")
} }
preInstallPhases+=(glibPreInstallPhase) preInstallPhases+=" glibPreInstallPhase"
glibPreFixupPhase() { glibPreFixupPhase() {
# Move gschemas in case the install flag didn't help # Move gschemas in case the install flag didn't help
@ -22,5 +22,4 @@ glibPreFixupPhase() {
addToSearchPath GSETTINGS_SCHEMAS_PATH "${!outputLib}/share/gsettings-schemas/$name" addToSearchPath GSETTINGS_SCHEMAS_PATH "${!outputLib}/share/gsettings-schemas/$name"
} }
preFixupPhases+=(glibPreFixupPhase) preFixupPhases+=" glibPreFixupPhase"

Binary file not shown.

View File

@ -20,7 +20,7 @@
let let
version = "2.26"; version = "2.26";
patchSuffix = "-115"; patchSuffix = "-131";
sha256 = "1ggnj1hzjym7sn93rbwydcqd562q73lsb7g7kd199g6j9j9hlkp5"; sha256 = "1ggnj1hzjym7sn93rbwydcqd562q73lsb7g7kd199g6j9j9hlkp5";
cross = if buildPlatform != hostPlatform then hostPlatform else null; cross = if buildPlatform != hostPlatform then hostPlatform else null;
in in
@ -48,6 +48,9 @@ stdenv.mkDerivation ({
*/ */
./2.26-75.patch.gz ./2.26-75.patch.gz
./2.26-75to115.diff.gz ./2.26-75to115.diff.gz
# contains fix for CVE-2018-1000001 as the last commit:
# https://sourceware.org/git/?p=glibc.git;a=commit;h=fabef2edbc
./2.26-115to131.diff.gz
/* Have rpcgen(1) look for cpp(1) in $PATH. */ /* Have rpcgen(1) look for cpp(1) in $PATH. */
./rpcgen-path.patch ./rpcgen-path.patch
@ -73,7 +76,7 @@ stdenv.mkDerivation ({
and we lose early mismatch detection on 2.6.32. and we lose early mismatch detection on 2.6.32.
On major glibc updates we should check that the patched kernel supports On major glibc updates we should check that the patched kernel supports
all the required features. ATM it's verified up to glibc-2.26-115. all the required features. ATM it's verified up to glibc-2.26-131.
# HOWTO: check glibc sources for changes in kernel requirements # HOWTO: check glibc sources for changes in kernel requirements
git log -p glibc-2.25.. sysdeps/unix/sysv/linux/x86_64/kernel-features.h sysdeps/unix/sysv/linux/kernel-features.h git log -p glibc-2.25.. sysdeps/unix/sysv/linux/x86_64/kernel-features.h sysdeps/unix/sysv/linux/kernel-features.h
# get kernel sources (update the URL) # get kernel sources (update the URL)

View File

@ -27,8 +27,6 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
checkPhase = "meson test";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://live.gnome.org/JsonGlib; homepage = http://live.gnome.org/JsonGlib;
description = "A library providing (de)serialization support for the JavaScript Object Notation (JSON) format"; description = "A library providing (de)serialization support for the JavaScript Object Notation (JSON) format";

View File

@ -2,14 +2,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libatomic_ops-${version}"; name = "libatomic_ops-${version}";
version = "7.6.0"; version = "7.6.2";
src = fetchurl { src = fetchurl {
urls = [ urls = [
"http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-${version}.tar.gz" "http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-${version}.tar.gz"
"https://github.com/ivmai/libatomic_ops/releases/download/v${version}/libatomic_ops-${version}.tar.gz" "https://github.com/ivmai/libatomic_ops/releases/download/v${version}/libatomic_ops-${version}.tar.gz"
]; ];
sha256 ="03ylfr29g9zc0r6b6axz3i68alj5qmxgzknxwam3jlx0sz8hcb4f"; sha256 ="1rif2hjscq5mh639nsnjhb90c01gnmy1sbmj6x6hsn1xmpnj95r1";
}; };
nativeBuildInputs = stdenv.lib.optionals stdenv.isCygwin [ autoconf automake libtool ]; nativeBuildInputs = stdenv.lib.optionals stdenv.isCygwin [ autoconf automake libtool ];

View File

@ -50,8 +50,6 @@ stdenv.mkDerivation rec {
doCheck = testsSupport; doCheck = testsSupport;
checkPhase = "meson test";
meta = { meta = {
description = "Handles input devices in Wayland compositors and provides a generic X.Org input driver"; description = "Handles input devices in Wayland compositors and provides a generic X.Org input driver";
homepage = http://www.freedesktop.org/wiki/Software/libinput; homepage = http://www.freedesktop.org/wiki/Software/libinput;

View File

@ -3,7 +3,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aniso8601"; pname = "aniso8601";
version = "1.3.0"; version = "2.0.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -16,6 +16,6 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "c3b5246f5601b6ae5671911bc4ee5b3e3fe94752e8afab5ce074d8b1232952f1"; sha256 = "085786415d3550e89785ffbedaa9bb37d41de0707a1268bdbba11249064b71d1";
}; };
} }

View File

@ -10,12 +10,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "argon2_cffi"; pname = "argon2_cffi";
version = "16.3.0"; version = "18.1.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1ap3il3j1pjyprrhpfyhc21izpmhzhfb5s69vlzc65zvd1nj99cr"; sha256 = "7e4b75611b73f53012117ad21cdde7a17b32d1e99ff6799f22d827eb83a2a59b";
}; };
propagatedBuildInputs = [ cffi six ]; propagatedBuildInputs = [ cffi six ];

View File

@ -8,13 +8,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "backports.lzma"; pname = "backports.lzma";
version = "0.0.8"; version = "0.0.9";
disabled = isPy3k; disabled = isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "200584ad5079d8ca6b1bfe14890c7be58666ab0128d8ca26cfb2669b476085f3"; sha256 = "9ba5d94214a79900ee297a594b8e154cd8e4a54d26eb06243c0e2f3ad5286539";
}; };
buildInputs = [ lzma ]; buildInputs = [ lzma ];

View File

@ -9,9 +9,9 @@ let
}; };
setuptools_source = fetchPypi { setuptools_source = fetchPypi {
pname = "setuptools"; pname = "setuptools";
version = "38.2.5"; version = "38.4.0";
format = "wheel"; format = "wheel";
sha256 = "bcf0d4f3e2f7890e658db11e218b8643afffb905a0e2f2a7d5a6a3e949bb87e6"; sha256 = "155c2ec9fdcc00c3973d966b416e1cf3a1e7ce75f4c09fb760b23f94b935926e";
}; };
# TODO: Shouldn't be necessary anymore for pip > 9.0.1! # TODO: Shouldn't be necessary anymore for pip > 9.0.1!

View File

@ -23,6 +23,12 @@ buildPythonPackage rec {
checkInputs = [ nose ]; checkInputs = [ nose ];
propagatedBuildInputs = [ toolz ]; propagatedBuildInputs = [ toolz ];
# File as accidentally included in release
# See https://github.com/pytoolz/cytoolz/issues/116#issuecomment-355770073
postPatch = ''
rm cytoolz/tests/test_curried_doctests.py
'';
# Disable failing test https://github.com/pytoolz/cytoolz/issues/97 # Disable failing test https://github.com/pytoolz/cytoolz/issues/97
checkPhase = '' checkPhase = ''
NOSE_EXCLUDE=test_curried_exceptions nosetests -v $out/${python.sitePackages} NOSE_EXCLUDE=test_curried_exceptions nosetests -v $out/${python.sitePackages}

View File

@ -4,11 +4,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "daphne"; pname = "daphne";
name = "${pname}-${version}"; name = "${pname}-${version}";
version = "1.3.0"; version = "1.4.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1xmmjp21m1w88ljsgnkf6cbzw5nxamh9cfmfgzxffpn4cdmvn96i"; sha256 = "302725f223853b05688f28c361e050f8db9568b1ce27340c76272c26b49e6d72";
}; };
buildInputs = [ hypothesis ]; buildInputs = [ hypothesis ];

View File

@ -1,6 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, pytest , pytest
, mock , mock
, numpy , numpy
@ -8,14 +8,24 @@
, dateutil , dateutil
}: }:
buildPythonPackage rec { let
pname = "datashape"; # Fetcher function looks similar to fetchPypi.
version = "0.5.2"; # Allows for easier overriding, without having to know
name = "${pname}-${version}"; # how the source is actually fetched.
fetcher = {pname, version, sha256}: fetchFromGitHub {
owner = "blaze";
repo = pname;
rev = version;
inherit sha256;
};
src = fetchPypi { in buildPythonPackage rec {
pname = "datashape";
version = "0.5.4";
src = fetcher {
inherit pname version; inherit pname version;
sha256 = "2356ea690c3cf003c1468a243a9063144235de45b080b3652de4f3d44e57d783"; sha256 = "0rhlj2kjj1vx5m73wnc5518rd6cs1zsbgpsvzk893n516k69shcf";
}; };
checkInputs = [ pytest mock ]; checkInputs = [ pytest mock ];

View File

@ -3,12 +3,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dyn"; pname = "dyn";
version = "1.8.0"; version = "1.8.1";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "4ab3cd9a1478674cf2d2aa6740fb0ddf77daaa9ab3e35e5d2bc92f60301f8523"; sha256 = "e112149d48b4500c18b3cfb6e0e6e780bb5aa0e56ff87cac412280200b9ec8bf";
}; };
buildInputs = [ glibcLocales ]; buildInputs = [ glibcLocales ];

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "filelock"; pname = "filelock";
version = "2.0.14"; version = "3.0.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "ee355eb66e4c2e5d95689e1253515aad5b3177c274abdd00a57d5ab1aa6d071a"; sha256 = "b3ad481724adfb2280773edd95ce501e497e88fa4489c6e41e637ab3fd9a456c";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -3,11 +3,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "grpcio"; pname = "grpcio";
version = "1.8.2"; version = "1.8.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1ea1336f0d1158c4e00e96a94df84b75f6bbff9816abb6cc68cbdc9442a9ac55"; sha256 = "6ce5fd3093ddc09a152981d5c477ac645eda19dfcc819e45d8c57da6b743bd53";
}; };
propagatedBuildInputs = [ six protobuf ] propagatedBuildInputs = [ six protobuf ]

View File

@ -15,11 +15,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "jupyter_client"; pname = "jupyter_client";
version = "5.2.0"; version = "5.2.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "ca30cf1786047925ebacd6f6faa3a993efaa004b584f7d83bc8b807f7cd3f6bb"; sha256 = "462790d46b244f0a631ea5e3cd5cdbad6874d5d24cc0ff512deb7c16cdf8653d";
}; };
checkInputs = [ ipykernel ipython mock pytest ]; checkInputs = [ ipykernel ipython mock pytest ];
@ -29,10 +29,6 @@ buildPythonPackage rec {
py.test py.test
''; '';
patches = [
./wheel_workaround.patch
];
# Circular dependency with ipykernel # Circular dependency with ipykernel
doCheck = false; doCheck = false;

View File

@ -1,13 +0,0 @@
diff --git a/setup.py b/setup.py
index 95d4774..ee72cbc 100644
--- a/setup.py
+++ b/setup.py
@@ -86,7 +86,7 @@ setup_args = dict(
extras_require = {
'test': ['ipykernel', 'ipython', 'mock'],
'test:python_version == "3.3"': ['pytest<3.3.0'],
- 'test:python_version >= "3.4" or python_version == "2.7"': ['pytest'],
+ 'test:(python_version >= "3.4" or python_version == "2.7")': ['pytest'],
},
cmdclass = {
'bdist_egg': bdist_egg if 'bdist_egg' in sys.argv else bdist_egg_disabled,

View File

@ -1,14 +1,17 @@
{ stdenv, buildPythonPackage, fetchPypi, isPyPy, { stdenv, buildPythonPackage, fetchPypi, isPyPy
nose, olefile, , olefile
freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11}: , freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11
, pytestrunner
, pytest
}:
buildPythonPackage rec { buildPythonPackage rec {
pname = "Pillow"; pname = "Pillow";
version = "4.3.0"; version = "5.0.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "a97c715d44efd5b4aa8d739b8fad88b93ed79f1b33fc2822d5802043f3b1b527"; sha256 = "12f29d6c23424f704c66b5b68c02fe0b571504459605cfe36ab8158359b0e1bb";
}; };
doCheck = !stdenv.isDarwin && !isPyPy; doCheck = !stdenv.isDarwin && !isPyPy;
@ -21,8 +24,10 @@ buildPythonPackage rec {
propagatedBuildInputs = [ olefile ]; propagatedBuildInputs = [ olefile ];
checkInputs = [ pytest pytestrunner ];
buildInputs = [ buildInputs = [
freetype libjpeg zlib libtiff libwebp tcl nose lcms2 ] freetype libjpeg zlib libtiff libwebp tcl lcms2 ]
++ stdenv.lib.optionals (isPyPy) [ tk libX11 ]; ++ stdenv.lib.optionals (isPyPy) [ tk libX11 ];
# NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp. # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.

View File

@ -7,12 +7,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "psutil"; pname = "psutil";
version = "5.4.2"; version = "5.4.3";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "00a1f9ff8d1e035fba7bfdd6977fa8ea7937afdb4477339e5df3dba78194fe11"; sha256 = "e2467e9312c2fa191687b89ff4bc2ad8843be4af6fb4dc95a7cc5f7d7a327b18";
}; };
# No tests in archive # No tests in archive

View File

@ -5,13 +5,13 @@
, requests, tox, pandoc, unicorn, intervaltree }: , requests, tox, pandoc, unicorn, intervaltree }:
buildPythonPackage rec { buildPythonPackage rec {
version = "3.10.0"; version = "3.11.0";
pname = "pwntools"; pname = "pwntools";
name = pname + "-" + version; name = pname + "-" + version;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1l8hb30mwxqd1y7r5ihd7kzmjm2mz6m5aiphd3hwzmxkmxbxj8zk"; sha256 = "609b3f0ba47c975f4dbedd3da2af4c5ca1b3a2aa13fb99240531b6a68edb87be";
}; };
propagatedBuildInputs = [ Mako packaging pysocks pygments ROPGadget capstone paramiko pip psutil pyelftools pypandoc pyserial dateutil requests tox pandoc unicorn intervaltree ]; propagatedBuildInputs = [ Mako packaging pysocks pygments ROPGadget capstone paramiko pip psutil pyelftools pypandoc pyserial dateutil requests tox pandoc unicorn intervaltree ];

View File

@ -2,7 +2,7 @@
, setuptools_scm, setuptools, six, pluggy, funcsigs, isPy3k , setuptools_scm, setuptools, six, pluggy, funcsigs, isPy3k
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "3.3.1"; version = "3.3.2";
pname = "pytest"; pname = "pytest";
preCheck = '' preCheck = ''
@ -12,7 +12,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "cf8436dc59d8695346fcd3ab296de46425ecab00d64096cebe79fb51ecb2eb93"; sha256 = "53548280ede7818f4dc2ad96608b9f08ae2cc2ca3874f2ceb6f97e3583f25bc4";
}; };
checkInputs = [ hypothesis ]; checkInputs = [ hypothesis ];

View File

@ -1,14 +1,14 @@
{ lib, fetchurl, buildPythonPackage, isPy3k }: { lib, fetchurl, buildPythonPackage, isPy3k }:
buildPythonPackage rec { buildPythonPackage rec {
version = "1.7"; version = "1.8.1";
pname = "python-stdnum"; pname = "python-stdnum";
name = "${pname}-${version}"; name = "${pname}-${version}";
# Failing tests and dependency issue on Py3k # Failing tests and dependency issue on Py3k
disabled = isPy3k; disabled = isPy3k;
src = fetchurl { src = fetchurl {
url = "mirror://pypi/p/python-stdnum/${name}.tar.gz"; url = "mirror://pypi/p/python-stdnum/${name}.tar.gz";
sha256 = "987c25e1047e8742131bcf29dac7a406987adb1463465749e2daaba8cb19d264"; sha256 = "d7162fdb29337aebed65700cc7297016f6cd32cae4ad7aed8f7e7531f0217943";
}; };
meta = { meta = {
homepage = http://arthurdejong.org/python-stdnum/; homepage = http://arthurdejong.org/python-stdnum/;

View File

@ -8,11 +8,11 @@
buildPythonApplication rec { buildPythonApplication rec {
pname = "ropper"; pname = "ropper";
version = "1.11.2"; version = "1.11.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "2183feedfe8b01a27301eee07383b481ece01b2319bdba3afebe33e19ca14aa3"; sha256 = "77d9b03083d0a098261a1d2856cd330ea3db520511a78472e421a00526aa220c";
}; };
# XXX tests rely on user-writeable /dev/shm to obtain process locks and return PermissionError otherwise # XXX tests rely on user-writeable /dev/shm to obtain process locks and return PermissionError otherwise
# workaround: sudo chmod 777 /dev/shm # workaround: sudo chmod 777 /dev/shm

View File

@ -8,13 +8,13 @@
# Should use buildPythonPackage here somehow # Should use buildPythonPackage here somehow
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "setuptools"; pname = "setuptools";
version = "38.2.5"; version = "38.4.0";
name = "${python.libPrefix}-${pname}-${version}"; name = "${python.libPrefix}-${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
extension = "zip"; extension = "zip";
sha256 = "b080f276cc868670540b2c03cee06cc14d2faf9da7bec0f15058d1b402c94507"; sha256 = "6501fc32f505ec5b3ed36ec65ba48f1b975f52cf2ea101c7b73a08583fd12f75";
}; };
buildInputs = [ python wrapPython unzip ]; buildInputs = [ python wrapPython unzip ];

View File

@ -5,12 +5,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "sqlmap"; pname = "sqlmap";
version = "1.1.12"; version = "1.2";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "86a1078ceb1e79f891633c7e4c7b07949fd9135a0e4c0738abd5111e2e6b96c0"; sha256 = "18ac6392a710f0cc106c28c4e27e43e8f1b25cb46fb8b6714836212607c07b10";
}; };
# No tests in archive # No tests in archive

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "texttable"; pname = "texttable";
version = "1.1.1"; version = "1.2.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "44674d1d470a9fc264c4d1eba44b74463ca0066d7b954453dd5a4f8057779c9c"; sha256 = "c89dc0148ae29645917aab7e970a30d1af565b3ca276cef8ab1a60469f0d8100";
}; };
meta = { meta = {

View File

@ -10,7 +10,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "tornado"; pname = "tornado";
version = "4.5.2"; version = "4.5.3";
name = "${pname}-${version}"; name = "${pname}-${version}";
propagatedBuildInputs = [ backports_abc backports_ssl_match_hostname certifi singledispatch ]; propagatedBuildInputs = [ backports_abc backports_ssl_match_hostname certifi singledispatch ];
@ -23,6 +23,6 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1fb8e494cd46c674d86fac5885a3ff87b0e283937a47d74eb3c02a48c9e89ad0"; sha256 = "6d14e47eab0e15799cf3cdcc86b0b98279da68522caace2bd7ce644287685f0a";
}; };
} }

View File

@ -9,11 +9,11 @@
buildPythonPackage rec { buildPythonPackage rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
pname = "typeguard"; pname = "typeguard";
version = "2.1.3"; version = "2.1.4";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0l3pih5ca469v7if255h5rqymirsw46bi6s7p885jxhq1gv6cfpk"; sha256 = "40b22d18d2215b76b3ddda2564acfbddfa6e702968637fbd969187c2a6fb99da";
}; };
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools_scm ];

View File

@ -3,11 +3,11 @@
buildPythonPackage rec { buildPythonPackage rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
pname = "Unidecode"; pname = "Unidecode";
version = "0.04.21"; version = "1.0.22";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0lfhp9c5xrbpjvbpr12ji52g1lx04404bzzdg6pvabhzisw6l2i8"; sha256 = "8c33dd588e0c9bc22a76eaa0c715a5434851f726131bd44a6c26471746efabf5";
}; };
LC_ALL="en_US.UTF-8"; LC_ALL="en_US.UTF-8";

View File

@ -25,13 +25,13 @@
let let
pname = "zeep"; pname = "zeep";
version = "2.4.0"; version = "2.5.0";
in buildPythonPackage { in buildPythonPackage {
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "8631e2735c5f2219eb18ca4f0615ae482455628518508f69c3690dbfb8238aee"; sha256 = "4f9db52c7d269813fc6251da4cb050869158858aeea75a055b4550f19e52ac84";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -3,7 +3,7 @@
{ R, pkgs, overrides }: { R, pkgs, overrides }:
let let
inherit (pkgs) fetchurl stdenv lib; inherit (pkgs) cacert fetchurl stdenv lib;
buildRPackage = pkgs.callPackage ./generic-builder.nix { buildRPackage = pkgs.callPackage ./generic-builder.nix {
inherit R; inherit R;
@ -912,9 +912,7 @@ let
}); });
geojsonio = old.geojsonio.overrideDerivation (attrs: { geojsonio = old.geojsonio.overrideDerivation (attrs: {
preConfigure = '' buildInputs = [ cacert ] ++ attrs.buildInputs;
export SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt
'';
}); });
rstan = old.rstan.overrideDerivation (attrs: { rstan = old.rstan.overrideDerivation (attrs: {

View File

@ -43,7 +43,7 @@ cmakeConfigurePhase() {
# libraries are in a system path or in the same directory as the # libraries are in a system path or in the same directory as the
# executable. This flag makes the shared library accessible from its # executable. This flag makes the shared library accessible from its
# nix/store directory. # nix/store directory.
cmakeFlags="-DCMAKE_INSTALL_NAME_DIR=$prefix/lib $cmakeFlags" cmakeFlags="-DCMAKE_INSTALL_NAME_DIR=${!outputLib}/lib $cmakeFlags"
cmakeFlags="-DCMAKE_INSTALL_LIBDIR=${!outputLib}/lib $cmakeFlags" cmakeFlags="-DCMAKE_INSTALL_LIBDIR=${!outputLib}/lib $cmakeFlags"
cmakeFlags="-DCMAKE_INSTALL_INCLUDEDIR=${!outputDev}/include $cmakeFlags" cmakeFlags="-DCMAKE_INSTALL_INCLUDEDIR=${!outputDev}/include $cmakeFlags"

View File

@ -25,3 +25,15 @@ if [ -z "$dontUseMesonConfigure" -a -z "$configurePhase" ]; then
setOutputFlags= setOutputFlags=
configurePhase=mesonConfigurePhase configurePhase=mesonConfigurePhase
fi fi
mesonCheckPhase() {
runHook preCheck
meson test
runHook postCheck
}
if [ -z "$dontUseMesonCheck" -a -z "$checkPhase" ]; then
checkPhase=mesonCheckPhase
fi

View File

@ -9,8 +9,10 @@
}: }:
let let
apparmor-series = "2.10";
apparmor-version = apparmor-series; apparmor-series = "2.12";
apparmor-patchver = "0";
apparmor-version = apparmor-series + "." + apparmor-patchver;
apparmor-meta = component: with stdenv.lib; { apparmor-meta = component: with stdenv.lib; {
homepage = http://apparmor.net/; homepage = http://apparmor.net/;
@ -21,8 +23,8 @@ let
}; };
apparmor-sources = fetchurl { apparmor-sources = fetchurl {
url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-version}.tar.gz"; url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-series}.tar.gz";
sha256 = "1x06qmmbha9krx7880pxj2k3l8fxy3nm945xjjv735m2ax1243jd"; sha256 = "0mm0mcp0w18si9wl15drndysm7v27az2942p1xjd197shg80qawa";
}; };
prePatchCommon = '' prePatchCommon = ''
@ -96,7 +98,7 @@ let
wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${pythonPackages.python.libPrefix}/site-packages:$PYTHONPATH" wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${pythonPackages.python.libPrefix}/site-packages:$PYTHONPATH"
done done
for prog in aa-exec aa-notify ; do for prog in aa-notify ; do
wrapProgram $out/bin/$prog --prefix PERL5LIB : "${libapparmor}/lib/perl5:$PERL5LIB" wrapProgram $out/bin/$prog --prefix PERL5LIB : "${libapparmor}/lib/perl5:$PERL5LIB"
done done
''; '';

View File

@ -5,15 +5,15 @@
assert stdenv.isLinux; assert stdenv.isLinux;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "bluez-5.47"; name = "bluez-5.48";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/bluetooth/${name}.tar.xz"; url = "mirror://kernel/linux/bluetooth/${name}.tar.xz";
sha256 = "1j22hfjz0fp4pgclgz9mfcwjbr4wqgah3gd2qhfg4r6msmybyxfg"; sha256 = "140fjyxa2q4y35d9n52vki649jzb094pf71hxkkvlrpgf8q75a5r";
}; };
pythonPath = with pythonPackages; pythonPath = with pythonPackages;
[ dbus pygobject2 pygobject3 recursivePthLoader ]; [ dbus-python pygobject2 pygobject3 recursivePthLoader ];
buildInputs = [ buildInputs = [
pkgconfig dbus glib alsaLib pythonPackages.python pythonPackages.wrapPython pkgconfig dbus glib alsaLib pythonPackages.python pythonPackages.wrapPython

View File

@ -32,8 +32,7 @@ stdenv.mkDerivation rec {
# traffic, so don't do that. # traffic, so don't do that.
preferLocalBuild = true; preferLocalBuild = true;
nativeBuildInputs = [ git gnupg ]; nativeBuildInputs = [ cacert git gnupg ];
NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
} '' } ''
git init src && ( git init src && (
cd src cd src

View File

@ -51,7 +51,7 @@ with stdenv.lib;
# Bump the maximum number of CPUs to support systems like EC2 x1.* # Bump the maximum number of CPUs to support systems like EC2 x1.*
# instances and Xeon Phi. # instances and Xeon Phi.
${optionalString (stdenv.system == "x86_64-linux" || stdenv.system == "aarch64-linux") '' ${optionalString (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") ''
NR_CPUS 384 NR_CPUS 384
''} ''}
@ -347,11 +347,12 @@ with stdenv.lib;
SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default
SECURITY_YAMA? y # Prevent processes from ptracing non-children processes SECURITY_YAMA? y # Prevent processes from ptracing non-children processes
DEVKMEM n # Disable /dev/kmem DEVKMEM n # Disable /dev/kmem
${if versionOlder version "3.14" then '' ${optionalString (! stdenv.hostPlatform.isArm)
CC_STACKPROTECTOR? y # Detect buffer overflows on the stack (if versionOlder version "3.14" then ''
'' else '' CC_STACKPROTECTOR? y # Detect buffer overflows on the stack
CC_STACKPROTECTOR_REGULAR? y '' else ''
''} CC_STACKPROTECTOR_REGULAR? y
'')}
${optionalString (versionAtLeast version "3.12") '' ${optionalString (versionAtLeast version "3.12") ''
USER_NS y # Support for user namespaces USER_NS y # Support for user namespaces
''} ''}

View File

@ -1,4 +1,4 @@
{ stdenv, perl, buildLinux { stdenv, buildPackages, perl, buildLinux
, # The kernel source tarball. , # The kernel source tarball.
src src
@ -23,7 +23,8 @@
# symbolic name and `patch' is the actual patch. The patch may # symbolic name and `patch' is the actual patch. The patch may
# optionally be compressed with gzip or bzip2. # optionally be compressed with gzip or bzip2.
kernelPatches ? [] kernelPatches ? []
, ignoreConfigErrors ? stdenv.platform.name != "pc" , ignoreConfigErrors ? hostPlatform.platform.name != "pc" ||
hostPlatform != stdenv.buildPlatform
, extraMeta ? {} , extraMeta ? {}
, hostPlatform , hostPlatform
, ... , ...
@ -43,14 +44,12 @@ let
netfilterRPFilter = true; netfilterRPFilter = true;
} // features) kernelPatches; } // features) kernelPatches;
configWithPlatform = kernelPlatform: import ./common-config.nix { config = import ./common-config.nix {
inherit stdenv version kernelPlatform extraConfig; inherit stdenv version extraConfig;
kernelPlatform = hostPlatform;
features = kernelFeatures; # Ensure we know of all extra patches, etc. features = kernelFeatures; # Ensure we know of all extra patches, etc.
}; };
config = configWithPlatform stdenv.platform;
configCross = configWithPlatform hostPlatform.platform;
kernelConfigFun = baseConfig: kernelConfigFun = baseConfig:
let let
configFromPatches = configFromPatches =
@ -65,31 +64,15 @@ let
kernelConfig = kernelConfigFun config; kernelConfig = kernelConfigFun config;
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];
platformName = stdenv.platform.name; platformName = hostPlatform.platform.name;
kernelBaseConfig = stdenv.platform.kernelBaseConfig; kernelBaseConfig = hostPlatform.platform.kernelBaseConfig;
kernelTarget = stdenv.platform.kernelTarget; kernelTarget = hostPlatform.platform.kernelTarget;
autoModules = stdenv.platform.kernelAutoModules; autoModules = hostPlatform.platform.kernelAutoModules;
preferBuiltin = stdenv.platform.kernelPreferBuiltin or false; preferBuiltin = hostPlatform.platform.kernelPreferBuiltin or false;
arch = stdenv.platform.kernelArch; arch = hostPlatform.platform.kernelArch;
crossAttrs = let
cp = hostPlatform.platform;
in {
arch = cp.kernelArch;
platformName = cp.name;
kernelBaseConfig = cp.kernelBaseConfig;
kernelTarget = cp.kernelTarget;
autoModules = cp.kernelAutoModules;
# Just ignore all options that don't apply (We are lazy).
ignoreConfigErrors = true;
kernelConfig = kernelConfigFun configCross;
inherit (kernel.crossDrv) src patches preUnpack;
};
prePatch = kernel.prePatch + '' prePatch = kernel.prePatch + ''
# Patch kconfig to print "###" after every question so that # Patch kconfig to print "###" after every question so that
@ -103,7 +86,7 @@ let
cd $buildRoot cd $buildRoot
# Get a basic config file for later refinement with $generateConfig. # Get a basic config file for later refinement with $generateConfig.
make -C ../$sourceRoot O=$PWD $kernelBaseConfig ARCH=$arch make HOSTCC=${buildPackages.stdenv.cc.targetPrefix}gcc -C ../$sourceRoot O=$PWD $kernelBaseConfig ARCH=$arch
# Create the config file. # Create the config file.
echo "generating kernel configuration..." echo "generating kernel configuration..."
@ -118,15 +101,9 @@ let
}; };
kernel = buildLinux { kernel = buildLinux {
inherit version modDirVersion src kernelPatches stdenv extraMeta; inherit version modDirVersion src kernelPatches stdenv extraMeta configfile;
configfile = configfile.nativeDrv or configfile;
crossConfigfile = configfile.crossDrv or configfile;
config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; }; config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; };
crossConfig = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; };
}; };
passthru = { passthru = {
@ -134,12 +111,4 @@ let
passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]); passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]);
}; };
addPassthru' = lib.extendDerivation true passthru; in lib.extendDerivation true passthru kernel
nativeDrv = addPassthru' kernel.nativeDrv;
crossDrv = addPassthru' kernel.crossDrv;
in if kernel ? crossDrv
then nativeDrv // { inherit nativeDrv crossDrv; }
else addPassthru' kernel

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.13.16"; version = "4.13.16";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
with stdenv.lib; with stdenv.lib;

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.4.111"; version = "4.4.111";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.9.76"; version = "4.9.76";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args:
let let
modDirVersion = "4.9.61"; modDirVersion = "4.9.61";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args:
with stdenv.lib; with stdenv.lib;

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args:
import ./generic.nix (rec { import ./generic.nix (rec {
mptcpVersion = "0.93"; mptcpVersion = "0.93";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args:
let let
modDirVersion = "4.9.59"; modDirVersion = "4.9.59";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.12.2"; version = "4.12.2";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchgit, perl, buildLinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchgit, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.11.2017.08.23"; version = "4.11.2017.08.23";

View File

@ -1,4 +1,4 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.15-rc8"; version = "4.15-rc8";

View File

@ -1,6 +1,6 @@
{ runCommand, nettools, bc, perl, gmp, libmpc, mpfr, kmod, openssl { buildPackages, runCommand, nettools, bc, perl, gmp, libmpc, mpfr, openssl
, libelf ? null , libelf
, utillinux ? null , utillinux
, writeTextFile, ubootTools , writeTextFile, ubootTools
, hostPlatform , hostPlatform
}: }:
@ -26,19 +26,11 @@ in {
src, src,
# Any patches # Any patches
kernelPatches ? [], kernelPatches ? [],
# Patches for native compiling only # The kernel .config file
nativeKernelPatches ? [],
# Patches for cross compiling only
crossKernelPatches ? [],
# The native kernel .config file
configfile, configfile,
# The cross kernel .config file
crossConfigfile ? configfile,
# Manually specified nixexpr representing the config # Manually specified nixexpr representing the config
# If unspecified, this will be autodetected from the .config # If unspecified, this will be autodetected from the .config
config ? stdenv.lib.optionalAttrs allowImportFromDerivation (readConfig configfile), config ? stdenv.lib.optionalAttrs allowImportFromDerivation (readConfig configfile),
# Cross-compiling config
crossConfig ? if allowImportFromDerivation then (readConfig crossConfigfile) else config,
# Use defaultMeta // extraMeta # Use defaultMeta // extraMeta
extraMeta ? {}, extraMeta ? {},
# Whether to utilize the controversial import-from-derivation feature to parse the config # Whether to utilize the controversial import-from-derivation feature to parse the config
@ -61,8 +53,8 @@ let
commonMakeFlags = [ commonMakeFlags = [
"O=$(buildRoot)" "O=$(buildRoot)"
] ++ stdenv.lib.optionals (stdenv.platform ? kernelMakeFlags) ] ++ stdenv.lib.optionals (hostPlatform.platform ? kernelMakeFlags)
stdenv.platform.kernelMakeFlags; hostPlatform.platform.kernelMakeFlags;
drvAttrs = config_: platform: kernelPatches: configfile: drvAttrs = config_: platform: kernelPatches: configfile:
let let
@ -105,7 +97,7 @@ let
echo "stripping FHS paths in \`$mf'..." echo "stripping FHS paths in \`$mf'..."
sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g ; s|/sbin/||g' sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g ; s|/sbin/||g'
done done
sed -i Makefile -e 's|= depmod|= ${kmod}/bin/depmod|' sed -i Makefile -e 's|= depmod|= ${buildPackages.kmod}/bin/depmod|'
''; '';
configurePhase = '' configurePhase = ''
@ -211,7 +203,7 @@ let
find -empty -type d -delete find -empty -type d -delete
# Remove reference to kmod # Remove reference to kmod
sed -i Makefile -e 's|= ${kmod}/bin/depmod|= depmod|' sed -i Makefile -e 's|= ${buildPackages.kmod}/bin/depmod|= depmod|'
'' else optionalString installsFirmware '' '' else optionalString installsFirmware ''
make firmware_install $makeFlags "''${makeFlagsArray[@]}" \ make firmware_install $makeFlags "''${makeFlagsArray[@]}" \
$installFlags "''${installFlagsArray[@]}" $installFlags "''${installFlagsArray[@]}"
@ -239,13 +231,14 @@ in
assert stdenv.lib.versionAtLeast version "4.14" -> libelf != null; assert stdenv.lib.versionAtLeast version "4.14" -> libelf != null;
assert stdenv.lib.versionAtLeast version "4.15" -> utillinux != null; assert stdenv.lib.versionAtLeast version "4.15" -> utillinux != null;
stdenv.mkDerivation ((drvAttrs config stdenv.platform (kernelPatches ++ nativeKernelPatches) configfile) // { stdenv.mkDerivation ((drvAttrs config hostPlatform.platform kernelPatches configfile) // {
name = "linux-${version}"; name = "linux-${version}";
enableParallelBuilding = true; enableParallelBuilding = true;
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ perl bc nettools openssl gmp libmpc mpfr ] nativeBuildInputs = [ perl bc nettools openssl gmp libmpc mpfr ]
++ optional (stdenv.platform.kernelTarget == "uImage") ubootTools ++ optional (stdenv.hostPlatform.platform.kernelTarget == "uImage") buildPackages.ubootTools
++ optional (stdenv.lib.versionAtLeast version "4.14") libelf ++ optional (stdenv.lib.versionAtLeast version "4.14") libelf
++ optional (stdenv.lib.versionAtLeast version "4.15") utillinux ++ optional (stdenv.lib.versionAtLeast version "4.15") utillinux
; ;
@ -253,20 +246,11 @@ stdenv.mkDerivation ((drvAttrs config stdenv.platform (kernelPatches ++ nativeKe
hardeningDisable = [ "bindnow" "format" "fortify" "stackprotector" "pic" ]; hardeningDisable = [ "bindnow" "format" "fortify" "stackprotector" "pic" ];
makeFlags = commonMakeFlags ++ [ makeFlags = commonMakeFlags ++ [
"ARCH=${stdenv.platform.kernelArch}" "HOSTCC=${buildPackages.stdenv.cc.targetPrefix}gcc"
"ARCH=${stdenv.hostPlatform.platform.kernelArch}"
] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
]; ];
karch = stdenv.platform.kernelArch; karch = hostPlatform.platform.kernelArch;
crossAttrs = let cp = hostPlatform.platform; in
(drvAttrs crossConfig cp (kernelPatches ++ crossKernelPatches) crossConfigfile) // {
makeFlags = commonMakeFlags ++ [
"ARCH=${cp.kernelArch}"
"CROSS_COMPILE=$(crossConfig)-"
];
karch = cp.kernelArch;
nativeBuildInputs = optional (cp.kernelTarget == "uImage") ubootTools;
};
}) })

View File

@ -1,6 +1,6 @@
{ lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto, makeWrapper { lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto, makeWrapper
, docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig, libunwind, binutils , docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig, libunwind, binutils
, libiberty, libaudit , libiberty, libaudit, libbfd
, zlib, withGtk ? false, gtk2 ? null }: , zlib, withGtk ? false, gtk2 ? null }:
with lib; with lib;
@ -11,7 +11,7 @@ assert versionAtLeast kernel.version "3.12";
stdenv.mkDerivation { stdenv.mkDerivation {
name = "perf-linux-${kernel.version}"; name = "perf-linux-${kernel.version}";
inherit (kernel) src; inherit (kernel) src makeFlags;
preConfigure = '' preConfigure = ''
cd tools/perf cd tools/perf
@ -21,10 +21,9 @@ stdenv.mkDerivation {
''; '';
# perf refers both to newt and slang # perf refers both to newt and slang
# binutils is required for libbfd.
nativeBuildInputs = [ asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt nativeBuildInputs = [ asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt
flex bison libiberty libaudit makeWrapper pkgconfig ]; flex bison libiberty libaudit makeWrapper pkgconfig python perl ];
buildInputs = [ elfutils python perl newt slang libunwind binutils zlib ] ++ buildInputs = [ elfutils newt slang libunwind libbfd zlib ] ++
stdenv.lib.optional withGtk gtk2; stdenv.lib.optional withGtk gtk2;
# Note: we don't add elfutils to buildInputs, since it provides a # Note: we don't add elfutils to buildInputs, since it provides a
@ -47,15 +46,6 @@ stdenv.mkDerivation {
--prefix PATH : "${binutils}/bin" --prefix PATH : "${binutils}/bin"
''; '';
crossAttrs = {
/* I don't want cross-python or cross-perl -
I don't know if cross-python even works */
propagatedBuildInputs = [ elfutils.crossDrv newt.crossDrv ];
makeFlags = "CROSS_COMPILE=${stdenv.cc.targetPrefix}";
elfutils = elfutils.crossDrv;
inherit (kernel.crossDrv) src patches;
};
meta = { meta = {
homepage = https://perf.wiki.kernel.org/; homepage = https://perf.wiki.kernel.org/;
description = "Linux tools to profile with performance counters"; description = "Linux tools to profile with performance counters";

View File

@ -546,7 +546,7 @@ in
"--with-sha1=CommonCrypto" "--with-sha1=CommonCrypto"
]; ];
preConfigure = '' preConfigure = ''
ensureDir $out/Applications mkdir -p $out/Applications
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${args.apple_sdk.frameworks.ApplicationServices} substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${args.apple_sdk.frameworks.ApplicationServices}
''; '';

View File

@ -375,7 +375,7 @@ in rec {
xz.out xz.bin libcxx libcxxabi gmp.out gnumake findutils bzip2.out xz.out xz.bin libcxx libcxxabi gmp.out gnumake findutils bzip2.out
bzip2.bin llvmPackages.llvm llvmPackages.llvm.lib zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar bzip2.bin llvmPackages.llvm llvmPackages.llvm.lib zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar
gzip ncurses.out ncurses.dev ncurses.man gnused bash gawk gzip ncurses.out ncurses.dev ncurses.man gnused bash gawk
gnugrep llvmPackages.clang-unwrapped patch pcre.out gettext gnugrep llvmPackages.clang-unwrapped llvmPackages.clang-unwrapped.lib patch pcre.out gettext
binutils-raw.bintools binutils binutils.bintools binutils-raw.bintools binutils binutils.bintools
cc.expand-response-params cc.expand-response-params
]) ++ (with pkgs.darwin; [ ]) ++ (with pkgs.darwin; [

View File

@ -188,16 +188,6 @@ addToSearchPath() {
addToSearchPathWithCustomDelimiter "${PATH_DELIMITER}" "$@" addToSearchPathWithCustomDelimiter "${PATH_DELIMITER}" "$@"
} }
ensureDir() {
echo "warning: ensureDir is deprecated; use mkdir instead" >&2
local dir
for dir in "$@"; do
if ! [ -x "$dir" ]; then mkdir -p "$dir"; fi
done
}
# Add $1/lib* into rpaths. # Add $1/lib* into rpaths.
# The function is used in multiple-outputs.sh hook, # The function is used in multiple-outputs.sh hook,
# so it is defined here but tried after the hook. # so it is defined here but tried after the hook.

View File

@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
in '' in ''
substituteInPlace tests/shar-1 --replace '${shar_sub}' '${shar_sub} -s submitter' substituteInPlace tests/shar-1 --replace '${shar_sub}' '${shar_sub} -s submitter'
substituteInPlace tests/shar-2 --replace '${shar_sub}' '${shar_sub} -s submitter' substituteInPlace tests/shar-2 --replace '${shar_sub}' '${shar_sub} -s submitter'
substituteInPlace intl/Makefile.in --replace "AR = ar" ""
''; '';
doCheck = true; doCheck = true;

View File

@ -21,10 +21,6 @@ stdenv.mkDerivation rec {
# and the wonderful bazel BUILD file is already there (yay case-insensitivity?) # and the wonderful bazel BUILD file is already there (yay case-insensitivity?)
prePatch = "rm BUILD"; prePatch = "rm BUILD";
preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
cmakeFlagsArray+=("-DCMAKE_INSTALL_NAME_DIR=$lib/lib")
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
inherit (src.meta) homepage; inherit (src.meta) homepage;

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libuuid, gettext, texinfo }: { stdenv, fetchurl, pkgconfig, libuuid, gettext, texinfo }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "e2fsprogs-1.43.7"; name = "e2fsprogs-1.43.8";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz"; url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz";
sha256 = "1i51w5l45zhz3i98k92xbbvkqklvjrvw3zvqky3gk9cdmqp5y0w7"; sha256 = "1pn33rap3lcjm3gx07pmgyhx4j634gja63phmi4g5dq8yj0z8ciz";
}; };
outputs = [ "bin" "dev" "out" "man" "info" ]; outputs = [ "bin" "dev" "out" "man" "info" ];

View File

@ -14,14 +14,14 @@ stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
python gyp python gyp
] ++ lib.optional stdenv.isLinux utillinux; ] ++ lib.optional stdenv.isLinux utillinux;
buildPhase = '' buildPhase = ''
python ./gyp_bud -f make python ./gyp_bud -f make
make -C out make -C out
''; '';
installPhase = '' installPhase = ''
ensureDir $out/bin mkdir -p $out/bin
cp out/Release/bud $out/bin cp out/Release/bud $out/bin
''; '';

View File

@ -10275,7 +10275,7 @@ with pkgs;
ncurses5 = callPackage ../development/libraries/ncurses { abiVersion = "5"; }; ncurses5 = callPackage ../development/libraries/ncurses { abiVersion = "5"; };
ncurses6 = callPackage ../development/libraries/ncurses { abiVersion = "6"; }; ncurses6 = callPackage ../development/libraries/ncurses { abiVersion = "6"; };
ncurses = if stdenv.isDarwin then ncurses5 else ncurses6; ncurses = ncurses6;
neardal = callPackage ../development/libraries/neardal { }; neardal = callPackage ../development/libraries/neardal { };