improvements

This commit is contained in:
2025-02-03 13:40:08 +01:00
parent 84004b6391
commit 69db03c140
44 changed files with 905 additions and 2180 deletions

View File

@@ -1,5 +1,4 @@
{
config,
pkgs,
lib,
osConfig,
@@ -9,131 +8,75 @@
config = lib.mkIf osConfig.desktops.hyprland.enable {
wayland.windowManager.hyprland = {
enable = true;
systemd = {
enable = true;
variables = [ "--all" ];
};
settings = {
env = [
"XDG_SESSION_TYPE,wayland"
"NIXOS_OZONE_WL,1"
# Gnome file manager fix
"GIO_EXTRA_MODULES,${pkgs.gnome.gvfs}/lib/gio/modules"
];
exec-once = [
"gnome-keyring-daemon --start --components=secrets"
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
];
input = {
accel_profile = "flat";
kb_layout = osConfig.services.xserver.xkb.layout;
kb_variant = osConfig.services.xserver.xkb.variant;
};
bind = import ./keybinds.nix;
bindm = import ./mousebinds.nix;
bindr = [ "SUPER,SUPER_L,exec,pkill anyrun || anyrun" ];
workspace = [
"special:calc,border:false,gapsout:200,on-created-empty:[noanim;silent] kitty -e qalc"
];
windowrulev2 =
let
firefoxPip = "class:^(firefox)$,title:^(Picture-in-Picture)$";
firefoxPipInitial = "class:^(firefox)$,title:^(Firefox)$";
pipPadding = toString (config.theme.md3-evo.padding * 2);
in
[
"keepaspectratio,${firefoxPip}"
"noborder,${firefoxPip}"
"float,${firefoxPip}"
"float,${firefoxPipInitial}"
"pin,${firefoxPip}"
"pin,${firefoxPipInitial}"
"fullscreenstate 2 0,${firefoxPip}"
"fullscreenstate 2 0,${firefoxPipInitial}"
"move ${pipPadding} ${pipPadding},${firefoxPip}"
"move ${pipPadding} ${pipPadding},${firefoxPipInitial}"
# For some reason it really wants to be maximized
"suppressevent maximize,class:^(neovide)$"
# pinentry
"dimaround,class:^(gcr-prompter)$"
"noborder,class:^(gcr-prompter)$"
"rounding 10,class:^(gcr-prompter)$"
"animation slide,class:^(gcr-prompter)$"
# Flameshot fixes
"float,class:^(flameshot)$"
"animation fade,class:^(flameshot)$"
bind = [
"SUPER,Q,killactive"
"SUPER,P,togglefloating,"
"SUPER,P,pin,"
"SUPER,D,fullscreen,1"
"SUPER,V,fullscreen,0"
"float,class:^(zenity)$"
];
"SUPER_SHIFT,up,movewindow,u"
"SUPER_SHIFT,down,movewindow,d"
"SUPER_SHIFT,left,movewindow,l"
"SUPER_SHIFT,right,movewindow,r"
"SUPER,up,movefocus,u"
"SUPER,down,movefocus,d"
"SUPER,left,movefocus,l"
"SUPER,right,movefocus,r"
"SUPER,f,workspace,r-1"
"SUPER,h,workspace,r+1"
"SUPER_SHIFT,f,movetoworkspace,r-1"
"SUPER_SHIFT,h,movetoworkspace,r+1"
"SUPER,mouse_up,workspace,r+1"
"SUPER,mouse_down,workspace,r-1"
"SUPER,1,workspace,1"
"SUPER,2,workspace,2"
"SUPER,3,workspace,3"
"SUPER,4,workspace,4"
"SUPER,5,workspace,5"
"SUPER,6,workspace,6"
"SUPER,7,workspace,7"
"SUPER,8,workspace,8"
"SUPER,9,workspace,9"
"SUPER_SHIFT,1,movetoworkspace,1"
"SUPER_SHIFT,2,movetoworkspace,2"
"SUPER_SHIFT,3,movetoworkspace,3"
"SUPER_SHIFT,4,movetoworkspace,4"
"SUPER_SHIFT,5,movetoworkspace,5"
"SUPER_SHIFT,6,movetoworkspace,6"
"SUPER_SHIFT,7,movetoworkspace,7"
"SUPER_SHIFT,8,movetoworkspace,8"
"SUPER_SHIFT,9,movetoworkspace,9"
];
bindm = [
"SUPER,mouse:272,movewindow"
"SUPER,mouse:273,resizewindow"
];
misc = {
layers_hog_keyboard_focus = false;
disable_splash_rendering = true;
disable_hyprland_logo = true;
background_color = "rgb(000000)";
force_default_wallpaper = 0;
};
layerrule = [
"blur, anyrun"
"ignorealpha 0.3, anyrun"
];
decoration.shadow = {
enabled = true;
range = 16;
color = "rgba(00000044)";
};
animations = {
enabled = "yes";
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
animation = [
"windows, 1, 5, myBezier"
"windowsOut, 1, 7, default, popin 80%"
"border, 1, 10, default"
"fade, 1, 7, default"
"workspaces, 1, 6, default"
];
};
};
};
services.kdeconnect = {
services.udiskie = {
enable = true;
indicator = true;
tray = "never";
};
services.flameshot = {
enable = true;
package = pkgs.flameshot.overrideAttrs (
final: prev: {
cmakeFlags = [
"-DUSE_WAYLAND_CLIPBOARD=1"
"-DUSE_WAYLAND_GRIM=true"
];
nativeBuildInputs = prev.nativeBuildInputs ++ [ pkgs.libsForQt5.kguiaddons ];
}
);
settings = {
General = {
uiColor = "#99d1db";
showDesktopNotification = false;
disabledTrayIcon = true;
};
};
};
programs.kitty = import ./kitty.nix { inherit pkgs; };
programs.anyrun = import ./anyrun.nix { inherit pkgs; };
services.udiskie.enable = true;
services.udiskie.tray = "never";
fonts.fontconfig.enable = true;
home.packages = with pkgs; [
# fonts
noto-fonts
# essentials
hyprpicker
grim
slurp
wl-clipboard
polkit_gnome
# qt/kde packages
qt6.qtwayland
qt5.qtwayland
@@ -142,47 +85,22 @@
evince
baobab
gnome.gvfs
gnome-keyring
nautilus
gnome-calendar
gnome-characters
gnome-contacts
gnome-clocks
gnome-calculator
simple-scan
eog
geary
ghex
gnome-weather
gnome-keyring
gnome-disk-utility
# fixes
xorg.xrandr
];
gtk = {
enable = true;
iconTheme = {
name = "Tela";
package = pkgs.tela-icon-theme;
};
};
qt = {
enable = true;
platformTheme.name = "qtct";
};
gtk.enable = true;
qt.enable = true;
home = {
pointerCursor = {
gtk.enable = true;
package = pkgs.capitaine-cursors;
name = "capitaine-cursors";
};
file.".config/hypr/shaders" = {
source = ./hypr/shaders;
recursive = true;
};
home.pointerCursor = {
gtk.enable = true;
package = pkgs.capitaine-cursors;
name = "capitaine-cursors";
};
};
}