Compare commits
No commits in common. "0a7a5181ff9126c7d1ff20b2d579402e22693fa3" and "dbb547273b650b76842b18c4d3bec95c2f9616b5" have entirely different histories.
0a7a5181ff
...
dbb547273b
13 changed files with 207 additions and 233 deletions
46
nixos/flake.lock
generated
46
nixos/flake.lock
generated
|
@ -8,11 +8,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713532798,
|
"lastModified": 1711099426,
|
||||||
"narHash": "sha256-wtBhsdMJA3Wa32Wtm1eeo84GejtI43pMrFrmwLXrsEc=",
|
"narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "devshell",
|
"repo": "devshell",
|
||||||
"rev": "12e914740a25ea1891ec619bb53cf5e6ca922e40",
|
"rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -64,16 +64,16 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716736833,
|
"lastModified": 1710888565,
|
||||||
"narHash": "sha256-rNObca6dm7Qs524O4st8VJH6pZ/Xe1gxl+Rx6mcWYo0=",
|
"narHash": "sha256-s9Hi4RHhc6yut4EcYD50sZWRDKsugBJHSbON8KFwoTw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "a631666f5ec18271e86a5cde998cba68c33d9ac6",
|
"rev": "f33900124c23c4eca5831b9b5eb32ea5894375ce",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-24.05",
|
"ref": "release-23.11",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -101,26 +101,26 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717144377,
|
"lastModified": 1711668574,
|
||||||
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=",
|
"narHash": "sha256-u1dfs0ASQIEr1icTVrsKwg2xToIpn7ZXxW3RHfHxshg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "805a384895c696f802a9bf5bf4720f37385df547",
|
"rev": "219951b495fc2eac67b1456824cc1ec1fd2ee659",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nixpkgs",
|
"id": "nixpkgs",
|
||||||
"ref": "nixos-24.05",
|
"ref": "nixos-23.11",
|
||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717265169,
|
"lastModified": 1711233294,
|
||||||
"narHash": "sha256-IITcGd6xpNoyq9SZBigCkv4+qMHSqot0RDPR4xsZ2CA=",
|
"narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3b1b4895b2c5f9f5544d02132896aeb9ceea77bc",
|
"rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -132,11 +132,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716948383,
|
"lastModified": 1711703276,
|
||||||
"narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=",
|
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ad57eef4ef0659193044870c731987a6df5cf56b",
|
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -230,11 +230,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717297459,
|
"lastModified": 1711249319,
|
||||||
"narHash": "sha256-cZC2f68w5UrJ1f+2NWGV9Gx0dEYmxwomWN2B0lx0QRA=",
|
"narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "ab2a43b0d21d1d37d4d5726a892f714eaeb4b075",
|
"rev": "405987a66cce9a4a82f321f11b205982a7127c88",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -316,11 +316,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715533576,
|
"lastModified": 1696331477,
|
||||||
"narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=",
|
"narHash": "sha256-YkbRa/1wQWdWkVJ01JvV+75KIdM37UErqKgTf0L54Fk=",
|
||||||
"owner": "gytis-ivaskevicius",
|
"owner": "gytis-ivaskevicius",
|
||||||
"repo": "flake-utils-plus",
|
"repo": "flake-utils-plus",
|
||||||
"rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
|
"rev": "bfc53579db89de750b25b0c5e7af299e0c06d7d3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
description = "System configuration of my machines using flakes";
|
description = "System configuration of my machines using flakes";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "nixpkgs/nixos-24.05";
|
nixpkgs.url = "nixpkgs/nixos-23.11";
|
||||||
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
devshell = {
|
devshell = {
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
};
|
};
|
||||||
flake-utils.url = "github:numtide/flake-utils";
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.05";
|
url = "github:nix-community/home-manager/release-23.11";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
openconnect-sso = {
|
openconnect-sso = {
|
||||||
|
|
|
@ -80,7 +80,7 @@
|
||||||
xkbVariant = "altgr-intl";
|
xkbVariant = "altgr-intl";
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "23.11";
|
||||||
|
|
||||||
time.timeZone = "Europe/Brussels";
|
time.timeZone = "Europe/Brussels";
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
# openconnect-sso.enable = true;
|
openconnect-sso.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
|
@ -97,17 +97,16 @@
|
||||||
lidSwitchDocked = "ignore";
|
lidSwitchDocked = "ignore";
|
||||||
};
|
};
|
||||||
|
|
||||||
xserver.xkb = {
|
xserver = {
|
||||||
# Keyboard layout
|
# Keyboard layout
|
||||||
layout = "us";
|
layout = "us";
|
||||||
variant = "altgr-intl";
|
xkbVariant = "altgr-intl";
|
||||||
|
# Touchpad
|
||||||
|
libinput.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Touchpad
|
|
||||||
libinput.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "23.11";
|
||||||
|
|
||||||
time.timeZone = "Europe/Brussels";
|
time.timeZone = "Europe/Brussels";
|
||||||
|
|
||||||
|
|
|
@ -8,10 +8,9 @@ in {
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
virtualisation.docker = {
|
virtualisation.docker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
enableNvidia = true;
|
||||||
# Because these are made for development purposes and not for servers
|
# Because these are made for development purposes and not for servers
|
||||||
enableOnBoot = false;
|
enableOnBoot = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.nvidia-container-toolkit.enable = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,12 +25,10 @@ in {
|
||||||
};
|
};
|
||||||
guest = {
|
guest = {
|
||||||
enable = true;
|
enable = true;
|
||||||
clipboard = true;
|
x11 = true;
|
||||||
seamless = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Define the group
|
|
||||||
users.groups.vboxusers = {};
|
users.groups.vboxusers = {};
|
||||||
|
|
||||||
sisyphus.users.wantedGroups = [
|
sisyphus.users.wantedGroups = [
|
||||||
|
|
|
@ -76,6 +76,7 @@ in {
|
||||||
nsxiv # Lightweight image viewer
|
nsxiv # Lightweight image viewer
|
||||||
qalculate-gtk # Calculator
|
qalculate-gtk # Calculator
|
||||||
spotify
|
spotify
|
||||||
|
tea # Gitea CLI
|
||||||
unzip
|
unzip
|
||||||
vifm # File manager
|
vifm # File manager
|
||||||
zathura # PDF viewer
|
zathura # PDF viewer
|
||||||
|
|
|
@ -30,9 +30,8 @@
|
||||||
"name": "keep",
|
"name": "keep",
|
||||||
"position": "top",
|
"position": "top",
|
||||||
"height": 25,
|
"height": 25,
|
||||||
"modules-left": ["sway/mode", "keyboard-state"],
|
"modules-left": ["sway/mode"],
|
||||||
"modules-center": ["clock"],
|
"modules-center": ["clock"],
|
||||||
"modules-right": ["privacy"],
|
|
||||||
|
|
||||||
"include": [
|
"include": [
|
||||||
// Import modules (!)
|
// Import modules (!)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"mpris"
|
"custom/media"
|
||||||
],
|
],
|
||||||
"modules-center": [
|
"modules-center": [
|
||||||
"sway/workspaces"
|
"sway/workspaces"
|
||||||
|
|
|
@ -1,12 +1,16 @@
|
||||||
{
|
{
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
"sway/workspaces",
|
"sway/workspaces",
|
||||||
"custom/scratchpad-indicator",
|
"idle_inhibitor",
|
||||||
"mpris",
|
"custom/light-dark-toggle",
|
||||||
"group/system",
|
"custom/night-light-toggle",
|
||||||
|
"custom/toggle-notifications",
|
||||||
|
"custom/media"
|
||||||
],
|
],
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
"group/hardware",
|
"memory",
|
||||||
|
"cpu",
|
||||||
|
"temperature",
|
||||||
"custom/sep",
|
"custom/sep",
|
||||||
"bluetooth",
|
"bluetooth",
|
||||||
"network",
|
"network",
|
||||||
|
|
131
stow/waybar/.config/waybar/mediaplayer.py
Executable file
131
stow/waybar/.config/waybar/mediaplayer.py
Executable file
|
@ -0,0 +1,131 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
# From:
|
||||||
|
# https://github.com/Alexays/Waybar/blob/master/resources/custom_modules/mediaplayer.py
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import logging
|
||||||
|
import sys
|
||||||
|
import signal
|
||||||
|
import gi
|
||||||
|
import json
|
||||||
|
gi.require_version('Playerctl', '2.0')
|
||||||
|
from gi.repository import Playerctl, GLib
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
def write_output(text, player):
|
||||||
|
logger.info('Writing output')
|
||||||
|
|
||||||
|
output = {'text': text,
|
||||||
|
'class': 'custom-' + player.props.player_name,
|
||||||
|
'alt': player.props.player_name}
|
||||||
|
|
||||||
|
sys.stdout.write(json.dumps(output) + '\n')
|
||||||
|
sys.stdout.flush()
|
||||||
|
|
||||||
|
|
||||||
|
def on_play(player, status, manager):
|
||||||
|
logger.info('Received new playback status')
|
||||||
|
on_metadata(player, player.props.metadata, manager)
|
||||||
|
|
||||||
|
|
||||||
|
def on_metadata(player, metadata, manager):
|
||||||
|
logger.info('Received new metadata')
|
||||||
|
track_info = ''
|
||||||
|
|
||||||
|
if player.props.player_name == 'spotify' and \
|
||||||
|
'mpris:trackid' in metadata.keys() and \
|
||||||
|
':ad:' in player.props.metadata['mpris:trackid']:
|
||||||
|
track_info = 'AD PLAYING'
|
||||||
|
elif player.get_artist() != '' and player.get_title() != '':
|
||||||
|
track_info = '{artist} - {title}'.format(artist=player.get_artist(),
|
||||||
|
title=player.get_title())
|
||||||
|
else:
|
||||||
|
track_info = player.get_title()
|
||||||
|
|
||||||
|
if player.props.status != 'Playing' and track_info:
|
||||||
|
track_info = ' ' + track_info
|
||||||
|
write_output(track_info, player)
|
||||||
|
|
||||||
|
|
||||||
|
def on_player_appeared(manager, player, selected_player=None):
|
||||||
|
if player is not None and (selected_player is None or player.name == selected_player):
|
||||||
|
init_player(manager, player)
|
||||||
|
else:
|
||||||
|
logger.debug("New player appeared, but it's not the selected player, skipping")
|
||||||
|
|
||||||
|
|
||||||
|
def on_player_vanished(manager, player):
|
||||||
|
logger.info('Player has vanished')
|
||||||
|
sys.stdout.write('\n')
|
||||||
|
sys.stdout.flush()
|
||||||
|
|
||||||
|
|
||||||
|
def init_player(manager, name):
|
||||||
|
logger.debug('Initialize player: {player}'.format(player=name.name))
|
||||||
|
player = Playerctl.Player.new_from_name(name)
|
||||||
|
player.connect('playback-status', on_play, manager)
|
||||||
|
player.connect('metadata', on_metadata, manager)
|
||||||
|
manager.manage_player(player)
|
||||||
|
on_metadata(player, player.props.metadata, manager)
|
||||||
|
|
||||||
|
|
||||||
|
def signal_handler(sig, frame):
|
||||||
|
logger.debug('Received signal to stop, exiting')
|
||||||
|
sys.stdout.write('\n')
|
||||||
|
sys.stdout.flush()
|
||||||
|
# loop.quit()
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
|
|
||||||
|
def parse_arguments():
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
|
||||||
|
# Increase verbosity with every occurrence of -v
|
||||||
|
parser.add_argument('-v', '--verbose', action='count', default=0)
|
||||||
|
|
||||||
|
# Define for which player we're listening
|
||||||
|
parser.add_argument('--player')
|
||||||
|
|
||||||
|
return parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
arguments = parse_arguments()
|
||||||
|
|
||||||
|
# Initialize logging
|
||||||
|
logging.basicConfig(stream=sys.stderr, level=logging.DEBUG,
|
||||||
|
format='%(name)s %(levelname)s %(message)s')
|
||||||
|
|
||||||
|
# Logging is set by default to WARN and higher.
|
||||||
|
# With every occurrence of -v it's lowered by one
|
||||||
|
logger.setLevel(max((3 - arguments.verbose) * 10, 0))
|
||||||
|
|
||||||
|
# Log the sent command line arguments
|
||||||
|
logger.debug('Arguments received {}'.format(vars(arguments)))
|
||||||
|
|
||||||
|
manager = Playerctl.PlayerManager()
|
||||||
|
loop = GLib.MainLoop()
|
||||||
|
|
||||||
|
manager.connect('name-appeared', lambda *args: on_player_appeared(*args, arguments.player))
|
||||||
|
manager.connect('player-vanished', on_player_vanished)
|
||||||
|
|
||||||
|
signal.signal(signal.SIGINT, signal_handler)
|
||||||
|
signal.signal(signal.SIGTERM, signal_handler)
|
||||||
|
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
|
||||||
|
|
||||||
|
for player in manager.props.player_names:
|
||||||
|
if arguments.player is not None and arguments.player != player.name:
|
||||||
|
logger.debug('{player} is not the filtered player, skipping it'
|
||||||
|
.format(player=player.name)
|
||||||
|
)
|
||||||
|
continue
|
||||||
|
|
||||||
|
init_player(manager, player)
|
||||||
|
|
||||||
|
loop.run()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
|
@ -47,6 +47,19 @@
|
||||||
"tooltip-format": "Launch an application"
|
"tooltip-format": "Launch an application"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"custom/media": {
|
||||||
|
"escape": true,
|
||||||
|
"exec": "~/.config/waybar/mediaplayer.py 2> /dev/null",
|
||||||
|
"format": "{icon} {}",
|
||||||
|
"format-icons": {
|
||||||
|
"default": "\uf51f",
|
||||||
|
"spotify": "\uf1bc"
|
||||||
|
},
|
||||||
|
"max-length": 40,
|
||||||
|
"on-click": "playerctl play-pause",
|
||||||
|
"return-type": "json"
|
||||||
|
},
|
||||||
|
|
||||||
"custom/light-dark-toggle": {
|
"custom/light-dark-toggle": {
|
||||||
"on-click": "bash ${SCRIPT_DIR}/toggle-light-dark.sh",
|
"on-click": "bash ${SCRIPT_DIR}/toggle-light-dark.sh",
|
||||||
"tooltip-format": "Toggle between light and dark mode",
|
"tooltip-format": "Toggle between light and dark mode",
|
||||||
|
@ -58,52 +71,7 @@
|
||||||
"on-click": "bash ${SCRIPT_DIR}/sunset.sh",
|
"on-click": "bash ${SCRIPT_DIR}/sunset.sh",
|
||||||
"tooltip-format": "Toggle night-light on or off",
|
"tooltip-format": "Toggle night-light on or off",
|
||||||
"format": "\uf0eb ",
|
"format": "\uf0eb ",
|
||||||
"tooltip": true,
|
"tooltip": true
|
||||||
"tooltip-format": "Toggle night-light on or off",
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/scratchpad-indicator": {
|
|
||||||
"interval": 3,
|
|
||||||
"return-type": "json",
|
|
||||||
"exec": "swaymsg -t get_tree | jq --unbuffered --compact-output '(recurse(.nodes[]) | select(.name == \"__i3_scratch\") | .focus) as $scratch_ids | [.. | (.nodes? + .floating_nodes?) // empty | .[] | select(.id |IN($scratch_ids[]))] as $scratch_nodes | if ($scratch_nodes|length) > 0 then { text: \"\\($scratch_nodes | length)\", tooltip: $scratch_nodes | map(\"\\(.app_id // .window_properties.class) (\\(.id)): \\(.name)\") | join(\"\\n\") } else empty end'",
|
|
||||||
"format": "{} \uf2d2",
|
|
||||||
"on-click": "exec swaymsg 'scratchpad show'",
|
|
||||||
"on-click-right": "exec swaymsg 'move scratchpad'"
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/system-lock": {
|
|
||||||
"format": "\uf09c",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-format": "Lock device",
|
|
||||||
"on-click": "swaylock -f"
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/system-sleep": {
|
|
||||||
"format": "\uf186",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-format": "Put device to sleep",
|
|
||||||
"on-click": "swaylock -f; systemctl suspend"
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/system-hibernate": {
|
|
||||||
"format": "\uf2dc",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-format": "Hibernate device",
|
|
||||||
"on-click": "swaylock -f; systemctl hibernate"
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/system-reboot": {
|
|
||||||
"format": "\uf0e2",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-format": "Reboot device",
|
|
||||||
"on-click": "systemctl reboot"
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/system-shutdown": {
|
|
||||||
"format": "\uf011",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-format": "Shutdown device",
|
|
||||||
"on-click": "systemctl poweroff -i"
|
|
||||||
},
|
},
|
||||||
|
|
||||||
"custom/toggle-notifications": {
|
"custom/toggle-notifications": {
|
||||||
|
@ -115,45 +83,10 @@
|
||||||
|
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"format": "{usage}% \uf2db",
|
"format": "{usage}% \uf2db",
|
||||||
"on-click": "foot -e htop",
|
"on-click": "kitty -e htop",
|
||||||
"tooltip": true
|
"tooltip": true
|
||||||
},
|
},
|
||||||
|
|
||||||
"group/hardware": {
|
|
||||||
"orientation": "inherit",
|
|
||||||
"modules": [
|
|
||||||
"power-profiles-daemon",
|
|
||||||
"memory",
|
|
||||||
"cpu",
|
|
||||||
"temperature",
|
|
||||||
"custom/system-shutdown",
|
|
||||||
"custom/system-reboot",
|
|
||||||
"custom/system-hibernate",
|
|
||||||
"custom/system-sleep",
|
|
||||||
"custom/system-lock",
|
|
||||||
],
|
|
||||||
"drawer": {
|
|
||||||
"transition-duration": 500,
|
|
||||||
"transition-left-to-right": false,
|
|
||||||
"children-class": "drawer-child",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
"group/system": {
|
|
||||||
"orientation": "inherit",
|
|
||||||
"modules": [
|
|
||||||
"idle_inhibitor",
|
|
||||||
"custom/light-dark-toggle",
|
|
||||||
"custom/night-light-toggle",
|
|
||||||
"custom/toggle-notifications",
|
|
||||||
],
|
|
||||||
"drawer": {
|
|
||||||
"transition-duration": 500,
|
|
||||||
"tansition-left-to-right": true,
|
|
||||||
"children-class": "drawer-child",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
"idle_inhibitor": {
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
|
@ -163,44 +96,11 @@
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
},
|
},
|
||||||
|
|
||||||
"keyboard-state": {
|
|
||||||
"format": {
|
|
||||||
"capslock": "{icon}",
|
|
||||||
},
|
|
||||||
"format-icons": {
|
|
||||||
"locked": "\uf023",
|
|
||||||
"unlocked": ""
|
|
||||||
},
|
|
||||||
"numlock": false,
|
|
||||||
"capslock": true,
|
|
||||||
"scrollock": false,
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
"memory": {
|
||||||
"format": "{}% \uf1c0",
|
"format": "{}% \uf1c0",
|
||||||
"on-click": "kitty -e zenith"
|
"on-click": "kitty -e zenith"
|
||||||
},
|
},
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
// "ignored-players": ["firefox"]
|
|
||||||
"format": "{player_icon} {dynamic}",
|
|
||||||
"format-paused": "{status_icon} <i>{dynamic}</i>",
|
|
||||||
"tooltip-format": "{player} ({status}) {title} - {artist} - {album}",
|
|
||||||
"player-icons": {
|
|
||||||
"default": "\uf51f",
|
|
||||||
"spotify": "\uf1bc",
|
|
||||||
"mpv": "🎵"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "⏸"
|
|
||||||
},
|
|
||||||
"dynamic-order": [
|
|
||||||
"title",
|
|
||||||
"artist"
|
|
||||||
],
|
|
||||||
"dynamic-len": 40,
|
|
||||||
},
|
|
||||||
|
|
||||||
"network": {
|
"network": {
|
||||||
"format-disconnected": "\uf127",
|
"format-disconnected": "\uf127",
|
||||||
"format-ethernet": "\uf6ff {ifname}: {ipadds}/{cidr}",
|
"format-ethernet": "\uf6ff {ifname}: {ipadds}/{cidr}",
|
||||||
|
@ -229,36 +129,6 @@
|
||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
|
|
||||||
"power-profiles-daemon": {
|
|
||||||
"format": "{icon}",
|
|
||||||
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
|
|
||||||
"tooltip": true,
|
|
||||||
"format-icons": {
|
|
||||||
"default": "",
|
|
||||||
"performance": "",
|
|
||||||
"balanced": "",
|
|
||||||
"power-saver": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"privacy": {
|
|
||||||
"icon-spacing": 4,
|
|
||||||
"icon-size": 18,
|
|
||||||
"transition-duration": 250,
|
|
||||||
"modules": [
|
|
||||||
{
|
|
||||||
"type": "screenshare",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-icon-size": 18,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "audio-in",
|
|
||||||
"tooltip": true,
|
|
||||||
"tooltip-icon-size": 18,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"format": "{volume}% {icon}{format_source}",
|
"format": "{volume}% {icon}{format_source}",
|
||||||
"format-muted": "\uf6a9{format_source}",
|
"format-muted": "\uf6a9{format_source}",
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
@define-color accent #00897b;
|
@define-color accent #00897b;
|
||||||
|
|
||||||
window#waybar {
|
window#waybar {
|
||||||
font-family: letter, "Font Awesome 6 Free", font-awesome, monospace;
|
font-family: font-awesome, letter, monospace;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
transition-property: background-color;
|
transition-property: background-color;
|
||||||
|
@ -49,31 +49,10 @@ window#waybar {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* All modules individually. */
|
/* All modules individually. */
|
||||||
#backlight,
|
#backlight, #battery, #bluetooth, #clock, #cpu,
|
||||||
#battery,
|
#custom-browser, #custom-media, #custom-light-dark-toggle, #custom-night-light-toggle, #custom-toggle-notifications,
|
||||||
#bluetooth,
|
#disk, #idle_inhibitor, #memory, #mode, #mpd, #network,
|
||||||
#clock,
|
#pulseaudio, #temperature, #tray {
|
||||||
#cpu,
|
|
||||||
#custom-browser,
|
|
||||||
#custom-light-dark-toggle,
|
|
||||||
#custom-night-light-toggle,
|
|
||||||
#custom-system-lock, #custom-system-sleep, #custom-system-hibernate, #custom-system-reboot, #custom-system-shutdown,
|
|
||||||
#custom-toggle-notifications,
|
|
||||||
#disk,
|
|
||||||
#group-hardware,
|
|
||||||
#group-system,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#keyboard-state,
|
|
||||||
#memory,
|
|
||||||
#mode,
|
|
||||||
#mpd,
|
|
||||||
#mpris,
|
|
||||||
#network,
|
|
||||||
#power-profiles-daemon,
|
|
||||||
#privacy-item.audio-in, #privacy-item.audio-out, #privacy-item.screenshare,
|
|
||||||
#pulseaudio,
|
|
||||||
#temperature,
|
|
||||||
#tray {
|
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,16 +101,17 @@ label:focus {
|
||||||
opacity: 0.6;
|
opacity: 0.6;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpris {
|
#custom-media {
|
||||||
color: #2a5c45;
|
color: #2a5c45;
|
||||||
|
background-color: #66cc99;
|
||||||
min-width: 100px;
|
min-width: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpris.spotify {
|
#custom-media.custom-spotify {
|
||||||
background-color: #66cc99;
|
background-color: #66cc99;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpris.vlc {
|
#custom-media.custom-vlc {
|
||||||
background-color: #ffa000;
|
background-color: #ffa000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -154,12 +134,5 @@ label:focus {
|
||||||
background-color: #eb4d4b;
|
background-color: #eb4d4b;
|
||||||
}
|
}
|
||||||
|
|
||||||
#privacy-item.audio-in,
|
|
||||||
#privacy-item.audio-out,
|
|
||||||
#privacy-item.screenshare {
|
|
||||||
background-color: #ffaa01;
|
|
||||||
color: #2d3436;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "sharp.css";
|
@import "sharp.css";
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue