feat: Ghost Shell v2 — AGS v3 statusbar + violet-chaton v2 palette
- AGS v3.1.0 (Astal/GTK3) Ghost Shell avec ghost mode (heartbeat + hover reveal) - Modules : clock, battery, volume (interactif), network, MPRIS, CPU/RAM, systray - Brain Power panel (Super + B) — lecture live focus/todos/session - tetardtek_ prompt avec curseur clignotant - Palette violet-chaton v2 documentée (Mitsuri Kanroji gradient magenta → green) - Autostart COSMIC via .desktop - Archive AGS v1 conservée pour référence
This commit is contained in:
133
ags-v3/styles/_bar.scss
Normal file
133
ags-v3/styles/_bar.scss
Normal file
@@ -0,0 +1,133 @@
|
||||
@use "palette" as *;
|
||||
|
||||
// Layer 1 — Ghost bar (hover reveal)
|
||||
// GTK CSS alpha() must be unquoted strings to pass through SCSS compiler
|
||||
|
||||
window.Bar {
|
||||
background: transparent;
|
||||
|
||||
> centerbox {
|
||||
background: rgba(38, 21, 55, 0.88); // $base @ 0.88
|
||||
border-radius: $radius;
|
||||
border: 3px solid rgba(255, 77, 166, 0.60); // $magenta @ 0.60
|
||||
margin: 6px 8px;
|
||||
padding: 0 8px;
|
||||
min-height: 38px;
|
||||
}
|
||||
|
||||
.modules-left,
|
||||
.modules-center,
|
||||
.modules-right {
|
||||
padding: 0 4px;
|
||||
}
|
||||
|
||||
.module {
|
||||
padding: 0 8px;
|
||||
color: $text;
|
||||
|
||||
&:hover {
|
||||
color: $lilac;
|
||||
}
|
||||
}
|
||||
|
||||
.separator {
|
||||
color: rgba(240, 234, 248, 0.12); // $text @ 0.12
|
||||
font-size: 11px;
|
||||
padding: 0 4px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
// ── clock ──
|
||||
.clock {
|
||||
color: $magenta;
|
||||
font-weight: 900;
|
||||
font-size: 14px;
|
||||
letter-spacing: 0.04em;
|
||||
padding: 0 10px;
|
||||
|
||||
&:hover { color: $lilac; }
|
||||
}
|
||||
|
||||
.date {
|
||||
color: $lavande;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
padding: 0 10px 0 2px;
|
||||
}
|
||||
|
||||
// ── system ──
|
||||
.cpu { color: $lavande; }
|
||||
.ram { color: $magenta; }
|
||||
.temp {
|
||||
color: rgba(164, 180, 255, 0.60); // $lavande @ 0.60
|
||||
font-size: 11px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.cpu, .ram, .temp {
|
||||
&.warning { color: $champagne; }
|
||||
&.critical { color: $danger; }
|
||||
}
|
||||
|
||||
// ── network ──
|
||||
.network {
|
||||
color: $lavande;
|
||||
font-size: 12px;
|
||||
&.disconnected { color: $danger; }
|
||||
}
|
||||
|
||||
// ── volume ──
|
||||
.volume {
|
||||
color: $magenta;
|
||||
&.muted { color: rgba(255, 77, 166, 0.30); }
|
||||
}
|
||||
|
||||
// ── battery ──
|
||||
.battery {
|
||||
color: $magenta;
|
||||
&.charging { color: $mitsuri; }
|
||||
&.low { color: $danger; }
|
||||
&.warning { color: $champagne; }
|
||||
}
|
||||
|
||||
// ── media ──
|
||||
.media {
|
||||
color: $lilac;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
padding: 0 10px;
|
||||
|
||||
&.paused {
|
||||
color: rgba(201, 160, 255, 0.50); // $lilac @ 0.50
|
||||
font-style: italic;
|
||||
}
|
||||
}
|
||||
|
||||
// ── systray ──
|
||||
.systray {
|
||||
padding: 0 6px;
|
||||
}
|
||||
|
||||
// ── workspaces ──
|
||||
.workspaces button {
|
||||
background: transparent;
|
||||
color: $muted;
|
||||
min-width: 22px;
|
||||
min-height: 22px;
|
||||
border-radius: $radius-sm;
|
||||
margin: 2px;
|
||||
padding: 0;
|
||||
|
||||
&.active {
|
||||
background: rgba(255, 77, 166, 0.20);
|
||||
color: $magenta;
|
||||
border: 1px solid rgba(255, 77, 166, 0.40);
|
||||
}
|
||||
|
||||
&.occupied { color: $lilac; }
|
||||
&:hover {
|
||||
background: rgba(201, 160, 255, 0.12);
|
||||
color: $lilac;
|
||||
}
|
||||
}
|
||||
}
|
||||
21
ags-v3/styles/_heartbeat.scss
Normal file
21
ags-v3/styles/_heartbeat.scss
Normal file
@@ -0,0 +1,21 @@
|
||||
@use "palette" as *;
|
||||
|
||||
// Layer 0 — heartbeat line
|
||||
// Fin trait magenta en haut de l'écran — "le système est vivant"
|
||||
|
||||
window.Heartbeat {
|
||||
background: transparent;
|
||||
|
||||
> box {
|
||||
// gradient uses rgba() which SCSS understands natively
|
||||
background: linear-gradient(
|
||||
to right,
|
||||
rgba(255, 77, 166, 0.0),
|
||||
rgba(255, 77, 166, 0.6),
|
||||
rgba(201, 160, 255, 0.8),
|
||||
rgba(255, 77, 166, 0.6),
|
||||
rgba(255, 77, 166, 0.0)
|
||||
);
|
||||
min-height: 2px;
|
||||
}
|
||||
}
|
||||
35
ags-v3/styles/_palette.scss
Normal file
35
ags-v3/styles/_palette.scss
Normal file
@@ -0,0 +1,35 @@
|
||||
// ── violet-chaton v2 ──────────────────────────────────────────────────────
|
||||
// Mitsuri Kanroji inspired — gradient magenta → green
|
||||
// Ghost Shell edition
|
||||
|
||||
// backgrounds
|
||||
$crust: #1a0e27;
|
||||
$base: #261537;
|
||||
$mantle: #341c4a;
|
||||
$surface0: #3d2454;
|
||||
$surface1: #493161;
|
||||
$surface2: #5a3875;
|
||||
|
||||
// accents
|
||||
$magenta: #ff4da6;
|
||||
$lilac: #c9a0ff;
|
||||
$mitsuri: #9adba8;
|
||||
$lavande: #a4b4ff;
|
||||
$champagne: #e8c87a;
|
||||
$danger: #f25c7a;
|
||||
|
||||
// text
|
||||
$text: #f0eaf8;
|
||||
$subtext1: #c4b8d4;
|
||||
$subtext0: #9a8fad;
|
||||
$muted: #716686;
|
||||
|
||||
// shared
|
||||
$font: "Maple Mono NF", "MapleMono Nerd Font", monospace;
|
||||
$radius: 14px;
|
||||
$radius-sm: 8px;
|
||||
$transition: 300ms ease-out;
|
||||
|
||||
// Note: alpha() is a GTK CSS function, not SCSS.
|
||||
// Use it raw in GTK CSS values, not in SCSS variables.
|
||||
// For SCSS variables that need transparency, use rgba().
|
||||
Reference in New Issue
Block a user