modularization

This commit is contained in:
tulg 2026-01-10 18:00:49 +03:00
parent 3599d9c057
commit 71e22f65bb
12 changed files with 173 additions and 145 deletions

View file

@ -124,19 +124,6 @@ misc {
# sensitivity = -0.5
#}
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# Example windowrule v1
#windowrule = float, ^(kitty)$
#windowrule = float, ^(garuda-assistant)$
#windowrule = float, ^(garuda-boot-options)$
#windowrule = float, ^(garuda-boot-repair)$
#windowrule = float, ^(garuda-gamer)$
#windowrule = float, ^(garuda-network-assistant)$
#windowrule = float, ^(garuda-settings-manager)$
#windowrule = float, ^(garuda-welcome)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = ALT
@ -238,12 +225,6 @@ bind = $mainMod, F, fullscreen
bind = $mainMod, Q, exec, kitty yazi
bind = ,232,exec,brightnessctl -c backlight set 5%-
bind = ,233,exec,brightnessctl -c backlight set +5%
#bind = $mainMod SHIFT,C, exec, killall -9 wpaperd && wpaperd
# Screenshots:
#
# Change to swappy https://github.com/jtheoof/swappy
# Old functions only commented out to make it easier for the user to change if necessary.
# Snip a selection and pipe to swappy
bind =$mainMod,S, exec, grim -g "$(slurp)" - | swappy -f -
@ -252,17 +233,6 @@ bind = CTRL, Print, exec, .config/hypr/scripts/screenshot_window.sh
# Screenshot the current display and pipe to swappy
bind = SHIFT, Print, exec, .config/hypr/scripts/screenshot_display.sh
# https://github.com/hyprwm/contrib/blob/main/grimblast/grimblast.1.scd
# Print: All outputs
# SHIFT+Print: Select area
# $mainMod+Print: Current window
# $mainMod+Shfit+Print: Current output
#
# bind = ,Print, exec, grimblast save screen && notify-send Screenshot captured
# bind = SHIFT, Print, exec, grimblast save area && notify-send Selected\ area captured
# bind = $mainMod, Print, exec, grimblast save active && notify-send Active\ window captured
# bind = $mainMod SHIFT, Print, exec, grimblast output active && notify-send Output captured
# for resizing window
# will switch to a submap called resize
bind=$mainMod,R,submap,resize
@ -299,9 +269,8 @@ bind = $mainMod SHIFT,L, movewindow, r
# other blurings
blurls = wofi
blurls = thunar
blurls = gedit
blurls = gtk-layer-shell # for nwg-drawer
blurls = catfish
blurls = gtk-layer-shell
# window rules
#windowrule = opacity 0.85 override 0.85 override,^(thunar)$
#windowrule = opacity 0.85 override 0.85 override,^(gedit)$

View file

@ -0,0 +1,6 @@
{lib, ...}: {
imports = [
./yazi.nix
./shell.nix
];
}

View file

@ -0,0 +1,26 @@
{pkgs, ...}: {
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";
};
};
programs.zsh.enable = true;
}

View file

@ -0,0 +1,35 @@
{
config,
pkgs,
...
}: {
programs.yazi = {
enable = true;
settings = {
mgr = {
ratio = [1 1 6];
};
preview = {
max_width = 1000;
max_height = 900;
};
tasks = {
image_bound = [0 0];
};
keymap = {
mgr.prepend_keymap = [
{
on = "x";
for = "linux";
run = "shell -- hyprctl hyprpaper wallpaper ,%h";
desc = "Set hovered file as wallpaper";
}
];
};
};
};
}

View file

@ -0,0 +1,17 @@
{
lib,
inputs,
...
}: {
imports = [
inputs.zen-browser.homeModules.twilight
];
programs.zen-browser.enable = true;
programs.firefox.enable = true;
programs.zen-browser.policies = {
DisableAppUpdate = true;
DisableTelemetry = true;
};
}

View file

@ -0,0 +1,9 @@
{lib, ...}: {
imports = [
./noctalia.nix
./symlink.nix
./hyprland.nix
./spicetify.nix
./browsers/zen.nix
];
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
...
}: {
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";
KITTY_DISABLE_WAYLAND_PORTAL = 1;
};
xdg.portal = {
enable = true;
# wlr.enable = true;
config.common.default = "hyprland";
xdgOpenUsePortal = true;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
];
};
}

View file

@ -4,7 +4,7 @@
...
}: {
imports = [
#inputs.noctalia.homeModules.default
inputs.noctalia.homeModules.default
];
programs.noctalia-shell = {

View file

@ -0,0 +1,16 @@
{
inputs,
pkgs,
...
}: let
spicePkgs =
inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system};
in {
imports = [
inputs.spicetify-nix.homeManagerModules.default
];
programs.spicetify = {
enable = true;
};
}

View file

@ -0,0 +1,25 @@
{config, ...}: let
dots = "${config.home.homeDirectory}/nixdots/config";
link = path: config.lib.file.mkOutOfStoreSymlink path;
in {
xdg.configFile."hypr" = {
source = link "${dots}/hypr";
recursive = true;
};
xdg.configFile."waybar" = {
source = link "${dots}/waybar";
recursive = true;
};
xdg.configFile."kitty" = {
source = link "${dots}/kitty";
recursive = true;
};
xdg.configFile."wofi" = {
source = link "${dots}/wofi";
recursive = true;
};
xdg.configFile."mako" = {
source = link "${dots}/mako";
recursive = true;
};
}

View file

@ -3,20 +3,12 @@
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
./cli/default.nix
./desktop/default.nix
];
# Home Manager settings
programs.noctalia-shell.enable = true;
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
home.username = "tulg";
home.homeDirectory = "/home/tulg";
@ -44,6 +36,7 @@ in {
hyprcursor
parsec-bin
file-roller
hyprpaper
hyprpolkitagent
pkgs.nixd
swww
@ -65,103 +58,6 @@ in {
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";
KITTY_DISABLE_WAYLAND_PORTAL=1;
};
xdg.portal = {
enable = true;
# wlr.enable = true;
config.common.default = "hyprland";
xdgOpenUsePortal = true;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
];
};
}

View file

@ -1,11 +1,12 @@
{
config,
pkgs,
inputs,
...
}: {
fonts.fontconfig.enable = true;
fonts.packages = with pkgs; [
# noto-fonts-color-emoji
# noto-fonts-color-emoji
fira
fira-sans
fira-code
@ -51,7 +52,6 @@
targets.nixvim.enable = false;
targets.qt.enable = true;
# targets.rofi.enable = false;
targets.spicetify.enable = true;
# image = ../../assets/Shogoki.png;
# opacity = {