Merge master into staging-next

authored by

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

+3527 -328
+9
maintainers/maintainer-list.nix
··· 1469 githubId = 12958979; 1470 name = "Mika Naylor"; 1471 }; 1472 avakhrenev = { 1473 email = "avakhrenev@gmail.com"; 1474 github = "avakhrenev";
··· 1469 githubId = 12958979; 1470 name = "Mika Naylor"; 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 + }; 1481 avakhrenev = { 1482 email = "avakhrenev@gmail.com"; 1483 github = "avakhrenev";
+6
nixos/doc/manual/release-notes/rl-2305.section.md
··· 166 167 - Deprecated `xlibsWrapper` transitional package has been removed in favour of direct use of its constitutents: `xorg.libX11`, `freetype` and others. 168 169 - .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 171 - The iputils package, which is installed by default, no longer provides the
··· 166 167 - Deprecated `xlibsWrapper` transitional package has been removed in favour of direct use of its constitutents: `xorg.libX11`, `freetype` and others. 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 + 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 176 177 - The iputils package, which is installed by default, no longer provides the
+1 -4
nixos/modules/installer/tools/tools.nix
··· 159 $desktopConfiguration 160 # Configure keymap in X11 161 # services.xserver.layout = "us"; 162 - # services.xserver.xkbOptions = { 163 - # "eurosign:e"; 164 - # "caps:escape" # map caps to escape. 165 - # }; 166 167 # Enable CUPS to print documents. 168 # services.printing.enable = true;
··· 159 $desktopConfiguration 160 # Configure keymap in X11 161 # services.xserver.layout = "us"; 162 + # services.xserver.xkbOptions = "eurosign:e,caps:escape"; 163 164 # Enable CUPS to print documents. 165 # services.printing.enable = true;
+1 -1
nixos/modules/services/networking/ssh/sshd.nix
··· 19 else if true == v then "yes" 20 else if false == v then "no" 21 else if isList v then concatStringsSep "," v 22 - else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}"; 23 24 # dont use the "=" operator 25 settingsFormat = (pkgs.formats.keyValue {
··· 19 else if true == v then "yes" 20 else if false == v then "no" 21 else if isList v then concatStringsSep "," v 22 + else throw "unsupported type ${builtins.typeOf v}: ${(lib.generators.toPretty {}) v}"; 23 24 # dont use the "=" operator 25 settingsFormat = (pkgs.formats.keyValue {
+107 -79
nixos/modules/services/networking/yggdrasil.nix
··· 8 configFileProvided = cfg.configFile != null; 9 10 format = pkgs.formats.json { }; 11 - in { 12 imports = [ 13 (mkRenamedOptionModule 14 [ "services" "yggdrasil" "config" ] ··· 21 22 settings = mkOption { 23 type = format.type; 24 - default = {}; 25 example = { 26 Peers = [ 27 "tcp://aa.bb.cc.dd:eeeee" ··· 45 46 If no keys are specified then ephemeral keys are generated 47 and the Yggdrasil interface will have a random IPv6 address 48 - each time the service is started, this is the default. 49 50 If both {option}`configFile` and {option}`settings` 51 are supplied, they will be combined, with values from ··· 61 default = null; 62 example = "/run/keys/yggdrasil.conf"; 63 description = lib.mdDoc '' 64 - A file which contains JSON configuration for yggdrasil. 65 - See the {option}`settings` option for more information. 66 ''; 67 }; 68 ··· 77 type = bool; 78 default = false; 79 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`. 88 ''; 89 }; 90 91 denyDhcpcdInterfaces = mkOption { 92 type = listOf str; 93 - default = []; 94 example = [ "tap*" ]; 95 description = lib.mdDoc '' 96 Disable the DHCP client for any interface whose name matches ··· 118 }; 119 }; 120 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 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 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" ]; 145 146 - preStart = 147 - (if settingsProvided || configFileProvided || cfg.persistentKeys then 148 - "echo " 149 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"; 157 158 - serviceConfig = { 159 - ExecStart = 160 - "${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf"; 161 - ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 162 - Restart = "always"; 163 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"; 171 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 - }; 188 189 - networking.dhcpcd.denyInterfaces = cfg.denyDhcpcdInterfaces; 190 - networking.firewall.allowedUDPPorts = mkIf cfg.openMulticastPort [ 9001 ]; 191 192 - # Make yggdrasilctl available on the command line. 193 - environment.systemPackages = [ cfg.package ]; 194 - }); 195 meta = { 196 doc = ./yggdrasil.md; 197 maintainers = with lib.maintainers; [ gazally ehmry ];
··· 8 configFileProvided = cfg.configFile != null; 9 10 format = pkgs.formats.json { }; 11 + in 12 + { 13 imports = [ 14 (mkRenamedOptionModule 15 [ "services" "yggdrasil" "config" ] ··· 22 23 settings = mkOption { 24 type = format.type; 25 + default = { }; 26 example = { 27 Peers = [ 28 "tcp://aa.bb.cc.dd:eeeee" ··· 46 47 If no keys are specified then ephemeral keys are generated 48 and the Yggdrasil interface will have a random IPv6 address 49 + each time the service is started. This is the default. 50 51 If both {option}`configFile` and {option}`settings` 52 are supplied, they will be combined, with values from ··· 62 default = null; 63 example = "/run/keys/yggdrasil.conf"; 64 description = lib.mdDoc '' 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`. 72 ''; 73 }; 74 ··· 83 type = bool; 84 default = false; 85 description = lib.mdDoc '' 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`). 94 ''; 95 }; 96 97 denyDhcpcdInterfaces = mkOption { 98 type = listOf str; 99 + default = [ ]; 100 example = [ "tap*" ]; 101 description = lib.mdDoc '' 102 Disable the DHCP client for any interface whose name matches ··· 124 }; 125 }; 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 + }]; 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 + ''; 148 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" ]; 155 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 169 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 + ''; 186 187 + serviceConfig = { 188 + ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 189 + Restart = "always"; 190 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}"; 198 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 + }; 215 216 + networking.dhcpcd.denyInterfaces = cfg.denyDhcpcdInterfaces; 217 + networking.firewall.allowedUDPPorts = mkIf cfg.openMulticastPort [ 9001 ]; 218 219 + # Make yggdrasilctl available on the command line. 220 + environment.systemPackages = [ cfg.package ]; 221 + } 222 + ); 223 meta = { 224 doc = ./yggdrasil.md; 225 maintainers = with lib.maintainers; [ gazally ehmry ];
+1 -1
nixos/modules/services/web-apps/nextcloud.md
··· 5 [services.nextcloud](#opt-services.nextcloud.enable). A 6 desktop client is packaged at `pkgs.nextcloud-client`. 7 8 - The current default by NixOS is `nextcloud25` which is also the latest 9 major version available. 10 11 ## Basic usage {#module-services-nextcloud-basic-usage}
··· 5 [services.nextcloud](#opt-services.nextcloud.enable). A 6 desktop client is packaged at `pkgs.nextcloud-client`. 7 8 + The current default by NixOS is `nextcloud26` which is also the latest 9 major version available. 10 11 ## Basic usage {#module-services-nextcloud-basic-usage}
+11 -39
nixos/modules/services/web-apps/nextcloud.nix
··· 204 package = mkOption { 205 type = types.package; 206 description = lib.mdDoc "Which package to use for the Nextcloud instance."; 207 - relatedPackages = [ "nextcloud24" "nextcloud25" ]; 208 }; 209 phpPackage = mkOption { 210 type = types.package; ··· 673 674 config = mkIf cfg.enable (mkMerge [ 675 { warnings = let 676 - latest = 25; 677 upgradeWarning = major: nixos: 678 '' 679 A legacy Nextcloud install (from before NixOS ${nixos}) may be installed. ··· 688 `services.nextcloud.package`. 689 ''; 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 in (optional (cfg.poolConfig != null) '' 706 Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release. 707 Please migrate your configuration to config.services.nextcloud.poolSettings. ··· 709 ++ (optional (versionOlder cfg.package.version "23") (upgradeWarning 22 "22.05")) 710 ++ (optional (versionOlder cfg.package.version "24") (upgradeWarning 23 "22.05")) 711 ++ (optional (versionOlder cfg.package.version "25") (upgradeWarning 24 "22.11")) 712 ++ (optional cfg.enableBrokenCiphersForSSE '' 713 You're using PHP's openssl extension built against OpenSSL 1.1 for Nextcloud. 714 This is only necessary if you're using Nextcloud's server-side encryption. ··· 725 See <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/encryption_configuration.html#disabling-encryption> on how to achieve this. 726 727 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 - ''); 740 741 services.nextcloud.package = with pkgs; 742 mkDefault ( ··· 747 `pkgs.nextcloud`. 748 '' 749 else if versionOlder stateVersion "22.11" then nextcloud24 750 - else nextcloud25 751 ); 752 753 services.nextcloud.phpPackage = 754 - if versionOlder cfg.package.version "24" then pkgs.php80 755 - else pkgs.php81; 756 } 757 758 { assertions = [ ··· 980 ''; 981 serviceConfig.Type = "oneshot"; 982 serviceConfig.User = "nextcloud"; 983 }; 984 nextcloud-cron = { 985 after = [ "nextcloud-setup.service" ]; ··· 1031 name = cfg.config.dbuser; 1032 ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; }; 1033 }]; 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 initialScript = pkgs.writeText "mysql-init" '' 1043 CREATE USER '${cfg.config.dbname}'@'localhost' IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}'; 1044 CREATE DATABASE IF NOT EXISTS ${cfg.config.dbname};
··· 204 package = mkOption { 205 type = types.package; 206 description = lib.mdDoc "Which package to use for the Nextcloud instance."; 207 + relatedPackages = [ "nextcloud24" "nextcloud25" "nextcloud26" ]; 208 }; 209 phpPackage = mkOption { 210 type = types.package; ··· 673 674 config = mkIf cfg.enable (mkMerge [ 675 { warnings = let 676 + latest = 26; 677 upgradeWarning = major: nixos: 678 '' 679 A legacy Nextcloud install (from before NixOS ${nixos}) may be installed. ··· 688 `services.nextcloud.package`. 689 ''; 690 691 in (optional (cfg.poolConfig != null) '' 692 Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release. 693 Please migrate your configuration to config.services.nextcloud.poolSettings. ··· 695 ++ (optional (versionOlder cfg.package.version "23") (upgradeWarning 22 "22.05")) 696 ++ (optional (versionOlder cfg.package.version "24") (upgradeWarning 23 "22.05")) 697 ++ (optional (versionOlder cfg.package.version "25") (upgradeWarning 24 "22.11")) 698 + ++ (optional (versionOlder cfg.package.version "26") (upgradeWarning 25 "23.05")) 699 ++ (optional cfg.enableBrokenCiphersForSSE '' 700 You're using PHP's openssl extension built against OpenSSL 1.1 for Nextcloud. 701 This is only necessary if you're using Nextcloud's server-side encryption. ··· 712 See <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/encryption_configuration.html#disabling-encryption> on how to achieve this. 713 714 For more context, here is the implementing pull request: https://github.com/NixOS/nixpkgs/pull/198470 715 + ''); 716 717 services.nextcloud.package = with pkgs; 718 mkDefault ( ··· 723 `pkgs.nextcloud`. 724 '' 725 else if versionOlder stateVersion "22.11" then nextcloud24 726 + else if versionOlder stateVersion "23.05" then nextcloud25 727 + else nextcloud26 728 ); 729 730 services.nextcloud.phpPackage = 731 + if versionOlder cfg.package.version "26" then pkgs.php81 732 + else pkgs.php82; 733 } 734 735 { assertions = [ ··· 957 ''; 958 serviceConfig.Type = "oneshot"; 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"; 963 }; 964 nextcloud-cron = { 965 after = [ "nextcloud-setup.service" ]; ··· 1011 name = cfg.config.dbuser; 1012 ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; }; 1013 }]; 1014 initialScript = pkgs.writeText "mysql-init" '' 1015 CREATE USER '${cfg.config.dbname}'@'localhost' IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}'; 1016 CREATE DATABASE IF NOT EXISTS ${cfg.config.dbname};
+1094
nixos/modules/system/boot/networkd.nix
··· 303 304 sectionTap = checkUnitConfig "Tap" tunChecks; 305 306 # NOTE The PrivateKey directive is missing on purpose here, please 307 # do not add it to this list. The nix store is world-readable let's 308 # refrain ourselves from providing a footgun. ··· 918 (assertMacAddress "MACAddress") 919 ]; 920 921 }; 922 }; 923 ··· 1012 1013 }; 1014 1015 wireguardPeerOptions = { 1016 options = { 1017 wireguardPeerConfig = mkOption { ··· 1125 ''; 1126 }; 1127 1128 wireguardConfig = mkOption { 1129 default = {}; 1130 example = { ··· 1306 }; 1307 }; 1308 1309 networkOptions = commonNetworkOptions // { 1310 1311 linkConfig = mkOption { ··· 1445 ''; 1446 }; 1447 1448 name = mkOption { 1449 type = types.nullOr types.str; 1450 default = null; ··· 1705 [Tap] 1706 ${attrsToSection def.tapConfig} 1707 '' 1708 + optionalString (def.wireguardConfig != { }) '' 1709 [WireGuard] 1710 ${attrsToSection def.wireguardConfig} ··· 1843 + flip concatMapStrings def.dhcpServerStaticLeases (x: '' 1844 [DHCPServerStaticLease] 1845 ${attrsToSection x.dhcpServerStaticLeaseConfig} 1846 '') 1847 + def.extraConfig; 1848 };
··· 303 304 sectionTap = checkUnitConfig "Tap" tunChecks; 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 + 348 # NOTE The PrivateKey directive is missing on purpose here, please 349 # do not add it to this list. The nix store is world-readable let's 350 # refrain ourselves from providing a footgun. ··· 960 (assertMacAddress "MACAddress") 961 ]; 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 + ]; 1427 }; 1428 }; 1429 ··· 1518 1519 }; 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 + 1536 wireguardPeerOptions = { 1537 options = { 1538 wireguardPeerConfig = mkOption { ··· 1646 ''; 1647 }; 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 + 1681 wireguardConfig = mkOption { 1682 default = {}; 1683 example = { ··· 1859 }; 1860 }; 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 + 1907 networkOptions = commonNetworkOptions // { 1908 1909 linkConfig = mkOption { ··· 2043 ''; 2044 }; 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 + 2406 name = mkOption { 2407 type = types.nullOr types.str; 2408 default = null; ··· 2663 [Tap] 2664 ${attrsToSection def.tapConfig} 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 + '') 2674 + optionalString (def.wireguardConfig != { }) '' 2675 [WireGuard] 2676 ${attrsToSection def.wireguardConfig} ··· 2809 + flip concatMapStrings def.dhcpServerStaticLeases (x: '' 2810 [DHCPServerStaticLease] 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} 2940 '') 2941 + def.extraConfig; 2942 };
+1 -1
nixos/tests/nextcloud/default.nix
··· 26 }; 27 }) 28 { } 29 - [ 24 25 ]
··· 26 }; 27 }) 28 { } 29 + [ 24 25 26 ]
+4 -1
nixos/tests/nextcloud/openssl-sse.nix
··· 55 nextcloudwithopenssl1.wait_for_unit("multi-user.target") 56 nextcloudwithopenssl1.succeed("nextcloud-occ status") 57 nextcloudwithopenssl1.succeed("curl -sSf http://nextcloudwithopenssl1/login") 58 59 with subtest("With OpenSSL 1 SSE can be enabled and used"): 60 nextcloudwithopenssl1.succeed("nextcloud-occ app:enable encryption") ··· 71 nextcloudwithopenssl1.succeed("nextcloud-occ status") 72 73 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 nextcloudwithopenssl1.succeed("nextcloud-occ encryption:disable") 76 nextcloudwithopenssl1.succeed("${copySharedFile3}") 77 nextcloudwithopenssl1.succeed("grep bye /var/lib/nextcloud/data/root/files/test-shared-file2")
··· 55 nextcloudwithopenssl1.wait_for_unit("multi-user.target") 56 nextcloudwithopenssl1.succeed("nextcloud-occ status") 57 nextcloudwithopenssl1.succeed("curl -sSf http://nextcloudwithopenssl1/login") 58 + nextcloud_version = ${toString nextcloudVersion} 59 60 with subtest("With OpenSSL 1 SSE can be enabled and used"): 61 nextcloudwithopenssl1.succeed("nextcloud-occ app:enable encryption") ··· 72 nextcloudwithopenssl1.succeed("nextcloud-occ status") 73 74 with subtest("Existing encrypted files cannot be read, but new files can be added"): 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") 78 nextcloudwithopenssl1.succeed("nextcloud-occ encryption:disable") 79 nextcloudwithopenssl1.succeed("${copySharedFile3}") 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 }: 2 3 buildGoModule rec { 4 pname = "vhs"; ··· 18 ldflags = [ "-s" "-w" "-X=main.Version=${version}" ]; 19 20 postInstall = '' 21 - wrapProgram $out/bin/vhs --prefix PATH : ${lib.makeBinPath [ chromium ffmpeg ttyd ]} 22 $out/bin/vhs man > vhs.1 23 installManPage vhs.1 24 installShellCompletion --cmd vhs \
··· 1 + { lib, stdenv, buildGoModule, installShellFiles, fetchFromGitHub, ffmpeg, ttyd, chromium, makeWrapper }: 2 3 buildGoModule rec { 4 pname = "vhs"; ··· 18 ldflags = [ "-s" "-w" "-X=main.Version=${version}" ]; 19 20 postInstall = '' 21 + wrapProgram $out/bin/vhs --prefix PATH : ${lib.makeBinPath (lib.optionals stdenv.isLinux [ chromium ] ++ [ ffmpeg ttyd ])} 22 $out/bin/vhs man > vhs.1 23 installManPage vhs.1 24 installShellCompletion --cmd vhs \
+3 -3
pkgs/applications/version-management/git-branchless/default.nix
··· 14 15 rustPlatform.buildRustPackage rec { 16 pname = "git-branchless"; 17 - version = "0.7.0"; 18 19 src = fetchFromGitHub { 20 owner = "arxanas"; 21 repo = "git-branchless"; 22 rev = "v${version}"; 23 - sha256 = "sha256-t3nzElicRbOTI+1nD+CGQk9u83FUUNgJ0OpylPZdlOs="; 24 }; 25 26 - cargoHash = "sha256-RfZnPQN+BSJ2YmCEMCPWY477sJue/L++3aL+U15C1Ro="; 27 28 nativeBuildInputs = [ pkg-config ]; 29
··· 14 15 rustPlatform.buildRustPackage rec { 16 pname = "git-branchless"; 17 + version = "0.7.1"; 18 19 src = fetchFromGitHub { 20 owner = "arxanas"; 21 repo = "git-branchless"; 22 rev = "v${version}"; 23 + sha256 = "sha256-9kyC9Uwmc2WNHgfKpnS3v8vNF2o+168ULWqE+2eX1cE="; 24 }; 25 26 + cargoHash = "sha256-k+Jx5PcA8TaFQQDYqZ6dTy8bwNtYeALF75ucoFjVGUc="; 27 28 nativeBuildInputs = [ pkg-config ]; 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 13 buildPythonPackage rec { 14 pname = "twentemilieu"; 15 - version = "0.6.1"; 16 format = "pyproject"; 17 18 - disabled = pythonOlder "3.8"; 19 20 src = fetchFromGitHub { 21 owner = "frenck"; 22 repo = "python-twentemilieu"; 23 rev = "v${version}"; 24 - hash = "sha256-k2jdw2H/bNejNUjIEQlEA1KkHHpkyFlSDC1HKUoMIqQ="; 25 }; 26 27 postPatch = '' ··· 50 meta = with lib; { 51 description = "Python client for Twente Milieu"; 52 homepage = "https://github.com/frenck/python-twentemilieu"; 53 license = with licenses; [ mit ]; 54 maintainers = with maintainers; [ fab ]; 55 };
··· 12 13 buildPythonPackage rec { 14 pname = "twentemilieu"; 15 + version = "1.0.0"; 16 format = "pyproject"; 17 18 + disabled = pythonOlder "3.10"; 19 20 src = fetchFromGitHub { 21 owner = "frenck"; 22 repo = "python-twentemilieu"; 23 rev = "v${version}"; 24 + hash = "sha256-MTAVa5gP5e8TIE/i1DjfmwKm1zDVC/WEcYKxZSV/+Ug="; 25 }; 26 27 postPatch = '' ··· 50 meta = with lib; { 51 description = "Python client for Twente Milieu"; 52 homepage = "https://github.com/frenck/python-twentemilieu"; 53 + changelog = "https://github.com/frenck/python-twentemilieu/releases/tag/v${version}"; 54 license = with licenses; [ mit ]; 55 maintainers = with maintainers; [ fab ]; 56 };
+2 -2
pkgs/development/tools/build-managers/bazel/bazel_6/default.nix
··· 24 }: 25 26 let 27 - version = "6.1.0"; 28 sourceRoot = "."; 29 30 src = fetchurl { 31 url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip"; 32 - hash = "sha256-xLhWdVQc9m7ny3FRQJf91sX8DgJSckNhek8gymtPKTI="; 33 }; 34 35 # Update with
··· 24 }: 25 26 let 27 + version = "6.1.1"; 28 sourceRoot = "."; 29 30 src = fetchurl { 31 url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip"; 32 + hash = "sha256-a5APJtZ2x+yh0uff+bcYkNq9P/WcqyotIXi8igOVNCo="; 33 }; 34 35 # Update with
+2 -2
pkgs/development/tools/ddosify/default.nix
··· 2 3 buildGoModule rec { 4 pname = "ddosify"; 5 - version = "0.15.1"; 6 7 src = fetchFromGitHub { 8 owner = pname; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-Fimr2h0sjZQ1OnFx2DghCGqrfyLZ/SGeRIoLlAAgk3g="; 12 }; 13 14 vendorHash = "sha256-3y5ppTtvGqwWhgnVBpP4gf26DHKPnSNYK4jfhBiYDwY=";
··· 2 3 buildGoModule rec { 4 pname = "ddosify"; 5 + version = "0.15.3"; 6 7 src = fetchFromGitHub { 8 owner = pname; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-xTalStFym/8l2YDuk2F0ydHnT46sxRj/KmOdIbYAMsQ="; 12 }; 13 14 vendorHash = "sha256-3y5ppTtvGqwWhgnVBpP4gf26DHKPnSNYK4jfhBiYDwY=";
+7 -13
pkgs/servers/nextcloud/default.nix
··· 15 inherit sha256; 16 }; 17 18 - patches = [ (./patches + "/v${major}/0001-Setup-remove-custom-dbuser-creation-behavior.patch") ]; 19 20 passthru.tests = nixosTests.nextcloud; 21 ··· 38 }; 39 }; 40 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 nextcloud24 = generic { 54 version = "24.0.10"; 55 sha256 = "sha256-B6+0gO9wn39BpcR0IsIuMa81DH8TWuDOlTZR9O1qRbk="; ··· 58 nextcloud25 = generic { 59 version = "25.0.4"; 60 sha256 = "sha256-wyUeAIOpQwPi1piLNS87Mwgqeacmsw/3RnCbD+hpoaY="; 61 }; 62 63 # tip: get the sha with:
··· 15 inherit sha256; 16 }; 17 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"); 20 21 passthru.tests = nixosTests.nextcloud; 22 ··· 39 }; 40 }; 41 in { 42 nextcloud24 = generic { 43 version = "24.0.10"; 44 sha256 = "sha256-B6+0gO9wn39BpcR0IsIuMa81DH8TWuDOlTZR9O1qRbk="; ··· 47 nextcloud25 = generic { 48 version = "25.0.4"; 49 sha256 = "sha256-wyUeAIOpQwPi1piLNS87Mwgqeacmsw/3RnCbD+hpoaY="; 50 + }; 51 + 52 + nextcloud26 = generic { 53 + version = "26.0.0"; 54 + sha256 = "sha256-8WMVA2Ou6TZuy1zVJZv2dW7U8HPOp4tfpRXK2noNDD0="; 55 }; 56 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 "sha256": "1payxppd2j0n67kcswb3dkk2a467fahwakxs7wqsfqgqgr9mcbl4", 64 "url": "https://github.com/nextcloud/forms/releases/download/v2.5.2/forms.tar.gz", 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)!", 67 "homepage": "https://github.com/nextcloud/forms", 68 "licenses": [ 69 "agpl" ··· 80 ] 81 }, 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.", 87 "homepage": "https://github.com/nextcloud/impersonate", 88 "licenses": [ 89 "agpl" ··· 110 ] 111 }, 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", 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 "homepage": "https://github.com/nextcloud/news", 118 "licenses": [ ··· 123 "sha256": "adddee56456d0115f87a74405a6d62bd5e3af256e86199d87bbff3b2a6876299", 124 "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz", 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.", 127 "homepage": "https://github.com/nextcloud/notes", 128 "licenses": [ 129 "agpl" ··· 140 ] 141 }, 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", 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 "homepage": "https://www.onlyoffice.com", 148 "licenses": [
··· 63 "sha256": "1payxppd2j0n67kcswb3dkk2a467fahwakxs7wqsfqgqgr9mcbl4", 64 "url": "https://github.com/nextcloud/forms/releases/download/v2.5.2/forms.tar.gz", 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- **🧑‍💻 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 "homepage": "https://github.com/nextcloud/forms", 68 "licenses": [ 69 "agpl" ··· 80 ] 81 }, 82 "impersonate": { 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 "homepage": "https://github.com/nextcloud/impersonate", 88 "licenses": [ 89 "agpl" ··· 110 ] 111 }, 112 "news": { 113 + "sha256": "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd", 114 + "url": "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz", 115 + "version": "21.1.0", 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 "homepage": "https://github.com/nextcloud/news", 118 "licenses": [ ··· 123 "sha256": "adddee56456d0115f87a74405a6d62bd5e3af256e86199d87bbff3b2a6876299", 124 "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz", 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/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 "homepage": "https://github.com/nextcloud/notes", 128 "licenses": [ 129 "agpl" ··· 140 ] 141 }, 142 "onlyoffice": { 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 "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 "homepage": "https://www.onlyoffice.com", 148 "licenses": [
+39 -29
pkgs/servers/nextcloud/packages/25.json
··· 1 { 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", 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": [ ··· 10 ] 11 }, 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", 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": [ ··· 20 ] 21 }, 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", 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": [ ··· 50 ] 51 }, 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)!", 57 "homepage": "https://github.com/nextcloud/forms", 58 "licenses": [ 59 "agpl" ··· 69 "agpl" 70 ] 71 }, 72 "keeweb": { 73 "sha256": "1g6bjbzk7rf9x7cblwsc7cmd3fx5zrkib5ra5xzsmqc9aqpy22zh", 74 "url": "https://github.com/jhass/nextcloud-keeweb/releases/download/v0.6.10/keeweb-0.6.10.tar.gz", ··· 80 ] 81 }, 82 "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", 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": [ ··· 90 ] 91 }, 92 "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", 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": [ ··· 120 ] 121 }, 122 "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", 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": [ ··· 130 ] 131 }, 132 "polls": { 133 - "sha256": "0mqc9zmxrm98byy6v13si3hwii8hx85998c4kv91vk6ad0sfxjhb", 134 - "url": "https://github.com/nextcloud/polls/releases/download/v4.1.2/polls.tar.gz", 135 - "version": "4.1.2", 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": [ ··· 153 "sha256": "0pav5xcnj55vs04fm1fc2kpaz46k0rdlvv7xn6idwgh860anzp4g", 154 "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.4/spreed-v15.0.4.tar.gz", 155 "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", 157 "homepage": "https://github.com/nextcloud/spreed", 158 "licenses": [ 159 "agpl" ··· 190 ] 191 }, 192 "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", 196 "description": "A two-factor provider for WebAuthn devices", 197 "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", 198 "licenses": [
··· 1 { 2 "bookmarks": { 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 "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": [ ··· 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": [ ··· 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": [ ··· 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" ··· 69 "agpl" 70 ] 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 + }, 82 "keeweb": { 83 "sha256": "1g6bjbzk7rf9x7cblwsc7cmd3fx5zrkib5ra5xzsmqc9aqpy22zh", 84 "url": "https://github.com/jhass/nextcloud-keeweb/releases/download/v0.6.10/keeweb-0.6.10.tar.gz", ··· 90 ] 91 }, 92 "mail": { 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", 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)!", 97 "homepage": "https://github.com/nextcloud/mail#readme", 98 "licenses": [ ··· 100 ] 101 }, 102 "news": { 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", 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)", 107 "homepage": "https://github.com/nextcloud/news", 108 "licenses": [ ··· 130 ] 131 }, 132 "onlyoffice": { 133 + "sha256": "10axh9a4w8y3iw95xdjn4q8wjg5459dki42xb6cax5ikimyfv07j", 134 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.8.0/onlyoffice.tar.gz", 135 + "version": "7.8.0", 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.", 137 "homepage": "https://www.onlyoffice.com", 138 "licenses": [ ··· 140 ] 141 }, 142 "polls": { 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", 146 "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 147 "homepage": "https://github.com/nextcloud/polls", 148 "licenses": [ ··· 163 "sha256": "0pav5xcnj55vs04fm1fc2kpaz46k0rdlvv7xn6idwgh860anzp4g", 164 "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.4/spreed-v15.0.4.tar.gz", 165 "version": "15.0.4", 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", 167 "homepage": "https://github.com/nextcloud/spreed", 168 "licenses": [ 169 "agpl" ··· 200 ] 201 }, 202 "twofactor_webauthn": { 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", 206 "description": "A two-factor provider for WebAuthn devices", 207 "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", 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 3 buildGoModule rec { 4 pname = "traefik"; 5 - version = "2.9.8"; 6 7 # Archive with static assets for webui 8 src = fetchzip { 9 url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz"; 10 - sha256 = "sha256-3vrMh0zrJQhIG9VAlG/iHlOVlUFlE4qd0EkOB0ckAtY="; 11 stripRoot = false; 12 }; 13 14 - vendorSha256 = "sha256-NyI+3wYRZ3L98qwrkDfrbJK4S+Wdx/UJ8FlLAMhaL7A="; 15 16 subPackages = [ "cmd/traefik" ]; 17
··· 2 3 buildGoModule rec { 4 pname = "traefik"; 5 + version = "2.9.9"; 6 7 # Archive with static assets for webui 8 src = fetchzip { 9 url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz"; 10 + sha256 = "sha256-p5leV7Eg+BysUw4AWfhPeccc6TPhRV48T9BiDORR7Co="; 11 stripRoot = false; 12 }; 13 14 + vendorSha256 = "sha256-11OYVeEuo/Fl6qlRLITzi7qmM2M8puHk5Y0X0sgLius="; 15 16 subPackages = [ "cmd/traefik" ]; 17
+2 -2
pkgs/tools/misc/goreleaser/default.nix
··· 2 3 buildGoModule rec { 4 pname = "goreleaser"; 5 - version = "1.16.1"; 6 7 src = fetchFromGitHub { 8 owner = "goreleaser"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-Cj6VjD0TKAfyLPMJBknOgn/KAVD0BhC0ylDyfRYt5z8="; 12 }; 13 14 vendorHash = "sha256-eVuEyQCO2/gufMJp8eUpC82wdJbbJsMKR1ZGv96C9mI=";
··· 2 3 buildGoModule rec { 4 pname = "goreleaser"; 5 + version = "1.16.2"; 6 7 src = fetchFromGitHub { 8 owner = "goreleaser"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-BHx44ux+g642aTaV0Wlw/uz/3Vy4MJfuNffgqGDsb6I="; 12 }; 13 14 vendorHash = "sha256-eVuEyQCO2/gufMJp8eUpC82wdJbbJsMKR1ZGv96C9mI=";
+2 -2
pkgs/tools/security/exploitdb/default.nix
··· 6 7 stdenv.mkDerivation rec { 8 pname = "exploitdb"; 9 - version = "2023-03-17"; 10 11 src = fetchFromGitLab { 12 owner = "exploit-database"; 13 repo = pname; 14 rev = "refs/tags/${version}"; 15 - hash = "sha256-mqGNwyFmTTY8ITzom4GDvZXXI1YUkVKdfIHRqnVLuMs="; 16 }; 17 18 nativeBuildInputs = [
··· 6 7 stdenv.mkDerivation rec { 8 pname = "exploitdb"; 9 + version = "2023-03-22"; 10 11 src = fetchFromGitLab { 12 owner = "exploit-database"; 13 repo = pname; 14 rev = "refs/tags/${version}"; 15 + hash = "sha256-8kh4m27KU7drAXmpBTp34YvSmZ5cqFPSaXqedyGOwuY="; 16 }; 17 18 nativeBuildInputs = [
+3 -3
pkgs/tools/text/d2/default.nix
··· 8 9 buildGoModule rec { 10 pname = "d2"; 11 - version = "0.2.5"; 12 13 src = fetchFromGitHub { 14 owner = "terrastruct"; 15 repo = pname; 16 rev = "v${version}"; 17 - hash = "sha256-nny6scwuSIFQA+G4k3WfuH9n83kMmnwmfPJMKDCIUBo="; 18 }; 19 20 - vendorHash = "sha256-h2OGd/Ql4BTX0tt91lQBvmm41h2kzPgQXawJnrkxn8Y="; 21 22 ldflags = [ 23 "-s"
··· 8 9 buildGoModule rec { 10 pname = "d2"; 11 + version = "0.2.6"; 12 13 src = fetchFromGitHub { 14 owner = "terrastruct"; 15 repo = pname; 16 rev = "v${version}"; 17 + hash = "sha256-bZJu4l5xAVqm/1HIhHfnZF9JRswAE/c6OzuZ8mmHA9U="; 18 }; 19 20 + vendorHash = "sha256-wXE2+a30KohIOuxFeBQPcV7X2Ka+4t7zqHdr48kifY0="; 21 22 ldflags = [ 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 3347 gotktrix = callPackage ../applications/networking/instant-messengers/gotktrix { }; 3348 3349 gucci = callPackage ../tools/text/gucci { }; 3350 3351 guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { }; ··· 10254 grocy = callPackage ../servers/grocy { }; 10255 10256 inherit (callPackage ../servers/nextcloud {}) 10257 - nextcloud23 nextcloud24 nextcloud25; 10258 10259 - nextcloud23Packages = ( callPackage ../servers/nextcloud/packages { 10260 - apps = lib.importJSON ../servers/nextcloud/packages/23.json; 10261 - }); 10262 nextcloud24Packages = ( callPackage ../servers/nextcloud/packages { 10263 apps = lib.importJSON ../servers/nextcloud/packages/24.json; 10264 }); 10265 nextcloud25Packages = ( callPackage ../servers/nextcloud/packages { 10266 apps = lib.importJSON ../servers/nextcloud/packages/25.json; 10267 }); 10268 10269 nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; 10270 ··· 13058 tydra = callPackage ../tools/misc/tydra { }; 13059 13060 typos = callPackage ../development/tools/typos { }; 13061 13062 tz = callPackage ../tools/misc/tz { }; 13063 ··· 21348 21349 libgnurl = callPackage ../development/libraries/libgnurl { }; 21350 21351 libgringotts = callPackage ../development/libraries/libgringotts { }; 21352 21353 libgrss = callPackage ../development/libraries/libgrss { ··· 23902 unicap = callPackage ../development/libraries/unicap { }; 23903 23904 unicon-lang = callPackage ../development/interpreters/unicon-lang { }; 23905 23906 tsocks = callPackage ../development/libraries/tsocks { }; 23907
··· 3346 3347 gotktrix = callPackage ../applications/networking/instant-messengers/gotktrix { }; 3348 3349 + graphite-cli = nodePackages.graphite-cli; 3350 + 3351 gucci = callPackage ../tools/text/gucci { }; 3352 3353 guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { }; ··· 10256 grocy = callPackage ../servers/grocy { }; 10257 10258 inherit (callPackage ../servers/nextcloud {}) 10259 + nextcloud24 nextcloud25 nextcloud26; 10260 10261 nextcloud24Packages = ( callPackage ../servers/nextcloud/packages { 10262 apps = lib.importJSON ../servers/nextcloud/packages/24.json; 10263 }); 10264 nextcloud25Packages = ( callPackage ../servers/nextcloud/packages { 10265 apps = lib.importJSON ../servers/nextcloud/packages/25.json; 10266 }); 10267 + nextcloud26Packages = ( callPackage ../servers/nextcloud/packages { 10268 + apps = lib.importJSON ../servers/nextcloud/packages/26.json; 10269 + }); 10270 10271 nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; 10272 ··· 13060 tydra = callPackage ../tools/misc/tydra { }; 13061 13062 typos = callPackage ../development/tools/typos { }; 13063 + 13064 + typst = callPackage ../tools/typesetting/typst { }; 13065 13066 tz = callPackage ../tools/misc/tz { }; 13067 ··· 21352 21353 libgnurl = callPackage ../development/libraries/libgnurl { }; 21354 21355 + libgourou = callPackage ../development/libraries/libgourou { }; 21356 + 21357 libgringotts = callPackage ../development/libraries/libgringotts { }; 21358 21359 libgrss = callPackage ../development/libraries/libgrss { ··· 23908 unicap = callPackage ../development/libraries/unicap { }; 23909 23910 unicon-lang = callPackage ../development/interpreters/unicon-lang { }; 23911 + 23912 + updfparser = callPackage ../development/libraries/updfparser { }; 23913 23914 tsocks = callPackage ../development/libraries/tsocks { }; 23915
+2
pkgs/top-level/python-packages.nix
··· 7820 7821 py-nightscout = callPackage ../development/python-modules/py-nightscout { }; 7822 7823 py-synologydsm-api = callPackage ../development/python-modules/py-synologydsm-api { }; 7824 7825 py-sneakers = callPackage ../development/python-modules/py-sneakers { };
··· 7820 7821 py-nightscout = callPackage ../development/python-modules/py-nightscout { }; 7822 7823 + py-serializable = callPackage ../development/python-modules/py-serializable { }; 7824 + 7825 py-synologydsm-api = callPackage ../development/python-modules/py-synologydsm-api { }; 7826 7827 py-sneakers = callPackage ../development/python-modules/py-sneakers { };