Merge master into staging-next
This commit is contained in:
@@ -8,7 +8,7 @@ For example, to experiment with the Rust grammar, you can create a shell environ
|
||||
|
||||
```nix
|
||||
{
|
||||
pkgs ? <nixpkgs> { },
|
||||
pkgs ? import <nixpkgs> { },
|
||||
}:
|
||||
|
||||
pkgs.mkShell {
|
||||
|
||||
@@ -16210,6 +16210,13 @@
|
||||
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";
|
||||
|
||||
@@ -693,7 +693,6 @@ with lib.maintainers;
|
||||
kazenyuk
|
||||
minijackson
|
||||
peterhoeg
|
||||
sephalon
|
||||
];
|
||||
scope = "Maintain Kodi and related packages.";
|
||||
shortName = "Kodi";
|
||||
|
||||
@@ -26,11 +26,11 @@ let
|
||||
|
||||
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;
|
||||
|
||||
@@ -41,7 +41,7 @@ callPackage ./generic.nix rec {
|
||||
|
||||
# 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";
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
}:
|
||||
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;
|
||||
};
|
||||
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
}:
|
||||
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";
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
protobuf_26,
|
||||
protobuf,
|
||||
git,
|
||||
testers,
|
||||
buf,
|
||||
@@ -11,16 +11,16 @@
|
||||
|
||||
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.
|
||||
@@ -36,7 +36,7 @@ buildGoModule rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
git # Required for TestGitCloner
|
||||
protobuf_26 # Required for buftesting.GetProtocFilePaths
|
||||
protobuf # Required for buftesting.GetProtocFilePaths
|
||||
];
|
||||
|
||||
checkFlags = [
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
|
||||
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";
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
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"
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchzip,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
atk,
|
||||
cairo,
|
||||
dcompiler,
|
||||
dcompiler ? ldc,
|
||||
gdk-pixbuf,
|
||||
gst_all_1,
|
||||
ldc,
|
||||
librsvg,
|
||||
glib,
|
||||
gtk3,
|
||||
@@ -21,14 +23,15 @@
|
||||
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 = [
|
||||
@@ -51,6 +54,13 @@ stdenv.mkDerivation rec {
|
||||
vte
|
||||
];
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/gtkd-developers/GtkD/commit/1e41b2da35c7dc2d18b118c632cb07137d048c2b.patch?full_index=1";
|
||||
hash = "sha256-8vQntjVrQH1+qHBBkB5PxcgLvucosEEPi43uqlnHe4g=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteAll ${./paths.d} generated/gtkd/gtkd/paths.d
|
||||
|
||||
@@ -140,6 +150,7 @@ stdenv.mkDerivation rec {
|
||||
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
|
||||
@@ -155,10 +166,10 @@ stdenv.mkDerivation rec {
|
||||
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;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
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"
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
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 = [
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
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=";
|
||||
};
|
||||
|
||||
@@ -45,12 +45,16 @@ stdenv.mkDerivation rec {
|
||||
|
||||
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;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
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)";
|
||||
|
||||
@@ -11,8 +11,8 @@ mattermost.override {
|
||||
# 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 = ''
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
}:
|
||||
|
||||
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 {
|
||||
@@ -29,7 +29,7 @@ let
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/lib/wmchat/go";
|
||||
vendorHash = "sha256-LPcIfXOlkejyLlYtew26FTOl7eBGhuNxjAVrmUItkxY=";
|
||||
vendorHash = "sha256-HC7tJRk7Pqw3AUDEP2fGqYQLjIGf0CgB36K3PBYsBMM=";
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
}:
|
||||
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=";
|
||||
|
||||
@@ -133,7 +133,8 @@ python3Packages.buildPythonApplication rec {
|
||||
};
|
||||
|
||||
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
|
||||
;
|
||||
|
||||
@@ -1,17 +1,15 @@
|
||||
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)
|
||||
@@ -301,7 +299,7 @@ def execute(argv: list[str]) -> None:
|
||||
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)
|
||||
@@ -310,10 +308,7 @@ def execute(argv: list[str]) -> None:
|
||||
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 (
|
||||
@@ -327,7 +322,7 @@ def execute(argv: list[str]) -> None:
|
||||
| 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,
|
||||
@@ -343,32 +338,21 @@ def execute(argv: list[str]) -> None:
|
||||
)
|
||||
|
||||
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)
|
||||
|
||||
@@ -242,33 +242,33 @@ def copy_closure(
|
||||
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,
|
||||
)
|
||||
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"
|
||||
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:
|
||||
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:
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import argparse
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
@@ -10,7 +11,7 @@ from . import nix, tmpdir
|
||||
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"
|
||||
|
||||
@@ -315,3 +316,49 @@ def build_and_activate_system(
|
||||
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)
|
||||
|
||||
@@ -8,7 +8,6 @@ from typing import Any
|
||||
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
|
||||
@@ -128,92 +127,6 @@ def test_parse_args() -> None:
|
||||
]
|
||||
|
||||
|
||||
@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(
|
||||
os.environ,
|
||||
{"NIXOS_REBUILD_I_UNDERSTAND_THE_CONSEQUENCES_PLEASE_BREAK_MY_SYSTEM": "1"},
|
||||
|
||||
@@ -295,9 +295,21 @@ def test_copy_closure(monkeypatch: MonkeyPatch) -> None:
|
||||
|
||||
@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",
|
||||
@@ -311,17 +323,6 @@ def test_edit(mock_run: Mock, monkeypatch: MonkeyPatch, tmpdir: Path) -> None:
|
||||
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(
|
||||
get_qualified_name(n.run_wrapper, n),
|
||||
|
||||
@@ -0,0 +1,96 @@
|
||||
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"},
|
||||
)
|
||||
@@ -34,13 +34,13 @@
|
||||
|
||||
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
|
||||
@@ -50,7 +50,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
'';
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-tj9+dvXF3iDbUoxk7Hdz+PTuyDpCgdRE6ZqHBLTZuMU=";
|
||||
cargoHash = "sha256-lmIe/QH8+/2LgaObbEvRgThP82AAnmGzf2SPfHExHks=";
|
||||
|
||||
cargoBuildFlags = [ "--package rerun-cli" ];
|
||||
cargoTestFlags = [ "--package rerun-cli" ];
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
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 = ".";
|
||||
|
||||
@@ -38,13 +38,13 @@ in
|
||||
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 = ''
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ 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";
|
||||
@@ -10,6 +10,6 @@ callPackage ./generic.nix { inherit commandLineArgs; } {
|
||||
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=";
|
||||
}
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
}:
|
||||
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 = ".";
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{ 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=";
|
||||
}
|
||||
|
||||
@@ -2,29 +2,23 @@
|
||||
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
|
||||
@@ -33,41 +27,32 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
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;
|
||||
};
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
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
@@ -0,0 +1,413 @@
|
||||
{
|
||||
"!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="
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
{
|
||||
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
|
||||
];
|
||||
};
|
||||
})
|
||||
@@ -60,6 +60,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
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;
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
|
||||
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"
|
||||
|
||||
@@ -99,7 +99,7 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "zed-editor";
|
||||
version = "0.192.6";
|
||||
version = "0.192.7";
|
||||
|
||||
outputs =
|
||||
[ "out" ]
|
||||
@@ -111,7 +111,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
owner = "zed-industries";
|
||||
repo = "zed";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-XLAzY9pXEfynyNkdnEJ0E/E6jLphirLgjBuXQpeK8yc=";
|
||||
hash = "sha256-OjqJAb7IlFpSd7+i5QAkpsBDAbM6tZ8x/Y1HWiyDkPI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -138,7 +138,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
'';
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-4kVfJmW36Q3Nb8AOmfNDmZLoZ9UZfj0MmznnIKdr+lU=";
|
||||
cargoHash = "sha256-qi3V6qGbb6kKecSTCbDMqfUKdgIliBJG1RaI5v+W9yY=";
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
{ callPackage, ... }@args:
|
||||
|
||||
callPackage ./generic.nix (
|
||||
{
|
||||
version = "26.1";
|
||||
hash = "sha256-9sA+MYeDqRZl1v6HV4mpy60vqTbVTtinp9er6zkg/Ng=";
|
||||
}
|
||||
// args
|
||||
)
|
||||
@@ -7,12 +7,12 @@
|
||||
|
||||
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 ];
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
||||
@@ -359,7 +359,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "boto3-stubs";
|
||||
version = "1.38.44";
|
||||
version = "1.38.46";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -367,7 +367,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "boto3_stubs";
|
||||
inherit version;
|
||||
hash = "sha256-8ru3v7vaf3tpXoOB2CiDTEzVR8OLCNX0SRpHZPJSy7Q=";
|
||||
hash = "sha256-UmeJ/B9Kb4nzckJNyaQQkpb2vRivqxq/XSgalPXPt3A=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -35,14 +35,14 @@
|
||||
|
||||
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 ];
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
buildPythonPackage,
|
||||
colorlog,
|
||||
fetchFromGitHub,
|
||||
bibtexparser_2,
|
||||
git,
|
||||
lxml,
|
||||
markdown,
|
||||
markupsafe,
|
||||
mock,
|
||||
postgresql,
|
||||
pylatexenc,
|
||||
pytest-cov-stub,
|
||||
@@ -22,21 +22,21 @@
|
||||
|
||||
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
|
||||
@@ -47,7 +47,6 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
mock
|
||||
postgresql
|
||||
pytest-cov-stub
|
||||
pytest-mock
|
||||
@@ -55,11 +54,11 @@ buildPythonPackage rec {
|
||||
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 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
|
||||
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 = [
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
||||
@@ -2,39 +2,30 @@
|
||||
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" ];
|
||||
|
||||
|
||||
@@ -14,14 +14,14 @@
|
||||
|
||||
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 = [
|
||||
@@ -41,7 +41,7 @@ buildPythonPackage rec {
|
||||
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 ];
|
||||
};
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mscerts";
|
||||
version = "2025.5.28";
|
||||
version = "2025.6.27";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
owner = "ralphje";
|
||||
repo = "mscerts";
|
||||
tag = version;
|
||||
hash = "sha256-FdREuLoUNL0uJczX5IDOFEWSo4YoYV7n0PnD+TJKcYY=";
|
||||
hash = "sha256-By0gVlsVjgBREBGUOZjnKE9HTHC+zLZ4kUKIcN7/eKY=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -334,12 +334,12 @@ rec {
|
||||
"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"
|
||||
@@ -446,8 +446,8 @@ rec {
|
||||
"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"
|
||||
@@ -574,8 +574,8 @@ rec {
|
||||
"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"
|
||||
@@ -594,8 +594,8 @@ rec {
|
||||
"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"
|
||||
@@ -726,8 +726,8 @@ rec {
|
||||
"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"
|
||||
@@ -762,8 +762,8 @@ rec {
|
||||
"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"
|
||||
@@ -1086,8 +1086,8 @@ rec {
|
||||
"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"
|
||||
@@ -1254,8 +1254,8 @@ rec {
|
||||
"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"
|
||||
@@ -1426,8 +1426,8 @@ rec {
|
||||
"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"
|
||||
|
||||
@@ -2,24 +2,22 @@
|
||||
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 ];
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
future,
|
||||
jsonschema,
|
||||
pytestCheckHook,
|
||||
python-dateutil,
|
||||
@@ -27,12 +26,9 @@ buildPythonPackage rec {
|
||||
hash = "sha256-+oKhKn+wUnvKlNymY/vtXn0cHBMyawBNhOQRu0tYC/M=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [ "future" ];
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
future
|
||||
jsonschema
|
||||
python-dateutil
|
||||
requests
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
fetchPypi,
|
||||
setuptools,
|
||||
requests,
|
||||
six,
|
||||
pytestCheckHook,
|
||||
requests-toolbelt,
|
||||
responses,
|
||||
@@ -12,20 +11,19 @@
|
||||
|
||||
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 = [
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
future,
|
||||
pyusb,
|
||||
}:
|
||||
|
||||
@@ -27,31 +26,22 @@ buildPythonPackage rec {
|
||||
--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 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-engineio";
|
||||
version = "4.12.1";
|
||||
version = "4.12.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -29,7 +29,7 @@ buildPythonPackage rec {
|
||||
owner = "miguelgrinberg";
|
||||
repo = "python-engineio";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-slSLTcnrDGCI2hUbttp14qbNhiVFJ+PMZlhAq4ISDBs=";
|
||||
hash = "sha256-VgdqVzO3UToXpD9pMEDqAH2DfdBwaWUfulALAEG2DNs=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "rich-argparse";
|
||||
version = "1.7.0";
|
||||
version = "1.7.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "hamdanal";
|
||||
repo = "rich-argparse";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-XuRQeE9JrF4ym2H1ky1yH0fENnsWbL90vboQzTo23w0=";
|
||||
hash = "sha256-gLXFiWgGMDOUbTyoSgTr0XfotVfDxwMqPdsfE4KHzXM=";
|
||||
};
|
||||
|
||||
build-system = [ hatchling ];
|
||||
|
||||
@@ -51,5 +51,6 @@ buildPythonPackage rec {
|
||||
homepage = "https://github.com/rsteca/sklearn-deap";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ psyanticy ];
|
||||
broken = true; # incompatible with scikit-learn >= 1.6
|
||||
};
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "superqt";
|
||||
version = "0.7.3";
|
||||
version = "0.7.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
owner = "pyapp-kit";
|
||||
repo = "superqt";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-u9HnuqPcHb0Sk+UtgrCt9oziW1hCA6aQsieRO/ZG9fU=";
|
||||
hash = "sha256-fLlItQRCxam7wlQZKKY+9/qAm8IFsVQZzyz3Ro5tDuU=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "tencentcloud-sdk-python";
|
||||
version = "3.0.1409";
|
||||
version = "3.0.1410";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "TencentCloud";
|
||||
repo = "tencentcloud-sdk-python";
|
||||
tag = version;
|
||||
hash = "sha256-JbPC6pAtK5NSRcnE0qzhWN+MZ3ddmUhVA7oKEdLxEQQ=";
|
||||
hash = "sha256-egpsFSYD5S+a3BcJ/4MElyJYyB5ziNY2CxvzbWGL7PM=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
buildPythonPackage,
|
||||
setuptools,
|
||||
pytestCheckHook,
|
||||
tree-sitter,
|
||||
symlinkJoin,
|
||||
@@ -27,16 +27,34 @@ in
|
||||
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;
|
||||
@@ -66,6 +84,8 @@ buildPythonPackage {
|
||||
}
|
||||
'')
|
||||
(writeTextDir "setup.py" ''
|
||||
# AUTO-GENERATED DO NOT EDIT
|
||||
|
||||
from platform import system
|
||||
from setuptools import Extension, setup
|
||||
|
||||
@@ -86,6 +106,8 @@ buildPythonPackage {
|
||||
)
|
||||
'')
|
||||
(writeTextDir "pyproject.toml" ''
|
||||
# AUTO-GENERATED DO NOT EDIT
|
||||
|
||||
[build-system]
|
||||
requires = ["setuptools", "wheel"]
|
||||
build-backend = "setuptools.build_meta"
|
||||
@@ -98,13 +120,12 @@ buildPythonPackage {
|
||||
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]
|
||||
@@ -115,6 +136,8 @@ buildPythonPackage {
|
||||
build-frontend = "build"
|
||||
'')
|
||||
(writeTextDir "tests/test_language.py" ''
|
||||
# AUTO-GENERATED DO NOT EDIT
|
||||
|
||||
from ${snakeCaseName} import language
|
||||
from tree_sitter import Language, Parser
|
||||
|
||||
@@ -125,18 +148,13 @@ buildPythonPackage {
|
||||
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}
|
||||
@@ -148,6 +166,7 @@ buildPythonPackage {
|
||||
tree-sitter
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ snakeCaseName ];
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "youtokentome";
|
||||
version = "1.0.6";
|
||||
version = "1.0.7";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "VKCOM";
|
||||
repo = "YouTokenToMe";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-IFZS4jSi4yMzI7VbOPHI3KFZu5tjPjfQDPY7e1qbKAM=";
|
||||
hash = "sha256-+GI752Ih7Ou1wyChR2y80BJmeTYdHWLPX6A1lvMyLGU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
{
|
||||
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";
|
||||
@@ -22,14 +22,14 @@ buildPythonPackage rec {
|
||||
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
|
||||
];
|
||||
|
||||
@@ -40,8 +40,6 @@ buildPythonPackage rec {
|
||||
|
||||
pythonImportsCheck = [ "yte" ];
|
||||
|
||||
pytestFlagsArray = [ "tests.py" ];
|
||||
|
||||
preCheck = ''
|
||||
# The CLI test need yte on the PATH
|
||||
export PATH=$out/bin:$PATH
|
||||
|
||||
@@ -1639,6 +1639,7 @@ mapAliases {
|
||||
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;
|
||||
|
||||
@@ -340,10 +340,6 @@ with pkgs;
|
||||
];
|
||||
} ../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;
|
||||
@@ -3208,8 +3204,6 @@ with pkgs;
|
||||
|
||||
gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
|
||||
|
||||
gtkd = callPackage ../development/libraries/gtkd { dcompiler = ldc; };
|
||||
|
||||
gup = callPackage ../development/tools/build-managers/gup { };
|
||||
|
||||
gupnp = callPackage ../development/libraries/gupnp { };
|
||||
@@ -9242,7 +9236,6 @@ with pkgs;
|
||||
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 {
|
||||
@@ -9253,7 +9246,6 @@ with pkgs;
|
||||
protobuf_30
|
||||
protobuf_29
|
||||
protobuf_27
|
||||
protobuf_26
|
||||
protobuf_25
|
||||
protobuf_24
|
||||
protobuf_21
|
||||
|
||||
@@ -1817,6 +1817,8 @@ self: super: with self; {
|
||||
|
||||
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 { };
|
||||
@@ -6373,6 +6375,8 @@ self: super: with self; {
|
||||
|
||||
hawkauthlib = callPackage ../development/python-modules/hawkauthlib { };
|
||||
|
||||
hawkmoth = callPackage ../development/python-modules/hawkmoth { };
|
||||
|
||||
haystack-ai = callPackage ../development/python-modules/haystack-ai { };
|
||||
|
||||
hcloud = callPackage ../development/python-modules/hcloud { };
|
||||
|
||||
Reference in New Issue
Block a user