-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhome.nix
81 lines (74 loc) · 1.78 KB
/
home.nix
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
{
pkgs,
params,
config,
...
}: let
# Until PR 313760 on nixpkgs is merged
bunBaseline = pkgs.bun.overrideAttrs rec {
passthru.sources."x86_64-linux" = pkgs.fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v1.1.27/bun-linux-x64-baseline.zip";
hash = "sha256-FwkVP5lb2V9E8YGPkTAqVMsZmaZXMq8x5AR+99cuIX0=";
};
src = passthru.sources."x86_64-linux";
};
in
with config; {
imports = let
deviceModule = "${params.deviceConfigPath}/home.nix";
in (
if builtins.pathExists deviceModule
then [deviceModule]
else []
);
programs.home-manager.enable = true;
home = {
username = params.user;
homeDirectory = "/home/${home.username}";
stateVersion = "24.05";
packages = with pkgs;
[
lazygit
# Extra packages for neovim
nodejs
gcc
ripgrep
fd
unzip
wget
python3
cargo
gnumake
alejandra
]
++ [
bunBaseline
];
};
# Symlink configs
systemd.user.tmpfiles.rules = [
"L+ ${home.homeDirectory}/.config/nvim/ - - - - ${home.homeDirectory}/nixos/dotfiles/.config/nvim/"
];
programs = {
git = {
enable = true;
userName = "Pedro Cardoso da Silva (@forsureitsme)";
userEmail = "forsureitsme@gmail.com";
};
neovim = {
enable = true;
};
zsh = {
enable = true;
enableVteIntegration = true;
oh-my-zsh = {
enable = true;
theme = "agnoster";
plugins = [
"git"
"sudo"
];
};
};
};
}