nix/home/default.nix

120 lines
2.2 KiB
Nix

{
config,
pkgs,
lib,
...
}:
# https://nix-community.github.io/home-manager/options.xhtml
{
imports = [
./modules/terminal.nix
./modules/scripts.nix
./modules/email.nix
./modules/mpd.nix
./modules/menu.nix
./modules/scripts.nix
./programs/scripts.nix
./programs/neovim/.
./programs/helix.nix
./programs/git.nix
./programs/lf/.
./programs/zsh.nix
{
options.windowManager.modifierKey = lib.mkOption {default = "SUPER";};
}
];
programs.menu = {
package = pkgs.tofi;
dmenuCommand = "${pkgs.tofi}/bin/tofi --fuzzy-match true";
drunCommand = "${pkgs.tofi}/bin/tofi-drun --drun-launch true";
};
roles.mpd.enable = true;
programs.home-manager.enable = true;
home.homeDirectory = "/home/${config.home.username}";
xdg.userDirs.enable = true;
xdg.mimeApps.enable = true;
manual.html.enable = true;
home.packages = with pkgs; [
home-manager
libnotify
dig
jq
fx
mosh
ripgrep
usbutils
wl-clipboard
du-dust
htop
libsixel
yt-dlp
ytfzf
playerctl
neofetch
tree
ansible
quickemu
];
services.udiskie = {
enable = true;
notify = true;
};
programs.rbw = {
enable = true;
settings = {
email = "tristan@tristans.cloud";
base_url = "https://vault.tristans.cloud";
pinentry = "gnome3";
};
};
programs.ssh.enable = true;
programs.ssh.matchBlocks = {
"git.tristans.cloud" = {
user = "git";
hostname = "100.116.82.65";
port = 2222;
};
"alpine" = {
hostname = "100.116.82.65";
user = "tristan";
};
};
home.file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/Vanilla-DMZ";
home.file.".config/pipewire/pipewire.conf.d/raop-discover.conf".text = ''
context.modules = [
{
name = libpipewire-module-raop-discover
args = { }
}
]
'';
services.kdeconnect = {
enable = true;
indicator = true;
};
programs.pandoc = {
enable = true;
defaults = {
metadata = {
author = "Tristan Beedell";
};
pdf-engine = "xelatex";
};
};
programs.direnv.enable = true;
}