style: nix fmt

This commit is contained in:
Kat Inskip 2025-07-13 05:10:57 -07:00
parent 7913481b66
commit 6e0cc170eb
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
112 changed files with 1977 additions and 1739 deletions

View file

@ -1,5 +1,6 @@
{ config, lib, pkgs, ... }: let
inherit (config.catppuccin) sources;
inherit (lib) mkBefore;
in {
{
config,
lib,
...
}: {
}

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
home.pointerCursor = {
enable = true;
package = pkgs.graphite-cursors;

View file

@ -27,19 +27,19 @@ in {
services.swww.enable = true;
wayland.windowManager.hyprland = let
import-gsettings = pkgs.writeShellScriptBin "import-gsettings" ''
# usage: import-gsettings
config="''${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
if [ ! -f "$config" ]; then exit 1; fi
# usage: import-gsettings
config="''${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
if [ ! -f "$config" ]; then exit 1; fi
gnome_schema="org.gnome.desktop.interface"
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
${pkgs.glib}/bin/gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" icon-theme "$icon_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
gnome_schema="org.gnome.desktop.interface"
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
${pkgs.glib}/bin/gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" icon-theme "$icon_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
'';
in {
enable = true;
@ -56,12 +56,11 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
settings = {
# TODO: break it up
windowrule = let
in [
windowrule = [
"suppressevent fullscreen, class:steam_app_default"
"workspace 2, class:steam_app_default"
"suppressevent maximize, class:.*"
"tile, class:battle\.net\.exe"
"renderunfocused, class:discord, initialTitle:Discord"
@ -87,21 +86,23 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
++ (list.map (
workspace: "${toString workspace},monitor:DP-1${commonOptions}"
) (list.range 2 10))
++ [ "11,monitor:DP-2,default:true"] ++ (list.map (
++ ["11,monitor:DP-2,default:true"]
++ (list.map (
workspace: "${toString workspace},monitor:DP-2${commonOptions}"
) (list.range 12 20));
/*list.concat (list.generate (
x: let
ws = let
c = (x + 1) / 10;
in
builtins.toString (x + 1 - (c * 10));
in [
"${toString x},monitor:DP-1"
"${toString (x + 10)},monitor:DP-2${commonOptions}"
]
)
10);
/*
list.concat (list.generate (
x: let
ws = let
c = (x + 1) / 10;
in
builtins.toString (x + 1 - (c * 10));
in [
"${toString x},monitor:DP-1"
"${toString (x + 10)},monitor:DP-2${commonOptions}"
]
)
10);
*/
env = [
"MOZ_ENABLE_WAYLAND,1"
@ -141,9 +142,9 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
"$mod ALT, mouse:272, resizewindow"
];
bindl = [
", XF86AudioPlay, exec, playerctl play-pause"
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
", XF86AudioPlay, exec, playerctl play-pause"
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
];
binde = [
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
@ -155,7 +156,8 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
uwsmCmd = lib.optionalString parent.programs.uwsm.enable "uwsm app -- ";
uwsmApp = cmd: uwsmCmd + cmd;
uwsmSingleApp = cmd: "pgrep ${cmd} || ${uwsmCmd + cmd}";
in [
in
[
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
", XF86AudioPlay, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
", XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl next"
@ -226,9 +228,17 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
in [
"$mod, ${ws}, workspace, ${toString (x + 1)}"
"$mod SHIFT, ${ws}, movetoworkspacesilent, ${toString (x + 1)}"
"$mod, F${if ws == "0" then "10" else ws}, workspace, ${toString (x + 11)}"
"$mod SHIFT, F${if ws == "0" then "10" else ws}, movetoworkspacesilent, ${toString (x + 11)}"
"$mod, F${
if ws == "0"
then "10"
else ws
}, workspace, ${toString (x + 11)}"
"$mod SHIFT, F${
if ws == "0"
then "10"
else ws
}, movetoworkspacesilent, ${toString (x + 11)}"
"$mod ALT, ${ws}, split-workspace, ${toString (x + 1)}"
]
)

View file

@ -1,4 +1,8 @@
{ inputs, pkgs, ... }: {
{
inputs,
pkgs,
...
}: {
programs.hyprlock = {
enable = true;
package = inputs.hyprlock.packages.${pkgs.system}.hyprlock;

View file

@ -3,136 +3,136 @@ _: {
enable = true;
systemd.enable = true;
style = ''
* {
border: none;
border-radius: 0;
font-family: Monaspace Krypton, monospace;
font-size: 13px;
min-height: 0;
}
* {
border: none;
border-radius: 0;
font-family: Monaspace Krypton, monospace;
font-size: 13px;
min-height: 0;
}
window#waybar {
all:unset;
}
window#waybar {
all:unset;
}
.modules-left, .modules-right, .modules-center {
background: alpha(@base, 0.9);
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
color: @text;
padding: 5px;
margin: 2px 4px;
border: 1px solid @lavender;
}
.modules-left, .modules-right, .modules-center {
background: alpha(@base, 0.9);
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
color: @text;
padding: 5px;
margin: 2px 4px;
border: 1px solid @lavender;
}
tooltip {
background: rgba(43, 48, 59, 0.5);
border: 1px solid rgba(100, 114, 125, 0.5);
}
tooltip label {
color: white;
}
tooltip {
background: rgba(43, 48, 59, 0.5);
border: 1px solid rgba(100, 114, 125, 0.5);
}
tooltip label {
color: white;
}
#workspaces {
border-right: 1px solid @surface2;
}
#workspaces {
border-right: 1px solid @surface2;
}
#workspaces button.persistent {
background: @theme_unfocused_bg_color;
color: @subtext1;
}
#workspaces button.persistent {
background: @theme_unfocused_bg_color;
color: @subtext1;
}
#workspaces button {
padding: 2px 5px;
background: @surface0;
border-bottom: 3px solid transparent;
}
#workspaces button {
padding: 2px 5px;
background: @surface0;
border-bottom: 3px solid transparent;
}
#workspaces button.empty {
background: @crust;
color: @subtext1;
}
#workspaces button.empty {
background: @crust;
color: @subtext1;
}
#workspaces button.visible {
background: @pink;
color: @theme_selected_fg_color;
border-bottom: 3px solid @rosewater;
}
#workspaces button.visible {
background: @pink;
color: @theme_selected_fg_color;
border-bottom: 3px solid @rosewater;
}
#workspaces button.urgent {
background: @red;
color: @theme_selected_fg_color;
}
#workspaces button.urgent {
background: @red;
color: @theme_selected_fg_color;
}
#workspaces button.active, #workspaces button.focused {
background: @theme_selected_bg_color;
color: @theme_selected_fg_color;
border-bottom: 3px solid white;
}
#workspaces button.active, #workspaces button.focused {
background: @theme_selected_bg_color;
color: @theme_selected_fg_color;
border-bottom: 3px solid white;
}
#window {
padding: 0 10px;
}
#window {
padding: 0 10px;
}
window#waybar.empty #window {
padding: 0px;
margin: 0px;
}
window#waybar.empty #window {
padding: 0px;
margin: 0px;
}
#mode, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
padding: 0 5px;
margin: 0 5px;
}
#mode, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
padding: 0 5px;
margin: 0 5px;
}
#mpris {
color: @mantle;
}
#mpris {
color: @mantle;
}
#mpris.playing {
background-color: @lavender;
}
#mpris.playing {
background-color: @lavender;
}
#mpris.paused {
background-color: @mauve;
}
#mpris.paused {
background-color: @mauve;
}
#mpris.stopped {
background-color: @rosewater;
}
#mpris.stopped {
background-color: @rosewater;
}
#mode {
background: #64727D;
border-bottom: 3px solid white;
}
#mode {
background: #64727D;
border-bottom: 3px solid white;
}
#clock {
}
#clock {
}
#battery {
}
#battery {
}
#battery.charging {
color: white;
background-color: #26A65B;
}
#battery.charging {
color: white;
background-color: #26A65B;
}
@keyframes blink {
to {
background-color: #ffffff;
color: black;
}
}
@keyframes blink {
to {
background-color: #ffffff;
color: black;
}
}
#battery.warning:not(.charging) {
background: #f53c3c;
color: white;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#battery.warning:not(.charging) {
background: #f53c3c;
color: white;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
'';
settings.main = {
layer = "top";
@ -150,7 +150,6 @@ window#waybar.empty #window {
"mpris"
];
modules-right = [
"privacy"
"bluetooth"

View file

@ -1,10 +1,13 @@
{ config, lib, ... }: let
{
config,
lib,
...
}: let
inherit (config.catppuccin) sources;
inherit (lib) mkBefore;
cfg = config.catppuccin.sway;
theme = "${sources.sway}/catppuccin-${cfg.flavor}";
in {
xsession.windowManager.i3.extraConfigEarly = ''
xsession.windowManager.i3.extraConfigEarly = ''
${builtins.readFile theme}
'';
}

View file

@ -1,14 +1,13 @@
{
pkgs,
lib,
std,
config,
...
}:
let
pkgs,
lib,
std,
config,
...
}: let
inherit (std) list;
inherit (lib.modules) mkMerge;
inherit (lib) mkOptionDefault mkDefault mapAttrs;
inherit (lib) mkDefault mapAttrs;
in {
home.packages = with pkgs; [
maim
@ -18,42 +17,46 @@ in {
];
services.i3gopher.enable = true;
xsession.windowManager.i3 = let
modifier = "Mod4";
other_modifier = "Mod1";
mod = modifier;
mod2 = other_modifier;
runCommand = "${config.programs.rofi.finalPackage}/bin/rofi -show combi -modes combi";
workspaceNames = {
"1" = " Term";
"2" = " GW2";
"3" = " GW1";
"4" = " Web";
"11" = " IM";
"12" = " Web";
"13" = " Media";
"14" = " Music";
};
workspaceNamer = num: let
numStr = builtins.toString num;
in if workspaceNames ? ${numStr} then "${numStr}:${workspaceNames.${numStr}}" else "${numStr}:${numStr}";
modifier = "Mod4";
other_modifier = "Mod1";
mod = modifier;
mod2 = other_modifier;
runCommand = "${config.programs.rofi.finalPackage}/bin/rofi -show combi -modes combi";
workspaceNames = {
"1" = " Term";
"2" = " GW2";
"3" = " GW1";
"4" = " Web";
"11" = " IM";
"12" = " Web";
"13" = " Media";
"14" = " Music";
};
workspaceNamer = num: let
numStr = builtins.toString num;
in
if workspaceNames ? ${numStr}
then "${numStr}:${workspaceNames.${numStr}}"
else "${numStr}:${numStr}";
lockCommand = "sh -c '${pkgs.i3lock-fancy-rapid}/bin/i3lock 5 3 & sleep 5 && xset dpms force off'";
lockCommand = "sh -c '${pkgs.i3lock-fancy-rapid}/bin/i3lock 5 3 & sleep 5 && xset dpms force off'";
actionMode = "(l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown";
gapsMode = "Gaps: (o) outer, (i) inner";
gapsOuterMode = "Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)";
gapsInnerMode = "Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)";
in {
actionMode = "(l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown";
gapsMode = "Gaps: (o) outer, (i) inner";
gapsOuterMode = "Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)";
gapsInnerMode = "Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)";
in {
enable = true;
extraConfig = let
displayWorkspace = display: workspace: ''
workspace "${workspaceNamer (builtins.toString workspace)}" output ${display}
'';
displayBindings = list.map (v: displayWorkspace "DP-2" v) (list.range 1 9)
++ [ (displayWorkspace "DP-2" 10) ]
++ list.map (v: displayWorkspace "HDMI-0" (11+v)) (list.range 1 12);
displayBindingsStr = lib.concatLines displayBindings;
in ''
displayWorkspace = display: workspace: ''
workspace "${workspaceNamer (builtins.toString workspace)}" output ${display}
'';
displayBindings =
list.map (v: displayWorkspace "DP-2" v) (list.range 1 9)
++ [(displayWorkspace "DP-2" 10)]
++ list.map (v: displayWorkspace "HDMI-0" (11 + v)) (list.range 1 12);
displayBindingsStr = lib.concatLines displayBindings;
in ''
${displayBindingsStr}
for_window [class="^steam_app_default$"] floating enable, fullscreen disable, resize set width 3840 px height 2132 px, move position center, border pixel 1
'';
@ -70,8 +73,14 @@ in {
};
startup = [
{ command = "~/.screenlayout/main.sh"; notification = false; }
{ command = "blueman-applet"; notification = false; }
{
command = "~/.screenlayout/main.sh";
notification = false;
}
{
command = "blueman-applet";
notification = false;
}
];
keybindings = let
@ -107,7 +116,8 @@ in {
"${mod}+Shift+g" = ''mode "${gapsMode}"'';
"${mod}+Delete" = ''mode "${actionMode}"'';
};
in mkMerge (map mapDefaultAttrs ([ normalBindings ] ++ workspaceBindings));
in
mkMerge (map mapDefaultAttrs ([normalBindings] ++ workspaceBindings));
assigns = {
${workspaceNamer 2} = [
@ -255,7 +265,7 @@ in {
focusedStatusline = "$text";
focusedSeparator = "$base";
focusedWorkspace = {
border ="$base";
border = "$base";
background = "$mauve";
text = "$crust";
};

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
programs.i3status-rust = {
enable = true;
bars = {
@ -13,61 +13,61 @@
};
};
};
blocks = [
{
block = "cpu";
interval = 1;
}
{
block = "load";
interval = 1;
format = " $icon $1m ";
}
{
block = "memory";
format = " $icon $mem_used_percents.eng(w:2) $zram_comp_ratio ";
}
{
block = "memory";
format = " $icon_swap $swap_used_percents.eng(w:2) ";
}
{
block = "nvidia_gpu";
format = " $icon $utilization $memory $temperature ";
}
{
block = "hueshift";
}
{
block = "music";
format = " $icon {$combo.str(max_w:60) $play |}";
}
{
block = "sound";
format = " $icon {$volume.eng(w:2) |}";
}
{
block = "notify";
format = " $icon {($notification_count.eng(w:1)) |}";
}
{
block = "toggle";
command_on = "${pkgs.xorg.xset}/bin/xset -dpms";
command_off = "${pkgs.xorg.xset}/bin/xset +dpms";
format = " $icon DPMS ";
command_state = ''${pkgs.xorg.xset}/bin/xset q | ${pkgs.gnugrep}/bin/grep -F "DPMS is Disabled"'';
icon_on = "caffeine_on";
icon_off = "caffeine_off";
state_on = "info";
}
{
block = "time";
interval = 1;
format = " $icon $timestamp.datetime(f:'%F %T %Z') ";
}
];
blocks = [
{
block = "cpu";
interval = 1;
}
{
block = "load";
interval = 1;
format = " $icon $1m ";
}
{
block = "memory";
format = " $icon $mem_used_percents.eng(w:2) $zram_comp_ratio ";
}
{
block = "memory";
format = " $icon_swap $swap_used_percents.eng(w:2) ";
}
{
block = "nvidia_gpu";
format = " $icon $utilization $memory $temperature ";
}
{
block = "hueshift";
}
{
block = "music";
format = " $icon {$combo.str(max_w:60) $play |}";
}
{
block = "sound";
format = " $icon {$volume.eng(w:2) |}";
}
{
block = "notify";
format = " $icon {($notification_count.eng(w:1)) |}";
}
{
block = "toggle";
command_on = "${pkgs.xorg.xset}/bin/xset -dpms";
command_off = "${pkgs.xorg.xset}/bin/xset +dpms";
format = " $icon DPMS ";
command_state = ''${pkgs.xorg.xset}/bin/xset q | ${pkgs.gnugrep}/bin/grep -F "DPMS is Disabled"'';
icon_on = "caffeine_on";
icon_off = "caffeine_off";
state_on = "info";
}
{
block = "time";
interval = 1;
format = " $icon $timestamp.datetime(f:'%F %T %Z') ";
}
];
theme = "ctp-latte";
};
};
};
}
};
}

