confix/home-manager/cli.nix

95 lines
2.2 KiB
Nix

# CLI home.nix
{ config, lib, pkgs, inputs, user, ... }:
{
imports = [
inputs.nix-colors.homeManagerModules.default
./base.nix
./dots/tmux.nix
./dots/bash.nix
];
home.shellAliases = {
wget = "wget --hsts-file=${config.xdg.configHome}/wget-hsts";
doas = "sudo";
ls = "ls -l";
ll = "ls -alF";
trim = "awk '{\$1=\$1;print}'";
};
home.sessionPath = [
"${config.home.homeDirectory}/.local/share/go/bin"
];
xdg.configFile = {
"catgirl" = {
source = ./dots/catgirl;
target = "catgirl";
recursive = true;
};
"cava" = {
source = ./dots/cava;
target = "cava";
recursive = true;
};
"senpai" = {
source = ./dots/senpai;
target = "senpai";
recursive = true;
};
};
xdg = {
userDirs = {
enable = true;
createDirectories = true;
desktop = "${config.home.homeDirectory}/Desktop";
documents = "${config.home.homeDirectory}/Documents";
download = "${config.home.homeDirectory}/Downloads";
music = "${config.home.homeDirectory}/Music";
pictures = "${config.home.homeDirectory}/Pictures";
publicShare = "${config.home.homeDirectory}/Public";
templates = "${config.home.homeDirectory}/Templates";
videos = "${config.home.homeDirectory}/Videos";
};
};
programs = {
go = {
goPath = "${config.xdg.dataHome}/go";
};
neovim = {
extraConfig = ''
syntax enable
set wrap
set spell spelllang=en_us
set linebreak
set number
set relativenumber
set splitbelow
set splitright
set tabstop=4
set shiftwidth=4
if filereadable(expand(".vim-project"))
source .vim-project
endif
let g:limelight_conceal_ctermfg = 'block'
'';
plugins = with pkgs.vimPlugins; [
goyo-vim
limelight-vim
twilight-nvim
vim-nix
vimwiki
zen-mode-nvim
];
};
yt-dlp = {
extraConfig = ''
--update
'';
settings = {
embed-thumbnail = true;
embed-subs = true;
sub-langs = "all";
downloader = "aria2c";
downloader-args = "aria2c:'-c -x8 -s8 -k1M'";
};
};
};
}