Added NCSway
This commit is contained in:
@@ -1,7 +0,0 @@
|
|||||||
#keys:
|
|
||||||
# - &primary age1yq35g6mmlem0rhr47u6ewh8dctlwp9hj0s0ac60e4hrw9hjzlqms6crf7n
|
|
||||||
#creation_rules:
|
|
||||||
# - path_regex: secrets/secrets.yaml$
|
|
||||||
# key_groups:
|
|
||||||
# - age:
|
|
||||||
# - *primary
|
|
||||||
+395
-346
File diff suppressed because it is too large
Load Diff
+60
-14
@@ -463,6 +463,9 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
#+begin_src bash :tangle no
|
#+begin_src bash :tangle no
|
||||||
├── assets
|
├── assets
|
||||||
│ ├── conf
|
│ ├── conf
|
||||||
|
│ │ ├── app.
|
||||||
|
├── assets
|
||||||
|
│ ├── conf
|
||||||
│ │ ├── apps
|
│ │ ├── apps
|
||||||
│ │ │ ├── flatpaks.conf
|
│ │ │ ├── flatpaks.conf
|
||||||
│ │ │ └── packages.conf
|
│ │ │ └── packages.conf
|
||||||
@@ -475,12 +478,31 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
│ │ │ │ ├── hypridle.conf
|
│ │ │ │ ├── hypridle.conf
|
||||||
│ │ │ │ ├── hyprland.conf
|
│ │ │ │ ├── hyprland.conf
|
||||||
│ │ │ │ ├── hyprlock.conf
|
│ │ │ │ ├── hyprlock.conf
|
||||||
|
│ │ │ │ ├── hyprscrolling.conf
|
||||||
│ │ │ │ ├── hyprshell
|
│ │ │ │ ├── hyprshell
|
||||||
|
│ │ │ │ │ ├── config.ron
|
||||||
|
│ │ │ │ │ └── styles.css
|
||||||
│ │ │ │ └── scripts
|
│ │ │ │ └── scripts
|
||||||
|
│ │ │ │ ├── hyprscrolling-per-monitor.sh
|
||||||
|
│ │ │ │ ├── hyprscroll-overflow.sh
|
||||||
|
│ │ │ │ ├── lid-lock.sh
|
||||||
|
│ │ │ │ ├── lid-restore.sh
|
||||||
|
│ │ │ │ └── powermenu.sh
|
||||||
│ │ │ ├── wallpaper
|
│ │ │ ├── wallpaper
|
||||||
│ │ │ │ ├── gif
|
│ │ │ │ ├── gif
|
||||||
│ │ │ │ ├── pictures
|
│ │ │ │ ├── pictures
|
||||||
|
│ │ │ │ │ ├── 1.jpg
|
||||||
|
│ │ │ │ │ ├── 2.jpg
|
||||||
|
│ │ │ │ │ ├── 3.jpg
|
||||||
|
│ │ │ │ │ ├── 4.png
|
||||||
|
│ │ │ │ │ ├── 5.jpg
|
||||||
|
│ │ │ │ │ ├── 6.jpg
|
||||||
|
│ │ │ │ │ ├── 7.jpg
|
||||||
|
│ │ │ │ │ ├── 8.jpg
|
||||||
|
│ │ │ │ │ └── 9.jpg
|
||||||
│ │ │ │ ├── videos
|
│ │ │ │ ├── videos
|
||||||
|
│ │ │ │ │ ├── dark_water_large.mp4
|
||||||
|
│ │ │ │ │ └── white_blobs_small.mp4
|
||||||
│ │ │ │ └── wallpaper.conf
|
│ │ │ │ └── wallpaper.conf
|
||||||
│ │ │ └── waybar
|
│ │ │ └── waybar
|
||||||
│ │ │ ├── config.jsonc
|
│ │ │ ├── config.jsonc
|
||||||
@@ -489,6 +511,7 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
│ │ │ └── terminal
|
│ │ │ └── terminal
|
||||||
│ │ │ ├── alacritty.toml
|
│ │ │ ├── alacritty.toml
|
||||||
│ │ │ ├── aliases.conf
|
│ │ │ ├── aliases.conf
|
||||||
|
│ │ │ ├── Catppuccin-Mocha.conf
|
||||||
│ │ │ ├── enabled_shells.conf
|
│ │ │ ├── enabled_shells.conf
|
||||||
│ │ │ ├── kitty.conf
|
│ │ │ ├── kitty.conf
|
||||||
│ │ │ ├── starship.toml
|
│ │ │ ├── starship.toml
|
||||||
@@ -497,14 +520,8 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
│ │ │ └── ssh
|
│ │ │ └── ssh
|
||||||
│ │ │ └── ssh-client.conf
|
│ │ │ └── ssh-client.conf
|
||||||
│ │ └── services
|
│ │ └── services
|
||||||
│ ├── cursors
|
|
||||||
│ │ └── Bibata_Cursor-main
|
|
||||||
│ ├── icons
|
|
||||||
│ │ └── papirus-icon-theme-master
|
|
||||||
│ ├── lock.png
|
│ ├── lock.png
|
||||||
│ ├── scripts
|
│ └── scripts
|
||||||
│ └── themes
|
|
||||||
│ └── Catppuccin-Mocha-Standard-Blue-Dark
|
|
||||||
├── configuration
|
├── configuration
|
||||||
│ ├── apps
|
│ ├── apps
|
||||||
│ │ ├── ai.nix
|
│ │ ├── ai.nix
|
||||||
@@ -537,15 +554,18 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
│ │ └── theme.nix
|
│ │ └── theme.nix
|
||||||
│ ├── default.nix
|
│ ├── default.nix
|
||||||
│ ├── desktop
|
│ ├── desktop
|
||||||
|
│ │ ├── animated_wallpaper.nix
|
||||||
│ │ ├── hyprexpo.nix
|
│ │ ├── hyprexpo.nix
|
||||||
│ │ ├── hypridle.nix
|
│ │ ├── hypridle.nix
|
||||||
│ │ ├── hyprland.nix
|
│ │ ├── hyprland.nix
|
||||||
│ │ ├── hyprlock.nix
|
│ │ ├── hyprlock.nix
|
||||||
│ │ ├── hyprscrolling.nix
|
│ │ ├── hyprscrolling.nix
|
||||||
│ │ ├── hyprshell.nix
|
│ │ ├── hyprshell.nix
|
||||||
│ │ ├── walker.nix
|
│ │ ├── powermenu.nix
|
||||||
│ │ ├── rotating_wallpaper.nix
|
│ │ ├── rotating_wallpaper.nix
|
||||||
│ │ └── waybar.nix
|
│ │ ├── walker.nix
|
||||||
|
│ │ ├── waybar.nix
|
||||||
|
│ │ └── workspace_wallpaper.nix
|
||||||
│ └── dev
|
│ └── dev
|
||||||
│ ├── alacritty.nix
|
│ ├── alacritty.nix
|
||||||
│ ├── dev.nix
|
│ ├── dev.nix
|
||||||
@@ -559,10 +579,6 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
│ └── zsh.nix
|
│ └── zsh.nix
|
||||||
├── LICENSE
|
├── LICENSE
|
||||||
├── machines
|
├── machines
|
||||||
│ ├── machine1
|
|
||||||
│ │ ├── configuration.nix
|
|
||||||
│ │ ├── hardware-configuration.nix
|
|
||||||
│ │ └── home.nix
|
|
||||||
│ └── traveldroid
|
│ └── traveldroid
|
||||||
│ ├── configuration.nix
|
│ ├── configuration.nix
|
||||||
│ ├── hardware-configuration.nix
|
│ ├── hardware-configuration.nix
|
||||||
@@ -598,7 +614,6 @@ The tree below shows the full repository layout, with the standardized internal
|
|||||||
| Window Manager | [[https://hyprland.org/][Hyprland]] |
|
| Window Manager | [[https://hyprland.org/][Hyprland]] |
|
||||||
| Bar | [[https://github.com/Alexays/Waybar][Waybar]] |
|
| Bar | [[https://github.com/Alexays/Waybar][Waybar]] |
|
||||||
| Application Launcher | [[https://github.com/abenz1267/walker][Walker]] |
|
| Application Launcher | [[https://github.com/abenz1267/walker][Walker]] |
|
||||||
| Notification Daemon | [[https://github.com/dunst-project/dunst][Dunst]] |
|
|
||||||
| Terminal Emulator | [[https://alacritty.org/][Alacritty]] |
|
| Terminal Emulator | [[https://alacritty.org/][Alacritty]] |
|
||||||
| Shell | [[https://ohmyz.sh/][Zsh]] and [[https://starship.rs/][Starship]] |
|
| Shell | [[https://ohmyz.sh/][Zsh]] and [[https://starship.rs/][Starship]] |
|
||||||
| Text Editor | [[https://www.gnu.org/software/emacs/][Emacs]] |
|
| Text Editor | [[https://www.gnu.org/software/emacs/][Emacs]] |
|
||||||
@@ -1636,6 +1651,7 @@ This module will import all necessities.
|
|||||||
./desktop/hyprlock.nix
|
./desktop/hyprlock.nix
|
||||||
./desktop/hyprscrolling.nix
|
./desktop/hyprscrolling.nix
|
||||||
./desktop/hyprshell.nix
|
./desktop/hyprshell.nix
|
||||||
|
./desktop/ncsway.nix
|
||||||
./desktop/powermenu.nix
|
./desktop/powermenu.nix
|
||||||
#./desktop/animated_wallpaper.nix
|
#./desktop/animated_wallpaper.nix
|
||||||
#./desktop/rotating_wallpaper.nix
|
#./desktop/rotating_wallpaper.nix
|
||||||
@@ -1658,6 +1674,36 @@ This module will import all necessities.
|
|||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** NCSway
|
||||||
|
Takes care of notifications
|
||||||
|
#+begin_src nix :tangle home/desktop/ncsway.nix :noweb tangle :mkdirp yes
|
||||||
|
{ config, pkgs, lib, flakeRoot, ... }:
|
||||||
|
let
|
||||||
|
repoConf = flakeRoot + "/assets/conf/desktop/notifications/swaync/config.json";
|
||||||
|
repoStyle = flakeRoot + "/assets/conf/desktop/notifications/swaync/style.css";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
home.packages = [ pkgs.swaynotificationcenter ];
|
||||||
|
# Ensure config directory exists in ~/.config
|
||||||
|
xdg.configFile."swaync/config.json".source = repoConf;
|
||||||
|
xdg.configFile."swaync/style.css".source = repoStyle;
|
||||||
|
# Start swaync automatically (systemd user service)
|
||||||
|
systemd.user.services.swaync = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Sway Notification Center";
|
||||||
|
PartOf = [ "graphical-session.target" ];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.swaynotificationcenter}/bin/swaync";
|
||||||
|
Restart = "always";
|
||||||
|
};
|
||||||
|
Install = {
|
||||||
|
WantedBy = [ "graphical-session.target" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Powermenu
|
** Powermenu
|
||||||
Creates a script for a powermenu
|
Creates a script for a powermenu
|
||||||
#+begin_src nix :tangle home/desktop/powermenu.nix :noweb tangle :mkdirp yes
|
#+begin_src nix :tangle home/desktop/powermenu.nix :noweb tangle :mkdirp yes
|
||||||
|
|||||||
@@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
"ignore-gtk-theme": true,
|
||||||
|
"cssPriority": "user",
|
||||||
|
|
||||||
|
"positionX": "right",
|
||||||
|
"positionY": "top",
|
||||||
|
"layer": "overlay",
|
||||||
|
"layer-shell": true,
|
||||||
|
|
||||||
|
"control-center-positionX": "right",
|
||||||
|
"control-center-positionY": "top",
|
||||||
|
"control-center-layer": "overlay",
|
||||||
|
"control-center-exclusive-zone": true,
|
||||||
|
|
||||||
|
"control-center-width": 480,
|
||||||
|
"control-center-height": 0,
|
||||||
|
"fit-to-screen": true,
|
||||||
|
|
||||||
|
"control-center-margin-top": 14,
|
||||||
|
"control-center-margin-right": 14,
|
||||||
|
"control-center-margin-bottom": 14,
|
||||||
|
"control-center-margin-left": 14,
|
||||||
|
|
||||||
|
"notification-window-width": 420,
|
||||||
|
"notification-window-height": -1,
|
||||||
|
|
||||||
|
"timeout": 8,
|
||||||
|
"timeout-low": 4,
|
||||||
|
"timeout-critical": 0,
|
||||||
|
"transition-time": 150,
|
||||||
|
|
||||||
|
"notification-grouping": true,
|
||||||
|
"keyboard-shortcuts": true,
|
||||||
|
"hide-on-action": true,
|
||||||
|
"hide-on-clear": false,
|
||||||
|
"relative-timestamps": true,
|
||||||
|
|
||||||
|
"image-visibility": "when-available",
|
||||||
|
"notification-2fa-action": true,
|
||||||
|
|
||||||
|
"text-empty": "No notifications",
|
||||||
|
|
||||||
|
"widgets": [
|
||||||
|
"title",
|
||||||
|
"dnd",
|
||||||
|
"notifications"
|
||||||
|
],
|
||||||
|
|
||||||
|
"widget-config": {
|
||||||
|
"title": {
|
||||||
|
"text": "Notifications",
|
||||||
|
"clear-all-button": true,
|
||||||
|
"button-text": "Clear"
|
||||||
|
},
|
||||||
|
"dnd": {
|
||||||
|
"text": "Do Not Disturb"
|
||||||
|
},
|
||||||
|
"notifications": {
|
||||||
|
"vexpand": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,202 @@
|
|||||||
|
/* -------------------------------------------------
|
||||||
|
* SwayNotificationCenter (swaync) – Catppuccin Mocha-ish
|
||||||
|
* Put in: ~/.config/swaync/style.css
|
||||||
|
*
|
||||||
|
* Tip: GTK_DEBUG=interactive swaync (inspect CSS classes)
|
||||||
|
* ------------------------------------------------- */
|
||||||
|
|
||||||
|
/* --- Catppuccin Mocha core (commonly used values) --- */
|
||||||
|
@define-color crust #11111b;
|
||||||
|
@define-color mantle #181825;
|
||||||
|
@define-color base #1e1e2e;
|
||||||
|
|
||||||
|
@define-color surface0 #313244;
|
||||||
|
@define-color surface1 #45475a;
|
||||||
|
@define-color surface2 #585b70;
|
||||||
|
|
||||||
|
@define-color text #cdd6f4;
|
||||||
|
@define-color subtext1 #bac2de;
|
||||||
|
@define-color subtext0 #a6adc8;
|
||||||
|
|
||||||
|
@define-color blue #89b4fa;
|
||||||
|
@define-color green #a6e3a1;
|
||||||
|
@define-color yellow #f9e2af;
|
||||||
|
@define-color red #f38ba8;
|
||||||
|
|
||||||
|
/* If you want even more blur-through effect, increase transparency a bit */
|
||||||
|
@define-color panel_rgba rgba(30, 30, 46, 0.78);
|
||||||
|
@define-color card_rgba rgba(49, 50, 68, 0.78);
|
||||||
|
|
||||||
|
/* ---- Kill GTK list row selection glow (common tweak) ---- */
|
||||||
|
list, listview, row,
|
||||||
|
listview row, listview row:selected, listview row:hover,
|
||||||
|
listview row:focus, listview row:active {
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: none;
|
||||||
|
box-shadow: none;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---- Global defaults ---- */
|
||||||
|
* {
|
||||||
|
color: @text;
|
||||||
|
font-family: "Aporetic Sans Mono", "Iosevka Nerd Font", "Sans";
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Notification popup window */
|
||||||
|
window#notification-window {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Control center window */
|
||||||
|
.control-center {
|
||||||
|
background-color: @panel_rgba;
|
||||||
|
border-radius: 18px;
|
||||||
|
padding: 14px;
|
||||||
|
box-shadow: 0 10px 30px rgba(0,0,0,0.45);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Widgets */
|
||||||
|
.widget-title {
|
||||||
|
margin: 0 0 10px 0;
|
||||||
|
padding: 6px 10px;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(24, 24, 37, 0.70);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title > label {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title button {
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 6px 10px;
|
||||||
|
background-color: rgba(69, 71, 90, 0.55);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title button:hover {
|
||||||
|
background-color: rgba(88, 91, 112, 0.55);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd {
|
||||||
|
margin: 0 0 12px 0;
|
||||||
|
padding: 10px 12px;
|
||||||
|
border-radius: 16px;
|
||||||
|
background-color: rgba(24, 24, 37, 0.65);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd .switch {
|
||||||
|
border-radius: 999px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-notifications {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---- Notification cards (both popup + center list) ---- */
|
||||||
|
.notification-background {
|
||||||
|
margin: 10px 0;
|
||||||
|
padding: 0;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-background .notification {
|
||||||
|
background-color: @card_rgba;
|
||||||
|
border-radius: 16px;
|
||||||
|
padding: 12px 12px;
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: 0 8px 22px rgba(0,0,0,0.35);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Left colored accent bar using urgency */
|
||||||
|
.notification.critical {
|
||||||
|
border-left: 4px solid @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification.low {
|
||||||
|
border-left: 4px solid @blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification.normal {
|
||||||
|
border-left: 4px solid @green;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Header/meta */
|
||||||
|
.notification .app-name {
|
||||||
|
color: @subtext1;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .time {
|
||||||
|
color: @subtext0;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Text */
|
||||||
|
.notification .summary {
|
||||||
|
color: @text;
|
||||||
|
font-weight: 800;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .body {
|
||||||
|
color: @subtext1;
|
||||||
|
margin-top: 6px;
|
||||||
|
line-height: 1.25;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Icons */
|
||||||
|
.notification .image {
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .app-icon {
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Buttons */
|
||||||
|
.notification button {
|
||||||
|
border-radius: 12px;
|
||||||
|
background-color: rgba(69, 71, 90, 0.55);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: none;
|
||||||
|
padding: 6px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification button:hover {
|
||||||
|
background-color: rgba(88, 91, 112, 0.55);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .close-button {
|
||||||
|
border-radius: 12px;
|
||||||
|
background-color: rgba(243, 139, 168, 0.12);
|
||||||
|
border: 1px solid rgba(243, 139, 168, 0.18);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .close-button:hover {
|
||||||
|
background-color: rgba(243, 139, 168, 0.20);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Empty state */
|
||||||
|
.control-center .placeholder {
|
||||||
|
color: @subtext0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Optional: nicer separators if you use them in your build */
|
||||||
|
separator {
|
||||||
|
background: rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
@@ -10,6 +10,7 @@
|
|||||||
./desktop/hyprlock.nix
|
./desktop/hyprlock.nix
|
||||||
./desktop/hyprscrolling.nix
|
./desktop/hyprscrolling.nix
|
||||||
./desktop/hyprshell.nix
|
./desktop/hyprshell.nix
|
||||||
|
./desktop/ncsway.nix
|
||||||
./desktop/powermenu.nix
|
./desktop/powermenu.nix
|
||||||
#./desktop/animated_wallpaper.nix
|
#./desktop/animated_wallpaper.nix
|
||||||
#./desktop/rotating_wallpaper.nix
|
#./desktop/rotating_wallpaper.nix
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
{ config, pkgs, lib, flakeRoot, ... }:
|
||||||
|
let
|
||||||
|
repoConf = flakeRoot + "/assets/conf/desktop/notifications/swaync/config.json";
|
||||||
|
repoStyle = flakeRoot + "/assets/conf/desktop/notifications/swaync/style.css";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
home.packages = [ pkgs.swaynotificationcenter ];
|
||||||
|
# Ensure config directory exists in ~/.config
|
||||||
|
xdg.configFile."swaync/config.json".source = repoConf;
|
||||||
|
xdg.configFile."swaync/style.css".source = repoStyle;
|
||||||
|
# Start swaync automatically (systemd user service)
|
||||||
|
systemd.user.services.swaync = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Sway Notification Center";
|
||||||
|
PartOf = [ "graphical-session.target" ];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.swaynotificationcenter}/bin/swaync";
|
||||||
|
Restart = "always";
|
||||||
|
};
|
||||||
|
Install = {
|
||||||
|
WantedBy = [ "graphical-session.target" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,202 @@
|
|||||||
|
/* -------------------------------------------------
|
||||||
|
* SwayNotificationCenter (swaync) – Catppuccin Mocha-ish
|
||||||
|
* Put in: ~/.config/swaync/style.css
|
||||||
|
*
|
||||||
|
* Tip: GTK_DEBUG=interactive swaync (inspect CSS classes)
|
||||||
|
* ------------------------------------------------- */
|
||||||
|
|
||||||
|
/* --- Catppuccin Mocha core (commonly used values) --- */
|
||||||
|
@define-color crust #11111b;
|
||||||
|
@define-color mantle #181825;
|
||||||
|
@define-color base #1e1e2e;
|
||||||
|
|
||||||
|
@define-color surface0 #313244;
|
||||||
|
@define-color surface1 #45475a;
|
||||||
|
@define-color surface2 #585b70;
|
||||||
|
|
||||||
|
@define-color text #cdd6f4;
|
||||||
|
@define-color subtext1 #bac2de;
|
||||||
|
@define-color subtext0 #a6adc8;
|
||||||
|
|
||||||
|
@define-color blue #89b4fa;
|
||||||
|
@define-color green #a6e3a1;
|
||||||
|
@define-color yellow #f9e2af;
|
||||||
|
@define-color red #f38ba8;
|
||||||
|
|
||||||
|
/* If you want even more blur-through effect, increase transparency a bit */
|
||||||
|
@define-color panel_rgba rgba(30, 30, 46, 0.78);
|
||||||
|
@define-color card_rgba rgba(49, 50, 68, 0.78);
|
||||||
|
|
||||||
|
/* ---- Kill GTK list row selection glow (common tweak) ---- */
|
||||||
|
list, listview, row,
|
||||||
|
listview row, listview row:selected, listview row:hover,
|
||||||
|
listview row:focus, listview row:active {
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: none;
|
||||||
|
box-shadow: none;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---- Global defaults ---- */
|
||||||
|
* {
|
||||||
|
color: @text;
|
||||||
|
font-family: "Aporetic Sans Mono", "Iosevka Nerd Font", "Sans";
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Notification popup window */
|
||||||
|
window#notification-window {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Control center window */
|
||||||
|
.control-center {
|
||||||
|
background-color: @panel_rgba;
|
||||||
|
border-radius: 18px;
|
||||||
|
padding: 14px;
|
||||||
|
box-shadow: 0 10px 30px rgba(0,0,0,0.45);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Widgets */
|
||||||
|
.widget-title {
|
||||||
|
margin: 0 0 10px 0;
|
||||||
|
padding: 6px 10px;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(24, 24, 37, 0.70);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title > label {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title button {
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 6px 10px;
|
||||||
|
background-color: rgba(69, 71, 90, 0.55);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title button:hover {
|
||||||
|
background-color: rgba(88, 91, 112, 0.55);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd {
|
||||||
|
margin: 0 0 12px 0;
|
||||||
|
padding: 10px 12px;
|
||||||
|
border-radius: 16px;
|
||||||
|
background-color: rgba(24, 24, 37, 0.65);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd .switch {
|
||||||
|
border-radius: 999px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-notifications {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---- Notification cards (both popup + center list) ---- */
|
||||||
|
.notification-background {
|
||||||
|
margin: 10px 0;
|
||||||
|
padding: 0;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-background .notification {
|
||||||
|
background-color: @card_rgba;
|
||||||
|
border-radius: 16px;
|
||||||
|
padding: 12px 12px;
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: 0 8px 22px rgba(0,0,0,0.35);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Left colored accent bar using urgency */
|
||||||
|
.notification.critical {
|
||||||
|
border-left: 4px solid @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification.low {
|
||||||
|
border-left: 4px solid @blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification.normal {
|
||||||
|
border-left: 4px solid @green;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Header/meta */
|
||||||
|
.notification .app-name {
|
||||||
|
color: @subtext1;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .time {
|
||||||
|
color: @subtext0;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Text */
|
||||||
|
.notification .summary {
|
||||||
|
color: @text;
|
||||||
|
font-weight: 800;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .body {
|
||||||
|
color: @subtext1;
|
||||||
|
margin-top: 6px;
|
||||||
|
line-height: 1.25;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Icons */
|
||||||
|
.notification .image {
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .app-icon {
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Buttons */
|
||||||
|
.notification button {
|
||||||
|
border-radius: 12px;
|
||||||
|
background-color: rgba(69, 71, 90, 0.55);
|
||||||
|
border: 1px solid rgba(186, 194, 222, 0.10);
|
||||||
|
box-shadow: none;
|
||||||
|
padding: 6px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification button:hover {
|
||||||
|
background-color: rgba(88, 91, 112, 0.55);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .close-button {
|
||||||
|
border-radius: 12px;
|
||||||
|
background-color: rgba(243, 139, 168, 0.12);
|
||||||
|
border: 1px solid rgba(243, 139, 168, 0.18);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification .close-button:hover {
|
||||||
|
background-color: rgba(243, 139, 168, 0.20);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Empty state */
|
||||||
|
.control-center .placeholder {
|
||||||
|
color: @subtext0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Optional: nicer separators if you use them in your build */
|
||||||
|
separator {
|
||||||
|
background: rgba(186, 194, 222, 0.08);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user