From f43dfd4b8e20e51300ec44cc9555cdad612b95c6 Mon Sep 17 00:00:00 2001 From: multi Date: Sun, 20 Sep 2020 21:17:58 +0100 Subject: feat(users/multi): refactor home manager configuration on whitby. Previously this used git checkouts of home-manager.git and nixpkgs.git on whitby, which is self-evidently non-reproducible, so instead use pinned tarballs of those repositories as data sources. Change-Id: I3bd01e44d746c62e6bfbeab2e7698ae9954c8a94 Reviewed-on: https://cl.tvl.fyi/c/depot/+/1993 Tested-by: BuildkiteCI Reviewed-by: multi --- users/multi/whitby/depot.nix | 6 ++++++ users/multi/whitby/home-manager.nix | 24 ++++++++++++++---------- 2 files changed, 20 insertions(+), 10 deletions(-) create mode 100644 users/multi/whitby/depot.nix diff --git a/users/multi/whitby/depot.nix b/users/multi/whitby/depot.nix new file mode 100644 index 0000000000..c0bda4d98b --- /dev/null +++ b/users/multi/whitby/depot.nix @@ -0,0 +1,6 @@ +{ config ? throw "not a readTree target", ... }: + +let + depotPath = "/home/multi/depot"; +in + depotPath diff --git a/users/multi/whitby/home-manager.nix b/users/multi/whitby/home-manager.nix index 92281aebb0..8cd53ba5bc 100644 --- a/users/multi/whitby/home-manager.nix +++ b/users/multi/whitby/home-manager.nix @@ -1,13 +1,20 @@ -{ config ? throw "not a readTree target", pkgs, depot, ... }: +{ config ? throw "not a readTree target", ... }: let - hmPath = "$HOME/nix/home-manager"; + homeManagerSrc = (fetchTarball { + url = "https://github.com/nix-community/home-manager/archive/9b1b55ba0264a55add4b7b4e022bdc2832b531f6.tar.gz"; + sha256 = "1lvnprvqfsjhi811ldagvfy4ilysxdj4arzi0f0gskll6czwjdr7"; + }); + depot = import {}; + pkgs = import {}; + + depotPath = depot.users.multi.whitby.depot {}; in { programs = { - home-manager = { enable = true; path = hmPath; }; + home-manager = { enable = true; path = homeManagerSrc; }; bash = { enable = true; @@ -40,11 +47,9 @@ in home.sessionVariables = { NIX_PATH = - "nixpkgs=$HOME/nix/nixpkgs:" + - "home-manager=${hmPath}:" + - "depot=$HOME/nix/depot:" + - "/nix/var/nix/profiles/per-user/root/channels"; - HOME_MANAGER_CONFIG = ; + "nixpkgs=${depot.third_party.nixpkgsSrc}:" + + "depot=${depotPath}"; + HOME_MANAGER_CONFIG = "${depotPath}/users/multi/whitby/home-manager.nix"; EDITOR = "vim"; }; @@ -57,11 +62,10 @@ in home.file = { z = { - source = builtins.fetchurl "https://raw.githubusercontent.com/rupa/z/master/z.sh"; + source = builtins.fetchurl "https://raw.githubusercontent.com/rupa/z/9f76454b32c0007f20b0eae46d55d7a1488c9df9/z.sh"; target = ".z.sh"; }; }; - home.stateVersion = "20.03"; } -- cgit 1.4.1