Merge pull request #113185 from fabaff/libreddit

libreddit: init at 0.10.1

authored by Ben Siraphob and committed by GitHub c8a73159 59dc4085

+1597
+1
nixos/modules/module-list.nix
··· 519 519 ./services/misc/logkeys.nix 520 520 ./services/misc/leaps.nix 521 521 ./services/misc/lidarr.nix 522 + ./services/misc/libreddit.nix 522 523 ./services/misc/lifecycled.nix 523 524 ./services/misc/mame.nix 524 525 ./services/misc/matrix-appservice-discord.nix
+66
nixos/modules/services/misc/libreddit.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.services.libreddit; 7 + 8 + args = concatStringsSep " " ([ 9 + "--port ${toString cfg.port}" 10 + "--address ${cfg.address}" 11 + ] ++ optional cfg.redirect "--redirect-https"); 12 + 13 + in 14 + { 15 + options = { 16 + services.libreddit = { 17 + enable = mkEnableOption "Private front-end for Reddit"; 18 + 19 + address = mkOption { 20 + default = "0.0.0.0"; 21 + example = "127.0.0.1"; 22 + type = types.str; 23 + description = "The address to listen on"; 24 + }; 25 + 26 + port = mkOption { 27 + default = 8080; 28 + example = 8000; 29 + type = types.port; 30 + description = "The port to listen on"; 31 + }; 32 + 33 + redirect = mkOption { 34 + type = types.bool; 35 + default = false; 36 + description = "Enable the redirecting to HTTPS"; 37 + }; 38 + 39 + openFirewall = mkOption { 40 + type = types.bool; 41 + default = false; 42 + description = "Open ports in the firewall for the libreddit web interface"; 43 + }; 44 + 45 + }; 46 + }; 47 + 48 + config = mkIf cfg.enable { 49 + systemd.services.libreddit = { 50 + description = "Private front-end for Reddit"; 51 + wantedBy = [ "multi-user.target" ]; 52 + after = [ "network.target" ]; 53 + serviceConfig = { 54 + DynamicUser = true; 55 + ExecStart = "${pkgs.libreddit}/bin/libreddit ${args}"; 56 + AmbientCapabilities = lib.mkIf (cfg.port < 1024) [ "CAP_NET_BIND_SERVICE" ]; 57 + Restart = "on-failure"; 58 + RestartSec = "2s"; 59 + }; 60 + }; 61 + 62 + networking.firewall = mkIf cfg.openFirewall { 63 + allowedTCPPorts = [ cfg.port ]; 64 + }; 65 + }; 66 + }
+1
nixos/tests/all-tests.nix
··· 223 223 latestKernel.hardened = handleTest ./hardened.nix { latestKernel = true; }; 224 224 latestKernel.login = handleTest ./login.nix { latestKernel = true; }; 225 225 leaps = handleTest ./leaps.nix {}; 226 + libreddit = handleTest ./libreddit.nix {}; 226 227 lidarr = handleTest ./lidarr.nix {}; 227 228 libreswan = handleTest ./libreswan.nix {}; 228 229 lightdm = handleTest ./lightdm.nix {};
+19
nixos/tests/libreddit.nix
··· 1 + import ./make-test-python.nix ({ lib, ... }: 2 + 3 + with lib; 4 + 5 + { 6 + name = "libreddit"; 7 + meta.maintainers = with maintainers; [ fab ]; 8 + 9 + nodes.machine = 10 + { pkgs, ... }: 11 + { services.libreddit.enable = true; }; 12 + 13 + testScript = '' 14 + machine.wait_for_unit("libreddit.service") 15 + machine.wait_for_open_port("8080") 16 + # The service wants to get data from https://www.reddit.com 17 + machine.succeed("curl http://localhost:8080/") 18 + ''; 19 + })
+1466
pkgs/servers/libreddit/add-Cargo.lock.patch
··· 1 + diff --git a/Cargo.lock b/Cargo.lock 2 + new file mode 100644 3 + index 0000000..dcb4875 4 + --- /dev/null 5 + +++ b/Cargo.lock 6 + @@ -0,0 +1,1460 @@ 7 + +# This file is automatically @generated by Cargo. 8 + +# It is not intended for manual editing. 9 + +[[package]] 10 + +name = "aho-corasick" 11 + +version = "0.7.15" 12 + +source = "registry+https://github.com/rust-lang/crates.io-index" 13 + +checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5" 14 + +dependencies = [ 15 + + "memchr", 16 + +] 17 + + 18 + +[[package]] 19 + +name = "arrayvec" 20 + +version = "0.5.2" 21 + +source = "registry+https://github.com/rust-lang/crates.io-index" 22 + +checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" 23 + + 24 + +[[package]] 25 + +name = "askama" 26 + +version = "0.10.5" 27 + +source = "registry+https://github.com/rust-lang/crates.io-index" 28 + +checksum = "d298738b6e47e1034e560e5afe63aa488fea34e25ec11b855a76f0d7b8e73134" 29 + +dependencies = [ 30 + + "askama_derive", 31 + + "askama_escape", 32 + + "askama_shared", 33 + +] 34 + + 35 + +[[package]] 36 + +name = "askama_derive" 37 + +version = "0.10.5" 38 + +source = "registry+https://github.com/rust-lang/crates.io-index" 39 + +checksum = "ca2925c4c290382f9d2fa3d1c1b6a63fa1427099721ecca4749b154cc9c25522" 40 + +dependencies = [ 41 + + "askama_shared", 42 + + "proc-macro2", 43 + + "syn", 44 + +] 45 + + 46 + +[[package]] 47 + +name = "askama_escape" 48 + +version = "0.10.1" 49 + +source = "registry+https://github.com/rust-lang/crates.io-index" 50 + +checksum = "90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb" 51 + + 52 + +[[package]] 53 + +name = "askama_shared" 54 + +version = "0.11.1" 55 + +source = "registry+https://github.com/rust-lang/crates.io-index" 56 + +checksum = "2582b77e0f3c506ec4838a25fa8a5f97b9bed72bb6d3d272ea1c031d8bd373bc" 57 + +dependencies = [ 58 + + "askama_escape", 59 + + "nom", 60 + + "proc-macro2", 61 + + "quote", 62 + + "syn", 63 + +] 64 + + 65 + +[[package]] 66 + +name = "async-mutex" 67 + +version = "1.4.0" 68 + +source = "registry+https://github.com/rust-lang/crates.io-index" 69 + +checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e" 70 + +dependencies = [ 71 + + "event-listener", 72 + +] 73 + + 74 + +[[package]] 75 + +name = "async-recursion" 76 + +version = "0.3.2" 77 + +source = "registry+https://github.com/rust-lang/crates.io-index" 78 + +checksum = "d7d78656ba01f1b93024b7c3a0467f1608e4be67d725749fdcd7d2c7678fd7a2" 79 + +dependencies = [ 80 + + "proc-macro2", 81 + + "quote", 82 + + "syn", 83 + +] 84 + + 85 + +[[package]] 86 + +name = "async-trait" 87 + +version = "0.1.48" 88 + +source = "registry+https://github.com/rust-lang/crates.io-index" 89 + +checksum = "36ea56748e10732c49404c153638a15ec3d6211ec5ff35d9bb20e13b93576adf" 90 + +dependencies = [ 91 + + "proc-macro2", 92 + + "quote", 93 + + "syn", 94 + +] 95 + + 96 + +[[package]] 97 + +name = "autocfg" 98 + +version = "1.0.1" 99 + +source = "registry+https://github.com/rust-lang/crates.io-index" 100 + +checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" 101 + + 102 + +[[package]] 103 + +name = "base-x" 104 + +version = "0.2.8" 105 + +source = "registry+https://github.com/rust-lang/crates.io-index" 106 + +checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" 107 + + 108 + +[[package]] 109 + +name = "base64" 110 + +version = "0.13.0" 111 + +source = "registry+https://github.com/rust-lang/crates.io-index" 112 + +checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" 113 + + 114 + +[[package]] 115 + +name = "bitflags" 116 + +version = "1.2.1" 117 + +source = "registry+https://github.com/rust-lang/crates.io-index" 118 + +checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" 119 + + 120 + +[[package]] 121 + +name = "bitvec" 122 + +version = "0.19.5" 123 + +source = "registry+https://github.com/rust-lang/crates.io-index" 124 + +checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321" 125 + +dependencies = [ 126 + + "funty", 127 + + "radium", 128 + + "tap", 129 + + "wyz", 130 + +] 131 + + 132 + +[[package]] 133 + +name = "bumpalo" 134 + +version = "3.6.1" 135 + +source = "registry+https://github.com/rust-lang/crates.io-index" 136 + +checksum = "63396b8a4b9de3f4fdfb320ab6080762242f66a8ef174c49d8e19b674db4cdbe" 137 + + 138 + +[[package]] 139 + +name = "bytes" 140 + +version = "1.0.1" 141 + +source = "registry+https://github.com/rust-lang/crates.io-index" 142 + +checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" 143 + + 144 + +[[package]] 145 + +name = "cached" 146 + +version = "0.23.0" 147 + +source = "registry+https://github.com/rust-lang/crates.io-index" 148 + +checksum = "5e2afe73808fbaac302e39c9754bfc3c4b4d0f99c9c240b9f4e4efc841ad1b74" 149 + +dependencies = [ 150 + + "async-mutex", 151 + + "async-trait", 152 + + "cached_proc_macro", 153 + + "cached_proc_macro_types", 154 + + "futures", 155 + + "hashbrown", 156 + + "once_cell", 157 + +] 158 + + 159 + +[[package]] 160 + +name = "cached_proc_macro" 161 + +version = "0.6.0" 162 + +source = "registry+https://github.com/rust-lang/crates.io-index" 163 + +checksum = "bf857ae42d910aede5c5186e62684b0d7a597ce2fe3bd14448ab8f7ef439848c" 164 + +dependencies = [ 165 + + "async-mutex", 166 + + "cached_proc_macro_types", 167 + + "darling", 168 + + "quote", 169 + + "syn", 170 + +] 171 + + 172 + +[[package]] 173 + +name = "cached_proc_macro_types" 174 + +version = "0.1.0" 175 + +source = "registry+https://github.com/rust-lang/crates.io-index" 176 + +checksum = "3a4f925191b4367301851c6d99b09890311d74b0d43f274c0b34c86d308a3663" 177 + + 178 + +[[package]] 179 + +name = "cc" 180 + +version = "1.0.67" 181 + +source = "registry+https://github.com/rust-lang/crates.io-index" 182 + +checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd" 183 + + 184 + +[[package]] 185 + +name = "cfg-if" 186 + +version = "1.0.0" 187 + +source = "registry+https://github.com/rust-lang/crates.io-index" 188 + +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 189 + + 190 + +[[package]] 191 + +name = "clap" 192 + +version = "2.33.3" 193 + +source = "registry+https://github.com/rust-lang/crates.io-index" 194 + +checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" 195 + +dependencies = [ 196 + + "bitflags", 197 + + "textwrap", 198 + + "unicode-width", 199 + +] 200 + + 201 + +[[package]] 202 + +name = "const_fn" 203 + +version = "0.4.6" 204 + +source = "registry+https://github.com/rust-lang/crates.io-index" 205 + +checksum = "076a6803b0dacd6a88cfe64deba628b01533ff5ef265687e6938280c1afd0a28" 206 + + 207 + +[[package]] 208 + +name = "cookie" 209 + +version = "0.15.0" 210 + +source = "registry+https://github.com/rust-lang/crates.io-index" 211 + +checksum = "ffdf8865bac3d9a3bde5bde9088ca431b11f5d37c7a578b8086af77248b76627" 212 + +dependencies = [ 213 + + "time", 214 + + "version_check", 215 + +] 216 + + 217 + +[[package]] 218 + +name = "core-foundation" 219 + +version = "0.9.1" 220 + +source = "registry+https://github.com/rust-lang/crates.io-index" 221 + +checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" 222 + +dependencies = [ 223 + + "core-foundation-sys", 224 + + "libc", 225 + +] 226 + + 227 + +[[package]] 228 + +name = "core-foundation-sys" 229 + +version = "0.8.2" 230 + +source = "registry+https://github.com/rust-lang/crates.io-index" 231 + +checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" 232 + + 233 + +[[package]] 234 + +name = "ct-logs" 235 + +version = "0.8.0" 236 + +source = "registry+https://github.com/rust-lang/crates.io-index" 237 + +checksum = "c1a816186fa68d9e426e3cb4ae4dff1fcd8e4a2c34b781bf7a822574a0d0aac8" 238 + +dependencies = [ 239 + + "sct", 240 + +] 241 + + 242 + +[[package]] 243 + +name = "darling" 244 + +version = "0.10.2" 245 + +source = "registry+https://github.com/rust-lang/crates.io-index" 246 + +checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" 247 + +dependencies = [ 248 + + "darling_core", 249 + + "darling_macro", 250 + +] 251 + + 252 + +[[package]] 253 + +name = "darling_core" 254 + +version = "0.10.2" 255 + +source = "registry+https://github.com/rust-lang/crates.io-index" 256 + +checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" 257 + +dependencies = [ 258 + + "fnv", 259 + + "ident_case", 260 + + "proc-macro2", 261 + + "quote", 262 + + "strsim", 263 + + "syn", 264 + +] 265 + + 266 + +[[package]] 267 + +name = "darling_macro" 268 + +version = "0.10.2" 269 + +source = "registry+https://github.com/rust-lang/crates.io-index" 270 + +checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" 271 + +dependencies = [ 272 + + "darling_core", 273 + + "quote", 274 + + "syn", 275 + +] 276 + + 277 + +[[package]] 278 + +name = "discard" 279 + +version = "1.0.4" 280 + +source = "registry+https://github.com/rust-lang/crates.io-index" 281 + +checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" 282 + + 283 + +[[package]] 284 + +name = "event-listener" 285 + +version = "2.5.1" 286 + +source = "registry+https://github.com/rust-lang/crates.io-index" 287 + +checksum = "f7531096570974c3a9dcf9e4b8e1cede1ec26cf5046219fb3b9d897503b9be59" 288 + + 289 + +[[package]] 290 + +name = "fastrand" 291 + +version = "1.4.0" 292 + +source = "registry+https://github.com/rust-lang/crates.io-index" 293 + +checksum = "ca5faf057445ce5c9d4329e382b2ce7ca38550ef3b73a5348362d5f24e0c7fe3" 294 + +dependencies = [ 295 + + "instant", 296 + +] 297 + + 298 + +[[package]] 299 + +name = "fnv" 300 + +version = "1.0.7" 301 + +source = "registry+https://github.com/rust-lang/crates.io-index" 302 + +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 303 + + 304 + +[[package]] 305 + +name = "form_urlencoded" 306 + +version = "1.0.1" 307 + +source = "registry+https://github.com/rust-lang/crates.io-index" 308 + +checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" 309 + +dependencies = [ 310 + + "matches", 311 + + "percent-encoding", 312 + +] 313 + + 314 + +[[package]] 315 + +name = "funty" 316 + +version = "1.1.0" 317 + +source = "registry+https://github.com/rust-lang/crates.io-index" 318 + +checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" 319 + + 320 + +[[package]] 321 + +name = "futures" 322 + +version = "0.3.14" 323 + +source = "registry+https://github.com/rust-lang/crates.io-index" 324 + +checksum = "a9d5813545e459ad3ca1bff9915e9ad7f1a47dc6a91b627ce321d5863b7dd253" 325 + +dependencies = [ 326 + + "futures-channel", 327 + + "futures-core", 328 + + "futures-executor", 329 + + "futures-io", 330 + + "futures-sink", 331 + + "futures-task", 332 + + "futures-util", 333 + +] 334 + + 335 + +[[package]] 336 + +name = "futures-channel" 337 + +version = "0.3.14" 338 + +source = "registry+https://github.com/rust-lang/crates.io-index" 339 + +checksum = "ce79c6a52a299137a6013061e0cf0e688fce5d7f1bc60125f520912fdb29ec25" 340 + +dependencies = [ 341 + + "futures-core", 342 + + "futures-sink", 343 + +] 344 + + 345 + +[[package]] 346 + +name = "futures-core" 347 + +version = "0.3.14" 348 + +source = "registry+https://github.com/rust-lang/crates.io-index" 349 + +checksum = "098cd1c6dda6ca01650f1a37a794245eb73181d0d4d4e955e2f3c37db7af1815" 350 + + 351 + +[[package]] 352 + +name = "futures-executor" 353 + +version = "0.3.14" 354 + +source = "registry+https://github.com/rust-lang/crates.io-index" 355 + +checksum = "10f6cb7042eda00f0049b1d2080aa4b93442997ee507eb3828e8bd7577f94c9d" 356 + +dependencies = [ 357 + + "futures-core", 358 + + "futures-task", 359 + + "futures-util", 360 + +] 361 + + 362 + +[[package]] 363 + +name = "futures-io" 364 + +version = "0.3.14" 365 + +source = "registry+https://github.com/rust-lang/crates.io-index" 366 + +checksum = "365a1a1fb30ea1c03a830fdb2158f5236833ac81fa0ad12fe35b29cddc35cb04" 367 + + 368 + +[[package]] 369 + +name = "futures-lite" 370 + +version = "1.11.3" 371 + +source = "registry+https://github.com/rust-lang/crates.io-index" 372 + +checksum = "b4481d0cd0de1d204a4fa55e7d45f07b1d958abcb06714b3446438e2eff695fb" 373 + +dependencies = [ 374 + + "fastrand", 375 + + "futures-core", 376 + + "futures-io", 377 + + "memchr", 378 + + "parking", 379 + + "pin-project-lite", 380 + + "waker-fn", 381 + +] 382 + + 383 + +[[package]] 384 + +name = "futures-macro" 385 + +version = "0.3.14" 386 + +source = "registry+https://github.com/rust-lang/crates.io-index" 387 + +checksum = "668c6733a182cd7deb4f1de7ba3bf2120823835b3bcfbeacf7d2c4a773c1bb8b" 388 + +dependencies = [ 389 + + "proc-macro-hack", 390 + + "proc-macro2", 391 + + "quote", 392 + + "syn", 393 + +] 394 + + 395 + +[[package]] 396 + +name = "futures-sink" 397 + +version = "0.3.14" 398 + +source = "registry+https://github.com/rust-lang/crates.io-index" 399 + +checksum = "5c5629433c555de3d82861a7a4e3794a4c40040390907cfbfd7143a92a426c23" 400 + + 401 + +[[package]] 402 + +name = "futures-task" 403 + +version = "0.3.14" 404 + +source = "registry+https://github.com/rust-lang/crates.io-index" 405 + +checksum = "ba7aa51095076f3ba6d9a1f702f74bd05ec65f555d70d2033d55ba8d69f581bc" 406 + + 407 + +[[package]] 408 + +name = "futures-util" 409 + +version = "0.3.14" 410 + +source = "registry+https://github.com/rust-lang/crates.io-index" 411 + +checksum = "3c144ad54d60f23927f0a6b6d816e4271278b64f005ad65e4e35291d2de9c025" 412 + +dependencies = [ 413 + + "futures-channel", 414 + + "futures-core", 415 + + "futures-io", 416 + + "futures-macro", 417 + + "futures-sink", 418 + + "futures-task", 419 + + "memchr", 420 + + "pin-project-lite", 421 + + "pin-utils", 422 + + "proc-macro-hack", 423 + + "proc-macro-nested", 424 + + "slab", 425 + +] 426 + + 427 + +[[package]] 428 + +name = "h2" 429 + +version = "0.3.2" 430 + +source = "registry+https://github.com/rust-lang/crates.io-index" 431 + +checksum = "fc018e188373e2777d0ef2467ebff62a08e66c3f5857b23c8fbec3018210dc00" 432 + +dependencies = [ 433 + + "bytes", 434 + + "fnv", 435 + + "futures-core", 436 + + "futures-sink", 437 + + "futures-util", 438 + + "http", 439 + + "indexmap", 440 + + "slab", 441 + + "tokio", 442 + + "tokio-util", 443 + + "tracing", 444 + +] 445 + + 446 + +[[package]] 447 + +name = "hashbrown" 448 + +version = "0.9.1" 449 + +source = "registry+https://github.com/rust-lang/crates.io-index" 450 + +checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" 451 + + 452 + +[[package]] 453 + +name = "hermit-abi" 454 + +version = "0.1.18" 455 + +source = "registry+https://github.com/rust-lang/crates.io-index" 456 + +checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" 457 + +dependencies = [ 458 + + "libc", 459 + +] 460 + + 461 + +[[package]] 462 + +name = "http" 463 + +version = "0.2.4" 464 + +source = "registry+https://github.com/rust-lang/crates.io-index" 465 + +checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11" 466 + +dependencies = [ 467 + + "bytes", 468 + + "fnv", 469 + + "itoa", 470 + +] 471 + + 472 + +[[package]] 473 + +name = "http-body" 474 + +version = "0.4.1" 475 + +source = "registry+https://github.com/rust-lang/crates.io-index" 476 + +checksum = "5dfb77c123b4e2f72a2069aeae0b4b4949cc7e966df277813fc16347e7549737" 477 + +dependencies = [ 478 + + "bytes", 479 + + "http", 480 + + "pin-project-lite", 481 + +] 482 + + 483 + +[[package]] 484 + +name = "httparse" 485 + +version = "1.3.6" 486 + +source = "registry+https://github.com/rust-lang/crates.io-index" 487 + +checksum = "bc35c995b9d93ec174cf9a27d425c7892722101e14993cd227fdb51d70cf9589" 488 + + 489 + +[[package]] 490 + +name = "httpdate" 491 + +version = "0.3.2" 492 + +source = "registry+https://github.com/rust-lang/crates.io-index" 493 + +checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" 494 + + 495 + +[[package]] 496 + +name = "hyper" 497 + +version = "0.14.5" 498 + +source = "registry+https://github.com/rust-lang/crates.io-index" 499 + +checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1" 500 + +dependencies = [ 501 + + "bytes", 502 + + "futures-channel", 503 + + "futures-core", 504 + + "futures-util", 505 + + "h2", 506 + + "http", 507 + + "http-body", 508 + + "httparse", 509 + + "httpdate", 510 + + "itoa", 511 + + "pin-project", 512 + + "socket2", 513 + + "tokio", 514 + + "tower-service", 515 + + "tracing", 516 + + "want", 517 + +] 518 + + 519 + +[[package]] 520 + +name = "hyper-rustls" 521 + +version = "0.22.1" 522 + +source = "registry+https://github.com/rust-lang/crates.io-index" 523 + +checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" 524 + +dependencies = [ 525 + + "ct-logs", 526 + + "futures-util", 527 + + "hyper", 528 + + "log", 529 + + "rustls", 530 + + "rustls-native-certs", 531 + + "tokio", 532 + + "tokio-rustls", 533 + + "webpki", 534 + +] 535 + + 536 + +[[package]] 537 + +name = "ident_case" 538 + +version = "1.0.1" 539 + +source = "registry+https://github.com/rust-lang/crates.io-index" 540 + +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 541 + + 542 + +[[package]] 543 + +name = "idna" 544 + +version = "0.2.2" 545 + +source = "registry+https://github.com/rust-lang/crates.io-index" 546 + +checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21" 547 + +dependencies = [ 548 + + "matches", 549 + + "unicode-bidi", 550 + + "unicode-normalization", 551 + +] 552 + + 553 + +[[package]] 554 + +name = "indexmap" 555 + +version = "1.6.2" 556 + +source = "registry+https://github.com/rust-lang/crates.io-index" 557 + +checksum = "824845a0bf897a9042383849b02c1bc219c2383772efcd5c6f9766fa4b81aef3" 558 + +dependencies = [ 559 + + "autocfg", 560 + + "hashbrown", 561 + +] 562 + + 563 + +[[package]] 564 + +name = "instant" 565 + +version = "0.1.9" 566 + +source = "registry+https://github.com/rust-lang/crates.io-index" 567 + +checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec" 568 + +dependencies = [ 569 + + "cfg-if", 570 + +] 571 + + 572 + +[[package]] 573 + +name = "itoa" 574 + +version = "0.4.7" 575 + +source = "registry+https://github.com/rust-lang/crates.io-index" 576 + +checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" 577 + + 578 + +[[package]] 579 + +name = "js-sys" 580 + +version = "0.3.50" 581 + +source = "registry+https://github.com/rust-lang/crates.io-index" 582 + +checksum = "2d99f9e3e84b8f67f846ef5b4cbbc3b1c29f6c759fcbce6f01aa0e73d932a24c" 583 + +dependencies = [ 584 + + "wasm-bindgen", 585 + +] 586 + + 587 + +[[package]] 588 + +name = "lazy_static" 589 + +version = "1.4.0" 590 + +source = "registry+https://github.com/rust-lang/crates.io-index" 591 + +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 592 + + 593 + +[[package]] 594 + +name = "lexical-core" 595 + +version = "0.7.5" 596 + +source = "registry+https://github.com/rust-lang/crates.io-index" 597 + +checksum = "21f866863575d0e1d654fbeeabdc927292fdf862873dc3c96c6f753357e13374" 598 + +dependencies = [ 599 + + "arrayvec", 600 + + "bitflags", 601 + + "cfg-if", 602 + + "ryu", 603 + + "static_assertions", 604 + +] 605 + + 606 + +[[package]] 607 + +name = "libc" 608 + +version = "0.2.93" 609 + +source = "registry+https://github.com/rust-lang/crates.io-index" 610 + +checksum = "9385f66bf6105b241aa65a61cb923ef20efc665cb9f9bb50ac2f0c4b7f378d41" 611 + + 612 + +[[package]] 613 + +name = "libreddit" 614 + +version = "0.10.1" 615 + +dependencies = [ 616 + + "askama", 617 + + "async-recursion", 618 + + "cached", 619 + + "clap", 620 + + "cookie", 621 + + "futures-lite", 622 + + "hyper", 623 + + "hyper-rustls", 624 + + "regex", 625 + + "route-recognizer", 626 + + "serde", 627 + + "serde_json", 628 + + "time", 629 + + "tokio", 630 + + "url", 631 + +] 632 + + 633 + +[[package]] 634 + +name = "lock_api" 635 + +version = "0.4.3" 636 + +source = "registry+https://github.com/rust-lang/crates.io-index" 637 + +checksum = "5a3c91c24eae6777794bb1997ad98bbb87daf92890acab859f7eaa4320333176" 638 + +dependencies = [ 639 + + "scopeguard", 640 + +] 641 + + 642 + +[[package]] 643 + +name = "log" 644 + +version = "0.4.14" 645 + +source = "registry+https://github.com/rust-lang/crates.io-index" 646 + +checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" 647 + +dependencies = [ 648 + + "cfg-if", 649 + +] 650 + + 651 + +[[package]] 652 + +name = "matches" 653 + +version = "0.1.8" 654 + +source = "registry+https://github.com/rust-lang/crates.io-index" 655 + +checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" 656 + + 657 + +[[package]] 658 + +name = "memchr" 659 + +version = "2.3.4" 660 + +source = "registry+https://github.com/rust-lang/crates.io-index" 661 + +checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" 662 + + 663 + +[[package]] 664 + +name = "mio" 665 + +version = "0.7.11" 666 + +source = "registry+https://github.com/rust-lang/crates.io-index" 667 + +checksum = "cf80d3e903b34e0bd7282b218398aec54e082c840d9baf8339e0080a0c542956" 668 + +dependencies = [ 669 + + "libc", 670 + + "log", 671 + + "miow", 672 + + "ntapi", 673 + + "winapi", 674 + +] 675 + + 676 + +[[package]] 677 + +name = "miow" 678 + +version = "0.3.7" 679 + +source = "registry+https://github.com/rust-lang/crates.io-index" 680 + +checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" 681 + +dependencies = [ 682 + + "winapi", 683 + +] 684 + + 685 + +[[package]] 686 + +name = "nom" 687 + +version = "6.1.2" 688 + +source = "registry+https://github.com/rust-lang/crates.io-index" 689 + +checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2" 690 + +dependencies = [ 691 + + "bitvec", 692 + + "funty", 693 + + "lexical-core", 694 + + "memchr", 695 + + "version_check", 696 + +] 697 + + 698 + +[[package]] 699 + +name = "ntapi" 700 + +version = "0.3.6" 701 + +source = "registry+https://github.com/rust-lang/crates.io-index" 702 + +checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44" 703 + +dependencies = [ 704 + + "winapi", 705 + +] 706 + + 707 + +[[package]] 708 + +name = "num_cpus" 709 + +version = "1.13.0" 710 + +source = "registry+https://github.com/rust-lang/crates.io-index" 711 + +checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" 712 + +dependencies = [ 713 + + "hermit-abi", 714 + + "libc", 715 + +] 716 + + 717 + +[[package]] 718 + +name = "once_cell" 719 + +version = "1.7.2" 720 + +source = "registry+https://github.com/rust-lang/crates.io-index" 721 + +checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3" 722 + + 723 + +[[package]] 724 + +name = "openssl-probe" 725 + +version = "0.1.2" 726 + +source = "registry+https://github.com/rust-lang/crates.io-index" 727 + +checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" 728 + + 729 + +[[package]] 730 + +name = "parking" 731 + +version = "2.0.0" 732 + +source = "registry+https://github.com/rust-lang/crates.io-index" 733 + +checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" 734 + + 735 + +[[package]] 736 + +name = "parking_lot" 737 + +version = "0.11.1" 738 + +source = "registry+https://github.com/rust-lang/crates.io-index" 739 + +checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" 740 + +dependencies = [ 741 + + "instant", 742 + + "lock_api", 743 + + "parking_lot_core", 744 + +] 745 + + 746 + +[[package]] 747 + +name = "parking_lot_core" 748 + +version = "0.8.3" 749 + +source = "registry+https://github.com/rust-lang/crates.io-index" 750 + +checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018" 751 + +dependencies = [ 752 + + "cfg-if", 753 + + "instant", 754 + + "libc", 755 + + "redox_syscall", 756 + + "smallvec", 757 + + "winapi", 758 + +] 759 + + 760 + +[[package]] 761 + +name = "percent-encoding" 762 + +version = "2.1.0" 763 + +source = "registry+https://github.com/rust-lang/crates.io-index" 764 + +checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" 765 + + 766 + +[[package]] 767 + +name = "pin-project" 768 + +version = "1.0.6" 769 + +source = "registry+https://github.com/rust-lang/crates.io-index" 770 + +checksum = "bc174859768806e91ae575187ada95c91a29e96a98dc5d2cd9a1fed039501ba6" 771 + +dependencies = [ 772 + + "pin-project-internal", 773 + +] 774 + + 775 + +[[package]] 776 + +name = "pin-project-internal" 777 + +version = "1.0.6" 778 + +source = "registry+https://github.com/rust-lang/crates.io-index" 779 + +checksum = "a490329918e856ed1b083f244e3bfe2d8c4f336407e4ea9e1a9f479ff09049e5" 780 + +dependencies = [ 781 + + "proc-macro2", 782 + + "quote", 783 + + "syn", 784 + +] 785 + + 786 + +[[package]] 787 + +name = "pin-project-lite" 788 + +version = "0.2.6" 789 + +source = "registry+https://github.com/rust-lang/crates.io-index" 790 + +checksum = "dc0e1f259c92177c30a4c9d177246edd0a3568b25756a977d0632cf8fa37e905" 791 + + 792 + +[[package]] 793 + +name = "pin-utils" 794 + +version = "0.1.0" 795 + +source = "registry+https://github.com/rust-lang/crates.io-index" 796 + +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 797 + + 798 + +[[package]] 799 + +name = "proc-macro-hack" 800 + +version = "0.5.19" 801 + +source = "registry+https://github.com/rust-lang/crates.io-index" 802 + +checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" 803 + + 804 + +[[package]] 805 + +name = "proc-macro-nested" 806 + +version = "0.1.7" 807 + +source = "registry+https://github.com/rust-lang/crates.io-index" 808 + +checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" 809 + + 810 + +[[package]] 811 + +name = "proc-macro2" 812 + +version = "1.0.26" 813 + +source = "registry+https://github.com/rust-lang/crates.io-index" 814 + +checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" 815 + +dependencies = [ 816 + + "unicode-xid", 817 + +] 818 + + 819 + +[[package]] 820 + +name = "quote" 821 + +version = "1.0.9" 822 + +source = "registry+https://github.com/rust-lang/crates.io-index" 823 + +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" 824 + +dependencies = [ 825 + + "proc-macro2", 826 + +] 827 + + 828 + +[[package]] 829 + +name = "radium" 830 + +version = "0.5.3" 831 + +source = "registry+https://github.com/rust-lang/crates.io-index" 832 + +checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8" 833 + + 834 + +[[package]] 835 + +name = "redox_syscall" 836 + +version = "0.2.5" 837 + +source = "registry+https://github.com/rust-lang/crates.io-index" 838 + +checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" 839 + +dependencies = [ 840 + + "bitflags", 841 + +] 842 + + 843 + +[[package]] 844 + +name = "regex" 845 + +version = "1.4.5" 846 + +source = "registry+https://github.com/rust-lang/crates.io-index" 847 + +checksum = "957056ecddbeba1b26965114e191d2e8589ce74db242b6ea25fc4062427a5c19" 848 + +dependencies = [ 849 + + "aho-corasick", 850 + + "memchr", 851 + + "regex-syntax", 852 + +] 853 + + 854 + +[[package]] 855 + +name = "regex-syntax" 856 + +version = "0.6.23" 857 + +source = "registry+https://github.com/rust-lang/crates.io-index" 858 + +checksum = "24d5f089152e60f62d28b835fbff2cd2e8dc0baf1ac13343bef92ab7eed84548" 859 + + 860 + +[[package]] 861 + +name = "ring" 862 + +version = "0.16.20" 863 + +source = "registry+https://github.com/rust-lang/crates.io-index" 864 + +checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" 865 + +dependencies = [ 866 + + "cc", 867 + + "libc", 868 + + "once_cell", 869 + + "spin", 870 + + "untrusted", 871 + + "web-sys", 872 + + "winapi", 873 + +] 874 + + 875 + +[[package]] 876 + +name = "route-recognizer" 877 + +version = "0.3.0" 878 + +source = "registry+https://github.com/rust-lang/crates.io-index" 879 + +checksum = "824172f0afccf3773c3905f5550ac94572144efe0deaf49a1f22bbca188d193e" 880 + + 881 + +[[package]] 882 + +name = "rustc_version" 883 + +version = "0.2.3" 884 + +source = "registry+https://github.com/rust-lang/crates.io-index" 885 + +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 886 + +dependencies = [ 887 + + "semver", 888 + +] 889 + + 890 + +[[package]] 891 + +name = "rustls" 892 + +version = "0.19.0" 893 + +source = "registry+https://github.com/rust-lang/crates.io-index" 894 + +checksum = "064fd21ff87c6e87ed4506e68beb42459caa4a0e2eb144932e6776768556980b" 895 + +dependencies = [ 896 + + "base64", 897 + + "log", 898 + + "ring", 899 + + "sct", 900 + + "webpki", 901 + +] 902 + + 903 + +[[package]] 904 + +name = "rustls-native-certs" 905 + +version = "0.5.0" 906 + +source = "registry+https://github.com/rust-lang/crates.io-index" 907 + +checksum = "5a07b7c1885bd8ed3831c289b7870b13ef46fe0e856d288c30d9cc17d75a2092" 908 + +dependencies = [ 909 + + "openssl-probe", 910 + + "rustls", 911 + + "schannel", 912 + + "security-framework", 913 + +] 914 + + 915 + +[[package]] 916 + +name = "ryu" 917 + +version = "1.0.5" 918 + +source = "registry+https://github.com/rust-lang/crates.io-index" 919 + +checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" 920 + + 921 + +[[package]] 922 + +name = "schannel" 923 + +version = "0.1.19" 924 + +source = "registry+https://github.com/rust-lang/crates.io-index" 925 + +checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" 926 + +dependencies = [ 927 + + "lazy_static", 928 + + "winapi", 929 + +] 930 + + 931 + +[[package]] 932 + +name = "scopeguard" 933 + +version = "1.1.0" 934 + +source = "registry+https://github.com/rust-lang/crates.io-index" 935 + +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 936 + + 937 + +[[package]] 938 + +name = "sct" 939 + +version = "0.6.1" 940 + +source = "registry+https://github.com/rust-lang/crates.io-index" 941 + +checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" 942 + +dependencies = [ 943 + + "ring", 944 + + "untrusted", 945 + +] 946 + + 947 + +[[package]] 948 + +name = "security-framework" 949 + +version = "2.2.0" 950 + +source = "registry+https://github.com/rust-lang/crates.io-index" 951 + +checksum = "3670b1d2fdf6084d192bc71ead7aabe6c06aa2ea3fbd9cc3ac111fa5c2b1bd84" 952 + +dependencies = [ 953 + + "bitflags", 954 + + "core-foundation", 955 + + "core-foundation-sys", 956 + + "libc", 957 + + "security-framework-sys", 958 + +] 959 + + 960 + +[[package]] 961 + +name = "security-framework-sys" 962 + +version = "2.2.0" 963 + +source = "registry+https://github.com/rust-lang/crates.io-index" 964 + +checksum = "3676258fd3cfe2c9a0ec99ce3038798d847ce3e4bb17746373eb9f0f1ac16339" 965 + +dependencies = [ 966 + + "core-foundation-sys", 967 + + "libc", 968 + +] 969 + + 970 + +[[package]] 971 + +name = "semver" 972 + +version = "0.9.0" 973 + +source = "registry+https://github.com/rust-lang/crates.io-index" 974 + +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" 975 + +dependencies = [ 976 + + "semver-parser", 977 + +] 978 + + 979 + +[[package]] 980 + +name = "semver-parser" 981 + +version = "0.7.0" 982 + +source = "registry+https://github.com/rust-lang/crates.io-index" 983 + +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" 984 + + 985 + +[[package]] 986 + +name = "serde" 987 + +version = "1.0.125" 988 + +source = "registry+https://github.com/rust-lang/crates.io-index" 989 + +checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171" 990 + +dependencies = [ 991 + + "serde_derive", 992 + +] 993 + + 994 + +[[package]] 995 + +name = "serde_derive" 996 + +version = "1.0.125" 997 + +source = "registry+https://github.com/rust-lang/crates.io-index" 998 + +checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d" 999 + +dependencies = [ 1000 + + "proc-macro2", 1001 + + "quote", 1002 + + "syn", 1003 + +] 1004 + + 1005 + +[[package]] 1006 + +name = "serde_json" 1007 + +version = "1.0.64" 1008 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1009 + +checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" 1010 + +dependencies = [ 1011 + + "itoa", 1012 + + "ryu", 1013 + + "serde", 1014 + +] 1015 + + 1016 + +[[package]] 1017 + +name = "sha1" 1018 + +version = "0.6.0" 1019 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1020 + +checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" 1021 + + 1022 + +[[package]] 1023 + +name = "signal-hook-registry" 1024 + +version = "1.3.0" 1025 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1026 + +checksum = "16f1d0fef1604ba8f7a073c7e701f213e056707210e9020af4528e0101ce11a6" 1027 + +dependencies = [ 1028 + + "libc", 1029 + +] 1030 + + 1031 + +[[package]] 1032 + +name = "slab" 1033 + +version = "0.4.2" 1034 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1035 + +checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" 1036 + + 1037 + +[[package]] 1038 + +name = "smallvec" 1039 + +version = "1.6.1" 1040 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1041 + +checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" 1042 + + 1043 + +[[package]] 1044 + +name = "socket2" 1045 + +version = "0.4.0" 1046 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1047 + +checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2" 1048 + +dependencies = [ 1049 + + "libc", 1050 + + "winapi", 1051 + +] 1052 + + 1053 + +[[package]] 1054 + +name = "spin" 1055 + +version = "0.5.2" 1056 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1057 + +checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" 1058 + + 1059 + +[[package]] 1060 + +name = "standback" 1061 + +version = "0.2.17" 1062 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1063 + +checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff" 1064 + +dependencies = [ 1065 + + "version_check", 1066 + +] 1067 + + 1068 + +[[package]] 1069 + +name = "static_assertions" 1070 + +version = "1.1.0" 1071 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1072 + +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 1073 + + 1074 + +[[package]] 1075 + +name = "stdweb" 1076 + +version = "0.4.20" 1077 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1078 + +checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" 1079 + +dependencies = [ 1080 + + "discard", 1081 + + "rustc_version", 1082 + + "stdweb-derive", 1083 + + "stdweb-internal-macros", 1084 + + "stdweb-internal-runtime", 1085 + + "wasm-bindgen", 1086 + +] 1087 + + 1088 + +[[package]] 1089 + +name = "stdweb-derive" 1090 + +version = "0.5.3" 1091 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1092 + +checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" 1093 + +dependencies = [ 1094 + + "proc-macro2", 1095 + + "quote", 1096 + + "serde", 1097 + + "serde_derive", 1098 + + "syn", 1099 + +] 1100 + + 1101 + +[[package]] 1102 + +name = "stdweb-internal-macros" 1103 + +version = "0.2.9" 1104 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1105 + +checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" 1106 + +dependencies = [ 1107 + + "base-x", 1108 + + "proc-macro2", 1109 + + "quote", 1110 + + "serde", 1111 + + "serde_derive", 1112 + + "serde_json", 1113 + + "sha1", 1114 + + "syn", 1115 + +] 1116 + + 1117 + +[[package]] 1118 + +name = "stdweb-internal-runtime" 1119 + +version = "0.1.5" 1120 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1121 + +checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" 1122 + + 1123 + +[[package]] 1124 + +name = "strsim" 1125 + +version = "0.9.3" 1126 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1127 + +checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" 1128 + + 1129 + +[[package]] 1130 + +name = "syn" 1131 + +version = "1.0.69" 1132 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1133 + +checksum = "48fe99c6bd8b1cc636890bcc071842de909d902c81ac7dab53ba33c421ab8ffb" 1134 + +dependencies = [ 1135 + + "proc-macro2", 1136 + + "quote", 1137 + + "unicode-xid", 1138 + +] 1139 + + 1140 + +[[package]] 1141 + +name = "tap" 1142 + +version = "1.0.1" 1143 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1144 + +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" 1145 + + 1146 + +[[package]] 1147 + +name = "textwrap" 1148 + +version = "0.11.0" 1149 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1150 + +checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" 1151 + +dependencies = [ 1152 + + "unicode-width", 1153 + +] 1154 + + 1155 + +[[package]] 1156 + +name = "time" 1157 + +version = "0.2.26" 1158 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1159 + +checksum = "08a8cbfbf47955132d0202d1662f49b2423ae35862aee471f3ba4b133358f372" 1160 + +dependencies = [ 1161 + + "const_fn", 1162 + + "libc", 1163 + + "standback", 1164 + + "stdweb", 1165 + + "time-macros", 1166 + + "version_check", 1167 + + "winapi", 1168 + +] 1169 + + 1170 + +[[package]] 1171 + +name = "time-macros" 1172 + +version = "0.1.1" 1173 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1174 + +checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" 1175 + +dependencies = [ 1176 + + "proc-macro-hack", 1177 + + "time-macros-impl", 1178 + +] 1179 + + 1180 + +[[package]] 1181 + +name = "time-macros-impl" 1182 + +version = "0.1.1" 1183 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1184 + +checksum = "e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa" 1185 + +dependencies = [ 1186 + + "proc-macro-hack", 1187 + + "proc-macro2", 1188 + + "quote", 1189 + + "standback", 1190 + + "syn", 1191 + +] 1192 + + 1193 + +[[package]] 1194 + +name = "tinyvec" 1195 + +version = "1.2.0" 1196 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1197 + +checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342" 1198 + +dependencies = [ 1199 + + "tinyvec_macros", 1200 + +] 1201 + + 1202 + +[[package]] 1203 + +name = "tinyvec_macros" 1204 + +version = "0.1.0" 1205 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1206 + +checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" 1207 + + 1208 + +[[package]] 1209 + +name = "tokio" 1210 + +version = "1.4.0" 1211 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1212 + +checksum = "134af885d758d645f0f0505c9a8b3f9bf8a348fd822e112ab5248138348f1722" 1213 + +dependencies = [ 1214 + + "autocfg", 1215 + + "bytes", 1216 + + "libc", 1217 + + "memchr", 1218 + + "mio", 1219 + + "num_cpus", 1220 + + "once_cell", 1221 + + "parking_lot", 1222 + + "pin-project-lite", 1223 + + "signal-hook-registry", 1224 + + "tokio-macros", 1225 + + "winapi", 1226 + +] 1227 + + 1228 + +[[package]] 1229 + +name = "tokio-macros" 1230 + +version = "1.1.0" 1231 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1232 + +checksum = "caf7b11a536f46a809a8a9f0bb4237020f70ecbf115b842360afb127ea2fda57" 1233 + +dependencies = [ 1234 + + "proc-macro2", 1235 + + "quote", 1236 + + "syn", 1237 + +] 1238 + + 1239 + +[[package]] 1240 + +name = "tokio-rustls" 1241 + +version = "0.22.0" 1242 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1243 + +checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" 1244 + +dependencies = [ 1245 + + "rustls", 1246 + + "tokio", 1247 + + "webpki", 1248 + +] 1249 + + 1250 + +[[package]] 1251 + +name = "tokio-util" 1252 + +version = "0.6.5" 1253 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1254 + +checksum = "5143d049e85af7fbc36f5454d990e62c2df705b3589f123b71f441b6b59f443f" 1255 + +dependencies = [ 1256 + + "bytes", 1257 + + "futures-core", 1258 + + "futures-sink", 1259 + + "log", 1260 + + "pin-project-lite", 1261 + + "tokio", 1262 + +] 1263 + + 1264 + +[[package]] 1265 + +name = "tower-service" 1266 + +version = "0.3.1" 1267 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1268 + +checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" 1269 + + 1270 + +[[package]] 1271 + +name = "tracing" 1272 + +version = "0.1.25" 1273 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1274 + +checksum = "01ebdc2bb4498ab1ab5f5b73c5803825e60199229ccba0698170e3be0e7f959f" 1275 + +dependencies = [ 1276 + + "cfg-if", 1277 + + "pin-project-lite", 1278 + + "tracing-core", 1279 + +] 1280 + + 1281 + +[[package]] 1282 + +name = "tracing-core" 1283 + +version = "0.1.17" 1284 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1285 + +checksum = "f50de3927f93d202783f4513cda820ab47ef17f624b03c096e86ef00c67e6b5f" 1286 + +dependencies = [ 1287 + + "lazy_static", 1288 + +] 1289 + + 1290 + +[[package]] 1291 + +name = "try-lock" 1292 + +version = "0.2.3" 1293 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1294 + +checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" 1295 + + 1296 + +[[package]] 1297 + +name = "unicode-bidi" 1298 + +version = "0.3.5" 1299 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1300 + +checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0" 1301 + +dependencies = [ 1302 + + "matches", 1303 + +] 1304 + + 1305 + +[[package]] 1306 + +name = "unicode-normalization" 1307 + +version = "0.1.17" 1308 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1309 + +checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef" 1310 + +dependencies = [ 1311 + + "tinyvec", 1312 + +] 1313 + + 1314 + +[[package]] 1315 + +name = "unicode-width" 1316 + +version = "0.1.8" 1317 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1318 + +checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" 1319 + + 1320 + +[[package]] 1321 + +name = "unicode-xid" 1322 + +version = "0.2.1" 1323 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1324 + +checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" 1325 + + 1326 + +[[package]] 1327 + +name = "untrusted" 1328 + +version = "0.7.1" 1329 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1330 + +checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" 1331 + + 1332 + +[[package]] 1333 + +name = "url" 1334 + +version = "2.2.1" 1335 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1336 + +checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b" 1337 + +dependencies = [ 1338 + + "form_urlencoded", 1339 + + "idna", 1340 + + "matches", 1341 + + "percent-encoding", 1342 + +] 1343 + + 1344 + +[[package]] 1345 + +name = "version_check" 1346 + +version = "0.9.3" 1347 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1348 + +checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" 1349 + + 1350 + +[[package]] 1351 + +name = "waker-fn" 1352 + +version = "1.1.0" 1353 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1354 + +checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" 1355 + + 1356 + +[[package]] 1357 + +name = "want" 1358 + +version = "0.3.0" 1359 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1360 + +checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" 1361 + +dependencies = [ 1362 + + "log", 1363 + + "try-lock", 1364 + +] 1365 + + 1366 + +[[package]] 1367 + +name = "wasm-bindgen" 1368 + +version = "0.2.73" 1369 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1370 + +checksum = "83240549659d187488f91f33c0f8547cbfef0b2088bc470c116d1d260ef623d9" 1371 + +dependencies = [ 1372 + + "cfg-if", 1373 + + "wasm-bindgen-macro", 1374 + +] 1375 + + 1376 + +[[package]] 1377 + +name = "wasm-bindgen-backend" 1378 + +version = "0.2.73" 1379 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1380 + +checksum = "ae70622411ca953215ca6d06d3ebeb1e915f0f6613e3b495122878d7ebec7dae" 1381 + +dependencies = [ 1382 + + "bumpalo", 1383 + + "lazy_static", 1384 + + "log", 1385 + + "proc-macro2", 1386 + + "quote", 1387 + + "syn", 1388 + + "wasm-bindgen-shared", 1389 + +] 1390 + + 1391 + +[[package]] 1392 + +name = "wasm-bindgen-macro" 1393 + +version = "0.2.73" 1394 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1395 + +checksum = "3e734d91443f177bfdb41969de821e15c516931c3c3db3d318fa1b68975d0f6f" 1396 + +dependencies = [ 1397 + + "quote", 1398 + + "wasm-bindgen-macro-support", 1399 + +] 1400 + + 1401 + +[[package]] 1402 + +name = "wasm-bindgen-macro-support" 1403 + +version = "0.2.73" 1404 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1405 + +checksum = "d53739ff08c8a68b0fdbcd54c372b8ab800b1449ab3c9d706503bc7dd1621b2c" 1406 + +dependencies = [ 1407 + + "proc-macro2", 1408 + + "quote", 1409 + + "syn", 1410 + + "wasm-bindgen-backend", 1411 + + "wasm-bindgen-shared", 1412 + +] 1413 + + 1414 + +[[package]] 1415 + +name = "wasm-bindgen-shared" 1416 + +version = "0.2.73" 1417 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1418 + +checksum = "d9a543ae66aa233d14bb765ed9af4a33e81b8b58d1584cf1b47ff8cd0b9e4489" 1419 + + 1420 + +[[package]] 1421 + +name = "web-sys" 1422 + +version = "0.3.50" 1423 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1424 + +checksum = "a905d57e488fec8861446d3393670fb50d27a262344013181c2cdf9fff5481be" 1425 + +dependencies = [ 1426 + + "js-sys", 1427 + + "wasm-bindgen", 1428 + +] 1429 + + 1430 + +[[package]] 1431 + +name = "webpki" 1432 + +version = "0.21.4" 1433 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1434 + +checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" 1435 + +dependencies = [ 1436 + + "ring", 1437 + + "untrusted", 1438 + +] 1439 + + 1440 + +[[package]] 1441 + +name = "winapi" 1442 + +version = "0.3.9" 1443 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1444 + +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1445 + +dependencies = [ 1446 + + "winapi-i686-pc-windows-gnu", 1447 + + "winapi-x86_64-pc-windows-gnu", 1448 + +] 1449 + + 1450 + +[[package]] 1451 + +name = "winapi-i686-pc-windows-gnu" 1452 + +version = "0.4.0" 1453 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1454 + +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1455 + + 1456 + +[[package]] 1457 + +name = "winapi-x86_64-pc-windows-gnu" 1458 + +version = "0.4.0" 1459 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1460 + +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1461 + + 1462 + +[[package]] 1463 + +name = "wyz" 1464 + +version = "0.2.0" 1465 + +source = "registry+https://github.com/rust-lang/crates.io-index" 1466 + +checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214"
+40
pkgs/servers/libreddit/default.nix
··· 1 + { lib 2 + , stdenv 3 + , nixosTests 4 + , rustPlatform 5 + , fetchFromGitHub 6 + , Security 7 + }: 8 + 9 + rustPlatform.buildRustPackage rec { 10 + pname = "libreddit"; 11 + version = "0.10.1"; 12 + 13 + src = fetchFromGitHub { 14 + owner = "spikecodes"; 15 + repo = pname; 16 + rev = "v${version}"; 17 + sha256 = "0f5xla6fgq4l9g95gwwvfxksaxj4zpayrsjacf53akjpxaqvqxdj"; 18 + }; 19 + 20 + cargoSha256 = "039k6kncdgy6q2lbcssj5dm9npk0yss5m081ps4nmdj2vjrkphf0"; 21 + 22 + buildInputs = lib.optional stdenv.isDarwin Security; 23 + 24 + cargoPatches = [ 25 + # Patch file to add/update Cargo.lock in the source code 26 + # https://github.com/spikecodes/libreddit/issues/191 27 + ./add-Cargo.lock.patch 28 + ]; 29 + 30 + passthru.tests = { 31 + inherit (nixosTests) libreddit; 32 + }; 33 + 34 + meta = with lib; { 35 + description = "Private front-end for Reddit"; 36 + homepage = "https://github.com/spikecodes/libreddit"; 37 + license = with licenses; [ agpl3Only ]; 38 + maintainers = with maintainers; [ fab ]; 39 + }; 40 + }
+4
pkgs/top-level/all-packages.nix
··· 6861 6861 6862 6862 libzmf = callPackage ../development/libraries/libzmf {}; 6863 6863 6864 + libreddit = callPackage ../servers/libreddit { 6865 + inherit (darwin.apple_sdk.frameworks) Security; 6866 + }; 6867 + 6864 6868 librespeed-cli = callPackage ../tools/misc/librespeed-cli { }; 6865 6869 6866 6870 libreswan = callPackage ../tools/networking/libreswan { };