Merge remote-tracking branch 'origin/staging-next' into staging

Conflicts:
pkgs/development/python-modules/yte/default.nix

Changed files
+1059 -425
doc
maintainers
pkgs
applications
editors
vscode
emulators
libretro
by-name
bu
ca
cargo-careful
gl
gt
ku
kubexporter
ld
ldeep
li
libetonyek
lm
lmstudio
ma
mattermostLatest
nc
nchat
ne
nezha-agent
ni
re
rerun
sa
sarasa-gothic
se
searxng
si
sp
st
structurizr-cli
ti
tilix
vu
ze
zed-editor
development
libraries
protobuf
python-modules
anyascii
bibtexparser
boto3-stubs
celery
clldutils
deap
hawkmoth
hcloud
monotonic-alignment-search
mscerts
mypy-boto3
parsedatetime
polyswarm-api
pushover-complete
pygreat
python-engineio
rich-argparse
sklearn-deap
superqt
tencentcloud-sdk-python
tree-sitter-grammars
youtokentome
yte
top-level
+1 -1
doc/packages/python-tree-sitter.section.md
···
```nix
{
-
pkgs ? <nixpkgs> { },
+
pkgs ? import <nixpkgs> { },
}:
pkgs.mkShell {
+7
maintainers/maintainer-list.nix
···
githubId = 20536514;
name = "Magdalena Haselsteiner";
+
mhemeryck = {
+
email = "martijn.hemeryck@gmail.com";
+
github = "mhemeryck";
+
githubId = 5445250;
+
name = "Martijn Hemeryck";
+
keys = [ { fingerprint = "1B47 7ADA 04B4 7A5C E61A EDE0 1AA3 6833 BC86 F0F1"; } ];
+
};
mi-ael = {
email = "miael.oss.1970@gmail.com";
name = "mi-ael";
-1
maintainers/team-list.nix
···
kazenyuk
minijackson
peterhoeg
-
sephalon
];
scope = "Maintain Kodi and related packages.";
shortName = "Kodi";
+6 -6
pkgs/applications/editors/vscode/vscodium.nix
···
hash =
{
-
x86_64-linux = "sha256-8ICeLN4KZo3kg0QSGgDqwnulMf4wligZZTeXQ+dC61U=";
-
x86_64-darwin = "sha256-4UDb678hbstvnkySzwI8uhgoR4pmL7KXv9gYLdhigkg=";
-
aarch64-linux = "sha256-dMsyOV4HFF4xZuUzOBOhVru1XfNu14Ga/2iX2ux07qY=";
-
aarch64-darwin = "sha256-lcX3562Aj994+vWQNcDTOVkSJ/zhH0GRjlNlNxoZUXg=";
-
armv7l-linux = "sha256-iSqVoTppc5WDBLRCFhy1hNtovCxeN2bpcvBW4Gqu2+U=";
+
x86_64-linux = "sha256-IDLwjwstwKc2xSWvY499+Hf6cLORnhD9H3OGPH0XEUo=";
+
x86_64-darwin = "sha256-HyFWmLw6OWZoCYKTBIljbUPB9hpr+RDK7wHp6kwinmY=";
+
aarch64-linux = "sha256-Ys336a/YSMniPLmPXKxCShDRutYvwIIHTG4iENsAIcc=";
+
aarch64-darwin = "sha256-exhkzEmBU5gZkBxwh2FOaNzTQweP/sKA4WjZHyiAk9M=";
+
armv7l-linux = "sha256-PqgCe76dyBijYN3xM8UyBqFyDZdqP/+JdE8Zisnpao4=";
}
.${system} or throwSystem;
···
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
-
version = "1.101.14098";
+
version = "1.101.24242";
pname = "vscodium";
executableName = "codium";
+3 -3
pkgs/applications/emulators/libretro/cores/ppsspp.nix
···
}:
mkLibretroCore {
core = "ppsspp";
-
version = "0-unstable-2025-06-19";
+
version = "0-unstable-2025-06-28";
src = fetchFromGitHub {
owner = "hrydgard";
repo = "ppsspp";
-
rev = "b0df912935040b572aaa08d6a8d99f8b45e3da80";
-
hash = "sha256-qsCUZgaGy79wd1MRz5gVQmHyyVM1wDRlwZj8Qh3j7yU=";
+
rev = "1f2b4de6c148cfd4514f415dbf40cd684840be70";
+
hash = "sha256-QWy3PKnPj5ol52KOV/SMpNuiERnmmBHs+087qKCvM3M=";
fetchSubmodules = true;
};
+3 -3
pkgs/applications/emulators/libretro/cores/vice.nix
···
}:
mkLibretroCore {
core = "vice-${type}";
-
version = "0-unstable-2025-05-24";
+
version = "0-unstable-2025-06-29";
src = fetchFromGitHub {
owner = "libretro";
repo = "vice-libretro";
-
rev = "f27798806c60f024ce25dc9b8478f12b4d1aa0b6";
-
hash = "sha256-CVDdMtw/25fCR2atJjTbejrvQcmtVwkQb+Lxj8l581c=";
+
rev = "4f53f97418f72bbefefff8d5746aa49942fc9848";
+
hash = "sha256-P8UN3r7clkwY7OD5iQKjLys55q+tfpAVl8abhKj3ZOc=";
};
makefile = "Makefile";
+5 -5
pkgs/by-name/bu/buf/package.nix
···
lib,
buildGoModule,
fetchFromGitHub,
-
protobuf_26,
+
protobuf,
git,
testers,
buf,
···
buildGoModule rec {
pname = "buf";
-
version = "1.52.1";
+
version = "1.55.1";
src = fetchFromGitHub {
owner = "bufbuild";
repo = "buf";
rev = "v${version}";
-
hash = "sha256-oHmTOQBvuJWQdmC/LL72r+n2uwaQC8z3/1BRM0NzMbI=";
+
hash = "sha256-41IY2P2s9kCV6aQh5vg7xVmu4Ovl9gakGmgcI/QSwfw=";
};
-
vendorHash = "sha256-+zJ2pCLyXnqFOIWWfnhAzSnUOjQSDo4AqCxBNNZED7E=";
+
vendorHash = "sha256-2kg7VXIFKXXY1uDUSV3+4vo6GYwnxyvJIZ/a8j99lhk=";
patches = [
# Skip a test that requires networking to be available to work.
···
nativeCheckInputs = [
git # Required for TestGitCloner
-
protobuf_26 # Required for buftesting.GetProtocFilePaths
+
protobuf # Required for buftesting.GetProtocFilePaths
];
checkFlags = [
+3 -3
pkgs/by-name/ca/cargo-careful/package.nix
···
rustPlatform.buildRustPackage rec {
pname = "cargo-careful";
-
version = "0.4.7";
+
version = "0.4.8";
src = fetchFromGitHub {
owner = "RalfJung";
repo = "cargo-careful";
rev = "v${version}";
-
hash = "sha256-aMQrPJp0AVEYfMlWZBy9IMvQQxlkW7KWuxqLn1Ds2ck=";
+
hash = "sha256-KT0sYftintyaFKr+thnK+SV36Gt9BQZL/9j+u9DtzRM=";
};
useFetchCargoVendor = true;
-
cargoHash = "sha256-5uMz1j0ZnA4wPMfC2SeY33zsiTt2NNZnWh9th2UJiNI=";
+
cargoHash = "sha256-oLMUGbhN9/6U6mcjxJTLxqogwDaXWhf/gW10l37wNdY=";
meta = with lib; {
description = "Tool to execute Rust code carefully, with extra checking along the way";
+4 -4
pkgs/by-name/gl/glab/package.nix
···
buildGoModule (finalAttrs: {
pname = "glab";
-
version = "1.60.2";
+
version = "1.61.0";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "cli";
-
rev = "v${finalAttrs.version}";
-
hash = "sha256-uZHQ11tnxyccolFm5NcHuGMRZqS2Xqaq/GhU7glOjGk=";
+
tag = "v${finalAttrs.version}";
+
hash = "sha256-pouFnmHCfRFDy+MMbRI82o73jO8hRewHeXgGnJ4hnww=";
};
-
vendorHash = "sha256-9iBH13P8QTRPlD5UlTbdRH3wht/UNrCwhRC9HwzQ+I8=";
+
vendorHash = "sha256-COp4RebkU36OChbZFeLALUppXqHLRbrm3D64Hb5RmI4=";
ldflags = [
"-s"
+3 -3
pkgs/by-name/ku/kubexporter/package.nix
···
buildGoModule rec {
pname = "kubexporter";
-
version = "0.6.4";
+
version = "0.6.5";
src = fetchFromGitHub {
owner = "bakito";
repo = "kubexporter";
tag = "v${version}";
-
hash = "sha256-J79AsxkR7Dm4SwnUmYli0H9jUit13RZ2BvLLhlTG5HU=";
+
hash = "sha256-lMXs19E52LHDtVytgP/qgkKGeiz3/5KvoYeY0wlkgT8=";
};
-
vendorHash = "sha256-D3N0Trq0Izm6at5ikUOJSlHpD2qWmoKwu0ZYcm9l12o=";
+
vendorHash = "sha256-b4bqAhgcVgLhdLX6isRM9bbnFLfmVb4O2hhJUGqWgb0=";
ldflags = [
"-s"
+2 -2
pkgs/by-name/ld/ldeep/package.nix
···
python3.pkgs.buildPythonApplication rec {
pname = "ldeep";
-
version = "1.0.86";
+
version = "1.0.87";
pyproject = true;
src = fetchFromGitHub {
owner = "franc-pentest";
repo = "ldeep";
tag = version;
-
hash = "sha256-LTtoLy2Bf9qhCjTUx73cGSfDkI8onZ3zqkecBfduz8Y=";
+
hash = "sha256-ym26uCWJU5fEbOyPxI8qUvorWj3HzCcHSmBk8kXPQUQ=";
};
pythonRelaxDeps = [
+11 -7
pkgs/by-name/li/libetonyek/package.nix
···
zlib,
}:
-
stdenv.mkDerivation rec {
+
stdenv.mkDerivation (finalAttrs: {
pname = "libetonyek";
version = "0.1.12";
src = fetchFromGitHub {
owner = "LibreOffice";
repo = "libetonyek";
-
rev = "libetonyek-${version}";
+
rev = "libetonyek-${finalAttrs.version}";
hash = "sha256-dvYbV+7IakgOkGsZ+zaW+qgn/QoD6Jwq/juaE+7iYug=";
};
···
configureFlags = [ "--with-mdds=2.1" ];
-
meta = with lib; {
+
strictDeps = true;
+
+
enableParallelBuilding = true;
+
+
meta = {
description = "Library and a set of tools for reading and converting Apple iWork documents (Keynote, Pages and Numbers)";
homepage = "https://github.com/LibreOffice/libetonyek";
-
changelog = "https://github.com/LibreOffice/libetonyek/blob/${src.rev}/NEWS";
-
license = licenses.mpl20;
+
changelog = "https://github.com/LibreOffice/libetonyek/blob/${finalAttrs.src.rev}/NEWS";
+
license = lib.licenses.mpl20;
maintainers = [ ];
-
platforms = platforms.all;
+
platforms = lib.platforms.all;
};
-
}
+
})
+4 -4
pkgs/by-name/lm/lmstudio/package.nix
···
let
pname = "lmstudio";
-
version_aarch64-darwin = "0.3.16-8";
-
hash_aarch64-darwin = "sha256-iuC43czK26Yf4DM9BhUUBjgDilQeURq+ZdeN2BHPeVo=";
-
version_x86_64-linux = "0.3.16-8";
-
hash_x86_64-linux = "sha256-vouDzaSgkYN++FKz0tLn9ItHg0tQmnFk2U7RlQyAUWg=";
+
version_aarch64-darwin = "0.3.17-11";
+
hash_aarch64-darwin = "sha256-z3QkWwzYrHw3l8Qm+FfnrfdtfhdpkLo67XTE/t2ji5Y=";
+
version_x86_64-linux = "0.3.17-11";
+
hash_x86_64-linux = "sha256-CCsGkhh5OSAhyt2CHKIEIh5OzllRWxm6ERuGqQW/0JE=";
meta = {
description = "LM Studio is an easy to use desktop app for experimenting with local and open-source Large Language Models (LLMs)";
+2 -2
pkgs/by-name/ma/mattermostLatest/package.nix
···
# and make sure the version regex is up to date here.
# Ensure you also check ../mattermost/package.nix for ESR releases.
regex = "^v(10\\.[0-9]+\\.[0-9]+)$";
-
version = "10.9.1";
-
srcHash = "sha256-U9PbI2rzoMW48cDFJuhHrL7BWFrqTN7lgTbeL1N0dpQ=";
+
version = "10.9.2";
+
srcHash = "sha256-0el9PROsErFFnOIhv+TdFAXaXRECEeBqaiaPGMt5M5E=";
vendorHash = "sha256-+wmemZZyuz90VCXjO0ekplxdkv2p0s5h4qUObAA0XwU=";
npmDepsHash = "sha256-uAB599r3ZWjnt+jwk7sjSiPsc/tUyiBZzGqLZxuU3xE=";
lockfileOverlay = ''
+3 -3
pkgs/by-name/nc/nchat/package.nix
···
}:
let
-
version = "5.7.24";
+
version = "5.8.4";
src = fetchFromGitHub {
owner = "d99kris";
repo = "nchat";
tag = "v${version}";
-
hash = "sha256-qyx4LOhCFcwg2ou4QgiiolGgLs2fxfQu6gwDIeMUcb4=";
+
hash = "sha256-PfiTIq8xomqp4ewawbX56hFgA4x5z8SI2w9husMtZPc=";
};
libcgowm = buildGoModule {
···
inherit version src;
sourceRoot = "${src.name}/lib/wmchat/go";
-
vendorHash = "sha256-LPcIfXOlkejyLlYtew26FTOl7eBGhuNxjAVrmUItkxY=";
+
vendorHash = "sha256-HC7tJRk7Pqw3AUDEP2fGqYQLjIGf0CgB36K3PBYsBMM=";
buildPhase = ''
runHook preBuild
+2 -2
pkgs/by-name/ne/nezha-agent/package.nix
···
}:
buildGoModule (finalAttrs: {
pname = "nezha-agent";
-
version = "1.12.3";
+
version = "1.13.0";
src = fetchFromGitHub {
owner = "nezhahq";
repo = "agent";
tag = "v${finalAttrs.version}";
-
hash = "sha256-LhSuKbvTHO+bCCtxKENS7wbScDHE57Uf3nFrMDt2wOE=";
+
hash = "sha256-CFwHMO78v/A5hjNypFo9Fp0gdkrKgNvPRGz3RfMRRAU=";
};
vendorHash = "sha256-5g2AgkqaelCD10dxwcEmBLYy5nrd4IALiss0dTrTTno=";
+2 -1
pkgs/by-name/ni/nixos-rebuild-ng/package.nix
···
};
inherit (nixosTests)
-
nixos-rebuild-install-bootloader-ng
+
# FIXME: this test is disabled since it times out in @ofborg
+
# nixos-rebuild-install-bootloader-ng
nixos-rebuild-specialisations-ng
nixos-rebuild-target-host-ng
;
+13 -29
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py
···
import argparse
-
import json
import logging
import os
import sys
from subprocess import CalledProcessError, run
from typing import Final, assert_never
-
from . import nix
+
from . import nix, services
from .constants import EXECUTABLE, WITH_NIX_2_18, WITH_REEXEC, WITH_SHELL_FILES
from .models import Action, BuildAttr, Flake, Profile
from .process import Remote
-
from .services import build_and_activate_system, reexec
-
from .utils import LogFormatter, tabulate
+
from .utils import LogFormatter
logger: Final = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
···
and not args.no_reexec
and not os.environ.get("_NIXOS_REBUILD_REEXEC")
):
-
reexec(argv, args, build_flags, flake_build_flags)
+
services.reexec(argv, args, build_flags, flake_build_flags)
profile = Profile.from_arg(args.profile_name)
target_host = Remote.from_arg(args.target_host, args.ask_sudo_password)
···
flake = Flake.from_arg(args.flake, target_host)
if can_run and not flake:
-
nixpkgs_path = nix.find_file("nixpkgs", build_flags)
-
rev = nix.get_nixpkgs_rev(nixpkgs_path)
-
if nixpkgs_path and rev:
-
(nixpkgs_path / ".version-suffix").write_text(rev)
+
services.write_version_suffix(build_flags)
match action:
case (
···
| Action.BUILD_VM
| Action.BUILD_VM_WITH_BOOTLOADER
):
-
build_and_activate_system(
+
services.build_and_activate_system(
action=action,
args=args,
build_host=build_host,
···
)
case Action.EDIT:
-
nix.edit(flake, flake_build_flags)
+
services.edit(flake=flake, flake_build_flags=flake_build_flags)
case Action.DRY_RUN:
raise AssertionError("DRY_RUN should be a DRY_BUILD alias")
case Action.LIST_GENERATIONS:
-
generations = nix.list_generations(profile)
-
if args.json:
-
print(json.dumps(generations, indent=2))
-
else:
-
headers = {
-
"generation": "Generation",
-
"date": "Build-date",
-
"nixosVersion": "NixOS version",
-
"kernelVersion": "Kernel",
-
"configurationRevision": "Configuration Revision",
-
"specialisations": "Specialisation",
-
"current": "Current",
-
}
-
print(tabulate(generations, headers=headers))
+
services.list_generations(args=args, profile=profile)
case Action.REPL:
-
if flake:
-
nix.repl_flake(flake, flake_build_flags)
-
else:
-
nix.repl(build_attr, build_flags)
+
services.repl(
+
flake=flake,
+
build_attr=build_attr,
+
flake_build_flags=flake_build_flags,
+
build_flags=build_flags,
+
)
case _:
assert_never(action)
+24 -24
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/nix.py
···
nix_copy_closure(to_host, to=True)
-
def edit(flake: Flake | None, flake_flags: Args | None = None) -> None:
+
def edit() -> None:
"Try to find and open NixOS configuration file in editor."
-
if flake:
-
run_wrapper(
-
[
-
"nix",
-
*FLAKE_FLAGS,
-
"edit",
-
*dict_to_flags(flake_flags),
-
"--",
-
str(flake),
-
],
-
check=False,
-
)
+
nixos_config = Path(
+
os.getenv("NIXOS_CONFIG") or find_file("nixos-config") or "/etc/nixos"
+
)
+
if nixos_config.is_dir():
+
nixos_config /= "default.nix"
+
+
if nixos_config.exists():
+
run_wrapper([os.getenv("EDITOR", "nano"), nixos_config], check=False)
else:
-
if flake_flags:
-
raise NixOSRebuildError("'edit' does not support extra Nix flags")
-
nixos_config = Path(
-
os.getenv("NIXOS_CONFIG") or find_file("nixos-config") or "/etc/nixos"
-
)
-
if nixos_config.is_dir():
-
nixos_config /= "default.nix"
+
raise NixOSRebuildError("cannot find NixOS config file")
-
if nixos_config.exists():
-
run_wrapper([os.getenv("EDITOR", "nano"), nixos_config], check=False)
-
else:
-
raise NixOSRebuildError("cannot find NixOS config file")
+
+
def edit_flake(flake: Flake | None, flake_flags: Args | None = None) -> None:
+
"Try to find and open NixOS configuration file in editor for Flake config."
+
run_wrapper(
+
[
+
"nix",
+
*FLAKE_FLAGS,
+
"edit",
+
*dict_to_flags(flake_flags),
+
"--",
+
str(flake),
+
],
+
check=False,
+
)
def find_file(file: str, nix_flags: Args | None = None) -> Path | None:
+48 -1
pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/services.py
···
import argparse
+
import json
import logging
import os
import sys
···
from .constants import EXECUTABLE
from .models import Action, BuildAttr, Flake, ImageVariants, NixOSRebuildError, Profile
from .process import Remote, cleanup_ssh
-
from .utils import Args
+
from .utils import Args, tabulate
NIXOS_REBUILD_ATTR: Final = "config.system.build.nixos-rebuild"
···
common_flags=common_flags,
flake_common_flags=flake_common_flags,
)
+
+
+
def edit(flake: Flake | None, flake_build_flags: Args | None = None) -> None:
+
if flake:
+
nix.edit_flake(flake, flake_build_flags)
+
else:
+
nix.edit()
+
+
+
def list_generations(
+
args: argparse.Namespace,
+
profile: Profile,
+
) -> None:
+
generations = nix.list_generations(profile)
+
if args.json:
+
print(json.dumps(generations, indent=2))
+
else:
+
headers = {
+
"generation": "Generation",
+
"date": "Build-date",
+
"nixosVersion": "NixOS version",
+
"kernelVersion": "Kernel",
+
"configurationRevision": "Configuration Revision",
+
"specialisations": "Specialisation",
+
"current": "Current",
+
}
+
print(tabulate(generations, headers=headers))
+
+
+
def repl(
+
flake: Flake | None,
+
build_attr: BuildAttr,
+
flake_build_flags: Args,
+
build_flags: Args,
+
) -> None:
+
if flake:
+
nix.repl_flake(flake, flake_build_flags)
+
else:
+
nix.repl(build_attr, build_flags)
+
+
+
def write_version_suffix(build_flags: Args) -> None:
+
nixpkgs_path = nix.find_file("nixpkgs", build_flags)
+
rev = nix.get_nixpkgs_rev(nixpkgs_path)
+
if nixpkgs_path and rev:
+
(nixpkgs_path / ".version-suffix").write_text(rev)
-87
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_main.py
···
from unittest.mock import ANY, Mock, call, patch
import pytest
-
from pytest import MonkeyPatch
import nixos_rebuild as nr
from nixos_rebuild.constants import WITH_NIX_2_18
···
"--include",
"include2",
]
-
-
-
@patch.dict(os.environ, {}, clear=True)
-
@patch("os.execve", autospec=True)
-
@patch(get_qualified_name(nr.nix.build), autospec=True)
-
def test_reexec(mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch) -> None:
-
monkeypatch.setattr(nr.services, "EXECUTABLE", "nixos-rebuild-ng")
-
argv = ["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"]
-
args, _ = nr.parse_args(argv)
-
mock_build.return_value = Path("/path")
-
-
nr.reexec(argv, args, {"build": True}, {"flake": True})
-
mock_build.assert_has_calls(
-
[
-
call(
-
nr.services.NIXOS_REBUILD_ATTR,
-
nr.models.BuildAttr(ANY, ANY),
-
{"build": True, "no_out_link": True},
-
)
-
]
-
)
-
# do not exec if there is no new version
-
mock_execve.assert_not_called()
-
-
mock_build.return_value = Path("/path/new")
-
-
nr.reexec(argv, args, {}, {})
-
# exec in the new version successfully
-
mock_execve.assert_called_once_with(
-
Path("/path/new/bin/nixos-rebuild-ng"),
-
["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"],
-
{"_NIXOS_REBUILD_REEXEC": "1"},
-
)
-
-
mock_execve.reset_mock()
-
mock_execve.side_effect = [OSError("BOOM"), None]
-
-
nr.reexec(argv, args, {}, {})
-
# exec in the previous version if the new version fails
-
mock_execve.assert_any_call(
-
Path("/path/bin/nixos-rebuild-ng"),
-
["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"],
-
{"_NIXOS_REBUILD_REEXEC": "1"},
-
)
-
-
-
@patch.dict(os.environ, {}, clear=True)
-
@patch("os.execve", autospec=True)
-
@patch(get_qualified_name(nr.nix.build_flake), autospec=True)
-
def test_reexec_flake(
-
mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch
-
) -> None:
-
monkeypatch.setattr(nr.services, "EXECUTABLE", "nixos-rebuild-ng")
-
argv = ["/path/bin/nixos-rebuild-ng", "switch", "--flake"]
-
args, _ = nr.parse_args(argv)
-
mock_build.return_value = Path("/path")
-
-
nr.reexec(argv, args, {"build": True}, {"flake": True})
-
mock_build.assert_called_once_with(
-
nr.services.NIXOS_REBUILD_ATTR,
-
nr.models.Flake(ANY, ANY),
-
{"flake": True, "no_link": True},
-
)
-
# do not exec if there is no new version
-
mock_execve.assert_not_called()
-
-
mock_build.return_value = Path("/path/new")
-
-
nr.reexec(argv, args, {}, {})
-
# exec in the new version successfully
-
mock_execve.assert_called_once_with(
-
Path("/path/new/bin/nixos-rebuild-ng"),
-
["/path/bin/nixos-rebuild-ng", "switch", "--flake"],
-
{"_NIXOS_REBUILD_REEXEC": "1"},
-
)
-
-
mock_execve.reset_mock()
-
mock_execve.side_effect = [OSError("BOOM"), None]
-
-
nr.reexec(argv, args, {}, {})
-
# exec in the previous version if the new version fails
-
mock_execve.assert_any_call(
-
Path("/path/bin/nixos-rebuild-ng"),
-
["/path/bin/nixos-rebuild-ng", "switch", "--flake"],
-
{"_NIXOS_REBUILD_REEXEC": "1"},
-
)
@patch.dict(
+14 -13
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py
···
@patch(get_qualified_name(n.run_wrapper, n), autospec=True)
def test_edit(mock_run: Mock, monkeypatch: MonkeyPatch, tmpdir: Path) -> None:
-
# Flake
+
with monkeypatch.context() as mp:
+
default_nix = tmpdir / "default.nix"
+
default_nix.write_text("{}", encoding="utf-8")
+
+
mp.setenv("NIXOS_CONFIG", str(tmpdir))
+
mp.setenv("EDITOR", "editor")
+
+
n.edit()
+
mock_run.assert_called_with(["editor", default_nix], check=False)
+
+
+
@patch(get_qualified_name(n.run_wrapper, n), autospec=True)
+
def test_editd_flake(mock_run: Mock, monkeypatch: MonkeyPatch, tmpdir: Path) -> None:
flake = m.Flake.parse(f"{tmpdir}#attr")
-
n.edit(flake, {"commit_lock_file": True})
+
n.edit_flake(flake, {"commit_lock_file": True})
mock_run.assert_called_with(
[
"nix",
···
],
check=False,
)
-
-
# Classic
-
with monkeypatch.context() as mp:
-
default_nix = tmpdir / "default.nix"
-
default_nix.write_text("{}", encoding="utf-8")
-
-
mp.setenv("NIXOS_CONFIG", str(tmpdir))
-
mp.setenv("EDITOR", "editor")
-
-
n.edit(None)
-
mock_run.assert_called_with(["editor", default_nix], check=False)
@patch(
+96
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_services.py
···
+
import os
+
from pathlib import Path
+
from unittest.mock import ANY, Mock, call, patch
+
+
from pytest import MonkeyPatch
+
+
import nixos_rebuild as n
+
import nixos_rebuild.services as s
+
+
from .helpers import get_qualified_name
+
+
+
@patch.dict(os.environ, {}, clear=True)
+
@patch("os.execve", autospec=True)
+
@patch(get_qualified_name(s.nix.build), autospec=True)
+
def test_reexec(mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch) -> None:
+
monkeypatch.setattr(s, "EXECUTABLE", "nixos-rebuild-ng")
+
argv = ["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"]
+
args, _ = n.parse_args(argv)
+
mock_build.return_value = Path("/path")
+
+
s.reexec(argv, args, {"build": True}, {"flake": True})
+
mock_build.assert_has_calls(
+
[
+
call(
+
s.NIXOS_REBUILD_ATTR,
+
n.models.BuildAttr(ANY, ANY),
+
{"build": True, "no_out_link": True},
+
)
+
]
+
)
+
# do not exec if there is no new version
+
mock_execve.assert_not_called()
+
+
mock_build.return_value = Path("/path/new")
+
+
s.reexec(argv, args, {}, {})
+
# exec in the new version successfully
+
mock_execve.assert_called_once_with(
+
Path("/path/new/bin/nixos-rebuild-ng"),
+
["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"],
+
{"_NIXOS_REBUILD_REEXEC": "1"},
+
)
+
+
mock_execve.reset_mock()
+
mock_execve.side_effect = [OSError("BOOM"), None]
+
+
s.reexec(argv, args, {}, {})
+
# exec in the previous version if the new version fails
+
mock_execve.assert_any_call(
+
Path("/path/bin/nixos-rebuild-ng"),
+
["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"],
+
{"_NIXOS_REBUILD_REEXEC": "1"},
+
)
+
+
+
@patch.dict(os.environ, {}, clear=True)
+
@patch("os.execve", autospec=True)
+
@patch(get_qualified_name(s.nix.build_flake), autospec=True)
+
def test_reexec_flake(
+
mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch
+
) -> None:
+
monkeypatch.setattr(s, "EXECUTABLE", "nixos-rebuild-ng")
+
argv = ["/path/bin/nixos-rebuild-ng", "switch", "--flake"]
+
args, _ = n.parse_args(argv)
+
mock_build.return_value = Path("/path")
+
+
s.reexec(argv, args, {"build": True}, {"flake": True})
+
mock_build.assert_called_once_with(
+
s.NIXOS_REBUILD_ATTR,
+
n.models.Flake(ANY, ANY),
+
{"flake": True, "no_link": True},
+
)
+
# do not exec if there is no new version
+
mock_execve.assert_not_called()
+
+
mock_build.return_value = Path("/path/new")
+
+
s.reexec(argv, args, {}, {})
+
# exec in the new version successfully
+
mock_execve.assert_called_once_with(
+
Path("/path/new/bin/nixos-rebuild-ng"),
+
["/path/bin/nixos-rebuild-ng", "switch", "--flake"],
+
{"_NIXOS_REBUILD_REEXEC": "1"},
+
)
+
+
mock_execve.reset_mock()
+
mock_execve.side_effect = [OSError("BOOM"), None]
+
+
s.reexec(argv, args, {}, {})
+
# exec in the previous version if the new version fails
+
mock_execve.assert_any_call(
+
Path("/path/bin/nixos-rebuild-ng"),
+
["/path/bin/nixos-rebuild-ng", "switch", "--flake"],
+
{"_NIXOS_REBUILD_REEXEC": "1"},
+
)
+3 -3
pkgs/by-name/re/rerun/package.nix
···
rustPlatform.buildRustPackage (finalAttrs: {
pname = "rerun";
-
version = "0.23.3";
+
version = "0.23.4";
src = fetchFromGitHub {
owner = "rerun-io";
repo = "rerun";
tag = finalAttrs.version;
-
hash = "sha256-XVrhVUP7AIywIq357HoSP/ZCmYTnLiX/tgaOzhh6PHo=";
+
hash = "sha256-4+vx4BMGJpdN6k+UxAx2unO4maxoUd9uP9Q3mYjpyF4=";
};
# The path in `build.rs` is wrong for some reason, so we patch it to make the passthru tests work
···
'';
useFetchCargoVendor = true;
-
cargoHash = "sha256-tj9+dvXF3iDbUoxk7Hdz+PTuyDpCgdRE6ZqHBLTZuMU=";
+
cargoHash = "sha256-lmIe/QH8+/2LgaObbEvRgThP82AAnmGzf2SPfHExHks=";
cargoBuildFlags = [ "--package rerun-cli" ];
cargoTestFlags = [ "--package rerun-cli" ];
+2 -2
pkgs/by-name/sa/sarasa-gothic/package.nix
···
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "sarasa-gothic";
-
version = "1.0.30";
+
version = "1.0.31";
src = fetchurl {
# Use the 'ttc' files here for a smaller closure size.
# (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${finalAttrs.version}/Sarasa-TTC-${finalAttrs.version}.zip";
-
hash = "sha256-or/XzPJhWe7F2sMsWxaIynXALnMhzKQeezTt16tzqoY=";
+
hash = "sha256-6jVbe37lbpPmNzyiBb6fUfru3EZ71Eco9BuXNzgdQD8=";
};
sourceRoot = ".";
+3 -3
pkgs/by-name/se/searxng/package.nix
···
python.pkgs.toPythonModule (
python.pkgs.buildPythonApplication rec {
pname = "searxng";
-
version = "0-unstable-2025-06-14";
+
version = "0-unstable-2025-06-28";
src = fetchFromGitHub {
owner = "searxng";
repo = "searxng";
-
rev = "e52e9bb4b699e39d9ce51874ea339d4773717389";
-
hash = "sha256-azSFD1Uxa8RTbX3xllxkZuLCahpQdh/8F1TiUx2irhA=";
+
rev = "df76647c52b56101f152c5dec7c1d08f1732ceb7";
+
hash = "sha256-8Rh42DFLyQz+4cWA8x5wpFO41DusMuTo8NAloprw5w0=";
};
postPatch = ''
+3 -3
pkgs/by-name/si/signal-desktop-bin/signal-desktop-aarch64.nix
···
{ callPackage, commandLineArgs }:
callPackage ./generic.nix { inherit commandLineArgs; } {
pname = "signal-desktop-bin";
-
version = "7.58.0";
+
version = "7.59.0";
libdir = "usr/lib64/signal-desktop";
bindir = "usr/bin";
···
bsdtar -xf $downloadedFile -C "$out"
'';
-
url = "https://download.copr.fedorainfracloud.org/results/useidel/signal-desktop/fedora-42-aarch64/09183198-signal-desktop/signal-desktop-7.58.0-1.fc42.aarch64.rpm";
-
hash = "sha256-0Ix+1SdvmKLVbtGzbjUupvVzdWAJFNQ6sSAIt+T9fHo=";
+
url = "https://download.copr.fedorainfracloud.org/results/useidel/signal-desktop/fedora-42-aarch64/09213968-signal-desktop/signal-desktop-7.59.0-1.fc42.aarch64.rpm";
+
hash = "sha256-nGpSWlTJ1M6UL7V3o57KByfh55LL/p3I9h+XmoJhuec=";
}
+2 -2
pkgs/by-name/si/signal-desktop-bin/signal-desktop-darwin.nix
···
}:
stdenv.mkDerivation (finalAttrs: {
pname = "signal-desktop-bin";
-
version = "7.58.0";
+
version = "7.59.0";
src = fetchurl {
url = "https://updates.signal.org/desktop/signal-desktop-mac-universal-${finalAttrs.version}.dmg";
-
hash = "sha256-yOPYG9bCSCIE1L8RgEXCy6pJUHONBh9SpPY4WDfZEho=";
+
hash = "sha256-maBZqSklxa1Vg3U6xbQxYx+McPTWa4WdBCKh4tq6W4g=";
};
sourceRoot = ".";
+2 -2
pkgs/by-name/si/signal-desktop-bin/signal-desktop.nix
···
{ callPackage, commandLineArgs }:
callPackage ./generic.nix { inherit commandLineArgs; } rec {
pname = "signal-desktop-bin";
-
version = "7.58.0";
+
version = "7.59.0";
libdir = "opt/Signal";
bindir = libdir;
extractPkg = "dpkg-deb -x $downloadedFile $out";
url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-
hash = "sha256-zZ63AE+qb0lrGtGUtU4FV6pHDO2DUV2vknz3a4+f4aA=";
+
hash = "sha256-SgTbV7KrGVdN87hgfjxamKikBxVHPIiaXAV2K3kljsU=";
}
+24 -39
pkgs/by-name/sp/speakersafetyd/package.nix
···
stdenv,
lib,
rustPlatform,
-
fetchFromGitHub,
+
fetchCrate,
pkg-config,
alsa-lib,
+
rust,
udevCheckHook,
-
nix-update-script,
}:
-
rustPlatform.buildRustPackage (finalAttrs: {
+
rustPlatform.buildRustPackage rec {
pname = "speakersafetyd";
-
version = "1.1.2";
+
version = "1.0.2";
-
src = fetchFromGitHub {
-
owner = "AsahiLinux";
-
repo = "speakersafetyd";
-
tag = finalAttrs.version;
-
hash = "sha256-sSGoF2c5HfPM2FBrBJwJ9NvExYijGx6JH1bJp3epfe0=";
+
src = fetchCrate {
+
inherit pname version;
+
hash = "sha256-3DzBNebg1y/+psD2zOpDsnRJmabQLeO1UMxPq9M0CsU=";
};
-
-
cargoHash = "sha256-9XbrIY1VwnHtqi/ZfS952SyjNjA/TJRdOqCsPReZI8o=";
-
-
patches = [
-
./remove-install-paths.patch
-
];
+
useFetchCargoVendor = true;
+
cargoHash = "sha256-DnOnqi60JsRX8yqEM/5zZ3yX/rk85/ruwL3aW1FRXKg=";
nativeBuildInputs = [
pkg-config
···
buildInputs = [ alsa-lib ];
postPatch = ''
-
substituteInPlace speakersafetyd.service \
-
--replace-fail "/usr" \
-
"$out"
-
-
substituteInPlace Makefile \
-
--replace-fail "target/release" \
-
"target/${stdenv.hostPlatform.rust.cargoShortTarget}/$cargoBuildType" \
+
substituteInPlace speakersafetyd.service --replace "/usr" "$out"
+
substituteInPlace Makefile --replace "target/release" "target/${stdenv.hostPlatform.rust.cargoShortTarget}/$cargoBuildType"
+
# creating files in /var does not make sense in a nix package
+
substituteInPlace Makefile --replace 'install -dDm0755 $(DESTDIR)/$(VARDIR)/lib/speakersafetyd/blackbox' ""
'';
installFlags = [
-
"DESTDIR=$(out)"
-
"BINDIR=bin"
-
"UNITDIR=lib/systemd/system"
-
"UDEVDIR=lib/udev/rules.d"
-
"SHAREDIR=share"
-
"TMPFILESDIR=lib/tmpfiles.d"
+
"BINDIR=$(out)/bin"
+
"UNITDIR=$(out)/lib/systemd/system"
+
"UDEVDIR=$(out)/lib/udev/rules.d"
+
"SHAREDIR=$(out)/share"
+
"TMPFILESDIR=$(out)/lib/tmpfiles.d"
];
dontCargoInstall = true;
doInstallCheck = true;
-
passthru = {
-
updateScript = nix-update-script { };
-
};
-
-
meta = {
-
description = "Userspace daemon that implements the Smart Amp protection model";
+
meta = with lib; {
+
description = "Userspace daemon written in Rust that implements an analogue of the Texas Instruments Smart Amp speaker protection model";
mainProgram = "speakersafetyd";
homepage = "https://github.com/AsahiLinux/speakersafetyd";
-
maintainers = with lib.maintainers; [
-
normalcea
+
maintainers = with maintainers; [
flokli
yuka
];
-
license = lib.licenses.mit;
-
platforms = lib.platforms.linux;
+
license = licenses.mit;
+
platforms = platforms.linux;
};
-
})
+
}
-16
pkgs/by-name/sp/speakersafetyd/remove-install-paths.patch
···
-
diff --git a/Makefile b/Makefile
-
index 41bf7b4..ca14be7 100644
-
--- a/Makefile
-
+++ b/Makefile
-
@@ -24,11 +24,8 @@ install-data:
-
install -pm0644 95-speakersafetyd.rules $(DESTDIR)/$(UDEVDIR)/95-speakersafetyd.rules
-
install -dDm0755 $(DESTDIR)/$(SHAREDIR)/speakersafetyd/apple
-
install -pm0644 -t $(DESTDIR)/$(SHAREDIR)/speakersafetyd/apple $(wildcard conf/apple/*)
-
- install -dDm0755 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/$(VARDIR)/lib/speakersafetyd
-
- install -dDm0700 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/$(VARDIR)/lib/speakersafetyd/blackbox
-
install -dDm0755 $(DESTDIR)/$(TMPFILESDIR)
-
install -pm0644 speakersafetyd.tmpfiles $(DESTDIR)/$(TMPFILESDIR)/speakersafetyd.conf
-
- install -dDm0755 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/run/speakersafetyd
-
-
uninstall:
-
rm -f $(DESTDIR)/$(BINDIR)/speakersafetyd $(DESTDIR)/$(UNITDIR)/speakersafetyd.service $(DESTDIR)/$(UDEVDIR)/95-speakersafetyd.rules $(DESTDIR)/$(TMPFILESDIR)/speakersafetyd.conf
+413
pkgs/by-name/st/structurizr-cli/deps.json
···
+
{
+
"!comment": "This is a nixpkgs Gradle dependency lockfile. For more details, refer to the Gradle section in the nixpkgs manual.",
+
"!version": 1,
+
"https://repo.maven.apache.org/maven2": {
+
"com/fasterxml#oss-parent/58": {
+
"pom": "sha256-VnDmrBxN3MnUE8+HmXpdou+qTSq+Q5Njr57xAqCgnkA="
+
},
+
"com/fasterxml#oss-parent/61": {
+
"pom": "sha256-NklRPPWX6RhtoIVZhqjFQ+Er29gF7e75wSTbVt0DZUQ="
+
},
+
"com/fasterxml/jackson#jackson-base/2.18.3": {
+
"pom": "sha256-1bv9PIRFIw5Ji2CS3oCa/WXPUE0BOTLat7Pf1unzpP0="
+
},
+
"com/fasterxml/jackson#jackson-bom/2.17.2": {
+
"pom": "sha256-H0crC8IATVz0IaxIhxQX+EGJ5481wElxg4f9i0T7nzI="
+
},
+
"com/fasterxml/jackson#jackson-bom/2.18.3": {
+
"pom": "sha256-8dTGrrMhGGUMgF/pu8XulA+o8s19DwT6Q2BVHponspA="
+
},
+
"com/fasterxml/jackson#jackson-parent/2.17": {
+
"pom": "sha256-rubeSpcoOwQOQ/Ta1XXnt0eWzZhNiSdvfsdWc4DIop0="
+
},
+
"com/fasterxml/jackson#jackson-parent/2.18.1": {
+
"pom": "sha256-0IIvrBoCJoRLitRFySDEmk9hkWnQmxAQp9/u0ZkQmYw="
+
},
+
"com/fasterxml/jackson/core#jackson-annotations/2.18.3": {
+
"jar": "sha256-iqV0DYC1pQJVCLQbutuqH7N3ImfGKLLjBoGk9F+LiTE=",
+
"module": "sha256-RkWF2yH0irFZ6O9XnNfo5tMHoEdhGZZRw+zBf05ydF0=",
+
"pom": "sha256-ucmLqeKephtpPUyMgBlo/qriILKyACNkp7zsUkmYOEs="
+
},
+
"com/fasterxml/jackson/core#jackson-core/2.18.3": {
+
"jar": "sha256-BWvE0+XlPOghRQ+pez+eD43eElz22miENTux8JWC4dk=",
+
"module": "sha256-mDbVp/Iba8VNfybeh8izBd3g5PGEsqyJUOmhsd9Hw0A=",
+
"pom": "sha256-N9xrj2ORpHCawhXKmPojQcbdZWE8InfZak/YKi9Q48k="
+
},
+
"com/fasterxml/jackson/core#jackson-databind/2.18.3": {
+
"jar": "sha256-UQvdp1p6YYbFvzO4USOUiKFFCQauV1cSHy4cxIp+EI8=",
+
"module": "sha256-ZCqggPhbIAV3ifrPKsaibhR4NbUDPidSDstpe8RD/Lo=",
+
"pom": "sha256-5Y9IrBTk29SFldaeILrTUBnsEoFRTvfvFV4YByraYX8="
+
},
+
"com/github/javaparser#javaparser-core/3.26.2": {
+
"jar": "sha256-Pj4MZdV9Enl9vq098euyjnWDc30M0fKomNum/r1Qq4g=",
+
"pom": "sha256-8xK6gXB9VttEhsH5rRpuA8Nqmazx4Imhhup0eKcTRLg="
+
},
+
"com/github/javaparser#javaparser-parent/3.26.2": {
+
"pom": "sha256-nsnC41jTpp/cpT1S61iqrCnpC+D1ANEMme0rlbkQUDQ="
+
},
+
"com/github/javaparser#javaparser-symbol-solver-core/3.26.2": {
+
"jar": "sha256-NMfuXkuGDrzJzPgo6aUhe71quUC0v4l+xlrrxAVuBEo=",
+
"pom": "sha256-2cOb2u9IZA49AKfSioH6tEtJGei4mMUOPQ4j24c4V3M="
+
},
+
"com/google/code/findbugs#jsr305/3.0.2": {
+
"jar": "sha256-dmrSoHg/JoeWLIrXTO7MOKKLn3Ki0IXuQ4t4E+ko0Mc=",
+
"pom": "sha256-GYidvfGyVLJgGl7mRbgUepdGRIgil2hMeYr+XWPXjf4="
+
},
+
"com/google/errorprone#error_prone_annotations/2.28.0": {
+
"jar": "sha256-8/yKOgpAIHBqNzsA5/V8JRLdJtH4PSjH04do+GgrIx4=",
+
"pom": "sha256-DOkJ8TpWgUhHbl7iAPOA+Yx1ugiXGq8V2ylet3WY7zo="
+
},
+
"com/google/errorprone#error_prone_parent/2.28.0": {
+
"pom": "sha256-rM79u1QWzvX80t3DfbTx/LNKIZPMGlXf5ZcKExs+doM="
+
},
+
"com/google/guava#failureaccess/1.0.2": {
+
"jar": "sha256-io+Bz5s1nj9t+mkaHndphcBh7y8iPJssgHU+G0WOgGQ=",
+
"pom": "sha256-GevG9L207bs9B7bumU+Ea1TvKVWCqbVjRxn/qfMdA7I="
+
},
+
"com/google/guava#guava-parent/26.0-android": {
+
"pom": "sha256-+GmKtGypls6InBr8jKTyXrisawNNyJjUWDdCNgAWzAQ="
+
},
+
"com/google/guava#guava-parent/33.3.0-jre": {
+
"pom": "sha256-tGueFpaKrkokgTgA9nduyJEYjXvQCXpIqfSgyW1oUQg="
+
},
+
"com/google/guava#guava/33.3.0-jre": {
+
"jar": "sha256-363DvOMQHv8UUqrkfXyDP+5EO0e9+e8TMRtsfKtmPd8=",
+
"module": "sha256-1WIerA4Z7qfdIY6zVMRyY+fuaT6d47rSUFS3BGSd6xw=",
+
"pom": "sha256-08vQUY6vq2qXi7bKP/mDM93+c2eEtr/cSZVD8MlyP4Q="
+
},
+
"com/google/guava#listenablefuture/9999.0-empty-to-avoid-conflict-with-guava": {
+
"jar": "sha256-s3KgN9QjCqV/vv/e8w/WEj+cDC24XQrO0AyRuXTzP5k=",
+
"pom": "sha256-GNSx2yYVPU5VB5zh92ux/gXNuGLvmVSojLzE/zi4Z5s="
+
},
+
"com/structurizr#structurizr-autolayout/4.1.0": {
+
"jar": "sha256-r0BiwjS669PDhdZ53LLWGkHcRHFOVKcqXEPfjW0R+jI=",
+
"module": "sha256-Mqs3nVgTsNWNCwk+iG4JJbKcevsre6CRf7O8EBAztHI=",
+
"pom": "sha256-n5SINihQCw10snN0SaK1yax5Lf4PtzOSXqO531QexiA="
+
},
+
"com/structurizr#structurizr-client/4.1.0": {
+
"jar": "sha256-l+jFssoHkejojhy7Ok+bynVfYG9icw2pVkTpSTeyjOg=",
+
"module": "sha256-q790VUnia8RYC5HnMX8vggBFxbSRDIctGKTwYyMD2IY=",
+
"pom": "sha256-5irzYR1rBgWVq75zEXcnn2V0k7ZgmNFc6NTzN9pVRc8="
+
},
+
"com/structurizr#structurizr-component/4.1.0": {
+
"jar": "sha256-WNkUCiEeRCYfWGRtiyFVoA/GtOd1hf9GDDexWtuyGdI=",
+
"module": "sha256-MynZsFCQaftFkK3JCExycV2Ud88y/lp+tWrciCIgczs=",
+
"pom": "sha256-ij/N22WNtcppgWNia2fk/l6jTbGiDEb/wbUlg4Mzdno="
+
},
+
"com/structurizr#structurizr-core/4.1.0": {
+
"jar": "sha256-hz6hp9DL8FgmWsot+X8j7sjDkAGF/ZlifPT7PI8qwN4=",
+
"module": "sha256-Zq97Xe5aEHLgFwwKsFQOxTAPH+CyY/KOAwOJUlPj8nA=",
+
"pom": "sha256-bfTSvnq0O/TFTAMtNBLJp40PIbfKUQmsMuQPpmFLc4I="
+
},
+
"com/structurizr#structurizr-dsl/4.1.0": {
+
"jar": "sha256-UykNgYUkSmb+euGwpArCO9jbmkZoluFQtPGMKZbaJVY=",
+
"module": "sha256-ryqDaM1SVewPm7zXRbUSsANlgHhG9WjTgCz63+Km9ME=",
+
"pom": "sha256-XhWQv0L6xVzPw6Md31vQ5i3QCY4FDd5AhBHb0lFKcng="
+
},
+
"com/structurizr#structurizr-export/4.1.0": {
+
"jar": "sha256-66+x6RiMLA9stXOSsdmhUHHBBLMKXExPApMMGa1laAo=",
+
"module": "sha256-Yepxprk8nhfHQWXNVGeAaIOXMVfzToCAmKIeS5e0c9U=",
+
"pom": "sha256-iU6SEq6BC7kv0Q8JIfz+LeD1KYWyV7vJfbRsaLW8jRI="
+
},
+
"com/structurizr#structurizr-import/4.1.0": {
+
"jar": "sha256-+6e+jrhT33eT+9ZwyiI7rUT9OI9gVbTbaln7NLpalmg=",
+
"module": "sha256-Dg/Nkz77gM/k5Vs39C8/UtJff11i8Hp+5nLEE2jChsc=",
+
"pom": "sha256-DpCl5VUNhxOvAoA6UQ2jqj7hoCFOJbprwN5JowyM46Y="
+
},
+
"com/structurizr#structurizr-inspection/4.1.0": {
+
"jar": "sha256-Ypoq4TAuUF/vXBJ/xPcr4Ps5TvSzJro3EmqwE58Keic=",
+
"module": "sha256-cKWA1u+5gtnYBj+vyiTp/UEWQ3st3NJ2MbVg7bEo1cQ=",
+
"pom": "sha256-lOeeFUapBhKHNT5g/lERktzrlnRWIU0g9r006fud2H8="
+
},
+
"com/sun/activation#all/1.2.0": {
+
"pom": "sha256-HYUY46x1MqEE5Pe+d97zfJguUwcjxr2z1ncIzOKwwsQ="
+
},
+
"commons-cli#commons-cli/1.9.0": {
+
"jar": "sha256-09Uw0PKP0Pu//isLM49w6MuW8WBVeeLjq9TbKcrCTmk=",
+
"pom": "sha256-PMh7avgVCPVYnmsgWRve5eYqt1AovaYEKvymdpwNN48="
+
},
+
"commons-logging#commons-logging/1.3.4": {
+
"pom": "sha256-1L2jSJKqzL9PrTP8MjqKqQfvnXmYRlnaJJRMCoa/CGU="
+
},
+
"commons-logging#commons-logging/1.3.5": {
+
"jar": "sha256-bXp0TkAnZJ+7UIld+Ul9EJ+Yx2amNwYv6NLqu7MUC6Q=",
+
"pom": "sha256-zPSjA0b1AnuUlqvVYpCsJtFZq/K+ZN8SZWEdyUALnWg="
+
},
+
"io/github/goto1134#structurizr-d2-exporter/1.5.3": {
+
"jar": "sha256-DMU4Ga2M/jNxBrnymchXujeSYRM5dzH9y6P3VEe9qFE=",
+
"module": "sha256-j9tpvQdBUFewtD50qMXYe3yQy5ILk0HHYGNhfphjlwk=",
+
"pom": "sha256-sW/4Bti0+CP0QumZCpjarT4OSvYNnEm8ZPBNCL0VBsE="
+
},
+
"jakarta/platform#jakarta.jakartaee-bom/9.1.0": {
+
"pom": "sha256-35jgJmIZ/buCVigm15o6IHdqi6Aqp4fw8HZaU4ZUyKQ="
+
},
+
"jakarta/platform#jakartaee-api-parent/9.1.0": {
+
"pom": "sha256-p3AsSHAmgCeEtXl7YjMKi41lkr8PRzeyXGel6sgmWcA="
+
},
+
"javax/activation#javax.activation-api/1.2.0": {
+
"jar": "sha256-Q/3vC1ts6zGwQksgi5MMdKtY+sLO63s/b9OuuLXKQ5M=",
+
"pom": "sha256-2ikm88i+iYZDzBCs3sbeCwNRpX+yc1dw+gF3sGrecbk="
+
},
+
"javax/xml/bind#jaxb-api-parent/2.4.0-b180830.0359": {
+
"pom": "sha256-ctEy4shY0iMPFdBI8ek6J5xAxOnshLxW+fLz61r0tLg="
+
},
+
"javax/xml/bind#jaxb-api/2.4.0-b180830.0359": {
+
"jar": "sha256-VrnpcCdTdjAHQ1Fi6niAVe/P78hquSDwMsBBHcVHuDY=",
+
"pom": "sha256-sck/wwHX9f5M3hPRlTKZJR2jfv/8kfUjg1UEw/+HNwc="
+
},
+
"net/java#jvnet-parent/1": {
+
"pom": "sha256-KBRAgRJo5l2eJms8yJgpfiFOBPCXQNA4bO60qJI9Y78="
+
},
+
"net/java#jvnet-parent/5": {
+
"pom": "sha256-GvaZ+Nndq2f5oNIC+9eRXrA2Klpt/V/8VMr6NGXJywo="
+
},
+
"org/apache#apache/27": {
+
"pom": "sha256-srD8aeIqZQw4kvHDZtdwdvKVdcZzjfTHpwpEhESEzfk="
+
},
+
"org/apache#apache/30": {
+
"pom": "sha256-Y91KOTqcDfyzFO/oOHGkHSQ7yNIAy8fy0ZfzDaeCOdg="
+
},
+
"org/apache#apache/32": {
+
"pom": "sha256-z9hywOwn9Trmj0PbwP7N7YrddzB5pTr705DkB7Qs5y8="
+
},
+
"org/apache#apache/33": {
+
"pom": "sha256-14vYUkxfg4ChkKZSVoZimpXf5RLfIRETg6bYwJI6RBU="
+
},
+
"org/apache/bcel#bcel/6.10.0": {
+
"jar": "sha256-r9JteOkh1fhD9XRcRKbt7eWx9gcXnYrHZ5ele8vUMOI=",
+
"pom": "sha256-iObx2/dfb1Ub4fuGM9kWtJzTEm/QeDONtILddRnFMNg="
+
},
+
"org/apache/commons#commons-lang3/3.14.0": {
+
"jar": "sha256-e5a/PuaJSau1vEZVWawnDgVRWW+jRSP934kOxBjd4Tw=",
+
"pom": "sha256-EQQ4hjutN8KPkGv4cBbjjHqMdYujIeCdEdxaI2Oo554="
+
},
+
"org/apache/commons#commons-parent/64": {
+
"pom": "sha256-bxljiZToNXtO1zRpb5kgV++q+hI1ZzmYEzKZeY4szds="
+
},
+
"org/apache/commons#commons-parent/71": {
+
"pom": "sha256-lbe+cPMWrkyiL2+90I3iGC6HzYdKZQ3nw9M4anR6gqM="
+
},
+
"org/apache/commons#commons-parent/72": {
+
"pom": "sha256-Q0Xev8dnsa6saKvdcvxn0YtSHUs5A3KhG2P/DFhrIyA="
+
},
+
"org/apache/commons#commons-parent/81": {
+
"pom": "sha256-NI1OfBMb5hFMhUpxnOekQwenw5vTZghJd7JP0prQ7bQ="
+
},
+
"org/apache/groovy#groovy-bom/4.0.22": {
+
"module": "sha256-Ul0/SGvArfFvN+YAL9RlqygCpb2l9MZWf778copo5mY=",
+
"pom": "sha256-Hh9rQiKue/1jMgA+33AgGDWZDb1GEGsWzduopT4832U="
+
},
+
"org/apache/httpcomponents#httpcomponents-parent/13": {
+
"pom": "sha256-5Ch4ZwNYVsc3QgNo3VhuXlfnAgmBNYQM89c+nINj17M="
+
},
+
"org/apache/httpcomponents/client5#httpclient5-parent/5.4.3": {
+
"pom": "sha256-5jResynLh+7FgrEPKWsZh5O9FrW1QfTHsf/tnF8UDdg="
+
},
+
"org/apache/httpcomponents/client5#httpclient5/5.4.3": {
+
"jar": "sha256-c54DVnnGjhXvqTtEyAikU7yY6qwXIuWoDKsVwCYiMCI=",
+
"pom": "sha256-mVG7RlyhWOb6UEtR4GGe2JTMjQwjL0YKftYVBiiY4S0="
+
},
+
"org/apache/httpcomponents/core5#httpcore5-h2/5.3.4": {
+
"jar": "sha256-H7TzTkthLnwSetaTM1WDWHhQsXzpscNm+d4cpJ/ix4E=",
+
"pom": "sha256-zsGQjdjoavkI22E/I6CTt1lgvEpcaI5X9u9BmYtsUos="
+
},
+
"org/apache/httpcomponents/core5#httpcore5-parent/5.3.4": {
+
"pom": "sha256-Iyuj6AizQJPByLh2XNvqSQ4FrLfK9KQTbh9HDIykrOw="
+
},
+
"org/apache/httpcomponents/core5#httpcore5/5.3.4": {
+
"jar": "sha256-8rL9egFk6MMSDNhDe8n+pDkjnhZcFyYrPpB9qn6Xn4A=",
+
"pom": "sha256-NMsQqf+CzT+yBfasdsfpHrazHyL4wnSJUtvbm2ZXpbc="
+
},
+
"org/apache/logging#logging-parent/11.3.0": {
+
"pom": "sha256-pcmFtW/hxYQzOTtQkabznlufeFGN2PySE0aQWZtk19A="
+
},
+
"org/apache/logging/log4j#log4j-api/2.24.3": {
+
"jar": "sha256-W0oKDNDnUd7UMcFiRCvb3VMyjR+Lsrrl/Bu+7g9m2A8=",
+
"pom": "sha256-vAXeM1M6Elmtusv8yCbNZjdqLZxO5T+4NgCfRKRbgjk="
+
},
+
"org/apache/logging/log4j#log4j-bom/2.24.3": {
+
"pom": "sha256-sXq38yj0WGt+cfjJT8NaXaK86AcFpdYwBAIsGSiDNVg="
+
},
+
"org/apache/logging/log4j#log4j-core/2.24.3": {
+
"jar": "sha256-frQIRZauJb08YWmOSOjQq2WpJgdYiE7Vy7nG5VxEpWo=",
+
"pom": "sha256-v9XAxKrGECQsy2H/ABCK1zeA2iCi9ym+Bjg2qXZXf1c="
+
},
+
"org/apache/logging/log4j#log4j-jcl/2.24.3": {
+
"jar": "sha256-XYI1997Wa7CVg5+OEx2stQyzuJ+kAaXxfcVXTKaGft4=",
+
"pom": "sha256-8VD2jFJbVc59PiRj9SG9maGSXxJGABF5lNlCzqN3k18="
+
},
+
"org/apache/logging/log4j#log4j-slf4j-impl/2.24.3": {
+
"jar": "sha256-QN7CURZNFXbgAJaM0C5WoRJfRrkftpSgbfoWjxM12kg=",
+
"pom": "sha256-9RtE6DBed7KsYRtN0vNyT1EqYH2krBAib8WJjb4n9ZM="
+
},
+
"org/apache/logging/log4j#log4j/2.24.3": {
+
"pom": "sha256-wUG0hj/AzqtYOJShPh+eUsAfwtdYcn1nR/a5nVBA87E="
+
},
+
"org/apiguardian#apiguardian-api/1.1.2": {
+
"jar": "sha256-tQlEisUG1gcxnxglN/CzXXEAdYLsdBgyofER5bW3Czg=",
+
"module": "sha256-4IAoExN1s1fR0oc06aT7QhbahLJAZByz7358fWKCI/w=",
+
"pom": "sha256-MjVQgdEJCVw9XTdNWkO09MG3XVSemD71ByPidy5TAqA="
+
},
+
"org/checkerframework#checker-qual/3.43.0": {
+
"jar": "sha256-P7wumPBYVMPfFt+auqlVuRsVs+ysM2IyCO1kJGQO8PY=",
+
"module": "sha256-+BYzJyRauGJVMpSMcqkwVIzZfzTWw/6GD6auxaNNebQ=",
+
"pom": "sha256-kxO/U7Pv2KrKJm7qi5bjB5drZcCxZRDMbwIxn7rr7UM="
+
},
+
"org/codehaus/groovy#groovy-jsr223/3.0.25": {
+
"jar": "sha256-fXA6HUhKwRNbeLJKSID1ZTFhzag0VMD0hPoJ4pMR070=",
+
"pom": "sha256-5VhE8bCM5YYkePSfu0Lw3LWCJZtWXSJWUUGuDl4hnk8="
+
},
+
"org/codehaus/groovy#groovy/3.0.25": {
+
"jar": "sha256-rQCemF3YTk9ST07RdRhm2lvvgWtpGFG/vO+kigEYCgc=",
+
"pom": "sha256-aHNM5SMmVAYVMV7XSdWlDHEwsEez/K7zmrgilnVgbhM="
+
},
+
"org/eclipse/ee4j#project/1.0.7": {
+
"pom": "sha256-IFwDmkLLrjVW776wSkg+s6PPlVC9db+EJg3I8oIY8QU="
+
},
+
"org/javassist#javassist/3.30.2-GA": {
+
"jar": "sha256-66NykJlLXkho86+Y/xE/YkSmsJk4XZrUaIEwfTywGq8=",
+
"pom": "sha256-QieFHLcOQ/c6zti//mkt465EEsSmLc3/BV5RPuPYAaM="
+
},
+
"org/jetbrains#annotations/13.0": {
+
"jar": "sha256-rOKhDcji1f00kl7KwD5JiLLA+FFlDJS4zvSbob0RFHg=",
+
"pom": "sha256-llrrK+3/NpgZvd4b96CzuJuCR91pyIuGN112Fju4w5c="
+
},
+
"org/jetbrains/intellij/deps#trove4j/1.0.20200330": {
+
"jar": "sha256-xf1yW/+rUYRr88d9sTg8YKquv+G3/i8A0j/ht98KQ50=",
+
"pom": "sha256-h3IcuqZaPJfYsbqdIHhA8WTJ/jh1n8nqEP/iZWX40+k="
+
},
+
"org/jetbrains/kotlin#kotlin-compiler-embeddable/1.9.25": {
+
"jar": "sha256-457gti8K15/UXoQzTzSq7pnHKR9ZHd9o4s3N0JtzpHI=",
+
"pom": "sha256-JyUPHquQreVLpvPBBPcy+8Ll0+Y4nD52uurEoobJT6U="
+
},
+
"org/jetbrains/kotlin#kotlin-daemon-embeddable/1.9.25": {
+
"jar": "sha256-bnFrcsSj0pK//wDisNEml1GL+Zy6tzqVK4dXYVNxJEo=",
+
"pom": "sha256-GK7jbrdxFQlExyUTpFvh7jV9bB7SRmwyGT7zqUXFavs="
+
},
+
"org/jetbrains/kotlin#kotlin-reflect/1.6.10": {
+
"jar": "sha256-MnesECrheq0QpVq+x1/1aWyNEJeQOWQ0tJbnUIeFQgM=",
+
"pom": "sha256-V5BVJCdKAK4CiqzMJyg/a8WSWpNKBGwcxdBsjuTW1ak="
+
},
+
"org/jetbrains/kotlin#kotlin-script-runtime/1.9.25": {
+
"jar": "sha256-mTPt1md7aqxG0bXv/aGt7pBj+7BMdG54tAM5gVirr0c=",
+
"pom": "sha256-5C4NOvWI1dAbhPbJmXQAnV5i1Ni5OS+lay7BD4U1IJs="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-common/1.9.25": {
+
"jar": "sha256-I53rNUBvOWyvhNNNetAAURsLKfwvzT38v0VA8OqKgZ0=",
+
"pom": "sha256-DbLiJ8H0gWEg2hiE2CzKdZT9jef+dObHRLF3ZYJhoYw="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-compiler-embeddable/1.9.25": {
+
"jar": "sha256-St/efrGWxVhp8cWla5xVfKY+2p0cvwrdeq0MuZpJXsM=",
+
"pom": "sha256-BPqVk4/XrMqTU9uFlv3IwYcgbxcgX6d1XEOzbPbZBW8="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-compiler-impl-embeddable/1.9.25": {
+
"jar": "sha256-smxe2F9Uho1L7tEN91Vj3AC0tDF4Mvx+En+wUZagWSo=",
+
"pom": "sha256-GBIjsvoeLaglLryF1qMQ1sHAvStrcF22VVpGRUgqYao="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-jsr223/1.9.25": {
+
"jar": "sha256-tNJhpyw/JAaZOyT3BV1uwiypMuT+lsn6ruQmPO+WhFg=",
+
"pom": "sha256-H0btr0BrmzItayMGjuc3KbFy5dhct2fhN1SLJivfHUg="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-jvm-host/1.9.25": {
+
"jar": "sha256-5g2KuHub89VSnKBuEkbtvyuN75PjaQR5t1L+5cmzmP4=",
+
"pom": "sha256-ttPWUCAspYnQoSVcyLFz5M9JSTOaDZRIQX4HwkiR5Hk="
+
},
+
"org/jetbrains/kotlin#kotlin-scripting-jvm/1.9.25": {
+
"jar": "sha256-AN2ark7Gui5tUn5MkcAL23gUIGuGKVjeovl0WJs5hzo=",
+
"pom": "sha256-J6/IA62/RLTtB+n6/rIdwTmA83hVgS1jcLRV8MD2hzQ="
+
},
+
"org/jetbrains/kotlin#kotlin-stdlib-jdk7/1.9.22": {
+
"jar": "sha256-+R8kz606dWaIo1Ep5fM1SA0OtAjxVooX9wfCifh2m90=",
+
"pom": "sha256-SHnKgQKDPIraP0bHep/6+uGXDK/AvGIfUSAbatl0zp0="
+
},
+
"org/jetbrains/kotlin#kotlin-stdlib-jdk8/1.9.22": {
+
"jar": "sha256-RwRsPtwy/g2xo2v+PTgilYu1vkQRxbqA866JWj7CcpE=",
+
"pom": "sha256-yUBIJZxtAAdXi6r+tx74/3ut6wjy1ZQ3/DllHg+396s="
+
},
+
"org/jetbrains/kotlin#kotlin-stdlib/1.9.25": {
+
"jar": "sha256-+c3Nv/H13oU4CuUml35oNybCqkLbHtbm5Qronklulf0=",
+
"module": "sha256-Q+BqZsO3XKPkxcswSWjqg1ImJHuj9WExK9Gepi3oRqc=",
+
"pom": "sha256-fcMxikdte5AtDSevm1b2Y+jMQmOi0zrQUMertlpbZ6E="
+
},
+
"org/jruby#jruby-core/9.4.12.1": {
+
"jar": "sha256-MWQgYXLS3bYENJlRUm6LWxJ68d3nCId7cA5JotVZNwY=",
+
"pom": "sha256-uaFkukwPxdzMsaK1XzfTcO85rwrVtVvsSxmcaAs55b8="
+
},
+
"org/jruby#jruby-parent/9.4.12.1": {
+
"pom": "sha256-FWJMORFqYySBK1g1qcQySyIgtiH/AB0Rnr47hjN1o+M="
+
},
+
"org/junit#junit-bom/5.10.0": {
+
"module": "sha256-6z7mEnYIAQaUqJgFbnQH0RcpYAOrpfXbgB30MLmIf88=",
+
"pom": "sha256-4AbdiJT5/Ht1/DK7Ev5e2L5lZn1bRU+Z4uC4xbuNMLM="
+
},
+
"org/junit#junit-bom/5.10.2": {
+
"module": "sha256-3iOxFLPkEZqP5usXvtWjhSgWaYus5nBxV51tkn67CAo=",
+
"pom": "sha256-Fp3ZBKSw9lIM/+ZYzGIpK/6fPBSpifqSEgckzeQ6mWg="
+
},
+
"org/junit#junit-bom/5.10.3": {
+
"module": "sha256-qnlAydaDEuOdiaZShaqa9F8U2PQ02FDujZPbalbRZ7s=",
+
"pom": "sha256-EJN9RMQlmEy4c5Il00cS4aMUVkHKk6w/fvGG+iX2urw="
+
},
+
"org/junit#junit-bom/5.11.0": {
+
"module": "sha256-9+2+Z/IgQnCMQQq8VHQI5cR29An1ViNqEXkiEnSi7S0=",
+
"pom": "sha256-5nRZ1IgkJKxjdPQNscj0ouiJRrNAugcsgL6TKivkZE0="
+
},
+
"org/junit#junit-bom/5.11.0-M2": {
+
"module": "sha256-hkd6vPSQ1soFmqmXPLEI0ipQb0nRpVabsyzGy/Q8LM4=",
+
"pom": "sha256-Sj/8Sk7c/sLLXWGZInBqlAcWF5hXGTn4VN/ac+ThfMg="
+
},
+
"org/junit#junit-bom/5.11.3": {
+
"module": "sha256-S/D1PO6nx5D9+9JNujyeBM3FGGQnnuv8V6qkc+vKA4A=",
+
"pom": "sha256-8T3y5Mrx/rzlZ2Z+fDeBAaAzHVPRMk1uLf467Psfd3Q="
+
},
+
"org/junit#junit-bom/5.11.4": {
+
"module": "sha256-qaTye+lOmbnVcBYtJGqA9obSd9XTGutUgQR89R2vRuQ=",
+
"pom": "sha256-GdS3R7IEgFMltjNFUylvmGViJ3pKwcteWTpeTE9eQRU="
+
},
+
"org/junit/jupiter#junit-jupiter-api/5.11.3": {
+
"jar": "sha256-XYFHpg9JRTlz4lDtaHAbf/BVlk/iRi/Cyx7B1tRIibo=",
+
"module": "sha256-zC4yvwDuZDSpoZ3P2fJ6z2ZaPdYy03fkdhgNies+8n0=",
+
"pom": "sha256-8Zr+CSOwGTXEDy5+ltZgN+IAi3AXkXzHBRM4N3hJYY4="
+
},
+
"org/junit/jupiter#junit-jupiter-engine/5.11.3": {
+
"jar": "sha256-5iQgyZ98DVmiFZou9j5hh36cgL1yLAPKi/O9zqBQpYk=",
+
"module": "sha256-s3w9vEFSbrpeVMz/ROxUf0hVYstDyj0J2p+n2hmjBl4=",
+
"pom": "sha256-eJ43jTfEndhlTWbjrTreQY5YhK5vSHI5Ad0758nsngM="
+
},
+
"org/junit/platform#junit-platform-commons/1.11.3": {
+
"jar": "sha256-viYpZLC2tI3pd8YdT5Md+M9h6A51DMPzoKOc3SHBAIw=",
+
"module": "sha256-l531zqTESC/fxZCK3ItGq2q/ADbpmk0CzBjAdDyLggc=",
+
"pom": "sha256-gW69MkSncNkV2cHUDTtGUf40j0L4m3y369De4gnFIEA="
+
},
+
"org/junit/platform#junit-platform-engine/1.11.3": {
+
"jar": "sha256-AEP3L2EWZHNdqNyaMIvxLs0iNrBTOTUcR0HttNj6sNo=",
+
"module": "sha256-K5UnTIxw3eS9vEmQnxxY61qSLlQcXdO+qpx68rv6Qaw=",
+
"pom": "sha256-/ibcXakRuUtowSsiQSV6IIE1u7m4yRzBoTQzqAp6eR4="
+
},
+
"org/mockito#mockito-bom/4.11.0": {
+
"pom": "sha256-2FMadGyYj39o7V8YjN6pRQBq6pk+xd+eUk4NJ9YUkdo="
+
},
+
"org/opentest4j#opentest4j/1.3.0": {
+
"jar": "sha256-SOLfY2yrZWPO1k3N/4q7I1VifLI27wvzdZhoLd90Lxs=",
+
"module": "sha256-SL8dbItdyU90ZSvReQD2VN63FDUCSM9ej8onuQkMjg0=",
+
"pom": "sha256-m/fP/EEPPoNywlIleN+cpW2dQ72TfjCUhwbCMqlDs1U="
+
},
+
"org/slf4j#slf4j-api/1.7.36": {
+
"jar": "sha256-0+9XXj5JeWeNwBvx3M5RAhSTtNEft/G+itmCh3wWocA=",
+
"pom": "sha256-+wRqnCKUN5KLsRwtJ8i113PriiXmDL0lPZhSEN7cJoQ="
+
},
+
"org/slf4j#slf4j-parent/1.7.36": {
+
"pom": "sha256-uziNN/vN083mTDzt4hg4aTIY3EUfBAQMXfNgp47X6BI="
+
},
+
"org/sonatype/oss#oss-parent/7": {
+
"pom": "sha256-tR+IZ8kranIkmVV/w6H96ne9+e9XRyL+kM5DailVlFQ="
+
},
+
"org/sonatype/oss#oss-parent/9": {
+
"pom": "sha256-+0AmX5glSCEv+C42LllzKyGH7G8NgBgohcFO8fmCgno="
+
},
+
"org/springframework#spring-framework-bom/5.3.39": {
+
"module": "sha256-+ItA4qUDM7QLQvGB7uJyt17HXdhmbLFFvZCxW5fhg+M=",
+
"pom": "sha256-9tSBCT51dny6Gsfh2zj49pLL4+OHRGkzcada6yHGFIs="
+
}
+
}
+
}
+124
pkgs/by-name/st/structurizr-cli/package.nix
···
+
{
+
lib,
+
stdenv,
+
fetchFromGitHub,
+
fetchpatch,
+
coreutils,
+
findutils,
+
gnused,
+
jre,
+
gradle,
+
makeBinaryWrapper,
+
gitMinimal,
+
versionCheckHook,
+
}:
+
+
stdenv.mkDerivation (finalAttrs: {
+
pname = "structurizr-cli";
+
version = "2025.05.28";
+
+
src = fetchFromGitHub {
+
owner = "structurizr";
+
repo = "cli";
+
tag = "v${finalAttrs.version}";
+
hash = "sha256-bypCW7fEfSzVQHhb7wzxQUkXnoDb8QHUsPCpHV7pW/w=";
+
};
+
strictDeps = true;
+
+
patches =
+
let
+
# Use `gradle-application-plugin` to generate scripts and dist zip instead of in-house launch script
+
# PR at https://github.com/structurizr/cli/pull/175
+
commits = [
+
# Use `gradle-application-plugin`
+
{
+
rev = "eb1657c2be62fb493adde954330a70eebd72026a";
+
hash = "sha256-B1vqQNHHSOgiRysc5ZkcBB/8YZ1dMjJuFu5uwGRQKWs=";
+
}
+
# Set JDK target correctly
+
{
+
rev = "24be5eeec893df5261100913c4e51ca0bd100689";
+
hash = "sha256-tj7fNOqKLPvgTYKCRIJlGg1OGyGOmmx0Pj4H8oDPVdU=";
+
}
+
# Remove unused `git.commit` property
+
{
+
rev = "2cb1d86c59f210ce32211395570e8dccf138df16";
+
hash = "sha256-wswvXJujyPpbvXvL2SOFC4zZLnfskYFdHvzry66vukQ=";
+
}
+
# Set build data correctly
+
{
+
rev = "3260d8622a9cf6197d6ab5d9440087dcaac3fbb9";
+
hash = "sha256-0zUmg+smxQLZm9wWu3JL1pIXQJcQ1uyQ433C1pDLatQ=";
+
}
+
# Wrap compatibility into java block
+
{
+
rev = "1a11940d089a8d70d6e298660c6f5db638cc8d00";
+
hash = "sha256-Myj3s7Kc+bQS3iJIZoEyc39pn3DkBOHFu/B9UUPKXf8=";
+
}
+
];
+
in
+
builtins.map (
+
entry:
+
fetchpatch {
+
url = "https://github.com/structurizr/cli/commit/${entry.rev}.patch";
+
hash = entry.hash;
+
}
+
) commits;
+
+
postPatch = ''
+
substituteInPlace src/main/resources/build.properties \
+
--subst-var-by BUILD_NUMBER "${finalAttrs.version}" \
+
--subst-var-by BUILD_DATE "1970-01-01T00:00:00Z"
+
'';
+
+
nativeBuildInputs = [
+
gradle
+
makeBinaryWrapper
+
gitMinimal
+
];
+
+
mitmCache = gradle.fetchDeps {
+
inherit (finalAttrs) pname;
+
data = ./deps.json;
+
};
+
+
__darwinAllowLocalNetworking = true;
+
+
gradleBuildTask = "installDist";
+
+
installPhase = ''
+
runHook preInstall
+
+
mkdir -p $out/{bin,lib}
+
cp -r build/install/structurizr-cli $out/lib/structurizr-cli
+
+
makeBinaryWrapper $out/lib/structurizr-cli/bin/structurizr-cli $out/bin/structurizr-cli \
+
--prefix PATH : "${
+
lib.makeBinPath [
+
coreutils
+
findutils
+
gnused
+
jre
+
]
+
}"
+
+
runHook postInstall
+
'';
+
+
doInstallCheck = true;
+
nativeInstallCheckInputs = [ versionCheckHook ];
+
versionCheckProgramArg = "version";
+
+
meta = {
+
description = "Structurizr CLI for publishing C4 architecture diagrams and models";
+
homepage = "https://github.com/structurizr/cli";
+
license = lib.licenses.asl20;
+
maintainers = with lib.maintainers; [ mhemeryck ];
+
platforms = lib.platforms.all;
+
mainProgram = "structurizr-cli";
+
sourceProvenance = with lib.sourceTypes; [
+
fromSource
+
binaryBytecode
+
];
+
};
+
})
+3
pkgs/by-name/ti/tilix/package.nix
···
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
+
# https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=tilix
+
substituteInPlace source/gx/tilix/{prefeditor/prefdialog.d,terminal/terminal.d} \
+
--replace-fail "(Align." "(GtkAlign."
'';
passthru.tests.test = nixosTests.terminal-emulators.tilix;
+3 -3
pkgs/by-name/vu/vuls/package.nix
···
buildGo124Module rec {
pname = "vuls";
-
version = "0.32.0";
+
version = "0.33.1";
src = fetchFromGitHub {
owner = "future-architect";
repo = "vuls";
tag = "v${version}";
-
hash = "sha256-XFaKgCThZ7nE5JY11uq0A4kPMazPUINjo4el8IFRGNI=";
+
hash = "sha256-djs4bhdicZFDETw3tLoks7KKjLh/o6Z6Ivzw0I/VxH8=";
fetchSubmodules = true;
};
-
vendorHash = "sha256-95j7C0VOJadcv1/SAwEc/2HmeV1vOAh6vdrElRx+M60=";
+
vendorHash = "sha256-1W6xI6rRyaSfryNZSGhgHULotZ42lPsDt27KVzFEhog=";
ldflags = [
"-s"
+3 -3
pkgs/by-name/ze/zed-editor/package.nix
···
in
rustPlatform.buildRustPackage (finalAttrs: {
pname = "zed-editor";
-
version = "0.192.6";
+
version = "0.192.7";
outputs =
[ "out" ]
···
owner = "zed-industries";
repo = "zed";
tag = "v${finalAttrs.version}";
-
hash = "sha256-XLAzY9pXEfynyNkdnEJ0E/E6jLphirLgjBuXQpeK8yc=";
+
hash = "sha256-OjqJAb7IlFpSd7+i5QAkpsBDAbM6tZ8x/Y1HWiyDkPI=";
};
patches = [
···
'';
useFetchCargoVendor = true;
-
cargoHash = "sha256-4kVfJmW36Q3Nb8AOmfNDmZLoZ9UZfj0MmznnIKdr+lU=";
+
cargoHash = "sha256-qi3V6qGbb6kKecSTCbDMqfUKdgIliBJG1RaI5v+W9yY=";
nativeBuildInputs =
[
+23 -12
pkgs/development/libraries/gtkd/default.nix pkgs/by-name/gt/gtkd/package.nix
···
{
lib,
stdenv,
-
fetchzip,
+
fetchFromGitHub,
+
fetchpatch2,
atk,
cairo,
-
dcompiler,
+
dcompiler ? ldc,
gdk-pixbuf,
gst_all_1,
+
ldc,
librsvg,
glib,
gtk3,
···
let
inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-bad;
in
-
stdenv.mkDerivation rec {
+
stdenv.mkDerivation (finalAttrs: {
pname = "gtkd";
-
version = "3.10.0";
+
version = "3.11.0";
-
src = fetchzip {
-
url = "https://gtkd.org/Downloads/sources/GtkD-${version}.zip";
-
sha256 = "DEKVDexGyg/T3SdnnvRjaHq1LbDo8ekNslxKROpMCCE=";
-
stripRoot = false;
+
src = fetchFromGitHub {
+
owner = "gtkd-developers";
+
repo = "GtkD";
+
tag = "v${finalAttrs.version}";
+
hash = "sha256-UpPoskHtnI4nUOKdLorK89grgUUPrCvO4zrAl9LfjHA=";
};
nativeBuildInputs = [
···
librsvg
pango
vte
+
];
+
+
patches = [
+
(fetchpatch2 {
+
url = "https://github.com/gtkd-developers/GtkD/commit/1e41b2da35c7dc2d18b118c632cb07137d048c2b.patch?full_index=1";
+
hash = "sha256-8vQntjVrQH1+qHBBkB5PxcgLvucosEEPi43uqlnHe4g=";
+
})
];
postPatch = ''
···
makeFlags = [
"prefix=${placeholder "out"}"
"PKG_CONFIG=${pkg-config}/bin/${pkg-config.targetPrefix}pkg-config"
+
"GTKD_VERSION=${finalAttrs.version}"
];
# The .pc files does not declare an `includedir=`, so the multiple
···
inherit dcompiler;
};
-
meta = with lib; {
+
meta = {
description = "D binding and OO wrapper for GTK";
homepage = "https://gtkd.org";
-
license = licenses.lgpl3Plus;
-
platforms = platforms.linux ++ platforms.darwin;
+
license = lib.licenses.lgpl3Plus;
+
platforms = with lib.platforms; linux ++ darwin;
};
-
}
+
})
pkgs/development/libraries/gtkd/paths.d pkgs/by-name/gt/gtkd/paths.d
-9
pkgs/development/libraries/protobuf/26.nix
···
-
{ callPackage, ... }@args:
-
-
callPackage ./generic.nix (
-
{
-
version = "26.1";
-
hash = "sha256-9sA+MYeDqRZl1v6HV4mpy60vqTbVTtinp9er6zkg/Ng=";
-
}
-
// args
-
)
+2 -2
pkgs/development/python-modules/anyascii/default.nix
···
buildPythonPackage rec {
pname = "anyascii";
-
version = "0.3.2";
+
version = "0.3.3";
format = "setuptools";
src = fetchPypi {
inherit pname version;
-
hash = "sha256-nV0y74RP4iW4vHy6f5UFNPrk2iepvzpr6iyw6kbORzA=";
+
hash = "sha256-yU6d2dR7PZSU7KMF/vlEfQC0vxoyr/hap0b6Psf7lcM=";
};
nativeCheckInputs = [ pytestCheckHook ];
+37
pkgs/development/python-modules/bibtexparser/2.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchFromGitHub,
+
pylatexenc,
+
pytestCheckHook,
+
setuptools,
+
}:
+
+
buildPythonPackage rec {
+
pname = "bibtexparser";
+
version = "2.0.0b8";
+
pyproject = true;
+
+
src = fetchFromGitHub {
+
owner = "sciunto-org";
+
repo = "python-bibtexparser";
+
tag = "v${version}";
+
hash = "sha256-531Mh/5DUYayXm1H0v4dPX0P9mRcqcQcU/A+f4wwqxg=";
+
};
+
+
build-system = [ setuptools ];
+
+
dependencies = [ pylatexenc ];
+
+
nativeCheckInputs = [ pytestCheckHook ];
+
+
pythonImportsCheck = [ "bibtexparser" ];
+
+
meta = {
+
description = "Bibtex parser for Python";
+
homepage = "https://github.com/sciunto-org/python-bibtexparser";
+
changelog = "https://github.com/sciunto-org/python-bibtexparser/blob/${src.tag}/CHANGELOG";
+
license = lib.licenses.mit;
+
maintainers = [ lib.maintainers.amadejkastelic ];
+
};
+
}
+2 -2
pkgs/development/python-modules/boto3-stubs/default.nix
···
buildPythonPackage rec {
pname = "boto3-stubs";
-
version = "1.38.44";
+
version = "1.38.46";
pyproject = true;
disabled = pythonOlder "3.7";
···
src = fetchPypi {
pname = "boto3_stubs";
inherit version;
-
hash = "sha256-8ru3v7vaf3tpXoOB2CiDTEzVR8OLCNX0SRpHZPJSy7Q=";
+
hash = "sha256-UmeJ/B9Kb4nzckJNyaQQkpb2vRivqxq/XSgalPXPt3A=";
};
build-system = [ setuptools ];
+2 -2
pkgs/development/python-modules/celery/default.nix
···
buildPythonPackage rec {
pname = "celery";
-
version = "5.5.2";
+
version = "5.5.3";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
-
hash = "sha256-TWkw81T50pKVQl16NyYSRcdKMoB8Rddkvtwoav0Ock4=";
+
hash = "sha256-bJcq55aMK1KBIn8Bw6P5hAN9IcUSnQe/NVDMKvxrEKU=";
};
build-system = [ setuptools ];
+11 -12
pkgs/development/python-modules/clldutils/default.nix
···
buildPythonPackage,
colorlog,
fetchFromGitHub,
+
bibtexparser_2,
git,
lxml,
markdown,
markupsafe,
-
mock,
postgresql,
pylatexenc,
pytest-cov-stub,
···
buildPythonPackage rec {
pname = "clldutils";
-
version = "3.21.0";
+
version = "3.24.2";
pyproject = true;
-
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "clld";
repo = "clldutils";
-
rev = "v${version}";
-
hash = "sha256-OD+WJ9JuYZb/oXDgVqL4i5YlcVEt0+swq0SB3cutyRo=";
+
tag = "v${version}";
+
hash = "sha256-xIs6Lq9iDdcM3j51F27x408oUldvy5nlvVdbrAS5Jz0=";
};
-
nativeBuildInputs = [ setuptools ];
+
build-system = [ setuptools ];
-
propagatedBuildInputs = [
+
dependencies = [
attrs
+
bibtexparser_2
colorlog
lxml
markdown
···
];
nativeCheckInputs = [
-
mock
postgresql
pytest-cov-stub
pytest-mock
···
git
];
-
meta = with lib; {
-
changelog = "https://github.com/clld/clldutils/blob/${src.rev}/CHANGES.md";
+
meta = {
+
changelog = "https://github.com/clld/clldutils/blob/${src.tag}/CHANGES.md";
description = "Utilities for clld apps without the overhead of requiring pyramid, rdflib et al";
homepage = "https://github.com/clld/clldutils";
-
license = licenses.asl20;
-
maintainers = with maintainers; [ melling ];
+
license = lib.licenses.asl20;
+
maintainers = with lib.maintainers; [ melling ];
};
}
+2 -2
pkgs/development/python-modules/deap/default.nix
···
buildPythonPackage rec {
pname = "deap";
-
version = "1.4.2";
+
version = "1.4.3";
format = "setuptools";
src = fetchPypi {
inherit pname version;
-
hash = "sha256-1nm+M3Pbi6kStGZCYMopx6yhA3L/WpaCMQR7Se/CKsU=";
+
hash = "sha256-fJcIj7BYNb3CVb7EdcsOd43itD5Ey++/K81lWu7IZf0=";
};
propagatedBuildInputs = [
+47
pkgs/development/python-modules/hawkmoth/default.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchFromGitHub,
+
hatchling,
+
libclang,
+
sphinx,
+
clang,
+
pytestCheckHook,
+
strictyaml,
+
}:
+
+
buildPythonPackage rec {
+
pname = "hawkmoth";
+
version = "0.21.0";
+
pyproject = true;
+
+
src = fetchFromGitHub {
+
owner = "jnikula";
+
repo = "hawkmoth";
+
tag = "v${version}";
+
hash = "sha256-ePi7whsibStYwG75Eso7A0GkSbn8JesacaDU5IRF9iE=";
+
};
+
+
build-system = [ hatchling ];
+
+
dependencies = [
+
libclang
+
sphinx
+
];
+
propagatedBuildInputs = [ clang ];
+
+
nativeCheckInputs = [
+
clang
+
pytestCheckHook
+
strictyaml
+
];
+
pythonImportsCheck = [ "hawkmoth" ];
+
+
meta = {
+
description = "Sphinx Autodoc for C";
+
homepage = "https://jnikula.github.io/hawkmoth/";
+
changelog = "https://github.com/jnikula/hawkmoth/blob/v${version}/CHANGELOG.rst";
+
license = lib.licenses.bsd2;
+
maintainers = [ lib.maintainers.cynerd ];
+
};
+
}
+3 -12
pkgs/development/python-modules/hcloud/default.nix
···
lib,
buildPythonPackage,
fetchPypi,
-
future,
-
mock,
pytestCheckHook,
python-dateutil,
-
pythonOlder,
requests,
setuptools,
}:
buildPythonPackage rec {
pname = "hcloud";
-
version = "2.5.2";
+
version = "2.5.3";
pyproject = true;
-
-
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
-
hash = "sha256-v1vnII5q1bOf/neiNOJPa+t03ma/cjLbxbabo2jQptQ=";
+
hash = "sha256-+9unvxFjf/ryqN6g4IKWX1viwgSfkgrX1prjXvBnbWs=";
};
build-system = [ setuptools ];
dependencies = [
-
future
requests
python-dateutil
];
-
nativeCheckInputs = [
-
mock
-
pytestCheckHook
-
];
+
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "hcloud" ];
+3 -3
pkgs/development/python-modules/monotonic-alignment-search/default.nix
···
buildPythonPackage rec {
pname = "monotonic-alignment-search";
-
version = "0.1.1";
+
version = "0.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "eginhard";
repo = "monotonic_alignment_search";
tag = "v${version}";
-
hash = "sha256-qBkJKED0KVArhzmhZo8UuWQ55XMMBgvKM3xOwiPVwKU=";
+
hash = "sha256-N714DfLyrdhhm2yWlMzUVZkQ5Ys2aOmtEcxACGM665Y=";
};
build-system = [
···
meta = {
homepage = "https://github.com/eginhard/monotonic_alignment_search";
description = "Monotonically align text and speech";
-
changelog = "https://github.com/eginhard/monotonic_alignment_search/releases/tag/v${version}";
+
changelog = "https://github.com/eginhard/monotonic_alignment_search/releases/tag/${src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ jbgi ];
};
+2 -2
pkgs/development/python-modules/mscerts/default.nix
···
buildPythonPackage rec {
pname = "mscerts";
-
version = "2025.5.28";
+
version = "2025.6.27";
pyproject = true;
disabled = pythonOlder "3.7";
···
owner = "ralphje";
repo = "mscerts";
tag = version;
-
hash = "sha256-FdREuLoUNL0uJczX5IDOFEWSo4YoYV7n0PnD+TJKcYY=";
+
hash = "sha256-By0gVlsVjgBREBGUOZjnKE9HTHC+zLZ4kUKIcN7/eKY=";
};
build-system = [ setuptools ];
+20 -20
pkgs/development/python-modules/mypy-boto3/default.nix
···
"sha256-ItKYimrEeI5dR8fF76gJ7VQ6Ws/WQNU0srmtQyHFylo=";
mypy-boto3-config =
-
buildMypyBoto3Package "config" "1.38.0"
-
"sha256-GaC5ClnSfg8/8jCv2ropPoUS7YOIhKkyicDhsYUUPwk=";
+
buildMypyBoto3Package "config" "1.38.46"
+
"sha256-aCDGSPV7f+gzkwKZD+UGiqcj/Cw6Ydkl1nBeVK7Pt+0=";
mypy-boto3-connect =
-
buildMypyBoto3Package "connect" "1.38.26"
-
"sha256-6Gaap6zNuKaibd/8iM9uSgryw69A0abbb8cUXtjRQ6Q=";
+
buildMypyBoto3Package "connect" "1.38.46"
+
"sha256-7kofmt1mCU/s+hZMVG0+nVAEMUgAwptQFcO8XhuaSus=";
mypy-boto3-connect-contact-lens =
buildMypyBoto3Package "connect-contact-lens" "1.38.0"
···
"sha256-RQh46jrXqj4bXTRJ+tPR9sql7yUn7Ek9u4p0OU0A7b0=";
mypy-boto3-ec2 =
-
buildMypyBoto3Package "ec2" "1.38.43"
-
"sha256-YBHcKICX+02kqhy/opsl2orgOPrTx0zZ+BgtynLhREA=";
+
buildMypyBoto3Package "ec2" "1.38.45"
+
"sha256-6nu0/LdOYNi8PkLKEH+DtuIiHzNNKeVmIM0FSblHE2I=";
mypy-boto3-ec2-instance-connect =
buildMypyBoto3Package "ec2-instance-connect" "1.38.0"
···
"sha256-abALPaOoxM8dvwqd8j41mTT1Zmcn/sEVzlopSMc+fYM=";
mypy-boto3-glue =
-
buildMypyBoto3Package "glue" "1.38.42"
-
"sha256-w0lnzVTd1djYr8FGTqqEe2Qwwyt0JFWRmcWvPZAGtPE=";
+
buildMypyBoto3Package "glue" "1.38.46"
+
"sha256-8PxTydQM0s17Bf8hE+nDVC5da7S+Fc727d6rsWW5Fa8=";
mypy-boto3-grafana =
buildMypyBoto3Package "grafana" "1.38.0"
···
"sha256-GkC4iF96d4nQMNZZx2JHBvgdFvzqujmH2YLzEuiM1n8=";
mypy-boto3-guardduty =
-
buildMypyBoto3Package "guardduty" "1.38.38"
-
"sha256-Nt2mw3WSX3C0M+ZFbC67uXFtbDZW5zfKBq6sij2sY8Q=";
+
buildMypyBoto3Package "guardduty" "1.38.46"
+
"sha256-4YHcCAE48VWGdyoMeWkJ0GFKxINGl/wCaHYB8u7P89E=";
mypy-boto3-health =
buildMypyBoto3Package "health" "1.38.0"
···
"sha256-BbUpFRwYYBkHUBPC8Q6zltxzSDEBnB9LaQxDeiMOFZA=";
mypy-boto3-keyspaces =
-
buildMypyBoto3Package "keyspaces" "1.38.0"
-
"sha256-/p6IadhTa59EpFXgN3GexAL+qLJzkedRFHfMOteVIeY=";
+
buildMypyBoto3Package "keyspaces" "1.38.45"
+
"sha256-7BmPM2RSDyk8UYZsiYR4Zn1Xw13kdGNfCi/Fy0teWTk=";
mypy-boto3-kinesis =
buildMypyBoto3Package "kinesis" "1.38.8"
···
"sha256-PKOF/jd1Wjz8lCwbCd4cfHeStkvcDhQu7a7bpHaizgU=";
mypy-boto3-kms =
-
buildMypyBoto3Package "kms" "1.38.36"
-
"sha256-pHVOYKF9OtQOzQcx5UfpViQGgsMnp+JqdbFQ0cutnpA=";
+
buildMypyBoto3Package "kms" "1.38.45"
+
"sha256-v7ODnXedN/CEa6TbWm0j5+GJXtG5RUqXD2hTgq2OMAM=";
mypy-boto3-lakeformation =
buildMypyBoto3Package "lakeformation" "1.38.0"
···
"sha256-ZgecmO3dz66i2COSXzBjyUCtTkGGi9gnvb/HNNEq1AE=";
mypy-boto3-rds =
-
buildMypyBoto3Package "rds" "1.38.43"
-
"sha256-Dgmsl3yNadHpju27PUl3EdXEc4kDew08X8A6eGoTE6U=";
+
buildMypyBoto3Package "rds" "1.38.46"
+
"sha256-whlDNePhHOovmCOB7PN2/WbzzvrgQ0zvQWbscEkcALk=";
mypy-boto3-rds-data =
buildMypyBoto3Package "rds-data" "1.38.0"
···
"sha256-F0Hjy6zoRUsSHZPSLUnII4vpVeudtgL2Vh1CIqbj3zA=";
mypy-boto3-sesv2 =
-
buildMypyBoto3Package "sesv2" "1.38.0"
-
"sha256-ESw92+4DpLC7+72sHQb+kHGHx6htQ+CmSnd6DaLSzME=";
+
buildMypyBoto3Package "sesv2" "1.38.46"
+
"sha256-7+u35klbbDjPFUmDO0+PiJsSuDEgYBPZ0R9Bqh1JWkU=";
mypy-boto3-shield =
buildMypyBoto3Package "shield" "1.38.0"
···
"sha256-naClNCiAqHalhT/+8cI510kBzYxpY3Z+wppDpQbZtdg=";
mypy-boto3-workspaces =
-
buildMypyBoto3Package "workspaces" "1.38.17"
-
"sha256-vS6+uLpngMP/U2zM207LPzdzVl2DpB36/zyuM625r3o=";
+
buildMypyBoto3Package "workspaces" "1.38.45"
+
"sha256-gXdxhks4bCT7KuXFQvJsSfe6y4aMe77ljOaluLe/n9Y=";
mypy-boto3-workspaces-web =
buildMypyBoto3Package "workspaces-web" "1.38.0"
+4 -6
pkgs/development/python-modules/parsedatetime/default.nix
···
lib,
buildPythonPackage,
fetchPypi,
-
isPy27,
pythonOlder,
-
future,
pytestCheckHook,
+
setuptools,
}:
buildPythonPackage rec {
pname = "parsedatetime";
version = "2.6";
-
format = "setuptools";
-
disabled = isPy27; # no longer compatible with icu package
+
pyproject = true;
src = fetchPypi {
inherit pname version;
-
sha256 = "4cb368fbb18a0b7231f4d76119165451c8d2e35951455dfee97c62a87b04d455";
+
hash = "sha256-TLNo+7GKC3Ix9NdhGRZUUcjS41lRRV3+6XxiqHsE1FU=";
};
-
propagatedBuildInputs = lib.optional (pythonOlder "3.13") future;
+
build-system = [ setuptools ];
nativeCheckInputs = [ pytestCheckHook ];
-4
pkgs/development/python-modules/polyswarm-api/default.nix
···
lib,
buildPythonPackage,
fetchFromGitHub,
-
future,
jsonschema,
pytestCheckHook,
python-dateutil,
···
hash = "sha256-+oKhKn+wUnvKlNymY/vtXn0cHBMyawBNhOQRu0tYC/M=";
};
-
pythonRelaxDeps = [ "future" ];
-
build-system = [ setuptools ];
dependencies = [
-
future
jsonschema
python-dateutil
requests
+2 -4
pkgs/development/python-modules/pushover-complete/default.nix
···
fetchPypi,
setuptools,
requests,
-
six,
pytestCheckHook,
requests-toolbelt,
responses,
···
buildPythonPackage rec {
pname = "pushover-complete";
-
version = "1.2.0";
+
version = "2.0.0";
pyproject = true;
src = fetchPypi {
pname = "pushover_complete";
inherit version;
-
hash = "sha256-v0+JgShJMEdVXJ1xZD4UCKZzgV+uOuOstPn3nWtHDJw=";
+
hash = "sha256-JPx9hNc0JoQOdnj+6A029A3wEUyzA1K6T5mrOELtIac=";
};
build-system = [ setuptools ];
dependencies = [
requests
-
six
];
nativeCheckInputs = [
+7 -17
pkgs/development/python-modules/pygreat/default.nix
···
buildPythonPackage,
fetchFromGitHub,
setuptools,
-
future,
pyusb,
}:
···
--replace-fail 'dynamic = ["version"]' 'version = "${version}"'
'';
-
build-system = [
-
setuptools
-
];
+
pythonRemoveDeps = [ "backports.functools_lru_cache" ];
-
pythonRemoveDeps = [
-
"backports.functools_lru_cache"
-
];
+
build-system = [ setuptools ];
-
dependencies = [
-
future
-
pyusb
-
];
+
dependencies = [ pyusb ];
-
# has no tests
+
# Module has no tests
doCheck = false;
-
pythonImportsCheck = [
-
"pygreat"
-
];
+
pythonImportsCheck = [ "pygreat" ];
meta = {
-
changelog = "https://github.com/greatscottgadgets/libgreat/releases/tag/${src.tag}";
description = "Python library for talking with libGreat devices";
homepage = "https://github.com/greatscottgadgets/libgreat/";
-
license = with lib.licenses; [ bsd3 ];
+
changelog = "https://github.com/greatscottgadgets/libgreat/releases/tag/${src.tag}";
+
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ carlossless ];
};
}
+2 -2
pkgs/development/python-modules/python-engineio/default.nix
···
buildPythonPackage rec {
pname = "python-engineio";
-
version = "4.12.1";
+
version = "4.12.2";
pyproject = true;
disabled = pythonOlder "3.8";
···
owner = "miguelgrinberg";
repo = "python-engineio";
tag = "v${version}";
-
hash = "sha256-slSLTcnrDGCI2hUbttp14qbNhiVFJ+PMZlhAq4ISDBs=";
+
hash = "sha256-VgdqVzO3UToXpD9pMEDqAH2DfdBwaWUfulALAEG2DNs=";
};
build-system = [ setuptools ];
+2 -2
pkgs/development/python-modules/rich-argparse/default.nix
···
buildPythonPackage rec {
pname = "rich-argparse";
-
version = "1.7.0";
+
version = "1.7.1";
pyproject = true;
disabled = pythonOlder "3.8";
···
owner = "hamdanal";
repo = "rich-argparse";
tag = "v${version}";
-
hash = "sha256-XuRQeE9JrF4ym2H1ky1yH0fENnsWbL90vboQzTo23w0=";
+
hash = "sha256-gLXFiWgGMDOUbTyoSgTr0XfotVfDxwMqPdsfE4KHzXM=";
};
build-system = [ hatchling ];
+1
pkgs/development/python-modules/sklearn-deap/default.nix
···
homepage = "https://github.com/rsteca/sklearn-deap";
license = licenses.mit;
maintainers = with maintainers; [ psyanticy ];
+
broken = true; # incompatible with scikit-learn >= 1.6
};
}
+2 -2
pkgs/development/python-modules/superqt/default.nix
···
buildPythonPackage rec {
pname = "superqt";
-
version = "0.7.3";
+
version = "0.7.5";
pyproject = true;
disabled = pythonOlder "3.9";
···
owner = "pyapp-kit";
repo = "superqt";
tag = "v${version}";
-
hash = "sha256-u9HnuqPcHb0Sk+UtgrCt9oziW1hCA6aQsieRO/ZG9fU=";
+
hash = "sha256-fLlItQRCxam7wlQZKKY+9/qAm8IFsVQZzyz3Ro5tDuU=";
};
build-system = [
+2 -2
pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
···
buildPythonPackage rec {
pname = "tencentcloud-sdk-python";
-
version = "3.0.1409";
+
version = "3.0.1410";
pyproject = true;
disabled = pythonOlder "3.9";
···
owner = "TencentCloud";
repo = "tencentcloud-sdk-python";
tag = version;
-
hash = "sha256-JbPC6pAtK5NSRcnE0qzhWN+MZ3ddmUhVA7oKEdLxEQQ=";
+
hash = "sha256-egpsFSYD5S+a3BcJ/4MElyJYyB5ziNY2CxvzbWGL7PM=";
};
build-system = [ setuptools ];
+29 -10
pkgs/development/python-modules/tree-sitter-grammars/default.nix
···
{
lib,
-
stdenv,
buildPythonPackage,
+
setuptools,
pytestCheckHook,
tree-sitter,
symlinkJoin,
···
buildPythonPackage {
inherit version;
pname = drvPrefix;
+
pyproject = true;
+
build-system = [ setuptools ];
src = symlinkJoin {
name = "${drvPrefix}-source";
paths = [
(writeTextDir "${snakeCaseName}/__init__.py" ''
-
from ._binding import language
+
# AUTO-GENERATED DO NOT EDIT
+
# preload the parser object before importing c binding
+
# this way we can avoid dynamic linker kicking in when
+
# downstream code imports this python module
+
import ctypes
+
import sys
+
import os
+
parser = "${grammarDrv}/parser"
+
try:
+
ctypes.CDLL(parser, mode=ctypes.RTLD_GLOBAL) # cached
+
except OSError as e:
+
raise ImportError(f"cannot load tree-sitter parser object from {parser}: {e}")
+
+
# expose binding
+
from ._binding import language
__all__ = ["language"]
'')
(writeTextDir "${snakeCaseName}/binding.c" ''
+
// AUTO-GENERATED DO NOT EDIT
+
#include <Python.h>
typedef struct TSLanguage TSLanguage;
···
}
'')
(writeTextDir "setup.py" ''
+
# AUTO-GENERATED DO NOT EDIT
+
from platform import system
from setuptools import Extension, setup
···
)
'')
(writeTextDir "pyproject.toml" ''
+
# AUTO-GENERATED DO NOT EDIT
+
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
···
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
-
"License :: OSI Approved :: MIT License",
"Topic :: Software Development :: Compilers",
"Topic :: Text Processing :: Linguistic",
]
requires-python = ">=3.8"
-
license.text = "MIT"
+
license = "MIT"
readme = "README.md"
[project.optional-dependencies]
···
build-frontend = "build"
'')
(writeTextDir "tests/test_language.py" ''
+
# AUTO-GENERATED DO NOT EDIT
+
from ${snakeCaseName} import language
from tree_sitter import Language, Parser
···
def test_language():
lang = Language(language())
assert lang is not None
-
parser = Parser()
-
parser.language = lang
+
parser = Parser(lang)
tree = parser.parse(bytes("", "utf-8"))
assert tree is not None
'')
];
};
-
preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
-
export DYLD_LIBRARY_PATH="${grammarDrv}"
-
'';
-
preCheck = ''
# https://github.com/NixOS/nixpkgs/issues/255262
rm -r ${snakeCaseName}
···
tree-sitter
pytestCheckHook
];
+
pythonImportsCheck = [ snakeCaseName ];
meta = {
+2 -2
pkgs/development/python-modules/youtokentome/default.nix
···
buildPythonPackage rec {
pname = "youtokentome";
-
version = "1.0.6";
+
version = "1.0.7";
pyproject = true;
disabled = pythonOlder "3.9";
···
owner = "VKCOM";
repo = "YouTokenToMe";
tag = "v${version}";
-
hash = "sha256-IFZS4jSi4yMzI7VbOPHI3KFZu5tjPjfQDPY7e1qbKAM=";
+
hash = "sha256-+GI752Ih7Ou1wyChR2y80BJmeTYdHWLPX6A1lvMyLGU=";
};
nativeBuildInputs = [
+6 -8
pkgs/development/python-modules/yte/default.nix
···
{
lib,
+
argparse-dataclass,
buildPythonPackage,
dpath,
fetchFromGitHub,
numpy,
-
plac,
-
poetry-core,
pytestCheckHook,
pythonOlder,
pyyaml,
+
uv-build,
}:
buildPythonPackage rec {
pname = "yte";
-
version = "1.8.1";
+
version = "1.9.0";
pyproject = true;
disabled = pythonOlder "3.7";
···
owner = "koesterlab";
repo = "yte";
tag = "v${version}";
-
hash = "sha256-0YIZd0qgtriyD+xCxJZENY7Z1fART3MS8pubnpysGRc=";
+
hash = "sha256-kA4fQg2vpgDuW0OZOqzA6lggJLtSiQo+3SCOp7hnt8M=";
};
-
build-system = [ poetry-core ];
+
build-system = [ uv-build ];
dependencies = [
dpath
-
plac
+
argparse-dataclass
pyyaml
];
···
];
pythonImportsCheck = [ "yte" ];
-
-
enabledTestPaths = [ "tests.py" ];
preCheck = ''
# The CLI test need yte on the PATH
+1
pkgs/top-level/aliases.nix
···
prometheus-minio-exporter = throw "'prometheus-minio-exporter' has been removed from nixpkgs, use Minio's built-in Prometheus integration instead"; # Added 2024-06-10
prometheus-tor-exporter = throw "'prometheus-tor-exporter' has been removed from nixpkgs, as it was broken and unmaintained"; # Added 2024-10-30
protobuf_23 = throw "'protobuf_23' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-04-20
+
protobuf_26 = throw "'protobuf_26' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-06-29
protobuf_28 = throw "'protobuf_28' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-06-14
protobuf3_24 = protobuf_24;
protobuf3_23 = protobuf_23;
-8
pkgs/top-level/all-packages.nix
···
];
} ../build-support/setup-hooks/gog-unpack.sh;
-
buf = callPackage ../by-name/bu/buf/package.nix {
-
buildGoModule = buildGo123Module;
-
};
-
buildEnv = callPackage ../build-support/buildenv { }; # not actually a package
buildFHSEnv = buildFHSEnvBubblewrap;
···
gssdp_1_6 = callPackage ../development/libraries/gssdp/1.6.nix { };
gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
-
-
gtkd = callPackage ../development/libraries/gtkd { dcompiler = ldc; };
gup = callPackage ../development/tools/build-managers/gup { };
···
protobuf_30 = callPackage ../development/libraries/protobuf/30.nix { };
protobuf_29 = callPackage ../development/libraries/protobuf/29.nix { };
protobuf_27 = callPackage ../development/libraries/protobuf/27.nix { };
-
protobuf_26 = callPackage ../development/libraries/protobuf/26.nix { };
protobuf_25 = callPackage ../development/libraries/protobuf/25.nix { };
protobuf_24 = callPackage ../development/libraries/protobuf/24.nix { };
protobuf_21 = callPackage ../development/libraries/protobuf/21.nix {
···
protobuf_30
protobuf_29
protobuf_27
-
protobuf_26
protobuf_25
protobuf_24
protobuf_21
+4
pkgs/top-level/python-packages.nix
···
bibtexparser = callPackage ../development/python-modules/bibtexparser { };
+
bibtexparser_2 = callPackage ../development/python-modules/bibtexparser/2.nix { };
+
bidict = callPackage ../development/python-modules/bidict { };
bids-validator = callPackage ../development/python-modules/bids-validator { };
···
haversine = callPackage ../development/python-modules/haversine { };
hawkauthlib = callPackage ../development/python-modules/hawkauthlib { };
+
+
hawkmoth = callPackage ../development/python-modules/hawkmoth { };
haystack-ai = callPackage ../development/python-modules/haystack-ai { };