View file

@ -1,4 +1,8 @@
{ pkgs, config, ... }: {
{
pkgs,
config,
...
}: {
home.packages = [
config.programs.rofi.finalPackage
];

View file

@ -1,2 +1,2 @@
{pkgs, ...}: {
_: {
}

View file

@ -48,7 +48,7 @@
libksysguard
systemsettings
kcmutils
pkgs.plasma-applet-commandoutput
pkgs.plasma-applet-commandoutput
];
programs.plasma = {
configFile = {

View file

@ -1,4 +1,7 @@
{ pkgs, config, ... }: {
{
pkgs,
...
}: {
programs.niri.settings.spawn-at-startup = let
import-gsettings = pkgs.writeShellScriptBin "import-gsettings" ''
# usage: import-gsettings

View file

@ -1,4 +1,4 @@
{ config, ... }: {
{config, ...}: {
services.avizo = {
enable = true;
settings = {

View file

@ -1,145 +1,155 @@
{ config, pkgs, lib, std, ... }: let
{
config,
pkgs,
lib,
std,
...
}: let
inherit (std) list;
inherit (lib.modules) mkMerge;
in {
programs.niri.settings.binds = let
bindWorkspace = key: workspace: {
"Mod+${key}".action.focus-workspace = workspace;
"Mod+Ctrl+${key}".action.move-column-to-workspace = workspace;
};
workspaceBindings =
list.map (v: bindWorkspace (builtins.toString v) v) (list.range 1 9)
++ [
(
bindWorkspace "0" 10
)
];
in mkMerge (workspaceBindings ++ [{
# Transcribed: https://github.com/sodiboo/niri-flake/issues/483
# thank you Pacman99 you chad :3
"Mod+Q".action.close-window = {};
"Mod+O".action.toggle-overview = {};
bindWorkspace = key: workspace: {
"Mod+${key}".action.focus-workspace = workspace;
"Mod+Ctrl+${key}".action.move-column-to-workspace = workspace;
};
workspaceBindings =
list.map (v: bindWorkspace (builtins.toString v) v) (list.range 1 9)
++ [
(
bindWorkspace "0" 10
)
];
in
mkMerge (workspaceBindings
++ [
{
# Transcribed: https://github.com/sodiboo/niri-flake/issues/483
# thank you Pacman99 you chad :3
"Mod+Q".action.close-window = {};
"Mod+O".action.toggle-overview = {};
"Mod+Left".action.focus-column-left = {};
"Mod+Down".action.focus-window-down = {};
"Mod+Up".action.focus-window-up = {};
"Mod+Right".action.focus-column-right = {};
"Mod+H".action.focus-column-left = {};
"Mod+J".action.focus-window-down = {};
"Mod+K".action.focus-window-up = {};
"Mod+L".action.focus-column-right = {};
"Mod+Left".action.focus-column-left = {};
"Mod+Down".action.focus-window-down = {};
"Mod+Up".action.focus-window-up = {};
"Mod+Right".action.focus-column-right = {};
"Mod+H".action.focus-column-left = {};
"Mod+J".action.focus-window-down = {};
"Mod+K".action.focus-window-up = {};
"Mod+L".action.focus-column-right = {};
"Mod+Ctrl+Left".action.move-column-left = {};
"Mod+Ctrl+Down".action.move-window-down = {};
"Mod+Ctrl+Up".action.move-window-up = {};
"Mod+Ctrl+Right".action.move-column-right = {};
"Mod+Ctrl+H".action.move-column-left = {};
"Mod+Ctrl+J".action.move-window-down = {};
"Mod+Ctrl+K".action.move-window-up = {};
"Mod+Ctrl+L".action.move-column-right = {};
"Mod+Ctrl+Left".action.move-column-left = {};
"Mod+Ctrl+Down".action.move-window-down = {};
"Mod+Ctrl+Up".action.move-window-up = {};
"Mod+Ctrl+Right".action.move-column-right = {};
"Mod+Ctrl+H".action.move-column-left = {};
"Mod+Ctrl+J".action.move-window-down = {};
"Mod+Ctrl+K".action.move-window-up = {};
"Mod+Ctrl+L".action.move-column-right = {};
"Mod+Home".action.focus-column-first = {};
"Mod+End".action.focus-column-last = {};
"Mod+Ctrl+Home".action.move-column-to-first = {};
"Mod+Ctrl+End".action.move-column-to-last = {};
"Mod+Home".action.focus-column-first = {};
"Mod+End".action.focus-column-last = {};
"Mod+Ctrl+Home".action.move-column-to-first = {};
"Mod+Ctrl+End".action.move-column-to-last = {};
"Mod+Shift+Left".action.focus-monitor-left = {};
"Mod+Shift+Down".action.focus-monitor-down = {};
"Mod+Shift+Up".action.focus-monitor-up = {};
"Mod+Shift+Right".action.focus-monitor-right = {};
"Mod+Shift+H".action.focus-monitor-left = {};
"Mod+Shift+J".action.focus-monitor-down = {};
"Mod+Shift+K".action.focus-monitor-up = {};
"Mod+Shift+L".action.focus-monitor-right = {};
"Mod+Shift+Left".action.focus-monitor-left = {};
"Mod+Shift+Down".action.focus-monitor-down = {};
"Mod+Shift+Up".action.focus-monitor-up = {};
"Mod+Shift+Right".action.focus-monitor-right = {};
"Mod+Shift+H".action.focus-monitor-left = {};
"Mod+Shift+J".action.focus-monitor-down = {};
"Mod+Shift+K".action.focus-monitor-up = {};
"Mod+Shift+L".action.focus-monitor-right = {};
"Mod+Shift+Ctrl+Left".action.move-column-to-monitor-left = {};
"Mod+Shift+Ctrl+Down".action.move-column-to-monitor-down = {};
"Mod+Shift+Ctrl+Up".action.move-column-to-monitor-up = {};
"Mod+Shift+Ctrl+Right".action.move-column-to-monitor-right = {};
"Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = {};
"Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = {};
"Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = {};
"Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = {};
"Mod+Shift+Ctrl+Left".action.move-column-to-monitor-left = {};
"Mod+Shift+Ctrl+Down".action.move-column-to-monitor-down = {};
"Mod+Shift+Ctrl+Up".action.move-column-to-monitor-up = {};
"Mod+Shift+Ctrl+Right".action.move-column-to-monitor-right = {};
"Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = {};
"Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = {};
"Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = {};
"Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = {};
"Mod+Page_Down".action.focus-workspace-down = {};
"Mod+Page_Up".action.focus-workspace-up = {};
"Mod+U".action.focus-workspace-down = {};
"Mod+I".action.focus-workspace-up = {};
"Mod+Ctrl+Page_Down".action.move-column-to-workspace-down = {};
"Mod+Ctrl+Page_Up".action.move-column-to-workspace-up = {};
"Mod+Ctrl+U".action.move-column-to-workspace-down = {};
"Mod+Ctrl+I".action.move-column-to-workspace-up = {};
"Mod+Page_Down".action.focus-workspace-down = {};
"Mod+Page_Up".action.focus-workspace-up = {};
"Mod+U".action.focus-workspace-down = {};
"Mod+I".action.focus-workspace-up = {};
"Mod+Ctrl+Page_Down".action.move-column-to-workspace-down = {};
"Mod+Ctrl+Page_Up".action.move-column-to-workspace-up = {};
"Mod+Ctrl+U".action.move-column-to-workspace-down = {};
"Mod+Ctrl+I".action.move-column-to-workspace-up = {};
"Mod+Shift+Page_Down".action.move-workspace-down = {};
"Mod+Shift+Page_Up".action.move-workspace-up = {};
"Mod+Shift+U".action.move-workspace-down = {};
"Mod+Shift+I".action.move-workspace-up = {};
"Mod+Shift+Page_Down".action.move-workspace-down = {};
"Mod+Shift+Page_Up".action.move-workspace-up = {};
"Mod+Shift+U".action.move-workspace-down = {};
"Mod+Shift+I".action.move-workspace-up = {};
"Mod+WheelScrollDown" = {
cooldown-ms = 150;
action.focus-workspace-down = {};
};
"Mod+WheelScrollUp" = {
cooldown-ms = 150;
action.focus-workspace-up = {};
};
"Mod+Ctrl+WheelScrollDown" = {
cooldown-ms = 150;
action.move-column-to-workspace-down = {};
};
"Mod+Ctrl+WheelScrollUp" = {
cooldown-ms = 150;
action.move-column-to-workspace-up = {};
};
"Mod+WheelScrollDown" = {
cooldown-ms = 150;
action.focus-workspace-down = {};
};
"Mod+WheelScrollUp" = {
cooldown-ms = 150;
action.focus-workspace-up = {};
};
"Mod+Ctrl+WheelScrollDown" = {
cooldown-ms = 150;
action.move-column-to-workspace-down = {};
};
"Mod+Ctrl+WheelScrollUp" = {
cooldown-ms = 150;
action.move-column-to-workspace-up = {};
};
"Mod+WheelScrollRight".action.focus-column-right = {};
"Mod+WheelScrollLeft".action.focus-column-left = {};
"Mod+Ctrl+WheelScrollRight".action.move-column-right = {};
"Mod+Ctrl+WheelScrollLeft".action.move-column-left = {};
"Mod+WheelScrollRight".action.focus-column-right = {};
"Mod+WheelScrollLeft".action.focus-column-left = {};
"Mod+Ctrl+WheelScrollRight".action.move-column-right = {};
"Mod+Ctrl+WheelScrollLeft".action.move-column-left = {};
"Mod+Shift+WheelScrollDown".action.focus-column-right = {};
"Mod+Shift+WheelScrollUp".action.focus-column-left = {};
"Mod+Ctrl+Shift+WheelScrollDown".action.move-column-right = {};
"Mod+Ctrl+Shift+WheelScrollUp".action.move-column-left = {};
"Mod+Shift+WheelScrollDown".action.focus-column-right = {};
"Mod+Shift+WheelScrollUp".action.focus-column-left = {};
"Mod+Ctrl+Shift+WheelScrollDown".action.move-column-right = {};
"Mod+Ctrl+Shift+WheelScrollUp".action.move-column-left = {};
"Mod+Comma".action.consume-window-into-column = {};
"Mod+Period".action.expel-window-from-column = {};
"Mod+Comma".action.consume-window-into-column = {};
"Mod+Period".action.expel-window-from-column = {};
"Mod+R".action.switch-preset-column-width = {};
"Mod+Shift+R".action.reset-window-height = {};
"Mod+F".action.maximize-column = {};
"Mod+Shift+F".action.fullscreen-window = {};
"Mod+C".action.center-column = {};
"Mod+R".action.switch-preset-column-width = {};
"Mod+Shift+R".action.reset-window-height = {};
"Mod+F".action.maximize-column = {};
"Mod+Shift+F".action.fullscreen-window = {};
"Mod+C".action.center-column = {};
"Mod+Minus".action.set-column-width = "-10%";
"Mod+Equal".action.set-column-width = "+10%";
"Mod+Minus".action.set-column-width = "-10%";
"Mod+Equal".action.set-column-width = "+10%";
"Mod+Shift+Minus".action.set-window-height = "-10%";
"Mod+Shift+Equal".action.set-window-height = "+10%";
"Mod+Shift+Minus".action.set-window-height = "-10%";
"Mod+Shift+Equal".action.set-window-height = "+10%";
"Print".action.screenshot = {};
"Ctrl+Print".action.screenshot-screen = {};
"Alt+Print".action.screenshot-window = {};
"Print".action.screenshot = {};
"Ctrl+Print".action.screenshot-screen = {};
"Alt+Print".action.screenshot-window = {};
# The quit action will show a confirmation dialog to avoid accidental exits.
"Mod+Shift+E".action.quit = {};
# The quit action will show a confirmation dialog to avoid accidental exits.
"Mod+Shift+E".action.quit = {};
# Powers off the monitors. To turn them back on, do any input like
# moving the mouse or pressing any other key.
"Mod+Shift+P".action.power-off-monitors = {};
# Powers off the monitors. To turn them back on, do any input like
# moving the mouse or pressing any other key.
"Mod+Shift+P".action.power-off-monitors = {};
# Kat
"XF86AudioRaiseVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"];
"XF86AudioLowerVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"];
"XF86AudioMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"];
"XF86AudioPlay".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "play-pause"];
"XF86AudioNext".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "next"];
"XF86AudioPrev".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "prev"];
"Mod+T".action.spawn = ["${config.programs.wezterm.package}/bin/wezterm"];
"Mod+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "drun"];
"Mod+Shift+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "run"];
"Mod+Escape".action.spawn = ["${config.programs.wlogout.package}/bin/wlogout" "-p" "layer-shell"];
"Mod+Shift+Escape".action.spawn = ["${config.programs.swaylock.package}/bin/swaylock" "-f"];
#"Print".action.spawn = ["${pkgs.grimblast}/bin/grimblast" "copy" "area"];
}]);
# Kat
"XF86AudioRaiseVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"];
"XF86AudioLowerVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"];
"XF86AudioMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"];
"XF86AudioPlay".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "play-pause"];
"XF86AudioNext".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "next"];
"XF86AudioPrev".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "prev"];
"Mod+T".action.spawn = ["${config.programs.wezterm.package}/bin/wezterm"];
"Mod+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "drun"];
"Mod+Shift+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "run"];
"Mod+Escape".action.spawn = ["${config.programs.wlogout.package}/bin/wlogout" "-p" "layer-shell"];
"Mod+Shift+Escape".action.spawn = ["${config.programs.swaylock.package}/bin/swaylock" "-f"];
#"Print".action.spawn = ["${pkgs.grimblast}/bin/grimblast" "copy" "area"];
}
]);
}

