Merge staging-next into staging

Changed files
+350 -252
doc
release-notes
nixos
modules
virtualisation
tests
pkgs
applications
networking
instant-messengers
discord
science
logic
build-support
binary-cache
by-name
co
containerlab
cr
crowdin-cli
ku
kube-bench
me
metacubexd
mo
mollysocket
mu
mutter46
ni
nixos-rebuild-ng
qd
qdrant-web-ui
ri
river-luatile
sq
sqlitestudio
va
zi
zimfw
development
compilers
tinycc
coq-modules
compcert
coq-elpi
python-modules
keystoneauth1
pyaml-env
pygeocodio
python-cinderclient
swift
testtools
wirerope
os-specific
servers
mautrix-signal
top-level
+2
doc/release-notes/rl-2505.section.md
···
- [`lib.types.enum`](https://nixos.org/manual/nixos/unstable/#sec-option-types-basic): Previously the `functor.payload` was the list of enum values directly. Now it is an attribute set containing the values in the `values` attribute.
- [`lib.types.separatedString`](https://nixos.org/manual/nixos/unstable/#sec-option-types-string): Previously the `functor.payload` was the seperator directly. Now it is an attribute set containing the seperator in the `sep` attribute.
+
- The `virtualisation.hypervGuest.videoMode` option has been removed. Standard tooling can now be used to configure display modes for Hyper-V VMs.
+
### Deprecations {#sec-nixpkgs-release-25.05-lib-deprecations}
`functor` is an implementation detail and should not be relied upon, but since its status wasn't clear and it has had some use cases without alternatives, changes are being handled as gracefully as possible. Deprecations within functor:
+7 -14
nixos/modules/virtualisation/hyperv-guest.nix
···
cfg = config.virtualisation.hypervGuest;
in {
+
imports = [
+
(mkRemovedOptionModule [ "virtualisation" "hypervGuest" "videoMode" ]
+
"The video mode can now be configured via standard tools, or in Hyper-V VM settings."
+
)
+
];
+
options = {
virtualisation.hypervGuest = {
enable = mkEnableOption "Hyper-V Guest Support";
-
-
videoMode = mkOption {
-
type = types.str;
-
default = "1152x864";
-
example = "1024x768";
-
description = ''
-
Resolution at which to initialize the video adapter.
-
-
Supports screen resolution up to Full HD 1920x1080 with 32 bit color
-
on Windows Server 2012, and 1600x1200 with 16 bit color on Windows
-
Server 2008 R2 or earlier.
-
'';
-
};
};
};
···
initrd.availableKernelModules = [ "hyperv_keyboard" ];
kernelParams = [
-
"video=hyperv_fb:${cfg.videoMode}" "elevator=noop"
+
"elevator=noop"
];
};
+26 -8
nixos/tests/binary-cache.nix
···
{ pkgs, ... }:
{
imports = [ ../modules/installer/cd-dvd/channel.nix ];
-
environment.systemPackages = [ pkgs.python3 ];
-
system.extraDependencies = [ pkgs.hello.inputDerivation ];
+
environment.systemPackages = with pkgs; [
+
openssl
+
python3
+
];
+
+
# We encrypt the binary cache before putting it on the machine so Nix
+
# doesn't bring any references along.
+
environment.etc."binary-cache.tar.gz.encrypted".source =
+
with pkgs;
+
runCommand "binary-cache.tar.gz.encrypted"
+
{
+
allowReferences = [ ];
+
nativeBuildInputs = [ openssl ];
+
}
+
''
+
tar -czf tmp.tar.gz -C "${mkBinaryCache { rootPaths = [ hello ]; }}" .
+
openssl enc -aes-256-cbc -salt -in tmp.tar.gz -out $out -k mysecretpassword
+
'';
+
nix.extraOptions = ''
experimental-features = nix-command
'';
};
testScript = ''
-
# Build the cache, then remove it from the store
-
cachePath = machine.succeed("nix-build --no-out-link -E 'with import <nixpkgs> {}; mkBinaryCache { rootPaths = [hello]; }'").strip()
-
machine.succeed("cp -r %s/. /tmp/cache" % cachePath)
-
machine.succeed("nix-store --delete " + cachePath)
+
# Decrypt the cache into /tmp/binary-cache.tar.gz
+
machine.succeed("openssl enc -d -aes-256-cbc -in /etc/binary-cache.tar.gz.encrypted -out /tmp/binary-cache.tar.gz -k mysecretpassword")
+
+
# Untar the cache into /tmp/cache
+
machine.succeed("mkdir /tmp/cache")
+
machine.succeed("tar -C /tmp/cache -xf /tmp/binary-cache.tar.gz")
# Sanity test of cache structure
status, stdout = machine.execute("ls /tmp/cache")
···
if not match: raise Exception("Couldn't find hello store path in cache")
storePath = match[1]
-
# Delete the store path
-
machine.succeed("nix-store --delete " + storePath)
+
# Make sure the store path doesn't exist yet
machine.succeed("[ ! -d %s ] || exit 1" % storePath)
# Should be able to build hello using the cache
+16 -16
pkgs/applications/networking/instant-messengers/discord/default.nix
···
versions =
if stdenv.hostPlatform.isLinux then
{
-
stable = "0.0.79";
-
ptb = "0.0.124";
-
canary = "0.0.556";
-
development = "0.0.61";
+
stable = "0.0.80";
+
ptb = "0.0.126";
+
canary = "0.0.569";
+
development = "0.0.67";
}
else
{
-
stable = "0.0.331";
-
ptb = "0.0.154";
-
canary = "0.0.668";
-
development = "0.0.70";
+
stable = "0.0.332";
+
ptb = "0.0.156";
+
canary = "0.0.681";
+
development = "0.0.76";
};
version = versions.${branch};
srcs = rec {
x86_64-linux = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
-
hash = "sha256-gQVx+PueGDofUjKSvyorCu73myNujcKz9gugMKB9koY=";
+
hash = "sha256-oamuF2LcdBC2HUzB08lTlxvrXjE6YFBXwLJDrmYKRXM=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
-
hash = "sha256-jJncDqX2vCWFIpgruX1SknZBrCvMM5HSy6je9xxnxqM=";
+
hash = "sha256-4OvGEeOP4i4j7WwMjnnSvaNQ2e5RZ0EMF797xoIsWMY=";
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-
hash = "sha256-5qn0YL0+1uE6kmQO3Fh2DD0gNjk6MT+yAdIoMK7Y8Tw=";
+
hash = "sha256-akbcAPuxF1pl4u2Cw/I7rlv8WVDsIZDPPpGRUt1qQvA=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
-
hash = "sha256-9ssgue3Y8StyKnc1dvr6b0Z3hjPYtJCNuVsruqFx8ug=";
+
hash = "sha256-YwOhdNM6l+E/X6JX5ttyJsJmf3Pa+BN7N0mG7923xI4=";
};
};
x86_64-darwin = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/osx/${version}/Discord.dmg";
-
hash = "sha256-U37JyZwPmsk6ArD8Lz0xAiy/I78H+wHSig3+1BpD9iA=";
+
hash = "sha256-ZIAFYbC4rRjb9Lz3E50TfR0Lgdmg0MZllxy+vk36Eg8=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
-
hash = "sha256-BVKhyLoz/EoaZ6LgCaJuZZ37u9ProXOPddrfg171Eu4=";
+
hash = "sha256-Uluw2l/yAFzy4uMzp9ugFri8Psl7hy50H7QHag+St10=";
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
-
hash = "sha256-1eCHufW68AuYuYWzfq6Tt+YylFgCLT88DrvrNZvQG8A=";
+
hash = "sha256-OmN8g5Skg/KmdO8sv8iOhbZOFU/XUyUqvSthEam6RNE=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
-
hash = "sha256-UdHwa/ALOOt/bNA6UmVJB8GNe+yHJ1xFoyF0nT1Zn3g=";
+
hash = "sha256-GyHOJcxWoKdFJ5/oca5JFwu5OdGGykR4OXGMaa3XfiY=";
};
};
aarch64-darwin = x86_64-darwin;
+1
pkgs/applications/science/logic/coq/default.nix
···
"8.19.1".sha256 = "sha256-kmZ8Uk8jpzjOd67aAPp3C+vU2oNaBw9pr7+Uixcgg94=";
"8.19.2".sha256 = "sha256-q+i07JsMZp83Gqav6v1jxsgPLN7sPvp5/oszVnavmz0=";
"8.20.0".sha256 = "sha256-WFpZlA6CzFVAruPhWcHQI7VOBVhrGLdFzWrHW0DTSl0=";
+
"8.20.1".sha256 = "sha256-nRaLODPG4E3gUDzGrCK40vhl4+VhPyd+/fXFK/HC3Ig=";
};
releaseRev = v: "V${v}";
fetched = import ../../../../build-support/coq/meta-fetch/default.nix
+1 -1
pkgs/build-support/binary-cache/make-binary-cache.py
···
with open(xzFile, "w") as f:
subprocess.run("nix-store --dump %s | xz -c" % item["path"], stdout=f, shell=True)
-
fileHash = subprocess.run(["nix-hash", "--base32", "--type", "sha256", item["path"]], capture_output=True).stdout.decode().strip()
+
fileHash = subprocess.run(["nix-hash", "--base32", "--type", "sha256", "--flat", xzFile], capture_output=True).stdout.decode().strip()
fileSize = os.path.getsize(xzFile)
# Rename the .nar.xz file to its own hash to match "nix copy" behavior
+3 -3
pkgs/by-name/co/containerlab/package.nix
···
buildGoModule rec {
pname = "containerlab";
-
version = "0.61.0";
+
version = "0.62.0";
src = fetchFromGitHub {
owner = "srl-labs";
repo = "containerlab";
rev = "v${version}";
-
hash = "sha256-VEN2JjgLukE8YQ2nq+qFS2Yq0TdiTyRm2RUm32mJzBM=";
+
hash = "sha256-6WDmjVRLvh8FBydaN41Vj4B5BIkIF9VnvhRcJR3k9Ec=";
};
-
vendorHash = "sha256-PwPih5LuXPBznSvn4L4h8zCiuWP2+u90PdN5+2Il6j0=";
+
vendorHash = "sha256-G9W4iC04R5Rvl3hAJtMlUKJKo7AAIE33Y2c+0HedXU8=";
nativeBuildInputs = [ installShellFiles ];
+2 -2
pkgs/by-name/cr/crowdin-cli/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "crowdin-cli";
-
version = "4.5.0";
+
version = "4.5.1";
src = fetchurl {
url = "https://github.com/crowdin/crowdin-cli/releases/download/${finalAttrs.version}/crowdin-cli.zip";
-
hash = "sha256-Qcw1935ENMftohZrwqRZRrXoXYThogfBXNzf/6jJxaM=";
+
hash = "sha256-wmW6RBVMdpcawCEgLaZwOLStdUIWumsgc39Y0Kv8uEE=";
};
nativeBuildInputs = [
+3 -3
pkgs/by-name/ku/kube-bench/package.nix
···
buildGoModule rec {
pname = "kube-bench";
-
version = "0.9.4";
+
version = "0.10.0";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
tag = "v${version}";
-
hash = "sha256-SkXf8zZif1l+yOSUjYpW474gYOmxifaLtj/DNK+ZNfg=";
+
hash = "sha256-+2WoQJtH5uuVSOi70WQ+DYnUNlXoThXPJvz2jckn2cw=";
};
-
vendorHash = "sha256-6ApPEt9SkPI5yu3ejzR1AU1ZCHmltp8Cxso6j//pEAk=";
+
vendorHash = "sha256-2jlYDpUJr4y4Ahzw9xDwVlQ/XPADMbAc5qYf+6N7Ado=";
nativeBuildInputs = [ installShellFiles ];
+3 -3
pkgs/by-name/me/metacubexd/package.nix
···
}:
stdenv.mkDerivation (finalAttrs: {
pname = "metacubexd";
-
version = "1.173.3";
+
version = "1.176.1";
src = fetchFromGitHub {
owner = "MetaCubeX";
repo = "metacubexd";
rev = "v${finalAttrs.version}";
-
hash = "sha256-K/E3EetvpJKnLvFNkWtf95D/+oQtu27JLO3il7dpN2c=";
+
hash = "sha256-96mWjODfgIoJM/c/2c+KdPDxWCEGszglkRqjabW8auk=";
};
nativeBuildInputs = [
···
pnpmDeps = pnpm_9.fetchDeps {
inherit (finalAttrs) pname version src;
-
hash = "sha256-aw8Sh4BecQ09rC0OLWebdWc7D/LE8vPs9uqh6w5G/FM=";
+
hash = "sha256-xDcqGvM8J6miDwiwNQODnPVq63flitva6/nPLYa9cgY=";
};
buildPhase = ''
+4 -4
pkgs/by-name/mo/mollysocket/package.nix
···
rustPlatform.buildRustPackage rec {
pname = "mollysocket";
-
version = "1.5.5";
+
version = "1.6.0";
src = fetchFromGitHub {
owner = "mollyim";
repo = "mollysocket";
-
rev = version;
-
hash = "sha256-IJaWCawA1vM+3qdHbPZCn4laM7DAL19k1P1MjghtGv8=";
+
tag = version;
+
hash = "sha256-F80XRQn3h1Y6dE8PVLGMTY29yZomrwqFAsm7h8euHw8=";
};
-
cargoHash = "sha256-FNFTPjj9TQeIG7K/+qpOav/TcNsmt+G6EhBftHqNbB4=";
+
cargoHash = "sha256-ZHS/EJBhT1H5MvuqdPtmf95ctuLft4qVsZzPVeJBR5k=";
nativeBuildInputs = [
pkg-config
+2 -2
pkgs/by-name/mu/mutter46/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "mutter";
-
version = "46.7";
+
version = "46.8";
outputs = [
"out"
···
src = fetchurl {
url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz";
-
hash = "sha256-+7wVwLB2CS0WwB1cbwxvVNIR84Miy4wjseF9xW1MUl0=";
+
hash = "sha256-+8CDVEr7O4Vn18pobCF/g3sG+UeNbiV0FZ/5ocjhyWI=";
};
mesonFlags = [
+4 -4
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py
···
default=0,
help="Enable verbose logging (includes nix)",
)
+
common_flags.add_argument("--quiet", action="count", default=0)
common_flags.add_argument("--max-jobs", "-j")
common_flags.add_argument("--cores")
common_flags.add_argument("--log-format")
···
common_flags.add_argument("--keep-failed", "-K", action="store_true")
common_flags.add_argument("--fallback", action="store_true")
common_flags.add_argument("--repair", action="store_true")
-
common_flags.add_argument("--option", nargs=2)
+
common_flags.add_argument("--option", nargs=2, action="append")
common_build_flags = argparse.ArgumentParser(add_help=False)
common_build_flags.add_argument("--builders")
common_build_flags.add_argument("--include", "-I", action="append")
-
common_build_flags.add_argument("--quiet", action="store_true")
common_build_flags.add_argument("--print-build-logs", "-L", action="store_true")
common_build_flags.add_argument("--show-trace", action="store_true")
···
flake_common_flags.add_argument("--no-write-lock-file", action="store_true")
flake_common_flags.add_argument("--no-registries", action="store_true")
flake_common_flags.add_argument("--commit-lock-file", action="store_true")
-
flake_common_flags.add_argument("--update-input")
-
flake_common_flags.add_argument("--override-input", nargs=2)
+
flake_common_flags.add_argument("--update-input", action="append")
+
flake_common_flags.add_argument("--override-input", nargs=2, action="append")
classic_build_flags = argparse.ArgumentParser(add_help=False)
classic_build_flags.add_argument("--no-build-output", "-Q", action="store_true")
+3 -3
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/models.py
···
attr: str | None
def to_attr(self, *attrs: str) -> str:
-
return f"{self.attr + '.' if self.attr else ''}{".".join(attrs)}"
+
return f"{self.attr + '.' if self.attr else ''}{'.'.join(attrs)}"
@classmethod
def from_arg(cls, attr: str | None, file: str | None) -> Self:
···
_re: ClassVar = re.compile(r"^(?P<path>[^\#]*)\#?(?P<attr>[^\#\"]*)$")
def to_attr(self, *attrs: str) -> str:
-
return f"{self}.{".".join(attrs)}"
+
return f"{self}.{'.'.join(attrs)}"
@override
def __str__(self) -> str:
···
m = cls._re.match(flake_str)
assert m is not None, f"got no matches for {flake_str}"
attr = m.group("attr")
-
nixos_attr = f"nixosConfigurations.{attr or hostname_fn() or "default"}"
+
nixos_attr = f"nixosConfigurations.{attr or hostname_fn() or 'default'}"
path = m.group("path")
if ":" in path:
return cls(path, nixos_attr)
+1 -1
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/process.py
···
"-o",
"ControlMaster=auto",
"-o",
-
f"ControlPath={tmpdir.TMPDIR_PATH / "ssh-%n"}",
+
f"ControlPath={tmpdir.TMPDIR_PATH / 'ssh-%n'}",
"-o",
"ControlPersist=60",
]
+7 -3
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/utils.py
···
from collections.abc import Mapping, Sequence
from typing import Any, assert_never, override
-
type Arg = bool | str | list[str] | int | None
+
type Arg = bool | str | list[str] | list[list[str]] | int | None
type Args = dict[str, Arg]
···
flags.append(flag)
flags.append(value)
case list():
-
for v in value:
+
for vs in value:
flags.append(flag)
-
flags.append(v)
+
if isinstance(vs, list):
+
for v in vs:
+
flags.append(v)
+
else:
+
flags.append(vs)
case _:
assert_never(value)
return flags
+61 -5
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_main.py
···
"--flake",
"/etc/nixos",
"--option",
-
"foo",
-
"bar",
+
"foo1",
+
"bar1",
+
"--option",
+
"foo2",
+
"bar2",
+
"--override-input",
+
"override1",
+
"input1",
+
"--override-input",
+
"override2",
+
"input2",
+
"--update-input",
+
"input1",
+
"--update-input",
+
"input2",
]
)
assert nr.logger.level == logging.INFO
···
assert r1.install_grub is True
assert r1.profile_name == "system"
assert r1.action == "switch"
-
assert r1.option == ["foo", "bar"]
-
assert g1["common_flags"].option == ["foo", "bar"]
+
# round-trip test (ensure that we have the same flags as parsed)
+
assert nr.utils.dict_to_flags(vars(g1["common_flags"])) == [
+
"--option",
+
"foo1",
+
"bar1",
+
"--option",
+
"foo2",
+
"bar2",
+
]
+
assert nr.utils.dict_to_flags(vars(g1["flake_common_flags"])) == [
+
"--update-input",
+
"input1",
+
"--update-input",
+
"input2",
+
"--override-input",
+
"override1",
+
"input1",
+
"--override-input",
+
"override2",
+
"input2",
+
]
r2, g2 = nr.parse_args(
[
···
"foo",
"--attr",
"bar",
+
"-I",
+
"include1",
+
"-I",
+
"include2",
"-vvv",
+
"--quiet",
+
"--quiet",
]
)
assert nr.logger.level == logging.DEBUG
···
assert r2.action == "dry-build"
assert r2.file == "foo"
assert r2.attr == "bar"
-
assert g2["common_flags"].v == 3
+
# round-trip test (ensure that we have the same flags as parsed)
+
assert nr.utils.dict_to_flags(vars(g2["common_flags"])) == [
+
"-vvv",
+
"--quiet",
+
"--quiet",
+
]
+
assert nr.utils.dict_to_flags(vars(g2["common_build_flags"])) == [
+
"--include",
+
"include1",
+
"--include",
+
"include2",
+
]
@patch.dict(nr.process.os.environ, {}, clear=True)
···
"--sudo",
"--verbose",
"--fast",
+
# https://github.com/NixOS/nixpkgs/issues/374050
+
"--option",
+
"narinfo-cache-negative-ttl",
+
"1200",
]
)
···
"--print-out-paths",
"/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel",
"-v",
+
"--option",
+
"narinfo-cache-negative-ttl",
+
"1200",
"--no-link",
],
check=True,
+11 -4
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_utils.py
···
"test_flag_2": False,
"test_flag_3": "value",
"test_flag_4": ["v1", "v2"],
-
"test_flag_5": None,
+
"test_flag_5": [["o1", "v1"], ["o2", "v2"]],
+
"test_flag_6": None,
"t": True,
"v": 5,
-
"verbose": 2,
+
"quiet": 2,
}
)
assert r1 == [
···
"v1",
"--test-flag-4",
"v2",
+
"--test-flag-5",
+
"o1",
+
"v1",
+
"--test-flag-5",
+
"o2",
+
"v2",
"-t",
"-vvvvv",
-
"--verbose",
-
"--verbose",
+
"--quiet",
+
"--quiet",
]
r2 = u.dict_to_flags({"verbose": 0, "empty_list": []})
assert r2 == []
+3 -3
pkgs/by-name/qd/qdrant-web-ui/package.nix
···
}:
buildNpmPackage rec {
pname = "qdrant-web-ui";
-
version = "0.1.34";
+
version = "0.1.35";
src = fetchFromGitHub {
owner = "qdrant";
repo = "qdrant-web-ui";
tag = "v${version}";
-
hash = "sha256-hLjoN0GxRKkEPRw5+ga597QNeuCxl9aZawezfQqBD7I=";
+
hash = "sha256-kTXN+uouEf/szksu+rLAXW+As2YyrFF4i8AluFEPRUs=";
};
-
npmDepsHash = "sha256-ccykE9W6koZ8BDtOZicou264/qwVtEuDdiinGF7rp5I=";
+
npmDepsHash = "sha256-oZydAlmzNjjcuLtXfhBXrsuOBPyOsnRZZ7DzUVg0eas=";
npmBuildScript = "build-qdrant";
+3 -3
pkgs/by-name/ri/river-luatile/package.nix
···
rustPlatform.buildRustPackage rec {
pname = "river-luatile";
-
version = "0.1.3";
+
version = "0.1.4";
src = fetchFromGitHub {
owner = "MaxVerevkin";
repo = "river-luatile";
rev = "v${version}";
-
hash = "sha256-ZBytoj4L72TjxJ7vFivjcSO69AcdwKNbXh4rA/bn5iU=";
+
hash = "sha256-8/qHoNFoGH1nSdTwBkaQk+yyvJtrXADTA39gUAMeSv8=";
};
-
cargoHash = "sha256-GcMSglLKuUD3nVj0/8Nbrk4qs5gl5PlCj7r1MYq/vQg=";
+
cargoHash = "sha256-bXPxj8bNI8ZqYFl8XEHdNLqe0meYrlY2ovP3DKLGaqM=";
nativeBuildInputs = [
pkg-config
+2 -2
pkgs/by-name/sq/sqlitestudio/package.nix
···
}:
stdenv.mkDerivation rec {
pname = "sqlitestudio";
-
version = "3.4.13";
+
version = "3.4.14";
src = fetchFromGitHub {
owner = "pawelsalawa";
repo = "sqlitestudio";
rev = version;
-
hash = "sha256-k7ZedSw4Y1WIUH5IflSrEv4h7zsx40tB8A4/qr9OW9E=";
+
hash = "sha256-eexXRgi/AuxM1mDSdgOsfrv7JDF8NWCXhyAerA9lcBo=";
};
nativeBuildInputs =
+3 -3
pkgs/by-name/va/vals/package.nix
···
buildGoModule rec {
pname = "vals";
-
version = "0.38.0";
+
version = "0.39.0";
src = fetchFromGitHub {
rev = "v${version}";
owner = "helmfile";
repo = pname;
-
sha256 = "sha256-dN4712rZ/nElYpthW+27WSFOeNmV2Bm7Zx/OEIrKwsQ=";
+
sha256 = "sha256-Og3klt2FvfSbgplHgO4waG41apu+EePaBxVbVxaTPB0=";
};
-
vendorHash = "sha256-EihgFqD80YlFaEJfeS2C91ifk7yYhZQcgEUteIk3siM=";
+
vendorHash = "sha256-F+eEnYdsXCmFuhJT3qWIrYCOkuEZdz2XFSMIccgz/+o=";
proxyVendor = true;
+2 -2
pkgs/by-name/zi/zimfw/package.nix
···
stdenv.mkDerivation rec {
pname = "zimfw";
-
version = "1.16.0";
+
version = "1.17.0";
src = fetchFromGitHub {
owner = "zimfw";
repo = "zimfw";
rev = "v${version}";
## zim only needs this one file to be installed.
sparseCheckout = [ "zimfw.zsh" ];
-
hash = "sha256-kAy7wT7K1x9di1RRcXHk5e0johdDWtSzDD85chSkNZ0=";
+
hash = "sha256-h8VhnUxelnc67TngQzmKY/098uKgvopBA1YleTiJhWc=";
};
strictDeps = true;
dontConfigure = true;
+4 -6
pkgs/development/compilers/tinycc/default.nix
···
configureFlagsArray+=("--elfinterp=$(< $NIX_CC/nix-support/dynamic-linker)")
'';
-
env.NIX_CFLAGS_COMPILE = toString (
-
lib.optionals stdenv.cc.isClang [
-
"-Wno-error=implicit-int"
-
"-Wno-error=int-conversion"
-
]
-
);
+
env.NIX_CFLAGS_COMPILE = toString [
+
"-Wno-error=implicit-int"
+
"-Wno-error=int-conversion"
+
];
# Test segfault for static build
doCheck = !stdenv.hostPlatform.isStatic;
+18
pkgs/development/coq-modules/compcert/default.nix
···
url = "https://github.com/AbsInt/CompCert/commit/20a5b48758bf8ac18e4c420df67017b371efc237.patch";
hash = "sha256-TJ87CvLiAv1absGnPsTXsD/HQwKgS82loUTcosulyso=";
})
+
# Support for Coq 8.20.1
+
(fetchpatch {
+
url = "https://github.com/AbsInt/CompCert/commit/e6c9a2d068ae67923bbc7c6b7035b6afde6ece3c.patch";
+
hash = "sha256-PtiEkG/aLRotIiqrmc6SQncQSi7IGSC5QX3e52xkOUQ=";
+
})
+
];
+
}
+
{
+
cases = [
+
(isEq "8.20")
+
(isEq "3.15")
+
];
+
out = [
+
# Support for Coq 8.20.1
+
(fetchpatch {
+
url = "https://github.com/AbsInt/CompCert/commit/e524b0a19ae5140f64047b1cba6ebbe1d16d5bbf.patch";
+
hash = "sha256-24kt0hA75ooyXymH+kNS5VlsuXMHbkqTw4m+BzNUwrw=";
+
})
];
}
]
+47 -113
pkgs/development/coq-modules/coq-elpi/default.nix
···
coq,
stdlib,
version ? null,
+
elpi-version ? null,
}:
let
-
elpi = coq.ocamlPackages.elpi.override (
-
lib.switch coq.coq-version [
-
{
-
case = "8.11";
-
out = {
-
version = "1.11.4";
-
};
-
}
-
{
-
case = "8.12";
-
out = {
-
version = "1.12.0";
-
};
-
}
-
{
-
case = "8.13";
-
out = {
-
version = "1.13.7";
-
};
-
}
-
{
-
case = "8.14";
-
out = {
-
version = "1.13.7";
-
};
-
}
-
{
-
case = "8.15";
-
out = {
-
version = "1.15.0";
-
};
-
}
-
{
-
case = "8.16";
-
out = {
-
version = "1.17.0";
-
};
-
}
-
{
-
case = "8.17";
-
out = {
-
version = "1.17.0";
-
};
-
}
-
{
-
case = "8.18";
-
out = {
-
version = "1.18.1";
-
};
-
}
-
{
-
case = "8.19";
-
out = {
-
version = "1.18.1";
-
};
-
}
-
{
-
case = "8.20";
-
out = {
-
version = "1.19.2";
-
};
-
}
-
] { }
-
);
-
in
-
(mkCoqDerivation {
+
default-elpi-version = if elpi-version != null then elpi-version else (
+
lib.switch coq.coq-version [
+
{ case = "8.11"; out = "1.11.4"; }
+
{ case = "8.12"; out = "1.12.0"; }
+
{ case = "8.13"; out = "1.13.7"; }
+
{ case = "8.14"; out = "1.13.7"; }
+
{ case = "8.15"; out = "1.15.0"; }
+
{ case = "8.16"; out = "1.17.0"; }
+
{ case = "8.17"; out = "1.17.0"; }
+
{ case = "8.18"; out = "1.18.1"; }
+
{ case = "8.19"; out = "1.18.1"; }
+
{ case = "8.20"; out = "1.19.2"; }
+
] { }
+
);
+
elpi = coq.ocamlPackages.elpi.override { version = default-elpi-version; };
+
propagatedBuildInputs_wo_elpi = [
+
coq.ocamlPackages.findlib
+
stdlib
+
];
+
derivation = mkCoqDerivation {
pname = "elpi";
repo = "coq-elpi";
owner = "LPCIC";
inherit version;
defaultVersion = lib.switch coq.coq-version [
-
{
-
case = "8.20";
-
out = "2.2.0";
-
}
-
{
-
case = "8.19";
-
out = "2.0.1";
-
}
-
{
-
case = "8.18";
-
out = "2.0.0";
-
}
-
{
-
case = "8.17";
-
out = "1.18.0";
-
}
-
{
-
case = "8.16";
-
out = "1.15.6";
-
}
-
{
-
case = "8.15";
-
out = "1.14.0";
-
}
-
{
-
case = "8.14";
-
out = "1.11.2";
-
}
-
{
-
case = "8.13";
-
out = "1.11.1";
-
}
-
{
-
case = "8.12";
-
out = "1.8.3_8.12";
-
}
-
{
-
case = "8.11";
-
out = "1.6.3_8.11";
-
}
+
{ case = "8.20"; out = "2.2.0"; }
+
{ case = "8.19"; out = "2.0.1"; }
+
{ case = "8.18"; out = "2.0.0"; }
+
{ case = "8.17"; out = "1.18.0"; }
+
{ case = "8.16"; out = "1.15.6"; }
+
{ case = "8.15"; out = "1.14.0"; }
+
{ case = "8.14"; out = "1.11.2"; }
+
{ case = "8.13"; out = "1.11.1"; }
+
{ case = "8.12"; out = "1.8.3_8.12"; }
+
{ case = "8.11"; out = "1.6.3_8.11"; }
] null;
release."2.2.0".sha256 = "sha256-rADEoqTXM7/TyYkUKsmCFfj6fjpWdnZEOK++5oLfC/I=";
release."2.0.1".sha256 = "sha256-cuoPsEJ+JRLVc9Golt2rJj4P7lKltTrrmQijjoViooc=";
···
mlPlugin = true;
useDuneifVersion = v: lib.versions.isGe "2.2.0" v || v == "dev";
-
propagatedBuildInputs = [
-
coq.ocamlPackages.findlib
-
elpi
-
stdlib
-
];
+
+
propagatedBuildInputs = propagatedBuildInputs_wo_elpi ++ [ elpi ];
preConfigure = ''
make elpi/dune || true
···
maintainers = [ lib.maintainers.cohencyril ];
license = lib.licenses.lgpl21Plus;
};
-
}).overrideAttrs
+
};
+
patched-derivation1 = derivation.overrideAttrs
+
(
+
o:
+
lib.optionalAttrs (o ? elpi-version)
+
{
+
propagatedBuildInputs = propagatedBuildInputs_wo_elpi ++ [
+
(coq.ocamlPackages.elpi.override { version = o.elpi-version; })
+
];
+
}
+
);
+
patched-derivation2 = patched-derivation1.overrideAttrs
(
o:
lib.optionalAttrs (o.version != null && (o.version == "dev" || lib.versions.isGe "2.2.0" o.version))
{
propagatedBuildInputs = o.propagatedBuildInputs ++ [ coq.ocamlPackages.ppx_optcomp ];
}
-
)
+
);
+
in patched-derivation2
+27 -17
pkgs/development/python-modules/keystoneauth1/default.nix
···
buildPythonPackage,
fetchPypi,
betamax,
+
fixtures,
hacking,
iso8601,
lxml,
···
requests-kerberos,
requests-mock,
setuptools,
-
six,
stestr,
stevedore,
testresources,
testtools,
+
typing-extensions,
}:
buildPythonPackage rec {
pname = "keystoneauth1";
-
version = "5.8.0";
+
version = "5.9.1";
pyproject = true;
src = fetchPypi {
inherit pname version;
-
hash = "sha256-MVfCEuEhFk3mTWPl734dqtK9NkmmjeHpcbdodwGe8cQ=";
+
hash = "sha256-+wxm2ELVuWR1ImT/8gs7Src2ENZtm40g0Nz3lroJ3EM=";
};
postPatch = ''
···
build-system = [ setuptools ];
-
dependencies = [
-
betamax
-
iso8601
-
lxml
-
oauthlib
-
os-service-types
-
pbr
-
requests
-
requests-kerberos
-
six
-
stevedore
-
];
+
dependencies =
+
[
+
iso8601
+
os-service-types
+
pbr
+
requests
+
stevedore
+
typing-extensions
+
]
+
# TODO: remove this workaround and fix breakages
+
++ lib.flatten (builtins.attrValues optional-dependencies);
+
+
optional-dependencies = {
+
betamax = [
+
betamax
+
fixtures
+
pyyaml
+
];
+
kerberos = [ requests-kerberos ];
+
oauth1 = [ oauthlib ];
+
saml2 = [ lxml ];
+
};
nativeCheckInputs = [
hacking
oslo-config
oslo-utils
pycodestyle
-
pyyaml
requests-mock
stestr
testresources
testtools
-
];
+
] ++ lib.flatten (builtins.attrValues optional-dependencies);
# test_keystoneauth_betamax_fixture is incompatible with urllib3 2.0.0
# https://bugs.launchpad.net/keystoneauth/+bug/2020112
+2 -2
pkgs/development/python-modules/pyaml-env/default.nix
···
buildPythonPackage rec {
pname = "pyaml-env";
-
version = "1.2.1";
+
version = "1.2.2";
pyproject = true;
src = fetchFromGitHub {
owner = "mkaranasou";
repo = "pyaml_env";
tag = "v${version}";
-
hash = "sha256-xSu+dksSVugShJwOqedXBrXIKaH0G5JAsynauOuP3OA=";
+
hash = "sha256-Mp5Zn2JA6j/OTkPCRggNdqdWkrUYyYHMVK6hy/EI0I8=";
};
build-system = [ setuptools ];
+46
pkgs/development/python-modules/pygeocodio/default.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchFromGitHub,
+
setuptools,
+
requests,
+
pytestCheckHook,
+
httpretty,
+
}:
+
+
buildPythonPackage rec {
+
pname = "pygeocodio";
+
version = "1.4.0";
+
pyproject = true;
+
+
src = fetchFromGitHub {
+
owner = "bennylope";
+
repo = "pygeocodio";
+
tag = "v${version}";
+
hash = "sha256-s6sY+iHuWv7+6ydxDWoN9eKiAXw0jeASWiMtz12TTHo=";
+
};
+
+
build-system = [
+
setuptools
+
];
+
+
dependencies = [
+
requests
+
httpretty
+
];
+
+
pythonImportsCheck = [ "geocodio" ];
+
+
nativeCheckInputs = [
+
pytestCheckHook
+
];
+
+
meta = {
+
description = "Python wrapper for the Geocodio geolocation service API";
+
downloadPage = "https://github.com/bennylope/pygeocodio/tree/master";
+
changelog = "https://github.com/bennylope/pygeocodio/blob/v${version}/HISTORY.rst";
+
homepage = "https://www.geocod.io/docs/#introduction";
+
license = with lib.licenses; [ bsd3 ];
+
maintainers = with lib.maintainers; [ ethancedwards8 ];
+
};
+
}
+14 -1
pkgs/development/python-modules/python-cinderclient/default.nix
···
checkPhase = ''
runHook preCheck
-
stestr run
+
+
# File "/build/python-cinderclient-9.6.0/cinderclient/client.py", line 196, in request
+
# if raise_exc and resp.status_code >= 400:
+
# ^^^^^^^^^^^^^^^^^^^^^^^
+
#
+
# TypeError: '>=' not supported between instances of 'Mock' and 'int'
+
stestr run -e <(echo "
+
cinderclient.tests.unit.test_client.ClientTest.test_keystone_request_raises_auth_failure_exception
+
cinderclient.tests.unit.test_client.ClientTest.test_sessionclient_request_method
+
cinderclient.tests.unit.test_client.ClientTest.test_sessionclient_request_method_raises_badrequest
+
cinderclient.tests.unit.test_client.ClientTest.test_sessionclient_request_method_raises_overlimit
+
cinderclient.tests.unit.test_shell.ShellTest.test_password_prompted
+
")
+
runHook postCheck
'';
+2 -10
pkgs/development/python-modules/swift/default.nix
···
libredirect,
lxml,
mock,
-
netifaces,
pastedeploy,
pbr,
pyeclib,
···
inherit pname version;
hash = "sha256-ZvdWWvPUdZIEadxV0nhqgTXhgJJu+hD1LnYCAP+9gpM=";
};
-
-
postPatch = ''
-
# files requires boto which is incompatible with python 3.9
-
rm test/functional/s3api/{__init__.py,s3_test_client.py}
-
'';
nativeBuildInputs = [ installShellFiles ];
···
setuptools
];
-
propagatedBuildInputs = [
+
dependencies = [
cryptography
eventlet
greenlet
lxml
-
netifaces
pastedeploy
pyeclib
requests
-
setuptools
six
xattr
];
-
dependencies = [
+
nativeCheckInputs = [
boto3
mock
stestr
+2 -1
pkgs/development/python-modules/testtools/default.nix
···
meta = {
description = "Set of extensions to the Python standard library's unit testing framework";
-
homepage = "https://pypi.python.org/pypi/testtools";
+
homepage = "https://github.com/testing-cabal/testtools";
license = lib.licenses.mit;
+
maintainers = [ ];
};
}
+2 -2
pkgs/development/python-modules/wirerope/default.nix
···
buildPythonPackage rec {
pname = "wirerope";
-
version = "0.4.8";
+
version = "1.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "youknowone";
repo = "wirerope";
rev = version;
-
hash = "sha256-Qb0gTCtVWdvZnwS6+PHoBr0syHtpfRI8ugh7zO7k9rk=";
+
hash = "sha256-oojnv+2+nwL/TJhN+QZ5eiV6WGHC3SCxBQrCri0aHQc=";
};
build-system = [ setuptools ];
+3
pkgs/os-specific/linux/kernel/common-config.nix
···
NET_L3_MASTER_DEV = option yes;
NET_FOU_IP_TUNNELS = option yes;
IP_NF_TARGET_REDIRECT = module;
+
NETKIT = whenAtLeast "6.7" yes;
PPP_MULTILINK = yes; # PPP multilink support
PPP_FILTER = yes;
···
DRM_I915_GVT_KVMGT = module;
# Enable Hyper-V Synthetic DRM Driver
DRM_HYPERV = whenAtLeast "5.14" module;
+
# And disable the legacy framebuffer driver when we have the new one
+
FB_HYPERV = whenAtLeast "5.14" no;
}
// lib.optionalAttrs (stdenv.hostPlatform.system == "aarch64-linux") {
# enable HDMI-CEC on RPi boards
+8 -8
pkgs/os-specific/linux/kernel/kernels-org.json
···
{
"testing": {
-
"version": "6.13-rc6",
-
"hash": "sha256:0wqb6ci0l5np31vfk1kv86j0gl44692r0nwi1qwqshcs5cgism85"
+
"version": "6.13-rc7",
+
"hash": "sha256:12c9bd0ikppkdpqmvg7g2062s60ks9p0qxx1jis29wl9swr74120"
},
"6.1": {
-
"version": "6.1.124",
-
"hash": "sha256:09wqb2wqrbg62kqn1r4vj5694r701lkvb9vdzj0slvv2rkazckpz"
+
"version": "6.1.125",
+
"hash": "sha256:0g0b23dm8kzijh9j1g4rv7b3r2lzz53g26xmz4zgchkybxfkbwnr"
},
"5.15": {
"version": "5.15.176",
···
"hash": "sha256:043dl195h06hs3zdjd6j1m1zgvmky3s0plrpma75zqf8ab05yghy"
},
"6.6": {
-
"version": "6.6.71",
-
"hash": "sha256:0kkj5v1hd6z8z1vhvdly303kabvp2a93zb89pagm79ng5nx1b5r1"
+
"version": "6.6.72",
+
"hash": "sha256:0fggpba886340xi8gkxc6hmzplcm69nliddql3d6hn8djcafbfgy"
},
"6.11": {
"version": "6.11.11",
"hash": "sha256:1z2913y38clnlmhvwj49h7p4pic24s4d8np7nmd4lk7m2xz8w532"
},
"6.12": {
-
"version": "6.12.9",
-
"hash": "sha256:1d5f4rn6d5hyw94jqdcc7ay0y1s8lmhm3hxss90b6c89vxh07gl7"
+
"version": "6.12.10",
+
"hash": "sha256:15xjjn8ff7g9q0ljr2g8k098ppxnpvxlgv22rdrplls8sxg6wlaa"
}
}
+3 -3
pkgs/servers/mautrix-signal/default.nix
···
buildGoModule rec {
pname = "mautrix-signal";
-
version = "0.7.4";
+
version = "0.7.5";
src = fetchFromGitHub {
owner = "mautrix";
repo = "signal";
rev = "v${version}";
-
hash = "sha256-1UI2oYDnmwy9+URBMA2yTBMEoFsE8qnkhn7E0l/lOTs=";
+
hash = "sha256-iBZoVfHec9g+W7xaBAAew/aY9h/errwLdC05biFaZ78=";
};
buildInputs =
···
CGO_LDFLAGS = lib.optional withGoolm [ "-lstdc++" ];
-
vendorHash = "sha256-ADuW6KMNUwJeGqFlQsJ8qSI0alPQpSAFx1zrhwsAmsI=";
+
vendorHash = "sha256-RKBewWc98+WpdpXF4QA/ULyZXDR0CKym8KdyeSMd0KA=";
doCheck = true;
preCheck =
+2
pkgs/top-level/python-packages.nix
···
pygdbmi = callPackage ../development/python-modules/pygdbmi { };
+
pygeocodio = callPackage ../development/python-modules/pygeocodio { };
+
pygetwindow = callPackage ../development/python-modules/pygetwindow { };
pygit2 = callPackage ../development/python-modules/pygit2 { };