lol

Merge master into staging-next

authored by

github-actions[bot] and committed by
GitHub
aec898bb 3220fbe6

+419 -68
+19
nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
··· 1549 1549 release notes</link> for changes and upgrade instructions. 1550 1550 </para> 1551 1551 </listitem> 1552 + <listitem> 1553 + <para> 1554 + The <literal>systemd.network</literal> module has gained 1555 + support for the FooOverUDP link type. 1556 + </para> 1557 + </listitem> 1558 + <listitem> 1559 + <para> 1560 + The <literal>networking</literal> module has a new 1561 + <literal>networking.fooOverUDP</literal> option to configure 1562 + Foo-over-UDP encapsulations. 1563 + </para> 1564 + </listitem> 1565 + <listitem> 1566 + <para> 1567 + <literal>networking.sits</literal> now supports Foo-over-UDP 1568 + encapsulation. 1569 + </para> 1570 + </listitem> 1552 1571 </itemizedlist> 1553 1572 </section> 1554 1573 </section>
+6
nixos/doc/manual/release-notes/rl-2111.section.md
··· 447 447 - Three new options, [xdg.mime.addedAssociations](#opt-xdg.mime.addedAssociations), [xdg.mime.defaultApplications](#opt-xdg.mime.defaultApplications), and [xdg.mime.removedAssociations](#opt-xdg.mime.removedAssociations) have been added to the [xdg.mime](#opt-xdg.mime.enable) module to allow the configuration of `/etc/xdg/mimeapps.list`. 448 448 449 449 - Kopia was upgraded from 0.8.x to 0.9.x. Please read the [upstream release notes](https://github.com/kopia/kopia/releases/tag/v0.9.0) for changes and upgrade instructions. 450 + 451 + - The `systemd.network` module has gained support for the FooOverUDP link type. 452 + 453 + - The `networking` module has a new `networking.fooOverUDP` option to configure Foo-over-UDP encapsulations. 454 + 455 + - `networking.sits` now supports Foo-over-UDP encapsulation.
+26
nixos/modules/system/boot/networkd.nix
··· 250 250 (assertRange "ERSPANIndex" 1 1048575) 251 251 ]; 252 252 253 + sectionFooOverUDP = checkUnitConfig "FooOverUDP" [ 254 + (assertOnlyFields [ 255 + "Port" 256 + "Encapsulation" 257 + "Protocol" 258 + ]) 259 + (assertPort "Port") 260 + (assertValueOneOf "Encapsulation" ["FooOverUDP" "GenericUDPEncapsulation"]) 261 + ]; 262 + 253 263 sectionPeer = checkUnitConfig "Peer" [ 254 264 (assertOnlyFields [ 255 265 "Name" ··· 919 929 ''; 920 930 }; 921 931 932 + fooOverUDPConfig = mkOption { 933 + default = { }; 934 + example = { Port = 9001; }; 935 + type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionFooOverUDP; 936 + description = '' 937 + Each attribute in this set specifies an option in the 938 + <literal>[FooOverUDP]</literal> section of the unit. See 939 + <citerefentry><refentrytitle>systemd.netdev</refentrytitle> 940 + <manvolnum>5</manvolnum></citerefentry> for details. 941 + ''; 942 + }; 943 + 922 944 peerConfig = mkOption { 923 945 default = {}; 924 946 example = { Name = "veth2"; }; ··· 1448 1470 + optionalString (def.tunnelConfig != { }) '' 1449 1471 [Tunnel] 1450 1472 ${attrsToSection def.tunnelConfig} 1473 + '' 1474 + + optionalString (def.fooOverUDPConfig != { }) '' 1475 + [FooOverUDP] 1476 + ${attrsToSection def.fooOverUDPConfig} 1451 1477 '' 1452 1478 + optionalString (def.peerConfig != { }) '' 1453 1479 [Peer]
+40 -1
nixos/modules/tasks/network-interfaces-scripted.nix
··· 466 466 ''; 467 467 }); 468 468 469 + createFouEncapsulation = n: v: nameValuePair "${n}-fou-encap" 470 + (let 471 + # if we have a device to bind to we can wait for its addresses to be 472 + # configured, otherwise external sequencing is required. 473 + deps = optionals (v.local != null && v.local.dev != null) 474 + (deviceDependency v.local.dev ++ [ "network-addresses-${v.local.dev}.service" ]); 475 + fouSpec = "port ${toString v.port} ${ 476 + if v.protocol != null then "ipproto ${toString v.protocol}" else "gue" 477 + } ${ 478 + optionalString (v.local != null) "local ${escapeShellArg v.local.address} ${ 479 + optionalString (v.local.dev != null) "dev ${escapeShellArg v.local.dev}" 480 + }" 481 + }"; 482 + in 483 + { description = "FOU endpoint ${n}"; 484 + wantedBy = [ "network-setup.service" (subsystemDevice n) ]; 485 + bindsTo = deps; 486 + partOf = [ "network-setup.service" ]; 487 + after = [ "network-pre.target" ] ++ deps; 488 + before = [ "network-setup.service" ]; 489 + serviceConfig.Type = "oneshot"; 490 + serviceConfig.RemainAfterExit = true; 491 + path = [ pkgs.iproute2 ]; 492 + script = '' 493 + # always remove previous incarnation since show can't filter 494 + ip fou del ${fouSpec} >/dev/null 2>&1 || true 495 + ip fou add ${fouSpec} 496 + ''; 497 + postStop = '' 498 + ip fou del ${fouSpec} || true 499 + ''; 500 + }); 501 + 469 502 createSitDevice = n: v: nameValuePair "${n}-netdev" 470 503 (let 471 504 deps = deviceDependency v.dev; ··· 486 519 ${optionalString (v.remote != null) "remote \"${v.remote}\""} \ 487 520 ${optionalString (v.local != null) "local \"${v.local}\""} \ 488 521 ${optionalString (v.ttl != null) "ttl ${toString v.ttl}"} \ 489 - ${optionalString (v.dev != null) "dev \"${v.dev}\""} 522 + ${optionalString (v.dev != null) "dev \"${v.dev}\""} \ 523 + ${optionalString (v.encapsulation != null) 524 + "encap ${v.encapsulation.type} encap-dport ${toString v.encapsulation.port} ${ 525 + optionalString (v.encapsulation.sourcePort != null) 526 + "encap-sport ${toString v.encapsulation.sourcePort}" 527 + }"} 490 528 ip link set "${n}" up 491 529 ''; 492 530 postStop = '' ··· 530 568 // mapAttrs' createVswitchDevice cfg.vswitches 531 569 // mapAttrs' createBondDevice cfg.bonds 532 570 // mapAttrs' createMacvlanDevice cfg.macvlans 571 + // mapAttrs' createFouEncapsulation cfg.fooOverUDP 533 572 // mapAttrs' createSitDevice cfg.sits 534 573 // mapAttrs' createVlanDevice cfg.vlans 535 574 // {
+31 -1
nixos/modules/tasks/network-interfaces-systemd.nix
··· 47 47 } ] ++ flip mapAttrsToList cfg.bridges (n: { rstp, ... }: { 48 48 assertion = !rstp; 49 49 message = "networking.bridges.${n}.rstp is not supported by networkd."; 50 + }) ++ flip mapAttrsToList cfg.fooOverUDP (n: { local, ... }: { 51 + assertion = local == null; 52 + message = "networking.fooOverUDP.${n}.local is not supported by networkd."; 50 53 }); 51 54 52 55 networking.dhcpcd.enable = mkDefault false; ··· 194 197 macvlan = [ name ]; 195 198 } ]); 196 199 }))) 200 + (mkMerge (flip mapAttrsToList cfg.fooOverUDP (name: fou: { 201 + netdevs."40-${name}" = { 202 + netdevConfig = { 203 + Name = name; 204 + Kind = "fou"; 205 + }; 206 + # unfortunately networkd cannot encode dependencies of netdevs on addresses/routes, 207 + # so we cannot specify Local=, Peer=, PeerPort=. this looks like a missing feature 208 + # in networkd. 209 + fooOverUDPConfig = { 210 + Port = fou.port; 211 + Encapsulation = if fou.protocol != null then "FooOverUDP" else "GenericUDPEncapsulation"; 212 + } // (optionalAttrs (fou.protocol != null) { 213 + Protocol = fou.protocol; 214 + }); 215 + }; 216 + }))) 197 217 (mkMerge (flip mapAttrsToList cfg.sits (name: sit: { 198 218 netdevs."40-${name}" = { 199 219 netdevConfig = { ··· 207 227 Local = sit.local; 208 228 }) // (optionalAttrs (sit.ttl != null) { 209 229 TTL = sit.ttl; 210 - }); 230 + }) // (optionalAttrs (sit.encapsulation != null) ( 231 + { 232 + FooOverUDP = true; 233 + Encapsulation = 234 + if sit.encapsulation.type == "fou" 235 + then "FooOverUDP" 236 + else "GenericUDPEncapsulation"; 237 + FOUDestinationPort = sit.encapsulation.port; 238 + } // (optionalAttrs (sit.encapsulation.sourcePort != null) { 239 + FOUSourcePort = sit.encapsulation.sourcePort; 240 + }))); 211 241 }; 212 242 networks = mkIf (sit.dev != null) { 213 243 "40-${sit.dev}" = (mkMerge [ (genericNetwork (mkOverride 999)) {
+107 -1
nixos/modules/tasks/network-interfaces.nix
··· 10 10 hasVirtuals = any (i: i.virtual) interfaces; 11 11 hasSits = cfg.sits != { }; 12 12 hasBonds = cfg.bonds != { }; 13 + hasFous = cfg.fooOverUDP != { } 14 + || filterAttrs (_: s: s.encapsulation != null) cfg.sits != { }; 13 15 14 16 slaves = concatMap (i: i.interfaces) (attrValues cfg.bonds) 15 17 ++ concatMap (i: i.interfaces) (attrValues cfg.bridges) ··· 823 825 }); 824 826 }; 825 827 828 + networking.fooOverUDP = mkOption { 829 + default = { }; 830 + example = 831 + { 832 + primary = { port = 9001; local = { address = "192.0.2.1"; dev = "eth0"; }; }; 833 + backup = { port = 9002; }; 834 + }; 835 + description = '' 836 + This option allows you to configure Foo Over UDP and Generic UDP Encapsulation 837 + endpoints. See <citerefentry><refentrytitle>ip-fou</refentrytitle> 838 + <manvolnum>8</manvolnum></citerefentry> for details. 839 + ''; 840 + type = with types; attrsOf (submodule { 841 + options = { 842 + port = mkOption { 843 + type = port; 844 + description = '' 845 + Local port of the encapsulation UDP socket. 846 + ''; 847 + }; 848 + 849 + protocol = mkOption { 850 + type = nullOr (ints.between 1 255); 851 + default = null; 852 + description = '' 853 + Protocol number of the encapsulated packets. Specifying <literal>null</literal> 854 + (the default) creates a GUE endpoint, specifying a protocol number will create 855 + a FOU endpoint. 856 + ''; 857 + }; 858 + 859 + local = mkOption { 860 + type = nullOr (submodule { 861 + options = { 862 + address = mkOption { 863 + type = types.str; 864 + description = '' 865 + Local address to bind to. The address must be available when the FOU 866 + endpoint is created, using the scripted network setup this can be achieved 867 + either by setting <literal>dev</literal> or adding dependency information to 868 + <literal>systemd.services.&lt;name&gt;-fou-encap</literal>; it isn't supported 869 + when using networkd. 870 + ''; 871 + }; 872 + 873 + dev = mkOption { 874 + type = nullOr str; 875 + default = null; 876 + example = "eth0"; 877 + description = '' 878 + Network device to bind to. 879 + ''; 880 + }; 881 + }; 882 + }); 883 + default = null; 884 + example = { address = "203.0.113.22"; }; 885 + description = '' 886 + Local address (and optionally device) to bind to using the given port. 887 + ''; 888 + }; 889 + }; 890 + }); 891 + }; 892 + 826 893 networking.sits = mkOption { 827 894 default = { }; 828 895 example = literalExpression '' ··· 879 946 example = "enp4s0f0"; 880 947 description = '' 881 948 The underlying network device on which the tunnel resides. 949 + ''; 950 + }; 951 + 952 + encapsulation = with types; mkOption { 953 + type = nullOr (submodule { 954 + options = { 955 + type = mkOption { 956 + type = enum [ "fou" "gue" ]; 957 + description = '' 958 + Selects encapsulation type. See 959 + <citerefentry><refentrytitle>ip-link</refentrytitle> 960 + <manvolnum>8</manvolnum></citerefentry> for details. 961 + ''; 962 + }; 963 + 964 + port = mkOption { 965 + type = port; 966 + example = 9001; 967 + description = '' 968 + Destination port for encapsulated packets. 969 + ''; 970 + }; 971 + 972 + sourcePort = mkOption { 973 + type = nullOr types.port; 974 + default = null; 975 + example = 9002; 976 + description = '' 977 + Source port for encapsulated packets. Will be chosen automatically by 978 + the kernel if unset. 979 + ''; 980 + }; 981 + }; 982 + }); 983 + default = null; 984 + example = { type = "fou"; port = 9001; }; 985 + description = '' 986 + Configures encapsulation in UDP packets. 882 987 ''; 883 988 }; 884 989 ··· 1116 1221 boot.kernelModules = [ ] 1117 1222 ++ optional hasVirtuals "tun" 1118 1223 ++ optional hasSits "sit" 1119 - ++ optional hasBonds "bonding"; 1224 + ++ optional hasBonds "bonding" 1225 + ++ optional hasFous "fou"; 1120 1226 1121 1227 boot.extraModprobeConfig = 1122 1228 # This setting is intentional as it prevents default bond devices
+70 -3
nixos/tests/networking.nix
··· 380 380 router.wait_until_succeeds("ping -c 1 192.168.1.3") 381 381 ''; 382 382 }; 383 + fou = { 384 + name = "foo-over-udp"; 385 + nodes.machine = { ... }: { 386 + virtualisation.vlans = [ 1 ]; 387 + networking = { 388 + useNetworkd = networkd; 389 + useDHCP = false; 390 + interfaces.eth1.ipv4.addresses = mkOverride 0 391 + [ { address = "192.168.1.1"; prefixLength = 24; } ]; 392 + fooOverUDP = { 393 + fou1 = { port = 9001; }; 394 + fou2 = { port = 9002; protocol = 41; }; 395 + fou3 = mkIf (!networkd) 396 + { port = 9003; local.address = "192.168.1.1"; }; 397 + fou4 = mkIf (!networkd) 398 + { port = 9004; local = { address = "192.168.1.1"; dev = "eth1"; }; }; 399 + }; 400 + }; 401 + systemd.services = { 402 + fou3-fou-encap.after = optional (!networkd) "network-addresses-eth1.service"; 403 + }; 404 + }; 405 + testScript = { ... }: 406 + '' 407 + import json 408 + 409 + machine.wait_for_unit("network.target") 410 + fous = json.loads(machine.succeed("ip -json fou show")) 411 + assert {"port": 9001, "gue": None, "family": "inet"} in fous, "fou1 exists" 412 + assert {"port": 9002, "ipproto": 41, "family": "inet"} in fous, "fou2 exists" 413 + '' + optionalString (!networkd) '' 414 + assert { 415 + "port": 9003, 416 + "gue": None, 417 + "family": "inet", 418 + "local": "192.168.1.1", 419 + } in fous, "fou3 exists" 420 + assert { 421 + "port": 9004, 422 + "gue": None, 423 + "family": "inet", 424 + "local": "192.168.1.1", 425 + "dev": "eth1", 426 + } in fous, "fou4 exists" 427 + ''; 428 + }; 383 429 sit = let 384 430 node = { address4, remote, address6 }: { pkgs, ... }: with pkgs.lib; { 385 431 virtualisation.vlans = [ 1 ]; 386 432 networking = { 387 433 useNetworkd = networkd; 388 - firewall.enable = false; 389 434 useDHCP = false; 390 435 sits.sit = { 391 436 inherit remote; ··· 400 445 }; 401 446 in { 402 447 name = "Sit"; 403 - nodes.client1 = node { address4 = "192.168.1.1"; remote = "192.168.1.2"; address6 = "fc00::1"; }; 404 - nodes.client2 = node { address4 = "192.168.1.2"; remote = "192.168.1.1"; address6 = "fc00::2"; }; 448 + # note on firewalling: the two nodes are explicitly asymmetric. 449 + # client1 sends SIT packets in UDP, but accepts only proto-41 incoming. 450 + # client2 does the reverse, sending in proto-41 and accepting only UDP incoming. 451 + # that way we'll notice when either SIT itself or FOU breaks. 452 + nodes.client1 = args@{ pkgs, ... }: 453 + mkMerge [ 454 + (node { address4 = "192.168.1.1"; remote = "192.168.1.2"; address6 = "fc00::1"; } args) 455 + { 456 + networking = { 457 + firewall.extraCommands = "iptables -A INPUT -p 41 -j ACCEPT"; 458 + sits.sit.encapsulation = { type = "fou"; port = 9001; }; 459 + }; 460 + } 461 + ]; 462 + nodes.client2 = args@{ pkgs, ... }: 463 + mkMerge [ 464 + (node { address4 = "192.168.1.2"; remote = "192.168.1.1"; address6 = "fc00::2"; } args) 465 + { 466 + networking = { 467 + firewall.allowedUDPPorts = [ 9001 ]; 468 + fooOverUDP.fou1 = { port = 9001; protocol = 41; }; 469 + }; 470 + } 471 + ]; 405 472 testScript = { ... }: 406 473 '' 407 474 start_all()
+2 -2
pkgs/applications/misc/zettlr/default.nix
··· 10 10 # Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs. 11 11 let 12 12 pname = "zettlr"; 13 - version = "1.8.9"; 13 + version = "2.0.0"; 14 14 name = "${pname}-${version}"; 15 15 src = fetchurl { 16 16 url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage"; 17 - sha256 = "sha256-1cU9HdPXrJ4ibSjOitO8iJfMIaGub/jjlb2lssYFfcU="; 17 + sha256 = "sha256-MIFgNUuuneIIkPRVRarbx6UMoB/3sdJtKvbacUnwHX8="; 18 18 }; 19 19 appimageContents = appimageTools.extractType2 { 20 20 inherit name src;
+44
pkgs/applications/networking/cluster/kn/default.nix
··· 1 + { lib, buildGoModule, fetchFromGitHub, installShellFiles }: 2 + 3 + buildGoModule rec { 4 + pname = "kn"; 5 + version = "0.26.0"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "knative"; 9 + repo = "client"; 10 + rev = "v${version}"; 11 + sha256 = "sha256-hquxv1BluR535WvMtJlVyP7JuARDNGDjPAbdSSj2juo="; 12 + }; 13 + 14 + vendorSha256 = null; 15 + 16 + subPackages = [ "cmd/kn" ]; 17 + 18 + nativeBuildInputs = [ installShellFiles ]; 19 + 20 + ldflags = [ 21 + "-X knative.dev/client/pkg/kn/commands/version.Version=v${version}" 22 + "-X knative.dev/client/pkg/kn/commands/version.VersionEventing=v${version}" 23 + "-X knative.dev/client/pkg/kn/commands/version.VersionServing=v${version}" 24 + ]; 25 + 26 + postInstall = '' 27 + installShellCompletion --cmd kn \ 28 + --bash <($out/bin/kn completion bash) \ 29 + --zsh <($out/bin/kn completion zsh) 30 + ''; 31 + 32 + doInstallCheck = true; 33 + installCheckPhase = '' 34 + $out/bin/kn version | grep ${version} > /dev/null 35 + ''; 36 + 37 + meta = with lib; { 38 + description = "The Knative client kn is your door to the Knative world. It allows you to create Knative resources interactively from the command line or from within scripts"; 39 + homepage = "https://github.com/knative/client"; 40 + changelog = "https://github.com/knative/client/releases/tag/v${version}"; 41 + license = licenses.asl20; 42 + maintainers = with maintainers; [ bryanasdev000 ]; 43 + }; 44 + }
+9 -1
pkgs/development/embedded/fpga/trellis/default.nix
··· 31 31 nativeBuildInputs = [ cmake python3 ]; 32 32 cmakeFlags = [ 33 33 "-DCURRENT_GIT_VERSION=${realVersion}" 34 + # TODO: should this be in stdenv instead? 35 + "-DCMAKE_INSTALL_DATADIR=${placeholder "out"}/share" 34 36 ]; 35 37 36 38 preConfigure = '' ··· 39 41 cd libtrellis 40 42 ''; 41 43 44 + doInstallCheck = true; 45 + 46 + installCheckPhase = '' 47 + $out/bin/ecppack $out/share/trellis/misc/basecfgs/empty_lfe5u-85f.config /tmp/test.bin 48 + ''; 49 + 42 50 meta = with lib; { 43 51 description = "Documentation and bitstream tools for Lattice ECP5 FPGAs"; 44 52 longDescription = '' ··· 49 57 ''; 50 58 homepage = "https://github.com/YosysHQ/prjtrellis"; 51 59 license = licenses.isc; 52 - maintainers = with maintainers; [ q3k thoughtpolice emily ]; 60 + maintainers = with maintainers; [ q3k thoughtpolice emily rowanG077 ]; 53 61 platforms = platforms.all; 54 62 }; 55 63 }
+10 -7
pkgs/development/interpreters/bqn/dzaima-bqn/default.nix
··· 8 8 9 9 stdenv.mkDerivation rec { 10 10 pname = "dbqn" + lib.optionalString buildNativeImage "-native"; 11 - version = "0.pre+unstable=2021-10-05"; 11 + version = "0.pre+date=2021-10-08"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "dzaima"; 15 15 repo = "BQN"; 16 - rev = "c31ceef52bbf380e747723f5ffd09c5f006b21c5"; 17 - sha256 = "1nzqgwpjawcky85mfrz5izs9lfb3aqlm96dc8syrxhgg20xrziwx"; 16 + rev = "0001109a1c5a420421b368c79d34b1e93bfe606e"; 17 + hash = "sha256-riHHclTLkrVbtzmcz9ungAIc7kaoFHS77+SNatsfNhc="; 18 18 }; 19 19 20 20 nativeBuildInputs = [ 21 - makeWrapper 22 21 jdk 22 + makeWrapper 23 23 ]; 24 24 25 25 dontConfigure = true; 26 26 27 + postPatch = '' 28 + patchShebangs --build ./build8 29 + ''; 30 + 27 31 buildPhase = '' 28 32 runHook preBuild 29 33 30 - patchShebangs --build ./build8 31 34 ./build8 32 35 '' + lib.optionalString buildNativeImage '' 33 36 native-image --report-unsupported-elements-at-runtime \ 34 - -H:CLibraryPath=${lib.getLib jdk}/lib \ 35 - -J-Dfile.encoding=UTF-8 -jar BQN.jar dbqn 37 + -H:CLibraryPath=${lib.getLib jdk}/lib -J-Dfile.encoding=UTF-8 \ 38 + -jar BQN.jar dbqn 36 39 '' + '' 37 40 runHook postBuild 38 41 '';
+10 -8
pkgs/development/interpreters/dzaima-apl/default.nix
··· 8 8 9 9 stdenv.mkDerivation rec { 10 10 pname = "dapl" + lib.optionalString buildNativeImage "-native"; 11 - version = "0.2.0+unstable=2021-06-30"; 11 + version = "0.2.0+date=2021-10-16"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "dzaima"; 15 15 repo = "APL"; 16 - rev = "28b3667beb23c6472266bb2b6eb701708fa421c6"; 17 - hash = "sha256-2kM9XDMclxJNOZngwLvoDQG23UZQQ6ePK/j215UumCg="; 16 + rev = "5eb0a4205e27afa6122096a25008474eec562dc0"; 17 + hash = "sha256-UdumMytqT909JRpNqzhYPuKPw644m/vRUsEbIVF2a7U="; 18 18 }; 19 19 20 20 nativeBuildInputs = [ 21 - makeWrapper 22 21 jdk 22 + makeWrapper 23 23 ]; 24 24 25 25 dontConfigure = true; 26 26 27 + postPatch = '' 28 + patchShebangs --build ./build 29 + ''; 30 + 27 31 buildPhase = '' 28 32 runHook preBuild 29 33 30 - patchShebangs --build ./build 31 - substituteInPlace ./build \ 32 - --replace "javac" "javac -encoding utf8" 33 34 ./build 34 35 '' + lib.optionalString buildNativeImage '' 35 36 native-image --report-unsupported-elements-at-runtime \ 36 - -H:CLibraryPath=${lib.getLib jdk}/lib -jar APL.jar dapl 37 + -H:CLibraryPath=${lib.getLib jdk}/lib -J-Dfile.encoding=UTF-8 \ 38 + -jar APL.jar dapl 37 39 '' + '' 38 40 runHook postBuild 39 41 '';
+3 -4
pkgs/development/tools/database/sqlfluff/default.nix
··· 5 5 6 6 python3.pkgs.buildPythonApplication rec { 7 7 pname = "sqlfluff"; 8 - version = "0.6.8"; 8 + version = "0.7.0"; 9 9 disabled = python3.pythonOlder "3.6"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = pname; 13 13 repo = pname; 14 14 rev = version; 15 - sha256 = "sha256-Aistr85doKEOD0/uTS/7iRzYggb+hC3njVi4mWt8ndM="; 15 + sha256 = "sha256-Cqbo1L3z3bTDIXZ90GXdAulTpGhWLoTc/kYRNghZ/SE="; 16 16 }; 17 17 18 18 propagatedBuildInputs = with python3.pkgs; [ ··· 39 39 ]; 40 40 41 41 disabledTestPaths = [ 42 - # dbt is not available yet 43 - "test/core/templaters/dbt_test.py" 44 42 # Don't run the plugin related tests 45 43 "test/core/plugin_test.py" 44 + "plugins/sqlfluff-templater-dbt" 46 45 "plugins/sqlfluff-plugin-example/test/rules/rule_test_cases_test.py" 47 46 ]; 48 47
+40 -40
pkgs/tools/admin/pulumi/data.nix
··· 9 9 sha256 = "02s759rm633h4v5a1s3jxwvkahfjrbkz561spijrp3mihrws3xhb"; 10 10 } 11 11 { 12 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.0-linux-amd64.tar.gz"; 13 - sha256 = "0ainrb9i14wcq64pg99kb0s41bpmczp1h4sz85kj1a4ic0yrfq14"; 12 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.1-linux-amd64.tar.gz"; 13 + sha256 = "0k67bsqiqalqrifd6r7nm6c2g4ckrfhh7a7nfgfmpvqs7cxx1kfm"; 14 14 } 15 15 { 16 16 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.5.0-linux-amd64.tar.gz"; ··· 21 21 sha256 = "1lmy0dmpspzflc9z8p4w1cz47lbqnbkq8dng3v40lpbs75pnprvs"; 22 22 } 23 23 { 24 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.21.0-linux-amd64.tar.gz"; 25 - sha256 = "1w7ppcqkhh9k9iw10f4d93glmphyvachrkj6p8b6i93n0k78rxv7"; 24 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.22.0-linux-amd64.tar.gz"; 25 + sha256 = "0jl4ic18kf0qcys5mhp6ar4p1bj6ndhi11b51dvzdj5lb39dv43q"; 26 26 } 27 27 { 28 28 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.4.0-linux-amd64.tar.gz"; ··· 37 37 sha256 = "1h5159y7xlslnijs8lpi4vqgvj2px6whxk9m17p9n7wiyqbmd5na"; 38 38 } 39 39 { 40 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.23.0-linux-amd64.tar.gz"; 41 - sha256 = "0kxwx1lk54kdfw49s719g4vwr2iv6fzr82cxi5siykzpf9gfk7bd"; 40 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.24.1-linux-amd64.tar.gz"; 41 + sha256 = "0rmzb3wn5hmx8z8ly85spizinp6ja861k05fhw7l63zhqr8pnls2"; 42 42 } 43 43 { 44 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.2.0-linux-amd64.tar.gz"; 45 - sha256 = "02g59jaifyjfcx185ir79d8lqic38dgaa9cb8dpi3xhvv32z0b0q"; 44 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.3.1-linux-amd64.tar.gz"; 45 + sha256 = "1ixmsxawp0qbyjs37c74gcvj2icpbda6znl17yp9bhiyvnrdvxn7"; 46 46 } 47 47 { 48 48 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.3.0-linux-amd64.tar.gz"; ··· 81 81 sha256 = "0bp7ki3slszmy1vh4a5d4y4fhbvafrazj1cjf081xv91gi99xxz6"; 82 82 } 83 83 { 84 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.22.0-linux-amd64.tar.gz"; 85 - sha256 = "0ga794vwdggscl9lf57dg7cii91j4px0wyha4r43rhn0gbp1zk8y"; 84 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.24.0-linux-amd64.tar.gz"; 85 + sha256 = "1dznd4c8kpy6mwwb170nfl1m2dmrp6f4jalmk3bdfqscm4xhvk3q"; 86 86 } 87 87 { 88 88 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-linux-amd64.tar.gz"; ··· 107 107 sha256 = "1lisk9wr5p866x2hxvlz7nhz0xybhag7wgqk23x0lariln9z5na6"; 108 108 } 109 109 { 110 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.0-darwin-amd64.tar.gz"; 111 - sha256 = "0n5kgmcy4hsg4s4q7jd34z9hz6vcqs64j680jzsxw902cgrj5y9p"; 110 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.1-darwin-amd64.tar.gz"; 111 + sha256 = "103syjj8vla8lygyl5h7ilwm9kl6vxzyn6fdrkz0xcvlhqm1xr30"; 112 112 } 113 113 { 114 114 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.5.0-darwin-amd64.tar.gz"; ··· 119 119 sha256 = "1j7z5dbqzsdq1q8ks9g5pwzyc3ml6avhhp6xj94dzdhskl6pd8w5"; 120 120 } 121 121 { 122 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.21.0-darwin-amd64.tar.gz"; 123 - sha256 = "0sjh5wws6k90w2y5f5bm22c4qxamr658mww3zx11qakdygraijly"; 122 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.22.0-darwin-amd64.tar.gz"; 123 + sha256 = "15c5rh0ix7zxn128kangd5x2x1n61xv9d443a7cbriibwvdkvv0j"; 124 124 } 125 125 { 126 126 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.4.0-darwin-amd64.tar.gz"; ··· 135 135 sha256 = "0r2ykjwam5m2mfiibhq993s8n5pzmks837cwb57jwgwx8lc3ra4x"; 136 136 } 137 137 { 138 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.23.0-darwin-amd64.tar.gz"; 139 - sha256 = "0vpkwlihq6pj554qd3csgf25id2q0pjx4mwkpfj74y08lv6d3v83"; 138 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.24.1-darwin-amd64.tar.gz"; 139 + sha256 = "06lfimnlns1bfvks0kv5rjcnz6dvdk38npigyigsk9vqs0idcfi3"; 140 140 } 141 141 { 142 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.2.0-darwin-amd64.tar.gz"; 143 - sha256 = "0gd3xnl31892qp8ilz9lc1zdps77nf07jgvh0k37mink8f0ppy2z"; 142 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.3.1-darwin-amd64.tar.gz"; 143 + sha256 = "1dy4n03xvirg6fihiid786d88qlkyqkvk4fq6ggnxc92620x7342"; 144 144 } 145 145 { 146 146 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.3.0-darwin-amd64.tar.gz"; ··· 179 179 sha256 = "1i73sxh6vf6adg6as1q1mab3fcjm7ma7gixj2b0y0d2a5d78lhpa"; 180 180 } 181 181 { 182 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.22.0-darwin-amd64.tar.gz"; 183 - sha256 = "19w0m6rxf0i996s9hdjym4f1k0jwf8hrlsr0m9x23xzz5r2simar"; 182 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.24.0-darwin-amd64.tar.gz"; 183 + sha256 = "1jxrz82cadmqkd1d26bj5r3bphvzz5z20shjai351hlh9aa3bv2h"; 184 184 } 185 185 { 186 186 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-darwin-amd64.tar.gz"; ··· 205 205 sha256 = "041lmx5d1c8ls48mv56jchvk714rqw7jywywdgm6d6ipq7h5d67k"; 206 206 } 207 207 { 208 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.0-linux-arm64.tar.gz"; 209 - sha256 = "06hq79r35bcm7yn8qdvdiy19wsqq3ihbrmjakw2vf6xdglrxxxwr"; 208 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.1-linux-arm64.tar.gz"; 209 + sha256 = "0rijbqaw584b5c0kihrs80cv46s06yv3a68yz1dwa8sl7adi7n9p"; 210 210 } 211 211 { 212 212 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.5.0-linux-arm64.tar.gz"; ··· 217 217 sha256 = "0mddv37k87wiygh6x9bnxpcr721qbmbqf6l5zk3xl61n56j8qyb1"; 218 218 } 219 219 { 220 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.21.0-linux-arm64.tar.gz"; 221 - sha256 = "1zlkij96vr3vf071gwdqcwfxlkfvcnkj4q220l3gxzliix0zvfi4"; 220 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.22.0-linux-arm64.tar.gz"; 221 + sha256 = "19aiksm4d4jxs9gw7rdr77ag58fy1v7gkk6r730imgq0d8vsacm1"; 222 222 } 223 223 { 224 224 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.4.0-linux-arm64.tar.gz"; ··· 233 233 sha256 = "1sc8rf930cz6nkyhqn6p0h7450iqzdsrlw2smhp8yyjjvcjmsksf"; 234 234 } 235 235 { 236 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.23.0-linux-arm64.tar.gz"; 237 - sha256 = "0j8dgbfdscp29zj0vd3ial1g87n72jj07afj5lxzgsh8jay1iz2r"; 236 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.24.1-linux-arm64.tar.gz"; 237 + sha256 = "1bvzazdis423vb1r30q15q1irh07kgymv5ikzmvrygf4hm3aph06"; 238 238 } 239 239 { 240 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.2.0-linux-arm64.tar.gz"; 241 - sha256 = "0y7wysd4j1dp73hrbydzj2bfvpgv8vxiza5m6dbg7nl66w9ng0rc"; 240 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.3.1-linux-arm64.tar.gz"; 241 + sha256 = "12iv8vjnal2ym70rxmdnvi02x6md7fxi8jbzhzfw526pzqs1dc47"; 242 242 } 243 243 { 244 244 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.3.0-linux-arm64.tar.gz"; ··· 274 274 sha256 = "0mwpbvv62k8fg07447wwfigs4li4n78fswpzwi4alsjrkqlmw9dj"; 275 275 } 276 276 { 277 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.22.0-linux-arm64.tar.gz"; 278 - sha256 = "0kp13hk57apvqmsn1zw1k7r395wdk1308m0kwx4hmcjy6dzifjsq"; 277 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.24.0-linux-arm64.tar.gz"; 278 + sha256 = "1b8fi56wkk753w6ip1nkrksyk8qd5ypdbaq668pk60l3jb0c9mad"; 279 279 } 280 280 { 281 281 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-linux-arm64.tar.gz"; ··· 300 300 sha256 = "06qc42gb2w2qjy2mz5shh082607395jq0js34wlqq61jgjzpca5l"; 301 301 } 302 302 { 303 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.0-darwin-arm64.tar.gz"; 304 - sha256 = "0nwqrg5in05vvj7ln7gi50vp3bnhkwar8fifpi87b134hl50q935"; 303 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.8.1-darwin-arm64.tar.gz"; 304 + sha256 = "1wqkm32lkwff5gwn7dbznzx5rcbcysj2mx4ip77whba59ikfchsj"; 305 305 } 306 306 { 307 307 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.5.0-darwin-arm64.tar.gz"; ··· 312 312 sha256 = "0fj1ai1kv8xgmsvfbmy5gsinxag70rx9a9gkifqgcpn3r9mj48ks"; 313 313 } 314 314 { 315 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.21.0-darwin-arm64.tar.gz"; 316 - sha256 = "0nj8gin7ys63v235x8nywmx0vv2bdcqdmmp7z3lxlxp2hk4nm84g"; 315 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.22.0-darwin-arm64.tar.gz"; 316 + sha256 = "09v28dgrs5a4w8qn4v4zwrn7n7cn2475a2jh9qz3g2ljaj0086fd"; 317 317 } 318 318 { 319 319 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.4.0-darwin-arm64.tar.gz"; ··· 328 328 sha256 = "1c3pchbnk6dsnxsl02ypq7s4mmkxdgxszdhql1klpx5js7i1lv8k"; 329 329 } 330 330 { 331 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.23.0-darwin-arm64.tar.gz"; 332 - sha256 = "08gcvlfy7kmcx02nf3n4chf6g5lasr2g8gr20gndk0rvihqiwhjz"; 331 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.24.1-darwin-arm64.tar.gz"; 332 + sha256 = "0fafl5zpnzkncvi52qw6f4898yia8p0whvr41m3g8cxcp6nyr0ij"; 333 333 } 334 334 { 335 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.2.0-darwin-arm64.tar.gz"; 336 - sha256 = "0waf4apw5bzn276s34yaxvm3xyk5333l3zcz2j52c56wkadzxvpg"; 335 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.3.1-darwin-arm64.tar.gz"; 336 + sha256 = "0jrihnwfh5wvc95nipqv7ak77kq9xj0pk5hlapv9w2ls5pwykv0r"; 337 337 } 338 338 { 339 339 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.3.0-darwin-arm64.tar.gz"; ··· 369 369 sha256 = "1hzhlxbwji4p8apx4rnqllsgf1k11w49rplz0syzmzb2fxpkif75"; 370 370 } 371 371 { 372 - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.22.0-darwin-arm64.tar.gz"; 373 - sha256 = "038nk93mq59d8ynp1ggmhvmgnilrgqzcbg4hapb9pk7hpbwb269c"; 372 + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.24.0-darwin-arm64.tar.gz"; 373 + sha256 = "0nh8305b6qlqr63xaacxs3v804dhrwdz179xlzdgzf9550zdqb39"; 374 374 } 375 375 { 376 376 url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-darwin-arm64.tar.gz";
+2
pkgs/top-level/all-packages.nix
··· 25827 25827 25828 25828 kmymoney = libsForQt5.callPackage ../applications/office/kmymoney { }; 25829 25829 25830 + kn = callPackage ../applications/networking/cluster/kn { }; 25831 + 25830 25832 kodestudio = callPackage ../applications/editors/kodestudio { }; 25831 25833 25832 25834 kondo = callPackage ../applications/misc/kondo { };