# aurora's configgg!! :333 # trans <3 { inputs, upkgs, root, system, ... }: { imports = [ inputs.zen.homeModules.twilight ../modules/programs/iamb/iamb.nix ../modules/programs/neovim/nixcats.nix ../modules/programs/spicetify.nix ../modules/programs/yazi/yazi.nix ../modules/programs/nixcord.nix #../modules/services/keepassxc/keepassxc.nix ../modules/services/dunst.nix ../modules/services/pulse/pulse.nix ../modules/shell/zsh.nix ../modules/shell/programs.nix ../modules/shell/zellij/zellij.nix ../modules/shell/fastfetch/fastfetch.nix ../modules/wm/hyprland/hyprland.nix ../modules/wm/river.nix ../modules/wm/sway.nix ../modules/de/waybar/waybar.nix ../modules/de/rofi/rofi.nix ../modules/de/hyprlock/hyprlock.nix ../modules/de/awww.nix ../modules/themeing/wallust/wallust.nix #../modules/themeing/hellwal/hellwal.nix ]; home.sessionVariables = { # xdg session variables XDG_CACHE_HOME = "$HOME/.cache"; XDG_CONFIG_HOME = "$HOME/.config"; XDG_DATA_HOME = "$HOME/.local/share"; XDG_STATE_HOME = "$HOME/.local/state"; XDG_BIN_HOME = "$HOME/.local/bin"; # not official spec NIXOS_OZONE_WL = "1"; }; home.sessionPath = [ "$XDG_BIN_HOME" ]; # consider not using this as its not really the nix way # the way i should be doing this is with nix derivations # # copy user scripts to .local/bin home.file.".local/bin" = { source = root + "/homes/modules/scripts"; recursive = true; }; fonts.fontconfig.enable = true; home.file.".mozilla/native-messaging-hosts/tridactyl.json".source = "${upkgs.tridactyl-native}/lib/mozilla/native-messaging-hosts/tridactyl.json"; # some packages are enabled from their own module in ./modules home.packages = with upkgs; [ gcr # provides org.gnome.keyring.SystemPrompter dix # nix diff # fonts nerd-fonts.departure-mono # pretty pixel art font i love!! x3 nerd-fonts.jetbrains-mono # cli / tui tools and commands! eza # replaces: ls (rust) fzf # fuzzy finder bat # replaces: cat (rust) tokei # counts lines of code starship # shell prompt :3 bacon # background rust code checker (can also use mprocs) mprocs # tui tool to run multiple commands in parallel and show outputs :3 speedtest-rs # speedtest.net in rust! ripgrep # rlly fast grep :3 zip # zips .zip unzip # unzips .zip (btop.override {rocmSupport = true;}) # btop + amd gpu support nmap # network discovery and mapping tool! distrobox # use any linux distro inside ur terminal x3 parted # create, resize, copy, image partitions popsicle # usb flasher (can be used as a gui tool too :3) caligula # disk burning tool like popsicle! exiftool # display and edit metadata on a variety of files helix # like neovim but rust /hj :333 halloy # irc tui app written in rust # cli fun pokeget-rs # prints a random pokemon to the terminal :3 pipes # pipes program <3 # dev gnumake gcc cmake glib glibc pkg-config gobject-introspection rustup zig elixir gleam delta # git diff viewer # apps qutebrowser # keyboard-focused browser (chromium) firefox # (firefox) tridactyl-native # for firefox browsers chromium # (chromium) obsidian # literally best notes app (i use vim mode) kdePackages.dolphin qimgv # image viewer! feh # other image viewer! (im indecisive) vesktop # modded discord client! gimp # open source image manipulation program krita # open source painting application! imhex # hex editor kicad # open source electronics design program easyeda2kicad libreoffice-qt # word, excel, pdf etc open source programs hunspell # spell checker calibre # ebook reader obs-studio cytoscape element-desktop # 'official' gui matrix client blender # AMAZING 3D MODELLING PROGRAMMM <3 session-desktop # idk silly chat app # media playerctl # mpris cli interface for media apps :3 qpwgraph qbittorrent syncplay # syncs media players # games r2modman # mod manager for lots of games!! prismlauncher # minecraft launcher bottles # wineprefix manager # vr sidequest # app store for sideloading onto vr headsets slimevr # I LOVE MY SLIMES THEY ARE SO COOL x3333333333 slimevr-server # silly slimes!!!! <3 # gui settings apps nwg-look # gtk 2 / 3 settings thing idc i hate gtk pavucontrol # i wanna get rid of this but its audio control thing rquickshare # android quick share (this is pretty cool!!) # wayland desktop tools / de / wm stuff / gui stuffs cliphist wl-clipboard wl-clip-persist grim # screenshot tool!! slurp # used to crop the screenshots!! swappy # screenshot edit tool (also there is: satty, flameshot) hyprpicker # color picker!!! hyprcursor # hyprland cursor util wtype # can emulate keybinds wlrctl # can emulate mouse stuff mpvpaper # can use videos as wallpapers :3 # misc kdePackages.qtwayland kdePackages.qtsvg adwaita-icon-theme libadwaita gnome-themes-extra arch-install-scripts xcur2png alsa-utils gphoto2 # for my dslr!!! ffmpeg ]; programs = { gpg.enable = true; git = { enable = true; settings = { user = { name = "aurora"; email = "aurora@example.com"; }; gpg.program = "gpg2"; # delta diff viewer core.pager = "delta"; interactive.diffFilter = "delta --color-only"; delta = { navigate = true; line-numbers = true; side-by-side = true; }; merge.conflictStyle = "zdiff3"; }; includes = [ { condition = "hasconfig:remote.*.url:git@github.com:*/**"; contents = { user = { name = "auroraveon"; email = "78045343+auroraveon@users.noreply.github.com"; }; }; } { condition = "hasconfig:remote.*.url:https://github.com/**"; contents = { user = { name = "auroraveon"; email = "78045343+auroraveon@users.noreply.github.com"; }; }; } { condition = "hasconfig:remote.*.url:ssh://git@codeberg.org/**"; contents = { user = { name = "foxxyora"; email = "foxxyora@noreply.codeberg.org"; }; }; } { condition = "hasconfig:remote.*.url:https://codeberg.org/**"; contents = { user = { name = "foxxyora"; email = "foxxyora@noreply.codeberg.org"; }; }; } { condition = "hasconfig:remote.*.url:ssh://git@tearforge.net:2222/**"; contents = { user = { name = "foxora"; email = "foxora@noreply.tearforge.net"; }; }; } { condition = "hasconfig:remote.*.url:https://tearforge.net/**"; contents = { user = { name = "foxora"; email = "foxora@noreply.tearforge.net"; }; }; } ]; }; kitty = { enable = true; package = upkgs.kitty; font = { name = "DepartureMono Nerd Font Mono"; size = 10; }; settings = { scrollback_lines = 16384; enable_audio_bell = false; update_check_interval = 0; allow_remote_control = "yes"; # used for scripts to control kitty confirm_os_window_close = 0; # disable close window prompt }; extraConfig = '' include ~/.config/kitty/theme.conf ''; }; zen-browser = { enable = true; package = inputs.zen.packages.${system}.twilight; }; mpv = { enable = true; config = { profile = "gpu-hq"; loop-file = "inf"; target-colorspace-hint = "no"; # stops mpv from turning hdr on when fullscreened }; }; }; # The state version is required and should stay the version you originally installed home.stateVersion = "24.11"; }