Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7a1b8ad404 | |||
| c4f7d5234d | |||
| 32ed42b86d |
@@ -20,8 +20,8 @@ in {
|
|||||||
./plasma
|
./plasma
|
||||||
]
|
]
|
||||||
++ (with inputs; [
|
++ (with inputs; [
|
||||||
dms.homeModules.dankMaterialShell.default
|
dms.homeModules.dank-material-shell.default
|
||||||
dms.homeModules.dankMaterialShell.niri
|
dms.homeModules.niri
|
||||||
]);
|
]);
|
||||||
options = {
|
options = {
|
||||||
desktop.dms.enable = mkEnableOption "enable DankMaterialShell";
|
desktop.dms.enable = mkEnableOption "enable DankMaterialShell";
|
||||||
|
|||||||
@@ -1,888 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
# pkgs-51b85c,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
# imports = [./walker.nix];
|
|
||||||
stylix.targets.sway.enable = true;
|
|
||||||
wayland.windowManager.sway = {
|
|
||||||
enable = true;
|
|
||||||
systemd.enable = true;
|
|
||||||
# xwayland.enable = false;
|
|
||||||
wrapperFeatures.gtk = true;
|
|
||||||
config = let
|
|
||||||
modifier = "Mod4";
|
|
||||||
terminal = "ghostty";
|
|
||||||
launcher = "walker";
|
|
||||||
clipboard = "copyq toggle";
|
|
||||||
left = "n";
|
|
||||||
down = "e";
|
|
||||||
up = "i";
|
|
||||||
right = "o";
|
|
||||||
in {
|
|
||||||
bars = [
|
|
||||||
{
|
|
||||||
command = "${lib.getExe pkgs.waybar}";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
modifier = "${modifier}";
|
|
||||||
terminal = "${terminal}";
|
|
||||||
menu = "${launcher}";
|
|
||||||
|
|
||||||
left = "${left}";
|
|
||||||
down = "${down}";
|
|
||||||
up = "${up}";
|
|
||||||
right = "${right}";
|
|
||||||
|
|
||||||
workspaceLayout = "tabbed";
|
|
||||||
|
|
||||||
input = {
|
|
||||||
"*" = {
|
|
||||||
xkb_layout = "us,ua";
|
|
||||||
repeat_delay = "200";
|
|
||||||
repeat_rate = "50";
|
|
||||||
accel_profile = "flat";
|
|
||||||
};
|
|
||||||
"type:touchpad" = {
|
|
||||||
tap = "enabled";
|
|
||||||
scroll_method = "two_finger";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
output = {
|
|
||||||
"Samsung Electric Company S24R65x H4TMA03291" = {
|
|
||||||
mode = "1920x1080@74.973Hz";
|
|
||||||
pos = "0 0";
|
|
||||||
adaptive_sync = "on";
|
|
||||||
allow_tearing = "yes";
|
|
||||||
max_render_time = "off";
|
|
||||||
};
|
|
||||||
"AOC 27V2G5 0x0000026C" = {
|
|
||||||
pos = "1920 0";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
keybindings = lib.mkForce {
|
|
||||||
"${modifier}+Ctrl+q" = "kill";
|
|
||||||
"${modifier}+Ctrl+Escape" = "exit";
|
|
||||||
"${modifier}+Ctrl+r" = "reload";
|
|
||||||
|
|
||||||
"${modifier}+Ctrl+${left}" = "move left";
|
|
||||||
"${modifier}+Ctrl+${down}" = "move down";
|
|
||||||
"${modifier}+Ctrl+${up}" = "move up";
|
|
||||||
"${modifier}+Ctrl+${right}" = "move right";
|
|
||||||
"${modifier}+Ctrl+left" = "move left";
|
|
||||||
"${modifier}+Ctrl+down" = "move down";
|
|
||||||
"${modifier}+Ctrl+up" = "move up";
|
|
||||||
"${modifier}+Ctrl+right" = "move right";
|
|
||||||
"${modifier}+Ctrl+1" = "move window workspace 1";
|
|
||||||
"${modifier}+Ctrl+2" = "move window workspace 2";
|
|
||||||
"${modifier}+Ctrl+3" = "move window workspace 3";
|
|
||||||
"${modifier}+Ctrl+4" = "move window workspace 4";
|
|
||||||
"${modifier}+Ctrl+5" = "move window workspace 5";
|
|
||||||
"${modifier}+Ctrl+6" = "move window workspace 6";
|
|
||||||
"${modifier}+Ctrl+7" = "move window workspace 7";
|
|
||||||
"${modifier}+Ctrl+8" = "move window workspace 8";
|
|
||||||
"${modifier}+Ctrl+9" = "move window workspace 9";
|
|
||||||
"${modifier}+Ctrl+0" = "move window workspace 10";
|
|
||||||
"${modifier}+Ctrl+l" = "move window workspace prev";
|
|
||||||
"${modifier}+Ctrl+y" = "move window workspace next";
|
|
||||||
|
|
||||||
"${modifier}+Shift+${left}" = "focus output left";
|
|
||||||
"${modifier}+Shift+${down}" = "focus output down";
|
|
||||||
"${modifier}+Shift+${up}" = "focus output up";
|
|
||||||
"${modifier}+Shift+${right}" = "focus output right";
|
|
||||||
"${modifier}+Shift+left" = "focus output left";
|
|
||||||
"${modifier}+Shift+down" = "focus output down";
|
|
||||||
"${modifier}+Shift+up" = "focus output up";
|
|
||||||
"${modifier}+Shift+right" = "focus output right";
|
|
||||||
|
|
||||||
"${modifier}+Return" = "exec ${terminal}";
|
|
||||||
"${modifier}+Shift+v" = "exec ${clipboard}";
|
|
||||||
"${modifier}+Space" = "exec ${launcher}";
|
|
||||||
|
|
||||||
"${modifier}+c" = "splith";
|
|
||||||
"${modifier}+d" = "splitv";
|
|
||||||
"${modifier}+s" = "layout toggle split";
|
|
||||||
"${modifier}+t" = "layout tabbed";
|
|
||||||
"${modifier}+h" = "focus mode_toggle";
|
|
||||||
"${modifier}+f" = "floating toggle";
|
|
||||||
"${modifier}+m" = "fullscreen toggle";
|
|
||||||
"${modifier}+g" = "sticky toggle";
|
|
||||||
"${modifier}+b" = "bar mode toggle";
|
|
||||||
|
|
||||||
"--locked ${modifier}+Escape" = "exec swaymsg input \"*\" xkb_switch_layout next";
|
|
||||||
"Print" = ''exec ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp -o -r -c '#ff0000ff')" -t ppm - | ${pkgs.satty}/bin/satty --filename - --fullscreen --output-filename ~/pics/screenshots/satty-$(date '+%Y%m%d-%H:%M:%S').png'';
|
|
||||||
|
|
||||||
"${modifier}+1" = "workspace 1";
|
|
||||||
"${modifier}+2" = "workspace 2";
|
|
||||||
"${modifier}+3" = "workspace 3";
|
|
||||||
"${modifier}+4" = "workspace 4";
|
|
||||||
"${modifier}+5" = "workspace 5";
|
|
||||||
"${modifier}+6" = "workspace 6";
|
|
||||||
"${modifier}+7" = "workspace 7";
|
|
||||||
"${modifier}+8" = "workspace 8";
|
|
||||||
"${modifier}+9" = "workspace 9";
|
|
||||||
"${modifier}+0" = "workspace 10";
|
|
||||||
"${modifier}+l" = "workspace prev";
|
|
||||||
"${modifier}+y" = "workspace next";
|
|
||||||
|
|
||||||
"${modifier}+${left}" = "focus left";
|
|
||||||
"${modifier}+${down}" = "focus down";
|
|
||||||
"${modifier}+${up}" = "focus up";
|
|
||||||
"${modifier}+${right}" = "focus right";
|
|
||||||
"${modifier}+left" = "focus left";
|
|
||||||
"${modifier}+down" = "focus down";
|
|
||||||
"${modifier}+up" = "focus up";
|
|
||||||
"${modifier}+right" = "focus right";
|
|
||||||
};
|
|
||||||
window = {
|
|
||||||
border = 1;
|
|
||||||
# hideEdgeBorders = "smart";
|
|
||||||
};
|
|
||||||
gaps = {
|
|
||||||
# top = 6;
|
|
||||||
# bottom = 6;
|
|
||||||
# left = 6;
|
|
||||||
# right = 6;
|
|
||||||
outer = 6;
|
|
||||||
inner = 3;
|
|
||||||
};
|
|
||||||
floating.criteria = [
|
|
||||||
{
|
|
||||||
app_id = "com.github.hluk.copyq";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
app_id = "com.saivert.pwvucontrol";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs.swaylock.enable = true;
|
|
||||||
services.swayidle = {
|
|
||||||
enable = true;
|
|
||||||
systemdTarget = "sway-session.target";
|
|
||||||
timeouts = [
|
|
||||||
{
|
|
||||||
timeout = 300;
|
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -fF";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
timeout = 301;
|
|
||||||
command = "${pkgs.sway}/bin/swaymsg \"output * dpms off\"";
|
|
||||||
resumeCommand = "${pkgs.sway}/bin/swaymsg \"output * dpms on\"";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
events = [
|
|
||||||
{
|
|
||||||
event = "lock";
|
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -fF &&";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
event = "unlock";
|
|
||||||
command = "${pkgs.procps}/bin/pkill -SIGUSR1 swaylock";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
event = "lock";
|
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -fF & ${pkgs.playerctl}/bin/playerctl pause";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.playerctld.enable = true;
|
|
||||||
services.gnome-keyring = {
|
|
||||||
enable = true;
|
|
||||||
components = ["secrets" "ssh"];
|
|
||||||
};
|
|
||||||
services.ssh-agent.enable = true;
|
|
||||||
programs.keychain = {
|
|
||||||
enable = true;
|
|
||||||
keys = ["id_ed25519"];
|
|
||||||
enableNushellIntegration = true;
|
|
||||||
extraFlags = [
|
|
||||||
"--quiet"
|
|
||||||
"--noask"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
services = {
|
|
||||||
network-manager-applet.enable = true;
|
|
||||||
blueman-applet.enable = true;
|
|
||||||
copyq.enable = true;
|
|
||||||
};
|
|
||||||
qt = {
|
|
||||||
enable = true;
|
|
||||||
platformTheme.name = "gtk3";
|
|
||||||
#style.name = "gtk2";
|
|
||||||
};
|
|
||||||
stylix.targets.waybar.enable = false;
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
#package = pkgs.waybar-0.11.0";
|
|
||||||
# systemd = {
|
|
||||||
# enable = true;
|
|
||||||
# target = "graphical-session.target";
|
|
||||||
# };
|
|
||||||
settings = {
|
|
||||||
bar-0 = {
|
|
||||||
ipc = true;
|
|
||||||
id = "bar-0";
|
|
||||||
layer = "top";
|
|
||||||
position = "bottom";
|
|
||||||
height = 32;
|
|
||||||
spacing = 6;
|
|
||||||
# margin-top = 8;
|
|
||||||
margin-left = 8;
|
|
||||||
margin-right = 8;
|
|
||||||
margin-bottom = 8;
|
|
||||||
reload_style_on_change = true;
|
|
||||||
modules-left = [
|
|
||||||
#"custom/notification"
|
|
||||||
"group/sway"
|
|
||||||
"wlr/taskbar"
|
|
||||||
];
|
|
||||||
modules-center = ["clock"];
|
|
||||||
modules-right = [
|
|
||||||
"privacy"
|
|
||||||
"tray"
|
|
||||||
"wireplumber"
|
|
||||||
# "group/laptop"
|
|
||||||
"idle_inhibitor"
|
|
||||||
];
|
|
||||||
"sway/workspaces" = {
|
|
||||||
format = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
"1" = "I";
|
|
||||||
"2" = "II";
|
|
||||||
"3" = "III";
|
|
||||||
"4" = "IV";
|
|
||||||
"5" = "V";
|
|
||||||
"6" = "VI";
|
|
||||||
"7" = "VII";
|
|
||||||
"8" = "IIX";
|
|
||||||
"9" = "IX";
|
|
||||||
"10" = "X";
|
|
||||||
#focused = "";
|
|
||||||
#active = "";
|
|
||||||
#default = "";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"sway/language" = {
|
|
||||||
format = "{flag}";
|
|
||||||
tooltip-format = "{long}";
|
|
||||||
on-click = "swaymsg input type:keyboard xkb_switch_layout next";
|
|
||||||
};
|
|
||||||
"group/sway" = {
|
|
||||||
orientation = "inherit";
|
|
||||||
modules = [
|
|
||||||
"sway/language"
|
|
||||||
"sway/workspaces"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
"group/laptop" = {
|
|
||||||
orientation = "inherit";
|
|
||||||
drawer = {
|
|
||||||
transition-duration = 500;
|
|
||||||
children-class = "laptop";
|
|
||||||
transition-left-to-right = false;
|
|
||||||
};
|
|
||||||
modules = [
|
|
||||||
"battery"
|
|
||||||
"power-profiles-daemon"
|
|
||||||
"custom/separator"
|
|
||||||
"custom/kbd-backlight"
|
|
||||||
"custom/separator"
|
|
||||||
"custom/backlight"
|
|
||||||
"custom/separator"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
"idle_inhibitor" = {
|
|
||||||
format = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
activated = "";
|
|
||||||
deactivated = "";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"tray" = {
|
|
||||||
icon-size = 24;
|
|
||||||
spacing = 3;
|
|
||||||
};
|
|
||||||
"clock" = {
|
|
||||||
interval = 1;
|
|
||||||
format = "{:%H:%M:%S}";
|
|
||||||
tooltip-format = "{:%d.%m.%Y}";
|
|
||||||
};
|
|
||||||
# "custom/backlight" = {
|
|
||||||
# format = "{}% {icon}";
|
|
||||||
# interval = 1;
|
|
||||||
# format-icons = [""];
|
|
||||||
# };
|
|
||||||
# "custom/kbd-backlight" = {
|
|
||||||
# exec = "brightnessctl s 5%+";
|
|
||||||
# interval = 1;
|
|
||||||
# format = "{}% {icon}";
|
|
||||||
# format-icons = [""];
|
|
||||||
# on-scroll-up = "~/.local/bin/keyboard-brightness.nu increase";
|
|
||||||
# on-scroll-down = "~/.local/bin/keyboard-brightness.nu decrease";
|
|
||||||
# };
|
|
||||||
# battery = {
|
|
||||||
# states = {
|
|
||||||
# good = 95;
|
|
||||||
# warning = 30;
|
|
||||||
# critical = 15;
|
|
||||||
# };
|
|
||||||
# format = "{capacity}% {icon}";
|
|
||||||
# format-full = "{capacity}% ";
|
|
||||||
# format-charging = "{capacity}% ";
|
|
||||||
# format-plugged = "{capacity}% ";
|
|
||||||
# format-alt = "{icon} {time}";
|
|
||||||
# format-icons = ["" "" "" "" "" "" "" "" "" ""];
|
|
||||||
# };
|
|
||||||
"upower" = {
|
|
||||||
icon-size = 16;
|
|
||||||
format = "{percentage}";
|
|
||||||
hide-if-empty = true;
|
|
||||||
tooltip = true;
|
|
||||||
tooltip-spacing = 20;
|
|
||||||
};
|
|
||||||
# "power-profiles-daemon" = {
|
|
||||||
# format = "{icon}";
|
|
||||||
# tooltip-format = "Power profile: {profile}\nDriver: {driver}";
|
|
||||||
# tooltip = true;
|
|
||||||
# format-icons = {
|
|
||||||
# default = "";
|
|
||||||
# performance = "";
|
|
||||||
# balanced = "";
|
|
||||||
# power-saver = "";
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
"wireplumber" = {
|
|
||||||
scroll-step = 3;
|
|
||||||
format = "{volume}% {icon}";
|
|
||||||
format-muted = "";
|
|
||||||
format-icons = ["" "" ""];
|
|
||||||
on-click = "${pkgs.pwvucontrol}/bin/pwvucontrol";
|
|
||||||
on-click-right = "wpctl set-mute @DEFAULT_SINK@ toggle";
|
|
||||||
};
|
|
||||||
"custom/notification" = {
|
|
||||||
tooltip = false;
|
|
||||||
format = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
notification = "";
|
|
||||||
none = "";
|
|
||||||
dnd-notification = "";
|
|
||||||
dnd-none = "";
|
|
||||||
};
|
|
||||||
return-type = "json";
|
|
||||||
exec-if = "which swaync-client";
|
|
||||||
exec = "swaync-client -swb";
|
|
||||||
on-click = "swaync-client -t -sw";
|
|
||||||
on-click-right = "swaync-client -d -sw";
|
|
||||||
escape = true;
|
|
||||||
};
|
|
||||||
"privacy" = {
|
|
||||||
# icon-spacing = 4;
|
|
||||||
icon-size = 16;
|
|
||||||
transition-duration = 250;
|
|
||||||
screenshare = {
|
|
||||||
type = "screenshare";
|
|
||||||
tooltip = true;
|
|
||||||
tooltip-icon-size = 24;
|
|
||||||
};
|
|
||||||
audio-in = {
|
|
||||||
type = "audio-in";
|
|
||||||
tooltip = true;
|
|
||||||
tooltip-icon-size = 24;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"wlr/taskbar" = {
|
|
||||||
format = "{icon}";
|
|
||||||
icon-size = 24;
|
|
||||||
icon-theme = "${config.dconf.settings."org/gnome/desktop/interface".icon-theme}";
|
|
||||||
tooltip-format = "{title}";
|
|
||||||
on-click = "activate";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
style = ''
|
|
||||||
@define-color base00 #${config.lib.stylix.colors.base00};
|
|
||||||
@define-color base01 #${config.lib.stylix.colors.base01};
|
|
||||||
@define-color base02 #${config.lib.stylix.colors.base02};
|
|
||||||
@define-color base03 #${config.lib.stylix.colors.base03};
|
|
||||||
@define-color base04 #${config.lib.stylix.colors.base04};
|
|
||||||
@define-color base05 #${config.lib.stylix.colors.base05};
|
|
||||||
@define-color base06 #${config.lib.stylix.colors.base06};
|
|
||||||
@define-color base07 #${config.lib.stylix.colors.base07};
|
|
||||||
@define-color base08 #${config.lib.stylix.colors.base08};
|
|
||||||
@define-color base09 #${config.lib.stylix.colors.base09};
|
|
||||||
@define-color base0A #${config.lib.stylix.colors.base0A};
|
|
||||||
@define-color base0B #${config.lib.stylix.colors.base0B};
|
|
||||||
@define-color base0C #${config.lib.stylix.colors.base0C};
|
|
||||||
@define-color base0D #${config.lib.stylix.colors.base0D};
|
|
||||||
@define-color base0E #${config.lib.stylix.colors.base0E};
|
|
||||||
@define-color base0F #${config.lib.stylix.colors.base0F};
|
|
||||||
* {
|
|
||||||
font-family: ${config.stylix.fonts.sansSerif.name}, FontAwesome;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 100%;
|
|
||||||
/* margin: 0px 2px 2px 2px; */
|
|
||||||
}
|
|
||||||
window#waybar {
|
|
||||||
background-color: @base00;
|
|
||||||
border: 1px solid @base0D;
|
|
||||||
/* border-top: 3px solid @overlay0; */
|
|
||||||
color: @base05;
|
|
||||||
/* padding: 0px 2px 0px 0px; */
|
|
||||||
transition-property: background-color;
|
|
||||||
transition-duration: 0.5s;
|
|
||||||
}
|
|
||||||
.modules-left,
|
|
||||||
.modules-center,
|
|
||||||
.modules-right {
|
|
||||||
padding: 1px;
|
|
||||||
margin-left: 4px;
|
|
||||||
margin-right: 4px;
|
|
||||||
}
|
|
||||||
tooltip {
|
|
||||||
background: @base01;
|
|
||||||
border: 1px solid @base0E;
|
|
||||||
}
|
|
||||||
tooltip label {
|
|
||||||
color: @base05;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
box-shadow: inset 0 -3px transparent;
|
|
||||||
border-radius: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
|
||||||
button:hover {
|
|
||||||
background: inherit;
|
|
||||||
box-shadow: inset 0 -3px transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mode {
|
|
||||||
background-color: rgba(0, 0, 0, 0.2);
|
|
||||||
box-shadow: inset 0 -3px @base05;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock,
|
|
||||||
#battery,
|
|
||||||
#cpu,
|
|
||||||
#memory,
|
|
||||||
#disk,
|
|
||||||
#temperature,
|
|
||||||
#backlight,
|
|
||||||
#custom-backlight,
|
|
||||||
#custom-kbd-backlight,
|
|
||||||
#workspaces,
|
|
||||||
#network,
|
|
||||||
#pulseaudio,
|
|
||||||
#wireplumber,
|
|
||||||
#custom-media,
|
|
||||||
#laptop,
|
|
||||||
#tray,
|
|
||||||
#mode,
|
|
||||||
#privacy
|
|
||||||
#privacy-item,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#backlight-slider,
|
|
||||||
#custom-notification,
|
|
||||||
#scratchpad,
|
|
||||||
#power-profiles-daemon,
|
|
||||||
#taskbar,
|
|
||||||
#language,
|
|
||||||
#upower,
|
|
||||||
#mpris,
|
|
||||||
#mpd {
|
|
||||||
padding: 0 0.5em;
|
|
||||||
color: @base05;
|
|
||||||
background-color: @base00;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* #upower,
|
|
||||||
#battery,
|
|
||||||
#backlight,
|
|
||||||
#custom-kbd-backlight,
|
|
||||||
#backlight-slider,
|
|
||||||
#cpu,
|
|
||||||
#memory,
|
|
||||||
#disk,
|
|
||||||
#network,
|
|
||||||
#wireplumber,
|
|
||||||
#power-profiles-daemon {
|
|
||||||
padding-right: 0.5em;
|
|
||||||
} */
|
|
||||||
|
|
||||||
#taskbar button,
|
|
||||||
#workspaces button {
|
|
||||||
padding: 0 0.2em;
|
|
||||||
}
|
|
||||||
#workspaces button.focused,
|
|
||||||
#workspaces button.active {
|
|
||||||
color: @base0D;
|
|
||||||
}
|
|
||||||
#taskbar button:hover {
|
|
||||||
box-shadow: transparent;
|
|
||||||
}
|
|
||||||
#taskbar.empty,
|
|
||||||
window#empty {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging) {
|
|
||||||
background-color: @base09;
|
|
||||||
color: @base00;
|
|
||||||
animation-name: blink;
|
|
||||||
animation-duration: 0.5s;
|
|
||||||
animation-timing-function: steps(12);
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-direction: alternate;
|
|
||||||
}
|
|
||||||
|
|
||||||
#power-profiles-daemon.performance {
|
|
||||||
background-color: @base00;
|
|
||||||
color: @base0D;
|
|
||||||
}
|
|
||||||
|
|
||||||
#power-profiles-daemon.balanced {
|
|
||||||
background-color: @base00;
|
|
||||||
color: @base0B;
|
|
||||||
}
|
|
||||||
|
|
||||||
#power-profiles-daemon.power-saver {
|
|
||||||
background-color: @base00;
|
|
||||||
color: @base0A;
|
|
||||||
}
|
|
||||||
|
|
||||||
label:focus {
|
|
||||||
background-color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tray > .passive {
|
|
||||||
-gtk-icon-effect: dim;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tray > .needs-attention {
|
|
||||||
-gtk-icon-effect: highlight;
|
|
||||||
background-color: @base08;
|
|
||||||
}
|
|
||||||
#idle_inhibitor:hover {
|
|
||||||
box-shadow: inset 0 -3px @base05;
|
|
||||||
}
|
|
||||||
|
|
||||||
#idle_inhibitor.activated {
|
|
||||||
background-color: @base05;
|
|
||||||
color: @base00;
|
|
||||||
}
|
|
||||||
|
|
||||||
#idle_inhibitor.activated:hover {
|
|
||||||
box-shadow: inset 0 -3px @base00;
|
|
||||||
}
|
|
||||||
|
|
||||||
#laptop,
|
|
||||||
#privacy {
|
|
||||||
padding: 0em;
|
|
||||||
}
|
|
||||||
|
|
||||||
#privacy-item.screenshare {
|
|
||||||
background-color: @base00;
|
|
||||||
color: @base0C;
|
|
||||||
}
|
|
||||||
|
|
||||||
#privacy-item.audio-in {
|
|
||||||
background-color: @base00;
|
|
||||||
color: @base0E;
|
|
||||||
}
|
|
||||||
|
|
||||||
#privacy-item.audio-out {
|
|
||||||
background-color: @base;
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.rofi = {
|
|
||||||
enable = true;
|
|
||||||
theme = {
|
|
||||||
window = {
|
|
||||||
height = 360;
|
|
||||||
border = 3;
|
|
||||||
};
|
|
||||||
|
|
||||||
inputbar = {
|
|
||||||
children = ["prompt" "entry"];
|
|
||||||
border-radius = 5;
|
|
||||||
padding = 2;
|
|
||||||
};
|
|
||||||
|
|
||||||
prompt = {
|
|
||||||
padding = 6;
|
|
||||||
border-radius = 3;
|
|
||||||
margin = "20px 0px 0px 20px";
|
|
||||||
};
|
|
||||||
|
|
||||||
textbox-prompt-colon = {
|
|
||||||
expand = false;
|
|
||||||
str = "~>";
|
|
||||||
};
|
|
||||||
|
|
||||||
entry = {
|
|
||||||
padding = 6;
|
|
||||||
margin = "20px 0px 0px 10px";
|
|
||||||
};
|
|
||||||
|
|
||||||
listview = {
|
|
||||||
border = "0px 0px 0px";
|
|
||||||
padding = "6px 0px 0px";
|
|
||||||
margin = "10px 0px 0px 20px";
|
|
||||||
columns = 2;
|
|
||||||
lines = 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
element = {
|
|
||||||
padding = 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
element-icon = {
|
|
||||||
size = 25;
|
|
||||||
};
|
|
||||||
|
|
||||||
mode-switcher = {
|
|
||||||
spacing = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
button = {
|
|
||||||
padding = 10;
|
|
||||||
vertical-align = "0.5";
|
|
||||||
horizontal-align = "0.5";
|
|
||||||
};
|
|
||||||
|
|
||||||
message = {
|
|
||||||
margin = 2;
|
|
||||||
padding = 2;
|
|
||||||
border-radius = 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
textbox = {
|
|
||||||
padding = 6;
|
|
||||||
margin = "20 0 0 20";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
extraConfig = {
|
|
||||||
show-icons = true;
|
|
||||||
modi = "run,drun,window";
|
|
||||||
kb-primary-paste = "Control+V,Shift+Insert";
|
|
||||||
kb-secondary-paste = "Control+v,Insert";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs.fuzzel = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
main = {
|
|
||||||
terminal = "wezterm -e";
|
|
||||||
fields = "filename,name,generic,keywords,categories,exec";
|
|
||||||
dpi-aware = false;
|
|
||||||
horizontal-pad = 8;
|
|
||||||
show-actions = true;
|
|
||||||
match-mode = "fuzzy";
|
|
||||||
icon-theme = "${config.dconf.settings."org/gnome/desktop/interface".icon-theme}";
|
|
||||||
};
|
|
||||||
border = {
|
|
||||||
width = 2;
|
|
||||||
radius = 4;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.dunst = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
global = {
|
|
||||||
width = 300;
|
|
||||||
height = 300;
|
|
||||||
icon_theme = "${config.dconf.settings."org/gnome/desktop/interface".icon-theme}";
|
|
||||||
corner_radius = 4;
|
|
||||||
#corners = "top-right,bottom-left";
|
|
||||||
offset = "16x16";
|
|
||||||
origin = "bottom-right";
|
|
||||||
timeout = 15;
|
|
||||||
frame_width = 2;
|
|
||||||
notification_limit = 5;
|
|
||||||
};
|
|
||||||
rule-telegram = {
|
|
||||||
"desktop_entry" = "org.telegram.desktop";
|
|
||||||
"urgency" = "normal";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
services.wlsunset = {
|
|
||||||
enable = true;
|
|
||||||
latitude = "49.6";
|
|
||||||
longitude = "36.1";
|
|
||||||
temperature = {
|
|
||||||
day = 6500;
|
|
||||||
night = 3000;
|
|
||||||
};
|
|
||||||
systemdTarget = "graphical-session.target";
|
|
||||||
};
|
|
||||||
services.udiskie = {
|
|
||||||
enable = true;
|
|
||||||
automount = false;
|
|
||||||
notify = true;
|
|
||||||
tray = "auto";
|
|
||||||
};
|
|
||||||
# services.flameshot = {
|
|
||||||
# enable = true;
|
|
||||||
# settings = {
|
|
||||||
# General = {
|
|
||||||
# buttons = "@Variant(000x7f000vQList<int>0000x130000000x1000x2000x3000x4000x5000x6000x12000xf000x13000b000 000x10000000v000x17000xe000f000x11)";
|
|
||||||
# filenamePattern = "screenshot-%F_%H-%M-%S";
|
|
||||||
# saveAsFileExtension = "png";
|
|
||||||
# savePath = "/home/user/pics/screenshots";
|
|
||||||
# uiColor = "#${config.lib.stylix.colors.base0D}";
|
|
||||||
# showStartupLaunchMessage = false;
|
|
||||||
# showDesktopNotification = false;
|
|
||||||
# showHelp = false;
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
nautilus
|
|
||||||
helvum
|
|
||||||
loupe
|
|
||||||
evince
|
|
||||||
celluloid
|
|
||||||
mission-center
|
|
||||||
dconf
|
|
||||||
glib
|
|
||||||
libnotify
|
|
||||||
playerctl
|
|
||||||
wdisplays
|
|
||||||
pwvucontrol
|
|
||||||
wl-clipboard-rs
|
|
||||||
polkit_gnome
|
|
||||||
libqalculate
|
|
||||||
#papirus-icon-theme
|
|
||||||
];
|
|
||||||
xdg.userDirs = {
|
|
||||||
enable = true;
|
|
||||||
createDirectories = true;
|
|
||||||
templates = "${config.home.homeDirectory}/temps";
|
|
||||||
publicShare = "${config.home.homeDirectory}/pub";
|
|
||||||
desktop = "${config.home.homeDirectory}/desktop";
|
|
||||||
download = "${config.home.homeDirectory}/downloads";
|
|
||||||
documents = "${config.home.homeDirectory}/docs";
|
|
||||||
pictures = "${config.home.homeDirectory}/pics";
|
|
||||||
videos = "${config.home.homeDirectory}/vids";
|
|
||||||
music = "${config.home.homeDirectory}/music";
|
|
||||||
};
|
|
||||||
xdg.mime.enable = true;
|
|
||||||
xdg.mimeApps = {
|
|
||||||
enable = true;
|
|
||||||
defaultApplications = let
|
|
||||||
file_manager = ["org.gnome.Nautilus.desktop"];
|
|
||||||
web_browser = ["io.github.zen_browser.zen.desktop"];
|
|
||||||
image_viewer = ["org.gnome.Loupe.desktop"];
|
|
||||||
video_player = ["io.github.celluloid_player.Celluloid.desktop"];
|
|
||||||
pdf_reader = ["org.gnome.Evince.desktop"];
|
|
||||||
in {
|
|
||||||
"inode/directory" = file_manager;
|
|
||||||
"video/x-matroska" = video_player;
|
|
||||||
"video/mp4" = video_player;
|
|
||||||
"video/mpeg" = video_player;
|
|
||||||
"video/x-mpeg" = video_player;
|
|
||||||
"image/png" = image_viewer;
|
|
||||||
"image/jpeg" = image_viewer;
|
|
||||||
"application/pdf" = pdf_reader;
|
|
||||||
"text/html" = web_browser;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.user.settings.Manager.DefaultEnvironment = {
|
|
||||||
#DISPLAY = ":123";
|
|
||||||
};
|
|
||||||
systemd.user.targets.tray = {
|
|
||||||
# workaround for udiskie
|
|
||||||
Unit = {
|
|
||||||
Description = "Home Manager System Tray";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
systemd.user.services = {
|
|
||||||
udiskie = {
|
|
||||||
Unit = {
|
|
||||||
PartOf = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
Requisite = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = ["sway-session.target"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# waybar = {
|
|
||||||
# Unit = {
|
|
||||||
# Description = "Swaync notification daemon";
|
|
||||||
# # };
|
|
||||||
# Unit = {
|
|
||||||
# PartOf = ["graphical-session.target"];
|
|
||||||
# After = ["graphical-session.target"];
|
|
||||||
# Requisite = ["graphical-session.target"];
|
|
||||||
# };
|
|
||||||
# Install = {
|
|
||||||
# WantedBy = ["sway-session.target"];
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
copyq = {
|
|
||||||
Unit = {
|
|
||||||
PartOf = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
Requisite = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = ["sway-session.target"];
|
|
||||||
};
|
|
||||||
Service = {
|
|
||||||
Environment = lib.mkForce "QT_QPA_PLATFORM=wayland";
|
|
||||||
Restart = "on-failure";
|
|
||||||
RestartSec = 1;
|
|
||||||
TimeoutStopSec = 10;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
network-manager-applet = {
|
|
||||||
Unit = {
|
|
||||||
PartOf = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
Requisite = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = ["sway-session.target"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
gnome-polkit-agent = {
|
|
||||||
Unit = {
|
|
||||||
PartOf = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
Requisite = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = ["sway-session.target"];
|
|
||||||
};
|
|
||||||
Service = {
|
|
||||||
Type = "simple";
|
|
||||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
|
||||||
Restart = "on-failure";
|
|
||||||
RestartSec = 1;
|
|
||||||
TimeoutStopSec = 10;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
wlsunset = {
|
|
||||||
Unit = {
|
|
||||||
PartOf = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
Requisite = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = ["sway-session.target"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -10,7 +10,7 @@ with lib; let
|
|||||||
cfg = config.desktop.dms;
|
cfg = config.desktop.dms;
|
||||||
in {
|
in {
|
||||||
imports = with inputs; [
|
imports = with inputs; [
|
||||||
dms.nixosModules.dankMaterialShell
|
dms.nixosModules.dank-material-shell
|
||||||
dms.nixosModules.greeter
|
dms.nixosModules.greeter
|
||||||
niri-flake.nixosModules.niri
|
niri-flake.nixosModules.niri
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -57,7 +57,7 @@
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
zramSwap = {
|
zramSwap = {
|
||||||
enable = false;
|
enable = true;
|
||||||
algorithm = "zstd";
|
algorithm = "zstd";
|
||||||
memoryPercent = 25;
|
memoryPercent = 25;
|
||||||
priority = 5;
|
priority = 5;
|
||||||
|
|||||||
@@ -33,6 +33,6 @@
|
|||||||
InterceptUnknown = true;
|
InterceptUnknown = true;
|
||||||
ProcMonitorMethod = "ebpf";
|
ProcMonitorMethod = "ebpf";
|
||||||
};
|
};
|
||||||
# scx.scheduler = "scx_rustland";
|
scx.scheduler = "scx_rustland";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,8 @@
|
|||||||
in {
|
in {
|
||||||
enable = true;
|
enable = true;
|
||||||
createDirectories = true;
|
createDirectories = true;
|
||||||
|
setSessionVariables = false;
|
||||||
|
|
||||||
templates = homeDir "temps";
|
templates = homeDir "temps";
|
||||||
publicShare = homeDir "pub";
|
publicShare = homeDir "pub";
|
||||||
desktop = homeDir "desktop";
|
desktop = homeDir "desktop";
|
||||||
|
|||||||
Reference in New Issue
Block a user