chore: trying gnome again

This commit is contained in:
Nick 2025-02-02 22:55:38 -06:00
parent 2ede55a7ee
commit 616c51118f
105 changed files with 101 additions and 15 deletions

View file

@ -0,0 +1,18 @@
{
enabled = true;
animation = [
"border, 1, 2.2, bounce"
"fadeIn, 1, 1, bounce"
"fadeOut, 1, 4.5, bounce"
"fadeSwitch, 1, 2.2, bounce"
"windows, 1, 2.2, bounce"
"windowsOut, 1, 1.1, bounce"
"workspaces, 1, 2.2, bounce, slide"
];
bezier = [
"wind, 0, 1, 0.5, 1"
"winIn, 0, 0.5, 0, 1"
"winOut, 0, 0.5, 0, 1"
"bounce, 0.7, 1.7, 0.5, 1"
];
}

View file

@ -0,0 +1,110 @@
{
flake,
config,
...
}:
let
inherit (flake.config.people) user0 user1;
user = config.home.username;
superBinds = builtins.map (x: "SUPER, " + x) [
# Apps
"Space, exec, rm -r /home/$USER/.cache/tofi* ; tofi-drun"
"C, exec, zed"
"A, exec, obsidian"
"D, exec, ghostty -e zellij a dotfiles"
"E, exec, ghostty -e nu -e y"
"T, exec, ghostty"
"G, exec, firefox https://cronometer.com/#diary"
"B, exec, firefox"
"V, exec, vesktop"
"W, exec, bitwarden"
"H, exec, feishin"
"Y, exec, scrcpy"
"R, exec, ghostty -e nu -e btm"
"N, exec, signal-desktop"
"M, exec, element-desktop"
"Home, exec, sudo protonvpn c --cc CA"
"End, exec, hyprctl dispatch exit"
"S, exec, steam"
"period, exec, emote"
"L, exec, ${
if user == user0 then
"slack"
else if user == user1 then
"flatpak run org.vinegarhq.Sober"
else
""
}"
# Workspaces
"1, workspace, 1"
"2, workspace, 2"
"3, workspace, 3"
"4, workspace, 4"
"5, workspace, 5"
# Windows
"F, togglefloating"
"X, killactive"
"Tab, fullscreen, 0"
"P, pin, enable"
"equal, splitratio, 0.33"
"minus, splitratio, -0.33"
# Window Focus
"left , movefocus, l"
"down , movefocus, d"
"up , movefocus, u"
"right , movefocus, r"
# Audio
"F8, exec, playerctl next"
"F7, exec, playerctl previous"
"F6, exec, playerctl play-pause"
];
superShiftBinds = builtins.map (x: "SUPER SHIFT, " + x) [
# Super+shift binds
"S, exec, flameshot gui"
"Print, exec, grim -g \"$(slurp)\""
"ScrollDown, workspace, previous"
"left , movewindow, l"
"down , movewindow, d"
"up , movewindow, u"
"right , movewindow, r"
];
superCtrlBinds = builtins.map (x: "SUPER CTRL, " + x) [
# Super+shift binds
"Space, workspace, previous"
"S, layoutmsg, togglesplit"
"equal, splitratio, 0.33"
"minus, splitratio, -0.33"
];
altBinds = builtins.map (x: "ALT, " + x) [
# Alt binds
];
shiftBinds = builtins.map (x: "SHIFT, " + x) [
# Shift binds
];
ctrlBinds = builtins.map (x: "CTRL, " + x) [
# Ctrl binds
];
ctrlShiftBinds = builtins.map (x: "CTRL SHIFT, " + x) [
# Ctrl+shift binds
"1, movetoworkspacesilent, 1"
"2, movetoworkspacesilent, 2"
"3, movetoworkspacesilent, 3"
"4, movetoworkspacesilent, 4"
"End, exec, shutdown now"
];
in
superBinds
++ superShiftBinds
++ superCtrlBinds
++ altBinds
++ ctrlBinds
++ ctrlShiftBinds
++ shiftBinds
# Docs
# https://wiki.hyprland.org/Getting-Started/Master-Tutorial/

