{ config, pkgs, ... }: { home.username = "th3r00t"; home.homeDirectory = "/home/th3r00t"; home.file.".local/usr/bin" = { source = ./home/.local/usr/bin; recursive = true; executable = true; }; home.file.".local/usr/lib/blightmud" = { source = ./home/.local/usr/lib/blightmud; recursive = true; executable = true; }; home.file.".config/nvim" = { source = ./home/config/nvim; recursive = true; executable = true; }; home.file.".irssi" = { source = ./home/.irssi; recursive = true; executable = true; }; home.file.".config/dosbox-x" = { source = ./home/config/dosbox-x; recursive = true; executable = true; }; home.file.".config/waybar/power_menu.xml" = { source = ./home/config/waybar/power_menu.xml; recursive = true; executable = true; }; home.file.".config/qutebrowser/blocked-hosts" = { source = ./home/config/qutebrowser/blocked-hosts; recursive = true; executable = true; }; home.file.".ssh/allowed_signers".text = '' * ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH8P/3yzsruekSaZ9b+yk429VTcfCtI1j8jnkNbPAgnr th3r00t@nixos ''; imports = [ modules/hyprland.nix modules/home-manager-common.nix ]; xdg.enable = true; programs.nix-index.enable = true; fonts.fontconfig.enable = true; home.sessionVariables = { EDITOR = "nvim"; BROWSER = "qutebrowser"; PLATFORMTHEME = "kde"; }; home.packages = with pkgs; [ mesa-demos bluez bluez-tools bluez-alsa kdePackages.dolphin gimp rofi qutebrowser foot hyprsysteminfo dosbox-x wofi qutebrowser waybar uwsm power-profiles-daemon wpa_supplicant_gui ]; programs.wofi = { enable = true; settings = { location = "top-center"; allow_markup = true; width = 400; }; style = '' /* Base */ window { background-color: rgba(17, 24, 39, 0.6); box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); border-radius: 1rem; font-size: 1rem; } window #outer-box { } window #outer-box #input { background-color: rgba(17,24,39,0.6); color: #c0caf5; border: none; border-bottom: 1px solid rgba(17,24,39,0.2); padding: 0.8rem 1rem; font-size: 1rem; border-radius: 1rem 1rem 0 0; } /* focus states (no #window!) */ window #outer-box #input:focus, window #outer-box #input:focus-visible, window #outer-box #input:active { border: none; outline: 2px solid transparent; outline-offset: 2px; } window #outer-box #scroll { } window #outer-box #scroll #inner-box { } window #outer-box #scroll #inner-box #entry { color: #c0caf5; background-color: rgba(17,24,39,0.1); padding: 0.6rem 1rem; } window #outer-box #scroll #inner-box #entry #img { width: 1rem; margin-right: 0.5rem; } window #outer-box #scroll #inner-box #entry:selected { color: #c0caf5; background-color: rgba(38,50,56,0.1); outline: none; } ''; }; programs.foot = { enable = true; server.enable = true; settings = { main = { term = "foot"; font = "SauceCodePro Nerd Font Mono:size=6"; dpi-aware = "yes"; shell = "${pkgs.zsh}/bin/zsh"; }; mouse = { hide-when-typing = "yes"; }; cursor = { style = "block"; blink = "yes"; }; colors = { alpha = "0.7"; background="1a1b26"; foreground="a9b1d6"; flash="ff9e64"; flash-alpha="0.5"; regular0="1a1b26"; regular1="f7768e"; regular2="9ece6a"; regular3="e0af68"; regular4="7aa2f7"; regular5="bb9af7"; regular6="7dcfff"; regular7="c0caf5"; bright0="545c7e"; bright1="ff7a93"; bright2="b9f27c"; bright3="ff9e64"; bright4="7aa2f7"; bright5="bb9af7"; bright6="7dcfff"; bright7="a9b1d6"; sixel0="1a1b26"; sixel1="7aa2f7"; sixel2="f7768e"; sixel3="9ece6a"; sixel4="bb9af7"; sixel5="7dcfff"; sixel6="e0af68"; sixel7="565f89"; sixel8="414868"; sixel9="4e5173"; sixel10="8f5151"; sixel11="4e7652"; sixel12="8a4d8f"; sixel13="4e757a"; sixel14="8a8851"; sixel15="a9b1d6"; selection-foreground="1a1b26"; selection-background="a9b1d6"; jump-labels="1a1b26 e0af68"; scrollback-indicator="1a1b26 7aa2f7"; search-box-no-match="1a1b26 f7768e"; search-box-match="1a1b26 e0af68"; urls="e0af68"; }; }; }; programs.hyprlock = { enable = true; settings = { general = { disable_loading_bar = true; grace = 300; hide_cursor = true; no_fade_in = false; }; background = [ { path = "screenshot"; blur_passes = 3; blur_size = 8; } ]; input-field = [ { size = "400, 100"; position = "0, -80"; monitor = ""; dots_center = true; fade_on_empty = false; font_color = "rgb(202, 211, 245)"; inner_color = "rgb(91, 96, 120)"; outer_color = "rgb(24, 25, 38)"; outline_thickness = 5; placeholder_text = "Password"; shadow_passes = 2; } ]; }; }; services.hypridle = { enable = true; settings = { general = { after_sleep_cmd = "hyprctl dispatch dpms on"; ignore_dbus_inhibit = false; lock_cmd = "hyprlock"; }; listener = [ { timeout = 300; on-timeout = "hyprlock"; } { timeout = 600; on-timeout = "hyprctl dispatch dpms off"; on-resume = "hyprctl dispatch dpms on"; } ]; }; }; home.stateVersion = "25.05"; }