basilisk but actually + cleanup

This commit is contained in:
2026-01-12 19:42:58 -07:00
parent ff69bb8284
commit c0699f971d
26 changed files with 2440 additions and 3 deletions

View File

@@ -0,0 +1,7 @@
.module#workspaces button {
transition: 0.1s padding, 0.1s padding;
}
#audio #pulseaudio.preview {
transition: 0.2s color;
}

View File

@@ -0,0 +1,125 @@
{
"modules-left": [
"custom/power",
"custom/rofication",
"keyboard-state",
"niri/workspaces"
],
"modules-center": [
"niri/window"
],
"modules-right": [
"group/audio",
"tray",
"bluetooth",
"clock#hour",
"clock#minutes"
],
"layer": "top",
"position": "left",
"width": 38,
"spacing": 0,
"custom/power": {
"format": "",
"on-click": "pkill rofi || rofi-power",
"return-type": "json"
},
"custom/rofication": {
"format": "{icon}",
"format-icons": {
"none": "",
"some": "",
"critical": "",
"error": ""
},
"interval": 2,
"on-click": "pkill rofication-gui || rofication-gui",
"exec": "rofication-status",
"return-type": "json"
},
"keyboard-state": {
"numlock": true,
"capslock": true,
"format": {
"numlock": "N{icon}",
"capslock": "C{icon}"
},
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"niri/workspaces": {},
"niri/window": {
"format": "{}",
"rotate": 90
},
"pulseaudio#main": {
"format": "{icon}",
"format-bluetooth": "{icon}\n",
"format-icons": {
"alsa_output.pci-0000_00_1f.3.analog-stereo": "",
"alsa_output.pci-0000_00_1f.3.analog-stereo-muted": "",
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"phone-muted": "",
"default": [
"",
"",
""
]
},
"format-muted": "",
"scroll-step": 2,
"on-click": "pavucontrol"
},
"pulseaudio#preview": {
"format": "{volume}%"
},
"pulseaudio/slider": {
"min": 0,
"max": 100,
"orientation": "vertical"
},
"group/audio": {
"orientation": "vertical",
"drawer": {
"transition-left-to-right": false,
"transition-duration": 200
},
"modules": [
"pulseaudio#main",
"pulseaudio#preview",
"pulseaudio/slider"
]
},
"tray": {
"icon-size": 20,
"show-passive-items": true,
"spacing": 3
},
"bluetooth": {
"format": "",
"format-connected": "",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
},
"clock#hour": {
"format": "{:%I}",
"tooltip": true,
"tooltip-format": "{:%Y-%m-%d}",
"max-length": 5,
"interval": 60
},
"clock#minutes": {
"format": "{:%M}",
"tooltip": true,
"tooltip-format": "{:%Y-%m-%d}",
"max-length": 5,
"interval": 60
}
}

View File

@@ -0,0 +1,192 @@
import * as FS from 'fs/promises'
import * as Path from 'path'
import * as SASS from 'sass'
let bar = {}
// const Section = {
// START: 'modules-left',
// MIDDLE: 'modules-center',
// END: 'modules-right'
// }
const Section = {
START: 'modules-left',
MIDDLE: 'modules-center',
END: 'modules-right'
}
function main() {
bar[Section.START] = []
bar[Section.MIDDLE] = []
bar[Section.END] = []
// bar.mode = 'overlay'
// bar.exclusive = true
// bar.position = 'top'
// bar.height = 28
bar.layer = 'top'
bar.position = 'left'
// bar.width = 28
bar.width = 38
bar.spacing = 0
module('custom/power', {
format: "\ue8ac",
'on-click': "pkill rofi || rofi-power",
// 'exec': "~/.config/waybar/watch-power-menu-state",
'return-type': "json"
}, Section.START)
module('custom/rofication', {
format: "{icon}",
'format-icons': {
"none": "\ue7f4",
"some": "\uf4fe",
"critical": "\uf4fe",
"error": "\ue004"
},
'interval': 2,
'on-click': "pkill rofication-gui || rofication-gui",
'exec': "rofication-status",
'return-type': "json"
}, Section.START)
module('keyboard-state', {
"numlock": true,
"capslock": true,
"format": {
"numlock": "N{icon}",
"capslock": "C{icon}"
},
"format-icons": {
"locked": "",
"unlocked": ""
}
}, Section.START)
module('niri/workspaces', {
// format: ""
}, Section.START)
module('niri/window', {
format: "{}",
rotate: 90
}, Section.MIDDLE)
// module('temperature', {
// format: "{temperatureC}°C"
// }, Section.END)
group('group/audio', {
orientation: 'vertical',
drawer: {
'transition-left-to-right': false,
'transition-duration': 200
}
}, [
component('pulseaudio#main', {
format: "{icon}",
// 'format-bluetooth': "{icon}\n\ue1a8",
"format-icons": {
"alsa_output.pci-0000_00_1f.3.analog-stereo": "\ue050",
"alsa_output.pci-0000_00_1f.3.analog-stereo-muted": "\ue04f",
"headphone": "\uf01f",
"hands-free": "\uf324",
"headset": "\ue311",
"phone": "\ue9cd",
"phone-muted": "\ue9cc",
"default": ["\ue04e", "\ue04d", "\ue050" ]
},
"format-muted": "\ue04f",
// "format-icons": {
// "mute": "\ue04e",
// "quiet": "\ue04d",
// "medium": "\ue050",
// "loud": "\ue050"
// },
// states: [ "mute", "quiet", "medium", "loud" ],
'scroll-step': 2,
'on-click': 'pavucontrol'
}),
component('pulseaudio#preview', {
format: "{volume}%",
// rotate: 90
}),
component('pulseaudio/slider', {
"min": 0,
"max": 100,
"orientation": "vertical"
})
], Section.END)
module('tray', {
'icon-size': 20,
'show-passive-items': true,
'spacing': 3
}, Section.END)
module('bluetooth', {
"format": "\ue1a7",
"format-connected": "\ue1a8",
// "format-connected-battery": "\ue1a8",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
}, Section.END)
// module('upower', {
// "icon-size": 20,
// "hide-if-empty": true,
// "tooltip": true,
// "tooltip-spacing": 20,
// // 'show-icon': false,
// }, Section.END)
const clockCommon = {
tooltip: true,
"tooltip-format": "{:%Y-%m-%d}",
"max-length": 5,
"interval": 60,
}
module('clock#hour', {
"format": "{:%I}",
...clockCommon
}, Section.END)
module('clock#minutes', {
"format": "{:%M}",
...clockCommon
}, Section.END)
// module('power', {})
}
function module(name, config, position) {
component(name, config)
bar[position].push(name)
}
function component(name, config) {
bar[name] = config
return name
}
function group(name, options, components, position) {
let d = {
...options,
modules: components
}
module(name, d, position)
}
main()
await FS.writeFile(
Path.join(import.meta.dirname, 'config.jsonc'),
JSON.stringify(bar, null, 4)
)
// await FS.writeFile(
// Path.join(import.meta.dirname, 'style.css'),
// await SASS.compileAsync('style.scss').then(r => r.css)
// )

490
home/.basilisk/waybar/package-lock.json generated Normal file
View File

@@ -0,0 +1,490 @@
{
"name": "waybar",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"dependencies": {
"sass": "^1.94.2"
}
},
"node_modules/@parcel/watcher": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz",
"integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==",
"hasInstallScript": true,
"license": "MIT",
"optional": true,
"dependencies": {
"detect-libc": "^1.0.3",
"is-glob": "^4.0.3",
"micromatch": "^4.0.5",
"node-addon-api": "^7.0.0"
},
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
},
"optionalDependencies": {
"@parcel/watcher-android-arm64": "2.5.1",
"@parcel/watcher-darwin-arm64": "2.5.1",
"@parcel/watcher-darwin-x64": "2.5.1",
"@parcel/watcher-freebsd-x64": "2.5.1",
"@parcel/watcher-linux-arm-glibc": "2.5.1",
"@parcel/watcher-linux-arm-musl": "2.5.1",
"@parcel/watcher-linux-arm64-glibc": "2.5.1",
"@parcel/watcher-linux-arm64-musl": "2.5.1",
"@parcel/watcher-linux-x64-glibc": "2.5.1",
"@parcel/watcher-linux-x64-musl": "2.5.1",
"@parcel/watcher-win32-arm64": "2.5.1",
"@parcel/watcher-win32-ia32": "2.5.1",
"@parcel/watcher-win32-x64": "2.5.1"
}
},
"node_modules/@parcel/watcher-android-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz",
"integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-darwin-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz",
"integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-darwin-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz",
"integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-freebsd-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz",
"integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-arm-glibc": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz",
"integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==",
"cpu": [
"arm"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-arm-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz",
"integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==",
"cpu": [
"arm"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-arm64-glibc": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz",
"integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-arm64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz",
"integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-x64-glibc": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz",
"integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-linux-x64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz",
"integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-win32-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz",
"integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-win32-ia32": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz",
"integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/@parcel/watcher-win32-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz",
"integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/braces": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"license": "MIT",
"optional": true,
"dependencies": {
"fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/chokidar": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
"integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
"license": "MIT",
"dependencies": {
"readdirp": "^4.0.1"
},
"engines": {
"node": ">= 14.16.0"
},
"funding": {
"url": "https://paulmillr.com/funding/"
}
},
"node_modules/detect-libc": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
"integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
"license": "Apache-2.0",
"optional": true,
"bin": {
"detect-libc": "bin/detect-libc.js"
},
"engines": {
"node": ">=0.10"
}
},
"node_modules/fill-range": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"license": "MIT",
"optional": true,
"dependencies": {
"to-regex-range": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/immutable": {
"version": "5.1.4",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.4.tgz",
"integrity": "sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==",
"license": "MIT"
},
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"license": "MIT",
"optional": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"license": "MIT",
"optional": true,
"dependencies": {
"is-extglob": "^2.1.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"license": "MIT",
"optional": true,
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/micromatch": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
"license": "MIT",
"optional": true,
"dependencies": {
"braces": "^3.0.3",
"picomatch": "^2.3.1"
},
"engines": {
"node": ">=8.6"
}
},
"node_modules/node-addon-api": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
"integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
"license": "MIT",
"optional": true
},
"node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"license": "MIT",
"optional": true,
"engines": {
"node": ">=8.6"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/readdirp": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
"integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
"license": "MIT",
"engines": {
"node": ">= 14.18.0"
},
"funding": {
"type": "individual",
"url": "https://paulmillr.com/funding/"
}
},
"node_modules/sass": {
"version": "1.94.2",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.94.2.tgz",
"integrity": "sha512-N+7WK20/wOr7CzA2snJcUSSNTCzeCGUTFY3OgeQP3mZ1aj9NMQ0mSTXwlrnd89j33zzQJGqIN52GIOmYrfq46A==",
"license": "MIT",
"dependencies": {
"chokidar": "^4.0.0",
"immutable": "^5.0.2",
"source-map-js": ">=0.6.2 <2.0.0"
},
"bin": {
"sass": "sass.js"
},
"engines": {
"node": ">=14.0.0"
},
"optionalDependencies": {
"@parcel/watcher": "^2.4.1"
}
},
"node_modules/source-map-js": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
"license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"license": "MIT",
"optional": true,
"dependencies": {
"is-number": "^7.0.0"
},
"engines": {
"node": ">=8.0"
}
}
}
}

