refactor(users/multi): make my user directory CI-compatible.
My home-manager config is not currently readTree compatible, which means that it's not built by CI. This constructs a house of cards around home-manager to make this buildable in CI. Change-Id: I80480f24ff47347f46d708edbbf34d59fa76adac Reviewed-on: https://cl.tvl.fyi/c/depot/+/2123 Tested-by: BuildkiteCI Reviewed-by: multi <depot@in-addr.xyz>
This commit is contained in:
parent
9d6d945f52
commit
69244064da
3 changed files with 93 additions and 0 deletions
0
users/multi/home/.skip-subtree
Normal file
0
users/multi/home/.skip-subtree
Normal file
66
users/multi/home/configs/whitby.nix
Normal file
66
users/multi/home/configs/whitby.nix
Normal file
|
@ -0,0 +1,66 @@
|
|||
{ depot, pkgs, ... }:
|
||||
|
||||
let
|
||||
nixpkgs = import pkgs.nixpkgsSrc {};
|
||||
in
|
||||
|
||||
{
|
||||
programs = {
|
||||
home-manager = {
|
||||
enable = true;
|
||||
path = toString nixpkgs.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=${pkgs.nixpkgsSrc}:" +
|
||||
"depot=${depot.depotPath}";
|
||||
HOME_MANAGER_CONFIG = "${depot.depotPath}/users/multi/whitby/home-manager.nix";
|
||||
EDITOR = "vim";
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
nixpkgs.lsof
|
||||
nixpkgs.strace
|
||||
nixpkgs.file
|
||||
nixpkgs.pciutils
|
||||
];
|
||||
|
||||
home.file = {
|
||||
z = {
|
||||
source = builtins.fetchurl "https://raw.githubusercontent.com/rupa/z/9f76454b32c0007f20b0eae46d55d7a1488c9df9/z.sh";
|
||||
target = ".z.sh";
|
||||
};
|
||||
};
|
||||
|
||||
home.stateVersion = "20.03";
|
||||
}
|
27
users/multi/home/default.nix
Normal file
27
users/multi/home/default.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{ depot, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
nixpkgs = import pkgs.nixpkgsSrc {};
|
||||
home-modules = import "${nixpkgs.home-manager.src}/modules";
|
||||
outerLib = lib;
|
||||
|
||||
home = path:
|
||||
let
|
||||
configSet = import path { inherit depot pkgs; };
|
||||
in
|
||||
home-modules {
|
||||
pkgs = nixpkgs;
|
||||
configuration = { config, lib, ... }: (
|
||||
{
|
||||
_module.args.pkgs = outerLib.mkForce (import pkgs.nixpkgsSrc {});
|
||||
} // configSet
|
||||
);
|
||||
};
|
||||
|
||||
in
|
||||
rec {
|
||||
whitby = home ./configs/whitby.nix;
|
||||
whitbyHome = whitby.activationPackage;
|
||||
|
||||
meta.targets = [ "whitbyHome" ];
|
||||
}
|
Loading…
Reference in a new issue