about summary refs log tree commit diff
path: root/default.nix
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2020-06-24T02·08+0100
committertazjin <mail@tazj.in>2020-06-24T02·38+0000
commit1640d9d145b6e8d058b33e4e2bd9c5b0780b8f2e (patch)
tree606d8b277bac5242205bd92c312811dcf489a134 /default.nix
parentf2980dfc16360f8b56d200cbf0368f2a374061b8 (diff)
refactor(ci-builds): Split up CI builds into multiple buckets r/1076
These categories separate CI targets, which hopefully avoids the
out-of-space errors we have been seeing on Sourcehut.

The sets of CI build targets are made available in the depot itself so
that besadii can be updated to create a new build for each target
group.

For convenience, 'ciBuilds' contains an '__allTargets' attribute which
combines the contents of each target batch - this makes it possible to
still invoke a build for everything by using:

  nix-build -A ciBuilds.__allTargets

Note: Some targets that were previously built in CI aren't anymore,
most importantly my NixOS systems which don't fit on Sourcehut.

Change-Id: Ia15ed7b743c8add51ae08ce0827a0ddfacd637e2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/570
Reviewed-by: lukegb <lukegb@tvl.fyi>
Diffstat (limited to 'default.nix')
-rw-r--r--default.nix8
1 files changed, 7 insertions, 1 deletions
diff --git a/default.nix b/default.nix
index e34734dc9e33..8c7a35f995bb 100644
--- a/default.nix
+++ b/default.nix
@@ -18,6 +18,9 @@ let
   config = depot: {
     inherit depot;
 
+    # Expose lib & ciBuilds attributes to packages.
+    inherit (depot) ciBuilds lib;
+
     # Pass third_party as 'pkgs' (for compatibility with external
     # imports for certain subdirectories)
     pkgs = depot.third_party;
@@ -59,10 +62,13 @@ in fix(self: {
   # Make the path to the depot available for things that might need it
   # (e.g. NixOS module inclusions)
   depotPath = ./.;
+
+  # Load CI builds in a way that can be injected into programs like besadii.
+  ciBuilds = import ./ci-builds.nix self.config;
 }
 
 # Add local packages as structured by readTree
-// (localPkgs (readTree' (self.config // { inherit (self) lib; })))
+// (localPkgs (readTree' self.config))
 
 # Load overrides into the top-level.
 #