Merge branch 'staging-next' into staging
This commit is contained in:
commit
66ef389efa
26 changed files with 373 additions and 58 deletions
|
@ -11,6 +11,7 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.ec2;
|
cfg = config.ec2;
|
||||||
metadataFetcher = import ./ec2-metadata-fetcher.nix {
|
metadataFetcher = import ./ec2-metadata-fetcher.nix {
|
||||||
|
inherit (pkgs) curl;
|
||||||
targetRoot = "$targetRoot/";
|
targetRoot = "$targetRoot/";
|
||||||
wgetExtraOptions = "-q";
|
wgetExtraOptions = "-q";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,23 +1,79 @@
|
||||||
{ targetRoot, wgetExtraOptions }:
|
{ curl, targetRoot, wgetExtraOptions }:
|
||||||
|
# Note: be very cautious about dependencies, each dependency grows
|
||||||
|
# the closure of the initrd. Ideally we would not even require curl,
|
||||||
|
# but there is no reasonable way to send an HTTP PUT request without
|
||||||
|
# it. Note: do not be fooled: the wget referenced in this script
|
||||||
|
# is busybox's wget, not the fully featured one with --method support.
|
||||||
|
#
|
||||||
|
# Make sure that every package you depend on here is already listed as
|
||||||
|
# a channel blocker for both the full-sized and small channels.
|
||||||
|
# Otherwise, we risk breaking user deploys in released channels.
|
||||||
''
|
''
|
||||||
metaDir=${targetRoot}etc/ec2-metadata
|
metaDir=${targetRoot}etc/ec2-metadata
|
||||||
mkdir -m 0755 -p "$metaDir"
|
mkdir -m 0755 -p "$metaDir"
|
||||||
|
|
||||||
|
get_imds_token() {
|
||||||
|
# retry-delay of 1 selected to give the system a second to get going,
|
||||||
|
# but not add a lot to the bootup time
|
||||||
|
${curl}/bin/curl \
|
||||||
|
-v \
|
||||||
|
--retry 3 \
|
||||||
|
--retry-delay 1 \
|
||||||
|
--fail \
|
||||||
|
-X PUT \
|
||||||
|
--connect-timeout 1 \
|
||||||
|
-H "X-aws-ec2-metadata-token-ttl-seconds: 600" \
|
||||||
|
http://169.254.169.254/latest/api/token
|
||||||
|
}
|
||||||
|
|
||||||
|
preflight_imds_token() {
|
||||||
|
# retry-delay of 1 selected to give the system a second to get going,
|
||||||
|
# but not add a lot to the bootup time
|
||||||
|
${curl}/bin/curl \
|
||||||
|
-v \
|
||||||
|
--retry 3 \
|
||||||
|
--retry-delay 1 \
|
||||||
|
--fail \
|
||||||
|
--connect-timeout 1 \
|
||||||
|
-H "X-aws-ec2-metadata-token: $IMDS_TOKEN" \
|
||||||
|
http://169.254.169.254/1.0/meta-data/instance-id
|
||||||
|
}
|
||||||
|
|
||||||
|
try=1
|
||||||
|
while [ $try -le 3 ]; do
|
||||||
|
echo "(attempt $try/3) getting an EC2 instance metadata service v2 token..."
|
||||||
|
IMDS_TOKEN=$(get_imds_token) && break
|
||||||
|
try=$((try + 1))
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$IMDS_TOKEN" == "x" ]; then
|
||||||
|
echo "failed to fetch an IMDS2v token."
|
||||||
|
fi
|
||||||
|
|
||||||
|
try=1
|
||||||
|
while [ $try -le 10 ]; do
|
||||||
|
echo "(attempt $try/10) validating the EC2 instance metadata service v2 token..."
|
||||||
|
preflight_imds_token && break
|
||||||
|
try=$((try + 1))
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
|
||||||
echo "getting EC2 instance metadata..."
|
echo "getting EC2 instance metadata..."
|
||||||
|
|
||||||
if ! [ -e "$metaDir/ami-manifest-path" ]; then
|
if ! [ -e "$metaDir/ami-manifest-path" ]; then
|
||||||
wget ${wgetExtraOptions} -O "$metaDir/ami-manifest-path" http://169.254.169.254/1.0/meta-data/ami-manifest-path
|
wget ${wgetExtraOptions} --header "X-aws-ec2-metadata-token: $IMDS_TOKEN" -O "$metaDir/ami-manifest-path" http://169.254.169.254/1.0/meta-data/ami-manifest-path
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -e "$metaDir/user-data" ]; then
|
if ! [ -e "$metaDir/user-data" ]; then
|
||||||
wget ${wgetExtraOptions} -O "$metaDir/user-data" http://169.254.169.254/1.0/user-data && chmod 600 "$metaDir/user-data"
|
wget ${wgetExtraOptions} --header "X-aws-ec2-metadata-token: $IMDS_TOKEN" -O "$metaDir/user-data" http://169.254.169.254/1.0/user-data && chmod 600 "$metaDir/user-data"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -e "$metaDir/hostname" ]; then
|
if ! [ -e "$metaDir/hostname" ]; then
|
||||||
wget ${wgetExtraOptions} -O "$metaDir/hostname" http://169.254.169.254/1.0/meta-data/hostname
|
wget ${wgetExtraOptions} --header "X-aws-ec2-metadata-token: $IMDS_TOKEN" -O "$metaDir/hostname" http://169.254.169.254/1.0/meta-data/hostname
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -e "$metaDir/public-keys-0-openssh-key" ]; then
|
if ! [ -e "$metaDir/public-keys-0-openssh-key" ]; then
|
||||||
wget ${wgetExtraOptions} -O "$metaDir/public-keys-0-openssh-key" http://169.254.169.254/1.0/meta-data/public-keys/0/openssh-key
|
wget ${wgetExtraOptions} --header "X-aws-ec2-metadata-token: $IMDS_TOKEN" -O "$metaDir/public-keys-0-openssh-key" http://169.254.169.254/1.0/meta-data/public-keys/0/openssh-key
|
||||||
fi
|
fi
|
||||||
''
|
''
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
metadataFetcher = import ./ec2-metadata-fetcher.nix {
|
metadataFetcher = import ./openstack-metadata-fetcher.nix {
|
||||||
targetRoot = "/";
|
targetRoot = "/";
|
||||||
wgetExtraOptions = "--retry-connrefused";
|
wgetExtraOptions = "--retry-connrefused";
|
||||||
};
|
};
|
||||||
|
|
23
nixos/modules/virtualisation/openstack-metadata-fetcher.nix
Normal file
23
nixos/modules/virtualisation/openstack-metadata-fetcher.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{ targetRoot, wgetExtraOptions }:
|
||||||
|
''
|
||||||
|
metaDir=${targetRoot}etc/ec2-metadata
|
||||||
|
mkdir -m 0755 -p "$metaDir"
|
||||||
|
|
||||||
|
echo "getting EC2 instance metadata..."
|
||||||
|
|
||||||
|
if ! [ -e "$metaDir/ami-manifest-path" ]; then
|
||||||
|
wget ${wgetExtraOptions} -O "$metaDir/ami-manifest-path" http://169.254.169.254/1.0/meta-data/ami-manifest-path
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -e "$metaDir/user-data" ]; then
|
||||||
|
wget ${wgetExtraOptions} -O "$metaDir/user-data" http://169.254.169.254/1.0/user-data && chmod 600 "$metaDir/user-data"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -e "$metaDir/hostname" ]; then
|
||||||
|
wget ${wgetExtraOptions} -O "$metaDir/hostname" http://169.254.169.254/1.0/meta-data/hostname
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -e "$metaDir/public-keys-0-openssh-key" ]; then
|
||||||
|
wget ${wgetExtraOptions} -O "$metaDir/public-keys-0-openssh-key" http://169.254.169.254/1.0/meta-data/public-keys/0/openssh-key
|
||||||
|
fi
|
||||||
|
''
|
|
@ -49,6 +49,7 @@ in rec {
|
||||||
[ "nixos.channel" ]
|
[ "nixos.channel" ]
|
||||||
(onFullSupported "nixos.dummy")
|
(onFullSupported "nixos.dummy")
|
||||||
(onAllSupported "nixos.iso_minimal")
|
(onAllSupported "nixos.iso_minimal")
|
||||||
|
(onAllSupported "nixos.amazonImage")
|
||||||
(onSystems ["x86_64-linux"] "nixos.iso_plasma5")
|
(onSystems ["x86_64-linux"] "nixos.iso_plasma5")
|
||||||
(onSystems ["x86_64-linux"] "nixos.iso_gnome")
|
(onSystems ["x86_64-linux"] "nixos.iso_gnome")
|
||||||
(onFullSupported "nixos.manual")
|
(onFullSupported "nixos.manual")
|
||||||
|
|
|
@ -28,7 +28,7 @@ let
|
||||||
in rec {
|
in rec {
|
||||||
|
|
||||||
nixos = {
|
nixos = {
|
||||||
inherit (nixos') channel manual options iso_minimal dummy;
|
inherit (nixos') channel manual options iso_minimal amazonImage dummy;
|
||||||
tests = {
|
tests = {
|
||||||
inherit (nixos'.tests)
|
inherit (nixos'.tests)
|
||||||
containers-imperative
|
containers-imperative
|
||||||
|
@ -92,6 +92,7 @@ in rec {
|
||||||
[ "nixos.channel"
|
[ "nixos.channel"
|
||||||
"nixos.dummy.x86_64-linux"
|
"nixos.dummy.x86_64-linux"
|
||||||
"nixos.iso_minimal.x86_64-linux"
|
"nixos.iso_minimal.x86_64-linux"
|
||||||
|
"nixos.amazonImage.x86_64-linux"
|
||||||
"nixos.manual.x86_64-linux"
|
"nixos.manual.x86_64-linux"
|
||||||
"nixos.tests.boot.biosCdrom.x86_64-linux"
|
"nixos.tests.boot.biosCdrom.x86_64-linux"
|
||||||
"nixos.tests.containers-imperative.x86_64-linux"
|
"nixos.tests.containers-imperative.x86_64-linux"
|
||||||
|
|
|
@ -234,5 +234,17 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
"docker run --rm file-in-store nix-store --verify --check-contents",
|
"docker run --rm file-in-store nix-store --verify --check-contents",
|
||||||
"docker run --rm file-in-store |& grep 'some data'",
|
"docker run --rm file-in-store |& grep 'some data'",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
with subtest("Ensure cross compiled image can be loaded and has correct arch."):
|
||||||
|
docker.succeed(
|
||||||
|
"docker load --input='${pkgs.dockerTools.examples.cross-aarch64}'",
|
||||||
|
)
|
||||||
|
assert (
|
||||||
|
docker.succeed(
|
||||||
|
"docker inspect ${pkgs.dockerTools.examples.cross-aarch64.imageName} "
|
||||||
|
+ "| ${pkgs.jq}/bin/jq -r .[].Architecture"
|
||||||
|
).strip()
|
||||||
|
== "arm64v8"
|
||||||
|
)
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ lib, python3Packages, fetchFromGitHub }:
|
{ lib, python3Packages, fetchFromGitHub }:
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "matrix-dl-unstable";
|
pname = "matrix-dl";
|
||||||
version = "2019-09-22";
|
version = "unstable-2020-07-14";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rubo77";
|
owner = "rubo77";
|
||||||
repo = "matrix-dl";
|
repo = pname;
|
||||||
rev = "e91610f45b7b3b0aca34923309fc83ba377f8a69";
|
rev = "b1a86d1421f39ee327284e1023f09dc165e3c8a5";
|
||||||
sha256 = "036xfdd21pcfjlilknc67z5jqpk0vz07853wwcsiac32iypc6f2q";
|
sha256 = "1l8nh8z7kz24v0wcy3ll3w6in2yxwa1yz8lyc3x0blz37d8ss4ql";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with python3Packages; [
|
propagatedBuildInputs = with python3Packages; [
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, lib, fetchurl, pkgconfig, autoconf, makeDesktopItem
|
{ stdenv, lib, fetchFromGitHub, pkgconfig, autoconf, makeDesktopItem
|
||||||
, libX11, gdk-pixbuf, cairo, libXft, gtk3, vte
|
, libX11, gdk-pixbuf, cairo, libXft, gtk3, vte
|
||||||
, harfbuzz #substituting glyphs with opentype fonts
|
, harfbuzz #substituting glyphs with opentype fonts
|
||||||
, fribidi, m17n_lib #bidi and encoding
|
, fribidi, m17n_lib #bidi and encoding
|
||||||
|
@ -12,9 +12,11 @@ stdenv.mkDerivation rec {
|
||||||
pname = "mlterm";
|
pname = "mlterm";
|
||||||
version = "3.9.1";
|
version = "3.9.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "mirror://sourceforge/project/mlterm/01release/${pname}-${version}/${pname}-${version}.tar.gz";
|
owner = "arakiken";
|
||||||
sha256 = "03fnynwv7d1aicwk2rp31sgncv5m65agvygqvsgn59v9di40gnnb";
|
repo = pname;
|
||||||
|
rev = "rel-${lib.replaceStrings [ "." ] [ "_" ] version}"; # 3.9.1 -> rel-3_9_1
|
||||||
|
sha256 = "1hh196kz2n3asv8r8r2bdk5b2w93zq7rw4880ciiq1554h0ib7fj";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig autoconf wrapGAppsHook ];
|
nativeBuildInputs = [ pkgconfig autoconf wrapGAppsHook ];
|
||||||
|
|
|
@ -4,26 +4,24 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (python3Packages) docutils dulwich python;
|
inherit (python3Packages) docutils python;
|
||||||
|
|
||||||
in python3Packages.buildPythonApplication rec {
|
in python3Packages.buildPythonApplication rec {
|
||||||
pname = "mercurial";
|
pname = "mercurial";
|
||||||
version = "5.4.2";
|
version = "5.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
|
url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
|
||||||
sha256 = "0ls8nwx3nz26pibphw54fg8pxqb365zmmqx95lqrxqqyf3d972sw";
|
sha256 = "1hk2y30zzdnlv8f71kabvh0xi9c7qhp28ksh20vpd0r712sv79yz";
|
||||||
};
|
};
|
||||||
|
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
inherit python; # pass it so that the same version can be used in hg2git
|
passthru = { inherit python; }; # pass it so that the same version can be used in hg2git
|
||||||
|
|
||||||
buildInputs = [ makeWrapper docutils unzip ]
|
buildInputs = [ makeWrapper docutils unzip ]
|
||||||
++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices ];
|
++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices ];
|
||||||
|
|
||||||
propagatedBuildInputs = [ dulwich ];
|
|
||||||
|
|
||||||
makeFlags = [ "PREFIX=$(out)" ];
|
makeFlags = [ "PREFIX=$(out)" ];
|
||||||
|
|
||||||
postInstall = (stdenv.lib.optionalString guiSupport ''
|
postInstall = (stdenv.lib.optionalString guiSupport ''
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
writeScript,
|
writeScript,
|
||||||
writeText,
|
writeText,
|
||||||
writePython3,
|
writePython3,
|
||||||
|
system, # Note: This is the cross system we're compiling for
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# WARNING: this API is unstable and may be subject to backwards-incompatible changes in the future.
|
# WARNING: this API is unstable and may be subject to backwards-incompatible changes in the future.
|
||||||
|
@ -48,7 +49,7 @@ let
|
||||||
# A user is required by nix
|
# A user is required by nix
|
||||||
# https://github.com/NixOS/nix/blob/9348f9291e5d9e4ba3c4347ea1b235640f54fd79/src/libutil/util.cc#L478
|
# https://github.com/NixOS/nix/blob/9348f9291e5d9e4ba3c4347ea1b235640f54fd79/src/libutil/util.cc#L478
|
||||||
export USER=nobody
|
export USER=nobody
|
||||||
${nix}/bin/nix-store --load-db < ${closureInfo {rootPaths = contentsList;}}/registration
|
${buildPackages.nix}/bin/nix-store --load-db < ${closureInfo {rootPaths = contentsList;}}/registration
|
||||||
|
|
||||||
mkdir -p nix/var/nix/gcroots/docker/
|
mkdir -p nix/var/nix/gcroots/docker/
|
||||||
for i in ${lib.concatStringsSep " " contentsList}; do
|
for i in ${lib.concatStringsSep " " contentsList}; do
|
||||||
|
@ -56,6 +57,16 @@ let
|
||||||
done;
|
done;
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Map nixpkgs architecture to Docker notation
|
||||||
|
# Reference: https://github.com/docker-library/official-images#architectures-other-than-amd64
|
||||||
|
getArch = nixSystem: {
|
||||||
|
aarch64-linux = "arm64v8";
|
||||||
|
armv7l-linux = "arm32v7";
|
||||||
|
x86_64-linux = "amd64";
|
||||||
|
powerpc64le-linux = "ppc64le";
|
||||||
|
i686-linux = "i386";
|
||||||
|
}.${nixSystem} or "Can't map Nix system ${nixSystem} to Docker architecture notation. Please check that your input and your requested build are correct or update the mapping in Nixpkgs.";
|
||||||
|
|
||||||
in
|
in
|
||||||
rec {
|
rec {
|
||||||
|
|
||||||
|
@ -72,7 +83,7 @@ rec {
|
||||||
, imageDigest
|
, imageDigest
|
||||||
, sha256
|
, sha256
|
||||||
, os ? "linux"
|
, os ? "linux"
|
||||||
, arch ? buildPackages.go.GOARCH
|
, arch ? getArch system
|
||||||
|
|
||||||
# This is used to set name to the pulled image
|
# This is used to set name to the pulled image
|
||||||
, finalImageName ? imageName
|
, finalImageName ? imageName
|
||||||
|
@ -443,7 +454,7 @@ rec {
|
||||||
runCommand "${name}.tar.gz" {
|
runCommand "${name}.tar.gz" {
|
||||||
inherit (stream) imageName;
|
inherit (stream) imageName;
|
||||||
passthru = { inherit (stream) imageTag; };
|
passthru = { inherit (stream) imageTag; };
|
||||||
buildInputs = [ pigz ];
|
nativeBuildInputs = [ pigz ];
|
||||||
} "${stream} | pigz -nT > $out";
|
} "${stream} | pigz -nT > $out";
|
||||||
|
|
||||||
# 1. extract the base image
|
# 1. extract the base image
|
||||||
|
@ -488,7 +499,7 @@ rec {
|
||||||
baseJson = let
|
baseJson = let
|
||||||
pure = writeText "${baseName}-config.json" (builtins.toJSON {
|
pure = writeText "${baseName}-config.json" (builtins.toJSON {
|
||||||
inherit created config;
|
inherit created config;
|
||||||
architecture = buildPackages.go.GOARCH;
|
architecture = getArch system;
|
||||||
os = "linux";
|
os = "linux";
|
||||||
});
|
});
|
||||||
impure = runCommand "${baseName}-config.json"
|
impure = runCommand "${baseName}-config.json"
|
||||||
|
@ -715,7 +726,7 @@ rec {
|
||||||
streamScript = writePython3 "stream" {} ./stream_layered_image.py;
|
streamScript = writePython3 "stream" {} ./stream_layered_image.py;
|
||||||
baseJson = writeText "${name}-base.json" (builtins.toJSON {
|
baseJson = writeText "${name}-base.json" (builtins.toJSON {
|
||||||
inherit config;
|
inherit config;
|
||||||
architecture = buildPackages.go.GOARCH;
|
architecture = getArch system;
|
||||||
os = "linux";
|
os = "linux";
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -762,7 +773,7 @@ rec {
|
||||||
else
|
else
|
||||||
lib.head (lib.strings.splitString "-" (baseNameOf conf.outPath));
|
lib.head (lib.strings.splitString "-" (baseNameOf conf.outPath));
|
||||||
paths = referencesByPopularity overallClosure;
|
paths = referencesByPopularity overallClosure;
|
||||||
buildInputs = [ jq ];
|
nativeBuildInputs = [ jq ];
|
||||||
} ''
|
} ''
|
||||||
${if (tag == null) then ''
|
${if (tag == null) then ''
|
||||||
outName="$(basename "$out")"
|
outName="$(basename "$out")"
|
||||||
|
@ -826,7 +837,7 @@ rec {
|
||||||
# take images can know in advance how the image is supposed to be used.
|
# take images can know in advance how the image is supposed to be used.
|
||||||
isExe = true;
|
isExe = true;
|
||||||
};
|
};
|
||||||
buildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
} ''
|
} ''
|
||||||
makeWrapper ${streamScript} $out --add-flags ${conf}
|
makeWrapper ${streamScript} $out --add-flags ${conf}
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
# $ nix-build '<nixpkgs>' -A dockerTools.examples.redis
|
# $ nix-build '<nixpkgs>' -A dockerTools.examples.redis
|
||||||
# $ docker load < result
|
# $ docker load < result
|
||||||
|
|
||||||
{ pkgs, buildImage, pullImage, shadowSetup, buildImageWithNixDb }:
|
{ pkgs, buildImage, pullImage, shadowSetup, buildImageWithNixDb, pkgsCross }:
|
||||||
|
|
||||||
rec {
|
rec {
|
||||||
# 1. basic example
|
# 1. basic example
|
||||||
|
@ -407,4 +407,11 @@ rec {
|
||||||
contents = [ pkgs.bash pkgs.coreutils ] ++ nonRootShadowSetup { uid = 999; user = "somebody"; };
|
contents = [ pkgs.bash pkgs.coreutils ] ++ nonRootShadowSetup { uid = 999; user = "somebody"; };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# basic example, with cross compilation
|
||||||
|
cross-aarch64 = pkgsCross.aarch64-multiplatform.dockerTools.buildImage {
|
||||||
|
name = "hello-cross";
|
||||||
|
tag = "latest";
|
||||||
|
contents = pkgsCross.aarch64-multiplatform.hello;
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
102
pkgs/development/interpreters/cling/default.nix
Normal file
102
pkgs/development/interpreters/cling/default.nix
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
{ stdenv
|
||||||
|
, python
|
||||||
|
, libffi
|
||||||
|
, git
|
||||||
|
, cmake
|
||||||
|
, zlib
|
||||||
|
, fetchgit
|
||||||
|
, makeWrapper
|
||||||
|
, runCommand
|
||||||
|
, runCommandNoCC
|
||||||
|
, llvmPackages_5
|
||||||
|
, glibc
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
unwrapped = stdenv.mkDerivation rec {
|
||||||
|
pname = "cling-unwrapped";
|
||||||
|
version = "0.7";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = "http://root.cern/git/clang.git";
|
||||||
|
# This commit has the tag cling-0.7 so we use it, even though cpt.py
|
||||||
|
# tries to use refs/tags/cling-patches-rrelease_50
|
||||||
|
rev = "354b25b5d915ff3b1946479ad07f3f2768ea1621";
|
||||||
|
branchName = "cling-patches";
|
||||||
|
sha256 = "0q8q2nnvjx3v59ng0q3qqqhzmzf4pmfqqiy3rz1f3drx5w3lgyjg";
|
||||||
|
};
|
||||||
|
|
||||||
|
clingSrc = fetchgit {
|
||||||
|
url = "http://root.cern/git/cling.git";
|
||||||
|
rev = "70163975eee5a76b45a1ca4016bfafebc9b57e07";
|
||||||
|
sha256 = "1mv2fhk857kp5rq714bq49iv7gy9fgdwibydj5wy1kq2m3sf3ysi";
|
||||||
|
};
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
echo "add_llvm_external_project(cling)" >> tools/CMakeLists.txt
|
||||||
|
cp -r $clingSrc ./tools/cling
|
||||||
|
chmod -R a+w ./tools/cling
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [ python git cmake ];
|
||||||
|
buildInputs = [ libffi llvmPackages_5.llvm zlib ];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DLLVM_TARGETS_TO_BUILD=host;NVPTX"
|
||||||
|
"-DLLVM_ENABLE_RTTI=ON"
|
||||||
|
|
||||||
|
# Setting -DCLING_INCLUDE_TESTS=ON causes the cling/tools targets to be built;
|
||||||
|
# see cling/tools/CMakeLists.txt
|
||||||
|
"-DCLING_INCLUDE_TESTS=ON"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "The Interactive C++ Interpreter";
|
||||||
|
homepage = "https://root.cern/cling/";
|
||||||
|
license = with licenses; [ lgpl21 ncsa ];
|
||||||
|
maintainers = with maintainers; [ thomasjm ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# The flags passed to the wrapped cling should
|
||||||
|
# a) prevent it from searching for system include files and libs, and
|
||||||
|
# b) provide it with the include files and libs it needs (C and C++ standard library)
|
||||||
|
|
||||||
|
# These are also exposed as cling.flags/cling.compilerIncludeFlags because it's handy to be
|
||||||
|
# able to pass them to tools that wrap Cling, particularly Jupyter kernels such as xeus-cling
|
||||||
|
# and the built-in jupyter-cling-kernel. Both of these use Cling as a library by linking against
|
||||||
|
# libclingJupyter.so, so the makeWrapper approach to wrapping the binary doesn't work.
|
||||||
|
# Thus, if you're packaging a Jupyter kernel, you either need to pass these flags as extra
|
||||||
|
# args to xcpp (for xeus-cling) or put them in the environment variable CLING_OPTS
|
||||||
|
# (for jupyter-cling-kernel)
|
||||||
|
flags = [
|
||||||
|
"-nostdinc"
|
||||||
|
"-nostdinc++"
|
||||||
|
"-isystem" "${glibc.dev}/include"
|
||||||
|
"-I" "${unwrapped}/include"
|
||||||
|
"-I" "${unwrapped}/lib/clang/5.0.2/include"
|
||||||
|
];
|
||||||
|
|
||||||
|
# Autodetect the include paths for the compiler used to build Cling, in the same way Cling does at
|
||||||
|
# https://github.com/root-project/cling/blob/v0.7/lib/Interpreter/CIFactory.cpp#L107:L111
|
||||||
|
# Note: it would be nice to just put the compiler in Cling's PATH and let it do this by itself, but
|
||||||
|
# unfortunately passing -nostdinc/-nostdinc++ disables Cling's autodetection logic.
|
||||||
|
compilerIncludeFlags = runCommandNoCC "compiler-include-flags.txt" {} ''
|
||||||
|
export LC_ALL=C
|
||||||
|
${stdenv.cc}/bin/c++ -xc++ -E -v /dev/null 2>&1 | sed -n -e '/^.include/,''${' -e '/^ \/.*++/p' -e '}' > tmp
|
||||||
|
sed -e 's/^/-isystem /' -i tmp
|
||||||
|
tr '\n' ' ' < tmp > $out
|
||||||
|
'';
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
runCommand "cling-${unwrapped.version}" {
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
inherit unwrapped flags compilerIncludeFlags;
|
||||||
|
inherit (unwrapped) meta;
|
||||||
|
} ''
|
||||||
|
makeWrapper $unwrapped/bin/cling $out/bin/cling \
|
||||||
|
--add-flags "$(cat "$compilerIncludeFlags")" \
|
||||||
|
--add-flags "$flags"
|
||||||
|
''
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiokafka";
|
pname = "aiokafka";
|
||||||
version = "0.6.0";
|
version = "0.7.0";
|
||||||
|
|
||||||
disabled = isPy27;
|
disabled = isPy27;
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||||
owner = "aio-libs";
|
owner = "aio-libs";
|
||||||
repo = "aiokafka";
|
repo = "aiokafka";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1l5nkz9blmfrbsj7m76vm8vcfdgvab33anzpq62384scp9yf8dln";
|
sha256 = "16pcgv38syqy6sj3w7zx95zgynpd642n3i95dpiw0ivhpqrxxhrf";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "alerta-server";
|
pname = "alerta-server";
|
||||||
version = "8.0.3";
|
version = "8.1.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "894d240c51428225264867a80094b9743d71272635a18ddfefa5832b61fed2c6";
|
sha256 = "32a97eee95aea5527f6efa844c18b727fe4a6d61356ea3c0769a29a163ddcb7e";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
||||||
pymongo
|
pymongo
|
||||||
python-dateutil
|
python-dateutil
|
||||||
pytz
|
pytz
|
||||||
pyyaml
|
pyyaml
|
||||||
requests
|
requests
|
||||||
requests-hawk
|
requests-hawk
|
||||||
sentry-sdk
|
sentry-sdk
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "asana";
|
pname = "asana";
|
||||||
version = "0.8.2";
|
version = "0.10.3";
|
||||||
|
|
||||||
# upstream reportedly doesn't support 3.7 yet, blocked on
|
# upstream reportedly doesn't support 3.7 yet, blocked on
|
||||||
# https://bugs.python.org/issue34226
|
# https://bugs.python.org/issue34226
|
||||||
|
@ -14,7 +14,7 @@ buildPythonPackage rec {
|
||||||
owner = "asana";
|
owner = "asana";
|
||||||
repo = "python-asana";
|
repo = "python-asana";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "113zwnrpim1pdw8dzid2wpp5gzr2zk26jjl4wrwhgj0xk1cw94yi";
|
sha256 = "11nsfygcfpc2qb2gy4npi9w00cqfh88g7k3rsfq7xambz1zjdz1n";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkInputs = [ pytest responses ];
|
checkInputs = [ pytest responses ];
|
||||||
|
|
25
pkgs/development/python-modules/littleutils/default.nix
Normal file
25
pkgs/development/python-modules/littleutils/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
{ buildPythonPackage
|
||||||
|
, fetchPypi
|
||||||
|
, lib
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "littleutils";
|
||||||
|
version = "0.2.2";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "0vwijrylppmk0nbddqvn527r9cg3zw8d6zk6r58hslry42jf7jp6";
|
||||||
|
};
|
||||||
|
|
||||||
|
# This tiny package has no unit tests at all
|
||||||
|
doCheck = false;
|
||||||
|
pythonImportsCheck = [ "littleutils" ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Small collection of Python utility functions";
|
||||||
|
homepage = "https://github.com/alexmojaki/littleutils";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ jluttine ];
|
||||||
|
};
|
||||||
|
}
|
54
pkgs/development/python-modules/stack-data/default.nix
Normal file
54
pkgs/development/python-modules/stack-data/default.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
{ asttokens
|
||||||
|
, buildPythonPackage
|
||||||
|
, executing
|
||||||
|
, fetchFromGitHub
|
||||||
|
, git
|
||||||
|
, lib
|
||||||
|
, littleutils
|
||||||
|
, pure-eval
|
||||||
|
, pygments
|
||||||
|
, pytestCheckHook
|
||||||
|
, setuptools_scm
|
||||||
|
, toml
|
||||||
|
, typeguard
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "stack_data";
|
||||||
|
version = "0.0.7";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "alexmojaki";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "148lhxihak8jm5dvryhsiykmn3s4mrlba8ki4dy1nbd8jnz06a4w";
|
||||||
|
};
|
||||||
|
|
||||||
|
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
git
|
||||||
|
setuptools_scm
|
||||||
|
toml
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
asttokens
|
||||||
|
executing
|
||||||
|
pure-eval
|
||||||
|
];
|
||||||
|
|
||||||
|
checkInputs = [
|
||||||
|
littleutils
|
||||||
|
pygments
|
||||||
|
pytestCheckHook
|
||||||
|
typeguard
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Extract data from stack frames and tracebacks";
|
||||||
|
homepage = "https://github.com/alexmojaki/stack_data/";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ jluttine ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -17,11 +17,11 @@ let
|
||||||
}.${lib.versions.majorMinor php.version} or (throw "Unsupported PHP version.");
|
}.${lib.versions.majorMinor php.version} or (throw "Unsupported PHP version.");
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "php-blackfire";
|
pname = "php-blackfire";
|
||||||
version = "1.43.0";
|
version = "1.44.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire-php/blackfire-php_${version}_amd64.deb";
|
url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire-php/blackfire-php_${version}_amd64.deb";
|
||||||
sha256 = "1038qbpqkamd51ip25z6fbbz69faggahhdw75lnsd8prrwjcpli7";
|
sha256 = "15y1244bbs07i7rg6cy8kynp1may4mbkmmwbxgq8q5zma3ldc8ci";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "microcode-intel";
|
pname = "microcode-intel";
|
||||||
version = "20201112";
|
version = "20201118";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "intel";
|
owner = "intel";
|
||||||
repo = "Intel-Linux-Processor-Microcode-Data-Files";
|
repo = "Intel-Linux-Processor-Microcode-Data-Files";
|
||||||
rev = "microcode-${version}";
|
rev = "microcode-${version}";
|
||||||
sha256 = "104l3py5z6405wpa2fscqpc5r9dgrf1ckaf27hrswivi32gvp7f2";
|
sha256 = "1xs3f2rbfqnpz9qs7a1kl363qdyb8fybmmyd37v573clqf7l4lgg";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ iucode-tool libarchive ];
|
nativeBuildInputs = [ iucode-tool libarchive ];
|
||||||
|
|
|
@ -98,15 +98,15 @@ in rec {
|
||||||
# Series Type Rel. Date Sec. Fixes EOL
|
# Series Type Rel. Date Sec. Fixes EOL
|
||||||
# 13.x LTS 2014-10-24 2020-10-24 2021-10-24
|
# 13.x LTS 2014-10-24 2020-10-24 2021-10-24
|
||||||
# 16.x LTS 2018-10-09 2022-10-09 2023-10-09
|
# 16.x LTS 2018-10-09 2022-10-09 2023-10-09
|
||||||
|
# 17.x Standard 2019-10-28 2020-10-28 2021-10-28
|
||||||
# 18.x LTS 2020-10-20 2024-10-20 2025-10-20
|
# 18.x LTS 2020-10-20 2024-10-20 2025-10-20
|
||||||
asterisk-lts = asterisk_18;
|
asterisk-lts = asterisk_18;
|
||||||
# 17.x Standard 2019-10-28 2020-10-28 2021-10-28
|
|
||||||
asterisk-stable = asterisk_18;
|
asterisk-stable = asterisk_18;
|
||||||
asterisk = asterisk_18;
|
asterisk = asterisk_18;
|
||||||
|
|
||||||
asterisk_13 = common {
|
asterisk_13 = common {
|
||||||
version = "13.37.1";
|
version = "13.38.0";
|
||||||
sha256 = "1zc3104zw4y7i8bhhgrgy3snq0zr1904p64ykfc3ldh4xyfy3ld6";
|
sha256 = "1kxff6pbry8nydkspi0mqllidz2lw3d3g3r127x8jwgx021x0rik";
|
||||||
externals = {
|
externals = {
|
||||||
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
||||||
"addons/mp3" = mp3-202;
|
"addons/mp3" = mp3-202;
|
||||||
|
@ -114,8 +114,8 @@ in rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
asterisk_16 = common {
|
asterisk_16 = common {
|
||||||
version = "16.14.1";
|
version = "16.15.0";
|
||||||
sha256 = "1lhh3npyy8hvy29jwjgapnxfjv1ahp2qdi4iq1d6a61ffhd20vfs";
|
sha256 = "12nc7ywm6w1xyn720kdc1sqz5wkjjrkxr25wisl02f4v5wz8py7m";
|
||||||
externals = {
|
externals = {
|
||||||
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
||||||
"addons/mp3" = mp3-202;
|
"addons/mp3" = mp3-202;
|
||||||
|
@ -123,8 +123,8 @@ in rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
asterisk_17 = common {
|
asterisk_17 = common {
|
||||||
version = "17.8.1";
|
version = "17.9.0";
|
||||||
sha256 = "0m7gw01kpvsc0f9lb1hiq5b4g1fdh4gdfyxlqxp6m37vgxh2a48p";
|
sha256 = "1fnm1z7g45m883ivkm36r4kqb7163bzazi70mwf0fc2rc28jd1z4";
|
||||||
externals = {
|
externals = {
|
||||||
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
||||||
"addons/mp3" = mp3-202;
|
"addons/mp3" = mp3-202;
|
||||||
|
@ -132,8 +132,8 @@ in rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
asterisk_18 = common {
|
asterisk_18 = common {
|
||||||
version = "18.0.1";
|
version = "18.1.0";
|
||||||
sha256 = "1kyly10pk7bpfqg3mjbvb8p795fnj9lvd29yp2xsxwgsqi1dn9p8";
|
sha256 = "1pq2nrf60xnvh2h1rv82bdfbxxxd277g68xas0vbfgr4531gc4nc";
|
||||||
externals = {
|
externals = {
|
||||||
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
"externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
|
||||||
"addons/mp3" = mp3-202;
|
"addons/mp3" = mp3-202;
|
||||||
|
|
|
@ -22,6 +22,11 @@ stdenv.mkDerivation rec {
|
||||||
patches = [
|
patches = [
|
||||||
./dont-keep-configure-flags.patch
|
./dont-keep-configure-flags.patch
|
||||||
./remove-mkdir-var.patch
|
./remove-mkdir-var.patch
|
||||||
|
# Fix cross-compilation (will be included in next release after 9.16.8)
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.isc.org/isc-projects/bind9/-/commit/35ca6df07277adff4df7472a0b01ea5438cdf1ff.patch";
|
||||||
|
sha256 = "1sj0hcd0wgkam7hrbp2vw2yymmni4azr9ixd9shz1l6ja90bdj9h";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ perl pkg-config ];
|
nativeBuildInputs = [ perl pkg-config ];
|
||||||
|
|
|
@ -26,11 +26,11 @@ in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pname = "postfix";
|
pname = "postfix";
|
||||||
|
|
||||||
version = "3.5.7";
|
version = "3.5.8";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "ftp://ftp.cs.uu.nl/mirror/postfix/postfix-release/official/${pname}-${version}.tar.gz";
|
url = "ftp://ftp.cs.uu.nl/mirror/postfix/postfix-release/official/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0q89iwan5yd84yrzdv3sqg1zanmw56bl2f5gyv5wfg8m9vqp995p";
|
sha256 = "0vs50z5p5xcrdbbkb0dnbx1sk5fx8d2z97sw2p2iip1yrwl2cn12";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper m4 ];
|
nativeBuildInputs = [ makeWrapper m4 ];
|
||||||
|
|
|
@ -3,13 +3,12 @@
|
||||||
, python3, gss, libmysqlclient, system-sendmail }:
|
, python3, gss, libmysqlclient, system-sendmail }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "${project}-${version}";
|
pname = "mailutils";
|
||||||
project = "mailutils";
|
version = "3.10";
|
||||||
version = "3.9";
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/${project}/${name}.tar.xz";
|
url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "1g1xf2lal04nsnf1iym9n9n0wxjpqbcr9nysxpm98v4pniinqwsz";
|
sha256 = "17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -32,6 +31,18 @@ stdenv.mkDerivation rec {
|
||||||
patches = [
|
patches = [
|
||||||
./fix-build-mb-len-max.patch
|
./fix-build-mb-len-max.patch
|
||||||
./path-to-cat.patch
|
./path-to-cat.patch
|
||||||
|
# mailquota.c:277: undefined reference to `get_size'
|
||||||
|
# https://lists.gnu.org/archive/html/bug-mailutils/2020-08/msg00002.html
|
||||||
|
(fetchpatch {
|
||||||
|
url = "http://git.savannah.gnu.org/cgit/mailutils.git/patch/?id=37713b42a501892469234b90454731d8d8b7a3e6";
|
||||||
|
sha256 = "1mwj77nxvf4xvqf26yjs59jyksnizj0lmbymbzg4kmqynzq3zjny";
|
||||||
|
})
|
||||||
|
# Fix cross-compilation
|
||||||
|
# https://lists.gnu.org/archive/html/bug-mailutils/2020-11/msg00038.html
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://lists.gnu.org/archive/html/bug-mailutils/2020-11/txtiNjqcNpqOk.txt";
|
||||||
|
sha256 = "0ghzqb8qx2q8cffbvqzw19mivv7r5f16whplzhm7hdj0j2i6xf6s";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
enableParallelBuilding = false;
|
enableParallelBuilding = false;
|
||||||
|
|
|
@ -239,7 +239,7 @@ in
|
||||||
grsync = callPackage ../applications/misc/grsync { };
|
grsync = callPackage ../applications/misc/grsync { };
|
||||||
|
|
||||||
dockerTools = callPackage ../build-support/docker {
|
dockerTools = callPackage ../build-support/docker {
|
||||||
writePython3 = writers.writePython3;
|
writePython3 = buildPackages.writers.writePython3;
|
||||||
};
|
};
|
||||||
|
|
||||||
snapTools = callPackage ../build-support/snap { };
|
snapTools = callPackage ../build-support/snap { };
|
||||||
|
@ -10189,6 +10189,8 @@ in
|
||||||
|
|
||||||
ceptre = callPackage ../development/interpreters/ceptre { };
|
ceptre = callPackage ../development/interpreters/ceptre { };
|
||||||
|
|
||||||
|
cling = callPackage ../development/interpreters/cling { };
|
||||||
|
|
||||||
clips = callPackage ../development/interpreters/clips { };
|
clips = callPackage ../development/interpreters/clips { };
|
||||||
|
|
||||||
clisp = callPackage ../development/interpreters/clisp { };
|
clisp = callPackage ../development/interpreters/clisp { };
|
||||||
|
|
|
@ -3517,6 +3517,8 @@ in {
|
||||||
|
|
||||||
lirc = disabledIf isPy27 (toPythonModule (pkgs.lirc.override { python3 = python; }));
|
lirc = disabledIf isPy27 (toPythonModule (pkgs.lirc.override { python3 = python; }));
|
||||||
|
|
||||||
|
littleutils = callPackage ../development/python-modules/littleutils { };
|
||||||
|
|
||||||
livelossplot = callPackage ../development/python-modules/livelossplot { };
|
livelossplot = callPackage ../development/python-modules/livelossplot { };
|
||||||
|
|
||||||
livereload = callPackage ../development/python-modules/livereload { };
|
livereload = callPackage ../development/python-modules/livereload { };
|
||||||
|
@ -6926,6 +6928,8 @@ in {
|
||||||
|
|
||||||
sslyze = callPackage ../development/python-modules/sslyze { };
|
sslyze = callPackage ../development/python-modules/sslyze { };
|
||||||
|
|
||||||
|
stack-data = callPackage ../development/python-modules/stack-data { };
|
||||||
|
|
||||||
starlette = callPackage ../development/python-modules/starlette { };
|
starlette = callPackage ../development/python-modules/starlette { };
|
||||||
|
|
||||||
staticjinja = callPackage ../development/python-modules/staticjinja { };
|
staticjinja = callPackage ../development/python-modules/staticjinja { };
|
||||||
|
|
Loading…
Reference in a new issue