From 495613d5552b7bda0d1c222f87dabb48c0a804b5 Mon Sep 17 00:00:00 2001 From: Andrea Ciceri Date: Fri, 15 Dec 2023 16:00:56 +0100 Subject: [PATCH 01/53] attic: init at unstable-2024-2-8 --- pkgs/by-name/at/attic-client/Cargo.lock | 5174 ++++++++++++++++++++++ pkgs/by-name/at/attic-client/package.nix | 72 + pkgs/by-name/at/attic-server/package.nix | 7 + 3 files changed, 5253 insertions(+) create mode 100644 pkgs/by-name/at/attic-client/Cargo.lock create mode 100644 pkgs/by-name/at/attic-client/package.nix create mode 100644 pkgs/by-name/at/attic-server/package.nix diff --git a/pkgs/by-name/at/attic-client/Cargo.lock b/pkgs/by-name/at/attic-client/Cargo.lock new file mode 100644 index 000000000000..2b7ba482f773 --- /dev/null +++ b/pkgs/by-name/at/attic-client/Cargo.lock @@ -0,0 +1,5174 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "ahash" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + +[[package]] +name = "ahash" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +dependencies = [ + "memchr", +] + +[[package]] +name = "aliasable" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" + +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "allocator-api2" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + +[[package]] +name = "anstyle-parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] + +[[package]] +name = "anyhow" +version = "1.0.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + +[[package]] +name = "async-channel" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + +[[package]] +name = "async-compression" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f658e2baef915ba0f26f1f7c42bfb8e12f532a01f449a090ded75ae7a07e9ba2" +dependencies = [ + "brotli", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", + "xz2", + "zstd", + "zstd-safe", +] + +[[package]] +name = "async-stream" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "async-trait" +version = "0.1.74" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "atoi" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528" +dependencies = [ + "num-traits", +] + +[[package]] +name = "atomic-write-file" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edcdbedc2236483ab103a53415653d6b4442ea6141baf1ffa85df29635e88436" +dependencies = [ + "nix", + "rand", +] + +[[package]] +name = "attic" +version = "0.1.0" +dependencies = [ + "async-stream", + "base64 0.21.5", + "bytes", + "cxx", + "cxx-build", + "digest", + "displaydoc", + "ed25519-compact", + "futures", + "hex", + "lazy_static", + "log", + "nix-base32", + "pkg-config", + "regex", + "serde", + "serde_json", + "serde_with", + "serde_yaml", + "sha2", + "tempfile", + "tokio", + "tokio-test", + "wildmatch", + "xdg", +] + +[[package]] +name = "attic-client" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-channel", + "attic", + "bytes", + "clap", + "clap_complete", + "const_format", + "dialoguer", + "displaydoc", + "enum-as-inner", + "futures", + "humantime", + "indicatif", + "lazy_static", + "notify", + "regex", + "reqwest", + "serde", + "serde_json", + "tokio", + "toml 0.8.8", + "tracing", + "tracing-subscriber", + "xdg", +] + +[[package]] +name = "attic-server" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-compression", + "async-stream", + "async-trait", + "attic", + "attic-token", + "aws-config", + "aws-sdk-s3", + "axum", + "axum-macros", + "base64 0.21.5", + "bytes", + "chrono", + "clap", + "console-subscriber", + "derivative", + "digest", + "displaydoc", + "enum-as-inner", + "fastcdc", + "futures", + "hex", + "humantime", + "humantime-serde", + "itoa", + "maybe-owned", + "rand", + "regex", + "ryu", + "sea-orm", + "sea-orm-migration", + "serde", + "serde_json", + "serde_with", + "sha2", + "tokio", + "tokio-test", + "tokio-util", + "toml 0.8.8", + "tower-http", + "tracing", + "tracing-error", + "tracing-subscriber", + "uuid", + "xdg", +] + +[[package]] +name = "attic-token" +version = "0.1.0" +dependencies = [ + "attic", + "base64 0.21.5", + "chrono", + "displaydoc", + "jwt-simple", + "lazy_static", + "regex", + "serde", + "serde_with", + "tracing", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "aws-config" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7489a72550db3712fe3a0a92068f832d6270ff82f518b84a800af131f99570d7" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-runtime", + "aws-sdk-sso", + "aws-sdk-ssooidc", + "aws-sdk-sts", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand", + "hex", + "http", + "hyper", + "ring", + "time", + "tokio", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-credential-types" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80009846d61a0a4f9070d789cf0e64db284cba6984fae3871050d044e6569cd2" +dependencies = [ + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "zeroize", +] + +[[package]] +name = "aws-http" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e65730b741a5f6422fd338bf6f76b7956b090affeaa045e78fca8c4186e0fd5" +dependencies = [ + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http", + "http-body", + "pin-project-lite", + "tracing", +] + +[[package]] +name = "aws-runtime" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2414b96071ae840b97c0cc1d44b248d5607d648593cdf474f3fb5465572898" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "fastrand", + "http", + "percent-encoding", + "tracing", + "uuid", +] + +[[package]] +name = "aws-sdk-s3" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84022763485483ea17d417f9832d5da198bc36829b59f086c0d35ecd2ce59991" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-runtime", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-checksums", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "bytes", + "http", + "http-body", + "once_cell", + "percent-encoding", + "regex", + "tracing", + "url", +] + +[[package]] +name = "aws-sdk-sso" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "341a5b00567d0f350025501c8fd36e1ca8055744a2d17e351f0b254f84eba48a" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http", + "regex", + "tracing", +] + +[[package]] +name = "aws-sdk-ssooidc" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbd4bffbd26f66269933bcd26123f2d6860769c0f769b6d3fc10eda025d287d8" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http", + "regex", + "tracing", +] + +[[package]] +name = "aws-sdk-sts" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51b1a8ae5c7098502a3e6d4130dbee1e1d3fcb8dc5d65cecab39e01d595f90f6" +dependencies = [ + "aws-credential-types", + "aws-http", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http", + "regex", + "tracing", +] + +[[package]] +name = "aws-sigv4" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3347c738e0a8449020877d319cda56da74d6e8aba9fff210720fac66cae3c7f4" +dependencies = [ + "aws-credential-types", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime-api", + "bytes", + "form_urlencoded", + "hex", + "hmac", + "http", + "num-bigint", + "once_cell", + "p256 0.11.1", + "percent-encoding", + "regex", + "ring", + "sha2", + "time", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-async" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4b65a284265d3eec6cc9f1daef2d0cc3b78684b712cb6c7f1d0f665456b7604" +dependencies = [ + "futures-util", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "aws-smithy-checksums" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d40f1d5a222ba11ac7d6b20f3668ae282970e50615fa5ee1dd8ac8180c0c1803" +dependencies = [ + "aws-smithy-http", + "aws-smithy-types", + "bytes", + "crc32c", + "crc32fast", + "hex", + "http", + "http-body", + "md-5", + "pin-project-lite", + "sha1", + "sha2", + "tracing", +] + +[[package]] +name = "aws-smithy-eventstream" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b16e7ecebc2b083a1b138868a46a343204a6097f343c4830a8b22b3a0d30013e" +dependencies = [ + "aws-smithy-types", + "bytes", + "crc32fast", +] + +[[package]] +name = "aws-smithy-http" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "715aeb61fb743848d5d398ce6fb1259f5eba5e13dceec5d5064cada1a181d38d" +dependencies = [ + "aws-smithy-eventstream", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "bytes-utils", + "futures-core", + "http", + "http-body", + "once_cell", + "percent-encoding", + "pin-project-lite", + "pin-utils", + "tracing", +] + +[[package]] +name = "aws-smithy-json" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de21d368dcd5cab17033406ea6e7351b091164b208381de837510bd7558c0f30" +dependencies = [ + "aws-smithy-types", +] + +[[package]] +name = "aws-smithy-query" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5ace389c7e4def130bff7275647481c8d49b867909ca61d5dc9a809b3632f3" +dependencies = [ + "aws-smithy-types", + "urlencoding", +] + +[[package]] +name = "aws-smithy-runtime" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb4395310662d10f1847324af5fe43e621922cba03b1aa6d26c21096e18a4e79" +dependencies = [ + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "fastrand", + "http", + "http-body", + "hyper", + "hyper-rustls", + "once_cell", + "pin-project-lite", + "pin-utils", + "rustls", + "tokio", + "tracing", +] + +[[package]] +name = "aws-smithy-runtime-api" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30e27594c06f5b36e97d18ef26ed693f1d4c7167b9bbb544b3a9bb653f9f7035" +dependencies = [ + "aws-smithy-async", + "aws-smithy-types", + "bytes", + "http", + "pin-project-lite", + "tokio", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-types" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d36f1723ed61e82094498e7283510fe21484b73c215c33874c81a84411b5bdc" +dependencies = [ + "base64-simd", + "bytes", + "bytes-utils", + "futures-core", + "http", + "http-body", + "itoa", + "num-integer", + "pin-project-lite", + "pin-utils", + "ryu", + "serde", + "time", + "tokio", + "tokio-util", +] + +[[package]] +name = "aws-smithy-xml" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68225c8d3e3e6c565a3cf764aa82440837ef15c33d1dd7205e15715444e4b4ad" +dependencies = [ + "xmlparser", +] + +[[package]] +name = "aws-types" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acdc27aac60f715bab25f5d758ba5651b80aae791c48e9871ffe298683f00a2b" +dependencies = [ + "aws-credential-types", + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "http", + "rustc_version", + "tracing", +] + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http", + "http-body", + "hyper", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper", + "tokio", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http", + "http-body", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-macros" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdca6a10ecad987bda04e95606ef85a5417dcaac1a78455242d72e031e2b6b62" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "backtrace" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + +[[package]] +name = "base16ct" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" + +[[package]] +name = "base64-simd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +dependencies = [ + "outref", + "vsimd", +] + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + +[[package]] +name = "bigdecimal" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "binstring" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e0d60973d9320722cb1206f412740e162a33b8547ea8d6be75d7cff237c7a85" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" +dependencies = [ + "serde", +] + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "borsh" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4114279215a005bc675e386011e594e1d9b800918cea18fcadadcce864a2046b" +dependencies = [ + "borsh-derive", + "hashbrown 0.13.2", +] + +[[package]] +name = "borsh-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0754613691538d51f329cce9af41d7b7ca150bc973056f1156611489475f54f7" +dependencies = [ + "borsh-derive-internal", + "borsh-schema-derive-internal", + "proc-macro-crate", + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "borsh-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afb438156919598d2c7bad7e1c0adf3d26ed3840dbc010db1a882a65583ca2fb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "borsh-schema-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634205cc43f74a1b9046ef87c4540ebda95696ec0f315024860cad7c5b0f5ccd" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "brotli" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "2.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "bytecheck" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" +dependencies = [ + "bytecheck_derive", + "ptr_meta", + "simdutf8", +] + +[[package]] +name = "bytecheck_derive" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" + +[[package]] +name = "bytes-utils" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e47d3a8076e283f3acd27400535992edb3ba4b5bb72f8891ad8fbe7932a7d4b9" +dependencies = [ + "bytes", + "either", +] + +[[package]] +name = "cc" +version = "1.0.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f8e7c90afad890484a21653d08b6e209ae34770fb5ee298f9c699fcc1e5c856" +dependencies = [ + "libc", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.48.5", +] + +[[package]] +name = "clap" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_complete" +version = "4.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bffe91f06a11b4b9420f62103854e90867812cd5d01557f853c5ee8e791b12ae" +dependencies = [ + "clap", +] + +[[package]] +name = "clap_derive" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "clap_lex" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + +[[package]] +name = "coarsetime" +version = "0.1.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71367d3385c716342014ad17e3d19f7788ae514885a1f4c24f500260fb365e1a" +dependencies = [ + "libc", + "once_cell", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "concurrent-queue" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "console" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" +dependencies = [ + "encode_unicode", + "lazy_static", + "libc", + "unicode-width", + "windows-sys 0.45.0", +] + +[[package]] +name = "console-api" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd326812b3fd01da5bb1af7d340d0d555fd3d4b641e7f1dfcf5962a902952787" +dependencies = [ + "futures-core", + "prost", + "prost-types", + "tonic", + "tracing-core", +] + +[[package]] +name = "console-subscriber" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7481d4c57092cd1c19dd541b92bdce883de840df30aa5d03fd48a3935c01842e" +dependencies = [ + "console-api", + "crossbeam-channel", + "crossbeam-utils", + "futures-task", + "hdrhistogram", + "humantime", + "prost-types", + "serde", + "serde_json", + "thread_local", + "tokio", + "tokio-stream", + "tonic", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "const-oid" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f" + +[[package]] +name = "const_format" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "cpufeatures" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" +dependencies = [ + "libc", +] + +[[package]] +name = "crc" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] +name = "crc32c" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74" +dependencies = [ + "rustc_version", +] + +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crypto-bigint" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-bigint" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "ct-codecs" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3b7eb4404b8195a9abb6356f4ac07d8ba267045c8d6d220ac4dc992e6cc75df" + +[[package]] +name = "cxx" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7129e341034ecb940c9072817cd9007974ea696844fc4dd582dc1653a7fbe2e8" +dependencies = [ + "cc", + "cxxbridge-flags", + "cxxbridge-macro", + "link-cplusplus", +] + +[[package]] +name = "cxx-build" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2a24f3f5f8eed71936f21e570436f024f5c2e25628f7496aa7ccd03b90109d5" +dependencies = [ + "cc", + "codespan-reporting", + "once_cell", + "proc-macro2", + "quote", + "scratch", + "syn 2.0.39", +] + +[[package]] +name = "cxxbridge-flags" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06fdd177fc61050d63f67f5bd6351fac6ab5526694ea8e359cd9cd3b75857f44" + +[[package]] +name = "cxxbridge-macro" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "587663dd5fb3d10932c8aecfe7c844db1bcf0aee93eeab08fac13dc1212c2e7f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "darling" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.39", +] + +[[package]] +name = "darling_macro" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" +dependencies = [ + "const-oid", + "pem-rfc7468 0.6.0", + "zeroize", +] + +[[package]] +name = "der" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +dependencies = [ + "const-oid", + "pem-rfc7468 0.7.0", + "zeroize", +] + +[[package]] +name = "deranged" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "dialoguer" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" +dependencies = [ + "console", + "shell-words", + "tempfile", + "thiserror", + "zeroize", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "displaydoc" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "dotenvy" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" + +[[package]] +name = "ecdsa" +version = "0.14.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" +dependencies = [ + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + +[[package]] +name = "ecdsa" +version = "0.16.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4" +dependencies = [ + "der 0.7.8", + "digest", + "elliptic-curve 0.13.6", + "rfc6979 0.4.0", + "signature 2.1.0", + "spki 0.7.3", +] + +[[package]] +name = "ed25519-compact" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a3d382e8464107391c8706b4c14b087808ecb909f6c15c34114bc42e53a9e4c" +dependencies = [ + "ct-codecs", + "getrandom", +] + +[[package]] +name = "either" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" +dependencies = [ + "serde", +] + +[[package]] +name = "elliptic-curve" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" +dependencies = [ + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", + "digest", + "ff 0.12.1", + "generic-array", + "group 0.12.1", + "pkcs8 0.9.0", + "rand_core", + "sec1 0.3.0", + "subtle", + "zeroize", +] + +[[package]] +name = "elliptic-curve" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d97ca172ae9dc9f9b779a6e3a65d308f2af74e5b8c921299075bdb4a0370e914" +dependencies = [ + "base16ct 0.2.0", + "crypto-bigint 0.5.4", + "digest", + "ff 0.13.0", + "generic-array", + "group 0.13.0", + "hkdf", + "pem-rfc7468 0.7.0", + "pkcs8 0.10.2", + "rand_core", + "sec1 0.7.3", + "subtle", + "zeroize", +] + +[[package]] +name = "encode_unicode" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" + +[[package]] +name = "encoding_rs" +version = "0.8.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "enum-as-inner" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c18ee0ed65a5f1f81cac6b1d213b69c35fa47d4252ad41f1486dbd8226fe36e" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "etcetera" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943" +dependencies = [ + "cfg-if", + "home", + "windows-sys 0.48.0", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "fastcdc" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a71061d097bfa9a5a4d2efdec57990d9a88745020b365191d37e48541a1628f2" + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "rand_core", + "subtle", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core", + "subtle", +] + +[[package]] +name = "filetime" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.3.5", + "windows-sys 0.48.0", +] + +[[package]] +name = "finl_unicode" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" + +[[package]] +name = "flate2" +version = "1.0.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "flume" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +dependencies = [ + "futures-core", + "futures-sink", + "spin 0.9.8", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "form_urlencoded" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" + +[[package]] +name = "futures-executor" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-intrusive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f" +dependencies = [ + "futures-core", + "lock_api", + "parking_lot", +] + +[[package]] +name = "futures-io" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa" + +[[package]] +name = "futures-macro" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "futures-sink" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817" + +[[package]] +name = "futures-task" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" + +[[package]] +name = "futures-util" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "gimli" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "group" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" +dependencies = [ + "ff 0.12.1", + "rand_core", + "subtle", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff 0.13.0", + "rand_core", + "subtle", +] + +[[package]] +name = "h2" +version = "0.3.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap 1.9.3", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.7", +] + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +dependencies = [ + "ahash 0.8.6", +] + +[[package]] +name = "hashbrown" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" +dependencies = [ + "ahash 0.8.6", + "allocator-api2", +] + +[[package]] +name = "hashlink" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.2", +] + +[[package]] +name = "hdrhistogram" +version = "7.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5b38e5c02b7c7be48c8dc5217c4f1634af2ea221caae2e024bffc7a7651c691" +dependencies = [ + "base64 0.13.1", + "byteorder", + "flate2", + "nom", + "num-traits", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "hermit-abi" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "hkdf" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437" +dependencies = [ + "hmac", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest", +] + +[[package]] +name = "hmac-sha1-compact" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9d405ec732fa3fcde87264e54a32a84956a377b3e3107de96e59b798c84a7" + +[[package]] +name = "hmac-sha256" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3688e69b38018fec1557254f64c8dc2cc8ec502890182f395dbb0aa997aa5735" +dependencies = [ + "digest", +] + +[[package]] +name = "hmac-sha512" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ce1f4656bae589a3fab938f9f09bf58645b7ed01a2c5f8a3c238e01a4ef78a" +dependencies = [ + "digest", +] + +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "http" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f95b9abcae896730d42b78e09c155ed4ddf82c07b4de772c64aee5b2d8b7c150" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "http-range-header" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "humantime-serde" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c" +dependencies = [ + "humantime", + "serde", +] + +[[package]] +name = "hyper" +version = "0.14.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2 0.4.10", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http", + "hyper", + "log", + "rustls", + "rustls-native-certs", + "tokio", + "tokio-rustls", +] + +[[package]] +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper", + "pin-project-lite", + "tokio", + "tokio-io-timeout", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" +dependencies = [ + "equivalent", + "hashbrown 0.14.2", + "serde", +] + +[[package]] +name = "indicatif" +version = "0.17.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25" +dependencies = [ + "console", + "instant", + "number_prefix", + "portable-atomic", + "unicode-width", +] + +[[package]] +name = "inherent" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce243b1bfa62ffc028f1cc3b6034ec63d649f3031bc8a4fbbb004e1ac17d1f68" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags 1.3.2", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "ipnet" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" + +[[package]] +name = "js-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "jwt-simple" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357892bb32159d763abdea50733fadcb9a8e1c319a9aa77592db8555d05af83e" +dependencies = [ + "anyhow", + "binstring", + "coarsetime", + "ct-codecs", + "ed25519-compact", + "hmac-sha1-compact", + "hmac-sha256", + "hmac-sha512", + "k256", + "p256 0.13.2", + "p384", + "rand", + "rsa 0.7.2", + "serde", + "serde_json", + "spki 0.6.0", + "thiserror", + "zeroize", +] + +[[package]] +name = "k256" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc" +dependencies = [ + "cfg-if", + "ecdsa 0.16.8", + "elliptic-curve 0.13.6", + "once_cell", + "sha2", + "signature 2.1.0", +] + +[[package]] +name = "kqueue" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +dependencies = [ + "spin 0.5.2", +] + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "libsqlite3-sys" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "link-cplusplus" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d240c6f7e1ba3a28b0249f774e6a9dd0175054b52dfbb61b16eb8505c3785c9" +dependencies = [ + "cc", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "lzma-sys" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "matchit" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" + +[[package]] +name = "maybe-owned" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" + +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest", +] + +[[package]] +name = "memchr" +version = "2.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" +dependencies = [ + "libc", + "log", + "wasi", + "windows-sys 0.48.0", +] + +[[package]] +name = "nix" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +dependencies = [ + "bitflags 2.4.1", + "cfg-if", + "libc", +] + +[[package]] +name = "nix-base32" +version = "0.1.2-alpha.0" +source = "git+https://github.com/zhaofengli/nix-base32.git?rev=b850c6e9273d1c39bd93abb704a53345f5be92eb#b850c6e9273d1c39bd93abb704a53345f5be92eb" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "notify" +version = "6.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" +dependencies = [ + "bitflags 2.4.1", + "filetime", + "inotify", + "kqueue", + "libc", + "log", + "mio", + "walkdir", + "windows-sys 0.48.0", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num-bigint" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-bigint-dig" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" +dependencies = [ + "byteorder", + "lazy_static", + "libm", + "num-integer", + "num-iter", + "num-traits", + "rand", + "smallvec", + "zeroize", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-iter" +version = "0.1.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "number_prefix" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "ordered-float" +version = "3.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc" +dependencies = [ + "num-traits", +] + +[[package]] +name = "ouroboros" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2ba07320d39dfea882faa70554b4bd342a5f273ed59ba7c1c6b4c840492c954" +dependencies = [ + "aliasable", + "ouroboros_macro", + "static_assertions", +] + +[[package]] +name = "ouroboros_macro" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec4c6225c69b4ca778c0aea097321a64c421cf4577b331c61b229267edabb6f8" +dependencies = [ + "heck", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "outref" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "p256" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" +dependencies = [ + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2", +] + +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa 0.16.8", + "elliptic-curve 0.13.6", + "primeorder", + "sha2", +] + +[[package]] +name = "p384" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209" +dependencies = [ + "ecdsa 0.16.8", + "elliptic-curve 0.13.6", + "primeorder", + "sha2", +] + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.4.1", + "smallvec", + "windows-targets 0.48.5", +] + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "pem-rfc7468" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac" +dependencies = [ + "base64ct", +] + +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + +[[package]] +name = "percent-encoding" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" + +[[package]] +name = "pin-project" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs1" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eff33bdbdfc54cc98a2eca766ebdec3e1b8fb7387523d5c9c9a2891da856f719" +dependencies = [ + "der 0.6.1", + "pkcs8 0.9.0", + "spki 0.6.0", + "zeroize", +] + +[[package]] +name = "pkcs1" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" +dependencies = [ + "der 0.7.8", + "pkcs8 0.10.2", + "spki 0.7.3", +] + +[[package]] +name = "pkcs8" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +dependencies = [ + "der 0.6.1", + "spki 0.6.0", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der 0.7.8", + "spki 0.7.3", +] + +[[package]] +name = "pkg-config" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" + +[[package]] +name = "portable-atomic" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "primeorder" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7dbe9ed3b56368bd99483eb32fe9c17fdd3730aebadc906918ce78d54c7eeb4" +dependencies = [ + "elliptic-curve 0.13.6", +] + +[[package]] +name = "proc-macro-crate" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +dependencies = [ + "toml 0.5.11", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "prost" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4fdd22f3b9c31b53c060df4a0613a1c7f062d4115a2b984dd15b1858f7e340d" +dependencies = [ + "bytes", + "prost-derive", +] + +[[package]] +name = "prost-derive" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "265baba7fabd416cf5078179f7d2cbeca4ce7a9041111900675ea7c4cb8a4c32" +dependencies = [ + "anyhow", + "itertools", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "prost-types" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e081b29f63d83a4bc75cfc9f3fe424f9156cf92d8a4f0c9407cce9a1b67327cf" +dependencies = [ + "prost", +] + +[[package]] +name = "ptr_meta" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" +dependencies = [ + "ptr_meta_derive", +] + +[[package]] +name = "ptr_meta_derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "quote" +version = "1.0.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "regex" +version = "1.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.3", + "regex-syntax 0.8.2", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.2", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" + +[[package]] +name = "rend" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2571463863a6bd50c32f94402933f03457a3fbaf697a707c5be741e459f08fd" +dependencies = [ + "bytecheck", +] + +[[package]] +name = "reqwest" +version = "0.11.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" +dependencies = [ + "base64 0.21.5", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-rustls", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls", + "rustls-native-certs", + "rustls-pemfile", + "serde", + "serde_json", + "serde_urlencoded", + "system-configuration", + "tokio", + "tokio-rustls", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "webpki-roots", + "winreg", +] + +[[package]] +name = "rfc6979" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +dependencies = [ + "crypto-bigint 0.4.9", + "hmac", + "zeroize", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + +[[package]] +name = "ring" +version = "0.17.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b" +dependencies = [ + "cc", + "getrandom", + "libc", + "spin 0.9.8", + "untrusted", + "windows-sys 0.48.0", +] + +[[package]] +name = "rkyv" +version = "0.7.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" +dependencies = [ + "bitvec", + "bytecheck", + "hashbrown 0.12.3", + "ptr_meta", + "rend", + "rkyv_derive", + "seahash", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv_derive" +version = "0.7.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "rsa" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "094052d5470cbcef561cb848a7209968c9f12dfa6d668f4bca048ac5de51099c" +dependencies = [ + "byteorder", + "digest", + "num-bigint-dig", + "num-integer", + "num-iter", + "num-traits", + "pkcs1 0.4.1", + "pkcs8 0.9.0", + "rand_core", + "signature 1.6.4", + "smallvec", + "subtle", + "zeroize", +] + +[[package]] +name = "rsa" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc" +dependencies = [ + "const-oid", + "digest", + "num-bigint-dig", + "num-integer", + "num-traits", + "pkcs1 0.7.5", + "pkcs8 0.10.2", + "rand_core", + "signature 2.1.0", + "spki 0.7.3", + "subtle", + "zeroize", +] + +[[package]] +name = "rust_decimal" +version = "1.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4c4216490d5a413bc6d10fa4742bd7d4955941d062c0ef873141d6b0e7b30fd" +dependencies = [ + "arrayvec", + "borsh", + "bytes", + "num-traits", + "rand", + "rkyv", + "serde", + "serde_json", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver", +] + +[[package]] +name = "rustix" +version = "0.38.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3" +dependencies = [ + "bitflags 2.4.1", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustls" +version = "0.21.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c" +dependencies = [ + "log", + "ring", + "rustls-webpki", + "sct", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64 0.21.5", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "rustversion" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" + +[[package]] +name = "ryu" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "scratch" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152" + +[[package]] +name = "sct" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "sea-bae" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bd3534a9978d0aa7edd2808dc1f8f31c4d0ecd31ddf71d997b3c98e9f3c9114" +dependencies = [ + "heck", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sea-orm" +version = "0.12.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9195a2b2a182cbee3f76cf2a97c20204022f91259bdf8a48b537788202775b" +dependencies = [ + "async-stream", + "async-trait", + "bigdecimal", + "chrono", + "futures", + "log", + "ouroboros", + "rust_decimal", + "sea-orm-macros", + "sea-query", + "sea-query-binder", + "serde", + "serde_json", + "sqlx", + "strum", + "thiserror", + "time", + "tracing", + "url", + "uuid", +] + +[[package]] +name = "sea-orm-cli" +version = "0.12.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acc21813f3a91462280bee40632298a555eafe9dd8feb74917f9c24514214c2e" +dependencies = [ + "chrono", + "clap", + "dotenvy", + "glob", + "regex", + "sea-schema", + "tracing", + "tracing-subscriber", + "url", +] + +[[package]] +name = "sea-orm-macros" +version = "0.12.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66c6acfe3d49625c679955c7e7e7cd2d72b512a5c77bcd535a74aa41590b9f28" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "sea-bae", + "syn 2.0.39", + "unicode-ident", +] + +[[package]] +name = "sea-orm-migration" +version = "0.12.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3d06dac448288ceb630994b420cd8d5410543c0b09367f40ed505c2f03b266a" +dependencies = [ + "async-trait", + "clap", + "dotenvy", + "futures", + "sea-orm", + "sea-orm-cli", + "sea-schema", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "sea-query" +version = "0.30.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e40446e3c048cec0802375f52462a05cc774b9ea6af1dffba6c646b7825e4cf9" +dependencies = [ + "bigdecimal", + "chrono", + "derivative", + "inherent", + "ordered-float", + "rust_decimal", + "sea-query-derive", + "serde_json", + "time", + "uuid", +] + +[[package]] +name = "sea-query-binder" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36bbb68df92e820e4d5aeb17b4acd5cc8b5d18b2c36a4dd6f4626aabfa7ab1b9" +dependencies = [ + "bigdecimal", + "chrono", + "rust_decimal", + "sea-query", + "serde_json", + "sqlx", + "time", + "uuid", +] + +[[package]] +name = "sea-query-derive" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25a82fcb49253abcb45cdcb2adf92956060ec0928635eb21b4f7a6d8f25ab0bc" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", + "thiserror", +] + +[[package]] +name = "sea-schema" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cd9561232bd1b82ea748b581f15909d11de0db6563ddcf28c5d908aee8282f1" +dependencies = [ + "futures", + "sea-query", + "sea-schema-derive", +] + +[[package]] +name = "sea-schema-derive" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6f686050f76bffc4f635cda8aea6df5548666b830b52387e8bc7de11056d11e" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "seahash" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" + +[[package]] +name = "sec1" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +dependencies = [ + "base16ct 0.1.1", + "der 0.6.1", + "generic-array", + "pkcs8 0.9.0", + "subtle", + "zeroize", +] + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct 0.2.0", + "der 0.7.8", + "generic-array", + "pkcs8 0.10.2", + "subtle", + "zeroize", +] + +[[package]] +name = "security-framework" +version = "2.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" + +[[package]] +name = "serde" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_json" +version = "1.0.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_path_to_error" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" +dependencies = [ + "itoa", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_with" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" +dependencies = [ + "base64 0.21.5", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.1.0", + "serde", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_yaml" +version = "0.9.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cc7a1570e38322cfe4154732e5110f887ea57e22b76f4bfd32b5bdd3368666c" +dependencies = [ + "indexmap 2.1.0", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", + "sha2-asm", +] + +[[package]] +name = "sha2-asm" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f27ba7066011e3fb30d808b51affff34f0a66d3a03a58edd787c6e420e40e44e" +dependencies = [ + "cc", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shell-words" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" + +[[package]] +name = "signal-hook-registry" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +dependencies = [ + "digest", + "rand_core", +] + +[[package]] +name = "signature" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" +dependencies = [ + "digest", + "rand_core", +] + +[[package]] +name = "simdutf8" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" + +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "spin" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + +[[package]] +name = "spki" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +dependencies = [ + "base64ct", + "der 0.6.1", +] + +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der 0.7.8", +] + +[[package]] +name = "sqlformat" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b7b278788e7be4d0d29c0f39497a0eef3fba6bbc8e70d8bf7fde46edeaa9e85" +dependencies = [ + "itertools", + "nom", + "unicode_categories", +] + +[[package]] +name = "sqlx" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dba03c279da73694ef99763320dea58b51095dfe87d001b1d4b5fe78ba8763cf" +dependencies = [ + "sqlx-core", + "sqlx-macros", + "sqlx-mysql", + "sqlx-postgres", + "sqlx-sqlite", +] + +[[package]] +name = "sqlx-core" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d84b0a3c3739e220d94b3239fd69fb1f74bc36e16643423bd99de3b43c21bfbd" +dependencies = [ + "ahash 0.8.6", + "atoi", + "bigdecimal", + "byteorder", + "bytes", + "chrono", + "crc", + "crossbeam-queue", + "dotenvy", + "either", + "event-listener", + "futures-channel", + "futures-core", + "futures-intrusive", + "futures-io", + "futures-util", + "hashlink", + "hex", + "indexmap 2.1.0", + "log", + "memchr", + "once_cell", + "paste", + "percent-encoding", + "rust_decimal", + "rustls", + "rustls-pemfile", + "serde", + "serde_json", + "sha2", + "smallvec", + "sqlformat", + "thiserror", + "time", + "tokio", + "tokio-stream", + "tracing", + "url", + "uuid", + "webpki-roots", +] + +[[package]] +name = "sqlx-macros" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89961c00dc4d7dffb7aee214964b065072bff69e36ddb9e2c107541f75e4f2a5" +dependencies = [ + "proc-macro2", + "quote", + "sqlx-core", + "sqlx-macros-core", + "syn 1.0.109", +] + +[[package]] +name = "sqlx-macros-core" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0bd4519486723648186a08785143599760f7cc81c52334a55d6a83ea1e20841" +dependencies = [ + "atomic-write-file", + "dotenvy", + "either", + "heck", + "hex", + "once_cell", + "proc-macro2", + "quote", + "serde", + "serde_json", + "sha2", + "sqlx-core", + "sqlx-mysql", + "sqlx-postgres", + "sqlx-sqlite", + "syn 1.0.109", + "tempfile", + "tokio", + "url", +] + +[[package]] +name = "sqlx-mysql" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e37195395df71fd068f6e2082247891bc11e3289624bbc776a0cdfa1ca7f1ea4" +dependencies = [ + "atoi", + "base64 0.21.5", + "bigdecimal", + "bitflags 2.4.1", + "byteorder", + "bytes", + "chrono", + "crc", + "digest", + "dotenvy", + "either", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "generic-array", + "hex", + "hkdf", + "hmac", + "itoa", + "log", + "md-5", + "memchr", + "once_cell", + "percent-encoding", + "rand", + "rsa 0.9.6", + "rust_decimal", + "serde", + "sha1", + "sha2", + "smallvec", + "sqlx-core", + "stringprep", + "thiserror", + "time", + "tracing", + "uuid", + "whoami", +] + +[[package]] +name = "sqlx-postgres" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6ac0ac3b7ccd10cc96c7ab29791a7dd236bd94021f31eec7ba3d46a74aa1c24" +dependencies = [ + "atoi", + "base64 0.21.5", + "bigdecimal", + "bitflags 2.4.1", + "byteorder", + "chrono", + "crc", + "dotenvy", + "etcetera", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "hex", + "hkdf", + "hmac", + "home", + "itoa", + "log", + "md-5", + "memchr", + "num-bigint", + "once_cell", + "rand", + "rust_decimal", + "serde", + "serde_json", + "sha1", + "sha2", + "smallvec", + "sqlx-core", + "stringprep", + "thiserror", + "time", + "tracing", + "uuid", + "whoami", +] + +[[package]] +name = "sqlx-sqlite" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "210976b7d948c7ba9fced8ca835b11cbb2d677c59c79de41ac0d397e14547490" +dependencies = [ + "atoi", + "chrono", + "flume", + "futures-channel", + "futures-core", + "futures-executor", + "futures-intrusive", + "futures-util", + "libsqlite3-sys", + "log", + "percent-encoding", + "serde", + "sqlx-core", + "time", + "tracing", + "url", + "urlencoding", + "uuid", +] + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "stringprep" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" +dependencies = [ + "finl_unicode", + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strum" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" + +[[package]] +name = "subtle" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tempfile" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" +dependencies = [ + "cfg-if", + "fastrand", + "redox_syscall 0.4.1", + "rustix", + "windows-sys 0.48.0", +] + +[[package]] +name = "termcolor" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "thread_local" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "time" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" +dependencies = [ + "deranged", + "itoa", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" +dependencies = [ + "time-core", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "pin-project-lite", + "signal-hook-registry", + "socket2 0.5.5", + "tokio-macros", + "tracing", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-io-timeout" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" +dependencies = [ + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-macros" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-test" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89b3cbabd3ae862100094ae433e1def582cf86451b4e9bf83aa7ac1d8a7d719" +dependencies = [ + "async-stream", + "bytes", + "futures-core", + "tokio", + "tokio-stream", +] + +[[package]] +name = "tokio-util" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", + "tracing", +] + +[[package]] +name = "toml" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" +dependencies = [ + "indexmap 2.1.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tonic" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e" +dependencies = [ + "async-stream", + "async-trait", + "axum", + "base64 0.21.5", + "bytes", + "h2", + "http", + "http-body", + "hyper", + "hyper-timeout", + "percent-encoding", + "pin-project", + "prost", + "tokio", + "tokio-stream", + "tower", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand", + "slab", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-http" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" +dependencies = [ + "bitflags 2.4.1", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-range-header", + "pin-project-lite", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-layer" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "log", + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-error" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d686ec1c0f384b1277f097b2f279a2ecc11afe8c133c1aabf036a27cb4cd206e" +dependencies = [ + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "tracing-log" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", +] + +[[package]] +name = "try-lock" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "unicode-bidi" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + +[[package]] +name = "unicode-width" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" + +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + +[[package]] +name = "unicode_categories" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" + +[[package]] +name = "unsafe-libyaml" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28467d3e1d3c6586d8f25fa243f544f5800fec42d97032474e17222c2b75cfa" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "uuid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + +[[package]] +name = "walkdir" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b" + +[[package]] +name = "wasm-streams" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "web-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-roots" +version = "0.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" + +[[package]] +name = "whoami" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22fc3756b8a9133049b26c7f61ab35416c130e8c09b660f5b3958b446f52cc50" + +[[package]] +name = "wildmatch" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee583bdc5ff1cf9db20e9db5bb3ff4c3089a8f6b8b31aff265c9aba85812db86" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" + +[[package]] +name = "winnow" +version = "0.5.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "xdg" +version = "2.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" + +[[package]] +name = "xmlparser" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" + +[[package]] +name = "xz2" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" +dependencies = [ + "lzma-sys", +] + +[[package]] +name = "zerocopy" +version = "0.7.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cd369a67c0edfef15010f980c3cbe45d7f651deac2cd67ce097cd801de16557" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2f140bda219a26ccc0cdb03dba58af72590c53b22642577d88a927bc5c87d6b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "zeroize" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" + +[[package]] +name = "zstd" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "7.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43747c7422e2924c11144d5229878b98180ef8b06cca4ab5af37afc8a8d8ea3e" +dependencies = [ + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.9+zstd.1.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/pkgs/by-name/at/attic-client/package.nix b/pkgs/by-name/at/attic-client/package.nix new file mode 100644 index 000000000000..0a08628624cc --- /dev/null +++ b/pkgs/by-name/at/attic-client/package.nix @@ -0,0 +1,72 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, nix +, boost +, pkg-config +, stdenv +, installShellFiles +, darwin +, crates ? [ "attic-client" ] +}: +rustPlatform.buildRustPackage { + pname = "attic"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "zhaofengli"; + repo = "attic"; + rev = "6eabc3f02fae3683bffab483e614bebfcd476b21"; + hash = "sha256-wSZjK+rOXn+UQiP1NbdNn5/UW6UcBxjvlqr2wh++MbM="; + }; + + nativeBuildInputs = [ + pkg-config + installShellFiles + ]; + + buildInputs = [ + nix + boost + ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ + SystemConfiguration + ]); + + cargoLock = { + lockFile = ./Cargo.lock; + outputHashes = { + "nix-base32-0.1.2-alpha.0" = "sha256-wtPWGOamy3+ViEzCxMSwBcoR4HMMD0t8eyLwXfCDFdo="; + }; + }; + cargoBuildFlags = lib.concatMapStrings (c: "-p ${c} ") crates; + + ATTIC_DISTRIBUTOR = "attic"; + + # Workaround for https://github.com/NixOS/nixpkgs/issues/166205 + env = lib.optionalAttrs stdenv.cc.isClang { + NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}"; + }; + + # Attic interacts with Nix directly and its tests require trusted-user access + # to nix-daemon to import NARs, which is not possible in the build sandbox. + doCheck = false; + + postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' + if [[ -f $out/bin/attic ]]; then + installShellCompletion --cmd attic \ + --bash <($out/bin/attic gen-completions bash) \ + --zsh <($out/bin/attic gen-completions zsh) \ + --fish <($out/bin/attic gen-completions fish) + fi + ''; + + meta = with lib; { + description = "Multi-tenant Nix Binary Cache"; + homepage = "https://github.com/zhaofengli/attic"; + license = licenses.asl20; + maintainers = with maintainers; [ zhaofengli aciceri ]; + platforms = platforms.linux ++ platforms.darwin; + mainProgram = "attic"; + }; +} + diff --git a/pkgs/by-name/at/attic-server/package.nix b/pkgs/by-name/at/attic-server/package.nix new file mode 100644 index 000000000000..de07d6720130 --- /dev/null +++ b/pkgs/by-name/at/attic-server/package.nix @@ -0,0 +1,7 @@ +{ attic-client +}: +(attic-client.override { + crates = [ "attic-server" ]; +}).overrideAttrs { + meta.mainProgram = "atticd"; +} From 2da73a5ac21e474721aeea06325bd99c3bfc8ddd Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sun, 17 Mar 2024 19:05:41 +0100 Subject: [PATCH 02/53] kdePackages.extra-cmake-modules: fix hook offset In `kdePackages`, `strictDeps` is set and `extra-cmake-modules` goes into `buildInputs`. The hook should run against the `buildInputs`, so it should have `hostOffset`. This fixes for example the loading of translations that come from dependencies. --- pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh b/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh index b6c50059868f..9a4975da8e0d 100644 --- a/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh +++ b/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh @@ -6,7 +6,7 @@ ecmEnvHook() { addToSearchPath XDG_DATA_DIRS "$1/share" addToSearchPath XDG_CONFIG_DIRS "$1/etc/xdg" } -addEnvHooks "$targetOffset" ecmEnvHook +addEnvHooks "$hostOffset" ecmEnvHook ecmPostHook() { # Because we need to use absolute paths here, we must set *all* the paths. @@ -125,4 +125,4 @@ ecmHostPathHook() { propagatedUserEnvPkgs+=" $1" fi } -addEnvHooks "$targetOffset" ecmHostPathHook +addEnvHooks "$hostOffset" ecmHostPathHook From a649e0e5f75b2186b8a802ec9f58deadea7af7f0 Mon Sep 17 00:00:00 2001 From: George Huebner Date: Mon, 23 Oct 2023 11:43:24 -0500 Subject: [PATCH 03/53] fflas-ffpack: mark as unbroken on darwin --- pkgs/development/libraries/fflas-ffpack/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/fflas-ffpack/default.nix b/pkgs/development/libraries/fflas-ffpack/default.nix index 25bab6645e07..65c29f9319ce 100644 --- a/pkgs/development/libraries/fflas-ffpack/default.nix +++ b/pkgs/development/libraries/fflas-ffpack/default.nix @@ -50,7 +50,6 @@ stdenv.mkDerivation rec { doCheck = true; meta = with lib; { - broken = stdenv.isDarwin; description = "Finite Field Linear Algebra Subroutines"; mainProgram = "fflas-ffpack-config"; license = licenses.lgpl21Plus; From 178fe4e17f85295c738e128640e7e34aceb21154 Mon Sep 17 00:00:00 2001 From: George Huebner Date: Wed, 25 Oct 2023 20:51:59 -0500 Subject: [PATCH 04/53] m4rie: fix build on aarch64-darwin It appears m4rie only builds properly on Apple Clang; turning off optimizations seems to resolve the failing test cases. See https://bitbucket.org/malb/m4rie/issues/23/trying-to-compile-on-apple-m1 --- pkgs/development/libraries/science/math/m4rie/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/science/math/m4rie/default.nix b/pkgs/development/libraries/science/math/m4rie/default.nix index 214f27046527..ac513297f159 100644 --- a/pkgs/development/libraries/science/math/m4rie/default.nix +++ b/pkgs/development/libraries/science/math/m4rie/default.nix @@ -21,6 +21,9 @@ stdenv.mkDerivation rec { m4ri ]; + # does not compile correctly with -O2 on LLVM clang; see + # https://bitbucket.org/malb/m4rie/issues/23/trying-to-compile-on-apple-m1 + makeFlags = [] ++ lib.optionals stdenv.isDarwin [ "CFLAGS=-O0" ]; nativeBuildInputs = [ autoreconfHook ]; @@ -35,7 +38,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2Plus; maintainers = teams.sage.members; platforms = platforms.unix; - # never built on aarch64-darwin since first introduction in nixpkgs - broken = stdenv.isDarwin && stdenv.isAarch64; }; } From 1a7ea453d7721859d149ba7be9fc57a54a445063 Mon Sep 17 00:00:00 2001 From: George Huebner Date: Sun, 29 Oct 2023 02:49:09 -0500 Subject: [PATCH 05/53] tachyon: build on aarch64-darwin --- pkgs/development/libraries/tachyon/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/tachyon/default.nix b/pkgs/development/libraries/tachyon/default.nix index 02fb1fbc1324..2efee140a7e3 100644 --- a/pkgs/development/libraries/tachyon/default.nix +++ b/pkgs/development/libraries/tachyon/default.nix @@ -37,6 +37,7 @@ stdenv.mkDerivation rec { # see https://github.com/NixOS/nixpkgs/pull/117465 if stdenv.hostPlatform.system == "aarch64-linux" then "linux-arm" else if stdenv.hostPlatform.system == "armv7l-linux" then "linux-arm" else + if stdenv.hostPlatform.system == "aarch64-darwin" then "macosx" else if stdenv.hostPlatform.system == "x86_64-darwin" then "macosx-thr" else if stdenv.hostPlatform.system == "i686-darwin" then "macosx-64-thr" else if stdenv.hostPlatform.system == "i686-cygwin" then "win32" else From c8d30c0af9f4b2be3918694b8a9132a235ae975c Mon Sep 17 00:00:00 2001 From: George Huebner Date: Thu, 14 Mar 2024 10:02:59 -0400 Subject: [PATCH 06/53] sage: drop flintqs FlintQS is no longer maintained and has several bugs. As of https://github.com/sagemath/sage/pull/35419, all of FlintQS's functionality is contained within Sage. --- .../science/math/sage/sage-env.nix | 2 - .../science/math/sage/sage-with-env.nix | 2 - .../science/math/flintqs/default.nix | 40 ------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 - 5 files changed, 1 insertion(+), 46 deletions(-) delete mode 100644 pkgs/development/libraries/science/math/flintqs/default.nix diff --git a/pkgs/applications/science/math/sage/sage-env.nix b/pkgs/applications/science/math/sage/sage-env.nix index 4f179ea3a42b..f95e08c51ff4 100644 --- a/pkgs/applications/science/math/sage/sage-env.nix +++ b/pkgs/applications/science/math/sage/sage-env.nix @@ -39,7 +39,6 @@ , ecm , lcalc , rubiks -, flintqs , blas , lapack , flint3 @@ -93,7 +92,6 @@ let ecm lcalc rubiks - flintqs jdk # only needed for `jmol` which may be replaced in the future less # needed to prevent transient test errors until https://github.com/ipython/ipython/pull/11864 is resolved ] diff --git a/pkgs/applications/science/math/sage/sage-with-env.nix b/pkgs/applications/science/math/sage/sage-with-env.nix index b2c0843d3100..88c753e89c9d 100644 --- a/pkgs/applications/science/math/sage/sage-with-env.nix +++ b/pkgs/applications/science/math/sage/sage-with-env.nix @@ -13,7 +13,6 @@ , gmp , gfan , python3 -, flintqs , eclib , ntl , ecm @@ -40,7 +39,6 @@ let gfan maxima eclib - flintqs ntl ecm ]; diff --git a/pkgs/development/libraries/science/math/flintqs/default.nix b/pkgs/development/libraries/science/math/flintqs/default.nix deleted file mode 100644 index c5426ed67fc7..000000000000 --- a/pkgs/development/libraries/science/math/flintqs/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ lib, stdenv -, fetchFromGitHub -, autoreconfHook -, gmp -}: - -stdenv.mkDerivation rec { - version = "1.0"; - pname = "flintqs"; - - src = fetchFromGitHub { - owner = "sagemath"; - repo = "FlintQS"; - rev = "v${version}"; - sha256 = "1f0lnayz6j6qgasx8pbq61d2fqam0wwhsmh6h15l4vq58l1vvbwj"; - }; - - preAutoreconf = '' - touch ChangeLog - ''; - - buildInputs = [ - gmp - ]; - - nativeBuildInputs = [ - autoreconfHook - ]; - - doCheck = true; - - meta = with lib; { - description = "Highly optimized multi-polynomial quadratic sieve for integer factorization"; - homepage = "https://github.com/sagemath/FlintQS"; - license = with licenses; [ gpl2 ]; - maintainers = teams.sage.members; - mainProgram = "QuadraticSieve"; - platforms = platforms.all; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 1f53f0ebfe7c..07832f7793f6 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -316,6 +316,7 @@ mapAliases ({ fitnesstrax = throw "fitnesstrax was removed from nixpkgs because it disappeared upstream and no longer compiles"; # added 2023-07-04 flashrom-stable = flashprog; # Added 2024-03-01 flatbuffers_2_0 = flatbuffers; # Added 2022-05-12 + flintqs = throw "FlintQS has been removed due to lack of maintenance and security issues; use SageMath or FLINT instead"; # Added 2024-03-21 flutter2 = throw "flutter2 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2023-07-03 flutter37 = throw "flutter37 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2023-07-03 foldingathome = fahclient; # Added 2020-09-03 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3c7aa60a14d9..7fe18427c1de 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -38513,8 +38513,6 @@ with pkgs; ecos = callPackage ../development/libraries/science/math/ecos { }; - flintqs = callPackage ../development/libraries/science/math/flintqs { }; - getdp = callPackage ../applications/science/math/getdp { }; gurobi = callPackage ../applications/science/math/gurobi { From 69c71fc6835785ffef9e5ebe05abf4485ee3819c Mon Sep 17 00:00:00 2001 From: George Huebner Date: Thu, 14 Mar 2024 10:05:30 -0400 Subject: [PATCH 07/53] givaro: fix clang build Usage of `std::bool_constant` prevents compilation using Clang; see https://github.com/linbox-team/givaro/issues/225 --- pkgs/development/libraries/givaro/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/libraries/givaro/default.nix b/pkgs/development/libraries/givaro/default.nix index a7b1eaa43831..aca83ec4b8d6 100644 --- a/pkgs/development/libraries/givaro/default.nix +++ b/pkgs/development/libraries/givaro/default.nix @@ -25,6 +25,11 @@ stdenv.mkDerivation rec { url = "https://github.com/linbox-team/givaro/commit/c7744bb133496cd7ac04688f345646d505e1bf52.patch"; hash = "sha256-aAA5o8Va10v0Pqgcpx7qM0TAZiNQgXoR6N9xecj7tDA="; }) + (fetchpatch { + name = "clang-16.patch"; + url = "https://github.com/linbox-team/givaro/commit/a81d44b3b57c275bcb04ab00db79be02561deaa2.patch"; + hash = "sha256-sSk+VWffoEjZRTJcHRISLHPyW6yuvI1u8knBOfxNUIE="; + }) ]; enableParallelBuilding = true; From 909b7ce7bb691d52e4894c1f21606064171643de Mon Sep 17 00:00:00 2001 From: George Huebner Date: Thu, 14 Mar 2024 23:12:39 -0400 Subject: [PATCH 08/53] gfan: fix clang build Internal logging macro shadows std's `log2`, so we rename it. --- pkgs/applications/science/math/gfan/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/applications/science/math/gfan/default.nix b/pkgs/applications/science/math/gfan/default.nix index 11a42d1cfdf8..8fa6da16e336 100644 --- a/pkgs/applications/science/math/gfan/default.nix +++ b/pkgs/applications/science/math/gfan/default.nix @@ -14,6 +14,10 @@ stdenv.mkDerivation rec { postPatch = lib.optionalString stdenv.cc.isClang '' substituteInPlace Makefile --replace "-fno-guess-branch-probability" "" + + for f in $(find -name "*.h" -or -name "*.cpp"); do + substituteInPlace "$f" --replace-quiet "log2" "_log2" + done ''; buildFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "CXX=${stdenv.cc.targetPrefix}c++" ]; From 4d7959506e74a610fda1273709dde2451782b1b7 Mon Sep 17 00:00:00 2001 From: George Huebner Date: Thu, 14 Mar 2024 23:14:42 -0400 Subject: [PATCH 09/53] rubiks: fix clang build Adds newer patches upstreamed from Fedora into Sage; CRLF endings in the `dietz` solver require `dos2unix` to apply the patches properly. Frankly, I have no idea how this previously compiled on gcc. --- .../libraries/science/math/rubiks/default.nix | 47 +++++++++++++++---- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/science/math/rubiks/default.nix b/pkgs/development/libraries/science/math/rubiks/default.nix index 505457edd64f..8f3fbe345126 100644 --- a/pkgs/development/libraries/science/math/rubiks/default.nix +++ b/pkgs/development/libraries/science/math/rubiks/default.nix @@ -2,6 +2,7 @@ , fetchurl , fetchpatch , coreutils +, dos2unix }: stdenv.mkDerivation rec { @@ -24,24 +25,54 @@ stdenv.mkDerivation rec { "PREFIX=$(out)" ]; + nativeBuildInputs = [ dos2unix ]; + + prePatch = '' + find ./dietz/ -type f -exec dos2unix {} \; + ''; + patches = [ # Fix makefiles which use all the variables in all the wrong ways and # hardcode values for some variables. (fetchpatch { - url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-cu2-Makefile.patch"; - sha256 = "1ry3w1mk9q4jqd91zlaa1bdiiplld4hpfjaldbhlmzlgrrc99qmq"; + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/dietz-cu2-Makefile.patch"; + sha256 = "bRU7MJ/6BgCp2PUqZOragJhm38Q3E8ShStXQIYwIjvw="; }) (fetchpatch { - url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-mcube-Makefile.patch"; - sha256 = "0zsbh6k3kqdg82fv0kzghr1x7pafisv943gmssqscp107bhg77bz"; + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/dietz-mcube-Makefile.patch"; + sha256 = "f53z4DogXKax1vUNkraOTt3TQ4bvT7CdQK/hOaaBS38="; }) (fetchpatch { - url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-solver-Makefile.patch"; - sha256 = "0vhw70ylnmydgjhwx8jjlb2slccj4pfqn6vzirkyz1wp8apsmfhp"; + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/dietz-solver-Makefile.patch"; + sha256 = "7gMC8y9elyIy2KvXYcp7YjPBNqn9PVhUle+/GrYAAdE="; }) (fetchpatch { - url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/reid-Makefile.patch"; - sha256 = "1r311sn012xs135s0d21qwsig2kld7rdcq19nm0zbnklviid57df"; + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/reid-Makefile.patch"; + sha256 = "rp3SYtx02vVBtSlg1vJpdIoXNcdBNKDLCLqLAKwOYeQ="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-1-rubiks-includes.patch"; + sha256 = "QYJ1KQ73HTEGY/beMVbcU215g/B8rHDjYD1YM2WZ7sk="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-2-rubiks-ansi-c.patch"; + sha256 = "Rnu7uphE9URxnbg2K8mkymnB61magweH+WxVWR9JC4s="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-3-rubiks-prototypes.patch"; + sha256 = "Wi038g+y7No1TNMiITtAdipjRi0+g6h0Sspslm5rZGU="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-4-rubiks-longtype.patch"; + sha256 = "6pNuxFM69CZ/TQGZfHXLlCN5g5lf3RiYYZKzMvLJwkw="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-5-rubiks-signed.patch"; + sha256 = "CCGXBMYvSjTm4YKQZAQMi6pWGjyHDYYQzdMZDSW2vFE="; + }) + (fetchpatch { + url = "https://raw.githubusercontent.com/sagemath/sage/2a9a4267f93588cf33119cbacc032ed9acc433e5/build/pkgs/rubiks/patches/fedora-6-rubiks-attributes.patch"; + sha256 = "RhlzMb33iaLfeBoF7Y0LIgEzOB/EC+AoWMSkRPCICaU="; }) ]; From e2e43f6ce75044a353c3846e00840ac17cf5440e Mon Sep 17 00:00:00 2001 From: Philip Taron Date: Fri, 22 Mar 2024 16:05:50 -0700 Subject: [PATCH 10/53] nixos/systemd/initrd: make systemd mount root as rw if gpt-auto is set --- nixos/modules/system/boot/systemd/initrd.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/systemd/initrd.nix b/nixos/modules/system/boot/systemd/initrd.nix index e4f61db0cd02..06359f273846 100644 --- a/nixos/modules/system/boot/systemd/initrd.nix +++ b/nixos/modules/system/boot/systemd/initrd.nix @@ -392,7 +392,10 @@ in { boot.kernelParams = [ "root=${config.boot.initrd.systemd.root}" - ] ++ lib.optional (config.boot.resumeDevice != "") "resume=${config.boot.resumeDevice}"; + ] ++ lib.optional (config.boot.resumeDevice != "") "resume=${config.boot.resumeDevice}" + # `systemd` mounts root in initrd as read-only unless "rw" is on the kernel command line. + # For NixOS activation to succeed, we need to have root writable in initrd. + ++ lib.optional (config.boot.initrd.systemd.root == "gpt-auto") "rw"; boot.initrd.systemd = { initrdBin = [pkgs.bash pkgs.coreutils cfg.package.kmod cfg.package]; From ba4ee6679877dbcdfa5f1415debf9d9f8f3c962f Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:39:35 +0100 Subject: [PATCH 11/53] docker-credential-gcr: add passthru.updateScript --- .../admin/docker-credential-gcr/default.nix | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix index 3899b2f6dc92..d664c55d580d 100644 --- a/pkgs/tools/admin/docker-credential-gcr/default.nix +++ b/pkgs/tools/admin/docker-credential-gcr/default.nix @@ -1,4 +1,11 @@ -{ lib, buildGoModule, fetchFromGitHub, fetchpatch, testers, docker-credential-gcr }: +{ + buildGoModule, + docker-credential-gcr, + fetchFromGitHub, + lib, + nix-update-script, + testers, +}: buildGoModule rec { pname = "docker-credential-gcr"; @@ -33,9 +40,12 @@ buildGoModule rec { "-X github.com/GoogleCloudPlatform/docker-credential-gcr/config.Version=${version}" ]; - passthru.tests.version = testers.testVersion { - package = docker-credential-gcr; - command = "docker-credential-gcr version"; + passthru = { + tests.version = testers.testVersion { + package = docker-credential-gcr; + command = "docker-credential-gcr version"; + }; + updateScript = nix-update-script { }; }; meta = with lib; { From 4b012709cd69687ea2f4ec073d4943c2d8d8224d Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:40:01 +0100 Subject: [PATCH 12/53] docker-credential-gcr: 2.1.8 -> 2.1.22 https://github.com/GoogleCloudPlatform/docker-credential-gcr/compare/v2.1.8...v2.1.22 --- .../admin/docker-credential-gcr/default.nix | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix index d664c55d580d..4db392703916 100644 --- a/pkgs/tools/admin/docker-credential-gcr/default.nix +++ b/pkgs/tools/admin/docker-credential-gcr/default.nix @@ -9,35 +9,27 @@ buildGoModule rec { pname = "docker-credential-gcr"; - version = "2.1.8"; + version = "2.1.22"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; repo = "docker-credential-gcr"; - rev = "v${version}"; - sha256 = "sha256-6f84NRqMx0NX+3g+pCYgRYkGK4DaQmUEau3oMswUmSE="; + rev = "refs/tags/v${version}"; + sha256 = "sha256-vGX6Jhh91dUqZ+y+h1SlPiFE3dL0UO3iJyyzvQVoUsQ="; }; - patches = [ - (fetchpatch { - name = "fix-TestGet_GCRCredentials.patch"; - url = "https://github.com/GoogleCloudPlatform/docker-credential-gcr/commit/a0c080e58bbfdeb0aa24e66551c4e8b0359bf178.patch"; - sha256 = "sha256-aXp/1kNaxqQDPszC7pO+qP7ZBWHjpVljUHiKFnnDWuM="; - }) - ]; - postPatch = '' rm -rf ./test ''; - vendorHash = "sha256-e7XNTizZYp/tS7KRvB9KxY3Yurphnm6Ehz4dHZNReK8="; + vendorHash = "sha256-VsJ5OI8D1u9qZqtirYf682+z0wLJr/vAxRLHAEGwKSY="; CGO_ENABLED = 0; ldflags = [ "-s" "-w" - "-X github.com/GoogleCloudPlatform/docker-credential-gcr/config.Version=${version}" + "-X github.com/GoogleCloudPlatform/docker-credential-gcr/v2/config.Version=${version}" ]; passthru = { @@ -48,6 +40,8 @@ buildGoModule rec { updateScript = nix-update-script { }; }; + __darwinAllowLocalNetworking = true; + meta = with lib; { description = "A Docker credential helper for GCR (https://gcr.io) users"; longDescription = '' @@ -56,6 +50,7 @@ buildGoModule rec { authenticated requests to GCR's repositories (gcr.io, eu.gcr.io, etc.). ''; homepage = "https://github.com/GoogleCloudPlatform/docker-credential-gcr"; + changelog = "https://github.com/GoogleCloudPlatform/docker-credential-gcr/releases/tag/v${version}"; license = licenses.asl20; maintainers = with maintainers; [ suvash ]; mainProgram = "docker-credential-gcr"; From 57dc687f2f2ad250390776f899aaf32be74faf87 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:40:23 +0100 Subject: [PATCH 13/53] docker-credential-gcr: add anthonyroussel to maintainers --- pkgs/tools/admin/docker-credential-gcr/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix index 4db392703916..9033e61c6750 100644 --- a/pkgs/tools/admin/docker-credential-gcr/default.nix +++ b/pkgs/tools/admin/docker-credential-gcr/default.nix @@ -52,7 +52,7 @@ buildGoModule rec { homepage = "https://github.com/GoogleCloudPlatform/docker-credential-gcr"; changelog = "https://github.com/GoogleCloudPlatform/docker-credential-gcr/releases/tag/v${version}"; license = licenses.asl20; - maintainers = with maintainers; [ suvash ]; + maintainers = with maintainers; [ suvash anthonyroussel ]; mainProgram = "docker-credential-gcr"; }; } From 332ebc60b09516bd8798210f4de630c1486528ac Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:49:41 +0100 Subject: [PATCH 14/53] docker-credential-gcr: move to pkgs/by-name --- .../do/docker-credential-gcr/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{tools/admin/docker-credential-gcr/default.nix => by-name/do/docker-credential-gcr/package.nix} (100%) diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/by-name/do/docker-credential-gcr/package.nix similarity index 100% rename from pkgs/tools/admin/docker-credential-gcr/default.nix rename to pkgs/by-name/do/docker-credential-gcr/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0ba4229909c3..01564bca599f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30625,8 +30625,6 @@ with pkgs; dk = callPackage ../applications/window-managers/dk { }; - docker-credential-gcr = callPackage ../tools/admin/docker-credential-gcr { }; - docker-credential-helpers = callPackage ../tools/admin/docker-credential-helpers { }; dockstarter = callPackage ../tools/virtualization/dockstarter { }; From d964e7ac2aeb781f6a725df0238faac0bbe18007 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 12:04:59 +0100 Subject: [PATCH 15/53] python311Packages.es-client: 8.12.5 -> 8.12.8 https://github.com/untergeek/es_client/compare/v8.12.5...v8.12.8 --- pkgs/development/python-modules/es-client/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/es-client/default.nix b/pkgs/development/python-modules/es-client/default.nix index f5b16097c26f..0a1b0bad5ad6 100644 --- a/pkgs/development/python-modules/es-client/default.nix +++ b/pkgs/development/python-modules/es-client/default.nix @@ -20,16 +20,16 @@ buildPythonPackage rec { pname = "es-client"; - version = "8.12.5"; + version = "8.12.8"; pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "untergeek"; repo = "es_client"; rev = "refs/tags/v${version}"; - hash = "sha256-gaeNIxHnNulUOGhYHf9dIgBSh2rJIdsYdpPT8OTyEdg="; + hash = "sha256-qv06zb3hIK/TeOZwtMXrV+n8mYSA/UKiyHvRyKEvZkQ="; }; pythonRelaxDeps = true; From ef35305c3bf36121323ab272af6ece231f5c20f1 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:56:02 +0100 Subject: [PATCH 16/53] elasticsearch-curator: add passthru.{tests.version,updateScript} --- pkgs/tools/admin/elasticsearch-curator/default.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pkgs/tools/admin/elasticsearch-curator/default.nix b/pkgs/tools/admin/elasticsearch-curator/default.nix index 60bd15ce71a6..dacec5a76779 100644 --- a/pkgs/tools/admin/elasticsearch-curator/default.nix +++ b/pkgs/tools/admin/elasticsearch-curator/default.nix @@ -1,6 +1,9 @@ { lib +, elasticsearch-curator , fetchFromGitHub +, nix-update-script , python3 +, testers }: python3.pkgs.buildPythonApplication rec { @@ -76,6 +79,14 @@ python3.pkgs.buildPythonApplication rec { "test_api_key_set" ]; + passthru = { + tests.version = testers.testVersion { + package = elasticsearch-curator; + command = "${lib.getExe elasticsearch-curator} --version"; + }; + updateScript = nix-update-script { }; + }; + meta = with lib; { description = "Curate, or manage, your Elasticsearch indices and snapshots"; homepage = "https://github.com/elastic/curator"; @@ -93,6 +104,7 @@ python3.pkgs.buildPythonApplication rec { * Perform various actions on the items which remain in the actionable list. ''; + mainProgram = "curator"; maintainers = with maintainers; [ basvandijk ]; }; } From 303ec90277b42e2d08611f7aa23fa852f2d1cc57 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 11:56:15 +0100 Subject: [PATCH 17/53] elasticsearch-curator: 8.0.10 -> 8.0.12 https://github.com/elastic/curator/compare/v8.0.10...v8.0.12 --- .../admin/elasticsearch-curator/default.nix | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/pkgs/tools/admin/elasticsearch-curator/default.nix b/pkgs/tools/admin/elasticsearch-curator/default.nix index dacec5a76779..3e12c03cbece 100644 --- a/pkgs/tools/admin/elasticsearch-curator/default.nix +++ b/pkgs/tools/admin/elasticsearch-curator/default.nix @@ -8,30 +8,21 @@ python3.pkgs.buildPythonApplication rec { pname = "elasticsearch-curator"; - version = "8.0.10"; + version = "8.0.12"; format = "pyproject"; src = fetchFromGitHub { owner = "elastic"; repo = "curator"; rev = "refs/tags/v${version}"; - hash = "sha256-hGG7lyrVviZSKTUo+AOPIutn/mxtDo+ewFxCRdj/jts="; + hash = "sha256-CU/8l5607eKodcdpMKu0Wdlg+K6YnFX6uoDju12NDR0="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace "elasticsearch8==" "elasticsearch8>=" \ - --replace "es_client==" "es_client>=" \ - --replace "ecs-logging==" "ecs-logging>=" \ - --replace "click==" "click>="\ - --replace "pyyaml==" "pyyaml>=" - ''; - - nativeBuildInputs = with python3.pkgs; [ + build-system = with python3.pkgs; [ hatchling ]; - propagatedBuildInputs = with python3.pkgs; [ + dependencies = with python3.pkgs; [ certifi click ecs-logging @@ -43,7 +34,6 @@ python3.pkgs.buildPythonApplication rec { ]; nativeCheckInputs = with python3.pkgs; [ - mock requests pytestCheckHook ]; From 2ac8d67212c46e60f8383bed96a107c9cd309e48 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Sun, 24 Mar 2024 12:07:00 +0100 Subject: [PATCH 18/53] elasticsearch-curator: move to by-name --- .../el/elasticsearch-curator/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{tools/admin/elasticsearch-curator/default.nix => by-name/el/elasticsearch-curator/package.nix} (100%) diff --git a/pkgs/tools/admin/elasticsearch-curator/default.nix b/pkgs/by-name/el/elasticsearch-curator/package.nix similarity index 100% rename from pkgs/tools/admin/elasticsearch-curator/default.nix rename to pkgs/by-name/el/elasticsearch-curator/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0ba4229909c3..c0d49b6f631f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7877,8 +7877,6 @@ with pkgs; callPackage ../servers/search/elasticsearch/plugins.nix {} ); - elasticsearch-curator = callPackage ../tools/admin/elasticsearch-curator { }; - embree = callPackage ../development/libraries/embree { }; embree2 = callPackage ../development/libraries/embree/2.x.nix { }; From 2d8a9a0bf4d9b433ee70323f26ef69b60d5dbe9f Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Mon, 25 Mar 2024 04:20:00 +0000 Subject: [PATCH 19/53] postgresqlPackages.pg_roaringbitmap: init at 0.5.4 --- pkgs/servers/sql/postgresql/ext/default.nix | 2 ++ .../sql/postgresql/ext/pg_roaringbitmap.nix | 32 +++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/servers/sql/postgresql/ext/pg_roaringbitmap.nix diff --git a/pkgs/servers/sql/postgresql/ext/default.nix b/pkgs/servers/sql/postgresql/ext/default.nix index b6181da6cf02..404d7b67d044 100644 --- a/pkgs/servers/sql/postgresql/ext/default.nix +++ b/pkgs/servers/sql/postgresql/ext/default.nix @@ -89,6 +89,8 @@ self: super: { pg_relusage = super.callPackage ./pg_relusage.nix { }; + pg_roaringbitmap = super.callPackage ./pg_roaringbitmap.nix { }; + pg_safeupdate = super.callPackage ./pg_safeupdate.nix { }; pg_squeeze = super.callPackage ./pg_squeeze.nix { }; diff --git a/pkgs/servers/sql/postgresql/ext/pg_roaringbitmap.nix b/pkgs/servers/sql/postgresql/ext/pg_roaringbitmap.nix new file mode 100644 index 000000000000..11cee5389b97 --- /dev/null +++ b/pkgs/servers/sql/postgresql/ext/pg_roaringbitmap.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchFromGitHub, postgresql, postgresqlTestHook }: + +stdenv.mkDerivation (finalAttrs: { + pname = "pg_roaringbitmap"; + version = "0.5.4"; + + src = fetchFromGitHub { + owner = "ChenHuajun"; + repo = "pg_roaringbitmap"; + rev = "v${finalAttrs.version}"; + hash = "sha256-E6vqawnsRsAIajGDgJcTUWV1H8GFFboTjhmVfemUGbs="; + }; + + buildInputs = [ + postgresql + ]; + + installPhase = '' + install -D -t $out/lib roaringbitmap${postgresql.dlSuffix} + install -D -t $out/share/postgresql/extension roaringbitmap-*.sql + install -D -t $out/share/postgresql/extension roaringbitmap.control + ''; + + meta = with lib; { + description = "RoaringBitmap extension for PostgreSQL"; + homepage = "https://github.com/ChenHuajun/pg_roaringbitmap"; + changelog = "https://github.com/ChenHuajun/pg_roaringbitmap/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = licenses.asl20; + maintainers = [ maintainers.marsam ]; + inherit (postgresql.meta) platforms; + }; +}) From 9c141d5fb9b2df45a25bd6b9aead99a78f98f322 Mon Sep 17 00:00:00 2001 From: Kopatz <7265381+Kropatz@users.noreply.github.com> Date: Sat, 16 Mar 2024 16:31:03 +0100 Subject: [PATCH 20/53] tetrio-desktop: 8.0.0 -> 9.0.0 --- pkgs/games/tetrio-desktop/default.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/games/tetrio-desktop/default.nix b/pkgs/games/tetrio-desktop/default.nix index e31491e94c90..97d73cddbb07 100644 --- a/pkgs/games/tetrio-desktop/default.nix +++ b/pkgs/games/tetrio-desktop/default.nix @@ -22,12 +22,12 @@ stdenv.mkDerivation rec { pname = "tetrio-desktop"; - version = "8.0.0"; + version = "9.0.0"; src = fetchurl { - url = "https://web.archive.org/web/20211228025517if_/https://tetr.io/about/desktop/builds/TETR.IO%20Setup.deb"; + url = "https://web.archive.org/web/20240309215118if_/https://tetr.io/about/desktop/builds/9/TETR.IO%20Setup.deb"; name = "tetrio-desktop.deb"; - sha256 = "1nlblfhrph4cw8rpic9icrs78mzrxyskl7ggyy2i8bk9i07i21xf"; + sha256 = "UriLwMB8D+/T32H4rPbkJAy/F/FFhNpd++0AR1lwEfs="; }; nativeBuildInputs = [ @@ -64,10 +64,10 @@ stdenv.mkDerivation rec { cp -r opt/ usr/share/ $out mkdir $out/bin - ln -s $out/opt/TETR.IO/tetrio-desktop $out/bin/ + ln -s $out/opt/TETR.IO/TETR.IO $out/bin/ - substituteInPlace $out/share/applications/tetrio-desktop.desktop \ - --replace "Exec=\"/opt/TETR.IO/tetrio-desktop\"" "Exec=\"$out/opt/TETR.IO/tetrio-desktop\"" + substituteInPlace $out/share/applications/TETR.IO.desktop \ + --replace-fail "Exec=/opt/TETR.IO/TETR.IO" "Exec=\"$out/opt/TETR.IO/TETR.IO\"" runHook postInstall ''; @@ -77,7 +77,7 @@ stdenv.mkDerivation rec { ''; postFixup = '' - wrapProgram $out/opt/TETR.IO/tetrio-desktop \ + wrapProgram $out/opt/TETR.IO/TETR.IO \ --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/TETR.IO \ ''${gappsWrapperArgs[@]} ''; @@ -93,5 +93,6 @@ stdenv.mkDerivation rec { platforms = [ "x86_64-linux" ]; license = licenses.unfree; maintainers = with maintainers; [ wackbyte ]; + mainProgram = "TETR.IO"; }; } From 5c56180640eeb3942792fd343f472ed545a19c7c Mon Sep 17 00:00:00 2001 From: Gavin John <> Date: Mon, 25 Mar 2024 12:20:11 -0500 Subject: [PATCH 21/53] monado: Add missing package and alphabetize --- pkgs/applications/graphics/monado/default.nix | 43 ++++++++++--------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/pkgs/applications/graphics/monado/default.nix b/pkgs/applications/graphics/monado/default.nix index 68ebaa5f9dcd..a79b11278050 100644 --- a/pkgs/applications/graphics/monado/default.nix +++ b/pkgs/applications/graphics/monado/default.nix @@ -2,28 +2,22 @@ , stdenv , fetchFromGitLab , writeText -, cmake -, cjson -, doxygen -, glslang -, pkg-config -, python3 -, SDL2 , bluez +, cjson +, cmake , dbus +, doxygen , eigen , elfutils , ffmpeg +, glslang , gst-plugins-base , gstreamer , hidapi -, libGL -, libXau -, libXdmcp -, libXrandr -, libXext , libbsd +, libdrm , libffi +, libGL , libjpeg , librealsense , libsurvive @@ -32,13 +26,20 @@ , libuv , libuvc , libv4l +, libXau , libxcb +, libXdmcp +, libXext +, libXrandr , onnxruntime , opencv4 , openhmd , openvr , orc , pcre2 +, pkg-config +, python3 +, SDL2 , shaderc , udev , vulkan-headers @@ -46,7 +47,6 @@ , wayland , wayland-protocols , wayland-scanner -, libdrm , zlib , zstd , nixosTests @@ -83,7 +83,6 @@ stdenv.mkDerivation { ]; buildInputs = [ - SDL2 bluez cjson dbus @@ -93,13 +92,11 @@ stdenv.mkDerivation { gst-plugins-base gstreamer hidapi - libGL - libXau - libXdmcp - libXrandr libbsd - libjpeg + libdrm libffi + libGL + libjpeg librealsense libsurvive libunwind @@ -107,21 +104,25 @@ stdenv.mkDerivation { libuv libuvc libv4l + libXau libxcb + libXdmcp + libXext + libXrandr onnxruntime opencv4 openhmd openvr orc pcre2 + SDL2 shaderc udev vulkan-headers vulkan-loader wayland - wayland-scanner wayland-protocols - libdrm + wayland-scanner zlib zstd ]; From 4b8720f332de98d17b9ceedccbf337b4bce15a1d Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 8 Mar 2024 18:17:23 +0100 Subject: [PATCH 22/53] openvino: 2023.3.0 -> 2024.0.0 https://github.com/openvinotoolkit/openvino/releases/tag/2024.0.0 --- .../libraries/openvino/default.nix | 50 ++++++------------- .../python-modules/openvino/default.nix | 1 - pkgs/top-level/all-packages.nix | 4 +- pkgs/top-level/python-packages.nix | 2 +- 4 files changed, 18 insertions(+), 39 deletions(-) diff --git a/pkgs/development/libraries/openvino/default.nix b/pkgs/development/libraries/openvino/default.nix index 186e1048823a..a4ce0fe60c1e 100644 --- a/pkgs/development/libraries/openvino/default.nix +++ b/pkgs/development/libraries/openvino/default.nix @@ -1,7 +1,6 @@ { lib , gcc12Stdenv , fetchFromGitHub -, fetchpatch2 , fetchurl , cudaSupport ? opencv.cudaSupport or false @@ -11,10 +10,10 @@ , cmake , git , libarchive +, patchelf , pkg-config -, python +, python3Packages , shellcheck -, sphinx # runtime , flatbuffers @@ -36,40 +35,34 @@ let stdenv = gcc12Stdenv; - # See GNA_VERSION in cmake/dependencies.cmake - gna_version = "03.05.00.2116"; - gna = fetchurl { - url = "https://storage.openvinotoolkit.org/dependencies/gna/gna_${gna_version}.zip"; - hash = "sha256-lgNQVncCvaFydqxMBg11JPt8587XhQBL2GHIH/K/4sU="; - }; - tbbbind_version = "2_5"; tbbbind = fetchurl { url = "https://storage.openvinotoolkit.org/dependencies/thirdparty/linux/tbbbind_${tbbbind_version}_static_lin_v4.tgz"; hash = "sha256-Tr8wJGUweV8Gb7lhbmcHxrF756ZdKdNRi1eKdp3VTuo="; }; + + python = python3Packages.python.withPackages (ps: with ps; [ + cython + pybind11 + setuptools + sphinx + wheel + ]); + in stdenv.mkDerivation rec { pname = "openvino"; - version = "2023.3.0"; + version = "2024.0.0"; src = fetchFromGitHub { owner = "openvinotoolkit"; repo = "openvino"; rev = "refs/tags/${version}"; fetchSubmodules = true; - hash = "sha256-dXlQhar5gz+1iLmDYXUY0jZKh4rJ+khRpoZQphJXfcU="; + hash = "sha256-Xsrmc1EynkjgPgiQ+ESyVJRJT9Afqyob0/uH+Is4TYA="; }; - patches = [ - (fetchpatch2 { - name = "enable-js-toggle.patch"; - url = "https://github.com/openvinotoolkit/openvino/commit/0a8f1383826d949c497fe3d05fef9ad2b662fa7e.patch"; - hash = "sha256-mQYunouPo3tRlD5Yp4EUth324ccNnVX8zmjPHvJBYKw="; - }) - ]; - outputs = [ "out" "python" @@ -81,26 +74,15 @@ stdenv.mkDerivation rec { cmake git libarchive + patchelf pkg-config - (python.withPackages (ps: with ps; [ - cython - pybind11 - setuptools - ])) + python shellcheck - sphinx ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_nvcc ]; postPatch = '' - mkdir -p temp/gna_${gna_version} - pushd temp/ - bsdtar -xf ${gna} - autoPatchelf gna_${gna_version} - echo "${gna.url}" > gna_${gna_version}/ie_dependency.info - popd - mkdir -p temp/tbbbind_${tbbbind_version} pushd temp/tbbbind_${tbbbind_version} bsdtar -xf ${tbbbind} @@ -116,6 +98,7 @@ stdenv.mkDerivation rec { "-DCMAKE_PREFIX_PATH:PATH=${placeholder "out"}" "-DOpenCV_DIR=${opencv}/lib/cmake/opencv4/" "-DProtobuf_LIBRARIES=${protobuf}/lib/libprotobuf${stdenv.hostPlatform.extensions.sharedLibrary}" + "-DPython_EXECUTABLE=${python.interpreter}" (cmakeBool "CMAKE_VERBOSE_MAKEFILE" true) (cmakeBool "NCC_SYLE" false) @@ -126,7 +109,6 @@ stdenv.mkDerivation rec { # features (cmakeBool "ENABLE_INTEL_CPU" true) - (cmakeBool "ENABLE_INTEL_GNA" true) (cmakeBool "ENABLE_JS" false) (cmakeBool "ENABLE_LTO" true) (cmakeBool "ENABLE_ONEDNN_FOR_GPU" false) diff --git a/pkgs/development/python-modules/openvino/default.nix b/pkgs/development/python-modules/openvino/default.nix index 20f47eb666ef..660e6c41c014 100644 --- a/pkgs/development/python-modules/openvino/default.nix +++ b/pkgs/development/python-modules/openvino/default.nix @@ -26,7 +26,6 @@ buildPythonPackage { ''; pythonImportsCheck = [ - "ngraph" "openvino" "openvino.runtime" ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 92b34d44c36c..83d0e1e32abb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -41041,9 +41041,7 @@ with pkgs; openrisk = callPackage ../tools/security/openrisk { }; - openvino = callPackage ../development/libraries/openvino { - python = python3; - }; + openvino = callPackage ../development/libraries/openvino { }; phonetisaurus = callPackage ../development/libraries/phonetisaurus { # https://github.com/AdolfVonKleist/Phonetisaurus/issues/70 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 534d9b49abc4..f08e60bf6b88 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9060,7 +9060,7 @@ self: super: with self; { openvino = callPackage ../development/python-modules/openvino { openvino-native = pkgs.openvino.override { - inherit python; + python3Packages = self; }; }; From c12dedfe6f654950e868b58e93888f19dabf4c2d Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 26 Mar 2024 03:45:31 +0100 Subject: [PATCH 23/53] kanidm: update to latest rc.16 commit Fixes an administrator triggered thread crash in oauth2 claim maps. --- pkgs/servers/kanidm/Cargo.lock | 1 + pkgs/servers/kanidm/default.nix | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/kanidm/Cargo.lock b/pkgs/servers/kanidm/Cargo.lock index 5b6349079aba..29d869effc6e 100644 --- a/pkgs/servers/kanidm/Cargo.lock +++ b/pkgs/servers/kanidm/Cargo.lock @@ -3192,6 +3192,7 @@ dependencies = [ "hex", "idlset", "image 0.24.8", + "itertools 0.12.1", "kanidm_build_profiles", "kanidm_lib_crypto", "kanidm_proto", diff --git a/pkgs/servers/kanidm/default.nix b/pkgs/servers/kanidm/default.nix index 39d86c36a9de..57a235da0554 100644 --- a/pkgs/servers/kanidm/default.nix +++ b/pkgs/servers/kanidm/default.nix @@ -25,8 +25,8 @@ rustPlatform.buildRustPackage rec { owner = pname; repo = pname; # Latest revision of 1.1.0-rc.16 stable branch - rev = "4c88d6b27c9b82ad5b2482bda140025d7068293f"; - hash = "sha256-tatZ56uIusNvAAGwJ731rfmHvheOtPXjPUxLuAPFxXs="; + rev = "e51d0dee44ecabbf7be9e855753453bb2f61cced"; + hash = "sha256-YgrlmSrjOzn/oFWmYy/71xwcq53lJbmiLIFzn2sIFAk="; }; cargoLock = { From 5e9074583781c074c6d34b63ee4e6b069a9f7ab7 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Tue, 26 Mar 2024 04:20:00 +0000 Subject: [PATCH 24/53] termusic: 0.7.11 -> 0.9.0 Diff: https://github.com/tramhao/termusic/compare/v0.7.11...v0.9.0 --- pkgs/applications/audio/termusic/default.nix | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/audio/termusic/default.nix b/pkgs/applications/audio/termusic/default.nix index 0df3cfcb46b8..c36240558b72 100644 --- a/pkgs/applications/audio/termusic/default.nix +++ b/pkgs/applications/audio/termusic/default.nix @@ -22,16 +22,26 @@ rustPlatform.buildRustPackage rec { pname = "termusic"; - version = "0.7.11"; + version = "0.9.0"; src = fetchFromGitHub { owner = "tramhao"; repo = "termusic"; rev = "v${version}"; - hash = "sha256-ykOBXM/WF+zasAt+6mgY2aSFCpGaYcqk+YI7YLM3MWs="; + hash = "sha256-FOFZg32hrWpKVsjkMDkiqah7jmUZw0HRWGqOvsN0t8Q="; }; - cargoHash = "sha256-BrOpU0RFdlRXQIMjfHfs/XYIdBCYKFSA+5by/rGzC8Y="; + postPatch = '' + pushd $cargoDepsCopy/stream-download + oldHash=$(sha256sum src/lib.rs | cut -d " " -f 1) + substituteInPlace $cargoDepsCopy/stream-download/src/lib.rs \ + --replace-warn '#![doc = include_str!("../README.md")]' "" + substituteInPlace .cargo-checksum.json \ + --replace $oldHash $(sha256sum src/lib.rs | cut -d " " -f 1) + popd + ''; + + cargoHash = "sha256-r5FOl3Bp3GYhOhvWj/y6FXsuG2wvuFcMcYKBzVBVqiM="; nativeBuildInputs = [ pkg-config @@ -62,5 +72,6 @@ rustPlatform.buildRustPackage rec { homepage = "https://github.com/tramhao/termusic"; license = with lib.licenses; [ gpl3Only ]; maintainers = with lib.maintainers; [ devhell ]; + mainProgram = "termusic"; }; } From 8701daf46b7545fd9e454067a6ec96b728ac9351 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 26 Mar 2024 13:01:34 +0000 Subject: [PATCH 25/53] typos-lsp: 0.1.15 -> 0.1.16 --- pkgs/by-name/ty/typos-lsp/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ty/typos-lsp/package.nix b/pkgs/by-name/ty/typos-lsp/package.nix index b8ab8a97aac8..f8944452b4f4 100644 --- a/pkgs/by-name/ty/typos-lsp/package.nix +++ b/pkgs/by-name/ty/typos-lsp/package.nix @@ -4,16 +4,16 @@ }: rustPlatform.buildRustPackage rec { pname = "typos-lsp"; - version = "0.1.15"; + version = "0.1.16"; src = fetchFromGitHub { owner = "tekumara"; repo = "typos-lsp"; rev = "refs/tags/v${version}"; - hash = "sha256-8mCK/NKik1zf6hqJN4pflDbtFALckHR/8AQborbOoHs="; + hash = "sha256-wXwdAPaj2dY6R6rUl/3WGeUwV+/waQdHv1dmzTqFNow="; }; - cargoHash = "sha256-aL7arYAiTpz9jy7Kh8u7OJmPMjayX4JiKoa7u8K0UiE="; + cargoHash = "sha256-qXQPxMlBwLb2NVae+vKZPzufNrQeuz0cAdMflpsjDf4="; # fix for compilation on aarch64 # see https://github.com/NixOS/nixpkgs/issues/145726 From bbb187be1401a89bfd4d7c31801bacd1acc05505 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 26 Mar 2024 13:05:00 +0000 Subject: [PATCH 26/53] python312Packages.reptor: 0.13 -> 0.14 --- pkgs/development/python-modules/reptor/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/reptor/default.nix b/pkgs/development/python-modules/reptor/default.nix index d31cbc667510..a7f35e964986 100644 --- a/pkgs/development/python-modules/reptor/default.nix +++ b/pkgs/development/python-modules/reptor/default.nix @@ -32,7 +32,7 @@ buildPythonPackage rec { pname = "reptor"; - version = "0.13"; + version = "0.14"; pyproject = true; disabled = pythonOlder "3.8"; @@ -41,7 +41,7 @@ buildPythonPackage rec { owner = "Syslifters"; repo = "reptor"; rev = "refs/tags/${version}"; - hash = "sha256-7jFS3GCaPeGBBxB++XTtIYh+m0uXTm5NHuLeIen0KYc="; + hash = "sha256-XZiFVIUyLVVr3ZraOAuXs+shl4vk3S8OJHNHV4p10YY="; }; pythonRelaxDeps = true; From c7fb03ad0ac2b3a09f7983ec35f5236a595283d5 Mon Sep 17 00:00:00 2001 From: Casey Link Date: Mon, 25 Mar 2024 15:48:49 +0100 Subject: [PATCH 27/53] hacompanion: init at 1.0.11 --- pkgs/by-name/ha/hacompanion/package.nix | 27 +++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 pkgs/by-name/ha/hacompanion/package.nix diff --git a/pkgs/by-name/ha/hacompanion/package.nix b/pkgs/by-name/ha/hacompanion/package.nix new file mode 100644 index 000000000000..dbf8be29cb46 --- /dev/null +++ b/pkgs/by-name/ha/hacompanion/package.nix @@ -0,0 +1,27 @@ +{ lib, + fetchFromGitHub, + buildGoModule +}: + +buildGoModule rec { + pname = "hacompanion"; + version = "1.0.11"; + + src = fetchFromGitHub { + owner = "tobias-kuendig"; + repo = "hacompanion"; + rev = "v${version}"; + hash = "sha256-gTsA5XBjLlm/cITwQwYNudPK9SbSEaiAIjjdvRS3+8Q="; + }; + + vendorHash = "sha256-ZZ8nxN+zUeFhSXyoHLMgzeFllnIkKdoVnbVK5KjrLEQ="; + + meta = { + changelog = "https://github.com/tobias-kuendig/hacompanion/releases/tag/v${version}"; + description = "Daemon that sends local hardware information to Home Assistant"; + homepage = "https://github.com/tobias-kuendig/hacompanion"; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ ramblurr ]; + }; +} From f862bd46d3020bcfe7195b3dad638329271b0524 Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 26 Mar 2024 16:40:35 +0300 Subject: [PATCH 28/53] qt6: 6.6.2 -> 6.6.3 --- pkgs/development/libraries/qt-6/fetch.sh | 2 +- .../libraries/qt-6/modules/qtbase.nix | 5 +- pkgs/development/libraries/qt-6/srcs.nix | 314 +++++++++--------- 3 files changed, 159 insertions(+), 162 deletions(-) diff --git a/pkgs/development/libraries/qt-6/fetch.sh b/pkgs/development/libraries/qt-6/fetch.sh index d7ef146a1957..52c6fb5f1b2e 100644 --- a/pkgs/development/libraries/qt-6/fetch.sh +++ b/pkgs/development/libraries/qt-6/fetch.sh @@ -1 +1 @@ -WGET_ARGS=( https://download.qt.io/official_releases/qt/6.6/6.6.2/submodules/ -A '*.tar.xz' ) +WGET_ARGS=( https://download.qt.io/official_releases/qt/6.6/6.6.3/submodules/ -A '*.tar.xz' ) diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix index c223a2236353..a14028e1259a 100644 --- a/pkgs/development/libraries/qt-6/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix @@ -211,10 +211,7 @@ stdenv.mkDerivation rec { inherit patches; - # https://bugreports.qt.io/browse/QTBUG-97568 - postPatch = '' - substituteInPlace src/corelib/CMakeLists.txt --replace-fail "/bin/ls" "${buildPackages.coreutils}/bin/ls" - '' + lib.optionalString stdenv.hostPlatform.isDarwin '' + postPatch = lib.optionalString stdenv.hostPlatform.isDarwin '' substituteInPlace cmake/QtPublicAppleHelpers.cmake --replace-fail "/usr/bin/xcrun" "${xcbuild}/bin/xcrun" ''; diff --git a/pkgs/development/libraries/qt-6/srcs.nix b/pkgs/development/libraries/qt-6/srcs.nix index 5fef072f3990..5edd42d3004e 100644 --- a/pkgs/development/libraries/qt-6/srcs.nix +++ b/pkgs/development/libraries/qt-6/srcs.nix @@ -1,318 +1,318 @@ # DO NOT EDIT! This file is generated automatically. -# Command: ./maintainers/scripts/fetch-kde-qt.sh pkgs/development/libraries/qt-6/fetch.sh +# Command: ./maintainers/scripts/fetch-kde-qt.sh pkgs/development/libraries/qt-6/ { fetchurl, mirror }: { qt3d = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qt3d-everywhere-src-6.6.2.tar.xz"; - sha256 = "10l5ldw8g8m1ig3hh78pwg749xqf2gw9vsi8p67gbkanmipfqx4i"; - name = "qt3d-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qt3d-everywhere-src-6.6.3.tar.xz"; + sha256 = "0v6zprw9r4z4inj7mg364n959c6japklm7ji2952nm3i01zp8jd5"; + name = "qt3d-everywhere-src-6.6.3.tar.xz"; }; }; qt5compat = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qt5compat-everywhere-src-6.6.2.tar.xz"; - sha256 = "0rqr34lqf4mjdgjj09wzlvkxfknz8arjl9p30xpqbr2qfsmhhyz0"; - name = "qt5compat-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qt5compat-everywhere-src-6.6.3.tar.xz"; + sha256 = "02zcrrh6rq5p6bqix5nk2h22rfqdrf4d0h7y4rva5zmbbr7czhk8"; + name = "qt5compat-everywhere-src-6.6.3.tar.xz"; }; }; qtactiveqt = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtactiveqt-everywhere-src-6.6.2.tar.xz"; - sha256 = "16vqb33s0dwxq1rrha81606fdwq1dz7az6mybgx18n7f081h3yl7"; - name = "qtactiveqt-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtactiveqt-everywhere-src-6.6.3.tar.xz"; + sha256 = "0balhrmzmjrqn6h2r3rr00776vxhdpqzwhk9knrlvix8i1kr86x1"; + name = "qtactiveqt-everywhere-src-6.6.3.tar.xz"; }; }; qtbase = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtbase-everywhere-src-6.6.2.tar.xz"; - sha256 = "0yv78bwqzy975854h53rbiilsms62f3v02i3jqz7v8ajk1ml56xq"; - name = "qtbase-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtbase-everywhere-src-6.6.3.tar.xz"; + sha256 = "0qklvzg242ilxw29jd2vsz6s8ni4dpraf4ghfa4dykhc705zv4q4"; + name = "qtbase-everywhere-src-6.6.3.tar.xz"; }; }; qtcharts = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtcharts-everywhere-src-6.6.2.tar.xz"; - sha256 = "1x7m87lxbza4ynf6dq7yshann6003302a5fxih5l5d07xri64j5i"; - name = "qtcharts-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtcharts-everywhere-src-6.6.3.tar.xz"; + sha256 = "1rbz2nm8wrdf060cssvs69b5kqv0ybxjqw1clm5mdllg2j38i5jh"; + name = "qtcharts-everywhere-src-6.6.3.tar.xz"; }; }; qtconnectivity = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtconnectivity-everywhere-src-6.6.2.tar.xz"; - sha256 = "1dzsvs0hngrz6b66r9zb4al5a4r6xxfd29i8g3jqmvw3b0452vx3"; - name = "qtconnectivity-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtconnectivity-everywhere-src-6.6.3.tar.xz"; + sha256 = "066mf4d6a81ywviwr8bvm1mpm2ykjzysvcc0v2x82h5bl28vl6h9"; + name = "qtconnectivity-everywhere-src-6.6.3.tar.xz"; }; }; qtdatavis3d = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtdatavis3d-everywhere-src-6.6.2.tar.xz"; - sha256 = "0iqw5afx8y29kjprn1hlz0zr0qwc9j0m7my75qf1av800hlnnjii"; - name = "qtdatavis3d-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtdatavis3d-everywhere-src-6.6.3.tar.xz"; + sha256 = "1gyz83hkmjin3fr3brg00qchbb0awprwx99idysrc6chckj825wv"; + name = "qtdatavis3d-everywhere-src-6.6.3.tar.xz"; }; }; qtdeclarative = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtdeclarative-everywhere-src-6.6.2.tar.xz"; - sha256 = "0k6qndjvkkx3g8lr7f64xx86b3cwxzkgpl6fr6cp73s6qjkyk763"; - name = "qtdeclarative-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtdeclarative-everywhere-src-6.6.3.tar.xz"; + sha256 = "1wwjlwjb3hnlpai4rrrdsm096a6ahb1izs3524r79jpjzhn7n805"; + name = "qtdeclarative-everywhere-src-6.6.3.tar.xz"; }; }; qtdoc = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtdoc-everywhere-src-6.6.2.tar.xz"; - sha256 = "0hvv40y2h7xa7wj2cqz2rrsvy1xf2l95199vmgx4q27wgmn1xixg"; - name = "qtdoc-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtdoc-everywhere-src-6.6.3.tar.xz"; + sha256 = "1j7awdbg7c0slbyhld8cdbx4dic7hhqv3g1qka809bjcxa2hb188"; + name = "qtdoc-everywhere-src-6.6.3.tar.xz"; }; }; qtgraphs = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtgraphs-everywhere-src-6.6.2.tar.xz"; - sha256 = "19j9hdpxrclsdwqqblp4bk94zd2a5rvxnf548hm7r03npznjvb26"; - name = "qtgraphs-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtgraphs-everywhere-src-6.6.3.tar.xz"; + sha256 = "1ppdas6bl22z69w8wdy7xl0f1kyqja2gwjd4cn6kjmsslws5rhi2"; + name = "qtgraphs-everywhere-src-6.6.3.tar.xz"; }; }; qtgrpc = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtgrpc-everywhere-src-6.6.2.tar.xz"; - sha256 = "1flfm8j5vw2j6xzms1b470mbqyab1nrnj4z9s4mgwnbsp4m5p85w"; - name = "qtgrpc-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtgrpc-everywhere-src-6.6.3.tar.xz"; + sha256 = "11q9cqqk8bs3k6n5pxys2r4fisbs3xvv8d8lsi7wm25rqh5qv1kj"; + name = "qtgrpc-everywhere-src-6.6.3.tar.xz"; }; }; qthttpserver = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qthttpserver-everywhere-src-6.6.2.tar.xz"; - sha256 = "1qzw96y20qr1kc9wmys61wm568jsknvlgvh09bbqjcmm6dm3lhd2"; - name = "qthttpserver-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qthttpserver-everywhere-src-6.6.3.tar.xz"; + sha256 = "0dbqx36ywfmqi4nxfi4dl17scj9nkl8sbpb670ffy3nh8pbpib21"; + name = "qthttpserver-everywhere-src-6.6.3.tar.xz"; }; }; qtimageformats = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtimageformats-everywhere-src-6.6.2.tar.xz"; - sha256 = "1cvwm0hnspglydms6qhcp5g0ayz5pamigl52kz8km66l6s8lqn3i"; - name = "qtimageformats-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtimageformats-everywhere-src-6.6.3.tar.xz"; + sha256 = "0z328i6fix1qdklfbs1w4dsr64zavjj5kzqvzipww0v62xhfm99w"; + name = "qtimageformats-everywhere-src-6.6.3.tar.xz"; }; }; qtlanguageserver = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtlanguageserver-everywhere-src-6.6.2.tar.xz"; - sha256 = "1bgazi44mwac20biybhp21icgwa8k7jd295j8jsfgzxbw12lq7y3"; - name = "qtlanguageserver-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtlanguageserver-everywhere-src-6.6.3.tar.xz"; + sha256 = "136gyvkzm6skdv5yhyy4nqhbczfc2mn4nbr9hvpkpljb0awv888h"; + name = "qtlanguageserver-everywhere-src-6.6.3.tar.xz"; }; }; qtlocation = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtlocation-everywhere-src-6.6.2.tar.xz"; - sha256 = "05glwmasg0rlhybzpb640iibcs6gyrqbs7h1ws4b5vgcmzzdq9cy"; - name = "qtlocation-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtlocation-everywhere-src-6.6.3.tar.xz"; + sha256 = "1l81z3zq1zg015l6qxx4yzssdspw689m9bpzxp23yshaych2kd6p"; + name = "qtlocation-everywhere-src-6.6.3.tar.xz"; }; }; qtlottie = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtlottie-everywhere-src-6.6.2.tar.xz"; - sha256 = "1hqhp55jfasavk7p8xb0srbc6lnk70w2q0x4iwn28z5s5kd1cvi7"; - name = "qtlottie-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtlottie-everywhere-src-6.6.3.tar.xz"; + sha256 = "1d0fjb0080wnd71f50zwal1b504iimln9mpnb3sc5yznmv8gm4cq"; + name = "qtlottie-everywhere-src-6.6.3.tar.xz"; }; }; qtmultimedia = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtmultimedia-everywhere-src-6.6.2.tar.xz"; - sha256 = "1v0430jnv97ws6cizn9mi8zr9hcg7rixd0jg7smhdq8apacjb572"; - name = "qtmultimedia-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtmultimedia-everywhere-src-6.6.3.tar.xz"; + sha256 = "1ciswpv8p71j9hwwdhfr5pmsrnizlaijp0dnyc99lk5is8qgh05y"; + name = "qtmultimedia-everywhere-src-6.6.3.tar.xz"; }; }; qtnetworkauth = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtnetworkauth-everywhere-src-6.6.2.tar.xz"; - sha256 = "1lijsdwbj8gscfllmp358n5ysa8pvhx2msh7gpxvb4x81daxbg9j"; - name = "qtnetworkauth-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtnetworkauth-everywhere-src-6.6.3.tar.xz"; + sha256 = "153mpg4hv3nclcdrkbzkalg4xf5k6r64fj003b725zyp885s7fax"; + name = "qtnetworkauth-everywhere-src-6.6.3.tar.xz"; }; }; qtpositioning = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtpositioning-everywhere-src-6.6.2.tar.xz"; - sha256 = "1qn31vps9dj4g8m7d195qlsyj3p4dfqqszdc6yqq097dq5y5d9sd"; - name = "qtpositioning-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtpositioning-everywhere-src-6.6.3.tar.xz"; + sha256 = "1frzzndsscb6iqschklks2l17ppnjpnx1lq1cypnq3x0598bcdws"; + name = "qtpositioning-everywhere-src-6.6.3.tar.xz"; }; }; qtquick3d = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtquick3d-everywhere-src-6.6.2.tar.xz"; - sha256 = "0f1sp7d1jzdzaxqs2l2yjprp0axcqbg2w82dza7wl4paan4rzp7w"; - name = "qtquick3d-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtquick3d-everywhere-src-6.6.3.tar.xz"; + sha256 = "1qls5cydhm7p1g3gqzvnism8k0h6wjzi8x12gn51dapvnzq2cxlr"; + name = "qtquick3d-everywhere-src-6.6.3.tar.xz"; }; }; qtquick3dphysics = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtquick3dphysics-everywhere-src-6.6.2.tar.xz"; - sha256 = "10209x9hbr5bc4vlhhcvvfsmsn2h3dyb4rlg0f0gpllx68mr58ac"; - name = "qtquick3dphysics-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtquick3dphysics-everywhere-src-6.6.3.tar.xz"; + sha256 = "0ipma4qdmzyyajs5inp7d3znh2hfx42gia7x9ahqpb515r49pqb7"; + name = "qtquick3dphysics-everywhere-src-6.6.3.tar.xz"; }; }; qtquickeffectmaker = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtquickeffectmaker-everywhere-src-6.6.2.tar.xz"; - sha256 = "0lywm71wp943dk3w8zkklyxfk97w48v670zs6pc4pj4ja0ns37q7"; - name = "qtquickeffectmaker-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtquickeffectmaker-everywhere-src-6.6.3.tar.xz"; + sha256 = "0mr350c9kj74g48lavq5z5c604cdgcyycfdpwv5z8bmbr49jl95w"; + name = "qtquickeffectmaker-everywhere-src-6.6.3.tar.xz"; }; }; qtquicktimeline = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtquicktimeline-everywhere-src-6.6.2.tar.xz"; - sha256 = "06cr9p0hrq77ckqslxh0h3lpyw31fblyap1plcyyj8ssr1rm4klc"; - name = "qtquicktimeline-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtquicktimeline-everywhere-src-6.6.3.tar.xz"; + sha256 = "0b266w7al90fbbp16w506klba50d4izf6nfcmmp5fpr6h5pxvcyk"; + name = "qtquicktimeline-everywhere-src-6.6.3.tar.xz"; }; }; qtremoteobjects = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtremoteobjects-everywhere-src-6.6.2.tar.xz"; - sha256 = "0fbkjzykxpkz8myr6dy588gcmhyy3lar17v78zfam8kyxq7s5qxa"; - name = "qtremoteobjects-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtremoteobjects-everywhere-src-6.6.3.tar.xz"; + sha256 = "16bd4zd3yfzlzk087qphphsh8hv38q3a57n1yknvkc5fchzmfzjz"; + name = "qtremoteobjects-everywhere-src-6.6.3.tar.xz"; }; }; qtscxml = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtscxml-everywhere-src-6.6.2.tar.xz"; - sha256 = "0gm4805570ds3jmkbwrjigbg93zc561bd5rc52r71042zzq84j89"; - name = "qtscxml-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtscxml-everywhere-src-6.6.3.tar.xz"; + sha256 = "1dbcw4qnss5rif97gdcimyzl3jqa508yph611dvvhc1xn16nl6qg"; + name = "qtscxml-everywhere-src-6.6.3.tar.xz"; }; }; qtsensors = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtsensors-everywhere-src-6.6.2.tar.xz"; - sha256 = "0a3w50bfnmxndyxnn9lsy1wxffhm2am0yjxqx3vx0gfjwv79yvsa"; - name = "qtsensors-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtsensors-everywhere-src-6.6.3.tar.xz"; + sha256 = "0r9p3lm159pji29vq9kii42jkz4rg15hqh6zlq9442i58a0ayddj"; + name = "qtsensors-everywhere-src-6.6.3.tar.xz"; }; }; qtserialbus = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtserialbus-everywhere-src-6.6.2.tar.xz"; - sha256 = "0g7sx81lrb5r2ipinnghq4iss6clkwbzjb0ck4ay6hmpw54smzww"; - name = "qtserialbus-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtserialbus-everywhere-src-6.6.3.tar.xz"; + sha256 = "1yyh1bh5pjlilcq84fgfw6wd0jak55wndwf0sn92lbhsp3y5lghl"; + name = "qtserialbus-everywhere-src-6.6.3.tar.xz"; }; }; qtserialport = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtserialport-everywhere-src-6.6.2.tar.xz"; - sha256 = "16j5fprmdzzc1snnj5184ihq5avg1s0jrqqcjk70dvmimsf0q7ms"; - name = "qtserialport-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtserialport-everywhere-src-6.6.3.tar.xz"; + sha256 = "0dywalgafvxi2jgdv9dk22hwwd8qsgk5xfybh75n3njmwmwnarg1"; + name = "qtserialport-everywhere-src-6.6.3.tar.xz"; }; }; qtshadertools = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtshadertools-everywhere-src-6.6.2.tar.xz"; - sha256 = "0bxrczs9nw6az2p4n8x0f660vsmxxynx4iqgj75l4zsfzzbym2v2"; - name = "qtshadertools-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtshadertools-everywhere-src-6.6.3.tar.xz"; + sha256 = "1rm17hyhq244zskq3ar3h22qjd5dshy84nnyq1ivhg5k7gb0j2cc"; + name = "qtshadertools-everywhere-src-6.6.3.tar.xz"; }; }; qtspeech = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtspeech-everywhere-src-6.6.2.tar.xz"; - sha256 = "1qvf3p2p1pc5fw40d8zq0iawaaqkc0dp5yx85b1dnw1j809bn8y0"; - name = "qtspeech-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtspeech-everywhere-src-6.6.3.tar.xz"; + sha256 = "1yh3r5zbhgwkjgs7yk6iv2w23766n1i4z8vjkkw5awdixx3gfa76"; + name = "qtspeech-everywhere-src-6.6.3.tar.xz"; }; }; qtsvg = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtsvg-everywhere-src-6.6.2.tar.xz"; - sha256 = "10c1dmbv5d39n1q4m67gf2h4n6wfkzrlyk8plnxbyhhvxxcis8ss"; - name = "qtsvg-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtsvg-everywhere-src-6.6.3.tar.xz"; + sha256 = "1ir57bis27whq7bwqykk1qlxy0522k4ia39brxayjmfadrbixjsa"; + name = "qtsvg-everywhere-src-6.6.3.tar.xz"; }; }; qttools = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qttools-everywhere-src-6.6.2.tar.xz"; - sha256 = "0ij7djy06xi4v5v29fh31gqq5rnc12vviv3qg3vqf4hiaagrxm76"; - name = "qttools-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qttools-everywhere-src-6.6.3.tar.xz"; + sha256 = "1h0vz46mpvzbm5w6sgpk0b3mqkn278l45arhxxk41dwc5n14qvda"; + name = "qttools-everywhere-src-6.6.3.tar.xz"; }; }; qttranslations = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qttranslations-everywhere-src-6.6.2.tar.xz"; - sha256 = "0xqcad8aa9lp6wzh1rs46id6r60zdw82qj3bq9k2b89sxy8c0fna"; - name = "qttranslations-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qttranslations-everywhere-src-6.6.3.tar.xz"; + sha256 = "1kvkrwbgby4i69dpxbxxcv0qbsz69n6icpyr4wcf8qm2r4m5zqqj"; + name = "qttranslations-everywhere-src-6.6.3.tar.xz"; }; }; qtvirtualkeyboard = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtvirtualkeyboard-everywhere-src-6.6.2.tar.xz"; - sha256 = "07nqds49g2x748jsk17cnd2ph81165xnzn70jwxd0gpbi3dzshk1"; - name = "qtvirtualkeyboard-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtvirtualkeyboard-everywhere-src-6.6.3.tar.xz"; + sha256 = "0d517x60birlf8xb3sphchvgm235f8q1868q98kg76plzfhq57wq"; + name = "qtvirtualkeyboard-everywhere-src-6.6.3.tar.xz"; }; }; qtwayland = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtwayland-everywhere-src-6.6.2.tar.xz"; - sha256 = "0y6x84ckcc53ddclnrlzs08b1kvw6saw9nim0hz4wc5fyz7dbkcv"; - name = "qtwayland-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtwayland-everywhere-src-6.6.3.tar.xz"; + sha256 = "0gamcqpl302wlznfnlcg9vlnnhfpxgjnz05prwc9wpy0xh7wqvm9"; + name = "qtwayland-everywhere-src-6.6.3.tar.xz"; }; }; qtwebchannel = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtwebchannel-everywhere-src-6.6.2.tar.xz"; - sha256 = "1incvisc3j758b4k82vnwci8j1bba8zf6xgmgcrsm553k4wpsz1x"; - name = "qtwebchannel-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtwebchannel-everywhere-src-6.6.3.tar.xz"; + sha256 = "0cwcf4pri901piyj0lvqmks9l84di9rcafnfgrmgg5mls7jjlyvw"; + name = "qtwebchannel-everywhere-src-6.6.3.tar.xz"; }; }; qtwebengine = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtwebengine-everywhere-src-6.6.2.tar.xz"; - sha256 = "15h3hniszfkxv2vnn3fnbgbar8wb41ypgn4b4iz4iy6csar8f7fn"; - name = "qtwebengine-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtwebengine-everywhere-src-6.6.3.tar.xz"; + sha256 = "016qvbmdja2abajvsznnjdvblrmzgvs8s2dzlxws30hvna1xqavw"; + name = "qtwebengine-everywhere-src-6.6.3.tar.xz"; }; }; qtwebsockets = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtwebsockets-everywhere-src-6.6.2.tar.xz"; - sha256 = "1y9q8jmspxbfxf07jdcg4n8zwmchccyzp0z68fxr0hnvr2dymrn0"; - name = "qtwebsockets-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtwebsockets-everywhere-src-6.6.3.tar.xz"; + sha256 = "0dm066lv3n97ril9iyd5xn8j13m6r7xp844aagj6dpclaxv83x0n"; + name = "qtwebsockets-everywhere-src-6.6.3.tar.xz"; }; }; qtwebview = { - version = "6.6.2"; + version = "6.6.3"; src = fetchurl { - url = "${mirror}/official_releases/qt/6.6/6.6.2/submodules/qtwebview-everywhere-src-6.6.2.tar.xz"; - sha256 = "0z3p1g26yg3dr3hhavwd5wz9b8yi838xj4s57068wykd80v145wb"; - name = "qtwebview-everywhere-src-6.6.2.tar.xz"; + url = "${mirror}/official_releases/qt/6.6/6.6.3/submodules/qtwebview-everywhere-src-6.6.3.tar.xz"; + sha256 = "00jcxzi9wcbviscn5y0h0mkbac88lpjammg3zvfvjih7avgn6r10"; + name = "qtwebview-everywhere-src-6.6.3.tar.xz"; }; }; } From 47fe73f5b6c87a6f80e1de2ed721fd43bb5bef0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Lafuente?= Date: Mon, 25 Mar 2024 21:02:28 +0100 Subject: [PATCH 29/53] jextract: unstable-2023-11-27 -> unstable-2024-03-13 Closes #293102 --- .../je/jextract-21/package.nix} | 10 +- pkgs/by-name/je/jextract/package.nix | 95 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 - 3 files changed, 99 insertions(+), 8 deletions(-) rename pkgs/{development/tools/java/jextract/default.nix => by-name/je/jextract-21/package.nix} (92%) create mode 100644 pkgs/by-name/je/jextract/package.nix diff --git a/pkgs/development/tools/java/jextract/default.nix b/pkgs/by-name/je/jextract-21/package.nix similarity index 92% rename from pkgs/development/tools/java/jextract/default.nix rename to pkgs/by-name/je/jextract-21/package.nix index 45879c8c64cc..1f5780c00469 100644 --- a/pkgs/development/tools/java/jextract/default.nix +++ b/pkgs/by-name/je/jextract-21/package.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , emptyDirectory , writeText -, makeWrapper +, makeBinaryWrapper , gradle , jdk21 , llvmPackages @@ -49,7 +49,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ gradle - makeWrapper + makeBinaryWrapper ]; env = { @@ -79,18 +79,16 @@ stdenv.mkDerivation { mkdir -p $out/opt/ cp -r ./build/jextract $out/opt/jextract + makeBinaryWrapper "$out/opt/jextract/bin/jextract" "$out/bin/jextract" runHook postInstall ''; - postFixup = '' - makeWrapper "$out/opt/jextract/bin/jextract" "$out/bin/jextract" - ''; - meta = with lib; { description = "A tool which mechanically generates Java bindings from a native library headers"; mainProgram = "jextract"; homepage = "https://github.com/openjdk/jextract"; + platforms = jdk21.meta.platforms; license = licenses.gpl2Only; maintainers = with maintainers; [ sharzy ]; }; diff --git a/pkgs/by-name/je/jextract/package.nix b/pkgs/by-name/je/jextract/package.nix new file mode 100644 index 000000000000..63ee155b1acd --- /dev/null +++ b/pkgs/by-name/je/jextract/package.nix @@ -0,0 +1,95 @@ +{ lib +, stdenv +, fetchFromGitHub +, emptyDirectory +, writeText +, makeBinaryWrapper +, gradle +, jdk22 +, llvmPackages +}: + +let + gradleInit = writeText "init.gradle" '' + logger.lifecycle 'Replacing Maven repositories with empty directory...' + gradle.projectsLoaded { + rootProject.allprojects { + buildscript { + repositories { + clear() + maven { url '${emptyDirectory}' } + } + } + repositories { + clear() + maven { url '${emptyDirectory}' } + } + } + } + settingsEvaluated { settings -> + settings.pluginManagement { + repositories { + maven { url '${emptyDirectory}' } + } + } + } + ''; +in + +stdenv.mkDerivation { + pname = "jextract"; + version = "unstable-2024-03-13"; + + src = fetchFromGitHub { + owner = "openjdk"; + repo = "jextract"; + rev = "b9ec8879cff052b463237fdd76382b3a5cd8ff2b"; + hash = "sha256-+4AM8pzXPIO/CS3+Rd/jJf2xDvAo7K7FRyNE8rXvk5U="; + }; + + nativeBuildInputs = [ + gradle + makeBinaryWrapper + ]; + + env = { + ORG_GRADLE_PROJECT_llvm_home = llvmPackages.libclang.lib; + ORG_GRADLE_PROJECT_jdk22_home = jdk22; + }; + + buildPhase = '' + runHook preBuild + + export GRADLE_USER_HOME=$(mktemp -d) + gradle --console plain --init-script "${gradleInit}" assemble + + runHook postBuild + ''; + + doCheck = true; + + checkPhase = '' + runHook preCheck + gradle --console plain --init-script "${gradleInit}" verify + runHook postCheck + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/opt/ + cp -r ./build/jextract $out/opt/jextract + makeBinaryWrapper "$out/opt/jextract/bin/jextract" "$out/bin/jextract" + + runHook postInstall + ''; + + meta = with lib; { + description = "A tool which mechanically generates Java bindings from a native library headers"; + mainProgram = "jextract"; + homepage = "https://github.com/openjdk/jextract"; + platforms = jdk22.meta.platforms; + license = licenses.gpl2Only; + maintainers = with maintainers; [ jlesquembre sharzy ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e2cdc1cc0323..b1c48fa1d953 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25382,8 +25382,6 @@ with pkgs; fastjar = callPackage ../development/tools/java/fastjar { }; - jextract = callPackage ../development/tools/java/jextract { }; - httpunit = callPackage ../development/libraries/java/httpunit { }; javaCup = callPackage ../development/libraries/java/cup { From a98e9f4892660c164b910461dad1abd734382736 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Tue, 26 Mar 2024 14:11:31 +0000 Subject: [PATCH 30/53] buildGraalvm: fix native-image warnings in installCheckPhase --- .../graalvm/community-edition/buildGraalvm.nix | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix index 858d7443ff62..99e1a053769d 100644 --- a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix +++ b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix @@ -165,33 +165,27 @@ let echo "Testing GraalVM" $out/bin/java -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler HelloWorld | fgrep 'Hello World' - # Workaround GraalVM issue where the builder does not have access to the - # environment variables since 21.0.0 - # Only needed for native-image tests - # https://github.com/oracle/graal/pull/6095 - # https://github.com/oracle/graal/pull/6095 - # https://github.com/oracle/graal/issues/7502 - export NATIVE_IMAGE_DEPRECATED_BUILDER_SANITATION="true"; + extraNativeImageArgs="$(export -p | sed -n 's/^declare -x \([^=]\+\)=.*$/ -E\1/p' | tr -d \\n)" echo "Ahead-Of-Time compilation" - $out/bin/native-image -H:+UnlockExperimentalVMOptions -H:-CheckToolchain -H:+ReportExceptionStackTraces HelloWorld + $out/bin/native-image -H:+UnlockExperimentalVMOptions -H:-CheckToolchain -H:+ReportExceptionStackTraces -march=compatibility $extraNativeImageArgs HelloWorld ./helloworld | fgrep 'Hello World' ${# --static is only available in Linux lib.optionalString (stdenv.isLinux && !useMusl) '' echo "Ahead-Of-Time compilation with -H:+StaticExecutableWithDynamicLibC" - $out/bin/native-image -H:+UnlockExperimentalVMOptions -H:+StaticExecutableWithDynamicLibC HelloWorld + $out/bin/native-image -H:+UnlockExperimentalVMOptions -H:+StaticExecutableWithDynamicLibC -march=compatibility $extraNativeImageArgs HelloWorld ./helloworld | fgrep 'Hello World' echo "Ahead-Of-Time compilation with --static" - $out/bin/native-image --static HelloWorld + $out/bin/native-image $extraNativeImageArgs -march=compatibility --static HelloWorld ./helloworld | fgrep 'Hello World' ''} ${# --static is only available in Linux lib.optionalString (stdenv.isLinux && useMusl) '' echo "Ahead-Of-Time compilation with --static and --libc=musl" - $out/bin/native-image --static HelloWorld --libc=musl + $out/bin/native-image $extraNativeImageArgs -march=compatibility --libc=musl --static HelloWorld ./helloworld | fgrep 'Hello World' ''} From f319e891ed08d94fc1df6db66ebf749f3664efa2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 26 Mar 2024 14:27:43 +0000 Subject: [PATCH 31/53] obs-cmd: 0.17.4 -> 0.17.5 --- pkgs/by-name/ob/obs-cmd/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ob/obs-cmd/package.nix b/pkgs/by-name/ob/obs-cmd/package.nix index 71fe89fb7b3e..6d9f2763591a 100644 --- a/pkgs/by-name/ob/obs-cmd/package.nix +++ b/pkgs/by-name/ob/obs-cmd/package.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { pname = "obs-cmd"; - version = "0.17.4"; + version = "0.17.5"; src = fetchFromGitHub { owner = "grigio"; repo = "obs-cmd"; rev = "v${version}"; - hash = "sha256-HCvIMIQZKzIkpYL9F9oM4xiE/gOeI+7dMj9QmhetHm4="; + hash = "sha256-AphpIehFHZwcZ7vO5FV6PBZSO3y6oLhH/kQhJjr34VY="; }; - cargoHash = "sha256-AQRjZH3WhZXU6NhDSCv4/HWz5un1nFtuzWPYSJA9XaE="; + cargoHash = "sha256-s/nWJ/8JnZwmROFSd2y6btopk2Cxp0zkMdy7mxVxr6k="; meta = with lib; { description = "Minimal CLI to control OBS Studio via obs-websocket"; From 74fb0ebcd66edaf61cbbffb68339fab0effad6d8 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 26 Mar 2024 15:38:26 +0100 Subject: [PATCH 32/53] python312Packages.reptor: refactor --- pkgs/development/python-modules/reptor/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/reptor/default.nix b/pkgs/development/python-modules/reptor/default.nix index a7f35e964986..013008581a53 100644 --- a/pkgs/development/python-modules/reptor/default.nix +++ b/pkgs/development/python-modules/reptor/default.nix @@ -46,12 +46,12 @@ buildPythonPackage rec { pythonRelaxDeps = true; - nativeBuildInputs = [ + build-system = [ pythonRelaxDepsHook setuptools ]; - propagatedBuildInputs = [ + dependencies = [ asgiref certifi charset-normalizer From 2fea2459368625067a730446fbd97f2ea8744042 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Tue, 26 Mar 2024 14:12:31 +0000 Subject: [PATCH 33/53] buildGraalvm: use macOS SDK 11 Fix x86_64-darwin builds. --- .../graalvm/community-edition/buildGraalvm.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix index 99e1a053769d..0e899a0a17d5 100644 --- a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix +++ b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix @@ -51,7 +51,13 @@ let "meta" ]; - cLibs = lib.optionals stdenv.isLinux ( + stdenv' = + if stdenv.isDarwin then + darwin.apple_sdk_11_0.stdenv + else + stdenv; + + cLibs = lib.optionals stdenv'.isLinux ( [ glibc zlib.static ] ++ lib.optionals (!useMusl) [ glibc.static ] ++ lib.optionals useMusl [ musl ] @@ -61,14 +67,14 @@ let # GraalVM 21.3.0+ expects musl-gcc as -musl-gcc musl-gcc = (runCommandCC "musl-gcc" { } '' mkdir -p $out/bin - ln -s ${lib.getDev musl}/bin/musl-gcc $out/bin/${stdenv.hostPlatform.system}-musl-gcc + ln -s ${lib.getDev musl}/bin/musl-gcc $out/bin/${stdenv'.hostPlatform.system}-musl-gcc ''); - binPath = lib.makeBinPath (lib.optionals useMusl [ musl-gcc ] ++ [ stdenv.cc ]); + binPath = lib.makeBinPath (lib.optionals useMusl [ musl-gcc ] ++ [ stdenv'.cc ]); runtimeLibraryPath = lib.makeLibraryPath ([ cups ] ++ lib.optionals gtkSupport [ cairo glib gtk3 ]); - graalvm-ce = stdenv.mkDerivation ({ + graalvm-ce = stdenv'.mkDerivation ({ pname = "graalvm-ce"; unpackPhase = '' @@ -107,7 +113,7 @@ let ++ lib.optional stdenv.isLinux autoPatchelfHook; propagatedBuildInputs = [ setJavaClassPath zlib ] - ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Foundation; + ++ lib.optional stdenv.isDarwin darwin.apple_sdk_11_0.frameworks.Foundation; buildInputs = lib.optionals stdenv.isLinux [ alsa-lib # libasound.so wanted by lib/libjsound.so From e1a7ec5583b2c1b5fef89153ee0727d1f4d61904 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Tue, 26 Mar 2024 14:56:08 +0000 Subject: [PATCH 34/53] graalvm-ce: make it a scope --- .../community-edition/buildGraalvm.nix | 14 +++------ .../graalvm/community-edition/default.nix | 29 +++++++++++-------- 2 files changed, 21 insertions(+), 22 deletions(-) diff --git a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix index 0e899a0a17d5..34ed06e1de12 100644 --- a/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix +++ b/pkgs/development/compilers/graalvm/community-edition/buildGraalvm.nix @@ -51,13 +51,7 @@ let "meta" ]; - stdenv' = - if stdenv.isDarwin then - darwin.apple_sdk_11_0.stdenv - else - stdenv; - - cLibs = lib.optionals stdenv'.isLinux ( + cLibs = lib.optionals stdenv.isLinux ( [ glibc zlib.static ] ++ lib.optionals (!useMusl) [ glibc.static ] ++ lib.optionals useMusl [ musl ] @@ -67,14 +61,14 @@ let # GraalVM 21.3.0+ expects musl-gcc as -musl-gcc musl-gcc = (runCommandCC "musl-gcc" { } '' mkdir -p $out/bin - ln -s ${lib.getDev musl}/bin/musl-gcc $out/bin/${stdenv'.hostPlatform.system}-musl-gcc + ln -s ${lib.getDev musl}/bin/musl-gcc $out/bin/${stdenv.hostPlatform.system}-musl-gcc ''); - binPath = lib.makeBinPath (lib.optionals useMusl [ musl-gcc ] ++ [ stdenv'.cc ]); + binPath = lib.makeBinPath (lib.optionals useMusl [ musl-gcc ] ++ [ stdenv.cc ]); runtimeLibraryPath = lib.makeLibraryPath ([ cups ] ++ lib.optionals gtkSupport [ cairo glib gtk3 ]); - graalvm-ce = stdenv'.mkDerivation ({ + graalvm-ce = stdenv.mkDerivation ({ pname = "graalvm-ce"; unpackPhase = '' diff --git a/pkgs/development/compilers/graalvm/community-edition/default.nix b/pkgs/development/compilers/graalvm/community-edition/default.nix index a29a81783c9c..bfc9c729689c 100644 --- a/pkgs/development/compilers/graalvm/community-edition/default.nix +++ b/pkgs/development/compilers/graalvm/community-edition/default.nix @@ -1,23 +1,28 @@ { lib -, stdenv -, callPackage -, fetchurl +, pkgs }: +lib.makeScope pkgs.newScope (self: { - buildGraalvm = callPackage ./buildGraalvm.nix; + stdenv = + if pkgs.stdenv.isDarwin then + pkgs.darwin.apple_sdk_11_0.stdenv + else + pkgs.stdenv; - buildGraalvmProduct = callPackage ./buildGraalvmProduct.nix; + buildGraalvm = self.callPackage ./buildGraalvm.nix; - graalvm-ce = callPackage ./graalvm-ce { }; + buildGraalvmProduct = self.callPackage ./buildGraalvmProduct.nix; - graalvm-ce-musl = callPackage ./graalvm-ce { useMusl = true; }; + graalvm-ce = self.callPackage ./graalvm-ce { }; - graaljs = callPackage ./graaljs { }; + graalvm-ce-musl = self.callPackage ./graalvm-ce { useMusl = true; }; - graalnodejs = callPackage ./graalnodejs { }; + graaljs = self.callPackage ./graaljs { }; - graalpy = callPackage ./graalpy { }; + graalnodejs = self.callPackage ./graalnodejs { }; - truffleruby = callPackage ./truffleruby { }; -} + graalpy = self.callPackage ./graalpy { }; + + truffleruby = self.callPackage ./truffleruby { }; +}) From affd0b626ae223b6b25754adb8a19f81449566b0 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Fri, 15 Mar 2024 21:58:05 +0100 Subject: [PATCH 35/53] ruff: 0.3.2 -> 0.3.4 Diff: https://github.com/astral-sh/ruff/compare/refs/tags/v0.3.2...v0.3.4 Changelog: https://github.com/astral-sh/ruff/releases/tag/v0.3.4 --- pkgs/development/tools/ruff/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix index 25ef6c14921d..bb804eae7d35 100644 --- a/pkgs/development/tools/ruff/default.nix +++ b/pkgs/development/tools/ruff/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "ruff"; - version = "0.3.2"; + version = "0.3.4"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; rev = "refs/tags/v${version}"; - hash = "sha256-2Pt2HuDB9JLD9E1q0JH7jyVoc0II5uVL1l8pAod+9V4="; + hash = "sha256-P0k/0tWbhY2HaxI4QThxpHD48JUjtF/d3iU4MIFhdHI="; }; - cargoHash = "sha256-njHpqWXFNdwenV58+VGznnqbaNK1GoGtHSTfKU2MRbs="; + cargoHash = "sha256-LckX8/c3Yg9i/0C2d0XSxxNJSpaVxmj2s8tkEUDhbmA="; nativeBuildInputs = [ installShellFiles From 70fa188e175ab9d1034416374b2af15ad94decbc Mon Sep 17 00:00:00 2001 From: Atemu Date: Mon, 25 Mar 2024 19:15:14 +0100 Subject: [PATCH 36/53] nixos/paperless: set OMP_NUM_THREADS=1 by default Fixes https://github.com/NixOS/nixpkgs/issues/240591 --- nixos/modules/services/misc/paperless.nix | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/nixos/modules/services/misc/paperless.nix b/nixos/modules/services/misc/paperless.nix index 9314c4f3848d..9301d1f68725 100644 --- a/nixos/modules/services/misc/paperless.nix +++ b/nixos/modules/services/misc/paperless.nix @@ -27,6 +27,8 @@ let name = "paperless_ngx_nltk_data"; paths = pkg.nltkData; }; + } // optionalAttrs (cfg.openMPThreadingWorkaround) { + OMP_NUM_THREADS = "1"; } // (lib.mapAttrs (_: s: if (lib.isAttrs s || lib.isList s) then builtins.toJSON s else if lib.isBool s then lib.boolToString s @@ -199,6 +201,20 @@ in }; package = mkPackageOption pkgs "paperless-ngx" { }; + + openMPThreadingWorkaround = mkEnableOption '' + a workaround for document classifier timeouts. + + Paperless uses OpenBLAS via scikit-learn for document classification. + + The default is to use threading for OpenMP but this would cause the + document classifier to spin on one core seemingly indefinitely if there + are large amounts of classes per classification; causing it to + effectively never complete due to running into timeouts. + + This sets `OMP_NUM_THREADS` to `1` in order to mitigate the issue. See + https://github.com/NixOS/nixpkgs/issues/240591 for more information. + '' // mkOption { default = true; }; }; config = mkIf cfg.enable { From 12e150a15f538d0cb8a0c2b54b5f03de9d47dd4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo?= Date: Tue, 26 Mar 2024 14:53:14 -0300 Subject: [PATCH 37/53] pdfgrep: 2.1.2 -> 2.2.0 --- pkgs/tools/typesetting/pdfgrep/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/typesetting/pdfgrep/default.nix b/pkgs/tools/typesetting/pdfgrep/default.nix index 44854592348b..a1e9ed91f990 100644 --- a/pkgs/tools/typesetting/pdfgrep/default.nix +++ b/pkgs/tools/typesetting/pdfgrep/default.nix @@ -1,12 +1,12 @@ -{ lib, stdenv, fetchurl, pkg-config, poppler, libgcrypt, pcre, asciidoc }: +{ lib, stdenv, fetchurl, pkg-config, poppler, libgcrypt, pcre2, asciidoc }: stdenv.mkDerivation rec { pname = "pdfgrep"; - version = "2.1.2"; + version = "2.2.0"; src = fetchurl { url = "https://pdfgrep.org/download/${pname}-${version}.tar.gz"; - sha256 = "1fia10djcxxl7n9jw2prargw4yzbykk6izig2443ycj9syhxrwqf"; + hash = "sha256-BmHlMeTA7wl5Waocl3N5ZYXbOccshKAv+H0sNjfGIMs="; }; postPatch = '' @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ pkg-config asciidoc ]; - buildInputs = [ poppler libgcrypt pcre ]; + buildInputs = [ poppler libgcrypt pcre2 ]; meta = { description = "Commandline utility to search text in PDF files"; From 30409af9ef4ad20a8b081c6f2e1adfbb17b12d5c Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 26 Mar 2024 21:09:34 +0300 Subject: [PATCH 38/53] scripts/kde/generate-sources: fix shebang --- maintainers/scripts/kde/generate-sources.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maintainers/scripts/kde/generate-sources.py b/maintainers/scripts/kde/generate-sources.py index 7b3b2ac35d26..4f43710997f4 100755 --- a/maintainers/scripts/kde/generate-sources.py +++ b/maintainers/scripts/kde/generate-sources.py @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -i python3 -p "python3.withPackages(ps: [ ps.beautifulsoup4 ps.click ps.httpx ps.jinja2 ps.pyyaml ]) +#!nix-shell -i python3 -p "python3.withPackages(ps: [ ps.beautifulsoup4 ps.click ps.httpx ps.jinja2 ps.pyyaml ])" import base64 import binascii import json From 86f1d7be55b8568e3dd726cb2fba33ae89ed7fd8 Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 26 Mar 2024 21:09:45 +0300 Subject: [PATCH 39/53] plasma: 6.0.2 -> 6.0.3 --- pkgs/kde/generated/sources/plasma.json | 454 ++++++++++++------------- 1 file changed, 227 insertions(+), 227 deletions(-) diff --git a/pkgs/kde/generated/sources/plasma.json b/pkgs/kde/generated/sources/plasma.json index 8bde42d99048..13b8781de46a 100644 --- a/pkgs/kde/generated/sources/plasma.json +++ b/pkgs/kde/generated/sources/plasma.json @@ -1,317 +1,317 @@ { "bluedevil": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/bluedevil-6.0.2.tar.xz", - "hash": "sha256-gV4OEQ7zlQPsBaRr11+9IlVSuehQUKm0Py2KeAPh22A=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/bluedevil-6.0.3.tar.xz", + "hash": "sha256-0mO+VIJaQYnUVrAafOC9tCdaG1VeN4KxCop30r6TyyQ=" }, "breeze": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/breeze-6.0.2.tar.xz", - "hash": "sha256-TGf1pZqaN8lnVFUselB20p6nhkrFD6l2Zxl2TtlPtMw=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/breeze-6.0.3.tar.xz", + "hash": "sha256-WXxGCXBArnmktHCGxcyhIb8rRHm80JkwJunM0mC0sfk=" }, "breeze-grub": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/breeze-grub-6.0.2.tar.xz", - "hash": "sha256-XBZ8FyaLvD42Ua8SpV+bs4UIphig+IHmMpzRcOCNlEY=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/breeze-grub-6.0.3.tar.xz", + "hash": "sha256-e7i9FT8J0Cj1kHWU/A6AhSlLS1GHAKxCUlQrrKCasRU=" }, "breeze-gtk": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/breeze-gtk-6.0.2.tar.xz", - "hash": "sha256-phKZCTfgwMbOOGwg8zv3tqWcMhtrb50qcFFj/96ufdo=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/breeze-gtk-6.0.3.tar.xz", + "hash": "sha256-t8Ew3GsnQ6rTkI1UsLryp7f+cX1SZfdgUEHrN9QQ6jY=" }, "breeze-plymouth": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/breeze-plymouth-6.0.2.tar.xz", - "hash": "sha256-SEVtmnGdxrM6tidOxMVveOQvEnLCWeAGTmpc5qLodOk=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/breeze-plymouth-6.0.3.tar.xz", + "hash": "sha256-AffQVamnYbDKl9fUTbzXMokQPB0K/XUuI330BYBzz0A=" }, "discover": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/discover-6.0.2.tar.xz", - "hash": "sha256-jDuWQYjuNySaob1KzVKWfYgDvEC3Xzt3GFk8HNbM9PA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/discover-6.0.3.tar.xz", + "hash": "sha256-spGWIR+PhL/eku1ZNmyzu8f9bONAsCJmrQusJsHcd54=" }, "drkonqi": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/drkonqi-6.0.2.tar.xz", - "hash": "sha256-S4HHlDGeBMVwqUh/Cd2gLxiIHiSFR7qFaqhKbt5wwxQ=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/drkonqi-6.0.3.tar.xz", + "hash": "sha256-H6nnUiVRqaq5LYreP2u7f8+4Mpc6AREapESxiOQ04s4=" }, "flatpak-kcm": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/flatpak-kcm-6.0.2.tar.xz", - "hash": "sha256-cxEOEmCqq9Alj632/WPg1mnG1lzBY3TyjNiMZkusJY0=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/flatpak-kcm-6.0.3.tar.xz", + "hash": "sha256-k+tUaLHfzxqFNVm2biXWrkkNZbo5dSY/HlwHGLSuOmU=" }, "kactivitymanagerd": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kactivitymanagerd-6.0.2.tar.xz", - "hash": "sha256-6V6in4tvuIK+xR2UZJEqdDVO9Tlrs+q3iDDa40qk37A=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kactivitymanagerd-6.0.3.tar.xz", + "hash": "sha256-T5IxT8IRfcJv9nHDM04AdtXyt/7KQ09OE4v99XS2fOU=" }, "kde-cli-tools": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kde-cli-tools-6.0.2.tar.xz", - "hash": "sha256-Sr7JMrS0eaQiTg7yVjBVmGVdM4mzaaYf5IY34rXOjlU=" - }, - "kde-gtk-config": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kde-gtk-config-6.0.2.tar.xz", - "hash": "sha256-iEVwUAzthC8eHFRe32/dUDZnP4OnGIZE+Ln3YeJoL34=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kde-cli-tools-6.0.3.tar.xz", + "hash": "sha256-UN5KvK8mWbqMG+hXvLfxoJVQ0nzEfyWg3uWSEQpVnEI=" }, "kdecoration": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kdecoration-6.0.2.tar.xz", - "hash": "sha256-uZNhbMXXj854ey29BKr+VA6SnC7MzeFLzgxhkDUUvsI=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kdecoration-6.0.3.tar.xz", + "hash": "sha256-PJH2WpseoIzyA+eexO3+pojEY9fSGMlSlsA3a99ZVvk=" + }, + "kde-gtk-config": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kde-gtk-config-6.0.3.tar.xz", + "hash": "sha256-NtTPT+Ss3sXZF8j/P/FXSOb8s1bc06RIjJ4Ifnm1ZMI=" }, "kdeplasma-addons": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kdeplasma-addons-6.0.2.tar.xz", - "hash": "sha256-Wl4L/PtA1Xpeu5/tXSOMZC0Y5+0tbduxJAthxZi7AgA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kdeplasma-addons-6.0.3.tar.xz", + "hash": "sha256-LeweAF4uh/PI04OgZ4sb+Y1IhQfT3pSn34zZPju5Z8E=" }, "kgamma": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kgamma-6.0.2.tar.xz", - "hash": "sha256-+A2xpuiVBAQNUcaxT6i6Bqxnh9w3wFvEHsbLzbRjmZA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kgamma-6.0.3.tar.xz", + "hash": "sha256-gW55sJkvoq5tT23Wsnf1CFYt+E4AYdnAYJVXU7hCJNM=" }, "kglobalacceld": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kglobalacceld-6.0.2.tar.xz", - "hash": "sha256-pPPG2MCGNujAI4xblFWgyXXVciXGYScybR3U3aGjJos=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kglobalacceld-6.0.3.tar.xz", + "hash": "sha256-EqE37lBS/b92xUxO/AfVUO3KWiWntDTVIsFBjj41ssw=" }, "kinfocenter": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kinfocenter-6.0.2.tar.xz", - "hash": "sha256-XX1CmQt73K7ndlEP298n5EtbvhaMTk5NVJ9WHo/iyyA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kinfocenter-6.0.3.tar.xz", + "hash": "sha256-7pwt2u4si/RTw46CwzJ9yDrTkAQt0QbBnd9LYlGorfs=" }, "kmenuedit": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kmenuedit-6.0.2.tar.xz", - "hash": "sha256-0K7EynTFpVeMp7k0F1qex+ITJLvaVczpb0oN1TJtwZc=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kmenuedit-6.0.3.tar.xz", + "hash": "sha256-fPjU4qqeJjOp0PCSAlxIwKcxoUz5IKa1KNj/57TWxyw=" }, "kpipewire": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kpipewire-6.0.2.tar.xz", - "hash": "sha256-APmGtilgMkYaNYcdvooS/CTC+TtiOdMJjJe3bcvUbMk=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kpipewire-6.0.3.tar.xz", + "hash": "sha256-Grp6BL81yIaQaK84eEUSG1205+YfGZDk3rhstoOgUn4=" }, "kscreen": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kscreen-6.0.2.tar.xz", - "hash": "sha256-8fVuPlxw5dt1pfwBtPCB7cgRy7NoAiu3DEr6viVaAoU=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kscreen-6.0.3.tar.xz", + "hash": "sha256-WRbghsImAEClTdoA/jL6doVA2rp4kV8tdrpd9515mp4=" }, "kscreenlocker": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kscreenlocker-6.0.2.tar.xz", - "hash": "sha256-RRxpojVsVFwRjjLJ+LRYYnKymfjZ3cTJyISxnbQntT8=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kscreenlocker-6.0.3.tar.xz", + "hash": "sha256-Sv7bQ6k1JB/2mORJBbSvbhkBRAMmhoCTFjyjb4OY1mk=" }, "ksshaskpass": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/ksshaskpass-6.0.2.tar.xz", - "hash": "sha256-C+p20xygb3QkQqzmk+LcSJYSMJtapWfRaXisJu4g+sk=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/ksshaskpass-6.0.3.tar.xz", + "hash": "sha256-t+pKW7tQqwyY8ELQAag18P6E8suR5Pb5DxvgxmoYMgk=" }, "ksystemstats": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/ksystemstats-6.0.2.tar.xz", - "hash": "sha256-l1/8/okQHOVc8cDFbGZuAuXcPR+pJF4xWw0jAwNMqEA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/ksystemstats-6.0.3.tar.xz", + "hash": "sha256-f+w6cF3Qb6/0+YzpS1BfypV+CdgmGSQC+WQ/gY3PREU=" }, "kwallet-pam": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kwallet-pam-6.0.2.tar.xz", - "hash": "sha256-QTIb6oKt0j+Gtry+bTiLyMNZI70df4pm0Iw/KrGrAnM=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kwallet-pam-6.0.3.tar.xz", + "hash": "sha256-Is2LAK4XqSxHOvYZajaFX8PqzpIEtz87ziSJ2A806H8=" }, "kwayland": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kwayland-6.0.2.tar.xz", - "hash": "sha256-vcLnj1datajVor0xCKPMMEZ6M0lYs8/9rASDnbg12DM=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kwayland-6.0.3.tar.xz", + "hash": "sha256-+7EprPuoK7CqOph5C1Vivz/Khn70H0gjxvE8ZgUDZpg=" }, "kwayland-integration": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kwayland-integration-6.0.2.tar.xz", - "hash": "sha256-JcURgey49PxoX332lmXwBWNGp6ljESh8frD9z8NjFPo=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kwayland-integration-6.0.3.tar.xz", + "hash": "sha256-2dz0Ncoy1J8kG5EWyzWa2TrQ8KsgZ/bkG5VaeDTY4bo=" }, "kwin": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kwin-6.0.2.tar.xz", - "hash": "sha256-ZTQGIBVP7eWY2qdsxiRzmpgkaFqhqpQiTv3V8bmwdrs=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kwin-6.0.3.tar.xz", + "hash": "sha256-D0bnds1Qg3TFUsClpVpFvyj5zMyIcAiQCYVKETTXKnk=" }, "kwrited": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/kwrited-6.0.2.tar.xz", - "hash": "sha256-+1IZTV5VmlaWevHIoaCAhex3t9ZRCrSGoPEMk/ro2Sg=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/kwrited-6.0.3.tar.xz", + "hash": "sha256-Od+o/t6t8TmrxhCojFF8q2WNUsulAiOmi3B2C+Ene6s=" }, "layer-shell-qt": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/layer-shell-qt-6.0.2.tar.xz", - "hash": "sha256-qtaCwTBihouUlwy2DeQAH6jRpL3YJ8Y3VuIV0EU95VA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/layer-shell-qt-6.0.3.tar.xz", + "hash": "sha256-NEPFeo+L4m76QLPy90jRMKxk1hP4lOeY1vpS4ptZtRc=" }, "libkscreen": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/libkscreen-6.0.2.tar.xz", - "hash": "sha256-L4ZclYm2Cuc5WxilMbHm+/6o4s5cFHgRsO8fjAXjBTc=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/libkscreen-6.0.3.tar.xz", + "hash": "sha256-R4X8PipebbOmLMWPFoLddRNOyIydlmudj7IuhwqjNIM=" }, "libksysguard": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/libksysguard-6.0.2.tar.xz", - "hash": "sha256-lp+uvfmXygl+lN2HffJ+xb/0lnFPZnif5izUVXvsbdM=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/libksysguard-6.0.3.tar.xz", + "hash": "sha256-UzYTh/OSk8chrw1LrEi7AIdX5kL9qbmvgZChyp2cK5I=" }, "libplasma": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/libplasma-6.0.2.tar.xz", - "hash": "sha256-NaAhBL3H3BNHETIZdoplNmUDp99fr5i/ANAatgNNEb0=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/libplasma-6.0.3.tar.xz", + "hash": "sha256-HKAgAm3to4pGyzTNcdfEnDsYub7ybK8c73Zav0n99x0=" }, "milou": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/milou-6.0.2.tar.xz", - "hash": "sha256-WKPbHv9ZfLIDlZ6jCqSWiOL0KK2tOIxU4suugQr0GhQ=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/milou-6.0.3.tar.xz", + "hash": "sha256-Lvv54qZEFF0tpKEEDmovTlRwMur8YRkGWbtXH45806I=" }, "ocean-sound-theme": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/ocean-sound-theme-6.0.2.tar.xz", - "hash": "sha256-+gHhW4qZfl3TTn3qZ6gnEph2WC5rD91EMjUvFrZ0VXc=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/ocean-sound-theme-6.0.3.tar.xz", + "hash": "sha256-Y7vfbsFcFOyAgHy8QoZQ5eLeHpxjm33erlx4mcIzxTY=" }, "oxygen": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/oxygen-6.0.2.tar.xz", - "hash": "sha256-Zhqp3BDNGzPOj1agJFD0YUhThKyex9vax8fGhPkiIOM=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/oxygen-6.0.3.tar.xz", + "hash": "sha256-c31dui2KYinXw9ZUtZAKo8Cio6jjbLXIfY7XpzgjPIQ=" }, "oxygen-sounds": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/oxygen-sounds-6.0.2.tar.xz", - "hash": "sha256-Ndoo5SZSvpsabDsmkZ1SR9QapotXL7EMRYOg9cy3C2E=" - }, - "plasma-activities": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-activities-6.0.2.tar.xz", - "hash": "sha256-Cod9C2cV+x5YSOQC4QK9Buu4ke2FHLrX7/j68WTvMak=" - }, - "plasma-activities-stats": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-activities-stats-6.0.2.tar.xz", - "hash": "sha256-1+SS0HyVe16mxFMLHxnTiiq97Ga8pTRuCOfvya4VkGw=" - }, - "plasma-browser-integration": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-browser-integration-6.0.2.tar.xz", - "hash": "sha256-bA76Wl1cT6742zEp00V1Kmr/5bShwRCec/mAKlTfvzI=" - }, - "plasma-desktop": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-desktop-6.0.2.tar.xz", - "hash": "sha256-BBDldeDxfKqvFhMqo/zLumQx3WG6dG8+LiAtKU9UNgo=" - }, - "plasma-disks": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-disks-6.0.2.tar.xz", - "hash": "sha256-PWeGm75GqCuYOx9twIYm0NNhdARGxwAFddc1RWUi8LY=" - }, - "plasma-firewall": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-firewall-6.0.2.tar.xz", - "hash": "sha256-IO4z6ATsdd9xN9a0c89dRqd5q2ZF3QlJT2f30Q7UqSg=" - }, - "plasma-integration": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-integration-6.0.2.tar.xz", - "hash": "sha256-Jqfbaw63VItADr+stNU/4bu8PAx7Pg6/duVVK8wCoPw=" - }, - "plasma-mobile": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-mobile-6.0.2.tar.xz", - "hash": "sha256-LQgMq0CvYObKPrA8E6XwttrRECxsCUEZOmTyTDeVf3I=" - }, - "plasma-nano": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-nano-6.0.2.tar.xz", - "hash": "sha256-xDxCj5OjxwOkfeODSur6ftjHEamwEyws17Zp/t/tcpw=" - }, - "plasma-nm": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-nm-6.0.2.tar.xz", - "hash": "sha256-QubzGz7G3lHuPO/bUimeZVzdIKXItNeIBCkYTi+S0MY=" - }, - "plasma-pa": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-pa-6.0.2.tar.xz", - "hash": "sha256-mY2o94MeFgBDFby0iNBdHVOXE0BuI1FVvb+7gNMB5a0=" - }, - "plasma-sdk": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-sdk-6.0.2.tar.xz", - "hash": "sha256-twvRfWNrJvg3RZsfcusp/QuiJXEcjK73p2LdYL/0ZAU=" - }, - "plasma-systemmonitor": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-systemmonitor-6.0.2.tar.xz", - "hash": "sha256-vDVzeXuZ3pbjmaKTYuvPbhu5ic7UocQZ8jIgSEJsk4s=" - }, - "plasma-thunderbolt": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-thunderbolt-6.0.2.tar.xz", - "hash": "sha256-CkWNmJNRiBP/dJeZ0cr068oFAbF5akLU496+F3StG2A=" - }, - "plasma-vault": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-vault-6.0.2.tar.xz", - "hash": "sha256-X4BqRrZAt+qK2fGNk5yhNDTOy+Ker0Y0k+5vnBl8HJA=" - }, - "plasma-welcome": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-welcome-6.0.2.tar.xz", - "hash": "sha256-PZiuRZBchM6kWNYmgKHCRx1E0Zu2HOkx47INBfDw908=" - }, - "plasma-workspace": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-workspace-6.0.2.tar.xz", - "hash": "sha256-nM604rzgRZcPwXe/KEf/rli9OXgGuMz0TaWCCjvWAM4=" - }, - "plasma-workspace-wallpapers": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma-workspace-wallpapers-6.0.2.tar.xz", - "hash": "sha256-0zDvbxeoltvd/jh7QSGuwFc3LAKcPMHS0iSIQru0vwA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/oxygen-sounds-6.0.3.tar.xz", + "hash": "sha256-MOoAoJx1lfboRxqgKLRdP1GPWOOxmsFMiBexYkUoT6Y=" }, "plasma5support": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plasma5support-6.0.2.tar.xz", - "hash": "sha256-GLHeNGH183IcXTy7CEEToM7qW/PjdvIbJP6YylbVSm8=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma5support-6.0.3.tar.xz", + "hash": "sha256-yIO7B+UT7cZv05OaVC88TgF8iCwYUShuVbt63ctcNJU=" + }, + "plasma-activities": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-activities-6.0.3.tar.xz", + "hash": "sha256-xhWV6fR+769H47r0ANz9C6ASquSMaTQtj6DjoeElcP8=" + }, + "plasma-activities-stats": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-activities-stats-6.0.3.tar.xz", + "hash": "sha256-XdmMwCemN/2279LeDdXmftu0+wRhGNH+ScPpX21EGj0=" + }, + "plasma-browser-integration": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-browser-integration-6.0.3.tar.xz", + "hash": "sha256-hqcuOkgQf6oIKWdR9W1SBWRSXEA1bPSlrxJqJUjdxfE=" + }, + "plasma-desktop": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-desktop-6.0.3.tar.xz", + "hash": "sha256-AZsQu40EqAadgqWRE8AhoeWiTTed6lvjCXAXquEb2dA=" + }, + "plasma-disks": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-disks-6.0.3.tar.xz", + "hash": "sha256-+m8c+QhNf+/a2+DJWFd6ynRHsTl+xNQUYa6uRK9qwyg=" + }, + "plasma-firewall": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-firewall-6.0.3.tar.xz", + "hash": "sha256-GKV9L6UF2CrM/zUWxOGiA7CTikgU8ERShoFcGe4rdZo=" + }, + "plasma-integration": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-integration-6.0.3.tar.xz", + "hash": "sha256-W+t3hNEk2eoQjwCAQ6k8g3wHVz9byK/PkhbutGRK/Yo=" + }, + "plasma-mobile": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-mobile-6.0.3.tar.xz", + "hash": "sha256-oHgh272xMZYdoTidGyR2xsdASVTU50mAw9+nUyF5+Xo=" + }, + "plasma-nano": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-nano-6.0.3.tar.xz", + "hash": "sha256-mBjOkE8YME0wsirNcTmAV33mzAvXXqDPtkvtJQ0ASyo=" + }, + "plasma-nm": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-nm-6.0.3.tar.xz", + "hash": "sha256-EFi4WULetceWMvXDLwn3gbcDgd4SOeHOh9/plyhW7T0=" + }, + "plasma-pa": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-pa-6.0.3.tar.xz", + "hash": "sha256-seGYoBVR6HJ1s/m3GLlN8+3zkdzPK6ceqa8HvFLd7ls=" + }, + "plasma-sdk": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-sdk-6.0.3.tar.xz", + "hash": "sha256-SuTUlcd7ZQjvhTXTm3OosUwe4Sl8fbp0DpKLJg/b/Xk=" + }, + "plasma-systemmonitor": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-systemmonitor-6.0.3.tar.xz", + "hash": "sha256-JcMI6Yx4ByoERWIVkythPo+56nHsUgwFANcearC8WEc=" + }, + "plasma-thunderbolt": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-thunderbolt-6.0.3.tar.xz", + "hash": "sha256-xQ/yiDnu6HYm638ZH/VsDJZhdt0Q0/Qqm84oDjMTTWI=" + }, + "plasma-vault": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-vault-6.0.3.tar.xz", + "hash": "sha256-UYQtcK+1ecGvixcb2975hpqY2obi4V3kfw0pTuGqifc=" + }, + "plasma-welcome": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-welcome-6.0.3.tar.xz", + "hash": "sha256-22EjXA90eHBwlbHsmc4TwnD+uBoYHUTrjUMJJRtj1Bw=" + }, + "plasma-workspace": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-workspace-6.0.3.tar.xz", + "hash": "sha256-5D6oADqHUyed9FgOvtF+6jUulpS1TbpFB0BgJaQfacM=" + }, + "plasma-workspace-wallpapers": { + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plasma-workspace-wallpapers-6.0.3.tar.xz", + "hash": "sha256-Zuy9JdtjSutSvgX8PcxKcbHP/e4Sq2RRR65fLsQje9s=" }, "plymouth-kcm": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/plymouth-kcm-6.0.2.tar.xz", - "hash": "sha256-lZUuLTwQoXUyUy9yTnWoU0ZO7BLlThw8TyEoEAtXoTA=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/plymouth-kcm-6.0.3.tar.xz", + "hash": "sha256-IGN0fREb2G15T4PkY1glJCCy0TyDVpElZOqMf6GLRu4=" }, "polkit-kde-agent-1": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/polkit-kde-agent-1-6.0.2.tar.xz", - "hash": "sha256-Pi3sf38vQ0LHz4zcZJcr5XNQmoNWT/wa9+DZG/V0Yr0=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/polkit-kde-agent-1-6.0.3.tar.xz", + "hash": "sha256-PbxfR+7HCSzPH0KVo0n+aa6EzoAL6pCSWglrY43Qy/0=" }, "powerdevil": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/powerdevil-6.0.2.tar.xz", - "hash": "sha256-MYjTyMrd32iVXvyW6eThKS6z0Wfk2lkCmtyZPiFR9Ug=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/powerdevil-6.0.3.tar.xz", + "hash": "sha256-HJuQ4wyyIi4PXNKq8Kj4kIyefsEVGtQNzXz3VA6h7ZI=" }, "print-manager": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/print-manager-6.0.2.tar.xz", - "hash": "sha256-Zs4HOBWDgO7sLCWcwtPyWdU+Kdv/Lf2FPlWgnTrKRv8=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/print-manager-6.0.3.tar.xz", + "hash": "sha256-8qLpHnxDtqsdsLmal8QqSEUjDH9stznLMKSMKCRX5Iw=" }, "qqc2-breeze-style": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/qqc2-breeze-style-6.0.2.tar.xz", - "hash": "sha256-kE5jmK7irTEpHAJ6sJahl8lC60pz7vf03kKCy8prMl0=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/qqc2-breeze-style-6.0.3.tar.xz", + "hash": "sha256-QBhE+H4b5I4V8WevZBqzEaIDdsSKmz7iHHbuJeij29k=" }, "sddm-kcm": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/sddm-kcm-6.0.2.tar.xz", - "hash": "sha256-GjF2qqTtS2uCFON0RuvVtK4LnigjuWQfHvfotnI7JMs=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/sddm-kcm-6.0.3.tar.xz", + "hash": "sha256-+qdeD1r+HikPAMaW+/duSqcRiONRv4RFRwQ+BiYAmG4=" }, "systemsettings": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/systemsettings-6.0.2.tar.xz", - "hash": "sha256-3llQvu9jREmE+mHjh0xgE6T/7r/ObYGc97q3yCQCtgY=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/systemsettings-6.0.3.tar.xz", + "hash": "sha256-HHTYkou9DL1Y8B/V7anbjNMl4X5jt0NsDxnTII9Rxaw=" }, "wacomtablet": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/wacomtablet-6.0.2.tar.xz", - "hash": "sha256-s1Vn6OKtKB1csiJRdBPasKRK/iVbWSZPMHe+e9cUB5k=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/wacomtablet-6.0.3.tar.xz", + "hash": "sha256-wMD7IxTGSq3rE/QUEhrnbMGNJ5YD1S/G2xJZ+7/DOwE=" }, "xdg-desktop-portal-kde": { - "version": "6.0.2", - "url": "mirror://kde/stable/plasma/6.0.2/xdg-desktop-portal-kde-6.0.2.tar.xz", - "hash": "sha256-LX5j/LAr+jV/Ml2QA4dFau4Bk+pBSy7emLGhWbUg52U=" + "version": "6.0.3", + "url": "mirror://kde/stable/plasma/6.0.3/xdg-desktop-portal-kde-6.0.3.tar.xz", + "hash": "sha256-vWWbfhto3tKNgZmr+MX0n8butDLJtqiEPr9MBMwDWqk=" } } \ No newline at end of file From 4d8893dec288bd68d08442a8e066d7ac26a25217 Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 26 Mar 2024 21:19:28 +0300 Subject: [PATCH 40/53] kdePackages.drkonqi: refresh patch --- pkgs/kde/plasma/drkonqi/gdb-path.patch | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/kde/plasma/drkonqi/gdb-path.patch b/pkgs/kde/plasma/drkonqi/gdb-path.patch index a49816d96f7b..617b5ed017a8 100644 --- a/pkgs/kde/plasma/drkonqi/gdb-path.patch +++ b/pkgs/kde/plasma/drkonqi/gdb-path.patch @@ -1,8 +1,8 @@ diff --git a/src/data/debuggers/internal/gdbrc b/src/data/debuggers/internal/gdbrc -index 9a5c8fee..c32b1510 100644 +index 0d163d43..8e2f85f1 100644 --- a/src/data/debuggers/internal/gdbrc +++ b/src/data/debuggers/internal/gdbrc -@@ -72,17 +72,18 @@ Name[wa]=gdb +@@ -73,17 +73,18 @@ Name[wa]=gdb Name[x-test]=xxgdbxx Name[zh_CN]=gdb Name[zh_TW]=gdb @@ -16,7 +16,7 @@ index 9a5c8fee..c32b1510 100644 -ExecWithSymbolResolution=gdb -nw -n -batch --init-eval-command='set debuginfod enabled on' -x %preamblefile -x %tempfile -p %pid %execpath +Exec=@gdb@ -nw -n -batch -x %preamblefile -x %tempfile -p %pid %execpath +ExecWithSymbolResolution=@gdb@ -nw -n -batch --init-eval-command='set debuginfod enabled on' -x %preamblefile -x %tempfile -p %pid %execpath - PreambleCommands=set width 200\nsource %drkonqi_datadir/python/gdb_preamble/preamble.py\npy print_preamble() + PreambleCommands=set width 200\nset backtrace limit 128\nsource %drkonqi_datadir/python/gdb_preamble/preamble.py\npy print_preamble() BatchCommands=thread\nthread apply all bt [coredump-core] @@ -24,5 +24,5 @@ index 9a5c8fee..c32b1510 100644 -ExecWithSymbolResolution=gdb --nw --nx --batch --init-eval-command='set debuginfod enabled on' --command=%preamblefile --command=%tempfile --core=%corefile %execpath +Exec=@gdb@ --nw --nx --batch --command=%preamblefile --command=%tempfile --core=%corefile %execpath +ExecWithSymbolResolution=@gdb@ --nw --nx --batch --init-eval-command='set debuginfod enabled on' --command=%preamblefile --command=%tempfile --core=%corefile %execpath - PreambleCommands=set width 200\nsource %drkonqi_datadir/python/gdb_preamble/preamble.py\npy print_preamble() + PreambleCommands=set width 200\nset backtrace limit 128\nsource %drkonqi_datadir/python/gdb_preamble/preamble.py\npy print_preamble() BatchCommands=thread\nthread apply all bt From c4e0bff9d7cfeb09839071d7bd18b3e25f8f202e Mon Sep 17 00:00:00 2001 From: George Huebner Date: Sun, 17 Mar 2024 21:04:42 -0500 Subject: [PATCH 41/53] python311Packages.fpylll: fix on aarch64-darwin No hardware support for 80-bit floating point (long double) on aarch64-darwin; patch upstreamed --- pkgs/development/libraries/fplll/default.nix | 8 ++++++++ pkgs/development/python-modules/fpylll/default.nix | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/pkgs/development/libraries/fplll/default.nix b/pkgs/development/libraries/fplll/default.nix index ab74a09d0795..5e2268199496 100644 --- a/pkgs/development/libraries/fplll/default.nix +++ b/pkgs/development/libraries/fplll/default.nix @@ -1,5 +1,6 @@ { lib, stdenv , fetchFromGitHub +, fetchpatch , pkg-config , gettext , autoreconfHook @@ -18,6 +19,13 @@ stdenv.mkDerivation rec { sha256 = "sha256-taSS7jpVyjVfNe6kSuUDXMD2PgKmtG64V5MjZyQzorI="; }; + patches = [ + (fetchpatch { + url = "https://github.com/fplll/fplll/commit/317cf70893eebfb2625da12e5377189908c36240.diff"; + sha256 = "sha256-GbYSolBgv/he4QzjuRFdg93wHJABVHvA9x3PjpJTSRE="; + }) + ]; + nativeBuildInputs = [ pkg-config gettext diff --git a/pkgs/development/python-modules/fpylll/default.nix b/pkgs/development/python-modules/fpylll/default.nix index 54d3d8f34f79..97885a443ff0 100644 --- a/pkgs/development/python-modules/fpylll/default.nix +++ b/pkgs/development/python-modules/fpylll/default.nix @@ -36,6 +36,10 @@ buildPythonPackage rec { url = "https://github.com/fplll/fpylll/commit/fc432b21fa7e4b9891f5b761b3539989eb958f2b.diff"; hash = "sha256-+UidQ5xnlmjeVeVvR4J2zDzAuXP5LUPXCh4RP4o9oGA="; }) + (fetchpatch { + url = "https://github.com/fplll/fpylll/commit/cece9c9b182dc3ac2c9121549cb427ccf4c4a9fe.diff"; + hash = "sha256-epJb8gorQ7gEEylZ2yZFdM9+EZ4ys9mUUUPiJ2D0VOM="; + }) ]; nativeBuildInputs = [ From 8c860b090ac662854bec0135d3549a852448902e Mon Sep 17 00:00:00 2001 From: George Huebner Date: Sun, 17 Mar 2024 21:23:37 -0500 Subject: [PATCH 42/53] linbox: fix clang build Can be safely reverted after updating to 1.7.1 or beyond --- pkgs/development/libraries/linbox/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/development/libraries/linbox/default.nix b/pkgs/development/libraries/linbox/default.nix index 0997513f5a51..4d0158dbcbe3 100644 --- a/pkgs/development/libraries/linbox/default.nix +++ b/pkgs/development/libraries/linbox/default.nix @@ -1,5 +1,6 @@ { lib, stdenv , fetchFromGitHub +, fetchpatch , autoreconfHook , givaro , pkg-config @@ -23,6 +24,13 @@ stdenv.mkDerivation rec { sha256 = "sha256-mW84a98KPLqcHMjX3LIYTmVe0ngUdz6RJLpoDaAqKU8="; }; + patches = [ + (fetchpatch { + url = "https://github.com/linbox-team/linbox/commit/4be26e9ef0eaf36a9909e5008940e8bf7dc625b6.patch"; + sha256 = "PX0Tik7blXOV2vHUq92xMxaADkNoNGiax4qrjQyGK6U="; + }) + ]; + nativeBuildInputs = [ autoreconfHook pkg-config From 56ceb0cc7d7fb242736b3f1bbf15917046dca9c6 Mon Sep 17 00:00:00 2001 From: George Huebner Date: Sat, 23 Mar 2024 20:03:44 -0500 Subject: [PATCH 43/53] singular: bump texinfo from 4 to 7 texinfo4 fails to compile on aarch64-darwin, and singular is no longer constrained to use an older version --- pkgs/applications/science/math/singular/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/science/math/singular/default.nix b/pkgs/applications/science/math/singular/default.nix index a6c64066d88e..d079134aec76 100644 --- a/pkgs/applications/science/math/singular/default.nix +++ b/pkgs/applications/science/math/singular/default.nix @@ -13,12 +13,9 @@ , doxygen , graphviz , latex2html -# upstream generates docs with texinfo 4. later versions of texinfo -# use letters instead of numbers for post-appendix chapters, and we -# want it to match the upstream format because sage depends on it. -, texinfo4 +, texinfo , texliveSmall -, enableDocs ? true +, enableDocs ? !stdenv.isDarwin , enableGfanlib ? true }: @@ -85,7 +82,7 @@ stdenv.mkDerivation rec { doxygen graphviz latex2html - texinfo4 + texinfo texliveSmall ] ++ lib.optionals stdenv.isDarwin [ getconf ]; depsBuildBuild = [ buildPackages.stdenv.cc ]; From e7f6ab70bf066810ba780ae5ad92334dfac72f3c Mon Sep 17 00:00:00 2001 From: George Huebner Date: Sat, 23 Mar 2024 19:14:05 -0500 Subject: [PATCH 44/53] flint3: fix NTL test --- pkgs/development/libraries/flint/3.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/development/libraries/flint/3.nix b/pkgs/development/libraries/flint/3.nix index b8b8c2d8ec7d..60321984d316 100644 --- a/pkgs/development/libraries/flint/3.nix +++ b/pkgs/development/libraries/flint/3.nix @@ -1,5 +1,6 @@ { lib , stdenv +, fetchpatch , fetchurl , gmp , mpfr @@ -24,6 +25,13 @@ stdenv.mkDerivation rec { sha256 = "sha256-ezEaAFA6hjiB64F32+uEMi8pOZ89fXLzsaTJuh1XlLQ="; }; + patches = [ + (fetchpatch { + url = "https://github.com/flintlib/flint/commit/e7d005c369754243cba32bd782ea2a5fc874fde5.diff"; + hash = "sha256-IqEtYEpNVXfoTeerh/0ig+eDqUpAlGdBB3uO8ShYh3o="; + }) + ]; + nativeBuildInputs = [ autoconf automake From dbb6796cd4a8e6df5d9da30853e920fe0528ae9a Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 26 Mar 2024 07:50:40 +0100 Subject: [PATCH 45/53] tetrio-desktop: move to `pkgs/by-name` --- .../te/tetrio-desktop/package.nix} | 54 +++++++++---------- pkgs/games/tetrio-desktop/tetrio-plus.nix | 27 ---------- pkgs/top-level/all-packages.nix | 2 - 3 files changed, 25 insertions(+), 58 deletions(-) rename pkgs/{games/tetrio-desktop/default.nix => by-name/te/tetrio-desktop/package.nix} (54%) delete mode 100644 pkgs/games/tetrio-desktop/tetrio-plus.nix diff --git a/pkgs/games/tetrio-desktop/default.nix b/pkgs/by-name/te/tetrio-desktop/package.nix similarity index 54% rename from pkgs/games/tetrio-desktop/default.nix rename to pkgs/by-name/te/tetrio-desktop/package.nix index 97d73cddbb07..d7fed29e7dae 100644 --- a/pkgs/games/tetrio-desktop/default.nix +++ b/pkgs/by-name/te/tetrio-desktop/package.nix @@ -15,19 +15,27 @@ , gtk3 , libpulseaudio , systemd -, callPackage -, withTetrioPlus ? false -, tetrio-plus ? callPackage ./tetrio-plus.nix { } +, withTetrioPlus ? false # For backwards compatibility. At the time of writing, the latest released tetrio plus version is not compatible with tetrio desktop. +, tetrio-plus ? false # For backwards compatibility. At the time of writing, the latest released tetrio plus version is not compatible with tetrio desktop. }: -stdenv.mkDerivation rec { +lib.warnIf (withTetrioPlus != false) "withTetrioPlus: Currently unsupported with tetrio-desktop 9.0.0. Please remove this attribute." +lib.warnIf (tetrio-plus != false) "tetrio-plus: Currently unsupported with tetrio-desktop 9.0.0. Please remove this attribute." + +(let + libPath = lib.makeLibraryPath [ + libGL + libpulseaudio + systemd + ]; +in +stdenv.mkDerivation (finalAttrs: { pname = "tetrio-desktop"; version = "9.0.0"; src = fetchurl { - url = "https://web.archive.org/web/20240309215118if_/https://tetr.io/about/desktop/builds/9/TETR.IO%20Setup.deb"; - name = "tetrio-desktop.deb"; - sha256 = "UriLwMB8D+/T32H4rPbkJAy/F/FFhNpd++0AR1lwEfs="; + url = "https://tetr.io/about/desktop/builds/${lib.versions.major finalAttrs.version}/TETR.IO%20Setup.deb"; + hash = "sha256-UriLwMB8D+/T32H4rPbkJAy/F/FFhNpd++0AR1lwEfs="; }; nativeBuildInputs = [ @@ -49,50 +57,38 @@ stdenv.mkDerivation rec { gtk3 ]; - libPath = lib.makeLibraryPath [ - libGL - libpulseaudio - systemd - ]; - unpackCmd = "dpkg -x $curSrc src"; installPhase = '' runHook preInstall - mkdir $out + mkdir -p $out/bin cp -r opt/ usr/share/ $out - - mkdir $out/bin - ln -s $out/opt/TETR.IO/TETR.IO $out/bin/ + ln -s $out/opt/TETR.IO/TETR.IO $out/bin/tetrio substituteInPlace $out/share/applications/TETR.IO.desktop \ - --replace-fail "Exec=/opt/TETR.IO/TETR.IO" "Exec=\"$out/opt/TETR.IO/TETR.IO\"" + --replace-fail "Exec=/opt/TETR.IO/TETR.IO" "Exec=$out/bin/tetrio" runHook postInstall ''; - postInstall = lib.strings.optionalString withTetrioPlus '' - cp ${tetrio-plus} $out/opt/TETR.IO/resources/app.asar - ''; - postFixup = '' wrapProgram $out/opt/TETR.IO/TETR.IO \ --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/TETR.IO \ ''${gappsWrapperArgs[@]} ''; - meta = with lib; { - homepage = "https://tetr.io"; - downloadPage = "https://tetr.io/about/desktop/"; + meta = { description = "TETR.IO desktop client"; + downloadPage = "https://tetr.io/about/desktop/"; + homepage = "https://tetr.io"; + license = lib.licenses.unfree; longDescription = '' TETR.IO is a modern yet familiar online stacker. Play against friends and foes all over the world, or claim a spot on the leaderboards - the stacker future is yours! ''; + mainProgram = "tetrio"; + maintainers = with lib.maintainers; [ wackbyte ]; platforms = [ "x86_64-linux" ]; - license = licenses.unfree; - maintainers = with maintainers; [ wackbyte ]; - mainProgram = "TETR.IO"; }; -} +})) diff --git a/pkgs/games/tetrio-desktop/tetrio-plus.nix b/pkgs/games/tetrio-desktop/tetrio-plus.nix deleted file mode 100644 index 64f5dd5d85cc..000000000000 --- a/pkgs/games/tetrio-desktop/tetrio-plus.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ lib, stdenv, fetchzip }: - -stdenv.mkDerivation rec { - pname = "tetrio-plus"; - version = "0.25.3"; - - src = fetchzip { - url = "https://gitlab.com/UniQMG/tetrio-plus/uploads/684477053451cd0819e2c84e145966eb/tetrio-plus_0.25.3_app.asar.zip"; - sha256 = "sha256-GQgt4GZNeKx/uzmVsuKppW2zg8AAiGqsk2JYJIkqfVE="; - }; - - installPhase = '' - runHook preInstall - - install app.asar $out - - runHook postInstall - ''; - - meta = with lib; { - description = "TETR.IO customization toolkit"; - homepage = "https://gitlab.com/UniQMG/tetrio-plus"; - license = licenses.mit; - maintainers = with maintainers; [ huantian ]; - platforms = [ "x86_64-linux" ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 551c258ef4ae..0ee161dcca62 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -37577,8 +37577,6 @@ with pkgs; portmod = callPackage ../games/portmod { }; - tetrio-desktop = callPackage ../games/tetrio-desktop { }; - tr-patcher = callPackage ../games/tr-patcher { }; tes3cmd = callPackage ../games/tes3cmd { }; From 60a6ba968da5145e5476b854c2941b347457490f Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 26 Mar 2024 20:45:10 +0100 Subject: [PATCH 46/53] attic-client: remove `env` attribute Related to https://github.com/NixOS/nixpkgs/pull/292043 --- pkgs/by-name/at/attic-client/package.nix | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pkgs/by-name/at/attic-client/package.nix b/pkgs/by-name/at/attic-client/package.nix index 0a08628624cc..e369f4e8dd6a 100644 --- a/pkgs/by-name/at/attic-client/package.nix +++ b/pkgs/by-name/at/attic-client/package.nix @@ -42,11 +42,6 @@ rustPlatform.buildRustPackage { ATTIC_DISTRIBUTOR = "attic"; - # Workaround for https://github.com/NixOS/nixpkgs/issues/166205 - env = lib.optionalAttrs stdenv.cc.isClang { - NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}"; - }; - # Attic interacts with Nix directly and its tests require trusted-user access # to nix-daemon to import NARs, which is not possible in the build sandbox. doCheck = false; @@ -69,4 +64,3 @@ rustPlatform.buildRustPackage { mainProgram = "attic"; }; } - From f7ea336cb2bd403bb0bc8ce9ce48479a1427de18 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Fri, 22 Mar 2024 02:20:08 +0100 Subject: [PATCH 47/53] workflows/check-by-name.yml: Switch to new separate repo The nixpkgs-check-by-name tooling is [being moved](https://github.com/NixOS/nixpkgs/issues/286559#issuecomment-2000466124) to a [separate repo](https://github.com/NixOS/nixpkgs-check-by-name). This commit updates Nixpkgs CI to use it instead of the tree inside Nixpkgs No changes have been made to the tooling locally since it was moved: - [Exported history](https://github.com/NixOS/nixpkgs/commits/55bf02190ee57fcf83490fd7b6bf7834e28c9c86/pkgs/test/nixpkgs-check-by-name) - [Imported history](https://github.com/NixOS/nixpkgs-check-by-name/commits/d579e1821d56c79fd90dab34b991cc7bdab7a5c6/) --- .github/workflows/check-by-name.yml | 20 +++++----- maintainers/scripts/README.md | 2 +- maintainers/scripts/check-by-name.sh | 2 +- nixos/release-combined.nix | 5 --- pkgs/by-name/README.md | 6 +-- .../scripts => check-by-name}/README.md | 17 +++----- pkgs/test/check-by-name/pinned-version.txt | 1 + .../scripts => check-by-name}/run-local.sh | 19 +++------ pkgs/test/check-by-name/update-pinned-tool.sh | 22 ++++++++++ .../scripts/update-pinned-tool.sh | 40 ------------------- 10 files changed, 48 insertions(+), 86 deletions(-) rename pkgs/test/{nixpkgs-check-by-name/scripts => check-by-name}/README.md (60%) create mode 100644 pkgs/test/check-by-name/pinned-version.txt rename pkgs/test/{nixpkgs-check-by-name/scripts => check-by-name}/run-local.sh (73%) create mode 100755 pkgs/test/check-by-name/update-pinned-tool.sh delete mode 100755 pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh diff --git a/.github/workflows/check-by-name.yml b/.github/workflows/check-by-name.yml index bf6acf3701da..bdc223e3d32c 100644 --- a/.github/workflows/check-by-name.yml +++ b/.github/workflows/check-by-name.yml @@ -1,11 +1,9 @@ # Checks pkgs/by-name (see pkgs/by-name/README.md) -# using the nixpkgs-check-by-name tool (see pkgs/test/nixpkgs-check-by-name) +# using the nixpkgs-check-by-name tool (see https://github.com/NixOS/nixpkgs-check-by-name) # -# When you make changes to this workflow, also update pkgs/test/nixpkgs-check-by-name/scripts/run-local.sh adequately +# When you make changes to this workflow, also update pkgs/test/check-by-name/run-local.sh adequately name: Check pkgs/by-name -# The tool is pinned to a pre-built version on Hydra, -# see pkgs/test/nixpkgs-check-by-name/scripts/README.md on: # Using pull_request_target instead of pull_request avoids having to approve first time contributors pull_request_target: @@ -24,8 +22,7 @@ permissions: jobs: check: - # This is x86_64-linux, for which the tool is always prebuilt on the nixos-* channels, - # as specified in nixos/release-combined.nix + # This needs to be x86_64-linux, because we depend on the tooling being pre-built in the GitHub releases runs-on: ubuntu-latest # This should take 1 minute at most, but let's be generous. # The default of 6 hours is definitely too long @@ -100,11 +97,14 @@ jobs: echo "base=$base" >> "$GITHUB_ENV" - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26 - name: Fetching the pinned tool - # Update the pinned version using pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh + # Update the pinned version using pkgs/test/check-by-name/update-pinned-tool.sh run: | - # Get the direct /nix/store path from the pin to avoid having to evaluate Nixpkgs - toolPath=$(jq -r '."ci-path"' pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json) - # This asks the substituter for the path, which should be there because Hydra will have pre-built and pushed it + # The pinned version of the tooling to use + toolVersion=$(&2 "$@"; } + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +repository=NixOS/nixpkgs-check-by-name +pin_file=$SCRIPT_DIR/pinned-version.txt + +trace -n "Fetching latest release of $repository.. " +latestRelease=$(curl -sSfL \ + -H "Accept: application/vnd.github+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/"$repository"/releases/latest) +latestVersion=$(jq .tag_name -r <<< "$latestRelease") +trace "$latestVersion" + +trace "Updating $pin_file" +echo "$latestVersion" > "$pin_file" diff --git a/pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh b/pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh deleted file mode 100755 index dbc6e91df08a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p jq - -set -o pipefail -o errexit -o nounset - -trace() { echo >&2 "$@"; } - -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) - -# Determined by `runs-on: ubuntu-latest` in .github/workflows/check-by-name.yml -CI_SYSTEM=x86_64-linux - -channel=nixos-unstable -pin_file=$SCRIPT_DIR/pinned-tool.json - -trace -n "Fetching latest version of channel $channel.. " -# This is probably the easiest way to get Nix to output the path to a downloaded channel! -nixpkgs=$(nix-instantiate --find-file nixpkgs -I nixpkgs=channel:"$channel") -trace "$nixpkgs" - -# This file only exists in channels -rev=$(<"$nixpkgs/.git-revision") -trace -e "Git revision of channel $channel is \e[34m$rev\e[0m" - -trace -n "Fetching the prebuilt version of nixpkgs-check-by-name for $CI_SYSTEM.. " -# This is the architecture used by CI, we want to prefetch the exact path to avoid having to evaluate Nixpkgs -ci_path=$(nix-build --no-out-link "$nixpkgs" \ - -A tests.nixpkgs-check-by-name \ - --arg config '{}' \ - --argstr system "$CI_SYSTEM" \ - --arg overlays '[]' \ - -j 0 \ - | tee /dev/stderr) - -trace "Updating $pin_file" -jq -n \ - --arg rev "$rev" \ - --arg ci-path "$ci_path" \ - '$ARGS.named' \ - > "$pin_file" From b42fbdd7ea72e95fad3e7595b68b440b6f4665a7 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Tue, 26 Mar 2024 21:36:43 +0100 Subject: [PATCH 48/53] check-by-name: Remove now-unnecessary scripts/pinned-tool.json It was not removed in https://github.com/NixOS/nixpkgs/pull/297901 so that CI for that PR itself would not fail since CI runs from the base branch. --- pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json diff --git a/pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json b/pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json deleted file mode 100644 index 350e71bffc79..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/scripts/pinned-tool.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "rev": "b8697e57f10292a6165a20f03d2f42920dfaf973", - "ci-path": "/nix/store/w6w7khwfq6qzm4bsyijhg7m2kqv9f9jl-nixpkgs-check-by-name" -} From 56837f26e277c3beb8f23afad551d6297badc438 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Tue, 26 Mar 2024 21:37:07 +0100 Subject: [PATCH 49/53] tests.nixpkgs-check-by-name: Remove now that a separate repo is used Since https://github.com/NixOS/nixpkgs/pull/297901, the tool is fetched from https://github.com/NixOS/nixpkgs-check-by-name, so there's no need to keep it around in Nixpkgs anymore --- pkgs/test/default.nix | 2 +- pkgs/test/nixpkgs-check-by-name/.envrc | 1 - pkgs/test/nixpkgs-check-by-name/.gitignore | 2 - pkgs/test/nixpkgs-check-by-name/Cargo.lock | 643 ------------------ pkgs/test/nixpkgs-check-by-name/Cargo.toml | 23 - pkgs/test/nixpkgs-check-by-name/README.md | 102 --- pkgs/test/nixpkgs-check-by-name/default.nix | 82 --- pkgs/test/nixpkgs-check-by-name/shell.nix | 6 - pkgs/test/nixpkgs-check-by-name/src/eval.nix | 116 ---- pkgs/test/nixpkgs-check-by-name/src/eval.rs | 559 --------------- pkgs/test/nixpkgs-check-by-name/src/main.rs | 293 -------- .../nixpkgs-check-by-name/src/nix_file.rs | 555 --------------- .../src/nixpkgs_problem.rs | 425 ------------ .../test/nixpkgs-check-by-name/src/ratchet.rs | 184 ----- .../nixpkgs-check-by-name/src/references.rs | 176 ----- .../nixpkgs-check-by-name/src/structure.rs | 184 ----- pkgs/test/nixpkgs-check-by-name/src/utils.rs | 95 --- .../nixpkgs-check-by-name/src/validation.rs | 111 --- .../tests/aliases/aliases.nix | 3 - .../tests/aliases/all-packages.nix | 3 - .../tests/aliases/default.nix | 1 - .../tests/aliases/expected | 1 - .../aliases/pkgs/by-name/fo/foo/package.nix | 1 - .../tests/alt-callPackage/all-packages.nix | 7 - .../tests/alt-callPackage/default.nix | 1 - .../tests/alt-callPackage/expected | 9 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/base-fixed/base/default.nix | 1 - .../tests/base-fixed/base/pkgs/by-name/foo | 0 .../tests/base-fixed/default.nix | 1 - .../tests/base-fixed/expected | 1 - .../tests/base-fixed/pkgs/by-name/README.md | 0 .../tests/base-still-broken/base/default.nix | 1 - .../base-still-broken/base/pkgs/by-name/foo | 0 .../tests/base-still-broken/default.nix | 1 - .../tests/base-still-broken/expected | 3 - .../tests/base-still-broken/pkgs/by-name/bar | 0 .../tests/broken-autocall/default.nix | 4 - .../tests/broken-autocall/expected | 2 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/callPackage-syntax/all-packages.nix | 7 - .../tests/callPackage-syntax/default.nix | 1 - .../tests/callPackage-syntax/expected | 1 - .../callPackage-syntax/pkgs/by-name/README.md | 0 .../tests/empty-base/default.nix | 1 - .../tests/empty-base/expected | 1 - .../tests/empty-base/pkgs/by-name/README.md | 0 .../tests/incorrect-shard/default.nix | 1 - .../tests/incorrect-shard/expected | 2 - .../pkgs/by-name/aa/FOO/package.nix | 1 - .../internalCallPackage/all-packages.nix | 4 - .../tests/internalCallPackage/default.nix | 1 - .../tests/internalCallPackage/expected | 2 - .../tests/internalCallPackage/foo.nix | 1 - .../pkgs/by-name/README.md | 0 .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/invalid-package-name/default.nix | 1 - .../tests/invalid-package-name/expected | 2 - .../pkgs/by-name/fo/fo@/package.nix | 1 - .../tests/invalid-shard-name/default.nix | 1 - .../tests/invalid-shard-name/expected | 2 - .../pkgs/by-name/A/A/.git-keep | 0 .../pkgs/by-name/A/A/package.nix | 1 - .../tests/manual-definition/all-packages.nix | 10 - .../manual-definition/base/all-packages.nix | 9 - .../tests/manual-definition/base/default.nix | 1 - .../base/pkgs/by-name/README.md | 0 .../tests/manual-definition/base/some-pkg.nix | 1 - .../tests/manual-definition/default.nix | 1 - .../tests/manual-definition/expected | 21 - .../pkgs/by-name/no/noEval/package.nix | 1 - .../pkgs/by-name/on/onlyMove/package.nix | 1 - .../tests/missing-package-nix/default.nix | 1 - .../tests/missing-package-nix/expected | 2 - .../pkgs/by-name/fo/foo/.git-keep | 0 .../tests/mock-nixpkgs.nix | 110 --- .../move-to-non-by-name/all-packages.nix | 10 - .../move-to-non-by-name/base/default.nix | 1 - .../base/pkgs/by-name/fo/foo1/package.nix | 1 - .../base/pkgs/by-name/fo/foo2/package.nix | 1 - .../base/pkgs/by-name/fo/foo3/package.nix | 1 - .../base/pkgs/by-name/fo/foo4/package.nix | 1 - .../tests/move-to-non-by-name/default.nix | 1 - .../tests/move-to-non-by-name/expected | 13 - .../pkgs/by-name/README.md | 0 .../tests/move-to-non-by-name/with-config.nix | 1 - .../move-to-non-by-name/without-config.nix | 1 - .../tests/multiple-failures/default.nix | 1 - .../tests/multiple-failures/expected | 14 - .../multiple-failures/pkgs/by-name/A/fo@/foo | 1 - .../pkgs/by-name/A/fo@/package.nix | 1 - .../tests/multiple-failures/pkgs/by-name/aa | 0 .../multiple-failures/pkgs/by-name/ba/bar | 0 .../by-name/ba/baz/package.nix/default.nix | 1 - .../pkgs/by-name/ba/foo/package.nix | 6 - .../pkgs/by-name/fo/foo/.git-keep | 0 .../tests/multiple-failures/someDrv.nix | 1 - .../new-package-non-by-name/all-packages.nix | 11 - .../base/all-packages.nix | 5 - .../new-package-non-by-name/base/default.nix | 1 - .../base/pkgs/by-name/README.md | 0 .../tests/new-package-non-by-name/default.nix | 1 - .../tests/new-package-non-by-name/expected | 21 - .../pkgs/by-name/README.md | 0 .../new-package-non-by-name/with-config.nix | 1 - .../without-config.nix | 1 - .../tests/no-by-name/default.nix | 1 - .../tests/no-by-name/expected | 1 - .../tests/no-eval/all-packages.nix | 5 - .../tests/no-eval/base/all-packages.nix | 3 - .../tests/no-eval/base/default.nix | 1 - .../tests/no-eval/base/pkgs/by-name/README.md | 0 .../tests/no-eval/default.nix | 1 - .../tests/no-eval/expected | 1 - .../tests/no-eval/pkgs/by-name/README.md | 0 .../tests/non-attrs/default.nix | 1 - .../tests/non-attrs/expected | 2 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../tests/non-derivation/default.nix | 1 - .../tests/non-derivation/expected | 2 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../all-packages.nix | 6 - .../default.nix | 1 - .../expected | 9 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/one-letter/default.nix | 1 - .../tests/one-letter/expected | 1 - .../one-letter/pkgs/by-name/a/a/package.nix | 1 - .../all-packages.nix | 16 - .../only-callPackage-derivations/default.nix | 1 - .../only-callPackage-derivations/expected | 1 - .../pkgs/by-name/README.md | 0 .../override-different-file/all-packages.nix | 3 - .../tests/override-different-file/default.nix | 1 - .../tests/override-different-file/expected | 9 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../tests/override-different-file/someDrv.nix | 1 - .../all-packages.nix | 3 - .../base/all-packages.nix | 3 - .../base/default.nix | 1 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../override-empty-arg-gradual/default.nix | 1 - .../tests/override-empty-arg-gradual/expected | 1 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../tests/override-empty-arg/all-packages.nix | 3 - .../tests/override-empty-arg/base/default.nix | 1 - .../base/pkgs/by-name/README.md | 0 .../tests/override-empty-arg/default.nix | 1 - .../tests/override-empty-arg/expected | 11 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../override-no-call-package/all-packages.nix | 3 - .../override-no-call-package/default.nix | 1 - .../tests/override-no-call-package/expected | 9 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../tests/override-no-file/all-packages.nix | 3 - .../tests/override-no-file/default.nix | 1 - .../tests/override-no-file/expected | 9 - .../pkgs/by-name/no/nonDerivation/package.nix | 1 - .../tests/override-non-path/all-packages.nix | 5 - .../tests/override-non-path/default.nix | 1 - .../tests/override-non-path/expected | 9 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/override-success/all-packages.nix | 5 - .../tests/override-success/default.nix | 1 - .../tests/override-success/expected | 1 - .../pkgs/by-name/fo/foo/package.nix | 8 - .../tests/package-dir-is-file/default.nix | 1 - .../tests/package-dir-is-file/expected | 2 - .../package-dir-is-file/pkgs/by-name/fo/foo | 0 .../tests/package-nix-dir/default.nix | 1 - .../tests/package-nix-dir/expected | 2 - .../by-name/fo/foo/package.nix/default.nix | 1 - .../tests/package-variants/all-packages.nix | 5 - .../package-variants/base/all-packages.nix | 3 - .../tests/package-variants/base/default.nix | 1 - .../base/pkgs/by-name/fo/foo/package.nix | 1 - .../tests/package-variants/default.nix | 1 - .../tests/package-variants/expected | 1 - .../tests/package-variants/package.nix | 1 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/ref-absolute/default.nix | 1 - .../tests/ref-absolute/expected | 2 - .../pkgs/by-name/aa/aa/package.nix | 3 - .../tests/ref-escape/default.nix | 1 - .../tests/ref-escape/expected | 2 - .../ref-escape/pkgs/by-name/aa/aa/package.nix | 3 - .../tests/ref-nix-path/default.nix | 1 - .../tests/ref-nix-path/expected | 2 - .../pkgs/by-name/aa/aa/package.nix | 3 - .../tests/ref-path-subexpr/default.nix | 1 - .../tests/ref-path-subexpr/expected | 2 - .../pkgs/by-name/aa/aa/package.nix | 3 - .../tests/ref-success/default.nix | 1 - .../tests/ref-success/expected | 1 - .../pkgs/by-name/aa/aa/dir/default.nix | 2 - .../tests/ref-success/pkgs/by-name/aa/aa/file | 0 .../ref-success/pkgs/by-name/aa/aa/file.nix | 2 - .../pkgs/by-name/aa/aa/package.nix | 5 - .../tests/shard-file/default.nix | 1 - .../tests/shard-file/expected | 2 - .../tests/shard-file/pkgs/by-name/fo | 0 .../tests/sorted-order/all-packages.nix | 6 - .../tests/sorted-order/default.nix | 1 - .../tests/sorted-order/expected | 31 - .../sorted-order/pkgs/by-name/a/a/package.nix | 1 - .../sorted-order/pkgs/by-name/c/c/package.nix | 1 - .../tests/success/default.nix | 1 - .../tests/success/expected | 1 - .../success/pkgs/by-name/fo/foo/package.nix | 1 - .../tests/symlink-escape/default.nix | 1 - .../tests/symlink-escape/expected | 2 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/symlink-escape/someDrv.nix | 1 - .../tests/symlink-invalid/default.nix | 1 - .../tests/symlink-invalid/expected | 2 - .../symlink-invalid/pkgs/by-name/fo/foo/foo | 1 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/symlink-invalid/someDrv.nix | 1 - .../tests/unknown-location/all-packages.nix | 3 - .../tests/unknown-location/default.nix | 1 - .../tests/unknown-location/expected | 2 - .../pkgs/by-name/fo/foo/package.nix | 1 - .../tests/uppercase/default.nix | 1 - .../tests/uppercase/expected | 1 - .../uppercase/pkgs/by-name/fo/FOO/package.nix | 1 - .../tests/with-readme/default.nix | 1 - .../tests/with-readme/expected | 1 - .../tests/with-readme/pkgs/by-name/README.md | 0 228 files changed, 1 insertion(+), 4173 deletions(-) delete mode 100644 pkgs/test/nixpkgs-check-by-name/.envrc delete mode 100644 pkgs/test/nixpkgs-check-by-name/.gitignore delete mode 100644 pkgs/test/nixpkgs-check-by-name/Cargo.lock delete mode 100644 pkgs/test/nixpkgs-check-by-name/Cargo.toml delete mode 100644 pkgs/test/nixpkgs-check-by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/shell.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/eval.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/eval.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/main.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/nix_file.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/ratchet.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/references.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/structure.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/utils.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/src/validation.rs delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/aliases/aliases.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/aliases/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/aliases/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/aliases/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/aliases/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/pkgs/by-name/foo delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-fixed/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-fixed/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-fixed/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/pkgs/by-name/foo delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/pkgs/by-name/bar delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/empty-base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/empty-base/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/empty-base/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/pkgs/by-name/aa/FOO/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/foo.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/pkgs/by-name/fo/fo@/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/.git-keep delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/some-pkg.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/no/noEval/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/on/onlyMove/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/pkgs/by-name/fo/foo/.git-keep delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo1/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo2/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo3/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo4/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/with-config.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/without-config.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/expected delete mode 120000 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/foo delete mode 120000 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/aa delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/bar delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/baz/package.nix/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/fo/foo/.git-keep delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/someDrv.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/with-config.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/without-config.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-by-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-by-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/no-eval/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-attrs/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-attrs/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-attrs/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-derivation/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-derivation/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-derivation/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/one-letter/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/one-letter/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/one-letter/pkgs/by-name/a/a/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-different-file/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-different-file/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-different-file/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-different-file/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-different-file/someDrv.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/pkgs/by-name/README.md delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-file/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-file/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-file/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-no-file/pkgs/by-name/no/nonDerivation/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-non-path/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-non-path/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-non-path/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-non-path/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-success/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-success/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-success/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/override-success/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/pkgs/by-name/fo/foo delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/pkgs/by-name/fo/foo/package.nix/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/package-variants/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/pkgs/by-name/aa/aa/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-escape/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-escape/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-escape/pkgs/by-name/aa/aa/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/pkgs/by-name/aa/aa/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/pkgs/by-name/aa/aa/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/dir/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/shard-file/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/shard-file/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/shard-file/pkgs/by-name/fo delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/sorted-order/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/sorted-order/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/sorted-order/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/a/a/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/c/c/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/success/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/success/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/success/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/expected delete mode 120000 pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/someDrv.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/expected delete mode 120000 pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/foo delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/someDrv.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/uppercase/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/uppercase/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/uppercase/pkgs/by-name/fo/FOO/package.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/with-readme/default.nix delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/with-readme/expected delete mode 100644 pkgs/test/nixpkgs-check-by-name/tests/with-readme/pkgs/by-name/README.md diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix index 3fcc9d047db9..97b735676aca 100644 --- a/pkgs/test/default.nix +++ b/pkgs/test/default.nix @@ -173,7 +173,7 @@ with pkgs; buildFHSEnv = recurseIntoAttrs (callPackages ./buildFHSEnv { }); - nixpkgs-check-by-name = callPackage ./nixpkgs-check-by-name { }; + nixpkgs-check-by-name = throw "tests.nixpkgs-check-by-name is now specified in a separate repository: https://github.com/NixOS/nixpkgs-check-by-name"; auto-patchelf-hook = callPackage ./auto-patchelf-hook { }; diff --git a/pkgs/test/nixpkgs-check-by-name/.envrc b/pkgs/test/nixpkgs-check-by-name/.envrc deleted file mode 100644 index 1d953f4bd735..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/.envrc +++ /dev/null @@ -1 +0,0 @@ -use nix diff --git a/pkgs/test/nixpkgs-check-by-name/.gitignore b/pkgs/test/nixpkgs-check-by-name/.gitignore deleted file mode 100644 index 75e92a908987..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -target -.direnv diff --git a/pkgs/test/nixpkgs-check-by-name/Cargo.lock b/pkgs/test/nixpkgs-check-by-name/Cargo.lock deleted file mode 100644 index 19435c2ab76e..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/Cargo.lock +++ /dev/null @@ -1,643 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "aho-corasick" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6748e8def348ed4d14996fa801f4122cd763fff530258cdc03f64b25f89d3a5a" -dependencies = [ - "memchr", -] - -[[package]] -name = "anstream" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" -dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "utf8parse", -] - -[[package]] -name = "anstyle" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" - -[[package]] -name = "anstyle-parse" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" -dependencies = [ - "utf8parse", -] - -[[package]] -name = "anstyle-query" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" -dependencies = [ - "windows-sys", -] - -[[package]] -name = "anstyle-wincon" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" -dependencies = [ - "anstyle", - "windows-sys", -] - -[[package]] -name = "anyhow" -version = "1.0.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" - -[[package]] -name = "cc" -version = "1.0.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "libc", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "clap" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d5f1946157a96594eb2d2c10eb7ad9a2b27518cb3000209dec700c35df9197d" -dependencies = [ - "clap_builder", - "clap_derive", - "once_cell", -] - -[[package]] -name = "clap_builder" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78116e32a042dd73c2901f0dc30790d20ff3447f3e3472fad359e8c3d282bcd6" -dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim", -] - -[[package]] -name = "clap_derive" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fd1a5729c4548118d7d70ff234a44868d00489a4b6597b0b020918a0e91a1a" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "clap_lex" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" - -[[package]] -name = "colorchoice" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" - -[[package]] -name = "colored" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6" -dependencies = [ - "is-terminal", - "lazy_static", - "windows-sys", -] - -[[package]] -name = "countme" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7704b5fdd17b18ae31c4c1da5a2e0305a2bf17b5249300a9ee9ed7b72114c636" - -[[package]] -name = "either" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" - -[[package]] -name = "errno" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" -dependencies = [ - "errno-dragonfly", - "libc", - "windows-sys", -] - -[[package]] -name = "errno-dragonfly" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" -dependencies = [ - "cc", - "libc", -] - -[[package]] -name = "fastrand" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "hermit-abi" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" - -[[package]] -name = "indoc" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8" - -[[package]] -name = "is-terminal" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" -dependencies = [ - "hermit-abi", - "rustix", - "windows-sys", -] - -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "libc" -version = "0.2.147" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" - -[[package]] -name = "linux-raw-sys" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" - -[[package]] -name = "lock_api" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" -dependencies = [ - "autocfg", - "scopeguard", -] - -[[package]] -name = "memchr" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" - -[[package]] -name = "memoffset" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" -dependencies = [ - "autocfg", -] - -[[package]] -name = "nixpkgs-check-by-name" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap", - "colored", - "indoc", - "itertools", - "lazy_static", - "regex", - "relative-path", - "rnix", - "rowan", - "serde", - "serde_json", - "temp-env", - "tempfile", - "textwrap", -] - -[[package]] -name = "once_cell" -version = "1.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" - -[[package]] -name = "parking_lot" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets", -] - -[[package]] -name = "proc-macro2" -version = "1.0.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "redox_syscall" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" -dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regex" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2" - -[[package]] -name = "relative-path" -version = "1.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc" - -[[package]] -name = "rnix" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb35cedbeb70e0ccabef2a31bcff0aebd114f19566086300b8f42c725fc2cb5f" -dependencies = [ - "rowan", -] - -[[package]] -name = "rowan" -version = "0.15.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64449cfef9483a475ed56ae30e2da5ee96448789fb2aa240a04beb6a055078bf" -dependencies = [ - "countme", - "hashbrown", - "memoffset", - "rustc-hash", - "text-size", -] - -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f" -dependencies = [ - "bitflags 2.4.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys", -] - -[[package]] -name = "ryu" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "serde" -version = "1.0.186" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f5db24220c009de9bd45e69fb2938f4b6d2df856aa9304ce377b3180f83b7c1" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.186" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad697f7e0b65af4983a4ce8f56ed5b357e8d3c36651bf6a7e13639c17b8e670" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.105" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "smallvec" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" - -[[package]] -name = "smawk" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c" - -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "syn" -version = "2.0.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "temp-env" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e010429b1f3ea1311190c658c7570100f03c1dab05c16cfab774181c648d656a" -dependencies = [ - "parking_lot", -] - -[[package]] -name = "tempfile" -version = "3.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys", -] - -[[package]] -name = "text-size" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f18aa187839b2bdb1ad2fa35ead8c4c2976b64e4363c386d45ac0f7ee85c9233" - -[[package]] -name = "textwrap" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" -dependencies = [ - "smawk", - "unicode-linebreak", - "unicode-width", -] - -[[package]] -name = "unicode-ident" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" - -[[package]] -name = "unicode-linebreak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" - -[[package]] -name = "unicode-width" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" - -[[package]] -name = "utf8parse" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" diff --git a/pkgs/test/nixpkgs-check-by-name/Cargo.toml b/pkgs/test/nixpkgs-check-by-name/Cargo.toml deleted file mode 100644 index 50cdabb7e2dd..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/Cargo.toml +++ /dev/null @@ -1,23 +0,0 @@ -[package] -name = "nixpkgs-check-by-name" -version = "0.1.0" -edition = "2021" - -[dependencies] -rnix = "0.11.0" -regex = "1.9.3" -clap = { version = "4.3.23", features = ["derive"] } -serde_json = "1.0.105" -tempfile = "3.8.0" -serde = { version = "1.0.185", features = ["derive"] } -anyhow = "1.0" -lazy_static = "1.4.0" -colored = "2.0.4" -itertools = "0.11.0" -rowan = "0.15.11" -indoc = "2.0.4" -relative-path = "1.9.2" -textwrap = "0.16.1" - -[dev-dependencies] -temp-env = "0.3.5" diff --git a/pkgs/test/nixpkgs-check-by-name/README.md b/pkgs/test/nixpkgs-check-by-name/README.md deleted file mode 100644 index 1aa256978416..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/README.md +++ /dev/null @@ -1,102 +0,0 @@ -# Nixpkgs pkgs/by-name checker - -This directory implements a program to check the [validity](#validity-checks) of the `pkgs/by-name` Nixpkgs directory. -This is part of the implementation of [RFC 140](https://github.com/NixOS/rfcs/pull/140). - -A [pinned version](./scripts/pinned-tool.json) of this tool is used by [this GitHub Actions workflow](../../../.github/workflows/check-by-name.yml). -See [./scripts](./scripts/README.md#update-pinned-toolsh) for how to update the pinned version. - -The source of the tool being right inside Nixpkgs allows any Nixpkgs committer to make updates to it. - -## Interface - -The interface of the tool is shown with `--help`: -``` -cargo run -- --help -``` - -The interface may be changed over time only if the CI workflow making use of it is adjusted to deal with the change appropriately. - -## Validity checks - -These checks are performed by this tool: - -### File structure checks -- `pkgs/by-name` must only contain subdirectories of the form `${shard}/${name}`, called _package directories_. -- The `name`'s of package directories must be unique when lowercased. -- `name` is a string only consisting of the ASCII characters `a-z`, `A-Z`, `0-9`, `-` or `_`. -- `shard` is the lowercased first two letters of `name`, expressed in Nix: `shard = toLower (substring 0 2 name)`. -- Each package directory must contain a `package.nix` file and may contain arbitrary other files. - -### Nix parser checks -- Each package directory must not refer to files outside itself using symlinks or Nix path expressions. - -### Nix evaluation checks - -Evaluate Nixpkgs with `system` set to `x86_64-linux` and check that: -- For each package directory, the `pkgs.${name}` attribute must be defined as `callPackage pkgs/by-name/${shard}/${name}/package.nix args` for some `args`. -- For each package directory, `pkgs.lib.isDerivation pkgs.${name}` must be `true`. - -### Ratchet checks - -Furthermore, this tool implements certain [ratchet](https://qntm.org/ratchet) checks. -This allows gradually phasing out deprecated patterns without breaking the base branch or having to migrate it all at once. -It works by not allowing new instances of the pattern to be introduced, but allowing already existing instances. -The existing instances are coming from ``, which is then checked against `` for new instances. -Ratchets should be removed eventually once the pattern is not used anymore. - -The current ratchets are: - -- New manual definitions of `pkgs.${name}` (e.g. in `pkgs/top-level/all-packages.nix`) with `args = { }` - (see [nix evaluation checks](#nix-evaluation-checks)) must not be introduced. -- New top-level packages defined using `pkgs.callPackage` must be defined with a package directory. - - Once a top-level package uses `pkgs/by-name`, it also can't be moved back out of it. - -## Development - -Enter the development environment in this directory either automatically with `direnv` or with -``` -nix-shell -``` - -Then use `cargo`: -``` -cargo build -cargo test -cargo fmt -cargo clippy -``` - -## Tests - -Tests are declared in [`./tests`](./tests) as subdirectories imitating Nixpkgs with these files: -- `default.nix`: - Always contains - ```nix - import { root = ./.; } - ``` - which makes - ``` - nix-instantiate --eval -A --arg overlays - ``` - work very similarly to the real Nixpkgs, just enough for the program to be able to test it. -- `pkgs/by-name`: - The `pkgs/by-name` directory to check. - -- `all-packages.nix` (optional): - Contains an overlay of the form - ```nix - self: super: { - # ... - } - ``` - allowing the simulation of package overrides to the real [`pkgs/top-level/all-packages.nix`](../../top-level/all-packages.nix`). - The default is an empty overlay. - -- `base` (optional): - Contains another subdirectory imitating Nixpkgs with potentially any of the above structures. - This is used for [ratchet checks](#ratchet-checks). - -- `expected` (optional): - A file containing the expected standard output. - The default is expecting an empty standard output. diff --git a/pkgs/test/nixpkgs-check-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/default.nix deleted file mode 100644 index 8836da1f403f..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/default.nix +++ /dev/null @@ -1,82 +0,0 @@ -{ - lib, - rustPlatform, - nix, - rustfmt, - clippy, - mkShell, - makeWrapper, - runCommand, -}: -let - runtimeExprPath = ./src/eval.nix; - nixpkgsLibPath = ../../../lib; - testNixpkgsPath = ./tests/mock-nixpkgs.nix; - - # Needed to make Nix evaluation work inside nix builds - initNix = '' - export TEST_ROOT=$(pwd)/test-tmp - export NIX_CONF_DIR=$TEST_ROOT/etc - export NIX_LOCALSTATE_DIR=$TEST_ROOT/var - export NIX_LOG_DIR=$TEST_ROOT/var/log/nix - export NIX_STATE_DIR=$TEST_ROOT/var/nix - export NIX_STORE_DIR=$TEST_ROOT/store - - # Ensure that even if tests run in parallel, we don't get an error - # We'd run into https://github.com/NixOS/nix/issues/2706 unless the store is initialised first - nix-store --init - ''; - - fs = lib.fileset; - - package = - rustPlatform.buildRustPackage { - name = "nixpkgs-check-by-name"; - src = fs.toSource { - root = ./.; - fileset = fs.unions [ - ./Cargo.lock - ./Cargo.toml - ./src - ./tests - ]; - }; - cargoLock.lockFile = ./Cargo.lock; - nativeBuildInputs = [ - nix - rustfmt - clippy - makeWrapper - ]; - env.NIX_CHECK_BY_NAME_EXPR_PATH = "${runtimeExprPath}"; - env.NIX_PATH = "test-nixpkgs=${testNixpkgsPath}:test-nixpkgs/lib=${nixpkgsLibPath}"; - preCheck = initNix; - postCheck = '' - cargo fmt --check - cargo clippy -- -D warnings - ''; - postInstall = '' - wrapProgram $out/bin/nixpkgs-check-by-name \ - --set NIX_CHECK_BY_NAME_EXPR_PATH "$NIX_CHECK_BY_NAME_EXPR_PATH" - ''; - passthru.shell = mkShell { - env.NIX_CHECK_BY_NAME_EXPR_PATH = toString runtimeExprPath; - env.NIX_PATH = "test-nixpkgs=${toString testNixpkgsPath}:test-nixpkgs/lib=${toString nixpkgsLibPath}"; - inputsFrom = [ package ]; - }; - - # Tests the tool on the current Nixpkgs tree, this is a good sanity check - passthru.tests.nixpkgs = runCommand "test-nixpkgs-check-by-name" { - nativeBuildInputs = [ - package - nix - ]; - nixpkgsPath = lib.cleanSource ../../..; - } '' - ${initNix} - nixpkgs-check-by-name --base "$nixpkgsPath" "$nixpkgsPath" - touch $out - ''; - }; -in -package diff --git a/pkgs/test/nixpkgs-check-by-name/shell.nix b/pkgs/test/nixpkgs-check-by-name/shell.nix deleted file mode 100644 index 33bcf45b8d05..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/shell.nix +++ /dev/null @@ -1,6 +0,0 @@ -let - pkgs = import ../../.. { - config = {}; - overlays = []; - }; -in pkgs.tests.nixpkgs-check-by-name.shell diff --git a/pkgs/test/nixpkgs-check-by-name/src/eval.nix b/pkgs/test/nixpkgs-check-by-name/src/eval.nix deleted file mode 100644 index ab1c41e0b145..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/eval.nix +++ /dev/null @@ -1,116 +0,0 @@ -# Takes a path to nixpkgs and a path to the json-encoded list of `pkgs/by-name` attributes. -# Returns a value containing information on all Nixpkgs attributes -# which is decoded on the Rust side. -# See ./eval.rs for the meaning of the returned values -{ - attrsPath, - nixpkgsPath, -}: -let - attrs = builtins.fromJSON (builtins.readFile attrsPath); - - # We need to check whether attributes are defined manually e.g. in - # `all-packages.nix`, automatically by the `pkgs/by-name` overlay, or - # neither. The only way to do so is to override `callPackage` and - # `_internalCallByNamePackageFile` with our own version that adds this - # information to the result, and then try to access it. - overlay = final: prev: { - - # Adds information to each attribute about whether it's manually defined using `callPackage` - callPackage = fn: args: - addVariantInfo (prev.callPackage fn args) { - # This is a manual definition of the attribute, and it's a callPackage, specifically a semantic callPackage - ManualDefinition.is_semantic_call_package = true; - }; - - # Adds information to each attribute about whether it's automatically - # defined by the `pkgs/by-name` overlay. This internal attribute is only - # used by that overlay. - # This overrides the above `callPackage` information (we don't need that - # one, since `pkgs/by-name` always uses `callPackage` underneath. - _internalCallByNamePackageFile = file: - addVariantInfo (prev._internalCallByNamePackageFile file) { - AutoDefinition = null; - }; - - }; - - # We can't just replace attribute values with their info in the overlay, - # because attributes can depend on other attributes, so this would break evaluation. - addVariantInfo = value: variant: - if builtins.isAttrs value then - value // { - _callPackageVariant = variant; - } - else - # It's very rare that callPackage doesn't return an attribute set, but it can occur. - # In such a case we can't really return anything sensible that would include the info, - # so just don't return the value directly and treat it as if it wasn't a callPackage. - value; - - pkgs = import nixpkgsPath { - # Don't let the users home directory influence this result - config = { }; - overlays = [ overlay ]; - # We check evaluation and callPackage only for x86_64-linux. - # Not ideal, but hard to fix - system = "x86_64-linux"; - }; - - # See AttributeInfo in ./eval.rs for the meaning of this - attrInfo = name: value: { - location = builtins.unsafeGetAttrPos name pkgs; - attribute_variant = - if ! builtins.isAttrs value then - { NonAttributeSet = null; } - else - { - AttributeSet = { - is_derivation = pkgs.lib.isDerivation value; - definition_variant = - if ! value ? _callPackageVariant then - { ManualDefinition.is_semantic_call_package = false; } - else - value._callPackageVariant; - }; - }; - }; - - # Information on all attributes that are in pkgs/by-name. - byNameAttrs = builtins.listToAttrs (map (name: { - inherit name; - value.ByName = - if ! pkgs ? ${name} then - { Missing = null; } - else - # Evaluation failures are not allowed, so don't try to catch them - { Existing = attrInfo name pkgs.${name}; }; - }) attrs); - - # Information on all attributes that exist but are not in pkgs/by-name. - # We need this to enforce pkgs/by-name for new packages - nonByNameAttrs = builtins.mapAttrs (name: value: - let - # Packages outside `pkgs/by-name` often fail evaluation, - # so we need to handle that - output = attrInfo name value; - result = builtins.tryEval (builtins.deepSeq output null); - in - { - NonByName = - if result.success then - { EvalSuccess = output; } - else - { EvalFailure = null; }; - } - ) (builtins.removeAttrs pkgs attrs); - - # All attributes - attributes = byNameAttrs // nonByNameAttrs; -in -# We output them in the form [ [ ] ]` such that the Rust side -# doesn't need to sort them again to get deterministic behavior (good for testing) -map (name: [ - name - attributes.${name} -]) (builtins.attrNames attributes) diff --git a/pkgs/test/nixpkgs-check-by-name/src/eval.rs b/pkgs/test/nixpkgs-check-by-name/src/eval.rs deleted file mode 100644 index 094508f595d8..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/eval.rs +++ /dev/null @@ -1,559 +0,0 @@ -use crate::nix_file::CallPackageArgumentInfo; -use crate::nixpkgs_problem::NixpkgsProblem; -use crate::ratchet; -use crate::ratchet::RatchetState::Loose; -use crate::ratchet::RatchetState::Tight; -use crate::structure; -use crate::utils; -use crate::validation::ResultIteratorExt as _; -use crate::validation::{self, Validation::Success}; -use crate::NixFileStore; -use relative_path::RelativePathBuf; -use std::path::Path; - -use anyhow::Context; -use serde::Deserialize; -use std::path::PathBuf; -use std::process; -use tempfile::NamedTempFile; - -/// Attribute set of this structure is returned by eval.nix -#[derive(Deserialize)] -enum Attribute { - /// An attribute that should be defined via pkgs/by-name - ByName(ByNameAttribute), - /// An attribute not defined via pkgs/by-name - NonByName(NonByNameAttribute), -} - -#[derive(Deserialize)] -enum NonByNameAttribute { - /// The attribute doesn't evaluate - EvalFailure, - EvalSuccess(AttributeInfo), -} - -#[derive(Deserialize)] -enum ByNameAttribute { - /// The attribute doesn't exist at all - Missing, - Existing(AttributeInfo), -} - -#[derive(Deserialize)] -struct AttributeInfo { - /// The location of the attribute as returned by `builtins.unsafeGetAttrPos` - location: Option, - attribute_variant: AttributeVariant, -} - -/// The structure returned by a successful `builtins.unsafeGetAttrPos` -#[derive(Deserialize, Clone, Debug)] -struct Location { - pub file: PathBuf, - pub line: usize, - pub column: usize, -} - -impl Location { - // Returns the [file] field, but relative to Nixpkgs - fn relative_file(&self, nixpkgs_path: &Path) -> anyhow::Result { - let path = self.file.strip_prefix(nixpkgs_path).with_context(|| { - format!( - "The file ({}) is outside Nixpkgs ({})", - self.file.display(), - nixpkgs_path.display() - ) - })?; - Ok(RelativePathBuf::from_path(path).expect("relative path")) - } -} - -#[derive(Deserialize)] -pub enum AttributeVariant { - /// The attribute is not an attribute set, we're limited in the amount of information we can get - /// from it (though it's obviously not a derivation) - NonAttributeSet, - AttributeSet { - /// Whether the attribute is a derivation (`lib.isDerivation`) - is_derivation: bool, - /// The type of callPackage - definition_variant: DefinitionVariant, - }, -} - -#[derive(Deserialize)] -pub enum DefinitionVariant { - /// An automatic definition by the `pkgs/by-name` overlay - /// Though it's detected using the internal _internalCallByNamePackageFile attribute, - /// which can in theory also be used by other code - AutoDefinition, - /// A manual definition of the attribute, typically in `all-packages.nix` - ManualDefinition { - /// Whether the attribute is defined as `pkgs.callPackage ...` or something else. - is_semantic_call_package: bool, - }, -} - -/// Check that the Nixpkgs attribute values corresponding to the packages in pkgs/by-name are -/// of the form `callPackage { ... }`. -/// See the `eval.nix` file for how this is achieved on the Nix side -pub fn check_values( - nixpkgs_path: &Path, - nix_file_store: &mut NixFileStore, - package_names: Vec, - keep_nix_path: bool, -) -> validation::Result { - // Write the list of packages we need to check into a temporary JSON file. - // This can then get read by the Nix evaluation. - let attrs_file = NamedTempFile::new().with_context(|| "Failed to create a temporary file")?; - // We need to canonicalise this path because if it's a symlink (which can be the case on - // Darwin), Nix would need to read both the symlink and the target path, therefore need 2 - // NIX_PATH entries for restrict-eval. But if we resolve the symlinks then only one predictable - // entry is needed. - let attrs_file_path = attrs_file.path().canonicalize()?; - - serde_json::to_writer(&attrs_file, &package_names).with_context(|| { - format!( - "Failed to serialise the package names to the temporary path {}", - attrs_file_path.display() - ) - })?; - - let expr_path = std::env::var("NIX_CHECK_BY_NAME_EXPR_PATH") - .with_context(|| "Could not get environment variable NIX_CHECK_BY_NAME_EXPR_PATH")?; - // With restrict-eval, only paths in NIX_PATH can be accessed, so we explicitly specify the - // ones needed needed - let mut command = process::Command::new("nix-instantiate"); - command - // Inherit stderr so that error messages always get shown - .stderr(process::Stdio::inherit()) - .args([ - "--eval", - "--json", - "--strict", - "--readonly-mode", - "--restrict-eval", - "--show-trace", - ]) - // Pass the path to the attrs_file as an argument and add it to the NIX_PATH so it can be - // accessed in restrict-eval mode - .args(["--arg", "attrsPath"]) - .arg(&attrs_file_path) - .arg("-I") - .arg(&attrs_file_path) - // Same for the nixpkgs to test - .args(["--arg", "nixpkgsPath"]) - .arg(nixpkgs_path) - .arg("-I") - .arg(nixpkgs_path); - - // Clear NIX_PATH to be sure it doesn't influence the result - // But not when requested to keep it, used so that the tests can pass extra Nix files - if !keep_nix_path { - command.env_remove("NIX_PATH"); - } - - command.args(["-I", &expr_path]); - command.arg(expr_path); - - let result = command - .output() - .with_context(|| format!("Failed to run command {command:?}"))?; - - if !result.status.success() { - anyhow::bail!("Failed to run command {command:?}"); - } - // Parse the resulting JSON value - let attributes: Vec<(String, Attribute)> = serde_json::from_slice(&result.stdout) - .with_context(|| { - format!( - "Failed to deserialise {}", - String::from_utf8_lossy(&result.stdout) - ) - })?; - - let check_result = validation::sequence( - attributes - .into_iter() - .map(|(attribute_name, attribute_value)| { - let check_result = match attribute_value { - Attribute::NonByName(non_by_name_attribute) => handle_non_by_name_attribute( - nixpkgs_path, - nix_file_store, - &attribute_name, - non_by_name_attribute, - )?, - Attribute::ByName(by_name_attribute) => by_name( - nix_file_store, - nixpkgs_path, - &attribute_name, - by_name_attribute, - )?, - }; - Ok::<_, anyhow::Error>(check_result.map(|value| (attribute_name.clone(), value))) - }) - .collect_vec()?, - ); - - Ok(check_result.map(|elems| ratchet::Nixpkgs { - package_names: elems.iter().map(|(name, _)| name.to_owned()).collect(), - package_map: elems.into_iter().collect(), - })) -} - -/// Handles the evaluation result for an attribute in `pkgs/by-name`, -/// turning it into a validation result. -fn by_name( - nix_file_store: &mut NixFileStore, - nixpkgs_path: &Path, - attribute_name: &str, - by_name_attribute: ByNameAttribute, -) -> validation::Result { - use ratchet::RatchetState::*; - use ByNameAttribute::*; - - let relative_package_file = structure::relative_file_for_package(attribute_name); - - // At this point we know that `pkgs/by-name/fo/foo/package.nix` has to exists. - // This match decides whether the attribute `foo` is defined accordingly - // and whether a legacy manual definition could be removed - let manual_definition_result = match by_name_attribute { - // The attribute is missing - Missing => { - // This indicates a bug in the `pkgs/by-name` overlay, because it's supposed to - // automatically defined attributes in `pkgs/by-name` - NixpkgsProblem::UndefinedAttr { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), - } - .into() - } - // The attribute exists - Existing(AttributeInfo { - // But it's not an attribute set, which limits the amount of information we can get - // about this attribute (see ./eval.nix) - attribute_variant: AttributeVariant::NonAttributeSet, - location: _location, - }) => { - // The only thing we know is that it's definitely not a derivation, since those are - // always attribute sets. - // - // We can't know whether the attribute is automatically or manually defined for sure, - // and while we could check the location, the error seems clear enough as is. - NixpkgsProblem::NonDerivation { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), - } - .into() - } - // The attribute exists - Existing(AttributeInfo { - // And it's an attribute set, which allows us to get more information about it - attribute_variant: - AttributeVariant::AttributeSet { - is_derivation, - definition_variant, - }, - location, - }) => { - // Only derivations are allowed in `pkgs/by-name` - let is_derivation_result = if is_derivation { - Success(()) - } else { - NixpkgsProblem::NonDerivation { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), - } - .into() - }; - - // If the definition looks correct - let variant_result = match definition_variant { - // An automatic `callPackage` by the `pkgs/by-name` overlay. - // Though this gets detected by checking whether the internal - // `_internalCallByNamePackageFile` was used - DefinitionVariant::AutoDefinition => { - if let Some(_location) = location { - // Such an automatic definition should definitely not have a location - // Having one indicates that somebody is using `_internalCallByNamePackageFile`, - NixpkgsProblem::InternalCallPackageUsed { - attr_name: attribute_name.to_owned(), - } - .into() - } else { - Success(Tight) - } - } - // The attribute is manually defined, e.g. in `all-packages.nix`. - // This means we need to enforce it to look like this: - // callPackage ../pkgs/by-name/fo/foo/package.nix { ... } - DefinitionVariant::ManualDefinition { - is_semantic_call_package, - } => { - // We should expect manual definitions to have a location, otherwise we can't - // enforce the expected format - if let Some(location) = location { - // Parse the Nix file in the location - let nix_file = nix_file_store.get(&location.file)?; - - // The relative path of the Nix file, for error messages - let relative_location_file = location.relative_file(nixpkgs_path).with_context(|| { - format!("Failed to resolve the file where attribute {attribute_name} is defined") - })?; - - // Figure out whether it's an attribute definition of the form `= callPackage `, - // returning the arguments if so. - let (optional_syntactic_call_package, definition) = nix_file - .call_package_argument_info_at(location.line, location.column, nixpkgs_path) - .with_context(|| { - format!("Failed to get the definition info for attribute {attribute_name}") - })?; - - by_name_override( - attribute_name, - relative_package_file, - is_semantic_call_package, - optional_syntactic_call_package, - definition, - location, - relative_location_file, - ) - } else { - // If manual definitions don't have a location, it's likely `mapAttrs`'d - // over, e.g. if it's defined in aliases.nix. - // We can't verify whether its of the expected `callPackage`, so error out - NixpkgsProblem::CannotDetermineAttributeLocation { - attr_name: attribute_name.to_owned(), - } - .into() - } - } - }; - - // Independently report problems about whether it's a derivation and the callPackage variant - is_derivation_result.and(variant_result) - } - }; - Ok( - // Packages being checked in this function are _always_ already defined in `pkgs/by-name`, - // so instead of repeating ourselves all the time to define `uses_by_name`, just set it - // once at the end with a map - manual_definition_result.map(|manual_definition| ratchet::Package { - manual_definition, - uses_by_name: Tight, - }), - ) -} - -/// Handles the case for packages in `pkgs/by-name` that are manually overridden, e.g. in -/// all-packages.nix -fn by_name_override( - attribute_name: &str, - expected_package_file: RelativePathBuf, - is_semantic_call_package: bool, - optional_syntactic_call_package: Option, - definition: String, - location: Location, - relative_location_file: RelativePathBuf, -) -> validation::Validation> { - // At this point, we completed two different checks for whether it's a - // `callPackage` - match (is_semantic_call_package, optional_syntactic_call_package) { - // Something like ` = foo` - (_, None) => NixpkgsProblem::NonSyntacticCallPackage { - package_name: attribute_name.to_owned(), - file: relative_location_file, - line: location.line, - column: location.column, - definition, - } - .into(), - // Something like ` = pythonPackages.callPackage ...` - (false, Some(_)) => NixpkgsProblem::NonToplevelCallPackage { - package_name: attribute_name.to_owned(), - file: relative_location_file, - line: location.line, - column: location.column, - definition, - } - .into(), - // Something like ` = pkgs.callPackage ...` - (true, Some(syntactic_call_package)) => { - if let Some(actual_package_file) = syntactic_call_package.relative_path { - if actual_package_file != expected_package_file { - // Wrong path - NixpkgsProblem::WrongCallPackagePath { - package_name: attribute_name.to_owned(), - file: relative_location_file, - line: location.line, - actual_path: actual_package_file, - expected_path: expected_package_file, - } - .into() - } else { - // Manual definitions with empty arguments are not allowed - // anymore, but existing ones should continue to be allowed - let manual_definition_ratchet = if syntactic_call_package.empty_arg { - // This is the state to migrate away from - Loose(NixpkgsProblem::EmptyArgument { - package_name: attribute_name.to_owned(), - file: relative_location_file, - line: location.line, - column: location.column, - definition, - }) - } else { - // This is the state to migrate to - Tight - }; - - Success(manual_definition_ratchet) - } - } else { - // No path - NixpkgsProblem::NonPath { - package_name: attribute_name.to_owned(), - file: relative_location_file, - line: location.line, - column: location.column, - definition, - } - .into() - } - } - } -} - -/// Handles the evaluation result for an attribute _not_ in `pkgs/by-name`, -/// turning it into a validation result. -fn handle_non_by_name_attribute( - nixpkgs_path: &Path, - nix_file_store: &mut NixFileStore, - attribute_name: &str, - non_by_name_attribute: NonByNameAttribute, -) -> validation::Result { - use ratchet::RatchetState::*; - use NonByNameAttribute::*; - - // The ratchet state whether this attribute uses `pkgs/by-name`. - // This is never `Tight`, because we only either: - // - Know that the attribute _could_ be migrated to `pkgs/by-name`, which is `Loose` - // - Or we're unsure, in which case we use NonApplicable - let uses_by_name = - // This is a big ol' match on various properties of the attribute - - // First, it needs to succeed evaluation. We can't know whether an attribute could be - // migrated to `pkgs/by-name` if it doesn't evaluate, since we need to check that it's a - // derivation. - // - // This only has the minor negative effect that if a PR that breaks evaluation - // gets merged, fixing those failures won't force anything into `pkgs/by-name`. - // - // For now this isn't our problem, but in the future we - // might have another check to enforce that evaluation must not be broken. - // - // The alternative of assuming that failing attributes would have been fit for `pkgs/by-name` - // has the problem that if a package evaluation gets broken temporarily, - // fixing it requires a move to pkgs/by-name, which could happen more - // often and isn't really justified. - if let EvalSuccess(AttributeInfo { - // We're only interested in attributes that are attribute sets (which includes - // derivations). Anything else can't be in `pkgs/by-name`. - attribute_variant: AttributeVariant::AttributeSet { - // Indeed, we only care about derivations, non-derivation attribute sets can't be - // in `pkgs/by-name` - is_derivation: true, - // Of the two definition variants, really only the manual one makes sense here. - // Special cases are: - // - Manual aliases to auto-called packages are not treated as manual definitions, - // due to limitations in the semantic callPackage detection. So those should be - // ignored. - // - Manual definitions using the internal _internalCallByNamePackageFile are - // not treated as manual definitions, since _internalCallByNamePackageFile is - // used to detect automatic ones. We can't distinguish from the above case, so we - // just need to ignore this one too, even if that internal attribute should never - // be called manually. - definition_variant: DefinitionVariant::ManualDefinition { is_semantic_call_package } - }, - // We need the location of the manual definition, because otherwise - // we can't figure out whether it's a syntactic callPackage - location: Some(location), - }) = non_by_name_attribute { - - // Parse the Nix file in the location - let nix_file = nix_file_store.get(&location.file)?; - - // The relative path of the Nix file, for error messages - let relative_location_file = location.relative_file(nixpkgs_path).with_context(|| { - format!("Failed to resolve the file where attribute {attribute_name} is defined") - })?; - - // Figure out whether it's an attribute definition of the form `= callPackage `, - // returning the arguments if so. - let (optional_syntactic_call_package, _definition) = nix_file - .call_package_argument_info_at( - location.line, - location.column, - // Passing the Nixpkgs path here both checks that the is within Nixpkgs, and - // strips the absolute Nixpkgs path from it, such that - // syntactic_call_package.relative_path is relative to Nixpkgs - nixpkgs_path - ) - .with_context(|| { - format!("Failed to get the definition info for attribute {attribute_name}") - })?; - - // At this point, we completed two different checks for whether it's a - // `callPackage` - match (is_semantic_call_package, optional_syntactic_call_package) { - // Something like ` = { }` - (false, None) - // Something like ` = pythonPackages.callPackage ...` - | (false, Some(_)) - // Something like ` = bar` where `bar = pkgs.callPackage ...` - | (true, None) => { - // In all of these cases, it's not possible to migrate the package to `pkgs/by-name` - NonApplicable - } - // Something like ` = pkgs.callPackage ...` - (true, Some(syntactic_call_package)) => { - // It's only possible to migrate such a definitions if.. - match syntactic_call_package.relative_path { - Some(ref rel_path) if rel_path.starts_with(utils::BASE_SUBPATH) => { - // ..the path is not already within `pkgs/by-name` like - // - // foo-variant = callPackage ../by-name/fo/foo/package.nix { - // someFlag = true; - // } - // - // While such definitions could be moved to `pkgs/by-name` by using - // `.override { someFlag = true; }` instead, this changes the semantics in - // relation with overlays, so migration is generally not possible. - // - // See also "package variants" in RFC 140: - // https://github.com/NixOS/rfcs/blob/master/rfcs/0140-simple-package-paths.md#package-variants - NonApplicable - } - _ => { - // Otherwise, the path is outside `pkgs/by-name`, which means it can be - // migrated - Loose((syntactic_call_package, relative_location_file)) - } - } - } - } - } else { - // This catches all the cases not matched by the above `if let`, falling back to not being - // able to migrate such attributes - NonApplicable - }; - Ok(Success(ratchet::Package { - // Packages being checked in this function _always_ need a manual definition, because - // they're not using `pkgs/by-name` which would allow avoiding it. - // so instead of repeating ourselves all the time to define `manual_definition`, - // just set it once at the end here - manual_definition: Tight, - uses_by_name, - })) -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/main.rs b/pkgs/test/nixpkgs-check-by-name/src/main.rs deleted file mode 100644 index dcc9cb9e716d..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/main.rs +++ /dev/null @@ -1,293 +0,0 @@ -use crate::nix_file::NixFileStore; -use std::panic; -mod eval; -mod nix_file; -mod nixpkgs_problem; -mod ratchet; -mod references; -mod structure; -mod utils; -mod validation; - -use crate::structure::check_structure; -use crate::validation::Validation::Failure; -use crate::validation::Validation::Success; -use anyhow::Context; -use clap::Parser; -use colored::Colorize; -use std::io; -use std::path::{Path, PathBuf}; -use std::process::ExitCode; -use std::thread; - -/// Program to check the validity of pkgs/by-name -/// -/// This CLI interface may be changed over time if the CI workflow making use of -/// it is adjusted to deal with the change appropriately. -/// -/// Exit code: -/// - `0`: If the validation is successful -/// - `1`: If the validation is not successful -/// - `2`: If an unexpected I/O error occurs -/// -/// Standard error: -/// - Informative messages -/// - Detected problems if validation is not successful -#[derive(Parser, Debug)] -#[command(about, verbatim_doc_comment)] -pub struct Args { - /// Path to the main Nixpkgs to check. - /// For PRs, this should be set to a checkout of the PR branch. - nixpkgs: PathBuf, - - /// Path to the base Nixpkgs to run ratchet checks against. - /// For PRs, this should be set to a checkout of the PRs base branch. - #[arg(long)] - base: PathBuf, -} - -fn main() -> ExitCode { - let args = Args::parse(); - match process(args.base, args.nixpkgs, false, &mut io::stderr()) { - Ok(true) => ExitCode::SUCCESS, - Ok(false) => ExitCode::from(1), - Err(e) => { - eprintln!("{} {:#}", "I/O error: ".yellow(), e); - ExitCode::from(2) - } - } -} - -/// Does the actual work. This is the abstraction used both by `main` and the tests. -/// -/// # Arguments -/// - `base_nixpkgs`: Path to the base Nixpkgs to run ratchet checks against. -/// - `main_nixpkgs`: Path to the main Nixpkgs to check. -/// - `keep_nix_path`: Whether the value of the NIX_PATH environment variable should be kept for -/// the evaluation stage, allowing its contents to be accessed. -/// This is used to allow the tests to access e.g. the mock-nixpkgs.nix file -/// - `error_writer`: An `io::Write` value to write validation errors to, if any. -/// -/// # Return value -/// - `Err(e)` if an I/O-related error `e` occurred. -/// - `Ok(false)` if there are problems, all of which will be written to `error_writer`. -/// - `Ok(true)` if there are no problems -pub fn process( - base_nixpkgs: PathBuf, - main_nixpkgs: PathBuf, - keep_nix_path: bool, - error_writer: &mut W, -) -> anyhow::Result { - // Very easy to parallelise this, since it's totally independent - let base_thread = thread::spawn(move || check_nixpkgs(&base_nixpkgs, keep_nix_path)); - let main_result = check_nixpkgs(&main_nixpkgs, keep_nix_path)?; - - let base_result = match base_thread.join() { - Ok(res) => res?, - Err(e) => panic::resume_unwind(e), - }; - - match (base_result, main_result) { - (Failure(_), Failure(errors)) => { - // Base branch fails and the PR doesn't fix it and may also introduce additional problems - for error in errors { - writeln!(error_writer, "{}", error.to_string().red())? - } - writeln!(error_writer, "{}", "The base branch is broken and still has above problems with this PR, which need to be fixed first.\nConsider reverting the PR that introduced these problems in order to prevent more failures of unrelated PRs.".yellow())?; - Ok(false) - } - (Failure(_), Success(_)) => { - writeln!( - error_writer, - "{}", - "The base branch is broken, but this PR fixes it. Nice job!".green() - )?; - Ok(true) - } - (Success(_), Failure(errors)) => { - for error in errors { - writeln!(error_writer, "{}", error.to_string().red())? - } - writeln!( - error_writer, - "{}", - "This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break." - .yellow() - )?; - Ok(false) - } - (Success(base), Success(main)) => { - // Both base and main branch succeed, check ratchet state - match ratchet::Nixpkgs::compare(base, main) { - Failure(errors) => { - for error in errors { - writeln!(error_writer, "{}", error.to_string().red())? - } - writeln!(error_writer, "{}", "This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch.".yellow())?; - - Ok(false) - } - Success(()) => { - writeln!(error_writer, "{}", "Validated successfully".green())?; - Ok(true) - } - } - } - } -} - -/// Checks whether the pkgs/by-name structure in Nixpkgs is valid. -/// -/// This does not include ratchet checks, see ../README.md#ratchet-checks -/// Instead a `ratchet::Nixpkgs` value is returned, whose `compare` method allows performing the -/// ratchet check against another result. -pub fn check_nixpkgs( - nixpkgs_path: &Path, - keep_nix_path: bool, -) -> validation::Result { - let mut nix_file_store = NixFileStore::default(); - - Ok({ - let nixpkgs_path = nixpkgs_path.canonicalize().with_context(|| { - format!( - "Nixpkgs path {} could not be resolved", - nixpkgs_path.display() - ) - })?; - - if !nixpkgs_path.join(utils::BASE_SUBPATH).exists() { - // No pkgs/by-name directory, always valid - Success(ratchet::Nixpkgs::default()) - } else { - check_structure(&nixpkgs_path, &mut nix_file_store)?.result_map(|package_names| - // Only if we could successfully parse the structure, we do the evaluation checks - eval::check_values(&nixpkgs_path, &mut nix_file_store, package_names, keep_nix_path))? - } - }) -} - -#[cfg(test)] -mod tests { - use crate::process; - use crate::utils; - use anyhow::Context; - use std::fs; - use std::path::Path; - use tempfile::{tempdir_in, TempDir}; - - #[test] - fn tests_dir() -> anyhow::Result<()> { - for entry in Path::new("tests").read_dir()? { - let entry = entry?; - let path = entry.path(); - let name = entry.file_name().to_string_lossy().into_owned(); - - if !path.is_dir() { - continue; - } - - let expected_errors = fs::read_to_string(path.join("expected")) - .expect("No expected file for test {name}"); - - test_nixpkgs(&name, &path, &expected_errors)?; - } - Ok(()) - } - - // tempfile::tempdir needs to be wrapped in temp_env lock - // because it accesses TMPDIR environment variable. - pub fn tempdir() -> anyhow::Result { - let empty_list: [(&str, Option<&str>); 0] = []; - Ok(temp_env::with_vars(empty_list, tempfile::tempdir)?) - } - - // We cannot check case-conflicting files into Nixpkgs (the channel would fail to - // build), so we generate the case-conflicting file instead. - #[test] - fn test_case_sensitive() -> anyhow::Result<()> { - let temp_nixpkgs = tempdir()?; - let path = temp_nixpkgs.path(); - - if is_case_insensitive_fs(&path)? { - eprintln!("We're on a case-insensitive filesystem, skipping case-sensitivity test"); - return Ok(()); - } - - let base = path.join(utils::BASE_SUBPATH); - - fs::create_dir_all(base.join("fo/foo"))?; - fs::write(base.join("fo/foo/package.nix"), "{ someDrv }: someDrv")?; - - fs::create_dir_all(base.join("fo/foO"))?; - fs::write(base.join("fo/foO/package.nix"), "{ someDrv }: someDrv")?; - - test_nixpkgs( - "case_sensitive", - &path, - "pkgs/by-name/fo: Duplicate case-sensitive package directories \"foO\" and \"foo\".\nThis PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break.\n", - )?; - - Ok(()) - } - - /// Tests symlinked temporary directories. - /// This is needed because on darwin, `/tmp` is a symlink to `/private/tmp`, and Nix's - /// restrict-eval doesn't also allow access to the canonical path when you allow the - /// non-canonical one. - /// - /// The error if we didn't do this would look like this: - /// error: access to canonical path '/private/var/folders/[...]/.tmpFbcNO0' is forbidden in restricted mode - #[test] - fn test_symlinked_tmpdir() -> anyhow::Result<()> { - // Create a directory with two entries: - // - actual (dir) - // - symlinked -> actual (symlink) - let temp_root = tempdir()?; - fs::create_dir(temp_root.path().join("actual"))?; - std::os::unix::fs::symlink("actual", temp_root.path().join("symlinked"))?; - let tmpdir = temp_root.path().join("symlinked"); - - temp_env::with_var("TMPDIR", Some(&tmpdir), || { - test_nixpkgs( - "symlinked_tmpdir", - Path::new("tests/success"), - "Validated successfully\n", - ) - }) - } - - fn test_nixpkgs(name: &str, path: &Path, expected_errors: &str) -> anyhow::Result<()> { - let base_path = path.join("base"); - let base_nixpkgs = if base_path.exists() { - base_path.as_path() - } else { - Path::new("tests/empty-base") - }; - - // We don't want coloring to mess up the tests - let writer = temp_env::with_var("NO_COLOR", Some("1"), || -> anyhow::Result<_> { - let mut writer = vec![]; - process(base_nixpkgs.to_owned(), path.to_owned(), true, &mut writer) - .with_context(|| format!("Failed test case {name}"))?; - Ok(writer) - })?; - - let actual_errors = String::from_utf8_lossy(&writer); - - if actual_errors != expected_errors { - panic!( - "Failed test case {name}, expected these errors:\n=======\n{}\n=======\nbut got these:\n=======\n{}\n=======", - expected_errors, actual_errors - ); - } - Ok(()) - } - - /// Check whether a path is in a case-insensitive filesystem - fn is_case_insensitive_fs(path: &Path) -> anyhow::Result { - let dir = tempdir_in(path)?; - let base = dir.path(); - fs::write(base.join("aaa"), "")?; - Ok(base.join("AAA").exists()) - } -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/nix_file.rs b/pkgs/test/nixpkgs-check-by-name/src/nix_file.rs deleted file mode 100644 index e2dc1e196141..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/nix_file.rs +++ /dev/null @@ -1,555 +0,0 @@ -//! This is a utility module for interacting with the syntax of Nix files - -use crate::utils::LineIndex; -use anyhow::Context; -use itertools::Either::{self, Left, Right}; -use relative_path::RelativePathBuf; -use rnix::ast; -use rnix::ast::Expr; -use rnix::ast::HasEntry; -use rowan::ast::AstNode; -use rowan::TextSize; -use rowan::TokenAtOffset; -use std::collections::hash_map::Entry; -use std::collections::HashMap; -use std::fs::read_to_string; -use std::path::Path; -use std::path::PathBuf; - -/// A structure to store parse results of Nix files in memory, -/// making sure that the same file never has to be parsed twice -#[derive(Default)] -pub struct NixFileStore { - entries: HashMap, -} - -impl NixFileStore { - /// Get the store entry for a Nix file if it exists, otherwise parse the file, insert it into - /// the store, and return the value - /// - /// Note that this function only gives an anyhow::Result::Err for I/O errors. - /// A parse error is anyhow::Result::Ok(Result::Err(error)) - pub fn get(&mut self, path: &Path) -> anyhow::Result<&NixFile> { - match self.entries.entry(path.to_owned()) { - Entry::Occupied(entry) => Ok(entry.into_mut()), - Entry::Vacant(entry) => Ok(entry.insert(NixFile::new(path)?)), - } - } -} - -/// A structure for storing a successfully parsed Nix file -pub struct NixFile { - /// The parent directory of the Nix file, for more convenient error handling - pub parent_dir: PathBuf, - /// The path to the file itself, for errors - pub path: PathBuf, - pub syntax_root: rnix::Root, - pub line_index: LineIndex, -} - -impl NixFile { - /// Creates a new NixFile, failing for I/O or parse errors - fn new(path: impl AsRef) -> anyhow::Result { - let Some(parent_dir) = path.as_ref().parent() else { - anyhow::bail!("Could not get parent of path {}", path.as_ref().display()) - }; - - let contents = read_to_string(&path) - .with_context(|| format!("Could not read file {}", path.as_ref().display()))?; - let line_index = LineIndex::new(&contents); - - // NOTE: There's now another Nixpkgs CI check to make sure all changed Nix files parse - // correctly, though that uses mainline Nix instead of rnix, so it doesn't give the same - // errors. In the future we should unify these two checks, ideally moving the other CI - // check into this tool as well and checking for both mainline Nix and rnix. - rnix::Root::parse(&contents) - // rnix's ::ok returns Result<_, _> , so no error is thrown away like it would be with - // std::result's ::ok - .ok() - .map(|syntax_root| NixFile { - parent_dir: parent_dir.to_path_buf(), - path: path.as_ref().to_owned(), - syntax_root, - line_index, - }) - .with_context(|| format!("Could not parse file {} with rnix", path.as_ref().display())) - } -} - -/// Information about callPackage arguments -#[derive(Debug, PartialEq)] -pub struct CallPackageArgumentInfo { - /// The relative path of the first argument, or `None` if it's not a path. - pub relative_path: Option, - /// Whether the second argument is an empty attribute set - pub empty_arg: bool, -} - -impl NixFile { - /// Returns information about callPackage arguments for an attribute at a specific line/column - /// index. - /// If the definition at the given location is not of the form ` = callPackage ;`, - /// `Ok((None, String))` is returned, with `String` being the definition itself. - /// - /// This function only returns `Err` for problems that can't be caused by the Nix contents, - /// but rather problems in this programs code itself. - /// - /// This is meant to be used with the location returned from `builtins.unsafeGetAttrPos`, e.g.: - /// - Create file `default.nix` with contents - /// ```nix - /// self: { - /// foo = self.callPackage ./default.nix { }; - /// } - /// ``` - /// - Evaluate - /// ```nix - /// builtins.unsafeGetAttrPos "foo" (import ./default.nix { }) - /// ``` - /// results in `{ file = ./default.nix; line = 2; column = 3; }` - /// - Get the NixFile for `.file` from a `NixFileStore` - /// - Call this function with `.line`, `.column` and `relative_to` as the (absolute) current directory - /// - /// You'll get back - /// ```rust - /// Ok(( - /// Some(CallPackageArgumentInfo { path = Some("default.nix"), empty_arg: true }), - /// "foo = self.callPackage ./default.nix { };", - /// )) - /// ``` - /// - /// Note that this also returns the same for `pythonPackages.callPackage`. It doesn't make an - /// attempt at distinguishing this. - pub fn call_package_argument_info_at( - &self, - line: usize, - column: usize, - relative_to: &Path, - ) -> anyhow::Result<(Option, String)> { - Ok(match self.attrpath_value_at(line, column)? { - Left(definition) => (None, definition), - Right(attrpath_value) => { - let definition = attrpath_value.to_string(); - let attrpath_value = - self.attrpath_value_call_package_argument_info(attrpath_value, relative_to)?; - (attrpath_value, definition) - } - }) - } - - // Internal function mainly to make it independently testable - fn attrpath_value_at( - &self, - line: usize, - column: usize, - ) -> anyhow::Result> { - let index = self.line_index.fromlinecolumn(line, column); - - let token_at_offset = self - .syntax_root - .syntax() - .token_at_offset(TextSize::from(index as u32)); - - // The token_at_offset function takes indices to mean a location _between_ characters, - // which in this case is some spacing followed by the attribute name: - // - // foo = 10; - // /\ - // This is the token offset, we get both the (newline + indentation) on the left side, - // and the attribute name on the right side. - let TokenAtOffset::Between(_space, token) = token_at_offset else { - anyhow::bail!("Line {line} column {column} in {} is not the start of a token, but rather {token_at_offset:?}", self.path.display()) - }; - - // token looks like "foo" - let Some(node) = token.parent() else { - anyhow::bail!( - "Token on line {line} column {column} in {} does not have a parent node: {token:?}", - self.path.display() - ) - }; - - if ast::Attr::can_cast(node.kind()) { - // Something like `foo`, `"foo"` or `${"foo"}` - } else if ast::Inherit::can_cast(node.kind()) { - // Something like `inherit ` or `inherit () ` - // This is the only other way how `builtins.unsafeGetAttrPos` can return - // attribute positions, but we only look for ones like ` = `, so - // ignore this - return Ok(Left(node.to_string())); - } else { - // However, anything else is not expected and smells like a bug - anyhow::bail!( - "Node in {} is neither an attribute node nor an inherit node: {node:?}", - self.path.display() - ) - } - - // node looks like "foo" - let Some(attrpath_node) = node.parent() else { - anyhow::bail!( - "Node in {} does not have a parent node: {node:?}", - self.path.display() - ) - }; - - if !ast::Attrpath::can_cast(attrpath_node.kind()) { - // We know that `node` is an attribute, its parent should be an attribute path - anyhow::bail!( - "In {}, attribute parent node is not an attribute path node: {attrpath_node:?}", - self.path.display() - ) - } - - // attrpath_node looks like "foo.bar" - let Some(attrpath_value_node) = attrpath_node.parent() else { - anyhow::bail!( - "Attribute path node in {} does not have a parent node: {attrpath_node:?}", - self.path.display() - ) - }; - - if !ast::AttrpathValue::can_cast(attrpath_value_node.kind()) { - anyhow::bail!( - "Node in {} is not an attribute path value node: {attrpath_value_node:?}", - self.path.display() - ) - } - // attrpath_value_node looks like "foo.bar = 10;" - - // unwrap is fine because we confirmed that we can cast with the above check. - // We could avoid this `unwrap` for a `clone`, since `cast` consumes the argument, - // but we still need it for the error message when the cast fails. - Ok(Right( - ast::AttrpathValue::cast(attrpath_value_node).unwrap(), - )) - } - - // Internal function mainly to make attrpath_value_at independently testable - fn attrpath_value_call_package_argument_info( - &self, - attrpath_value: ast::AttrpathValue, - relative_to: &Path, - ) -> anyhow::Result> { - let Some(attrpath) = attrpath_value.attrpath() else { - anyhow::bail!("attrpath value node doesn't have an attrpath: {attrpath_value:?}") - }; - - // At this point we know it's something like `foo...bar = ...` - - if attrpath.attrs().count() > 1 { - // If the attribute path has multiple entries, the left-most entry is an attribute and - // can't be a `callPackage`. - // - // FIXME: `builtins.unsafeGetAttrPos` will return the same position for all attribute - // paths and we can't really know which one it is. We could have a case like - // `foo.bar = callPackage ... { }` and trying to determine if `bar` is a `callPackage`, - // where this is not correct. - // However, this case typically doesn't occur anyways, - // because top-level packages wouldn't be nested under an attribute set. - return Ok(None); - } - let Some(value) = attrpath_value.value() else { - anyhow::bail!("attrpath value node doesn't have a value: {attrpath_value:?}") - }; - - // At this point we know it's something like `foo = ...` - - let Expr::Apply(apply1) = value else { - // Not even a function call, instead something like `foo = null` - return Ok(None); - }; - let Some(function1) = apply1.lambda() else { - anyhow::bail!("apply node doesn't have a lambda: {apply1:?}") - }; - let Some(arg1) = apply1.argument() else { - anyhow::bail!("apply node doesn't have an argument: {apply1:?}") - }; - - // At this point we know it's something like `foo = `. - // For a callPackage, `` would be `callPackage ./file` and `` would be `{ }` - - let empty_arg = if let Expr::AttrSet(attrset) = arg1 { - // We can only statically determine whether the argument is empty if it's an attribute - // set _expression_, even though other kind of expressions could evaluate to an attribute - // set _value_. But this is what we want anyways - attrset.entries().next().is_none() - } else { - false - }; - - // Because callPackage takes two curried arguments, the first function needs to be a - // function call itself - let Expr::Apply(apply2) = function1 else { - // Not a callPackage, instead something like `foo = import ./foo` - return Ok(None); - }; - let Some(function2) = apply2.lambda() else { - anyhow::bail!("apply node doesn't have a lambda: {apply2:?}") - }; - let Some(arg2) = apply2.argument() else { - anyhow::bail!("apply node doesn't have an argument: {apply2:?}") - }; - - // At this point we know it's something like `foo = `. - // For a callPackage, `` would be `callPackage`, `` would be `./file` - - // Check that is a path expression - let path = if let Expr::Path(actual_path) = arg2 { - // Try to statically resolve the path and turn it into a nixpkgs-relative path - if let ResolvedPath::Within(p) = self.static_resolve_path(actual_path, relative_to) { - Some(p) - } else { - // We can't statically know an existing path inside Nixpkgs used as - None - } - } else { - // is not a path, but rather e.g. an inline expression - None - }; - - // Check that is an identifier, or an attribute path with an identifier at the end - let ident = match function2 { - Expr::Ident(ident) => { - // This means it's something like `foo = callPackage ` - ident - } - Expr::Select(select) => { - // This means it's something like `foo = self.callPackage `. - // We also end up here for e.g. `pythonPackages.callPackage`, but the - // callPackage-mocking method will take care of not triggering for this case. - - if select.default_expr().is_some() { - // Very odd case, but this would be `foo = self.callPackage or true ./test.nix {} - // (yes this is valid Nix code) - return Ok(None); - } - let Some(attrpath) = select.attrpath() else { - anyhow::bail!("select node doesn't have an attrpath: {select:?}") - }; - let Some(last) = attrpath.attrs().last() else { - // This case shouldn't be possible, it would be `foo = self. ./test.nix {}`, - // which shouldn't parse - anyhow::bail!("select node has an empty attrpath: {select:?}") - }; - if let ast::Attr::Ident(ident) = last { - ident - } else { - // Here it's something like `foo = self."callPackage" /test.nix {}` - // which we're not gonna bother with - return Ok(None); - } - } - // Any other expression we're not gonna treat as callPackage - _ => return Ok(None), - }; - - let Some(token) = ident.ident_token() else { - anyhow::bail!("ident node doesn't have a token: {ident:?}") - }; - - if token.text() == "callPackage" { - Ok(Some(CallPackageArgumentInfo { - relative_path: path, - empty_arg, - })) - } else { - Ok(None) - } - } -} - -/// The result of trying to statically resolve a Nix path expression -pub enum ResolvedPath { - /// Something like `./foo/${bar}/baz`, can't be known statically - Interpolated, - /// Something like ``, can't be known statically - SearchPath, - /// Path couldn't be resolved due to an IO error, - /// e.g. if the path doesn't exist or you don't have the right permissions - Unresolvable(std::io::Error), - /// The path is outside the given absolute path - Outside, - /// The path is within the given absolute path. - /// The `RelativePathBuf` is the relative path under the given absolute path. - Within(RelativePathBuf), -} - -impl NixFile { - /// Statically resolves a Nix path expression and checks that it's within an absolute path - /// - /// E.g. for the path expression `./bar.nix` in `./foo.nix` and an absolute path of the - /// current directory, the function returns `ResolvedPath::Within(./bar.nix)` - pub fn static_resolve_path(&self, node: ast::Path, relative_to: &Path) -> ResolvedPath { - if node.parts().count() != 1 { - // If there's more than 1 interpolated part, it's of the form `./foo/${bar}/baz`. - return ResolvedPath::Interpolated; - } - - let text = node.to_string(); - - if text.starts_with('<') { - // A search path like ``. There doesn't appear to be better way to detect - // these in rnix - return ResolvedPath::SearchPath; - } - - // Join the file's parent directory and the path expression, then resolve it - // FIXME: Expressions like `../../../../foo/bar/baz/qux` or absolute paths - // may resolve close to the original file, but may have left the relative_to. - // That should be checked more strictly - match self.parent_dir.join(Path::new(&text)).canonicalize() { - Err(resolution_error) => ResolvedPath::Unresolvable(resolution_error), - Ok(resolved) => { - // Check if it's within relative_to - match resolved.strip_prefix(relative_to) { - Err(_prefix_error) => ResolvedPath::Outside, - Ok(suffix) => ResolvedPath::Within( - RelativePathBuf::from_path(suffix).expect("a relative path"), - ), - } - } - } - } -} - -#[cfg(test)] -mod tests { - use super::*; - use crate::tests; - use indoc::indoc; - - #[test] - fn detects_attributes() -> anyhow::Result<()> { - let temp_dir = tests::tempdir()?; - let file = temp_dir.path().join("file.nix"); - let contents = indoc! {r#" - toInherit: { - foo = 1; - "bar" = 2; - ${"baz"} = 3; - "${"qux"}" = 4; - - # A - quux - # B - = - # C - 5 - # D - ; - # E - - /**/quuux/**/=/**/5/**/;/*E*/ - - inherit toInherit; - inherit (toInherit) toInherit; - } - "#}; - - std::fs::write(&file, contents)?; - - let nix_file = NixFile::new(&file)?; - - // These are builtins.unsafeGetAttrPos locations for the attributes - let cases = [ - (2, 3, Right("foo = 1;")), - (3, 3, Right(r#""bar" = 2;"#)), - (4, 3, Right(r#"${"baz"} = 3;"#)), - (5, 3, Right(r#""${"qux"}" = 4;"#)), - (8, 3, Right("quux\n # B\n =\n # C\n 5\n # D\n ;")), - (17, 7, Right("quuux/**/=/**/5/**/;")), - (19, 10, Left("inherit toInherit;")), - (20, 22, Left("inherit (toInherit) toInherit;")), - ]; - - for (line, column, expected_result) in cases { - let actual_result = nix_file - .attrpath_value_at(line, column) - .context(format!("line {line}, column {column}"))? - .map_right(|node| node.to_string()); - let owned_expected_result = expected_result - .map(|x| x.to_string()) - .map_left(|x| x.to_string()); - assert_eq!( - actual_result, owned_expected_result, - "line {line}, column {column}" - ); - } - - Ok(()) - } - - #[test] - fn detects_call_package() -> anyhow::Result<()> { - let temp_dir = tests::tempdir()?; - let file = temp_dir.path().join("file.nix"); - let contents = indoc! {r#" - self: with self; { - a.sub = null; - b = null; - c = import ./file.nix; - d = import ./file.nix { }; - e = pythonPackages.callPackage ./file.nix { }; - f = callPackage ./file.nix { }; - g = callPackage ({ }: { }) { }; - h = callPackage ./file.nix { x = 0; }; - i = callPackage ({ }: { }) (let in { }); - } - "#}; - - std::fs::write(&file, contents)?; - - let nix_file = NixFile::new(&file)?; - - let cases = [ - (2, None), - (3, None), - (4, None), - (5, None), - ( - 6, - Some(CallPackageArgumentInfo { - relative_path: Some(RelativePathBuf::from("file.nix")), - empty_arg: true, - }), - ), - ( - 7, - Some(CallPackageArgumentInfo { - relative_path: Some(RelativePathBuf::from("file.nix")), - empty_arg: true, - }), - ), - ( - 8, - Some(CallPackageArgumentInfo { - relative_path: None, - empty_arg: true, - }), - ), - ( - 9, - Some(CallPackageArgumentInfo { - relative_path: Some(RelativePathBuf::from("file.nix")), - empty_arg: false, - }), - ), - ( - 10, - Some(CallPackageArgumentInfo { - relative_path: None, - empty_arg: false, - }), - ), - ]; - - for (line, expected_result) in cases { - let (actual_result, _definition) = nix_file - .call_package_argument_info_at(line, 3, temp_dir.path()) - .context(format!("line {line}"))?; - assert_eq!(actual_result, expected_result, "line {line}"); - } - - Ok(()) - } -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs b/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs deleted file mode 100644 index 7e257c0ed5d8..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs +++ /dev/null @@ -1,425 +0,0 @@ -use crate::structure; -use crate::utils::PACKAGE_NIX_FILENAME; -use indoc::writedoc; -use relative_path::RelativePath; -use relative_path::RelativePathBuf; -use std::ffi::OsString; -use std::fmt; - -/// Any problem that can occur when checking Nixpkgs -/// All paths are relative to Nixpkgs such that the error messages can't be influenced by Nixpkgs absolute -/// location -#[derive(Clone)] -pub enum NixpkgsProblem { - ShardNonDir { - relative_shard_path: RelativePathBuf, - }, - InvalidShardName { - relative_shard_path: RelativePathBuf, - shard_name: String, - }, - PackageNonDir { - relative_package_dir: RelativePathBuf, - }, - CaseSensitiveDuplicate { - relative_shard_path: RelativePathBuf, - first: OsString, - second: OsString, - }, - InvalidPackageName { - relative_package_dir: RelativePathBuf, - package_name: String, - }, - IncorrectShard { - relative_package_dir: RelativePathBuf, - correct_relative_package_dir: RelativePathBuf, - }, - PackageNixNonExistent { - relative_package_dir: RelativePathBuf, - }, - PackageNixDir { - relative_package_dir: RelativePathBuf, - }, - UndefinedAttr { - relative_package_file: RelativePathBuf, - package_name: String, - }, - EmptyArgument { - package_name: String, - file: RelativePathBuf, - line: usize, - column: usize, - definition: String, - }, - NonToplevelCallPackage { - package_name: String, - file: RelativePathBuf, - line: usize, - column: usize, - definition: String, - }, - NonPath { - package_name: String, - file: RelativePathBuf, - line: usize, - column: usize, - definition: String, - }, - WrongCallPackagePath { - package_name: String, - file: RelativePathBuf, - line: usize, - actual_path: RelativePathBuf, - expected_path: RelativePathBuf, - }, - NonSyntacticCallPackage { - package_name: String, - file: RelativePathBuf, - line: usize, - column: usize, - definition: String, - }, - NonDerivation { - relative_package_file: RelativePathBuf, - package_name: String, - }, - OutsideSymlink { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - }, - UnresolvableSymlink { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - io_error: String, - }, - PathInterpolation { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - line: usize, - text: String, - }, - SearchPath { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - line: usize, - text: String, - }, - OutsidePathReference { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - line: usize, - text: String, - }, - UnresolvablePathReference { - relative_package_dir: RelativePathBuf, - subpath: RelativePathBuf, - line: usize, - text: String, - io_error: String, - }, - MovedOutOfByNameEmptyArg { - package_name: String, - call_package_path: Option, - file: RelativePathBuf, - }, - MovedOutOfByNameNonEmptyArg { - package_name: String, - call_package_path: Option, - file: RelativePathBuf, - }, - NewPackageNotUsingByNameEmptyArg { - package_name: String, - call_package_path: Option, - file: RelativePathBuf, - }, - NewPackageNotUsingByNameNonEmptyArg { - package_name: String, - call_package_path: Option, - file: RelativePathBuf, - }, - InternalCallPackageUsed { - attr_name: String, - }, - CannotDetermineAttributeLocation { - attr_name: String, - }, -} - -impl fmt::Display for NixpkgsProblem { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - match self { - NixpkgsProblem::ShardNonDir { relative_shard_path } => - write!( - f, - "{relative_shard_path}: This is a file, but it should be a directory.", - ), - NixpkgsProblem::InvalidShardName { relative_shard_path, shard_name } => - write!( - f, - "{relative_shard_path}: Invalid directory name \"{shard_name}\", must be at most 2 ASCII characters consisting of a-z, 0-9, \"-\" or \"_\".", - ), - NixpkgsProblem::PackageNonDir { relative_package_dir } => - write!( - f, - "{relative_package_dir}: This path is a file, but it should be a directory.", - ), - NixpkgsProblem::CaseSensitiveDuplicate { relative_shard_path, first, second } => - write!( - f, - "{relative_shard_path}: Duplicate case-sensitive package directories {first:?} and {second:?}.", - ), - NixpkgsProblem::InvalidPackageName { relative_package_dir, package_name } => - write!( - f, - "{relative_package_dir}: Invalid package directory name \"{package_name}\", must be ASCII characters consisting of a-z, A-Z, 0-9, \"-\" or \"_\".", - ), - NixpkgsProblem::IncorrectShard { relative_package_dir, correct_relative_package_dir } => - write!( - f, - "{relative_package_dir}: Incorrect directory location, should be {correct_relative_package_dir} instead.", - ), - NixpkgsProblem::PackageNixNonExistent { relative_package_dir } => - write!( - f, - "{relative_package_dir}: Missing required \"{PACKAGE_NIX_FILENAME}\" file.", - ), - NixpkgsProblem::PackageNixDir { relative_package_dir } => - write!( - f, - "{relative_package_dir}: \"{PACKAGE_NIX_FILENAME}\" must be a file.", - ), - NixpkgsProblem::UndefinedAttr { relative_package_file, package_name } => - write!( - f, - "pkgs.{package_name}: This attribute is not defined but it should be defined automatically as {relative_package_file}", - ), - NixpkgsProblem::EmptyArgument { package_name, file, line, column, definition } => { - let relative_package_dir = structure::relative_dir_for_package(package_name); - let relative_package_file = structure::relative_file_for_package(package_name); - let indented_definition = indent_definition(*column, definition.clone()); - writedoc!( - f, - " - - Because {relative_package_dir} exists, the attribute `pkgs.{package_name}` must be defined like - - {package_name} = callPackage ./{relative_package_file} {{ /* ... */ }}; - - However, in this PR, the second argument is empty. See the definition in {file}:{line}: - - {indented_definition} - - Such a definition is provided automatically and therefore not necessary. Please remove it. - ", - ) - } - NixpkgsProblem::NonToplevelCallPackage { package_name, file, line, column, definition } => { - let relative_package_dir = structure::relative_dir_for_package(package_name); - let relative_package_file = structure::relative_file_for_package(package_name); - let indented_definition = indent_definition(*column, definition.clone()); - writedoc!( - f, - " - - Because {relative_package_dir} exists, the attribute `pkgs.{package_name}` must be defined like - - {package_name} = callPackage ./{relative_package_file} {{ /* ... */ }}; - - However, in this PR, a different `callPackage` is used. See the definition in {file}:{line}: - - {indented_definition} - ", - ) - } - NixpkgsProblem::NonPath { package_name, file, line, column, definition } => { - let relative_package_dir = structure::relative_dir_for_package(package_name); - let relative_package_file = structure::relative_file_for_package(package_name); - let indented_definition = indent_definition(*column, definition.clone()); - writedoc!( - f, - " - - Because {relative_package_dir} exists, the attribute `pkgs.{package_name}` must be defined like - - {package_name} = callPackage ./{relative_package_file} {{ /* ... */ }}; - - However, in this PR, the first `callPackage` argument is not a path. See the definition in {file}:{line}: - - {indented_definition} - ", - ) - } - NixpkgsProblem::WrongCallPackagePath { package_name, file, line, actual_path, expected_path } => { - let relative_package_dir = structure::relative_dir_for_package(package_name); - let expected_path_expr = create_path_expr(file, expected_path); - let actual_path_expr = create_path_expr(file, actual_path); - writedoc! { - f, - " - - Because {relative_package_dir} exists, the attribute `pkgs.{package_name}` must be defined like - - {package_name} = callPackage {expected_path_expr} {{ /* ... */ }}; - - However, in this PR, the first `callPackage` argument is the wrong path. See the definition in {file}:{line}: - - {package_name} = callPackage {actual_path_expr} {{ /* ... */ }}; - ", - } - } - NixpkgsProblem::NonSyntacticCallPackage { package_name, file, line, column, definition } => { - let relative_package_dir = structure::relative_dir_for_package(package_name); - let relative_package_file = structure::relative_file_for_package(package_name); - let indented_definition = indent_definition(*column, definition.clone()); - writedoc!( - f, - " - - Because {relative_package_dir} exists, the attribute `pkgs.{package_name}` must be defined like - - {package_name} = callPackage ./{relative_package_file} {{ /* ... */ }}; - - However, in this PR, it isn't defined that way. See the definition in {file}:{line} - - {indented_definition} - ", - ) - } - NixpkgsProblem::NonDerivation { relative_package_file, package_name } => - write!( - f, - "pkgs.{package_name}: This attribute defined by {relative_package_file} is not a derivation", - ), - NixpkgsProblem::OutsideSymlink { relative_package_dir, subpath } => - write!( - f, - "{relative_package_dir}: Path {subpath} is a symlink pointing to a path outside the directory of that package.", - ), - NixpkgsProblem::UnresolvableSymlink { relative_package_dir, subpath, io_error } => - write!( - f, - "{relative_package_dir}: Path {subpath} is a symlink which cannot be resolved: {io_error}.", - ), - NixpkgsProblem::PathInterpolation { relative_package_dir, subpath, line, text } => - write!( - f, - "{relative_package_dir}: File {subpath} at line {line} contains the path expression \"{text}\", which is not yet supported and may point outside the directory of that package.", - ), - NixpkgsProblem::SearchPath { relative_package_dir, subpath, line, text } => - write!( - f, - "{relative_package_dir}: File {subpath} at line {line} contains the nix search path expression \"{text}\" which may point outside the directory of that package.", - ), - NixpkgsProblem::OutsidePathReference { relative_package_dir, subpath, line, text } => - write!( - f, - "{relative_package_dir}: File {subpath} at line {line} contains the path expression \"{text}\" which may point outside the directory of that package.", - ), - NixpkgsProblem::UnresolvablePathReference { relative_package_dir, subpath, line, text, io_error } => - write!( - f, - "{relative_package_dir}: File {subpath} at line {line} contains the path expression \"{text}\" which cannot be resolved: {io_error}.", - ), - NixpkgsProblem::MovedOutOfByNameEmptyArg { package_name, call_package_path, file } => { - let call_package_arg = - if let Some(path) = &call_package_path { - format!("./{path}") - } else { - "...".into() - }; - let relative_package_file = structure::relative_file_for_package(package_name); - writedoc!( - f, - " - - Attribute `pkgs.{package_name}` was previously defined in {relative_package_file}, but is now manually defined as `callPackage {call_package_arg} {{ /* ... */ }}` in {file}. - Please move the package back and remove the manual `callPackage`. - ", - ) - }, - NixpkgsProblem::MovedOutOfByNameNonEmptyArg { package_name, call_package_path, file } => { - let call_package_arg = - if let Some(path) = &call_package_path { - format!("./{}", path) - } else { - "...".into() - }; - let relative_package_file = structure::relative_file_for_package(package_name); - // This can happen if users mistakenly assume that for custom arguments, - // pkgs/by-name can't be used. - writedoc!( - f, - " - - Attribute `pkgs.{package_name}` was previously defined in {relative_package_file}, but is now manually defined as `callPackage {call_package_arg} {{ ... }}` in {file}. - While the manual `callPackage` is still needed, it's not necessary to move the package files. - ", - ) - }, - NixpkgsProblem::NewPackageNotUsingByNameEmptyArg { package_name, call_package_path, file } => { - let call_package_arg = - if let Some(path) = &call_package_path { - format!("./{}", path) - } else { - "...".into() - }; - let relative_package_file = structure::relative_file_for_package(package_name); - writedoc!( - f, - " - - Attribute `pkgs.{package_name}` is a new top-level package using `pkgs.callPackage {call_package_arg} {{ /* ... */ }}`. - Please define it in {relative_package_file} instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is `{{ }}`, no manual `callPackage` in {file} is needed anymore. - ", - ) - }, - NixpkgsProblem::NewPackageNotUsingByNameNonEmptyArg { package_name, call_package_path, file } => { - let call_package_arg = - if let Some(path) = &call_package_path { - format!("./{}", path) - } else { - "...".into() - }; - let relative_package_file = structure::relative_file_for_package(package_name); - writedoc!( - f, - " - - Attribute `pkgs.{package_name}` is a new top-level package using `pkgs.callPackage {call_package_arg} {{ /* ... */ }}`. - Please define it in {relative_package_file} instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is not `{{ }}`, the manual `callPackage` in {file} is still needed. - ", - ) - }, - NixpkgsProblem::InternalCallPackageUsed { attr_name } => - write!( - f, - "pkgs.{attr_name}: This attribute is defined using `_internalCallByNamePackageFile`, which is an internal function not intended for manual use.", - ), - NixpkgsProblem::CannotDetermineAttributeLocation { attr_name } => - write!( - f, - "pkgs.{attr_name}: Cannot determine the location of this attribute using `builtins.unsafeGetAttrPos`.", - ), - } - } -} - -fn indent_definition(column: usize, definition: String) -> String { - // The entire code should be indented 4 spaces - textwrap::indent( - // But first we want to strip the code's natural indentation - &textwrap::dedent( - // The definition _doesn't_ include the leading spaces, but we can - // recover those from the column - &format!("{}{definition}", " ".repeat(column - 1)), - ), - " ", - ) -} - -/// Creates a Nix path expression that when put into Nix file `from_file`, would point to the `to_file`. -fn create_path_expr( - from_file: impl AsRef, - to_file: impl AsRef, -) -> String { - // This `expect` calls should never trigger because we only call this function with files. - // That's why we `expect` them! - let from = from_file.as_ref().parent().expect("a parent for this path"); - let rel = from.relative(to_file); - format!("./{rel}") -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/ratchet.rs b/pkgs/test/nixpkgs-check-by-name/src/ratchet.rs deleted file mode 100644 index 8136d641c351..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/ratchet.rs +++ /dev/null @@ -1,184 +0,0 @@ -//! This module implements the ratchet checks, see ../README.md#ratchet-checks -//! -//! Each type has a `compare` method that validates the ratchet checks for that item. - -use crate::nix_file::CallPackageArgumentInfo; -use crate::nixpkgs_problem::NixpkgsProblem; -use crate::validation::{self, Validation, Validation::Success}; -use relative_path::RelativePathBuf; -use std::collections::HashMap; - -/// The ratchet value for the entirety of Nixpkgs. -#[derive(Default)] -pub struct Nixpkgs { - /// Sorted list of packages in package_map - pub package_names: Vec, - /// The ratchet values for all packages - pub package_map: HashMap, -} - -impl Nixpkgs { - /// Validates the ratchet checks for Nixpkgs - pub fn compare(from: Self, to: Self) -> Validation<()> { - validation::sequence_( - // We only loop over the current attributes, - // we don't need to check ones that were removed - to.package_names.into_iter().map(|name| { - Package::compare(&name, from.package_map.get(&name), &to.package_map[&name]) - }), - ) - } -} - -/// The ratchet value for a top-level package -pub struct Package { - /// The ratchet value for the check for non-auto-called empty arguments - pub manual_definition: RatchetState, - - /// The ratchet value for the check for new packages using pkgs/by-name - pub uses_by_name: RatchetState, -} - -impl Package { - /// Validates the ratchet checks for a top-level package - pub fn compare(name: &str, optional_from: Option<&Self>, to: &Self) -> Validation<()> { - validation::sequence_([ - RatchetState::::compare( - name, - optional_from.map(|x| &x.manual_definition), - &to.manual_definition, - ), - RatchetState::::compare( - name, - optional_from.map(|x| &x.uses_by_name), - &to.uses_by_name, - ), - ]) - } -} - -/// The ratchet state of a generic ratchet check. -pub enum RatchetState { - /// The ratchet is loose, it can be tightened more. - /// In other words, this is the legacy state we're trying to move away from. - /// Introducing new instances is not allowed but previous instances will continue to be allowed. - /// The `Context` is context for error messages in case a new instance of this state is - /// introduced - Loose(Ratchet::ToContext), - /// The ratchet is tight, it can't be tightened any further. - /// This is either because we already use the latest state, or because the ratchet isn't - /// relevant. - Tight, - /// This ratchet can't be applied. - /// State transitions from/to NonApplicable are always allowed - NonApplicable, -} - -/// A trait that can convert an attribute-specific error context into a NixpkgsProblem -pub trait ToNixpkgsProblem { - /// Context relating to the Nixpkgs that is being transitioned _to_ - type ToContext; - - /// How to convert an attribute-specific error context into a NixpkgsProblem - fn to_nixpkgs_problem( - name: &str, - optional_from: Option<()>, - to: &Self::ToContext, - ) -> NixpkgsProblem; -} - -impl RatchetState { - /// Compare the previous ratchet state of an attribute to the new state. - /// The previous state may be `None` in case the attribute is new. - fn compare(name: &str, optional_from: Option<&Self>, to: &Self) -> Validation<()> { - match (optional_from, to) { - // Loosening a ratchet is now allowed - (Some(RatchetState::Tight), RatchetState::Loose(loose_context)) => { - Context::to_nixpkgs_problem(name, Some(()), loose_context).into() - } - - // Introducing a loose ratchet is also not allowed - (None, RatchetState::Loose(loose_context)) => { - Context::to_nixpkgs_problem(name, None, loose_context).into() - } - - // Everything else is allowed, including: - // - Loose -> Loose (grandfathering policy for a loose ratchet) - // - -> Tight (always okay to keep or make the ratchet tight) - // - Anything involving NotApplicable, where we can't really make any good calls - _ => Success(()), - } - } -} - -/// The ratchet to check whether a top-level attribute has/needs -/// a manual definition, e.g. in all-packages.nix. -/// -/// This ratchet is only tight for attributes that: -/// - Are not defined in `pkgs/by-name`, and rely on a manual definition -/// - Are defined in `pkgs/by-name` without any manual definition, -/// (no custom argument overrides) -/// - Are defined with `pkgs/by-name` with a manual definition that can't be removed -/// because it provides custom argument overrides -/// -/// In comparison, this ratchet is loose for attributes that: -/// - Are defined in `pkgs/by-name` with a manual definition -/// that doesn't have any custom argument overrides -pub enum ManualDefinition {} - -impl ToNixpkgsProblem for ManualDefinition { - type ToContext = NixpkgsProblem; - - fn to_nixpkgs_problem( - _name: &str, - _optional_from: Option<()>, - to: &Self::ToContext, - ) -> NixpkgsProblem { - (*to).clone() - } -} - -/// The ratchet value of an attribute -/// for the check that new packages use pkgs/by-name -/// -/// This checks that all new package defined using callPackage must be defined via pkgs/by-name -/// It also checks that once a package uses pkgs/by-name, it can't switch back to all-packages.nix -pub enum UsesByName {} - -impl ToNixpkgsProblem for UsesByName { - type ToContext = (CallPackageArgumentInfo, RelativePathBuf); - - fn to_nixpkgs_problem( - name: &str, - optional_from: Option<()>, - (to, file): &Self::ToContext, - ) -> NixpkgsProblem { - if let Some(()) = optional_from { - if to.empty_arg { - NixpkgsProblem::MovedOutOfByNameEmptyArg { - package_name: name.to_owned(), - call_package_path: to.relative_path.clone(), - file: file.to_owned(), - } - } else { - NixpkgsProblem::MovedOutOfByNameNonEmptyArg { - package_name: name.to_owned(), - call_package_path: to.relative_path.clone(), - file: file.to_owned(), - } - } - } else if to.empty_arg { - NixpkgsProblem::NewPackageNotUsingByNameEmptyArg { - package_name: name.to_owned(), - call_package_path: to.relative_path.clone(), - file: file.to_owned(), - } - } else { - NixpkgsProblem::NewPackageNotUsingByNameNonEmptyArg { - package_name: name.to_owned(), - call_package_path: to.relative_path.clone(), - file: file.to_owned(), - } - } - } -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/references.rs b/pkgs/test/nixpkgs-check-by-name/src/references.rs deleted file mode 100644 index e2319163ccc6..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/references.rs +++ /dev/null @@ -1,176 +0,0 @@ -use crate::nixpkgs_problem::NixpkgsProblem; -use crate::utils; -use crate::validation::{self, ResultIteratorExt, Validation::Success}; -use crate::NixFileStore; -use relative_path::RelativePath; - -use anyhow::Context; -use rowan::ast::AstNode; -use std::ffi::OsStr; -use std::path::Path; - -/// Check that every package directory in pkgs/by-name doesn't link to outside that directory. -/// Both symlinks and Nix path expressions are checked. -pub fn check_references( - nix_file_store: &mut NixFileStore, - relative_package_dir: &RelativePath, - absolute_package_dir: &Path, -) -> validation::Result<()> { - // The first subpath to check is the package directory itself, which we can represent as an - // empty path, since the absolute package directory gets prepended to this. - // We don't use `./.` to keep the error messages cleaner - // (there's no canonicalisation going on underneath) - let subpath = RelativePath::new(""); - check_path( - nix_file_store, - relative_package_dir, - absolute_package_dir, - subpath, - ) - .with_context(|| { - format!( - "While checking the references in package directory {}", - relative_package_dir - ) - }) -} - -/// Checks for a specific path to not have references outside -/// -/// The subpath is the relative path within the package directory we're currently checking. -/// A relative path so that the error messages don't get absolute paths (which are messy in CI). -/// The absolute package directory gets prepended before doing anything with it though. -fn check_path( - nix_file_store: &mut NixFileStore, - relative_package_dir: &RelativePath, - absolute_package_dir: &Path, - subpath: &RelativePath, -) -> validation::Result<()> { - let path = subpath.to_path(absolute_package_dir); - - Ok(if path.is_symlink() { - // Check whether the symlink resolves to outside the package directory - match path.canonicalize() { - Ok(target) => { - // No need to handle the case of it being inside the directory, since we scan through the - // entire directory recursively anyways - if let Err(_prefix_error) = target.strip_prefix(absolute_package_dir) { - NixpkgsProblem::OutsideSymlink { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - } - .into() - } else { - Success(()) - } - } - Err(io_error) => NixpkgsProblem::UnresolvableSymlink { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - io_error: io_error.to_string(), - } - .into(), - } - } else if path.is_dir() { - // Recursively check each entry - validation::sequence_( - utils::read_dir_sorted(&path)? - .into_iter() - .map(|entry| { - check_path( - nix_file_store, - relative_package_dir, - absolute_package_dir, - // TODO: The relative_path crate doesn't seem to support OsStr - &subpath.join(entry.file_name().to_string_lossy().to_string()), - ) - }) - .collect_vec() - .with_context(|| format!("Error while recursing into {}", subpath))?, - ) - } else if path.is_file() { - // Only check Nix files - if let Some(ext) = path.extension() { - if ext == OsStr::new("nix") { - check_nix_file( - nix_file_store, - relative_package_dir, - absolute_package_dir, - subpath, - ) - .with_context(|| format!("Error while checking Nix file {}", subpath))? - } else { - Success(()) - } - } else { - Success(()) - } - } else { - // This should never happen, git doesn't support other file types - anyhow::bail!("Unsupported file type for path {}", subpath); - }) -} - -/// Check whether a nix file contains path expression references pointing outside the package -/// directory -fn check_nix_file( - nix_file_store: &mut NixFileStore, - relative_package_dir: &RelativePath, - absolute_package_dir: &Path, - subpath: &RelativePath, -) -> validation::Result<()> { - let path = subpath.to_path(absolute_package_dir); - - let nix_file = nix_file_store.get(&path)?; - - Ok(validation::sequence_( - nix_file.syntax_root.syntax().descendants().map(|node| { - let text = node.text().to_string(); - let line = nix_file.line_index.line(node.text_range().start().into()); - - // We're only interested in Path expressions - let Some(path) = rnix::ast::Path::cast(node) else { - return Success(()); - }; - - use crate::nix_file::ResolvedPath; - - match nix_file.static_resolve_path(path, absolute_package_dir) { - ResolvedPath::Interpolated => NixpkgsProblem::PathInterpolation { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - line, - text, - } - .into(), - ResolvedPath::SearchPath => NixpkgsProblem::SearchPath { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - line, - text, - } - .into(), - ResolvedPath::Outside => NixpkgsProblem::OutsidePathReference { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - line, - text, - } - .into(), - ResolvedPath::Unresolvable(e) => NixpkgsProblem::UnresolvablePathReference { - relative_package_dir: relative_package_dir.to_owned(), - subpath: subpath.to_owned(), - line, - text, - io_error: e.to_string(), - } - .into(), - ResolvedPath::Within(..) => { - // No need to handle the case of it being inside the directory, since we scan through the - // entire directory recursively anyways - Success(()) - } - } - }), - )) -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/structure.rs b/pkgs/test/nixpkgs-check-by-name/src/structure.rs deleted file mode 100644 index 09806bc3d4dc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/structure.rs +++ /dev/null @@ -1,184 +0,0 @@ -use crate::nixpkgs_problem::NixpkgsProblem; -use crate::references; -use crate::utils; -use crate::utils::{BASE_SUBPATH, PACKAGE_NIX_FILENAME}; -use crate::validation::{self, ResultIteratorExt, Validation::Success}; -use crate::NixFileStore; -use itertools::concat; -use lazy_static::lazy_static; -use regex::Regex; -use relative_path::RelativePathBuf; -use std::fs::DirEntry; -use std::path::Path; - -lazy_static! { - static ref SHARD_NAME_REGEX: Regex = Regex::new(r"^[a-z0-9_-]{1,2}$").unwrap(); - static ref PACKAGE_NAME_REGEX: Regex = Regex::new(r"^[a-zA-Z0-9_-]+$").unwrap(); -} - -// Some utility functions for the basic structure - -pub fn shard_for_package(package_name: &str) -> String { - package_name.to_lowercase().chars().take(2).collect() -} - -pub fn relative_dir_for_shard(shard_name: &str) -> RelativePathBuf { - RelativePathBuf::from(format!("{BASE_SUBPATH}/{shard_name}")) -} - -pub fn relative_dir_for_package(package_name: &str) -> RelativePathBuf { - relative_dir_for_shard(&shard_for_package(package_name)).join(package_name) -} - -pub fn relative_file_for_package(package_name: &str) -> RelativePathBuf { - relative_dir_for_package(package_name).join(PACKAGE_NIX_FILENAME) -} - -/// Check the structure of Nixpkgs, returning the attribute names that are defined in -/// `pkgs/by-name` -pub fn check_structure( - path: &Path, - nix_file_store: &mut NixFileStore, -) -> validation::Result> { - let base_dir = path.join(BASE_SUBPATH); - - let shard_results = utils::read_dir_sorted(&base_dir)? - .into_iter() - .map(|shard_entry| -> validation::Result<_> { - let shard_path = shard_entry.path(); - let shard_name = shard_entry.file_name().to_string_lossy().into_owned(); - let relative_shard_path = relative_dir_for_shard(&shard_name); - - Ok(if shard_name == "README.md" { - // README.md is allowed to be a file and not checked - - Success(vec![]) - } else if !shard_path.is_dir() { - NixpkgsProblem::ShardNonDir { - relative_shard_path: relative_shard_path.clone(), - } - .into() - // we can't check for any other errors if it's a file, since there's no subdirectories to check - } else { - let shard_name_valid = SHARD_NAME_REGEX.is_match(&shard_name); - let result = if !shard_name_valid { - NixpkgsProblem::InvalidShardName { - relative_shard_path: relative_shard_path.clone(), - shard_name: shard_name.clone(), - } - .into() - } else { - Success(()) - }; - - let entries = utils::read_dir_sorted(&shard_path)?; - - let duplicate_results = entries - .iter() - .zip(entries.iter().skip(1)) - .filter(|(l, r)| { - l.file_name().to_ascii_lowercase() == r.file_name().to_ascii_lowercase() - }) - .map(|(l, r)| { - NixpkgsProblem::CaseSensitiveDuplicate { - relative_shard_path: relative_shard_path.clone(), - first: l.file_name(), - second: r.file_name(), - } - .into() - }); - - let result = result.and(validation::sequence_(duplicate_results)); - - let package_results = entries - .into_iter() - .map(|package_entry| { - check_package( - nix_file_store, - path, - &shard_name, - shard_name_valid, - package_entry, - ) - }) - .collect_vec()?; - - result.and(validation::sequence(package_results)) - }) - }) - .collect_vec()?; - - // Combine the package names conatained within each shard into a longer list - Ok(validation::sequence(shard_results).map(concat)) -} - -fn check_package( - nix_file_store: &mut NixFileStore, - path: &Path, - shard_name: &str, - shard_name_valid: bool, - package_entry: DirEntry, -) -> validation::Result { - let package_path = package_entry.path(); - let package_name = package_entry.file_name().to_string_lossy().into_owned(); - let relative_package_dir = - RelativePathBuf::from(format!("{BASE_SUBPATH}/{shard_name}/{package_name}")); - - Ok(if !package_path.is_dir() { - NixpkgsProblem::PackageNonDir { - relative_package_dir: relative_package_dir.clone(), - } - .into() - } else { - let package_name_valid = PACKAGE_NAME_REGEX.is_match(&package_name); - let result = if !package_name_valid { - NixpkgsProblem::InvalidPackageName { - relative_package_dir: relative_package_dir.clone(), - package_name: package_name.clone(), - } - .into() - } else { - Success(()) - }; - - let correct_relative_package_dir = relative_dir_for_package(&package_name); - let result = result.and(if relative_package_dir != correct_relative_package_dir { - // Only show this error if we have a valid shard and package name - // Because if one of those is wrong, you should fix that first - if shard_name_valid && package_name_valid { - NixpkgsProblem::IncorrectShard { - relative_package_dir: relative_package_dir.clone(), - correct_relative_package_dir: correct_relative_package_dir.clone(), - } - .into() - } else { - Success(()) - } - } else { - Success(()) - }); - - let package_nix_path = package_path.join(PACKAGE_NIX_FILENAME); - let result = result.and(if !package_nix_path.exists() { - NixpkgsProblem::PackageNixNonExistent { - relative_package_dir: relative_package_dir.clone(), - } - .into() - } else if package_nix_path.is_dir() { - NixpkgsProblem::PackageNixDir { - relative_package_dir: relative_package_dir.clone(), - } - .into() - } else { - Success(()) - }); - - let result = result.and(references::check_references( - nix_file_store, - &relative_package_dir, - &relative_package_dir.to_path(path), - )?); - - result.map(|_| package_name.clone()) - }) -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/utils.rs b/pkgs/test/nixpkgs-check-by-name/src/utils.rs deleted file mode 100644 index 9a5d12748918..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/utils.rs +++ /dev/null @@ -1,95 +0,0 @@ -use anyhow::Context; -use std::fs; -use std::io; -use std::path::Path; - -pub const BASE_SUBPATH: &str = "pkgs/by-name"; -pub const PACKAGE_NIX_FILENAME: &str = "package.nix"; - -/// Deterministic file listing so that tests are reproducible -pub fn read_dir_sorted(base_dir: &Path) -> anyhow::Result> { - let listing = base_dir - .read_dir() - .with_context(|| format!("Could not list directory {}", base_dir.display()))?; - let mut shard_entries = listing - .collect::>>() - .with_context(|| format!("Could not list directory {}", base_dir.display()))?; - shard_entries.sort_by_key(|entry| entry.file_name()); - Ok(shard_entries) -} - -/// A simple utility for calculating the line for a string offset. -/// This doesn't do any Unicode handling, though that probably doesn't matter -/// because newlines can't split up Unicode characters. Also this is only used -/// for error reporting -pub struct LineIndex { - /// Stores the indices of newlines - newlines: Vec, -} - -impl LineIndex { - pub fn new(s: &str) -> LineIndex { - let mut newlines = vec![]; - let mut index = 0; - // Iterates over all newline-split parts of the string, adding the index of the newline to - // the vec - for split in s.split_inclusive('\n') { - index += split.len(); - newlines.push(index - 1); - } - LineIndex { newlines } - } - - /// Returns the line number for a string index. - /// If the index points to a newline, returns the line number before the newline - pub fn line(&self, index: usize) -> usize { - match self.newlines.binary_search(&index) { - // +1 because lines are 1-indexed - Ok(x) => x + 1, - Err(x) => x + 1, - } - } - - /// Returns the string index for a line and column. - pub fn fromlinecolumn(&self, line: usize, column: usize) -> usize { - // If it's the 1th line, the column is the index - if line == 1 { - // But columns are 1-indexed - column - 1 - } else { - // For the nth line, we add the index of the (n-1)st newline to the column, - // and remove one more from the index since arrays are 0-indexed. - // Then add the 1-indexed column to get not the newline index itself, - // but rather the index of the position on the next line - self.newlines[line - 2] + column - } - } -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn line_index() { - let line_index = LineIndex::new("a\nbc\n\ndef\n"); - - let pairs = [ - (0, 1, 1), - (1, 1, 2), - (2, 2, 1), - (3, 2, 2), - (4, 2, 3), - (5, 3, 1), - (6, 4, 1), - (7, 4, 2), - (8, 4, 3), - (9, 4, 4), - ]; - - for (index, line, column) in pairs { - assert_eq!(line_index.line(index), line); - assert_eq!(line_index.fromlinecolumn(line, column), index); - } - } -} diff --git a/pkgs/test/nixpkgs-check-by-name/src/validation.rs b/pkgs/test/nixpkgs-check-by-name/src/validation.rs deleted file mode 100644 index b14bfb92eb2e..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/src/validation.rs +++ /dev/null @@ -1,111 +0,0 @@ -use crate::nixpkgs_problem::NixpkgsProblem; -use itertools::concat; -use itertools::{ - Either::{Left, Right}, - Itertools, -}; -use Validation::*; - -/// The validation result of a check. -/// Instead of exiting at the first failure, -/// this type can accumulate multiple failures. -/// This can be achieved using the functions `and`, `sequence` and `sequence_` -/// -/// This leans on https://hackage.haskell.org/package/validation -pub enum Validation { - Failure(Vec), - Success(A), -} - -impl From for Validation { - /// Create a `Validation` from a single check problem - fn from(value: NixpkgsProblem) -> Self { - Failure(vec![value]) - } -} - -/// A type alias representing the result of a check, either: -/// - Err(anyhow::Error): A fatal failure, typically I/O errors. -/// Such failures are not caused by the files in Nixpkgs. -/// This hints at a bug in the code or a problem with the deployment. -/// - Ok(Failure(Vec)): A non-fatal validation problem with the Nixpkgs files. -/// Further checks can be run even with this result type. -/// Such problems can be fixed by changing the Nixpkgs files. -/// - Ok(Success(A)): A successful (potentially intermediate) result with an arbitrary value. -/// No fatal errors have occurred and no validation problems have been found with Nixpkgs. -pub type Result = anyhow::Result>; - -pub trait ResultIteratorExt: Sized + Iterator> { - fn collect_vec(self) -> std::result::Result, E>; -} - -impl ResultIteratorExt for I -where - I: Sized + Iterator>, -{ - /// A convenience version of `collect` specialised to a vector - fn collect_vec(self) -> std::result::Result, E> { - self.collect() - } -} - -impl Validation { - /// Map a `Validation` to a `Validation` by applying a function to the - /// potentially contained value in case of success. - pub fn map(self, f: impl FnOnce(A) -> B) -> Validation { - match self { - Failure(err) => Failure(err), - Success(value) => Success(f(value)), - } - } - - /// Map a `Validation` to a `Result` by applying a function `A -> Result` - /// only if there is a `Success` value - pub fn result_map(self, f: impl FnOnce(A) -> Result) -> Result { - match self { - Failure(err) => Ok(Failure(err)), - Success(value) => f(value), - } - } -} - -impl Validation<()> { - /// Combine two validations, both of which need to be successful for the return value to be successful. - /// The `NixpkgsProblem`s of both sides are returned concatenated. - pub fn and(self, other: Validation) -> Validation { - match (self, other) { - (Success(_), Success(right_value)) => Success(right_value), - (Failure(errors), Success(_)) => Failure(errors), - (Success(_), Failure(errors)) => Failure(errors), - (Failure(errors_l), Failure(errors_r)) => Failure(concat([errors_l, errors_r])), - } - } -} - -/// Combine many validations into a single one. -/// All given validations need to be successful in order for the returned validation to be successful, -/// in which case the returned validation value contains a `Vec` of each individual value. -/// Otherwise the `NixpkgsProblem`s of all validations are returned concatenated. -pub fn sequence(check_results: impl IntoIterator>) -> Validation> { - let (errors, values): (Vec>, Vec) = check_results - .into_iter() - .partition_map(|validation| match validation { - Failure(err) => Left(err), - Success(value) => Right(value), - }); - - // To combine the errors from the results we flatten all the error Vec's into a new Vec - // This is not very efficient, but doesn't matter because generally we should have no errors - let flattened_errors = errors.into_iter().concat(); - - if flattened_errors.is_empty() { - Success(values) - } else { - Failure(flattened_errors) - } -} - -/// Like `sequence`, but without any containing value, for convenience -pub fn sequence_(validations: impl IntoIterator>) -> Validation<()> { - sequence(validations).map(|_| ()) -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/aliases/aliases.nix b/pkgs/test/nixpkgs-check-by-name/tests/aliases/aliases.nix deleted file mode 100644 index c70ec23478ea..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/aliases/aliases.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - baz = self.foo; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/aliases/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/aliases/all-packages.nix deleted file mode 100644 index 2cdfcef08fa6..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/aliases/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - bar = self.foo; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/aliases/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/aliases/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/aliases/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/aliases/expected b/pkgs/test/nixpkgs-check-by-name/tests/aliases/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/aliases/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/aliases/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/aliases/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/aliases/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/all-packages.nix deleted file mode 100644 index 399f8eee0a18..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/all-packages.nix +++ /dev/null @@ -1,7 +0,0 @@ -self: super: { - - alt.callPackage = self.lib.callPackageWith {}; - - foo = self.alt.callPackage ({ }: self.someDrv) { }; - -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/expected b/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/expected deleted file mode 100644 index 1d92e652200e..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/fo/foo exists, the attribute `pkgs.foo` must be defined like - - foo = callPackage ./pkgs/by-name/fo/foo/package.nix { /* ... */ }; - - However, in this PR, a different `callPackage` is used. See the definition in all-packages.nix:5: - - foo = self.alt.callPackage ({ }: self.someDrv) { }; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/alt-callPackage/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/pkgs/by-name/foo b/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/base/pkgs/by-name/foo deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/expected b/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/expected deleted file mode 100644 index e209e1855314..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/expected +++ /dev/null @@ -1 +0,0 @@ -The base branch is broken, but this PR fixes it. Nice job! diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/base-fixed/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/pkgs/by-name/foo b/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/base/pkgs/by-name/foo deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/expected b/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/expected deleted file mode 100644 index c25f06b4150e..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/expected +++ /dev/null @@ -1,3 +0,0 @@ -pkgs/by-name/bar: This is a file, but it should be a directory. -The base branch is broken and still has above problems with this PR, which need to be fixed first. -Consider reverting the PR that introduced these problems in order to prevent more failures of unrelated PRs. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/pkgs/by-name/bar b/pkgs/test/nixpkgs-check-by-name/tests/base-still-broken/pkgs/by-name/bar deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/default.nix deleted file mode 100644 index bd4825f8bad8..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/default.nix +++ /dev/null @@ -1,4 +0,0 @@ -args: -builtins.removeAttrs - (import { root = ./.; } args) - [ "foo" ] diff --git a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/expected b/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/expected deleted file mode 100644 index 15b3e3ff6ede..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs.foo: This attribute is not defined but it should be defined automatically as pkgs/by-name/fo/foo/package.nix -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/broken-autocall/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/all-packages.nix deleted file mode 100644 index 306d719c9e9d..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/all-packages.nix +++ /dev/null @@ -1,7 +0,0 @@ -self: super: { - set = self.callPackages ({ callPackage }: { - foo = callPackage ({ someDrv }: someDrv) { }; - }) { }; - - inherit (self.set) foo; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/expected b/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/callPackage-syntax/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/empty-base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/empty-base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/empty-base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/empty-base/expected b/pkgs/test/nixpkgs-check-by-name/tests/empty-base/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/empty-base/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/empty-base/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/empty-base/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/expected b/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/expected deleted file mode 100644 index 3b0146cdc146..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/aa/FOO: Incorrect directory location, should be pkgs/by-name/fo/FOO instead. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/pkgs/by-name/aa/FOO/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/pkgs/by-name/aa/FOO/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/incorrect-shard/pkgs/by-name/aa/FOO/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix deleted file mode 100644 index 3fbe2d5e51dc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix +++ /dev/null @@ -1,4 +0,0 @@ -self: super: { - foo = self._internalCallByNamePackageFile ./foo.nix; - bar = self._internalCallByNamePackageFile ./foo.nix; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected deleted file mode 100644 index b3d0c6fc1a40..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs.foo: This attribute is defined using `_internalCallByNamePackageFile`, which is an internal function not intended for manual use. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/foo.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/foo.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/foo.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/expected deleted file mode 100644 index 80f6e7dd5998..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/fo@: Invalid package directory name "fo@", must be ASCII characters consisting of a-z, A-Z, 0-9, "-" or "_". -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/pkgs/by-name/fo/fo@/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/pkgs/by-name/fo/fo@/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-package-name/pkgs/by-name/fo/fo@/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/expected deleted file mode 100644 index 7ca9ff8565bd..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/A: Invalid directory name "A", must be at most 2 ASCII characters consisting of a-z, 0-9, "-" or "_". -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/.git-keep b/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/.git-keep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/invalid-shard-name/pkgs/by-name/A/A/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/all-packages.nix deleted file mode 100644 index 07b2caaab4e7..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/all-packages.nix +++ /dev/null @@ -1,10 +0,0 @@ -self: super: { - nonAttributeSet = self.callPackage ({ someDrv }: someDrv) { }; - nonCallPackage = self.callPackage ({ someDrv }: someDrv) { }; - internalCallByName = self.callPackage ({ someDrv }: someDrv) { }; - nonDerivation = self.callPackage ({ someDrv }: someDrv) { }; - - onlyMove = self.callPackage ./pkgs/by-name/on/onlyMove/package.nix { }; - - noEval = self.callPackage ./pkgs/by-name/no/noEval/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/all-packages.nix deleted file mode 100644 index 75efb5952e7a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/all-packages.nix +++ /dev/null @@ -1,9 +0,0 @@ -self: super: { - nonAttributeSet = null; - nonCallPackage = self.someDrv; - internalCallByName = self._internalCallByNamePackageFile ./some-pkg.nix; - nonDerivation = self.callPackage ({ }: { }) { }; - - onlyMove = self.callPackage ({ someDrv }: someDrv) { }; - noEval = throw "foo"; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/some-pkg.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/some-pkg.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/base/some-pkg.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/expected b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/expected deleted file mode 100644 index 4d906ec0d086..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/expected +++ /dev/null @@ -1,21 +0,0 @@ -- Because pkgs/by-name/no/noEval exists, the attribute `pkgs.noEval` must be defined like - - noEval = callPackage ./pkgs/by-name/no/noEval/package.nix { /* ... */ }; - - However, in this PR, the second argument is empty. See the definition in all-packages.nix:9: - - noEval = self.callPackage ./pkgs/by-name/no/noEval/package.nix { }; - - Such a definition is provided automatically and therefore not necessary. Please remove it. - -- Because pkgs/by-name/on/onlyMove exists, the attribute `pkgs.onlyMove` must be defined like - - onlyMove = callPackage ./pkgs/by-name/on/onlyMove/package.nix { /* ... */ }; - - However, in this PR, the second argument is empty. See the definition in all-packages.nix:7: - - onlyMove = self.callPackage ./pkgs/by-name/on/onlyMove/package.nix { }; - - Such a definition is provided automatically and therefore not necessary. Please remove it. - -This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/no/noEval/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/no/noEval/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/no/noEval/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/on/onlyMove/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/on/onlyMove/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/manual-definition/pkgs/by-name/on/onlyMove/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/expected b/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/expected deleted file mode 100644 index 1b67704817cf..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/foo: Missing required "package.nix" file. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/pkgs/by-name/fo/foo/.git-keep b/pkgs/test/nixpkgs-check-by-name/tests/missing-package-nix/pkgs/by-name/fo/foo/.git-keep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix b/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix deleted file mode 100644 index fbd51f656138..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix +++ /dev/null @@ -1,110 +0,0 @@ -/* -This file returns a mocked version of Nixpkgs' default.nix for testing purposes. -It does not depend on Nixpkgs itself for the sake of simplicity. - -It takes one attribute as an argument: -- `root`: The root of Nixpkgs to read other files from, including: - - `./pkgs/by-name`: The `pkgs/by-name` directory to test - - `./all-packages.nix`: A file containing an overlay to mirror the real `pkgs/top-level/all-packages.nix`. - This allows adding overrides on top of the auto-called packages in `pkgs/by-name`. - -It returns a Nixpkgs-like function that can be auto-called and evaluates to an attribute set. -*/ -{ - root, -}: -# The arguments for the Nixpkgs function -{ - # Passed by the checker to modify `callPackage` - overlays ? [], - # Passed by the checker to make sure a real Nixpkgs isn't influenced by impurities - config ? {}, - # Passed by the checker to make sure a real Nixpkgs isn't influenced by impurities - system ? null, -}: -let - - # Simplified versions of lib functions - lib = import ; - - # The base fixed-point function to populate the resulting attribute set - pkgsFun = - self: { - inherit lib; - newScope = extra: lib.callPackageWith (self // extra); - callPackage = self.newScope { }; - callPackages = lib.callPackagesWith self; - } - # This mapAttrs is a very hacky workaround necessary because for all attributes defined in Nixpkgs, - # the files that define them are verified to be within Nixpkgs. - # This is usually a very safe assumption, but it fails in these tests for someDrv, - # because it's technically defined outside the Nixpkgs directories of each test case. - # By using `mapAttrs`, `builtins.unsafeGetAttrPos` just returns `null`, - # which then doesn't trigger this check - // lib.mapAttrs (name: value: value) { - someDrv = { type = "derivation"; }; - }; - - baseDirectory = root + "/pkgs/by-name"; - - # Generates { = ; } entries mapping package names to their `package.nix` files in `pkgs/by-name`. - # Could be more efficient, but this is only for testing. - autoCalledPackageFiles = - let - entries = builtins.readDir baseDirectory; - - namesForShard = shard: - if entries.${shard} != "directory" then - # Only README.md is allowed to be a file, but it's not this code's job to check for that - { } - else - builtins.mapAttrs - (name: _: baseDirectory + "/${shard}/${name}/package.nix") - (builtins.readDir (baseDirectory + "/${shard}")); - - in - builtins.foldl' - (acc: el: acc // el) - { } - (map namesForShard (builtins.attrNames entries)); - - # Turns autoCalledPackageFiles into an overlay that `callPackage`'s all of them - autoCalledPackages = self: super: - { - # Needed to be able to detect empty arguments in all-packages.nix - # See a more detailed description in pkgs/top-level/by-name-overlay.nix - _internalCallByNamePackageFile = file: self.callPackage file { }; - } - // builtins.mapAttrs - (name: self._internalCallByNamePackageFile) - autoCalledPackageFiles; - - # A list optionally containing the `all-packages.nix` file from the test case as an overlay - optionalAllPackagesOverlay = - if builtins.pathExists (root + "/all-packages.nix") then - [ (import (root + "/all-packages.nix")) ] - else - [ ]; - - # A list optionally containing the `aliases.nix` file from the test case as an overlay - # But only if config.allowAliases is not false - optionalAliasesOverlay = - if (config.allowAliases or true) && builtins.pathExists (root + "/aliases.nix") then - [ (import (root + "/aliases.nix")) ] - else - [ ]; - - # All the overlays in the right order, including the user-supplied ones - allOverlays = - [ - autoCalledPackages - ] - ++ optionalAllPackagesOverlay - ++ optionalAliasesOverlay - ++ overlays; - - # Apply all the overlays in order to the base fixed-point function pkgsFun - f = builtins.foldl' (f: overlay: lib.extends overlay f) pkgsFun allOverlays; -in -# Evaluate the fixed-point -lib.fix f diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/all-packages.nix deleted file mode 100644 index 16834c4f7856..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/all-packages.nix +++ /dev/null @@ -1,10 +0,0 @@ -self: super: { - foo1 = self.callPackage ({ someDrv }: someDrv) { }; - foo2 = self.callPackage ./without-config.nix { }; - foo3 = self.callPackage ({ someDrv, enableFoo }: someDrv) { - enableFoo = null; - }; - foo4 = self.callPackage ./with-config.nix { - enableFoo = null; - }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo1/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo1/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo1/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo2/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo2/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo2/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo3/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo3/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo3/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo4/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo4/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/base/pkgs/by-name/fo/foo4/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/expected deleted file mode 100644 index 123e24daab8a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/expected +++ /dev/null @@ -1,13 +0,0 @@ -- Attribute `pkgs.foo1` was previously defined in pkgs/by-name/fo/foo1/package.nix, but is now manually defined as `callPackage ... { /* ... */ }` in all-packages.nix. - Please move the package back and remove the manual `callPackage`. - -- Attribute `pkgs.foo2` was previously defined in pkgs/by-name/fo/foo2/package.nix, but is now manually defined as `callPackage ./without-config.nix { /* ... */ }` in all-packages.nix. - Please move the package back and remove the manual `callPackage`. - -- Attribute `pkgs.foo3` was previously defined in pkgs/by-name/fo/foo3/package.nix, but is now manually defined as `callPackage ... { ... }` in all-packages.nix. - While the manual `callPackage` is still needed, it's not necessary to move the package files. - -- Attribute `pkgs.foo4` was previously defined in pkgs/by-name/fo/foo4/package.nix, but is now manually defined as `callPackage ./with-config.nix { ... }` in all-packages.nix. - While the manual `callPackage` is still needed, it's not necessary to move the package files. - -This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/with-config.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/with-config.nix deleted file mode 100644 index 7cca53882ea5..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/with-config.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv, enableFoo }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/without-config.nix b/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/without-config.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/move-to-non-by-name/without-config.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/expected b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/expected deleted file mode 100644 index 0105b19078c7..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/expected +++ /dev/null @@ -1,14 +0,0 @@ -pkgs/by-name/A: Invalid directory name "A", must be at most 2 ASCII characters consisting of a-z, 0-9, "-" or "_". -pkgs/by-name/A/fo@: Invalid package directory name "fo@", must be ASCII characters consisting of a-z, A-Z, 0-9, "-" or "_". -pkgs/by-name/A/fo@: Path foo is a symlink which cannot be resolved: No such file or directory (os error 2). -pkgs/by-name/A/fo@: Path package.nix is a symlink pointing to a path outside the directory of that package. -pkgs/by-name/aa: This is a file, but it should be a directory. -pkgs/by-name/ba/bar: This path is a file, but it should be a directory. -pkgs/by-name/ba/baz: "package.nix" must be a file. -pkgs/by-name/ba/foo: Incorrect directory location, should be pkgs/by-name/fo/foo instead. -pkgs/by-name/ba/foo: File package.nix at line 2 contains the path expression "/bar" which cannot be resolved: No such file or directory (os error 2). -pkgs/by-name/ba/foo: File package.nix at line 3 contains the path expression "../." which may point outside the directory of that package. -pkgs/by-name/ba/foo: File package.nix at line 4 contains the nix search path expression "" which may point outside the directory of that package. -pkgs/by-name/ba/foo: File package.nix at line 5 contains the path expression "./${"test"}", which is not yet supported and may point outside the directory of that package. -pkgs/by-name/fo/foo: Missing required "package.nix" file. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/foo b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/foo deleted file mode 120000 index c86c3f3551ec..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/foo +++ /dev/null @@ -1 +0,0 @@ -none \ No newline at end of file diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/package.nix deleted file mode 120000 index f079163d158a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/A/fo@/package.nix +++ /dev/null @@ -1 +0,0 @@ -../../../../someDrv.nix \ No newline at end of file diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/aa b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/aa deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/bar b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/bar deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/baz/package.nix/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/baz/package.nix/default.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/baz/package.nix/default.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/foo/package.nix deleted file mode 100644 index 31b4742f5914..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/ba/foo/package.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ someDrv }: someDrv // { - escapeAbsolute = /bar; - escapeRelative = ../.; - nixPath = ; - pathWithSubexpr = ./${"test"}; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/fo/foo/.git-keep b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/pkgs/by-name/fo/foo/.git-keep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/someDrv.nix b/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/someDrv.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/multiple-failures/someDrv.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/all-packages.nix deleted file mode 100644 index 069119ad4c7b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/all-packages.nix +++ /dev/null @@ -1,11 +0,0 @@ -self: super: { - before = self.callPackage ({ someDrv }: someDrv) { }; - new1 = self.callPackage ({ someDrv }: someDrv) { }; - new2 = self.callPackage ./without-config.nix { }; - new3 = self.callPackage ({ someDrv, enableNew }: someDrv) { - enableNew = null; - }; - new4 = self.callPackage ./with-config.nix { - enableNew = null; - }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/all-packages.nix deleted file mode 100644 index c2665d04d5f2..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/all-packages.nix +++ /dev/null @@ -1,5 +0,0 @@ -self: super: { - - before = self.callPackage ({ someDrv }: someDrv) { }; - -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/base/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/expected deleted file mode 100644 index 92668a231b48..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/expected +++ /dev/null @@ -1,21 +0,0 @@ -- Attribute `pkgs.new1` is a new top-level package using `pkgs.callPackage ... { /* ... */ }`. - Please define it in pkgs/by-name/ne/new1/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is `{ }`, no manual `callPackage` in all-packages.nix is needed anymore. - -- Attribute `pkgs.new2` is a new top-level package using `pkgs.callPackage ./without-config.nix { /* ... */ }`. - Please define it in pkgs/by-name/ne/new2/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is `{ }`, no manual `callPackage` in all-packages.nix is needed anymore. - -- Attribute `pkgs.new3` is a new top-level package using `pkgs.callPackage ... { /* ... */ }`. - Please define it in pkgs/by-name/ne/new3/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is not `{ }`, the manual `callPackage` in all-packages.nix is still needed. - -- Attribute `pkgs.new4` is a new top-level package using `pkgs.callPackage ./with-config.nix { /* ... */ }`. - Please define it in pkgs/by-name/ne/new4/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is not `{ }`, the manual `callPackage` in all-packages.nix is still needed. - -This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/with-config.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/with-config.nix deleted file mode 100644 index 65bcbf9928a2..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/with-config.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv, enableNew }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/without-config.nix b/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/without-config.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/new-package-non-by-name/without-config.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-by-name/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/all-packages.nix deleted file mode 100644 index 38762c6de1cc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/all-packages.nix +++ /dev/null @@ -1,5 +0,0 @@ -self: super: { - iDontEval = throw "I don't eval"; - - futureEval = self.callPackage ({ someDrv }: someDrv) { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/all-packages.nix deleted file mode 100644 index ac763b454eb0..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - futureEval = throw "foo"; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/base/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/expected b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/no-eval/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/no-eval/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/expected b/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/expected deleted file mode 100644 index 1705d22be798..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs.nonDerivation: This attribute defined by pkgs/by-name/no/nonDerivation/package.nix is not a derivation -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index bd68dba1ded5..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-attrs/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ }: null diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/expected b/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/expected deleted file mode 100644 index 1705d22be798..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs.nonDerivation: This attribute defined by pkgs/by-name/no/nonDerivation/package.nix is not a derivation -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index b021e28c2145..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-derivation/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ }: { } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix deleted file mode 100644 index 3e0ea20c2281..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix +++ /dev/null @@ -1,6 +0,0 @@ -self: super: { - - bar = (x: x) self.callPackage ./pkgs/by-name/fo/foo/package.nix { someFlag = true; }; - foo = self.bar; - -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected deleted file mode 100644 index e09e931bb658..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/fo/foo exists, the attribute `pkgs.foo` must be defined like - - foo = callPackage ./pkgs/by-name/fo/foo/package.nix { /* ... */ }; - - However, in this PR, it isn't defined that way. See the definition in all-packages.nix:4 - - foo = self.bar; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index 5ad6ea5e24d6..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv, someFlag }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/one-letter/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/expected b/pkgs/test/nixpkgs-check-by-name/tests/one-letter/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/pkgs/by-name/a/a/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/one-letter/pkgs/by-name/a/a/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/one-letter/pkgs/by-name/a/a/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix deleted file mode 100644 index 5b1ed9d2ccda..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix +++ /dev/null @@ -1,16 +0,0 @@ -self: super: { - alternateCallPackage = self.myScope.callPackage ({ myScopeValue, someDrv }: - assert myScopeValue; - someDrv - ) { }; - - myScope = self.lib.makeScope self.newScope (self: { - myScopeValue = true; - }); - - myPackages = self.callPackages ({ someDrv }: { - a = someDrv; - b = someDrv; - }) { }; - inherit (self.myPackages) a b; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/expected b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/all-packages.nix deleted file mode 100644 index 8bedb90d89a7..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.callPackage ./someDrv.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/expected deleted file mode 100644 index 16292c0c0eb1..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/no/nonDerivation exists, the attribute `pkgs.nonDerivation` must be defined like - - nonDerivation = callPackage ./pkgs/by-name/no/nonDerivation/package.nix { /* ... */ }; - - However, in this PR, the first `callPackage` argument is the wrong path. See the definition in all-packages.nix:2: - - nonDerivation = callPackage ./someDrv.nix { /* ... */ }; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index bd68dba1ded5..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ }: null diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/someDrv.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/someDrv.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-different-file/someDrv.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/all-packages.nix deleted file mode 100644 index d369dd7228dc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.callPackage ./pkgs/by-name/no/nonDerivation/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/all-packages.nix deleted file mode 100644 index d369dd7228dc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.callPackage ./pkgs/by-name/no/nonDerivation/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/base/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg-gradual/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/all-packages.nix deleted file mode 100644 index d369dd7228dc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.callPackage ./pkgs/by-name/no/nonDerivation/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/base/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/expected deleted file mode 100644 index f3306aadbbb7..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/expected +++ /dev/null @@ -1,11 +0,0 @@ -- Because pkgs/by-name/no/nonDerivation exists, the attribute `pkgs.nonDerivation` must be defined like - - nonDerivation = callPackage ./pkgs/by-name/no/nonDerivation/package.nix { /* ... */ }; - - However, in this PR, the second argument is empty. See the definition in all-packages.nix:2: - - nonDerivation = self.callPackage ./pkgs/by-name/no/nonDerivation/package.nix { }; - - Such a definition is provided automatically and therefore not necessary. Please remove it. - -This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-empty-arg/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/all-packages.nix deleted file mode 100644 index 853c3a87db56..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.someDrv; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/expected deleted file mode 100644 index d91d58d629f2..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/no/nonDerivation exists, the attribute `pkgs.nonDerivation` must be defined like - - nonDerivation = callPackage ./pkgs/by-name/no/nonDerivation/package.nix { /* ... */ }; - - However, in this PR, it isn't defined that way. See the definition in all-packages.nix:2 - - nonDerivation = self.someDrv; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index bd68dba1ded5..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-call-package/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ }: null diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/all-packages.nix deleted file mode 100644 index dc07f69b40ee..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - nonDerivation = self.callPackage ({ someDrv }: someDrv) { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/expected deleted file mode 100644 index 807c440dd3d2..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/no/nonDerivation exists, the attribute `pkgs.nonDerivation` must be defined like - - nonDerivation = callPackage ./pkgs/by-name/no/nonDerivation/package.nix { /* ... */ }; - - However, in this PR, the first `callPackage` argument is not a path. See the definition in all-packages.nix:2: - - nonDerivation = self.callPackage ({ someDrv }: someDrv) { }; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/pkgs/by-name/no/nonDerivation/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/pkgs/by-name/no/nonDerivation/package.nix deleted file mode 100644 index bd68dba1ded5..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-no-file/pkgs/by-name/no/nonDerivation/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ }: null diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/all-packages.nix deleted file mode 100644 index f07e7a42744a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/all-packages.nix +++ /dev/null @@ -1,5 +0,0 @@ -self: super: { - - foo = self.callPackage ({ someDrv, someFlag }: someDrv) { someFlag = true; }; - -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/expected deleted file mode 100644 index 4adbaf66edc0..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/expected +++ /dev/null @@ -1,9 +0,0 @@ -- Because pkgs/by-name/fo/foo exists, the attribute `pkgs.foo` must be defined like - - foo = callPackage ./pkgs/by-name/fo/foo/package.nix { /* ... */ }; - - However, in this PR, the first `callPackage` argument is not a path. See the definition in all-packages.nix:3: - - foo = self.callPackage ({ someDrv, someFlag }: someDrv) { someFlag = true; }; - -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-non-path/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-success/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-success/all-packages.nix deleted file mode 100644 index 6b323756ae41..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-success/all-packages.nix +++ /dev/null @@ -1,5 +0,0 @@ -self: super: { - foo = self.callPackage ./pkgs/by-name/fo/foo/package.nix { - enableBar = true; - }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-success/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-success/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-success/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-success/expected b/pkgs/test/nixpkgs-check-by-name/tests/override-success/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-success/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/override-success/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/override-success/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index c811a7215a28..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/override-success/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ - someDrv, - enableBar ? false, -}: -if enableBar then - someDrv -else - {} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/expected b/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/expected deleted file mode 100644 index adee1d0137fa..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/foo: This path is a file, but it should be a directory. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/pkgs/by-name/fo/foo b/pkgs/test/nixpkgs-check-by-name/tests/package-dir-is-file/pkgs/by-name/fo/foo deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/expected b/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/expected deleted file mode 100644 index d03e1eceea26..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/foo: "package.nix" must be a file. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/pkgs/by-name/fo/foo/package.nix/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/pkgs/by-name/fo/foo/package.nix/default.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-nix-dir/pkgs/by-name/fo/foo/package.nix/default.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/all-packages.nix deleted file mode 100644 index 85f8c6138c5c..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/all-packages.nix +++ /dev/null @@ -1,5 +0,0 @@ -self: super: { - foo-variant-unvarianted = self.callPackage ./package.nix { }; - - foo-variant-new = self.callPackage ./pkgs/by-name/fo/foo/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/all-packages.nix deleted file mode 100644 index 734604360073..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: { - foo-variant-unvarianted = self.callPackage ./pkgs/by-name/fo/foo/package.nix { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/base/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/expected b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/package-variants/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/package-variants/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/expected b/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/expected deleted file mode 100644 index 0bdb00f20cb9..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/aa/aa: File package.nix at line 2 contains the path expression "/foo" which cannot be resolved: No such file or directory (os error 2). -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/pkgs/by-name/aa/aa/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/pkgs/by-name/aa/aa/package.nix deleted file mode 100644 index 7a51ba1ec719..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-absolute/pkgs/by-name/aa/aa/package.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ someDrv }: someDrv // { - escape = /foo; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/expected b/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/expected deleted file mode 100644 index 2e4338ccc7ae..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/aa/aa: File package.nix at line 2 contains the path expression "../." which may point outside the directory of that package. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/pkgs/by-name/aa/aa/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/pkgs/by-name/aa/aa/package.nix deleted file mode 100644 index 5989f52eb899..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-escape/pkgs/by-name/aa/aa/package.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ someDrv }: someDrv // { - escape = ../.; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/expected b/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/expected deleted file mode 100644 index 30125570794a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/aa/aa: File package.nix at line 2 contains the nix search path expression "" which may point outside the directory of that package. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/pkgs/by-name/aa/aa/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/pkgs/by-name/aa/aa/package.nix deleted file mode 100644 index 864fdce13319..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-nix-path/pkgs/by-name/aa/aa/package.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ someDrv }: someDrv // { - nixPath = ; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/expected b/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/expected deleted file mode 100644 index 6567439b77f8..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/aa/aa: File package.nix at line 2 contains the path expression "./${"test"}", which is not yet supported and may point outside the directory of that package. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/pkgs/by-name/aa/aa/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/pkgs/by-name/aa/aa/package.nix deleted file mode 100644 index a94ba7541263..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-path-subexpr/pkgs/by-name/aa/aa/package.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ someDrv }: someDrv // { - pathWithSubexpr = ./${"test"}; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/expected b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/dir/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/dir/default.nix deleted file mode 100644 index 7e4a7548fec7..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/dir/default.nix +++ /dev/null @@ -1,2 +0,0 @@ -# Recursive -../package.nix diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file.nix deleted file mode 100644 index bd55e601bf64..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/file.nix +++ /dev/null @@ -1,2 +0,0 @@ -# Recursive test -import ./file.nix diff --git a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/package.nix deleted file mode 100644 index 474db5b0ebfc..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/ref-success/pkgs/by-name/aa/aa/package.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ someDrv }: someDrv // { - nixFile = ./file.nix; - nonNixFile = ./file; - directory = ./dir; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/shard-file/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/shard-file/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/shard-file/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/shard-file/expected b/pkgs/test/nixpkgs-check-by-name/tests/shard-file/expected deleted file mode 100644 index 689cee41f1e3..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/shard-file/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo: This is a file, but it should be a directory. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/shard-file/pkgs/by-name/fo b/pkgs/test/nixpkgs-check-by-name/tests/shard-file/pkgs/by-name/fo deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/all-packages.nix deleted file mode 100644 index 688f52b9358f..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/all-packages.nix +++ /dev/null @@ -1,6 +0,0 @@ -self: super: { - a = self.callPackage ./pkgs/by-name/a/a/package.nix { }; - b = self.callPackage ({ someDrv }: someDrv) { }; - c = self.callPackage ./pkgs/by-name/c/c/package.nix { }; - d = self.callPackage ({ someDrv }: someDrv) { }; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/expected b/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/expected deleted file mode 100644 index 8a8104b73720..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/expected +++ /dev/null @@ -1,31 +0,0 @@ -- Because pkgs/by-name/a/a exists, the attribute `pkgs.a` must be defined like - - a = callPackage ./pkgs/by-name/a/a/package.nix { /* ... */ }; - - However, in this PR, the second argument is empty. See the definition in all-packages.nix:2: - - a = self.callPackage ./pkgs/by-name/a/a/package.nix { }; - - Such a definition is provided automatically and therefore not necessary. Please remove it. - -- Attribute `pkgs.b` is a new top-level package using `pkgs.callPackage ... { /* ... */ }`. - Please define it in pkgs/by-name/b/b/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is `{ }`, no manual `callPackage` in all-packages.nix is needed anymore. - -- Because pkgs/by-name/c/c exists, the attribute `pkgs.c` must be defined like - - c = callPackage ./pkgs/by-name/c/c/package.nix { /* ... */ }; - - However, in this PR, the second argument is empty. See the definition in all-packages.nix:4: - - c = self.callPackage ./pkgs/by-name/c/c/package.nix { }; - - Such a definition is provided automatically and therefore not necessary. Please remove it. - -- Attribute `pkgs.d` is a new top-level package using `pkgs.callPackage ... { /* ... */ }`. - Please define it in pkgs/by-name/d/d/package.nix instead. - See `pkgs/by-name/README.md` for more details. - Since the second `callPackage` argument is `{ }`, no manual `callPackage` in all-packages.nix is needed anymore. - -This PR introduces additional instances of discouraged patterns as listed above. Merging is discouraged but would not break the base branch. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/a/a/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/a/a/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/a/a/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/c/c/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/c/c/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/sorted-order/pkgs/by-name/c/c/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/success/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/success/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/success/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/success/expected b/pkgs/test/nixpkgs-check-by-name/tests/success/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/success/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/success/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/success/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/success/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/expected b/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/expected deleted file mode 100644 index cd555c658a09..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/foo: Path package.nix is a symlink pointing to a path outside the directory of that package. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/pkgs/by-name/fo/foo/package.nix deleted file mode 120000 index f079163d158a..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -../../../../someDrv.nix \ No newline at end of file diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/someDrv.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/someDrv.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-escape/someDrv.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/expected b/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/expected deleted file mode 100644 index 1b06bcf4972b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs/by-name/fo/foo: Path foo is a symlink which cannot be resolved: No such file or directory (os error 2). -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/foo b/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/foo deleted file mode 120000 index c86c3f3551ec..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/foo +++ /dev/null @@ -1 +0,0 @@ -none \ No newline at end of file diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/someDrv.nix b/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/someDrv.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/someDrv.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix deleted file mode 100644 index 3398e974cb6b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix +++ /dev/null @@ -1,3 +0,0 @@ -self: super: builtins.mapAttrs (name: value: value) { - foo = self.someDrv; -} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected deleted file mode 100644 index 608843d93903..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected +++ /dev/null @@ -1,2 +0,0 @@ -pkgs.foo: Cannot determine the location of this attribute using `builtins.unsafeGetAttrPos`. -This PR introduces the problems listed above. Please fix them before merging, otherwise the base branch would break. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/uppercase/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/expected b/pkgs/test/nixpkgs-check-by-name/tests/uppercase/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/pkgs/by-name/fo/FOO/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/uppercase/pkgs/by-name/fo/FOO/package.nix deleted file mode 100644 index a1b92efbbadb..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/uppercase/pkgs/by-name/fo/FOO/package.nix +++ /dev/null @@ -1 +0,0 @@ -{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/with-readme/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/with-readme/default.nix deleted file mode 100644 index 861260cdca4b..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/with-readme/default.nix +++ /dev/null @@ -1 +0,0 @@ -import { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/with-readme/expected b/pkgs/test/nixpkgs-check-by-name/tests/with-readme/expected deleted file mode 100644 index defae2634c34..000000000000 --- a/pkgs/test/nixpkgs-check-by-name/tests/with-readme/expected +++ /dev/null @@ -1 +0,0 @@ -Validated successfully diff --git a/pkgs/test/nixpkgs-check-by-name/tests/with-readme/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/with-readme/pkgs/by-name/README.md deleted file mode 100644 index e69de29bb2d1..000000000000 From eac815acde7e13076fb1f45e0ef2bf888e5d34bd Mon Sep 17 00:00:00 2001 From: Felix Buehler Date: Tue, 26 Mar 2024 22:18:31 +0100 Subject: [PATCH 50/53] Revert "python3Packages.rpyc4: 4.1.5 -> 6.0.0" This reverts commit 0c41b3fcbf380800b7b956c9eedbe85748144d66. --- pkgs/development/python-modules/rpyc4/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/rpyc4/default.nix b/pkgs/development/python-modules/rpyc4/default.nix index 1c543166d38a..c883ebef4dc6 100644 --- a/pkgs/development/python-modules/rpyc4/default.nix +++ b/pkgs/development/python-modules/rpyc4/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "rpyc4"; # Pinned version for linien, see also: # https://github.com/linien-org/pyrp3/pull/10#discussion_r1302816237 - version = "6.0.0"; + version = "4.1.5"; format = "pyproject"; # Since this is an outdated version, upstream might have fixed the @@ -24,8 +24,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "tomerfiliba"; repo = "rpyc"; - rev = "refs/tags/${version}"; - hash = "sha256-BvXEXZlVbOmKBwnSBCDksUkbT7JPcMX48KZe/Gd5Y8Q="; + rev = version; + hash = "sha256-8NOcXZDR3w0TNj1+LZ7lzQAt7yDgspjOp2zk1bsbVls="; }; nativeBuildInputs = [ From 3b8cd8ad708f72f237daf05b42a956184bf2996d Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Sun, 17 Mar 2024 16:58:04 +0000 Subject: [PATCH 51/53] installer/nixos-generate-config: correctly detect bcache PR #256638 inadvertently introduced a bug in `nixos-generate-config` whereby it would never put `bcache` into the `availableKernelModules` for the initrd. This is because the `qr` operator in Perl returns a regex object, rather than matching it; the regex object evaluates to true, making the filter expression effectively `grep(!true, @bcacheDevices)`, which will always return an empty list. --- nixos/modules/installer/tools/nixos-generate-config.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index 2f9edba4f0c9..ef25b8b296e6 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -257,7 +257,7 @@ foreach my $path (glob "/sys/class/{block,mmc_host}/*") { # Add bcache module, if needed. my @bcacheDevices = glob("/dev/bcache*"); -@bcacheDevices = grep(!qr#dev/bcachefs.*#, @bcacheDevices); +@bcacheDevices = grep(!m#dev/bcachefs.*#, @bcacheDevices); if (scalar @bcacheDevices > 0) { push @initrdAvailableKernelModules, "bcache"; } From 59daf9b0b6a8c577cad7c0679380dda63485f1ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Mon, 25 Mar 2024 16:53:37 +0100 Subject: [PATCH 52/53] gnuradioPackages.osmosdr: fix source URL The current URL doesn't work anymore: $ nix-build -A gnuradioPackages.osmosdr.src --check checking outputs of '/nix/store/3jmqk57y5214iadfi6ivbgfd1rr9fyib-gr-osmosdr.drv'... exporting git://git.osmocom.org/gr-osmosdr (rev v0.2.4) into /nix/store/m1qa9ipmdf4xrc6gl1r0zd0c5r0ns7bk-gr-osmosdr Initialized empty Git repository in /nix/store/m1qa9ipmdf4xrc6gl1r0zd0c5r0ns7bk-gr-osmosdr/.git/ fatal: unable to connect to git.osmocom.org: git.osmocom.org[0: 78.46.96.155]: errno=Connection refused git.osmocom.org[1: 2a01:4f8:120:8470::2]: errno=Network is unreachable Fixes https://github.com/NixOS/nixpkgs/issues/298876. --- pkgs/development/gnuradio-modules/osmosdr/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/gnuradio-modules/osmosdr/default.nix b/pkgs/development/gnuradio-modules/osmosdr/default.nix index 8e46ac561493..053d0a8e99f1 100644 --- a/pkgs/development/gnuradio-modules/osmosdr/default.nix +++ b/pkgs/development/gnuradio-modules/osmosdr/default.nix @@ -33,7 +33,7 @@ let "3.10" = "0.2.4"; }.${gnuradio.versionAttr.major}; src = fetchgit { - url = "git://git.osmocom.org/gr-osmosdr"; + url = "https://gitea.osmocom.org/sdr/gr-osmosdr"; rev = "v${version}"; sha256 = { "3.7" = "0bf9bnc1c3c4yqqqgmg3nhygj6rcfmyk6pybi27f7461d2cw1drv"; From a20dc76e95303314cef7b1af33a198594ebf3396 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Sat, 23 Mar 2024 14:52:48 +0100 Subject: [PATCH 53/53] vimPlugins.jupytext-nvim: init at 2024-01-24 --- pkgs/applications/editors/vim/plugins/generated.nix | 12 ++++++++++++ pkgs/applications/editors/vim/plugins/overrides.nix | 4 ++++ .../editors/vim/plugins/vim-plugin-names | 1 + 3 files changed, 17 insertions(+) diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 426e2224254b..df4e856202e9 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -17033,5 +17033,17 @@ final: prev: meta.homepage = "https://github.com/lukas-reineke/virt-column.nvim/"; }; + jupytext-nvim = buildVimPlugin { + pname = "jupytest-nvim"; + version = "2024-01-24"; + src = fetchFromGitHub { + owner = "GCBallesteros"; + repo = "jupytext.nvim"; + rev = "68fddf28119dbaddfaea6b71f3d6aa1e081afb93"; + sha256 = "sha256-x5emW+qfUTUDR72B9QdDgVdrb8wGH9D7AdtRrQm80sI="; + }; + meta.homepage = "https://github.com/GCBallesteros/jupytext.nvim/"; + }; + } diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index e9a2e6764809..21967ce5d2f6 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -744,6 +744,10 @@ dependencies = with self; [ lush-nvim ]; }; + jupytext-nvim = super.jupytext-nvim.overrideAttrs { + passthru.python3Dependencies = ps: [ ps.jupytext ]; + }; + LanguageClient-neovim = let version = "0.1.161"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 986d67c5e819..6472f5c9a248 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -419,6 +419,7 @@ https://github.com/HiPhish/jinja.vim/,HEAD, https://github.com/vito-c/jq.vim/,, https://github.com/neoclide/jsonc.vim/,, https://github.com/JuliaEditorSupport/julia-vim/,, +https://github.com/GCBallesteros/jupytext.nvim/,HEAD, https://github.com/rebelot/kanagawa.nvim/,, https://github.com/anuvyklack/keymap-layer.nvim/,HEAD, https://github.com/kmonad/kmonad-vim/,,