forked from mirrors/nixpkgs
Merge master into staging-next
This commit is contained in:
commit
ea4da560ff
|
@ -181,7 +181,7 @@
|
|||
rev = "${version}";
|
||||
```
|
||||
|
||||
- Filling lists condionally _should_ be done with `lib.optional(s)` instead of using `if cond then [ ... ] else null` or `if cond then [ ... ] else [ ]`.
|
||||
- Building lists conditionally _should_ be done with `lib.optional(s)` instead of using `if cond then [ ... ] else null` or `if cond then [ ... ] else [ ]`.
|
||||
|
||||
```nix
|
||||
buildInputs = lib.optional stdenv.isDarwin iconv;
|
||||
|
|
|
@ -1190,6 +1190,13 @@ Superuser created successfully.
|
|||
dropped because it was EOLed by upstream in 2021-10.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>virtualisation.pathsInNixDB</literal> option was
|
||||
renamed
|
||||
<link xlink:href="options.html#opt-virtualisation.additionalPaths"><literal>virtualisation.additionalPaths</literal></link>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section xml:id="sec-release-21.11-notable-changes">
|
||||
|
@ -1213,25 +1220,31 @@ Superuser created successfully.
|
|||
<para>
|
||||
In NixOS virtual machines (QEMU), the
|
||||
<literal>virtualisation</literal> module has been updated with
|
||||
new options to configure:
|
||||
new options:
|
||||
</para>
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
IPv4 port forwarding
|
||||
(<link xlink:href="options.html#opt-virtualisation.forwardPorts"><literal>virtualisation.forwardPorts</literal></link>),
|
||||
<link xlink:href="options.html#opt-virtualisation.forwardPorts"><literal>forwardPorts</literal></link>
|
||||
to configure IPv4 port forwarding,
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
shared host directories
|
||||
(<link xlink:href="options.html#opt-virtualisation.sharedDirectories"><literal>virtualisation.sharedDirectories</literal></link>),
|
||||
<link xlink:href="options.html#opt-virtualisation.sharedDirectories"><literal>sharedDirectories</literal></link>
|
||||
to set up shared host directories,
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
screen resolution
|
||||
(<link xlink:href="options.html#opt-virtualisation.resolution"><literal>virtualisation.resolution</literal></link>).
|
||||
<link xlink:href="options.html#opt-virtualisation.resolution"><literal>resolution</literal></link>
|
||||
to set the screen resolution,
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="options.html#opt-virtualisation.useNixStoreImage"><literal>useNixStoreImage</literal></link>
|
||||
to use a disk image for the Nix store instead of 9P.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
|
|
@ -366,16 +366,20 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||
|
||||
- Nextcloud 20 (`pkgs.nextcloud20`) has been dropped because it was EOLed by upstream in 2021-10.
|
||||
|
||||
- The `virtualisation.pathsInNixDB` option was renamed
|
||||
[`virtualisation.additionalPaths`](options.html#opt-virtualisation.additionalPaths).
|
||||
|
||||
## Other Notable Changes {#sec-release-21.11-notable-changes}
|
||||
|
||||
|
||||
- The linux kernel package infrastructure was moved out of `all-packages.nix`, and restructured. Linux related functions and attributes now live under the `pkgs.linuxKernel` attribute set.
|
||||
In particular the versioned `linuxPackages_*` package sets (such as `linuxPackages_5_4`) and kernels from `pkgs` were moved there and now live under `pkgs.linuxKernel.packages.*`. The unversioned ones (such as `linuxPackages_latest`) remain untouched.
|
||||
|
||||
- In NixOS virtual machines (QEMU), the `virtualisation` module has been updated with new options to configure:
|
||||
- IPv4 port forwarding ([`virtualisation.forwardPorts`](options.html#opt-virtualisation.forwardPorts)),
|
||||
- shared host directories ([`virtualisation.sharedDirectories`](options.html#opt-virtualisation.sharedDirectories)),
|
||||
- screen resolution ([`virtualisation.resolution`](options.html#opt-virtualisation.resolution)).
|
||||
- In NixOS virtual machines (QEMU), the `virtualisation` module has been updated with new options:
|
||||
- [`forwardPorts`](options.html#opt-virtualisation.forwardPorts) to configure IPv4 port forwarding,
|
||||
- [`sharedDirectories`](options.html#opt-virtualisation.sharedDirectories) to set up shared host directories,
|
||||
- [`resolution`](options.html#opt-virtualisation.resolution) to set the screen resolution,
|
||||
- [`useNixStoreImage`](options.html#opt-virtualisation.useNixStoreImage) to use a disk image for the Nix store instead of 9P.
|
||||
|
||||
In addition, the default [`msize`](options.html#opt-virtualisation.msize) parameter in 9P filesystems (including /nix/store and all shared directories) has been increased to 16K for improved performance.
|
||||
|
||||
|
|
|
@ -44,11 +44,14 @@
|
|||
# most likely fails as GRUB will probably refuse to install.
|
||||
partitionTableType ? "legacy"
|
||||
|
||||
, # Whether to invoke `switch-to-configuration boot` during image creation
|
||||
installBootLoader ? true
|
||||
|
||||
, # The root file system type.
|
||||
fsType ? "ext4"
|
||||
|
||||
, # Filesystem label
|
||||
label ? "nixos"
|
||||
label ? if onlyNixStore then "nix-store" else "nixos"
|
||||
|
||||
, # The initial NixOS configuration file to be copied to
|
||||
# /etc/nixos/configuration.nix.
|
||||
|
@ -57,10 +60,24 @@
|
|||
, # Shell code executed after the VM has finished.
|
||||
postVM ? ""
|
||||
|
||||
, # Copy the contents of the Nix store to the root of the image and
|
||||
# skip further setup. Incompatible with `contents`,
|
||||
# `installBootLoader` and `configFile`.
|
||||
onlyNixStore ? false
|
||||
|
||||
, name ? "nixos-disk-image"
|
||||
|
||||
, # Disk image format, one of qcow2, qcow2-compressed, vdi, vpc, raw.
|
||||
format ? "raw"
|
||||
|
||||
, # Whether a nix channel based on the current source tree should be
|
||||
# made available inside the image. Useful for interactive use of nix
|
||||
# utils, but changes the hash of the image when the sources are
|
||||
# updated.
|
||||
copyChannel ? true
|
||||
|
||||
, # Additional store paths to copy to the image's store.
|
||||
additionalPaths ? []
|
||||
}:
|
||||
|
||||
assert partitionTableType == "legacy" || partitionTableType == "legacy+gpt" || partitionTableType == "efi" || partitionTableType == "hybrid" || partitionTableType == "none";
|
||||
|
@ -71,6 +88,7 @@ assert lib.all
|
|||
(attrs: ((attrs.user or null) == null)
|
||||
== ((attrs.group or null) == null))
|
||||
contents;
|
||||
assert onlyNixStore -> contents == [] && configFile == null && !installBootLoader;
|
||||
|
||||
with lib;
|
||||
|
||||
|
@ -163,7 +181,14 @@ let format' = format; in let
|
|||
users = map (x: x.user or "''") contents;
|
||||
groups = map (x: x.group or "''") contents;
|
||||
|
||||
closureInfo = pkgs.closureInfo { rootPaths = [ config.system.build.toplevel channelSources ]; };
|
||||
basePaths = [ config.system.build.toplevel ]
|
||||
++ lib.optional copyChannel channelSources;
|
||||
|
||||
additionalPaths' = subtractLists basePaths additionalPaths;
|
||||
|
||||
closureInfo = pkgs.closureInfo {
|
||||
rootPaths = basePaths ++ additionalPaths';
|
||||
};
|
||||
|
||||
blockSize = toString (4 * 1024); # ext4fs block size (not block device sector size)
|
||||
|
||||
|
@ -251,7 +276,13 @@ let format' = format; in let
|
|||
chmod 755 "$TMPDIR"
|
||||
echo "running nixos-install..."
|
||||
nixos-install --root $root --no-bootloader --no-root-passwd \
|
||||
--system ${config.system.build.toplevel} --channel ${channelSources} --substituters ""
|
||||
--system ${config.system.build.toplevel} \
|
||||
${if copyChannel then "--channel ${channelSources}" else "--no-channel-copy"} \
|
||||
--substituters ""
|
||||
|
||||
${optionalString (additionalPaths' != []) ''
|
||||
nix copy --to $root --no-check-sigs ${concatStringsSep " " additionalPaths'}
|
||||
''}
|
||||
|
||||
diskImage=nixos.raw
|
||||
|
||||
|
@ -320,25 +351,29 @@ let format' = format; in let
|
|||
''}
|
||||
|
||||
echo "copying staging root to image..."
|
||||
cptofs -p ${optionalString (partitionTableType != "none") "-P ${rootPartition}"} -t ${fsType} -i $diskImage $root/* / ||
|
||||
cptofs -p ${optionalString (partitionTableType != "none") "-P ${rootPartition}"} \
|
||||
-t ${fsType} \
|
||||
-i $diskImage \
|
||||
$root${optionalString onlyNixStore builtins.storeDir}/* / ||
|
||||
(echo >&2 "ERROR: cptofs failed. diskSize might be too small for closure."; exit 1)
|
||||
'';
|
||||
in pkgs.vmTools.runInLinuxVM (
|
||||
pkgs.runCommand name
|
||||
{ preVM = prepareImage;
|
||||
|
||||
moveOrConvertImage = ''
|
||||
${if format == "raw" then ''
|
||||
mv $diskImage $out/${filename}
|
||||
'' else ''
|
||||
${pkgs.qemu}/bin/qemu-img convert -f raw -O ${format} ${compress} $diskImage $out/${filename}
|
||||
''}
|
||||
diskImage=$out/${filename}
|
||||
'';
|
||||
|
||||
buildImage = pkgs.vmTools.runInLinuxVM (
|
||||
pkgs.runCommand name {
|
||||
preVM = prepareImage;
|
||||
buildInputs = with pkgs; [ util-linux e2fsprogs dosfstools ];
|
||||
postVM = ''
|
||||
${if format == "raw" then ''
|
||||
mv $diskImage $out/${filename}
|
||||
'' else ''
|
||||
${pkgs.qemu}/bin/qemu-img convert -f raw -O ${format} ${compress} $diskImage $out/${filename}
|
||||
''}
|
||||
diskImage=$out/${filename}
|
||||
${postVM}
|
||||
'';
|
||||
postVM = moveOrConvertImage + postVM;
|
||||
memSize = 1024;
|
||||
}
|
||||
''
|
||||
} ''
|
||||
export PATH=${binPath}:$PATH
|
||||
|
||||
rootDisk=${if partitionTableType != "none" then "/dev/vda${rootPartition}" else "/dev/vda"}
|
||||
|
@ -368,11 +403,13 @@ in pkgs.vmTools.runInLinuxVM (
|
|||
cp ${configFile} /mnt/etc/nixos/configuration.nix
|
||||
''}
|
||||
|
||||
# Set up core system link, GRUB, etc.
|
||||
NIXOS_INSTALL_BOOTLOADER=1 nixos-enter --root $mountPoint -- /nix/var/nix/profiles/system/bin/switch-to-configuration boot
|
||||
${lib.optionalString installBootLoader ''
|
||||
# Set up core system link, GRUB, etc.
|
||||
NIXOS_INSTALL_BOOTLOADER=1 nixos-enter --root $mountPoint -- /nix/var/nix/profiles/system/bin/switch-to-configuration boot
|
||||
|
||||
# The above scripts will generate a random machine-id and we don't want to bake a single ID into all our images
|
||||
rm -f $mountPoint/etc/machine-id
|
||||
# The above scripts will generate a random machine-id and we don't want to bake a single ID into all our images
|
||||
rm -f $mountPoint/etc/machine-id
|
||||
''}
|
||||
|
||||
# Set the ownerships of the contents. The modes are set in preVM.
|
||||
# No globbing on targets, so no need to set -f
|
||||
|
@ -398,4 +435,9 @@ in pkgs.vmTools.runInLinuxVM (
|
|||
tune2fs -T now -c 0 -i 0 $rootDisk
|
||||
''}
|
||||
''
|
||||
)
|
||||
);
|
||||
in
|
||||
if onlyNixStore then
|
||||
pkgs.runCommand name {}
|
||||
(prepareImage + moveOrConvertImage + postVM)
|
||||
else buildImage
|
||||
|
|
|
@ -209,11 +209,30 @@ rec {
|
|||
let
|
||||
nodes = qemu_pkg:
|
||||
let
|
||||
testScript' =
|
||||
# Call the test script with the computed nodes.
|
||||
if lib.isFunction testScript
|
||||
then testScript { nodes = nodes qemu_pkg; }
|
||||
else testScript;
|
||||
|
||||
build-vms = import ./build-vms.nix {
|
||||
inherit system lib pkgs minimal specialArgs;
|
||||
extraConfigurations = extraConfigurations ++ [(
|
||||
{
|
||||
virtualisation.qemu.package = qemu_pkg;
|
||||
|
||||
# Make sure all derivations referenced by the test
|
||||
# script are available on the nodes. When the store is
|
||||
# accessed through 9p, this isn't important, since
|
||||
# everything in the store is available to the guest,
|
||||
# but when building a root image it is, as all paths
|
||||
# that should be available to the guest has to be
|
||||
# copied to the image.
|
||||
virtualisation.additionalPaths =
|
||||
lib.optional
|
||||
(builtins.hasContext testScript')
|
||||
(pkgs.writeStringReferencesToFile testScript');
|
||||
|
||||
# Ensure we do not use aliases. Ideally this is only set
|
||||
# when the test framework is used by Nixpkgs NixOS tests.
|
||||
nixpkgs.config.allowAliases = false;
|
||||
|
|
|
@ -122,6 +122,12 @@ let
|
|||
TMPDIR=$(mktemp -d nix-vm.XXXXXXXXXX --tmpdir)
|
||||
fi
|
||||
|
||||
${lib.optionalString cfg.useNixStoreImage
|
||||
''
|
||||
# Create a writable copy/snapshot of the store image.
|
||||
${qemu}/bin/qemu-img create -f qcow2 -F qcow2 -b ${storeImage}/nixos.qcow2 "$TMPDIR"/store.img
|
||||
''}
|
||||
|
||||
# Create a directory for exchanging data with the VM.
|
||||
mkdir -p "$TMPDIR/xchg"
|
||||
|
||||
|
@ -171,7 +177,7 @@ let
|
|||
'';
|
||||
|
||||
|
||||
regInfo = pkgs.closureInfo { rootPaths = config.virtualisation.pathsInNixDB; };
|
||||
regInfo = pkgs.closureInfo { rootPaths = config.virtualisation.additionalPaths; };
|
||||
|
||||
|
||||
# Generate a hard disk image containing a /boot partition and GRUB
|
||||
|
@ -263,11 +269,24 @@ let
|
|||
'' # */
|
||||
);
|
||||
|
||||
storeImage = import ../../lib/make-disk-image.nix {
|
||||
inherit pkgs config lib;
|
||||
additionalPaths = [ regInfo ];
|
||||
format = "qcow2";
|
||||
onlyNixStore = true;
|
||||
partitionTableType = "none";
|
||||
installBootLoader = false;
|
||||
diskSize = "auto";
|
||||
additionalSpace = "0M";
|
||||
copyChannel = false;
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
imports = [
|
||||
../profiles/qemu-guest.nix
|
||||
(mkRenamedOptionModule [ "virtualisation" "pathsInNixDB" ] [ "virtualisation" "additionalPaths" ])
|
||||
];
|
||||
|
||||
options = {
|
||||
|
@ -399,17 +418,23 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
virtualisation.pathsInNixDB =
|
||||
virtualisation.additionalPaths =
|
||||
mkOption {
|
||||
type = types.listOf types.path;
|
||||
default = [];
|
||||
description =
|
||||
''
|
||||
The list of paths whose closure is registered in the Nix
|
||||
database in the VM. All other paths in the host Nix store
|
||||
A list of paths whose closure should be made available to
|
||||
the VM.
|
||||
|
||||
When 9p is used, the closure is registered in the Nix
|
||||
database in the VM. All other paths in the host Nix store
|
||||
appear in the guest Nix store as well, but are considered
|
||||
garbage (because they are not registered in the Nix
|
||||
database in the guest).
|
||||
database of the guest).
|
||||
|
||||
When <option>virtualisation.useNixStoreImage</option> is
|
||||
set, the closure is copied to the Nix store image.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -608,6 +633,20 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
virtualisation.useNixStoreImage =
|
||||
mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Build and use a disk image for the Nix store, instead of
|
||||
accessing the host's one through 9p.
|
||||
|
||||
For applications which do a lot of reads from the store,
|
||||
this can drastically improve performance, but at the cost of
|
||||
disk space and image build time.
|
||||
'';
|
||||
};
|
||||
|
||||
virtualisation.useBootLoader =
|
||||
mkOption {
|
||||
type = types.bool;
|
||||
|
@ -740,7 +779,7 @@ in
|
|||
'';
|
||||
|
||||
# After booting, register the closure of the paths in
|
||||
# `virtualisation.pathsInNixDB' in the Nix database in the VM. This
|
||||
# `virtualisation.additionalPaths' in the Nix database in the VM. This
|
||||
# allows Nix operations to work in the VM. The path to the
|
||||
# registration file is passed through the kernel command line to
|
||||
# allow `system.build.toplevel' to be included. (If we had a direct
|
||||
|
@ -759,12 +798,21 @@ in
|
|||
|
||||
virtualisation.bootDevice = mkDefault (driveDeviceName 1);
|
||||
|
||||
virtualisation.pathsInNixDB = [ config.system.build.toplevel ];
|
||||
virtualisation.additionalPaths = [ config.system.build.toplevel ];
|
||||
|
||||
virtualisation.sharedDirectories = {
|
||||
nix-store = { source = "/nix/store"; target = "/nix/store"; };
|
||||
xchg = { source = ''"$TMPDIR"/xchg''; target = "/tmp/xchg"; };
|
||||
shared = { source = ''"''${SHARED_DIR:-$TMPDIR/xchg}"''; target = "/tmp/shared"; };
|
||||
nix-store = mkIf (!cfg.useNixStoreImage) {
|
||||
source = builtins.storeDir;
|
||||
target = "/nix/store";
|
||||
};
|
||||
xchg = {
|
||||
source = ''"$TMPDIR"/xchg'';
|
||||
target = "/tmp/xchg";
|
||||
};
|
||||
shared = {
|
||||
source = ''"''${SHARED_DIR:-$TMPDIR/xchg}"'';
|
||||
target = "/tmp/shared";
|
||||
};
|
||||
};
|
||||
|
||||
virtualisation.qemu.networkingOptions =
|
||||
|
@ -815,6 +863,11 @@ in
|
|||
driveExtraOpts.cache = "writeback";
|
||||
driveExtraOpts.werror = "report";
|
||||
}]
|
||||
(mkIf cfg.useNixStoreImage [{
|
||||
name = "nix-store";
|
||||
file = ''"$TMPDIR"/store.img'';
|
||||
deviceExtraOpts.bootindex = if cfg.useBootLoader then "3" else "2";
|
||||
}])
|
||||
(mkIf cfg.useBootLoader [
|
||||
# The order of this list determines the device names, see
|
||||
# note [Disk layout with `useBootLoader`].
|
||||
|
@ -865,6 +918,13 @@ in
|
|||
options = [ "mode=1777" "strictatime" "nosuid" "nodev" "size=${toString config.boot.tmpOnTmpfsSize}" ];
|
||||
};
|
||||
|
||||
"/nix/${if cfg.writableStore then ".ro-store" else "store"}" =
|
||||
mkIf cfg.useNixStoreImage
|
||||
{ device = "${lookupDriveDeviceName "nix-store" cfg.qemu.drives}";
|
||||
neededForBoot = true;
|
||||
options = [ "ro" ];
|
||||
};
|
||||
|
||||
"/nix/.rw-store" = mkIf (cfg.writableStore && cfg.writableStoreUseTmpfs)
|
||||
{ fsType = "tmpfs";
|
||||
options = [ "mode=0755" ];
|
||||
|
|
|
@ -56,7 +56,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
};
|
||||
|
||||
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
virtualisation.additionalPaths = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
|
|
|
@ -45,7 +45,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
};
|
||||
};
|
||||
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
virtualisation.additionalPaths = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript =
|
||||
|
|
|
@ -17,7 +17,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
virtualisation.memorySize = 1024;
|
||||
# Make sure we always have all the required dependencies for creating a
|
||||
# container available within the VM, because we don't have network access.
|
||||
virtualisation.pathsInNixDB = let
|
||||
virtualisation.additionalPaths = let
|
||||
emptyContainer = import ../lib/eval-config.nix {
|
||||
inherit (config.nixpkgs.localSystem) system;
|
||||
modules = lib.singleton {
|
||||
|
|
|
@ -27,7 +27,7 @@ in import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
|
||||
containers.webserver4 = webserverFor "10.231.136.1" "10.231.136.2";
|
||||
containers.webserver6 = webserverFor "fc00::2" "fc00::1";
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
virtualisation.additionalPaths = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
|
|
|
@ -29,7 +29,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
};
|
||||
};
|
||||
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
virtualisation.additionalPaths = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript =
|
||||
|
|
|
@ -26,7 +26,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
config = { };
|
||||
};
|
||||
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
virtualisation.additionalPaths = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
|
|
|
@ -28,6 +28,8 @@ import ./make-test-python.nix (
|
|||
{ nodes, ... }:
|
||||
{
|
||||
virtualisation.memorySize = 2048;
|
||||
virtualisation.cores = 4;
|
||||
virtualisation.useNixStoreImage = true;
|
||||
|
||||
imports = [ common/user-account.nix ];
|
||||
|
||||
|
|
|
@ -14,6 +14,8 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : with lib; {
|
|||
imports = [ common/user-account.nix ];
|
||||
|
||||
virtualisation.memorySize = if pkgs.stdenv.is64bit then 4096 else 2047;
|
||||
virtualisation.cores = 4;
|
||||
virtualisation.useNixStoreImage = true;
|
||||
systemd.services.gitlab.serviceConfig.Restart = mkForce "no";
|
||||
systemd.services.gitlab-workhorse.serviceConfig.Restart = mkForce "no";
|
||||
systemd.services.gitaly.serviceConfig.Restart = mkForce "no";
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# python deps
|
||||
, python, buildPythonPackage
|
||||
, alembic, beautifulsoup4, chardet, lxml, Mako, pyenchant
|
||||
, pyqt5_with_qtwebkit, pyxdg, sip_4, sqlalchemy, sqlalchemy_migrate
|
||||
, pyqt5_with_qtwebkit, pyxdg, sip_4, sqlalchemy, sqlalchemy-migrate
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -43,7 +43,7 @@ buildPythonPackage rec {
|
|||
pyxdg
|
||||
sip_4
|
||||
sqlalchemy
|
||||
sqlalchemy_migrate
|
||||
sqlalchemy-migrate
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
|
|
|
@ -36,7 +36,7 @@ in python.pkgs.buildPythonApplication rec {
|
|||
};
|
||||
|
||||
propagatedBuildInputs = with python.pkgs; [
|
||||
sqlalchemy_migrate
|
||||
sqlalchemy-migrate
|
||||
python-dateutil
|
||||
matplotlib
|
||||
lxml
|
||||
|
|
|
@ -3,16 +3,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "newsboat";
|
||||
version = "2.24";
|
||||
version = "2.25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "newsboat";
|
||||
repo = "newsboat";
|
||||
rev = "r${version}";
|
||||
sha256 = "0qb10w7pn9hiczjjpc0xanmc83p22ngcqcrkjwji5rl0sh8v9ii4";
|
||||
sha256 = "sha256-TAnGDxTKYl4niouS6nYdJDaIngAPsPHr9Bw9L3cR2Xk=";
|
||||
};
|
||||
|
||||
cargoSha256 = "0vhr8qyw4f3lc208mgl1m3z42igkbwly6wcv7g7jrq3c6dcwyhjn";
|
||||
cargoSha256 = "sha256-MxoyYBLbrCuLVa0p8JrYKSKu2oFPnXMwab42lhhAu48=";
|
||||
|
||||
# TODO: Check if that's still needed
|
||||
postPatch = lib.optionalString stdenv.isDarwin ''
|
||||
|
|
|
@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://vapier.github.io/pcalc/";
|
||||
description = "Programmer's calculator";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with lib.maintainers; [ ftrvxmtrx ];
|
||||
platforms = lib.platforms.linux;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ ftrvxmtrx ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -16,12 +16,12 @@ with lib;
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "gitea";
|
||||
version = "1.15.5";
|
||||
version = "1.15.6";
|
||||
|
||||
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
|
||||
src = fetchurl {
|
||||
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
|
||||
sha256 = "sha256-W+czWzo4keTLRPDLcTeYl3JSccwfq+P6k4ELADO9FVM=";
|
||||
sha256 = "sha256-FMM/iQAxJcymv4jYBzaBXG0Uy8UxHh9gFWB5gzV9cn0=";
|
||||
};
|
||||
|
||||
unpackPhase = ''
|
||||
|
|
|
@ -465,6 +465,88 @@ rec {
|
|||
'';
|
||||
|
||||
|
||||
/*
|
||||
* Extract a string's references to derivations and paths (its
|
||||
* context) and write them to a text file, removing the input string
|
||||
* itself from the dependency graph. This is useful when you want to
|
||||
* make a derivation depend on the string's references, but not its
|
||||
* contents (to avoid unnecessary rebuilds, for example).
|
||||
*
|
||||
* Note that this only works as intended on Nix >= 2.3.
|
||||
*/
|
||||
writeStringReferencesToFile = string:
|
||||
/*
|
||||
* The basic operation this performs is to copy the string context
|
||||
* from `string' to a second string and wrap that string in a
|
||||
* derivation. However, that alone is not enough, since nothing in the
|
||||
* string refers to the output paths of the derivations/paths in its
|
||||
* context, meaning they'll be considered build-time dependencies and
|
||||
* removed from the wrapper derivation's closure. Putting the
|
||||
* necessary output paths in the new string is however not very
|
||||
* straightforward - the attrset returned by `getContext' contains
|
||||
* only references to derivations' .drv-paths, not their output
|
||||
* paths. In order to "convert" them, we try to extract the
|
||||
* corresponding paths from the original string using regex.
|
||||
*/
|
||||
let
|
||||
# Taken from https://github.com/NixOS/nix/blob/130284b8508dad3c70e8160b15f3d62042fc730a/src/libutil/hash.cc#L84
|
||||
nixHashChars = "0123456789abcdfghijklmnpqrsvwxyz";
|
||||
context = builtins.getContext string;
|
||||
derivations = lib.filterAttrs (n: v: v ? outputs) context;
|
||||
# Objects copied from outside of the store, such as paths and
|
||||
# `builtins.fetch*`ed ones
|
||||
sources = lib.attrNames (lib.filterAttrs (n: v: v ? path) context);
|
||||
packages =
|
||||
lib.mapAttrs'
|
||||
(name: value:
|
||||
{
|
||||
inherit value;
|
||||
name = lib.head (builtins.match "${builtins.storeDir}/[${nixHashChars}]+-(.*)\.drv" name);
|
||||
})
|
||||
derivations;
|
||||
# The syntax of output paths differs between outputs named `out`
|
||||
# and other, explicitly named ones. For explicitly named ones,
|
||||
# the output name is suffixed as `-name`, but `out` outputs
|
||||
# aren't suffixed at all, and thus aren't easily distinguished
|
||||
# from named output paths. Therefore, we find all the named ones
|
||||
# first so we can use them to remove false matches when looking
|
||||
# for `out` outputs (see the definition of `outputPaths`).
|
||||
namedOutputPaths =
|
||||
lib.flatten
|
||||
(lib.mapAttrsToList
|
||||
(name: value:
|
||||
(map
|
||||
(output:
|
||||
lib.filter
|
||||
lib.isList
|
||||
(builtins.split "(${builtins.storeDir}/[${nixHashChars}]+-${name}-${output})" string))
|
||||
(lib.remove "out" value.outputs)))
|
||||
packages);
|
||||
# Only `out` outputs
|
||||
outputPaths =
|
||||
lib.flatten
|
||||
(lib.mapAttrsToList
|
||||
(name: value:
|
||||
if lib.elem "out" value.outputs then
|
||||
lib.filter
|
||||
(x: lib.isList x &&
|
||||
# If the matched path is in `namedOutputPaths`,
|
||||
# it's a partial match of an output path where
|
||||
# the output name isn't `out`
|
||||
lib.all (o: !lib.hasPrefix (lib.head x) o) namedOutputPaths)
|
||||
(builtins.split "(${builtins.storeDir}/[${nixHashChars}]+-${name})" string)
|
||||
else
|
||||
[])
|
||||
packages);
|
||||
allPaths = lib.concatStringsSep "\n" (lib.unique (sources ++ namedOutputPaths ++ outputPaths));
|
||||
allPathsWithContext = builtins.appendContext allPaths context;
|
||||
in
|
||||
if builtins ? getContext then
|
||||
writeText "string-references" allPathsWithContext
|
||||
else
|
||||
writeDirectReferencesToFile (writeText "string-file" string);
|
||||
|
||||
|
||||
/* Print an error message if the file with the specified name and
|
||||
* hash doesn't exist in the Nix store. This function should only
|
||||
* be used by non-redistributable software with an unfree license
|
||||
|
|
|
@ -38,11 +38,27 @@ nixosTest {
|
|||
DIRECT_REFS = invokeSamples ./test/invoke-writeDirectReferencesToFile.nix;
|
||||
};
|
||||
};
|
||||
testScript = ''
|
||||
machine.succeed("""
|
||||
${./test.sh} 2>/dev/console
|
||||
""")
|
||||
'';
|
||||
testScript =
|
||||
let
|
||||
sample = import ./test/sample.nix { inherit pkgs; };
|
||||
samplePaths = lib.unique (lib.attrValues sample);
|
||||
sampleText = pkgs.writeText "sample-text" (lib.concatStringsSep "\n" samplePaths);
|
||||
stringReferencesText =
|
||||
pkgs.writeStringReferencesToFile
|
||||
((lib.concatMapStringsSep "fillertext"
|
||||
(d: "${d}")
|
||||
(lib.attrValues sample)) + ''
|
||||
STORE=${builtins.storeDir};\nsystemctl start bar-foo.service
|
||||
'');
|
||||
in ''
|
||||
machine.succeed("""
|
||||
${./test.sh} 2>/dev/console
|
||||
""")
|
||||
machine.succeed("""
|
||||
echo >&2 Testing string references...
|
||||
diff -U3 <(sort ${stringReferencesText}) <(sort ${sampleText})
|
||||
""")
|
||||
'';
|
||||
meta = {
|
||||
license = lib.licenses.mit; # nixpkgs license
|
||||
maintainers = with lib.maintainers; [
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
let
|
||||
inherit (pkgs)
|
||||
figlet
|
||||
zlib
|
||||
hello
|
||||
writeText
|
||||
;
|
||||
|
@ -9,8 +10,13 @@ in
|
|||
{
|
||||
hello = hello;
|
||||
figlet = figlet;
|
||||
zlib = zlib;
|
||||
zlib-dev = zlib.dev;
|
||||
norefs = writeText "hi" "hello";
|
||||
norefsDup = writeText "hi" "hello";
|
||||
helloRef = writeText "hi" "hello ${hello}";
|
||||
helloRefDup = writeText "hi" "hello ${hello}";
|
||||
path = ./invoke-writeReferencesToFile.nix;
|
||||
helloFigletRef = writeText "hi" "hello ${hello} ${figlet}";
|
||||
inherit (pkgs)
|
||||
emptyFile
|
||||
|
|
|
@ -54,7 +54,7 @@ with lib;
|
|||
with builtins;
|
||||
|
||||
let majorVersion = "8";
|
||||
version = "${majorVersion}.4.0";
|
||||
version = "${majorVersion}.5.0";
|
||||
|
||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||
|
||||
|
@ -90,7 +90,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
|
||||
sha256 = "1m1d3gfix56w4aq8myazzfffkl8bqcrx4jhhapnjf7qfs596w2p3";
|
||||
sha256 = "0l7d4m9jx124xsk6xardchgy2k5j5l2b15q322k31f0va4d8826k";
|
||||
};
|
||||
|
||||
inherit patches;
|
||||
|
|
19
pkgs/development/ocaml-modules/dune-site/default.nix
Normal file
19
pkgs/development/ocaml-modules/dune-site/default.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{ lib, buildDunePackage, dune_2, dune-private-libs }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "dune-site";
|
||||
inherit (dune_2) src version patches;
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
dontAddPrefix = true;
|
||||
|
||||
propagatedBuildInputs = [ dune-private-libs ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A library for embedding location information inside executable and libraries";
|
||||
inherit (dune_2.meta) homepage;
|
||||
maintainers = with lib.maintainers; [ superherointj ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aionotion";
|
||||
version = "3.0.2";
|
||||
version = "2021.10.0";
|
||||
format = "pyproject";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
owner = "bachya";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1328g2245h9gcrnzrbcxaxw78723d0skznrrj8k77fbijxdc4kwv";
|
||||
sha256 = "sha256-5bu2XveDi2e6lGdI/T+0apqXzcnqdztVtaHEpp+Vkzs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ poetry-core ];
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioridwell";
|
||||
version = "0.2.0";
|
||||
version = "2021.10.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -26,7 +26,7 @@ buildPythonPackage rec {
|
|||
owner = "bachya";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0kzxh1igncql1rwh12n42qahlc94z0fsd344d1vgni50jg7i34v7";
|
||||
sha256 = "sha256-h89gfdZvk7H22xAczaPMscTYZu0YeFxvFfL6/Oz2cJw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiowatttime";
|
||||
version = "0.1.1";
|
||||
version = "2021.10.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
owner = "bachya";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1614p5ca7x9ipz7dgwhiz83dfwn6hyliawa8pr2j9y2kn8cg2sdm";
|
||||
sha256 = "sha256-cWXhQMgRYBzOVgUQWONIwWFB5n/f0lqkSjUb9IoPwtI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ lib, buildPythonPackage, fetchPypi, pythonOlder, setuptools
|
||||
, twiggy, requests, offtrac, bugzilla, taskw, python-dateutil, pytz, keyring, six
|
||||
, jinja2, pycurl, dogpile_cache, lockfile, click, pyxdg, future, jira }:
|
||||
, jinja2, pycurl, dogpile-cache, lockfile, click, pyxdg, future, jira }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bugwarrior";
|
||||
|
@ -15,7 +15,7 @@ buildPythonPackage rec {
|
|||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
twiggy requests offtrac bugzilla taskw python-dateutil pytz keyring six
|
||||
jinja2 pycurl dogpile_cache lockfile click pyxdg future jira
|
||||
jinja2 pycurl dogpile-cache lockfile click pyxdg future jira
|
||||
];
|
||||
|
||||
# for the moment oauth2client <4.0.0 and megaplan>=1.4 are missing for running the test suite.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, lib, buildPythonPackage, fetchPypi, makeWrapper, isPy3k
|
||||
, python, twisted, jinja2, zope_interface, sqlalchemy
|
||||
, sqlalchemy_migrate, python-dateutil, txaio, autobahn, pyjwt, pyyaml, unidiff, treq
|
||||
, sqlalchemy-migrate, python-dateutil, txaio, autobahn, pyjwt, pyyaml, unidiff, treq
|
||||
, txrequests, pypugjs, boto3, moto, mock, lz4, setuptoolsTrial
|
||||
, isort, pylint, flake8, buildbot-worker, buildbot-pkg, buildbot-plugins
|
||||
, parameterized, git, openssh, glibcLocales, ldap3, nixosTests
|
||||
|
@ -44,7 +44,7 @@ let
|
|||
jinja2
|
||||
zope_interface
|
||||
sqlalchemy
|
||||
sqlalchemy_migrate
|
||||
sqlalchemy-migrate
|
||||
python-dateutil
|
||||
txaio
|
||||
autobahn
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
, setuptools-scm
|
||||
, libdeltachat
|
||||
, cffi
|
||||
, IMAPClient
|
||||
, imapclient
|
||||
, pluggy
|
||||
, requests
|
||||
, setuptools
|
||||
|
@ -31,7 +31,7 @@ buildPythonPackage rec {
|
|||
|
||||
propagatedBuildInputs = [
|
||||
cffi
|
||||
IMAPClient
|
||||
imapclient
|
||||
pluggy
|
||||
requests
|
||||
setuptools
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pythonOlder
|
||||
, pytest
|
||||
, pytest-cov
|
||||
, pytestCheckHook
|
||||
, mock
|
||||
, Mako
|
||||
, decorator
|
||||
|
@ -11,29 +10,27 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dogpile.cache";
|
||||
pname = "dogpile-cache";
|
||||
version = "1.1.4";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "dogpile.cache";
|
||||
inherit version;
|
||||
sha256 = "ea09bebf24bb7c028caf98963785fe9ad0bd397305849a3303bc5380d468d813";
|
||||
};
|
||||
|
||||
# Disable concurrency tests that often fail,
|
||||
# probably some kind of timing issue.
|
||||
postPatch = ''
|
||||
preCheck = ''
|
||||
# Disable concurrency tests that often fail,
|
||||
# probably some kind of timing issue.
|
||||
rm tests/test_lock.py
|
||||
# Failing tests. https://bitbucket.org/zzzeek/dogpile.cache/issues/116
|
||||
rm tests/cache/test_memcached_backend.py
|
||||
'';
|
||||
|
||||
dontUseSetuptoolsCheck = true;
|
||||
checkPhase = ''
|
||||
pytest
|
||||
'';
|
||||
|
||||
checkInputs = [ pytest pytest-cov mock Mako ];
|
||||
checkInputs = [ pytestCheckHook mock Mako ];
|
||||
|
||||
propagatedBuildInputs = [ decorator stevedore ];
|
||||
|
||||
|
@ -41,5 +38,6 @@ buildPythonPackage rec {
|
|||
description = "A caching front-end based on the Dogpile lock";
|
||||
homepage = "https://bitbucket.org/zzzeek/dogpile.cache";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
|
@ -1,19 +1,23 @@
|
|||
{ lib, buildPythonPackage, fetchPypi }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dogpile.core";
|
||||
pname = "dogpile-core";
|
||||
version = "0.4.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "dogpile.core";
|
||||
inherit version;
|
||||
sha256 = "0xpdvg4kr1isfkrh1rfsh7za4q5a5s6l2kf9wpvndbwf3aqjyrdy";
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "dogpile.core" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A 'dogpile' lock, typically used as a component of a larger caching solution";
|
||||
homepage = "https://bitbucket.org/zzzeek/dogpile.core";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
|
@ -7,7 +7,7 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "IMAPClient";
|
||||
pname = "imapclient";
|
||||
version = "2.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
, dnspython
|
||||
, html2text
|
||||
, mail-parser
|
||||
, IMAPClient
|
||||
, imapclient
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -25,7 +25,7 @@ buildPythonPackage rec {
|
|||
dnspython
|
||||
html2text
|
||||
mail-parser
|
||||
IMAPClient
|
||||
imapclient
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "mailsuite" ];
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
, fetchPypi
|
||||
, appdirs
|
||||
, cryptography
|
||||
, dogpile_cache
|
||||
, dogpile-cache
|
||||
, jmespath
|
||||
, jsonpatch
|
||||
, keystoneauth1
|
||||
|
@ -29,7 +29,7 @@ buildPythonPackage rec {
|
|||
propagatedBuildInputs = [
|
||||
appdirs
|
||||
cryptography
|
||||
dogpile_cache
|
||||
dogpile-cache
|
||||
jmespath
|
||||
jsonpatch
|
||||
keystoneauth1
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
, oslotest
|
||||
, pbr
|
||||
, sqlalchemy
|
||||
, sqlalchemy_migrate
|
||||
, sqlalchemy-migrate
|
||||
, stestr
|
||||
, testresources
|
||||
, testscenarios
|
||||
|
@ -32,7 +32,7 @@ buildPythonPackage rec {
|
|||
oslo-context
|
||||
oslo-utils
|
||||
sqlalchemy
|
||||
sqlalchemy_migrate
|
||||
sqlalchemy-migrate
|
||||
testresources
|
||||
testscenarios
|
||||
];
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
, publicsuffix2
|
||||
, xmltodict
|
||||
, geoip2
|
||||
, IMAPClient
|
||||
, imapclient
|
||||
, dateparser
|
||||
, elasticsearch-dsl
|
||||
, kafka-python
|
||||
|
@ -49,7 +49,7 @@ buildPythonPackage rec {
|
|||
publicsuffix2
|
||||
xmltodict
|
||||
geoip2
|
||||
IMAPClient
|
||||
imapclient
|
||||
dateparser
|
||||
elasticsearch-dsl
|
||||
kafka-python
|
||||
|
|
|
@ -12,11 +12,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "phonopy";
|
||||
version = "2.11.0";
|
||||
version = "2.12.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "2ab47d3eb53a5265f3567974d29760b510b3312217358b76efc27ade9bd1a9f0";
|
||||
sha256 = "ff65065f418ccbff9fbc1186b9a65581e83b42789aa4a656f45badfff9bd3f61";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
, pbr
|
||||
, appdirs
|
||||
, cliff
|
||||
, dogpile_cache
|
||||
, dogpile-cache
|
||||
, jsonschema
|
||||
, keystoneauth1
|
||||
, openstacksdk
|
||||
|
@ -31,7 +31,7 @@ buildPythonApplication rec {
|
|||
pbr
|
||||
appdirs
|
||||
cliff
|
||||
dogpile_cache
|
||||
dogpile-cache
|
||||
jsonschema
|
||||
keystoneauth1
|
||||
openstacksdk
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
, beautifulsoup4
|
||||
, requests
|
||||
, click
|
||||
, dogpile_cache
|
||||
, dogpile-cache
|
||||
, stevedore
|
||||
, chardet
|
||||
, pysrt
|
||||
|
@ -34,7 +34,7 @@ buildPythonPackage rec {
|
|||
|
||||
propagatedBuildInputs = [
|
||||
guessit babelfish enzyme beautifulsoup4 requests
|
||||
click dogpile_cache stevedore chardet pysrt six
|
||||
click dogpile-cache stevedore chardet pysrt six
|
||||
appdirs rarfile pytz
|
||||
];
|
||||
|
||||
|
|
|
@ -115,14 +115,14 @@ rec {
|
|||
headers = "1fvqkw08pync38ixi5cq4f8a108k2ajxpm1w2f8sn2hjph9kpbsd";
|
||||
};
|
||||
|
||||
electron_13 = mkElectron "13.6.0" {
|
||||
armv7l-linux = "03141d99268b1e71b64fd663c678591a02544c99475967d511041ab2c5de262c";
|
||||
aarch64-linux = "309014cce9216e3b0a0015a7a31c33e39c63af0b7781e50d3e630fb1d7d3a4ee";
|
||||
x86_64-linux = "b7f88baa69ea6c06ca16e215b01ad673cd922d3a0c9239868ddd0072af4e035e";
|
||||
i686-linux = "b588e4fe82e6c37fe838a3cf592a2a4cf6166f26dad97dd7597818d7714ddc94";
|
||||
x86_64-darwin = "250228bc5a186601d831f86faf394fba732436ddec86c1ef70e4d3d7ff9342c7";
|
||||
aarch64-darwin = "fd3886830fa291db38cc770176ddb3167f8fb90065fcb124394b3ca32965108d";
|
||||
headers = "1rmx0gvcsvba24fsjv14vmmd52h1nzscgmf1g9i46kzc13y0hn4z";
|
||||
electron_13 = mkElectron "13.6.1" {
|
||||
armv7l-linux = "c8bba8da0baf5cde3eb4823c801c228abfa7943c69131b3701c74e2b342e1813";
|
||||
aarch64-linux = "09a1ff29c33a23f19cc702e0147dee03cfe2acedcff6bfb63c7911184b871a1a";
|
||||
x86_64-linux = "bfc09dd2d591ad614c8d598dad6e13b76c3baf4f48773e7819c493b524a0bb1a";
|
||||
i686-linux = "1ea7c7d19759fa0ee0ddef68c09bcc1c57265436d3f5dab37dad3567f117f317";
|
||||
x86_64-darwin = "ce45f17f875d72e791999eaf30a1af39b6e9143e57a653e7f06cfa0bee9b985d";
|
||||
aarch64-darwin = "e2f82720acae3a03d7d4b3e7dcc7697b84d5bb69a63d087a7420ace2412e7a28";
|
||||
headers = "1bd87c74863w0sjs8gfxl62kjjscc56dmmw85vhwz01s4niksr02";
|
||||
};
|
||||
|
||||
electron_14 = mkElectron "14.2.0" {
|
||||
|
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "terraform-ls";
|
||||
version = "0.22.0";
|
||||
version = "0.23.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hashicorp";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-sfAn9FkOs9/yA7ciRD9gWbx5VwZveqPMYBQhSBkzYlo=";
|
||||
sha256 = "sha256-hntHEBc1/KSg12x+gv32aNiA2cJ7PWBeftNhI8u+rlw=";
|
||||
};
|
||||
vendorSha256 = "sha256-egv2+4esvfYccwmyHm23bec/QN6dGWvJVLG19959LPY=";
|
||||
vendorSha256 = "sha256-usPIhXWdp/pSAFH0LepG1/Uolfr/1SExinrAjMuB6zg=";
|
||||
|
||||
ldflags = [ "-s" "-w" "-X main.version=v${version}" "-X main.prerelease=" ];
|
||||
|
||||
|
|
|
@ -9,12 +9,12 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "6.01";
|
||||
version = "6.02";
|
||||
pname = "xscreensaver";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.jwz.org/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-CFSEZl2R9gtKHe2s2UvPm3Sw+wlrztyJ/xwkUWjlRzs=";
|
||||
sha256 = "sha256-Xm1ssJAzrVYs/m1Gv5MS5EUfeUa+2KRnGqk0TfkZMYQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lnav";
|
||||
version = "0.10.0";
|
||||
version = "0.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tstack";
|
||||
repo = "lnav";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-hAFyMypGC065aRgX2L4LdyFGpZ/LnX5SjA2iQv5Iuas=";
|
||||
sha256 = "sha256-1b4mVKIUotMSK/ADHnpiM42G98JF0abL8sXXGFyS3sw=";
|
||||
};
|
||||
|
||||
patches = [ ./0001-Forcefully-disable-docs-build.patch ];
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "tz";
|
||||
version = "0.5";
|
||||
version = "0.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "oz";
|
||||
repo = "tz";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-OwjhV3n1B1yQTNYm4VOW500t0524g85YYiOAAu9yPeo=";
|
||||
sha256 = "sha256-D0rakLZ+swrDwBMcr+EJPgaYsQTWob50QteW1PoIdNk=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-Soa87I7oMa34LjYKxNAz9Limi0kQ6JUtb/zI4G7yZnw=";
|
||||
vendorSha256 = "sha256-gMHPWf/kFb55GyyMciLWRzvrQXUGDQ72RNkIhkMVe54=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A time zone helper";
|
||||
|
|
|
@ -14,11 +14,11 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "yubikey-manager-qt";
|
||||
version = "1.2.3";
|
||||
version = "1.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://developers.yubico.com/${pname}/Releases/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-54HvuJXjm846sBxwNHLmaBXvO24bbBDyK8YvY4I6LjY=";
|
||||
sha256 = "sha256-PxHc7IeRsO+CPrNTofGypLLW8fSHDkcBqr75NwdlUyc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -15,7 +15,7 @@ python3Packages.buildPythonApplication rec {
|
|||
buildInputs = [ python3Packages.pbr git ];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
dogpile_cache
|
||||
dogpile-cache
|
||||
click
|
||||
requests
|
||||
characteristic
|
||||
|
|
|
@ -321,6 +321,8 @@ let
|
|||
inherit (pkgs) opam git mercurial coreutils gnutar bzip2;
|
||||
};
|
||||
|
||||
dune-site = callPackage ../development/ocaml-modules/dune-site { };
|
||||
|
||||
duration = callPackage ../development/ocaml-modules/duration { };
|
||||
|
||||
earley = callPackage ../development/ocaml-modules/earley { };
|
||||
|
|
|
@ -33,34 +33,36 @@ in
|
|||
### Deprecated aliases - for backward compatibility
|
||||
|
||||
mapAliases ({
|
||||
blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # Added 2020-11-29
|
||||
blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # added 2020-11-29
|
||||
bt_proximity = bt-proximity; # added 2021-07-02
|
||||
bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # Added 2019-11-27
|
||||
bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # added 2019-11-27
|
||||
class-registry = phx-class-registry; # added 2021-10-05
|
||||
ConfigArgParse = configargparse; # added 2021-03-18
|
||||
dateutil = python-dateutil; # added 2021-07-03
|
||||
detox = throw "detox is no longer maintained, and was broken since may 2019"; # added 2020-07-04
|
||||
dftfit = throw "it's dependency lammps-cython no longer builds";
|
||||
dftfit = throw "it's dependency lammps-cython no longer builds"; # added 2021-07-04
|
||||
diff_cover = diff-cover; # added 2021-07-02
|
||||
discogs_client = discogs-client; # added 2021-07-02
|
||||
djangorestframework-jwt = drf-jwt;
|
||||
dns = dnspython; # Alias for compatibility, 2017-12-10
|
||||
faulthandler = throw "faulthandler is built into ${python.executable}";
|
||||
djangorestframework-jwt = drf-jwt; # added 2021-07-20
|
||||
dns = dnspython; # added 2017-12-10
|
||||
dogpile_cache = dogpile-cache; # added 2021-10-28
|
||||
faulthandler = throw "faulthandler is built into ${python.executable}"; # added 2021-07-12
|
||||
gitdb2 = throw "gitdb2 has been deprecated, use gitdb instead."; # added 2020-03-14
|
||||
glances = throw "glances has moved to pkgs.glances"; # added 2020-20-28
|
||||
google_api_python_client = google-api-python-client; # added 2021-03-19
|
||||
googleapis_common_protos = googleapis-common-protos; # added 2021-03-19
|
||||
grpc_google_iam_v1 = grpc-google-iam-v1; # added 2021-08-21
|
||||
HAP-python = hap-python; # added 2021-06-01
|
||||
IMAPClient = imapclient; # added 2021-10-28
|
||||
jupyter_client = jupyter-client; # added 2021-10-15
|
||||
lammps-cython = throw "no longer builds and is unmaintained";
|
||||
MechanicalSoup = mechanicalsoup; # added 2021-06-01
|
||||
pam = python-pam; # added 2020-09-07.
|
||||
PasteDeploy = pastedeploy;
|
||||
powerlineMemSegment = powerline-mem-segment;
|
||||
PasteDeploy = pastedeploy; # added 2021-10-07
|
||||
powerlineMemSegment = powerline-mem-segment; # added 2021-10-08
|
||||
privacyidea = throw "renamed to pkgs.privacyidea"; # added 2021-06-20
|
||||
prometheus_client = prometheus-client; # added 2021-06-10
|
||||
prompt_toolkit = prompt-toolkit;
|
||||
prompt_toolkit = prompt-toolkit; # added 2021-07-22
|
||||
pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20
|
||||
pymssql = throw "pymssql has been abandoned upstream."; # added 2020-05-04
|
||||
pysmart-smartx = pysmart; # added 2021-10-22
|
||||
|
@ -77,14 +79,15 @@ mapAliases ({
|
|||
requests_toolbelt = requests-toolbelt; # added 2017-09-26
|
||||
rotate-backups = throw "pythonPackages.rotate-backups was removed in favor of the top-level rotate-backups"; # added 2021-07-01
|
||||
scikitlearn = scikit-learn; # added 2021-07-21
|
||||
selectors34 = throw "selectors34 has been removed: functionality provided by Python itself; archived by upstream."; # Added 2021-06-10
|
||||
selectors34 = throw "selectors34 has been removed: functionality provided by Python itself; archived by upstream."; # added 2021-06-10
|
||||
setuptools_scm = setuptools-scm; # added 2021-06-03
|
||||
smart_open = smart-open; # added 2021-03-14
|
||||
smmap2 = throw "smmap2 has been deprecated, use smmap instead."; # added 2020-03-14
|
||||
sphinxcontrib_plantuml = sphinxcontrib-plantuml;
|
||||
topydo = throw "python3Packages.topydo was moved to topydo"; # 2017-09-22
|
||||
tvnamer = throw "python3Packages.tvnamer was moved to tvnamer"; # 2021-07-05
|
||||
WazeRouteCalculator = wazeroutecalculator; # 2021-09-29
|
||||
websocket_client = websocket-client;
|
||||
sphinxcontrib_plantuml = sphinxcontrib-plantuml; # added 2021-08-02
|
||||
sqlalchemy_migrate = sqlalchemy-migrate; # added 2021-10-28
|
||||
topydo = throw "python3Packages.topydo was moved to topydo"; # added 2017-09-22
|
||||
tvnamer = throw "python3Packages.tvnamer was moved to tvnamer"; # added 2021-07-05
|
||||
WazeRouteCalculator = wazeroutecalculator; # added 2021-09-29
|
||||
websocket_client = websocket-client; # added 2021-06-15
|
||||
zc-buildout221 = zc-buildout; # added 2021-07-21
|
||||
})
|
||||
|
|
|
@ -2257,9 +2257,9 @@ in {
|
|||
|
||||
dodgy = callPackage ../development/python-modules/dodgy { };
|
||||
|
||||
dogpile_cache = callPackage ../development/python-modules/dogpile.cache { };
|
||||
dogpile-cache = callPackage ../development/python-modules/dogpile-cache { };
|
||||
|
||||
dogpile_core = callPackage ../development/python-modules/dogpile.core { };
|
||||
dogpile-core = callPackage ../development/python-modules/dogpile-core { };
|
||||
|
||||
dogtail = callPackage ../development/python-modules/dogtail { };
|
||||
|
||||
|
@ -3668,7 +3668,7 @@ in {
|
|||
|
||||
imantics = callPackage ../development/python-modules/imantics { };
|
||||
|
||||
IMAPClient = callPackage ../development/python-modules/imapclient { };
|
||||
imapclient = callPackage ../development/python-modules/imapclient { };
|
||||
|
||||
imaplib2 = callPackage ../development/python-modules/imaplib2 { };
|
||||
|
||||
|
@ -8780,7 +8780,7 @@ in {
|
|||
|
||||
sqlalchemy-jsonfield = callPackage ../development/python-modules/sqlalchemy-jsonfield { };
|
||||
|
||||
sqlalchemy_migrate = callPackage ../development/python-modules/sqlalchemy-migrate { };
|
||||
sqlalchemy-migrate = callPackage ../development/python-modules/sqlalchemy-migrate { };
|
||||
|
||||
sqlalchemy-utils = callPackage ../development/python-modules/sqlalchemy-utils { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue