add icon
This commit is contained in:
parent
ce030a8734
commit
2541edd0f4
@ -159,6 +159,10 @@ menu>menuitem:hover {
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#nixos-label {
|
||||
color: var(--blue);
|
||||
}
|
||||
|
||||
tooltip {
|
||||
border: solid 2px;
|
||||
border-color: var(--border-color);
|
||||
|
||||
@ -137,9 +137,12 @@ class StatusBar(Window):
|
||||
name="bar-inner",
|
||||
start_children=Box(
|
||||
name="start-container",
|
||||
spacing=4,
|
||||
spacing=6,
|
||||
orientation="h",
|
||||
children=self.workspaces,
|
||||
children=[
|
||||
Label(name="nixos-label", markup=""),
|
||||
self.workspaces,
|
||||
],
|
||||
),
|
||||
center_children=Box(
|
||||
name="center-container",
|
||||
|
||||
176
bar/modules/icons.py
Normal file
176
bar/modules/icons.py
Normal file
@ -0,0 +1,176 @@
|
||||
# Parameters
|
||||
font_family: str = "tabler-icons"
|
||||
font_weight: str = "normal"
|
||||
|
||||
span: str = f"<span font-family='{font_family}' font-weight='{font_weight}'>"
|
||||
|
||||
# Panels
|
||||
apps: str = ""
|
||||
dashboard: str = ""
|
||||
chat: str = ""
|
||||
wallpapers: str = ""
|
||||
windows: str = ""
|
||||
|
||||
# Bar
|
||||
colorpicker: str = ""
|
||||
media: str = ""
|
||||
|
||||
# Toolbox
|
||||
|
||||
toolbox: str = ""
|
||||
ssfull: str = ""
|
||||
ssregion: str = ""
|
||||
sswindow: str = ""
|
||||
screenshots: str = ""
|
||||
screenrecord: str = ""
|
||||
recordings: str = ""
|
||||
ocr: str = "ﳃ"
|
||||
gamemode: str = ""
|
||||
gamemode_off: str = ""
|
||||
close: str = ""
|
||||
|
||||
# Circles
|
||||
temp: str = ""
|
||||
disk: str = ""
|
||||
battery: str = ""
|
||||
memory: str = "流"
|
||||
cpu: str = ""
|
||||
gpu: str = ""
|
||||
|
||||
# AIchat
|
||||
reload: str = ""
|
||||
detach: str = ""
|
||||
|
||||
# Wallpapers
|
||||
add: str = ""
|
||||
sort: str = ""
|
||||
circle: str = ""
|
||||
|
||||
# Chevrons
|
||||
chevron_up: str = ""
|
||||
chevron_down: str = ""
|
||||
chevron_left: str = ""
|
||||
chevron_right: str = ""
|
||||
|
||||
# Power
|
||||
lock: str = ""
|
||||
suspend: str = ""
|
||||
logout: str = ""
|
||||
reboot: str = ""
|
||||
shutdown: str = ""
|
||||
|
||||
# Power Manager
|
||||
power_saving: str = ""
|
||||
power_balanced: str = "勺"
|
||||
power_performance: str = ""
|
||||
charging: str = ""
|
||||
discharging: str = ""
|
||||
alert: str = ""
|
||||
bat_charging: str = ""
|
||||
bat_discharging: str = ""
|
||||
bat_low: str = "="
|
||||
bat_full: str = ""
|
||||
|
||||
|
||||
# Applets
|
||||
wifi_0: str = ""
|
||||
wifi_1: str = ""
|
||||
wifi_2: str = ""
|
||||
wifi_3: str = ""
|
||||
world: str = ""
|
||||
world_off: str = ""
|
||||
bluetooth: str = ""
|
||||
night: str = ""
|
||||
coffee: str = ""
|
||||
notifications: str = ""
|
||||
|
||||
wifi_off: str = ""
|
||||
bluetooth_off: str = ""
|
||||
night_off: str = ""
|
||||
notifications_off: str = ""
|
||||
|
||||
notifications_clear: str = ""
|
||||
download: str = ""
|
||||
upload: str = ""
|
||||
|
||||
# Bluetooth
|
||||
bluetooth_connected: str = ""
|
||||
bluetooth_disconnected: str = ""
|
||||
|
||||
# Player
|
||||
pause: str = ""
|
||||
play: str = ""
|
||||
stop: str = ""
|
||||
skip_back: str = ""
|
||||
skip_forward: str = ""
|
||||
prev: str = ""
|
||||
next: str = ""
|
||||
shuffle: str = ""
|
||||
repeat: str = ""
|
||||
music: str = ""
|
||||
rewind_backward_5: str = "謹"
|
||||
rewind_forward_5: str = "難"
|
||||
|
||||
# Volume
|
||||
vol_off: str = ""
|
||||
vol_mute: str = ""
|
||||
vol_medium: str = ""
|
||||
vol_high: str = ""
|
||||
|
||||
mic: str = ""
|
||||
mic_mute: str = ""
|
||||
|
||||
# Overview
|
||||
circle_plus: str = ""
|
||||
|
||||
# Pins
|
||||
paperclip: str = ""
|
||||
|
||||
# Clipboard Manager
|
||||
clipboard: str = ""
|
||||
clip_text: str = ""
|
||||
|
||||
# Confirm
|
||||
accept: str = ""
|
||||
cancel: str = ""
|
||||
trash: str = ""
|
||||
|
||||
# Config
|
||||
config: str = ""
|
||||
|
||||
# Icons
|
||||
firefox: str = ""
|
||||
chromium: str = ""
|
||||
spotify: str = "ﺆ"
|
||||
disc: str = "𐀾"
|
||||
disc_off: str = ""
|
||||
|
||||
# Brightness
|
||||
brightness_low: str = ""
|
||||
brightness_medium: str = ""
|
||||
brightness_high: str = ""
|
||||
|
||||
# Misc
|
||||
dot: str = ""
|
||||
palette: str = ""
|
||||
cloud_off: str = ""
|
||||
loader: str = ""
|
||||
radar: str = ""
|
||||
emoji: str = ""
|
||||
keyboard: str = ""
|
||||
terminal: str = ""
|
||||
timer_off: str = ""
|
||||
timer_on: str = ""
|
||||
spy: str = ""
|
||||
|
||||
exceptions: list[str] = ["font_family", "font_weight", "span"]
|
||||
|
||||
|
||||
def apply_span() -> None:
|
||||
global_dict = globals()
|
||||
for key in global_dict:
|
||||
if key not in exceptions and not key.startswith("__"):
|
||||
global_dict[key] = f"{span}{global_dict[key]}</span>"
|
||||
|
||||
|
||||
apply_span()
|
||||
112
bar/modules/power.py
Normal file
112
bar/modules/power.py
Normal file
@ -0,0 +1,112 @@
|
||||
from fabric.widgets.box import Box
|
||||
from fabric.widgets.label import Label
|
||||
from fabric.widgets.button import Button
|
||||
from fabric.utils.helpers import exec_shell_command_async
|
||||
import modules.icons as icons
|
||||
|
||||
|
||||
class PowerMenu(Box):
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(
|
||||
name="power-menu",
|
||||
orientation="h",
|
||||
spacing=4,
|
||||
v_align="center",
|
||||
h_align="center",
|
||||
visible=True,
|
||||
**kwargs,
|
||||
)
|
||||
|
||||
self.notch = kwargs["notch"]
|
||||
|
||||
self.btn_lock = Button(
|
||||
name="power-menu-button",
|
||||
child=Label(name="button-label", markup=icons.lock),
|
||||
on_clicked=self.lock,
|
||||
h_expand=False,
|
||||
v_expand=False,
|
||||
h_align="center",
|
||||
v_align="center",
|
||||
)
|
||||
|
||||
self.btn_suspend = Button(
|
||||
name="power-menu-button",
|
||||
child=Label(name="button-label", markup=icons.suspend),
|
||||
on_clicked=self.suspend,
|
||||
h_expand=False,
|
||||
v_expand=False,
|
||||
h_align="center",
|
||||
v_align="center",
|
||||
)
|
||||
|
||||
self.btn_logout = Button(
|
||||
name="power-menu-button",
|
||||
child=Label(name="button-label", markup=icons.logout),
|
||||
on_clicked=self.logout,
|
||||
h_expand=False,
|
||||
v_expand=False,
|
||||
h_align="center",
|
||||
v_align="center",
|
||||
)
|
||||
|
||||
self.btn_reboot = Button(
|
||||
name="power-menu-button",
|
||||
child=Label(name="button-label", markup=icons.reboot),
|
||||
on_clicked=self.reboot,
|
||||
h_expand=False,
|
||||
v_expand=False,
|
||||
h_align="center",
|
||||
v_align="center",
|
||||
)
|
||||
|
||||
self.btn_shutdown = Button(
|
||||
name="power-menu-button",
|
||||
child=Label(name="button-label", markup=icons.shutdown),
|
||||
on_clicked=self.poweroff,
|
||||
h_expand=False,
|
||||
v_expand=False,
|
||||
h_align="center",
|
||||
v_align="center",
|
||||
)
|
||||
|
||||
self.buttons = [
|
||||
self.btn_lock,
|
||||
self.btn_suspend,
|
||||
self.btn_logout,
|
||||
self.btn_reboot,
|
||||
self.btn_shutdown,
|
||||
]
|
||||
|
||||
for button in self.buttons:
|
||||
self.add(button)
|
||||
|
||||
self.show_all()
|
||||
|
||||
def close_menu(self):
|
||||
self.notch.close_notch()
|
||||
|
||||
# Métodos de acción
|
||||
def lock(self, *args):
|
||||
print("Locking screen...")
|
||||
exec_shell_command_async("loginctl lock-session")
|
||||
self.close_menu()
|
||||
|
||||
def suspend(self, *args):
|
||||
print("Suspending system...")
|
||||
exec_shell_command_async("systemctl suspend")
|
||||
self.close_menu()
|
||||
|
||||
def logout(self, *args):
|
||||
print("Logging out...")
|
||||
exec_shell_command_async("hyprctl dispatch exit")
|
||||
self.close_menu()
|
||||
|
||||
def reboot(self, *args):
|
||||
print("Rebooting system...")
|
||||
exec_shell_command_async("systemctl reboot")
|
||||
self.close_menu()
|
||||
|
||||
def poweroff(self, *args):
|
||||
print("Powering off...")
|
||||
exec_shell_command_async("systemctl poweroff")
|
||||
self.close_menu()
|
||||
122
bar/test.py
122
bar/test.py
@ -1,122 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass, field
|
||||
from typing import Callable
|
||||
from pywayland.client import Display
|
||||
from pywayland.protocol.wayland import WlOutput, WlRegistry, WlSeat
|
||||
from generated.river_status_unstable_v1 import (
|
||||
ZriverStatusManagerV1,
|
||||
ZriverOutputStatusV1,
|
||||
)
|
||||
|
||||
|
||||
@dataclass
|
||||
class OutputInfo:
|
||||
name: int
|
||||
output: WlOutput
|
||||
status: ZriverOutputStatusV1
|
||||
tags_view: list[int] = field(default_factory=list)
|
||||
tags_focused: list[int] = field(default_factory=list)
|
||||
|
||||
|
||||
@dataclass
|
||||
class State:
|
||||
display: Display
|
||||
registry: WlRegistry
|
||||
outputs: dict[int, OutputInfo] = field(default_factory=dict)
|
||||
river_status_mgr: ZriverStatusManagerV1 | None = None
|
||||
seat: WlSeat | None = None
|
||||
seat_status: ZriverSeatStatusV1 | None = None
|
||||
|
||||
|
||||
def decode_bitfields(bitfields: list[int] | int) -> list[int]:
|
||||
tags = set()
|
||||
if isinstance(bitfields, int):
|
||||
bitfields = [bitfields]
|
||||
for bits in bitfields:
|
||||
for i in range(32):
|
||||
if bits & (1 << i):
|
||||
tags.add(i)
|
||||
return sorted(tags)
|
||||
|
||||
|
||||
def handle_global(
|
||||
state: State, registry: WlRegistry, name: int, iface: str, version: int
|
||||
) -> None:
|
||||
if iface == "zriver_status_manager_v1":
|
||||
state.river_status_mgr = registry.bind(name, ZriverStatusManagerV1, version)
|
||||
|
||||
elif iface == "wl_output":
|
||||
output = registry.bind(name, WlOutput, version)
|
||||
state.outputs[name] = OutputInfo(name=name, output=output, status=None)
|
||||
elif iface == "wl_seat":
|
||||
seat = registry.bind(name, WlSeat, version)
|
||||
state.seat = seat
|
||||
|
||||
|
||||
def handle_global_remove(state: State, registry: WlRegistry, name: int) -> None:
|
||||
if name in state.outputs:
|
||||
print(f"Output {name} removed.")
|
||||
del state.outputs[name]
|
||||
|
||||
|
||||
def make_view_tags_handler(state: State, name: int) -> Callable:
|
||||
def handler(self, tags: list[int]) -> None:
|
||||
decoded = decode_bitfields(tags)
|
||||
state.outputs[name].tags_view = decoded
|
||||
print(f"[Output {name}] View tags: {decoded}")
|
||||
|
||||
return handler
|
||||
|
||||
|
||||
def make_focused_tags_handler(state: State, name: int) -> Callable:
|
||||
def handler(self, tags: int) -> None:
|
||||
decoded = decode_bitfields(tags)
|
||||
state.outputs[name].tags_focused = decoded
|
||||
print(f"[Output {name}] Focused tags: {decoded}")
|
||||
|
||||
return handler
|
||||
|
||||
|
||||
def main() -> None:
|
||||
with Display() as display:
|
||||
registry = display.get_registry()
|
||||
state = State(display=display, registry=registry)
|
||||
|
||||
registry.dispatcher["global"] = lambda reg, name, iface, ver: handle_global(
|
||||
state, reg, name, iface, ver
|
||||
)
|
||||
registry.dispatcher["global_remove"] = lambda reg, name: handle_global_remove(
|
||||
state, reg, name
|
||||
)
|
||||
|
||||
# Discover globals
|
||||
display.roundtrip()
|
||||
|
||||
if not state.river_status_mgr:
|
||||
print("❌ River status manager not found.")
|
||||
return
|
||||
|
||||
# Bind output status listeners
|
||||
for name, info in state.outputs.items():
|
||||
status = state.river_status_mgr.get_river_output_status(info.output)
|
||||
status.dispatcher["view_tags"] = make_view_tags_handler(state, name)
|
||||
status.dispatcher["focused_tags"] = make_focused_tags_handler(state, name)
|
||||
info.status = status
|
||||
|
||||
if state.seat:
|
||||
state.seat_status = state.river_status_mgr.get_river_seat_status(state.seat)
|
||||
print("✅ Bound seat status")
|
||||
|
||||
# Initial data
|
||||
display.roundtrip()
|
||||
|
||||
print("🟢 Listening for tag changes. Press Ctrl+C to exit.")
|
||||
while True:
|
||||
display.roundtrip()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
550
bar/utils/icons.py
Normal file
550
bar/utils/icons.py
Normal file
@ -0,0 +1,550 @@
|
||||
common_text_icons = {
|
||||
"playing": "",
|
||||
"paused": "",
|
||||
"power": "",
|
||||
"cpu": "",
|
||||
"memory": "",
|
||||
"storage": "",
|
||||
"updates": "",
|
||||
"thermometer": "",
|
||||
}
|
||||
|
||||
distro_text_icons = {
|
||||
"deepin": "",
|
||||
"fedora": "",
|
||||
"arch": "",
|
||||
"nixos": "",
|
||||
"debian": "",
|
||||
"opensuse-tumbleweed": "",
|
||||
"ubuntu": "",
|
||||
"endeavouros": "",
|
||||
"manjaro": "",
|
||||
"popos": "",
|
||||
"garuda": "",
|
||||
"zorin": "",
|
||||
"mxlinux": "",
|
||||
"arcolinux": "",
|
||||
"gentoo": "",
|
||||
"artix": "",
|
||||
"centos": "",
|
||||
"hyperbola": "",
|
||||
"kubuntu": "",
|
||||
"mandriva": "",
|
||||
"xerolinux": "",
|
||||
"parabola": "",
|
||||
"void": "",
|
||||
"linuxmint": "",
|
||||
"archlabs": "",
|
||||
"devuan": "",
|
||||
"freebsd": "",
|
||||
"openbsd": "",
|
||||
"slackware": "",
|
||||
}
|
||||
|
||||
# sourced from wttr.in
|
||||
weather_text_icons = {
|
||||
"113": {"description": "Sunny", "icon": ""},
|
||||
"116": {"description": "PartlyCloudy", "icon": ""},
|
||||
"119": {"description": "Cloudy", "icon": ""},
|
||||
"122": {"description": "VeryCloudy", "icon": ""},
|
||||
"143": {"description": "Fog", "icon": ""},
|
||||
"176": {"description": "LightShowers", "icon": ""},
|
||||
"179": {"description": "LightSleetShowers", "icon": ""},
|
||||
"182": {"description": "LightSleet", "icon": ""},
|
||||
"185": {"description": "LightSleet", "icon": ""},
|
||||
"200": {"description": "ThunderyShowers", "icon": ""},
|
||||
"227": {"description": "LightSnow", "icon": ""},
|
||||
"230": {"description": "HeavySnow", "icon": ""},
|
||||
"248": {"description": "Fog", "icon": ""},
|
||||
"260": {"description": "Fog", "icon": ""},
|
||||
"263": {"description": "LightShowers", "icon": ""},
|
||||
"266": {"description": "LightRain", "icon": ""},
|
||||
"281": {"description": "LightSleet", "icon": ""},
|
||||
"284": {"description": "LightSleet", "icon": ""},
|
||||
"293": {"description": "LightRain", "icon": ""},
|
||||
"296": {"description": "LightRain", "icon": ""},
|
||||
"299": {"description": "HeavyShowers", "icon": ""},
|
||||
"302": {"description": "HeavyRain", "icon": ""},
|
||||
"305": {"description": "HeavyShowers", "icon": ""},
|
||||
"308": {"description": "HeavyRain", "icon": ""},
|
||||
"311": {"description": "LightSleet", "icon": ""},
|
||||
"314": {"description": "LightSleet", "icon": ""},
|
||||
"317": {"description": "LightSleet", "icon": ""},
|
||||
"320": {"description": "LightSnow", "icon": ""},
|
||||
"323": {"description": "LightSnowShowers", "icon": ""},
|
||||
"326": {"description": "LightSnowShowers", "icon": ""},
|
||||
"329": {"description": "HeavySnow", "icon": ""},
|
||||
"332": {"description": "HeavySnow", "icon": ""},
|
||||
"335": {"description": "HeavySnowShowers", "icon": ""},
|
||||
"338": {"description": "HeavySnow", "icon": ""},
|
||||
"350": {"description": "LightSleet", "icon": ""},
|
||||
"353": {"description": "LightShowers", "icon": ""},
|
||||
"356": {"description": "HeavyShowers", "icon": ""},
|
||||
"359": {"description": "HeavyRain", "icon": ""},
|
||||
"362": {"description": "LightSleetShowers", "icon": ""},
|
||||
"365": {"description": "LightSleetShowers", "icon": ""},
|
||||
"368": {"description": "LightSnowShowers", "icon": ""},
|
||||
"371": {"description": "HeavySnowShowers", "icon": ""},
|
||||
"374": {"description": "LightSleetShowers", "icon": ""},
|
||||
"377": {"description": "LightSleet", "icon": ""},
|
||||
"386": {"description": "ThunderyShowers", "icon": ""},
|
||||
"389": {"description": "ThunderyHeavyRain", "icon": ""},
|
||||
"392": {"description": "ThunderySnowShowers", "icon": ""},
|
||||
"395": {"description": "HeavySnowShowers", "icon": ""},
|
||||
}
|
||||
|
||||
weather_text_icons_v2 = {
|
||||
"113": {
|
||||
"description": "Sunny",
|
||||
"icon": "",
|
||||
"image": "clear-day",
|
||||
"icon-night": "",
|
||||
"image-night": "clear-night",
|
||||
},
|
||||
"116": {
|
||||
"description": "PartlyCloudy",
|
||||
"icon": "",
|
||||
"image": "cloudy",
|
||||
"icon-night": "",
|
||||
"image-night": "cloudy",
|
||||
},
|
||||
"119": {
|
||||
"description": "Cloudy",
|
||||
"icon": "",
|
||||
"image": "cloudy",
|
||||
"icon-night": "",
|
||||
"image-night": "cloudy",
|
||||
},
|
||||
"122": {
|
||||
"description": "VeryCloudy",
|
||||
"icon": "",
|
||||
"image": "cloudy",
|
||||
"icon-night": "",
|
||||
"image-night": "cloudy",
|
||||
},
|
||||
"143": {
|
||||
"description": "Fog",
|
||||
"icon": "",
|
||||
"image": "fog",
|
||||
"icon-night": "",
|
||||
"image-night": "fog",
|
||||
},
|
||||
"176": {
|
||||
"description": "LightShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"179": {
|
||||
"description": "LightSleetShowers",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"182": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"185": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"200": {
|
||||
"description": "ThunderyShowers",
|
||||
"icon": "",
|
||||
"image": "thunderstorms",
|
||||
"icon-night": "",
|
||||
"image-night": "thunderstorms",
|
||||
},
|
||||
"227": {
|
||||
"description": "LightSnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"230": {
|
||||
"description": "HeavySnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"248": {
|
||||
"description": "Fog",
|
||||
"icon": "",
|
||||
"image": "fog",
|
||||
"icon-night": "",
|
||||
"image-night": "fog",
|
||||
},
|
||||
"260": {
|
||||
"description": "Fog",
|
||||
"icon": "",
|
||||
"image": "fog",
|
||||
"icon-night": "",
|
||||
"image-night": "fog",
|
||||
},
|
||||
"263": {
|
||||
"description": "LightShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"266": {
|
||||
"description": "LightRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"281": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"284": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"293": {
|
||||
"description": "LightRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"296": {
|
||||
"description": "LightRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"299": {
|
||||
"description": "HeavyShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"302": {
|
||||
"description": "HeavyRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"305": {
|
||||
"description": "HeavyShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"308": {
|
||||
"description": "HeavyRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"311": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"314": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"317": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"320": {
|
||||
"description": "LightSnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"323": {
|
||||
"description": "LightSnowShowers",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"326": {
|
||||
"description": "LightSnowShowers",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"329": {
|
||||
"description": "HeavySnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"332": {
|
||||
"description": "HeavySnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"335": {
|
||||
"description": "HeavySnowShowers",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"338": {
|
||||
"description": "HeavySnow",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"350": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"353": {
|
||||
"description": "LightShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"356": {
|
||||
"description": "HeavyShowers",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"359": {
|
||||
"description": "HeavyRain",
|
||||
"icon": "",
|
||||
"image": "rain",
|
||||
"icon-night": "",
|
||||
"image-night": "rain",
|
||||
},
|
||||
"362": {
|
||||
"description": "LightSleetShowers",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"365": {
|
||||
"description": "HeavySleetShowers",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"368": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"371": {
|
||||
"description": "HeavySleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
"374": {
|
||||
"description": "HeavySnowShowers",
|
||||
"icon": "",
|
||||
"image": "snow",
|
||||
"icon-night": "",
|
||||
"image-night": "snow",
|
||||
},
|
||||
"377": {
|
||||
"description": "LightSleet",
|
||||
"icon": "",
|
||||
"image": "sleet",
|
||||
"icon-night": "",
|
||||
"image-night": "sleet",
|
||||
},
|
||||
}
|
||||
|
||||
volume_text_icons = {
|
||||
"overamplified": "",
|
||||
"high": "",
|
||||
"medium": "",
|
||||
"low": "",
|
||||
"muted": "",
|
||||
}
|
||||
|
||||
volume_text_icons = {
|
||||
"overamplified": "",
|
||||
"high": "",
|
||||
"medium": "",
|
||||
"low": "",
|
||||
"muted": "",
|
||||
}
|
||||
|
||||
brightness_text_icons = {
|
||||
"off": "", # lowest brightness
|
||||
"low": "",
|
||||
"medium": "",
|
||||
"high": "", # highest brightness
|
||||
}
|
||||
|
||||
icons = {
|
||||
"missing": "image-missing-symbolic",
|
||||
"nix": {
|
||||
"nix": "nix-snowflake-symbolic",
|
||||
},
|
||||
"app": {
|
||||
"terminal": "terminal-symbolic",
|
||||
},
|
||||
"fallback": {
|
||||
"executable": "application-x-executable",
|
||||
"notification": "dialog-information-symbolic",
|
||||
"video": "video-x-generic-symbolic",
|
||||
"audio": "audio-x-generic-symbolic",
|
||||
},
|
||||
"ui": {
|
||||
"close": "window-close-symbolic",
|
||||
"colorpicker": "color-select-symbolic",
|
||||
"info": "info-symbolic",
|
||||
"link": "external-link-symbolic",
|
||||
"lock": "system-lock-screen-symbolic",
|
||||
"menu": "open-menu-symbolic",
|
||||
"refresh": "view-refresh-symbolic",
|
||||
"search": "system-search-symbolic",
|
||||
"settings": "emblem-system-symbolic",
|
||||
"themes": "preferences-desktop-theme-symbolic",
|
||||
"tick": "object-select-symbolic",
|
||||
"time": "hourglass-symbolic",
|
||||
"toolbars": "toolbars-symbolic",
|
||||
"warning": "dialog-warning-symbolic",
|
||||
"avatar": "avatar-default-symbolic",
|
||||
"arrow": {
|
||||
"right": "pan-end-symbolic",
|
||||
"left": "pan-start-symbolic",
|
||||
"down": "pan-down-symbolic",
|
||||
"up": "pan-up-symbolic",
|
||||
},
|
||||
},
|
||||
"audio": {
|
||||
"mic": {
|
||||
"muted": "microphone-disabled-symbolic",
|
||||
"low": "microphone-sensitivity-low-symbolic",
|
||||
"medium": "microphone-sensitivity-medium-symbolic",
|
||||
"high": "microphone-sensitivity-high-symbolic",
|
||||
},
|
||||
"volume": {
|
||||
"muted": "audio-volume-muted-symbolic",
|
||||
"low": "audio-volume-low-symbolic",
|
||||
"medium": "audio-volume-medium-symbolic",
|
||||
"high": "audio-volume-high-symbolic",
|
||||
"overamplified": "audio-volume-overamplified-symbolic",
|
||||
},
|
||||
"type": {
|
||||
"headset": "audio-headphones-symbolic",
|
||||
"speaker": "audio-speakers-symbolic",
|
||||
"card": "audio-card-symbolic",
|
||||
},
|
||||
"mixer": "mixer-symbolic",
|
||||
},
|
||||
"powerprofile": {
|
||||
"balanced": "power-profile-balanced-symbolic",
|
||||
"power-saver": "power-profile-power-saver-symbolic",
|
||||
"performance": "power-profile-performance-symbolic",
|
||||
},
|
||||
"battery": {
|
||||
"charging": "battery-flash-symbolic",
|
||||
"warning": "battery-empty-symbolic",
|
||||
},
|
||||
"bluetooth": {
|
||||
"enabled": "bluetooth-active-symbolic",
|
||||
"disabled": "bluetooth-disabled-symbolic",
|
||||
},
|
||||
"brightness": {
|
||||
"indicator": "display-brightness-symbolic",
|
||||
"keyboard": "keyboard-brightness-symbolic",
|
||||
"screen": "display-brightness-symbolic",
|
||||
},
|
||||
"powermenu": {
|
||||
"sleep": "weather-clear-night-symbolic",
|
||||
"reboot": "system-reboot-symbolic",
|
||||
"logout": "system-log-out-symbolic",
|
||||
"shutdown": "system-shutdown-symbolic",
|
||||
},
|
||||
"recorder": {
|
||||
"recording": "media-record-symbolic",
|
||||
"stopped": "media-record-symbolic",
|
||||
},
|
||||
"notifications": {
|
||||
"noisy": "org.gnome.Settings-notifications-symbolic",
|
||||
"silent": "notifications-disabled-symbolic",
|
||||
"message": "chat-bubbles-symbolic",
|
||||
},
|
||||
"trash": {
|
||||
"full": "user-trash-full-symbolic",
|
||||
"empty": "user-trash-symbolic",
|
||||
},
|
||||
"mpris": {
|
||||
"shuffle": {
|
||||
"enabled": "media-playlist-shuffle-symbolic",
|
||||
"disabled": "media-playlist-consecutive-symbolic",
|
||||
},
|
||||
"loop": {
|
||||
"none": "media-playlist-repeat-symbolic",
|
||||
"track": "media-playlist-repeat-song-symbolic",
|
||||
"playlist": "media-playlist-repeat-symbolic",
|
||||
},
|
||||
"playing": "media-playback-pause-symbolic",
|
||||
"paused": "media-playback-start-symbolic",
|
||||
"stopped": "media-playback-start-symbolic",
|
||||
"prev": "media-skip-backward-symbolic",
|
||||
"next": "media-skip-forward-symbolic",
|
||||
},
|
||||
"system": {
|
||||
"cpu": "org.gnome.SystemMonitor-symbolic",
|
||||
"ram": "drive-harddisk-solidstate-symbolic",
|
||||
"temp": "temperature-symbolic",
|
||||
},
|
||||
"color": {
|
||||
"dark": "dark-mode-symbolic",
|
||||
"light": "light-mode-symbolic",
|
||||
},
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user