about summary refs log tree commit diff
diff options
context:
space:
mode:
authorsterni <sternenseemann@systemli.org>2021-04-02T19·59+0200
committersterni <sternenseemann@systemli.org>2021-04-03T22·16+0000
commit0133fdc737286a678fbc46a97810dfb152588c77 (patch)
treec1900a1bb031a5af547d7843e79585a7ea4b8c37
parent3e7073f106dba0b97484935347b94b1c11db9b81 (diff)
chore: move all 3p buildRustCrate derivations to //third_party r/2419
Profpatsch and me are basically the only users of
depot.users.Profpatsch.writers.rustSimple*. To pull in the odd
dependency we usually use buildRustCrate which is rather convenient.
However we've picked up the bad habit of inlining these in a let
somewhere instead of managing them in a more central location although
there has been an (unsuccesful) attempt at this in
//users/Profpatsch/rust-crates.nix.

This CL moves all buildRustCrate based derivations into
third_party.rust-crates and deletes any duplicate derivations we have
accumulated in the tree.

Change-Id: I8f68b95ebd546708e9af07dca36d72dba9ca8c77
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2769
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: Profpatsch <mail@profpatsch.de>
-rw-r--r--third_party/rust-crates/OWNERS4
-rw-r--r--third_party/rust-crates/default.nix (renamed from users/Profpatsch/rust-crates.nix)61
-rw-r--r--users/Profpatsch/imap-idle.nix4
-rw-r--r--users/Profpatsch/netencode/default.nix42
-rw-r--r--users/Profpatsch/read-http.nix4
-rw-r--r--users/Profpatsch/tree-sitter.nix4
-rw-r--r--users/sterni/nint/default.nix41
7 files changed, 76 insertions, 84 deletions
diff --git a/third_party/rust-crates/OWNERS b/third_party/rust-crates/OWNERS
new file mode 100644
index 000000000000..30cd81721c16
--- /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
index 7004a699c4ca..17479bf61ae1 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 30c7b6e8aac8..afd033533f3c 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 dabf640d51e9..206e382c74c6 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 614993c457e1..2b7465dab88a 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 8fc2a847c6bd..101ee03d4fe1 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 69ca7283a50f..a7952393c6db 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)