dot_testing/config/default.nix
2024-12-25 07:41:22 -06:00

170 lines
4.9 KiB
Nix

{ pkgs, ... }:
{
# this is the default x11 configuration
environment.etc = {
"profile.local" = {
text = "source /home/usr/.config/bash/profile";
};
"bashrc.local" = {
text = "source /home/usr/.config/bash/bashrc";
};
};
services = {
xserver = {
enable = true;
xkb.layout = "us";
displayManager.sx.enable = true;
};
libinput.enable = true;
};
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
environment.systemPackages = with pkgs; [
bspwm
cmus
git
isync
khal
khard
msmtp
neomutt
neovim
qutebrowser
rbw pinentry # needed for rbw
sx
sxhkd
todoman
vdirsyncer
xscreensaver
zathura
# misc x11 progs
xclip
xcape
mpv
sxiv
xwallpaper
xbrightness
xdotool
xscreensaver
ffmpeg # not x11 but close enough
tigervnc
# misc tty progs
tmux
tree
python3
ncpamixer # audio mixer
bluetuith # bluetooth
kid3-cli
peaclock
yt-dlp
curl
tree
dig
pciutils
usbutils
rsync
man-pages
fzy
# for neovim support
lua-language-server
python311Packages.python-lsp-server
texlab
nixd
# custom builds
(pkgs.callPackage ../builds/st.nix { lightMode = false; })
(pkgs.callPackage ../builds/utils.nix {})
(pkgs.callPackage ../builds/statusbar {})
];
fonts.packages = with pkgs; [
fantasque-sans-mono
];
system.userActivationScripts = {
copyConfiguretion = {
text = ''
if [ -d /home/usr/dots ]; then
config_prefix="/home/usr/dots/config"
else
config_prefix="/home/usr/dot_testing/config"
fi
mkdir -p /home/usr/.config/bash
${pkgs.coreutils}/bin/ln -sf $config_prefix/bash/bashrc /home/usr/.config/bash/bashrc
${pkgs.coreutils}/bin/ln -sf $config_prefix/bash/profile /home/usr/.config/bash/profile
mkdir -p /home/usr/.config/bspwm
${pkgs.coreutils}/bin/ln -sf $config_prefix/bspwm/bspwmrc /home/usr/.config/bspwm/bspwmrc
mkdir -p /home/usr/.config/cmus
${pkgs.coreutils}/bin/ln -sf $config_prefix/cmus/rc /home/usr/.config/cmus/rc
mkdir -p /home/usr/.config/git
${pkgs.coreutils}/bin/ln -sf $config_prefix/git/config /home/usr/.config/git/config
mkdir -p /home/usr/.config/isync
${pkgs.coreutils}/bin/ln -sf $config_prefix/isync/config /home/usr/.config/isync/config
mkdir -p /home/usr/.config/khal
${pkgs.coreutils}/bin/ln -sf $config_prefix/khal/config /home/usr/.config/khal/config
mkdir -p /home/usr/.config/khard
${pkgs.coreutils}/bin/ln -sf $config_prefix/khard/khard.conf /home/usr/.config/khard/khard.conf
mkdir -p /home/usr/.config/msmtp
${pkgs.coreutils}/bin/ln -sf $config_prefix/msmtp/config /home/usr/.config/msmtp/config
mkdir -p /home/usr/.config/neomutt
${pkgs.coreutils}/bin/ln -sf $config_prefix/neomutt/neomuttrc /home/usr/.config/neomutt/neomuttrc
mkdir -p /home/usr/.config/nvim
${pkgs.coreutils}/bin/ln -sf $config_prefix/nvim/init.lua /home/usr/.config/nvim/init.lua
${pkgs.coreutils}/bin/ln -sf $config_prefix/nvim/colors /home/usr/.config/nvim/colors
mkdir -p /home/usr/.config/rbw
${pkgs.coreutils}/bin/ln -sf $config_prefix/rbw/config.json /home/usr/.config/rbw/config.json
mkdir -p /home/usr/.config/ssh
mkdir -p /home/usr/.ssh
${pkgs.coreutils}/bin/ln -sf $config_prefix/ssh/config /home/usr/.config/ssh/config
${pkgs.coreutils}/bin/ln -sf $config_prefix/ssh/config /home/usr/.ssh/config
mkdir -p /home/usr/.config/sx
${pkgs.coreutils}/bin/ln -sf $config_prefix/sx/sxrc /home/usr/.config/sx/sxrc
mkdir -p /home/usr/.config/sxhkd
${pkgs.coreutils}/bin/ln -sf $config_prefix/sxhkd/sxhkdrc /home/usr/.config/sxhkd/sxhkdrc
${pkgs.coreutils}/bin/ln -sf $config_prefix/sxhkd/mouse /home/usr/.config/sxhkd/mouse
${pkgs.coreutils}/bin/ln -sf $config_prefix/sxhkd/nodemanip /home/usr/.config/sxhkd/nodemanip
mkdir -p /home/usr/.config/todoman
${pkgs.coreutils}/bin/ln -sf $config_prefix/todoman/config.py /home/usr/.config/todoman/config.py
mkdir -p /home/usr/.config/vdirsyncer
${pkgs.coreutils}/bin/ln -sf $config_prefix/vdirsyncer/config /home/usr/.config/vdirsyncer/config
mkdir -p /home/usr/.config/xscreensaver
${pkgs.coreutils}/bin/ln -sf $config_prefix/xscreensaver/.xscreensaver /home/usr/.config/xscreensaver/.xscreensaver
mkdir -p /home/usr/.config/zathura
${pkgs.coreutils}/bin/ln -sf $config_prefix/zathura/zathurarc /home/usr/.config/zathura/zathurarc
mkdir -p /home/usr/.local/share
${pkgs.coreutils}/bin/ln -sf $config_prefix/pape.jpg /home/usr/.local/share/pape.jpg
'';
deps = [];
};
};
}