blob: 3e14abb9bd7272df72ce914fca2d4d102e90f451 (
plain)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
{
config,
lib,
pkgs,
inputs,
...
}:
{
imports = [
inputs.nix-index-database.nixosModules.nix-index
inputs.home-manager.nixosModules.home-manager
];
nixpkgs.config.allowUnfree = true;
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
# Experimental features
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
# Configure network connections interactively with nmcli or nmtui.
networking.networkmanager.enable = true;
# Set your time zone.
# time.timeZone = "Europe/Amsterdam";
time.timeZone = "America/Chicago";
# Enable the X11 windowing system.
services.xserver.enable = true;
services.xserver.windowManager.xmonad = {
enable = true;
enableContribAndExtras = true;
config = builtins.readFile ./xmonad.hs;
};
services.xserver.xkb.layout = "us";
# User
users.users.christian = {
isNormalUser = true;
extraGroups = [
"wheel"
"video"
"render"
"docker"
];
};
home-manager.users.christian = {
imports = [ ./home/christian.nix ];
};
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "bak";
home-manager.extraSpecialArgs = { inherit inputs; };
environment.systemPackages = with pkgs; [
file
man-pages
man-pages-posix
mosh
wmname
];
documentation.dev.enable = true;
programs.bash.shellAliases = {
rebuild = "sudo nixos-rebuild switch --flake ~/.config/nixos";
dry-rebuild = "nix build ~/.config/nixos#nixosConfigurations.$(hostname).config.system.build.toplevel --no-link";
};
programs.neovim = {
enable = true;
defaultEditor = true;
vimAlias = true;
};
virtualisation.docker.enable = true;
programs.nix-index.enable = false;
programs.nix-index-database.comma.enable = true;
programs.command-not-found.enable = false;
}
|