Merge staging-next into staging

authored by nixpkgs-ci[bot] and committed by GitHub d8e0934a a0c5005f

+2088 -629
+17
doc/hooks/autopatchcil.section.md
··· 1 + # autoPatchcilHook {#setup-hook-autopatchcilhook} 2 + 3 + This is a special setup hook which helps in packaging .NET assemblies/programs in that it automatically tries to find missing shared library dependencies of .NET assemblies based on the given `buildInputs` and `nativeBuildInputs`. 4 + 5 + As the hook needs information for the host where the package will be run on, there's a required environment variable called `autoPatchcilRuntimeId` which should be filled in with the RID (Runtime Identifier) of the machine where the output will be run on. If you're using `buildDotnetModule`, it will fall back to `dotnetRuntimeIds` (which is set to `lib.singleton (if runtimeId != null then runtimeId else systemToDotnetRid stdenvNoCC.hostPlatform.system)`) for you if not provided. 6 + 7 + In certain situations you may want to run the main command (`autoPatchcil`) of the setup hook on a file or a set of directories instead of unconditionally patching all outputs. This can be done by setting the `dontAutoPatchcil` environment variable to a non-empty value. 8 + 9 + By default, `autoPatchcil` will fail as soon as any .NET assembly requires a dependency which cannot be resolved via the given build inputs. In some situations you might prefer to just leave missing dependencies unpatched and continue to patch the rest. This can be achieved by setting the `autoPatchcilIgnoreMissingDeps` environment variable to a non-empty value. `autoPatchcilIgnoreMissingDeps` can be set to a list like `autoPatchcilIgnoreMissingDeps = [ "libcuda.so.1" "libcudart.so.1" ];` or to `[ "*" ]` to ignore all missing dependencies. 10 + 11 + The `autoPatchcil` command requires the `--rid` command line flag, informing the RID (Runtime Identifier) it should assume the assemblies will be executed on, and also recognizes a `--no-recurse` command line flag, which prevents it from recursing into subdirectories. 12 + 13 + ::: {.note} 14 + Since, unlike most native binaries, .NET assemblies are compiled once to run on any platform, many assemblies may have PInvoke stubs for libraries that might not be available on the platform that the package will effectively run on. A few examples are assemblies that call native Windows APIs through PInvoke targeting `kernel32`, `gdi32`, `user32`, `shell32` or `ntdll`. 15 + 16 + `autoPatchcil` does its best to ignore dependencies from other platforms by checking the requested file extensions, however not all PInvoke stubs provide an extension so in those cases it will be necessary to list those in `autoPatchcilIgnoreMissingDeps` manually. 17 + :::
+1
doc/hooks/index.md
··· 7 7 ```{=include=} sections 8 8 autoconf.section.md 9 9 automake.section.md 10 + autopatchcil.section.md 10 11 autopatchelf.section.md 11 12 aws-c-common.section.md 12 13 bmake.section.md
+3
doc/redirects.json
··· 2067 2067 "setup-hook-automake": [ 2068 2068 "index.html#setup-hook-automake" 2069 2069 ], 2070 + "setup-hook-autopatchcilhook": [ 2071 + "index.html#setup-hook-autopatchcilhook" 2072 + ], 2070 2073 "setup-hook-autopatchelfhook": [ 2071 2074 "index.html#setup-hook-autopatchelfhook" 2072 2075 ],
+2
doc/release-notes/rl-2505.section.md
··· 68 68 - [testers.shellcheck](https://nixos.org/manual/nixpkgs/unstable/#tester-shellcheck) now warns when `name` is not provided. 69 69 The `name` argument will become mandatory in a future release. 70 70 71 + - [GIMP 3.0](https://www.gimp.org/news/2025/03/16/gimp-3-0-released/) available as `gimp3`. 72 + 71 73 - `grafana-agent` and `services.grafana-agent` have been removed in favor of 72 74 Grafana Alloy (`grafana-alloy` and `services.alloy`), as they depend on an EOL compiler version 73 75 and will become EOL during the 25.05 lifecycle.
+6
maintainers/maintainer-list.nix
··· 5020 5020 githubId = 6470493; 5021 5021 name = "Craige McWhirter"; 5022 5022 }; 5023 + craigf = { 5024 + email = "craig@craigfurman.dev"; 5025 + github = "craigfurman"; 5026 + githubId = 4772216; 5027 + name = "Craig Furman"; 5028 + }; 5023 5029 cransom = { 5024 5030 email = "cransom@hubns.net"; 5025 5031 github = "cransom";
+1 -1
maintainers/scripts/luarocks-packages.csv
··· 4 4 argparse,,,,,, 5 5 basexx,,,,,, 6 6 binaryheap,,,,,,vcunat 7 - bit32,,,,5.3.0-1,5.1,lblasc 7 + bit32,,,,,5.1,lblasc 8 8 busted,,,,,, 9 9 busted-htest,,,,,,mrcjkb 10 10 cassowary,,,,,,alerque
+2
nixos/doc/manual/release-notes/rl-2505.section.md
··· 416 416 417 417 - `programs.clash-verge.tunMode` was deprecated and removed because now service mode is necessary to start program. Without `programs.clash-verge.enable`, clash-verge-rev will refuse to start. 418 418 419 + - `services.homepage-dashboard` now requires the `allowedHosts` option to be set in accordance with the [documentation](https://gethomepage.dev/installation/#homepage_allowed_hosts). 420 + 419 421 - `services.netbird.tunnels` was renamed to [`services.netbird.clients`](#opt-services.netbird.clients), 420 422 hardened (using dedicated less-privileged users) and significantly extended. 421 423
+2
nixos/modules/module-list.nix
··· 1055 1055 ./services/networking/atticd.nix 1056 1056 ./services/networking/autossh.nix 1057 1057 ./services/networking/avahi-daemon.nix 1058 + ./services/networking/ax25/axlisten.nix 1059 + ./services/networking/ax25/axports.nix 1058 1060 ./services/networking/babeld.nix 1059 1061 ./services/networking/bee.nix 1060 1062 ./services/networking/biboumi.nix
+14 -1
nixos/modules/services/misc/homepage-dashboard.nix
··· 4 4 lib, 5 5 ... 6 6 }: 7 - 8 7 let 9 8 cfg = config.services.homepage-dashboard; 10 9 # Define the settings format used for this program ··· 27 26 type = lib.types.int; 28 27 default = 8082; 29 28 description = "Port for Homepage to bind to."; 29 + }; 30 + 31 + allowedHosts = lib.mkOption { 32 + type = lib.types.str; 33 + default = "localhost:8082,127.0.0.1:8082"; 34 + example = "example.com"; 35 + description = '' 36 + Hosts that homepage-dashboard will be running under. 37 + You will want to change this in order to acess homepage from anything other than localhost. 38 + see the upsream documentation: 39 + 40 + <https://gethomepage.dev/installation/#homepage_allowed_hosts> 41 + ''; 30 42 }; 31 43 32 44 environmentFile = lib.mkOption { ··· 215 227 NIXPKGS_HOMEPAGE_CACHE_DIR = "/var/cache/homepage-dashboard"; 216 228 PORT = toString cfg.listenPort; 217 229 LOG_TARGETS = "stdout"; 230 + HOMEPAGE_ALLOWED_HOSTS = cfg.allowedHosts; 218 231 }; 219 232 220 233 serviceConfig = {
+62
nixos/modules/services/networking/ax25/axlisten.nix
··· 1 + { 2 + config, 3 + lib, 4 + pkgs, 5 + ... 6 + }: 7 + 8 + let 9 + inherit (lib) 10 + types 11 + ; 12 + 13 + inherit (lib.modules) 14 + mkIf 15 + ; 16 + 17 + inherit (lib.options) 18 + mkEnableOption 19 + mkOption 20 + literalExpression 21 + ; 22 + 23 + cfg = config.services.ax25.axlisten; 24 + in 25 + { 26 + options = { 27 + 28 + services.ax25.axlisten = { 29 + 30 + enable = mkEnableOption "AX.25 axlisten daemon"; 31 + 32 + package = mkOption { 33 + type = types.package; 34 + default = pkgs.ax25-apps; 35 + defaultText = literalExpression "pkgs.ax25-apps"; 36 + description = "The ax25-apps package to use."; 37 + }; 38 + 39 + config = mkOption { 40 + type = types.str; 41 + default = "-art"; 42 + description = '' 43 + Options that will be passed to the axlisten daemon. 44 + ''; 45 + }; 46 + }; 47 + }; 48 + 49 + config = mkIf cfg.enable { 50 + 51 + systemd.services.axlisten = { 52 + description = "AX.25 traffic monitor"; 53 + wantedBy = [ "multi-user.target" ]; 54 + after = [ "ax25-axports.target" ]; 55 + requires = [ "ax25-axports.target" ]; 56 + serviceConfig = { 57 + Type = "exec"; 58 + ExecStart = "${cfg.package}/bin/axlisten ${cfg.config}"; 59 + }; 60 + }; 61 + }; 62 + }
+149
nixos/modules/services/networking/ax25/axports.nix
··· 1 + { 2 + config, 3 + lib, 4 + pkgs, 5 + ... 6 + }: 7 + 8 + let 9 + inherit (lib) 10 + types 11 + ; 12 + 13 + inherit (lib.strings) 14 + concatStringsSep 15 + optionalString 16 + ; 17 + 18 + inherit (lib.attrsets) 19 + filterAttrs 20 + mapAttrsToList 21 + mapAttrs' 22 + ; 23 + 24 + inherit (lib.modules) 25 + mkIf 26 + ; 27 + 28 + inherit (lib.options) 29 + mkEnableOption 30 + mkOption 31 + mkPackageOption 32 + ; 33 + 34 + cfg = config.services.ax25.axports; 35 + 36 + enabledAxports = filterAttrs (ax25Name: cfg: cfg.enable) cfg; 37 + 38 + axportsOpts = { 39 + 40 + options = { 41 + enable = mkEnableOption "Enables the axport interface"; 42 + 43 + package = mkPackageOption pkgs "ax25-tools" { }; 44 + 45 + tty = mkOption { 46 + type = types.str; 47 + example = "/dev/ttyACM0"; 48 + description = '' 49 + Location of hardware kiss tnc for this interface. 50 + ''; 51 + }; 52 + 53 + callsign = mkOption { 54 + type = types.str; 55 + example = "WB6WLV-7"; 56 + description = '' 57 + The callsign of the physical interface to bind to. 58 + ''; 59 + }; 60 + 61 + description = mkOption { 62 + type = types.str; 63 + # This cannot be empty since some ax25 tools cant parse /etc/ax25/axports without it 64 + default = "NixOS managed tnc"; 65 + description = '' 66 + Free format description of this interface. 67 + ''; 68 + }; 69 + 70 + baud = mkOption { 71 + type = types.int; 72 + example = 57600; 73 + description = '' 74 + The serial port speed of this interface. 75 + ''; 76 + }; 77 + 78 + paclen = mkOption { 79 + type = types.int; 80 + default = 255; 81 + description = '' 82 + Default maximum packet size for this interface. 83 + ''; 84 + }; 85 + 86 + window = mkOption { 87 + type = types.int; 88 + default = 7; 89 + description = '' 90 + Default window size for this interface. 91 + ''; 92 + }; 93 + 94 + kissParams = mkOption { 95 + type = types.nullOr types.str; 96 + default = null; 97 + example = "-t 300 -l 10 -s 12 -r 80 -f n"; 98 + description = '' 99 + Kissattach parameters for this interface. 100 + ''; 101 + }; 102 + }; 103 + }; 104 + in 105 + { 106 + 107 + options = { 108 + 109 + services.ax25.axports = mkOption { 110 + type = types.attrsOf (types.submodule axportsOpts); 111 + default = { }; 112 + description = "Specification of one or more AX.25 ports."; 113 + }; 114 + }; 115 + 116 + config = mkIf (enabledAxports != { }) { 117 + 118 + environment.etc."ax25/axports" = { 119 + text = concatStringsSep "\n" ( 120 + mapAttrsToList ( 121 + portName: portCfg: 122 + "${portName} ${portCfg.callsign} ${toString portCfg.baud} ${toString portCfg.paclen} ${toString portCfg.window} ${portCfg.description}" 123 + ) enabledAxports 124 + ); 125 + mode = "0644"; 126 + }; 127 + 128 + systemd.targets.ax25-axports = { 129 + description = "AX.25 axports group target"; 130 + }; 131 + 132 + systemd.services = mapAttrs' (portName: portCfg: { 133 + name = "ax25-kissattach-${portName}"; 134 + value = { 135 + description = "AX.25 KISS attached interface for ${portName}"; 136 + wantedBy = [ "multi-user.target" ]; 137 + before = [ "ax25-axports.target" ]; 138 + partOf = [ "ax25-axports.target" ]; 139 + serviceConfig = { 140 + Type = "exec"; 141 + ExecStart = "${portCfg.package}/bin/kissattach ${portCfg.tty} ${portName}"; 142 + }; 143 + postStart = optionalString (portCfg.kissParams != null) '' 144 + ${portCfg.package}/bin/kissparms -p ${portName} ${portCfg.kissParams} 145 + ''; 146 + }; 147 + }) enabledAxports; 148 + }; 149 + }
+4 -3
nixos/tests/all-tests.nix
··· 213 213 atop = import ./atop.nix { inherit pkgs runTest; }; 214 214 atticd = runTest ./atticd.nix; 215 215 atuin = runTest ./atuin.nix; 216 + ax25 = handleTest ./ax25.nix { }; 216 217 audiobookshelf = runTest ./audiobookshelf.nix; 217 218 auth-mysql = runTest ./auth-mysql.nix; 218 219 authelia = runTest ./authelia.nix; ··· 791 792 mediatomb = handleTest ./mediatomb.nix { }; 792 793 mediawiki = handleTest ./mediawiki.nix { }; 793 794 meilisearch = handleTest ./meilisearch.nix { }; 794 - memcached = handleTest ./memcached.nix { }; 795 + memcached = runTest ./memcached.nix; 795 796 merecat = handleTest ./merecat.nix { }; 796 797 metabase = handleTest ./metabase.nix { }; 797 798 mihomo = handleTest ./mihomo.nix { }; ··· 885 886 # TODO: put in networking.nix after the test becomes more complete 886 887 networkingProxy = handleTest ./networking-proxy.nix { }; 887 888 nextcloud = handleTest ./nextcloud { }; 888 - nextflow = handleTestOn [ "x86_64-linux" ] ./nextflow.nix { }; 889 + nextflow = runTestOn [ "x86_64-linux" ] ./nextflow.nix; 889 890 nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix; 890 891 nexus = handleTest ./nexus.nix { }; 891 892 # TODO: Test nfsv3 + Kerberos ··· 1233 1234 stargazer = runTest ./web-servers/stargazer.nix; 1234 1235 starship = runTest ./starship.nix; 1235 1236 stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { }; 1236 - static-web-server = handleTest ./web-servers/static-web-server.nix { }; 1237 + static-web-server = runTest ./web-servers/static-web-server.nix; 1237 1238 step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { }; 1238 1239 stratis = handleTest ./stratis { }; 1239 1240 strongswan-swanctl = handleTest ./strongswan-swanctl.nix { };
+131
nixos/tests/ax25.nix
··· 1 + import ./make-test-python.nix ( 2 + { pkgs, lib, ... }: 3 + let 4 + 5 + baud = 57600; 6 + tty = "/dev/ttyACM0"; 7 + port = "tnc0"; 8 + socatPort = 1234; 9 + 10 + createAX25Node = nodeId: { 11 + 12 + boot.kernelPackages = pkgs.linuxPackages_ham; 13 + boot.kernelModules = [ "ax25" ]; 14 + 15 + networking.firewall.allowedTCPPorts = [ socatPort ]; 16 + 17 + environment.systemPackages = with pkgs; [ 18 + libax25 19 + ax25-tools 20 + ax25-apps 21 + socat 22 + ]; 23 + 24 + services.ax25.axports."${port}" = { 25 + inherit baud tty; 26 + enable = true; 27 + callsign = "NOCALL-${toString nodeId}"; 28 + description = "mocked tnc"; 29 + }; 30 + 31 + services.ax25.axlisten = { 32 + enable = true; 33 + }; 34 + 35 + # All mocks radios will connect back to socat-broker on node 1 in order to get 36 + # all messages that are "broadcasted over the ether" 37 + systemd.services.ax25-mock-hardware = { 38 + description = "mock AX.25 TNC and Radio"; 39 + wantedBy = [ "default.target" ]; 40 + before = [ 41 + "ax25-kissattach-${port}.service" 42 + "axlisten.service" 43 + ]; 44 + after = [ "network.target" ]; 45 + serviceConfig = { 46 + Type = "exec"; 47 + ExecStart = "${pkgs.socat}/bin/socat -d -d tcp:192.168.1.1:${toString socatPort} pty,link=${tty},b${toString baud},raw"; 48 + }; 49 + }; 50 + }; 51 + in 52 + { 53 + name = "ax25Simple"; 54 + nodes = { 55 + node1 = lib.mkMerge [ 56 + (createAX25Node 1) 57 + # mimicking radios on the same frequency 58 + { 59 + systemd.services.ax25-mock-ether = { 60 + description = "mock radio ether"; 61 + wantedBy = [ "default.target" ]; 62 + requires = [ "network.target" ]; 63 + before = [ "ax25-mock-hardware.service" ]; 64 + # broken needs access to "ss" or "netstat" 65 + path = [ pkgs.iproute2 ]; 66 + serviceConfig = { 67 + Type = "exec"; 68 + ExecStart = "${pkgs.socat}/bin/socat-broker.sh tcp4-listen:${toString socatPort}"; 69 + }; 70 + postStart = "${pkgs.coreutils}/bin/sleep 2"; 71 + }; 72 + } 73 + ]; 74 + node2 = createAX25Node 2; 75 + node3 = createAX25Node 3; 76 + }; 77 + testScript = 78 + { ... }: 79 + '' 80 + def wait_for_machine(m): 81 + m.succeed("lsmod | grep ax25") 82 + m.wait_for_unit("ax25-axports.target") 83 + m.wait_for_unit("axlisten.service") 84 + m.fail("journalctl -o cat -u axlisten.service | grep -i \"no AX.25 port data configured\"") 85 + 86 + # start the first node since the socat-broker needs to be running 87 + node1.start() 88 + node1.wait_for_unit("ax25-mock-ether.service") 89 + wait_for_machine(node1) 90 + 91 + node2.start() 92 + node3.start() 93 + wait_for_machine(node2) 94 + wait_for_machine(node3) 95 + 96 + # Node 1 -> Node 2 97 + node1.succeed("echo hello | ax25_call ${port} NOCALL-1 NOCALL-2") 98 + node2.sleep(1) 99 + node2.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-1 to NOCALL-2 ctl I00\" | grep hello") 100 + 101 + # Node 1 -> Node 3 102 + node1.succeed("echo hello | ax25_call ${port} NOCALL-1 NOCALL-3") 103 + node3.sleep(1) 104 + node3.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-1 to NOCALL-3 ctl I00\" | grep hello") 105 + 106 + # Node 2 -> Node 1 107 + # must sleep due to previous ax25_call lingering 108 + node2.sleep(5) 109 + node2.succeed("echo hello | ax25_call ${port} NOCALL-2 NOCALL-1") 110 + node1.sleep(1) 111 + node1.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-2 to NOCALL-1 ctl I00\" | grep hello") 112 + 113 + # Node 2 -> Node 3 114 + node2.succeed("echo hello | ax25_call ${port} NOCALL-2 NOCALL-3") 115 + node3.sleep(1) 116 + node3.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-2 to NOCALL-3 ctl I00\" | grep hello") 117 + 118 + # Node 3 -> Node 1 119 + # must sleep due to previous ax25_call lingering 120 + node3.sleep(5) 121 + node3.succeed("echo hello | ax25_call ${port} NOCALL-3 NOCALL-1") 122 + node1.sleep(1) 123 + node1.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-3 to NOCALL-1 ctl I00\" | grep hello") 124 + 125 + # Node 3 -> Node 2 126 + node3.succeed("echo hello | ax25_call ${port} NOCALL-3 NOCALL-2") 127 + node2.sleep(1) 128 + node2.succeed("journalctl -o cat -u axlisten.service | grep -A1 \"NOCALL-3 to NOCALL-2 ctl I00\" | grep hello") 129 + ''; 130 + } 131 + )
+28 -30
nixos/tests/memcached.nix
··· 1 - import ./make-test-python.nix ( 2 - { pkgs, ... }: 3 - { 4 - name = "memcached"; 1 + { pkgs, ... }: 2 + { 3 + name = "memcached"; 5 4 6 - nodes.machine = { 7 - imports = [ ../modules/profiles/minimal.nix ]; 8 - services.memcached.enable = true; 9 - }; 5 + nodes.machine = { 6 + imports = [ ../modules/profiles/minimal.nix ]; 7 + services.memcached.enable = true; 8 + }; 10 9 11 - testScript = 12 - let 13 - testScript = 14 - pkgs.writers.writePython3 "test_memcache" 15 - { 16 - libraries = with pkgs.python3Packages; [ memcached ]; 17 - } 18 - '' 19 - import memcache 20 - c = memcache.Client(['localhost:11211']) 21 - c.set('key', 'value') 22 - assert 'value' == c.get('key') 23 - ''; 24 - in 25 - '' 26 - machine.start() 27 - machine.wait_for_unit("memcached.service") 28 - machine.wait_for_open_port(11211) 29 - machine.succeed("${testScript}") 30 - ''; 31 - } 32 - ) 10 + testScript = 11 + let 12 + testScript = 13 + pkgs.writers.writePython3 "test_memcache" 14 + { 15 + libraries = [ pkgs.python3Packages.python-memcached ]; 16 + } 17 + '' 18 + import memcache 19 + c = memcache.Client(['localhost:11211']) 20 + c.set('key', 'value') 21 + assert 'value' == c.get('key') 22 + ''; 23 + in 24 + '' 25 + machine.start() 26 + machine.wait_for_unit("memcached.service") 27 + machine.wait_for_open_port(11211) 28 + machine.succeed("${testScript}") 29 + ''; 30 + }
+53 -55
nixos/tests/nextflow.nix
··· 1 - import ./make-test-python.nix ( 2 - { pkgs, ... }: 3 - let 4 - bash = pkgs.dockerTools.pullImage { 5 - imageName = "quay.io/nextflow/bash"; 6 - imageDigest = "sha256:bea0e244b7c5367b2b0de687e7d28f692013aa18970941c7dd184450125163ac"; 7 - sha256 = "161s9f24njjx87qrwq0c9nmnwvyc6iblcxka7hirw78lm7i9x4w5"; 8 - finalImageName = "quay.io/nextflow/bash"; 9 - }; 1 + { pkgs, ... }: 2 + let 3 + bash = pkgs.dockerTools.pullImage { 4 + imageName = "quay.io/nextflow/bash"; 5 + imageDigest = "sha256:bea0e244b7c5367b2b0de687e7d28f692013aa18970941c7dd184450125163ac"; 6 + sha256 = "161s9f24njjx87qrwq0c9nmnwvyc6iblcxka7hirw78lm7i9x4w5"; 7 + finalImageName = "quay.io/nextflow/bash"; 8 + }; 10 9 11 - hello = pkgs.stdenv.mkDerivation { 12 - name = "nextflow-hello"; 13 - src = pkgs.fetchFromGitHub { 14 - owner = "nextflow-io"; 15 - repo = "hello"; 16 - rev = "afff16a9b45c8e8a4f5a3743780ac13a541762f8"; 17 - hash = "sha256-c8FirHc+J5Y439g0BdHxRtXVrOAzIrGEKA0m1mp9b/U="; 18 - }; 19 - installPhase = '' 20 - cp -r $src $out 21 - ''; 10 + hello = pkgs.stdenv.mkDerivation { 11 + name = "nextflow-hello"; 12 + src = pkgs.fetchFromGitHub { 13 + owner = "nextflow-io"; 14 + repo = "hello"; 15 + rev = "afff16a9b45c8e8a4f5a3743780ac13a541762f8"; 16 + hash = "sha256-c8FirHc+J5Y439g0BdHxRtXVrOAzIrGEKA0m1mp9b/U="; 22 17 }; 23 - run-nextflow-pipeline = pkgs.writeShellApplication { 24 - name = "run-nextflow-pipeline"; 25 - runtimeInputs = [ pkgs.nextflow ]; 26 - text = '' 27 - export NXF_OFFLINE=true 28 - for b in false true; do 29 - echo "docker.enabled = $b" > nextflow.config 30 - cat nextflow.config 31 - nextflow run -ansi-log false ${hello} 32 - done 33 - ''; 34 - }; 35 - in 36 - { 37 - name = "nextflow"; 18 + installPhase = '' 19 + cp -r $src $out 20 + ''; 21 + }; 22 + run-nextflow-pipeline = pkgs.writeShellApplication { 23 + name = "run-nextflow-pipeline"; 24 + runtimeInputs = [ pkgs.nextflow ]; 25 + text = '' 26 + export NXF_OFFLINE=true 27 + for b in false true; do 28 + echo "docker.enabled = $b" > nextflow.config 29 + cat nextflow.config 30 + nextflow run -ansi-log false ${hello} 31 + done 32 + ''; 33 + }; 34 + in 35 + { 36 + name = "nextflow"; 38 37 39 - nodes.machine = 40 - { ... }: 41 - { 42 - environment.systemPackages = [ 43 - run-nextflow-pipeline 44 - pkgs.nextflow 45 - ]; 46 - virtualisation = { 47 - docker.enable = true; 48 - }; 38 + nodes.machine = 39 + { ... }: 40 + { 41 + environment.systemPackages = [ 42 + run-nextflow-pipeline 43 + pkgs.nextflow 44 + ]; 45 + virtualisation = { 46 + docker.enable = true; 49 47 }; 48 + }; 50 49 51 - testScript = 52 - { nodes, ... }: 53 - '' 54 - start_all() 55 - machine.wait_for_unit("docker.service") 56 - machine.succeed("docker load < ${bash}") 57 - machine.succeed("run-nextflow-pipeline >&2") 58 - ''; 59 - } 60 - ) 50 + testScript = 51 + { nodes, ... }: 52 + '' 53 + start_all() 54 + machine.wait_for_unit("docker.service") 55 + machine.succeed("docker load < ${bash}") 56 + machine.succeed("run-nextflow-pipeline >&2") 57 + ''; 58 + }
+34 -36
nixos/tests/web-servers/static-web-server.nix
··· 1 - import ../make-test-python.nix ( 2 - { pkgs, lib, ... }: 3 - { 4 - name = "static-web-server"; 5 - meta = { 6 - maintainers = with lib.maintainers; [ mac-chaffee ]; 7 - }; 1 + { pkgs, lib, ... }: 2 + { 3 + name = "static-web-server"; 4 + meta = { 5 + maintainers = with lib.maintainers; [ mac-chaffee ]; 6 + }; 8 7 9 - nodes.machine = 10 - { pkgs, ... }: 11 - { 12 - services.static-web-server = { 13 - enable = true; 14 - listen = "[::]:8080"; 15 - root = toString ( 16 - pkgs.writeTextDir "nixos-test.html" '' 17 - <h1>Hello NixOS!</h1> 18 - '' 19 - ); 20 - configuration = { 21 - general = { 22 - directory-listing = true; 23 - }; 8 + nodes.machine = 9 + { pkgs, ... }: 10 + { 11 + services.static-web-server = { 12 + enable = true; 13 + listen = "[::]:8080"; 14 + root = toString ( 15 + pkgs.writeTextDir "nixos-test.html" '' 16 + <h1>Hello NixOS!</h1> 17 + '' 18 + ); 19 + configuration = { 20 + general = { 21 + directory-listing = true; 24 22 }; 25 23 }; 26 24 }; 25 + }; 27 26 28 - testScript = '' 29 - machine.start() 30 - machine.wait_for_unit("static-web-server.socket") 31 - machine.wait_for_open_port(8080) 32 - # We don't use wait_until_succeeds() because we're testing socket 33 - # activation which better work on the first request 34 - response = machine.succeed("curl -fsS localhost:8080") 35 - assert "nixos-test.html" in response, "The directory listing page did not include a link to our nixos-test.html file" 36 - response = machine.succeed("curl -fsS localhost:8080/nixos-test.html") 37 - assert "Hello NixOS!" in response 38 - machine.wait_for_unit("static-web-server.service") 39 - ''; 40 - } 41 - ) 27 + testScript = '' 28 + machine.start() 29 + machine.wait_for_unit("static-web-server.socket") 30 + machine.wait_for_open_port(8080) 31 + # We don't use wait_until_succeeds() because we're testing socket 32 + # activation which better work on the first request 33 + response = machine.succeed("curl -fsS localhost:8080") 34 + assert "nixos-test.html" in response, "The directory listing page did not include a link to our nixos-test.html file" 35 + response = machine.succeed("curl -fsS localhost:8080/nixos-test.html") 36 + assert "Hello NixOS!" in response 37 + machine.wait_for_unit("static-web-server.service") 38 + ''; 39 + }
+4
pkgs/applications/editors/vim/plugins/overrides.nix
··· 1204 1204 fzf-lua = neovimUtils.buildNeovimPlugin { 1205 1205 luaAttr = luaPackages.fzf-lua; 1206 1206 runtimeDeps = [ fzf ]; 1207 + nvimSkipModules = [ 1208 + "fzf-lua.shell_helper" 1209 + "fzf-lua.spawn" 1210 + ]; 1207 1211 }; 1208 1212 1209 1213 fzf-vim = super.fzf-vim.overrideAttrs {
+1 -1
pkgs/applications/editors/vscode/extensions/ms-vscode-remote.remote-ssh/default.nix
··· 61 61 62 62 if ! nodeVersion=$($serverNode -v); then 63 63 echo "Unable to fix Node binary, quitting" 64 - fail_with_exitcode ''${o.InstallExitCode.ServerTransferFailed} 64 + fail_with_exitcode ''${f.UnifiedStatusCode.ServerTransferFailed} 65 65 fi 66 66 67 67 ${lib.optionalString useLocalExtensions ''
+226
pkgs/applications/graphics/gimp/2.0/default.nix
··· 1 + { 2 + stdenv, 3 + lib, 4 + fetchurl, 5 + replaceVars, 6 + autoreconfHook, 7 + pkg-config, 8 + intltool, 9 + babl, 10 + gegl, 11 + gtk2, 12 + glib, 13 + gdk-pixbuf, 14 + isocodes, 15 + pango, 16 + cairo, 17 + freetype, 18 + fontconfig, 19 + lcms, 20 + libpng, 21 + libjpeg, 22 + libjxl, 23 + poppler, 24 + poppler_data, 25 + libtiff, 26 + libmng, 27 + librsvg, 28 + libwmf, 29 + zlib, 30 + libzip, 31 + ghostscript, 32 + aalib, 33 + shared-mime-info, 34 + libexif, 35 + gettext, 36 + makeWrapper, 37 + gtk-doc, 38 + xorg, 39 + glib-networking, 40 + libmypaint, 41 + gexiv2, 42 + harfbuzz, 43 + mypaint-brushes1, 44 + libwebp, 45 + libheif, 46 + libxslt, 47 + libgudev, 48 + openexr, 49 + desktopToDarwinBundle, 50 + AppKit, 51 + Cocoa, 52 + gtk-mac-integration-gtk2, 53 + withPython ? false, 54 + python2, 55 + }: 56 + 57 + let 58 + python = python2.withPackages (pp: [ pp.pygtk ]); 59 + in 60 + stdenv.mkDerivation (finalAttrs: { 61 + pname = "gimp"; 62 + version = "2.10.38"; 63 + 64 + outputs = [ 65 + "out" 66 + "dev" 67 + ]; 68 + 69 + src = fetchurl { 70 + url = "http://download.gimp.org/pub/gimp/v${lib.versions.majorMinor finalAttrs.version}/gimp-${finalAttrs.version}.tar.bz2"; 71 + sha256 = "sha256-UKhF7sEciDH+hmFweVD1uERuNfMO37ms+Y+FwRM/hW4="; 72 + }; 73 + 74 + patches = [ 75 + # to remove compiler from the runtime closure, reference was retained via 76 + # gimp --version --verbose output 77 + (replaceVars ./remove-cc-reference.patch { 78 + cc_version = stdenv.cc.cc.name; 79 + }) 80 + 81 + # Use absolute paths instead of relying on PATH 82 + # to make sure plug-ins are loaded by the correct interpreter. 83 + ./hardcode-plugin-interpreters.patch 84 + 85 + # GIMP queries libheif.pc for builtin encoder/decoder support to determine if AVIF/HEIC files are supported 86 + # (see https://gitlab.gnome.org/GNOME/gimp/-/blob/a8b1173ca441283971ee48f4778e2ffd1cca7284/configure.ac?page=2#L1846-1852) 87 + # These variables have been removed since libheif 1.18.0 88 + # (see https://github.com/strukturag/libheif/commit/cf0d89c6e0809427427583290547a7757428cf5a) 89 + # This has already been fixed for the upcoming GIMP 3, but the fix has not been backported to 2.x yet 90 + # (see https://gitlab.gnome.org/GNOME/gimp/-/issues/9080) 91 + ./force-enable-libheif.patch 92 + ]; 93 + 94 + nativeBuildInputs = 95 + [ 96 + autoreconfHook # hardcode-plugin-interpreters.patch changes Makefile.am 97 + pkg-config 98 + intltool 99 + gettext 100 + makeWrapper 101 + gtk-doc 102 + libxslt 103 + ] 104 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 105 + desktopToDarwinBundle 106 + ]; 107 + 108 + buildInputs = 109 + [ 110 + babl 111 + gegl 112 + gtk2 113 + glib 114 + gdk-pixbuf 115 + pango 116 + cairo 117 + gexiv2 118 + harfbuzz 119 + isocodes 120 + freetype 121 + fontconfig 122 + lcms 123 + libpng 124 + libjpeg 125 + libjxl 126 + poppler 127 + poppler_data 128 + libtiff 129 + openexr 130 + libmng 131 + librsvg 132 + libwmf 133 + zlib 134 + libzip 135 + ghostscript 136 + aalib 137 + shared-mime-info 138 + libwebp 139 + libheif 140 + libexif 141 + xorg.libXpm 142 + glib-networking 143 + libmypaint 144 + mypaint-brushes1 145 + ] 146 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 147 + AppKit 148 + Cocoa 149 + gtk-mac-integration-gtk2 150 + ] 151 + ++ lib.optionals stdenv.hostPlatform.isLinux [ 152 + libgudev 153 + ] 154 + ++ lib.optionals withPython [ 155 + python 156 + # Duplicated here because python.withPackages does not expose the dev output with pkg-config files 157 + python2.pkgs.pygtk 158 + ]; 159 + 160 + # needed by gimp-2.0.pc 161 + propagatedBuildInputs = [ 162 + gegl 163 + ]; 164 + 165 + configureFlags = 166 + [ 167 + "--without-webkit" # old version is required 168 + "--disable-check-update" 169 + "--with-bug-report-url=https://github.com/NixOS/nixpkgs/issues/new" 170 + "--with-icc-directory=/run/current-system/sw/share/color/icc" 171 + # fix libdir in pc files (${exec_prefix} needs to be passed verbatim) 172 + "--libdir=\${exec_prefix}/lib" 173 + ] 174 + ++ lib.optionals (!withPython) [ 175 + "--disable-python" # depends on Python2 which was EOLed on 2020-01-01 176 + ]; 177 + 178 + enableParallelBuilding = true; 179 + 180 + doCheck = true; 181 + 182 + env = { 183 + NIX_CFLAGS_COMPILE = toString ( 184 + [ ] 185 + ++ lib.optionals stdenv.cc.isGNU [ "-Wno-error=incompatible-pointer-types" ] 186 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ "-DGDK_OSX_BIG_SUR=16" ] 187 + ); 188 + 189 + # Check if librsvg was built with --disable-pixbuf-loader. 190 + PKG_CONFIG_GDK_PIXBUF_2_0_GDK_PIXBUF_MODULEDIR = "${librsvg}/${gdk-pixbuf.moduleDir}"; 191 + }; 192 + 193 + preConfigure = '' 194 + # The check runs before glib-networking is registered 195 + export GIO_EXTRA_MODULES="${glib-networking}/lib/gio/modules:$GIO_EXTRA_MODULES" 196 + ''; 197 + 198 + postFixup = '' 199 + wrapProgram $out/bin/gimp-${lib.versions.majorMinor finalAttrs.version} \ 200 + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" 201 + ''; 202 + 203 + passthru = { 204 + # The declarations for `gimp-with-plugins` wrapper, 205 + # used for determining plug-in installation paths 206 + majorVersion = "${lib.versions.major finalAttrs.version}.0"; 207 + targetLibDir = "lib/gimp/${finalAttrs.passthru.majorVersion}"; 208 + targetDataDir = "share/gimp/${finalAttrs.passthru.majorVersion}"; 209 + targetPluginDir = "${finalAttrs.passthru.targetLibDir}/plug-ins"; 210 + targetScriptDir = "${finalAttrs.passthru.targetDataDir}/scripts"; 211 + 212 + # probably its a good idea to use the same gtk in plugins ? 213 + gtk = gtk2; 214 + 215 + python2Support = withPython; 216 + }; 217 + 218 + meta = with lib; { 219 + description = "GNU Image Manipulation Program"; 220 + homepage = "https://www.gimp.org/"; 221 + maintainers = with maintainers; [ ]; 222 + license = licenses.gpl3Plus; 223 + platforms = platforms.unix; 224 + mainProgram = "gimp"; 225 + }; 226 + })
+11
pkgs/applications/graphics/gimp/2.0/hardcode-plugin-interpreters.patch
··· 1 + --- a/plug-ins/pygimp/Makefile.am 2 + +++ b/plug-ins/pygimp/Makefile.am 3 + @@ -157,7 +157,7 @@ install-interp-file: 4 + echo 'python=$(PYBIN_PATH)' > '$(DESTDIR)$(pyinterpfile)' 5 + echo 'python2=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' 6 + echo '/usr/bin/python=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' 7 + - echo ":Python:E::py::`basename $(PYTHON)`:" >> '$(DESTDIR)$(pyinterpfile)' 8 + + echo ":Python:E::py::$(PYTHON):" >> '$(DESTDIR)$(pyinterpfile)' 9 + 10 + install-data-local: install-env-file install-interp-file 11 +
+13
pkgs/applications/graphics/gimp/2.0/remove-cc-reference.patch
··· 1 + diff --git a/app/gimp-version.c b/app/gimp-version.c 2 + index 3d1894a036..48bb670b64 100644 3 + --- a/app/gimp-version.c 4 + +++ b/app/gimp-version.c 5 + @@ -230,7 +230,7 @@ gimp_version (gboolean be_verbose, 6 + GIMP_BUILD_ID, 7 + gimp_version_get_revision (), 8 + GIMP_BUILD_PLATFORM_FAMILY, 9 + - CC_VERSION, 10 + + "@cc_version@", 11 + lib_versions); 12 + g_free (lib_versions); 13 +
+165 -59
pkgs/applications/graphics/gimp/default.nix
··· 3 3 lib, 4 4 fetchurl, 5 5 replaceVars, 6 - autoreconfHook, 6 + meson, 7 + ninja, 7 8 pkg-config, 8 - intltool, 9 9 babl, 10 + cfitsio, 10 11 gegl, 11 - gtk2, 12 + gtk3, 12 13 glib, 13 14 gdk-pixbuf, 15 + graphviz, 14 16 isocodes, 15 17 pango, 16 18 cairo, 19 + libarchive, 20 + luajit, 17 21 freetype, 18 22 fontconfig, 19 23 lcms, 20 24 libpng, 25 + libiff, 26 + libilbm, 21 27 libjpeg, 22 28 libjxl, 23 29 poppler, ··· 31 37 ghostscript, 32 38 aalib, 33 39 shared-mime-info, 40 + python3, 34 41 libexif, 35 42 gettext, 36 - makeWrapper, 37 - gtk-doc, 43 + wrapGAppsHook3, 44 + libxslt, 45 + gobject-introspection, 46 + vala, 47 + gi-docgen, 48 + perl, 49 + appstream-glib, 50 + desktop-file-utils, 38 51 xorg, 39 52 glib-networking, 53 + json-glib, 40 54 libmypaint, 55 + llvmPackages, 41 56 gexiv2, 42 57 harfbuzz, 43 58 mypaint-brushes1, 44 59 libwebp, 45 60 libheif, 46 - libxslt, 61 + gjs, 47 62 libgudev, 48 63 openexr, 64 + xvfb-run, 65 + dbus, 66 + adwaita-icon-theme, 67 + alsa-lib, 49 68 desktopToDarwinBundle, 50 69 AppKit, 51 70 Cocoa, 52 - gtk-mac-integration-gtk2, 53 - withPython ? false, 54 - python2, 55 71 }: 56 72 57 73 let 58 - python = python2.withPackages (pp: [ pp.pygtk ]); 74 + python = python3.withPackages ( 75 + pp: with pp; [ 76 + pygobject3 77 + ] 78 + ); 59 79 in 60 80 stdenv.mkDerivation (finalAttrs: { 61 81 pname = "gimp"; 62 - version = "2.10.38"; 82 + version = "3.0.2"; 63 83 64 84 outputs = [ 65 85 "out" 66 86 "dev" 87 + "devdoc" 67 88 ]; 68 89 69 90 src = fetchurl { 70 - url = "http://download.gimp.org/pub/gimp/v${lib.versions.majorMinor finalAttrs.version}/gimp-${finalAttrs.version}.tar.bz2"; 71 - sha256 = "sha256-UKhF7sEciDH+hmFweVD1uERuNfMO37ms+Y+FwRM/hW4="; 91 + url = "https://download.gimp.org/gimp/v${lib.versions.majorMinor finalAttrs.version}/gimp-${finalAttrs.version}.tar.xz"; 92 + hash = "sha256-VG3cMMstDnkSPH/LTXghHh7npqrOkaagrYy8v26lcaI="; 72 93 }; 73 94 74 95 patches = [ ··· 80 101 81 102 # Use absolute paths instead of relying on PATH 82 103 # to make sure plug-ins are loaded by the correct interpreter. 83 - ./hardcode-plugin-interpreters.patch 104 + # TODO: This now only appears to be used on Windows. 105 + (replaceVars ./hardcode-plugin-interpreters.patch { 106 + python_interpreter = python.interpreter; 107 + PYTHON_EXE = null; 108 + }) 84 109 85 - # GIMP queries libheif.pc for builtin encoder/decoder support to determine if AVIF/HEIC files are supported 86 - # (see https://gitlab.gnome.org/GNOME/gimp/-/blob/a8b1173ca441283971ee48f4778e2ffd1cca7284/configure.ac?page=2#L1846-1852) 87 - # These variables have been removed since libheif 1.18.0 88 - # (see https://github.com/strukturag/libheif/commit/cf0d89c6e0809427427583290547a7757428cf5a) 89 - # This has already been fixed for the upcoming GIMP 3, but the fix has not been backported to 2.x yet 90 - # (see https://gitlab.gnome.org/GNOME/gimp/-/issues/9080) 91 - ./force-enable-libheif.patch 110 + # D-Bus configuration is not available in the build sandbox 111 + # so we need to pick up the one from the package. 112 + (replaceVars ./tests-dbus-conf.patch { 113 + session_conf = "${dbus.out}/share/dbus-1/session.conf"; 114 + }) 92 115 ]; 93 116 94 117 nativeBuildInputs = 95 118 [ 96 - autoreconfHook # hardcode-plugin-interpreters.patch changes Makefile.am 119 + meson 120 + ninja 97 121 pkg-config 98 - intltool 99 122 gettext 100 - makeWrapper 101 - gtk-doc 102 - libxslt 123 + wrapGAppsHook3 124 + libxslt # for xsltproc 125 + gobject-introspection 126 + perl 127 + vala 128 + 129 + # for docs 130 + gi-docgen 131 + 132 + # for tests 133 + desktop-file-utils 134 + ] 135 + ++ lib.optionals stdenv.hostPlatform.isLinux [ 136 + dbus 137 + xvfb-run 103 138 ] 104 139 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 105 140 desktopToDarwinBundle ··· 107 142 108 143 buildInputs = 109 144 [ 145 + appstream-glib # for library 110 146 babl 147 + cfitsio 111 148 gegl 112 - gtk2 149 + gtk3 113 150 glib 114 151 gdk-pixbuf 115 152 pango 116 153 cairo 154 + libarchive 117 155 gexiv2 118 156 harfbuzz 119 157 isocodes ··· 121 159 fontconfig 122 160 lcms 123 161 libpng 162 + libiff 163 + libilbm 124 164 libjpeg 125 165 libjxl 126 166 poppler ··· 135 175 ghostscript 136 176 aalib 137 177 shared-mime-info 178 + json-glib 138 179 libwebp 139 180 libheif 181 + python 140 182 libexif 141 183 xorg.libXpm 184 + xorg.libXmu 142 185 glib-networking 143 186 libmypaint 144 187 mypaint-brushes1 188 + 189 + # New file dialogue crashes with “Icon 'image-missing' not present in theme Symbolic” without an icon theme. 190 + adwaita-icon-theme 191 + 192 + # for Lua plug-ins 193 + (luajit.withPackages (pp: [ 194 + pp.lgi 195 + ])) 196 + ] 197 + ++ lib.optionals stdenv.hostPlatform.isLinux [ 198 + alsa-lib 199 + 200 + # for JavaScript plug-ins 201 + gjs 145 202 ] 146 203 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 204 + llvmPackages.openmp 147 205 AppKit 148 206 Cocoa 149 - gtk-mac-integration-gtk2 150 207 ] 151 208 ++ lib.optionals stdenv.hostPlatform.isLinux [ 152 209 libgudev 153 - ] 154 - ++ lib.optionals withPython [ 155 - python 156 - # Duplicated here because python.withPackages does not expose the dev output with pkg-config files 157 - python2.pkgs.pygtk 158 210 ]; 159 211 160 - # needed by gimp-2.0.pc 161 212 propagatedBuildInputs = [ 213 + # needed by gimp-3.0.pc 162 214 gegl 215 + cairo 216 + pango 217 + gexiv2 163 218 ]; 164 219 165 - configureFlags = 220 + mesonFlags = 166 221 [ 167 - "--without-webkit" # old version is required 168 - "--disable-check-update" 169 - "--with-bug-report-url=https://github.com/NixOS/nixpkgs/issues/new" 170 - "--with-icc-directory=/run/current-system/sw/share/color/icc" 171 - # fix libdir in pc files (${exec_prefix} needs to be passed verbatim) 172 - "--libdir=\${exec_prefix}/lib" 222 + "-Dbug-report-url=https://github.com/NixOS/nixpkgs/issues/new" 223 + "-Dicc-directory=/run/current-system/sw/share/color/icc" 224 + "-Dcheck-update=no" 225 + (lib.mesonEnable "gudev" stdenv.hostPlatform.isLinux) 226 + (lib.mesonEnable "headless-tests" stdenv.hostPlatform.isLinux) 227 + (lib.mesonEnable "linux-input" stdenv.hostPlatform.isLinux) 228 + # Not very important to do downstream, save a dependency. 229 + "-Dappdata-test=disabled" 173 230 ] 174 - ++ lib.optionals (!withPython) [ 175 - "--disable-python" # depends on Python2 which was EOLed on 2020-01-01 231 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 232 + "-Dalsa=disabled" 233 + "-Djavascript=disabled" 176 234 ]; 177 235 178 - enableParallelBuilding = true; 179 - 180 236 doCheck = true; 181 237 182 238 env = { 183 - NIX_CFLAGS_COMPILE = toString ( 184 - [ ] 185 - ++ lib.optionals stdenv.cc.isGNU [ "-Wno-error=incompatible-pointer-types" ] 186 - ++ lib.optionals stdenv.hostPlatform.isDarwin [ "-DGDK_OSX_BIG_SUR=16" ] 187 - ); 239 + # The check runs before glib-networking is registered 240 + GIO_EXTRA_MODULES = "${glib-networking}/lib/gio/modules"; 241 + 242 + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-DGDK_OSX_BIG_SUR=16"; 188 243 189 244 # Check if librsvg was built with --disable-pixbuf-loader. 190 245 PKG_CONFIG_GDK_PIXBUF_2_0_GDK_PIXBUF_MODULEDIR = "${librsvg}/${gdk-pixbuf.moduleDir}"; 191 246 }; 192 247 193 - preConfigure = '' 194 - # The check runs before glib-networking is registered 195 - export GIO_EXTRA_MODULES="${glib-networking}/lib/gio/modules:$GIO_EXTRA_MODULES" 248 + postPatch = '' 249 + patchShebangs \ 250 + app/tests/create_test_env.sh \ 251 + tools/gimp-mkenums 252 + 253 + # GIMP is executed at build time so we need to fix this. 254 + # TODO: Look into if we can fix the interp thing. 255 + chmod +x plug-ins/python/{colorxhtml,file-openraster,foggify,gradients-save-as-css,histogram-export,palette-offset,palette-sort,palette-to-gradient,python-eval,spyro-plus}.py 256 + patchShebangs \ 257 + plug-ins/python/{colorxhtml,file-openraster,foggify,gradients-save-as-css,histogram-export,palette-offset,palette-sort,palette-to-gradient,python-eval,spyro-plus}.py 258 + ''; 259 + 260 + preBuild = 261 + let 262 + librarySuffix = 263 + if stdenv.hostPlatform.extensions.library == ".so" then 264 + "3.0.so.0" 265 + else if stdenv.hostPlatform.extensions.library == ".dylib" then 266 + "3.0.0.dylib" 267 + else 268 + throw "Unsupported library extension ‘${stdenv.hostPlatform.extensions.library}’"; 269 + in 270 + '' 271 + # Our gobject-introspection patches make the shared library paths absolute 272 + # in the GIR files. When running GIMP in build or check phase, it will try 273 + # to use plug-ins, which import GIMP introspection files which will try 274 + # to load the GIMP libraries which will not be installed yet. 275 + # So we need to replace the absolute path with a local one. 276 + # We are using a symlink that will be overridden during installation. 277 + mkdir -p "$out/lib" 278 + ln -s "$PWD/libgimp/libgimp-${librarySuffix}" \ 279 + "$PWD/libgimpbase/libgimpbase-${librarySuffix}" \ 280 + "$PWD/libgimpcolor/libgimpcolor-${librarySuffix}" \ 281 + "$PWD/libgimpconfig/libgimpconfig-${librarySuffix}" \ 282 + "$PWD/libgimpmath/libgimpmath-${librarySuffix}" \ 283 + "$PWD/libgimpmodule/libgimpmodule-${librarySuffix}" \ 284 + "$out/lib/" 285 + ''; 286 + 287 + preCheck = '' 288 + # Avoid “Error retrieving accessibility bus address” 289 + export NO_AT_BRIDGE=1 290 + # Fix storing recent file list in tests 291 + export HOME="$TMPDIR" 292 + export XDG_DATA_DIRS="${glib.getSchemaDataDirPath gtk3}:${adwaita-icon-theme}/share:$XDG_DATA_DIRS" 293 + ''; 294 + 295 + preFixup = '' 296 + gappsWrapperArgs+=(--prefix PATH : "${ 297 + lib.makeBinPath [ 298 + # for dot for gegl:introspect (Debug » Show Image Graph, hidden by default on stable release) 299 + graphviz 300 + # for gimp-script-fu-interpreter-3.0 invoked by shebang of some plug-ins 301 + "$out" 302 + ] 303 + }") 196 304 ''; 197 305 198 306 postFixup = '' 199 - wrapProgram $out/bin/gimp-${lib.versions.majorMinor finalAttrs.version} \ 200 - --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" 307 + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. 308 + moveToOutput "share/doc" "$devdoc" 201 309 ''; 202 310 203 311 passthru = { ··· 210 318 targetScriptDir = "${finalAttrs.passthru.targetDataDir}/scripts"; 211 319 212 320 # probably its a good idea to use the same gtk in plugins ? 213 - gtk = gtk2; 214 - 215 - python2Support = withPython; 321 + gtk = gtk3; 216 322 }; 217 323 218 324 meta = with lib; { ··· 220 326 homepage = "https://www.gimp.org/"; 221 327 maintainers = with maintainers; [ jtojnar ]; 222 328 license = licenses.gpl3Plus; 223 - platforms = platforms.unix; 329 + platforms = platforms.linux; 224 330 mainProgram = "gimp"; 225 331 }; 226 332 })
pkgs/applications/graphics/gimp/force-enable-libheif.patch pkgs/applications/graphics/gimp/2.0/force-enable-libheif.patch
+8 -11
pkgs/applications/graphics/gimp/hardcode-plugin-interpreters.patch
··· 1 - --- a/plug-ins/pygimp/Makefile.am 2 - +++ b/plug-ins/pygimp/Makefile.am 3 - @@ -157,7 +157,7 @@ install-interp-file: 4 - echo 'python=$(PYBIN_PATH)' > '$(DESTDIR)$(pyinterpfile)' 5 - echo 'python2=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' 6 - echo '/usr/bin/python=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' 7 - - echo ":Python:E::py::`basename $(PYTHON)`:" >> '$(DESTDIR)$(pyinterpfile)' 8 - + echo ":Python:E::py::$(PYTHON):" >> '$(DESTDIR)$(pyinterpfile)' 9 - 10 - install-data-local: install-env-file install-interp-file 11 - 1 + --- a/plug-ins/python/pygimp.interp.in 2 + +++ b/plug-ins/python/pygimp.interp.in 3 + @@ -2,4 +2,4 @@ python=@PYTHON_EXE@ 4 + python3=@PYTHON_EXE@ 5 + /usr/bin/python=@PYTHON_EXE@ 6 + /usr/bin/python3=@PYTHON_EXE@ 7 + -:Python:E::py::python3: 8 + +:Python:E::py::@python_interpreter@:
+33 -5
pkgs/applications/graphics/gimp/plugins/default.nix
··· 2 2 # If you just want a subset of plug-ins, you can specify them explicitly: 3 3 # `gimp-with-plugins.override { plugins = with gimpPlugins; [ gap ]; }`. 4 4 5 - { lib, pkgs }: 5 + { 6 + lib, 7 + pkgs, 8 + gimp, 9 + }: 6 10 7 11 let 8 12 inherit (pkgs) ··· 16 20 fetchFromGitHub 17 21 fetchFromGitLab 18 22 ; 23 + 24 + # We cannot use gimp from the arguments directly, or it would be shadowed by the one 25 + # from scope when initializing the scope with it, leading to infinite recursion. 26 + gimpArg = gimp; 19 27 in 20 28 21 29 lib.makeScope pkgs.newScope ( ··· 29 37 attrs: 30 38 let 31 39 name = attrs.name or "${attrs.pname}-${attrs.version}"; 40 + pkgConfigMajorVersion = lib.versions.major gimp.version; 32 41 in 33 42 stdenv.mkDerivation ( 34 43 { ··· 63 72 64 73 # Override installation paths. 65 74 env = { 66 - PKG_CONFIG_GIMP_2_0_GIMPLIBDIR = "${placeholder "out"}/${gimp.targetLibDir}"; 67 - PKG_CONFIG_GIMP_2_0_GIMPDATADIR = "${placeholder "out"}/${gimp.targetDataDir}"; 75 + "PKG_CONFIG_GIMP_${pkgConfigMajorVersion}_0_GIMPLIBDIR" = 76 + "${placeholder "out"}/${gimp.targetLibDir}"; 77 + "PKG_CONFIG_GIMP_${pkgConfigMajorVersion}_0_GIMPDATADIR" = 78 + "${placeholder "out"}/${gimp.targetDataDir}"; 68 79 } // attrs.env or { }; 69 80 } 70 81 ); ··· 86 97 in 87 98 { 88 99 # Allow overriding GIMP package in the scope. 89 - inherit (pkgs) gimp; 100 + gimp = gimpArg; 90 101 91 102 bimp = pluginDerivation rec { 92 103 /* ··· 130 141 installTargets = [ "install-admin" ]; 131 142 132 143 meta = with lib; { 144 + broken = gimp.majorVersion != "2.0"; 133 145 description = "Batch Image Manipulation Plugin for GIMP"; 134 146 homepage = "https://github.com/alessandrofrancesconi/gimp-plugin-bimp"; 135 147 license = licenses.gpl2Plus; ··· 153 165 ''; 154 166 155 167 meta = { 168 + broken = gimp.majorVersion != "2.0"; 156 169 description = "Gimp plug-in for the farbfeld image format"; 157 170 homepage = "https://github.com/ids1024/gimp-farbfeld"; 158 171 license = lib.licenses.mit; ··· 192 205 ''; 193 206 194 207 meta = with lib; { 208 + broken = gimp.majorVersion != "2.0"; 195 209 description = "GIMP plug-in to do the fourier transform"; 196 210 homepage = "https://people.via.ecp.fr/~remi/soft/gimp/gimp_plugin_en.php3#fourier"; 197 211 license = with licenses; [ gpl3Plus ]; ··· 222 236 }; 223 237 224 238 meta = { 225 - broken = !gimp.python2Support; 239 + broken = gimp.majorVersion != "2.0"; 226 240 }; 227 241 }; 228 242 ··· 240 254 ninja 241 255 gettext 242 256 ]; 257 + 258 + meta = { 259 + broken = gimp.majorVersion != "2.0"; 260 + }; 243 261 }; 244 262 245 263 waveletSharpen = pluginDerivation { ··· 264 282 }; 265 283 266 284 installPhase = "installPlugin src/wavelet-sharpen"; # TODO translations are not copied .. How to do this on nix? 285 + 286 + meta = { 287 + broken = gimp.majorVersion != "2.0"; 288 + }; 267 289 }; 268 290 269 291 lqrPlugin = pluginDerivation rec { ··· 289 311 sha256 = "EdjZWM6U1bhUmsOnLA8iJ4SFKuAXHIfNPzxZqel+JrY="; 290 312 }) 291 313 ]; 314 + 315 + meta = { 316 + broken = gimp.majorVersion != "2.0"; 317 + }; 292 318 }; 293 319 294 320 gmic = pkgs.gmic-qt.override { 295 321 variant = "gimp"; 322 + inherit (self) gimp; 296 323 }; 297 324 298 325 gimplensfun = pluginDerivation { ··· 320 347 "; 321 348 322 349 meta = { 350 + broken = gimp.majorVersion != "2.0"; 323 351 description = "GIMP plugin to correct lens distortion using the lensfun library and database"; 324 352 325 353 homepage = "http://lensfun.sebastiankraft.net/";
+2 -2
pkgs/applications/graphics/gimp/remove-cc-reference.patch
··· 1 1 diff --git a/app/gimp-version.c b/app/gimp-version.c 2 - index 3d1894a036..48bb670b64 100644 2 + index 6e311c8252..e6fd9d1d78 100644 3 3 --- a/app/gimp-version.c 4 4 +++ b/app/gimp-version.c 5 - @@ -230,7 +230,7 @@ gimp_version (gboolean be_verbose, 5 + @@ -90,7 +90,7 @@ gimp_version (gboolean be_verbose, 6 6 GIMP_BUILD_ID, 7 7 gimp_version_get_revision (), 8 8 GIMP_BUILD_PLATFORM_FAMILY,
+11
pkgs/applications/graphics/gimp/tests-dbus-conf.patch
··· 1 + --- a/build/meson/run_test_env.sh 2 + +++ b/build/meson/run_test_env.sh 3 + @@ -33,7 +33,7 @@ if [ -n "${UI_TEST}" ]; then 4 + OPT="--auto-servernum" 5 + fi 6 + xvfb-run $OPT --server-args="-screen 0 1280x1024x24" \ 7 + - dbus-run-session -- "$@" 8 + + dbus-run-session --config-file="@session_conf@" -- "$@" 9 + 10 + else 11 + # Run the executable directly,
+12 -7
pkgs/applications/graphics/gimp/wrapper.nix
··· 13 13 lib.attrValues gimpPlugins 14 14 ); 15 15 selectedPlugins = lib.filter (pkg: pkg != gimp) (if plugins == null then allPlugins else plugins); 16 - extraArgs = map (x: x.wrapArgs or "") selectedPlugins; 17 - versionBranch = lib.versions.majorMinor gimp.version; 16 + extraArgs = 17 + map (x: x.wrapArgs or "") selectedPlugins 18 + ++ lib.optionals (gimp.majorVersion == "2.0") [ 19 + ''--prefix GTK_PATH : "${gnome-themes-extra}/lib/gtk-2.0"'' 20 + ]; 21 + exeVersion = 22 + if gimp.majorVersion == "2.0" then lib.versions.majorMinor gimp.version else gimp.majorVersion; 23 + majorVersion = lib.versions.major gimp.version; 18 24 19 25 in 20 26 symlinkJoin { ··· 25 31 nativeBuildInputs = [ makeWrapper ]; 26 32 27 33 postBuild = '' 28 - for each in gimp-${versionBranch} gimp-console-${versionBranch}; do 34 + for each in gimp-${exeVersion} gimp-console-${exeVersion}; do 29 35 wrapProgram $out/bin/$each \ 30 - --set GIMP2_PLUGINDIR "$out/lib/gimp/2.0" \ 31 - --set GIMP2_DATADIR "$out/share/gimp/2.0" \ 32 - --prefix GTK_PATH : "${gnome-themes-extra}/lib/gtk-2.0" \ 36 + --set GIMP${majorVersion}_PLUGINDIR "$out/${gimp.targetLibDir}" \ 37 + --set GIMP${majorVersion}_DATADIR "$out/${gimp.targetDataDir}" \ 33 38 ${toString extraArgs} 34 39 done 35 40 set +x 36 41 for each in gimp gimp-console; do 37 - ln -sf "$each-${versionBranch}" $out/bin/$each 42 + ln -sf "$each-${exeVersion}" $out/bin/$each 38 43 done 39 44 ''; 40 45
pkgs/applications/misc/keepassxc/darwin.patch pkgs/by-name/ke/keepassxc/darwin.patch
-176
pkgs/applications/misc/keepassxc/default.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchFromGitHub, 5 - cmake, 6 - qttools, 7 - 8 - apple-sdk_15, 9 - asciidoctor, 10 - botan3, 11 - curl, 12 - darwinMinVersionHook, 13 - kio, 14 - libXi, 15 - libXtst, 16 - libargon2, 17 - libusb1, 18 - minizip, 19 - pcsclite, 20 - pkg-config, 21 - qrencode, 22 - qtbase, 23 - qtmacextras, 24 - qtsvg, 25 - qtx11extras, 26 - readline, 27 - wrapGAppsHook3, 28 - wrapQtAppsHook, 29 - zlib, 30 - 31 - LocalAuthentication, 32 - 33 - withKeePassBrowser ? true, 34 - withKeePassBrowserPasskeys ? true, 35 - withKeePassFDOSecrets ? true, 36 - withKeePassKeeShare ? true, 37 - withKeePassNetworking ? true, 38 - withKeePassSSHAgent ? true, 39 - withKeePassTouchID ? true, 40 - withKeePassX11 ? true, 41 - withKeePassYubiKey ? true, 42 - 43 - nixosTests, 44 - }: 45 - 46 - stdenv.mkDerivation rec { 47 - pname = "keepassxc"; 48 - version = "2.7.10"; 49 - 50 - src = fetchFromGitHub { 51 - owner = "keepassxreboot"; 52 - repo = "keepassxc"; 53 - rev = version; 54 - hash = "sha256-FBoqCYNM/leN+w4aV0AJMx/G0bjHbI9KVWrnmq3NfaI="; 55 - }; 56 - 57 - env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [ 58 - "-Wno-old-style-cast" 59 - "-Wno-error" 60 - "-D__BIG_ENDIAN__=${if stdenv.hostPlatform.isBigEndian then "1" else "0"}" 61 - ]); 62 - 63 - NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-rpath ${libargon2}/lib"; 64 - 65 - patches = [ ./darwin.patch ]; 66 - 67 - cmakeFlags = 68 - [ 69 - "-DKEEPASSXC_BUILD_TYPE=Release" 70 - "-DWITH_GUI_TESTS=ON" 71 - "-DWITH_XC_UPDATECHECK=OFF" 72 - ] 73 - ++ (lib.optional (!withKeePassX11) "-DWITH_XC_X11=OFF") 74 - ++ (lib.optional (withKeePassFDOSecrets && stdenv.hostPlatform.isLinux) "-DWITH_XC_FDOSECRETS=ON") 75 - ++ (lib.optional (withKeePassYubiKey && stdenv.hostPlatform.isLinux) "-DWITH_XC_YUBIKEY=ON") 76 - ++ (lib.optional withKeePassBrowser "-DWITH_XC_BROWSER=ON") 77 - ++ (lib.optional withKeePassBrowserPasskeys "-DWITH_XC_BROWSER_PASSKEYS=ON") 78 - ++ (lib.optional withKeePassKeeShare "-DWITH_XC_KEESHARE=ON") 79 - ++ (lib.optional withKeePassNetworking "-DWITH_XC_NETWORKING=ON") 80 - ++ (lib.optional withKeePassSSHAgent "-DWITH_XC_SSHAGENT=ON"); 81 - 82 - doCheck = true; 83 - checkPhase = '' 84 - runHook preCheck 85 - 86 - export LC_ALL="en_US.UTF-8" 87 - export QT_QPA_PLATFORM=offscreen 88 - export QT_PLUGIN_PATH="${qtbase.bin}/${qtbase.qtPluginPrefix}" 89 - # testcli, testgui and testkdbx4 are flaky - skip them all 90 - # testautotype on darwin throws "QWidget: Cannot create a QWidget without QApplication" 91 - make test ARGS+="-E 'testcli|testgui${lib.optionalString stdenv.hostPlatform.isDarwin "|testautotype|testkdbx4"}' --output-on-failure" 92 - 93 - runHook postCheck 94 - ''; 95 - 96 - nativeBuildInputs = [ 97 - asciidoctor 98 - cmake 99 - wrapQtAppsHook 100 - qttools 101 - pkg-config 102 - ] ++ lib.optional (!stdenv.hostPlatform.isDarwin) wrapGAppsHook3; 103 - 104 - dontWrapGApps = true; 105 - preFixup = 106 - '' 107 - qtWrapperArgs+=("''${gappsWrapperArgs[@]}") 108 - '' 109 - + lib.optionalString stdenv.hostPlatform.isDarwin '' 110 - wrapQtApp "$out/Applications/KeePassXC.app/Contents/MacOS/KeePassXC" 111 - ''; 112 - 113 - postInstall = lib.concatLines [ 114 - (lib.optionalString stdenv.hostPlatform.isDarwin '' 115 - mkdir -p "$out/bin" 116 - for program in keepassxc-cli keepassxc-proxy; do 117 - ln -s "$out/Applications/KeePassXC.app/Contents/MacOS/$program" "$out/bin/$program" 118 - done 119 - '') 120 - 121 - # See https://github.com/keepassxreboot/keepassxc/blob/cd7a53abbbb81e468efb33eb56eefc12739969b8/src/browser/NativeMessageInstaller.cpp#L317 122 - (lib.optionalString withKeePassBrowser '' 123 - mkdir -p "$out/lib/mozilla/native-messaging-hosts" 124 - substituteAll "${./firefox-native-messaging-host.json}" "$out/lib/mozilla/native-messaging-hosts/org.keepassxc.keepassxc_browser.json" 125 - '') 126 - ]; 127 - 128 - buildInputs = 129 - [ 130 - curl 131 - botan3 132 - kio 133 - libXi 134 - libXtst 135 - libargon2 136 - minizip 137 - pcsclite 138 - qrencode 139 - qtbase 140 - qtsvg 141 - readline 142 - zlib 143 - ] 144 - ++ lib.optional (stdenv.hostPlatform.isDarwin && withKeePassTouchID) LocalAuthentication 145 - ++ lib.optionals stdenv.hostPlatform.isDarwin [ 146 - qtmacextras 147 - 148 - apple-sdk_15 149 - # ScreenCaptureKit, required by livekit, is only available on 12.3 and up: 150 - # https://developer.apple.com/documentation/screencapturekit 151 - (darwinMinVersionHook "12.3") 152 - ] 153 - ++ lib.optional stdenv.hostPlatform.isLinux libusb1 154 - ++ lib.optional withKeePassX11 qtx11extras; 155 - 156 - passthru.tests = nixosTests.keepassxc; 157 - 158 - meta = with lib; { 159 - description = "Offline password manager with many features"; 160 - longDescription = '' 161 - A community fork of KeePassX, which is itself a port of KeePass Password Safe. 162 - The goal is to extend and improve KeePassX with new features and bugfixes, 163 - to provide a feature-rich, fully cross-platform and modern open-source password manager. 164 - Accessible via native cross-platform GUI, CLI, has browser integration 165 - using the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser) 166 - ''; 167 - homepage = "https://keepassxc.org/"; 168 - license = licenses.gpl2Plus; 169 - mainProgram = "keepassxc"; 170 - maintainers = with maintainers; [ 171 - blankparticle 172 - sigmasquadron 173 - ]; 174 - platforms = platforms.linux ++ platforms.darwin; 175 - }; 176 - }
pkgs/applications/misc/keepassxc/firefox-native-messaging-host.json pkgs/by-name/ke/keepassxc/firefox-native-messaging-host.json
+10 -10
pkgs/applications/networking/browsers/chromium/info.json
··· 1 1 { 2 2 "chromium": { 3 - "version": "135.0.7049.84", 3 + "version": "135.0.7049.95", 4 4 "chromedriver": { 5 - "version": "135.0.7049.85", 6 - "hash_darwin": "sha256-L4x/MSCbVt2UIQwbHREDV8br6DmdfuqTJ3//7opK2IU=", 7 - "hash_darwin_aarch64": "sha256-vixXGqbc2UYpydg1RILhrtmr5DdbJ5I1sD8aNikejQU=" 5 + "version": "135.0.7049.96", 6 + "hash_darwin": "sha256-MmL/hQGPk/kGBtbXSekE+lHktucPCv3HFr8VYTnff5w=", 7 + "hash_darwin_aarch64": "sha256-TGiVrAYgeLGniGBZ2dHUBk6Hg996ouBSJHZm9hXExQ4=" 8 8 }, 9 9 "deps": { 10 10 "depot_tools": { ··· 20 20 "DEPS": { 21 21 "src": { 22 22 "url": "https://chromium.googlesource.com/chromium/src.git", 23 - "rev": "6c019e56001911b3fd467e03bf68c435924d62f4", 24 - "hash": "sha256-BFw1o2cIHBeBudeigH6YTOuLGsp/+pTOeE1lXBO3aio=", 23 + "rev": "de2eb485a1951079e63bdb57ce25544d2dc79c15", 24 + "hash": "sha256-6ydyJWsDawt0bfYAFHotTB9ujmIYsqUUpNwB6q6RNQE=", 25 25 "recompress": true 26 26 }, 27 27 "src/third_party/clang-format/script": { ··· 566 566 }, 567 567 "src/third_party/pdfium": { 568 568 "url": "https://pdfium.googlesource.com/pdfium.git", 569 - "rev": "9afffebfa895ea6cdcc05516908c50bd7fe72797", 570 - "hash": "sha256-89rJdhwUJtJCMO7FvVoTYO80swFRkoWUB/ZYs1tOLzE=" 569 + "rev": "2919d07ee57020e3e4b66cce45c61104d80304d2", 570 + "hash": "sha256-zE6a0R8NZ3SE0bHwPan3dTh5kmq5JmYTbDQIvyNICeg=" 571 571 }, 572 572 "src/third_party/perfetto": { 573 573 "url": "https://android.googlesource.com/platform/external/perfetto.git", ··· 616 616 }, 617 617 "src/third_party/skia": { 618 618 "url": "https://skia.googlesource.com/skia.git", 619 - "rev": "6e445bdea696eb6b6a46681dfc1a63edaa517edb", 620 - "hash": "sha256-mSup6nKsEPjJ/HBV7PwjBI4PP7/RdwFm/dnavKeRqzI=" 619 + "rev": "5a44cdd70f04aa65fa063caa1a7e3028d75236f8", 620 + "hash": "sha256-QX3b+S0IuxJKmlMudL6420+bXRhDkWYC7GNRKxKNm8A=" 621 621 }, 622 622 "src/third_party/smhasher/src": { 623 623 "url": "https://chromium.googlesource.com/external/smhasher.git",
+118
pkgs/build-support/dotnet/auto-patchcil-hook/auto-patchcil.sh
··· 1 + #!@shell@ 2 + # shellcheck shell=bash 3 + 4 + declare -a autoPatchcilLibs 5 + declare -a extraAutoPatchcilLibs 6 + 7 + gatherLibraries() { 8 + if [ -d "$1/lib" ]; then 9 + autoPatchcilLibs+=("$1/lib") 10 + fi 11 + } 12 + 13 + addEnvHooks "${targetOffset:?}" gatherLibraries 14 + 15 + # Can be used to manually add additional directories with shared object files 16 + # to be included for the next autoPatchcil invocation. 17 + addAutoPatchcilSearchPath() { 18 + local -a findOpts=() 19 + 20 + while [ $# -gt 0 ]; do 21 + case "$1" in 22 + --) 23 + shift 24 + break 25 + ;; 26 + --no-recurse) 27 + shift 28 + findOpts+=("-maxdepth" 1) 29 + ;; 30 + --*) 31 + echo "addAutoPatchcilSearchPath: ERROR: Invalid command line" \ 32 + "argument: $1" >&2 33 + return 1 34 + ;; 35 + *) break ;; 36 + esac 37 + done 38 + 39 + local dir= 40 + while IFS= read -r -d '' dir; do 41 + extraAutoPatchcilLibs+=("$dir") 42 + done < <( 43 + find "$@" "${findOpts[@]}" \! -type d \ 44 + \( -name '*.so' -o -name '*.so.*' \) -print0 | 45 + sed -z 's#/[^/]*$##' | 46 + uniq -z 47 + ) 48 + } 49 + 50 + autoPatchcil() { 51 + local rid= 52 + local norecurse= 53 + while [ $# -gt 0 ]; do 54 + case "$1" in 55 + --) 56 + shift 57 + break 58 + ;; 59 + --rid) 60 + rid="$2" 61 + shift 2 62 + ;; 63 + --no-recurse) 64 + shift 65 + norecurse=1 66 + ;; 67 + --*) 68 + echo "autoPatchcil: ERROR: Invalid command line" \ 69 + "argument: $1" >&2 70 + return 1 71 + ;; 72 + *) break ;; 73 + esac 74 + done 75 + 76 + if [ -z "$rid" ]; then 77 + echo "autoPatchcil: ERROR: No RID (Runtime ID) provided." >&2 78 + return 1 79 + fi 80 + 81 + local ignoreMissingDepsArray=("--ignore-missing") 82 + concatTo ignoreMissingDepsArray autoPatchcilIgnoreMissingDeps 83 + 84 + if [ ${#ignoreMissingDepsArray[@]} -lt 2 ]; then 85 + ignoreMissingDepsArray=() 86 + fi 87 + 88 + local autoPatchcilFlags=( 89 + ${norecurse:+--no-recurse} 90 + --rid "$rid" 91 + "${ignoreMissingDepsArray[@]}" 92 + --paths "$@" 93 + --libs "${autoPatchcilLibs[@]}" 94 + ) 95 + 96 + # shellcheck disable=SC2016 97 + echoCmd 'patchcil auto flags' "${autoPatchcilFlags[@]}" 98 + @patchcil@ auto "${autoPatchcilFlags[@]}" 99 + } 100 + 101 + autoPatchcilFixupOutput() { 102 + if [[ -z "${dontAutoPatchcil-}" ]]; then 103 + if [ -n "${dotnetRuntimeIds+x}" ]; then 104 + if [[ -n $__structuredAttrs ]]; then 105 + local dotnetRuntimeIdsArray=("${dotnetRuntimeIds[@]}") 106 + else 107 + # shellcheck disable=SC2206 # Intentionally expanding it to preserve old behavior 108 + local dotnetRuntimeIdsArray=($dotnetRuntimeIds) 109 + fi 110 + else 111 + local dotnetRuntimeIdsArray=("") 112 + fi 113 + 114 + autoPatchcil --rid "${autoPatchcilRuntimeId:-${dotnetRuntimeIdsArray[0]}}" -- "${prefix:?}" 115 + fi 116 + } 117 + 118 + fixupOutputHooks+=(autoPatchcilFixupOutput)
+14
pkgs/build-support/dotnet/auto-patchcil-hook/default.nix
··· 1 + { 2 + lib, 3 + bash, 4 + patchcil, 5 + makeSetupHook, 6 + }: 7 + 8 + makeSetupHook { 9 + name = "auto-patchcil-hook"; 10 + substitutions = { 11 + shell = lib.getExe bash; 12 + patchcil = lib.getExe patchcil; 13 + }; 14 + } ./auto-patchcil.sh
+7
pkgs/by-name/au/autokbisw/nix/default.nix
··· 1 + # This file was generated by swiftpm2nix. 2 + { 3 + workspaceStateFile = ./workspace-state.json; 4 + hashes = { 5 + "swift-argument-parser" = "sha256-FSIi4jDX7R35jDHkKzQFJLl4K0Hdx9UWgwxJbHVpsYU="; 6 + }; 7 + }
+25
pkgs/by-name/au/autokbisw/nix/workspace-state.json
··· 1 + { 2 + "object": { 3 + "artifacts": [], 4 + "dependencies": [ 5 + { 6 + "basedOn": null, 7 + "packageRef": { 8 + "identity": "swift-argument-parser", 9 + "kind": "remoteSourceControl", 10 + "location": "https://github.com/apple/swift-argument-parser", 11 + "name": "swift-argument-parser" 12 + }, 13 + "state": { 14 + "checkoutState": { 15 + "revision": "e1465042f195f374b94f915ba8ca49de24300a0d", 16 + "version": "1.0.2" 17 + }, 18 + "name": "sourceControlCheckout" 19 + }, 20 + "subpath": "swift-argument-parser" 21 + } 22 + ] 23 + }, 24 + "version": 6 25 + }
+45
pkgs/by-name/au/autokbisw/package.nix
··· 1 + { 2 + fetchFromGitHub, 3 + lib, 4 + swift, 5 + swiftPackages, 6 + swiftpm, 7 + swiftpm2nix, 8 + }: 9 + let 10 + # Nix dir generated by running `swiftpm2nix` in the upstream project 11 + generated = swiftpm2nix.helpers ./nix; 12 + in 13 + swiftPackages.stdenv.mkDerivation rec { 14 + pname = "autokbisw"; 15 + version = "2.0.1"; 16 + src = fetchFromGitHub { 17 + owner = "ohueter"; 18 + repo = "autokbisw"; 19 + tag = version; 20 + hash = "sha256-xNXXgDLWW8pdik3STmhpZATf9REd+8IGeoX/oxGg4vc="; 21 + }; 22 + nativeBuildInputs = [ 23 + swift 24 + swiftpm 25 + ]; 26 + configurePhase = generated.configure; 27 + installPhase = '' 28 + runHook preInstall 29 + 30 + mkdir -p $out/bin 31 + cp $(swiftpmBinPath)/autokbisw $out/bin/ 32 + 33 + runHook postInstall 34 + ''; 35 + 36 + meta = { 37 + description = "Automatic keyboard input language switching for macOS"; 38 + homepage = "https://github.com/ohueter/autokbisw"; 39 + changelog = "https://github.com/ohueter/autokbisw/releases/tag/${version}"; 40 + license = lib.licenses.asl20; 41 + mainProgram = "autokbisw"; 42 + maintainers = with lib.maintainers; [ craigf ]; 43 + platforms = lib.platforms.darwin; 44 + }; 45 + }
+2 -2
pkgs/by-name/ba/babl/package.nix
··· 13 13 14 14 stdenv.mkDerivation (finalAttrs: { 15 15 pname = "babl"; 16 - version = "0.1.110"; 16 + version = "0.1.112"; 17 17 18 18 outputs = [ 19 19 "out" ··· 23 23 24 24 src = fetchurl { 25 25 url = "https://download.gimp.org/pub/babl/${lib.versions.majorMinor finalAttrs.version}/babl-${finalAttrs.version}.tar.xz"; 26 - hash = "sha256-v0e+dUDWJ1OJ9mQx7wMGTfU3YxXiQ9C6tEjGqnE/V0M="; 26 + hash = "sha256-+2lmgkIXh8j+zIPoqrSBId7I7jjRGbZSkc/L4xUCink="; 27 27 }; 28 28 29 29 patches = [
+3 -3
pkgs/by-name/cr/cryptomator/package.nix
··· 17 17 in 18 18 maven.buildMavenPackage rec { 19 19 pname = "cryptomator"; 20 - version = "1.15.2"; 20 + version = "1.15.3"; 21 21 22 22 src = fetchFromGitHub { 23 23 owner = "cryptomator"; 24 24 repo = "cryptomator"; 25 25 tag = version; 26 - hash = "sha256-uhsX4VIA8NNUjxa0dHyB5bhWMxjd2LJfcKJInxROQRY="; 26 + hash = "sha256-3HGSeTUzfcXuNFxPuhkQBQ8CTEvgrNjpFtqOuluCeRs="; 27 27 }; 28 28 29 29 mvnJdk = jdk; 30 30 mvnParameters = "-Dmaven.test.skip=true -Plinux"; 31 - mvnHash = "sha256-KfQdYsPdmQRQqjx/kpDQR9tYjb54goA31w55x6VX6KM="; 31 + mvnHash = "sha256-vC2ULlBm/170ElcQC898N4kmWfuWwb7hFpF1oMIukyQ="; 32 32 33 33 preBuild = '' 34 34 VERSION=${version}
+2 -2
pkgs/by-name/de/devenv/package.nix
··· 26 26 doInstallCheck = false; 27 27 }); 28 28 29 - version = "1.5"; 29 + version = "1.5.1"; 30 30 in 31 31 rustPlatform.buildRustPackage { 32 32 pname = "devenv"; ··· 36 36 owner = "cachix"; 37 37 repo = "devenv"; 38 38 rev = "v${version}"; 39 - hash = "sha256-bJlcIFcEhobOiaJsxub48fR8nIZDU4QK4FIycmDW2mk="; 39 + hash = "sha256-ybqhaIuv8OU0f14Rr+1ilxE4iTCnguXi/60g4ys6JOI="; 40 40 }; 41 41 42 42 useFetchCargoVendor = true;
+3 -3
pkgs/by-name/en/envoy-bin/package.nix
··· 8 8 versionCheckHook, 9 9 }: 10 10 let 11 - version = "1.33.2"; 11 + version = "1.34.0"; 12 12 inherit (stdenv.hostPlatform) system; 13 13 throwSystem = throw "envoy-bin is not available for ${system}."; 14 14 ··· 21 21 22 22 hash = 23 23 { 24 - aarch64-linux = "sha256-gew2iaghIu/wymgMSBdvTTUbb5iBp5zJ2QeKb7Swtqg="; 25 - x86_64-linux = "sha256-vS/4fF78lf14gNcQkV9XPBqrTZxV2NqIbc2R30P610E="; 24 + aarch64-linux = "sha256-VVEYQ25ZNmWftuhLOOZnxKaosQFeMHsQdkAzIq+zEM0="; 25 + x86_64-linux = "sha256-FavpvY1hYNOnlFQE2NV3O8z9gyKGpD01oU/wute9iRA="; 26 26 } 27 27 .${system} or throwSystem; 28 28 in
+2 -2
pkgs/by-name/ga/gallery-dl/package.nix
··· 8 8 9 9 let 10 10 pname = "gallery-dl"; 11 - version = "1.29.3"; 11 + version = "1.29.4"; 12 12 in 13 13 python3Packages.buildPythonApplication { 14 14 inherit pname version; ··· 18 18 owner = "mikf"; 19 19 repo = "gallery-dl"; 20 20 tag = "v${version}"; 21 - hash = "sha256-LzMiJxMl6IWtUloWxBAMLvkhnTQpHkz/gjWl5gW2sZ0="; 21 + hash = "sha256-dQK1AWmdlfb1cRcYzXWUsXmRgjQRc++zEHZvLUygMwg="; 22 22 }; 23 23 24 24 build-system = [ python3Packages.setuptools ];
+2 -2
pkgs/by-name/ga/gamescope/package.nix
··· 48 48 in 49 49 stdenv.mkDerivation (finalAttrs: { 50 50 pname = "gamescope"; 51 - version = "3.16.3"; 51 + version = "3.16.4"; 52 52 53 53 src = fetchFromGitHub { 54 54 owner = "ValveSoftware"; 55 55 repo = "gamescope"; 56 56 tag = finalAttrs.version; 57 57 fetchSubmodules = true; 58 - hash = "sha256-4Pbyv+EAgwjabVJ4oW3jSmi0Rzpe+BxCN8mM5/beEco="; 58 + hash = "sha256-2AxqvZA1eZaJFKMfRljCIcP0M2nMngw0FQiXsfBW7IA="; 59 59 }; 60 60 61 61 patches = [
+8 -1
pkgs/by-name/gm/gmic-qt/package.nix
··· 100 100 cmakeFlags = [ 101 101 (lib.cmakeBool "ENABLE_DYNAMIC_LINKING" true) 102 102 (lib.cmakeBool "ENABLE_SYSTEM_GMIC" true) 103 - (lib.cmakeFeature "GMIC_QT_HOST" (if variant == "standalone" then "none" else variant)) 103 + (lib.cmakeFeature "GMIC_QT_HOST" ( 104 + if variant == "standalone" then 105 + "none" 106 + else if variant == "gimp" && gimp.majorVersion == "3.0" then 107 + "gimp3" 108 + else 109 + variant 110 + )) 104 111 ]; 105 112 106 113 postFixup = lib.optionalString (variant == "gimp") ''
+3 -3
pkgs/by-name/go/gofumpt/package.nix
··· 9 9 10 10 buildGoModule rec { 11 11 pname = "gofumpt"; 12 - version = "0.7.0"; 12 + version = "0.8.0"; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "mvdan"; 16 16 repo = pname; 17 17 rev = "v${version}"; 18 - hash = "sha256-mJM0uKztX0OUQvynnxeKL9yft7X/Eh28ERg8SbZC5Ws="; 18 + hash = "sha256-37wYYB0k8mhQq30y1oo77qW3bIqqN/K/NG1RgxK6dyI="; 19 19 }; 20 20 21 - vendorHash = "sha256-kJysyxROvB0eMAHbvNF+VXatEicn4ln2Vqkzp7GDWAQ="; 21 + vendorHash = "sha256-T6/xEXv8+io3XwQ2keacpYYIdTnYhTTUCojf62tTwbA="; 22 22 23 23 env.CGO_ENABLED = "0"; 24 24
+3 -3
pkgs/by-name/go/golangci-lint/package.nix
··· 7 7 8 8 buildGo124Module rec { 9 9 pname = "golangci-lint"; 10 - version = "2.0.2"; 10 + version = "2.1.2"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "golangci"; 14 14 repo = "golangci-lint"; 15 15 rev = "v${version}"; 16 - hash = "sha256-+IndC9znKgVGiFWW0aCNjhxPwX1kDFnfG2+SKEQ15Rc="; 16 + hash = "sha256-CAO+oo3l3mlZIiC1Srhc0EfZffQOHvVkamPHzSKRSFw="; 17 17 }; 18 18 19 - vendorHash = "sha256-B6mCvJtIfRbAv6fZ8Ge82nT9oEcL3WR4D+AAVs9R3zM="; 19 + vendorHash = "sha256-2GQp/sgYRlDengx8uy3zzqi9hwHh4CQUHoj1zaxNNLE="; 20 20 21 21 subPackages = [ "cmd/golangci-lint" ]; 22 22
+56
pkgs/by-name/gr/grig/0001-Fix-grig-for-hamlib-4.6.x.patch
··· 1 + diff --git a/src/main.c b/src/main.c 2 + index d16a7f7..2c596e9 100644 3 + --- a/src/main.c 4 + +++ b/src/main.c 5 + @@ -125,7 +125,7 @@ static gint grig_app_delete (GtkWidget *, GdkEvent *, gpointer); 6 + static void grig_app_destroy (GtkWidget *, gpointer); 7 + static void grig_show_help (void); 8 + static void grig_show_version (void); 9 + -static gint grig_list_add (const struct rig_caps *, void *); 10 + +static gint grig_list_add (struct rig_caps *, void *); 11 + static gint grig_list_compare (gconstpointer, gconstpointer); 12 + static void grig_sig_handler (int sig); 13 + 14 + @@ -729,7 +729,7 @@ grig_list_rigs () 15 + * \sa grig_list_rigs, grig_list_compare 16 + */ 17 + static gint 18 + -grig_list_add (const struct rig_caps *caps, void *array) 19 + +grig_list_add (struct rig_caps *caps, void *array) 20 + { 21 + grig_rig_info_t *info; 22 + 23 + diff --git a/src/rig-selector.c b/src/rig-selector.c 24 + index 425d41a..e040c0e 100644 25 + --- a/src/rig-selector.c 26 + +++ b/src/rig-selector.c 27 + @@ -46,7 +46,7 @@ static void add (GtkWidget *, gpointer); 28 + static void delete (GtkWidget *, gpointer); 29 + static void edit (GtkWidget *, gpointer); 30 + static void cancel (GtkWidget *, gpointer); 31 + -static void connect (GtkWidget *, gpointer); 32 + +static void connectrig (GtkWidget *, gpointer); 33 + static void selection_changed (GtkTreeSelection *sel, gpointer data); 34 + 35 + static void render_civ (GtkTreeViewColumn *col, 36 + @@ -191,7 +191,7 @@ rig_selector_execute () 37 + g_signal_connect (G_OBJECT (cancbut), "clicked", 38 + G_CALLBACK (cancel), window); 39 + g_signal_connect (G_OBJECT (conbut), "clicked", 40 + - G_CALLBACK (connect), window); 41 + + G_CALLBACK (connectrig), window); 42 + g_signal_connect (G_OBJECT (delbut), "clicked", 43 + G_CALLBACK (delete), NULL); 44 + g_signal_connect (G_OBJECT (newbut), "clicked", 45 + @@ -439,7 +439,7 @@ static void cancel (GtkWidget *button, gpointer window) 46 + * simply destroys the rig selector window and whereby control is returned 47 + * to the main() function. 48 + */ 49 + -static void connect (GtkWidget *button, gpointer window) 50 + +static void connectrig (GtkWidget *button, gpointer window) 51 + { 52 + 53 + 54 + -- 55 + 2.47.0 56 +
+5
pkgs/by-name/gr/grig/package.nix
··· 20 20 sha256 = "sha256-OgIgHW9NMW/xSSti3naIR8AQWUtNSv5bYdOcObStBlM="; 21 21 }; 22 22 23 + patches = [ 24 + # https://github.com/fillods/grig/issues/22 25 + ./0001-Fix-grig-for-hamlib-4.6.x.patch 26 + ]; 27 + 23 28 nativeBuildInputs = [ 24 29 autoreconfHook 25 30 pkg-config
+195
pkgs/by-name/ke/keepassxc/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + cmake, 6 + libsForQt5, 7 + 8 + apple-sdk_15, 9 + asciidoctor, 10 + botan3, 11 + curl, 12 + darwinMinVersionHook, 13 + libXi, 14 + libXtst, 15 + libargon2, 16 + libusb1, 17 + minizip, 18 + nix-update-script, 19 + pcsclite, 20 + pkg-config, 21 + qrencode, 22 + readline, 23 + wrapGAppsHook3, 24 + zlib, 25 + 26 + withKeePassBrowser ? true, 27 + withKeePassBrowserPasskeys ? true, 28 + withKeePassFDOSecrets ? stdenv.hostPlatform.isLinux, 29 + withKeePassKeeShare ? true, 30 + withKeePassNetworking ? true, 31 + withKeePassSSHAgent ? true, 32 + withKeePassX11 ? true, 33 + withKeePassYubiKey ? stdenv.hostPlatform.isLinux, 34 + 35 + nixosTests, 36 + }: 37 + 38 + stdenv.mkDerivation (finalAttrs: { 39 + pname = "keepassxc"; 40 + version = "2.7.10"; 41 + 42 + src = fetchFromGitHub { 43 + owner = "keepassxreboot"; 44 + repo = "keepassxc"; 45 + tag = finalAttrs.version; 46 + hash = "sha256-FBoqCYNM/leN+w4aV0AJMx/G0bjHbI9KVWrnmq3NfaI="; 47 + }; 48 + 49 + env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [ 50 + "-Wno-old-style-cast" 51 + "-Wno-error" 52 + "-D__BIG_ENDIAN__=${if stdenv.hostPlatform.isBigEndian then "1" else "0"}" 53 + ]); 54 + 55 + NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-rpath ${libargon2}/lib"; 56 + 57 + patches = [ ./darwin.patch ]; 58 + 59 + cmakeFlags = [ 60 + (lib.cmakeFeature "KEEPASSXC_BUILD_TYPE" "Release") 61 + (lib.cmakeBool "WITH_GUI_TESTS" true) 62 + (lib.cmakeBool "WITH_XC_UPDATECHECK" false) 63 + (lib.cmakeBool "WITH_XC_X11" withKeePassX11) 64 + (lib.cmakeBool "WITH_XC_BROWSER" withKeePassBrowser) 65 + (lib.cmakeBool "WITH_XC_BROWSER_PASSKEYS" withKeePassBrowserPasskeys) 66 + (lib.cmakeBool "WITH_XC_KEESHARE" withKeePassKeeShare) 67 + (lib.cmakeBool "WITH_XC_NETWORKING" withKeePassNetworking) 68 + (lib.cmakeBool "WITH_XC_SSHAGENT" withKeePassSSHAgent) 69 + (lib.cmakeBool "WITH_XC_FDOSECRETS" withKeePassFDOSecrets) 70 + (lib.cmakeBool "WITH_XC_YUBIKEY" withKeePassYubiKey) 71 + ]; 72 + 73 + doCheck = true; 74 + checkPhase = 75 + let 76 + disabledTests = lib.concatStringsSep "|" ( 77 + [ 78 + # flaky 79 + "testcli" 80 + "testgui" 81 + ] 82 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 83 + # QWidget: Cannot create a QWidget without QApplication 84 + "testautotype" 85 + 86 + # FAIL! : TestDatabase::testExternallyModified() Compared values are not the same 87 + # Actual (((spyFileChanged.count()))): 0 88 + # Expected (1) : 1 89 + # Loc: [/tmp/nix-build-keepassxc-2.7.10.drv-2/source/tests/TestDatabase.cpp(288)] 90 + "testdatabase" 91 + ] 92 + ); 93 + in 94 + '' 95 + runHook preCheck 96 + 97 + export LC_ALL="en_US.UTF-8" 98 + export QT_QPA_PLATFORM=offscreen 99 + export QT_PLUGIN_PATH="${libsForQt5.qtbase.bin}/${libsForQt5.qtbase.qtPluginPrefix}" 100 + 101 + make test ARGS+="-E '${disabledTests}' --output-on-failure" 102 + 103 + runHook postCheck 104 + ''; 105 + 106 + nativeBuildInputs = [ 107 + asciidoctor 108 + cmake 109 + libsForQt5.wrapQtAppsHook 110 + libsForQt5.qttools 111 + pkg-config 112 + ] ++ lib.optional (!stdenv.hostPlatform.isDarwin) wrapGAppsHook3; 113 + 114 + dontWrapGApps = true; 115 + preFixup = 116 + '' 117 + qtWrapperArgs+=("''${gappsWrapperArgs[@]}") 118 + '' 119 + + lib.optionalString stdenv.hostPlatform.isDarwin '' 120 + wrapQtApp "$out/Applications/KeePassXC.app/Contents/MacOS/KeePassXC" 121 + ''; 122 + 123 + postInstall = lib.concatLines [ 124 + (lib.optionalString stdenv.hostPlatform.isDarwin '' 125 + mkdir -p "$out/bin" 126 + for program in keepassxc-cli keepassxc-proxy; do 127 + ln -s "$out/Applications/KeePassXC.app/Contents/MacOS/$program" "$out/bin/$program" 128 + done 129 + '') 130 + 131 + # See https://github.com/keepassxreboot/keepassxc/blob/cd7a53abbbb81e468efb33eb56eefc12739969b8/src/browser/NativeMessageInstaller.cpp#L317 132 + (lib.optionalString withKeePassBrowser '' 133 + mkdir -p "$out/lib/mozilla/native-messaging-hosts" 134 + substituteAll "${./firefox-native-messaging-host.json}" "$out/lib/mozilla/native-messaging-hosts/org.keepassxc.keepassxc_browser.json" 135 + '') 136 + ]; 137 + 138 + buildInputs = 139 + [ 140 + botan3 141 + curl 142 + libXi 143 + libXtst 144 + libargon2 145 + libsForQt5.kio 146 + libsForQt5.qtbase 147 + libsForQt5.qtsvg 148 + minizip 149 + pcsclite 150 + qrencode 151 + readline 152 + zlib 153 + ] 154 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 155 + libsForQt5.qtmacextras 156 + 157 + apple-sdk_15 158 + # ScreenCaptureKit, required by livekit, is only available on 12.3 and up: 159 + # https://developer.apple.com/documentation/screencapturekit 160 + (darwinMinVersionHook "12.3") 161 + ] 162 + ++ lib.optionals stdenv.hostPlatform.isLinux [ 163 + libusb1 164 + ] 165 + ++ lib.optionals withKeePassX11 [ 166 + libsForQt5.qtx11extras 167 + ]; 168 + 169 + passthru = { 170 + tests = { 171 + inherit (nixosTests) keepassxc; 172 + }; 173 + updateScript = nix-update-script { }; 174 + }; 175 + 176 + meta = { 177 + description = "Offline password manager with many features"; 178 + longDescription = '' 179 + A community fork of KeePassX, which is itself a port of KeePass Password Safe. 180 + The goal is to extend and improve KeePassX with new features and bugfixes, 181 + to provide a feature-rich, fully cross-platform and modern open-source password manager. 182 + Accessible via native cross-platform GUI, CLI, has browser integration 183 + using the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser) 184 + ''; 185 + homepage = "https://keepassxc.org/"; 186 + changelog = "https://github.com/keepassxreboot/keepassxc/blob/${finalAttrs.version}/CHANGELOG.md"; 187 + license = lib.licenses.gpl2Plus; 188 + mainProgram = "keepassxc"; 189 + maintainers = with lib.maintainers; [ 190 + blankparticle 191 + sigmasquadron 192 + ]; 193 + platforms = lib.platforms.linux ++ lib.platforms.darwin; 194 + }; 195 + })
+2
pkgs/by-name/kn/knot-dns/package.nix
··· 101 101 "-DNDEBUG" 102 102 ]; 103 103 104 + __darwinAllowLocalNetworking = true; 105 + 104 106 doCheck = true; 105 107 checkFlags = [ "V=1" ]; # verbose output in case some test fails 106 108 doInstallCheck = true;
+3 -3
pkgs/by-name/li/libretro-shaders-slang/package.nix
··· 7 7 8 8 stdenvNoCC.mkDerivation { 9 9 pname = "libretro-shaders-slang"; 10 - version = "0-unstable-2025-03-13"; 10 + version = "0-unstable-2025-04-14"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "libretro"; 14 14 repo = "slang-shaders"; 15 - rev = "25311dc03332d9ef2dff8d9d06c611d828028fac"; 16 - hash = "sha256-nmDjjQgxpZcddOHlBAE9CKdR95u+6lEYXcmIwH9RHXo="; 15 + rev = "cacb61c9a3022c84057331063e31304933b61bdf"; 16 + hash = "sha256-dpqru8Qu1xZkHNKv6oF/T61/k6X2CWljUSVeJqxMvso="; 17 17 }; 18 18 19 19 dontConfigure = true;
+3 -3
pkgs/by-name/lu/lutgen/package.nix
··· 8 8 9 9 rustPlatform.buildRustPackage rec { 10 10 pname = "lutgen"; 11 - version = "0.11.2"; 11 + version = "0.12.0"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "ozwaldorf"; 15 15 repo = "lutgen-rs"; 16 16 rev = "v${version}"; 17 - hash = "sha256-jmMVeDDVb/TuxulDYj+8y4Kl42EJTAWb3tAsanfWduE="; 17 + hash = "sha256-VE4R0rdQbZ7cyCPRtWWARUAnlR/KWGFUoJSJ4lySwzY="; 18 18 }; 19 19 20 20 useFetchCargoVendor = true; 21 - cargoHash = "sha256-BEh8Wl0X1wv53w/Zu0PHwh8oGtCvIJe60aVqLbiH1Hs="; 21 + cargoHash = "sha256-H913/EjCh14AcCIj/Em6neP5F6i88rSVbPMmnS3po/I="; 22 22 23 23 nativeBuildInputs = [ installShellFiles ]; 24 24
+3 -3
pkgs/by-name/mi/misconfig-mapper/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "misconfig-mapper"; 9 - version = "1.13.7"; 9 + version = "1.14.2"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "intigriti"; 13 13 repo = "misconfig-mapper"; 14 14 tag = "v${version}"; 15 - hash = "sha256-6WFtXIqnn2ayfXkGMIxGDlYpE3UbHRuAU8qHGk9SCU4="; 15 + hash = "sha256-7ObDlO/jHUMJdEIFwsFrdSyrbs6I6koNJxQyH6FbhZc="; 16 16 }; 17 17 18 - vendorHash = "sha256-fEmf+d9oBXz7KymNVmC+CM7OyPD9QV1uN4ReTNhei7A="; 18 + vendorHash = "sha256-gxURT2S1m7J3bZ0VIYxFFsbxU3za2BgJ/6TONoPGzAw="; 19 19 20 20 ldflags = [ 21 21 "-s"
+1 -1
pkgs/by-name/op/open-webui/package.nix
··· 30 30 url = "https://github.com/pyodide/pyodide/releases/download/${pyodideVersion}/pyodide-${pyodideVersion}.tar.bz2"; 31 31 }; 32 32 33 - npmDepsHash = "sha256-C7YuXxCrnJ+8L7JNh6TA8xi0G3y1FwFb9DQwhS+igME="; 33 + npmDepsHash = "sha256-MIjQ5Lbtv6kFHUyuc12JTItUPxIHoo65iUlSjBxw9Z8="; 34 34 35 35 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 36 36 # Until this is solved, running python packages from the browser will not work.
+32
pkgs/by-name/pa/patchcil/deps.json
··· 1 + [ 2 + { 3 + "pname": "AsmResolver", 4 + "version": "6.0.0-beta.1", 5 + "hash": "sha256-ZW61z6Qmztdy2NaiqxvNcP5RWBIiIO6CWNnqYq0MwoA=" 6 + }, 7 + { 8 + "pname": "AsmResolver.DotNet", 9 + "version": "6.0.0-beta.1", 10 + "hash": "sha256-VoTiIr2/r2my6sg2AOEeiqz9vZhWtq5mGaW2Hx90Uo4=" 11 + }, 12 + { 13 + "pname": "AsmResolver.PE", 14 + "version": "6.0.0-beta.1", 15 + "hash": "sha256-tTU/flTxRJaC4gkmI/gctqIriGIMntkgTs51TqzcQlg=" 16 + }, 17 + { 18 + "pname": "AsmResolver.PE.File", 19 + "version": "6.0.0-beta.1", 20 + "hash": "sha256-hPuFrpcm2VMiYEirsL4kYmAhOzjwjNXUklIfYJEonLo=" 21 + }, 22 + { 23 + "pname": "DotNet.Glob", 24 + "version": "3.1.3", 25 + "hash": "sha256-5uGSaGY1IqDjq4RCDLPJm0Lg9oyWmyR96OiNeGqSj84=" 26 + }, 27 + { 28 + "pname": "System.CommandLine", 29 + "version": "2.0.0-beta4.22272.1", 30 + "hash": "sha256-zSO+CYnMH8deBHDI9DHhCPj79Ce3GOzHCyH1/TiHxcc=" 31 + } 32 + ]
+76
pkgs/by-name/pa/patchcil/package.nix
··· 1 + { 2 + lib, 3 + fetchFromGitHub, 4 + buildDotnetModule, 5 + dotnetCorePackages, 6 + stdenv, 7 + nix-update-script, 8 + aot ? dotnetCorePackages.sdk_9_0.hasILCompiler && !stdenv.hostPlatform.isDarwin, 9 + }: 10 + 11 + buildDotnetModule rec { 12 + pname = "patchcil"; 13 + version = "0.2.2"; 14 + 15 + src = fetchFromGitHub { 16 + owner = "GGG-KILLER"; 17 + repo = "patchcil"; 18 + tag = "v${version}"; 19 + hash = "sha256-jqVXKp5ShWkIMAgmcwu9/QHy+Ey9d1Piv62wsO0Xm44="; 20 + }; 21 + 22 + nativeBuildInputs = lib.optional aot stdenv.cc; 23 + 24 + projectFile = "src/PatchCil.csproj"; 25 + nugetDeps = ./deps.json; 26 + 27 + dotnet-sdk = dotnetCorePackages.sdk_9_0; 28 + dotnet-runtime = if aot then null else dotnetCorePackages.runtime_9_0; 29 + 30 + selfContainedBuild = aot; 31 + dotnetFlags = lib.optionals (!aot) [ 32 + # Disable AOT 33 + "-p:PublishAot=false" 34 + "-p:InvariantGlobalization=false" 35 + "-p:EventSourceSupport=true" 36 + "-p:HttpActivityPropagationSupport=true" 37 + "-p:MetadataUpdaterSupport=true" 38 + "-p:MetricsSupport=true" 39 + "-p:UseNativeHttpHandler=false" 40 + "-p:XmlResolverIsNetworkingEnabledByDefault=true" 41 + "-p:EnableGeneratedComInterfaceComImportInterop=true" 42 + "-p:_ComObjectDescriptorSupport=true" 43 + "-p:_DataSetXmlSerializationSupport=true" 44 + "-p:_DefaultValueAttributeSupport=true" 45 + "-p:_DesignerHostSupport=true" 46 + "-p:_EnableConsumingManagedCodeFromNativeHosting=true" 47 + "-p:_UseManagedNtlm=true" 48 + ]; 49 + 50 + preFixup = lib.optionalString aot '' 51 + # Remove debug symbols as they shouldn't have anything in them. 52 + rm $out/lib/patchcil/patchcil.dbg 53 + ''; 54 + 55 + executables = [ "patchcil" ]; 56 + 57 + passthru = { 58 + updateScript = nix-update-script { }; 59 + }; 60 + 61 + meta = { 62 + description = "A small utility to modify the library paths from PInvoke in .NET assemblies."; 63 + homepage = "https://github.com/GGG-KILLER/patchcil"; 64 + license = lib.licenses.mit; 65 + maintainers = with lib.maintainers; [ ggg ]; 66 + mainProgram = "patchcil"; 67 + platforms = [ 68 + "x86_64-linux" 69 + "aarch64-linux" 70 + "x86_64-darwin" 71 + "aarch64-darwin" 72 + "x86_64-windows" 73 + "i686-windows" 74 + ]; 75 + }; 76 + }
+4 -4
pkgs/by-name/po/polarity/package.nix
··· 7 7 8 8 rustPlatform.buildRustPackage rec { 9 9 pname = "polarity"; 10 - version = "latest-unstable-2025-04-06"; 10 + version = "latest-unstable-2025-04-14"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "polarity-lang"; 14 14 repo = "polarity"; 15 - rev = "3d661ea0485a83b0c1065595839cb2d9d594e4e8"; 16 - hash = "sha256-4NeDOGzCq211SVVtfISq/Z901Et1zYhMQ/t7eNEBW9Y="; 15 + rev = "9ee17a9a167efdd660c4806e2d3cd5bc2b3177e1"; 16 + hash = "sha256-9MsPMQnqzePhxF9f9DgmZ9aq8TzLYi3jZA9HF2McVss="; 17 17 }; 18 18 19 19 useFetchCargoVendor = true; 20 - cargoHash = "sha256-S0d64jFKiyGVIFH8HhT4mzBEVUPDIMevvClTeqy0/28="; 20 + cargoHash = "sha256-23qr4bEAsN75ONnNmym9eWH38fRoMmP1EkmOaka73Ko="; 21 21 22 22 passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; 23 23
+1
pkgs/by-name/rk/rkbin/package.nix
··· 25 25 passthru = { 26 26 BL31_RK3568 = "${rkbin}/bin/rk35/rk3568_bl31_v1.44.elf"; 27 27 BL31_RK3588 = "${rkbin}/bin/rk35/rk3588_bl31_v1.47.elf"; 28 + TPL_RK3566 = "${rkbin}/bin/rk35/rk3566_ddr_1056MHz_v1.23.bin"; 28 29 TPL_RK3568 = "${rkbin}/bin/rk35/rk3568_ddr_1056MHz_v1.23.bin"; 29 30 TPL_RK3588 = "${rkbin}/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.18.bin"; 30 31 };
+4 -17
pkgs/by-name/sc/screen-pipe/package.nix
··· 9 9 openssl, 10 10 sqlite, 11 11 stdenv, 12 - darwin, 13 12 alsa-lib, 14 13 xorg, 14 + apple-sdk_12, 15 15 }: 16 16 rustPlatform.buildRustPackage rec { 17 17 pname = "screen-pipe"; ··· 49 49 openssl 50 50 sqlite 51 51 ] 52 - ++ lib.optionals stdenv.hostPlatform.isDarwin ( 53 - with darwin.apple_sdk_12_3.frameworks; 54 - [ 55 - CoreAudio 56 - AudioUnit 57 - CoreFoundation 58 - CoreGraphics 59 - CoreMedia 60 - IOKit 61 - Metal 62 - MetalPerformanceShaders 63 - Security 64 - ScreenCaptureKit 65 - SystemConfiguration 66 - ] 67 - ) 52 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 53 + apple-sdk_12 54 + ] 68 55 ++ lib.optionals stdenv.hostPlatform.isLinux [ 69 56 alsa-lib 70 57 xorg.libxcb
+3 -3
pkgs/by-name/sn/snx-rs/package.nix
··· 18 18 }: 19 19 rustPlatform.buildRustPackage rec { 20 20 pname = "snx-rs"; 21 - version = "3.1.1"; 21 + version = "3.1.2"; 22 22 23 23 src = fetchFromGitHub { 24 24 owner = "ancwrd1"; 25 25 repo = "snx-rs"; 26 26 tag = "v${version}"; 27 - hash = "sha256-eWtoCU5JkpHGcOLzjzj9icDlnIW1y+fiEn5V/E5IQ4U="; 27 + hash = "sha256-bLuIXd2pqqiyEP+lDTJYVDZkRZ0HcDkKFZd/qlpuf98="; 28 28 }; 29 29 30 30 passthru.updateScript = nix-update-script { }; ··· 57 57 ]; 58 58 59 59 useFetchCargoVendor = true; 60 - cargoHash = "sha256-Hjc2wKkNmlVjZb5wz9fq9hzUsxXJyeFYq+4C+weUlq0="; 60 + cargoHash = "sha256-E5OJVf9CkLn5mFtk4Yacs2OIvAuIw0idSs7QuTNvfgU="; 61 61 62 62 meta = { 63 63 description = "Open source Linux client for Checkpoint VPN tunnels";
+4
pkgs/by-name/sw/swagger-cli/package.nix
··· 21 21 npm run bump 22 22 ''; 23 23 24 + postInstall = '' 25 + find $out/lib/node_modules -xtype l -delete 26 + ''; 27 + 24 28 meta = with lib; { 25 29 description = "Swagger 2.0 and OpenAPI 3.0 command-line tool"; 26 30 homepage = "https://apitools.dev/swagger-cli/";
+79
pkgs/by-name/sy/synapse-admin-etkecc/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + fetchYarnDeps, 6 + yarnConfigHook, 7 + yarnBuildHook, 8 + nodejs, 9 + nix-update-script, 10 + writers, 11 + baseUrl ? null, 12 + }: 13 + 14 + assert lib.asserts.assertMsg ( 15 + baseUrl == null 16 + ) "The baseUrl parameter is deprecated, please use .withConfig instead"; 17 + 18 + stdenv.mkDerivation (finalAttrs: { 19 + pname = "synapse-admin-etkecc"; 20 + version = "0.10.3-etke39"; 21 + 22 + src = fetchFromGitHub { 23 + owner = "etkecc"; 24 + repo = "synapse-admin"; 25 + tag = "v${finalAttrs.version}"; 26 + hash = "sha256-1jE4QrHAnH27FrfpgM8rKd4I2AAJArtL0jgcWVc8TrU="; 27 + }; 28 + 29 + yarnOfflineCache = fetchYarnDeps { 30 + yarnLock = finalAttrs.src + "/yarn.lock"; 31 + hash = "sha256-60rS/OfPEQmmZ5j7mUjMPyK9prgNOX7MkYpu9djdjxQ="; 32 + }; 33 + 34 + nativeBuildInputs = [ 35 + nodejs 36 + yarnConfigHook 37 + yarnBuildHook 38 + ]; 39 + 40 + env = { 41 + NODE_ENV = "production"; 42 + SYNAPSE_ADMIN_VERSION = finalAttrs.version; 43 + }; 44 + 45 + installPhase = '' 46 + runHook preInstall 47 + cp -r dist $out 48 + runHook postInstall 49 + ''; 50 + 51 + passthru = { 52 + # https://github.com/etkecc/synapse-admin/blob/main/docs/config.md 53 + withConfig = 54 + config: 55 + stdenv.mkDerivation { 56 + inherit (finalAttrs) version meta; 57 + pname = "synapse-admin-etkecc-with-config"; 58 + dontUnpack = true; 59 + configFile = writers.writeJSON "synapse-admin-config" config; 60 + installPhase = '' 61 + runHook preInstall 62 + cp -r ${finalAttrs.finalPackage} $out 63 + chmod -R +w $out 64 + cp $configFile $out/config.json 65 + runHook postInstall 66 + ''; 67 + }; 68 + 69 + updateScript = nix-update-script { }; 70 + }; 71 + 72 + meta = { 73 + description = "Maintained fork of the admin console for (Matrix) Synapse homeservers, including additional features"; 74 + homepage = "https://github.com/etkecc/synapse-admin"; 75 + changelog = "https://github.com/etkecc/synapse-admin/releases/tag/v${finalAttrs.version}"; 76 + license = lib.licenses.asl20; 77 + maintainers = with lib.maintainers; [ defelo ]; 78 + }; 79 + })
+2 -2
pkgs/by-name/wa/walker/package.nix
··· 13 13 14 14 buildGoModule rec { 15 15 pname = "walker"; 16 - version = "0.12.19"; 16 + version = "0.12.21"; 17 17 18 18 src = fetchFromGitHub { 19 19 owner = "abenz1267"; 20 20 repo = "walker"; 21 21 rev = "v${version}"; 22 - hash = "sha256-XOOYalJ+6V/O/fhC5gEDk2m1yZ2e5DofRRIi8ETHgoQ="; 22 + hash = "sha256-wONW5CaPkLiVR5roGFx2SOcvcVDr9E9eCtojGBy3ErE="; 23 23 }; 24 24 25 25 vendorHash = "sha256-6PPNVnsH1eU4fLcZpxiBoHCzN/TUUxfTfmxDsBDPDKQ=";
+79
pkgs/by-name/ye/yelp-xsl/cve-2025-3155.patch
··· 1 + diff --git a/xslt/common/html.xsl b/xslt/common/html.xsl 2 + index 77aed075..82832fb4 100644 3 + --- a/xslt/common/html.xsl 4 + +++ b/xslt/common/html.xsl 5 + @@ -266,6 +266,16 @@ certain tokens, and you can add your own with {html.sidebar.mode}. See 6 + --> 7 + <xsl:param name="html.sidebar.right" select="''"/> 8 + 9 + +<!--@@========================================================================== 10 + +html.csp.nonce 11 + +An optional CSP nonce string to allow the execution of scripts and styles. 12 + +@revision[version=42.2 date=2025-02-22 status=final] 13 + + 14 + +This parameter takes a string value that will be added to the 'nonce' attribute 15 + +of all 'style' and 'script' tags in the generated HTML output. This paramter is used 16 + +to whitelist script and style tags that are allowed to be executed. 17 + +--> 18 + +<xsl:param name="html.csp.nonce" select="false()"/> 19 + 20 + <!--**========================================================================== 21 + html.output 22 + @@ -1124,6 +1134,11 @@ dimensions. All parameters can be automatically computed if not provided. 23 + </xsl:call-template> 24 + </xsl:param> 25 + <style type="text/css"> 26 + + <xsl:if test="$html.csp.nonce"> 27 + + <xsl:attribute name="nonce"> 28 + + <xsl:value-of select="$html.csp.nonce" /> 29 + + </xsl:attribute> 30 + + </xsl:if> 31 + <xsl:call-template name="html.css.content"> 32 + <xsl:with-param name="node" select="$node"/> 33 + <xsl:with-param name="direction" select="$direction"/> 34 + @@ -1533,6 +1548,11 @@ copy, override this template and provide the necessary files. 35 + <xsl:param name="node" select="."/> 36 + <xsl:if test="$node//mml:*[1]"> 37 + <script type="text/javascript"> 38 + + <xsl:if test="$html.csp.nonce"> 39 + + <xsl:attribute name="nonce"> 40 + + <xsl:value-of select="$html.csp.nonce" /> 41 + + </xsl:attribute> 42 + + </xsl:if> 43 + <xsl:attribute name="src"> 44 + <xsl:text>http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=MML_HTMLorMML</xsl:text> 45 + </xsl:attribute> 46 + @@ -1558,6 +1578,11 @@ result of {html.js.content} to that file. 47 + <xsl:template name="html.js.script"> 48 + <xsl:param name="node" select="."/> 49 + <script type="text/javascript"> 50 + + <xsl:if test="$html.csp.nonce"> 51 + + <xsl:attribute name="nonce"> 52 + + <xsl:value-of select="$html.csp.nonce" /> 53 + + </xsl:attribute> 54 + + </xsl:if> 55 + <xsl:call-template name="html.js.content"> 56 + <xsl:with-param name="node" select="$node"/> 57 + </xsl:call-template> 58 + @@ -2035,8 +2060,19 @@ on all `code` elements with `"syntax"` in the class value. 59 + <xsl:template name="html.js.syntax"> 60 + <xsl:param name="node" select="."/> 61 + <xsl:if test="$html.syntax.highlight"> 62 + - <script type="text/javascript" src="{$html.js.root}highlight.pack.js"></script> 63 + - <script><![CDATA[ 64 + + <script type="text/javascript" src="{$html.js.root}highlight.pack.js"> 65 + + <xsl:if test="$html.csp.nonce"> 66 + + <xsl:attribute name="nonce"> 67 + + <xsl:value-of select="$html.csp.nonce" /> 68 + + </xsl:attribute> 69 + + </xsl:if> 70 + + </script> 71 + + <script> 72 + + <xsl:if test="$html.csp.nonce"> 73 + + <xsl:attribute name="nonce"> 74 + + <xsl:value-of select="$html.csp.nonce" /> 75 + + </xsl:attribute> 76 + + </xsl:if><![CDATA[ 77 + document.addEventListener('DOMContentLoaded', function() { 78 + var matches = document.querySelectorAll('code.syntax') 79 + for (var i = 0; i < matches.length; i++) {
+4
pkgs/by-name/ye/yelp-xsl/package.nix
··· 29 29 30 30 doCheck = true; 31 31 32 + patches = [ 33 + ./cve-2025-3155.patch 34 + ]; 35 + 32 36 passthru = { 33 37 updateScript = gnome.updateScript { 34 38 packageName = "yelp-xsl";
+101
pkgs/by-name/ye/yelp/cve-2025-3155.patch
··· 1 + diff --git a/data/xslt/mal2html.xsl.in b/data/xslt/mal2html.xsl.in 2 + index 9e44b734..0a74da55 100644 3 + --- a/data/xslt/mal2html.xsl.in 4 + +++ b/data/xslt/mal2html.xsl.in 5 + @@ -19,6 +19,11 @@ 6 + <xsl:param name="mal.link.prefix" select="'xref:'"/> 7 + <xsl:param name="mal.link.extension" select="''"/> 8 + 9 + +<xsl:template name="html.head.top.custom"> 10 + + <xsl:param name="node" select="."/> 11 + + <meta http-equiv="Content-Security-Policy" content="default-src bogus-ghelp: bogus-gnome-help: bogus-help: bogus-help-list: bogus-info: bogus-man: ; script-src 'nonce-{$html.csp.nonce}'; style-src 'nonce-{$html.csp.nonce}'; "/> 12 + +</xsl:template> 13 + + 14 + <xsl:template name="mal.link.target.custom"> 15 + <xsl:param name="node" select="."/> 16 + <xsl:param name="action" select="$node/@action"/> 17 + diff --git a/data/xslt/man2html.xsl.in b/data/xslt/man2html.xsl.in 18 + index 676ce3eb..56bc1f5c 100644 19 + --- a/data/xslt/man2html.xsl.in 20 + +++ b/data/xslt/man2html.xsl.in 21 + @@ -131,7 +131,7 @@ 22 + the correct styling and a single character which we measure the 23 + width of and update each sheet as required. 24 + --> 25 + -<script type="text/javascript" language="javascript"> 26 + +<script type="text/javascript" language="javascript" nonce="{$html.csp.nonce}"> 27 + <xsl:text> 28 + $(document).ready (function () { 29 + var div = document.getElementById("invisible-char"); 30 + diff --git a/data/xslt/yelp-common.xsl.in b/data/xslt/yelp-common.xsl.in 31 + index 0c1ec9bb..421fc02d 100644 32 + --- a/data/xslt/yelp-common.xsl.in 33 + +++ b/data/xslt/yelp-common.xsl.in 34 + @@ -15,6 +15,13 @@ 35 + <xsl:param name="html.syntax.highlight" select="true()"/> 36 + <xsl:param name="html.js.root" select="'file://@XSL_JSDIR@/'"/> 37 + 38 + +<xsl:param name="html.csp.nonce" select="yelp:generate_nonce()"/> 39 + + 40 + +<xsl:template name="html.head.top.custom"> 41 + + <xsl:param name="node" select="."/> 42 + + <meta http-equiv="Content-Security-Policy" content="default-src bogus-ghelp: bogus-gnome-help: bogus-help: bogus-help-list: bogus-info: bogus-man: ; script-src 'nonce-{$html.csp.nonce}'; style-src 'unsafe-inline'; "/> 43 + +</xsl:template> 44 + + 45 + <xsl:template name="html.js.mathjax"> 46 + <xsl:param name="node" select="."/> 47 + <xsl:if test="$node//mml:*[1]"> 48 + diff --git a/libyelp/yelp-transform.c b/libyelp/yelp-transform.c 49 + index e74eb463..2ce1d05b 100644 50 + --- a/libyelp/yelp-transform.c 51 + +++ b/libyelp/yelp-transform.c 52 + @@ -71,6 +71,8 @@ static void xslt_yelp_cache (xsltTransformContextPtr ctxt, 53 + xsltStylePreCompPtr comp); 54 + static void xslt_yelp_aux (xmlXPathParserContextPtr ctxt, 55 + int nargs); 56 + +static void xslt_yelp_generate_nonce (xmlXPathParserContextPtr ctxt, 57 + + int nargs); 58 + 59 + enum { 60 + PROP_0, 61 + @@ -412,6 +414,10 @@ transform_run (YelpTransform *transform) 62 + BAD_CAST "input", 63 + BAD_CAST YELP_NAMESPACE, 64 + (xmlXPathFunction) xslt_yelp_aux); 65 + + xsltRegisterExtFunction (priv->context, 66 + + BAD_CAST "generate_nonce", 67 + + BAD_CAST YELP_NAMESPACE, 68 + + (xmlXPathFunction) xslt_yelp_generate_nonce); 69 + 70 + priv->output = xsltApplyStylesheetUser (priv->stylesheet, 71 + priv->input, 72 + @@ -607,3 +613,16 @@ xslt_yelp_aux (xmlXPathParserContextPtr ctxt, int nargs) 73 + xsltExtensionInstructionResultRegister (tctxt, ret); 74 + valuePush (ctxt, ret); 75 + } 76 + + 77 + +static void 78 + +xslt_yelp_generate_nonce (xmlXPathParserContextPtr ctxt, int nargs) 79 + +{ 80 + + GRand* rand; 81 + + gchar* nonce_str; 82 + + 83 + + rand = g_rand_new (); 84 + + nonce_str = g_strdup_printf("%08x%08x", g_rand_int (rand), g_rand_int (rand)); 85 + + xmlXPathReturnString (ctxt, xmlStrdup ((xmlChar *) nonce_str)); 86 + + g_free(nonce_str); 87 + + g_rand_free(rand); 88 + +} 89 + diff --git a/libyelp/yelp-view.c b/libyelp/yelp-view.c 90 + index 32ae131e..d544c5df 100644 91 + --- a/libyelp/yelp-view.c 92 + +++ b/libyelp/yelp-view.c 93 + @@ -971,7 +971,7 @@ view_external_uri (YelpView *view, 94 + 95 + if (app_info) 96 + { 97 + - if (!strstr (g_app_info_get_executable (app_info), "yelp")) 98 + + if (!strstr (g_app_info_get_executable (app_info), "yelp") && !strstr (struri, "%3C") && !strstr (struri, "%3E")) 99 + { 100 + GList l; 101 +
+4
pkgs/by-name/ye/yelp/package.nix
··· 49 49 gst_all_1.gst-plugins-good 50 50 ]; 51 51 52 + patches = [ 53 + ./cve-2025-3155.patch 54 + ]; 55 + 52 56 passthru = { 53 57 updateScript = gnome.updateScript { 54 58 packageName = "yelp";
+3 -3
pkgs/by-name/ze/zed-editor/package.nix
··· 98 98 in 99 99 rustPlatform.buildRustPackage (finalAttrs: { 100 100 pname = "zed-editor"; 101 - version = "0.181.5"; 101 + version = "0.181.8"; 102 102 103 103 outputs = 104 104 [ "out" ] ··· 110 110 owner = "zed-industries"; 111 111 repo = "zed"; 112 112 tag = "v${finalAttrs.version}"; 113 - hash = "sha256-wp8CoWEOSScQP2Q+lQJgstzTNNwiy0ONHOy6PjIlFBo="; 113 + hash = "sha256-gkbiV0kfeM1Ito8jVOBVneNjaXCA4PFayXJLIUmjqn4="; 114 114 }; 115 115 116 116 patches = [ ··· 128 128 ''; 129 129 130 130 useFetchCargoVendor = true; 131 - cargoHash = "sha256-FATdeVwbSUA/zfWV9TdoS4/fT9KWsekKGjQ34HJW4rk="; 131 + cargoHash = "sha256-PMLu2PeyRNu6VbHByL+clUoY/P8Rlrc+SvP5gDKrN/E="; 132 132 133 133 nativeBuildInputs = 134 134 [
-2
pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
··· 16 16 libgee, 17 17 libhandy, 18 18 libxml2, 19 - libsoup_2_4, 20 19 elementary-calendar, 21 20 }: 22 21 ··· 52 51 libgee 53 52 libhandy 54 53 libical 55 - libsoup_2_4 56 54 wingpanel 57 55 ]; 58 56
+20 -4
pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin/default.nix
··· 2 2 lib, 3 3 stdenv, 4 4 fetchurl, 5 + fetchpatch, 5 6 gettext, 6 7 pkg-config, 8 + xfce4-dev-tools, 7 9 glib, 8 10 gtk3, 9 11 json_c, 10 12 libxml2, 11 - libsoup_2_4, 13 + libsoup_3, 12 14 upower, 13 15 libxfce4ui, 14 16 libxfce4util, 15 17 xfce4-panel, 16 18 xfconf, 17 - hicolor-icon-theme, 18 19 gitUpdater, 19 20 }: 20 21 ··· 31 32 sha256 = "sha256-AC0f5jkG0vOgEvPLWMzv8d+8xGZ1njbHbTsD3QHA3Fc="; 32 33 }; 33 34 35 + patches = [ 36 + # Port to libsoup-3.0 37 + # https://gitlab.xfce.org/panel-plugins/xfce4-weather-plugin/-/merge_requests/28 38 + (fetchpatch { 39 + url = "https://gitlab.xfce.org/panel-plugins/xfce4-weather-plugin/-/commit/c0653a903c6f2cecdf41ac9eaeba4f4617656ffe.patch"; 40 + hash = "sha256-wAowm4ppBSKvYwOowZbbs5pnTh9EQ9XX05lA81wtsRM="; 41 + }) 42 + (fetchpatch { 43 + url = "https://gitlab.xfce.org/panel-plugins/xfce4-weather-plugin/-/commit/279c975dc1f95bd1ce9152eee1d19122e7deb9a8.patch"; 44 + hash = "sha256-gVfyXkE0bjBfvcQU9fDp+Gm59bD3VbAam04Jak8i31k="; 45 + }) 46 + ]; 47 + 34 48 nativeBuildInputs = [ 35 49 gettext 36 50 pkg-config 51 + xfce4-dev-tools 37 52 ]; 38 53 39 54 buildInputs = [ ··· 41 56 gtk3 42 57 json_c 43 58 libxml2 44 - libsoup_2_4 59 + libsoup_3 45 60 upower 46 61 libxfce4ui 47 62 libxfce4util 48 63 xfce4-panel 49 64 xfconf 50 - hicolor-icon-theme 51 65 ]; 66 + 67 + configureFlags = [ "--enable-maintainer-mode" ]; 52 68 53 69 enableParallelBuilding = true; 54 70
+1
pkgs/development/compilers/dotnet/default.nix
··· 78 78 79 79 patchNupkgs = callPackage ./patch-nupkgs.nix { }; 80 80 nugetPackageHook = callPackage ./nuget-package-hook.nix { }; 81 + autoPatchcilHook = callPackage ../../../build-support/dotnet/auto-patchcil-hook { }; 81 82 82 83 buildDotnetModule = callPackage ../../../build-support/dotnet/build-dotnet-module { }; 83 84 buildDotnetGlobalTool = callPackage ../../../build-support/dotnet/build-dotnet-global-tool { };
+2 -2
pkgs/development/libraries/gegl/default.nix
··· 38 38 39 39 stdenv.mkDerivation (finalAttrs: { 40 40 pname = "gegl"; 41 - version = "0.4.54"; 41 + version = "0.4.58"; 42 42 43 43 outputs = [ 44 44 "out" ··· 49 49 50 50 src = fetchurl { 51 51 url = "https://download.gimp.org/pub/gegl/${lib.versions.majorMinor finalAttrs.version}/gegl-${finalAttrs.version}.tar.xz"; 52 - hash = "sha256-NaNC8IxrQ3mt7iy1dI/E4wfP3PJBfAuxfWymVD8jix4="; 52 + hash = "sha256-1WeLvV/lNZQbgvlluX/Mk4XOk29wyYK9VlpT1VGdG/8="; 53 53 }; 54 54 55 55 nativeBuildInputs = [
+1 -3
pkgs/development/libraries/jemalloc/default.nix
··· 50 50 automake 51 51 ]; 52 52 53 - preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin '' 54 - export LDFLAGS="$LDFLAGS -Wl,-no_uuid -Wl,-install_name,@rpath/libjemalloc.2.dylib"; 55 - ''; 53 + preConfigure = ""; 56 54 57 55 # TODO: switch to autoreconfHook when updating beyond 5.3.0 58 56 # https://github.com/jemalloc/jemalloc/issues/2346
-39
pkgs/development/libraries/librdf/raptor.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchurl, 5 - libxml2, 6 - curl, 7 - }: 8 - 9 - stdenv.mkDerivation rec { 10 - pname = "raptor"; 11 - version = "1.4.21"; 12 - 13 - src = fetchurl { 14 - url = "http://download.librdf.org/source/raptor-${version}.tar.gz"; 15 - sha256 = "db3172d6f3c432623ed87d7d609161973d2f7098e3d2233d0702fbcc22cfd8ca"; 16 - }; 17 - 18 - buildInputs = [ 19 - libxml2 20 - curl 21 - ]; 22 - 23 - preBuild = '' 24 - sed -e '/curl\/types/d' -i src/*.c src/*.h 25 - ''; 26 - 27 - meta = { 28 - description = "RDF Parser Toolkit"; 29 - homepage = "https://librdf.org/raptor"; 30 - license = with lib.licenses; [ 31 - lgpl21 32 - asl20 33 - ]; 34 - maintainers = [ lib.maintainers.marcweber ]; 35 - platforms = lib.platforms.linux; 36 - # error: passing argument 2 of 'xmlSetStructuredErrorFunc' from incompatible pointer type [-Wincompatible-pointer-types] 37 - broken = true; 38 - }; 39 - }
+11
pkgs/development/libraries/qt-6/modules/qtwayland.nix
··· 7 7 wayland-scanner, 8 8 pkg-config, 9 9 libdrm, 10 + fetchpatch, 10 11 }: 11 12 12 13 qtModule { 13 14 pname = "qtwayland"; 15 + 16 + # Backport fix for popups not rendering properly 17 + # FIXME: remove in 6.9.1 18 + patches = [ 19 + (fetchpatch { 20 + url = "https://invent.kde.org/qt/qt/qtwayland/-/commit/e4556c59f0c8250da7c16759432b2ac0a5ac9d9f.patch"; 21 + hash = "sha256-wRNXBwecuULn5MD87HP20uSuxHiuQslKp20DIuCGheM="; 22 + }) 23 + ]; 24 + 14 25 # wayland-scanner needs to be propagated as both build 15 26 # (for the wayland-scanner binary) and host (for the 16 27 # actual wayland.xml protocol definition)
-14
pkgs/development/lua-modules/bit32.patch
··· 1 - diff -Naur lua-compat-5.2/c-api/compat-5.2.h lua-compat-5.2-patched/c-api/compat-5.2.h 2 - --- lua-compat-5.2/c-api/compat-5.2.h 2015-02-19 09:23:42.000000000 +1100 3 - +++ lua-compat-5.2-patched/c-api/compat-5.2.h 2019-06-17 17:58:13.585361793 +1000 4 - @@ -146,8 +146,10 @@ 5 - #define lua_pushglobaltable(L) \ 6 - lua_pushvalue(L, LUA_GLOBALSINDEX) 7 - 8 - +#if !defined(luaL_newlib) 9 - #define luaL_newlib(L, l) \ 10 - (lua_newtable((L)),luaL_setfuncs((L), (l), 0)) 11 - +#endif 12 - 13 - void luaL_checkversion (lua_State *L); 14 -
+72 -72
pkgs/development/lua-modules/generated-packages.nix
··· 169 169 bit32 = callPackage ( 170 170 { 171 171 buildLuarocksPackage, 172 - fetchFromGitHub, 173 172 fetchurl, 173 + fetchzip, 174 + luaAtLeast, 174 175 luaOlder, 175 176 }: 176 177 buildLuarocksPackage { 177 178 pname = "bit32"; 178 - version = "5.3.0-1"; 179 + version = "5.3.5.1-1"; 179 180 knownRockspec = 180 181 (fetchurl { 181 - url = "mirror://luarocks/bit32-5.3.0-1.rockspec"; 182 - sha256 = "1d6xdihpksrj5a3yvsvnmf3vfk15hj6f8n1rrs65m7adh87hc0yd"; 182 + url = "mirror://luarocks/bit32-5.3.5.1-1.rockspec"; 183 + sha256 = "11mg0hmmil92hkwamm91ghih6ys9pqsakx0z9jgnqxymnl887j51"; 183 184 }).outPath; 184 - src = fetchFromGitHub { 185 - owner = "keplerproject"; 186 - repo = "lua-compat-5.2"; 187 - rev = "bitlib-5.3.0"; 188 - hash = "sha256-Ek7FMWskfHwHhEVfjTDZyL/cruHDiQo5Jmnwsvai+MY="; 185 + src = fetchzip { 186 + url = "https://github.com/keplerproject/lua-compat-5.3/archive/v0.10.zip"; 187 + sha256 = "1caxn228gx48g6kymp9w7kczgxcg0v0cd5ixsx8viybzkd60dcn4"; 189 188 }; 190 189 191 - disabled = luaOlder "5.1"; 190 + disabled = luaOlder "5.1" || luaAtLeast "5.5"; 192 191 193 192 meta = { 194 193 homepage = "http://www.lua.org/manual/5.2/manual.html#6.7"; 195 194 description = "Lua 5.2 bit manipulation library"; 196 195 maintainers = with lib.maintainers; [ lblasc ]; 197 - license.fullName = "MIT/X11"; 196 + license.fullName = "MIT"; 198 197 }; 199 198 } 200 199 ) { }; ··· 815 814 }: 816 815 buildLuarocksPackage { 817 816 pname = "fzf-lua"; 818 - version = "0.0.1823-1"; 817 + version = "0.0.1836-1"; 819 818 knownRockspec = 820 819 (fetchurl { 821 - url = "mirror://luarocks/fzf-lua-0.0.1823-1.rockspec"; 822 - sha256 = "0icbchqxr546j21xq2f6w122xkcmqgpg9pywlip8xjj8vsdfx6n6"; 820 + url = "mirror://luarocks/fzf-lua-0.0.1836-1.rockspec"; 821 + sha256 = "1q0wfck09d0449q8dyb95cyyr8z0r8292dp8vrqq3jcd7qkjcf1q"; 823 822 }).outPath; 824 823 src = fetchzip { 825 - url = "https://github.com/ibhagwan/fzf-lua/archive/47b85a25c0c0b2c20b4e75199ed01bb71e7814f5.zip"; 826 - sha256 = "1znlhvb84x3lipa5n1cdk1kpid49h647hnnwy01xw447vk49p11p"; 824 + url = "https://github.com/ibhagwan/fzf-lua/archive/ba5ba606f11967e08165aeeb9d7abe04d0835f58.zip"; 825 + sha256 = "1r66yrpzzzazasmb450xpr11f0sjg8ckrf91x4c66ypsanz2z2ws"; 827 826 }; 828 827 829 828 disabled = luaOlder "5.1"; ··· 881 880 src = fetchFromGitHub { 882 881 owner = "lewis6991"; 883 882 repo = "gitsigns.nvim"; 884 - rev = "c6fedfd0b1715ee624384b134becec0a7b0a3d28"; 885 - hash = "sha256-c+7Bf7SqVaNiYHczouYChDrurDdTxIDzr/TLMtLqZ50="; 883 + rev = "fcfa7a989cd6fed10abf02d9880dc76d7a38167d"; 884 + hash = "sha256-cg8r0yuuSE8G5MTj0pET8MzJ+VQf+HsXDJx5FzriM78="; 886 885 }; 887 886 888 887 disabled = lua.luaversion != "5.1"; ··· 895 894 } 896 895 ) { }; 897 896 898 - haskell-tools-nvim = callPackage ( 897 + grug-far-nvim = callPackage ( 899 898 { 900 899 buildLuarocksPackage, 901 900 fetchurl, ··· 903 902 luaOlder, 904 903 }: 905 904 buildLuarocksPackage { 906 - pname = "haskell-tools.nvim"; 907 - version = "5.0.0-1"; 905 + pname = "grug-far.nvim"; 906 + version = "1.6.6-1"; 908 907 knownRockspec = 909 908 (fetchurl { 910 - url = "mirror://luarocks/haskell-tools.nvim-5.0.0-1.rockspec"; 911 - sha256 = "0ps1aqz344b2kc0p5zs70i4n9s07fnc5b2kxdbyj1x8cn3ndv959"; 909 + url = "mirror://luarocks/grug-far.nvim-1.6.6-1.rockspec"; 910 + sha256 = "1axdj580nv078d4rh7q9rqd5rd46cvd3gfif0cbqys2kpv0xx53d"; 912 911 }).outPath; 913 912 src = fetchzip { 914 - url = "https://github.com/mrcjkb/haskell-tools.nvim/archive/v5.0.0.zip"; 915 - sha256 = "0xwxxwcn775yjqjs90mr1qs9hf5dyqxhkii38yfq1cv5w8bnlrff"; 913 + url = "https://github.com/MagicDuck/grug-far.nvim/archive/d6c682af0033b4fbb3645a997e3b4a9189ed1ed6.zip"; 914 + sha256 = "0v1nfyiymb17p3fkk6ih1pxiib25f8vg74k79vp9r5wr56l9ja9c"; 916 915 }; 917 916 918 917 disabled = luaOlder "5.1"; 919 918 920 919 meta = { 921 - homepage = "https://github.com/mrcjkb/haskell-tools.nvim"; 922 - description = " 🦥 Supercharge your Haskell experience in neovim!"; 923 - maintainers = with lib.maintainers; [ mrcjkb ]; 924 - license.fullName = "GPL-2.0"; 920 + homepage = "https://github.com/MagicDuck/grug-far.nvim"; 921 + description = "Find And Replace plugin for neovim"; 922 + maintainers = with lib.maintainers; [ teto ]; 923 + license.fullName = "MIT"; 925 924 }; 926 925 } 927 926 ) { }; 928 927 929 - grug-far-nvim = callPackage ( 928 + haskell-tools-nvim = callPackage ( 930 929 { 931 930 buildLuarocksPackage, 932 931 fetchurl, ··· 934 933 luaOlder, 935 934 }: 936 935 buildLuarocksPackage { 937 - pname = "grug-far.nvim"; 938 - version = "1.5.15-1"; 936 + pname = "haskell-tools.nvim"; 937 + version = "5.0.0-1"; 939 938 knownRockspec = 940 939 (fetchurl { 941 - url = "mirror://luarocks/grug-far.nvim-1.5.15-1.rockspec"; 942 - sha256 = "1jp6b6kqp389wli766rypam4hr6dqv6v5r8kv1dk21d7glz8hg6h"; 940 + url = "mirror://luarocks/haskell-tools.nvim-5.0.0-1.rockspec"; 941 + sha256 = "0ps1aqz344b2kc0p5zs70i4n9s07fnc5b2kxdbyj1x8cn3ndv959"; 943 942 }).outPath; 944 943 src = fetchzip { 945 - url = "https://github.com/MagicDuck/grug-far.nvim/archive/5da116bc99a03e14be3b824e319f4e49c676af78.zip"; 946 - sha256 = "196l6vy9573fkwld3cl927706a6gfgmc71kn1kx3pmk8l6p8hcya"; 944 + url = "https://github.com/mrcjkb/haskell-tools.nvim/archive/v5.0.0.zip"; 945 + sha256 = "0xwxxwcn775yjqjs90mr1qs9hf5dyqxhkii38yfq1cv5w8bnlrff"; 947 946 }; 948 947 949 948 disabled = luaOlder "5.1"; 950 949 951 950 meta = { 952 - homepage = "https://github.com/MagicDuck/grug-far.nvim"; 953 - description = "Find And Replace plugin for neovim"; 954 - license.fullName = "MIT"; 951 + homepage = "https://github.com/mrcjkb/haskell-tools.nvim"; 952 + description = " 🦥 Supercharge your Haskell experience in neovim!"; 953 + maintainers = with lib.maintainers; [ mrcjkb ]; 954 + license.fullName = "GPL-2.0"; 955 955 }; 956 956 } 957 957 ) { }; ··· 1979 1979 }: 1980 1980 buildLuarocksPackage { 1981 1981 pname = "lua-resty-openssl"; 1982 - version = "1.5.2-1"; 1982 + version = "1.6.0-1"; 1983 1983 knownRockspec = 1984 1984 (fetchurl { 1985 - url = "mirror://luarocks/lua-resty-openssl-1.5.2-1.rockspec"; 1986 - sha256 = "1nrriyf9fvn0achn2drvb915kx7cq4ldlyg24g118i8ib1fr9lgd"; 1985 + url = "mirror://luarocks/lua-resty-openssl-1.6.0-1.rockspec"; 1986 + sha256 = "108a53210khinpwk88pcz6s8n2f6hhaib3jfrgi9kjp0r4s14c4q"; 1987 1987 }).outPath; 1988 1988 src = fetchFromGitHub { 1989 1989 owner = "fffonion"; 1990 1990 repo = "lua-resty-openssl"; 1991 - rev = "1.5.2"; 1992 - hash = "sha256-vkcqUaHCIBBmcVP4csqjn6oPSBvUF8MBzveIc6jJKWY="; 1991 + rev = "1.6.0"; 1992 + hash = "sha256-TqBRTFV1255Ct2mm2T8bLJNdSWZTEB6wOOHGRZczcVk="; 1993 1993 }; 1994 1994 1995 1995 meta = { ··· 2011 2011 }: 2012 2012 buildLuarocksPackage { 2013 2013 pname = "lua-resty-session"; 2014 - version = "4.0.5-1"; 2014 + version = "4.1.0-1"; 2015 2015 knownRockspec = 2016 2016 (fetchurl { 2017 - url = "mirror://luarocks/lua-resty-session-4.0.5-1.rockspec"; 2018 - sha256 = "0h0kqwna46mrraq310qjb7yigxwv13n4czk24xnqr21czxsskzkg"; 2017 + url = "mirror://luarocks/lua-resty-session-4.1.0-1.rockspec"; 2018 + sha256 = "0cmx2rwiwiprg1112chxrfvp7gs2jg0grdnkb5n7yhd5rnp0bhhw"; 2019 2019 }).outPath; 2020 2020 src = fetchFromGitHub { 2021 2021 owner = "bungle"; 2022 2022 repo = "lua-resty-session"; 2023 - rev = "v4.0.5"; 2024 - hash = "sha256-n0m6/4JnUPoidM7oWKd+ZyNbb/X/h8w21ptCrFaA8SI="; 2023 + rev = "v4.1.0"; 2024 + hash = "sha256-MXB7Z/0drMOcTwJBHNwZx4iqem1XfG6uwozW+RxL588="; 2025 2025 }; 2026 2026 2027 2027 disabled = luaOlder "5.1"; ··· 2730 2730 knownRockspec = 2731 2731 (fetchurl { 2732 2732 url = "mirror://luarocks/lualine.nvim-scm-1.rockspec"; 2733 - sha256 = "044bnw2phsxjsxkraaq9phj932f2f7vsbvfa91p7qfp2yjshixjf"; 2733 + sha256 = "1cf500jgdd3f9d36ad9h3vf20vyz4za0lqsdrx9l3si39n71k92v"; 2734 2734 }).outPath; 2735 2735 src = fetchFromGitHub { 2736 2736 owner = "nvim-lualine"; 2737 2737 repo = "lualine.nvim"; 2738 - rev = "0ea56f91b7f51a37b749c050a5e5dfdd56b302b3"; 2739 - hash = "sha256-VSWWvhnaeNoeM7U1SwerL8vqu81eg8YJtLnJDdEjvzY="; 2738 + rev = "86fe39534b7da729a1ac56c0466e76f2c663dc42"; 2739 + hash = "sha256-XeAFXg6GWzMJV/HzfdCXtv/effAHVU7mioFKTf1kDc8="; 2740 2740 }; 2741 2741 2742 2742 disabled = luaOlder "5.1"; ··· 3216 3216 version = "0.6.0-1"; 3217 3217 knownRockspec = 3218 3218 (fetchurl { 3219 - url = "mirror://luarocks/luasystem-0.6.0-1.rockspec"; 3220 - sha256 = "0pbjxfa56wy2bzs3q0bsxv27m8l2f3p2frvkprah2n708pxzi84s"; 3219 + url = "mirror://luarocks/luasystem-0.6.2-1.rockspec"; 3220 + sha256 = "0s6vd8a35x156ccp9b95rzqgklmgvz3a2bcfp4g09vlyh2kqy1am"; 3221 3221 }).outPath; 3222 3222 src = fetchFromGitHub { 3223 3223 owner = "lunarmodules"; 3224 3224 repo = "luasystem"; 3225 - rev = "v0.6.0"; 3226 - hash = "sha256-xhMdtI8tVBIQ4hsGe3l9z/ywJTvJhtGoE9hVnzvrTGc="; 3225 + rev = "v0.6.2"; 3226 + hash = "sha256-EcKs8W8UAbyA5WCt75tGO2osNgFbL8SNUl78vKSy82o="; 3227 3227 }; 3228 3228 3229 3229 disabled = luaOlder "5.1"; ··· 4080 4080 src = fetchFromGitHub { 4081 4081 owner = "hrsh7th"; 4082 4082 repo = "nvim-cmp"; 4083 - rev = "059e89495b3ec09395262f16b1ad441a38081d04"; 4084 - hash = "sha256-YC2ehgS759GzRUySPqmb1NQFxJ9HnP731oVYptWU3Xk="; 4083 + rev = "b5311ab3ed9c846b585c0c15b7559be131ec4be9"; 4084 + hash = "sha256-l5z+PT4S9b09d2M+J/tHVd9W9Ss3eQQk5Ykpz2Qjxxw="; 4085 4085 }; 4086 4086 4087 4087 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4336 4336 src = fetchFromGitHub { 4337 4337 owner = "nvim-lua"; 4338 4338 repo = "plenary.nvim"; 4339 - rev = "3707cdb1e43f5cea73afb6037e6494e7ce847a66"; 4340 - hash = "sha256-18zX3kZ42ynRefFP0mOcy6ESEpejTukjNi4jCRXx48A="; 4339 + rev = "857c5ac632080dba10aae49dba902ce3abf91b35"; 4340 + hash = "sha256-8FV5RjF7QbDmQOQynpK7uRKONKbPRYbOPugf9ZxNvUs="; 4341 4341 }; 4342 4342 4343 4343 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4426 4426 }: 4427 4427 buildLuarocksPackage { 4428 4428 pname = "rest.nvim"; 4429 - version = "3.9.1-1"; 4429 + version = "3.12.0-1"; 4430 4430 knownRockspec = 4431 4431 (fetchurl { 4432 - url = "mirror://luarocks/rest.nvim-3.9.1-1.rockspec"; 4433 - sha256 = "02arw1hr702jfadnc72yr3kkhfcm7hfg1ipis7nlhvsj25i2yl54"; 4432 + url = "mirror://luarocks/rest.nvim-3.12.0-1.rockspec"; 4433 + sha256 = "1i16gr471v9v6jdwrqizagznpjdr58ijx0cs9yjnd8b6b9cwmxi9"; 4434 4434 }).outPath; 4435 4435 src = fetchzip { 4436 - url = "https://github.com/rest-nvim/rest.nvim/archive/v3.9.1.zip"; 4437 - sha256 = "15lkdr77q7zxqbh3xkx3ilj38hp5jfinrqw92q3dpmxc8d8wk9iw"; 4436 + url = "https://github.com/rest-nvim/rest.nvim/archive/v3.12.0.zip"; 4437 + sha256 = "1494r144idrq09da8ra4q0yk7giqh4hxs05397ja7hpxyz0yabdr"; 4438 4438 }; 4439 4439 4440 4440 disabled = luaOlder "5.1"; ··· 4649 4649 }: 4650 4650 buildLuarocksPackage { 4651 4651 pname = "rustaceanvim"; 4652 - version = "6.0.1-1"; 4652 + version = "6.0.2-1"; 4653 4653 knownRockspec = 4654 4654 (fetchurl { 4655 - url = "mirror://luarocks/rustaceanvim-6.0.1-1.rockspec"; 4656 - sha256 = "02qxbrk32fay17nlxs4sf4dpkvsfnj5lkm8wsb2q0a8jaa2v7dxv"; 4655 + url = "mirror://luarocks/rustaceanvim-6.0.2-1.rockspec"; 4656 + sha256 = "1z2s2f91mnc9fxr5ykffajpj2c92rjgnwipfvi2lhhl2p5hpgf9f"; 4657 4657 }).outPath; 4658 4658 src = fetchzip { 4659 - url = "https://github.com/mrcjkb/rustaceanvim/archive/v6.0.1.zip"; 4660 - sha256 = "032barkibbsjjwzq87jbn2sqni3f5bmfvxn2bcq589viwdrziwgf"; 4659 + url = "https://github.com/mrcjkb/rustaceanvim/archive/v6.0.2.zip"; 4660 + sha256 = "09wrfmzbk81xax5p4wzczsvv1x28nv54mayi12fvzv6c3bmcsbvj"; 4661 4661 }; 4662 4662 4663 4663 disabled = luaOlder "5.1"; ··· 4962 4962 src = fetchFromGitHub { 4963 4963 owner = "nvim-telescope"; 4964 4964 repo = "telescope.nvim"; 4965 - rev = "415af52339215926d705cccc08145f3782c4d132"; 4966 - hash = "sha256-5y8srYKaAqFplMtDjsc8GdDF8yui5vCNMiOeFLrC/sM="; 4965 + rev = "a4ed82509cecc56df1c7138920a1aeaf246c0ac5"; 4966 + hash = "sha256-GF1zOHZItVZm3bx2wqI4hPj7EXQJ2F9KS4MtaEt2gm0="; 4967 4967 }; 4968 4968 4969 4969 disabled = lua.luaversion != "5.1";
+14 -11
pkgs/development/lua-modules/overrides.nix
··· 4 4 cargo, 5 5 cmake, 6 6 7 - # plenary utilities 7 + ast-grep, 8 8 which, 9 9 findutils, 10 10 coreutils, ··· 86 86 ##########################################3 87 87 #### manual fixes for generated packages 88 88 ##########################################3 89 - bit32 = prev.bit32.overrideAttrs (oa: { 90 - # Small patch in order to no longer redefine a Lua 5.2 function that Luajit 91 - # 2.1 also provides, see https://github.com/LuaJIT/LuaJIT/issues/325 for 92 - # more 93 - patches = [ 94 - ./bit32.patch 95 - ]; 96 - meta.broken = luaOlder "5.1" || luaAtLeast "5.4"; 97 - }); 98 - 99 89 busted = prev.busted.overrideAttrs (oa: { 100 90 nativeBuildInputs = oa.nativeBuildInputs ++ [ 101 91 installShellFiles ··· 227 217 runHook preCheck 228 218 # feel free to disable/adjust the tests 229 219 rm tests/base/test_apply.lua tests/base/test_vimscript_interpreter.lua 220 + 221 + # Dependencies needed in special location 222 + mkdir -p deps/{ripgrep,astgrep} 223 + mkdir {temp_test_dir,temp_history_dir} 224 + ln -s ${lib.getExe ripgrep} deps/ripgrep/rg 225 + ln -s ${lib.getExe ast-grep} deps/astgrep/ast-grep 226 + ln -s ${vimPlugins.mini-nvim} deps/mini.nvim 227 + 228 + # Update dependency check to respect packaged version 229 + substituteInPlace lua/grug-far/test/dependencies.lua \ 230 + --replace-fail "local RG_VERSION = '14.1.0'" "local RG_VERSION = '${lib.getVersion ripgrep}'" \ 231 + --replace-fail "local SG_VERSION = '0.35.0'" "local SG_VERSION = '${lib.getVersion ast-grep}'" 232 + 230 233 make test dir=base 231 234 runHook postCheck 232 235 '';
+2 -2
pkgs/development/python-modules/craft-platforms/default.nix
··· 14 14 15 15 buildPythonPackage rec { 16 16 pname = "craft-platforms"; 17 - version = "0.7.1"; 17 + version = "0.8.0"; 18 18 pyproject = true; 19 19 20 20 disabled = pythonOlder "3.10"; ··· 23 23 owner = "canonical"; 24 24 repo = "craft-platforms"; 25 25 tag = version; 26 - hash = "sha256-+7uaN+ePu+88goPCj9KM3dKhTwV2erP0/Fg05LqOWPg="; 26 + hash = "sha256-U57hmQ3UPuwoue8kAxAXiH8ecViryFqIxmpnaAdQnZo="; 27 27 }; 28 28 29 29 postPatch = ''
+2 -2
pkgs/development/python-modules/islpy/default.nix
··· 20 20 21 21 buildPythonPackage rec { 22 22 pname = "islpy"; 23 - version = "2025.1.3"; 23 + version = "2025.1.5"; 24 24 pyproject = true; 25 25 26 26 src = fetchFromGitHub { 27 27 owner = "inducer"; 28 28 repo = "islpy"; 29 29 tag = "v${version}"; 30 - hash = "sha256-3HUfr0W5X8HaViUD0kpKbdxTTRS/TW6PvAGl8vr03XU="; 30 + hash = "sha256-hzqxVLNKm63XliX5rDB54f6n1nJPVJJSAMmNTInbOEE="; 31 31 }; 32 32 33 33 build-system = [
+2 -2
pkgs/development/python-modules/nomadnet/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "nomadnet"; 15 - version = "0.6.1"; 15 + version = "0.6.2"; 16 16 pyproject = true; 17 17 18 18 disabled = pythonOlder "3.7"; ··· 21 21 owner = "markqvist"; 22 22 repo = "NomadNet"; 23 23 tag = version; 24 - hash = "sha256-TKn35rrWsHo/5bGriMcPx+lPvhWzmVXU3EG4KU/ebwI="; 24 + hash = "sha256-HBNZvU4ZCLgEn8ul1iflaY18novZMnn8GIojriX/ej0="; 25 25 }; 26 26 27 27 build-system = [ setuptools ];
+2 -2
pkgs/development/python-modules/rns/default.nix
··· 20 20 21 21 buildPythonPackage rec { 22 22 pname = "rns"; 23 - version = "0.9.3"; 23 + version = "0.9.4"; 24 24 pyproject = true; 25 25 26 26 src = fetchFromGitHub { 27 27 owner = "markqvist"; 28 28 repo = "Reticulum"; 29 29 tag = version; 30 - hash = "sha256-50L+5WVsYaidz71rkGZny2KlCR3ZfPEQJEPI38MOBWA="; 30 + hash = "sha256-Z6Af/PNQkbo+0xn0kEh2I8T03D/gQpuRNHBhLX3mkms="; 31 31 }; 32 32 33 33 patches = [
+2 -2
pkgs/development/tools/pnpm/default.nix
··· 16 16 hash = "sha256-z4anrXZEBjldQoam0J1zBxFyCsxtk+nc6ax6xNxKKKc="; 17 17 }; 18 18 "10" = { 19 - version = "10.8.0"; 20 - hash = "sha256-Kb8sXOrqeZHugu7BX+cWLg+tgW0MSms1oWwB05J0v2k="; 19 + version = "10.8.1"; 20 + hash = "sha256-2LLrvGXPAsNJ7Ka0XJZAuRDxa2revbe5JunbRA5Hysc="; 21 21 }; 22 22 }; 23 23
+3 -3
pkgs/games/minecraft-servers/versions.json
··· 1 1 { 2 2 "1.21": { 3 - "sha1": "4707d00eb834b446575d89a61a11b5d548d8c001", 4 - "url": "https://piston-data.mojang.com/v1/objects/4707d00eb834b446575d89a61a11b5d548d8c001/server.jar", 5 - "version": "1.21.4", 3 + "sha1": "e6ec2f64e6080b9b5d9b471b291c33cc7f509733", 4 + "url": "https://piston-data.mojang.com/v1/objects/e6ec2f64e6080b9b5d9b471b291c33cc7f509733/server.jar", 5 + "version": "1.21.5", 6 6 "javaVersion": 21 7 7 }, 8 8 "1.20": {
+7
pkgs/misc/arm-trusted-firmware/default.nix
··· 179 179 platformCanUseHDCPBlob = true; 180 180 }; 181 181 182 + armTrustedFirmwareRK3568 = buildArmTrustedFirmware rec { 183 + extraMakeFlags = [ "bl31" ]; 184 + platform = "rk3568"; 185 + extraMeta.platforms = [ "aarch64-linux" ]; 186 + filesToInstall = [ "build/${platform}/release/bl31/bl31.elf" ]; 187 + }; 188 + 182 189 armTrustedFirmwareRK3588 = buildArmTrustedFirmware rec { 183 190 extraMakeFlags = [ "bl31" ]; 184 191 platform = "rk3588";
+15
pkgs/misc/uboot/default.nix
··· 24 24 armTrustedFirmwareAllwinnerH616, 25 25 armTrustedFirmwareRK3328, 26 26 armTrustedFirmwareRK3399, 27 + armTrustedFirmwareRK3568, 27 28 armTrustedFirmwareRK3588, 28 29 armTrustedFirmwareS905, 29 30 buildPackages, ··· 604 605 "x86_64-linux" 605 606 ]; 606 607 filesToInstall = [ "u-boot.rom" ]; 608 + }; 609 + 610 + ubootQuartz64B = buildUBoot { 611 + defconfig = "quartz64-b-rk3566_defconfig"; 612 + extraMeta.platforms = [ "aarch64-linux" ]; 613 + BL31 = "${armTrustedFirmwareRK3568}/bl31.elf"; 614 + ROCKCHIP_TPL = rkbin.TPL_RK3568; 615 + filesToInstall = [ 616 + "idbloader.img" 617 + "idbloader-spi.img" 618 + "u-boot.itb" 619 + "u-boot-rockchip.bin" 620 + "u-boot-rockchip-spi.bin" 621 + ]; 607 622 }; 608 623 609 624 ubootRaspberryPi = buildUBoot {
+3 -3
pkgs/servers/home-assistant/custom-lovelace-modules/sankey-chart/package.nix
··· 6 6 7 7 buildNpmPackage rec { 8 8 pname = "sankey-chart"; 9 - version = "3.6.0"; 9 + version = "3.7.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "MindFreeze"; 13 13 repo = "ha-sankey-chart"; 14 14 rev = "v${version}"; 15 - hash = "sha256-Yjh9HrL7zcMFSlXLRW071zG4Wiyv9q2siIw5Ego4e80="; 15 + hash = "sha256-krWK2P7tjK5loFYXZ5+b8UN4TEKPObW2QK+3l7+zvj0="; 16 16 }; 17 17 18 - npmDepsHash = "sha256-rrzBw+zkvSf6+ABSGfC8rvtQ+pxYyZOPDW7TBpA0ysQ="; 18 + npmDepsHash = "sha256-OBgmmPcwpMxXrytP2tHzCFe1imz1S6LHBWJkruw3jgI="; 19 19 20 20 installPhase = '' 21 21 runHook preInstall
+1
pkgs/top-level/aliases.nix
··· 946 946 libquotient = libsForQt5.libquotient; # Added 2023-11-11 947 947 librarian-puppet-go = throw "'librarian-puppet-go' has been removed, as it's upstream is unmaintained"; # Added 2024-06-10 948 948 librdf = throw "'librdf' has been renamed to/replaced by 'lrdf'"; # Converted to throw 2024-10-17 949 + librdf_raptor = throw "librdf_raptor has been remove due to failing to build and being unmaintained"; # Added 2025-04-14 949 950 LibreArp = librearp; # Added 2024-06-12 950 951 LibreArp-lv2 = librearp-lv2; # Added 2024-06-12 951 952 libreddit = throw "'libreddit' has been removed because it is unmaintained upstream. Consider using 'redlib', a maintained fork"; # Added 2024-07-17
+20 -7
pkgs/top-level/all-packages.nix
··· 491 491 buildDotnetGlobalTool 492 492 mkNugetSource 493 493 mkNugetDeps 494 + autoPatchcilHook 494 495 ; 495 496 496 497 dotnetenv = callPackage ../build-support/dotnet/dotnetenv { ··· 11042 11043 haskellLib = haskell.lib.compose; 11043 11044 }; 11044 11045 11045 - librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { }; 11046 - 11047 11046 librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; 11048 11047 11049 11048 librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; ··· 12713 12712 armTrustedFirmwareQemu 12714 12713 armTrustedFirmwareRK3328 12715 12714 armTrustedFirmwareRK3399 12715 + armTrustedFirmwareRK3568 12716 12716 armTrustedFirmwareRK3588 12717 12717 armTrustedFirmwareS905 12718 12718 ; ··· 13283 13283 ubootQemuArm 13284 13284 ubootQemuRiscv64Smode 13285 13285 ubootQemuX86 13286 + ubootQuartz64B 13286 13287 ubootRaspberryPi 13287 13288 ubootRaspberryPi2 13288 13289 ubootRaspberryPi3_32bit ··· 14166 14167 avahi = avahi.override { withLibdnssdCompat = true; }; 14167 14168 }; 14168 14169 14169 - keepassxc = libsForQt5.callPackage ../applications/misc/keepassxc { 14170 - inherit (darwin.apple_sdk_11_0.frameworks) LocalAuthentication; 14171 - }; 14172 - 14173 14170 evolution-data-server-gtk4 = evolution-data-server.override { 14174 14171 withGtk3 = false; 14175 14172 withGtk4 = true; ··· 14487 14484 14488 14485 inherit (xorg) xlsfonts; 14489 14486 14490 - gimp = callPackage ../applications/graphics/gimp { 14487 + gimp3 = callPackage ../applications/graphics/gimp { 14488 + lcms = lcms2; 14489 + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; 14490 + }; 14491 + 14492 + gimp3-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix { 14493 + gimpPlugins = gimp3Plugins; 14494 + plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied 14495 + }; 14496 + 14497 + gimp3Plugins = recurseIntoAttrs ( 14498 + callPackage ../applications/graphics/gimp/plugins { 14499 + gimp = gimp3; 14500 + } 14501 + ); 14502 + 14503 + gimp = callPackage ../applications/graphics/gimp/2.0 { 14491 14504 autoreconfHook = buildPackages.autoreconfHook269; 14492 14505 lcms = lcms2; 14493 14506 inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;