View File

@@ -0,0 +1,5 @@
{
"dependencies": {
"sass": "^1.94.2"
}
}

View File

@@ -0,0 +1,200 @@
/*START SHCHEMES BLOCK : shchemes create_theme gtk3*/
@define-color a #ff5533;
@define-color iiv #000000;
@define-color iv #111111;
@define-color v #00bbbb;
@define-color vi #aaaaaa;
@define-color vii #ffffff;
/*END SHCHEMES BLOCK*/
@define-color border-sides alpha(#fff, 0.1);
@define-color border-highlight alpha(#fff, 0.2);
@define-color border-bottom alpha(#666, 0.1);
* {
all: initial;
font-family: "Noto Sans Mono", "Material Symbols Outlined", sans-serif;
font-size: 12px;
border-radius: 0;
}
window#waybar {
background: transparent;
color: #ffffff;
/* transition-property: background-color;
transition-duration: 0.5s;*/
padding: 4px;
/* padding: 6px; */
}
/*window#waybar.hidden {
opacity: 0.2;
}*/
tooltip {
background-color: alpha(@iiv, 0.9);
border: 1px solid @border-sides;
}
#waybar > box {
padding: 4px;
background-color: alpha(@iiv, 0.9);
}
.modules-right .module, .modules-left .module {
margin: 3px 0;
padding: 3px;
border: 1px solid @border-sides;
border-top: 1px solid @border-highlight;
border-bottom: 1px solid @border-bottom;
background: @iv;
color: @vii;
}
.modules-right > :last-child .module, .modules-left > :last-child .module {
margin-bottom: 0;
}
.modules-right > :first-child .module, .modules-left > :first-child .module {
margin-top: 0;
}
#pulseaudio.main, #bluetooth, #custom-power, #custom-rofication {
font-size: 20px;
font-weight: 300;
transition: 0.2s color;
padding-top: 4px;
padding-bottom: 2px;
}
#pulseaudio.main:hover, #bluetooth:hover, #custom-power:hover, #custom-rofication:hover {
color: @a;
}
#bluetooth {
padding: 3px 0;
}
#audio #pulseaudio.preview {
border: 0;
padding: 0;
margin: 0;
background: @iiv;
color: transparent;
transition: 0.2s color;
background: transparent;
}
#audio:hover #pulseaudio.main {
border-top: 0;
margin-top: 0;
}
#audio:hover #pulseaudio.preview {
color: @vi;
}
#pulseaudio-slider {
padding: 0;
margin: 0;
border: 1px solid @border-sides;
border-top: 1px solid @border-highlight;
border-bottom: 0;
}
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
box-shadow: none;
min-width: 28px;
}
#pulseaudio-slider slider {
border-top: 1px solid @border-highlight;
}
#pulseaudio-slider trough {
min-height: 100px;
background: @iiv;
}
#pulseaudio-slider highlight {
min-width: 10px;
background: @iv;
}
.module button:hover {
/* background: #ffffff; */
transition-property: background-color;
transition-duration: 0.5s;
}
.module#workspaces {
padding: 0;
background: @iiv;
font-size: 4px;
}
.module#workspaces button {
/* transition: 0.15s padding; */
border: 1px solid @iiv;
border-right: 0;
border-left: 0;
padding-bottom: 3px;
}
.module#workspaces button label {
color: @vii;
}
.module#workspaces button:first-child,
.module#workspaces button.focused ~ button, .module#workspaces button:hover ~ button:not(.focused) {
padding-top: 3px;
}
.module#workspaces button:hover, .module#workspaces button.focused ~ button:hover {
background: inherit;
border-color: @iv;
padding: 16px 0;
}
.module#workspaces button.empty label {
color: @vi;
}
.module#workspaces button.focused {
padding: 16px 0;
background: @iv;
border-top: 1px solid @border-sides;
border-bottom: 1px solid @border-bottom;
}
.module#workspaces button.focused label {
color: @v;
}
.module#workspaces button:first-child {
border-top: none;
}
.module#workspaces button:last-child {
border-bottom: none;
}
#clock {
font-size: 18px;
}
.module#clock.hour {
color: @v;
padding-bottom: 0;
margin-bottom: 0;
border-bottom: 0;
font-weight: 600;
}
.module#clock.minutes {
background: @iiv;
padding-top: 0;
margin-top: 0;
border-top: 0;
font-weight: 300;
}
/*START SHCHEMES BLOCK : [ ! "$(xrescat basilisk.animations.panel)" == "0" ] && cat animations.css*/
.module#workspaces button {
transition: 0.1s padding, 0.1s padding;
}
#audio #pulseaudio.preview {
transition: 0.2s color;
}
/*END SHCHEMES BLOCK*/

