116 lines
2.3 KiB
Nix
116 lines
2.3 KiB
Nix
{ pkgs, inputs, ... }:
|
|
{
|
|
imports = [
|
|
./features/audio.nix
|
|
./features/shell.nix
|
|
./features/terminal.nix
|
|
./features/hyprland.nix
|
|
./features/neovim.nix
|
|
];
|
|
|
|
home.username = "drew";
|
|
home.homeDirectory = "/home/drew";
|
|
|
|
nix.settings.experimental-features = ["flakes" "nix-command"];
|
|
|
|
home.packages = with pkgs; [
|
|
# Development
|
|
git
|
|
nix-prefetch-github
|
|
|
|
# Utilities
|
|
htop
|
|
btop
|
|
zip
|
|
xz
|
|
unzip
|
|
p7zip
|
|
httpie
|
|
neofetch
|
|
file
|
|
tree
|
|
jq
|
|
killall
|
|
ranger
|
|
|
|
|
|
# Networking
|
|
dnsutils
|
|
socat
|
|
|
|
# Applications
|
|
discord
|
|
webcord # Discord app replacement
|
|
element-desktop
|
|
signal-desktop
|
|
obsidian
|
|
firefox
|
|
waypaper # Wallpaper switcher
|
|
feh
|
|
|
|
# Gaming
|
|
mangohud
|
|
(lutris.override {
|
|
extraPkgs = pkgs: [
|
|
winetricks # Needed for bnet setup.
|
|
vulkan-tools # Needed for bnet setup
|
|
];
|
|
})
|
|
protonup-ng
|
|
vulkan-tools # useful for debugging Vulkan issues
|
|
|
|
# Desktop Environment
|
|
networkmanagerapplet # network control
|
|
hyprlock # lock screen
|
|
wofi # launcher
|
|
hyprpaper # wallpaper
|
|
swayidle # lock on idle
|
|
swayosd # volume pop-up
|
|
eww # widgets
|
|
swaynotificationcenter # notifications
|
|
hyprpolkitagent # Privilege managent
|
|
gnome-keyring # Secret management
|
|
glib # for Gnome/GTK settings
|
|
xdg-desktop-portal-hyprland
|
|
xdg-desktop-portal-gtk # GTK backend for XDG components like pickers
|
|
grim # Screenshot provider
|
|
nwg-look # GTK settings editor
|
|
playerctl # for universal play/pause etc
|
|
wirelesstools
|
|
];
|
|
|
|
xdg.desktopEntries = {
|
|
element-desktop = {
|
|
name = "Element";
|
|
# Custom options to reduce flickering under wayland.
|
|
exec = "element-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-gpu";
|
|
};
|
|
};
|
|
|
|
# Hint for electron apps to use wayland
|
|
home.sessionVariables.NIXOS_OZONE_WL = "1";
|
|
|
|
# GTK settings
|
|
gtk = {
|
|
enable = true;
|
|
theme = {
|
|
name = "Adwaita-dark";
|
|
package = pkgs.gnome-themes-extra;
|
|
};
|
|
gtk3.extraConfig = {
|
|
gtk-application-prefer-dark-theme = true;
|
|
};
|
|
gtk4.extraConfig = {
|
|
gtk-application-prefer-dark-theme = true;
|
|
};
|
|
};
|
|
|
|
qt = {
|
|
enable = true;
|
|
platformTheme.name = "adwaita";
|
|
style.name = "adwaita-dark";
|
|
};
|
|
|
|
home.stateVersion = "24.11";
|
|
}
|