add full proj

This commit is contained in:
2026-05-31 09:28:44 +02:00
commit f8a4536a02
26 changed files with 1307 additions and 0 deletions

38
config/Icons.qml Normal file
View File

@@ -0,0 +1,38 @@
pragma Singleton
import Quickshell
// Nerd Font glyphs referenced by codepoint so the source stays ASCII and the
// exact glyph is unambiguous (independent of editor/font rendering).
// Codepoints are from the Font Awesome (FA) range bundled in Nerd Fonts.
Singleton {
readonly property string cpu: String.fromCharCode(0xf2db) // microchip
readonly property string memory: String.fromCodePoint(0xf035b) // md-memory (FA5 0xf538 is absent from the bundled Nerd Fonts)
readonly property string thermo: String.fromCharCode(0xf2c9) // thermometer-half
readonly property string disk: String.fromCharCode(0xf0a0) // hdd-o
readonly property string wifi: String.fromCharCode(0xf1eb) // wifi
readonly property string ethernet: String.fromCharCode(0xf6ff) // network-wired
readonly property string down: String.fromCharCode(0xf063) // arrow-down
readonly property string up: String.fromCharCode(0xf062) // arrow-up
readonly property string clock: String.fromCharCode(0xf017) // clock-o
readonly property string volHigh: String.fromCharCode(0xf028) // volume-up
readonly property string volLow: String.fromCharCode(0xf027) // volume-down
readonly property string volMute: String.fromCharCode(0xf026) // volume-off
readonly property string bolt: String.fromCharCode(0xf0e7) // bolt (charging)
readonly property string plug: String.fromCharCode(0xf1e6) // plug (AC)
// battery glyphs full -> empty (FA battery-4 .. battery-0)
readonly property var batterySteps: [
String.fromCharCode(0xf244), // empty
String.fromCharCode(0xf243), // quarter
String.fromCharCode(0xf242), // half
String.fromCharCode(0xf241), // three-quarters
String.fromCharCode(0xf240) // full
]
function battery(pct) {
var i = Math.round((pct / 100) * 4);
if (i < 0) i = 0; if (i > 4) i = 4;
return batterySteps[i];
}
}

49
config/Theme.qml Normal file
View File

@@ -0,0 +1,49 @@
pragma Singleton
import Quickshell
import QtQuick
Singleton {
// --- geometry ---
readonly property int barHeight: 34
readonly property int radius: 8
readonly property int spacing: 6
readonly property int padding: 10
readonly property int gap: 4
// --- palette (Catppuccin Mocha, darkened toward OLED black) ---
readonly property color base: "#0d0d12"
readonly property color mantle: "#08080b"
readonly property color surface0: "#1c1c28"
readonly property color surface1: "#2a2a3a"
readonly property color overlay: "#52526a"
readonly property color text: "#cdd6f4"
readonly property color subtext: "#a6adc8"
readonly property color rosewater: "#f5e0dc"
readonly property color red: "#f38ba8"
readonly property color peach: "#fab387"
readonly property color yellow: "#f9e2af"
readonly property color green: "#a6e3a1"
readonly property color teal: "#94e2d5"
readonly property color sky: "#89dceb"
readonly property color blue: "#89b4fa"
readonly property color mauve: "#cba6f7"
readonly property color lavender: "#b4befe"
// bar background, slightly translucent
readonly property color barColor: Qt.rgba(0.051, 0.051, 0.071, 0.94)
// --- typography ---
readonly property string font: "Inter, sans-serif"
readonly property string monoFont: "JetBrainsMono Nerd Font, monospace"
readonly property int fontSize: 15
// map a 0..100 load value to a colour (green -> yellow -> red)
function loadColor(pct) {
if (pct >= 85) return red;
if (pct >= 60) return peach;
if (pct >= 35) return yellow;
return green;
}
}

2
config/qmldir Normal file
View File

@@ -0,0 +1,2 @@
singleton Theme 1.0 Theme.qml
singleton Icons 1.0 Icons.qml