View file

@ -0,0 +1,4 @@
[
",switch:on:Lid Switch, exec, hyprlock --immediate"
",switch:off:Lid Switch, exec, hyprlock --immediate"
]

View file

@ -0,0 +1,10 @@
let
superBinds = builtins.map (x: "SUPER, " + x) [
"mouse:272, resizewindow"
];
altBinds = builtins.map (x: "ALT, " + x) [
"mouse:272, movewindow"
];
in
superBinds ++ altBinds

View file

@ -0,0 +1,3 @@
{
"allow_workspace_cycles" = "1";
}

View file

@ -0,0 +1,36 @@
{
active_opacity = 0.95;
inactive_opacity = 0.90;
fullscreen_opacity = 1;
rounding = 10;
dim_inactive = 1;
dim_strength = 0.05;
shadow = {
enabled = true;
color = "rgba(00000000)";
ignore_window = true;
offset = "0 2";
range = 20;
render_power = 3;
scale = 0.97;
};
blur = {
enabled = true;
size = 5;
passes = 2;
brightness = 1;
contrast = 1.300000;
ignore_opacity = true;
noise = 0.011700;
new_optimizations = true;
xray = true;
popups = true;
popups_ignorealpha = 0.2;
};
}

View file

@ -0,0 +1,4 @@
{
pseudotile = true;
preserve_split = true;
}

View file

@ -0,0 +1,28 @@
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
cursor
;
in
[
"swaylock"
"hypridle"
"wl-clipboard"
"wpaperd"
"gammastep"
"dunst"
"playerctrld"
"waybar"
"nm-applet"
"blueman-applet"
"easyeffects -r"
"emote"
"flameshot"
"pactl set-default-sink bluez_output.00_16_94_35_0D_5F.1"
"pactl set-default-source alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y818KFJ0C671CE-00.HiFi__Mic1__source"
"bluetoothctl power on"
"gsettings set org.gnome.desktop.interface cursor-theme 'catppuccin-mocha-dark-cursors'"
"gsettings set org.gnome.desktop.interface cursor-size ${builtins.toString cursor.size}"
"systemctl --user import-environment PATH"
"systemctl --user restart xdg-desktop-portal.service"
]

View file

@ -0,0 +1,33 @@
{
config,
flake,
...
}:
let
inherit (flake.config.aesthetics.themes) currentTheme palettes;
inherit (flake.config.people) user0 user1 user2;
user = config.home.username;
themeLogic =
if user == user0 then
currentTheme.theme0
else if user == user1 then
currentTheme.theme1
else if user == user2 then
currentTheme.theme2
else
currentTheme.theme0;
el = palettes.${themeLogic}.colours;
in
{
gaps_in = 5;
gaps_out = 5;
border_size = 2;
"col.active_border" = "rgb(${el.base0E})";
"col.inactive_border" = "0xff${el.base02}";
}

View file

@ -0,0 +1,6 @@
{
sensitivity = 0.07;
accel_profile = "flat";
follow_mouse = 1;
numlock_by_default = true;
}

View file

@ -0,0 +1,7 @@
{
focus_on_activate = 1;
force_default_wallpaper = 0;
# disable_hyprland_logo = true;
# disable_splash_rendering = true;
# disable_hyprland_qtutils_check = true;
}

View file

