Merge master into staging-next

authored by

github-actions[bot] and committed by
GitHub
6a371413 85f7b527

+3527 -328
+9
maintainers/maintainer-list.nix
··· 1469 1469 githubId = 12958979; 1470 1470 name = "Mika Naylor"; 1471 1471 }; 1472 + autumnal = { 1473 + name = "Sven Friedrich"; 1474 + email = "sven@autumnal.de"; 1475 + github = "sevenautumns"; 1476 + githubId = 20627275; 1477 + keys = [{ 1478 + fingerprint = "6A2E 7FDD 1037 11A8 B996 E28E B051 064E 2FCA B71B"; 1479 + }]; 1480 + }; 1472 1481 avakhrenev = { 1473 1482 email = "avakhrenev@gmail.com"; 1474 1483 github = "avakhrenev";
+6
nixos/doc/manual/release-notes/rl-2305.section.md
··· 166 166 167 167 - Deprecated `xlibsWrapper` transitional package has been removed in favour of direct use of its constitutents: `xorg.libX11`, `freetype` and others. 168 168 169 + - The latest available version of Nextcloud is v26 (available as `pkgs.nextcloud26`) which uses PHP 8.2 as interpreter by default. The installation logic is as follows: 170 + - If `system.stateVersion` is >=23.05, `pkgs.nextcloud26` will be installed by default. 171 + - If `system.stateVersion` is >=22.11, `pkgs.nextcloud25` will be installed by default. 172 + - Please note that an upgrade from v24 (or older) to v26 directly is not possible. Please upgrade to `nextcloud25` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud25;`](options.html#opt-services.nextcloud.package). 173 + - It's recommended to use the latest version available (i.e. v26) and to specify that using `services.nextcloud.package`. 174 + 169 175 - .NET 5.0 was removed due to being end-of-life, use a newer, supported .NET version - https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core 170 176 171 177 - The iputils package, which is installed by default, no longer provides the
+1 -4
nixos/modules/installer/tools/tools.nix
··· 159 159 $desktopConfiguration 160 160 # Configure keymap in X11 161 161 # services.xserver.layout = "us"; 162 - # services.xserver.xkbOptions = { 163 - # "eurosign:e"; 164 - # "caps:escape" # map caps to escape. 165 - # }; 162 + # services.xserver.xkbOptions = "eurosign:e,caps:escape"; 166 163 167 164 # Enable CUPS to print documents. 168 165 # services.printing.enable = true;
+1 -1
nixos/modules/services/networking/ssh/sshd.nix
··· 19 19 else if true == v then "yes" 20 20 else if false == v then "no" 21 21 else if isList v then concatStringsSep "," v 22 - else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}"; 22 + else throw "unsupported type ${builtins.typeOf v}: ${(lib.generators.toPretty {}) v}"; 23 23 24 24 # dont use the "=" operator 25 25 settingsFormat = (pkgs.formats.keyValue {
+107 -79
nixos/modules/services/networking/yggdrasil.nix
··· 8 8 configFileProvided = cfg.configFile != null; 9 9 10 10 format = pkgs.formats.json { }; 11 - in { 11 + in 12 + { 12 13 imports = [ 13 14 (mkRenamedOptionModule 14 15 [ "services" "yggdrasil" "config" ] ··· 21 22 22 23 settings = mkOption { 23 24 type = format.type; 24 - default = {}; 25 + default = { }; 25 26 example = { 26 27 Peers = [ 27 28 "tcp://aa.bb.cc.dd:eeeee" ··· 45 46 46 47 If no keys are specified then ephemeral keys are generated 47 48 and the Yggdrasil interface will have a random IPv6 address 48 - each time the service is started, this is the default. 49 + each time the service is started. This is the default. 49 50 50 51 If both {option}`configFile` and {option}`settings` 51 52 are supplied, they will be combined, with values from ··· 61 62 default = null; 62 63 example = "/run/keys/yggdrasil.conf"; 63 64 description = lib.mdDoc '' 64 - A file which contains JSON configuration for yggdrasil. 65 - See the {option}`settings` option for more information. 65 + A file which contains JSON or HJSON configuration for yggdrasil. See 66 + the {option}`settings` option for more information. 67 + 68 + Note: This file must not be larger than 1 MB because it is passed to 69 + the yggdrasil process via systemd‘s LoadCredential mechanism. For 70 + details, see <https://systemd.io/CREDENTIALS/> and `man 5 71 + systemd.exec`. 66 72 ''; 67 73 }; 68 74 ··· 77 83 type = bool; 78 84 default = false; 79 85 description = lib.mdDoc '' 80 - Whether to open the UDP port used for multicast peer 81 - discovery. The NixOS firewall blocks link-local 82 - communication, so in order to make local peering work you 83 - will also need to set `LinkLocalTCPPort` in your 84 - yggdrasil configuration ({option}`settings` or 85 - {option}`configFile`) to a port number other than 0, 86 - and then add that port to 87 - {option}`networking.firewall.allowedTCPPorts`. 86 + Whether to open the UDP port used for multicast peer discovery. The 87 + NixOS firewall blocks link-local communication, so in order to make 88 + incoming local peering work you will also need to configure 89 + `MulticastInterfaces` in your Yggdrasil configuration 90 + ({option}`settings` or {option}`configFile`). You will then have to 91 + add the ports that you configure there to your firewall configuration 92 + ({option}`networking.firewall.allowedTCPPorts` or 93 + {option}`networking.firewall.interfaces.<name>.allowedTCPPorts`). 88 94 ''; 89 95 }; 90 96 91 97 denyDhcpcdInterfaces = mkOption { 92 98 type = listOf str; 93 - default = []; 99 + default = [ ]; 94 100 example = [ "tap*" ]; 95 101 description = lib.mdDoc '' 96 102 Disable the DHCP client for any interface whose name matches ··· 118 124 }; 119 125 }; 120 126 121 - config = mkIf cfg.enable (let binYggdrasil = cfg.package + "/bin/yggdrasil"; 122 - in { 123 - assertions = [{ 124 - assertion = config.networking.enableIPv6; 125 - message = "networking.enableIPv6 must be true for yggdrasil to work"; 126 - }]; 127 + config = mkIf cfg.enable ( 128 + let 129 + binYggdrasil = "${cfg.package}/bin/yggdrasil"; 130 + binHjson = "${pkgs.hjson-go}/bin/hjson-cli"; 131 + in 132 + { 133 + assertions = [{ 134 + assertion = config.networking.enableIPv6; 135 + message = "networking.enableIPv6 must be true for yggdrasil to work"; 136 + }]; 127 137 128 - system.activationScripts.yggdrasil = mkIf cfg.persistentKeys '' 129 - if [ ! -e ${keysPath} ] 130 - then 131 - mkdir --mode=700 -p ${builtins.dirOf keysPath} 132 - ${binYggdrasil} -genconf -json \ 133 - | ${pkgs.jq}/bin/jq \ 134 - 'to_entries|map(select(.key|endswith("Key")))|from_entries' \ 135 - > ${keysPath} 136 - fi 137 - ''; 138 + system.activationScripts.yggdrasil = mkIf cfg.persistentKeys '' 139 + if [ ! -e ${keysPath} ] 140 + then 141 + mkdir --mode=700 -p ${builtins.dirOf keysPath} 142 + ${binYggdrasil} -genconf -json \ 143 + | ${pkgs.jq}/bin/jq \ 144 + 'to_entries|map(select(.key|endswith("Key")))|from_entries' \ 145 + > ${keysPath} 146 + fi 147 + ''; 138 148 139 - systemd.services.yggdrasil = { 140 - description = "Yggdrasil Network Service"; 141 - after = [ "network-pre.target" ]; 142 - wants = [ "network.target" ]; 143 - before = [ "network.target" ]; 144 - wantedBy = [ "multi-user.target" ]; 149 + systemd.services.yggdrasil = { 150 + description = "Yggdrasil Network Service"; 151 + after = [ "network-pre.target" ]; 152 + wants = [ "network.target" ]; 153 + before = [ "network.target" ]; 154 + wantedBy = [ "multi-user.target" ]; 145 155 146 - preStart = 147 - (if settingsProvided || configFileProvided || cfg.persistentKeys then 148 - "echo " 156 + # This script first prepares the config file, then it starts Yggdrasil. 157 + # The preparation could also be done in ExecStartPre/preStart but only 158 + # systemd versions >= v252 support reading credentials in ExecStartPre. As 159 + # of February 2023, systemd v252 is not yet in the stable branch of NixOS. 160 + # 161 + # This could be changed in the future once systemd version v252 has 162 + # reached NixOS but it does not have to be. Config file preparation is 163 + # fast enough, it does not need elevated privileges, and `set -euo 164 + # pipefail` should make sure that the service is not started if the 165 + # preparation fails. Therefore, it is not necessary to move the 166 + # preparation to ExecStartPre. 167 + script = '' 168 + set -euo pipefail 149 169 150 - + (lib.optionalString settingsProvided 151 - "'${builtins.toJSON cfg.settings}'") 152 - + (lib.optionalString configFileProvided "$(cat ${cfg.configFile})") 153 - + (lib.optionalString cfg.persistentKeys "$(cat ${keysPath})") 154 - + " | ${pkgs.jq}/bin/jq -s add | ${binYggdrasil} -normaliseconf -useconf" 155 - else 156 - "${binYggdrasil} -genconf") + " > /run/yggdrasil/yggdrasil.conf"; 170 + # prepare config file 171 + ${(if settingsProvided || configFileProvided || cfg.persistentKeys then 172 + "echo " 173 + 174 + + (lib.optionalString settingsProvided 175 + "'${builtins.toJSON cfg.settings}'") 176 + + (lib.optionalString configFileProvided 177 + "$(${binHjson} -c \"$CREDENTIALS_DIRECTORY/yggdrasil.conf\")") 178 + + (lib.optionalString cfg.persistentKeys "$(cat ${keysPath})") 179 + + " | ${pkgs.jq}/bin/jq -s add | ${binYggdrasil} -normaliseconf -useconf" 180 + else 181 + "${binYggdrasil} -genconf") + " > /run/yggdrasil/yggdrasil.conf"} 182 + 183 + # start yggdrasil 184 + ${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf 185 + ''; 157 186 158 - serviceConfig = { 159 - ExecStart = 160 - "${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf"; 161 - ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 162 - Restart = "always"; 187 + serviceConfig = { 188 + ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 189 + Restart = "always"; 163 190 164 - DynamicUser = true; 165 - StateDirectory = "yggdrasil"; 166 - RuntimeDirectory = "yggdrasil"; 167 - RuntimeDirectoryMode = "0750"; 168 - BindReadOnlyPaths = lib.optional configFileProvided cfg.configFile 169 - ++ lib.optional cfg.persistentKeys keysPath; 170 - ReadWritePaths = "/run/yggdrasil"; 191 + DynamicUser = true; 192 + StateDirectory = "yggdrasil"; 193 + RuntimeDirectory = "yggdrasil"; 194 + RuntimeDirectoryMode = "0750"; 195 + BindReadOnlyPaths = lib.optional cfg.persistentKeys keysPath; 196 + LoadCredential = 197 + mkIf configFileProvided "yggdrasil.conf:${cfg.configFile}"; 171 198 172 - AmbientCapabilities = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE"; 173 - CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE"; 174 - MemoryDenyWriteExecute = true; 175 - ProtectControlGroups = true; 176 - ProtectHome = "tmpfs"; 177 - ProtectKernelModules = true; 178 - ProtectKernelTunables = true; 179 - RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK"; 180 - RestrictNamespaces = true; 181 - RestrictRealtime = true; 182 - SystemCallArchitectures = "native"; 183 - SystemCallFilter = [ "@system-service" "~@privileged @keyring" ]; 184 - } // (if (cfg.group != null) then { 185 - Group = cfg.group; 186 - } else {}); 187 - }; 199 + AmbientCapabilities = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE"; 200 + CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE"; 201 + MemoryDenyWriteExecute = true; 202 + ProtectControlGroups = true; 203 + ProtectHome = "tmpfs"; 204 + ProtectKernelModules = true; 205 + ProtectKernelTunables = true; 206 + RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK"; 207 + RestrictNamespaces = true; 208 + RestrictRealtime = true; 209 + SystemCallArchitectures = "native"; 210 + SystemCallFilter = [ "@system-service" "~@privileged @keyring" ]; 211 + } // (if (cfg.group != null) then { 212 + Group = cfg.group; 213 + } else { }); 214 + }; 188 215 189 - networking.dhcpcd.denyInterfaces = cfg.denyDhcpcdInterfaces; 190 - networking.firewall.allowedUDPPorts = mkIf cfg.openMulticastPort [ 9001 ]; 216 + networking.dhcpcd.denyInterfaces = cfg.denyDhcpcdInterfaces; 217 + networking.firewall.allowedUDPPorts = mkIf cfg.openMulticastPort [ 9001 ]; 191 218 192 - # Make yggdrasilctl available on the command line. 193 - environment.systemPackages = [ cfg.package ]; 194 - }); 219 + # Make yggdrasilctl available on the command line. 220 + environment.systemPackages = [ cfg.package ]; 221 + } 222 + ); 195 223 meta = { 196 224 doc = ./yggdrasil.md; 197 225 maintainers = with lib.maintainers; [ gazally ehmry ];
+1 -1
nixos/modules/services/web-apps/nextcloud.md
··· 5 5 [services.nextcloud](#opt-services.nextcloud.enable). A 6 6 desktop client is packaged at `pkgs.nextcloud-client`. 7 7 8 - The current default by NixOS is `nextcloud25` which is also the latest 8 + The current default by NixOS is `nextcloud26` which is also the latest 9 9 major version available. 10 10 11 11 ## Basic usage {#module-services-nextcloud-basic-usage}
+11 -39
nixos/modules/services/web-apps/nextcloud.nix
··· 204 204 package = mkOption { 205 205 type = types.package; 206 206 description = lib.mdDoc "Which package to use for the Nextcloud instance."; 207 - relatedPackages = [ "nextcloud24" "nextcloud25" ]; 207 + relatedPackages = [ "nextcloud24" "nextcloud25" "nextcloud26" ]; 208 208 }; 209 209 phpPackage = mkOption { 210 210 type = types.package; ··· 673 673 674 674 config = mkIf cfg.enable (mkMerge [ 675 675 { warnings = let 676 - latest = 25; 676 + latest = 26; 677 677 upgradeWarning = major: nixos: 678 678 '' 679 679 A legacy Nextcloud install (from before NixOS ${nixos}) may be installed. ··· 688 688 `services.nextcloud.package`. 689 689 ''; 690 690 691 - # FIXME(@Ma27) remove as soon as nextcloud properly supports 692 - # mariadb >=10.6. 693 - isUnsupportedMariadb = 694 - # All currently supported Nextcloud versions are affected (https://github.com/nextcloud/server/issues/25436). 695 - (versionOlder cfg.package.version "24") 696 - # This module uses mysql 697 - && (cfg.config.dbtype == "mysql") 698 - # MySQL is managed via NixOS 699 - && config.services.mysql.enable 700 - # We're using MariaDB 701 - && (getName config.services.mysql.package) == "mariadb-server" 702 - # MariaDB is at least 10.6 and thus not supported 703 - && (versionAtLeast (getVersion config.services.mysql.package) "10.6"); 704 - 705 691 in (optional (cfg.poolConfig != null) '' 706 692 Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release. 707 693 Please migrate your configuration to config.services.nextcloud.poolSettings. ··· 709 695 ++ (optional (versionOlder cfg.package.version "23") (upgradeWarning 22 "22.05")) 710 696 ++ (optional (versionOlder cfg.package.version "24") (upgradeWarning 23 "22.05")) 711 697 ++ (optional (versionOlder cfg.package.version "25") (upgradeWarning 24 "22.11")) 698 + ++ (optional (versionOlder cfg.package.version "26") (upgradeWarning 25 "23.05")) 712 699 ++ (optional cfg.enableBrokenCiphersForSSE '' 713 700 You're using PHP's openssl extension built against OpenSSL 1.1 for Nextcloud. 714 701 This is only necessary if you're using Nextcloud's server-side encryption. ··· 725 712 See <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/encryption_configuration.html#disabling-encryption> on how to achieve this. 726 713 727 714 For more context, here is the implementing pull request: https://github.com/NixOS/nixpkgs/pull/198470 728 - '') 729 - ++ (optional isUnsupportedMariadb '' 730 - You seem to be using MariaDB at an unsupported version (i.e. at least 10.6)! 731 - Please note that this isn't supported officially by Nextcloud. You can either 732 - 733 - * Switch to `pkgs.mysql` 734 - * Downgrade MariaDB to at least 10.5 735 - * Work around Nextcloud's problems by specifying `innodb_read_only_compressed=0` 736 - 737 - For further context, please read 738 - https://help.nextcloud.com/t/update-to-next-cloud-21-0-2-has-get-an-error/117028/15 739 - ''); 715 + ''); 740 716 741 717 services.nextcloud.package = with pkgs; 742 718 mkDefault ( ··· 747 723 `pkgs.nextcloud`. 748 724 '' 749 725 else if versionOlder stateVersion "22.11" then nextcloud24 750 - else nextcloud25 726 + else if versionOlder stateVersion "23.05" then nextcloud25 727 + else nextcloud26 751 728 ); 752 729 753 730 services.nextcloud.phpPackage = 754 - if versionOlder cfg.package.version "24" then pkgs.php80 755 - else pkgs.php81; 731 + if versionOlder cfg.package.version "26" then pkgs.php81 732 + else pkgs.php82; 756 733 } 757 734 758 735 { assertions = [ ··· 980 957 ''; 981 958 serviceConfig.Type = "oneshot"; 982 959 serviceConfig.User = "nextcloud"; 960 + # On Nextcloud ≥ 26, it is not necessary to patch the database files to prevent 961 + # an automatic creation of the database user. 962 + environment.NC_setup_create_db_user = lib.mkIf (nextcloudGreaterOrEqualThan "26") "false"; 983 963 }; 984 964 nextcloud-cron = { 985 965 after = [ "nextcloud-setup.service" ]; ··· 1031 1011 name = cfg.config.dbuser; 1032 1012 ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; }; 1033 1013 }]; 1034 - # FIXME(@Ma27) Nextcloud isn't compatible with mariadb 10.6, 1035 - # this is a workaround. 1036 - # See https://help.nextcloud.com/t/update-to-next-cloud-21-0-2-has-get-an-error/117028/22 1037 - settings = mkIf (versionOlder cfg.package.version "24") { 1038 - mysqld = { 1039 - innodb_read_only_compressed = 0; 1040 - }; 1041 - }; 1042 1014 initialScript = pkgs.writeText "mysql-init" '' 1043 1015 CREATE USER '${cfg.config.dbname}'@'localhost' IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}'; 1044 1016 CREATE DATABASE IF NOT EXISTS ${cfg.config.dbname};
+1094
nixos/modules/system/boot/networkd.nix
··· 303 303 304 304 sectionTap = checkUnitConfig "Tap" tunChecks; 305 305 306 + sectionL2TP = checkUnitConfig "L2TP" [ 307 + (assertOnlyFields [ 308 + "TunnelId" 309 + "PeerTunnelId" 310 + "Remote" 311 + "Local" 312 + "EncapsulationType" 313 + "UDPSourcePort" 314 + "UDPDestinationPort" 315 + "UDPChecksum" 316 + "UDP6ZeroChecksumTx" 317 + "UDP6ZeroChecksumRx" 318 + ]) 319 + (assertInt "TunnelId") 320 + (assertRange "TunnelId" 1 4294967295) 321 + (assertInt "PeerTunnelId") 322 + (assertRange "PeerTunnelId" 1 4294967295) 323 + (assertValueOneOf "EncapsulationType" [ "ip" "udp" ]) 324 + (assertPort "UDPSourcePort") 325 + (assertPort "UDPDestinationPort") 326 + (assertValueOneOf "UDPChecksum" boolValues) 327 + (assertValueOneOf "UDP6ZeroChecksumTx" boolValues) 328 + (assertValueOneOf "UDP6ZeroChecksumRx" boolValues) 329 + ]; 330 + 331 + sectionL2TPSession = checkUnitConfig "L2TPSession" [ 332 + (assertOnlyFields [ 333 + "Name" 334 + "SessionId" 335 + "PeerSessionId" 336 + "Layer2SpecificHeader" 337 + ]) 338 + (assertHasField "Name") 339 + (assertHasField "SessionId") 340 + (assertInt "SessionId") 341 + (assertRange "SessionId" 1 4294967295) 342 + (assertHasField "PeerSessionId") 343 + (assertInt "PeerSessionId") 344 + (assertRange "PeerSessionId" 1 4294967295) 345 + (assertValueOneOf "Layer2SpecificHeader" [ "none" "default" ]) 346 + ]; 347 + 306 348 # NOTE The PrivateKey directive is missing on purpose here, please 307 349 # do not add it to this list. The nix store is world-readable let's 308 350 # refrain ourselves from providing a footgun. ··· 918 960 (assertMacAddress "MACAddress") 919 961 ]; 920 962 963 + sectionBridge = checkUnitConfig "Bridge" [ 964 + (assertOnlyFields [ 965 + "UnicastFlood" 966 + "MulticastFlood" 967 + "MulticastToUnicast" 968 + "NeighborSuppression" 969 + "Learning" 970 + "Hairpin" 971 + "Isolated" 972 + "UseBPDU" 973 + "FastLeave" 974 + "AllowPortToBeRoot" 975 + "ProxyARP" 976 + "ProxyARPWiFi" 977 + "MulticastRouter" 978 + "Cost" 979 + "Priority" 980 + ]) 981 + (assertValueOneOf "UnicastFlood" boolValues) 982 + (assertValueOneOf "MulticastFlood" boolValues) 983 + (assertValueOneOf "MulticastToUnicast" boolValues) 984 + (assertValueOneOf "NeighborSuppression" boolValues) 985 + (assertValueOneOf "Learning" boolValues) 986 + (assertValueOneOf "Hairpin" boolValues) 987 + (assertValueOneOf "Isolated" boolValues) 988 + (assertValueOneOf "UseBPDU" boolValues) 989 + (assertValueOneOf "FastLeave" boolValues) 990 + (assertValueOneOf "AllowPortToBeRoot" boolValues) 991 + (assertValueOneOf "ProxyARP" boolValues) 992 + (assertValueOneOf "ProxyARPWiFi" boolValues) 993 + (assertValueOneOf "MulticastRouter" [ "no" "query" "permanent" "temporary" ]) 994 + (assertInt "Cost") 995 + (assertRange "Cost" 1 65535) 996 + (assertInt "Priority") 997 + (assertRange "Priority" 0 63) 998 + ]; 999 + 1000 + sectionBridgeFDB = checkUnitConfig "BridgeFDB" [ 1001 + (assertOnlyFields [ 1002 + "MACAddress" 1003 + "Destination" 1004 + "VLANId" 1005 + "VNI" 1006 + "AssociatedWith" 1007 + "OutgoingInterface" 1008 + ]) 1009 + (assertHasField "MACAddress") 1010 + (assertInt "VLANId") 1011 + (assertRange "VLANId" 0 4094) 1012 + (assertInt "VNI") 1013 + (assertRange "VNI" 1 16777215) 1014 + (assertValueOneOf "AssociatedWith" [ "use" "self" "master" "router" ]) 1015 + ]; 1016 + 1017 + sectionBridgeMDB = checkUnitConfig "BridgeMDB" [ 1018 + (assertOnlyFields [ 1019 + "MulticastGroupAddress" 1020 + "VLANId" 1021 + ]) 1022 + (assertHasField "MulticastGroupAddress") 1023 + (assertInt "VLANId") 1024 + (assertRange "VLANId" 0 4094) 1025 + ]; 1026 + 1027 + sectionLLDP = checkUnitConfig "LLDP" [ 1028 + (assertOnlyFields [ 1029 + "MUDURL" 1030 + ]) 1031 + ]; 1032 + 1033 + sectionCAN = checkUnitConfig "CAN" [ 1034 + (assertOnlyFields [ 1035 + "BitRate" 1036 + "SamplePoint" 1037 + "TimeQuantaNSec" 1038 + "PropagationSegment" 1039 + "PhaseBufferSegment1" 1040 + "PhaseBufferSegment2" 1041 + "SyncJumpWidth" 1042 + "DataBitRate" 1043 + "DataSamplePoint" 1044 + "DataTimeQuantaNSec" 1045 + "DataPropagationSegment" 1046 + "DataPhaseBufferSegment1" 1047 + "DataPhaseBufferSegment2" 1048 + "DataSyncJumpWidth" 1049 + "FDMode" 1050 + "FDNonISO" 1051 + "RestartSec" 1052 + "Termination" 1053 + "TripleSampling" 1054 + "BusErrorReporting" 1055 + "ListenOnly" 1056 + "Loopback" 1057 + "OneShot" 1058 + "PresumeAck" 1059 + "ClassicDataLengthCode" 1060 + ]) 1061 + (assertInt "TimeQuantaNSec" ) 1062 + (assertRange "TimeQuantaNSec" 0 4294967295 ) 1063 + (assertInt "PropagationSegment" ) 1064 + (assertRange "PropagationSegment" 0 4294967295 ) 1065 + (assertInt "PhaseBufferSegment1" ) 1066 + (assertRange "PhaseBufferSegment1" 0 4294967295 ) 1067 + (assertInt "PhaseBufferSegment2" ) 1068 + (assertRange "PhaseBufferSegment2" 0 4294967295 ) 1069 + (assertInt "SyncJumpWidth" ) 1070 + (assertRange "SyncJumpWidth" 0 4294967295 ) 1071 + (assertInt "DataTimeQuantaNSec" ) 1072 + (assertRange "DataTimeQuantaNSec" 0 4294967295 ) 1073 + (assertInt "DataPropagationSegment" ) 1074 + (assertRange "DataPropagationSegment" 0 4294967295 ) 1075 + (assertInt "DataPhaseBufferSegment1" ) 1076 + (assertRange "DataPhaseBufferSegment1" 0 4294967295 ) 1077 + (assertInt "DataPhaseBufferSegment2" ) 1078 + (assertRange "DataPhaseBufferSegment2" 0 4294967295 ) 1079 + (assertInt "DataSyncJumpWidth" ) 1080 + (assertRange "DataSyncJumpWidth" 0 4294967295 ) 1081 + (assertValueOneOf "FDMode" boolValues) 1082 + (assertValueOneOf "FDNonISO" boolValues) 1083 + (assertValueOneOf "TripleSampling" boolValues) 1084 + (assertValueOneOf "BusErrorReporting" boolValues) 1085 + (assertValueOneOf "ListenOnly" boolValues) 1086 + (assertValueOneOf "Loopback" boolValues) 1087 + (assertValueOneOf "OneShot" boolValues) 1088 + (assertValueOneOf "PresumeAck" boolValues) 1089 + (assertValueOneOf "ClassicDataLengthCode" boolValues) 1090 + ]; 1091 + 1092 + sectionIPoIB = checkUnitConfig "IPoIB" [ 1093 + (assertOnlyFields [ 1094 + "Mode" 1095 + "IgnoreUserspaceMulticastGroup" 1096 + ]) 1097 + (assertValueOneOf "Mode" [ "datagram" "connected" ]) 1098 + (assertValueOneOf "IgnoreUserspaceMulticastGroup" boolValues) 1099 + ]; 1100 + 1101 + sectionQDisc = checkUnitConfig "QDisc" [ 1102 + (assertOnlyFields [ 1103 + "Parent" 1104 + "Handle" 1105 + ]) 1106 + (assertValueOneOf "Parent" [ "clsact" "ingress" ]) 1107 + ]; 1108 + 1109 + sectionNetworkEmulator = checkUnitConfig "NetworkEmulator" [ 1110 + (assertOnlyFields [ 1111 + "Parent" 1112 + "Handle" 1113 + "DelaySec" 1114 + "DelayJitterSec" 1115 + "PacketLimit" 1116 + "LossRate" 1117 + "DuplicateRate" 1118 + ]) 1119 + (assertInt "PacketLimit") 1120 + (assertRange "PacketLimit" 0 4294967294) 1121 + ]; 1122 + 1123 + sectionTokenBucketFilter = checkUnitConfig "TokenBucketFilter" [ 1124 + (assertOnlyFields [ 1125 + "Parent" 1126 + "Handle" 1127 + "LatencySec" 1128 + "LimitBytes" 1129 + "BurstBytes" 1130 + "Rate" 1131 + "MPUBytes" 1132 + "PeakRate" 1133 + "MTUBytes" 1134 + ]) 1135 + ]; 1136 + 1137 + sectionPIE = checkUnitConfig "PIE" [ 1138 + (assertOnlyFields [ 1139 + "Parent" 1140 + "Handle" 1141 + "PacketLimit" 1142 + ]) 1143 + (assertInt "PacketLimit") 1144 + (assertRange "PacketLimit" 1 4294967294) 1145 + ]; 1146 + 1147 + sectionFlowQueuePIE = checkUnitConfig "FlowQueuePIE" [ 1148 + (assertOnlyFields [ 1149 + "Parent" 1150 + "Handle" 1151 + "PacketLimit" 1152 + ]) 1153 + (assertInt "PacketLimit") 1154 + (assertRange "PacketLimit" 1 4294967294) 1155 + ]; 1156 + 1157 + sectionStochasticFairBlue = checkUnitConfig "StochasticFairBlue" [ 1158 + (assertOnlyFields [ 1159 + "Parent" 1160 + "Handle" 1161 + "PacketLimit" 1162 + ]) 1163 + (assertInt "PacketLimit") 1164 + (assertRange "PacketLimit" 1 4294967294) 1165 + ]; 1166 + 1167 + sectionStochasticFairnessQueueing = checkUnitConfig "StochasticFairnessQueueing" [ 1168 + (assertOnlyFields [ 1169 + "Parent" 1170 + "Handle" 1171 + "PerturbPeriodSec" 1172 + ]) 1173 + (assertInt "PerturbPeriodSec") 1174 + ]; 1175 + 1176 + sectionBFIFO = checkUnitConfig "BFIFO" [ 1177 + (assertOnlyFields [ 1178 + "Parent" 1179 + "Handle" 1180 + "LimitBytes" 1181 + ]) 1182 + ]; 1183 + 1184 + sectionPFIFO = checkUnitConfig "PFIFO" [ 1185 + (assertOnlyFields [ 1186 + "Parent" 1187 + "Handle" 1188 + "PacketLimit" 1189 + ]) 1190 + (assertInt "PacketLimit") 1191 + (assertRange "PacketLimit" 0 4294967294) 1192 + ]; 1193 + 1194 + sectionPFIFOHeadDrop = checkUnitConfig "PFIFOHeadDrop" [ 1195 + (assertOnlyFields [ 1196 + "Parent" 1197 + "Handle" 1198 + "PacketLimit" 1199 + ]) 1200 + (assertInt "PacketLimit") 1201 + (assertRange "PacketLimit" 0 4294967294) 1202 + ]; 1203 + 1204 + sectionPFIFOFast = checkUnitConfig "PFIFOFast" [ 1205 + (assertOnlyFields [ 1206 + "Parent" 1207 + "Handle" 1208 + ]) 1209 + ]; 1210 + 1211 + sectionCAKE = checkUnitConfig "CAKE" [ 1212 + (assertOnlyFields [ 1213 + "Parent" 1214 + "Handle" 1215 + "Bandwidth" 1216 + "AutoRateIngress" 1217 + "OverheadBytes" 1218 + "MPUBytes" 1219 + "CompensationMode" 1220 + "UseRawPacketSize" 1221 + "FlowIsolationMode" 1222 + "NAT" 1223 + "PriorityQueueingPreset" 1224 + "FirewallMark" 1225 + "Wash" 1226 + "SplitGSO" 1227 + ]) 1228 + (assertValueOneOf "AutoRateIngress" boolValues) 1229 + (assertInt "OverheadBytes") 1230 + (assertRange "OverheadBytes" (-64) 256) 1231 + (assertInt "MPUBytes") 1232 + (assertRange "MPUBytes" 1 256) 1233 + (assertValueOneOf "CompensationMode" [ "none" "atm" "ptm" ]) 1234 + (assertValueOneOf "UseRawPacketSize" boolValues) 1235 + (assertValueOneOf "FlowIsolationMode" 1236 + [ 1237 + "none" 1238 + "src-host" 1239 + "dst-host" 1240 + "hosts" 1241 + "flows" 1242 + "dual-src-host" 1243 + "dual-dst-host" 1244 + "triple" 1245 + ]) 1246 + (assertValueOneOf "NAT" boolValues) 1247 + (assertValueOneOf "PriorityQueueingPreset" 1248 + [ 1249 + "besteffort" 1250 + "precedence" 1251 + "diffserv8" 1252 + "diffserv4" 1253 + "diffserv3" 1254 + ]) 1255 + (assertInt "FirewallMark") 1256 + (assertRange "FirewallMark" 1 4294967295) 1257 + (assertValueOneOf "Wash" boolValues) 1258 + (assertValueOneOf "SplitGSO" boolValues) 1259 + ]; 1260 + 1261 + sectionControlledDelay = checkUnitConfig "ControlledDelay" [ 1262 + (assertOnlyFields [ 1263 + "Parent" 1264 + "Handle" 1265 + "PacketLimit" 1266 + "TargetSec" 1267 + "IntervalSec" 1268 + "ECN" 1269 + "CEThresholdSec" 1270 + ]) 1271 + (assertValueOneOf "ECN" boolValues) 1272 + ]; 1273 + 1274 + sectionDeficitRoundRobinScheduler = checkUnitConfig "DeficitRoundRobinScheduler" [ 1275 + (assertOnlyFields [ 1276 + "Parent" 1277 + "Handle" 1278 + ]) 1279 + ]; 1280 + 1281 + sectionDeficitRoundRobinSchedulerClass = checkUnitConfig "DeficitRoundRobinSchedulerClass" [ 1282 + (assertOnlyFields [ 1283 + "Parent" 1284 + "Handle" 1285 + "QuantumBytes" 1286 + ]) 1287 + ]; 1288 + 1289 + sectionEnhancedTransmissionSelection = checkUnitConfig "EnhancedTransmissionSelection" [ 1290 + (assertOnlyFields [ 1291 + "Parent" 1292 + "Handle" 1293 + "Bands" 1294 + "StrictBands" 1295 + "QuantumBytes" 1296 + "PriorityMap" 1297 + ]) 1298 + (assertInt "Bands") 1299 + (assertRange "Bands" 1 16) 1300 + (assertInt "StrictBands") 1301 + (assertRange "StrictBands" 1 16) 1302 + ]; 1303 + 1304 + sectionGenericRandomEarlyDetection = checkUnitConfig "GenericRandomEarlyDetection" [ 1305 + (assertOnlyFields [ 1306 + "Parent" 1307 + "Handle" 1308 + "VirtualQueues" 1309 + "DefaultVirtualQueue" 1310 + "GenericRIO" 1311 + ]) 1312 + (assertInt "VirtualQueues") 1313 + (assertRange "VirtualQueues" 1 16) 1314 + (assertInt "DefaultVirtualQueue") 1315 + (assertRange "DefaultVirtualQueue" 1 16) 1316 + (assertValueOneOf "GenericRIO" boolValues) 1317 + ]; 1318 + 1319 + sectionFairQueueingControlledDelay = checkUnitConfig "FairQueueingControlledDelay" [ 1320 + (assertOnlyFields [ 1321 + "Parent" 1322 + "Handle" 1323 + "PacketLimit" 1324 + "MemoryLimitBytes" 1325 + "Flows" 1326 + "TargetSec" 1327 + "IntervalSec" 1328 + "QuantumBytes" 1329 + "ECN" 1330 + "CEThresholdSec" 1331 + ]) 1332 + (assertInt "PacketLimit") 1333 + (assertInt "Flows") 1334 + (assertValueOneOf "ECN" boolValues) 1335 + ]; 1336 + 1337 + sectionFairQueueing = checkUnitConfig "FairQueueing" [ 1338 + (assertOnlyFields [ 1339 + "Parent" 1340 + "Handle" 1341 + "PacketLimit" 1342 + "FlowLimit" 1343 + "QuantumBytes" 1344 + "InitualQuantumBytes" 1345 + "MaximumRate" 1346 + "Buckets" 1347 + "OrphanMask" 1348 + "Pacing" 1349 + "CEThresholdSec" 1350 + ]) 1351 + (assertInt "PacketLimit") 1352 + (assertInt "FlowLimit") 1353 + (assertInt "OrphanMask") 1354 + (assertValueOneOf "Pacing" boolValues) 1355 + ]; 1356 + 1357 + sectionTrivialLinkEqualizer = checkUnitConfig "TrivialLinkEqualizer" [ 1358 + (assertOnlyFields [ 1359 + "Parent" 1360 + "Handle" 1361 + "Id" 1362 + ]) 1363 + ]; 1364 + 1365 + sectionHierarchyTokenBucket = checkUnitConfig "HierarchyTokenBucket" [ 1366 + (assertOnlyFields [ 1367 + "Parent" 1368 + "Handle" 1369 + "DefaultClass" 1370 + "RateToQuantum" 1371 + ]) 1372 + (assertInt "RateToQuantum") 1373 + ]; 1374 + 1375 + sectionHierarchyTokenBucketClass = checkUnitConfig "HierarchyTokenBucketClass" [ 1376 + (assertOnlyFields [ 1377 + "Parent" 1378 + "ClassId" 1379 + "Priority" 1380 + "QuantumBytes" 1381 + "MTUBytes" 1382 + "OverheadBytes" 1383 + "Rate" 1384 + "CeilRate" 1385 + "BufferBytes" 1386 + "CeilBufferBytes" 1387 + ]) 1388 + ]; 1389 + 1390 + sectionHeavyHitterFilter = checkUnitConfig "HeavyHitterFilter" [ 1391 + (assertOnlyFields [ 1392 + "Parent" 1393 + "Handle" 1394 + "PacketLimit" 1395 + ]) 1396 + (assertInt "PacketLimit") 1397 + (assertRange "PacketLimit" 0 4294967294) 1398 + ]; 1399 + 1400 + sectionQuickFairQueueing = checkUnitConfig "QuickFairQueueing" [ 1401 + (assertOnlyFields [ 1402 + "Parent" 1403 + "Handle" 1404 + ]) 1405 + ]; 1406 + 1407 + sectionQuickFairQueueingClass = checkUnitConfig "QuickFairQueueingClass" [ 1408 + (assertOnlyFields [ 1409 + "Parent" 1410 + "ClassId" 1411 + "Weight" 1412 + "MaxPacketBytes" 1413 + ]) 1414 + (assertInt "Weight") 1415 + (assertRange "Weight" 1 1023) 1416 + ]; 1417 + 1418 + sectionBridgeVLAN = checkUnitConfig "BridgeVLAN" [ 1419 + (assertOnlyFields [ 1420 + "VLAN" 1421 + "EgressUntagged" 1422 + "PVID" 1423 + ]) 1424 + (assertInt "PVID") 1425 + (assertRange "PVID" 0 4094) 1426 + ]; 921 1427 }; 922 1428 }; 923 1429 ··· 1012 1518 1013 1519 }; 1014 1520 1521 + 1522 + l2tpSessionOptions = { 1523 + options = { 1524 + l2tpSessionConfig = mkOption { 1525 + default = {}; 1526 + type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionL2TPSession; 1527 + description = lib.mdDoc '' 1528 + Each attribute in this set specifies an option in the 1529 + `[L2TPSession]` section of the unit. See 1530 + {manpage}`systemd.netdev(5)` for details. 1531 + ''; 1532 + }; 1533 + }; 1534 + }; 1535 + 1015 1536 wireguardPeerOptions = { 1016 1537 options = { 1017 1538 wireguardPeerConfig = mkOption { ··· 1125 1646 ''; 1126 1647 }; 1127 1648 1649 + l2tpConfig = mkOption { 1650 + default = {}; 1651 + example = { 1652 + TunnelId = 10; 1653 + PeerTunnelId = 12; 1654 + Local = "static"; 1655 + Remote = "192.168.30.101"; 1656 + EncapsulationType = "ip"; 1657 + }; 1658 + type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionL2TP; 1659 + description = lib.mdDoc '' 1660 + Each attribute in this set specifies an option in the 1661 + `[L2TP]` section of the unit. See 1662 + {manpage}`systemd.netdev(5)` for details. 1663 + ''; 1664 + }; 1665 + 1666 + l2tpSessions = mkOption { 1667 + default = []; 1668 + example = [ { l2tpSessionConfig={ 1669 + SessionId = 25; 1670 + PeerSessionId = 26; 1671 + Name = "l2tp-sess"; 1672 + };}]; 1673 + type = with types; listOf (submodule l2tpSessionOptions); 1674 + description = lib.mdDoc '' 1675 + Each item in this array specifies an option in the 1676 + `[L2TPSession]` section of the unit. See 1677 + {manpage}`systemd.netdev(5)` for details. 1678 + ''; 1679 + }; 1680 + 1128 1681 wireguardConfig = mkOption { 1129 1682 default = {}; 1130 1683 example = { ··· 1306 1859 }; 1307 1860 }; 1308 1861 1862 + bridgeFDBOptions = { 1863 + options = { 1864 + bridgeFDBConfig = mkOption { 1865 + default = {}; 1866 + example = { MACAddress = "65:43:4a:5b:d8:5f"; Destination = "192.168.1.42"; VNI = 20; }; 1867 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridgeFDB; 1868 + description = lib.mdDoc '' 1869 + Each attribute in this set specifies an option in the 1870 + `[BridgeFDB]` section of the unit. See 1871 + {manpage}`systemd.network(5)` for details. 1872 + ''; 1873 + }; 1874 + }; 1875 + }; 1876 + 1877 + bridgeMDBOptions = { 1878 + options = { 1879 + bridgeMDBConfig = mkOption { 1880 + default = {}; 1881 + example = { MulticastGroupAddress = "ff02::1:2:3:4"; VLANId = 10; }; 1882 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridgeMDB; 1883 + description = lib.mdDoc '' 1884 + Each attribute in this set specifies an option in the 1885 + `[BridgeMDB]` section of the unit. See 1886 + {manpage}`systemd.network(5)` for details. 1887 + ''; 1888 + }; 1889 + }; 1890 + }; 1891 + 1892 + bridgeVLANOptions = { 1893 + options = { 1894 + bridgeMDBConfig = mkOption { 1895 + default = {}; 1896 + example = { VLAN = 20; }; 1897 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridgeVLAN; 1898 + description = lib.mdDoc '' 1899 + Each attribute in this set specifies an option in the 1900 + `[BridgeVLAN]` section of the unit. See 1901 + {manpage}`systemd.network(5)` for details. 1902 + ''; 1903 + }; 1904 + }; 1905 + }; 1906 + 1309 1907 networkOptions = commonNetworkOptions // { 1310 1908 1311 1909 linkConfig = mkOption { ··· 1445 2043 ''; 1446 2044 }; 1447 2045 2046 + bridgeConfig = mkOption { 2047 + default = {}; 2048 + example = { MulticastFlood = false; Cost = 20; }; 2049 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridge; 2050 + description = lib.mdDoc '' 2051 + Each attribute in this set specifies an option in the 2052 + `[Bridge]` section of the unit. See 2053 + {manpage}`systemd.network(5)` for details. 2054 + ''; 2055 + }; 2056 + 2057 + bridgeFDBs = mkOption { 2058 + default = []; 2059 + example = [ { bridgeFDBConfig = { MACAddress = "90:e2:ba:43:fc:71"; Destination = "192.168.100.4"; VNI = 3600; }; } ]; 2060 + type = with types; listOf (submodule bridgeFDBOptions); 2061 + description = lib.mdDoc '' 2062 + A list of BridgeFDB sections to be added to the unit. See 2063 + {manpage}`systemd.network(5)` for details. 2064 + ''; 2065 + }; 2066 + 2067 + bridgeMDBs = mkOption { 2068 + default = []; 2069 + example = [ { bridgeMDBConfig = { MulticastGroupAddress = "ff02::1:2:3:4"; VLANId = 10; } ; } ]; 2070 + type = with types; listOf (submodule bridgeMDBOptions); 2071 + description = lib.mdDoc '' 2072 + A list of BridgeMDB sections to be added to the unit. See 2073 + {manpage}`systemd.network(5)` for details. 2074 + ''; 2075 + }; 2076 + 2077 + lldpConfig = mkOption { 2078 + default = {}; 2079 + example = { MUDURL = "https://things.example.org/product_abc123/v5"; }; 2080 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionLLDP; 2081 + description = lib.mdDoc '' 2082 + Each attribute in this set specifies an option in the 2083 + `[LLDP]` section of the unit. See 2084 + {manpage}`systemd.network(5)` for details. 2085 + ''; 2086 + }; 2087 + 2088 + canConfig = mkOption { 2089 + default = {}; 2090 + example = { }; 2091 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionCAN; 2092 + description = lib.mdDoc '' 2093 + Each attribute in this set specifies an option in the 2094 + `[CAN]` section of the unit. See 2095 + {manpage}`systemd.network(5)` for details. 2096 + ''; 2097 + }; 2098 + 2099 + ipoIBConfig = mkOption { 2100 + default = {}; 2101 + example = { }; 2102 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionIPoIB; 2103 + description = lib.mdDoc '' 2104 + Each attribute in this set specifies an option in the 2105 + `[IPoIB]` section of the unit. See 2106 + {manpage}`systemd.network(5)` for details. 2107 + ''; 2108 + }; 2109 + 2110 + qdiscConfig = mkOption { 2111 + default = {}; 2112 + example = { Parent = "ingress"; }; 2113 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionQDisc; 2114 + description = lib.mdDoc '' 2115 + Each attribute in this set specifies an option in the 2116 + `[QDisc]` section of the unit. See 2117 + {manpage}`systemd.network(5)` for details. 2118 + ''; 2119 + }; 2120 + 2121 + networkEmulatorConfig = mkOption { 2122 + default = {}; 2123 + example = { Parent = "ingress"; DelaySec = "20msec"; }; 2124 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionNetworkEmulator; 2125 + description = lib.mdDoc '' 2126 + Each attribute in this set specifies an option in the 2127 + `[NetworkEmulator]` section of the unit. See 2128 + {manpage}`systemd.network(5)` for details. 2129 + ''; 2130 + }; 2131 + 2132 + tokenBucketFilterConfig = mkOption { 2133 + default = {}; 2134 + example = { Parent = "ingress"; Rate = "100k"; }; 2135 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionTokenBucketFilter; 2136 + description = lib.mdDoc '' 2137 + Each attribute in this set specifies an option in the 2138 + `[TokenBucketFilter]` section of the unit. See 2139 + {manpage}`systemd.network(5)` for details. 2140 + ''; 2141 + }; 2142 + 2143 + pieConfig = mkOption { 2144 + default = {}; 2145 + example = { Parent = "ingress"; PacketLimit = "3847"; }; 2146 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionPIE; 2147 + description = lib.mdDoc '' 2148 + Each attribute in this set specifies an option in the 2149 + `[PIE]` section of the unit. See 2150 + {manpage}`systemd.network(5)` for details. 2151 + ''; 2152 + }; 2153 + 2154 + flowQueuePIEConfig = mkOption { 2155 + default = {}; 2156 + example = { Parent = "ingress"; PacketLimit = "3847"; }; 2157 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionFlowQueuePIE; 2158 + description = lib.mdDoc '' 2159 + Each attribute in this set specifies an option in the 2160 + `[FlowQueuePIE]` section of the unit. See 2161 + {manpage}`systemd.network(5)` for details. 2162 + ''; 2163 + }; 2164 + 2165 + stochasticFairBlueConfig = mkOption { 2166 + default = {}; 2167 + example = { Parent = "ingress"; PacketLimit = "3847"; }; 2168 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionStochasticFairBlue; 2169 + description = lib.mdDoc '' 2170 + Each attribute in this set specifies an option in the 2171 + `[StochasticFairBlue]` section of the unit. See 2172 + {manpage}`systemd.network(5)` for details. 2173 + ''; 2174 + }; 2175 + 2176 + stochasticFairnessQueueingConfig = mkOption { 2177 + default = {}; 2178 + example = { Parent = "ingress"; PerturbPeriodSec = "30"; }; 2179 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionStochasticFairnessQueueing; 2180 + description = lib.mdDoc '' 2181 + Each attribute in this set specifies an option in the 2182 + `[StochasticFairnessQueueing]` section of the unit. See 2183 + {manpage}`systemd.network(5)` for details. 2184 + ''; 2185 + }; 2186 + 2187 + bfifoConfig = mkOption { 2188 + default = {}; 2189 + example = { Parent = "ingress"; LimitBytes = "20K"; }; 2190 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionBFIFO; 2191 + description = lib.mdDoc '' 2192 + Each attribute in this set specifies an option in the 2193 + `[BFIFO]` section of the unit. See 2194 + {manpage}`systemd.network(5)` for details. 2195 + ''; 2196 + }; 2197 + 2198 + pfifoConfig = mkOption { 2199 + default = {}; 2200 + example = { Parent = "ingress"; PacketLimit = "300"; }; 2201 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionPFIFO; 2202 + description = lib.mdDoc '' 2203 + Each attribute in this set specifies an option in the 2204 + `[PFIFO]` section of the unit. See 2205 + {manpage}`systemd.network(5)` for details. 2206 + ''; 2207 + }; 2208 + 2209 + pfifoHeadDropConfig = mkOption { 2210 + default = {}; 2211 + example = { Parent = "ingress"; PacketLimit = "300"; }; 2212 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionPFIFOHeadDrop; 2213 + description = lib.mdDoc '' 2214 + Each attribute in this set specifies an option in the 2215 + `[PFIFOHeadDrop]` section of the unit. See 2216 + {manpage}`systemd.network(5)` for details. 2217 + ''; 2218 + }; 2219 + 2220 + pfifoFastConfig = mkOption { 2221 + default = {}; 2222 + example = { Parent = "ingress"; }; 2223 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionPFIFOFast; 2224 + description = lib.mdDoc '' 2225 + Each attribute in this set specifies an option in the 2226 + `[PFIFOFast]` section of the unit. See 2227 + {manpage}`systemd.network(5)` for details. 2228 + ''; 2229 + }; 2230 + 2231 + cakeConfig = mkOption { 2232 + default = {}; 2233 + example = { Bandwidth = "40M"; OverheadBytes = 8; CompensationMode = "ptm"; }; 2234 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionCAKE; 2235 + description = lib.mdDoc '' 2236 + Each attribute in this set specifies an option in the 2237 + `[CAKE]` section of the unit. See 2238 + {manpage}`systemd.network(5)` for details. 2239 + ''; 2240 + }; 2241 + 2242 + controlledDelayConfig = mkOption { 2243 + default = {}; 2244 + example = { Parent = "ingress"; TargetSec = "20msec"; }; 2245 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionControlledDelay; 2246 + description = lib.mdDoc '' 2247 + Each attribute in this set specifies an option in the 2248 + `[ControlledDelay]` section of the unit. See 2249 + {manpage}`systemd.network(5)` for details. 2250 + ''; 2251 + }; 2252 + 2253 + deficitRoundRobinSchedulerConfig = mkOption { 2254 + default = {}; 2255 + example = { Parent = "root"; }; 2256 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionDeficitRoundRobinScheduler; 2257 + description = lib.mdDoc '' 2258 + Each attribute in this set specifies an option in the 2259 + `[DeficitRoundRobinScheduler]` section of the unit. See 2260 + {manpage}`systemd.network(5)` for details. 2261 + ''; 2262 + }; 2263 + 2264 + deficitRoundRobinSchedulerClassConfig = mkOption { 2265 + default = {}; 2266 + example = { Parent = "root"; QuantumBytes = "300k"; }; 2267 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionDeficitRoundRobinSchedulerClass; 2268 + description = lib.mdDoc '' 2269 + Each attribute in this set specifies an option in the 2270 + `[DeficitRoundRobinSchedulerClass]` section of the unit. See 2271 + {manpage}`systemd.network(5)` for details. 2272 + ''; 2273 + }; 2274 + 2275 + enhancedTransmissionSelectionConfig = mkOption { 2276 + default = {}; 2277 + example = { Parent = "root"; QuantumBytes = "300k"; Bands = 3; PriorityMap = "100 200 300"; }; 2278 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionEnhancedTransmissionSelection; 2279 + description = lib.mdDoc '' 2280 + Each attribute in this set specifies an option in the 2281 + `[EnhancedTransmissionSelection]` section of the unit. See 2282 + {manpage}`systemd.network(5)` for details. 2283 + ''; 2284 + }; 2285 + 2286 + genericRandomEarlyDetectionConfig = mkOption { 2287 + default = {}; 2288 + example = { Parent = "root"; VirtualQueues = 5; DefaultVirtualQueue = 3; }; 2289 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionGenericRandomEarlyDetection; 2290 + description = lib.mdDoc '' 2291 + Each attribute in this set specifies an option in the 2292 + `[GenericRandomEarlyDetection]` section of the unit. See 2293 + {manpage}`systemd.network(5)` for details. 2294 + ''; 2295 + }; 2296 + 2297 + fairQueueingControlledDelayConfig = mkOption { 2298 + default = {}; 2299 + example = { Parent = "root"; Flows = 5; }; 2300 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionFairQueueingControlledDelay; 2301 + description = lib.mdDoc '' 2302 + Each attribute in this set specifies an option in the 2303 + `[FairQueueingControlledDelay]` section of the unit. See 2304 + {manpage}`systemd.network(5)` for details. 2305 + ''; 2306 + }; 2307 + 2308 + fairQueueingConfig = mkOption { 2309 + default = {}; 2310 + example = { Parent = "root"; FlowLimit = 5; }; 2311 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionFairQueueing; 2312 + description = lib.mdDoc '' 2313 + Each attribute in this set specifies an option in the 2314 + `[FairQueueing]` section of the unit. See 2315 + {manpage}`systemd.network(5)` for details. 2316 + ''; 2317 + }; 2318 + 2319 + trivialLinkEqualizerConfig = mkOption { 2320 + default = {}; 2321 + example = { Parent = "root"; Id = 0; }; 2322 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionTrivialLinkEqualizer; 2323 + description = lib.mdDoc '' 2324 + Each attribute in this set specifies an option in the 2325 + `[TrivialLinkEqualizer]` section of the unit. See 2326 + {manpage}`systemd.network(5)` for details. 2327 + ''; 2328 + }; 2329 + 2330 + hierarchyTokenBucketConfig = mkOption { 2331 + default = {}; 2332 + example = { Parent = "root"; }; 2333 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionHierarchyTokenBucket; 2334 + description = lib.mdDoc '' 2335 + Each attribute in this set specifies an option in the 2336 + `[HierarchyTokenBucket]` section of the unit. See 2337 + {manpage}`systemd.network(5)` for details. 2338 + ''; 2339 + }; 2340 + 2341 + hierarchyTokenBucketClassConfig = mkOption { 2342 + default = {}; 2343 + example = { Parent = "root"; Rate = "10M"; }; 2344 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionHierarchyTokenBucketClass; 2345 + description = lib.mdDoc '' 2346 + Each attribute in this set specifies an option in the 2347 + `[HierarchyTokenBucketClass]` section of the unit. See 2348 + {manpage}`systemd.network(5)` for details. 2349 + ''; 2350 + }; 2351 + 2352 + heavyHitterFilterConfig = mkOption { 2353 + default = {}; 2354 + example = { Parent = "root"; PacketLimit = 10000; }; 2355 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionHeavyHitterFilter; 2356 + description = lib.mdDoc '' 2357 + Each attribute in this set specifies an option in the 2358 + `[HeavyHitterFilter]` section of the unit. See 2359 + {manpage}`systemd.network(5)` for details. 2360 + ''; 2361 + }; 2362 + 2363 + quickFairQueueingConfig = mkOption { 2364 + default = {}; 2365 + example = { Parent = "root"; }; 2366 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionQuickFairQueueing; 2367 + description = lib.mdDoc '' 2368 + Each attribute in this set specifies an option in the 2369 + `[QuickFairQueueing]` section of the unit. See 2370 + {manpage}`systemd.network(5)` for details. 2371 + ''; 2372 + }; 2373 + 2374 + quickFairQueueingConfigClass = mkOption { 2375 + default = {}; 2376 + example = { Parent = "root"; Weight = 133; }; 2377 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionQuickFairQueueingClass; 2378 + description = lib.mdDoc '' 2379 + Each attribute in this set specifies an option in the 2380 + `[QuickFairQueueingClass]` section of the unit. See 2381 + {manpage}`systemd.network(5)` for details. 2382 + ''; 2383 + }; 2384 + 2385 + bridgeVLANConfig = mkOption { 2386 + default = {}; 2387 + example = { VLAN = "10-20"; }; 2388 + type = types.addCheck (types.attrsOf unitOption) check.network.sectionbridgeVLAN; 2389 + description = lib.mdDoc '' 2390 + Each attribute in this set specifies an option in the 2391 + `[BridgeVLAN]` section of the unit. See 2392 + {manpage}`systemd.network(5)` for details. 2393 + ''; 2394 + }; 2395 + 2396 + bridgeVLANs = mkOption { 2397 + default = []; 2398 + example = [ { bridgeVLANConfig = { VLAN = "10-20"; }; } ]; 2399 + type = with types; listOf (submodule bridgeVLANOptions); 2400 + description = lib.mdDoc '' 2401 + A list of BridgeVLAN sections to be added to the unit. See 2402 + {manpage}`systemd.network(5)` for details. 2403 + ''; 2404 + }; 2405 + 1448 2406 name = mkOption { 1449 2407 type = types.nullOr types.str; 1450 2408 default = null; ··· 1705 2663 [Tap] 1706 2664 ${attrsToSection def.tapConfig} 1707 2665 '' 2666 + + optionalString (def.l2tpConfig != { }) '' 2667 + [L2TP] 2668 + ${attrsToSection def.l2tpConfig} 2669 + '' 2670 + + flip concatMapStrings def.l2tpSessions (x: '' 2671 + [L2TPSession] 2672 + ${attrsToSection x.l2tpSessionConfig} 2673 + '') 1708 2674 + optionalString (def.wireguardConfig != { }) '' 1709 2675 [WireGuard] 1710 2676 ${attrsToSection def.wireguardConfig} ··· 1843 2809 + flip concatMapStrings def.dhcpServerStaticLeases (x: '' 1844 2810 [DHCPServerStaticLease] 1845 2811 ${attrsToSection x.dhcpServerStaticLeaseConfig} 2812 + '') 2813 + + optionalString (def.bridgeConfig != { }) '' 2814 + [Bridge] 2815 + ${attrsToSection def.bridgeConfig} 2816 + '' 2817 + + flip concatMapStrings def.bridgeFDBs (x: '' 2818 + [BridgeFDB] 2819 + ${attrsToSection x.bridgeFDBConfig} 2820 + '') 2821 + + flip concatMapStrings def.bridgeMDBs (x: '' 2822 + [BridgeMDB] 2823 + ${attrsToSection x.bridgeMDBConfig} 2824 + '') 2825 + + optionalString (def.lldpConfig != { }) '' 2826 + [LLDP] 2827 + ${attrsToSection def.lldpConfig} 2828 + '' 2829 + + optionalString (def.canConfig != { }) '' 2830 + [CAN] 2831 + ${attrsToSection def.canConfig} 2832 + '' 2833 + + optionalString (def.ipoIBConfig != { }) '' 2834 + [IPoIB] 2835 + ${attrsToSection def.ipoIBConfig} 2836 + '' 2837 + + optionalString (def.qdiscConfig != { }) '' 2838 + [QDisc] 2839 + ${attrsToSection def.qdiscConfig} 2840 + '' 2841 + + optionalString (def.networkEmulatorConfig != { }) '' 2842 + [NetworkEmulator] 2843 + ${attrsToSection def.networkEmulatorConfig} 2844 + '' 2845 + + optionalString (def.tokenBucketFilterConfig != { }) '' 2846 + [TokenBucketFilter] 2847 + ${attrsToSection def.tockenBucketFilterConfig} 2848 + '' 2849 + + optionalString (def.pieConfig != { }) '' 2850 + [PIE] 2851 + ${attrsToSection def.pieConfig} 2852 + '' 2853 + + optionalString (def.flowQueuePIEConfig != { }) '' 2854 + [FlowQueuePIE] 2855 + ${attrsToSection def.flowQueuePIEConfig} 2856 + '' 2857 + + optionalString (def.stochasticFairBlueConfig != { }) '' 2858 + [StochasticFairBlue] 2859 + ${attrsToSection def.stochasticFairBlueConfig} 2860 + '' 2861 + + optionalString (def.stochasticFairnessQueueingConfig != { }) '' 2862 + [StochasticFairnessQueueing] 2863 + ${attrsToSection def.stochasticFairnessQueueingConfig} 2864 + '' 2865 + + optionalString (def.bfifoConfig != { }) '' 2866 + [BFIFO] 2867 + ${attrsToSection def.bfifoConfig} 2868 + '' 2869 + + optionalString (def.pfifoConfig != { }) '' 2870 + [PFIFO] 2871 + ${attrsToSection def.pfifoConfig} 2872 + '' 2873 + + optionalString (def.pfifoHeadDropConfig != { }) '' 2874 + [PFIFOHeadDrop] 2875 + ${attrsToSection def.pfifoHeadDropConfig} 2876 + '' 2877 + + optionalString (def.pfifoFastConfig != { }) '' 2878 + [PFIFOFast] 2879 + ${attrsToSection def.pfifoFastConfig} 2880 + '' 2881 + + optionalString (def.cakeConfig != { }) '' 2882 + [CAKE] 2883 + ${attrsToSection def.cakeConfig} 2884 + '' 2885 + + optionalString (def.controlledDelayConfig != { }) '' 2886 + [ControlledDelay] 2887 + ${attrsToSection def.controlledDelayConfig} 2888 + '' 2889 + + optionalString (def.deficitRoundRobinSchedulerConfig != { }) '' 2890 + [DeficitRoundRobinScheduler] 2891 + ${attrsToSection def.deficitRoundRobinSchedulerConfig} 2892 + '' 2893 + + optionalString (def.deficitRoundRobinSchedulerClassConfig != { }) '' 2894 + [DeficitRoundRobinSchedulerClass] 2895 + ${attrsToSection def.deficitRoundRobinSchedulerClassConfig} 2896 + '' 2897 + + optionalString (def.enhancedTransmissionSelectionConfig != { }) '' 2898 + [EnhancedTransmissionSelection] 2899 + ${attrsToSection def.enhancedTransmissionSelectionConfig} 2900 + '' 2901 + + optionalString (def.genericRandomEarlyDetectionConfig != { }) '' 2902 + [GenericRandomEarlyDetection] 2903 + ${attrsToSection def.genericRandomEarlyDetectionConfig} 2904 + '' 2905 + + optionalString (def.fairQueueingControlledDelayConfig != { }) '' 2906 + [FairQueueingControlledDelay] 2907 + ${attrsToSection def.fairQueueingControlledDelayConfig} 2908 + '' 2909 + + optionalString (def.fairQueueingConfig != { }) '' 2910 + [FairQueueing] 2911 + ${attrsToSection def.fairQueueingConfig} 2912 + '' 2913 + + optionalString (def.trivialLinkEqualizerConfig != { }) '' 2914 + [TrivialLinkEqualizer] 2915 + ${attrsToSection def.trivialLinkEqualizerConfig} 2916 + '' 2917 + + optionalString (def.hierarchyTokenBucketConfig != { }) '' 2918 + [HierarchyTokenBucket] 2919 + ${attrsToSection def.hierarchyTokenBucketConfig} 2920 + '' 2921 + + optionalString (def.hierarchyTokenBucketClassConfig != { }) '' 2922 + [HierarchyTokenBucketClass] 2923 + ${attrsToSection def.hierarchyTokenBucketClassConfig} 2924 + '' 2925 + + optionalString (def.heavyHitterFilterConfig != { }) '' 2926 + [HeavyHitterFilter] 2927 + ${attrsToSection def.heavyHitterFilterConfig} 2928 + '' 2929 + + optionalString (def.quickFairQueueingConfig != { }) '' 2930 + [QuickFairQueueing] 2931 + ${attrsToSection def.quickFairQueueingConfig} 2932 + '' 2933 + + optionalString (def.quickFairQueueingConfigClass != { }) '' 2934 + [QuickFairQueueingClass] 2935 + ${attrsToSection def.quickFairQueueingConfigClass} 2936 + '' 2937 + + flip concatMapStrings def.bridgeVLANs (x: '' 2938 + [BridgeVLAN] 2939 + ${attrsToSection x.bridgeVLANConfig} 1846 2940 '') 1847 2941 + def.extraConfig; 1848 2942 };
+1 -1
nixos/tests/nextcloud/default.nix
··· 26 26 }; 27 27 }) 28 28 { } 29 - [ 24 25 ] 29 + [ 24 25 26 ]
+4 -1
nixos/tests/nextcloud/openssl-sse.nix
··· 55 55 nextcloudwithopenssl1.wait_for_unit("multi-user.target") 56 56 nextcloudwithopenssl1.succeed("nextcloud-occ status") 57 57 nextcloudwithopenssl1.succeed("curl -sSf http://nextcloudwithopenssl1/login") 58 + nextcloud_version = ${toString nextcloudVersion} 58 59 59 60 with subtest("With OpenSSL 1 SSE can be enabled and used"): 60 61 nextcloudwithopenssl1.succeed("nextcloud-occ app:enable encryption") ··· 71 72 nextcloudwithopenssl1.succeed("nextcloud-occ status") 72 73 73 74 with subtest("Existing encrypted files cannot be read, but new files can be added"): 74 - nextcloudwithopenssl1.fail("${withRcloneEnv3} ${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file >&2") 75 + # This will succed starting NC26 because of their custom implementation of openssl_seal 76 + read_existing_file_test = nextcloudwithopenssl1.fail if nextcloud_version < 26 else nextcloudwithopenssl1.succeed 77 + read_existing_file_test("${withRcloneEnv3} ${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file >&2") 75 78 nextcloudwithopenssl1.succeed("nextcloud-occ encryption:disable") 76 79 nextcloudwithopenssl1.succeed("${copySharedFile3}") 77 80 nextcloudwithopenssl1.succeed("grep bye /var/lib/nextcloud/data/root/files/test-shared-file2")
+2 -2
pkgs/applications/misc/vhs/default.nix
··· 1 - { lib, buildGoModule, installShellFiles, fetchFromGitHub, ffmpeg, ttyd, chromium, makeWrapper }: 1 + { lib, stdenv, buildGoModule, installShellFiles, fetchFromGitHub, ffmpeg, ttyd, chromium, makeWrapper }: 2 2 3 3 buildGoModule rec { 4 4 pname = "vhs"; ··· 18 18 ldflags = [ "-s" "-w" "-X=main.Version=${version}" ]; 19 19 20 20 postInstall = '' 21 - wrapProgram $out/bin/vhs --prefix PATH : ${lib.makeBinPath [ chromium ffmpeg ttyd ]} 21 + wrapProgram $out/bin/vhs --prefix PATH : ${lib.makeBinPath (lib.optionals stdenv.isLinux [ chromium ] ++ [ ffmpeg ttyd ])} 22 22 $out/bin/vhs man > vhs.1 23 23 installManPage vhs.1 24 24 installShellCompletion --cmd vhs \
+3 -3
pkgs/applications/version-management/git-branchless/default.nix
··· 14 14 15 15 rustPlatform.buildRustPackage rec { 16 16 pname = "git-branchless"; 17 - version = "0.7.0"; 17 + version = "0.7.1"; 18 18 19 19 src = fetchFromGitHub { 20 20 owner = "arxanas"; 21 21 repo = "git-branchless"; 22 22 rev = "v${version}"; 23 - sha256 = "sha256-t3nzElicRbOTI+1nD+CGQk9u83FUUNgJ0OpylPZdlOs="; 23 + sha256 = "sha256-9kyC9Uwmc2WNHgfKpnS3v8vNF2o+168ULWqE+2eX1cE="; 24 24 }; 25 25 26 - cargoHash = "sha256-RfZnPQN+BSJ2YmCEMCPWY477sJue/L++3aL+U15C1Ro="; 26 + cargoHash = "sha256-k+Jx5PcA8TaFQQDYqZ6dTy8bwNtYeALF75ucoFjVGUc="; 27 27 28 28 nativeBuildInputs = [ pkg-config ]; 29 29
+48
pkgs/development/libraries/libgourou/default.nix
··· 1 + { lib, stdenv, fetchzip, pugixml, updfparser, curl, openssl, libzip 2 + , installShellFiles }: 3 + 4 + stdenv.mkDerivation rec { 5 + name = "libgourou"; 6 + version = "0.8.1"; 7 + 8 + src = fetchzip { 9 + url = "https://indefero.soutade.fr/p/${name}/source/download/v${version}/"; 10 + sha256 = "sha256-X56K4z1+k62Q9pxnN8kx35oc7+uJJN/o/tpnKx1FjwE="; 11 + extension = "zip"; 12 + }; 13 + 14 + postPatch = '' 15 + patchShebangs scripts/setup.sh 16 + ''; 17 + 18 + postConfigure = '' 19 + mkdir lib 20 + ln -s ${updfparser}/lib lib/updfparser 21 + ''; 22 + 23 + nativeBuildInputs = [ installShellFiles ]; 24 + buildInputs = [ pugixml updfparser curl openssl libzip ]; 25 + 26 + makeFlags = [ "BUILD_STATIC=1" "BUILD_SHARED=1" ]; 27 + 28 + installPhase = '' 29 + runHook preInstall 30 + install -Dt $out/include include/libgourou*.h 31 + install -Dt $out/lib libgourou.so 32 + install -Dt $out/lib libgourou.so.${version} 33 + install -Dt $out/lib libgourou.a 34 + install -Dt $out/bin utils/acsmdownloader 35 + install -Dt $out/bin utils/adept_{activate,loan_mgt,remove} 36 + installManPage utils/man/*.1 37 + runHook postInstall 38 + ''; 39 + 40 + meta = with lib; { 41 + description = "Implementation of Adobe's ADEPT protocol for ePub/PDF DRM"; 42 + homepage = "https://indefero.soutade.fr/p/libgourou"; 43 + license = licenses.lgpl3Plus; 44 + maintainers = with maintainers; [ autumnal ]; 45 + platforms = platforms.all; 46 + broken = stdenv.isDarwin; 47 + }; 48 + }
+31
pkgs/development/libraries/updfparser/default.nix
··· 1 + { lib, stdenv, fetchzip }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "updfparser"; 5 + version = "unstable-2023-01-10"; 6 + rev = "a421098092ba600fb1686a7df8fc58cd67429f59"; 7 + 8 + src = fetchzip { 9 + url = "https://indefero.soutade.fr/p/updfparser/source/download/${rev}/"; 10 + sha256 = "sha256-Kt1QDj7E0GaT615kJW2MQKF9BeU5U7/95TQKODpxgNI="; 11 + extension = "zip"; 12 + }; 13 + 14 + makeFlags = [ "BUILD_STATIC=1" "BUILD_SHARED=1" ]; 15 + 16 + installPhase = '' 17 + runHook preInstall 18 + install -Dt $out/include include/*.h 19 + install -Dt $out/lib libupdfparser.so 20 + install -Dt $out/lib libupdfparser.a 21 + runHook postInstall 22 + ''; 23 + 24 + meta = with lib; { 25 + description = "A very simple PDF parser"; 26 + homepage = "https://indefero.soutade.fr/p/updfparser"; 27 + license = licenses.lgpl3Plus; 28 + maintainers = with maintainers; [ autumnal ]; 29 + platforms = platforms.all; 30 + }; 31 + }
+51
pkgs/development/python-modules/py-serializable/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , defusedxml 4 + , fetchFromGitHub 5 + , lxml 6 + , poetry-core 7 + , pytestCheckHook 8 + , pythonOlder 9 + , xmldiff 10 + }: 11 + 12 + buildPythonPackage rec { 13 + pname = "py-serializable"; 14 + version = "0.12.0"; 15 + format = "pyproject"; 16 + 17 + disabled = pythonOlder "3.7"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "madpah"; 21 + repo = "serializable"; 22 + rev = "refs/tags/v${version}"; 23 + hash = "sha256-TnO8mkRJfdTO1sA26bqh46EMes2TpLXJwpDdrvPPC9g="; 24 + }; 25 + 26 + nativeBuildInputs = [ 27 + poetry-core 28 + ]; 29 + 30 + propagatedBuildInputs = [ 31 + defusedxml 32 + ]; 33 + 34 + nativeCheckInputs = [ 35 + lxml 36 + pytestCheckHook 37 + xmldiff 38 + ]; 39 + 40 + pythonImportsCheck = [ 41 + "serializable" 42 + ]; 43 + 44 + meta = with lib; { 45 + description = "Pythonic library to aid with serialisation and deserialisation to/from JSON and XML"; 46 + homepage = "https://github.com/madpah/serializable"; 47 + changelog = "https://github.com/madpah/serializable/blob/${version}/CHANGELOG.md"; 48 + license = licenses.asl20; 49 + maintainers = with maintainers; [ fab ]; 50 + }; 51 + }
+4 -3
pkgs/development/python-modules/twentemilieu/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "twentemilieu"; 15 - version = "0.6.1"; 15 + version = "1.0.0"; 16 16 format = "pyproject"; 17 17 18 - disabled = pythonOlder "3.8"; 18 + disabled = pythonOlder "3.10"; 19 19 20 20 src = fetchFromGitHub { 21 21 owner = "frenck"; 22 22 repo = "python-twentemilieu"; 23 23 rev = "v${version}"; 24 - hash = "sha256-k2jdw2H/bNejNUjIEQlEA1KkHHpkyFlSDC1HKUoMIqQ="; 24 + hash = "sha256-MTAVa5gP5e8TIE/i1DjfmwKm1zDVC/WEcYKxZSV/+Ug="; 25 25 }; 26 26 27 27 postPatch = '' ··· 50 50 meta = with lib; { 51 51 description = "Python client for Twente Milieu"; 52 52 homepage = "https://github.com/frenck/python-twentemilieu"; 53 + changelog = "https://github.com/frenck/python-twentemilieu/releases/tag/v${version}"; 53 54 license = with licenses; [ mit ]; 54 55 maintainers = with maintainers; [ fab ]; 55 56 };
+2 -2
pkgs/development/tools/build-managers/bazel/bazel_6/default.nix
··· 24 24 }: 25 25 26 26 let 27 - version = "6.1.0"; 27 + version = "6.1.1"; 28 28 sourceRoot = "."; 29 29 30 30 src = fetchurl { 31 31 url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip"; 32 - hash = "sha256-xLhWdVQc9m7ny3FRQJf91sX8DgJSckNhek8gymtPKTI="; 32 + hash = "sha256-a5APJtZ2x+yh0uff+bcYkNq9P/WcqyotIXi8igOVNCo="; 33 33 }; 34 34 35 35 # Update with
+2 -2
pkgs/development/tools/ddosify/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "ddosify"; 5 - version = "0.15.1"; 5 + version = "0.15.3"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = pname; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-Fimr2h0sjZQ1OnFx2DghCGqrfyLZ/SGeRIoLlAAgk3g="; 11 + sha256 = "sha256-xTalStFym/8l2YDuk2F0ydHnT46sxRj/KmOdIbYAMsQ="; 12 12 }; 13 13 14 14 vendorHash = "sha256-3y5ppTtvGqwWhgnVBpP4gf26DHKPnSNYK4jfhBiYDwY=";
+7 -13
pkgs/servers/nextcloud/default.nix
··· 15 15 inherit sha256; 16 16 }; 17 17 18 - patches = [ (./patches + "/v${major}/0001-Setup-remove-custom-dbuser-creation-behavior.patch") ]; 18 + # This patch is only necessary for NC version <26. 19 + patches = lib.optional (lib.versionOlder major "26") (./patches + "/v${major}/0001-Setup-remove-custom-dbuser-creation-behavior.patch"); 19 20 20 21 passthru.tests = nixosTests.nextcloud; 21 22 ··· 38 39 }; 39 40 }; 40 41 in { 41 - nextcloud23 = throw '' 42 - Nextcloud v23 has been removed from `nixpkgs` as the support for is dropped 43 - by upstream in 2022-12. Please upgrade to at least Nextcloud v24 by declaring 44 - 45 - services.nextcloud.package = pkgs.nextcloud24; 46 - 47 - in your NixOS config. 48 - 49 - WARNING: if you were on Nextcloud 22 on NixOS 22.05 you have to upgrade to Nextcloud 23 50 - first on 22.05 because Nextcloud doesn't support upgrades across multiple major versions! 51 - ''; 52 - 53 42 nextcloud24 = generic { 54 43 version = "24.0.10"; 55 44 sha256 = "sha256-B6+0gO9wn39BpcR0IsIuMa81DH8TWuDOlTZR9O1qRbk="; ··· 58 47 nextcloud25 = generic { 59 48 version = "25.0.4"; 60 49 sha256 = "sha256-wyUeAIOpQwPi1piLNS87Mwgqeacmsw/3RnCbD+hpoaY="; 50 + }; 51 + 52 + nextcloud26 = generic { 53 + version = "26.0.0"; 54 + sha256 = "sha256-8WMVA2Ou6TZuy1zVJZv2dW7U8HPOp4tfpRXK2noNDD0="; 61 55 }; 62 56 63 57 # tip: get the sha with:
-122
pkgs/servers/nextcloud/packages/23.json
··· 1 - { 2 - "bookmarks": { 3 - "sha256": "511aadcda0b1f051191c20cfd7048150536cfb1e748deb11b568bec4e535a173", 4 - "url": "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz", 5 - "version": "11.0.4", 6 - "description": "- 📂 Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- 🔍 Full-text search\n- 📲 Synchronize with all your browsers and devices\n- 👪 Share bookmarks with other users and publicly\n- ☠ Find broken links\n- ⚛ Generate RSS feeds of your collections\n- 📔 Read archived versions of your links in case they are depublished\n- 💬 Create new bookmarks directly from within Nextcloud Talk\n- 💼 Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP v7.4+\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", 7 - "homepage": "https://github.com/nextcloud/bookmarks", 8 - "licenses": [ 9 - "agpl" 10 - ] 11 - }, 12 - "calendar": { 13 - "sha256": "d6edc166d63204e39135c0e9f00c0f7a6875db89d34a936e16b513c749ac8b8d", 14 - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.2/calendar-v3.5.2.tar.gz", 15 - "version": "3.5.2", 16 - "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 17 - "homepage": "https://github.com/nextcloud/calendar/", 18 - "licenses": [ 19 - "agpl" 20 - ] 21 - }, 22 - "contacts": { 23 - "sha256": "1938b266c5070573e0435ec31c08a19add96fd99c08c3c1f8309ee8e447093a0", 24 - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz", 25 - "version": "4.2.2", 26 - "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 27 - "homepage": "https://github.com/nextcloud/contacts#readme", 28 - "licenses": [ 29 - "agpl" 30 - ] 31 - }, 32 - "deck": { 33 - "sha256": "fd9ea1ce98c531c7442a784f693cb047d90fbaee313a820ee648f690697f5e13", 34 - "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.6.4/deck-v1.6.4.tar.gz", 35 - "version": "1.6.4", 36 - "description": "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized", 37 - "homepage": "https://github.com/nextcloud/deck", 38 - "licenses": [ 39 - "agpl" 40 - ] 41 - }, 42 - "keeweb": { 43 - "sha256": "a3281fcfdb4058971a3b5c838870a8d5b533445c999b8e921fb8758b216dadbc", 44 - "url": "https://github.com/jhass/nextcloud-keeweb/releases/download/v0.6.10/keeweb-0.6.10.tar.gz", 45 - "version": "0.6.10", 46 - "description": "Open Keepass stores inside Nextcloud with Keeweb just by clicking on an *.kdbx file in your Nextcloud.", 47 - "homepage": "https://github.com/jhass/nextcloud-keeweb", 48 - "licenses": [ 49 - "agpl" 50 - ] 51 - }, 52 - "mail": { 53 - "sha256": "0e2c5465436b894ac916222391d94d364592c18b4258fd3aa4b760afa8fa6ad7", 54 - "url": "https://github.com/nextcloud-releases/mail/releases/download/v1.14.3.alpha.1/mail-v1.14.3.alpha.1.tar.gz", 55 - "version": "1.14.3-alpha.1", 56 - "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!", 57 - "homepage": "https://github.com/nextcloud/mail#readme", 58 - "licenses": [ 59 - "agpl" 60 - ] 61 - }, 62 - "news": { 63 - "sha256": "9551781fdbfb6d2c3cd77ee57eae0fb1583c7b54e9720bc955053f51541f4a86", 64 - "url": "https://github.com/nextcloud/news/releases/download/19.0.0/news.tar.gz", 65 - "version": "19.0.0", 66 - "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 67 - "homepage": "https://github.com/nextcloud/news", 68 - "licenses": [ 69 - "agpl" 70 - ] 71 - }, 72 - "notes": { 73 - "sha256": "adddee56456d0115f87a74405a6d62bd5e3af256e86199d87bbff3b2a6876299", 74 - "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz", 75 - "version": "4.5.1", 76 - "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/stefan-niedermann/nextcloud-notes), [iOS](https://github.com/owncloud/notes-iOS-App) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.", 77 - "homepage": "https://github.com/nextcloud/notes", 78 - "licenses": [ 79 - "agpl" 80 - ] 81 - }, 82 - "onlyoffice": { 83 - "sha256": "e7170f7cffb50547d51a17f0ad38dfab83040a25ebd80146a840d233093a27f0", 84 - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.4.8/onlyoffice.tar.gz", 85 - "version": "7.4.8", 86 - "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 87 - "homepage": "https://www.onlyoffice.com", 88 - "licenses": [ 89 - "apache" 90 - ] 91 - }, 92 - "polls": { 93 - "sha256": "b6ef0e8b34cdb5169341e30340bc9cefaa1254a1a6020e951f86e828f8591a11", 94 - "url": "https://github.com/nextcloud/polls/releases/download/v3.8.3/polls.tar.gz", 95 - "version": "3.8.3", 96 - "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 97 - "homepage": "https://github.com/nextcloud/polls", 98 - "licenses": [ 99 - "agpl" 100 - ] 101 - }, 102 - "tasks": { 103 - "sha256": "fdfa3168ac80eaef3e2de5009eee02a369acc8d35dfd8283d1f25423bdf3c532", 104 - "url": "https://github.com/nextcloud/tasks/releases/download/v0.14.5/tasks.tar.gz", 105 - "version": "0.14.5", 106 - "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.", 107 - "homepage": "https://github.com/nextcloud/tasks/", 108 - "licenses": [ 109 - "agpl" 110 - ] 111 - }, 112 - "twofactor_webauthn": { 113 - "sha256": "291c20032cfc1f2fb081cc8721e272bc503d103987c6abb7ce442e497d278d0a", 114 - "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v0.3.3/twofactor_webauthn-v0.3.3.tar.gz", 115 - "version": "0.3.3", 116 - "description": "A two-factor provider for WebAuthn devices", 117 - "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", 118 - "licenses": [ 119 - "agpl" 120 - ] 121 - } 122 - }
+12 -12
pkgs/servers/nextcloud/packages/24.json
··· 63 63 "sha256": "1payxppd2j0n67kcswb3dkk2a467fahwakxs7wqsfqgqgr9mcbl4", 64 64 "url": "https://github.com/nextcloud/forms/releases/download/v2.5.2/forms.tar.gz", 65 65 "version": "2.5.2", 66 - "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", 66 + "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🧑‍💻 Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", 67 67 "homepage": "https://github.com/nextcloud/forms", 68 68 "licenses": [ 69 69 "agpl" ··· 80 80 ] 81 81 }, 82 82 "impersonate": { 83 - "sha256": "1k1qm3jilys548g813y179x6rs8aglkvss8b0cmfvjlpmlaxpssx", 84 - "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.11.0/impersonate-v1.11.0.tar.gz", 85 - "version": "1.11.0", 86 - "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud\n2. Open the user administration interface\n3. Select the impersonate button on the affected user\n4. Confirm the impersonation\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.", 83 + "sha256": "1kjibw5rigij51j6vjmx7ykrk61lg98syp7kkr0fzgwzvxrdniah", 84 + "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.11.1/impersonate-v1.11.1.tar.gz", 85 + "version": "1.11.1", 86 + "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud.\n2. Open users administration interface.\n3. Select the impersonate button on the affected user.\n4. Confirm the impersonation.\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.", 87 87 "homepage": "https://github.com/nextcloud/impersonate", 88 88 "licenses": [ 89 89 "agpl" ··· 110 110 ] 111 111 }, 112 112 "news": { 113 - "sha256": "17kz5499jkv43w8wcd1p982hpkw2akgzpv9cjj8qqjhvzv4qr171", 114 - "url": "https://github.com/nextcloud/news/releases/download/21.0.0-beta1/news.tar.gz", 115 - "version": "21.0.0-beta1", 113 + "sha256": "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd", 114 + "url": "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz", 115 + "version": "21.1.0", 116 116 "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 117 117 "homepage": "https://github.com/nextcloud/news", 118 118 "licenses": [ ··· 123 123 "sha256": "adddee56456d0115f87a74405a6d62bd5e3af256e86199d87bbff3b2a6876299", 124 124 "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz", 125 125 "version": "4.5.1", 126 - "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/stefan-niedermann/nextcloud-notes), [iOS](https://github.com/owncloud/notes-iOS-App) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.", 126 + "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/nextcloud/notes-android), [iOS](https://github.com/nextcloud/notes-ios) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.", 127 127 "homepage": "https://github.com/nextcloud/notes", 128 128 "licenses": [ 129 129 "agpl" ··· 140 140 ] 141 141 }, 142 142 "onlyoffice": { 143 - "sha256": "6117b7b8c5c7133975e4ebf482814cdcd3f94a1b3c76ea1b5eed47bdd1fbfcbb", 144 - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.5.8/onlyoffice.tar.gz", 145 - "version": "7.5.8", 143 + "sha256": "0hscbm7jcnxyg7ib0g16b0sw8nz7rl6qzx90qmki5knhzrf6hf1j", 144 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.7.0/onlyoffice.tar.gz", 145 + "version": "7.7.0", 146 146 "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 147 147 "homepage": "https://www.onlyoffice.com", 148 148 "licenses": [
+39 -29
pkgs/servers/nextcloud/packages/25.json
··· 1 1 { 2 2 "bookmarks": { 3 - "sha256": "0dkfjafbynkrymsq183sad7zynqr2qls0cld73nvzn3smnvdl2xx", 4 - "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.0.0/bookmarks-12.0.0.tar.gz", 5 - "version": "12.0.0", 3 + "sha256": "1kdpma5f3rb9g29j364lqv6bkar5qgwlvcxmhpmzllwlkmjpc9w8", 4 + "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.1.0/bookmarks-12.1.0.tar.gz", 5 + "version": "12.1.0", 6 6 "description": "- 📂 Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- 🔍 Full-text search\n- 📲 Synchronize with all your browsers and devices\n- 👪 Share bookmarks with other users and publicly\n- ☠ Find broken links\n- ⚛ Generate RSS feeds of your collections\n- 📔 Read archived versions of your links in case they are depublished\n- 💬 Create new bookmarks directly from within Nextcloud Talk\n- 💼 Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP v7.4+\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", 7 7 "homepage": "https://github.com/nextcloud/bookmarks", 8 8 "licenses": [ ··· 10 10 ] 11 11 }, 12 12 "calendar": { 13 - "sha256": "0m0ixj4gaaqgnlk492ihkcxrxbww91jyalh40hdgnsryb9wrpkfp", 14 - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.0-alpha1/calendar-v4.3.0-alpha1.tar.gz", 15 - "version": "4.3.0-alpha.1", 13 + "sha256": "18jlj2g2b57ibcvqiw3pkkky4rr20xi5plyxl1xjn2bp9l3hng4y", 14 + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.0/calendar-v4.3.0.tar.gz", 15 + "version": "4.3.0", 16 16 "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 17 17 "homepage": "https://github.com/nextcloud/calendar/", 18 18 "licenses": [ ··· 20 20 ] 21 21 }, 22 22 "contacts": { 23 - "sha256": "1m00r6cpqyrg2b0p8hg4wqkb3wn643fy63ax7qksp39rn18smrwk", 24 - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.1.0/contacts-v5.1.0.tar.gz", 25 - "version": "5.1.0", 23 + "sha256": "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk", 24 + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz", 25 + "version": "5.2.0", 26 26 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 27 27 "homepage": "https://github.com/nextcloud/contacts#readme", 28 28 "licenses": [ ··· 50 50 ] 51 51 }, 52 52 "forms": { 53 - "sha256": "0b2qvrnhsxdknlc8bpr4hmxqdk18f9vy8ry6nm49k4lbrsfg97nq", 54 - "url": "https://github.com/nextcloud/forms/releases/download/v3.1.0/forms.tar.gz", 55 - "version": "3.1.0", 56 - "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", 53 + "sha256": "1hjdwhhx5p9n185b5v0vbxhnarcm83r52hsqq7qwfcfpy86axafr", 54 + "url": "https://github.com/nextcloud/forms/releases/download/v3.2.0/forms.tar.gz", 55 + "version": "3.2.0", 56 + "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🧑‍💻 Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", 57 57 "homepage": "https://github.com/nextcloud/forms", 58 58 "licenses": [ 59 59 "agpl" ··· 69 69 "agpl" 70 70 ] 71 71 }, 72 + "impersonate": { 73 + "sha256": "1whngpqx4b2vdsr8a9j8agdg2c8rm5rbk2vhh92myws55lqlbnz9", 74 + "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.12.0/impersonate-v1.12.0.tar.gz", 75 + "version": "1.12.0", 76 + "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud.\n2. Open users administration interface.\n3. Select the impersonate button on the affected user.\n4. Confirm the impersonation.\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.", 77 + "homepage": "https://github.com/nextcloud/impersonate", 78 + "licenses": [ 79 + "agpl" 80 + ] 81 + }, 72 82 "keeweb": { 73 83 "sha256": "1g6bjbzk7rf9x7cblwsc7cmd3fx5zrkib5ra5xzsmqc9aqpy22zh", 74 84 "url": "https://github.com/jhass/nextcloud-keeweb/releases/download/v0.6.10/keeweb-0.6.10.tar.gz", ··· 80 90 ] 81 91 }, 82 92 "mail": { 83 - "sha256": "161ksx7g32fkpwxq3vij2vw6sxblv7xrxggsxnx2wj14ik3wxclv", 84 - "url": "https://github.com/nextcloud-releases/mail/releases/download/v2.3.0-alpha.4/mail-v2.3.0-alpha.4.tar.gz", 85 - "version": "2.3.0-alpha.4", 93 + "sha256": "0sk19y9iwnbw6ci4hq9xxrn5qgnlgqlb5hpzc50i706s1z5n9cmc", 94 + "url": "https://github.com/nextcloud-releases/mail/releases/download/v2.2.4/mail-v2.2.4.tar.gz", 95 + "version": "2.2.4", 86 96 "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!", 87 97 "homepage": "https://github.com/nextcloud/mail#readme", 88 98 "licenses": [ ··· 90 100 ] 91 101 }, 92 102 "news": { 93 - "sha256": "17kz5499jkv43w8wcd1p982hpkw2akgzpv9cjj8qqjhvzv4qr171", 94 - "url": "https://github.com/nextcloud/news/releases/download/21.0.0-beta1/news.tar.gz", 95 - "version": "21.0.0-beta1", 103 + "sha256": "1i7avq4iliz8afrwc9hw7hb13g3223004b2dim7j77l3zsvkfq3h", 104 + "url": "https://github.com/nextcloud/news/releases/download/21.1.0-beta1/news.tar.gz", 105 + "version": "21.1.0-beta1", 96 106 "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 97 107 "homepage": "https://github.com/nextcloud/news", 98 108 "licenses": [ ··· 120 130 ] 121 131 }, 122 132 "onlyoffice": { 123 - "sha256": "0gy4n86q7b5qmy609ncibp94v1b3z9msc0129572qz2zyxfqxq3i", 124 - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.6.8/onlyoffice.tar.gz", 125 - "version": "7.6.8", 133 + "sha256": "10axh9a4w8y3iw95xdjn4q8wjg5459dki42xb6cax5ikimyfv07j", 134 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.8.0/onlyoffice.tar.gz", 135 + "version": "7.8.0", 126 136 "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 127 137 "homepage": "https://www.onlyoffice.com", 128 138 "licenses": [ ··· 130 140 ] 131 141 }, 132 142 "polls": { 133 - "sha256": "0mqc9zmxrm98byy6v13si3hwii8hx85998c4kv91vk6ad0sfxjhb", 134 - "url": "https://github.com/nextcloud/polls/releases/download/v4.1.2/polls.tar.gz", 135 - "version": "4.1.2", 143 + "sha256": "12298sspxp0ap61z2fjlgnd30fn0gl92xa5m6rnx2jb5i39lh9wr", 144 + "url": "https://github.com/nextcloud/polls/releases/download/v5.0.0-beta4/polls.tar.gz", 145 + "version": "5.0.0-beta4", 136 146 "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 137 147 "homepage": "https://github.com/nextcloud/polls", 138 148 "licenses": [ ··· 153 163 "sha256": "0pav5xcnj55vs04fm1fc2kpaz46k0rdlvv7xn6idwgh860anzp4g", 154 164 "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.4/spreed-v15.0.4.tar.gz", 155 165 "version": "15.0.4", 156 - "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds", 166 + "description": "Chat, video & audio-conferencing using WebRTC\r\n\r\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\r\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\r\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\r\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\r\n\r\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\r\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds", 157 167 "homepage": "https://github.com/nextcloud/spreed", 158 168 "licenses": [ 159 169 "agpl" ··· 190 200 ] 191 201 }, 192 202 "twofactor_webauthn": { 193 - "sha256": "00nll7jfrmqw537r0g07yq7g9lh1kckiiigxgwyd4nh5j6f56v15", 194 - "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.1.1/twofactor_webauthn-v1.1.1.tar.gz", 195 - "version": "1.1.1", 203 + "sha256": "1f5zamydsl7lr91md2qmz0wzsfvs8q05qpn96x6i7c6886vx18xf", 204 + "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.1.2/twofactor_webauthn-v1.1.2.tar.gz", 205 + "version": "1.1.2", 196 206 "description": "A two-factor provider for WebAuthn devices", 197 207 "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", 198 208 "licenses": [
+202
pkgs/servers/nextcloud/packages/26.json
··· 1 + { 2 + "bookmarks": { 3 + "sha256": "0xx331bgly91y8ncxk36ha3ncrr2xlivblfi7rix6ffkrdx73yb9", 4 + "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.0.1/bookmarks-13.0.1.tar.gz", 5 + "version": "13.0.1", 6 + "description": "- 📂 Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- 🔍 Full-text search\n- 📲 Synchronize with all your browsers and devices\n- 👪 Share bookmarks with other users and publicly\n- ☠ Find broken links\n- ⚛ Generate RSS feeds of your collections\n- 📔 Read archived versions of your links in case they are depublished\n- 💬 Create new bookmarks directly from within Nextcloud Talk\n- 💼 Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP v7.4+\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", 7 + "homepage": "https://github.com/nextcloud/bookmarks", 8 + "licenses": [ 9 + "agpl" 10 + ] 11 + }, 12 + "calendar": { 13 + "sha256": "18jlj2g2b57ibcvqiw3pkkky4rr20xi5plyxl1xjn2bp9l3hng4y", 14 + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.0/calendar-v4.3.0.tar.gz", 15 + "version": "4.3.0", 16 + "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 17 + "homepage": "https://github.com/nextcloud/calendar/", 18 + "licenses": [ 19 + "agpl" 20 + ] 21 + }, 22 + "contacts": { 23 + "sha256": "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk", 24 + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz", 25 + "version": "5.2.0", 26 + "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 27 + "homepage": "https://github.com/nextcloud/contacts#readme", 28 + "licenses": [ 29 + "agpl" 30 + ] 31 + }, 32 + "deck": { 33 + "sha256": "1bx95f8rpvfwh0zf5iaks7w252dfbfh7xngljj58a4nwqv9g613q", 34 + "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.9.0/deck-v1.9.0.tar.gz", 35 + "version": "1.9.0", 36 + "description": "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized", 37 + "homepage": "https://github.com/nextcloud/deck", 38 + "licenses": [ 39 + "agpl" 40 + ] 41 + }, 42 + "files_texteditor": { 43 + "sha256": "0rmk14iw34pd81snp3lm01k07wm5j2nh9spcd4j0m43l20b7kxss", 44 + "url": "https://github.com/nextcloud-releases/files_texteditor/releases/download/v2.15.0/files_texteditor.tar.gz", 45 + "version": "2.15.0", 46 + "description": "This application enables Nextcloud users to open, save and edit text files in the web browser. If enabled, an entry called \"Text file\" in the \"New\" button menu at the top of the web browser appears. When clicked, a new text file opens in the browser and the file can be saved into the current Nextcloud directory. Further, when a text file is clicked in the web browser, it will be opened and editable. If the privileges allow, a user can also edit shared files and save these changes back into the web browser.\nMore information is available in the text editor documentation.", 47 + "homepage": "https://github.com/nextcloud/files_texteditor", 48 + "licenses": [ 49 + "agpl" 50 + ] 51 + }, 52 + "forms": { 53 + "sha256": "1hjdwhhx5p9n185b5v0vbxhnarcm83r52hsqq7qwfcfpy86axafr", 54 + "url": "https://github.com/nextcloud/forms/releases/download/v3.2.0/forms.tar.gz", 55 + "version": "3.2.0", 56 + "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🧑‍💻 Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", 57 + "homepage": "https://github.com/nextcloud/forms", 58 + "licenses": [ 59 + "agpl" 60 + ] 61 + }, 62 + "groupfolders": { 63 + "sha256": "0v54642rqlgmcncjrwf5bizj0a816l70k8ndfa68hkypbyp4yxm0", 64 + "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v14.0.0/groupfolders-v14.0.0.tar.gz", 65 + "version": "14.0.0", 66 + "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.\n\nNote: Encrypting the contents of group folders is currently not supported.", 67 + "homepage": "https://github.com/nextcloud/groupfolders", 68 + "licenses": [ 69 + "agpl" 70 + ] 71 + }, 72 + "impersonate": { 73 + "sha256": "0x5ap5s9qm4lffb022yxx1fmpgjk1w2y95cja4zfd5vc70d37r0s", 74 + "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.13.0/impersonate-v1.13.0.tar.gz", 75 + "version": "1.13.0", 76 + "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud.\n2. Open users administration interface.\n3. Select the impersonate button on the affected user.\n4. Confirm the impersonation.\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.", 77 + "homepage": "https://github.com/nextcloud/impersonate", 78 + "licenses": [ 79 + "agpl" 80 + ] 81 + }, 82 + "mail": { 83 + "sha256": "0lx8s7bb0w7d5kvn0np2p4rjjpajbhxf55qqp8ixfjkdcn6gkkxj", 84 + "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.0.0/mail-v3.0.0.tar.gz", 85 + "version": "3.0.0", 86 + "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!", 87 + "homepage": "https://github.com/nextcloud/mail#readme", 88 + "licenses": [ 89 + "agpl" 90 + ] 91 + }, 92 + "news": { 93 + "sha256": "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd", 94 + "url": "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz", 95 + "version": "21.1.0", 96 + "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 97 + "homepage": "https://github.com/nextcloud/news", 98 + "licenses": [ 99 + "agpl" 100 + ] 101 + }, 102 + "notes": { 103 + "sha256": "19875sl3wpwnq2wrblfyyxhrp7hpqwazrnmz037yd1vf43crw03d", 104 + "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.7.0/notes.tar.gz", 105 + "version": "4.7.0", 106 + "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/nextcloud/notes-android), [iOS](https://github.com/nextcloud/notes-ios) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.", 107 + "homepage": "https://github.com/nextcloud/notes", 108 + "licenses": [ 109 + "agpl" 110 + ] 111 + }, 112 + "notify_push": { 113 + "sha256": "1vfa68spnyfivcx0vp49mimf5xg7hsxnifd06imd1c0mw3nlfm4p", 114 + "url": "https://github.com/nextcloud-releases/notify_push/releases/download/v0.6.0/notify_push-v0.6.0.tar.gz", 115 + "version": "0.6.0", 116 + "description": "Push update support for desktop app.\n\nOnce the app is installed, the push binary needs to be setup. You can either use the setup wizard with `occ notify_push:setup` or see the [README](http://github.com/nextcloud/notify_push) for detailed setup instructions", 117 + "homepage": "", 118 + "licenses": [ 119 + "agpl" 120 + ] 121 + }, 122 + "onlyoffice": { 123 + "sha256": "10axh9a4w8y3iw95xdjn4q8wjg5459dki42xb6cax5ikimyfv07j", 124 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.8.0/onlyoffice.tar.gz", 125 + "version": "7.8.0", 126 + "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 127 + "homepage": "https://www.onlyoffice.com", 128 + "licenses": [ 129 + "apache" 130 + ] 131 + }, 132 + "polls": { 133 + "sha256": "12298sspxp0ap61z2fjlgnd30fn0gl92xa5m6rnx2jb5i39lh9wr", 134 + "url": "https://github.com/nextcloud/polls/releases/download/v5.0.0-beta4/polls.tar.gz", 135 + "version": "5.0.0-beta4", 136 + "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 137 + "homepage": "https://github.com/nextcloud/polls", 138 + "licenses": [ 139 + "agpl" 140 + ] 141 + }, 142 + "registration": { 143 + "sha256": "07dqc670qmdb3c8jjnj7azxxspjhiv6m9nrj960y3rjabyzy25m9", 144 + "url": "https://github.com/nextcloud-releases/registration/releases/download/v2.1.0/registration-v2.1.0.tar.gz", 145 + "version": "2.1.0", 146 + "description": "User registration\n\nThis app allows users to register a new account.\n\n# Features\n\n- Add users to a given group\n- Allow-list with email domains (including wildcard) to register with\n- Administrator will be notified via email for new user creation or require approval\n- Supports Nextcloud's Client Login Flow v1 and v2 - allowing registration in the mobile Apps and Desktop clients\n\n# Web form registration flow\n\n1. User enters their email address\n2. Verification link is sent to the email address\n3. User clicks on the verification link\n4. User is lead to a form where they can choose their username and password\n5. New account is created and is logged in automatically", 147 + "homepage": "https://github.com/nextcloud/registration", 148 + "licenses": [ 149 + "agpl" 150 + ] 151 + }, 152 + "spreed": { 153 + "sha256": "0i5n47j8hvngfkiad88j5m37frp3bp4w5r7qaram5dvxmm2rkngc", 154 + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v16.0.0/spreed-v16.0.0.tar.gz", 155 + "version": "16.0.0", 156 + "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds", 157 + "homepage": "https://github.com/nextcloud/spreed", 158 + "licenses": [ 159 + "agpl" 160 + ] 161 + }, 162 + "tasks": { 163 + "sha256": "0jm13d6nm7cfsw27yfiq1il9xjlh0qrq8xby2yz9dmggn7lk1dx5", 164 + "url": "https://github.com/nextcloud/tasks/releases/download/v0.14.5/tasks.tar.gz", 165 + "version": "0.14.5", 166 + "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.", 167 + "homepage": "https://github.com/nextcloud/tasks/", 168 + "licenses": [ 169 + "agpl" 170 + ] 171 + }, 172 + "twofactor_nextcloud_notification": { 173 + "sha256": "13afyhiy7yk0fcf32792dwabjcixnw5b4hkxykw0xby3hnh0m3l2", 174 + "url": "https://github.com/nextcloud-releases/twofactor_nextcloud_notification/releases/download/v3.6.0/twofactor_nextcloud_notification-v3.6.0.tar.gz", 175 + "version": "3.6.0", 176 + "description": "Allows using any of your logged in devices as second factor", 177 + "homepage": "https://github.com/nextcloud/twofactor_nextcloud_notification", 178 + "licenses": [ 179 + "agpl" 180 + ] 181 + }, 182 + "twofactor_webauthn": { 183 + "sha256": "1f5zamydsl7lr91md2qmz0wzsfvs8q05qpn96x6i7c6886vx18xf", 184 + "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.1.2/twofactor_webauthn-v1.1.2.tar.gz", 185 + "version": "1.1.2", 186 + "description": "A two-factor provider for WebAuthn devices", 187 + "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", 188 + "licenses": [ 189 + "agpl" 190 + ] 191 + }, 192 + "unsplash": { 193 + "sha256": "0zakbrgjc3i6rl0nqwxfsfwybbqpr50c8c10d6s7r9m4gck0y2bm", 194 + "url": "https://github.com/nextcloud/unsplash/releases/download/v2.2.0/unsplash.tar.gz", 195 + "version": "2.2.0", 196 + "description": "Show a new random featured nature photo in your nextcloud. Now with choosable motives!", 197 + "homepage": "https://github.com/nextcloud/unsplash/", 198 + "licenses": [ 199 + "agpl" 200 + ] 201 + } 202 + }
+3 -3
pkgs/servers/traefik/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "traefik"; 5 - version = "2.9.8"; 5 + version = "2.9.9"; 6 6 7 7 # Archive with static assets for webui 8 8 src = fetchzip { 9 9 url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz"; 10 - sha256 = "sha256-3vrMh0zrJQhIG9VAlG/iHlOVlUFlE4qd0EkOB0ckAtY="; 10 + sha256 = "sha256-p5leV7Eg+BysUw4AWfhPeccc6TPhRV48T9BiDORR7Co="; 11 11 stripRoot = false; 12 12 }; 13 13 14 - vendorSha256 = "sha256-NyI+3wYRZ3L98qwrkDfrbJK4S+Wdx/UJ8FlLAMhaL7A="; 14 + vendorSha256 = "sha256-11OYVeEuo/Fl6qlRLITzi7qmM2M8puHk5Y0X0sgLius="; 15 15 16 16 subPackages = [ "cmd/traefik" ]; 17 17
+2 -2
pkgs/tools/misc/goreleaser/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "goreleaser"; 5 - version = "1.16.1"; 5 + version = "1.16.2"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "goreleaser"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-Cj6VjD0TKAfyLPMJBknOgn/KAVD0BhC0ylDyfRYt5z8="; 11 + sha256 = "sha256-BHx44ux+g642aTaV0Wlw/uz/3Vy4MJfuNffgqGDsb6I="; 12 12 }; 13 13 14 14 vendorHash = "sha256-eVuEyQCO2/gufMJp8eUpC82wdJbbJsMKR1ZGv96C9mI=";
+2 -2
pkgs/tools/security/exploitdb/default.nix
··· 6 6 7 7 stdenv.mkDerivation rec { 8 8 pname = "exploitdb"; 9 - version = "2023-03-17"; 9 + version = "2023-03-22"; 10 10 11 11 src = fetchFromGitLab { 12 12 owner = "exploit-database"; 13 13 repo = pname; 14 14 rev = "refs/tags/${version}"; 15 - hash = "sha256-mqGNwyFmTTY8ITzom4GDvZXXI1YUkVKdfIHRqnVLuMs="; 15 + hash = "sha256-8kh4m27KU7drAXmpBTp34YvSmZ5cqFPSaXqedyGOwuY="; 16 16 }; 17 17 18 18 nativeBuildInputs = [
+3 -3
pkgs/tools/text/d2/default.nix
··· 8 8 9 9 buildGoModule rec { 10 10 pname = "d2"; 11 - version = "0.2.5"; 11 + version = "0.2.6"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "terrastruct"; 15 15 repo = pname; 16 16 rev = "v${version}"; 17 - hash = "sha256-nny6scwuSIFQA+G4k3WfuH9n83kMmnwmfPJMKDCIUBo="; 17 + hash = "sha256-bZJu4l5xAVqm/1HIhHfnZF9JRswAE/c6OzuZ8mmHA9U="; 18 18 }; 19 19 20 - vendorHash = "sha256-h2OGd/Ql4BTX0tt91lQBvmm41h2kzPgQXawJnrkxn8Y="; 20 + vendorHash = "sha256-wXE2+a30KohIOuxFeBQPcV7X2Ka+4t7zqHdr48kifY0="; 21 21 22 22 ldflags = [ 23 23 "-s"
+1810
pkgs/tools/typesetting/typst/Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 3 4 + 5 + [[package]] 6 + name = "adler" 7 + version = "1.0.2" 8 + source = "registry+https://github.com/rust-lang/crates.io-index" 9 + checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 10 + 11 + [[package]] 12 + name = "aho-corasick" 13 + version = "0.7.20" 14 + source = "registry+https://github.com/rust-lang/crates.io-index" 15 + checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" 16 + dependencies = [ 17 + "memchr", 18 + ] 19 + 20 + [[package]] 21 + name = "android_system_properties" 22 + version = "0.1.5" 23 + source = "registry+https://github.com/rust-lang/crates.io-index" 24 + checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 25 + dependencies = [ 26 + "libc", 27 + ] 28 + 29 + [[package]] 30 + name = "arrayref" 31 + version = "0.3.7" 32 + source = "registry+https://github.com/rust-lang/crates.io-index" 33 + checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" 34 + 35 + [[package]] 36 + name = "arrayvec" 37 + version = "0.5.2" 38 + source = "registry+https://github.com/rust-lang/crates.io-index" 39 + checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" 40 + 41 + [[package]] 42 + name = "arrayvec" 43 + version = "0.7.2" 44 + source = "registry+https://github.com/rust-lang/crates.io-index" 45 + checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" 46 + 47 + [[package]] 48 + name = "autocfg" 49 + version = "1.1.0" 50 + source = "registry+https://github.com/rust-lang/crates.io-index" 51 + checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 52 + 53 + [[package]] 54 + name = "base64" 55 + version = "0.13.1" 56 + source = "registry+https://github.com/rust-lang/crates.io-index" 57 + checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 58 + 59 + [[package]] 60 + name = "biblatex" 61 + version = "0.6.3" 62 + source = "git+https://github.com/typst/biblatex#932ad283dd45dd88d4fa14dc5b9bda7a270ba027" 63 + dependencies = [ 64 + "chrono", 65 + "numerals", 66 + "paste", 67 + "strum", 68 + "unicode-normalization", 69 + "unscanny", 70 + ] 71 + 72 + [[package]] 73 + name = "bincode" 74 + version = "1.3.3" 75 + source = "registry+https://github.com/rust-lang/crates.io-index" 76 + checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" 77 + dependencies = [ 78 + "serde", 79 + ] 80 + 81 + [[package]] 82 + name = "bit-set" 83 + version = "0.5.3" 84 + source = "registry+https://github.com/rust-lang/crates.io-index" 85 + checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 86 + dependencies = [ 87 + "bit-vec", 88 + ] 89 + 90 + [[package]] 91 + name = "bit-vec" 92 + version = "0.6.3" 93 + source = "registry+https://github.com/rust-lang/crates.io-index" 94 + checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 95 + 96 + [[package]] 97 + name = "bitflags" 98 + version = "1.3.2" 99 + source = "registry+https://github.com/rust-lang/crates.io-index" 100 + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 101 + 102 + [[package]] 103 + name = "bumpalo" 104 + version = "3.12.0" 105 + source = "registry+https://github.com/rust-lang/crates.io-index" 106 + checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" 107 + 108 + [[package]] 109 + name = "bytemuck" 110 + version = "1.13.1" 111 + source = "registry+https://github.com/rust-lang/crates.io-index" 112 + checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" 113 + 114 + [[package]] 115 + name = "byteorder" 116 + version = "1.4.3" 117 + source = "registry+https://github.com/rust-lang/crates.io-index" 118 + checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" 119 + 120 + [[package]] 121 + name = "cc" 122 + version = "1.0.79" 123 + source = "registry+https://github.com/rust-lang/crates.io-index" 124 + checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" 125 + 126 + [[package]] 127 + name = "cfg-if" 128 + version = "1.0.0" 129 + source = "registry+https://github.com/rust-lang/crates.io-index" 130 + checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 131 + 132 + [[package]] 133 + name = "chrono" 134 + version = "0.4.24" 135 + source = "registry+https://github.com/rust-lang/crates.io-index" 136 + checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" 137 + dependencies = [ 138 + "iana-time-zone", 139 + "num-integer", 140 + "num-traits", 141 + "winapi", 142 + ] 143 + 144 + [[package]] 145 + name = "codespan-reporting" 146 + version = "0.11.1" 147 + source = "registry+https://github.com/rust-lang/crates.io-index" 148 + checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" 149 + dependencies = [ 150 + "termcolor", 151 + "unicode-width", 152 + ] 153 + 154 + [[package]] 155 + name = "color_quant" 156 + version = "1.1.0" 157 + source = "registry+https://github.com/rust-lang/crates.io-index" 158 + checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" 159 + 160 + [[package]] 161 + name = "comemo" 162 + version = "0.1.0" 163 + source = "git+https://github.com/typst/comemo#9b520e8f5284d1c39d0bb13eb426f923972775f8" 164 + dependencies = [ 165 + "comemo-macros", 166 + "siphasher", 167 + ] 168 + 169 + [[package]] 170 + name = "comemo-macros" 171 + version = "0.1.0" 172 + source = "git+https://github.com/typst/comemo#9b520e8f5284d1c39d0bb13eb426f923972775f8" 173 + dependencies = [ 174 + "proc-macro2", 175 + "quote", 176 + "syn 1.0.109", 177 + ] 178 + 179 + [[package]] 180 + name = "core-foundation-sys" 181 + version = "0.8.3" 182 + source = "registry+https://github.com/rust-lang/crates.io-index" 183 + checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" 184 + 185 + [[package]] 186 + name = "crc32fast" 187 + version = "1.3.2" 188 + source = "registry+https://github.com/rust-lang/crates.io-index" 189 + checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" 190 + dependencies = [ 191 + "cfg-if", 192 + ] 193 + 194 + [[package]] 195 + name = "crossbeam-channel" 196 + version = "0.5.7" 197 + source = "registry+https://github.com/rust-lang/crates.io-index" 198 + checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c" 199 + dependencies = [ 200 + "cfg-if", 201 + "crossbeam-utils", 202 + ] 203 + 204 + [[package]] 205 + name = "crossbeam-utils" 206 + version = "0.8.15" 207 + source = "registry+https://github.com/rust-lang/crates.io-index" 208 + checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" 209 + dependencies = [ 210 + "cfg-if", 211 + ] 212 + 213 + [[package]] 214 + name = "csv" 215 + version = "1.2.1" 216 + source = "registry+https://github.com/rust-lang/crates.io-index" 217 + checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad" 218 + dependencies = [ 219 + "csv-core", 220 + "itoa", 221 + "ryu", 222 + "serde", 223 + ] 224 + 225 + [[package]] 226 + name = "csv-core" 227 + version = "0.1.10" 228 + source = "registry+https://github.com/rust-lang/crates.io-index" 229 + checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90" 230 + dependencies = [ 231 + "memchr", 232 + ] 233 + 234 + [[package]] 235 + name = "cxx" 236 + version = "1.0.93" 237 + source = "registry+https://github.com/rust-lang/crates.io-index" 238 + checksum = "a9c00419335c41018365ddf7e4d5f1c12ee3659ddcf3e01974650ba1de73d038" 239 + dependencies = [ 240 + "cc", 241 + "cxxbridge-flags", 242 + "cxxbridge-macro", 243 + "link-cplusplus", 244 + ] 245 + 246 + [[package]] 247 + name = "cxx-build" 248 + version = "1.0.93" 249 + source = "registry+https://github.com/rust-lang/crates.io-index" 250 + checksum = "fb8307ad413a98fff033c8545ecf133e3257747b3bae935e7602aab8aa92d4ca" 251 + dependencies = [ 252 + "cc", 253 + "codespan-reporting", 254 + "once_cell", 255 + "proc-macro2", 256 + "quote", 257 + "scratch", 258 + "syn 2.0.4", 259 + ] 260 + 261 + [[package]] 262 + name = "cxxbridge-flags" 263 + version = "1.0.93" 264 + source = "registry+https://github.com/rust-lang/crates.io-index" 265 + checksum = "edc52e2eb08915cb12596d29d55f0b5384f00d697a646dbd269b6ecb0fbd9d31" 266 + 267 + [[package]] 268 + name = "cxxbridge-macro" 269 + version = "1.0.93" 270 + source = "registry+https://github.com/rust-lang/crates.io-index" 271 + checksum = "631569015d0d8d54e6c241733f944042623ab6df7bc3be7466874b05fcdb1c5f" 272 + dependencies = [ 273 + "proc-macro2", 274 + "quote", 275 + "syn 2.0.4", 276 + ] 277 + 278 + [[package]] 279 + name = "data-url" 280 + version = "0.1.1" 281 + source = "registry+https://github.com/rust-lang/crates.io-index" 282 + checksum = "3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193" 283 + dependencies = [ 284 + "matches", 285 + ] 286 + 287 + [[package]] 288 + name = "dirs" 289 + version = "4.0.0" 290 + source = "registry+https://github.com/rust-lang/crates.io-index" 291 + checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" 292 + dependencies = [ 293 + "dirs-sys", 294 + ] 295 + 296 + [[package]] 297 + name = "dirs-sys" 298 + version = "0.3.7" 299 + source = "registry+https://github.com/rust-lang/crates.io-index" 300 + checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" 301 + dependencies = [ 302 + "libc", 303 + "redox_users", 304 + "winapi", 305 + ] 306 + 307 + [[package]] 308 + name = "displaydoc" 309 + version = "0.2.3" 310 + source = "registry+https://github.com/rust-lang/crates.io-index" 311 + checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" 312 + dependencies = [ 313 + "proc-macro2", 314 + "quote", 315 + "syn 1.0.109", 316 + ] 317 + 318 + [[package]] 319 + name = "ecow" 320 + version = "0.1.0" 321 + source = "registry+https://github.com/rust-lang/crates.io-index" 322 + checksum = "e60e2840fbfc397c7972b11a6e6bd99a0248921cc1e31f293c5f6c5ac24831da" 323 + 324 + [[package]] 325 + name = "elsa" 326 + version = "1.8.0" 327 + source = "registry+https://github.com/rust-lang/crates.io-index" 328 + checksum = "f74077c3c3aedb99a2683919698285596662518ea13e5eedcf8bdd43b0d0453b" 329 + dependencies = [ 330 + "stable_deref_trait", 331 + ] 332 + 333 + [[package]] 334 + name = "fancy-regex" 335 + version = "0.7.1" 336 + source = "registry+https://github.com/rust-lang/crates.io-index" 337 + checksum = "9d6b8560a05112eb52f04b00e5d3790c0dd75d9d980eb8a122fb23b92a623ccf" 338 + dependencies = [ 339 + "bit-set", 340 + "regex", 341 + ] 342 + 343 + [[package]] 344 + name = "filetime" 345 + version = "0.2.20" 346 + source = "registry+https://github.com/rust-lang/crates.io-index" 347 + checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412" 348 + dependencies = [ 349 + "cfg-if", 350 + "libc", 351 + "redox_syscall", 352 + "windows-sys 0.45.0", 353 + ] 354 + 355 + [[package]] 356 + name = "flate2" 357 + version = "1.0.25" 358 + source = "registry+https://github.com/rust-lang/crates.io-index" 359 + checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" 360 + dependencies = [ 361 + "crc32fast", 362 + "miniz_oxide 0.6.2", 363 + ] 364 + 365 + [[package]] 366 + name = "float-cmp" 367 + version = "0.9.0" 368 + source = "registry+https://github.com/rust-lang/crates.io-index" 369 + checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" 370 + 371 + [[package]] 372 + name = "fnv" 373 + version = "1.0.7" 374 + source = "registry+https://github.com/rust-lang/crates.io-index" 375 + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 376 + 377 + [[package]] 378 + name = "form_urlencoded" 379 + version = "1.1.0" 380 + source = "registry+https://github.com/rust-lang/crates.io-index" 381 + checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" 382 + dependencies = [ 383 + "percent-encoding", 384 + ] 385 + 386 + [[package]] 387 + name = "fsevent-sys" 388 + version = "4.1.0" 389 + source = "registry+https://github.com/rust-lang/crates.io-index" 390 + checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" 391 + dependencies = [ 392 + "libc", 393 + ] 394 + 395 + [[package]] 396 + name = "getopts" 397 + version = "0.2.21" 398 + source = "registry+https://github.com/rust-lang/crates.io-index" 399 + checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5" 400 + dependencies = [ 401 + "unicode-width", 402 + ] 403 + 404 + [[package]] 405 + name = "getrandom" 406 + version = "0.2.8" 407 + source = "registry+https://github.com/rust-lang/crates.io-index" 408 + checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" 409 + dependencies = [ 410 + "cfg-if", 411 + "libc", 412 + "wasi", 413 + ] 414 + 415 + [[package]] 416 + name = "gif" 417 + version = "0.11.4" 418 + source = "registry+https://github.com/rust-lang/crates.io-index" 419 + checksum = "3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06" 420 + dependencies = [ 421 + "color_quant", 422 + "weezl", 423 + ] 424 + 425 + [[package]] 426 + name = "hashbrown" 427 + version = "0.12.3" 428 + source = "registry+https://github.com/rust-lang/crates.io-index" 429 + checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 430 + 431 + [[package]] 432 + name = "hayagriva" 433 + version = "0.1.1" 434 + source = "git+https://github.com/typst/hayagriva#754efb7e1034bcd4d4f1366e432197edbbfb9ed5" 435 + dependencies = [ 436 + "biblatex", 437 + "chrono", 438 + "isolang", 439 + "lazy_static", 440 + "linked-hash-map", 441 + "paste", 442 + "regex", 443 + "strum", 444 + "thiserror", 445 + "unic-langid", 446 + "unicode-segmentation", 447 + "url", 448 + "yaml-rust", 449 + ] 450 + 451 + [[package]] 452 + name = "heck" 453 + version = "0.4.1" 454 + source = "registry+https://github.com/rust-lang/crates.io-index" 455 + checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 456 + 457 + [[package]] 458 + name = "hypher" 459 + version = "0.1.1" 460 + source = "registry+https://github.com/rust-lang/crates.io-index" 461 + checksum = "f0cf92443ef10ecfc1b8b4b65a93e31d983f020a355699d83874b12a7c797ac3" 462 + 463 + [[package]] 464 + name = "iai" 465 + version = "0.1.1" 466 + source = "git+https://github.com/reknih/iai#3f0f92736408ebce6545808b98e0cb2aea89b7dd" 467 + dependencies = [ 468 + "cfg-if", 469 + ] 470 + 471 + [[package]] 472 + name = "iana-time-zone" 473 + version = "0.1.53" 474 + source = "registry+https://github.com/rust-lang/crates.io-index" 475 + checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765" 476 + dependencies = [ 477 + "android_system_properties", 478 + "core-foundation-sys", 479 + "iana-time-zone-haiku", 480 + "js-sys", 481 + "wasm-bindgen", 482 + "winapi", 483 + ] 484 + 485 + [[package]] 486 + name = "iana-time-zone-haiku" 487 + version = "0.1.1" 488 + source = "registry+https://github.com/rust-lang/crates.io-index" 489 + checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" 490 + dependencies = [ 491 + "cxx", 492 + "cxx-build", 493 + ] 494 + 495 + [[package]] 496 + name = "idna" 497 + version = "0.3.0" 498 + source = "registry+https://github.com/rust-lang/crates.io-index" 499 + checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" 500 + dependencies = [ 501 + "unicode-bidi", 502 + "unicode-normalization", 503 + ] 504 + 505 + [[package]] 506 + name = "if_chain" 507 + version = "1.0.2" 508 + source = "registry+https://github.com/rust-lang/crates.io-index" 509 + checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" 510 + 511 + [[package]] 512 + name = "image" 513 + version = "0.24.5" 514 + source = "registry+https://github.com/rust-lang/crates.io-index" 515 + checksum = "69b7ea949b537b0fd0af141fff8c77690f2ce96f4f41f042ccb6c69c6c965945" 516 + dependencies = [ 517 + "bytemuck", 518 + "byteorder", 519 + "color_quant", 520 + "gif", 521 + "jpeg-decoder 0.3.0", 522 + "num-rational", 523 + "num-traits", 524 + "png", 525 + ] 526 + 527 + [[package]] 528 + name = "include_dir" 529 + version = "0.7.3" 530 + source = "registry+https://github.com/rust-lang/crates.io-index" 531 + checksum = "18762faeff7122e89e0857b02f7ce6fcc0d101d5e9ad2ad7846cc01d61b7f19e" 532 + dependencies = [ 533 + "include_dir_macros", 534 + ] 535 + 536 + [[package]] 537 + name = "include_dir_macros" 538 + version = "0.7.3" 539 + source = "registry+https://github.com/rust-lang/crates.io-index" 540 + checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f" 541 + dependencies = [ 542 + "proc-macro2", 543 + "quote", 544 + ] 545 + 546 + [[package]] 547 + name = "indexmap" 548 + version = "1.9.2" 549 + source = "registry+https://github.com/rust-lang/crates.io-index" 550 + checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" 551 + dependencies = [ 552 + "autocfg", 553 + "hashbrown", 554 + ] 555 + 556 + [[package]] 557 + name = "inotify" 558 + version = "0.9.6" 559 + source = "registry+https://github.com/rust-lang/crates.io-index" 560 + checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" 561 + dependencies = [ 562 + "bitflags", 563 + "inotify-sys", 564 + "libc", 565 + ] 566 + 567 + [[package]] 568 + name = "inotify-sys" 569 + version = "0.1.5" 570 + source = "registry+https://github.com/rust-lang/crates.io-index" 571 + checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" 572 + dependencies = [ 573 + "libc", 574 + ] 575 + 576 + [[package]] 577 + name = "isolang" 578 + version = "2.2.0" 579 + source = "registry+https://github.com/rust-lang/crates.io-index" 580 + checksum = "b64fd6448ee8a45ce6e4365c58e4fa7d8740cba2ed70db3e9ab4879ebd93eaaa" 581 + dependencies = [ 582 + "phf", 583 + ] 584 + 585 + [[package]] 586 + name = "itoa" 587 + version = "1.0.6" 588 + source = "registry+https://github.com/rust-lang/crates.io-index" 589 + checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" 590 + 591 + [[package]] 592 + name = "jpeg-decoder" 593 + version = "0.2.6" 594 + source = "registry+https://github.com/rust-lang/crates.io-index" 595 + checksum = "9478aa10f73e7528198d75109c8be5cd7d15fb530238040148d5f9a22d4c5b3b" 596 + 597 + [[package]] 598 + name = "jpeg-decoder" 599 + version = "0.3.0" 600 + source = "registry+https://github.com/rust-lang/crates.io-index" 601 + checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e" 602 + 603 + [[package]] 604 + name = "js-sys" 605 + version = "0.3.61" 606 + source = "registry+https://github.com/rust-lang/crates.io-index" 607 + checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" 608 + dependencies = [ 609 + "wasm-bindgen", 610 + ] 611 + 612 + [[package]] 613 + name = "kqueue" 614 + version = "1.0.7" 615 + source = "registry+https://github.com/rust-lang/crates.io-index" 616 + checksum = "2c8fc60ba15bf51257aa9807a48a61013db043fcf3a78cb0d916e8e396dcad98" 617 + dependencies = [ 618 + "kqueue-sys", 619 + "libc", 620 + ] 621 + 622 + [[package]] 623 + name = "kqueue-sys" 624 + version = "1.0.3" 625 + source = "registry+https://github.com/rust-lang/crates.io-index" 626 + checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587" 627 + dependencies = [ 628 + "bitflags", 629 + "libc", 630 + ] 631 + 632 + [[package]] 633 + name = "kurbo" 634 + version = "0.8.3" 635 + source = "registry+https://github.com/rust-lang/crates.io-index" 636 + checksum = "7a53776d271cfb873b17c618af0298445c88afc52837f3e948fa3fafd131f449" 637 + dependencies = [ 638 + "arrayvec 0.7.2", 639 + ] 640 + 641 + [[package]] 642 + name = "lazy_static" 643 + version = "1.4.0" 644 + source = "registry+https://github.com/rust-lang/crates.io-index" 645 + checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 646 + 647 + [[package]] 648 + name = "libc" 649 + version = "0.2.140" 650 + source = "registry+https://github.com/rust-lang/crates.io-index" 651 + checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c" 652 + 653 + [[package]] 654 + name = "link-cplusplus" 655 + version = "1.0.8" 656 + source = "registry+https://github.com/rust-lang/crates.io-index" 657 + checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" 658 + dependencies = [ 659 + "cc", 660 + ] 661 + 662 + [[package]] 663 + name = "linked-hash-map" 664 + version = "0.5.6" 665 + source = "registry+https://github.com/rust-lang/crates.io-index" 666 + checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" 667 + 668 + [[package]] 669 + name = "lipsum" 670 + version = "0.8.2" 671 + source = "git+https://github.com/reknih/lipsum#025427353ab32268daa3d96feda380a96db529c5" 672 + dependencies = [ 673 + "rand", 674 + "rand_chacha", 675 + ] 676 + 677 + [[package]] 678 + name = "log" 679 + version = "0.4.17" 680 + source = "registry+https://github.com/rust-lang/crates.io-index" 681 + checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" 682 + dependencies = [ 683 + "cfg-if", 684 + ] 685 + 686 + [[package]] 687 + name = "matches" 688 + version = "0.1.10" 689 + source = "registry+https://github.com/rust-lang/crates.io-index" 690 + checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" 691 + 692 + [[package]] 693 + name = "memchr" 694 + version = "2.5.0" 695 + source = "registry+https://github.com/rust-lang/crates.io-index" 696 + checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" 697 + 698 + [[package]] 699 + name = "memmap2" 700 + version = "0.5.10" 701 + source = "registry+https://github.com/rust-lang/crates.io-index" 702 + checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" 703 + dependencies = [ 704 + "libc", 705 + ] 706 + 707 + [[package]] 708 + name = "miniz_oxide" 709 + version = "0.5.4" 710 + source = "registry+https://github.com/rust-lang/crates.io-index" 711 + checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34" 712 + dependencies = [ 713 + "adler", 714 + ] 715 + 716 + [[package]] 717 + name = "miniz_oxide" 718 + version = "0.6.2" 719 + source = "registry+https://github.com/rust-lang/crates.io-index" 720 + checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" 721 + dependencies = [ 722 + "adler", 723 + ] 724 + 725 + [[package]] 726 + name = "mio" 727 + version = "0.8.6" 728 + source = "registry+https://github.com/rust-lang/crates.io-index" 729 + checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" 730 + dependencies = [ 731 + "libc", 732 + "log", 733 + "wasi", 734 + "windows-sys 0.45.0", 735 + ] 736 + 737 + [[package]] 738 + name = "notify" 739 + version = "5.1.0" 740 + source = "registry+https://github.com/rust-lang/crates.io-index" 741 + checksum = "58ea850aa68a06e48fdb069c0ec44d0d64c8dbffa49bf3b6f7f0a901fdea1ba9" 742 + dependencies = [ 743 + "bitflags", 744 + "crossbeam-channel", 745 + "filetime", 746 + "fsevent-sys", 747 + "inotify", 748 + "kqueue", 749 + "libc", 750 + "mio", 751 + "walkdir", 752 + "windows-sys 0.42.0", 753 + ] 754 + 755 + [[package]] 756 + name = "num-integer" 757 + version = "0.1.45" 758 + source = "registry+https://github.com/rust-lang/crates.io-index" 759 + checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" 760 + dependencies = [ 761 + "autocfg", 762 + "num-traits", 763 + ] 764 + 765 + [[package]] 766 + name = "num-rational" 767 + version = "0.4.1" 768 + source = "registry+https://github.com/rust-lang/crates.io-index" 769 + checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" 770 + dependencies = [ 771 + "autocfg", 772 + "num-integer", 773 + "num-traits", 774 + ] 775 + 776 + [[package]] 777 + name = "num-traits" 778 + version = "0.2.15" 779 + source = "registry+https://github.com/rust-lang/crates.io-index" 780 + checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" 781 + dependencies = [ 782 + "autocfg", 783 + ] 784 + 785 + [[package]] 786 + name = "numerals" 787 + version = "0.1.4" 788 + source = "registry+https://github.com/rust-lang/crates.io-index" 789 + checksum = "e25be21376a772d15f97ae789845340a9651d3c4246ff5ebb6a2b35f9c37bd31" 790 + 791 + [[package]] 792 + name = "once_cell" 793 + version = "1.17.1" 794 + source = "registry+https://github.com/rust-lang/crates.io-index" 795 + checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" 796 + 797 + [[package]] 798 + name = "paste" 799 + version = "1.0.12" 800 + source = "registry+https://github.com/rust-lang/crates.io-index" 801 + checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" 802 + 803 + [[package]] 804 + name = "pdf-writer" 805 + version = "0.6.0" 806 + source = "registry+https://github.com/rust-lang/crates.io-index" 807 + checksum = "249f9b33a3192626f2cd9f4b0cd66c1ec32d65968d58cf4d8239977feddddead" 808 + dependencies = [ 809 + "bitflags", 810 + "itoa", 811 + "ryu", 812 + ] 813 + 814 + [[package]] 815 + name = "percent-encoding" 816 + version = "2.2.0" 817 + source = "registry+https://github.com/rust-lang/crates.io-index" 818 + checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" 819 + 820 + [[package]] 821 + name = "phf" 822 + version = "0.10.1" 823 + source = "registry+https://github.com/rust-lang/crates.io-index" 824 + checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" 825 + dependencies = [ 826 + "phf_shared", 827 + ] 828 + 829 + [[package]] 830 + name = "phf_shared" 831 + version = "0.10.0" 832 + source = "registry+https://github.com/rust-lang/crates.io-index" 833 + checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" 834 + dependencies = [ 835 + "siphasher", 836 + ] 837 + 838 + [[package]] 839 + name = "pico-args" 840 + version = "0.4.2" 841 + source = "registry+https://github.com/rust-lang/crates.io-index" 842 + checksum = "db8bcd96cb740d03149cbad5518db9fd87126a10ab519c011893b1754134c468" 843 + 844 + [[package]] 845 + name = "pixglyph" 846 + version = "0.1.0" 847 + source = "git+https://github.com/typst/pixglyph#e3ff0272d6723cdada91a00b0c99cda0e5adb56d" 848 + dependencies = [ 849 + "ttf-parser 0.18.1", 850 + ] 851 + 852 + [[package]] 853 + name = "png" 854 + version = "0.17.7" 855 + source = "registry+https://github.com/rust-lang/crates.io-index" 856 + checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638" 857 + dependencies = [ 858 + "bitflags", 859 + "crc32fast", 860 + "flate2", 861 + "miniz_oxide 0.6.2", 862 + ] 863 + 864 + [[package]] 865 + name = "ppv-lite86" 866 + version = "0.2.17" 867 + source = "registry+https://github.com/rust-lang/crates.io-index" 868 + checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 869 + 870 + [[package]] 871 + name = "proc-macro2" 872 + version = "1.0.52" 873 + source = "registry+https://github.com/rust-lang/crates.io-index" 874 + checksum = "1d0e1ae9e836cc3beddd63db0df682593d7e2d3d891ae8c9083d2113e1744224" 875 + dependencies = [ 876 + "unicode-ident", 877 + ] 878 + 879 + [[package]] 880 + name = "pulldown-cmark" 881 + version = "0.9.2" 882 + source = "registry+https://github.com/rust-lang/crates.io-index" 883 + checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63" 884 + dependencies = [ 885 + "bitflags", 886 + "getopts", 887 + "memchr", 888 + "unicase", 889 + ] 890 + 891 + [[package]] 892 + name = "quote" 893 + version = "1.0.26" 894 + source = "registry+https://github.com/rust-lang/crates.io-index" 895 + checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" 896 + dependencies = [ 897 + "proc-macro2", 898 + ] 899 + 900 + [[package]] 901 + name = "rand" 902 + version = "0.8.5" 903 + source = "registry+https://github.com/rust-lang/crates.io-index" 904 + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 905 + dependencies = [ 906 + "rand_core", 907 + ] 908 + 909 + [[package]] 910 + name = "rand_chacha" 911 + version = "0.3.1" 912 + source = "registry+https://github.com/rust-lang/crates.io-index" 913 + checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 914 + dependencies = [ 915 + "ppv-lite86", 916 + "rand_core", 917 + ] 918 + 919 + [[package]] 920 + name = "rand_core" 921 + version = "0.6.4" 922 + source = "registry+https://github.com/rust-lang/crates.io-index" 923 + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 924 + 925 + [[package]] 926 + name = "rctree" 927 + version = "0.4.0" 928 + source = "registry+https://github.com/rust-lang/crates.io-index" 929 + checksum = "9ae028b272a6e99d9f8260ceefa3caa09300a8d6c8d2b2001316474bc52122e9" 930 + 931 + [[package]] 932 + name = "redox_syscall" 933 + version = "0.2.16" 934 + source = "registry+https://github.com/rust-lang/crates.io-index" 935 + checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" 936 + dependencies = [ 937 + "bitflags", 938 + ] 939 + 940 + [[package]] 941 + name = "redox_users" 942 + version = "0.4.3" 943 + source = "registry+https://github.com/rust-lang/crates.io-index" 944 + checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" 945 + dependencies = [ 946 + "getrandom", 947 + "redox_syscall", 948 + "thiserror", 949 + ] 950 + 951 + [[package]] 952 + name = "regex" 953 + version = "1.7.1" 954 + source = "registry+https://github.com/rust-lang/crates.io-index" 955 + checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" 956 + dependencies = [ 957 + "aho-corasick", 958 + "memchr", 959 + "regex-syntax", 960 + ] 961 + 962 + [[package]] 963 + name = "regex-syntax" 964 + version = "0.6.28" 965 + source = "registry+https://github.com/rust-lang/crates.io-index" 966 + checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" 967 + 968 + [[package]] 969 + name = "resvg" 970 + version = "0.22.0" 971 + source = "registry+https://github.com/rust-lang/crates.io-index" 972 + checksum = "2e702d1e8e00a3a0717b96244cba840f34f542d8f23097c8903266c4e2975658" 973 + dependencies = [ 974 + "gif", 975 + "jpeg-decoder 0.2.6", 976 + "log", 977 + "pico-args", 978 + "png", 979 + "rgb", 980 + "svgtypes", 981 + "tiny-skia", 982 + "usvg", 983 + ] 984 + 985 + [[package]] 986 + name = "rgb" 987 + version = "0.8.36" 988 + source = "registry+https://github.com/rust-lang/crates.io-index" 989 + checksum = "20ec2d3e3fc7a92ced357df9cebd5a10b6fb2aa1ee797bf7e9ce2f17dffc8f59" 990 + dependencies = [ 991 + "bytemuck", 992 + ] 993 + 994 + [[package]] 995 + name = "roxmltree" 996 + version = "0.14.1" 997 + source = "registry+https://github.com/rust-lang/crates.io-index" 998 + checksum = "921904a62e410e37e215c40381b7117f830d9d89ba60ab5236170541dd25646b" 999 + dependencies = [ 1000 + "xmlparser", 1001 + ] 1002 + 1003 + [[package]] 1004 + name = "rustversion" 1005 + version = "1.0.12" 1006 + source = "registry+https://github.com/rust-lang/crates.io-index" 1007 + checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" 1008 + 1009 + [[package]] 1010 + name = "rustybuzz" 1011 + version = "0.5.1" 1012 + source = "registry+https://github.com/rust-lang/crates.io-index" 1013 + checksum = "a617c811f5c9a7060fe511d35d13bf5b9f0463ce36d63ce666d05779df2b4eba" 1014 + dependencies = [ 1015 + "bitflags", 1016 + "bytemuck", 1017 + "smallvec", 1018 + "ttf-parser 0.15.2", 1019 + "unicode-bidi-mirroring", 1020 + "unicode-ccc", 1021 + "unicode-general-category", 1022 + "unicode-script", 1023 + ] 1024 + 1025 + [[package]] 1026 + name = "ryu" 1027 + version = "1.0.13" 1028 + source = "registry+https://github.com/rust-lang/crates.io-index" 1029 + checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" 1030 + 1031 + [[package]] 1032 + name = "safe_arch" 1033 + version = "0.5.2" 1034 + source = "registry+https://github.com/rust-lang/crates.io-index" 1035 + checksum = "c1ff3d6d9696af502cc3110dacce942840fb06ff4514cad92236ecc455f2ce05" 1036 + dependencies = [ 1037 + "bytemuck", 1038 + ] 1039 + 1040 + [[package]] 1041 + name = "same-file" 1042 + version = "1.0.6" 1043 + source = "registry+https://github.com/rust-lang/crates.io-index" 1044 + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 1045 + dependencies = [ 1046 + "winapi-util", 1047 + ] 1048 + 1049 + [[package]] 1050 + name = "scratch" 1051 + version = "1.0.5" 1052 + source = "registry+https://github.com/rust-lang/crates.io-index" 1053 + checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" 1054 + 1055 + [[package]] 1056 + name = "serde" 1057 + version = "1.0.158" 1058 + source = "registry+https://github.com/rust-lang/crates.io-index" 1059 + checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9" 1060 + dependencies = [ 1061 + "serde_derive", 1062 + ] 1063 + 1064 + [[package]] 1065 + name = "serde_derive" 1066 + version = "1.0.158" 1067 + source = "registry+https://github.com/rust-lang/crates.io-index" 1068 + checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad" 1069 + dependencies = [ 1070 + "proc-macro2", 1071 + "quote", 1072 + "syn 2.0.4", 1073 + ] 1074 + 1075 + [[package]] 1076 + name = "serde_json" 1077 + version = "1.0.94" 1078 + source = "registry+https://github.com/rust-lang/crates.io-index" 1079 + checksum = "1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea" 1080 + dependencies = [ 1081 + "itoa", 1082 + "ryu", 1083 + "serde", 1084 + ] 1085 + 1086 + [[package]] 1087 + name = "serde_yaml" 1088 + version = "0.8.26" 1089 + source = "registry+https://github.com/rust-lang/crates.io-index" 1090 + checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b" 1091 + dependencies = [ 1092 + "indexmap", 1093 + "ryu", 1094 + "serde", 1095 + "yaml-rust", 1096 + ] 1097 + 1098 + [[package]] 1099 + name = "simplecss" 1100 + version = "0.2.1" 1101 + source = "registry+https://github.com/rust-lang/crates.io-index" 1102 + checksum = "a11be7c62927d9427e9f40f3444d5499d868648e2edbc4e2116de69e7ec0e89d" 1103 + dependencies = [ 1104 + "log", 1105 + ] 1106 + 1107 + [[package]] 1108 + name = "siphasher" 1109 + version = "0.3.10" 1110 + source = "registry+https://github.com/rust-lang/crates.io-index" 1111 + checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de" 1112 + 1113 + [[package]] 1114 + name = "smallvec" 1115 + version = "1.10.0" 1116 + source = "registry+https://github.com/rust-lang/crates.io-index" 1117 + checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" 1118 + 1119 + [[package]] 1120 + name = "stable_deref_trait" 1121 + version = "1.2.0" 1122 + source = "registry+https://github.com/rust-lang/crates.io-index" 1123 + checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1124 + 1125 + [[package]] 1126 + name = "strum" 1127 + version = "0.24.1" 1128 + source = "registry+https://github.com/rust-lang/crates.io-index" 1129 + checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" 1130 + dependencies = [ 1131 + "strum_macros", 1132 + ] 1133 + 1134 + [[package]] 1135 + name = "strum_macros" 1136 + version = "0.24.3" 1137 + source = "registry+https://github.com/rust-lang/crates.io-index" 1138 + checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" 1139 + dependencies = [ 1140 + "heck", 1141 + "proc-macro2", 1142 + "quote", 1143 + "rustversion", 1144 + "syn 1.0.109", 1145 + ] 1146 + 1147 + [[package]] 1148 + name = "subsetter" 1149 + version = "0.1.1" 1150 + source = "registry+https://github.com/rust-lang/crates.io-index" 1151 + checksum = "09eab8a83bff89ba2200bd4c59be45c7c787f988431b936099a5a266c957f2f9" 1152 + 1153 + [[package]] 1154 + name = "svg2pdf" 1155 + version = "0.4.1" 1156 + source = "registry+https://github.com/rust-lang/crates.io-index" 1157 + checksum = "cd5736713f3850a24060c3cdd7ac9efdc0c5138779386c6c8975b46d54d2d3d5" 1158 + dependencies = [ 1159 + "image", 1160 + "miniz_oxide 0.5.4", 1161 + "pdf-writer", 1162 + "usvg", 1163 + ] 1164 + 1165 + [[package]] 1166 + name = "svgtypes" 1167 + version = "0.8.2" 1168 + source = "registry+https://github.com/rust-lang/crates.io-index" 1169 + checksum = "22975e8a2bac6a76bb54f898a6b18764633b00e780330f0b689f65afb3975564" 1170 + dependencies = [ 1171 + "siphasher", 1172 + ] 1173 + 1174 + [[package]] 1175 + name = "syn" 1176 + version = "1.0.109" 1177 + source = "registry+https://github.com/rust-lang/crates.io-index" 1178 + checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 1179 + dependencies = [ 1180 + "proc-macro2", 1181 + "quote", 1182 + "unicode-ident", 1183 + ] 1184 + 1185 + [[package]] 1186 + name = "syn" 1187 + version = "2.0.4" 1188 + source = "registry+https://github.com/rust-lang/crates.io-index" 1189 + checksum = "2c622ae390c9302e214c31013517c2061ecb2699935882c60a9b37f82f8625ae" 1190 + dependencies = [ 1191 + "proc-macro2", 1192 + "quote", 1193 + "unicode-ident", 1194 + ] 1195 + 1196 + [[package]] 1197 + name = "syntect" 1198 + version = "5.0.0" 1199 + source = "registry+https://github.com/rust-lang/crates.io-index" 1200 + checksum = "c6c454c27d9d7d9a84c7803aaa3c50cd088d2906fe3c6e42da3209aa623576a8" 1201 + dependencies = [ 1202 + "bincode", 1203 + "bitflags", 1204 + "fancy-regex", 1205 + "flate2", 1206 + "fnv", 1207 + "lazy_static", 1208 + "once_cell", 1209 + "regex-syntax", 1210 + "serde", 1211 + "serde_derive", 1212 + "serde_json", 1213 + "thiserror", 1214 + "walkdir", 1215 + ] 1216 + 1217 + [[package]] 1218 + name = "termcolor" 1219 + version = "1.2.0" 1220 + source = "registry+https://github.com/rust-lang/crates.io-index" 1221 + checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" 1222 + dependencies = [ 1223 + "winapi-util", 1224 + ] 1225 + 1226 + [[package]] 1227 + name = "thin-vec" 1228 + version = "0.2.12" 1229 + source = "registry+https://github.com/rust-lang/crates.io-index" 1230 + checksum = "aac81b6fd6beb5884b0cf3321b8117e6e5d47ecb6fc89f414cfdcca8b2fe2dd8" 1231 + 1232 + [[package]] 1233 + name = "thiserror" 1234 + version = "1.0.40" 1235 + source = "registry+https://github.com/rust-lang/crates.io-index" 1236 + checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" 1237 + dependencies = [ 1238 + "thiserror-impl", 1239 + ] 1240 + 1241 + [[package]] 1242 + name = "thiserror-impl" 1243 + version = "1.0.40" 1244 + source = "registry+https://github.com/rust-lang/crates.io-index" 1245 + checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" 1246 + dependencies = [ 1247 + "proc-macro2", 1248 + "quote", 1249 + "syn 2.0.4", 1250 + ] 1251 + 1252 + [[package]] 1253 + name = "tiny-skia" 1254 + version = "0.6.6" 1255 + source = "registry+https://github.com/rust-lang/crates.io-index" 1256 + checksum = "d049bfef0eaa2521e75d9ffb5ce86ad54480932ae19b85f78bec6f52c4d30d78" 1257 + dependencies = [ 1258 + "arrayref", 1259 + "arrayvec 0.5.2", 1260 + "bytemuck", 1261 + "cfg-if", 1262 + "png", 1263 + "safe_arch", 1264 + ] 1265 + 1266 + [[package]] 1267 + name = "tinystr" 1268 + version = "0.7.1" 1269 + source = "registry+https://github.com/rust-lang/crates.io-index" 1270 + checksum = "7ac3f5b6856e931e15e07b478e98c8045239829a65f9156d4fa7e7788197a5ef" 1271 + dependencies = [ 1272 + "displaydoc", 1273 + ] 1274 + 1275 + [[package]] 1276 + name = "tinyvec" 1277 + version = "1.6.0" 1278 + source = "registry+https://github.com/rust-lang/crates.io-index" 1279 + checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 1280 + dependencies = [ 1281 + "tinyvec_macros", 1282 + ] 1283 + 1284 + [[package]] 1285 + name = "tinyvec_macros" 1286 + version = "0.1.1" 1287 + source = "registry+https://github.com/rust-lang/crates.io-index" 1288 + checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 1289 + 1290 + [[package]] 1291 + name = "ttf-parser" 1292 + version = "0.15.2" 1293 + source = "registry+https://github.com/rust-lang/crates.io-index" 1294 + checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd" 1295 + 1296 + [[package]] 1297 + name = "ttf-parser" 1298 + version = "0.17.1" 1299 + source = "registry+https://github.com/rust-lang/crates.io-index" 1300 + checksum = "375812fa44dab6df41c195cd2f7fecb488f6c09fbaafb62807488cefab642bff" 1301 + 1302 + [[package]] 1303 + name = "ttf-parser" 1304 + version = "0.18.1" 1305 + source = "registry+https://github.com/rust-lang/crates.io-index" 1306 + checksum = "0609f771ad9c6155384897e1df4d948e692667cc0588548b68eb44d052b27633" 1307 + 1308 + [[package]] 1309 + name = "typed-arena" 1310 + version = "2.0.2" 1311 + source = "registry+https://github.com/rust-lang/crates.io-index" 1312 + checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" 1313 + 1314 + [[package]] 1315 + name = "typst" 1316 + version = "0.0.0" 1317 + dependencies = [ 1318 + "bitflags", 1319 + "bytemuck", 1320 + "comemo", 1321 + "ecow", 1322 + "flate2", 1323 + "if_chain", 1324 + "image", 1325 + "log", 1326 + "miniz_oxide 0.5.4", 1327 + "once_cell", 1328 + "pdf-writer", 1329 + "pixglyph", 1330 + "regex", 1331 + "resvg", 1332 + "roxmltree", 1333 + "rustybuzz", 1334 + "serde", 1335 + "siphasher", 1336 + "subsetter", 1337 + "svg2pdf", 1338 + "thin-vec", 1339 + "tiny-skia", 1340 + "ttf-parser 0.18.1", 1341 + "typst-macros", 1342 + "unicode-math-class", 1343 + "unicode-segmentation", 1344 + "unicode-xid", 1345 + "unscanny", 1346 + "usvg", 1347 + "xmp-writer", 1348 + ] 1349 + 1350 + [[package]] 1351 + name = "typst-cli" 1352 + version = "0.0.0" 1353 + dependencies = [ 1354 + "chrono", 1355 + "codespan-reporting", 1356 + "comemo", 1357 + "dirs", 1358 + "elsa", 1359 + "memmap2", 1360 + "notify", 1361 + "once_cell", 1362 + "pico-args", 1363 + "same-file", 1364 + "siphasher", 1365 + "typst", 1366 + "typst-library", 1367 + "walkdir", 1368 + ] 1369 + 1370 + [[package]] 1371 + name = "typst-docs" 1372 + version = "0.0.0" 1373 + dependencies = [ 1374 + "comemo", 1375 + "heck", 1376 + "include_dir", 1377 + "once_cell", 1378 + "pulldown-cmark", 1379 + "serde", 1380 + "serde_yaml", 1381 + "typst", 1382 + "typst-library", 1383 + "unicode_names2", 1384 + "unscanny", 1385 + "yaml-front-matter", 1386 + ] 1387 + 1388 + [[package]] 1389 + name = "typst-library" 1390 + version = "0.0.0" 1391 + dependencies = [ 1392 + "comemo", 1393 + "csv", 1394 + "ecow", 1395 + "hayagriva", 1396 + "hypher", 1397 + "kurbo", 1398 + "lipsum", 1399 + "log", 1400 + "once_cell", 1401 + "roxmltree", 1402 + "rustybuzz", 1403 + "serde_json", 1404 + "smallvec", 1405 + "syntect", 1406 + "ttf-parser 0.18.1", 1407 + "typed-arena", 1408 + "typst", 1409 + "unicode-bidi", 1410 + "unicode-math-class", 1411 + "unicode-script", 1412 + "unicode-segmentation", 1413 + "xi-unicode", 1414 + ] 1415 + 1416 + [[package]] 1417 + name = "typst-macros" 1418 + version = "0.0.0" 1419 + dependencies = [ 1420 + "heck", 1421 + "proc-macro2", 1422 + "quote", 1423 + "syn 1.0.109", 1424 + "unscanny", 1425 + ] 1426 + 1427 + [[package]] 1428 + name = "typst-tests" 1429 + version = "0.0.0" 1430 + dependencies = [ 1431 + "comemo", 1432 + "elsa", 1433 + "iai", 1434 + "once_cell", 1435 + "tiny-skia", 1436 + "ttf-parser 0.17.1", 1437 + "typst", 1438 + "typst-library", 1439 + "unscanny", 1440 + "walkdir", 1441 + ] 1442 + 1443 + [[package]] 1444 + name = "unic-langid" 1445 + version = "0.9.1" 1446 + source = "registry+https://github.com/rust-lang/crates.io-index" 1447 + checksum = "398f9ad7239db44fd0f80fe068d12ff22d78354080332a5077dc6f52f14dcf2f" 1448 + dependencies = [ 1449 + "unic-langid-impl", 1450 + ] 1451 + 1452 + [[package]] 1453 + name = "unic-langid-impl" 1454 + version = "0.9.1" 1455 + source = "registry+https://github.com/rust-lang/crates.io-index" 1456 + checksum = "e35bfd2f2b8796545b55d7d3fd3e89a0613f68a0d1c8bc28cb7ff96b411a35ff" 1457 + dependencies = [ 1458 + "tinystr", 1459 + ] 1460 + 1461 + [[package]] 1462 + name = "unicase" 1463 + version = "2.6.0" 1464 + source = "registry+https://github.com/rust-lang/crates.io-index" 1465 + checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" 1466 + dependencies = [ 1467 + "version_check", 1468 + ] 1469 + 1470 + [[package]] 1471 + name = "unicode-bidi" 1472 + version = "0.3.13" 1473 + source = "registry+https://github.com/rust-lang/crates.io-index" 1474 + checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" 1475 + 1476 + [[package]] 1477 + name = "unicode-bidi-mirroring" 1478 + version = "0.1.0" 1479 + source = "registry+https://github.com/rust-lang/crates.io-index" 1480 + checksum = "56d12260fb92d52f9008be7e4bca09f584780eb2266dc8fecc6a192bec561694" 1481 + 1482 + [[package]] 1483 + name = "unicode-ccc" 1484 + version = "0.1.2" 1485 + source = "registry+https://github.com/rust-lang/crates.io-index" 1486 + checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1" 1487 + 1488 + [[package]] 1489 + name = "unicode-general-category" 1490 + version = "0.4.0" 1491 + source = "registry+https://github.com/rust-lang/crates.io-index" 1492 + checksum = "07547e3ee45e28326cc23faac56d44f58f16ab23e413db526debce3b0bfd2742" 1493 + 1494 + [[package]] 1495 + name = "unicode-ident" 1496 + version = "1.0.8" 1497 + source = "registry+https://github.com/rust-lang/crates.io-index" 1498 + checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" 1499 + 1500 + [[package]] 1501 + name = "unicode-math-class" 1502 + version = "0.1.0" 1503 + source = "git+https://github.com/typst/unicode-math-class#a7ac7dd75cd79ab2e0bdb629036cb913371608d2" 1504 + 1505 + [[package]] 1506 + name = "unicode-normalization" 1507 + version = "0.1.22" 1508 + source = "registry+https://github.com/rust-lang/crates.io-index" 1509 + checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" 1510 + dependencies = [ 1511 + "tinyvec", 1512 + ] 1513 + 1514 + [[package]] 1515 + name = "unicode-script" 1516 + version = "0.5.5" 1517 + source = "registry+https://github.com/rust-lang/crates.io-index" 1518 + checksum = "7d817255e1bed6dfd4ca47258685d14d2bdcfbc64fdc9e3819bd5848057b8ecc" 1519 + 1520 + [[package]] 1521 + name = "unicode-segmentation" 1522 + version = "1.10.1" 1523 + source = "registry+https://github.com/rust-lang/crates.io-index" 1524 + checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" 1525 + 1526 + [[package]] 1527 + name = "unicode-width" 1528 + version = "0.1.10" 1529 + source = "registry+https://github.com/rust-lang/crates.io-index" 1530 + checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" 1531 + 1532 + [[package]] 1533 + name = "unicode-xid" 1534 + version = "0.2.4" 1535 + source = "registry+https://github.com/rust-lang/crates.io-index" 1536 + checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" 1537 + 1538 + [[package]] 1539 + name = "unicode_names2" 1540 + version = "0.6.0" 1541 + source = "registry+https://github.com/rust-lang/crates.io-index" 1542 + checksum = "446c96c6dd42604779487f0a981060717156648c1706aa1f464677f03c6cc059" 1543 + 1544 + [[package]] 1545 + name = "unscanny" 1546 + version = "0.1.0" 1547 + source = "registry+https://github.com/rust-lang/crates.io-index" 1548 + checksum = "e9df2af067a7953e9c3831320f35c1cc0600c30d44d9f7a12b01db1cd88d6b47" 1549 + 1550 + [[package]] 1551 + name = "url" 1552 + version = "2.3.1" 1553 + source = "registry+https://github.com/rust-lang/crates.io-index" 1554 + checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" 1555 + dependencies = [ 1556 + "form_urlencoded", 1557 + "idna", 1558 + "percent-encoding", 1559 + ] 1560 + 1561 + [[package]] 1562 + name = "usvg" 1563 + version = "0.22.0" 1564 + source = "registry+https://github.com/rust-lang/crates.io-index" 1565 + checksum = "a261d60a7215fa339482047cc3dafd4e22e2bf34396aaebef2b707355bbb39c0" 1566 + dependencies = [ 1567 + "base64", 1568 + "data-url", 1569 + "flate2", 1570 + "float-cmp", 1571 + "kurbo", 1572 + "log", 1573 + "pico-args", 1574 + "rctree", 1575 + "roxmltree", 1576 + "simplecss", 1577 + "siphasher", 1578 + "svgtypes", 1579 + ] 1580 + 1581 + [[package]] 1582 + name = "version_check" 1583 + version = "0.9.4" 1584 + source = "registry+https://github.com/rust-lang/crates.io-index" 1585 + checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 1586 + 1587 + [[package]] 1588 + name = "walkdir" 1589 + version = "2.3.3" 1590 + source = "registry+https://github.com/rust-lang/crates.io-index" 1591 + checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" 1592 + dependencies = [ 1593 + "same-file", 1594 + "winapi-util", 1595 + ] 1596 + 1597 + [[package]] 1598 + name = "wasi" 1599 + version = "0.11.0+wasi-snapshot-preview1" 1600 + source = "registry+https://github.com/rust-lang/crates.io-index" 1601 + checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 1602 + 1603 + [[package]] 1604 + name = "wasm-bindgen" 1605 + version = "0.2.84" 1606 + source = "registry+https://github.com/rust-lang/crates.io-index" 1607 + checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" 1608 + dependencies = [ 1609 + "cfg-if", 1610 + "wasm-bindgen-macro", 1611 + ] 1612 + 1613 + [[package]] 1614 + name = "wasm-bindgen-backend" 1615 + version = "0.2.84" 1616 + source = "registry+https://github.com/rust-lang/crates.io-index" 1617 + checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" 1618 + dependencies = [ 1619 + "bumpalo", 1620 + "log", 1621 + "once_cell", 1622 + "proc-macro2", 1623 + "quote", 1624 + "syn 1.0.109", 1625 + "wasm-bindgen-shared", 1626 + ] 1627 + 1628 + [[package]] 1629 + name = "wasm-bindgen-macro" 1630 + version = "0.2.84" 1631 + source = "registry+https://github.com/rust-lang/crates.io-index" 1632 + checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" 1633 + dependencies = [ 1634 + "quote", 1635 + "wasm-bindgen-macro-support", 1636 + ] 1637 + 1638 + [[package]] 1639 + name = "wasm-bindgen-macro-support" 1640 + version = "0.2.84" 1641 + source = "registry+https://github.com/rust-lang/crates.io-index" 1642 + checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" 1643 + dependencies = [ 1644 + "proc-macro2", 1645 + "quote", 1646 + "syn 1.0.109", 1647 + "wasm-bindgen-backend", 1648 + "wasm-bindgen-shared", 1649 + ] 1650 + 1651 + [[package]] 1652 + name = "wasm-bindgen-shared" 1653 + version = "0.2.84" 1654 + source = "registry+https://github.com/rust-lang/crates.io-index" 1655 + checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" 1656 + 1657 + [[package]] 1658 + name = "weezl" 1659 + version = "0.1.7" 1660 + source = "registry+https://github.com/rust-lang/crates.io-index" 1661 + checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb" 1662 + 1663 + [[package]] 1664 + name = "winapi" 1665 + version = "0.3.9" 1666 + source = "registry+https://github.com/rust-lang/crates.io-index" 1667 + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1668 + dependencies = [ 1669 + "winapi-i686-pc-windows-gnu", 1670 + "winapi-x86_64-pc-windows-gnu", 1671 + ] 1672 + 1673 + [[package]] 1674 + name = "winapi-i686-pc-windows-gnu" 1675 + version = "0.4.0" 1676 + source = "registry+https://github.com/rust-lang/crates.io-index" 1677 + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1678 + 1679 + [[package]] 1680 + name = "winapi-util" 1681 + version = "0.1.5" 1682 + source = "registry+https://github.com/rust-lang/crates.io-index" 1683 + checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 1684 + dependencies = [ 1685 + "winapi", 1686 + ] 1687 + 1688 + [[package]] 1689 + name = "winapi-x86_64-pc-windows-gnu" 1690 + version = "0.4.0" 1691 + source = "registry+https://github.com/rust-lang/crates.io-index" 1692 + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1693 + 1694 + [[package]] 1695 + name = "windows-sys" 1696 + version = "0.42.0" 1697 + source = "registry+https://github.com/rust-lang/crates.io-index" 1698 + checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" 1699 + dependencies = [ 1700 + "windows_aarch64_gnullvm", 1701 + "windows_aarch64_msvc", 1702 + "windows_i686_gnu", 1703 + "windows_i686_msvc", 1704 + "windows_x86_64_gnu", 1705 + "windows_x86_64_gnullvm", 1706 + "windows_x86_64_msvc", 1707 + ] 1708 + 1709 + [[package]] 1710 + name = "windows-sys" 1711 + version = "0.45.0" 1712 + source = "registry+https://github.com/rust-lang/crates.io-index" 1713 + checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 1714 + dependencies = [ 1715 + "windows-targets", 1716 + ] 1717 + 1718 + [[package]] 1719 + name = "windows-targets" 1720 + version = "0.42.2" 1721 + source = "registry+https://github.com/rust-lang/crates.io-index" 1722 + checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 1723 + dependencies = [ 1724 + "windows_aarch64_gnullvm", 1725 + "windows_aarch64_msvc", 1726 + "windows_i686_gnu", 1727 + "windows_i686_msvc", 1728 + "windows_x86_64_gnu", 1729 + "windows_x86_64_gnullvm", 1730 + "windows_x86_64_msvc", 1731 + ] 1732 + 1733 + [[package]] 1734 + name = "windows_aarch64_gnullvm" 1735 + version = "0.42.2" 1736 + source = "registry+https://github.com/rust-lang/crates.io-index" 1737 + checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 1738 + 1739 + [[package]] 1740 + name = "windows_aarch64_msvc" 1741 + version = "0.42.2" 1742 + source = "registry+https://github.com/rust-lang/crates.io-index" 1743 + checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 1744 + 1745 + [[package]] 1746 + name = "windows_i686_gnu" 1747 + version = "0.42.2" 1748 + source = "registry+https://github.com/rust-lang/crates.io-index" 1749 + checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 1750 + 1751 + [[package]] 1752 + name = "windows_i686_msvc" 1753 + version = "0.42.2" 1754 + source = "registry+https://github.com/rust-lang/crates.io-index" 1755 + checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 1756 + 1757 + [[package]] 1758 + name = "windows_x86_64_gnu" 1759 + version = "0.42.2" 1760 + source = "registry+https://github.com/rust-lang/crates.io-index" 1761 + checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 1762 + 1763 + [[package]] 1764 + name = "windows_x86_64_gnullvm" 1765 + version = "0.42.2" 1766 + source = "registry+https://github.com/rust-lang/crates.io-index" 1767 + checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 1768 + 1769 + [[package]] 1770 + name = "windows_x86_64_msvc" 1771 + version = "0.42.2" 1772 + source = "registry+https://github.com/rust-lang/crates.io-index" 1773 + checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 1774 + 1775 + [[package]] 1776 + name = "xi-unicode" 1777 + version = "0.3.0" 1778 + source = "registry+https://github.com/rust-lang/crates.io-index" 1779 + checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a" 1780 + 1781 + [[package]] 1782 + name = "xmlparser" 1783 + version = "0.13.5" 1784 + source = "registry+https://github.com/rust-lang/crates.io-index" 1785 + checksum = "4d25c75bf9ea12c4040a97f829154768bbbce366287e2dc044af160cd79a13fd" 1786 + 1787 + [[package]] 1788 + name = "xmp-writer" 1789 + version = "0.1.0" 1790 + source = "registry+https://github.com/rust-lang/crates.io-index" 1791 + checksum = "9fd742bbbb930fc972b28bf66b7546dfbc7bb9a4c7924299df0ae6a5641fcadf" 1792 + 1793 + [[package]] 1794 + name = "yaml-front-matter" 1795 + version = "0.1.0" 1796 + source = "registry+https://github.com/rust-lang/crates.io-index" 1797 + checksum = "a94fb32d2b438e3fddf901fbfe9eb87b34d63853ca6c6da5d2ab7e27031e0bae" 1798 + dependencies = [ 1799 + "serde", 1800 + "serde_yaml", 1801 + ] 1802 + 1803 + [[package]] 1804 + name = "yaml-rust" 1805 + version = "0.4.5" 1806 + source = "registry+https://github.com/rust-lang/crates.io-index" 1807 + checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" 1808 + dependencies = [ 1809 + "linked-hash-map", 1810 + ]
+55
pkgs/tools/typesetting/typst/default.nix
··· 1 + { lib 2 + , rustPlatform 3 + , fetchFromGitHub 4 + , stdenv 5 + , darwin 6 + }: 7 + 8 + rustPlatform.buildRustPackage rec { 9 + pname = "typst"; 10 + version = "22-03-21-2"; 11 + 12 + src = fetchFromGitHub { 13 + owner = "typst"; 14 + repo = "typst"; 15 + rev = version; 16 + hash = "sha256-bJPGs/Bd9nKYDrCCaFT+20+1wTN4YdkV8bGrtOCR4tM="; 17 + }; 18 + 19 + cargoLock = { 20 + lockFile = ./Cargo.lock; 21 + outputHashes = { 22 + "biblatex-0.6.3" = "sha256-TfH2tk7B61HHqpdGY48TdPKelp4+78x+8LRFobAg8QA="; 23 + "comemo-macros-0.1.0" = "sha256-zg056kUc8sVLQ8vvT4uOuRJnyrCORsGYUvsjBJEkFPg="; 24 + "hayagriva-0.1.1" = "sha256-HGQ+jNAnejxUBQNaqXPw57zfAC3qNXSWUVzDALZTXg0="; 25 + "iai-0.1.1" = "sha256-EdNzCPht5chg7uF9O8CtPWR/bzSYyfYIXNdLltqdlR0="; 26 + "lipsum-0.8.2" = "sha256-deIbpn4YM7/NeuJ5Co48ivJmxwrcsbLl6c3cP3JZxAQ="; 27 + "pixglyph-0.1.0" = "sha256-8veNF3rzV21ayzk9gh2x0mQA8nHGM662ohvh084a0vk="; 28 + "unicode-math-class-0.1.0" = "sha256-NkwDzj1SfUe570UcfotmVP6bIEYwiegZd0j8TPEWoOk="; 29 + }; 30 + }; 31 + 32 + buildInputs = lib.optionals stdenv.isDarwin [ 33 + darwin.apple_sdk.frameworks.CoreServices 34 + ]; 35 + 36 + cargoBuildFlags = [ "-p" "typst-cli" ]; 37 + cargoTestFlags = [ "-p" "typst-cli" ]; 38 + 39 + # the build script tries to get the revision using git 40 + # which overwrites the environment variable set below 41 + postPatch = '' 42 + rm cli/build.rs 43 + ''; 44 + 45 + # git revision used for `--version` 46 + # https://github.com/typst/typst/blob/b934a2fd83d63fc115c01f959e888c7bc1aa87e4/cli/build.rs#L7 47 + TYPST_HASH = "b934a2fd"; 48 + 49 + meta = with lib; { 50 + description = "A new markup-based typesetting system that is powerful and easy to learn"; 51 + homepage = "https://typst.app"; 52 + license = licenses.asl20; 53 + maintainers = with maintainers; [ figsoda kanashimia ]; 54 + }; 55 + }
+12 -4
pkgs/top-level/all-packages.nix
··· 3346 3346 3347 3347 gotktrix = callPackage ../applications/networking/instant-messengers/gotktrix { }; 3348 3348 3349 + graphite-cli = nodePackages.graphite-cli; 3350 + 3349 3351 gucci = callPackage ../tools/text/gucci { }; 3350 3352 3351 3353 guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { }; ··· 10254 10256 grocy = callPackage ../servers/grocy { }; 10255 10257 10256 10258 inherit (callPackage ../servers/nextcloud {}) 10257 - nextcloud23 nextcloud24 nextcloud25; 10259 + nextcloud24 nextcloud25 nextcloud26; 10258 10260 10259 - nextcloud23Packages = ( callPackage ../servers/nextcloud/packages { 10260 - apps = lib.importJSON ../servers/nextcloud/packages/23.json; 10261 - }); 10262 10261 nextcloud24Packages = ( callPackage ../servers/nextcloud/packages { 10263 10262 apps = lib.importJSON ../servers/nextcloud/packages/24.json; 10264 10263 }); 10265 10264 nextcloud25Packages = ( callPackage ../servers/nextcloud/packages { 10266 10265 apps = lib.importJSON ../servers/nextcloud/packages/25.json; 10267 10266 }); 10267 + nextcloud26Packages = ( callPackage ../servers/nextcloud/packages { 10268 + apps = lib.importJSON ../servers/nextcloud/packages/26.json; 10269 + }); 10268 10270 10269 10271 nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; 10270 10272 ··· 13058 13060 tydra = callPackage ../tools/misc/tydra { }; 13059 13061 13060 13062 typos = callPackage ../development/tools/typos { }; 13063 + 13064 + typst = callPackage ../tools/typesetting/typst { }; 13061 13065 13062 13066 tz = callPackage ../tools/misc/tz { }; 13063 13067 ··· 21348 21352 21349 21353 libgnurl = callPackage ../development/libraries/libgnurl { }; 21350 21354 21355 + libgourou = callPackage ../development/libraries/libgourou { }; 21356 + 21351 21357 libgringotts = callPackage ../development/libraries/libgringotts { }; 21352 21358 21353 21359 libgrss = callPackage ../development/libraries/libgrss { ··· 23902 23908 unicap = callPackage ../development/libraries/unicap { }; 23903 23909 23904 23910 unicon-lang = callPackage ../development/interpreters/unicon-lang { }; 23911 + 23912 + updfparser = callPackage ../development/libraries/updfparser { }; 23905 23913 23906 23914 tsocks = callPackage ../development/libraries/tsocks { }; 23907 23915
+2
pkgs/top-level/python-packages.nix
··· 7820 7820 7821 7821 py-nightscout = callPackage ../development/python-modules/py-nightscout { }; 7822 7822 7823 + py-serializable = callPackage ../development/python-modules/py-serializable { }; 7824 + 7823 7825 py-synologydsm-api = callPackage ../development/python-modules/py-synologydsm-api { }; 7824 7826 7825 7827 py-sneakers = callPackage ../development/python-modules/py-sneakers { };