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 ```{=include=} sections 8 autoconf.section.md 9 automake.section.md 10 autopatchelf.section.md 11 aws-c-common.section.md 12 bmake.section.md
··· 7 ```{=include=} sections 8 autoconf.section.md 9 automake.section.md 10 + autopatchcil.section.md 11 autopatchelf.section.md 12 aws-c-common.section.md 13 bmake.section.md
+3
doc/redirects.json
··· 2067 "setup-hook-automake": [ 2068 "index.html#setup-hook-automake" 2069 ], 2070 "setup-hook-autopatchelfhook": [ 2071 "index.html#setup-hook-autopatchelfhook" 2072 ],
··· 2067 "setup-hook-automake": [ 2068 "index.html#setup-hook-automake" 2069 ], 2070 + "setup-hook-autopatchcilhook": [ 2071 + "index.html#setup-hook-autopatchcilhook" 2072 + ], 2073 "setup-hook-autopatchelfhook": [ 2074 "index.html#setup-hook-autopatchelfhook" 2075 ],
+2
doc/release-notes/rl-2505.section.md
··· 68 - [testers.shellcheck](https://nixos.org/manual/nixpkgs/unstable/#tester-shellcheck) now warns when `name` is not provided. 69 The `name` argument will become mandatory in a future release. 70 71 - `grafana-agent` and `services.grafana-agent` have been removed in favor of 72 Grafana Alloy (`grafana-alloy` and `services.alloy`), as they depend on an EOL compiler version 73 and will become EOL during the 25.05 lifecycle.
··· 68 - [testers.shellcheck](https://nixos.org/manual/nixpkgs/unstable/#tester-shellcheck) now warns when `name` is not provided. 69 The `name` argument will become mandatory in a future release. 70 71 + - [GIMP 3.0](https://www.gimp.org/news/2025/03/16/gimp-3-0-released/) available as `gimp3`. 72 + 73 - `grafana-agent` and `services.grafana-agent` have been removed in favor of 74 Grafana Alloy (`grafana-alloy` and `services.alloy`), as they depend on an EOL compiler version 75 and will become EOL during the 25.05 lifecycle.
+6
maintainers/maintainer-list.nix
··· 5020 githubId = 6470493; 5021 name = "Craige McWhirter"; 5022 }; 5023 cransom = { 5024 email = "cransom@hubns.net"; 5025 github = "cransom";
··· 5020 githubId = 6470493; 5021 name = "Craige McWhirter"; 5022 }; 5023 + craigf = { 5024 + email = "craig@craigfurman.dev"; 5025 + github = "craigfurman"; 5026 + githubId = 4772216; 5027 + name = "Craig Furman"; 5028 + }; 5029 cransom = { 5030 email = "cransom@hubns.net"; 5031 github = "cransom";
+1 -1
maintainers/scripts/luarocks-packages.csv
··· 4 argparse,,,,,, 5 basexx,,,,,, 6 binaryheap,,,,,,vcunat 7 - bit32,,,,5.3.0-1,5.1,lblasc 8 busted,,,,,, 9 busted-htest,,,,,,mrcjkb 10 cassowary,,,,,,alerque
··· 4 argparse,,,,,, 5 basexx,,,,,, 6 binaryheap,,,,,,vcunat 7 + bit32,,,,,5.1,lblasc 8 busted,,,,,, 9 busted-htest,,,,,,mrcjkb 10 cassowary,,,,,,alerque
+2
nixos/doc/manual/release-notes/rl-2505.section.md
··· 416 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 419 - `services.netbird.tunnels` was renamed to [`services.netbird.clients`](#opt-services.netbird.clients), 420 hardened (using dedicated less-privileged users) and significantly extended. 421
··· 416 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 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 + 421 - `services.netbird.tunnels` was renamed to [`services.netbird.clients`](#opt-services.netbird.clients), 422 hardened (using dedicated less-privileged users) and significantly extended. 423
+2
nixos/modules/module-list.nix
··· 1055 ./services/networking/atticd.nix 1056 ./services/networking/autossh.nix 1057 ./services/networking/avahi-daemon.nix 1058 ./services/networking/babeld.nix 1059 ./services/networking/bee.nix 1060 ./services/networking/biboumi.nix
··· 1055 ./services/networking/atticd.nix 1056 ./services/networking/autossh.nix 1057 ./services/networking/avahi-daemon.nix 1058 + ./services/networking/ax25/axlisten.nix 1059 + ./services/networking/ax25/axports.nix 1060 ./services/networking/babeld.nix 1061 ./services/networking/bee.nix 1062 ./services/networking/biboumi.nix
+14 -1
nixos/modules/services/misc/homepage-dashboard.nix
··· 4 lib, 5 ... 6 }: 7 - 8 let 9 cfg = config.services.homepage-dashboard; 10 # Define the settings format used for this program ··· 27 type = lib.types.int; 28 default = 8082; 29 description = "Port for Homepage to bind to."; 30 }; 31 32 environmentFile = lib.mkOption { ··· 215 NIXPKGS_HOMEPAGE_CACHE_DIR = "/var/cache/homepage-dashboard"; 216 PORT = toString cfg.listenPort; 217 LOG_TARGETS = "stdout"; 218 }; 219 220 serviceConfig = {
··· 4 lib, 5 ... 6 }: 7 let 8 cfg = config.services.homepage-dashboard; 9 # Define the settings format used for this program ··· 26 type = lib.types.int; 27 default = 8082; 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 + ''; 42 }; 43 44 environmentFile = lib.mkOption { ··· 227 NIXPKGS_HOMEPAGE_CACHE_DIR = "/var/cache/homepage-dashboard"; 228 PORT = toString cfg.listenPort; 229 LOG_TARGETS = "stdout"; 230 + HOMEPAGE_ALLOWED_HOSTS = cfg.allowedHosts; 231 }; 232 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 atop = import ./atop.nix { inherit pkgs runTest; }; 214 atticd = runTest ./atticd.nix; 215 atuin = runTest ./atuin.nix; 216 audiobookshelf = runTest ./audiobookshelf.nix; 217 auth-mysql = runTest ./auth-mysql.nix; 218 authelia = runTest ./authelia.nix; ··· 791 mediatomb = handleTest ./mediatomb.nix { }; 792 mediawiki = handleTest ./mediawiki.nix { }; 793 meilisearch = handleTest ./meilisearch.nix { }; 794 - memcached = handleTest ./memcached.nix { }; 795 merecat = handleTest ./merecat.nix { }; 796 metabase = handleTest ./metabase.nix { }; 797 mihomo = handleTest ./mihomo.nix { }; ··· 885 # TODO: put in networking.nix after the test becomes more complete 886 networkingProxy = handleTest ./networking-proxy.nix { }; 887 nextcloud = handleTest ./nextcloud { }; 888 - nextflow = handleTestOn [ "x86_64-linux" ] ./nextflow.nix { }; 889 nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix; 890 nexus = handleTest ./nexus.nix { }; 891 # TODO: Test nfsv3 + Kerberos ··· 1233 stargazer = runTest ./web-servers/stargazer.nix; 1234 starship = runTest ./starship.nix; 1235 stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { }; 1236 - static-web-server = handleTest ./web-servers/static-web-server.nix { }; 1237 step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { }; 1238 stratis = handleTest ./stratis { }; 1239 strongswan-swanctl = handleTest ./strongswan-swanctl.nix { };
··· 213 atop = import ./atop.nix { inherit pkgs runTest; }; 214 atticd = runTest ./atticd.nix; 215 atuin = runTest ./atuin.nix; 216 + ax25 = handleTest ./ax25.nix { }; 217 audiobookshelf = runTest ./audiobookshelf.nix; 218 auth-mysql = runTest ./auth-mysql.nix; 219 authelia = runTest ./authelia.nix; ··· 792 mediatomb = handleTest ./mediatomb.nix { }; 793 mediawiki = handleTest ./mediawiki.nix { }; 794 meilisearch = handleTest ./meilisearch.nix { }; 795 + memcached = runTest ./memcached.nix; 796 merecat = handleTest ./merecat.nix { }; 797 metabase = handleTest ./metabase.nix { }; 798 mihomo = handleTest ./mihomo.nix { }; ··· 886 # TODO: put in networking.nix after the test becomes more complete 887 networkingProxy = handleTest ./networking-proxy.nix { }; 888 nextcloud = handleTest ./nextcloud { }; 889 + nextflow = runTestOn [ "x86_64-linux" ] ./nextflow.nix; 890 nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix; 891 nexus = handleTest ./nexus.nix { }; 892 # TODO: Test nfsv3 + Kerberos ··· 1234 stargazer = runTest ./web-servers/stargazer.nix; 1235 starship = runTest ./starship.nix; 1236 stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { }; 1237 + static-web-server = runTest ./web-servers/static-web-server.nix; 1238 step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { }; 1239 stratis = handleTest ./stratis { }; 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"; 5 6 - nodes.machine = { 7 - imports = [ ../modules/profiles/minimal.nix ]; 8 - services.memcached.enable = true; 9 - }; 10 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 - )
··· 1 + { pkgs, ... }: 2 + { 3 + name = "memcached"; 4 5 + nodes.machine = { 6 + imports = [ ../modules/profiles/minimal.nix ]; 7 + services.memcached.enable = true; 8 + }; 9 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 - }; 10 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 - ''; 22 }; 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"; 38 39 - nodes.machine = 40 - { ... }: 41 - { 42 - environment.systemPackages = [ 43 - run-nextflow-pipeline 44 - pkgs.nextflow 45 - ]; 46 - virtualisation = { 47 - docker.enable = true; 48 - }; 49 }; 50 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 - )
··· 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 + }; 9 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="; 17 }; 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"; 37 38 + nodes.machine = 39 + { ... }: 40 + { 41 + environment.systemPackages = [ 42 + run-nextflow-pipeline 43 + pkgs.nextflow 44 + ]; 45 + virtualisation = { 46 + docker.enable = true; 47 }; 48 + }; 49 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 - }; 8 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 - }; 24 }; 25 }; 26 }; 27 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 - )
··· 1 + { pkgs, lib, ... }: 2 + { 3 + name = "static-web-server"; 4 + meta = { 5 + maintainers = with lib.maintainers; [ mac-chaffee ]; 6 + }; 7 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; 22 }; 23 }; 24 }; 25 + }; 26 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 fzf-lua = neovimUtils.buildNeovimPlugin { 1205 luaAttr = luaPackages.fzf-lua; 1206 runtimeDeps = [ fzf ]; 1207 }; 1208 1209 fzf-vim = super.fzf-vim.overrideAttrs {
··· 1204 fzf-lua = neovimUtils.buildNeovimPlugin { 1205 luaAttr = luaPackages.fzf-lua; 1206 runtimeDeps = [ fzf ]; 1207 + nvimSkipModules = [ 1208 + "fzf-lua.shell_helper" 1209 + "fzf-lua.spawn" 1210 + ]; 1211 }; 1212 1213 fzf-vim = super.fzf-vim.overrideAttrs {
+1 -1
pkgs/applications/editors/vscode/extensions/ms-vscode-remote.remote-ssh/default.nix
··· 61 62 if ! nodeVersion=$($serverNode -v); then 63 echo "Unable to fix Node binary, quitting" 64 - fail_with_exitcode ''${o.InstallExitCode.ServerTransferFailed} 65 fi 66 67 ${lib.optionalString useLocalExtensions ''
··· 61 62 if ! nodeVersion=$($serverNode -v); then 63 echo "Unable to fix Node binary, quitting" 64 + fail_with_exitcode ''${f.UnifiedStatusCode.ServerTransferFailed} 65 fi 66 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 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, ··· 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 = [ ··· 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 ··· 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 ··· 121 fontconfig 122 lcms 123 libpng 124 libjpeg 125 libjxl 126 poppler ··· 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 = { ··· 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; { ··· 220 homepage = "https://www.gimp.org/"; 221 maintainers = with maintainers; [ jtojnar ]; 222 license = licenses.gpl3Plus; 223 - platforms = platforms.unix; 224 mainProgram = "gimp"; 225 }; 226 })
··· 3 lib, 4 fetchurl, 5 replaceVars, 6 + meson, 7 + ninja, 8 pkg-config, 9 babl, 10 + cfitsio, 11 gegl, 12 + gtk3, 13 glib, 14 gdk-pixbuf, 15 + graphviz, 16 isocodes, 17 pango, 18 cairo, 19 + libarchive, 20 + luajit, 21 freetype, 22 fontconfig, 23 lcms, 24 libpng, 25 + libiff, 26 + libilbm, 27 libjpeg, 28 libjxl, 29 poppler, ··· 37 ghostscript, 38 aalib, 39 shared-mime-info, 40 + python3, 41 libexif, 42 gettext, 43 + wrapGAppsHook3, 44 + libxslt, 45 + gobject-introspection, 46 + vala, 47 + gi-docgen, 48 + perl, 49 + appstream-glib, 50 + desktop-file-utils, 51 xorg, 52 glib-networking, 53 + json-glib, 54 libmypaint, 55 + llvmPackages, 56 gexiv2, 57 harfbuzz, 58 mypaint-brushes1, 59 libwebp, 60 libheif, 61 + gjs, 62 libgudev, 63 openexr, 64 + xvfb-run, 65 + dbus, 66 + adwaita-icon-theme, 67 + alsa-lib, 68 desktopToDarwinBundle, 69 AppKit, 70 Cocoa, 71 }: 72 73 let 74 + python = python3.withPackages ( 75 + pp: with pp; [ 76 + pygobject3 77 + ] 78 + ); 79 in 80 stdenv.mkDerivation (finalAttrs: { 81 pname = "gimp"; 82 + version = "3.0.2"; 83 84 outputs = [ 85 "out" 86 "dev" 87 + "devdoc" 88 ]; 89 90 src = fetchurl { 91 + url = "https://download.gimp.org/gimp/v${lib.versions.majorMinor finalAttrs.version}/gimp-${finalAttrs.version}.tar.xz"; 92 + hash = "sha256-VG3cMMstDnkSPH/LTXghHh7npqrOkaagrYy8v26lcaI="; 93 }; 94 95 patches = [ ··· 101 102 # Use absolute paths instead of relying on PATH 103 # to make sure plug-ins are loaded by the correct interpreter. 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 + }) 109 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 + }) 115 ]; 116 117 nativeBuildInputs = 118 [ 119 + meson 120 + ninja 121 pkg-config 122 gettext 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 138 ] 139 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 140 desktopToDarwinBundle ··· 142 143 buildInputs = 144 [ 145 + appstream-glib # for library 146 babl 147 + cfitsio 148 gegl 149 + gtk3 150 glib 151 gdk-pixbuf 152 pango 153 cairo 154 + libarchive 155 gexiv2 156 harfbuzz 157 isocodes ··· 159 fontconfig 160 lcms 161 libpng 162 + libiff 163 + libilbm 164 libjpeg 165 libjxl 166 poppler ··· 175 ghostscript 176 aalib 177 shared-mime-info 178 + json-glib 179 libwebp 180 libheif 181 + python 182 libexif 183 xorg.libXpm 184 + xorg.libXmu 185 glib-networking 186 libmypaint 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 202 ] 203 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 204 + llvmPackages.openmp 205 AppKit 206 Cocoa 207 ] 208 ++ lib.optionals stdenv.hostPlatform.isLinux [ 209 libgudev 210 ]; 211 212 propagatedBuildInputs = [ 213 + # needed by gimp-3.0.pc 214 gegl 215 + cairo 216 + pango 217 + gexiv2 218 ]; 219 220 + mesonFlags = 221 [ 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" 230 ] 231 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 232 + "-Dalsa=disabled" 233 + "-Djavascript=disabled" 234 ]; 235 236 doCheck = true; 237 238 env = { 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"; 243 244 # Check if librsvg was built with --disable-pixbuf-loader. 245 PKG_CONFIG_GDK_PIXBUF_2_0_GDK_PIXBUF_MODULEDIR = "${librsvg}/${gdk-pixbuf.moduleDir}"; 246 }; 247 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 + }") 304 ''; 305 306 postFixup = '' 307 + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. 308 + moveToOutput "share/doc" "$devdoc" 309 ''; 310 311 passthru = { ··· 318 targetScriptDir = "${finalAttrs.passthru.targetDataDir}/scripts"; 319 320 # probably its a good idea to use the same gtk in plugins ? 321 + gtk = gtk3; 322 }; 323 324 meta = with lib; { ··· 326 homepage = "https://www.gimp.org/"; 327 maintainers = with maintainers; [ jtojnar ]; 328 license = licenses.gpl3Plus; 329 + platforms = platforms.linux; 330 mainProgram = "gimp"; 331 }; 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 # If you just want a subset of plug-ins, you can specify them explicitly: 3 # `gimp-with-plugins.override { plugins = with gimpPlugins; [ gap ]; }`. 4 5 - { lib, pkgs }: 6 7 let 8 inherit (pkgs) ··· 16 fetchFromGitHub 17 fetchFromGitLab 18 ; 19 in 20 21 lib.makeScope pkgs.newScope ( ··· 29 attrs: 30 let 31 name = attrs.name or "${attrs.pname}-${attrs.version}"; 32 in 33 stdenv.mkDerivation ( 34 { ··· 63 64 # Override installation paths. 65 env = { 66 - PKG_CONFIG_GIMP_2_0_GIMPLIBDIR = "${placeholder "out"}/${gimp.targetLibDir}"; 67 - PKG_CONFIG_GIMP_2_0_GIMPDATADIR = "${placeholder "out"}/${gimp.targetDataDir}"; 68 } // attrs.env or { }; 69 } 70 ); ··· 86 in 87 { 88 # Allow overriding GIMP package in the scope. 89 - inherit (pkgs) gimp; 90 91 bimp = pluginDerivation rec { 92 /* ··· 130 installTargets = [ "install-admin" ]; 131 132 meta = with lib; { 133 description = "Batch Image Manipulation Plugin for GIMP"; 134 homepage = "https://github.com/alessandrofrancesconi/gimp-plugin-bimp"; 135 license = licenses.gpl2Plus; ··· 153 ''; 154 155 meta = { 156 description = "Gimp plug-in for the farbfeld image format"; 157 homepage = "https://github.com/ids1024/gimp-farbfeld"; 158 license = lib.licenses.mit; ··· 192 ''; 193 194 meta = with lib; { 195 description = "GIMP plug-in to do the fourier transform"; 196 homepage = "https://people.via.ecp.fr/~remi/soft/gimp/gimp_plugin_en.php3#fourier"; 197 license = with licenses; [ gpl3Plus ]; ··· 222 }; 223 224 meta = { 225 - broken = !gimp.python2Support; 226 }; 227 }; 228 ··· 240 ninja 241 gettext 242 ]; 243 }; 244 245 waveletSharpen = pluginDerivation { ··· 264 }; 265 266 installPhase = "installPlugin src/wavelet-sharpen"; # TODO translations are not copied .. How to do this on nix? 267 }; 268 269 lqrPlugin = pluginDerivation rec { ··· 289 sha256 = "EdjZWM6U1bhUmsOnLA8iJ4SFKuAXHIfNPzxZqel+JrY="; 290 }) 291 ]; 292 }; 293 294 gmic = pkgs.gmic-qt.override { 295 variant = "gimp"; 296 }; 297 298 gimplensfun = pluginDerivation { ··· 320 "; 321 322 meta = { 323 description = "GIMP plugin to correct lens distortion using the lensfun library and database"; 324 325 homepage = "http://lensfun.sebastiankraft.net/";
··· 2 # If you just want a subset of plug-ins, you can specify them explicitly: 3 # `gimp-with-plugins.override { plugins = with gimpPlugins; [ gap ]; }`. 4 5 + { 6 + lib, 7 + pkgs, 8 + gimp, 9 + }: 10 11 let 12 inherit (pkgs) ··· 20 fetchFromGitHub 21 fetchFromGitLab 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; 27 in 28 29 lib.makeScope pkgs.newScope ( ··· 37 attrs: 38 let 39 name = attrs.name or "${attrs.pname}-${attrs.version}"; 40 + pkgConfigMajorVersion = lib.versions.major gimp.version; 41 in 42 stdenv.mkDerivation ( 43 { ··· 72 73 # Override installation paths. 74 env = { 75 + "PKG_CONFIG_GIMP_${pkgConfigMajorVersion}_0_GIMPLIBDIR" = 76 + "${placeholder "out"}/${gimp.targetLibDir}"; 77 + "PKG_CONFIG_GIMP_${pkgConfigMajorVersion}_0_GIMPDATADIR" = 78 + "${placeholder "out"}/${gimp.targetDataDir}"; 79 } // attrs.env or { }; 80 } 81 ); ··· 97 in 98 { 99 # Allow overriding GIMP package in the scope. 100 + gimp = gimpArg; 101 102 bimp = pluginDerivation rec { 103 /* ··· 141 installTargets = [ "install-admin" ]; 142 143 meta = with lib; { 144 + broken = gimp.majorVersion != "2.0"; 145 description = "Batch Image Manipulation Plugin for GIMP"; 146 homepage = "https://github.com/alessandrofrancesconi/gimp-plugin-bimp"; 147 license = licenses.gpl2Plus; ··· 165 ''; 166 167 meta = { 168 + broken = gimp.majorVersion != "2.0"; 169 description = "Gimp plug-in for the farbfeld image format"; 170 homepage = "https://github.com/ids1024/gimp-farbfeld"; 171 license = lib.licenses.mit; ··· 205 ''; 206 207 meta = with lib; { 208 + broken = gimp.majorVersion != "2.0"; 209 description = "GIMP plug-in to do the fourier transform"; 210 homepage = "https://people.via.ecp.fr/~remi/soft/gimp/gimp_plugin_en.php3#fourier"; 211 license = with licenses; [ gpl3Plus ]; ··· 236 }; 237 238 meta = { 239 + broken = gimp.majorVersion != "2.0"; 240 }; 241 }; 242 ··· 254 ninja 255 gettext 256 ]; 257 + 258 + meta = { 259 + broken = gimp.majorVersion != "2.0"; 260 + }; 261 }; 262 263 waveletSharpen = pluginDerivation { ··· 282 }; 283 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 + }; 289 }; 290 291 lqrPlugin = pluginDerivation rec { ··· 311 sha256 = "EdjZWM6U1bhUmsOnLA8iJ4SFKuAXHIfNPzxZqel+JrY="; 312 }) 313 ]; 314 + 315 + meta = { 316 + broken = gimp.majorVersion != "2.0"; 317 + }; 318 }; 319 320 gmic = pkgs.gmic-qt.override { 321 variant = "gimp"; 322 + inherit (self) gimp; 323 }; 324 325 gimplensfun = pluginDerivation { ··· 347 "; 348 349 meta = { 350 + broken = gimp.majorVersion != "2.0"; 351 description = "GIMP plugin to correct lens distortion using the lensfun library and database"; 352 353 homepage = "http://lensfun.sebastiankraft.net/";
+2 -2
pkgs/applications/graphics/gimp/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,
··· 1 diff --git a/app/gimp-version.c b/app/gimp-version.c 2 + index 6e311c8252..e6fd9d1d78 100644 3 --- a/app/gimp-version.c 4 +++ b/app/gimp-version.c 5 + @@ -90,7 +90,7 @@ gimp_version (gboolean be_verbose, 6 GIMP_BUILD_ID, 7 gimp_version_get_revision (), 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 lib.attrValues gimpPlugins 14 ); 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; 18 19 in 20 symlinkJoin { ··· 25 nativeBuildInputs = [ makeWrapper ]; 26 27 postBuild = '' 28 - for each in gimp-${versionBranch} gimp-console-${versionBranch}; do 29 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" \ 33 ${toString extraArgs} 34 done 35 set +x 36 for each in gimp gimp-console; do 37 - ln -sf "$each-${versionBranch}" $out/bin/$each 38 done 39 ''; 40
··· 13 lib.attrValues gimpPlugins 14 ); 15 selectedPlugins = lib.filter (pkg: pkg != gimp) (if plugins == null then allPlugins else plugins); 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; 24 25 in 26 symlinkJoin { ··· 31 nativeBuildInputs = [ makeWrapper ]; 32 33 postBuild = '' 34 + for each in gimp-${exeVersion} gimp-console-${exeVersion}; do 35 wrapProgram $out/bin/$each \ 36 + --set GIMP${majorVersion}_PLUGINDIR "$out/${gimp.targetLibDir}" \ 37 + --set GIMP${majorVersion}_DATADIR "$out/${gimp.targetDataDir}" \ 38 ${toString extraArgs} 39 done 40 set +x 41 for each in gimp gimp-console; do 42 + ln -sf "$each-${exeVersion}" $out/bin/$each 43 done 44 ''; 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 { 2 "chromium": { 3 - "version": "135.0.7049.84", 4 "chromedriver": { 5 - "version": "135.0.7049.85", 6 - "hash_darwin": "sha256-L4x/MSCbVt2UIQwbHREDV8br6DmdfuqTJ3//7opK2IU=", 7 - "hash_darwin_aarch64": "sha256-vixXGqbc2UYpydg1RILhrtmr5DdbJ5I1sD8aNikejQU=" 8 }, 9 "deps": { 10 "depot_tools": { ··· 20 "DEPS": { 21 "src": { 22 "url": "https://chromium.googlesource.com/chromium/src.git", 23 - "rev": "6c019e56001911b3fd467e03bf68c435924d62f4", 24 - "hash": "sha256-BFw1o2cIHBeBudeigH6YTOuLGsp/+pTOeE1lXBO3aio=", 25 "recompress": true 26 }, 27 "src/third_party/clang-format/script": { ··· 566 }, 567 "src/third_party/pdfium": { 568 "url": "https://pdfium.googlesource.com/pdfium.git", 569 - "rev": "9afffebfa895ea6cdcc05516908c50bd7fe72797", 570 - "hash": "sha256-89rJdhwUJtJCMO7FvVoTYO80swFRkoWUB/ZYs1tOLzE=" 571 }, 572 "src/third_party/perfetto": { 573 "url": "https://android.googlesource.com/platform/external/perfetto.git", ··· 616 }, 617 "src/third_party/skia": { 618 "url": "https://skia.googlesource.com/skia.git", 619 - "rev": "6e445bdea696eb6b6a46681dfc1a63edaa517edb", 620 - "hash": "sha256-mSup6nKsEPjJ/HBV7PwjBI4PP7/RdwFm/dnavKeRqzI=" 621 }, 622 "src/third_party/smhasher/src": { 623 "url": "https://chromium.googlesource.com/external/smhasher.git",
··· 1 { 2 "chromium": { 3 + "version": "135.0.7049.95", 4 "chromedriver": { 5 + "version": "135.0.7049.96", 6 + "hash_darwin": "sha256-MmL/hQGPk/kGBtbXSekE+lHktucPCv3HFr8VYTnff5w=", 7 + "hash_darwin_aarch64": "sha256-TGiVrAYgeLGniGBZ2dHUBk6Hg996ouBSJHZm9hXExQ4=" 8 }, 9 "deps": { 10 "depot_tools": { ··· 20 "DEPS": { 21 "src": { 22 "url": "https://chromium.googlesource.com/chromium/src.git", 23 + "rev": "de2eb485a1951079e63bdb57ce25544d2dc79c15", 24 + "hash": "sha256-6ydyJWsDawt0bfYAFHotTB9ujmIYsqUUpNwB6q6RNQE=", 25 "recompress": true 26 }, 27 "src/third_party/clang-format/script": { ··· 566 }, 567 "src/third_party/pdfium": { 568 "url": "https://pdfium.googlesource.com/pdfium.git", 569 + "rev": "2919d07ee57020e3e4b66cce45c61104d80304d2", 570 + "hash": "sha256-zE6a0R8NZ3SE0bHwPan3dTh5kmq5JmYTbDQIvyNICeg=" 571 }, 572 "src/third_party/perfetto": { 573 "url": "https://android.googlesource.com/platform/external/perfetto.git", ··· 616 }, 617 "src/third_party/skia": { 618 "url": "https://skia.googlesource.com/skia.git", 619 + "rev": "5a44cdd70f04aa65fa063caa1a7e3028d75236f8", 620 + "hash": "sha256-QX3b+S0IuxJKmlMudL6420+bXRhDkWYC7GNRKxKNm8A=" 621 }, 622 "src/third_party/smhasher/src": { 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 14 stdenv.mkDerivation (finalAttrs: { 15 pname = "babl"; 16 - version = "0.1.110"; 17 18 outputs = [ 19 "out" ··· 23 24 src = fetchurl { 25 url = "https://download.gimp.org/pub/babl/${lib.versions.majorMinor finalAttrs.version}/babl-${finalAttrs.version}.tar.xz"; 26 - hash = "sha256-v0e+dUDWJ1OJ9mQx7wMGTfU3YxXiQ9C6tEjGqnE/V0M="; 27 }; 28 29 patches = [
··· 13 14 stdenv.mkDerivation (finalAttrs: { 15 pname = "babl"; 16 + version = "0.1.112"; 17 18 outputs = [ 19 "out" ··· 23 24 src = fetchurl { 25 url = "https://download.gimp.org/pub/babl/${lib.versions.majorMinor finalAttrs.version}/babl-${finalAttrs.version}.tar.xz"; 26 + hash = "sha256-+2lmgkIXh8j+zIPoqrSBId7I7jjRGbZSkc/L4xUCink="; 27 }; 28 29 patches = [
+3 -3
pkgs/by-name/cr/cryptomator/package.nix
··· 17 in 18 maven.buildMavenPackage rec { 19 pname = "cryptomator"; 20 - version = "1.15.2"; 21 22 src = fetchFromGitHub { 23 owner = "cryptomator"; 24 repo = "cryptomator"; 25 tag = version; 26 - hash = "sha256-uhsX4VIA8NNUjxa0dHyB5bhWMxjd2LJfcKJInxROQRY="; 27 }; 28 29 mvnJdk = jdk; 30 mvnParameters = "-Dmaven.test.skip=true -Plinux"; 31 - mvnHash = "sha256-KfQdYsPdmQRQqjx/kpDQR9tYjb54goA31w55x6VX6KM="; 32 33 preBuild = '' 34 VERSION=${version}
··· 17 in 18 maven.buildMavenPackage rec { 19 pname = "cryptomator"; 20 + version = "1.15.3"; 21 22 src = fetchFromGitHub { 23 owner = "cryptomator"; 24 repo = "cryptomator"; 25 tag = version; 26 + hash = "sha256-3HGSeTUzfcXuNFxPuhkQBQ8CTEvgrNjpFtqOuluCeRs="; 27 }; 28 29 mvnJdk = jdk; 30 mvnParameters = "-Dmaven.test.skip=true -Plinux"; 31 + mvnHash = "sha256-vC2ULlBm/170ElcQC898N4kmWfuWwb7hFpF1oMIukyQ="; 32 33 preBuild = '' 34 VERSION=${version}
+2 -2
pkgs/by-name/de/devenv/package.nix
··· 26 doInstallCheck = false; 27 }); 28 29 - version = "1.5"; 30 in 31 rustPlatform.buildRustPackage { 32 pname = "devenv"; ··· 36 owner = "cachix"; 37 repo = "devenv"; 38 rev = "v${version}"; 39 - hash = "sha256-bJlcIFcEhobOiaJsxub48fR8nIZDU4QK4FIycmDW2mk="; 40 }; 41 42 useFetchCargoVendor = true;
··· 26 doInstallCheck = false; 27 }); 28 29 + version = "1.5.1"; 30 in 31 rustPlatform.buildRustPackage { 32 pname = "devenv"; ··· 36 owner = "cachix"; 37 repo = "devenv"; 38 rev = "v${version}"; 39 + hash = "sha256-ybqhaIuv8OU0f14Rr+1ilxE4iTCnguXi/60g4ys6JOI="; 40 }; 41 42 useFetchCargoVendor = true;
+3 -3
pkgs/by-name/en/envoy-bin/package.nix
··· 8 versionCheckHook, 9 }: 10 let 11 - version = "1.33.2"; 12 inherit (stdenv.hostPlatform) system; 13 throwSystem = throw "envoy-bin is not available for ${system}."; 14 ··· 21 22 hash = 23 { 24 - aarch64-linux = "sha256-gew2iaghIu/wymgMSBdvTTUbb5iBp5zJ2QeKb7Swtqg="; 25 - x86_64-linux = "sha256-vS/4fF78lf14gNcQkV9XPBqrTZxV2NqIbc2R30P610E="; 26 } 27 .${system} or throwSystem; 28 in
··· 8 versionCheckHook, 9 }: 10 let 11 + version = "1.34.0"; 12 inherit (stdenv.hostPlatform) system; 13 throwSystem = throw "envoy-bin is not available for ${system}."; 14 ··· 21 22 hash = 23 { 24 + aarch64-linux = "sha256-VVEYQ25ZNmWftuhLOOZnxKaosQFeMHsQdkAzIq+zEM0="; 25 + x86_64-linux = "sha256-FavpvY1hYNOnlFQE2NV3O8z9gyKGpD01oU/wute9iRA="; 26 } 27 .${system} or throwSystem; 28 in
+2 -2
pkgs/by-name/ga/gallery-dl/package.nix
··· 8 9 let 10 pname = "gallery-dl"; 11 - version = "1.29.3"; 12 in 13 python3Packages.buildPythonApplication { 14 inherit pname version; ··· 18 owner = "mikf"; 19 repo = "gallery-dl"; 20 tag = "v${version}"; 21 - hash = "sha256-LzMiJxMl6IWtUloWxBAMLvkhnTQpHkz/gjWl5gW2sZ0="; 22 }; 23 24 build-system = [ python3Packages.setuptools ];
··· 8 9 let 10 pname = "gallery-dl"; 11 + version = "1.29.4"; 12 in 13 python3Packages.buildPythonApplication { 14 inherit pname version; ··· 18 owner = "mikf"; 19 repo = "gallery-dl"; 20 tag = "v${version}"; 21 + hash = "sha256-dQK1AWmdlfb1cRcYzXWUsXmRgjQRc++zEHZvLUygMwg="; 22 }; 23 24 build-system = [ python3Packages.setuptools ];
+2 -2
pkgs/by-name/ga/gamescope/package.nix
··· 48 in 49 stdenv.mkDerivation (finalAttrs: { 50 pname = "gamescope"; 51 - version = "3.16.3"; 52 53 src = fetchFromGitHub { 54 owner = "ValveSoftware"; 55 repo = "gamescope"; 56 tag = finalAttrs.version; 57 fetchSubmodules = true; 58 - hash = "sha256-4Pbyv+EAgwjabVJ4oW3jSmi0Rzpe+BxCN8mM5/beEco="; 59 }; 60 61 patches = [
··· 48 in 49 stdenv.mkDerivation (finalAttrs: { 50 pname = "gamescope"; 51 + version = "3.16.4"; 52 53 src = fetchFromGitHub { 54 owner = "ValveSoftware"; 55 repo = "gamescope"; 56 tag = finalAttrs.version; 57 fetchSubmodules = true; 58 + hash = "sha256-2AxqvZA1eZaJFKMfRljCIcP0M2nMngw0FQiXsfBW7IA="; 59 }; 60 61 patches = [
+8 -1
pkgs/by-name/gm/gmic-qt/package.nix
··· 100 cmakeFlags = [ 101 (lib.cmakeBool "ENABLE_DYNAMIC_LINKING" true) 102 (lib.cmakeBool "ENABLE_SYSTEM_GMIC" true) 103 - (lib.cmakeFeature "GMIC_QT_HOST" (if variant == "standalone" then "none" else variant)) 104 ]; 105 106 postFixup = lib.optionalString (variant == "gimp") ''
··· 100 cmakeFlags = [ 101 (lib.cmakeBool "ENABLE_DYNAMIC_LINKING" true) 102 (lib.cmakeBool "ENABLE_SYSTEM_GMIC" true) 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 + )) 111 ]; 112 113 postFixup = lib.optionalString (variant == "gimp") ''
+3 -3
pkgs/by-name/go/gofumpt/package.nix
··· 9 10 buildGoModule rec { 11 pname = "gofumpt"; 12 - version = "0.7.0"; 13 14 src = fetchFromGitHub { 15 owner = "mvdan"; 16 repo = pname; 17 rev = "v${version}"; 18 - hash = "sha256-mJM0uKztX0OUQvynnxeKL9yft7X/Eh28ERg8SbZC5Ws="; 19 }; 20 21 - vendorHash = "sha256-kJysyxROvB0eMAHbvNF+VXatEicn4ln2Vqkzp7GDWAQ="; 22 23 env.CGO_ENABLED = "0"; 24
··· 9 10 buildGoModule rec { 11 pname = "gofumpt"; 12 + version = "0.8.0"; 13 14 src = fetchFromGitHub { 15 owner = "mvdan"; 16 repo = pname; 17 rev = "v${version}"; 18 + hash = "sha256-37wYYB0k8mhQq30y1oo77qW3bIqqN/K/NG1RgxK6dyI="; 19 }; 20 21 + vendorHash = "sha256-T6/xEXv8+io3XwQ2keacpYYIdTnYhTTUCojf62tTwbA="; 22 23 env.CGO_ENABLED = "0"; 24
+3 -3
pkgs/by-name/go/golangci-lint/package.nix
··· 7 8 buildGo124Module rec { 9 pname = "golangci-lint"; 10 - version = "2.0.2"; 11 12 src = fetchFromGitHub { 13 owner = "golangci"; 14 repo = "golangci-lint"; 15 rev = "v${version}"; 16 - hash = "sha256-+IndC9znKgVGiFWW0aCNjhxPwX1kDFnfG2+SKEQ15Rc="; 17 }; 18 19 - vendorHash = "sha256-B6mCvJtIfRbAv6fZ8Ge82nT9oEcL3WR4D+AAVs9R3zM="; 20 21 subPackages = [ "cmd/golangci-lint" ]; 22
··· 7 8 buildGo124Module rec { 9 pname = "golangci-lint"; 10 + version = "2.1.2"; 11 12 src = fetchFromGitHub { 13 owner = "golangci"; 14 repo = "golangci-lint"; 15 rev = "v${version}"; 16 + hash = "sha256-CAO+oo3l3mlZIiC1Srhc0EfZffQOHvVkamPHzSKRSFw="; 17 }; 18 19 + vendorHash = "sha256-2GQp/sgYRlDengx8uy3zzqi9hwHh4CQUHoj1zaxNNLE="; 20 21 subPackages = [ "cmd/golangci-lint" ]; 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 sha256 = "sha256-OgIgHW9NMW/xSSti3naIR8AQWUtNSv5bYdOcObStBlM="; 21 }; 22 23 nativeBuildInputs = [ 24 autoreconfHook 25 pkg-config
··· 20 sha256 = "sha256-OgIgHW9NMW/xSSti3naIR8AQWUtNSv5bYdOcObStBlM="; 21 }; 22 23 + patches = [ 24 + # https://github.com/fillods/grig/issues/22 25 + ./0001-Fix-grig-for-hamlib-4.6.x.patch 26 + ]; 27 + 28 nativeBuildInputs = [ 29 autoreconfHook 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 "-DNDEBUG" 102 ]; 103 104 doCheck = true; 105 checkFlags = [ "V=1" ]; # verbose output in case some test fails 106 doInstallCheck = true;
··· 101 "-DNDEBUG" 102 ]; 103 104 + __darwinAllowLocalNetworking = true; 105 + 106 doCheck = true; 107 checkFlags = [ "V=1" ]; # verbose output in case some test fails 108 doInstallCheck = true;
+3 -3
pkgs/by-name/li/libretro-shaders-slang/package.nix
··· 7 8 stdenvNoCC.mkDerivation { 9 pname = "libretro-shaders-slang"; 10 - version = "0-unstable-2025-03-13"; 11 12 src = fetchFromGitHub { 13 owner = "libretro"; 14 repo = "slang-shaders"; 15 - rev = "25311dc03332d9ef2dff8d9d06c611d828028fac"; 16 - hash = "sha256-nmDjjQgxpZcddOHlBAE9CKdR95u+6lEYXcmIwH9RHXo="; 17 }; 18 19 dontConfigure = true;
··· 7 8 stdenvNoCC.mkDerivation { 9 pname = "libretro-shaders-slang"; 10 + version = "0-unstable-2025-04-14"; 11 12 src = fetchFromGitHub { 13 owner = "libretro"; 14 repo = "slang-shaders"; 15 + rev = "cacb61c9a3022c84057331063e31304933b61bdf"; 16 + hash = "sha256-dpqru8Qu1xZkHNKv6oF/T61/k6X2CWljUSVeJqxMvso="; 17 }; 18 19 dontConfigure = true;
+3 -3
pkgs/by-name/lu/lutgen/package.nix
··· 8 9 rustPlatform.buildRustPackage rec { 10 pname = "lutgen"; 11 - version = "0.11.2"; 12 13 src = fetchFromGitHub { 14 owner = "ozwaldorf"; 15 repo = "lutgen-rs"; 16 rev = "v${version}"; 17 - hash = "sha256-jmMVeDDVb/TuxulDYj+8y4Kl42EJTAWb3tAsanfWduE="; 18 }; 19 20 useFetchCargoVendor = true; 21 - cargoHash = "sha256-BEh8Wl0X1wv53w/Zu0PHwh8oGtCvIJe60aVqLbiH1Hs="; 22 23 nativeBuildInputs = [ installShellFiles ]; 24
··· 8 9 rustPlatform.buildRustPackage rec { 10 pname = "lutgen"; 11 + version = "0.12.0"; 12 13 src = fetchFromGitHub { 14 owner = "ozwaldorf"; 15 repo = "lutgen-rs"; 16 rev = "v${version}"; 17 + hash = "sha256-VE4R0rdQbZ7cyCPRtWWARUAnlR/KWGFUoJSJ4lySwzY="; 18 }; 19 20 useFetchCargoVendor = true; 21 + cargoHash = "sha256-H913/EjCh14AcCIj/Em6neP5F6i88rSVbPMmnS3po/I="; 22 23 nativeBuildInputs = [ installShellFiles ]; 24
+3 -3
pkgs/by-name/mi/misconfig-mapper/package.nix
··· 6 7 buildGoModule rec { 8 pname = "misconfig-mapper"; 9 - version = "1.13.7"; 10 11 src = fetchFromGitHub { 12 owner = "intigriti"; 13 repo = "misconfig-mapper"; 14 tag = "v${version}"; 15 - hash = "sha256-6WFtXIqnn2ayfXkGMIxGDlYpE3UbHRuAU8qHGk9SCU4="; 16 }; 17 18 - vendorHash = "sha256-fEmf+d9oBXz7KymNVmC+CM7OyPD9QV1uN4ReTNhei7A="; 19 20 ldflags = [ 21 "-s"
··· 6 7 buildGoModule rec { 8 pname = "misconfig-mapper"; 9 + version = "1.14.2"; 10 11 src = fetchFromGitHub { 12 owner = "intigriti"; 13 repo = "misconfig-mapper"; 14 tag = "v${version}"; 15 + hash = "sha256-7ObDlO/jHUMJdEIFwsFrdSyrbs6I6koNJxQyH6FbhZc="; 16 }; 17 18 + vendorHash = "sha256-gxURT2S1m7J3bZ0VIYxFFsbxU3za2BgJ/6TONoPGzAw="; 19 20 ldflags = [ 21 "-s"
+1 -1
pkgs/by-name/op/open-webui/package.nix
··· 30 url = "https://github.com/pyodide/pyodide/releases/download/${pyodideVersion}/pyodide-${pyodideVersion}.tar.bz2"; 31 }; 32 33 - npmDepsHash = "sha256-C7YuXxCrnJ+8L7JNh6TA8xi0G3y1FwFb9DQwhS+igME="; 34 35 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 36 # Until this is solved, running python packages from the browser will not work.
··· 30 url = "https://github.com/pyodide/pyodide/releases/download/${pyodideVersion}/pyodide-${pyodideVersion}.tar.bz2"; 31 }; 32 33 + npmDepsHash = "sha256-MIjQ5Lbtv6kFHUyuc12JTItUPxIHoo65iUlSjBxw9Z8="; 34 35 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 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 8 rustPlatform.buildRustPackage rec { 9 pname = "polarity"; 10 - version = "latest-unstable-2025-04-06"; 11 12 src = fetchFromGitHub { 13 owner = "polarity-lang"; 14 repo = "polarity"; 15 - rev = "3d661ea0485a83b0c1065595839cb2d9d594e4e8"; 16 - hash = "sha256-4NeDOGzCq211SVVtfISq/Z901Et1zYhMQ/t7eNEBW9Y="; 17 }; 18 19 useFetchCargoVendor = true; 20 - cargoHash = "sha256-S0d64jFKiyGVIFH8HhT4mzBEVUPDIMevvClTeqy0/28="; 21 22 passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; 23
··· 7 8 rustPlatform.buildRustPackage rec { 9 pname = "polarity"; 10 + version = "latest-unstable-2025-04-14"; 11 12 src = fetchFromGitHub { 13 owner = "polarity-lang"; 14 repo = "polarity"; 15 + rev = "9ee17a9a167efdd660c4806e2d3cd5bc2b3177e1"; 16 + hash = "sha256-9MsPMQnqzePhxF9f9DgmZ9aq8TzLYi3jZA9HF2McVss="; 17 }; 18 19 useFetchCargoVendor = true; 20 + cargoHash = "sha256-23qr4bEAsN75ONnNmym9eWH38fRoMmP1EkmOaka73Ko="; 21 22 passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; 23
+1
pkgs/by-name/rk/rkbin/package.nix
··· 25 passthru = { 26 BL31_RK3568 = "${rkbin}/bin/rk35/rk3568_bl31_v1.44.elf"; 27 BL31_RK3588 = "${rkbin}/bin/rk35/rk3588_bl31_v1.47.elf"; 28 TPL_RK3568 = "${rkbin}/bin/rk35/rk3568_ddr_1056MHz_v1.23.bin"; 29 TPL_RK3588 = "${rkbin}/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.18.bin"; 30 };
··· 25 passthru = { 26 BL31_RK3568 = "${rkbin}/bin/rk35/rk3568_bl31_v1.44.elf"; 27 BL31_RK3588 = "${rkbin}/bin/rk35/rk3588_bl31_v1.47.elf"; 28 + TPL_RK3566 = "${rkbin}/bin/rk35/rk3566_ddr_1056MHz_v1.23.bin"; 29 TPL_RK3568 = "${rkbin}/bin/rk35/rk3568_ddr_1056MHz_v1.23.bin"; 30 TPL_RK3588 = "${rkbin}/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.18.bin"; 31 };
+4 -17
pkgs/by-name/sc/screen-pipe/package.nix
··· 9 openssl, 10 sqlite, 11 stdenv, 12 - darwin, 13 alsa-lib, 14 xorg, 15 }: 16 rustPlatform.buildRustPackage rec { 17 pname = "screen-pipe"; ··· 49 openssl 50 sqlite 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 - ) 68 ++ lib.optionals stdenv.hostPlatform.isLinux [ 69 alsa-lib 70 xorg.libxcb
··· 9 openssl, 10 sqlite, 11 stdenv, 12 alsa-lib, 13 xorg, 14 + apple-sdk_12, 15 }: 16 rustPlatform.buildRustPackage rec { 17 pname = "screen-pipe"; ··· 49 openssl 50 sqlite 51 ] 52 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 53 + apple-sdk_12 54 + ] 55 ++ lib.optionals stdenv.hostPlatform.isLinux [ 56 alsa-lib 57 xorg.libxcb
+3 -3
pkgs/by-name/sn/snx-rs/package.nix
··· 18 }: 19 rustPlatform.buildRustPackage rec { 20 pname = "snx-rs"; 21 - version = "3.1.1"; 22 23 src = fetchFromGitHub { 24 owner = "ancwrd1"; 25 repo = "snx-rs"; 26 tag = "v${version}"; 27 - hash = "sha256-eWtoCU5JkpHGcOLzjzj9icDlnIW1y+fiEn5V/E5IQ4U="; 28 }; 29 30 passthru.updateScript = nix-update-script { }; ··· 57 ]; 58 59 useFetchCargoVendor = true; 60 - cargoHash = "sha256-Hjc2wKkNmlVjZb5wz9fq9hzUsxXJyeFYq+4C+weUlq0="; 61 62 meta = { 63 description = "Open source Linux client for Checkpoint VPN tunnels";
··· 18 }: 19 rustPlatform.buildRustPackage rec { 20 pname = "snx-rs"; 21 + version = "3.1.2"; 22 23 src = fetchFromGitHub { 24 owner = "ancwrd1"; 25 repo = "snx-rs"; 26 tag = "v${version}"; 27 + hash = "sha256-bLuIXd2pqqiyEP+lDTJYVDZkRZ0HcDkKFZd/qlpuf98="; 28 }; 29 30 passthru.updateScript = nix-update-script { }; ··· 57 ]; 58 59 useFetchCargoVendor = true; 60 + cargoHash = "sha256-E5OJVf9CkLn5mFtk4Yacs2OIvAuIw0idSs7QuTNvfgU="; 61 62 meta = { 63 description = "Open source Linux client for Checkpoint VPN tunnels";
+4
pkgs/by-name/sw/swagger-cli/package.nix
··· 21 npm run bump 22 ''; 23 24 meta = with lib; { 25 description = "Swagger 2.0 and OpenAPI 3.0 command-line tool"; 26 homepage = "https://apitools.dev/swagger-cli/";
··· 21 npm run bump 22 ''; 23 24 + postInstall = '' 25 + find $out/lib/node_modules -xtype l -delete 26 + ''; 27 + 28 meta = with lib; { 29 description = "Swagger 2.0 and OpenAPI 3.0 command-line tool"; 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 14 buildGoModule rec { 15 pname = "walker"; 16 - version = "0.12.19"; 17 18 src = fetchFromGitHub { 19 owner = "abenz1267"; 20 repo = "walker"; 21 rev = "v${version}"; 22 - hash = "sha256-XOOYalJ+6V/O/fhC5gEDk2m1yZ2e5DofRRIi8ETHgoQ="; 23 }; 24 25 vendorHash = "sha256-6PPNVnsH1eU4fLcZpxiBoHCzN/TUUxfTfmxDsBDPDKQ=";
··· 13 14 buildGoModule rec { 15 pname = "walker"; 16 + version = "0.12.21"; 17 18 src = fetchFromGitHub { 19 owner = "abenz1267"; 20 repo = "walker"; 21 rev = "v${version}"; 22 + hash = "sha256-wONW5CaPkLiVR5roGFx2SOcvcVDr9E9eCtojGBy3ErE="; 23 }; 24 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 30 doCheck = true; 31 32 passthru = { 33 updateScript = gnome.updateScript { 34 packageName = "yelp-xsl";
··· 29 30 doCheck = true; 31 32 + patches = [ 33 + ./cve-2025-3155.patch 34 + ]; 35 + 36 passthru = { 37 updateScript = gnome.updateScript { 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 gst_all_1.gst-plugins-good 50 ]; 51 52 passthru = { 53 updateScript = gnome.updateScript { 54 packageName = "yelp";
··· 49 gst_all_1.gst-plugins-good 50 ]; 51 52 + patches = [ 53 + ./cve-2025-3155.patch 54 + ]; 55 + 56 passthru = { 57 updateScript = gnome.updateScript { 58 packageName = "yelp";
+3 -3
pkgs/by-name/ze/zed-editor/package.nix
··· 98 in 99 rustPlatform.buildRustPackage (finalAttrs: { 100 pname = "zed-editor"; 101 - version = "0.181.5"; 102 103 outputs = 104 [ "out" ] ··· 110 owner = "zed-industries"; 111 repo = "zed"; 112 tag = "v${finalAttrs.version}"; 113 - hash = "sha256-wp8CoWEOSScQP2Q+lQJgstzTNNwiy0ONHOy6PjIlFBo="; 114 }; 115 116 patches = [ ··· 128 ''; 129 130 useFetchCargoVendor = true; 131 - cargoHash = "sha256-FATdeVwbSUA/zfWV9TdoS4/fT9KWsekKGjQ34HJW4rk="; 132 133 nativeBuildInputs = 134 [
··· 98 in 99 rustPlatform.buildRustPackage (finalAttrs: { 100 pname = "zed-editor"; 101 + version = "0.181.8"; 102 103 outputs = 104 [ "out" ] ··· 110 owner = "zed-industries"; 111 repo = "zed"; 112 tag = "v${finalAttrs.version}"; 113 + hash = "sha256-gkbiV0kfeM1Ito8jVOBVneNjaXCA4PFayXJLIUmjqn4="; 114 }; 115 116 patches = [ ··· 128 ''; 129 130 useFetchCargoVendor = true; 131 + cargoHash = "sha256-PMLu2PeyRNu6VbHByL+clUoY/P8Rlrc+SvP5gDKrN/E="; 132 133 nativeBuildInputs = 134 [
-2
pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
··· 16 libgee, 17 libhandy, 18 libxml2, 19 - libsoup_2_4, 20 elementary-calendar, 21 }: 22 ··· 52 libgee 53 libhandy 54 libical 55 - libsoup_2_4 56 wingpanel 57 ]; 58
··· 16 libgee, 17 libhandy, 18 libxml2, 19 elementary-calendar, 20 }: 21 ··· 51 libgee 52 libhandy 53 libical 54 wingpanel 55 ]; 56
+20 -4
pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin/default.nix
··· 2 lib, 3 stdenv, 4 fetchurl, 5 gettext, 6 pkg-config, 7 glib, 8 gtk3, 9 json_c, 10 libxml2, 11 - libsoup_2_4, 12 upower, 13 libxfce4ui, 14 libxfce4util, 15 xfce4-panel, 16 xfconf, 17 - hicolor-icon-theme, 18 gitUpdater, 19 }: 20 ··· 31 sha256 = "sha256-AC0f5jkG0vOgEvPLWMzv8d+8xGZ1njbHbTsD3QHA3Fc="; 32 }; 33 34 nativeBuildInputs = [ 35 gettext 36 pkg-config 37 ]; 38 39 buildInputs = [ ··· 41 gtk3 42 json_c 43 libxml2 44 - libsoup_2_4 45 upower 46 libxfce4ui 47 libxfce4util 48 xfce4-panel 49 xfconf 50 - hicolor-icon-theme 51 ]; 52 53 enableParallelBuilding = true; 54
··· 2 lib, 3 stdenv, 4 fetchurl, 5 + fetchpatch, 6 gettext, 7 pkg-config, 8 + xfce4-dev-tools, 9 glib, 10 gtk3, 11 json_c, 12 libxml2, 13 + libsoup_3, 14 upower, 15 libxfce4ui, 16 libxfce4util, 17 xfce4-panel, 18 xfconf, 19 gitUpdater, 20 }: 21 ··· 32 sha256 = "sha256-AC0f5jkG0vOgEvPLWMzv8d+8xGZ1njbHbTsD3QHA3Fc="; 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 + 48 nativeBuildInputs = [ 49 gettext 50 pkg-config 51 + xfce4-dev-tools 52 ]; 53 54 buildInputs = [ ··· 56 gtk3 57 json_c 58 libxml2 59 + libsoup_3 60 upower 61 libxfce4ui 62 libxfce4util 63 xfce4-panel 64 xfconf 65 ]; 66 + 67 + configureFlags = [ "--enable-maintainer-mode" ]; 68 69 enableParallelBuilding = true; 70
+1
pkgs/development/compilers/dotnet/default.nix
··· 78 79 patchNupkgs = callPackage ./patch-nupkgs.nix { }; 80 nugetPackageHook = callPackage ./nuget-package-hook.nix { }; 81 82 buildDotnetModule = callPackage ../../../build-support/dotnet/build-dotnet-module { }; 83 buildDotnetGlobalTool = callPackage ../../../build-support/dotnet/build-dotnet-global-tool { };
··· 78 79 patchNupkgs = callPackage ./patch-nupkgs.nix { }; 80 nugetPackageHook = callPackage ./nuget-package-hook.nix { }; 81 + autoPatchcilHook = callPackage ../../../build-support/dotnet/auto-patchcil-hook { }; 82 83 buildDotnetModule = callPackage ../../../build-support/dotnet/build-dotnet-module { }; 84 buildDotnetGlobalTool = callPackage ../../../build-support/dotnet/build-dotnet-global-tool { };
+2 -2
pkgs/development/libraries/gegl/default.nix
··· 38 39 stdenv.mkDerivation (finalAttrs: { 40 pname = "gegl"; 41 - version = "0.4.54"; 42 43 outputs = [ 44 "out" ··· 49 50 src = fetchurl { 51 url = "https://download.gimp.org/pub/gegl/${lib.versions.majorMinor finalAttrs.version}/gegl-${finalAttrs.version}.tar.xz"; 52 - hash = "sha256-NaNC8IxrQ3mt7iy1dI/E4wfP3PJBfAuxfWymVD8jix4="; 53 }; 54 55 nativeBuildInputs = [
··· 38 39 stdenv.mkDerivation (finalAttrs: { 40 pname = "gegl"; 41 + version = "0.4.58"; 42 43 outputs = [ 44 "out" ··· 49 50 src = fetchurl { 51 url = "https://download.gimp.org/pub/gegl/${lib.versions.majorMinor finalAttrs.version}/gegl-${finalAttrs.version}.tar.xz"; 52 + hash = "sha256-1WeLvV/lNZQbgvlluX/Mk4XOk29wyYK9VlpT1VGdG/8="; 53 }; 54 55 nativeBuildInputs = [
+1 -3
pkgs/development/libraries/jemalloc/default.nix
··· 50 automake 51 ]; 52 53 - preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin '' 54 - export LDFLAGS="$LDFLAGS -Wl,-no_uuid -Wl,-install_name,@rpath/libjemalloc.2.dylib"; 55 - ''; 56 57 # TODO: switch to autoreconfHook when updating beyond 5.3.0 58 # https://github.com/jemalloc/jemalloc/issues/2346
··· 50 automake 51 ]; 52 53 + preConfigure = ""; 54 55 # TODO: switch to autoreconfHook when updating beyond 5.3.0 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 wayland-scanner, 8 pkg-config, 9 libdrm, 10 }: 11 12 qtModule { 13 pname = "qtwayland"; 14 # wayland-scanner needs to be propagated as both build 15 # (for the wayland-scanner binary) and host (for the 16 # actual wayland.xml protocol definition)
··· 7 wayland-scanner, 8 pkg-config, 9 libdrm, 10 + fetchpatch, 11 }: 12 13 qtModule { 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 + 25 # wayland-scanner needs to be propagated as both build 26 # (for the wayland-scanner binary) and host (for the 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 bit32 = callPackage ( 170 { 171 buildLuarocksPackage, 172 - fetchFromGitHub, 173 fetchurl, 174 luaOlder, 175 }: 176 buildLuarocksPackage { 177 pname = "bit32"; 178 - version = "5.3.0-1"; 179 knownRockspec = 180 (fetchurl { 181 - url = "mirror://luarocks/bit32-5.3.0-1.rockspec"; 182 - sha256 = "1d6xdihpksrj5a3yvsvnmf3vfk15hj6f8n1rrs65m7adh87hc0yd"; 183 }).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="; 189 }; 190 191 - disabled = luaOlder "5.1"; 192 193 meta = { 194 homepage = "http://www.lua.org/manual/5.2/manual.html#6.7"; 195 description = "Lua 5.2 bit manipulation library"; 196 maintainers = with lib.maintainers; [ lblasc ]; 197 - license.fullName = "MIT/X11"; 198 }; 199 } 200 ) { }; ··· 815 }: 816 buildLuarocksPackage { 817 pname = "fzf-lua"; 818 - version = "0.0.1823-1"; 819 knownRockspec = 820 (fetchurl { 821 - url = "mirror://luarocks/fzf-lua-0.0.1823-1.rockspec"; 822 - sha256 = "0icbchqxr546j21xq2f6w122xkcmqgpg9pywlip8xjj8vsdfx6n6"; 823 }).outPath; 824 src = fetchzip { 825 - url = "https://github.com/ibhagwan/fzf-lua/archive/47b85a25c0c0b2c20b4e75199ed01bb71e7814f5.zip"; 826 - sha256 = "1znlhvb84x3lipa5n1cdk1kpid49h647hnnwy01xw447vk49p11p"; 827 }; 828 829 disabled = luaOlder "5.1"; ··· 881 src = fetchFromGitHub { 882 owner = "lewis6991"; 883 repo = "gitsigns.nvim"; 884 - rev = "c6fedfd0b1715ee624384b134becec0a7b0a3d28"; 885 - hash = "sha256-c+7Bf7SqVaNiYHczouYChDrurDdTxIDzr/TLMtLqZ50="; 886 }; 887 888 disabled = lua.luaversion != "5.1"; ··· 895 } 896 ) { }; 897 898 - haskell-tools-nvim = callPackage ( 899 { 900 buildLuarocksPackage, 901 fetchurl, ··· 903 luaOlder, 904 }: 905 buildLuarocksPackage { 906 - pname = "haskell-tools.nvim"; 907 - version = "5.0.0-1"; 908 knownRockspec = 909 (fetchurl { 910 - url = "mirror://luarocks/haskell-tools.nvim-5.0.0-1.rockspec"; 911 - sha256 = "0ps1aqz344b2kc0p5zs70i4n9s07fnc5b2kxdbyj1x8cn3ndv959"; 912 }).outPath; 913 src = fetchzip { 914 - url = "https://github.com/mrcjkb/haskell-tools.nvim/archive/v5.0.0.zip"; 915 - sha256 = "0xwxxwcn775yjqjs90mr1qs9hf5dyqxhkii38yfq1cv5w8bnlrff"; 916 }; 917 918 disabled = luaOlder "5.1"; 919 920 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"; 925 }; 926 } 927 ) { }; 928 929 - grug-far-nvim = callPackage ( 930 { 931 buildLuarocksPackage, 932 fetchurl, ··· 934 luaOlder, 935 }: 936 buildLuarocksPackage { 937 - pname = "grug-far.nvim"; 938 - version = "1.5.15-1"; 939 knownRockspec = 940 (fetchurl { 941 - url = "mirror://luarocks/grug-far.nvim-1.5.15-1.rockspec"; 942 - sha256 = "1jp6b6kqp389wli766rypam4hr6dqv6v5r8kv1dk21d7glz8hg6h"; 943 }).outPath; 944 src = fetchzip { 945 - url = "https://github.com/MagicDuck/grug-far.nvim/archive/5da116bc99a03e14be3b824e319f4e49c676af78.zip"; 946 - sha256 = "196l6vy9573fkwld3cl927706a6gfgmc71kn1kx3pmk8l6p8hcya"; 947 }; 948 949 disabled = luaOlder "5.1"; 950 951 meta = { 952 - homepage = "https://github.com/MagicDuck/grug-far.nvim"; 953 - description = "Find And Replace plugin for neovim"; 954 - license.fullName = "MIT"; 955 }; 956 } 957 ) { }; ··· 1979 }: 1980 buildLuarocksPackage { 1981 pname = "lua-resty-openssl"; 1982 - version = "1.5.2-1"; 1983 knownRockspec = 1984 (fetchurl { 1985 - url = "mirror://luarocks/lua-resty-openssl-1.5.2-1.rockspec"; 1986 - sha256 = "1nrriyf9fvn0achn2drvb915kx7cq4ldlyg24g118i8ib1fr9lgd"; 1987 }).outPath; 1988 src = fetchFromGitHub { 1989 owner = "fffonion"; 1990 repo = "lua-resty-openssl"; 1991 - rev = "1.5.2"; 1992 - hash = "sha256-vkcqUaHCIBBmcVP4csqjn6oPSBvUF8MBzveIc6jJKWY="; 1993 }; 1994 1995 meta = { ··· 2011 }: 2012 buildLuarocksPackage { 2013 pname = "lua-resty-session"; 2014 - version = "4.0.5-1"; 2015 knownRockspec = 2016 (fetchurl { 2017 - url = "mirror://luarocks/lua-resty-session-4.0.5-1.rockspec"; 2018 - sha256 = "0h0kqwna46mrraq310qjb7yigxwv13n4czk24xnqr21czxsskzkg"; 2019 }).outPath; 2020 src = fetchFromGitHub { 2021 owner = "bungle"; 2022 repo = "lua-resty-session"; 2023 - rev = "v4.0.5"; 2024 - hash = "sha256-n0m6/4JnUPoidM7oWKd+ZyNbb/X/h8w21ptCrFaA8SI="; 2025 }; 2026 2027 disabled = luaOlder "5.1"; ··· 2730 knownRockspec = 2731 (fetchurl { 2732 url = "mirror://luarocks/lualine.nvim-scm-1.rockspec"; 2733 - sha256 = "044bnw2phsxjsxkraaq9phj932f2f7vsbvfa91p7qfp2yjshixjf"; 2734 }).outPath; 2735 src = fetchFromGitHub { 2736 owner = "nvim-lualine"; 2737 repo = "lualine.nvim"; 2738 - rev = "0ea56f91b7f51a37b749c050a5e5dfdd56b302b3"; 2739 - hash = "sha256-VSWWvhnaeNoeM7U1SwerL8vqu81eg8YJtLnJDdEjvzY="; 2740 }; 2741 2742 disabled = luaOlder "5.1"; ··· 3216 version = "0.6.0-1"; 3217 knownRockspec = 3218 (fetchurl { 3219 - url = "mirror://luarocks/luasystem-0.6.0-1.rockspec"; 3220 - sha256 = "0pbjxfa56wy2bzs3q0bsxv27m8l2f3p2frvkprah2n708pxzi84s"; 3221 }).outPath; 3222 src = fetchFromGitHub { 3223 owner = "lunarmodules"; 3224 repo = "luasystem"; 3225 - rev = "v0.6.0"; 3226 - hash = "sha256-xhMdtI8tVBIQ4hsGe3l9z/ywJTvJhtGoE9hVnzvrTGc="; 3227 }; 3228 3229 disabled = luaOlder "5.1"; ··· 4080 src = fetchFromGitHub { 4081 owner = "hrsh7th"; 4082 repo = "nvim-cmp"; 4083 - rev = "059e89495b3ec09395262f16b1ad441a38081d04"; 4084 - hash = "sha256-YC2ehgS759GzRUySPqmb1NQFxJ9HnP731oVYptWU3Xk="; 4085 }; 4086 4087 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4336 src = fetchFromGitHub { 4337 owner = "nvim-lua"; 4338 repo = "plenary.nvim"; 4339 - rev = "3707cdb1e43f5cea73afb6037e6494e7ce847a66"; 4340 - hash = "sha256-18zX3kZ42ynRefFP0mOcy6ESEpejTukjNi4jCRXx48A="; 4341 }; 4342 4343 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4426 }: 4427 buildLuarocksPackage { 4428 pname = "rest.nvim"; 4429 - version = "3.9.1-1"; 4430 knownRockspec = 4431 (fetchurl { 4432 - url = "mirror://luarocks/rest.nvim-3.9.1-1.rockspec"; 4433 - sha256 = "02arw1hr702jfadnc72yr3kkhfcm7hfg1ipis7nlhvsj25i2yl54"; 4434 }).outPath; 4435 src = fetchzip { 4436 - url = "https://github.com/rest-nvim/rest.nvim/archive/v3.9.1.zip"; 4437 - sha256 = "15lkdr77q7zxqbh3xkx3ilj38hp5jfinrqw92q3dpmxc8d8wk9iw"; 4438 }; 4439 4440 disabled = luaOlder "5.1"; ··· 4649 }: 4650 buildLuarocksPackage { 4651 pname = "rustaceanvim"; 4652 - version = "6.0.1-1"; 4653 knownRockspec = 4654 (fetchurl { 4655 - url = "mirror://luarocks/rustaceanvim-6.0.1-1.rockspec"; 4656 - sha256 = "02qxbrk32fay17nlxs4sf4dpkvsfnj5lkm8wsb2q0a8jaa2v7dxv"; 4657 }).outPath; 4658 src = fetchzip { 4659 - url = "https://github.com/mrcjkb/rustaceanvim/archive/v6.0.1.zip"; 4660 - sha256 = "032barkibbsjjwzq87jbn2sqni3f5bmfvxn2bcq589viwdrziwgf"; 4661 }; 4662 4663 disabled = luaOlder "5.1"; ··· 4962 src = fetchFromGitHub { 4963 owner = "nvim-telescope"; 4964 repo = "telescope.nvim"; 4965 - rev = "415af52339215926d705cccc08145f3782c4d132"; 4966 - hash = "sha256-5y8srYKaAqFplMtDjsc8GdDF8yui5vCNMiOeFLrC/sM="; 4967 }; 4968 4969 disabled = lua.luaversion != "5.1";
··· 169 bit32 = callPackage ( 170 { 171 buildLuarocksPackage, 172 fetchurl, 173 + fetchzip, 174 + luaAtLeast, 175 luaOlder, 176 }: 177 buildLuarocksPackage { 178 pname = "bit32"; 179 + version = "5.3.5.1-1"; 180 knownRockspec = 181 (fetchurl { 182 + url = "mirror://luarocks/bit32-5.3.5.1-1.rockspec"; 183 + sha256 = "11mg0hmmil92hkwamm91ghih6ys9pqsakx0z9jgnqxymnl887j51"; 184 }).outPath; 185 + src = fetchzip { 186 + url = "https://github.com/keplerproject/lua-compat-5.3/archive/v0.10.zip"; 187 + sha256 = "1caxn228gx48g6kymp9w7kczgxcg0v0cd5ixsx8viybzkd60dcn4"; 188 }; 189 190 + disabled = luaOlder "5.1" || luaAtLeast "5.5"; 191 192 meta = { 193 homepage = "http://www.lua.org/manual/5.2/manual.html#6.7"; 194 description = "Lua 5.2 bit manipulation library"; 195 maintainers = with lib.maintainers; [ lblasc ]; 196 + license.fullName = "MIT"; 197 }; 198 } 199 ) { }; ··· 814 }: 815 buildLuarocksPackage { 816 pname = "fzf-lua"; 817 + version = "0.0.1836-1"; 818 knownRockspec = 819 (fetchurl { 820 + url = "mirror://luarocks/fzf-lua-0.0.1836-1.rockspec"; 821 + sha256 = "1q0wfck09d0449q8dyb95cyyr8z0r8292dp8vrqq3jcd7qkjcf1q"; 822 }).outPath; 823 src = fetchzip { 824 + url = "https://github.com/ibhagwan/fzf-lua/archive/ba5ba606f11967e08165aeeb9d7abe04d0835f58.zip"; 825 + sha256 = "1r66yrpzzzazasmb450xpr11f0sjg8ckrf91x4c66ypsanz2z2ws"; 826 }; 827 828 disabled = luaOlder "5.1"; ··· 880 src = fetchFromGitHub { 881 owner = "lewis6991"; 882 repo = "gitsigns.nvim"; 883 + rev = "fcfa7a989cd6fed10abf02d9880dc76d7a38167d"; 884 + hash = "sha256-cg8r0yuuSE8G5MTj0pET8MzJ+VQf+HsXDJx5FzriM78="; 885 }; 886 887 disabled = lua.luaversion != "5.1"; ··· 894 } 895 ) { }; 896 897 + grug-far-nvim = callPackage ( 898 { 899 buildLuarocksPackage, 900 fetchurl, ··· 902 luaOlder, 903 }: 904 buildLuarocksPackage { 905 + pname = "grug-far.nvim"; 906 + version = "1.6.6-1"; 907 knownRockspec = 908 (fetchurl { 909 + url = "mirror://luarocks/grug-far.nvim-1.6.6-1.rockspec"; 910 + sha256 = "1axdj580nv078d4rh7q9rqd5rd46cvd3gfif0cbqys2kpv0xx53d"; 911 }).outPath; 912 src = fetchzip { 913 + url = "https://github.com/MagicDuck/grug-far.nvim/archive/d6c682af0033b4fbb3645a997e3b4a9189ed1ed6.zip"; 914 + sha256 = "0v1nfyiymb17p3fkk6ih1pxiib25f8vg74k79vp9r5wr56l9ja9c"; 915 }; 916 917 disabled = luaOlder "5.1"; 918 919 meta = { 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"; 924 }; 925 } 926 ) { }; 927 928 + haskell-tools-nvim = callPackage ( 929 { 930 buildLuarocksPackage, 931 fetchurl, ··· 933 luaOlder, 934 }: 935 buildLuarocksPackage { 936 + pname = "haskell-tools.nvim"; 937 + version = "5.0.0-1"; 938 knownRockspec = 939 (fetchurl { 940 + url = "mirror://luarocks/haskell-tools.nvim-5.0.0-1.rockspec"; 941 + sha256 = "0ps1aqz344b2kc0p5zs70i4n9s07fnc5b2kxdbyj1x8cn3ndv959"; 942 }).outPath; 943 src = fetchzip { 944 + url = "https://github.com/mrcjkb/haskell-tools.nvim/archive/v5.0.0.zip"; 945 + sha256 = "0xwxxwcn775yjqjs90mr1qs9hf5dyqxhkii38yfq1cv5w8bnlrff"; 946 }; 947 948 disabled = luaOlder "5.1"; 949 950 meta = { 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 }; 956 } 957 ) { }; ··· 1979 }: 1980 buildLuarocksPackage { 1981 pname = "lua-resty-openssl"; 1982 + version = "1.6.0-1"; 1983 knownRockspec = 1984 (fetchurl { 1985 + url = "mirror://luarocks/lua-resty-openssl-1.6.0-1.rockspec"; 1986 + sha256 = "108a53210khinpwk88pcz6s8n2f6hhaib3jfrgi9kjp0r4s14c4q"; 1987 }).outPath; 1988 src = fetchFromGitHub { 1989 owner = "fffonion"; 1990 repo = "lua-resty-openssl"; 1991 + rev = "1.6.0"; 1992 + hash = "sha256-TqBRTFV1255Ct2mm2T8bLJNdSWZTEB6wOOHGRZczcVk="; 1993 }; 1994 1995 meta = { ··· 2011 }: 2012 buildLuarocksPackage { 2013 pname = "lua-resty-session"; 2014 + version = "4.1.0-1"; 2015 knownRockspec = 2016 (fetchurl { 2017 + url = "mirror://luarocks/lua-resty-session-4.1.0-1.rockspec"; 2018 + sha256 = "0cmx2rwiwiprg1112chxrfvp7gs2jg0grdnkb5n7yhd5rnp0bhhw"; 2019 }).outPath; 2020 src = fetchFromGitHub { 2021 owner = "bungle"; 2022 repo = "lua-resty-session"; 2023 + rev = "v4.1.0"; 2024 + hash = "sha256-MXB7Z/0drMOcTwJBHNwZx4iqem1XfG6uwozW+RxL588="; 2025 }; 2026 2027 disabled = luaOlder "5.1"; ··· 2730 knownRockspec = 2731 (fetchurl { 2732 url = "mirror://luarocks/lualine.nvim-scm-1.rockspec"; 2733 + sha256 = "1cf500jgdd3f9d36ad9h3vf20vyz4za0lqsdrx9l3si39n71k92v"; 2734 }).outPath; 2735 src = fetchFromGitHub { 2736 owner = "nvim-lualine"; 2737 repo = "lualine.nvim"; 2738 + rev = "86fe39534b7da729a1ac56c0466e76f2c663dc42"; 2739 + hash = "sha256-XeAFXg6GWzMJV/HzfdCXtv/effAHVU7mioFKTf1kDc8="; 2740 }; 2741 2742 disabled = luaOlder "5.1"; ··· 3216 version = "0.6.0-1"; 3217 knownRockspec = 3218 (fetchurl { 3219 + url = "mirror://luarocks/luasystem-0.6.2-1.rockspec"; 3220 + sha256 = "0s6vd8a35x156ccp9b95rzqgklmgvz3a2bcfp4g09vlyh2kqy1am"; 3221 }).outPath; 3222 src = fetchFromGitHub { 3223 owner = "lunarmodules"; 3224 repo = "luasystem"; 3225 + rev = "v0.6.2"; 3226 + hash = "sha256-EcKs8W8UAbyA5WCt75tGO2osNgFbL8SNUl78vKSy82o="; 3227 }; 3228 3229 disabled = luaOlder "5.1"; ··· 4080 src = fetchFromGitHub { 4081 owner = "hrsh7th"; 4082 repo = "nvim-cmp"; 4083 + rev = "b5311ab3ed9c846b585c0c15b7559be131ec4be9"; 4084 + hash = "sha256-l5z+PT4S9b09d2M+J/tHVd9W9Ss3eQQk5Ykpz2Qjxxw="; 4085 }; 4086 4087 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4336 src = fetchFromGitHub { 4337 owner = "nvim-lua"; 4338 repo = "plenary.nvim"; 4339 + rev = "857c5ac632080dba10aae49dba902ce3abf91b35"; 4340 + hash = "sha256-8FV5RjF7QbDmQOQynpK7uRKONKbPRYbOPugf9ZxNvUs="; 4341 }; 4342 4343 disabled = luaOlder "5.1" || luaAtLeast "5.4"; ··· 4426 }: 4427 buildLuarocksPackage { 4428 pname = "rest.nvim"; 4429 + version = "3.12.0-1"; 4430 knownRockspec = 4431 (fetchurl { 4432 + url = "mirror://luarocks/rest.nvim-3.12.0-1.rockspec"; 4433 + sha256 = "1i16gr471v9v6jdwrqizagznpjdr58ijx0cs9yjnd8b6b9cwmxi9"; 4434 }).outPath; 4435 src = fetchzip { 4436 + url = "https://github.com/rest-nvim/rest.nvim/archive/v3.12.0.zip"; 4437 + sha256 = "1494r144idrq09da8ra4q0yk7giqh4hxs05397ja7hpxyz0yabdr"; 4438 }; 4439 4440 disabled = luaOlder "5.1"; ··· 4649 }: 4650 buildLuarocksPackage { 4651 pname = "rustaceanvim"; 4652 + version = "6.0.2-1"; 4653 knownRockspec = 4654 (fetchurl { 4655 + url = "mirror://luarocks/rustaceanvim-6.0.2-1.rockspec"; 4656 + sha256 = "1z2s2f91mnc9fxr5ykffajpj2c92rjgnwipfvi2lhhl2p5hpgf9f"; 4657 }).outPath; 4658 src = fetchzip { 4659 + url = "https://github.com/mrcjkb/rustaceanvim/archive/v6.0.2.zip"; 4660 + sha256 = "09wrfmzbk81xax5p4wzczsvv1x28nv54mayi12fvzv6c3bmcsbvj"; 4661 }; 4662 4663 disabled = luaOlder "5.1"; ··· 4962 src = fetchFromGitHub { 4963 owner = "nvim-telescope"; 4964 repo = "telescope.nvim"; 4965 + rev = "a4ed82509cecc56df1c7138920a1aeaf246c0ac5"; 4966 + hash = "sha256-GF1zOHZItVZm3bx2wqI4hPj7EXQJ2F9KS4MtaEt2gm0="; 4967 }; 4968 4969 disabled = lua.luaversion != "5.1";
+14 -11
pkgs/development/lua-modules/overrides.nix
··· 4 cargo, 5 cmake, 6 7 - # plenary utilities 8 which, 9 findutils, 10 coreutils, ··· 86 ##########################################3 87 #### manual fixes for generated packages 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 busted = prev.busted.overrideAttrs (oa: { 100 nativeBuildInputs = oa.nativeBuildInputs ++ [ 101 installShellFiles ··· 227 runHook preCheck 228 # feel free to disable/adjust the tests 229 rm tests/base/test_apply.lua tests/base/test_vimscript_interpreter.lua 230 make test dir=base 231 runHook postCheck 232 '';
··· 4 cargo, 5 cmake, 6 7 + ast-grep, 8 which, 9 findutils, 10 coreutils, ··· 86 ##########################################3 87 #### manual fixes for generated packages 88 ##########################################3 89 busted = prev.busted.overrideAttrs (oa: { 90 nativeBuildInputs = oa.nativeBuildInputs ++ [ 91 installShellFiles ··· 217 runHook preCheck 218 # feel free to disable/adjust the tests 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 + 233 make test dir=base 234 runHook postCheck 235 '';
+2 -2
pkgs/development/python-modules/craft-platforms/default.nix
··· 14 15 buildPythonPackage rec { 16 pname = "craft-platforms"; 17 - version = "0.7.1"; 18 pyproject = true; 19 20 disabled = pythonOlder "3.10"; ··· 23 owner = "canonical"; 24 repo = "craft-platforms"; 25 tag = version; 26 - hash = "sha256-+7uaN+ePu+88goPCj9KM3dKhTwV2erP0/Fg05LqOWPg="; 27 }; 28 29 postPatch = ''
··· 14 15 buildPythonPackage rec { 16 pname = "craft-platforms"; 17 + version = "0.8.0"; 18 pyproject = true; 19 20 disabled = pythonOlder "3.10"; ··· 23 owner = "canonical"; 24 repo = "craft-platforms"; 25 tag = version; 26 + hash = "sha256-U57hmQ3UPuwoue8kAxAXiH8ecViryFqIxmpnaAdQnZo="; 27 }; 28 29 postPatch = ''
+2 -2
pkgs/development/python-modules/islpy/default.nix
··· 20 21 buildPythonPackage rec { 22 pname = "islpy"; 23 - version = "2025.1.3"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "inducer"; 28 repo = "islpy"; 29 tag = "v${version}"; 30 - hash = "sha256-3HUfr0W5X8HaViUD0kpKbdxTTRS/TW6PvAGl8vr03XU="; 31 }; 32 33 build-system = [
··· 20 21 buildPythonPackage rec { 22 pname = "islpy"; 23 + version = "2025.1.5"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "inducer"; 28 repo = "islpy"; 29 tag = "v${version}"; 30 + hash = "sha256-hzqxVLNKm63XliX5rDB54f6n1nJPVJJSAMmNTInbOEE="; 31 }; 32 33 build-system = [
+2 -2
pkgs/development/python-modules/nomadnet/default.nix
··· 12 13 buildPythonPackage rec { 14 pname = "nomadnet"; 15 - version = "0.6.1"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.7"; ··· 21 owner = "markqvist"; 22 repo = "NomadNet"; 23 tag = version; 24 - hash = "sha256-TKn35rrWsHo/5bGriMcPx+lPvhWzmVXU3EG4KU/ebwI="; 25 }; 26 27 build-system = [ setuptools ];
··· 12 13 buildPythonPackage rec { 14 pname = "nomadnet"; 15 + version = "0.6.2"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.7"; ··· 21 owner = "markqvist"; 22 repo = "NomadNet"; 23 tag = version; 24 + hash = "sha256-HBNZvU4ZCLgEn8ul1iflaY18novZMnn8GIojriX/ej0="; 25 }; 26 27 build-system = [ setuptools ];
+2 -2
pkgs/development/python-modules/rns/default.nix
··· 20 21 buildPythonPackage rec { 22 pname = "rns"; 23 - version = "0.9.3"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "markqvist"; 28 repo = "Reticulum"; 29 tag = version; 30 - hash = "sha256-50L+5WVsYaidz71rkGZny2KlCR3ZfPEQJEPI38MOBWA="; 31 }; 32 33 patches = [
··· 20 21 buildPythonPackage rec { 22 pname = "rns"; 23 + version = "0.9.4"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "markqvist"; 28 repo = "Reticulum"; 29 tag = version; 30 + hash = "sha256-Z6Af/PNQkbo+0xn0kEh2I8T03D/gQpuRNHBhLX3mkms="; 31 }; 32 33 patches = [
+2 -2
pkgs/development/tools/pnpm/default.nix
··· 16 hash = "sha256-z4anrXZEBjldQoam0J1zBxFyCsxtk+nc6ax6xNxKKKc="; 17 }; 18 "10" = { 19 - version = "10.8.0"; 20 - hash = "sha256-Kb8sXOrqeZHugu7BX+cWLg+tgW0MSms1oWwB05J0v2k="; 21 }; 22 }; 23
··· 16 hash = "sha256-z4anrXZEBjldQoam0J1zBxFyCsxtk+nc6ax6xNxKKKc="; 17 }; 18 "10" = { 19 + version = "10.8.1"; 20 + hash = "sha256-2LLrvGXPAsNJ7Ka0XJZAuRDxa2revbe5JunbRA5Hysc="; 21 }; 22 }; 23
+3 -3
pkgs/games/minecraft-servers/versions.json
··· 1 { 2 "1.21": { 3 - "sha1": "4707d00eb834b446575d89a61a11b5d548d8c001", 4 - "url": "https://piston-data.mojang.com/v1/objects/4707d00eb834b446575d89a61a11b5d548d8c001/server.jar", 5 - "version": "1.21.4", 6 "javaVersion": 21 7 }, 8 "1.20": {
··· 1 { 2 "1.21": { 3 + "sha1": "e6ec2f64e6080b9b5d9b471b291c33cc7f509733", 4 + "url": "https://piston-data.mojang.com/v1/objects/e6ec2f64e6080b9b5d9b471b291c33cc7f509733/server.jar", 5 + "version": "1.21.5", 6 "javaVersion": 21 7 }, 8 "1.20": {
+7
pkgs/misc/arm-trusted-firmware/default.nix
··· 179 platformCanUseHDCPBlob = true; 180 }; 181 182 armTrustedFirmwareRK3588 = buildArmTrustedFirmware rec { 183 extraMakeFlags = [ "bl31" ]; 184 platform = "rk3588";
··· 179 platformCanUseHDCPBlob = true; 180 }; 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 + 189 armTrustedFirmwareRK3588 = buildArmTrustedFirmware rec { 190 extraMakeFlags = [ "bl31" ]; 191 platform = "rk3588";
+15
pkgs/misc/uboot/default.nix
··· 24 armTrustedFirmwareAllwinnerH616, 25 armTrustedFirmwareRK3328, 26 armTrustedFirmwareRK3399, 27 armTrustedFirmwareRK3588, 28 armTrustedFirmwareS905, 29 buildPackages, ··· 604 "x86_64-linux" 605 ]; 606 filesToInstall = [ "u-boot.rom" ]; 607 }; 608 609 ubootRaspberryPi = buildUBoot {
··· 24 armTrustedFirmwareAllwinnerH616, 25 armTrustedFirmwareRK3328, 26 armTrustedFirmwareRK3399, 27 + armTrustedFirmwareRK3568, 28 armTrustedFirmwareRK3588, 29 armTrustedFirmwareS905, 30 buildPackages, ··· 605 "x86_64-linux" 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 + ]; 622 }; 623 624 ubootRaspberryPi = buildUBoot {
+3 -3
pkgs/servers/home-assistant/custom-lovelace-modules/sankey-chart/package.nix
··· 6 7 buildNpmPackage rec { 8 pname = "sankey-chart"; 9 - version = "3.6.0"; 10 11 src = fetchFromGitHub { 12 owner = "MindFreeze"; 13 repo = "ha-sankey-chart"; 14 rev = "v${version}"; 15 - hash = "sha256-Yjh9HrL7zcMFSlXLRW071zG4Wiyv9q2siIw5Ego4e80="; 16 }; 17 18 - npmDepsHash = "sha256-rrzBw+zkvSf6+ABSGfC8rvtQ+pxYyZOPDW7TBpA0ysQ="; 19 20 installPhase = '' 21 runHook preInstall
··· 6 7 buildNpmPackage rec { 8 pname = "sankey-chart"; 9 + version = "3.7.0"; 10 11 src = fetchFromGitHub { 12 owner = "MindFreeze"; 13 repo = "ha-sankey-chart"; 14 rev = "v${version}"; 15 + hash = "sha256-krWK2P7tjK5loFYXZ5+b8UN4TEKPObW2QK+3l7+zvj0="; 16 }; 17 18 + npmDepsHash = "sha256-OBgmmPcwpMxXrytP2tHzCFe1imz1S6LHBWJkruw3jgI="; 19 20 installPhase = '' 21 runHook preInstall
+1
pkgs/top-level/aliases.nix
··· 946 libquotient = libsForQt5.libquotient; # Added 2023-11-11 947 librarian-puppet-go = throw "'librarian-puppet-go' has been removed, as it's upstream is unmaintained"; # Added 2024-06-10 948 librdf = throw "'librdf' has been renamed to/replaced by 'lrdf'"; # Converted to throw 2024-10-17 949 LibreArp = librearp; # Added 2024-06-12 950 LibreArp-lv2 = librearp-lv2; # Added 2024-06-12 951 libreddit = throw "'libreddit' has been removed because it is unmaintained upstream. Consider using 'redlib', a maintained fork"; # Added 2024-07-17
··· 946 libquotient = libsForQt5.libquotient; # Added 2023-11-11 947 librarian-puppet-go = throw "'librarian-puppet-go' has been removed, as it's upstream is unmaintained"; # Added 2024-06-10 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 950 LibreArp = librearp; # Added 2024-06-12 951 LibreArp-lv2 = librearp-lv2; # Added 2024-06-12 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 buildDotnetGlobalTool 492 mkNugetSource 493 mkNugetDeps 494 ; 495 496 dotnetenv = callPackage ../build-support/dotnet/dotnetenv { ··· 11042 haskellLib = haskell.lib.compose; 11043 }; 11044 11045 - librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { }; 11046 - 11047 librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; 11048 11049 librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; ··· 12713 armTrustedFirmwareQemu 12714 armTrustedFirmwareRK3328 12715 armTrustedFirmwareRK3399 12716 armTrustedFirmwareRK3588 12717 armTrustedFirmwareS905 12718 ; ··· 13283 ubootQemuArm 13284 ubootQemuRiscv64Smode 13285 ubootQemuX86 13286 ubootRaspberryPi 13287 ubootRaspberryPi2 13288 ubootRaspberryPi3_32bit ··· 14166 avahi = avahi.override { withLibdnssdCompat = true; }; 14167 }; 14168 14169 - keepassxc = libsForQt5.callPackage ../applications/misc/keepassxc { 14170 - inherit (darwin.apple_sdk_11_0.frameworks) LocalAuthentication; 14171 - }; 14172 - 14173 evolution-data-server-gtk4 = evolution-data-server.override { 14174 withGtk3 = false; 14175 withGtk4 = true; ··· 14487 14488 inherit (xorg) xlsfonts; 14489 14490 - gimp = callPackage ../applications/graphics/gimp { 14491 autoreconfHook = buildPackages.autoreconfHook269; 14492 lcms = lcms2; 14493 inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
··· 491 buildDotnetGlobalTool 492 mkNugetSource 493 mkNugetDeps 494 + autoPatchcilHook 495 ; 496 497 dotnetenv = callPackage ../build-support/dotnet/dotnetenv { ··· 11043 haskellLib = haskell.lib.compose; 11044 }; 11045 11046 librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; 11047 11048 librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; ··· 12712 armTrustedFirmwareQemu 12713 armTrustedFirmwareRK3328 12714 armTrustedFirmwareRK3399 12715 + armTrustedFirmwareRK3568 12716 armTrustedFirmwareRK3588 12717 armTrustedFirmwareS905 12718 ; ··· 13283 ubootQemuArm 13284 ubootQemuRiscv64Smode 13285 ubootQemuX86 13286 + ubootQuartz64B 13287 ubootRaspberryPi 13288 ubootRaspberryPi2 13289 ubootRaspberryPi3_32bit ··· 14167 avahi = avahi.override { withLibdnssdCompat = true; }; 14168 }; 14169 14170 evolution-data-server-gtk4 = evolution-data-server.override { 14171 withGtk3 = false; 14172 withGtk4 = true; ··· 14484 14485 inherit (xorg) xlsfonts; 14486 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 { 14504 autoreconfHook = buildPackages.autoreconfHook269; 14505 lcms = lcms2; 14506 inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;