View File

@@ -0,0 +1,225 @@
$iiv: #000;
$iv: #111;
$v: #0bb;
$vi: #aaa;
$vii: #fff;
$a: #f53;
* {
font-family: 'Noto Sans Mono', 'Material Symbols Outlined', sans-serif;
font-size: 12px;
border-radius: 0;
}
window#waybar {
// background: linear-gradient(to left, transparentize(#000, 0.6), transparentize(#000, 0));
background: #0000;
color: #ffffff;
transition-property: background-color;
transition-duration: .5s;
padding: 4px;
// padding-right: 0;
// padding: 2px;
/* padding: 6px; */
}
window#waybar.hidden {
opacity: 0.2;
}
// #waybar > * {
// }
button {
padding: 0;
}
.box {
}
#waybar > box {
// margin: 4px;
// margin-right: 0;
// background: linear-gradient(to right, transparentize(#000, 0), transparentize(#000, 1));
padding: 4px;
// border-right: 1px solid $iv;
background-color: transparentize($iiv, 0.1);
}
.modules-right, .modules-left {
// background: linear-gradient(to bottom, lighten($iv, 10%), darken($iv, 10%));
// background:
// border-top-color: transparentize(lighten($iiv, 15%), 0.6);
// border-bottom-color: transparentize(darken($iiv, 15%), 0.5);
.module {
margin: 3px 0;
padding: 3px;
// padding: 0;
border: 1px solid transparentize(#fff, 0.9);
border-top: 1px solid transparentize(#fff, 0.8);
border-bottom: 1px solid transparentize(#666, 0.9);
// background-color: transparentize($iiv, 0.2);
background: $iv;
color: $vii;
}
& > :last-child .module {
margin-bottom: 0;
// padding-bottom: 6px;
}
& > :first-child .module {
margin-top: 0;
// padding-top: 6px;
}
}
#window {
// padding: 0;
}
#pulseaudio.main, #bluetooth, #custom-power, #custom-rofication {
font-size: 20px;
font-weight: 300;
}
#custom-power, #custom-rofication {
padding-top: 4px;
padding-bottom: 2px; // Cheat squareness
}
#audio {
#pulseaudio.preview {
border: 0;
padding: 0;
margin: 0;
background: $iiv;
color: #0000;
transition: .2s color;
}
&:hover {
#pulseaudio.main {
border-top: 0;
margin-top: 0;
}
#pulseaudio.preview {
background: transparent;
color: $vi;
}
}
}
#pulseaudio-slider {
padding: 0;
margin: 0;
border: 0;
}
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#pulseaudio-slider trough {
min-height: 100px;
min-width: 28px;
background: $iiv;
border: 1px solid transparentize(#fff, 0.9);
border-top: 1px solid transparentize(#fff, 0.8);
border-bottom: 0;
}
#pulseaudio-slider highlight {
min-width: 10px;
background: $iv;
border: 1px solid transparentize(#fff, 0.9);
border-top: 1px solid transparentize(#fff, 0.8);
border-bottom: 0
}
.module button:hover {
background: #ffffff;
transition-property: background-color;
transition-duration: .5s;
}
.module#workspaces {
padding: 0;
// border: 0;
background: $iiv;
font-size: 4px;
button {
// border-top: 2px solid transparentize(#fff, 0.9);
padding: 0;
margin: 0;
transition: .15s padding;
color: $vii;
&:hover {
background: inherit;
border: 0;
padding: 18px 0;
}
}
button.empty {
color: $vi;
}
button.focused {
padding: 18px 0;
background: $iv;
color: $v;
&:not(:first-child) {
border-top: 1px solid transparentize(#fff, 0.9);
}
&:not(:last-child) {
border-bottom: 1px solid transparentize(#666, 0.9);
}
}
}
// #tray {
// border-bottom: 0;
// margin-bottom: 0;
// }
// #bluetooth {
// margin-top: 0;
// border-top: 0;
// }
#clock {
font-size: 18px;
}
.module#clock.hour {
color: $v;
padding-bottom: 0;
margin-bottom: 0;
border-bottom: 0;
font-weight: 600;
}
.module#clock.minutes {
background: $iiv;
padding-top: 0;
margin-top: 0;
border-top: 0;
font-weight: 300;
}

View File

@@ -0,0 +1,4 @@
#!/bin/sh
touch /tmp/rofi-power-state
tail -f /tmp/rofi-power-state | awk '{ print "{\"text\":\"test\",\"class\":\"" $0 "\"}" }'