-
Notifications
You must be signed in to change notification settings - Fork 0
/
home.nix
88 lines (76 loc) · 1.96 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
82
83
84
85
86
87
88
{ config, pkgs, lib, ... }:
{
# This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes.
#
# You should not change this value, even if you update Home Manager. If you do
# want to update the value, then make sure to first check the Home Manager
# release notes.
home.stateVersion = "24.05"; # Please read the comment before changing.
# Custom configuration
imports = [
./home/alacritty
./home/bat
./home/git
./home/home-manager
./home/neovim
./home/nix
./home/ripgrep
./home/tmux
];
# https://github.com/unpluggedcoder/awesome-rust-tools
home.packages = [
pkgs.asdf-vm
pkgs.aws-vault
pkgs.bottom
pkgs.btop
pkgs.cachix
pkgs.coreutils
pkgs.devenv
pkgs.easyrsa
pkgs.entr
pkgs.fd
pkgs.fira-code-nerdfont
pkgs.gnumake
pkgs.jq
pkgs.minikube
pkgs.noti
pkgs.pstree
pkgs.rename
pkgs.tailspin
pkgs.tmate
pkgs.tree
pkgs.watch
pkgs.wget
pkgs.yq
] ++ lib.optionals pkgs.stdenv.isDarwin [
pkgs.terminal-notifier
];
home.sessionVariables.SHELL = "${pkgs.fish}/bin/fish";
programs.direnv.enable = true;
programs.fzf.enable = true;
programs.gh = {
enable = true;
settings.git_protocol = "git";
};
programs.hmd.enable = true;
programs.lsd = {
enable = true;
enableAliases = true;
# https://github.com/lsd-rs/lsd#config-file-content
settings.color.when = "never";
};
programs.fish = {
enable = true;
functions.fish_greeting = "";
shellInit = ''
fish_add_path /usr/local/bin
# https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cmd/shellenv.sh
eval (/opt/homebrew/bin/brew shellenv)
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.fish
'';
};
programs.starship.enable = true;
programs.zoxide.enable = true;
}