refactor(users/multi): migrate whitby home-manager config to readTree-compatible version.

Add a new home-manager-compatible configuration file which loads the
common config attrset used by the readTree machinery into a structure
which the home-manager command line tool understands.

Garbage-collect the old home-manager configuration file used on whitby,
and update the HOME_MANAGER_CONFIG path to point at the new shim config.

Instead of having a per-environment HM configuration (not that I have
more than one environment), there's now a single configuration which
evaluates to an attrset of configurations, which can be loaded and built
using "home-manager build -A $attr".

Change-Id: Id8b35dc89aabffedf1a4dadfa0d3d4b914e4e2e7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2129
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
This commit is contained in:
multi 2020-11-22 19:51:48 +00:00
parent 69244064da
commit 7ff2142f19
3 changed files with 11 additions and 69 deletions

View file

@ -44,7 +44,7 @@ in
NIX_PATH =
"nixpkgs=${pkgs.nixpkgsSrc}:" +
"depot=${depot.depotPath}";
HOME_MANAGER_CONFIG = "${depot.depotPath}/users/multi/whitby/home-manager.nix";
HOME_MANAGER_CONFIG = "${depot.depotPath}/users/multi/home/home-manager.nix";
EDITOR = "vim";
};

View file

@ -0,0 +1,10 @@
let
depot = import <depot> {};
pkgs = depot.third_party;
home = path: import path { inherit depot pkgs; };
in
{
whitby = home ./configs/whitby.nix;
}

View file

@ -1,68 +0,0 @@
{ config ? throw "not a readTree target", ... }:
let
depot = import <depot> {};
pkgs = import <nixpkgs> {};
in
{
programs = {
home-manager = {
enable = true;
path = toString pkgs.home-manager.src;
};
bash = {
enable = true;
initExtra = ''
bind '"\e[5~":history-search-backward'
bind '"\e[6~":history-search-forward'
PS1="[\\u@\\h:\\w]\\\$ "
_Z_CMD=d
source ~/.z.sh
'';
};
tmux = {
enable = true;
terminal = "tmux-256color";
escapeTime = 50;
extraConfig = ''
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
'';
};
vim = {
enable = true;
extraConfig = "set mouse=";
};
};
home.sessionVariables = {
NIX_PATH =
"nixpkgs=${depot.third_party.nixpkgsSrc}:" +
"depot=${depot.depotPath}";
HOME_MANAGER_CONFIG = "${depot.depotPath}/users/multi/whitby/home-manager.nix";
EDITOR = "vim";
};
home.packages = [
pkgs.lsof
pkgs.strace
pkgs.file
pkgs.pciutils
] ++ (import ../pkgs { inherit pkgs; });
home.file = {
z = {
source = builtins.fetchurl "https://raw.githubusercontent.com/rupa/z/9f76454b32c0007f20b0eae46d55d7a1488c9df9/z.sh";
target = ".z.sh";
};
};
home.stateVersion = "20.03";
}