chore: install new swaync files

This commit is contained in:
Ahwx 2025-08-17 13:45:49 +02:00
parent 4891753215
commit d6b69dc2fe

View file

@ -1,381 +1,233 @@
{ pkgs, username, ... }:
{
home = {
packages = with pkgs; [ swaynotificationcenter ];
packages = with pkgs; [
swaynotificationcenter
wlogout
];
file."/home/${username}/.config/swaync/config.json".text = ''
{
"positionX": "right",
"positionY": "top",
"layer": "overlay",
"layer-shell": "true",
"cssPriority": "application",
"control-center-margin-top": 10,
"control-center-margin-bottom": 10,
"control-center-margin-right": 10,
"control-center-margin-left": 10,
"notification-icon-size": 64,
"notification-body-image-height": 128,
"notification-body-image-width": 200,
"timeout": 10,
"timeout-low": 5,
"timeout-critical": 0,
"fit-to-screen": true,
"control-center-width": 400,
"control-center-height": 650,
"notification-window-width": 350,
"keyboard-shortcuts": true,
"image-visibility": "when-available",
"transition-time": 200,
"hide-on-clear": false,
"hide-on-action": true,
"script-fail-notify": true,
"widgets": [
"title",
"dnd",
"notifications"
],
"widget-config": {
"title": {
"text": "Notifications",
"clear-all-button": true,
"button-text": " Clear all "
},
"dnd": {
"text": " Do not disturb"
},
}
{
"$schema": "/etc/xdg/swaync/configSchema.json",
"positionX": "right",
"positionY": "top",
"layer": "overlay",
"layer-shell": true,
"cssPriority": "user",
"control-center-width": 380,
"control-center-height": 860,
"control-center-margin-top": 8,
"control-center-margin-bottom": 8,
"control-center-margin-right": 8,
"control-center-margin-left": 8,
"notification-window-width": 400,
"notification-icon-size": 48,
"notification-body-image-height": 160,
"notification-body-image-width": 200,
"widgets": ["buttons-grid", "title", "dnd", "notifications", "mpris"],
"widget-config": {
"title": {
"text": "Notifications",
"clear-all-button": true,
"button-text": "Clear All"
},
"dnd": {
"text": "Do Not Disturb"
},
"label": {
"max-lines": 1,
"text": " "
},
"mpris": {
"image-size": 60,
"image-radius": 12
},
"buttons-grid": {
"actions": [
{
"label": " ",
"command": "kitty -e nmtui-connect"
},
{
"label": "󰂯",
"command": "waybar-bluetooth toggle"
},
{
"label": "󰏘",
"command": "kitty -e walp"
},
{
"label": "",
"command": "wlogout"
}
]
}
}
}
'';
file = {
"/home/${username}/.config/swaync/style.css".text = ''
* {
all: unset;
font-size: 14px;
font-family: "GohuFont 14 Nerd Font Mono";
transition: 200ms;
}
file."/home/${username}/.config/swaync/style.css".text = ''
@import "../../.cache/wal/colors-waybar.css";
trough highlight {
background: #cdd6f4;
}
@define-color text @foreground;
@define-color bg @color1;
@define-color selected @color6;
@define-color hover alpha(@selected, .4);
scale trough {
margin: 0rem 1rem;
background-color: #313244;
min-height: 8px;
min-width: 70px;
}
* {
outline: none;
transition: 200ms;
padding: 1px;
background: transparent;
}
slider {
background-color: #89b4fa;
}
.notification-row {
outline: none;
margin: 0;
padding: 0px;
}
.floating-notifications.background .notification-row .notification-background {
box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244;
margin: 18px;
background-color: #000000;
color: #cdd6f4;
padding: 0;
}
.notification-row .notification-background .close-button {
/* The notification Close Button */
background: transparent;
color: @text;
text-shadow: none;
box-shadow: none;
margin-top: 2px;
margin-right: 2px;
padding: 0;
border: none;
border-radius: 100%;
min-width: 24px;
min-height: 24px;
}
.floating-notifications.background .notification-row .notification-background .notification {
padding: 7px;
}
.notification-row .notification-background .close-button:hover {
box-shadow: none;
background: transparent;
transition: background 0.15s ease-in-out;
border: 0px;
}
.floating-notifications.background .notification-row .notification-background .notification.critical {
box-shadow: inset 0 0 7px 0 #f38ba8;
}
.notification-row .notification-background .notification {
/* The actual notification */
background: transparent;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content {
margin: 7px;
}
.notification-group .notification-group-headers {
/* Notficiation Group Headers */
margin-top: 10px;
margin-bottom: 10px;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .summary {
color: #cdd6f4;
}
.notification-group .notification-group-headers .notification-group-header {
font-size: 20px;
margin-left: 3px;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .time {
color: #a6adc8;
}
.notification-group.collapsed .notification-row .notification {
background: alpha(@background, 0.55);
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .body {
color: #cdd6f4;
}
.control-center {
/* The Control Center which contains the old notifications + widgets */
margin: 18px;
padding: 14px;
box-shadow: 0px 2px 5px black;
background: alpha(@background, 0.55);
border: 2px solid @selected;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * {
min-height: 3.4em;
}
.control-center-clear-all {
/* Clear All button */
background: transparent;
padding: 5px;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action {
color: #cdd6f4;
background-color: #000000;
box-shadow: inset 0 0 0 1px #45475a;
margin: 7px;
}
.control-center-clear-all:hover {
background: @hover;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:hover {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #000000;
color: #cdd6f4;
}
.control-center-clear-all:active {
background: @selected;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:active {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #000000;
color: #cdd6f4;
}
/*** Widgets ***/
/* Title widget */
.widget-title {
background: transparent;
margin-top: 15px;
margin-left: 15px;
margin-right: 15px;
}
.floating-notifications.background .notification-row .notification-background .close-button {
margin: 7px;
padding: 2px;
color: #1e1e2e;
background-color: #000000;
}
/* Do Not Disturb widget */
.widget-dnd {
background: transparent;
margin-left: 15px;
margin-right: 15px;
}
.floating-notifications.background .notification-row .notification-background .close-button:hover {
background-color: #000000;
color: #1e1e2e;
}
.widget-dnd > switch {
background: @bg;
font-size: initial;
border-radius: 12px;
box-shadow: none;
padding: 2px;
}
.floating-notifications.background .notification-row .notification-background .close-button:active {
background-color: #000000;
color: #1e1e2e;
}
/* Media Player widget */
@define-color mpris-album-art-overlay rgba(0, 0, 0, 0.55);
@define-color mpris-button-hover rgba(0, 0, 0, 0.50);
.control-center {
box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244;
margin: 18px;
background-color: #000000;
color: #cdd6f4;
padding: 14px;
}
.widget-mpris {
}
.control-center .widget-title > label {
color: #cdd6f4;
font-size: 1.3em;
}
.widget-mpris .widget-mpris-player {
padding: 10px;
margin: 8px 15px;
/* background-color: @mpris-album-art-overlay; */
box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.75);
border: 2px;
}
.control-center .widget-title button {
color: #cdd6f4;
background-color: #313244;
box-shadow: inset 0 0 0 1px #45475a;
padding: 8px;
}
.widget-mpris .widget-mpris-player .widget-mpris-title {
font-size: 16px;
}
.control-center .widget-title button:hover {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #585b70;
color: #cdd6f4;
}
.widget-mpris .widget-mpris-player .widget-mpris-subtitle {
font-size: 14px;
}
.control-center .widget-title button:active {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #74c7ec;
color: #1e1e2e;
}
/* Buttons widget */
.widget-buttons-grid {
/* background-color: alpha(@color2, 0.5); */
}
.control-center .notification-row .notification-background {
color: #cdd6f4;
background-color: #313244;
box-shadow: inset 0 0 0 1px #45475a;
margin-top: 14px;
}
.widget-buttons-grid > flowbox > flowboxchild > button {
/* background: alpha(@color2, 0.5); */
/* border-radius: 12px; */
min-width: 45px;
}
.control-center .notification-row .notification-background .notification {
padding: 7px;
}
.control-center .notification-row .notification-background .notification {
padding: 10px;
}
.control-center .notification-row .notification-background .notification.critical {
box-shadow: inset 0 0 7px 0 #f38ba8;
}
.floating-notifications.background .notification-row .notification-background .close-button {
margin: 10px;
padding: 2px;
}
.control-center .notification-row .notification-background .notification .notification-content {
margin: 7px;
}
.floating-notifications.background .notification-row .notification-background {
margin: 18px;
padding: 0;
}
.control-center .notification-row .notification-background .notification .notification-content .summary {
color: #cdd6f4;
}
.control-center .notification-row .notification-background .notification .notification-content .time {
color: #a6adc8;
}
.control-center .notification-row .notification-background .notification .notification-content .body {
color: #cdd6f4;
}
.control-center .notification-row .notification-background .notification > *:last-child > * {
min-height: 3.4em;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action {
color: #cdd6f4;
background-color: #11111b;
box-shadow: inset 0 0 0 1px #45475a;
margin: 7px;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:hover {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #313244;
color: #cdd6f4;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:active {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #74c7ec;
color: #cdd6f4;
}
.control-center .notification-row .notification-background .close-button {
margin: 7px;
padding: 2px;
color: #1e1e2e;
background-color: #eba0ac;
}
.close-button {
}
.control-center .notification-row .notification-background .close-button:hover {
background-color: #f38ba8;
color: #1e1e2e;
}
.control-center .notification-row .notification-background .close-button:active {
background-color: #f38ba8;
color: #1e1e2e;
}
.control-center .notification-row .notification-background:hover {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #7f849c;
color: #cdd6f4;
}
.control-center .notification-row .notification-background:active {
box-shadow: inset 0 0 0 1px #45475a;
background-color: #74c7ec;
color: #cdd6f4;
}
.notification.critical progress {
background-color: #f38ba8;
}
.notification.low progress,
.notification.normal progress {
background-color: #89b4fa;
}
.control-center-dnd {
margin-top: 5px;
background: #313244;
border: 1px solid #45475a;
box-shadow: none;
}
.control-center-dnd:checked {
background: #313244;
}
.control-center-dnd slider {
background: #45475a;
}
.widget-dnd {
margin: 0px;
font-size: 1.1rem;
}
.widget-dnd > switch {
font-size: initial;
background: #313244;
border: 1px solid #45475a;
box-shadow: none;
}
.widget-dnd > switch:checked {
background: #313244;
}
.widget-dnd > switch slider {
background: #45475a;
border: 1px solid #6c7086;
}
.widget-mpris .widget-mpris-player {
background: #313244;
padding: 7px;
}
.widget-mpris .widget-mpris-title {
font-size: 1.2rem;
}
.widget-mpris .widget-mpris-subtitle {
font-size: 0.8rem;
}
.widget-menubar > box > .menu-button-bar > button > label {
font-size: 3rem;
padding: 0.5rem 2rem;
}
.widget-menubar > box > .menu-button-bar > :last-child {
color: #f38ba8;
}
.power-buttons button:hover,
.powermode-buttons button:hover,
.screenshot-buttons button:hover {
background: #313244;
}
.control-center .widget-label > label {
color: #cdd6f4;
font-size: 2rem;
}
.widget-buttons-grid {
padding-top: 1rem;
}
.widget-buttons-grid > flowbox > flowboxchild > button label {
font-size: 2.5rem;
}
.widget-volume {
padding-top: 1rem;
}
.widget-volume label {
font-size: 1.5rem;
color: #74c7ec;
}
.widget-volume trough highlight {
background: #74c7ec;
}
.widget-backlight trough highlight {
background: #f9e2af;
}
.widget-backlight scale {
margin-right: 1rem;
}
.widget-backlight label {
font-size: 1.5rem;
color: #f9e2af;
}
.widget-backlight .KB {
padding-bottom: 1rem;
}
'';
};
.floating-notifications.background .notification-row .notification-background .notification {
padding: 7px;
}
'';
};
}