diff --git a/third_party/rust-crates/OWNERS b/third_party/rust-crates/OWNERS new file mode 100644 index 000000000..30cd81721 --- /dev/null +++ b/third_party/rust-crates/OWNERS @@ -0,0 +1,4 @@ +inherited: true +owners: + - sterni + - Profpatsch diff --git a/users/Profpatsch/rust-crates.nix b/third_party/rust-crates/default.nix similarity index 79% rename from users/Profpatsch/rust-crates.nix rename to third_party/rust-crates/default.nix index 7004a699c..17479bf61 100644 --- a/users/Profpatsch/rust-crates.nix +++ b/third_party/rust-crates/default.nix @@ -1,4 +1,11 @@ { depot, pkgs, ... }: + +let + inherit (pkgs) + buildRustCrate + ; +in + rec { cfg-if = pkgs.buildRustCrate { pname = "cfg-if"; @@ -208,4 +215,58 @@ rec { sha256 = "0dgmgdmrfbjkpxn1w3xmmwsm2a623a9qdwn90s8yl78n4a36kbh9"; }; + serde = buildRustCrate { + pname = "serde"; + crateName = "serde"; + version = "1.0.123"; + sha256 = "05xl2s1vpf3p7fi2yc9qlzw88d5ap0z3qmhmd7axa6pp9pn1s5xc"; + features = [ "std" ]; + }; + + ryu = buildRustCrate { + pname = "ryu"; + version = "1.0.5"; + crateName = "ryu"; + sha256 = "060y2ln1csix593ingwxr2y3wl236ls0ly1ffkv39h5im7xydhrc"; + }; + + itoa = buildRustCrate { + pname = "itoa"; + version = "0.4.7"; + crateName = "itoa"; + sha256 = "0079jlkcmcaw37wljrvb6r3dqq15nfahkqnl5npvlpdvkg31k11x"; + }; + + serde_json = buildRustCrate { + pname = "serde_json"; + version = "1.0.62"; + crateName = "serde_json"; + sha256 = "0sgc8dycigq0nxr4j613m4q733alfb2i10s6nz80lsbbqgrka21q"; + dependencies = [ serde ryu itoa ]; + features = [ "std" ]; + edition = "2018"; + }; + + log = pkgs.buildRustCrate { + pname = "log"; + version = "0.4.11"; + crateName = "log"; + sha256 = "0m6xhqxsps5mgd7r91g5mqkndbh8zbjd58p7w75r330zl4n40l07"; + dependencies = [ cfg-if ]; + }; + + serde_derive = pkgs.buildRustCrate { + pname = "serde"; + crateName = "serde"; + version = "1.0.123"; + sha256 = "05xl2s1vpf3p7fi2yc9qlzw88d5ap0z3qmhmd7axa6pp9pn1s5xc"; + }; + + mustache = pkgs.buildRustCrate { + pname = "mustache"; + version = "0.9.0"; + crateName = "mustache"; + sha256 = "1zgl8l15i19lzp90icgwyi6zqdd31b9vm8w129f41d1zd0hs7ayq"; + dependencies = [ log serde ]; + }; } diff --git a/users/Profpatsch/imap-idle.nix b/users/Profpatsch/imap-idle.nix index 30c7b6e8a..afd033533 100644 --- a/users/Profpatsch/imap-idle.nix +++ b/users/Profpatsch/imap-idle.nix @@ -5,8 +5,8 @@ let name = "imap-idle"; dependencies = [ depot.users.Profpatsch.arglib.netencode.rust - depot.users.Profpatsch.rust-crates.imap - depot.users.Profpatsch.rust-crates.epoll + depot.third_party.rust-crates.imap + depot.third_party.rust-crates.epoll depot.users.Profpatsch.execline.exec-helpers ]; } (builtins.readFile ./imap-idle.rs); diff --git a/users/Profpatsch/netencode/default.nix b/users/Profpatsch/netencode/default.nix index dabf640d5..206e382c7 100644 --- a/users/Profpatsch/netencode/default.nix +++ b/users/Profpatsch/netencode/default.nix @@ -10,7 +10,7 @@ let (imports.writers.rustSimpleLib { name = "netencode"; dependencies = [ - depot.users.Profpatsch.rust-crates.nom + depot.third_party.rust-crates.nom depot.users.Profpatsch.execline.exec-helpers ]; release = false; @@ -19,50 +19,12 @@ let gen = import ./gen.nix { inherit lib; }; - cfg-if = pkgs.buildRustCrate { - pname = "cfg-if"; - version = "1.0.0"; - crateName = "cfg-if"; - sha256 = "1fzidq152hnxhg4lj6r2gv4jpnn8yivp27z6q6xy7w6v0dp6bai9"; - }; - - log = pkgs.buildRustCrate { - pname = "log"; - version = "0.4.11"; - crateName = "log"; - sha256 = "0m6xhqxsps5mgd7r91g5mqkndbh8zbjd58p7w75r330zl4n40l07"; - dependencies = [ cfg-if ]; - }; - - serde_derive = pkgs.buildRustCrate { - pname = "serde"; - crateName = "serde"; - version = "1.0.123"; - sha256 = "05xl2s1vpf3p7fi2yc9qlzw88d5ap0z3qmhmd7axa6pp9pn1s5xc"; - }; - - serde = pkgs.buildRustCrate { - pname = "serde"; - crateName = "serde"; - version = "1.0.123"; - sha256 = "05xl2s1vpf3p7fi2yc9qlzw88d5ap0z3qmhmd7axa6pp9pn1s5xc"; - features = [ "std" ]; - }; - - mustache = pkgs.buildRustCrate { - pname = "mustache"; - version = "0.9.0"; - crateName = "mustache"; - sha256 = "1zgl8l15i19lzp90icgwyi6zqdd31b9vm8w129f41d1zd0hs7ayq"; - dependencies = [ log serde ]; - }; - netencode-mustache = imports.writers.rustSimple { name = "netencode_mustache"; dependencies = [ depot.users.Profpatsch.arglib.netencode.rust netencode-rs - mustache + depot.third_party.rust-crates.mustache ]; } (builtins.readFile ./netencode-mustache.rs); diff --git a/users/Profpatsch/read-http.nix b/users/Profpatsch/read-http.nix index 614993c45..2b7465dab 100644 --- a/users/Profpatsch/read-http.nix +++ b/users/Profpatsch/read-http.nix @@ -5,8 +5,8 @@ let read-http = depot.users.Profpatsch.writers.rustSimple { name = "read-http"; dependencies = [ - depot.users.Profpatsch.rust-crates.ascii - depot.users.Profpatsch.rust-crates.httparse + depot.third_party.rust-crates.ascii + depot.third_party.rust-crates.httparse depot.users.Profpatsch.netencode.netencode-rs depot.users.Profpatsch.arglib.netencode.rust depot.users.Profpatsch.execline.exec-helpers diff --git a/users/Profpatsch/tree-sitter.nix b/users/Profpatsch/tree-sitter.nix index 8fc2a847c..101ee03d4 100644 --- a/users/Profpatsch/tree-sitter.nix +++ b/users/Profpatsch/tree-sitter.nix @@ -8,7 +8,7 @@ let print-ast = depot.users.Profpatsch.writers.rustSimple { name = "print-ast"; - dependencies = with depot.users.Profpatsch.rust-crates; [ + dependencies = with depot.third_party.rust-crates; [ libloading tree-sitter ]; @@ -61,7 +61,7 @@ let watch-file-modified = depot.users.Profpatsch.writers.rustSimple { name = "watch-file-modified"; dependencies = [ - depot.users.Profpatsch.rust-crates.inotify + depot.third_party.rust-crates.inotify depot.users.Profpatsch.netstring.rust-netstring ]; } '' diff --git a/users/sterni/nint/default.nix b/users/sterni/nint/default.nix index 69ca7283a..a7952393c 100644 --- a/users/sterni/nint/default.nix +++ b/users/sterni/nint/default.nix @@ -4,46 +4,11 @@ let inherit (depot.users.Profpatsch.writers) rustSimpleBin ; - - inherit (pkgs) - buildRustCrate - ; - - serde = buildRustCrate { - pname = "serde"; - crateName = "serde"; - version = "1.0.123"; - sha256 = "05xl2s1vpf3p7fi2yc9qlzw88d5ap0z3qmhmd7axa6pp9pn1s5xc"; - features = [ "std" ]; - }; - - ryu = buildRustCrate { - pname = "ryu"; - version = "1.0.5"; - crateName = "ryu"; - sha256 = "060y2ln1csix593ingwxr2y3wl236ls0ly1ffkv39h5im7xydhrc"; - }; - - itoa = buildRustCrate { - pname = "itoa"; - version = "0.4.7"; - crateName = "itoa"; - sha256 = "0079jlkcmcaw37wljrvb6r3dqq15nfahkqnl5npvlpdvkg31k11x"; - }; - - serde_json = buildRustCrate { - pname = "serde_json"; - version = "1.0.62"; - crateName = "serde_json"; - sha256 = "0sgc8dycigq0nxr4j613m4q733alfb2i10s6nz80lsbbqgrka21q"; - dependencies = [ serde ryu itoa ]; - features = [ "std" ]; - edition = "2018"; - }; - in rustSimpleBin { name = "nint"; - dependencies = [ serde_json ]; + dependencies = [ + depot.third_party.rust-crates.serde_json + ]; } (builtins.readFile ./nint.rs)