clan/modules/moritz/profiles/base.nix

133 lines
2.6 KiB
Nix

{
lib,
pkgs,
inputs,
...
}: let
inherit (lib) getExe;
in {
imports = [
inputs.home-manager.nixosModules.default
];
my = {
nixpkgs = {
overlays = [
(
_: prev: {
nur = import inputs.nur {
pkgs = prev;
nurpkgs = prev;
};
}
)
];
channels = {
master = inputs.master;
stable = inputs.stable;
};
};
shell = {
abbreviations = {
us = "systemctl --user";
rs = "sudo systemctl";
uj = "journalctl --user";
rj = "sudo journalctl";
};
aliases = {
ls = "${getExe pkgs.eza} -lh --icons --git";
cat = "bat";
rm = "rm -i";
mv = "mv -i";
};
variables = {EDITOR = "vim";};
};
programs = {
lazygit.enable = true;
direnv.enable = true;
fish.enable = true;
git.enable = true;
gpg.enable = true;
nix = {
gc.enable = true;
optimise.enable = true;
};
tmux.enable = true;
tmux.keybinds = {
prefix = {
"-" = "split-window -v";
"|" = "split-window -h";
"C-l" = "send-keys C-l";
"R" = "source-file $XDG_CONFIG_HOME/tmux/tmux.conf \\; display-message 'Reloaded tmux.conf'";
"f" = "new-window ts";
"a" = "new-window ta";
};
copy-mode-vi = {
"v" = "send -X begin-selection";
"V" = "send -X select-line";
"C-v" = "send -X rectangle-toggle";
};
};
};
};
environment.systemPackages = with pkgs; [
# archives
ouch
# monitoring
bottom
# utils
(viu.override {withSixel = true;})
bat
cht-sh
fd
ripgrep
vim
wget
];
programs = {
mtr.enable = true;
command-not-found.enable = false;
};
i18n.extraLocaleSettings = {
# LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
home-manager.users.moritz = {
programs = {
# Let Home Manager install and manage itself.
home-manager.enable = true;
fzf = {
enable = true;
defaultOptions = [
"--height 50%"
"--bind alt-j:preview-down,alt-k:preview-up"
];
};
zoxide = {
enable = true;
options = [
"--cmd c"
];
};
starship.enable = true;
};
home = {
username = "moritz";
homeDirectory = "/home/moritz";
stateVersion = "21.05";
};
xdg.userDirs.enable = true;
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
}