2023-06-19 13:22:15 +02:00
|
|
|
{ config, pkgs, lib, ... }:
|
2023-06-26 23:04:01 +02:00
|
|
|
|
2023-02-28 23:00:18 +01:00
|
|
|
{
|
2023-06-26 23:04:01 +02:00
|
|
|
imports = [
|
2023-06-30 11:16:21 +02:00
|
|
|
# ./sway.nix
|
2023-06-26 23:04:01 +02:00
|
|
|
./river.nix
|
|
|
|
./waybar.nix
|
|
|
|
./shikane.nix
|
|
|
|
];
|
|
|
|
|
2023-02-28 23:00:18 +01:00
|
|
|
home.packages = with pkgs; [
|
|
|
|
swaylock-effects
|
2023-06-06 12:59:29 +02:00
|
|
|
wl-clipboard
|
|
|
|
swaynotificationcenter
|
2023-06-06 13:20:37 +02:00
|
|
|
playerctl
|
2023-06-22 14:34:05 +02:00
|
|
|
wdisplays
|
2023-02-28 23:00:18 +01:00
|
|
|
];
|
|
|
|
|
|
|
|
services.swayidle = {
|
|
|
|
enable = true;
|
|
|
|
events = [
|
2023-06-19 13:22:15 +02:00
|
|
|
{ event = "before-sleep"; command = lib.getExe pkgs.swaylock-effects; }
|
|
|
|
{ event = "lock"; command = lib.getExe pkgs.swaylock-effects; }
|
2023-02-28 23:00:18 +01:00
|
|
|
];
|
|
|
|
timeouts = [
|
2023-06-19 13:22:15 +02:00
|
|
|
{ timeout = 300; command = lib.getExe pkgs.swaylock-effects; }
|
2023-02-28 23:00:18 +01:00
|
|
|
];
|
2023-06-27 16:01:12 +02:00
|
|
|
systemdTarget = "graphical-session.target";
|
2023-02-28 23:00:18 +01:00
|
|
|
};
|
2023-06-27 16:01:12 +02:00
|
|
|
|
2023-06-06 12:59:29 +02:00
|
|
|
systemd.user.services.swaync = {
|
|
|
|
Install.WantedBy = [ "graphical-session.target" ];
|
|
|
|
Service = {
|
|
|
|
ExecStart = "${pkgs.swaynotificationcenter}/bin/swaync";
|
|
|
|
Restart = "on-failure";
|
|
|
|
};
|
|
|
|
Unit = {
|
2023-06-26 23:04:01 +02:00
|
|
|
After = "graphical-session-pre.target";
|
2023-06-06 12:59:29 +02:00
|
|
|
Description = "Simple notification daemon with a GUI built for Sway";
|
|
|
|
Documentation = "https://github.com/ErikReider/SwayNotificationCenter";
|
|
|
|
PartOf = "graphical-session.target";
|
|
|
|
};
|
|
|
|
};
|
2023-02-28 23:00:18 +01:00
|
|
|
|
2023-07-09 22:49:16 +02:00
|
|
|
services.wlsunset = {
|
|
|
|
enable = true;
|
|
|
|
longitude = "13";
|
|
|
|
latitude = "51";
|
|
|
|
temperature = {
|
|
|
|
night = 4300;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-02-28 23:00:18 +01:00
|
|
|
xdg.configFile = {
|
2023-06-26 23:04:01 +02:00
|
|
|
"swaync".source = ./swaync;
|
|
|
|
"fuzzel/fuzzel.ini".text = ''
|
|
|
|
[main]
|
|
|
|
icon-theme=${config.gtk.iconTheme.name}
|
|
|
|
show-actions=yes
|
|
|
|
width=80
|
|
|
|
terminal=${lib.getExe pkgs.foot}
|
|
|
|
|
|
|
|
[colors]
|
|
|
|
background=${config.colorScheme.colors.base00}ff
|
|
|
|
text=${config.colorScheme.colors.base05}ff
|
|
|
|
match=${config.colorScheme.colors.base08}ff
|
|
|
|
selection=${config.colorScheme.colors.base02}ff
|
|
|
|
selection-text=${config.colorScheme.colors.base04}ff
|
|
|
|
border=${config.colorScheme.colors.base01}ff
|
|
|
|
'';
|
|
|
|
"swappy/config".text = ''
|
|
|
|
[Default]
|
|
|
|
save_dir = ~/Pictures/Screenshots/
|
|
|
|
early_exit = true
|
|
|
|
'';
|
2023-02-28 23:00:18 +01:00
|
|
|
"swaylock/config".text = ''
|
|
|
|
indicator-radius=200
|
|
|
|
indicator-thickness=3
|
|
|
|
inside-color=00000000
|
|
|
|
inside-ver-color=${config.colorScheme.colors.base0D}
|
|
|
|
inside-clear-color=${config.colorScheme.colors.base0B}
|
|
|
|
ring-color=${config.colorScheme.colors.base03}
|
|
|
|
ring-wrong-color=${config.colorScheme.colors.base08}
|
|
|
|
screenshot
|
|
|
|
effect-blur=7x5
|
|
|
|
'';
|
|
|
|
"wlogout/style.css".text = ''
|
2023-06-06 12:59:29 +02:00
|
|
|
* {
|
2023-02-28 23:00:18 +01:00
|
|
|
background-image: none;
|
|
|
|
}
|
|
|
|
window {
|
|
|
|
background-color: rgba(12, 12, 12, 0);
|
|
|
|
}
|
|
|
|
button {
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
background-color: #${config.colorScheme.colors.base00};
|
|
|
|
border-style: solid;
|
|
|
|
border-width: 2px;
|
|
|
|
border-radius: 30px;
|
|
|
|
margin: 5px;
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
background-position: center;
|
|
|
|
background-size: 25%;
|
|
|
|
}
|
|
|
|
|
|
|
|
button:active, button:hover {
|
|
|
|
background-color: #${config.colorScheme.colors.base03};
|
|
|
|
outline-style: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
#lock {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/lock.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
#logout {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/logout.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
#suspend {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/suspend.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
#hibernate {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/hibernate.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
#shutdown {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/shutdown.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
#reboot {
|
|
|
|
background-image: image(url("${pkgs.wlogout}/share/wlogout/icons/reboot.png"));
|
|
|
|
}
|
|
|
|
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|