Files
NixOS/home.nix
T

183 lines
3.7 KiB
Nix

{ pkgs, ... }:
{
home.username = "reaper";
home.homeDirectory = "/home/reaper";
home.stateVersion = "26.11";
home.packages = with pkgs; [
oh-my-posh
nerd-fonts.hack
pkgs.nixfmt
nixd
pkgs.polkit_gnome
];
programs.git = {
enable = true;
settings.user.name = "ReaperOfVeriod";
settings.user.email = "oeps46@gmail.com";
};
programs.zsh = {
enable = true;
oh-my-zsh = {
enable = true;
plugins = [
"git"
"sudo"
];
theme = "";
};
shellAliases = {
ll = "ls -lah";
};
initContent = ''
eval "$(oh-my-posh init zsh)"
'';
};
# AppLauncher
programs.wofi = {
enable = true;
settings = {
show = "drun";
width = 500;
height = 350;
prompt = "Search applications";
allow_images = true;
image_size = 24;
};
};
# Terminal
programs.kitty = {
enable = true;
settings = {
font_family = "Hack Nerd Font";
font_size = 12;
};
};
# Baseline user programs
#firefox
programs.firefox = {
enable = true;
# Firefox profile
profiles.default = {
id = 0;
name = "default";
isDefault = true;
# Settings
settings = {
"browser.startup.homepage" = "https://home.reaperofveriod.nl";
"browser.search.region" = "NL";
"browser.search.isUS" = false;
"browser.startup.page" = 3;
"privacy.donatenotrack.enabled" = true;
"privacy.trackingprotection.enabled" = true;
};
};
# Extensions
policies.ExtensionSettings = {
"uBlock0@raymondhill.net" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed";
};
};
};
# Vscodium
programs.vscodium = {
enable = true;
package = pkgs.vscodium;
mutableExtensionsDir = false;
profiles.default = {
extensions = with pkgs.vscode-extensions; [
jnoortheen.nix-ide
];
userSettings = {
# General editor settings
"editor.tabSize" = 2;
"editor.insertSpaces" = true;
"editor.detectIndentation" = false;
"editor.formatOnSave" = true;
"editor.bracketPairColorization.enabled" = true;
# Nix language support
"nix.enableLanguageServer" = true;
"nix.serverPath" = "${pkgs.nixd}/bin/nixd";
# Nix-specific settings
"[nix]" = {
"editor.defaultFormatter" = "jnoortheen.nix-ide";
"editor.tabSize" = 2;
"editor.formatOnSave" = true;
};
# Formatting
"nix.formatterPath" = "${pkgs.nixfmt}/bin/nixfmt";
};
};
};
# Hyprland
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = false; # So home-manager works.
configType = "hyprlang";
settings = {
monitor = [
"DP-1,1920x1080@143.85,1920x0,1"
"DP-2,1920x1080@119.98,3840x0,1"
"DP-3,1920x1080@119.98,0x0,1"
];
bind = [
"CTRL_L ALT_L , T, exec, kitty"
"CTRL_L SHIFT_L , Q, killactive"
", SUPER_L, exec, ${pkgs.writeShellScript "wofi-toggle" ''
if ${pkgs.procps}/bin/pgrep -f '/bin/wofi|wofi --show' > /dev/null; then
${pkgs.procps}/bin/pkill -f '/bin/wofi|wofi --show'
else
${pkgs.wofi}/bin/wofi --show drun
fi
''}"
];
exec-once = [
"waybar"
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
];
general = {
gaps_in = 5;
gaps_out = 10;
border_size = 2;
};
decoration = {
rounding = 8;
};
};
};
programs.home-manager.enable = true;
}