From d73a36d3b64eb068e0304b4d72b5ff3878dc9d65 Mon Sep 17 00:00:00 2001 From: Jason Odoom Date: Tue, 30 Dec 2025 12:47:16 +0000 Subject: [PATCH 01/36] calamares-nixos-extensions: add filesystem type chooser --- .../src/config/modules/mount.conf | 16 +++- .../src/config/modules/partition.conf | 20 +++- .../src/modules/nixos/main.py | 92 ++++++++++++++++++- 3 files changed, 120 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/mount.conf b/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/mount.conf index dad6c229df2b..7113acc881a9 100644 --- a/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/mount.conf +++ b/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/mount.conf @@ -20,8 +20,20 @@ extraMounts: mountPoint: /sys/firmware/efi/efivars efi: true -# Ensure the right fmask/dmask is set on the ESP, as it will be -# picked up by nixos-generate-config later +# Btrfs subvolume layout for NixOS +# Empty subvolume for / means no subvolume (top-level) for GRUB compatibility +btrfsSubvolumes: + - mountPoint: / + subvolume: "" + - mountPoint: /home + subvolume: /home + - mountPoint: /nix + subvolume: /nix + +# Mount options by filesystem type +# nixos-generate-config picks these up for hardware-configuration.nix mountOptions: - filesystem: efi options: [ fmask=0077, dmask=0077 ] + - filesystem: btrfs + options: [ compress=zstd, noatime ] diff --git a/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/partition.conf b/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/partition.conf index 3e067e8d2343..75d04cec9dfa 100644 --- a/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/partition.conf +++ b/pkgs/by-name/ca/calamares-nixos-extensions/src/config/modules/partition.conf @@ -12,11 +12,29 @@ userSwapChoices: luksGeneration: luks2 +defaultFileSystemType: "ext4" + +availableFileSystemTypes: + - ext4 + - btrfs + - xfs + - f2fs + showNotEncryptedBootMessage: false +bios: + mountPoint: "/boot" + minimumSize: 512MiB + recommendedSize: 1GiB + label: "BOOT" + partitionLayout: - - name: "root" + - name: "boot" filesystem: "ext4" + mountPoint: "/boot" + size: 1GiB + - name: "root" + filesystem: "unknown" noEncrypt: false mountPoint: "/" size: 100% diff --git a/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py b/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py index 261a03cc9a8c..929a4e2266e1 100644 --- a/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py +++ b/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py @@ -45,6 +45,15 @@ cfgbootbios = """ # Bootloader. """ +cfgbootbiosbtrfs = """ # Bootloader. + boot.loader.grub.enable = true; + boot.loader.grub.device = "@@bootdev@@"; + boot.loader.grub.useOSProber = true; + # Use provided UUIDs instead of blkid probing (required for btrfs subvolumes) + boot.loader.grub.fsIdentifier = "provided"; + +""" + cfgbootnone = """ # Disable bootloader. boot.loader.grub.enable = false; @@ -360,6 +369,46 @@ def catenate(d, key, *values): d[key] = "".join(values) +def fix_btrfs_subvolumes(hardware_config, partitions): + """ + Fix btrfs subvolume configuration in hardware-configuration.nix. + + nixos-generate-config generates incorrect subvol options for btrfs + by setting them to mount points instead of actual subvolume names. + This function corrects the subvol options to match what Calamares configured. + """ + # Map of mount points to their correct btrfs subvolume names + # These match what is configured in mount.conf btrfsSubvolumes + # Root uses top-level (no subvolume) for GRUB compatibility + subvol_map = { + "/home": "home", + "/nix": "nix", + } + + # Check if root is actually btrfs + root_is_btrfs = False + for part in partitions: + if part.get("mountPoint") == "/" and part.get("fs") == "btrfs": + root_is_btrfs = True + break + + if not root_is_btrfs: + return hardware_config + + libcalamares.utils.debug("Fixing btrfs subvolume configuration") + + # Fix subvol options for each mount point + # nixos-generate-config may generate "subvol=/" instead of "subvol=@" + for mount_point, correct_subvol in subvol_map.items(): + # Match any "subvol=" and replace with correct subvolume + # This handles cases like "subvol=/" or "subvol=/home" + pattern = r'(fileSystems\."{}"[^;]*"subvol=)[^"]*"'.format(re.escape(mount_point)) + replacement = r'\g<1>{}"'.format(correct_subvol) + hardware_config = re.sub(pattern, replacement, hardware_config, flags=re.DOTALL) + + return hardware_config + + def run(): """NixOS Configuration.""" @@ -388,11 +437,22 @@ def run(): # Pick config parts and prepare substitution + # Check if root filesystem is btrfs + root_is_btrfs = False + for part in gs.value("partitions"): + if part.get("mountPoint") == "/" and part.get("fs") == "btrfs": + root_is_btrfs = True + break + # Check bootloader if fw_type == "efi": cfg += cfgbootefi elif bootdev != "nodev": - cfg += cfgbootbios + # Use btrfs-specific config to avoid blkid issues with subvolumes + if root_is_btrfs: + cfg += cfgbootbiosbtrfs + else: + cfg += cfgbootbios catenate(variables, "bootdev", bootdev) else: cfg += cfgbootnone @@ -734,9 +794,20 @@ def run(): libcalamares.utils.error(e.output.decode("utf8")) return (_("nixos-generate-config failed"), _(e.output.decode("utf8"))) - # Check for unfree stuff in hardware-configuration.nix + # Read and fix hardware-configuration.nix hf = open(root_mount_point + "/etc/nixos/hardware-configuration.nix", "r") htxt = hf.read() + hf.close() + + hardware_modified = False + + # Fix btrfs subvolume configuration if needed + htxt_fixed = fix_btrfs_subvolumes(htxt, gs.value("partitions")) + if htxt_fixed != htxt: + htxt = htxt_fixed + hardware_modified = True + + # Check for unfree stuff in hardware-configuration.nix search = re.search(r"boot\.extraModulePackages = \[ (.*) \];", htxt) # Check if any extraModulePackages are defined, and remove if only free packages are allowed @@ -765,14 +836,17 @@ def run(): ) ) expkgs.remove(pkg) - hardwareout = re.sub( + htxt = re.sub( r"boot\.extraModulePackages = \[ (.*) \];", "boot.extraModulePackages = [ {}];".format( "".join(map(lambda x: x + " ", expkgs)) ), htxt, ) - # Write the hardware-configuration.nix file + hardware_modified = True + + # Write the hardware-configuration.nix file if modified + if hardware_modified: libcalamares.utils.host_env_process_output( [ "cp", @@ -780,7 +854,7 @@ def run(): root_mount_point + "/etc/nixos/hardware-configuration.nix", ], None, - hardwareout, + htxt, ) # Write the configuration.nix file @@ -789,6 +863,14 @@ def run(): status = _("Installing NixOS") libcalamares.job.setprogress(0.3) + try: + subprocess.check_output( + ["pkexec", "chmod", "755", root_mount_point], + stderr=subprocess.STDOUT, + ) + except subprocess.CalledProcessError as e: + libcalamares.utils.warning("Failed to set permissions on {}: {}".format(root_mount_point, e.output)) + # build nixos-install command nixosInstallCmd = [ "pkexec" ] nixosInstallCmd.extend(generateProxyStrings()) From 536d238d525f0a15af0f7868ac6ceda08d67a905 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 10:07:40 -0800 Subject: [PATCH 02/36] python3Packages.datalad: set DATALAD_TESTS_NONETWORK to disable network tests --- .../python-modules/datalad/default.nix | 28 ++++--------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index c6fdcc61b5f8..df51a5e581fb 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -126,6 +126,7 @@ buildPythonPackage rec { preCheck = '' export HOME=$TMPDIR + export DATALAD_TESTS_NONETWORK=1 ''; # tests depend on apps in $PATH which only will get installed after the test @@ -143,8 +144,11 @@ buildPythonPackage rec { "test_status_custom_summary_no_repeats" "test_quoting" - # No such file or directory: 'git-annex-remote-[...]" + # Tries to run `git` and fails + "test_reckless" "test_create" + + # No such file or directory: 'git-annex-remote-[...]" "test_ensure_datalad_remote_maybe_enable" # "git-annex: unable to use external special remote git-annex-remote-datalad" @@ -191,28 +195,6 @@ buildPythonPackage rec { "test_download_url_need_datalad_remote" "test_datalad_credential_helper - assert False" - # need internet access - "test_clone_crcns" - "test_clone_datasets_root" - "test_reckless" - "test_autoenabled_remote_msg" - "test_ria_http_storedataladorg" - "test_gin_cloning" - "test_nonuniform_adjusted_subdataset" - "test_install_datasets_root" - "test_install_simple_local" - "test_install_dataset_from_just_source" - "test_install_dataset_from_just_source_via_path" - "test_datasets_datalad_org" - "test_get_cached_dataset" - "test_cached_dataset" - "test_cached_url" - "test_anonymous_s3" - "test_protocols" - "test_get_versioned_url_anon" - "test_install_recursive_github" - "test_failed_install_multiple" - # pbcopy not found "test_wtf" From 1f30221d2f1f788db3925451c133d963e67dff70 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 10:22:47 -0800 Subject: [PATCH 03/36] python3Packages.datalad: test with wrapped tools on PATH --- .../python-modules/datalad/default.nix | 64 ++++--------------- 1 file changed, 14 insertions(+), 50 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index df51a5e581fb..9635aed9a026 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -42,6 +42,7 @@ importlib-metadata, typing-extensions, # tests + pytest-retry, pytest-xdist, pytestCheckHook, p7zip, @@ -127,9 +128,13 @@ buildPythonPackage rec { preCheck = '' export HOME=$TMPDIR export DATALAD_TESTS_NONETWORK=1 + export PATH="$PATH:$out/bin" ''; - # tests depend on apps in $PATH which only will get installed after the test + disabledTestMarks = [ + "flaky" + ]; + disabledTests = [ # No such file or directory: 'datalad' "test_script_shims" @@ -147,59 +152,17 @@ buildPythonPackage rec { # Tries to run `git` and fails "test_reckless" "test_create" + "test_subsuperdataset_save" - # No such file or directory: 'git-annex-remote-[...]" - "test_ensure_datalad_remote_maybe_enable" - - # "git-annex: unable to use external special remote git-annex-remote-datalad" - "test_ria_postclonecfg" - "test_ria_postclone_noannex" - "test_ria_push" - "test_basic_scenario" - "test_annex_get_from_subdir" - "test_ensure_datalad_remote_init_and_enable_needed" - "test_ensure_datalad_remote_maybe_enable[False]" - "test_ensure_datalad_remote_maybe_enable[True]" - "test_create_simple" - "test_create_alias" - "test_storage_only" - "test_initremote" - "test_read_access" - "test_ephemeral" - "test_initremote_basic_fileurl" - "test_initremote_basic_httpurl" - "test_remote_layout" - "test_version_check" - "test_gitannex_local" - "test_push_url" - "test_url_keys" - "test_obtain_permission_root" - "test_source_candidate_subdataset" - "test_update_fetch_all" - "test_add_archive_dirs" - "test_add_archive_content" - "test_add_archive_content_strip_leading" - "test_add_archive_content_zip" - "test_add_archive_content_absolute_path" - "test_add_archive_use_archive_dir" - "test_add_archive_single_file" - "test_add_delete" - "test_add_archive_leading_dir" - "test_add_delete_after_and_drop" - "test_add_delete_after_and_drop_subdir" - "test_override_existing_under_git" - "test_copy_file_datalad_specialremote" - "test_download_url_archive" - "test_download_url_archive_from_subdir" - "test_download_url_archive_trailing_separator" - "test_download_url_need_datalad_remote" - "test_datalad_credential_helper - assert False" + # Tries to spawn a subshell and fails + "test_shell_completion_source" + # Times out + "test_rerun_unrelated_nonrun_left_run_right" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ # pbcopy not found "test_wtf" - - # CommandError: 'git -c diff.ignoreSubmodules=none -c core.quotepath=false ls-files -z -m -d' failed with exitcode 128 - "test_subsuperdataset_save" ] ++ lib.optionals (pythonAtLeast "3.14") [ # For all: https://github.com/datalad/datalad/issues/7781 @@ -215,6 +178,7 @@ buildPythonPackage rec { nativeCheckInputs = [ p7zip + pytest-retry pytest-xdist pytestCheckHook git-annex From 97f0cd2083fe01f97fa4d42fcceef3d4a84858fd Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 10:46:55 -0800 Subject: [PATCH 04/36] python3Packages.datalad: audit and cleanup disabledTests --- pkgs/development/python-modules/datalad/default.nix | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 9635aed9a026..f66dc3bd05d2 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -136,19 +136,6 @@ buildPythonPackage rec { ]; disabledTests = [ - # No such file or directory: 'datalad' - "test_script_shims" - "test_cfg_override" - "test_completion" - "test_nested_pushclone_cycle_allplatforms" - "test_create_sub_gh3463" - "test_create_sub_dataset_dot_no_path" - "test_cfg_passthrough" - "test_addurls_stdin_input_command_line" - "test_run_datalad_help" - "test_status_custom_summary_no_repeats" - "test_quoting" - # Tries to run `git` and fails "test_reckless" "test_create" From 6778c38350c6b90748dec1530400bca5172dc049 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 10:56:30 -0800 Subject: [PATCH 05/36] python3Packages.datalad: apply finalAttrs: fix --- pkgs/development/python-modules/datalad/default.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index f66dc3bd05d2..4e84aaa75577 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -50,7 +50,7 @@ httpretty, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "datalad"; version = "1.2.3"; pyproject = true; @@ -58,7 +58,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "datalad"; repo = "datalad"; - tag = version; + tag = finalAttrs.version; hash = "sha256-C3e9k4RDFfDMaimZ/7TtAJNzdlfVrKoTHVl0zKL9EjI="; }; @@ -78,7 +78,9 @@ buildPythonPackage rec { ]; dependencies = - optional-dependencies.core ++ optional-dependencies.downloaders ++ optional-dependencies.publish; + finalAttrs.passthru.optional-dependencies.core + ++ finalAttrs.passthru.optional-dependencies.downloaders + ++ finalAttrs.passthru.optional-dependencies.publish; optional-dependencies = { core = [ @@ -183,10 +185,11 @@ buildPythonPackage rec { meta = { description = "Keep code, data, containers under control with git and git-annex"; homepage = "https://www.datalad.org"; + changelog = "https://github.com/datalad/datalad/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ renesat malik ]; }; -} +}) From 625bb9303491ab3d808e8ae96d1da03ccf378e3d Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 11:02:48 -0800 Subject: [PATCH 06/36] python3Packages.datalad: add sarahec as maintainer --- pkgs/development/python-modules/datalad/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 4e84aaa75577..9870e79d2112 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -190,6 +190,7 @@ buildPythonPackage (finalAttrs: { maintainers = with lib.maintainers; [ renesat malik + sarahec ]; }; }) From 9133935fc73831d222c82096c39e5de172650313 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 11:20:39 -0800 Subject: [PATCH 07/36] python3Packages.datalad: ensure tests work on Darwin --- pkgs/development/python-modules/datalad/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 9870e79d2112..ba5849f4ecb4 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -152,6 +152,8 @@ buildPythonPackage (finalAttrs: { ++ lib.optionals stdenv.hostPlatform.isDarwin [ # pbcopy not found "test_wtf" + # hangs + "test_keyring" ] ++ lib.optionals (pythonAtLeast "3.14") [ # For all: https://github.com/datalad/datalad/issues/7781 @@ -180,6 +182,9 @@ buildPythonPackage (finalAttrs: { "-Wignore::DeprecationWarning" ]; + # Tests use ports on localhost + __darwinAllowLocalNetworking = true; + pythonImportsCheck = [ "datalad" ]; meta = { From f7bf677632b42c3300af8ebe851b7f314d92e726 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 15 Jan 2026 12:48:31 -0800 Subject: [PATCH 08/36] python3Packages.datalad: disable extra-slow tests --- pkgs/development/python-modules/datalad/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index ba5849f4ecb4..57ebdb1d7685 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -148,6 +148,13 @@ buildPythonPackage (finalAttrs: { # Times out "test_rerun_unrelated_nonrun_left_run_right" + + # Top five slowest (2/3 of total runtime) + "test_files_split" + "test_gitannex_local" + "test_save_hierarchy" + "test_recurse_existing" + "test_source_candidate_subdataset" ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ # pbcopy not found From 0ced30df829095460d925fb2aa8bed87c7ff86d4 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 18 Jan 2026 09:37:40 -0800 Subject: [PATCH 09/36] python3Packages.datalad: 1.2.3 -> 1.3.0 --- pkgs/development/python-modules/datalad/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 57ebdb1d7685..62767e821de8 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -52,14 +52,14 @@ buildPythonPackage (finalAttrs: { pname = "datalad"; - version = "1.2.3"; + version = "1.3.0"; pyproject = true; src = fetchFromGitHub { owner = "datalad"; repo = "datalad"; tag = finalAttrs.version; - hash = "sha256-C3e9k4RDFfDMaimZ/7TtAJNzdlfVrKoTHVl0zKL9EjI="; + hash = "sha256-aTpiwcwRJyUF68+OsT+u9j/cibZEDhmL45I1MSY3Q7E="; }; postPatch = '' From eb8cef78ab91a834ca18e470a416cea03b7b3353 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 18 Jan 2026 10:10:04 -0800 Subject: [PATCH 10/36] python3Packages.datalad: restore tests fixed in release 1.3.0 --- pkgs/development/python-modules/datalad/default.nix | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 62767e821de8..e01e2f1807b6 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -161,17 +161,6 @@ buildPythonPackage (finalAttrs: { "test_wtf" # hangs "test_keyring" - ] - ++ lib.optionals (pythonAtLeast "3.14") [ - # For all: https://github.com/datalad/datalad/issues/7781 - # AssertionError: `assert 1 == 0` (refcount error) - "test_GitRepo_flyweight" - "test_Dataset_flyweight" - "test_AnnexRepo_flyweight" - # TypeError: cannot pickle '_thread.lock' object - "test_popen_invocation" - # datalad.runner.exception.CommandError: '/python3.14 -i -u -q -']' timed out after 0.5 seconds - "test_asyncio_loop_noninterference1" ]; nativeCheckInputs = [ From d348ba03f5c20fd0e90c0221a0b2b52c210b68ba Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 19:07:41 +0000 Subject: [PATCH 11/36] rucio: 39.0.0 -> 39.1.0 --- pkgs/development/python-modules/rucio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/rucio/default.nix b/pkgs/development/python-modules/rucio/default.nix index becc4d8ac713..b82b661370a3 100644 --- a/pkgs/development/python-modules/rucio/default.nix +++ b/pkgs/development/python-modules/rucio/default.nix @@ -40,13 +40,13 @@ }: let - version = "39.0.0"; + version = "39.1.0"; src = fetchFromGitHub { owner = "rucio"; repo = "rucio"; tag = version; - hash = "sha256-3KRcoS1VwjRynBgDIvCRu1dOIVF8mlAG7P17ROLE1ZY="; + hash = "sha256-ef8rVRDVkkEcsQ5AKz1W2L21abyY2dfHMWh2Rv0oxPA="; }; in buildPythonPackage { From adf5c3d078611b77e8442d39f08457df548cf194 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Thu, 15 Jan 2026 06:55:24 +0100 Subject: [PATCH 12/36] =?UTF-8?q?gajim:=202.3.6=20=E2=86=92=202.4.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pythonPackages.nbxmpp: 6.4.0 → 7.0.0 pythonPackages.omemo-dr: 1.0.1 → 1.2.0 --- .../networking/instant-messengers/gajim/default.nix | 7 +++++-- pkgs/development/python-modules/nbxmpp/default.nix | 4 ++-- .../development/python-modules/omemo-dr/default.nix | 13 ++++++++----- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix index de846c7c7c0a..81b7099bd3b5 100644 --- a/pkgs/applications/networking/instant-messengers/gajim/default.nix +++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix @@ -43,14 +43,14 @@ python3.pkgs.buildPythonApplication rec { pname = "gajim"; - version = "2.3.6"; + version = "2.4.1"; src = fetchFromGitLab { domain = "dev.gajim.org"; owner = "gajim"; repo = "gajim"; tag = version; - hash = "sha256-Mvi69FI2zRefcCnLsurdVNMxYaqKsUCKgeFxOh6vg/o="; + hash = "sha256-hyKJlq9736ngCQ1FUvP9miz7lMlwd+Y3Rcl6kfYDtsg="; }; pyproject = true; @@ -112,6 +112,9 @@ python3.pkgs.buildPythonApplication rec { qrcode sqlalchemy emoji + httpx + h2 + truststore ] ++ lib.optionals enableE2E [ pycrypto diff --git a/pkgs/development/python-modules/nbxmpp/default.nix b/pkgs/development/python-modules/nbxmpp/default.nix index ad9be9312a9b..1ae80bdb411d 100644 --- a/pkgs/development/python-modules/nbxmpp/default.nix +++ b/pkgs/development/python-modules/nbxmpp/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "nbxmpp"; - version = "6.4.0"; + version = "7.0.0"; pyproject = true; src = fetchFromGitLab { @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "gajim"; repo = "python-nbxmpp"; tag = version; - hash = "sha256-q910WbBp0TBqXw8WfYniliVGnr4Hi6dDhVDqZszSL0c="; + hash = "sha256-NzSXvuPf7PZbMPgD3nhPgTH4Vd8DVx49fjf7cPcvywc="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/omemo-dr/default.nix b/pkgs/development/python-modules/omemo-dr/default.nix index 12acd1cbb7e7..7c33e56c1dd5 100644 --- a/pkgs/development/python-modules/omemo-dr/default.nix +++ b/pkgs/development/python-modules/omemo-dr/default.nix @@ -2,7 +2,7 @@ lib, buildPythonPackage, cryptography, - fetchPypi, + fetchFromGitLab, protobuf, pytestCheckHook, setuptools, @@ -10,12 +10,15 @@ buildPythonPackage rec { pname = "omemo-dr"; - version = "1.0.1"; + version = "1.2.0"; pyproject = true; - src = fetchPypi { - inherit pname version; - hash = "sha256-KoqMdyMdc5Sb3TdSeNTVomElK9ruUstiQayyUcIC02E="; + src = fetchFromGitLab { + domain = "dev.gajim.org"; + owner = "gajim"; + repo = "omemo-dr"; + tag = "v${version}"; + hash = "sha256-8+uBO7Nl6YcEwthWmChqCTLvUelF8QJl+dHzkqbPVqM="; }; nativeBuildInputs = [ setuptools ]; From b10fba340d40678895cf66a378a99d2e97672812 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Wed, 21 Jan 2026 06:17:50 +0100 Subject: [PATCH 13/36] =?UTF-8?q?gajim:=202.4.1=20=E2=86=92=202.4.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../networking/instant-messengers/gajim/default.nix | 4 ++-- pkgs/development/python-modules/nbxmpp/default.nix | 7 +------ 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix index 81b7099bd3b5..ee0137e4fdd5 100644 --- a/pkgs/applications/networking/instant-messengers/gajim/default.nix +++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix @@ -43,14 +43,14 @@ python3.pkgs.buildPythonApplication rec { pname = "gajim"; - version = "2.4.1"; + version = "2.4.2"; src = fetchFromGitLab { domain = "dev.gajim.org"; owner = "gajim"; repo = "gajim"; tag = version; - hash = "sha256-hyKJlq9736ngCQ1FUvP9miz7lMlwd+Y3Rcl6kfYDtsg="; + hash = "sha256-VBo0+8lOXWbi3a9FT0qcEkyoxzVAm+QLrBtHmRjUHbg="; }; pyproject = true; diff --git a/pkgs/development/python-modules/nbxmpp/default.nix b/pkgs/development/python-modules/nbxmpp/default.nix index 1ae80bdb411d..6de2732e7a3c 100644 --- a/pkgs/development/python-modules/nbxmpp/default.nix +++ b/pkgs/development/python-modules/nbxmpp/default.nix @@ -40,12 +40,7 @@ buildPythonPackage rec { idna libsoup_3 packaging - (pygobject3.overrideAttrs (o: { - src = fetchurl { - url = "mirror://gnome/sources/pygobject/3.52/pygobject-3.52.3.tar.gz"; - hash = "sha256-AOQn0pHpV0Yqj61lmp+ci+d2/4Kot2vfQC8eruwIbYI="; - }; - })) + pygobject3 pyopenssl ]; From b463561b2aa1bdadadd941db46d2c4f667cd6fa3 Mon Sep 17 00:00:00 2001 From: Bouke van der Bijl Date: Wed, 21 Jan 2026 11:14:20 +0100 Subject: [PATCH 14/36] nixos/tailscale-serve: init Tailscale serve module --- .../manual/release-notes/rl-2605.section.md | 2 + nixos/modules/module-list.nix | 1 + .../services/networking/tailscale-serve.nix | 145 ++++++++++++++++++ 3 files changed, 148 insertions(+) create mode 100644 nixos/modules/services/networking/tailscale-serve.nix diff --git a/nixos/doc/manual/release-notes/rl-2605.section.md b/nixos/doc/manual/release-notes/rl-2605.section.md index d29cb9aa49dc..3f200e3eba94 100644 --- a/nixos/doc/manual/release-notes/rl-2605.section.md +++ b/nixos/doc/manual/release-notes/rl-2605.section.md @@ -20,6 +20,8 @@ - [reaction](https://reaction.ppom.me/), a daemon that scans program outputs for repeated patterns, and takes action. A common usage is to scan ssh and webserver logs, and to ban hosts that cause multiple authentication errors. A modern alternative to fail2ban. Available as [services.reaction](#opt-services.reaction.enable). +- [Tailscale Serve](https://tailscale.com/kb/1552/tailscale-services), configure Tailscale Serve for exposing local services to your tailnet. Available as [services.tailscale.serve](#opt-services.tailscale.serve.enable). + - [qui](https://github.com/autobrr/qui), a modern alternative webUI for qBittorrent, with multi-instance support. Written in Go/React. Available as [services.qui](#opt-services.qui.enable). - [LibreChat](https://www.librechat.ai/), open-source self-hostable ChatGPT clone with Agents and RAG APIs. Available as [services.librechat](#opt-services.librechat.enable). diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index bec540d6f504..1bf89a1c1f67 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -1391,6 +1391,7 @@ ./services/networking/syncthing.nix ./services/networking/tailscale-auth.nix ./services/networking/tailscale-derper.nix + ./services/networking/tailscale-serve.nix ./services/networking/tailscale.nix ./services/networking/tayga.nix ./services/networking/tcpcrypt.nix diff --git a/nixos/modules/services/networking/tailscale-serve.nix b/nixos/modules/services/networking/tailscale-serve.nix new file mode 100644 index 000000000000..87ee4026c1c4 --- /dev/null +++ b/nixos/modules/services/networking/tailscale-serve.nix @@ -0,0 +1,145 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.services.tailscale.serve; + settingsFormat = pkgs.formats.json { }; + + # Build the serve config structure with svc: prefix on service names + serveConfig = { + version = "0.0.1"; + services = lib.mapAttrs' ( + name: serviceCfg: + lib.nameValuePair "svc:${name}" ( + { + endpoints = serviceCfg.endpoints; + } + // lib.optionalAttrs (serviceCfg.advertised != null) { + inherit (serviceCfg) advertised; + } + ) + ) cfg.services; + }; + + configFile = + if cfg.configFile != null then + cfg.configFile + else + settingsFormat.generate "tailscale-serve-config.json" serveConfig; +in +{ + meta.maintainers = with lib.maintainers; [ + bouk + ]; + + options.services.tailscale.serve = { + enable = lib.mkEnableOption "Tailscale Serve configuration"; + + configFile = lib.mkOption { + type = lib.types.nullOr lib.types.path; + default = null; + description = '' + Path to a Tailscale Serve configuration file in JSON format. + If set, this takes precedence over {option}`services.tailscale.serve.services`. + + See for the configuration format. + ''; + example = "/run/secrets/tailscale-serve.json"; + }; + + services = lib.mkOption { + type = lib.types.attrsOf ( + lib.types.submodule { + options = { + endpoints = lib.mkOption { + type = lib.types.attrsOf lib.types.str; + description = '' + Map of incoming traffic patterns to local targets. + + Keys should be in the format `:` or `:`. + Currently only `tcp` protocol is supported. + + Values should be in the format `://` where protocol + is `http`, `https`, or `tcp`. + ''; + example = { + "tcp:443" = "https://localhost:443"; + "tcp:8080" = "http://localhost:8080"; + }; + }; + + advertised = lib.mkOption { + type = lib.types.nullOr lib.types.bool; + default = null; + description = '' + Whether the service should accept new connections. + Defaults to `true` when not specified. + ''; + }; + }; + } + ); + default = { }; + description = '' + Services to configure for Tailscale Serve. + + Each attribute name should be the service name (without the `svc:` prefix). + The `svc:` prefix will be added automatically. + + See for details. + ''; + example = lib.literalExpression '' + { + web-server = { + endpoints = { + "tcp:443" = "https://localhost:443"; + }; + }; + api = { + endpoints = { + "tcp:8080" = "http://localhost:8080"; + }; + advertised = true; + }; + } + ''; + }; + }; + + config = lib.mkIf cfg.enable { + assertions = [ + { + assertion = config.services.tailscale.enable; + message = "services.tailscale.serve requires services.tailscale.enable to be true"; + } + { + assertion = cfg.configFile != null || cfg.services != { }; + message = "services.tailscale.serve requires either configFile or services to be set"; + } + ]; + + systemd.services.tailscale-serve = { + description = "Tailscale Serve Configuration"; + + after = [ + "tailscaled.service" + "tailscaled-autoconnect.service" + "tailscaled-set.service" + ]; + wants = [ "tailscaled.service" ]; + wantedBy = [ "multi-user.target" ]; + + restartTriggers = [ configFile ]; + + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + ExecStart = "${lib.getExe config.services.tailscale.package} serve set-config --all ${configFile}"; + }; + }; + }; +} From cdca713f0e55a6b7c35a8fa4ae4784c0d3c4c010 Mon Sep 17 00:00:00 2001 From: SkohTV Date: Wed, 21 Jan 2026 08:13:01 -0500 Subject: [PATCH 15/36] python3Packages.banks: 2.2.0 -> 2.3.0 --- pkgs/development/python-modules/banks/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/banks/default.nix b/pkgs/development/python-modules/banks/default.nix index 83db9ac6b498..213b90d4e75d 100644 --- a/pkgs/development/python-modules/banks/default.nix +++ b/pkgs/development/python-modules/banks/default.nix @@ -18,14 +18,14 @@ buildPythonPackage rec { pname = "banks"; - version = "2.2.0"; + version = "2.3.0"; pyproject = true; src = fetchFromGitHub { owner = "masci"; repo = "banks"; tag = "v${version}"; - hash = "sha256-lzU1SwgZ7EKCmpDtCp4jKDBIdZVB+S1s/Oh3GfZCmtg="; + hash = "sha256-6+BQS9srj2VT2XcGe9g5Ios6g/vk3GcOXgCWEKq6YHI="; }; SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt"; From ace01cc35e2415051b3f2de69d58ae9127b171cc Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 21 Jan 2026 16:52:30 +0000 Subject: [PATCH 16/36] gemini-cli-bin: 0.24.4 -> 0.25.0 --- pkgs/by-name/ge/gemini-cli-bin/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ge/gemini-cli-bin/package.nix b/pkgs/by-name/ge/gemini-cli-bin/package.nix index 976a8ed25215..aa35c96df451 100644 --- a/pkgs/by-name/ge/gemini-cli-bin/package.nix +++ b/pkgs/by-name/ge/gemini-cli-bin/package.nix @@ -10,11 +10,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "gemini-cli-bin"; - version = "0.24.4"; + version = "0.25.0"; src = fetchurl { url = "https://github.com/google-gemini/gemini-cli/releases/download/v${finalAttrs.version}/gemini.js"; - hash = "sha256-xteIV43P5qPOamxsGjCXeCkd1zQmNNbMhvzSWc26DQU="; + hash = "sha256-7Co3DPZs/ZtdLfhZnOcpdFFQPnyeLkvxTZG+tv+FbBQ="; }; dontUnpack = true; From 5e99f9175ddb7a3af28be9126d2e361175721ad0 Mon Sep 17 00:00:00 2001 From: Gon Solo Date: Wed, 21 Jan 2026 21:05:34 +0100 Subject: [PATCH 17/36] netgen-vlsi: 1.5.314 -> 1.5.315 --- pkgs/by-name/ne/netgen-vlsi/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ne/netgen-vlsi/package.nix b/pkgs/by-name/ne/netgen-vlsi/package.nix index f878476fd6cf..8992ffddc133 100644 --- a/pkgs/by-name/ne/netgen-vlsi/package.nix +++ b/pkgs/by-name/ne/netgen-vlsi/package.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "netgen"; - version = "1.5.314"; + version = "1.5.315"; src = fetchFromGitHub { owner = "RTimothyEdwards"; repo = "netgen"; tag = finalAttrs.version; - hash = "sha256-g8d/faYjhL6WXSShqWn9n+4cUJ8qKtqyEgyIRsrHo5o="; + hash = "sha256-dXCZm5zVwn23y7DLPSUrTKGMcu/FjdVKsyry59lEt7U="; }; strictDeps = true; From 65c73146aa7dae5402d44255b4ce546d75bd4972 Mon Sep 17 00:00:00 2001 From: Darren Rambaud <225436867+debtquity@users.noreply.github.com> Date: Wed, 21 Jan 2026 14:32:21 -0600 Subject: [PATCH 18/36] stalwart-mail: 0.14.1 -> 0.15.4 * diff: https://github.com/stalwartlabs/stalwart/compare/v0.14.1...v0.15.4 * changelog: https://github.com/stalwartlabs/stalwart/releases/tag/v0.15.4 * remove `elastic` since it's no longer a feature and included by default (see: https://github.com/stalwartlabs/stalwart/discussions/2632#discussioncomment-15458542) * add `azure` and `nats` build features to align with upstream (see: https://github.com/stalwartlabs/stalwart/blob/659419212050bab50f600493fbe48a28aed44ac5/Dockerfile.build#L127) Resolves: NixOS/nixpkgs#473375 --- pkgs/by-name/st/stalwart-mail/package.nix | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/st/stalwart-mail/package.nix b/pkgs/by-name/st/stalwart-mail/package.nix index 89f81f4a97cf..4be73405bd7e 100644 --- a/pkgs/by-name/st/stalwart-mail/package.nix +++ b/pkgs/by-name/st/stalwart-mail/package.nix @@ -21,16 +21,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "stalwart-mail" + (lib.optionalString stalwartEnterprise "-enterprise"); - version = "0.14.1"; + version = "0.15.4"; src = fetchFromGitHub { owner = "stalwartlabs"; repo = "stalwart"; tag = "v${finalAttrs.version}"; - hash = "sha256-Wsk4n6jLOAFhxYb5Hw8XvQem0xccGGoD729nRz3bRF0="; + hash = "sha256-MIy1/8r5CMrTbVTjLFuUneoL3J38kZIgUMweoeaf3L0="; }; - cargoHash = "sha256-LFXpv8/rHQwzdKEyS4VplQSwFUnZrgv0qDIhZUOGfpo="; + cargoHash = "sha256-jVD11wz9Ab1E9KdNG4kp8Jqm2rJ2aUWuFTAOBga6Fgg="; depsBuildBuild = [ pkg-config @@ -61,9 +61,10 @@ rustPlatform.buildRustPackage (finalAttrs: { "postgres" "mysql" "rocks" - "elastic" "s3" "redis" + "azure" + "nats" ] ++ lib.optionals withFoundationdb [ "foundationdb" ] ++ lib.optionals stalwartEnterprise [ "enterprise" ]; @@ -87,7 +88,7 @@ rustPlatform.buildRustPackage (finalAttrs: { mkdir -p $out/lib/systemd/system substitute resources/systemd/stalwart-mail.service $out/lib/systemd/system/stalwart-mail.service \ - --replace "__PATH__" "$out" + --replace-fail "__PATH__" "$out" ''; checkFlags = lib.forEach [ @@ -169,6 +170,9 @@ rustPlatform.buildRustPackage (finalAttrs: { # left: ElementEnd # right: Bytes([...]) "responses::tests::parse_responses" + # thread 'store::search_tests' (912386) panicked at tests/src/store/mod.rs:116:10: + # Missing store type. Try running `STORE= cargo test`: NotPresent + "store::search_tests" ] (test: "--skip=${test}"); doCheck = !(stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64); From 1455b99d1bce6e40b65d2d248c64852ddece458e Mon Sep 17 00:00:00 2001 From: Darren Rambaud <225436867+debtquity@users.noreply.github.com> Date: Wed, 21 Jan 2026 14:57:54 -0600 Subject: [PATCH 19/36] stalwart.webadmin: 0.1.32 -> 0.1.37 * diff: https://github.com/stalwartlabs/webadmin/compare/v0.1.32...v0.1.37 * changelog: https://github.com/stalwartlabs/webadmin/releases/tag/v0.1.37 Related to: NixOS/nixpkgs#473375 --- pkgs/by-name/st/stalwart-mail/webadmin.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/st/stalwart-mail/webadmin.nix b/pkgs/by-name/st/stalwart-mail/webadmin.nix index 818314de323d..e77e8ba4c90d 100644 --- a/pkgs/by-name/st/stalwart-mail/webadmin.nix +++ b/pkgs/by-name/st/stalwart-mail/webadmin.nix @@ -17,13 +17,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "webadmin"; - version = "0.1.32"; + version = "0.1.37"; src = fetchFromGitHub { owner = "stalwartlabs"; repo = "webadmin"; tag = "v${finalAttrs.version}"; - hash = "sha256-HmQBMU7o0A20SY4tBw4SPVfHFfw8e0JsNQDNdZcex24="; + hash = "sha256-82QvuLkp6j6nJs7jX4NRcnxZ+KNv9RREpM+x8dicfGo="; }; npmDeps = fetchNpmDeps { @@ -31,7 +31,7 @@ rustPlatform.buildRustPackage (finalAttrs: { hash = "sha256-na1HEueX8w7kuDp8LEtJ0nD1Yv39cyk6sEMpS1zix2s="; }; - cargoHash = "sha256-a2+3uNNSLfb81QXjZfftbwpgjORPRSgC056U3FINP4o="; + cargoHash = "sha256-qYIg1BthkpS77I6duYGGX168Y/IO8Mx4SWMQbE0BwDA="; postPatch = '' # Using local tailwindcss for compilation From db3df3272d306ac483d3c5c1856d8153dcd8678c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 21 Jan 2026 22:08:54 +0000 Subject: [PATCH 20/36] mhabit: 1.23.3+142 -> 1.23.6+145 --- pkgs/by-name/mh/mhabit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mh/mhabit/package.nix b/pkgs/by-name/mh/mhabit/package.nix index b1d11829cb4a..82aec6204858 100644 --- a/pkgs/by-name/mh/mhabit/package.nix +++ b/pkgs/by-name/mh/mhabit/package.nix @@ -12,13 +12,13 @@ }: let - version = "1.23.3+142"; + version = "1.23.6+145"; src = fetchFromGitHub { owner = "FriesI23"; repo = "mhabit"; tag = "v${version}"; - hash = "sha256-jseb1AcM+AygVLFN3O5P2LiQppxOuLWMmBON0FRqPFQ="; + hash = "sha256-9+UXMOogySW3f9LPaj0YSfov1cSgLb3I+jWvAV8yEsM="; }; in flutter338.buildFlutterApplication { From a70347d4fd442a6fa46bea1a04f91b31713c2dec Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 21 Jan 2026 22:54:03 +0000 Subject: [PATCH 21/36] worker-build: 0.7.3 -> 0.7.4 --- pkgs/by-name/wo/worker-build/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/wo/worker-build/package.nix b/pkgs/by-name/wo/worker-build/package.nix index fbdb8aeec39b..81ce70935c72 100644 --- a/pkgs/by-name/wo/worker-build/package.nix +++ b/pkgs/by-name/wo/worker-build/package.nix @@ -6,17 +6,17 @@ rustPlatform.buildRustPackage rec { pname = "worker-build"; - version = "0.7.3"; + version = "0.7.4"; src = fetchFromGitHub { owner = "cloudflare"; repo = "workers-rs"; tag = "v${version}"; - hash = "sha256-OWtlW9aJwDIfwRK6y1ajx8OLL1mMhbr6RDPuk+8Pyo0="; + hash = "sha256-LeW0CHYBaib81AqftYpW38FFR3P7q7OJE2NmrK9oi9Q="; fetchSubmodules = true; }; - cargoHash = "sha256-dcew0BCU1NqADquJ08MWLskrNox8LP/fA2QIC6LqETQ="; + cargoHash = "sha256-W1m7W7LepgZ3WPjmZ7qXlu3WnvZkpGO35sHryOFqhfk="; buildAndTestSubdir = "worker-build"; From 297e91481fdab653ba04f0914dcb9b7e6243927e Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Wed, 21 Jan 2026 22:46:31 +0100 Subject: [PATCH 22/36] python3Packages.agentic-thread-hunting-framework: 0.2.2 -> 0.4.0 --- .../agentic-threat-hunting-framework/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix b/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix index c9b661eee919..a123ba6428ff 100644 --- a/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix +++ b/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix @@ -5,23 +5,25 @@ setuptools, click, jinja2, + python-dotenv, pyyaml, rich, pytest-cov-stub, pytestCheckHook, scikit-learn, + requests, }: buildPythonPackage rec { pname = "agentic-threat-hunting-framework"; - version = "0.2.2"; + version = "0.4.0"; pyproject = true; src = fetchFromGitHub { owner = "Nebulock-Inc"; repo = "agentic-threat-hunting-framework"; tag = "v${version}"; - hash = "sha256-rt7WmBCbSqoZBpwGi7dzh8QDw8Iby3LSdavnCot1Hr0="; + hash = "sha256-WU58wQGlUgbOqcIE7EKtABNvTKtvTiRO9iJLW4gXDlI="; }; build-system = [ setuptools ]; @@ -29,6 +31,7 @@ buildPythonPackage rec { dependencies = [ click jinja2 + python-dotenv pyyaml rich ]; @@ -40,6 +43,7 @@ buildPythonPackage rec { nativeCheckInputs = [ pytest-cov-stub pytestCheckHook + requests ]; pythonImportsCheck = [ "athf" ]; From c952ced000e833370ed7730c03b41dee10188988 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Wed, 21 Jan 2026 22:47:02 +0100 Subject: [PATCH 23/36] python3Packages.agentic-thread-hunting-framework: use finalAttrs --- .../agentic-threat-hunting-framework/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix b/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix index a123ba6428ff..cbce1c8e2635 100644 --- a/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix +++ b/pkgs/development/python-modules/agentic-threat-hunting-framework/default.nix @@ -14,7 +14,7 @@ requests, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "agentic-threat-hunting-framework"; version = "0.4.0"; pyproject = true; @@ -22,7 +22,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "Nebulock-Inc"; repo = "agentic-threat-hunting-framework"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-WU58wQGlUgbOqcIE7EKtABNvTKtvTiRO9iJLW4gXDlI="; }; @@ -51,8 +51,8 @@ buildPythonPackage rec { meta = { description = "Framework for agentic threat hunting"; homepage = "https://github.com/Nebulock-Inc/agentic-threat-hunting-framework"; - changelog = "https://github.com/Nebulock-Inc/agentic-threat-hunting-framework/releases/tag/${src.tag}"; + changelog = "https://github.com/Nebulock-Inc/agentic-threat-hunting-framework/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; }; -} +}) From 63594d4abe8a6d34c99155e3804cec0d4cfcf765 Mon Sep 17 00:00:00 2001 From: AiroPi <47398145+AiroPi@users.noreply.github.com> Date: Wed, 21 Jan 2026 15:22:46 +0100 Subject: [PATCH 24/36] openrgb: add autoAddDriverRunpath to nativeBuildInputs --- pkgs/by-name/op/openrgb/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/op/openrgb/package.nix b/pkgs/by-name/op/openrgb/package.nix index a014e40cf1f7..d4f91908405a 100644 --- a/pkgs/by-name/op/openrgb/package.nix +++ b/pkgs/by-name/op/openrgb/package.nix @@ -11,6 +11,7 @@ mbedtls, symlinkJoin, qt6Packages, + autoAddDriverRunpath, }: stdenv.mkDerivation (finalAttrs: { @@ -35,6 +36,7 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ pkg-config + autoAddDriverRunpath ] ++ (with qt6Packages; [ qmake From b3ea79946e3781b978c27b0c1b9aafb19ab2e604 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 23 Nov 2025 13:06:45 -0800 Subject: [PATCH 25/36] corrosion: 0.5.2 -> 0.6.1 Diff: https://github.com/corrosion-rs/corrosion/compare/v0.5.2...v0.6.1 Changelog: https://github.com/corrosion-rs/corrosion/blob/v0.6.1/RELEASES.md --- pkgs/by-name/co/corrosion/package.nix | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/co/corrosion/package.nix b/pkgs/by-name/co/corrosion/package.nix index cd1250ce1ad0..ab018ed8f613 100644 --- a/pkgs/by-name/co/corrosion/package.nix +++ b/pkgs/by-name/co/corrosion/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "corrosion"; - version = "0.5.2"; + version = "0.6.1"; src = fetchFromGitHub { owner = "corrosion-rs"; repo = "corrosion"; rev = "v${version}"; - hash = "sha256-sO2U0llrDOWYYjnfoRZE+/ofg3kb+ajFmqvaweRvT7c="; + hash = "sha256-ppuDNObfKhneD9AlnPAvyCRHKW3BidXKglD1j/LE9CM="; }; buildInputs = lib.optional stdenv.hostPlatform.isDarwin libiconv; @@ -32,12 +32,22 @@ stdenv.mkDerivation rec { checkPhase = let excludedTests = [ - "cbindgen_rust2cpp_build" - "cbindgen_rust2cpp_run_cpp-exe" + "cbindgen_install" + "cbindgen_manual_build" + "cbindgen_manual_run_cpp-exe" + "cbindgen_rust2cpp_auto_build" + "cbindgen_rust2cpp_auto_run_cpp-exe" + "config_discovery_build" + "config_discovery_run_cargo_clean" + "config_discovery_run_config_discovery" + "custom_target_build" + "custom_target_run_rust-bin" + "custom_target_run_test-exe" "hostbuild_build" "hostbuild_run_rust-host-program" - "parse_target_triple_build" - "rustup_proxy_build" + "install_lib_build" + "install_lib_run_main-shared" + "install_lib_run_main-static" ]; excludedTestsRegex = lib.concatStringsSep "|" excludedTests; in From d2090372e15f1370da1b3af0f59ca3a7c6af5aa4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 21 Jan 2026 23:51:58 +0000 Subject: [PATCH 26/36] python3Packages.google-cloud-org-policy: 1.15.0 -> 1.16.0 --- .../python-modules/google-cloud-org-policy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/google-cloud-org-policy/default.nix b/pkgs/development/python-modules/google-cloud-org-policy/default.nix index 6e98b77e95aa..a2d524cd90c6 100644 --- a/pkgs/development/python-modules/google-cloud-org-policy/default.nix +++ b/pkgs/development/python-modules/google-cloud-org-policy/default.nix @@ -12,13 +12,13 @@ buildPythonPackage rec { pname = "google-cloud-org-policy"; - version = "1.15.0"; + version = "1.16.0"; pyproject = true; src = fetchPypi { pname = "google_cloud_org_policy"; inherit version; - hash = "sha256-Jx0WoQ51NH6s5g0CzeMisrG2E7zJmRcQng6/KkECJTo="; + hash = "sha256-xyFHEn2I2YCa+HOLKr40gG6sUpw83FeqkVzAihuEKhM="; }; build-system = [ setuptools ]; From b3c3723c50c9c2c265b132d774a732d2617448c3 Mon Sep 17 00:00:00 2001 From: networkException Date: Thu, 22 Jan 2026 01:13:06 +0100 Subject: [PATCH 27/36] ungoogled-chromium: 144.0.7559.59-1 -> 144.0.7559.96-1 https://chromereleases.googleblog.com/2026/01/stable-channel-update-for-desktop_20.html This update includes 1 security fix. CVEs: CVE-2026-1220 --- .../networking/browsers/chromium/info.json | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/info.json b/pkgs/applications/networking/browsers/chromium/info.json index 91738c9f925a..a03c9a07b638 100644 --- a/pkgs/applications/networking/browsers/chromium/info.json +++ b/pkgs/applications/networking/browsers/chromium/info.json @@ -813,7 +813,7 @@ } }, "ungoogled-chromium": { - "version": "144.0.7559.59", + "version": "144.0.7559.96", "deps": { "depot_tools": { "rev": "2e88a3f08bd8c4a0014eae82729beca935f7f188", @@ -825,16 +825,16 @@ "hash": "sha256-04h38X/hqWwMiAOVsVu4OUrt8N+S7yS/JXc5yvRGo1I=" }, "ungoogled-patches": { - "rev": "144.0.7559.59-1", - "hash": "sha256-u4jg04k/HilI5i8eWS2b+MDvi9RYD1UP8KNNKNWZcfQ=" + "rev": "144.0.7559.96-1", + "hash": "sha256-gbEKKGGi6FBhRoCEerSdJJtn5vXaFo9G74lYHDsz0Xs=" }, "npmHash": "sha256-13sgV/5BD7QvDLBAEmoLN5vongw+S5v5znvZcctxhWc=" }, "DEPS": { "src": { "url": "https://chromium.googlesource.com/chromium/src.git", - "rev": "cd1d73dd77daadf4581dc29ca73482fc241e079d", - "hash": "sha256-K/dmiy5u+XJIpS6AOTaXDLVYp5qAtfUbfSbGCpt9Cv8=", + "rev": "d7b80622cfab91c265741194e7942eefd2d21811", + "hash": "sha256-Cz3iDS0raJHRh+byrs7GYp6sck54mJq7yzsjLUWDWqA=", "recompress": true }, "src/third_party/clang-format/script": { @@ -944,8 +944,8 @@ }, "src/third_party/dawn": { "url": "https://dawn.googlesource.com/dawn.git", - "rev": "a8d1e554a9bd35b0418ba7fd6b0bc005250a7703", - "hash": "sha256-GJuT3rqNxvKkRTMvoMi8/QYda0y0RTkZLhb5v9QkwGA=" + "rev": "9e0e116de6735ab113349675d31a23c121254fe0", + "hash": "sha256-MsUmRx5fQYWbkPJ/JvaoT//qjPYy5xxZXIa3t5LDxSY=" }, "src/third_party/dawn/third_party/glfw": { "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw", @@ -1069,8 +1069,8 @@ }, "src/third_party/devtools-frontend/src": { "url": "https://chromium.googlesource.com/devtools/devtools-frontend", - "rev": "d5efa4236f8676254c9f39ccfef18bd633de5fd3", - "hash": "sha256-BmwsvTjgYQayFnyT9EfFzpCfbgdTt9xZlsUba0uJelg=" + "rev": "a3064782146fc247c488d44c1ad3496b29d55ec4", + "hash": "sha256-vLkWH/EiDHxl/dz4soKybQF1hgud/7MlnDhVPicYJGY=" }, "src/third_party/dom_distiller_js/dist": { "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git", @@ -1619,8 +1619,8 @@ }, "src/v8": { "url": "https://chromium.googlesource.com/v8/v8.git", - "rev": "ad25f9ae50a53bee50f459bfee25fb1e6f64adc3", - "hash": "sha256-vyOtnPA3tAeorNOGTDuAnwJ/UtpjeO8z+RSjx9RIFFc=" + "rev": "6c2c296f23a5487ccb2536cf7c90d01f35d03077", + "hash": "sha256-gBzwGvl/tqj4Z6acdLN326I80kBLEk+Nn8oN6D193o4=" } } } From 79f6bf1d2d3a764dcd2051bac65deb3d3d529add Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Wed, 21 Jan 2026 22:28:46 +0000 Subject: [PATCH 28/36] actions/checkout: manually fetch ci/pinned.json patch In a shallow clone, `git fetch` may fail to apply thin packs due to missing base objects. We typically don't notice this with first-parent commits and prospective merge commits, but it seems fairly common with arbitrary PR-branch commits. In this instance we don't need the full commit data, we only need to apply its diff as a patch. So fetch the diff from GitHub's API and apply using `git apply`. This partially reverts commit 4787f35ede84f01e57d649ca694070516db8032e --- .github/actions/checkout/action.yml | 44 ++++++++++++++++++----------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/.github/actions/checkout/action.yml b/.github/actions/checkout/action.yml index b70749564c01..128398e5e02f 100644 --- a/.github/actions/checkout/action.yml +++ b/.github/actions/checkout/action.yml @@ -20,6 +20,7 @@ runs: PIN_BUMP_SHA: ${{ inputs.untrusted-pin-bump }} with: script: | + const { rm, writeFile } = require('node:fs/promises') const { spawn } = require('node:child_process') const { join } = require('node:path') @@ -55,10 +56,19 @@ runs: return pinned.pins.nixpkgs.revision } - const pin_bump_sha = process.env.PIN_BUMP_SHA + // Getting the pin-bump diff via the API avoids issues with `git fetch` + // thin-packs not having enough base objects to be applied locally. + // Returns a unified diff suitable for `git apply`. + async function getPinBumpDiff(ref) { + const { data } = await github.rest.repos.getCommit({ + mediaType: { format: 'diff' }, + ...context.repo, + ref, + }) + return data + } - // When dealing with a pin bump commit, we need `--depth=2` to view & apply its diff - const depth = pin_bump_sha ? 2 : 1 + const pin_bump_sha = process.env.PIN_BUMP_SHA const commits = [ { @@ -76,17 +86,14 @@ runs: { sha: await getPinnedSha(process.env.TARGET_SHA), path: 'trusted-pinned' - }, - { - sha: pin_bump_sha } ].filter(({ sha }) => Boolean(sha)) - console.log('Fetching the following commits:', commits) + console.log('Checking out the following commits:', commits) // Fetching all commits at once is much faster than doing multiple checkouts. // This would fail without --refetch, because the we had a partial clone before, but changed it above. - await run('git', 'fetch', `--depth=${depth}`, '--refetch', 'origin', ...(commits.map(({ sha }) => sha))) + await run('git', 'fetch', '--depth=1', '--refetch', 'origin', ...(commits.map(({ sha }) => sha))) // Checking out onto tmpfs takes 1s and is faster by at least factor 10x. await run('mkdir', 'nixpkgs') @@ -101,20 +108,21 @@ runs: // Create all worktrees in parallel. await Promise.all( - commits - .filter(({ path }) => Boolean(path)) - .map(async ({ sha, path }) => { - await run('git', 'worktree', 'add', join('nixpkgs', path), sha, '--no-checkout') - await run('git', '-C', join('nixpkgs', path), 'sparse-checkout', 'disable') - await run('git', '-C', join('nixpkgs', path), 'checkout', '--progress') - }) + commits.map(async ({ sha, path }) => { + await run('git', 'worktree', 'add', join('nixpkgs', path), sha, '--no-checkout') + await run('git', '-C', join('nixpkgs', path), 'sparse-checkout', 'disable') + await run('git', '-C', join('nixpkgs', path), 'checkout', '--progress') + }) ) // Apply pin bump to untrusted worktree if (pin_bump_sha) { - console.log('Applying untrusted ci/pinned.json bump:', pin_bump_sha) + console.log('Fetching ci/pinned.json bump commit:', pin_bump_sha) + await writeFile('pin-bump.patch', await getPinBumpDiff(pin_bump_sha)) + + console.log('Applying untrusted ci/pinned.json bump to ./nixpkgs/untrusted') try { - await run('git', '-C', join('nixpkgs', 'untrusted'), 'cherry-pick', '--no-commit', pin_bump_sha) + await run('git', '-C', join('nixpkgs', 'untrusted'), 'apply', '--3way', join('..', '..', 'pin-bump.patch')) } catch { core.setFailed([ `Failed to apply ci/pinned.json bump commit ${pin_bump_sha}.`, @@ -122,5 +130,7 @@ runs: `Please rebase the PR or ensure the pin bump is standalone.` ].join(' ')) return + } finally { + await rm('pin-bump.patch') } } From 519fce8535b314feb83438b38ffeece1cb2c9b84 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 22 Jan 2026 01:44:35 +0100 Subject: [PATCH 29/36] python313Packages.google-cloud-org-policy: migrate to finalAttrs --- .../python-modules/google-cloud-org-policy/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/google-cloud-org-policy/default.nix b/pkgs/development/python-modules/google-cloud-org-policy/default.nix index a2d524cd90c6..359a05c07da6 100644 --- a/pkgs/development/python-modules/google-cloud-org-policy/default.nix +++ b/pkgs/development/python-modules/google-cloud-org-policy/default.nix @@ -10,14 +10,14 @@ setuptools, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "google-cloud-org-policy"; version = "1.16.0"; pyproject = true; src = fetchPypi { pname = "google_cloud_org_policy"; - inherit version; + inherit (finalAttrs) version; hash = "sha256-xyFHEn2I2YCa+HOLKr40gG6sUpw83FeqkVzAihuEKhM="; }; @@ -45,8 +45,8 @@ buildPythonPackage rec { meta = { description = "Protobufs for Google Cloud Organization Policy"; homepage = "https://github.com/googleapis/python-org-policy"; - changelog = "https://github.com/googleapis/python-org-policy/blob/v${version}/CHANGELOG.md"; + changelog = "https://github.com/googleapis/python-org-policy/blob/v${finalAttrs.version}/CHANGELOG.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ austinbutler ]; }; -} +}) From 02d4d745ca0b3fb19c606a1408534da1b43152f9 Mon Sep 17 00:00:00 2001 From: Ben Siraphob Date: Tue, 20 Jan 2026 13:41:20 -0500 Subject: [PATCH 30/36] python3Packages.readability-lxml: 0.8.4 -> 0.8.4.1 --- .../readability-lxml/default.nix | 25 ++++++++----------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/pkgs/development/python-modules/readability-lxml/default.nix b/pkgs/development/python-modules/readability-lxml/default.nix index 1d426588e4e1..e016767db614 100644 --- a/pkgs/development/python-modules/readability-lxml/default.nix +++ b/pkgs/development/python-modules/readability-lxml/default.nix @@ -1,8 +1,8 @@ { - stdenv, lib, buildPythonPackage, fetchFromGitHub, + poetry-core, pytestCheckHook, chardet, cssselect, @@ -13,37 +13,32 @@ buildPythonPackage rec { pname = "readability-lxml"; - version = "0.8.4"; - format = "setuptools"; + version = "0.8.4.1"; + pyproject = true; src = fetchFromGitHub { owner = "buriy"; repo = "python-readability"; - rev = "v${version}"; - hash = "sha256-6A4zpe3GvHHf235Ovr2RT/cJgj7bWasn96yqy73pVgY="; + rev = "${version}"; + hash = "sha256-tL0OnvCrbrpBvcy+6RJ+u/BDdra+MnVT51DSAeYxJbc="; }; - propagatedBuildInputs = [ + build-system = [ poetry-core ]; + + pythonRelaxDeps = [ "lxml" ]; + + dependencies = [ chardet cssselect lxml lxml-html-clean ]; - postPatch = '' - substituteInPlace setup.py --replace 'sys.platform == "darwin"' "False" - ''; - nativeCheckInputs = [ pytestCheckHook timeout-decorator ]; - disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [ - # Test is broken on darwin. Fix in master from https://github.com/buriy/python-readability/pull/178 - "test_many_repeated_spaces" - ]; - meta = { description = "Fast python port of arc90's readability tool"; homepage = "https://github.com/buriy/python-readability"; From cbf9173b1792790683dc19c592a298d224d12e15 Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Thu, 22 Jan 2026 01:55:56 +0000 Subject: [PATCH 31/36] github/labeler: fix auto-tag backport for .github/actions .github/actions/* does not match deeply nested files like .github/actions/checkout/action.yml Instead, we need a recursive glob like **/* --- .github/labeler-no-sync.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/labeler-no-sync.yml b/.github/labeler-no-sync.yml index 1cb675a2a57b..6bdfd28328a3 100644 --- a/.github/labeler-no-sync.yml +++ b/.github/labeler-no-sync.yml @@ -26,7 +26,7 @@ - all: - changed-files: - any-glob-to-any-file: - - .github/actions/* + - .github/actions/**/* - .github/workflows/* - .github/labeler*.yml - ci/**/*.* From d2ba58624cdec58f9965658159b41a2a8c1198ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Jan 2026 01:58:53 +0000 Subject: [PATCH 32/36] ngt: 2.5.0 -> 2.5.1 --- pkgs/by-name/ng/ngt/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ng/ngt/package.nix b/pkgs/by-name/ng/ngt/package.nix index bd4bb134f750..f892bfde284b 100644 --- a/pkgs/by-name/ng/ngt/package.nix +++ b/pkgs/by-name/ng/ngt/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "NGT"; - version = "2.5.0"; + version = "2.5.1"; src = fetchFromGitHub { owner = "yahoojapan"; repo = "NGT"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-2cCuVeg7y3butTIAQaYIgx+DPqIFEA2qqVe3exAoAY8="; + sha256 = "sha256-T+ZFmvak1ZfY7I/9QKpC7qqXLq/tBdy+KUjx/0twceg="; }; nativeBuildInputs = [ cmake ]; From 688e5f7ed01b76ee5c2d4ba192b8f8c1cf4562d2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Jan 2026 02:24:43 +0000 Subject: [PATCH 33/36] forge-mtg: 2.0.08 -> 2.0.09 --- pkgs/by-name/fo/forge-mtg/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fo/forge-mtg/package.nix b/pkgs/by-name/fo/forge-mtg/package.nix index 87e50d99a892..737261cc0e6f 100644 --- a/pkgs/by-name/fo/forge-mtg/package.nix +++ b/pkgs/by-name/fo/forge-mtg/package.nix @@ -16,13 +16,13 @@ }: let - version = "2.0.08"; + version = "2.0.09"; src = fetchFromGitHub { owner = "Card-Forge"; repo = "forge"; rev = "forge-${version}"; - hash = "sha256-BiBvHpEgvDp0u8g87LAt4/1FTc9t8FRAtSvPEedndEg="; + hash = "sha256-TRK6fUOLbI3lLdkSXvvuix0sGbpKLvMmYMx5ozViDRE="; }; # launch4j downloads and runs a native binary during the package phase. From 718f178b0430f4b9232a02d671db1a2395e227da Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Jan 2026 02:47:24 +0000 Subject: [PATCH 34/36] terraform-providers.tencentcloudstack_tencentcloud: 1.82.54 -> 1.82.57 --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 9c353c6a01e6..c0536cdd32a7 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1310,11 +1310,11 @@ "vendorHash": "sha256-omxEb+ntQuHDfS2Rmt0rj0BF0Q2T8DLhobLua2uU/0o=" }, "tencentcloudstack_tencentcloud": { - "hash": "sha256-VgmXFRmwgCkGMwcle0zop41pr+uuj4ILlNXIcHQ9n0g=", + "hash": "sha256-kXdu7rtGo4J9waREkVMWqFf4/Ki22fm6p/Nhtts/Ycs=", "homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud", "owner": "tencentcloudstack", "repo": "terraform-provider-tencentcloud", - "rev": "v1.82.54", + "rev": "v1.82.57", "spdx": "MPL-2.0", "vendorHash": null }, From 71c898d8fcdede0956410237fe7418d0e9f0a38e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Jan 2026 02:59:05 +0000 Subject: [PATCH 35/36] wvkbd: 0.18 -> 0.19 --- pkgs/by-name/wv/wvkbd/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/wv/wvkbd/package.nix b/pkgs/by-name/wv/wvkbd/package.nix index 1c6dd084f69e..f7023d52f5fe 100644 --- a/pkgs/by-name/wv/wvkbd/package.nix +++ b/pkgs/by-name/wv/wvkbd/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "wvkbd"; - version = "0.18"; + version = "0.19"; src = fetchFromGitHub { owner = "jjsullivan5196"; repo = "wvkbd"; tag = "v${version}"; - hash = "sha256-RfZbPAaf8UB4scUZ9XSL12QZ4UkYMzXqfmNt9ObOgQ0="; + hash = "sha256-oaySfijJBzD+tsaNMmXQ168un9Z0IMwN+7sxAmVr3xs="; }; nativeBuildInputs = [ From 264ca6e2c10d19fa04cfaf61b05763baacf30ece Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Jan 2026 05:00:01 +0000 Subject: [PATCH 36/36] eask-cli: 0.12.1 -> 0.12.2 --- pkgs/by-name/ea/eask-cli/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ea/eask-cli/package.nix b/pkgs/by-name/ea/eask-cli/package.nix index 97a289fa105a..eb0cde010adc 100644 --- a/pkgs/by-name/ea/eask-cli/package.nix +++ b/pkgs/by-name/ea/eask-cli/package.nix @@ -6,16 +6,16 @@ buildNpmPackage rec { pname = "eask-cli"; - version = "0.12.1"; + version = "0.12.2"; src = fetchFromGitHub { owner = "emacs-eask"; repo = "cli"; rev = version; - hash = "sha256-GUOimlbArD1GbeBPfIgcIcGKGHx+fEp6+CMYsqHB0t8="; + hash = "sha256-n2NL8B6hxQLB8xdRWzclVlqp3B4K7VxgdQ3zgFC1YyI="; }; - npmDepsHash = "sha256-69yGfQuIot0gKZIvLbMqJ0C3qxjqg3TnRDJl4qYHGrQ="; + npmDepsHash = "sha256-kHi/8kPTk9hg5NI4u0b+k9OoocHLX2rY3diXt9WMlRo="; dontBuild = true;