nixdots/modules/home-manager/home.nix
2025-10-26 15:30:30 +03:00

163 lines
3.4 KiB
Nix

{
config,
pkgs,
inputs,
...
}: let
dots = "${config.home.homeDirectory}/nixdots/config";
symlink = path: config.lib.file.mkOutOfStoreSymlink path;
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system};
in {
imports = [
inputs.zen-browser.homeModules.twilight
inputs.spicetify-nix.homeManagerModules.default
inputs.noctalia.homeModules.default
./noctalia.nix
];
# Home Manager settings
programs.noctalia-shell.enable = true;
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
home.username = "tulg";
home.homeDirectory = "/home/tulg";
home.stateVersion = "25.05";
home.packages = with pkgs; [
quickshell
networkmanagerapplet
inputs.noctalia.packages.${pkgs.system}.default
wdisplays
nwg-look
rose-pine-gtk-theme
xfce.thunar
alejandra
arc-theme
swappy
pkgs.looking-glass-client
tmux
fastfetch
btop
pavucontrol
wl-clipboard
hyprcursor
parsec-bin
file-roller
hyprpolkitagent
pkgs.nixd
swww
grim
slurp
inxi
waybar
wofi
mako
feh
kitty
];
programs.vscode = {
enable = true;
profiles.default.extensions = with pkgs.vscode-extensions; [
pkgs.vscode-extensions.kamadorueda.alejandra
pkgs.vscode-extensions.jnoortheen.nix-ide
];
profiles.tulg.userSettings = {
};
};
programs.zen-browser.enable = true;
programs.zsh.enable = true;
programs.zen-browser.policies = {
DisableAppUpdate = true;
DisableTelemetry = true;
};
programs.vesktop.enable = true;
programs.spicetify = {
enable = true;
};
programs.yazi = {
enable = true;
settings = {
mgr = {
ratio = [1 1 6];
};
preview = {
max_width = 1000;
max_height = 900;
};
tasks = {
image_bound = [0 0];
};
};
};
xdg.configFile."hypr" = {
source = symlink "${dots}/hypr";
recursive = true;
};
xdg.configFile."waybar" = {
source = symlink "${dots}/waybar";
recursive = true;
};
xdg.configFile."kitty" = {
source = symlink "${dots}/kitty";
recursive = true;
};
xdg.configFile."wofi" = {
source = symlink "${dots}/wofi";
recursive = true;
};
xdg.configFile."mako" = {
source = symlink "${dots}/mako";
recursive = true;
};
programs.firefox.enable = true;
programs.bash = {
enable = true;
shellAliases = {
a = "echo idssss";
rb = "sudo nixos-rebuild switch --flake ~/nixdots#";
nixtest = "sudo nixos-rebuild test --flake ~/nixdots#";
infect = "nix run github:nix-community/nixos-anywhere -- -- flake";
};
bashrcExtra = ''
PS1="\[\e[38;5;177m\]\u\[\e[38;5;220m\]@\[\e[38;5;1m\]\h \[\e[38;5;33m\]\w \[\033[0m\]\$ "
'';
};
programs.git = {
enable = true;
settings = {
user.name = "tulg";
user.email = "tulg@protonmail.ch";
};
};
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 16;
};
home.sessionVariables = {
NIXOS_OZONE_WL = "1"; # hint Electron apps to use Wayland
QT_QPA_PLATFORM = "wayland";
};
xdg.portal = {
enable = true;
config.common.default = "*";
xdgOpenUsePortal = true;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
pkgs.xdg-desktop-portal-gtk
];
};
}