@ -0,0 +1,132 @@
let
blueman = "(.blueman-manager-wrapped)";
calculator = "(org.gnome.Calculator)";
easyeffects = "(com.github.wwmm.easyeffects)";
firefox = "(firefox)";
nomacs = "(org.nomacs.ImageLounge)";
mpv = "(mpv)";
vlc = "(vlc)";
emote = "(emote)";
flameshot = "(flameshot)";
bitwarden = "(.*Bitwarden.*)";
save = "(.*Enter name of file to save to.*)";
picture = "(.*Picture-in-Picture.*)";
discord-popout = "(.*Discord Popout.*)";
upload = "(.*File Upload.*)";
signal = "(signal)";
vesktop = "(vesktop)";
code = "(code)";
feishin = "(feishin)";
steam = "(steam)";
kdenlive = "(org.kde.kdenlive)";
shotcut = "(shotcut)";
scrcpy = "(.scrcpy-wrapped)";
battle = "(.*Battle.net.*)";
maxsizeWindows = [
"maxsize 720 400, class:^${blueman}$"
"maxsize 360 500, class:^${calculator}$"
"maxsize 720 400, class:^${easyeffects}$"
"maxsize 720 400, class:^${scrcpy}$"
"minsize 720 400, class:^${scrcpy}$"
"maxsize 720 400, class:^${mpv}$"
"maxsize 720 400, class:^${vlc}$"
"maxsize 640 360, class:^${nomacs}$"
"maxsize 800 450, title:^${bitwarden}$"
"maxsize 720 400, title:^${picture}$"
"maxsize 720 400, title:^${save}$"
"maxsize 720 400, title:^${discord-popout}$"
"maxsize 1280 720, title:^${battle}$"
"minsize 1280 720, title:^${battle}$"
"maxsize 1280 720, title:^${upload}$"
"minsize 1280 720, title:^${upload}$"
];
floatWindows = builtins.map (x: "float, " + x) [
"class:^${blueman}$"
"class:^${calculator}$"
"class:^${easyeffects}$"
"class:^${emote}$"
"class:^${mpv}$"
"class:^${vlc}$"
"class:^${nomacs}$"
"class:^${flameshot}$"
"class:^${scrcpy}$"
"title:^(${picture})$"
"title:^(${discord-popout})$"
"title:^${bitwarden}$"
"title:^${save}$"
"title:^${battle}$"
"title:^${upload}$"
];
pinWindows = builtins.map (x: "pin, " + x) [
"title:^${bitwarden}$"
"title:^${picture}$"
"title:^${discord-popout}$"
];
idleInhibit = builtins.map (x: "idleinhibit, " + x) [
"fullscreen, class:^${firefox}$"
];
workspaceInit1 = builtins.map (x: "workspace 1 silent, " + x) [
"class:^${signal}$"
"class:^${vesktop}$"
];
workspaceInit2 = builtins.map (x: "workspace 2 silent, " + x) [
"class:^${code}$"
# "class:^${firefox}$"
];
workspaceInit3 = builtins.map (x: "workspace 3 silent, " + x) [
"class:^${steam}$"
"class:^${shotcut}$"
];
workspaceInit4 = builtins.map (x: "workspace 4 silent, " + x) [
"class:^${feishin}$"
"class:^${scrcpy}$"
];
centerWindows = builtins.map (x: "center, " + x) [
"class:^${blueman}$"
"class:^${calculator}$"
"class:^${easyeffects}$"
"class:^${emote}$"
"class:^${mpv}$"
"class:^${vlc}$"
"class:^${nomacs}$"
"class:^${flameshot}$"
"class:^${scrcpy}$"
"title:^(${picture})$"
"title:^(${discord-popout})$"
"title:^${bitwarden}$"
"title:^${save}$"
"title:^${battle}$"
"title:^${upload}$"
];
opaqueWindows = builtins.map (x: "opaque, " + x) [
"class:^${firefox}$"
"class:^${kdenlive}$"
"class:^(krita)$"
"class:^${shotcut}$"
"class:^${mpv}$"
"class:^(Brave-browser)$"
"class:^(Gimp-2.10)$"
"class:^(org.kde.okular)$"
"class:^${vlc}$"
];
in
maxsizeWindows
++ floatWindows
++ pinWindows
++ idleInhibit
++ workspaceInit1
++ workspaceInit2
++ workspaceInit3
++ workspaceInit4
++ centerWindows
++ opaqueWindows

View file

@ -0,0 +1,3 @@
{
force_zero_scaling = true;
}