View file

@ -1,4 +1,7 @@
{ config, pkgs, ... }: {
{
config,
...
}: {
catppuccin.cursors.enable = true;
home.pointerCursor = {
dotIcons.enable = true;

View file

@ -5,7 +5,6 @@
...
}: let
inherit (config.base16) palette;
inherit (lib.modules) mkForce;
in {
systemd.user.services = {
mako = {

View file

@ -1,4 +1,9 @@
{ config, pkgs, lib, ... }: let
{
config,
pkgs,
lib,
...
}: let
inherit (lib.meta) getExe;
in {
home.packages = with pkgs; [
@ -35,15 +40,15 @@ in {
};
focus-follows-mouse.enable = true;
};
layout = {
layout = {
background-color = config.palette.base.hex;
gaps = 10;
always-center-single-column = true;
preset-column-widths = [
{ proportion = 0.33333; }
{ proportion = 0.5; }
{ proportion = 0.66667; }
{ proportion = 1.0; }
{proportion = 0.33333;}
{proportion = 0.5;}
{proportion = 0.66667;}
{proportion = 1.0;}
];
default-column-width = {
proportion = 1.0;

View file

@ -1,4 +1,8 @@
{ pkgs, config, ... }: {
{
pkgs,
config,
...
}: {
services.swayidle = {
enable = true;
timeouts = [

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
programs.swaylock = {
enable = true;
package = pkgs.swaylock-effects;

View file

@ -3,136 +3,136 @@ _: {
enable = true;
systemd.enable = true;
style = ''
* {
border: none;
border-radius: 0;
font-family: Monaspace Krypton, monospace;
font-size: 13px;
min-height: 0;
}
* {
border: none;
border-radius: 0;
font-family: Monaspace Krypton, monospace;
font-size: 13px;
min-height: 0;
}
window#waybar {
all:unset;
}
window#waybar {
all:unset;
}
.modules-left, .modules-right, .modules-center {
background: alpha(@base, 0.9);
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
color: @text;
padding: 5px;
margin: 2px 4px;
border: 1px solid @lavender;
}
.modules-left, .modules-right, .modules-center {
background: alpha(@base, 0.9);
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
color: @text;
padding: 5px;
margin: 2px 4px;
border: 1px solid @lavender;
}
tooltip {
background: rgba(43, 48, 59, 0.5);
border: 1px solid rgba(100, 114, 125, 0.5);
}
tooltip label {
color: white;
}
tooltip {
background: rgba(43, 48, 59, 0.5);
border: 1px solid rgba(100, 114, 125, 0.5);
}
tooltip label {
color: white;
}
#workspaces {
border-right: 1px solid @surface2;
}
#workspaces {
border-right: 1px solid @surface2;
}
#workspaces button.persistent {
background: @theme_unfocused_bg_color;
color: @subtext1;
}
#workspaces button.persistent {
background: @theme_unfocused_bg_color;
color: @subtext1;
}
#workspaces button {
padding: 2px 5px;
background: @surface0;
border-bottom: 3px solid transparent;
}
#workspaces button {
padding: 2px 5px;
background: @surface0;
border-bottom: 3px solid transparent;
}
#workspaces button.empty {
background: @crust;
color: @subtext1;
}
#workspaces button.empty {
background: @crust;
color: @subtext1;
}
#workspaces button.visible {
background: @pink;
color: @theme_selected_fg_color;
border-bottom: 3px solid @rosewater;
}
#workspaces button.visible {
background: @pink;
color: @theme_selected_fg_color;
border-bottom: 3px solid @rosewater;
}
#workspaces button.urgent {
background: @red;
color: @theme_selected_fg_color;
}
#workspaces button.urgent {
background: @red;
color: @theme_selected_fg_color;
}
#workspaces button.active, #workspaces button.focused {
background: @theme_selected_bg_color;
color: @theme_selected_fg_color;
border-bottom: 3px solid white;
}
#workspaces button.active, #workspaces button.focused {
background: @theme_selected_bg_color;
color: @theme_selected_fg_color;
border-bottom: 3px solid white;
}
#window {
padding: 0 10px;
}
#window {
padding: 0 10px;
}
window#waybar.empty #window {
padding: 0px;
margin: 0px;
}
window#waybar.empty #window {
padding: 0px;
margin: 0px;
}
#mode, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
padding: 0 5px;
margin: 0 5px;
}
#mode, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
padding: 0 5px;
margin: 0 5px;
}
#mpris {
color: @mantle;
}
#mpris {
color: @mantle;
}
#mpris.playing {
background-color: @lavender;
}
#mpris.playing {
background-color: @lavender;
}
#mpris.paused {
background-color: @mauve;
}
#mpris.paused {
background-color: @mauve;
}
#mpris.stopped {
background-color: @rosewater;
}
#mpris.stopped {
background-color: @rosewater;
}
#mode {
background: #64727D;
border-bottom: 3px solid white;
}
#mode {
background: #64727D;
border-bottom: 3px solid white;
}
#clock {
}
#clock {
}
#battery {
}
#battery {
}
#battery.charging {
color: white;
background-color: #26A65B;
}
#battery.charging {
color: white;
background-color: #26A65B;
}
@keyframes blink {
to {
background-color: #ffffff;
color: black;
}
}
@keyframes blink {
to {
background-color: #ffffff;
color: black;
}
}
#battery.warning:not(.charging) {
background: #f53c3c;
color: white;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#battery.warning:not(.charging) {
background: #f53c3c;
color: white;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
'';
settings.main = {
layer = "top";
@ -149,7 +149,6 @@ window#waybar.empty #window {
"mpris"
];
modules-right = [
"privacy"
"bluetooth"

View file

@ -3,36 +3,34 @@ _: {
{
draw-border-with-background = false;
clip-to-geometry = true;
geometry-corner-radius =
let
r = 5.0;
in
{
bottom-left = r;
bottom-right = r;
top-left = r;
top-right = r;
};
geometry-corner-radius = let
r = 5.0;
in {
bottom-left = r;
bottom-right = r;
top-left = r;
top-right = r;
};
}
{
matches = [ { app-id = "^firefox$"; } ];
matches = [{app-id = "^firefox$";}];
open-on-workspace = "browser";
}
{
matches = [
{ app-id = "^vesktop$"; }
{ app-id = "^discord$"; }
{ app-id = "^org.telegram.desktop$"; }
{app-id = "^vesktop$";}
{app-id = "^discord$";}
{app-id = "^org.telegram.desktop$";}
];
open-on-workspace = "chat";
}
{
matches = [ { app-id = "^steam_app_default$"; } ];
matches = [{app-id = "^steam_app_default$";}];
open-on-workspace = "vidya";
}
{
matches = [ { app-id = "^spotify$"; } ];
matches = [{app-id = "^spotify$";}];
open-on-workspace = "media";
}
];