152 lines
3.3 KiB
Nix
152 lines
3.3 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
# https://nix-community.github.io/home-manager/options.html
|
|
let
|
|
my-deps = {
|
|
notify-send = "${pkgs.libnotify}/bin/notify-send";
|
|
playerctl = "${pkgs.playerctl}/bin/playerctl";
|
|
grim = "${pkgs.grim}/bin/grim";
|
|
slurp = "${pkgs.slurp}/bin/slurp";
|
|
amixer = "${pkgs.alsa-utils}/bin/amixer";
|
|
swaybg = "${pkgs.swaybg}/bin/swaybg";
|
|
terminal = "${config.programs.terminal}/bin/${config.programs.terminal.pname}";
|
|
chafa = "${pkgs.chafa}/bin/chafa";
|
|
exiftool = "${pkgs.exiftool}/bin/exiftool";
|
|
wc = "${pkgs.coreutils}/bin/wc";
|
|
jq = "${pkgs.jq}/bin/jq";
|
|
hyprctl = "${pkgs.hyprland}/bin/hyprctl";
|
|
xargs = "${pkgs.findutils}/bin/xargs";
|
|
menu = "${config.programs.menu.package}${config.programs.menu.dmenuCommand}";
|
|
fileman = "${pkgs.pcmanfm}/bin/pcmanfm";
|
|
gawk = "${pkgs.gawk}/bin/awk";
|
|
glow = "${pkgs.glow}/bin/glow";
|
|
ffmpegthumbnailer = "${pkgs.ffmpegthumbnailer}/bin/ffmpegthumbnailer";
|
|
};
|
|
# lf-sixel = pkgs.callPackage ../custom/lf-sixel/. {};
|
|
in {
|
|
imports = [
|
|
./modules/terminal.nix
|
|
./modules/scripts.nix
|
|
./modules/email.nix
|
|
./modules/editor.nix
|
|
./modules/mpd.nix
|
|
./modules/menu.nix
|
|
./modules/scripts.nix
|
|
|
|
./programs/graphical.nix
|
|
./programs/scripts.nix
|
|
./programs/neovim/.
|
|
./programs/git.nix
|
|
./programs/lf/.
|
|
];
|
|
|
|
programs.home-manager.enable = true;
|
|
|
|
home.homeDirectory = "/home/${config.home.username}";
|
|
|
|
xdg.userDirs.enable = true;
|
|
|
|
home.packages = with pkgs; [
|
|
libnotify
|
|
dig
|
|
jq
|
|
fx
|
|
mosh
|
|
ripgrep
|
|
usbutils
|
|
wl-clipboard
|
|
du-dust
|
|
htop
|
|
libsixel
|
|
yt-dlp
|
|
playerctl
|
|
neofetch
|
|
tree
|
|
ansible
|
|
];
|
|
|
|
programs.fish = {
|
|
enable = true;
|
|
};
|
|
|
|
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";
|
|
|
|
programs.helix = {
|
|
enable = true;
|
|
languages = {
|
|
nix = {
|
|
auto-format = true;
|
|
language-server = {
|
|
command = "${pkgs.rnix-lsp}/bin/rnix-lsp";
|
|
};
|
|
};
|
|
go = {
|
|
auto-format = true;
|
|
language-server = {
|
|
command = "${pkgs.gopls}/bin/gopls";
|
|
};
|
|
};
|
|
typescript = {
|
|
auto-format = true;
|
|
language-server = {
|
|
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
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;
|
|
}
|