Merge master into staging-next
This commit is contained in:
@@ -84,7 +84,7 @@ in
|
||||
[
|
||||
lsof
|
||||
]
|
||||
++ lib.optionals (lib.elem "librespot" cfg.providers) [
|
||||
++ lib.optionals (lib.elem "spotify" cfg.providers) [
|
||||
librespot
|
||||
]
|
||||
++ lib.optionals (lib.elem "snapcast" cfg.providers) [
|
||||
|
||||
@@ -103,13 +103,24 @@ in
|
||||
extraPackages = mkOption {
|
||||
type = with types; listOf package;
|
||||
default = [ ];
|
||||
description = ''
|
||||
Extra dependencies for podman to be placed on $PATH in the wrapper.
|
||||
'';
|
||||
};
|
||||
|
||||
extraRuntimes = mkOption {
|
||||
type = with types; listOf package;
|
||||
# keep the default in sync with the podman package
|
||||
default = lib.optionals pkgs.stdenv.hostPlatform.isLinux [ pkgs.runc ];
|
||||
defaultText = lib.literalExpression ''lib.optionals pkgs.stdenv.hostPlatform.isLinux [ pkgs.runc ]'';
|
||||
example = lib.literalExpression ''
|
||||
[
|
||||
pkgs.gvisor
|
||||
]
|
||||
'';
|
||||
description = ''
|
||||
Extra packages to be installed in the Podman wrapper.
|
||||
Extra runtime packages to be installed in the Podman wrapper.
|
||||
Those are then placed in libexec/podman, i.e. are seen as podman internal commands.
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -161,21 +172,20 @@ in
|
||||
config.systemd.package # To allow systemd-based container healthchecks
|
||||
]
|
||||
++ lib.optional (config.boot.supportedFilesystems.zfs or false) config.boot.zfs.package;
|
||||
extraRuntimes = [
|
||||
pkgs.runc
|
||||
]
|
||||
++
|
||||
lib.optionals
|
||||
(
|
||||
config.virtualisation.containers.containersConf.settings.network.default_rootless_network_cmd or ""
|
||||
== "slirp4netns"
|
||||
)
|
||||
(
|
||||
with pkgs;
|
||||
[
|
||||
slirp4netns
|
||||
]
|
||||
);
|
||||
extraRuntimes =
|
||||
cfg.extraRuntimes
|
||||
++
|
||||
lib.optionals
|
||||
(
|
||||
config.virtualisation.containers.containersConf.settings.network.default_rootless_network_cmd or ""
|
||||
== "slirp4netns"
|
||||
)
|
||||
(
|
||||
with pkgs;
|
||||
[
|
||||
slirp4netns
|
||||
]
|
||||
);
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -32,6 +32,12 @@ import ../make-test-python.nix (
|
||||
boot.supportedFilesystems = [ "zfs" ];
|
||||
networking.hostId = "00000000";
|
||||
};
|
||||
rootful_norunc =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
virtualisation.podman.enable = true;
|
||||
virtualisation.podman.extraRuntimes = [ ];
|
||||
};
|
||||
rootless =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
@@ -80,6 +86,7 @@ import ../make-test-python.nix (
|
||||
|
||||
|
||||
rootful.wait_for_unit("sockets.target")
|
||||
rootful_norunc.wait_for_unit("sockets.target")
|
||||
rootless.wait_for_unit("sockets.target")
|
||||
dns.wait_for_unit("sockets.target")
|
||||
docker.wait_for_unit("sockets.target")
|
||||
@@ -112,6 +119,31 @@ import ../make-test-python.nix (
|
||||
rootful.succeed("podman stop sleeping")
|
||||
rootful.succeed("podman rm sleeping")
|
||||
|
||||
# now without installed runc
|
||||
with subtest("Run runc-less container as root with runc"):
|
||||
rootful_norunc.succeed("tar cv --files-from /dev/null | podman import - scratchimg")
|
||||
rootful_norunc.fail(
|
||||
"podman run --runtime=runc -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"
|
||||
)
|
||||
|
||||
with subtest("Run runc-less container as root with crun"):
|
||||
rootful_norunc.succeed("tar cv --files-from /dev/null | podman import - scratchimg")
|
||||
rootful_norunc.succeed(
|
||||
"podman run --runtime=crun -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"
|
||||
)
|
||||
rootful_norunc.succeed("podman ps | grep sleeping")
|
||||
rootful_norunc.succeed("podman stop sleeping")
|
||||
rootful_norunc.succeed("podman rm sleeping")
|
||||
|
||||
with subtest("Run runc-less container as root with the default backend"):
|
||||
rootful_norunc.succeed("tar cv --files-from /dev/null | podman import - scratchimg")
|
||||
rootful_norunc.succeed(
|
||||
"podman run -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"
|
||||
)
|
||||
rootful_norunc.succeed("podman ps | grep sleeping")
|
||||
rootful_norunc.succeed("podman stop sleeping")
|
||||
rootful_norunc.succeed("podman rm sleeping")
|
||||
|
||||
# start systemd session for rootless
|
||||
rootless.succeed("loginctl enable-linger alice")
|
||||
rootless.succeed(su_cmd("whoami"))
|
||||
|
||||
@@ -9,28 +9,28 @@
|
||||
}:
|
||||
rec {
|
||||
extraFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-extra-fonts-1.0-noarch.tar.gz";
|
||||
sha256 = "0hylgjmd95y9yahbblmawkkw0i71vb145xxv2xqrmff81301n6k7";
|
||||
url = "https://www.texmacs.org/Download/ftp/fonts/TeXmacs-extra-fonts-1.0-noarch.tar.gz";
|
||||
sha256 = "sha256-ZxobwAjIuZpxF7v3QsLa4UTA5+Sq0rWg8smX1Kp81EM=";
|
||||
};
|
||||
|
||||
fullFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-windows-fonts-1.0-noarch.tar.gz";
|
||||
sha256 = "1yxzjpqpm7kvx0ly5jmfpzlfhsh41b0ibn1v84qv6xy73r2vis2f";
|
||||
url = "https://www.texmacs.org/Download/ftp/fonts/TeXmacs-windows-fonts-1.0-noarch.tar.gz";
|
||||
sha256 = "sha256-Tui4RR7Hd7MxQTvYFcEKBGro6L+uyuIp6HueevGVv/s=";
|
||||
};
|
||||
|
||||
chineseFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-chinese-fonts.tar.gz";
|
||||
sha256 = "0yprqjsx5mfsaxr525mcm3xqwcadzxp14njm38ir1325baada2fp";
|
||||
url = "https://www.texmacs.org/Download/ftp/fonts/TeXmacs-chinese-fonts.tar.gz";
|
||||
sha256 = "sha256-1wnVlFpFjJAjGlVaEm7/TTGO+6isFlFyV9rV0rXE+Xo=";
|
||||
};
|
||||
|
||||
japaneseFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-japanese-fonts.tar.gz";
|
||||
sha256 = "1dn6zvsa7gk59d61xicwpbapab3rm6kz48rp5w1bhmihxixw21jn";
|
||||
url = "https://www.texmacs.org/Download/ftp/fonts/TeXmacs-japanese-fonts.tar.gz";
|
||||
sha256 = "sha256-VgbBe+wwVrgCLzcj8qepeSx11bqcxR5MS2W+o/T+xrY=";
|
||||
};
|
||||
|
||||
koreanFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-korean-fonts.tar.gz";
|
||||
sha256 = "07axg57mqm3jbnm4lawx0h3r2h56xv9acwzjppryfklw4c27f5hh";
|
||||
url = "https://www.texmacs.org/Download/ftp/fonts/TeXmacs-korean-fonts.tar.gz";
|
||||
sha256 = "sha256-EBZ3BCOcTufzvfJzptLupkCRBwSdK0qqXXJUXE95XR0=";
|
||||
};
|
||||
|
||||
postPatch =
|
||||
|
||||
@@ -12,18 +12,18 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "codex";
|
||||
version = "0.38.0";
|
||||
version = "0.39.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openai";
|
||||
repo = "codex";
|
||||
tag = "rust-v${finalAttrs.version}";
|
||||
hash = "sha256-bgr5AKPae+m2oXVRO1+KtPFT7J3CKKS0hQ8SeNHFhUU=";
|
||||
hash = "sha256-VxfUhPyJRYu6xvrDJRa3BqS/G7gf+J9d+2FbW1Ps4kw=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/codex-rs";
|
||||
|
||||
cargoHash = "sha256-3M8A1xHTa/e5cKIsIHbmZSCOFyVEwixYiOC/wEv0ljU=";
|
||||
cargoHash = "sha256-62JkVo2Dlrtgr66qn6a3vuIUsJpVZDQ8uqIJnXeeU90=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
|
||||
@@ -9,26 +9,26 @@ let
|
||||
inherit (stdenv) hostPlatform;
|
||||
sources = {
|
||||
x86_64-linux = fetchurl {
|
||||
url = "https://downloads.cursor.com/lab/2025.09.04-fc40cd1/linux/x64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-Y1ynrrHfhbmMKkbZ1C3Xl+uZy3AWnmAXwTC+OkMcquc=";
|
||||
url = "https://downloads.cursor.com/lab/2025.09.18-39624ef/linux/x64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-LbckJixgsrxCUKxy06Llfurd4h52fcQ8MTRfY3YUxHk=";
|
||||
};
|
||||
aarch64-linux = fetchurl {
|
||||
url = "https://downloads.cursor.com/lab/2025.09.04-fc40cd1/linux/arm64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-EeeHCWFDCayFGpSKkeHxZe2JSHsQ+hJYAwepTm6i8Bo=";
|
||||
url = "https://downloads.cursor.com/lab/2025.09.18-39624ef/linux/arm64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-9XvRwPnW6fezjAzsvxUINRppQIDwCq5nESpbYWojt5U=";
|
||||
};
|
||||
x86_64-darwin = fetchurl {
|
||||
url = "https://downloads.cursor.com/lab/2025.09.04-fc40cd1/darwin/x64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-yzu0Ea5/X38RGyaFx0VR1O2aXzWs/XHopDyQzouFXP8=";
|
||||
url = "https://downloads.cursor.com/lab/2025.09.18-39624ef/darwin/x64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-7cW29+jLfcm+tx1EmIeI+FWZXO8L4UdArJ7wvmMSCoM=";
|
||||
};
|
||||
aarch64-darwin = fetchurl {
|
||||
url = "https://downloads.cursor.com/lab/2025.09.04-fc40cd1/darwin/arm64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-C2av4foh8XcXi+CYzFEz6jeFIR7sTjZFi1fk2s0I46I=";
|
||||
url = "https://downloads.cursor.com/lab/2025.09.18-39624ef/darwin/arm64/agent-cli-package.tar.gz";
|
||||
hash = "sha256-LxuEMzROif0LO1bjS203lB8QBaXnVdmHHN+I3UXl578=";
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "cursor-cli";
|
||||
version = "0-unstable-2025-09-04";
|
||||
version = "0-unstable-2025-09-18";
|
||||
|
||||
src = sources.${hostPlatform.system};
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "databricks-cli";
|
||||
version = "0.267.0";
|
||||
version = "0.269.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "databricks";
|
||||
repo = "cli";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-VQc7UYyrc5eVl/3ETswUj5vYsRnAGi6QqJwBe950biQ=";
|
||||
hash = "sha256-E9wxDwWBLJYh1DKREfxxJ2kts6Gd52mxjCxjelI9NaM=";
|
||||
};
|
||||
|
||||
# Otherwise these tests fail asserting that the version is 0.0.0-dev
|
||||
@@ -25,7 +25,7 @@ buildGoModule (finalAttrs: {
|
||||
--replace-fail "cli/0.0.0-dev" "cli/${finalAttrs.version}"
|
||||
'';
|
||||
|
||||
vendorHash = "sha256-B87LXkYLjPgabroRLj8LqGw2x8En9Wvytsac6s0RjiI=";
|
||||
vendorHash = "sha256-1XQ88nSziZ2+iWrHk4P0wGJo3jR9dGKMsdRZLqG+ouQ=";
|
||||
|
||||
excludedPackages = [
|
||||
"bundle/internal"
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
name = "eigenwallet";
|
||||
version = "3.0.0-beta.8";
|
||||
version = "3.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/eigenwallet/core/releases/download/${finalAttrs.version}/eigenwallet_${finalAttrs.version}_amd64.deb";
|
||||
hash = "sha256-9quyDsCQsGGTESdBg5BLbUaXCWhhxz3xmqkanCIdreE=";
|
||||
hash = "sha256-/yVx/FW+sVYPtpQNl03A3JNe4CbxRbo4OkvY/Kxnw8Y=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "exploitdb";
|
||||
version = "2025-09-17";
|
||||
version = "2025-09-18";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "exploit-database";
|
||||
repo = "exploitdb";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-9RQ75FK1ZZMSBJBWTAstdCiUb8pB7PzfHOp7Jd03fG0=";
|
||||
hash = "sha256-+5zXe+64tZD7zjZKXrAuv5ggBRb1ecKzKZSY2Knzklg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
sqlite-vec,
|
||||
frigate,
|
||||
nixosTests,
|
||||
fetchpatch,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -77,6 +78,11 @@ python3Packages.buildPythonApplication rec {
|
||||
|
||||
patches = [
|
||||
./constants.patch
|
||||
# Fixes hardcoded path /media/frigate/clips/faces. Remove in next version.
|
||||
(fetchpatch {
|
||||
url = "https://github.com/blakeblackshear/frigate/commit/b86e6e484f64bd43b64d7adebe78671a7a426edb.patch";
|
||||
hash = "sha256-1+n0n0yCtjfAHkXzsZdIF0iCVdPGmsG7l8/VTqBVEjU=";
|
||||
})
|
||||
./ffmpeg.patch
|
||||
];
|
||||
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
atool,
|
||||
bat,
|
||||
catdoc,
|
||||
chafa,
|
||||
exiftool,
|
||||
eza,
|
||||
fetchFromGitHub,
|
||||
ffmpegthumbnailer,
|
||||
file,
|
||||
glow,
|
||||
gnumeric,
|
||||
jq,
|
||||
lib,
|
||||
libcdio,
|
||||
makeWrapper,
|
||||
mediainfo,
|
||||
odt2txt,
|
||||
openssl,
|
||||
p7zip,
|
||||
poppler-utils,
|
||||
stdenv,
|
||||
w3m,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "fzf-preview";
|
||||
version = "0-unstable-2025-06-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "niksingh710";
|
||||
repo = "fzf-preview";
|
||||
rev = "5f6e936d1c3943192f9bdade71cff8879bdab3a6";
|
||||
hash = "sha256-vDgYv9PjQQYcMKG97ryncd30JPplnEqAKBp5hAE0E+o=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm755 -t $out/bin/ ./fzf-preview
|
||||
|
||||
wrapProgram $out/bin/fzf-preview \
|
||||
--prefix PATH ":" ${
|
||||
lib.makeBinPath [
|
||||
atool
|
||||
bat
|
||||
catdoc
|
||||
chafa
|
||||
exiftool
|
||||
eza
|
||||
ffmpegthumbnailer
|
||||
file
|
||||
glow
|
||||
gnumeric
|
||||
jq
|
||||
libcdio
|
||||
mediainfo
|
||||
odt2txt
|
||||
openssl
|
||||
p7zip
|
||||
poppler-utils
|
||||
w3m
|
||||
]
|
||||
}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Simple fzf preview script for previewing any filetype in fzf's preview window";
|
||||
|
||||
longDescription = ''
|
||||
fzf-preview is a lightweight Bash script designed to enhance the user experience
|
||||
with fzf (fuzzy finder) by providing instant previews of files directly in the
|
||||
fzf preview pane. It supports a wide variety of filetypes—including images and
|
||||
text—and delivers relevant file information in the terminal. The script aims to
|
||||
be simple, fast, and highly compatible, making it a useful tool for anyone
|
||||
leveraging fzf for file navigation or search.
|
||||
'';
|
||||
homepage = "https://github.com/niksingh710/fzf-preview";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [
|
||||
niksingh710
|
||||
];
|
||||
mainProgram = "fzf-preview";
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gcli";
|
||||
version = "2.8.0";
|
||||
version = "2.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "herrhotzenplotz";
|
||||
repo = "gcli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-s71RImg/N8v9h472upI94Pae/Zlw27f4Kc9SCavP1oY=";
|
||||
hash = "sha256-iWNVDKa8O1hAC8SBQqhQaRX7T81c4/+piOSkHb46hpw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -20,13 +20,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-zWBwrnCNKi2sIopdu2XQj/7IoTsJQzlcIFNNKM0glDQ=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "fix-building-on-arm.patch";
|
||||
url = "https://vcgit.hhi.fraunhofer.de/jvet/HM/-/commit/fd37cd88f557478b591dc0b9157d027354d82e2f.patch";
|
||||
hash = "sha256-xP54lBvDabc9Dy1UklH2BJH7fUGLTA4sf9WLt7WzoU8=";
|
||||
})
|
||||
];
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail "-msse4.1" ""
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "HIGH_BITDEPTH" true)
|
||||
|
||||
@@ -42,14 +42,14 @@ in
|
||||
# as bootloader for various platforms and corresponding binary and helper files.
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "limine";
|
||||
version = "9.6.7";
|
||||
version = "10.0.0";
|
||||
|
||||
# We don't use the Git source but the release tarball, as the source has a
|
||||
# `./bootstrap` script performing network access to download resources.
|
||||
# Packaging that in Nix is very cumbersome.
|
||||
src = fetchurl {
|
||||
url = "https://codeberg.org/Limine/Limine/releases/download/v${finalAttrs.version}/limine-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-VGn/Ny9wVKBVFW7SNTTx+u7rr519jQ+CzbcZwTTBKps=";
|
||||
hash = "sha256-y709MUhV/SwohrKCHUW2iLAlQ/RzLxn1AeTVVo4Mf4c=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -192,12 +192,15 @@ def _build_system(
|
||||
build_flags=build_flags | {"no_out_link": no_link, "dry_run": dry_run},
|
||||
)
|
||||
|
||||
nix.copy_closure(
|
||||
path_to_config,
|
||||
to_host=target_host,
|
||||
from_host=build_host,
|
||||
copy_flags=copy_flags,
|
||||
)
|
||||
# In dry_run mode there is nothing to copy
|
||||
# https://github.com/NixOS/nixpkgs/issues/444156
|
||||
if not dry_run:
|
||||
nix.copy_closure(
|
||||
path_to_config,
|
||||
to_host=target_host,
|
||||
from_host=build_host,
|
||||
copy_flags=copy_flags,
|
||||
)
|
||||
|
||||
return path_to_config
|
||||
|
||||
|
||||
@@ -985,6 +985,74 @@ def test_execute_build(mock_run: Mock, tmp_path: Path) -> None:
|
||||
)
|
||||
|
||||
|
||||
@patch("subprocess.run", autospec=True)
|
||||
def test_execute_build_dry_run_build_and_target_remote(
|
||||
mock_run: Mock, tmp_path: Path
|
||||
) -> None:
|
||||
config_path = tmp_path / "test"
|
||||
config_path.touch()
|
||||
mock_run.side_effect = [
|
||||
CompletedProcess([], 0, str(config_path)),
|
||||
CompletedProcess([], 0),
|
||||
CompletedProcess([], 0, str(config_path)),
|
||||
]
|
||||
|
||||
nr.execute(
|
||||
[
|
||||
"nixos-rebuild",
|
||||
"dry-build",
|
||||
"--flake",
|
||||
"/path/to/config#hostname",
|
||||
"--build-host",
|
||||
"user@build-host",
|
||||
"--target-host",
|
||||
"user@target-host",
|
||||
]
|
||||
)
|
||||
|
||||
assert mock_run.call_count == 3
|
||||
mock_run.assert_has_calls(
|
||||
[
|
||||
call(
|
||||
[
|
||||
"nix",
|
||||
"--extra-experimental-features",
|
||||
"nix-command flakes",
|
||||
"eval",
|
||||
"--raw",
|
||||
'/path/to/config#nixosConfigurations."hostname".config.system.build.toplevel.drvPath',
|
||||
],
|
||||
check=True,
|
||||
stdout=PIPE,
|
||||
**DEFAULT_RUN_KWARGS,
|
||||
),
|
||||
call(
|
||||
["nix-copy-closure", "--to", "user@build-host", config_path],
|
||||
check=True,
|
||||
**DEFAULT_RUN_KWARGS,
|
||||
),
|
||||
call(
|
||||
[
|
||||
"ssh",
|
||||
*nr.process.SSH_DEFAULT_OPTS,
|
||||
"user@build-host",
|
||||
"--",
|
||||
"nix",
|
||||
"--extra-experimental-features",
|
||||
"'nix-command flakes'",
|
||||
"build",
|
||||
f"'{config_path}^*'",
|
||||
"--print-out-paths",
|
||||
"--dry-run",
|
||||
],
|
||||
check=True,
|
||||
stdout=PIPE,
|
||||
**DEFAULT_RUN_KWARGS,
|
||||
),
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
@patch("subprocess.run", autospec=True)
|
||||
def test_execute_test_flake(mock_run: Mock, tmp_path: Path) -> None:
|
||||
config_path = tmp_path / "test"
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "nuclei-templates";
|
||||
version = "10.2.8";
|
||||
version = "10.2.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "projectdiscovery";
|
||||
repo = "nuclei-templates";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-FGMdm9VbML+9xQrPrq7eudnxpi2xJFK98iPMacWv8iE=";
|
||||
hash = "sha256-ZncJFBWt+7NwK4zxPXr1wxtAuxjMuaGmcC1a5RAQ2Y8=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -14,16 +14,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "pixi";
|
||||
version = "0.54.2";
|
||||
version = "0.55.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "prefix-dev";
|
||||
repo = "pixi";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-/hAe8clZatU3OyaH+5/Nd0tfEPQqM5c/R4EZUlRaPlA=";
|
||||
hash = "sha256-hMHOhdy8J/LQsrA1EWDuOP2weXB0NbXB++vyjaU4bkI=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-aWNVGTFmqgguk7i2S3AySTpwwdlsGMn0iXmCM0MKS1k=";
|
||||
cargoHash = "sha256-W/kjdqyMMs6ICzDgPeZyaOlS8fVfdS7bFcGcxlp6aQo=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
libX11,
|
||||
libxcb,
|
||||
lndir,
|
||||
makeBinaryWrapper,
|
||||
spotify,
|
||||
@@ -23,7 +24,10 @@ stdenv.mkDerivation {
|
||||
lndir
|
||||
];
|
||||
|
||||
buildInputs = [ libX11 ];
|
||||
buildInputs = [
|
||||
libX11
|
||||
libxcb
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vivaldi";
|
||||
version = "7.5.3735.74";
|
||||
version = "7.6.3797.52";
|
||||
|
||||
suffix =
|
||||
{
|
||||
@@ -79,8 +79,8 @@ stdenv.mkDerivation rec {
|
||||
url = "https://downloads.vivaldi.com/stable/vivaldi-stable_${version}-1_${suffix}.deb";
|
||||
hash =
|
||||
{
|
||||
aarch64-linux = "sha256-sfVCPtup7yPscyWoSwKZka9FwfEZburae/Ss/3YLtV8=";
|
||||
x86_64-linux = "sha256-aCghO64GVZjCqnmzj7GHpEhUk2Pld2VKS44G/+ElogU=";
|
||||
aarch64-linux = "sha256-K+bPy4yd1GdXsIDYNUYx3aAlcXYwX2rAN9GAR8c3tzA=";
|
||||
x86_64-linux = "sha256-cDYn6Vj+S/pft5jF2ItSUKIILCGHF++ZhH794BLNxQQ=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
};
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "wit-bindgen";
|
||||
version = "0.45.1";
|
||||
version = "0.46.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bytecodealliance";
|
||||
repo = "wit-bindgen";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-o5pWEh/AmYPsQjqn7amz3MYePdyi0JG1SYmOBQEmrsk=";
|
||||
hash = "sha256-PBvFa5BrgtKC8f999JJsCdFz34w/xZD57qBFW510oeI=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-05h0NmN4UUtEFblt6MoX/XVya/KjmI68999Z2HufyUA=";
|
||||
cargoHash = "sha256-5nz7+2pB5F63vvCecYpp3ExBDIqbRU3MwLNfmMdA2vE=";
|
||||
|
||||
# Some tests fail because they need network access to install the `wasm32-unknown-unknown` target.
|
||||
# However, GitHub Actions ensures a proper build.
|
||||
|
||||
@@ -56,7 +56,7 @@ python3Packages.buildPythonApplication rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "WhatsApp desktop application written in Pyqt6 + PyQt6-WebEngine";
|
||||
homepage = "https://rtosta.com/zapzap-web/";
|
||||
homepage = "https://rtosta.com/zapzap/";
|
||||
mainProgram = "zapzap";
|
||||
license = licenses.gpl3Only;
|
||||
changelog = "https://github.com/rafatosta/zapzap/releases/tag/${src.tag}";
|
||||
|
||||
@@ -99,7 +99,7 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "zed-editor";
|
||||
version = "0.204.1";
|
||||
version = "0.204.2";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
@@ -112,7 +112,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
owner = "zed-industries";
|
||||
repo = "zed";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-vIcMJ3tFKPtfNID1Tk4UAkVzScsUB05brcg+gLIYWoc=";
|
||||
hash = "sha256-WYdSWyWkCberMBJlow/V7FGQTL0ww1SQ5L0zNsnNg58=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -143,7 +143,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
--replace-fail '$CARGO_ABOUT_VERSION' '${cargo-about.version}'
|
||||
'';
|
||||
|
||||
cargoHash = "sha256-IJ2IHOSEUlnDm5VzaAirFuAn+JYDjJVZ3cE/WWKn0QE=";
|
||||
cargoHash = "sha256-cDlcwbxE+52YAHLPb+ijJZE9zQwvtm7glfru0qyQWwA=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
||||
@@ -9,6 +9,7 @@ mkCoqDerivation {
|
||||
pname = "autosubst-ocaml";
|
||||
owner = "uds-psl";
|
||||
|
||||
release."1.1+9.0".sha256 = "sha256-fCQjmF+0ik2QdKog61VfIv5ERmw+AJO8y5+CWmDGGk0=";
|
||||
release."1.1+8.20".sha256 = "sha256-S3uKkwbGFsvauP9lKc3UsdszHahbZQhlOOK3fCBXlSE=";
|
||||
release."1.1+8.19".sha256 = "sha256-AGbhw/6lg4GpDE6hZBhau9DLW7HVXa0UzGvJfSV8oHE=";
|
||||
|
||||
@@ -16,6 +17,10 @@ mkCoqDerivation {
|
||||
defaultVersion =
|
||||
with lib.versions;
|
||||
lib.switch coq.coq-version [
|
||||
{
|
||||
case = isEq "9.0";
|
||||
out = "1.1+9.0";
|
||||
}
|
||||
{
|
||||
case = isEq "8.20";
|
||||
out = "1.1+8.20";
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
ocaml-migrate-parsetree,
|
||||
version ?
|
||||
if lib.versionAtLeast ppxlib.version "0.36" then
|
||||
"6.1.0"
|
||||
"6.1.1"
|
||||
else if lib.versionAtLeast ppxlib.version "0.32" then
|
||||
"6.0.3"
|
||||
else if lib.versionAtLeast ppxlib.version "0.20" then
|
||||
@@ -27,7 +27,7 @@
|
||||
let
|
||||
hash =
|
||||
{
|
||||
"6.1.0" = "sha256-dHpWiOpjD3elCw6QJUrG+KZr3Ul0suhzdjQUJ4B9S1Y=";
|
||||
"6.1.1" = "sha256-yR0epeFeaSii+JR9vRNbn3ZcwOLXK+JxQnmBr801DCQ=";
|
||||
"6.0.3" = "sha256-N0qpezLF4BwJqXgQpIv6IYwhO1tknkRSEBRVrBnJSm0=";
|
||||
"5.2.1" = "sha256:11h75dsbv3rs03pl67hdd3lbim7wjzh257ij9c75fcknbfr5ysz9";
|
||||
"5.1" = "sha256:1i64fd7qrfzbam5hfbl01r0sx4iihsahcwqj13smmrjlnwi3nkxh";
|
||||
@@ -41,7 +41,9 @@ buildDunePackage rec {
|
||||
inherit version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml-ppx/ppx_deriving/releases/download/v${version}/ppx_deriving-${lib.optionalString (lib.versionOlder version "6.0") "v"}${version}.tbz";
|
||||
url = "https://github.com/ocaml-ppx/ppx_deriving/releases/download/v${version}/ppx_deriving-${lib.optionalString (lib.versionOlder version "6.0") "v"}${version}.${
|
||||
if lib.versionAtLeast version "6.1.1" then "tar.gz" else "tbz"
|
||||
}";
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
|
||||
@@ -21,18 +21,18 @@ let
|
||||
param =
|
||||
if lib.versionAtLeast ocaml.version "4.05" then
|
||||
{
|
||||
version = "1.0.7";
|
||||
sha256 = "sha256-X8Iq0/OtbRJ8sSRdGFgIgUeNotbeULIxXm3UWGxSvhk=";
|
||||
version = "1.1.0";
|
||||
hash = "sha256-rS2n9eoqRKclaOy5W1ezaquItfnhH/ee+2TkFvF3FOA=";
|
||||
}
|
||||
else if lib.versionAtLeast ocaml.version "4.03" then
|
||||
{
|
||||
version = "1.0.3";
|
||||
sha256 = "0b77gsz9bqby8v77kfi4lans47x9p2lmzanzwins5r29maphb8y6";
|
||||
hash = "sha256:0b77gsz9bqby8v77kfi4lans47x9p2lmzanzwins5r29maphb8y6";
|
||||
}
|
||||
else
|
||||
{
|
||||
version = "1.0.0";
|
||||
sha256 = "1df61vw6v5bg2mys045682ggv058yqkqb67w7r2gz85crs04d5fw";
|
||||
hash = "sha256:1df61vw6v5bg2mys045682ggv058yqkqb67w7r2gz85crs04d5fw";
|
||||
propagatedBuildInputs = [ result ];
|
||||
};
|
||||
|
||||
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/topkg/releases/topkg-${version}.tbz";
|
||||
inherit (param) sha256;
|
||||
inherit (param) hash;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "llama-index-readers-json";
|
||||
version = "0.4.0";
|
||||
version = "0.4.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "llama_index_readers_json";
|
||||
inherit version;
|
||||
hash = "sha256-ThQWERdEzPIAUaYWQDkSJdIIvixrKv0eN4LGRaNaS3U=";
|
||||
hash = "sha256-bV/NsbEkWctLlOwo9r+W7sTzO38VPw2eB21VbXH1sek=";
|
||||
};
|
||||
|
||||
build-system = [ hatchling ];
|
||||
|
||||
@@ -11,14 +11,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "publicsuffixlist";
|
||||
version = "1.0.2.20250911";
|
||||
version = "1.0.2.20250919";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-1Q1p3s50xCjDu/6PHpDIFEQWD+zbVK2lHUc4tej7yBs=";
|
||||
hash = "sha256-JavJ8vMd0tylr9TxMTwqIPILK7eRB/j/RnvbU28h+yU=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -9,14 +9,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "tencentcloud-sdk-python";
|
||||
version = "3.0.1460";
|
||||
version = "3.0.1463";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TencentCloud";
|
||||
repo = "tencentcloud-sdk-python";
|
||||
tag = version;
|
||||
hash = "sha256-ZWKPEdBNwtaWD0RUIrNKRBkiaJj9b2+Meot0ecb+mok=";
|
||||
hash = "sha256-ZGwxbndI+0hKX38BIiHIXr7NGvC9FMEoqr/HQIaZsok=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -16,9 +16,9 @@ let
|
||||
variants = {
|
||||
# ./update-zen.py zen
|
||||
zen = {
|
||||
version = "6.16.5"; # zen
|
||||
version = "6.16.7"; # zen
|
||||
suffix = "zen1"; # zen
|
||||
sha256 = "19b5dpw4kkr9vfx2if56y69zs0di8ygrxsmnq8qhyg5v1985y5i6"; # zen
|
||||
sha256 = "1vca6b30k48ihizlsmrlgzxgfnp0zq7q7x1h728hny2h33pdhni4"; # zen
|
||||
isLqx = false;
|
||||
};
|
||||
# ./update-zen.py lqx
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
buildHomeAssistantComponent rec {
|
||||
owner = "amitfin";
|
||||
domain = "oref_alert";
|
||||
version = "3.2.2";
|
||||
version = "3.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "amitfin";
|
||||
repo = "oref_alert";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-YyE/t5onvpmbt4RE0YwqXBcZjkkmmLRFdfPdLpt+31k=";
|
||||
hash = "sha256-pVRssAo1suKzctokUVAtN0RGB+kyk/eSIxYKTrsBOYg=";
|
||||
};
|
||||
|
||||
dependencies = [
|
||||
|
||||
Reference in New Issue
Block a user