nix-config/home/nixos-common.nix

202 lines
3.8 KiB
Nix

{ config, inputs, pkgs, stablePkgs, ... }:
{
# Let Home Manager install and manage itself.
# programs.home-manager.enable = true;
# Home Manager needs a bit of information about you and the
# paths it should manage.
home.username = "rilla";
home.homeDirectory = "/home/rilla";
imports = [
./arduino
./barrier
./browsers
./cheat
./dav
./fonts
./git
./gotify
./gpg
./idasen
./lf
./mail
./maker
./minidisc
./mpd
./msg
./music
./neovim
./nsxiv
./pass
./rss
./snapcast
./sound
./ssh
./syncthing
./tmux
./vitetris
./wallets
./wine
./xdg
./zsh
];
home.persistence = {
"/data/${config.home.homeDirectory}" = {
directories = [
"Audio"
"Calendars"
"Contacts"
"Documents"
"Downloads"
"Images"
"Maildir"
"Monero"
"Nextcloud"
"code"
"configs"
"misc"
"workspace"
];
allowOther = true;
};
"/persist/${config.home.homeDirectory}" = {
directories = [
".Slic3r"
".abook"
".bitmonero"
".cache"
".config/Element"
".config/Nextcloud"
".config/Signal"
".config/SuperCollider"
".config/ardour6"
".config/chromium"
".config/kdeconnect"
".config/kicad"
".config/syncthing"
".config/whatsapp-for-linux"
".gnupg/private-keys-v1.d"
".hydrogen"
".librewolf"
".local/share/Bisq"
".local/share/SuperCollider"
".local/share/TelegramDesktop"
".local/share/dino"
".local/share/keyrings"
".local/share/mpd"
".local/share/webkitgtk"
".local/state/wireplumber"
".mozilla"
".newsboat"
".password-store"
".vagrant.d"
".vdirsyncer"
".walletwasabi"
".wine"
];
files = [
".gnupg/pubring.kbx"
".gnupg/trustdb.gpg"
".mailsynclastrun"
".ssh/known_hosts"
".zsh_history"
".lmmsrc.xml"
];
allowOther = true;
};
};
home.sessionVariables = {
EDITOR = "${pkgs.neovim}/bin/nvim";
VISUAL = "${pkgs.neovim}/bin/nvim";
BROWSER = "${pkgs.firefox}/bin/firefox";
# OPENER = "todo"; # todo
TERMINAL = "${pkgs.alacritty}/bin/alacritty";
CM_LAUNCHER = "rofi"; # for clipmenu
LEDGER_FILE = "${config.home.homeDirectory}/finance/2021.journal";
QT_QPA_PLATFORMTHEME = "qt5ct";
};
home.packages = with pkgs; [
R
acpi
android-tools
ansible
bind.dnsutils
# calibre
docker-compose
file
gimp
gnumake
html-tidy
htop
inetutils # telnet
j2cli
jq
killall
libnotify
libreoffice
lxqt.pcmanfm-qt
mosh
mpv
neofetch
networkmanagerapplet
nextcloud-client
pandoc
pv
ripgrep
sassc
shellcheck
signify
unzip
vagrant
virt-manager
wget
];
services.kdeconnect = {
enable = true;
indicator = true;
};
programs.bat = {
enable = true;
config = { theme = "gruvbox-dark"; };
};
programs.fzf = {
enable = true;
enableZshIntegration = true;
# defaultOptions = [
# "--preview --preview 'bat --color=always --style=header,grid --line-range :300 {}'"
# ];
tmux.enableShellIntegration = true;
};
services.gnome-keyring = {
enable = true;
components = [ "secrets" ];
};
services.nextcloud-client = {
enable = true;
startInBackground = true;
};
services.network-manager-applet.enable = true;
dconf.settings = {
"org/virt-manager/virt-manager/connections" = {
"autoconnect" = [ "qemu:///system" ];
"uris" = [ "qemu:///system" ];
};
};
home.stateVersion = "21.11";
}