Merge master into staging-next

authored by

nixpkgs-ci[bot] and committed by
GitHub
e20903fa 5dcdb291

+609 -108
+41
lib/tests/misc.nix
··· 2612 2612 }; 2613 2613 expected = "c"; 2614 2614 }; 2615 + 2616 + testMergeTypesSimple = 2617 + let 2618 + mergedType = types.mergeTypes types.str types.str; 2619 + in 2620 + { 2621 + expr = mergedType.name; 2622 + expected = "str"; 2623 + }; 2624 + 2625 + testMergeTypesFail = 2626 + let 2627 + mergedType = types.mergeTypes types.str types.int; 2628 + in 2629 + { 2630 + expr = types.isType "merge-error" mergedType; 2631 + expected = true; 2632 + }; 2633 + 2634 + testMergeTypesEnum = 2635 + let 2636 + enumAB = lib.types.enum ["A" "B"]; 2637 + enumXY = lib.types.enum ["X" "Y"]; 2638 + merged = lib.types.mergeTypes enumAB enumXY; # -> enum [ "A" "B" "X" "Y" ] 2639 + in 2640 + { 2641 + expr = { 2642 + checkA = merged.check "A"; 2643 + checkB = merged.check "B"; 2644 + checkX = merged.check "X"; 2645 + checkY = merged.check "Y"; 2646 + checkC = merged.check "C"; 2647 + }; 2648 + expected = { 2649 + checkA = true; 2650 + checkB = true; 2651 + checkX = true; 2652 + checkY = true; 2653 + checkC = false; 2654 + }; 2655 + }; 2615 2656 }
+47
lib/types.nix
··· 1125 1125 addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; }; 1126 1126 1127 1127 }; 1128 + 1129 + /** 1130 + Merges two option types together. 1131 + 1132 + :::{.note} 1133 + Uses the type merge function of the first type, to merge it with the second type. 1134 + 1135 + Usually types can only be merged if they are of the same type 1136 + ::: 1137 + 1138 + # Inputs 1139 + 1140 + : `a` (option type): The first option type. 1141 + : `b` (option type): The second option type. 1142 + 1143 + # Returns 1144 + 1145 + - The merged option type. 1146 + - `{ _type = "merge-error"; error = "Cannot merge types"; }` if the types can't be merged. 1147 + 1148 + # Examples 1149 + :::{.example} 1150 + ## `lib.types.mergeTypes` usage example 1151 + ```nix 1152 + let 1153 + enumAB = lib.types.enum ["A" "B"]; 1154 + enumXY = lib.types.enum ["X" "Y"]; 1155 + # This operation could be notated as: [ A ] | [ B ] -> [ A B ] 1156 + merged = lib.types.mergeTypes enumAB enumXY; # -> enum [ "A" "B" "X" "Y" ] 1157 + in 1158 + assert merged.check "A"; # true 1159 + assert merged.check "B"; # true 1160 + assert merged.check "X"; # true 1161 + assert merged.check "Y"; # true 1162 + merged.check "C" # false 1163 + ``` 1164 + ::: 1165 + */ 1166 + mergeTypes = a: b: 1167 + assert isOptionType a && isOptionType b; 1168 + let 1169 + merged = a.typeMerge b.functor; 1170 + in 1171 + if merged == null then 1172 + setType "merge-error" { error = "Cannot merge types"; } 1173 + else 1174 + merged; 1128 1175 }; 1129 1176 1130 1177 in outer_types // outer_types.types
+1
maintainers/scripts/luarocks-packages.csv
··· 121 121 nlua,,,,,,teto 122 122 nui.nvim,,,,,,mrcjkb 123 123 nvim-cmp,https://raw.githubusercontent.com/hrsh7th/nvim-cmp/main/nvim-cmp-scm-1.rockspec,,,,, 124 + nvim-dbee,,,,,,perchun 124 125 nvim-nio,,,,,,mrcjkb 125 126 orgmode,,,,,, 126 127 papis-nvim,,,,,,GaetanLepage
+2
nixos/doc/manual/release-notes/rl-2505.section.md
··· 113 113 114 114 - [waagent](https://github.com/Azure/WALinuxAgent), the Microsoft Azure Linux Agent (waagent) manages Linux provisioning and VM interaction with the Azure Fabric Controller. Available with [services.waagent](options.html#opt-services.waagent.enable). 115 115 116 + - [nfc-nci](https://github.com/StarGate01/ifdnfc-nci), an alternative NFC stack and PC/SC driver for the NXP PN54x chipset, commonly found in Lenovo systems as NXP1001 (NPC300). Available as [hardware.nfc-nci](#opt-hardware.nfc-nci.enable). 117 + 116 118 - [duckdns](https://www.duckdns.org), free dynamic DNS. Available with [services.duckdns](options.html#opt-services.duckdns.enable) 117 119 118 120 - [nostr-rs-relay](https://git.sr.ht/~gheartsfield/nostr-rs-relay/), This is a nostr relay, written in Rust. Available as [services.nostr-rs-relay](options.html#opt-services.nostr-rs-relay.enable).
+205
nixos/modules/hardware/nfc-nci.nix
··· 1 + { 2 + config, 3 + lib, 4 + pkgs, 5 + ... 6 + }: 7 + 8 + let 9 + cfg = config.hardware.nfc-nci; 10 + 11 + # To understand these settings in more detail, refer to the upstream configuration templates 12 + # available at https://github.com/NXPNFCLinux/linux_libnfc-nci/tree/master/conf . 13 + # Settings in curly braces are NCI commands, the "NFC Controller Interface Specification" 14 + # as well as the "NFC Digital Protocol Technical Specification" can be found online. 15 + # These default settings have been specifically engineered for the Lenovo NXP1001 (NPC300) chipset. 16 + defaultSettings = { 17 + # This block will be emitted into /etc/libnfc-nci.conf 18 + nci = { 19 + # Set up general logging 20 + APPL_TRACE_LEVEL = "0x01"; 21 + PROTOCOL_TRACE_LEVEL = "0x01"; 22 + # Set up which NFC technologies are enabled (due to e.g. local regulation or patent law) 23 + HOST_LISTEN_TECH_MASK = "0x07"; 24 + POLLING_TECH_MASK = "0xEF"; 25 + P2P_LISTEN_TECH_MASK = "0xC5"; 26 + }; 27 + # This block will be emitted into /etc/libnfc-nxp-init.conf 28 + init = { 29 + # Setup logging of the individual userland library components 30 + NXPLOG_GLOBAL_LOGLEVEL = "0x01"; 31 + NXPLOG_EXTNS_LOGLEVEL = "0x01"; 32 + NXPLOG_NCIHAL_LOGLEVEL = "0x01"; 33 + NXPLOG_NCIX_LOGLEVEL = "0x01"; 34 + NXPLOG_NCIR_LOGLEVEL = "0x01"; 35 + NXPLOG_FWDNLD_LOGLEVEL = "0x00"; 36 + NXPLOG_TML_LOGLEVEL = "0x01"; 37 + # Where to find the kernel device node 38 + NXP_NFC_DEV_NODE = ''"/dev/pn544"''; 39 + # Enable the NXP proprietary features of the chip 40 + NXP_ACT_PROP_EXTN = "{2F, 02, 00}"; 41 + # Configure the NFC Forum profile: 42 + # 0xA0 0x44: POLL_PROFILE_SEL_CFG = 0x00 (Use NFC Forum profile default configuration values. Specifically, not EMVCo.) 43 + NXP_NFC_PROFILE_EXTN = '' 44 + {20, 02, 05, 01, 45 + A0, 44, 01, 00 46 + } 47 + ''; 48 + # Enable chip standby mode 49 + NXP_CORE_STANDBY = "{2F, 00, 01, 01}"; 50 + # Enable NCI packet fragmentation on the I2C bus 51 + NXP_I2C_FRAGMENTATION_ENABLED = "0x01"; 52 + }; 53 + # This block will be emitted into /etc/libnfc-nxp-pn547.conf as well as /etc/libnfc-nxp-pn548.conf 54 + # Which file is actually used is decided by the library at runtime depending on chip variant, both files are required. 55 + pn54x = { 56 + # Enable Mifare Classic reader functionality 57 + MIFARE_READER_ENABLE = "0x01"; 58 + # Configure clock source - use XTAL (hardware crystal) instead of PLL (synthetic clock) 59 + NXP_SYS_CLK_SRC_SEL = "0x01"; 60 + NXP_SYS_CLK_FREQ_SEL = "0x00"; 61 + NXP_SYS_CLOCK_TO_CFG = "0x01"; 62 + # Configure the non-propriety NCI settings in EEPROM: 63 + # 0x28: PN_NFC_DEP_SPEED = 0x00 (Data exchange: Highest Available Bit Rates) 64 + # 0x21: PI_BIT_RATE = 0x00 (Maximum allowed bit rate: 106 Kbit/s) 65 + # 0x30: LA_BIT_FRAME_SDD = 0x08 (Bit Frame SDD value to be sent in Byte 1 of SENS_RES) 66 + # 0x31: LA_PLATFORM_CONFIG = 0x03 (Platform Configuration value to be sent in Byte 2 of SENS_RES) 67 + # 0x33: LA_NFCID1 = [ 0x04 0x03 0x02 0x01 ] ("Unique" NFCID1 ID in SENS_RES) 68 + # 0x54: LF_CON_BITR_F = 0x06 (Bit rates to listen for: Both) 69 + # 0x50: LF_PROTOCOL_TYPE = 0x02 (Protocols supported in Listen Mode for NFC-F: NFC-DEP) 70 + # 0x5B: LI_BIT_RATE = 0x00 (Maximum supported bit rate: 106 Kbit/s) 71 + # 0x60: LN_WT = 0x0E (Waiting Time NFC-DEP WT_MAX default for Initiator) 72 + # 0x80: RF_FIELD_INFO = 0x01 (Chip is allowed to emit RF Field Information Notifications) 73 + # 0x81: RF_NFCEE_ACTION = 0x01 (Chip should send trigger notification for the default set of NFCEE actions) 74 + # 0x82: NFCDEP_OP = 0x0E (NFC-DEP protocol behavior: Default flags, but also enable RTOX requests) 75 + # 0x18: PF_BIT_RATE = 0x01 (NFC-F discovery polling initial bit rate: 106 Kbit/s) 76 + NXP_CORE_CONF = '' 77 + {20, 02, 2B, 0D, 78 + 28, 01, 00, 79 + 21, 01, 00, 80 + 30, 01, 08, 81 + 31, 01, 03, 82 + 33, 04, 04, 03, 02, 01, 83 + 54, 01, 06, 84 + 50, 01, 02, 85 + 5B, 01, 00, 86 + 60, 01, 0E, 87 + 80, 01, 01, 88 + 81, 01, 01, 89 + 82, 01, 0E, 90 + 18, 01, 01 91 + } 92 + ''; 93 + # Configure the proprietary NXP extension to the NCI standard in EEPROM: 94 + # 0xA0 0x5E: JEWEL_RID_CFG = 0x01 (Enable sending RID to T1T on RF) 95 + # 0xA0 0x40: TAG_DETECTOR_CFG = 0x00 (Tag detector: Disable both AGC based detection and trace mode) 96 + # 0xA0 0x43: TAG_DETECTOR_FALLBACK_CNT_CFG = 0x00 (Tag detector: Disable hybrid mode, only use LPCD to initiate polling) 97 + # 0xA0 0x0F: DH_EEPROM_AREA_1 = [ 32 bytes of opaque Lenovo data ] (Custom configuration for the Lenovo customized chip firmware) 98 + # See also https://github.com/nfc-tools/libnfc/issues/455#issuecomment-2221979571 99 + NXP_CORE_CONF_EXTN = '' 100 + {20, 02, 30, 04, 101 + A0, 5E, 01, 01, 102 + A0, 40, 01, 00, 103 + A0, 43, 01, 00, 104 + A0, 0F, 20, 105 + 00, 03, 1D, 01, 03, 00, 02, 00, 106 + 01, 00, 01, 00, 00, 00, 00, 00, 107 + 00, 00, 00, 00, 00, 00, 00, 00, 108 + 00, 00, 00, 00, 00, 00, 00, 00 109 + } 110 + ''; 111 + # Firmware-specific protocol configuration parameters (one byte per protocol) 112 + NXP_NFC_PROPRIETARY_CFG = "{05:FF:FF:06:81:80:70:FF:FF}"; 113 + # Configure power supply of chip, use Lenovo driver configuration, which deviates a bit from the spec: 114 + # 0xA0 0x0E: PMU_CFG = [ 0x16, 0x09, 0x00 ] (VBAT1 connected to 5V, TVDD monitoring: 3.6V, TxLDO Voltage in reader and card mode: 3.3V) 115 + NXP_EXT_TVDD_CFG = "0x01"; 116 + NXP_EXT_TVDD_CFG_1 = '' 117 + {20, 02, 07, 01, 118 + A0, 0E, 03, 16, 09, 00 119 + } 120 + ''; 121 + # Use the default for NFA_EE_MAX_EE_SUPPORTED stack size (concerns HCI) 122 + NXP_NFC_MAX_EE_SUPPORTED = "0x00"; 123 + }; 124 + }; 125 + 126 + generateSettings = 127 + cfgName: 128 + let 129 + toKeyValueLines = 130 + obj: builtins.concatStringsSep "\n" (map (key: "${key}=${obj.${key}}") (builtins.attrNames obj)); 131 + in 132 + toKeyValueLines (defaultSettings.${cfgName} // (cfg.settings.${cfgName} or { })); 133 + in 134 + { 135 + options.hardware.nfc-nci = { 136 + enable = lib.mkEnableOption "PN5xx kernel module with udev rules, libnfc-nci userland, and optional ifdnfc-nci PC/SC driver"; 137 + 138 + settings = lib.mkOption { 139 + default = defaultSettings; 140 + description = '' 141 + Configuration to be written to the libncf-nci configuration files. 142 + To understand the configuration format, refer to https://github.com/NXPNFCLinux/linux_libnfc-nci/tree/master/conf. 143 + ''; 144 + type = lib.types.attrs; 145 + }; 146 + 147 + enableIFD = lib.mkOption { 148 + type = lib.types.bool; 149 + default = true; 150 + description = '' 151 + Register ifdnfc-nci as a serial reader with pcscd. 152 + ''; 153 + }; 154 + }; 155 + 156 + config = lib.mkIf cfg.enable { 157 + environment.systemPackages = 158 + [ 159 + pkgs.libnfc-nci 160 + ] 161 + ++ lib.optionals cfg.enableIFD [ 162 + pkgs.ifdnfc-nci 163 + ]; 164 + 165 + environment.etc = { 166 + "libnfc-nci.conf".text = generateSettings "nci"; 167 + "libnfc-nxp-init.conf".text = generateSettings "init"; 168 + "libnfc-nxp-pn547.conf".text = generateSettings "pn54x"; 169 + "libnfc-nxp-pn548.conf".text = generateSettings "pn54x"; 170 + }; 171 + 172 + services.udev.packages = [ 173 + config.boot.kernelPackages.nxp-pn5xx 174 + ]; 175 + 176 + boot.blacklistedKernelModules = [ 177 + "nxp_nci_i2c" 178 + "nxp_nci" 179 + ]; 180 + 181 + boot.extraModulePackages = [ 182 + config.boot.kernelPackages.nxp-pn5xx 183 + ]; 184 + 185 + boot.kernelModules = [ 186 + "nxp-pn5xx" 187 + ]; 188 + 189 + services.pcscd.readerConfigs = lib.mkIf cfg.enableIFD [ 190 + '' 191 + FRIENDLYNAME "NFC NCI" 192 + LIBPATH ${pkgs.ifdnfc-nci}/lib/libifdnfc-nci.so 193 + CHANNELID 0 194 + '' 195 + ]; 196 + 197 + # NFC chip looses power when system goes to sleep / hibernate, 198 + # and needs to be re-initialized upon wakeup 199 + powerManagement.resumeCommands = lib.mkIf cfg.enableIFD '' 200 + systemctl restart pcscd.service 201 + ''; 202 + }; 203 + 204 + meta.maintainers = with lib.maintainers; [ stargate01 ]; 205 + }
+1
nixos/modules/module-list.nix
··· 85 85 ./hardware/network/eg25-manager.nix 86 86 ./hardware/network/intel-2200bg.nix 87 87 ./hardware/new-lg4ff.nix 88 + ./hardware/nfc-nci.nix 88 89 ./hardware/nitrokey.nix 89 90 ./hardware/onlykey/default.nix 90 91 ./hardware/openrazer.nix
+39 -15
nixos/modules/services/hardware/pcscd.nix
··· 1 - { config, lib, pkgs, ... }: 1 + { 2 + config, 3 + lib, 4 + pkgs, 5 + ... 6 + }: 2 7 let 3 8 cfg = config.services.pcscd; 4 - cfgFile = pkgs.writeText "reader.conf" config.services.pcscd.readerConfig; 9 + cfgFile = pkgs.writeText "reader.conf" ( 10 + builtins.concatStringsSep "\n\n" config.services.pcscd.readerConfigs 11 + ); 5 12 6 - package = if config.security.polkit.enable 7 - then pkgs.pcscliteWithPolkit 8 - else pkgs.pcsclite; 13 + package = if config.security.polkit.enable then pkgs.pcscliteWithPolkit else pkgs.pcsclite; 9 14 10 15 pluginEnv = pkgs.buildEnv { 11 16 name = "pcscd-plugins"; ··· 14 19 15 20 in 16 21 { 22 + imports = [ 23 + (lib.mkChangedOptionModule 24 + [ "services" "pcscd" "readerConfig" ] 25 + [ "services" "pcscd" "readerConfigs" ] 26 + ( 27 + config: 28 + let 29 + readerConfig = lib.getAttrFromPath [ "services" "pcscd" "readerConfig" ] config; 30 + in 31 + [ readerConfig ] 32 + ) 33 + ) 34 + ]; 35 + 17 36 options.services.pcscd = { 18 37 enable = lib.mkEnableOption "PCSC-Lite daemon, to access smart cards using SCard API (PC/SC)"; 19 38 ··· 24 43 description = "Plugin packages to be used for PCSC-Lite."; 25 44 }; 26 45 27 - readerConfig = lib.mkOption { 28 - type = lib.types.lines; 29 - default = ""; 30 - example = '' 31 - FRIENDLYNAME "Some serial reader" 32 - DEVICENAME /dev/ttyS0 33 - LIBPATH /path/to/serial_reader.so 34 - CHANNELID 1 35 - ''; 46 + readerConfigs = lib.mkOption { 47 + type = lib.types.listOf lib.types.lines; 48 + default = [ ]; 49 + example = [ 50 + '' 51 + FRIENDLYNAME "Some serial reader" 52 + DEVICENAME /dev/ttyS0 53 + LIBPATH /path/to/serial_reader.so 54 + CHANNELID 1 55 + '' 56 + ]; 36 57 description = '' 37 58 Configuration for devices that aren't hotpluggable. 38 59 ··· 68 89 # around it, we force the path to the cfgFile. 69 90 # 70 91 # https://github.com/NixOS/nixpkgs/issues/121088 71 - serviceConfig.ExecStart = [ "" "${lib.getExe package} -f -x -c ${cfgFile} ${lib.escapeShellArgs cfg.extraArgs}" ]; 92 + serviceConfig.ExecStart = [ 93 + "" 94 + "${lib.getExe package} -f -x -c ${cfgFile} ${lib.escapeShellArgs cfg.extraArgs}" 95 + ]; 72 96 }; 73 97 }; 74 98 }
+4 -5
nixos/tests/vaultwarden.nix
··· 69 69 70 70 driver.find_element(By.XPATH, "//button[contains(., 'Continue')]").click() 71 71 72 - driver.find_element(By.CSS_SELECTOR, 'input#login_input_master-password').send_keys( 72 + driver.find_element(By.XPATH, '//input[@type="password"]').send_keys( 73 73 '${userPassword}' 74 74 ) 75 - driver.find_element(By.XPATH, "//button[contains(., 'Log in')]").click() 75 + driver.find_element(By.XPATH, "//button[contains(., 'Log in with master password')]").click() 76 76 77 - wait.until(EC.title_contains("Vaults")) 78 - 79 - driver.find_element(By.XPATH, "//button[contains(., 'New item')]").click() 77 + wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, 'button#newItemDropdown'))).click() 78 + driver.find_element(By.XPATH, "//button[contains(., 'Item')]").click() 80 79 81 80 driver.find_element(By.CSS_SELECTOR, 'input#name').send_keys( 82 81 'secrets'
+12
pkgs/applications/editors/neovim/tests/default.nix
··· 103 103 ${pkgs.perl}/bin/perl -pe "s|\Q$NIX_STORE\E/[a-z0-9]{32}-|$NIX_STORE/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-|g" < "$luarc" > "$luarcGeneric" 104 104 '' + buildCommand); 105 105 106 + nvim_with_rocks_nvim = ( 107 + wrapNeovimUnstable neovim-unwrapped { 108 + extraName = "with-rocks-nvim"; 109 + wrapperArgs = "--set NVIM_APPNAME test-rocks-nvim"; 110 + plugins = [ vimPlugins.rocks-nvim ]; 111 + } 112 + ); 106 113 in 107 114 pkgs.recurseIntoAttrs (rec { 108 115 ··· 365 372 can_require_transitive_deps = 366 373 runTest nvim-with-luasnip '' 367 374 ${nvim-with-luasnip}/bin/nvim -i NONE --cmd "lua require'jsregexp'" -e +quitall! 375 + ''; 376 + 377 + inherit nvim_with_rocks_nvim; 378 + rocks_install_plenary = runTest nvim_with_rocks_nvim '' 379 + ${nvim_with_rocks_nvim}/bin/nvim -V3log.txt -i NONE +'Rocks install plenary.nvim' +quit! -e 368 380 ''; 369 381 370 382 inherit (vimPlugins) corePlugins;
+18 -35
pkgs/applications/editors/vim/plugins/overrides.nix
··· 2403 2403 passthru.python3Dependencies = [ python3.pkgs.mwclient ]; 2404 2404 }; 2405 2405 2406 - nvim-dbee = super.nvim-dbee.overrideAttrs ( 2407 - oa: 2408 - let 2409 - dbee-go = buildGoModule { 2410 - name = "nvim-dbee"; 2411 - src = "${oa.src}/dbee"; 2412 - vendorHash = "sha256-U/3WZJ/+Bm0ghjeNUILsnlZnjIwk3ySaX3Rd4L9Z62A="; 2413 - buildInputs = [ 2414 - arrow-cpp 2415 - duckdb 2416 - ]; 2417 - }; 2418 - in 2419 - { 2420 - dependencies = [ self.nui-nvim ]; 2421 - 2422 - # nvim-dbee looks for the go binary in paths returned bu M.dir() and M.bin() defined in lua/dbee/install/init.lua 2423 - postPatch = '' 2424 - substituteInPlace lua/dbee/install/init.lua \ 2425 - --replace-fail 'return vim.fn.stdpath("data") .. "/dbee/bin"' 'return "${dbee-go}/bin"' 2426 - ''; 2427 - 2428 - preFixup = '' 2429 - mkdir $target/bin 2430 - ln -s ${dbee-go}/bin/dbee $target/bin/dbee 2431 - ''; 2432 - 2433 - meta.platforms = lib.platforms.linux; 2434 - } 2435 - ); 2436 - 2437 - nvim-impairative = super.nvim-impairative.overrideAttrs { 2438 - }; 2439 - 2440 2406 nvim-navic = super.nvim-navic.overrideAttrs { 2441 2407 dependencies = [ self.nvim-lspconfig ]; 2442 2408 }; ··· 4047 4013 "neotest" 4048 4014 "nui-nvim" 4049 4015 "nvim-cmp" 4016 + "nvim-dbee" 4050 4017 "nvim-nio" 4051 4018 "orgmode" 4052 4019 "papis-nvim" 4053 4020 "rest-nvim" 4054 4021 "rocks-config-nvim" 4055 - "rocks-nvim" 4056 4022 "rtp-nvim" 4057 4023 "telescope-manix" 4058 4024 "telescope-nvim" ··· 4065 4031 in 4066 4032 lib.genAttrs luarocksPackageNames toVimPackage 4067 4033 ) 4034 + // { 4035 + 4036 + rocks-nvim = 4037 + (neovimUtils.buildNeovimPlugin { 4038 + luaAttr = luaPackages.rocks-nvim; 4039 + }).overrideAttrs 4040 + (oa: { 4041 + passthru = oa.passthru // { 4042 + initLua = '' 4043 + vim.g.rocks_nvim = { 4044 + luarocks_binary = "${neovim-unwrapped.lua.pkgs.luarocks_bootstrap}/bin/luarocks" 4045 + } 4046 + ''; 4047 + }; 4048 + 4049 + }); 4050 + }
+16 -7
pkgs/applications/misc/electrum/default.nix
··· 85 85 86 86 postPatch = 87 87 '' 88 + # fix compatibility with recent aiorpcx version 89 + # (remove as soon as https://github.com/spesmilo/electrum/commit/171aa5ee5ad4e25b9da10f757d9d398e905b4945 is included in source tarball) 90 + substituteInPlace ./contrib/requirements/requirements.txt \ 91 + --replace-fail "aiorpcx>=0.22.0,<0.24" "aiorpcx>=0.22.0,<0.25" 92 + substituteInPlace ./run_electrum \ 93 + --replace-fail "if not ((0, 22, 0) <= aiorpcx._version < (0, 24)):" "if not ((0, 22, 0) <= aiorpcx._version < (0, 25)):" \ 94 + --replace-fail "aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.24" "aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.25" 95 + substituteInPlace ./electrum/electrum \ 96 + --replace-fail "if not ((0, 22, 0) <= aiorpcx._version < (0, 24)):" "if not ((0, 22, 0) <= aiorpcx._version < (0, 25)):" \ 97 + --replace-fail "aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.24" "aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.25" 98 + 88 99 # make compatible with protobuf4 by easing dependencies ... 89 100 substituteInPlace ./contrib/requirements/requirements.txt \ 90 - --replace "protobuf>=3.20,<4" "protobuf>=3.20" 101 + --replace-fail "protobuf>=3.20,<4" "protobuf>=3.20" 91 102 # ... and regenerating the paymentrequest_pb2.py file 92 103 protoc --python_out=. electrum/paymentrequest.proto 93 104 94 105 substituteInPlace ./electrum/ecc_fast.py \ 95 - --replace ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary} 106 + --replace-fail ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary} 96 107 '' 97 108 + ( 98 109 if enableQt then 99 110 '' 100 111 substituteInPlace ./electrum/qrscanner.py \ 101 - --replace ${libzbar_name} ${zbar.lib}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary} 112 + --replace-fail ${libzbar_name} ${zbar.lib}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary} 102 113 '' 103 114 else 104 115 '' ··· 108 119 109 120 postInstall = lib.optionalString stdenv.hostPlatform.isLinux '' 110 121 substituteInPlace $out/share/applications/electrum.desktop \ 111 - --replace 'Exec=sh -c "PATH=\"\\$HOME/.local/bin:\\$PATH\"; electrum %u"' \ 112 - "Exec=$out/bin/electrum %u" \ 113 - --replace 'Exec=sh -c "PATH=\"\\$HOME/.local/bin:\\$PATH\"; electrum --testnet %u"' \ 114 - "Exec=$out/bin/electrum --testnet %u" 122 + --replace-fail "Exec=electrum %u" "Exec=$out/bin/electrum %u" \ 123 + --replace-fail "Exec=electrum --testnet %u" "Exec=$out/bin/electrum --testnet %u" 115 124 ''; 116 125 117 126 postFixup = lib.optionalString enableQt ''
+2 -2
pkgs/by-name/am/amdvlk/package.nix
··· 27 27 in 28 28 stdenv.mkDerivation (finalAttrs: { 29 29 pname = "amdvlk"; 30 - version = "2024.Q4.3"; 30 + version = "2025.Q1.1"; 31 31 32 32 src = fetchRepoProject { 33 33 name = "amdvlk-src"; 34 34 manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git"; 35 35 rev = "refs/tags/v-${finalAttrs.version}"; 36 - hash = "sha256-PQxTRCSOk8E6y7pXyqxt1QKtRsqnrj/9dQZ8NjnUbhA="; 36 + hash = "sha256-snwNyi/8voptLhZkXLK0QNh7pKo4SFx1iQojNzVr1Ms="; 37 37 }; 38 38 39 39 buildInputs =
+9 -5
pkgs/by-name/au/autobrr/package.nix
··· 1 1 { 2 2 lib, 3 + stdenv, 3 4 buildGoModule, 4 5 fetchFromGitHub, 5 6 stdenvNoCC, ··· 12 13 13 14 let 14 15 pname = "autobrr"; 15 - version = "1.57.0"; 16 + version = "1.58.0"; 16 17 src = fetchFromGitHub { 17 18 owner = "autobrr"; 18 19 repo = "autobrr"; 19 20 tag = "v${version}"; 20 - hash = "sha256-RVkeSrL3ZfEz+oCICi8JFJ6AaOBBumi5mnnQYE5Gjt8="; 21 + hash = "sha256-NH3BVD/wZH5L6x6GcXZrynKFiirLRC6u434EBYQs4qQ="; 21 22 }; 22 23 23 24 autobrr-web = stdenvNoCC.mkDerivation { ··· 39 40 src 40 41 sourceRoot 41 42 ; 42 - hash = "sha256-mABHRuZfjq9qNanfGGv+xDhs3bSufaWRecJypic8SWo="; 43 + hash = "sha256-ESMrd+2oqytC1dQDQvncoqHGAvIFlH/1sTLrUTuSyDg="; 43 44 }; 44 45 45 46 postBuild = '' ··· 59 60 src 60 61 ; 61 62 62 - vendorHash = "sha256-rCtUE2/IwR6AnXQNgeH0TQ0BL7g6vi9L128xP0PwOXc="; 63 + vendorHash = "sha256-ifi4KFectr4UC1e+VJKnAWsx0f19XN2T3Paf2ud2/To="; 63 64 64 65 preBuild = '' 65 66 cp -r ${autobrr-web}/* web/dist ··· 70 71 "-X main.commit=${src.tag}" 71 72 ]; 72 73 73 - doInstallCheck = true; 74 + # In darwin, tests try to access /etc/protocols, which is not permitted. 75 + doCheck = !stdenv.hostPlatform.isDarwin; 76 + doInstallCheck = !stdenv.hostPlatform.isDarwin; 77 + 74 78 nativeInstallCheckInputs = [ 75 79 versionCheckHook 76 80 ];
+2 -2
pkgs/by-name/er/erofs-utils/package.nix
··· 17 17 18 18 stdenv.mkDerivation (finalAttrs: { 19 19 pname = "erofs-utils"; 20 - version = "1.8.4"; 20 + version = "1.8.5"; 21 21 outputs = [ 22 22 "out" 23 23 "man" ··· 25 25 26 26 src = fetchurl { 27 27 url = "https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/snapshot/erofs-utils-${finalAttrs.version}.tar.gz"; 28 - hash = "sha256-eRWHqgdLufn6IYx2LMH2CwFeL1G8ss6R9oLwQ4VqtJQ="; 28 + hash = "sha256-zYYRJw6chv4GL2RxA8pq2p7XEORDD91ZYNUUd3kZIA0="; 29 29 }; 30 30 31 31 nativeBuildInputs = [
+2 -2
pkgs/by-name/fl/flintlock/package.nix
··· 11 11 12 12 buildGoModule rec { 13 13 pname = "flintlock"; 14 - version = "0.8.0"; 14 + version = "0.8.1"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "weaveworks"; 18 18 repo = "flintlock"; 19 19 rev = "v${version}"; 20 - sha256 = "sha256-dBwuguOSIc4+cdxfW91kdyprayYu2m2WjBg3qBnVM98="; 20 + sha256 = "sha256-Kbk94sqj0aPsVonPsiu8kbjhIOURB1kX9Lt3NURL+jk="; 21 21 }; 22 22 23 23 vendorHash = "sha256-Iv1qHEQLgw6huCA/6PKNmm+dS2yHgOvY/oy2fKjwEpY=";
+1
pkgs/by-name/h2/h2o/package.nix
··· 55 55 toastal 56 56 thoughtpolice 57 57 ]; 58 + mainProgram = "h2o"; 58 59 platforms = platforms.linux; 59 60 }; 60 61 })
+39
pkgs/by-name/if/ifdnfc-nci/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + pkg-config, 6 + cmake, 7 + pcsclite, 8 + libnfc-nci, 9 + }: 10 + 11 + stdenv.mkDerivation (finalAttrs: { 12 + pname = "ifdnfc-nci"; 13 + version = "0.2.1"; 14 + 15 + src = fetchFromGitHub { 16 + owner = "StarGate01"; 17 + repo = "ifdnfc-nci"; 18 + tag = "v${finalAttrs.version}"; 19 + sha256 = "sha256-I2MNzmaxQUh4bN3Uytf2bQRthByEaFWM7c79CKZJQZA="; 20 + }; 21 + 22 + nativeBuildInputs = [ 23 + cmake 24 + pkg-config 25 + ]; 26 + 27 + buildInputs = [ 28 + pcsclite 29 + libnfc-nci 30 + ]; 31 + 32 + meta = { 33 + description = "PC/SC IFD Handler based on linux_libnfc-nci"; 34 + homepage = "https://github.com/StarGate01/ifdnfc-nci"; 35 + license = lib.licenses.gpl3Only; 36 + platforms = lib.platforms.linux; 37 + maintainers = with lib.maintainers; [ stargate01 ]; 38 + }; 39 + })
+3 -3
pkgs/by-name/im/immich-public-proxy/package.nix
··· 8 8 }: 9 9 buildNpmPackage rec { 10 10 pname = "immich-public-proxy"; 11 - version = "1.6.3"; 11 + version = "1.7.2"; 12 12 src = fetchFromGitHub { 13 13 owner = "alangrainger"; 14 14 repo = "immich-public-proxy"; 15 15 tag = "v${version}"; 16 - hash = "sha256-nhVU3CVexXV+WCUP8E1tGvwwjy+PCTL9v3/3KI1tDus="; 16 + hash = "sha256-G08xucggEdO+iwW7m1D53nr4Rah9D/qD4xlyLwWwBq0="; 17 17 }; 18 18 19 19 sourceRoot = "${src.name}/app"; 20 20 21 - npmDepsHash = "sha256-NQgxAHNMPp2eDoiMqjqBOZ3364XjW3WtvrK/ciqg1DI="; 21 + npmDepsHash = "sha256-aXTdKGlF2mK8I+vQMd+V6JNTG49S4jJd1kTNBai6sZE="; 22 22 23 23 # patch in absolute nix store paths so the process doesn't need to cwd in $out 24 24 postPatch = ''
+2
pkgs/by-name/je/jefferson/package.nix
··· 26 26 lzallright 27 27 ]; 28 28 29 + pythonRelaxDeps = [ "cstruct" ]; 30 + 29 31 pythonImportsCheck = [ 30 32 "jefferson" 31 33 ];
+5 -5
pkgs/by-name/ku/kubernetes-controller-tools/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "controller-tools"; 9 - version = "0.17.1"; 9 + version = "0.17.2"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "kubernetes-sigs"; 13 - repo = pname; 14 - rev = "v${version}"; 15 - sha256 = "sha256-6tqUWsI8SJsBOUO9i+czilOJWlflZ8Sj/rdnZaLJeSQ="; 13 + repo = "controller-tools"; 14 + tag = "v${version}"; 15 + sha256 = "sha256-AUYduzIEWCJDskoChXmQViR5ON4YZr4MKvFys03hBkY="; 16 16 }; 17 17 18 - vendorHash = "sha256-NX4e//77G+jTL2309x6+UEmFarsNWO/n0Pex2pJ+S/s="; 18 + vendorHash = "sha256-Y7xYmD3fxAIo/NyLzBuSdbHIrduJ33SpK2I6LfOzNac="; 19 19 20 20 ldflags = [ 21 21 "-s"
+47
pkgs/by-name/li/libnfc-nci/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + autoreconfHook, 6 + pkg-config, 7 + config, 8 + debug ? config.libnfc-nci.debug or false, 9 + }: 10 + 11 + stdenv.mkDerivation (finalAttrs: { 12 + pname = "libnfc-nci"; 13 + version = "2.4.1-unstable-2024-08-05"; 14 + 15 + src = fetchFromGitHub { 16 + owner = "StarGate01"; 17 + repo = "linux_libnfc-nci"; 18 + rev = "7ce9c8aad0e37850a49b6d8dcc22ae5c783268e7"; 19 + sha256 = "sha256-iSvDiae+A2hUok426Lj5TMn3Q9G+vH1G0jajP48PehQ="; 20 + }; 21 + 22 + buildInputs = [ 23 + pkg-config 24 + autoreconfHook 25 + ]; 26 + 27 + configureFlags = 28 + [ 29 + "--enable-i2c" 30 + ] 31 + ++ lib.optionals debug [ 32 + "--enable-debug" 33 + ]; 34 + dontStrip = debug; 35 + 36 + postInstall = '' 37 + rm -rf $out/etc 38 + ''; 39 + 40 + meta = { 41 + description = "Linux NFC stack for NCI based NXP NFC Controllers"; 42 + homepage = "https://github.com/NXPNFCLinux/linux_libnfc-nci"; 43 + license = lib.licenses.asl20; 44 + maintainers = with lib.maintainers; [ stargate01 ]; 45 + platforms = lib.platforms.linux; 46 + }; 47 + })
+3 -3
pkgs/by-name/lp/lprobe/package.nix
··· 7 7 8 8 buildGoModule rec { 9 9 pname = "lprobe"; 10 - version = "0.1.4"; 10 + version = "0.1.5"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "fivexl"; 14 14 repo = "lprobe"; 15 15 tag = "v${version}"; 16 - hash = "sha256-WC0MDTyd5tRtSQ1LQsYJgV9CwJwtvnIO6tQnPrjpfcY="; 16 + hash = "sha256-1VoZIZQDEYVQg8cMacpHPRUffu+1+bAt7O3MZSi6+2A="; 17 17 }; 18 18 19 - vendorHash = "sha256-Ot9eePv/bjOZJfOjTCOJGXCaM8hoO4ZUPrpec8lT/JY="; 19 + vendorHash = "sha256-wrxIHb296YOszgK9GnCTpSHz2kSd89zT/90/CrPely8="; 20 20 21 21 buildInputs = [ 22 22 libpcap
+2 -2
pkgs/by-name/ne/nezha-theme-nazhua/package.nix
··· 12 12 13 13 stdenvNoCC.mkDerivation (finalAttrs: { 14 14 pname = "nezha-theme-nazhua"; 15 - version = "0.5.6"; 15 + version = "0.5.7"; 16 16 17 17 src = fetchFromGitHub { 18 18 owner = "hi2shark"; 19 19 repo = "nazhua"; 20 20 tag = "v${finalAttrs.version}"; 21 - hash = "sha256-HqNiXkj3GLw5MlQu2fREwUYpT35txopli9SZcFCM90w="; 21 + hash = "sha256-DkM+BV0Qw8vpSjxiHFcYUauP9SaiSDhAgKz+13tEsDI="; 22 22 }; 23 23 24 24 yarnOfflineCache = fetchYarnDeps {
+3 -3
pkgs/by-name/tr/trunk/package.nix
··· 8 8 9 9 rustPlatform.buildRustPackage rec { 10 10 pname = "trunk"; 11 - version = "0.21.5"; 11 + version = "0.21.7"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "trunk-rs"; 15 15 repo = "trunk"; 16 16 rev = "v${version}"; 17 - hash = "sha256-AHW686xPGCMLISrOLLfDR5g+2XpMJ+zfmWGn3fMfKbA="; 17 + hash = "sha256-VAAGHM2GDrvZvOTRPkxSFs6pzDQGhi6vPpprKJSZKUw="; 18 18 }; 19 19 20 20 nativeBuildInputs = [ pkg-config ]; ··· 23 23 checkFlags = [ "--skip=tools::tests::download_and_install_binaries" ]; 24 24 25 25 useFetchCargoVendor = true; 26 - cargoHash = "sha256-MkH0khm4b/xumrzwBfwq4CbBgqeL71iag9WTOoi/IOw="; 26 + cargoHash = "sha256-IiKb8MD5QdGMkdX2dbcPkW1cUJq82+uDK1Ru+/otErc="; 27 27 28 28 meta = with lib; { 29 29 homepage = "https://github.com/trunk-rs/trunk";
+10
pkgs/development/haskell-modules/configuration-nix.nix
··· 1426 1426 pkgs.nodePackages."@tailwindcss/line-clamp" 1427 1427 pkgs.nodePackages."@tailwindcss/typography" 1428 1428 ]; 1429 + # Added a shim for the `tailwindcss` CLI entry point 1430 + nativeBuildInputs = (oa.nativeBuildInputs or []) ++ [ pkgs.buildPackages.makeBinaryWrapper ]; 1431 + postInstall = (oa.postInstall or "") + '' 1432 + nodePath="" 1433 + for p in "$out" "${pkgs.nodePackages.postcss}" $plugins; do 1434 + nodePath="$nodePath''${nodePath:+:}$p/lib/node_modules" 1435 + done 1436 + makeWrapper "$out/bin/tailwindcss" "$out/bin/tailwind" --prefix NODE_PATH : "$nodePath" 1437 + unset nodePath 1438 + ''; 1429 1439 })) super.tailwind; 1430 1440 1431 1441 emanote = addBuildDepend pkgs.stork super.emanote;
+23
pkgs/development/lua-modules/generated-packages.nix
··· 2884 2884 }; 2885 2885 }) {}; 2886 2886 2887 + nvim-dbee = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nui-nvim }: 2888 + buildLuarocksPackage { 2889 + pname = "nvim-dbee"; 2890 + version = "0.1.9-1"; 2891 + knownRockspec = (fetchurl { 2892 + url = "mirror://luarocks/nvim-dbee-0.1.9-1.rockspec"; 2893 + sha256 = "1lmzy6ivnwvhzclkfbcswj2mznrpc4i8s3ivdrc78rr86i49mvpg"; 2894 + }).outPath; 2895 + src = fetchzip { 2896 + url = "https://github.com/kndndrj/nvim-dbee/archive/v0.1.9.zip"; 2897 + sha256 = "10xplksglyd8af8q1cl2lxcpn52b766g87gva9fd3l66idxsds00"; 2898 + }; 2899 + 2900 + disabled = luaOlder "5.1"; 2901 + propagatedBuildInputs = [ nui-nvim ]; 2902 + 2903 + meta = { 2904 + homepage = "https://github.com/kndndrj/nvim-dbee"; 2905 + description = "Interactive database client for neovim"; 2906 + license.fullName = "GPL-3.0"; 2907 + }; 2908 + }) {}; 2909 + 2887 2910 nvim-nio = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }: 2888 2911 buildLuarocksPackage { 2889 2912 pname = "nvim-nio";
+1
pkgs/development/ocaml-modules/janestreet/0.15.nix
··· 1276 1276 buildInputs = [ jst-config ]; 1277 1277 propagatedBuildInputs = [ textutils ]; 1278 1278 checkInputs = [ ounit ]; 1279 + doCheck = false; # Does not build with GCC 14 1279 1280 }; 1280 1281 1281 1282 shexp = janePackage {
+4
pkgs/development/ocaml-modules/janestreet/0.16.nix
··· 191 191 version = "0.16.1"; 192 192 pname = "async_ssl"; 193 193 hash = "sha256-83YKxvVb/JwBnQG4R/R1Ztik9T/hO4cbiNTfFnErpG4="; 194 + patches = fetchpatch { 195 + url = "https://raw.githubusercontent.com/ocaml/opam-source-archives/d7f046579bfc7cfe77ce12f57fd11c206e7e9f30/patches/async_ssl/no-incompatible-pointer-types-0161.patch"; 196 + hash = "sha256-NcQX9eZ97kaQCOVAuYgR8NlFD3ZrGbT/2QqCjYf9Xnw="; 197 + }; 194 198 meta.description = "Async wrappers for SSL"; 195 199 buildInputs = [ dune-configurator ]; 196 200 propagatedBuildInputs = [
+3 -3
pkgs/development/python-modules/amaranth-boards/default.nix
··· 9 9 10 10 buildPythonPackage rec { 11 11 pname = "amaranth-boards"; 12 - version = "0-unstable-2024-12-21"; 12 + version = "0-unstable-2025-02-07"; 13 13 pyproject = true; 14 14 # from `pdm show` 15 15 realVersion = ··· 22 22 src = fetchFromGitHub { 23 23 owner = "amaranth-lang"; 24 24 repo = "amaranth-boards"; 25 - rev = "9d97c4816288c9c2cc304d9280c2c63178d50d2f"; 25 + rev = "6e01882eefd62cf19f5740406144632fe2d21947"; 26 26 # these files change depending on git branch status 27 27 postFetch = "rm -f $out/.git_archival.txt $out/.gitattributes"; 28 - hash = "sha256-c+LUWNik95PO5oPM/Bjdxu8j9TD2Q8YSGtdNq1E+i4o="; 28 + hash = "sha256-U/+5v4wN+HfpWHnT9E9hf4XYpzqQQ7Tgq6Z09nEIBeE="; 29 29 }; 30 30 31 31 build-system = [ pdm-backend ];
+5 -5
pkgs/development/python-modules/jax-cuda12-pjrt/default.nix
··· 29 29 # When upgrading, you can get these hashes from jaxlib/prefetch.sh. See 30 30 # https://github.com/google/jax/issues/12879 as to why this specific URL is the correct index. 31 31 32 - # upstream does not distribute jax-cuda12-pjrt 0.4.38 binaries for aarch64-linux 32 + # upstream does not distribute jax-cuda12-pjrt binaries for aarch64-linux 33 33 srcs = { 34 34 "x86_64-linux" = fetchurl { 35 35 url = "https://storage.googleapis.com/jax-releases/cuda12_plugin/jax_cuda12_pjrt-${version}-py3-none-manylinux2014_x86_64.whl"; 36 36 hash = "sha256-0jgzwbiF2WwnZAAOlQUvK1gnx31JLqaPZ+kDoTJlbbs="; 37 37 }; 38 - "aarch64-linux" = fetchurl { 39 - url = "https://storage.googleapis.com/jax-releases/cuda12_plugin/jax_cuda12_pjrt-${version}-py3-none-manylinux2014_aarch64.whl"; 40 - hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 41 - }; 38 + # "aarch64-linux" = fetchurl { 39 + # url = "https://storage.googleapis.com/jax-releases/cuda12_plugin/jax_cuda12_pjrt-${version}-py3-none-manylinux2014_aarch64.whl"; 40 + # hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 41 + # }; 42 42 }; 43 43 in 44 44 buildPythonPackage {
+2
pkgs/development/python-modules/mitmproxy/default.nix
··· 60 60 pythonRelaxDeps = [ 61 61 "passlib" 62 62 "protobuf" 63 + "pyparsing" 64 + "ruamel.yaml" 63 65 "urwid" 64 66 ]; 65 67
+2 -2
pkgs/development/python-modules/nixpkgs-updaters-library/default.nix
··· 29 29 }: 30 30 buildPythonPackage rec { 31 31 pname = "nixpkgs-updaters-library"; 32 - version = "1.0.2"; 32 + version = "1.1.0"; 33 33 pyproject = true; 34 34 35 35 disabled = pythonOlder "3.12"; ··· 38 38 owner = "PerchunPak"; 39 39 repo = "nixpkgs-updaters-library"; 40 40 tag = "v${version}"; 41 - hash = "sha256-SzGbsHy3Pwpr92512y/R3JLtC01jAveFavRGOYyr81U="; 41 + hash = "sha256-gg+y3w0d2GKJ56XZ4Xw9OYTJ5GwqGkTZ/fRXwDhTEDE="; 42 42 }; 43 43 44 44 postPatch = ''
+1 -1
pkgs/development/python-modules/tensorflow/bin.nix
··· 64 64 cuda = lib.optionalString cudaSupport (if isCudaJetson then "_jetson" else "_gpu"); 65 65 key = "${platform}_${pyVerNoDot}${cuda}"; 66 66 in 67 - fetchurl (packages.${key} or (throw "tensoflow-bin: unsupported configuration: ${key}")); 67 + fetchurl (packages.${key} or (throw "tensorflow-bin: unsupported configuration: ${key}")); 68 68 69 69 buildInputs = [ llvmPackages.openmp ]; 70 70
+7 -5
pkgs/development/tools/tailwindcss/default.nix
··· 29 29 } 30 30 .${system} or throwSystem; 31 31 in 32 - stdenv.mkDerivation rec { 32 + stdenv.mkDerivation (finalAttrs: { 33 33 pname = "tailwindcss"; 34 34 version = "3.4.17"; 35 35 36 36 src = fetchurl { 37 - url = "https://github.com/tailwindlabs/tailwindcss/releases/download/v${version}/tailwindcss-${plat}"; 37 + url = "https://github.com/tailwindlabs/tailwindcss/releases/download/v${finalAttrs.version}/tailwindcss-${plat}"; 38 38 inherit hash; 39 39 }; 40 40 ··· 44 44 dontFixup = true; 45 45 46 46 installPhase = '' 47 + runHook preInstall 47 48 mkdir -p $out/bin 48 - cp ${src} $out/bin/tailwindcss 49 + cp ${finalAttrs.src} $out/bin/tailwindcss 49 50 chmod 755 $out/bin/tailwindcss 51 + runHook postInstall 50 52 ''; 51 53 52 54 passthru.tests.helptext = runCommand "tailwindcss-test-helptext" { } '' 53 - ${tailwindcss}/bin/tailwindcss --help > $out 55 + ${lib.getExe finalAttrs.finalPackage} --help > $out 54 56 ''; 55 57 passthru.updateScript = ./update.sh; 56 58 ··· 63 65 mainProgram = "tailwindcss"; 64 66 platforms = platforms.darwin ++ platforms.linux; 65 67 }; 66 - } 68 + })
+40
pkgs/os-specific/linux/nxp-pn5xx/default.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + kernel, 6 + kernelModuleMakeFlags, 7 + }: 8 + 9 + stdenv.mkDerivation (finalAttrs: { 10 + pname = "nxp-pn5xx"; 11 + version = "0.4-unstable-2025-02-08-${kernel.version}"; 12 + 13 + src = fetchFromGitHub { 14 + owner = "jr64"; 15 + repo = "nxp-pn5xx"; 16 + rev = "07411e0ce3445e7dcb970df1837f0ad74b7b0a7a"; 17 + hash = "sha256-jVkcvURFlihKW2vFvAaqzKdtexPXywRa2LkPkIhmdeU="; 18 + }; 19 + 20 + nativeBuildInputs = kernel.moduleBuildDependencies; 21 + 22 + makeFlags = kernelModuleMakeFlags ++ [ 23 + "KERNELRELEASE=${kernel.modDirVersion}" 24 + "BUILD_KERNEL_PATH=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" 25 + "INSTALL_MOD_PATH=$(out)/lib/modules/${kernel.modDirVersion}" 26 + ]; 27 + 28 + postInstall = '' 29 + mkdir -p $out/etc/udev/rules.d 30 + echo 'SUBSYSTEM=="misc", KERNEL=="pn544", MODE="0666", GROUP="dialout"' > $out/etc/udev/rules.d/99-nxp-pn5xx.rules 31 + ''; 32 + 33 + meta = { 34 + description = "NXP's NFC Open Source Kernel mode driver with ACPI configuration support"; 35 + homepage = "https://github.com/jr64/nxp-pn5xx"; 36 + license = lib.licenses.gpl2Only; 37 + maintainers = with lib.maintainers; [ stargate01 ]; 38 + platforms = lib.platforms.linux; 39 + }; 40 + })
+3 -3
pkgs/tools/security/vaultwarden/default.nix
··· 22 22 23 23 rustPlatform.buildRustPackage rec { 24 24 pname = "vaultwarden"; 25 - version = "1.33.1"; 25 + version = "1.33.2"; 26 26 27 27 src = fetchFromGitHub { 28 28 owner = "dani-garcia"; 29 29 repo = "vaultwarden"; 30 30 rev = version; 31 - hash = "sha256-p5SgXqeafEqPQmSKEtcPCHvxODxrEX4gNmpb2ybmpO4="; 31 + hash = "sha256-Lu3/qVTi5Eedcm+3XlHAAJ1nPHm9hW4HZncQKmzDdoo="; 32 32 }; 33 33 34 34 useFetchCargoVendor = true; 35 - cargoHash = "sha256-B9RztnkIbYVWdx85p1WEskwTdFrUruD0UJ7qFIg8vy8="; 35 + cargoHash = "sha256-T/ehLSPJmEuQYhotK12iqXQSe5Ke8+dkr9PVDe4Kmis="; 36 36 37 37 # used for "Server Installed" version in admin panel 38 38 env.VW_VERSION = version;
+2
pkgs/top-level/linux-kernels.nix
··· 457 457 nvidia_x11_stable_open = nvidiaPackages.stable.open; 458 458 nvidia_x11_vulkan_beta_open = nvidiaPackages.vulkan_beta.open; 459 459 460 + nxp-pn5xx = callPackage ../os-specific/linux/nxp-pn5xx { }; 461 + 460 462 openrazer = callPackage ../os-specific/linux/openrazer/driver.nix { }; 461 463 462 464 ply = callPackage ../os-specific/linux/ply { };