blob: 8ba5f976f76ef242e010411be2a5287ba542b537 (
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
28
29
30
31
|
# 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/dotfiles
cp ./* $out/dotfiles/
'';
};
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}/dotfiles/i3.conf";
# Setting a mode causes Nix to copy the file instead of symlinking it.
# For i3 config in particular this is desirable because I want to be able
# to modify and reload it before committing a change.
mode = "0644";
};
};
}
|