about summary refs log tree commit diff
path: root/dotfiles.nix
blob: e999bc2bc1b4ab64fce8383bee4d57a05700d38d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Bundle configuration files into a derivation.
# I call this derivation dotfiles despite that not technically being true
# anymore ...

{ config, pkgs, ...}:

let dotfiles = pkgs.stdenv.mkDerivation {
  name = "tazjins-dotfiles";

  srcs = [
    ./dotfiles
  ];

  installPhase = ''
    mkdir -p $out
    cp ./* $out/
  '';
};
in {
  # /etc/ is a special place in NixOS!
  # Symlinks that need to be created there must be specified explicitly.
  environment.etc = {
    "i3/config".source = "${dotfiles}/i3.conf";
    "tmux.conf".source = "${dotfiles}/tmux.conf";
    "fish/foreign-env/tazjin".source = "${dotfiles}/config.fish";
  };
}