.hive/home/jonas.nix

118 lines
2.7 KiB
Nix

{
config,
pkgs,
...
}: rec {
imports = [
../modules/home/borg.nix
../modules/home/doom
../modules/home/dunst
../modules/home/firefox.nix
../modules/home/hyprland
../modules/home/kitty
../modules/home/ranger
../modules/home/ssh.nix
../modules/home/themes/gtk
../modules/home/themes/qt
../modules/home/waybar
../modules/home/wlogout
../modules/home/wofi
../modules/home/yubikey.nix
../modules/home/zsh
];
# Home Manager needs a bit of information about you and the paths it should
# manage.
home.username = "jonas";
home.homeDirectory = "/home/jonas";
sops = {
age.keyFile = "${home.homeDirectory}/.config/sops/age/keys.txt";
};
xdg.mimeApps = {
enable = true;
defaultApplications = {
"text/html" = "firefox.desktop";
"x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "firefox.desktop";
"x-scheme-handler/about" = "firefox.desktop";
"x-scheme-handler/unknown" = "firefox.desktop";
};
};
xdg.userDirs.enable = true;
xdg.userDirs.createDirectories = true;
xdg.userDirs.extraConfig = {
XDG_WORKSPACES_DIR = "${config.home.homeDirectory}/Workspaces";
XDG_NEXTCLOUD_DIR = "${config.home.homeDirectory}/Nextcloud";
XDG_NOTES_DIR = "${config.home.homeDirectory}/Notes";
};
# This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes.
#
# You should not change this value, even if you update Home Manager. If you do
# want to update the value, then make sure to first check the Home Manager
# release notes.
home.stateVersion = "24.05"; # Please read the comment before changing.
# The home.packages option allows you to install Nix packages into your
# environment.
home.packages = with pkgs; [
arduino
bat
chromium
drawio
ffmpeg
firefox
fzf
htop
insomnia
kicad
killall
mosquitto
mupdf
neofetch
nil
nix-search-cli
nixpkgs-fmt
obsidian
pass
poetry
python311Packages.radian
qalculate-qt
qtpass
rstudio
thefuck
vim
vscode
w3m
youtube-dl
];
nixpkgs.config.permittedInsecurePackages = [
"electron-25.9.0" # required by obsidian
"python3.11-youtube-dl-2021.12.17"
];
home.sessionVariables = {
EDITOR = "vim";
};
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
# Git
programs.git = {
enable = true;
userName = "Jonas Röger";
userEmail = "jonas.roeger@tu-dortmund.de";
difftastic.enable = true;
signing = {
signByDefault = true;
key = "4000EB35E1AE0F07";
};
};
}