nixos/home/hyprland/default.nix

196 lines
5.3 KiB
Nix
Raw Normal View History

2023-12-04 06:42:34 +00:00
{ config, lib, pkgs, ... }: {
imports = [ ./waybar/default.nix ./obs/default.nix ];
services = {
gpg-agent.pinentryFlavor = "gnome3";
avizo.enable = true;
2023-11-09 11:54:55 +00:00
syncthing.enable = true;
udiskie = {
enable = true;
notify = true;
automount = true;
2023-11-09 11:54:55 +00:00
tray = "never";
};
};
programs = {
foot = {
enable = true;
settings = {
main = {
pad = "10x10";
locked-title = false;
notify-focus-inhibit = true;
selection-target = "both";
};
bell = {
urgent = true;
notify = true;
};
mouse = { hide-when-typing = "yes"; };
};
};
rofi = {
enable = true;
package = pkgs.rofi-wayland;
location = "center";
terminal = "foot";
pass = {
enable = true;
package = pkgs.rofi-pass-wayland;
extraConfig = ''
USERNAME_field='login'
'';
};
extraConfig = let
power-menu = "power-menu:${pkgs.rofi-power-menu}/bin/rofi-power-menu";
in {
2024-01-12 11:18:32 +00:00
modi = "window,run,drun,ssh,${power-menu},combi";
combi-modi = "window,drun,ssh";
sidebar-mode = true;
sort = true;
sorting-method = "fzf";
matching = "fuzzy";
icon-theme = config.gtk.iconTheme.name;
show-icons = true;
application-fallback-icon = "󰋙 ";
drun-display-format = "{icon} {name} ({categories})";
disable-history = false;
hide-scrollbar = true;
display-window = " 󰧨 Move ";
display-run = " 󰅴 Run ";
2024-01-12 11:57:35 +00:00
display-drun = " 󱓞 Apps ";
display-ssh = " 󰢹 SSH ";
display-combi = " 󰛡 Combi ";
2024-01-12 11:57:35 +00:00
display-power-menu = " 󰐥 Power ";
};
};
swaylock = {
enable = true;
settings = {
indicator-caps-lock = true;
ignore-empty-password = true;
show-failed-attempts = true;
};
};
};
gtk = {
enable = true;
cursorTheme = {
package = pkgs.catppuccin-cursors.mochaDark;
name = "Catppuccin-Mocha-Dark-Cursors";
size = 24;
};
iconTheme = {
package = pkgs.papirus-icon-theme;
name = "Papirus-Dark";
};
theme = {
package = pkgs.catppuccin-gtk.override {
accents = [ "lavender" ];
size = "standard";
variant = "mocha";
};
name = "Catppuccin-Mocha-Standard-Lavender-Dark";
};
};
2023-09-13 17:43:20 +01:00
xdg = {
configFile = {
"hypr/extra.conf" = lib.mkDefault { text = ""; };
2023-09-13 17:43:20 +01:00
"hypr/hyprpaper.conf".text = ''
preload = ${config.stylix.image}
wallpaper = ,${config.stylix.image}
2023-09-13 17:43:20 +01:00
'';
2024-01-03 16:46:20 +00:00
"swaync/style.css".source = ./swaync/style.css;
2023-09-13 17:43:20 +01:00
};
};
wayland.windowManager.hyprland = {
enable = true;
xwayland.enable = true;
systemd.enable = true;
settings = {
monitor = [ ",preferred,auto,auto" ];
env = with config; [
"XDG_CURRENT_DESKTOP=Hyprland"
"XDG_SESSION_TYPE=wayland"
"XDG_SESSION_DESKTOP=Hyprland"
"GDK_BACKEND=wayland,x11"
"GTK_THEME,${gtk.theme.name}"
"XCURSOR_THEME,${gtk.cursorTheme.name}"
"XCURSOR_SIZE,${toString gtk.cursorTheme.size}"
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
"QT_QPA_PLATFORM,wayland"
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
"MOZ_ENABLE_WAYLAND,1"
"GRIM_DEFAULT_DIR=${xdg.userDirs.pictures}/Grim"
];
exec-once = with config;
[
"hyprctl setcursor ${gtk.theme.name} ${toString gtk.cursorTheme.size}"
];
gestures.workspace_swipe = true;
input = {
kb_layout = "gb";
kb_options = "ctrl:nocaps";
follow_mouse = 1;
touchpad.natural_scroll = "yes";
};
master = {
allow_small_split = true;
special_scale_factor = 0.95;
mfact = 0.5;
new_is_master = false;
new_on_top = false;
no_gaps_when_only = 0;
orientation = "left";
inherit_fullscreen = false;
smart_resizing = false;
drop_at_cursor = true;
};
general = {
"col.active_border" = "rgb(b4befe)";
"col.inactive_border" = "rgb(313244)";
gaps_in = 5;
gaps_out = 10;
border_size = 1;
cursor_inactive_timeout = 5;
layout = "master";
};
decoration = {
rounding = 10;
"col.shadow" = "rgba(0d0e1c99)";
drop_shadow = "yes";
shadow_ignore_window = true;
shadow_range = 4;
shadow_render_power = 3;
blur = {
enabled = true;
size = 5;
passes = 3;
new_optimizations = true;
brightness = 1.0;
noise = 2.0e-2;
};
};
animations = {
enabled = true;
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
animation = [
"windows, 1, 7, myBezier"
"windowsOut, 1, 7, default, popin 80%"
"border, 1, 10, default"
"borderangle, 1, 8, default"
"fade, 1, 7, default"
"workspaces, 1, 6, default"
];
};
misc = {
background_color = "rgb(0d0e1c)";
disable_autoreload = true;
mouse_move_enables_dpms = true;
key_press_enables_dpms = true;
};
xwayland.force_zero_scaling = true;
};
extraConfig = import ./config.nix { inherit config pkgs; };
};
}