diff --git a/nixos/flake.lock b/nixos/flake.lock index de6ae4c..0d2e100 100644 --- a/nixos/flake.lock +++ b/nixos/flake.lock @@ -25,16 +25,16 @@ ] }, "locked": { - "lastModified": 1758463745, - "narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=", + "lastModified": 1764736872, + "narHash": "sha256-4mqLegNQeD54X7enm6EI9aNWl6CaIfyhl5PaYoGYwqk=", "owner": "nix-community", "repo": "home-manager", - "rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3", + "rev": "3366918730bb6b699395a9d237397f1d710a94b3", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-25.05", + "ref": "release-25.11", "repo": "home-manager", "type": "github" } @@ -62,26 +62,26 @@ }, "nixpkgs": { "locked": { - "lastModified": 1760862643, - "narHash": "sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0=", + "lastModified": 1764522689, + "narHash": "sha256-SqUuBFjhl/kpDiVaKLQBoD8TLD+/cTUzzgVFoaHrkqY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "33c6dca0c0cb31d6addcd34e90a63ad61826b28c", + "rev": "8bb5646e0bed5dbd3ab08c7a7cc15b75ab4e1d0f", "type": "github" }, "original": { "id": "nixpkgs", - "ref": "nixos-25.05", + "ref": "nixos-25.11", "type": "indirect" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1760878510, - "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", + "lastModified": 1764517877, + "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", + "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c", "type": "github" }, "original": { @@ -163,8 +163,7 @@ "nixpkgs-unstable": "nixpkgs-unstable", "openconnect-sso": "openconnect-sso", "sops-nix": "sops-nix", - "utils": "utils", - "zen-browser": "zen-browser" + "utils": "utils" } }, "sops-nix": { @@ -174,11 +173,11 @@ ] }, "locked": { - "lastModified": 1760998189, - "narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=", + "lastModified": 1764483358, + "narHash": "sha256-EyyvCzXoHrbL467YSsQBTWWg4sR96MH1sPpKoSOelB4=", "owner": "Mic92", "repo": "sops-nix", - "rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3", + "rev": "5aca6ff67264321d47856a2ed183729271107c9c", "type": "github" }, "original": { @@ -257,26 +256,6 @@ "repo": "flake-utils-plus", "type": "github" } - }, - "zen-browser": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1761105987, - "narHash": "sha256-d01CGcdNlsqIn4ncGCWHM0Velnii/Ggef1iybQvEOfc=", - "owner": "youwen5", - "repo": "zen-browser-flake", - "rev": "e7d9fefd8665be5d4c77466140f21a15f6d29e93", - "type": "github" - }, - "original": { - "owner": "youwen5", - "repo": "zen-browser-flake", - "type": "github" - } } }, "root": "root", diff --git a/nixos/flake.nix b/nixos/flake.nix index fa8b125..c5ce42f 100644 --- a/nixos/flake.nix +++ b/nixos/flake.nix @@ -2,12 +2,12 @@ description = "System configuration of my machines using flakes"; inputs = { - nixpkgs.url = "nixpkgs/nixos-25.05"; + nixpkgs.url = "nixpkgs/nixos-25.11"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; home-manager = { - url = "github:nix-community/home-manager/release-25.05"; + url = "github:nix-community/home-manager/release-25.11"; inputs.nixpkgs.follows = "nixpkgs"; }; openconnect-sso = { @@ -25,15 +25,11 @@ url = "github:gytis-ivaskevicius/flake-utils-plus"; inputs.flake-utils.follows = "flake-utils"; }; - zen-browser = { - url = "github:youwen5/zen-browser-flake"; - inputs.nixpkgs.follows = "nixpkgs"; - }; }; outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, - flake-utils, home-manager, openconnect-sso, sops-nix, utils, zen-browser, + flake-utils, home-manager, openconnect-sso, sops-nix, utils, ... }: let system = utils.lib.system.x86_64-linux; @@ -47,6 +43,7 @@ "vista-fonts" "intel-ocl" "libfprint-2-tod1-broadcom" + "vmware-workstation" ]; in utils.lib.mkFlake { diff --git a/nixos/hosts/Tibo-NixDesk/default.nix b/nixos/hosts/Tibo-NixDesk/default.nix index fe71d29..9373483 100644 --- a/nixos/hosts/Tibo-NixDesk/default.nix +++ b/nixos/hosts/Tibo-NixDesk/default.nix @@ -20,6 +20,7 @@ networking = { networkmanager.enable = true; openconnect-sso.enable = true; + openvpn.enable = true; }; nix = { diff --git a/nixos/hosts/Tibo-NixTop/default.nix b/nixos/hosts/Tibo-NixTop/default.nix index 7431ae5..7d977af 100644 --- a/nixos/hosts/Tibo-NixTop/default.nix +++ b/nixos/hosts/Tibo-NixTop/default.nix @@ -38,6 +38,7 @@ home-manager.enable = true; sops.enable = true; ssh.enable = true; + wireshark.enable = true; }; services = { @@ -94,6 +95,8 @@ powerOnBoot = false; }; + nix.settings.download-buffer-size = 500 * 1024 * 1024; # 500 MiB + programs.zsh.enable = true; services = { @@ -111,17 +114,17 @@ }; }; - logind = { + logind.settings.Login = { # Handle the laptop lid switch as follows: - lidSwitch = "hybrid-sleep"; - lidSwitchExternalPower = "lock"; - lidSwitchDocked = "ignore"; + HandleLidSwitch = "hybrid-sleep"; + HandleLidSwitchExternalPower = "lock"; + HandleLidSwitchDocked = "ignore"; # Handle the power key - powerKey = "suspend"; + HandlePowerKey = "suspend"; + HandlePowerKeyLongPress = "poweroff"; }; - power-profiles-daemon.enable = false; smartd.enable = true; @@ -140,9 +143,9 @@ libinput.enable = true; }; - networking = { - hostName = "Tibo-NixTop"; # Define your hostname. - }; + virtualisation.vmware.host.enable = true; + + networking.hostName = "Tibo-NixTop"; # Define your hostname. # Set your time zone. time.timeZone = "Europe/Brussels"; @@ -159,12 +162,6 @@ useXkbConfig = true; # use xkb.options in tty. }; - # Enable CUPS to print documents. - # services.printing.enable = true; - - # Enable touchpad support (enabled default in most desktopManager). - # services.libinput.enable = true; - # List packages installed in system profile. # You can use https://search.nixos.org/ to find more packages (and options). environment = { @@ -198,6 +195,5 @@ # # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . system.stateVersion = "25.05"; # Did you read the comment? - } diff --git a/nixos/modules/desktop/waybar/default.nix b/nixos/modules/desktop/waybar/default.nix index 273e4ce..d893470 100644 --- a/nixos/modules/desktop/waybar/default.nix +++ b/nixos/modules/desktop/waybar/default.nix @@ -14,5 +14,7 @@ in { ]; programs.waybar.enable = true; + + services.atd.enable = true; # Command scheduler }; } diff --git a/nixos/modules/hardware/nvidia/default.nix b/nixos/modules/hardware/nvidia/default.nix index e98ed6d..e9ae0d3 100644 --- a/nixos/modules/hardware/nvidia/default.nix +++ b/nixos/modules/hardware/nvidia/default.nix @@ -41,8 +41,8 @@ in { extraPackages = with pkgs; [ intel-ocl intel-compute-runtime + intel-graphics-compiler opencl-clhpp - opencl-clang opencl-headers ocl-icd ]; diff --git a/nixos/modules/networking/default.nix b/nixos/modules/networking/default.nix index 5a46d2c..94bb711 100644 --- a/nixos/modules/networking/default.nix +++ b/nixos/modules/networking/default.nix @@ -2,5 +2,6 @@ imports = [ ./networkmanager ./openconnect-sso + ./openvpn ]; } diff --git a/nixos/modules/networking/openvpn/default.nix b/nixos/modules/networking/openvpn/default.nix new file mode 100644 index 0000000..f646537 --- /dev/null +++ b/nixos/modules/networking/openvpn/default.nix @@ -0,0 +1,14 @@ +{ config, lib, ... }: + +let + cfg = config.sisyphus.networking.openvpn; +in { + options.sisyphus.networking.openvpn.enable = lib.mkEnableOption "OpenVPN client"; + + config = lib.mkIf cfg.enable { + programs.openvpn3.enable = true; + + # https://github.com/NixOS/nixpkgs/issues/379074 + services.resolved.enable = true; + }; +} diff --git a/nixos/modules/programs/default.nix b/nixos/modules/programs/default.nix index fd61ea8..5f672a8 100644 --- a/nixos/modules/programs/default.nix +++ b/nixos/modules/programs/default.nix @@ -5,5 +5,6 @@ ./sops ./spotify-adblock ./ssh + ./wireshark ]; } diff --git a/nixos/modules/programs/wireshark/default.nix b/nixos/modules/programs/wireshark/default.nix new file mode 100644 index 0000000..04945fe --- /dev/null +++ b/nixos/modules/programs/wireshark/default.nix @@ -0,0 +1,23 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.sisyphus.programs.wireshark; +in { + options.sisyphus.programs.wireshark.enable = lib.mkEnableOption "Wireshark"; + + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + wireshark + ]; + + programs.wireshark = { + enable = true; + dumpcap.enable = true; + usbmon.enable = false; + }; + + sisyphus.users.wantedGroups = [ + "wireshark" + ]; + }; +} diff --git a/nixos/modules/services/openrgb/default.nix b/nixos/modules/services/openrgb/default.nix index ae4fc51..15d1564 100644 --- a/nixos/modules/services/openrgb/default.nix +++ b/nixos/modules/services/openrgb/default.nix @@ -6,18 +6,24 @@ in { options.sisyphus.services.openrgb.enable = lib.mkEnableOption "OpenRGB"; config = lib.mkIf cfg.enable { - services.udev.packages = with pkgs; [ - openrgb - ]; - boot.kernelModules = [ "i2c-dev" ]; + environment.systemPackages = with pkgs; [ + openrgb-with-all-plugins + ]; + hardware.i2c.enable = true; - services.hardware.openrgb = { - enable = true; - package = pkgs.openrgb-with-all-plugins; - motherboard = "intel"; + services = { + hardware.openrgb = { + enable = true; + package = pkgs.openrgb-with-all-plugins; + motherboard = "intel"; + }; + + udev.packages = with pkgs; [ + openrgb + ]; }; }; } diff --git a/nixos/users/tdpeuter/default.nix b/nixos/users/tdpeuter/default.nix index 353a1d4..1351a66 100644 --- a/nixos/users/tdpeuter/default.nix +++ b/nixos/users/tdpeuter/default.nix @@ -1,4 +1,4 @@ -{ config, inputs, lib, pkgs, pkgs-unstable, ... }: +{ config, lib, pkgs, pkgs-unstable, ... }: let cfg = config.sisyphus.users.tdpeuter; @@ -46,9 +46,10 @@ in { gh # GitHub CLI tool glow # Terminal Markdown renderer icosystem # Personal icon theme - jellyfin-media-player + #jellyfin-media-player libreoffice-fresh # Office tools librewolf # Internet browser + logseq # Note taking mpv # Media player nextcloud-client nsxiv # Lightweight image viewer @@ -73,10 +74,7 @@ in { # TODO Move to devshells # ruff pylint # Python ]) ++ (with pkgs-unstable; [ - logseq # Note taking - ]) ++ [ - inputs.zen-browser.packages.${pkgs.system}.default - ]; + ]); }; fonts.packages = with pkgs; [ @@ -87,9 +85,8 @@ in { noto-fonts # Dependency of Zellij config noto-fonts-cjk-sans # Dependency of Zellij config noto-fonts-cjk-serif # Dependency of Zellij config - noto-fonts-emoji noto-fonts-color-emoji # Emoji's! - vistafonts # Microsoft fonts + vista-fonts # Microsoft fonts ]; sisyphus = { diff --git a/nixos/users/tdpeuter/dotfiles.nix b/nixos/users/tdpeuter/dotfiles.nix index aca5ba8..57d5e16 100644 --- a/nixos/users/tdpeuter/dotfiles.nix +++ b/nixos/users/tdpeuter/dotfiles.nix @@ -37,6 +37,12 @@ in { recursive = true; source = ../../../stow/hyprland/.config/hypr; }; + ".config/hypr/hy3-plugin.conf" = { + inherit (config.sisyphus.desktop.hyprland) enable; + text = '' + plugin = ${pkgs.hyprlandPlugins.hy3}/lib/libhy3.so + ''; + }; ".config/kitty" = { enable = false; recursive = true; diff --git a/scripts/sunset.sh b/scripts/sunset.sh deleted file mode 100755 index f185115..0000000 --- a/scripts/sunset.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env bash -# Script to disable for an hour or immediately continue wlsunset. 'Toggle' - -# Check if wlsunset is still running -pid=$(pgrep wlsunset) - -if [[ -z ${pid} ]] ; then - # Start wlsunset right away. - wlsunset -l 50.50 -L 4.00 -t 3000 -T 6500 & -else - # Currently stop wlsunset but restart in an hour. - kill ${pid} - notify-send 'Stopping sunset' 'Restarting in an hour' - at now +1 hours -f "${0}" -fi diff --git a/scripts/toggle-nightlight.sh b/scripts/toggle-nightlight.sh new file mode 100755 index 0000000..b4902b0 --- /dev/null +++ b/scripts/toggle-nightlight.sh @@ -0,0 +1,52 @@ +#!/usr/bin/env bash +# Script to disable for an hour or immediately continue wlsunset. 'Toggle' + +# Queue for at, check man page for options +ATQUEUE='T' + +# Get current state +pid=$(pgrep wlsunset) + +while getopts ":g" option; do + case "${option}" in + g) + if [[ -z "${pid}" ]]; then + state='active' + tooltip='Turn off nightlight' + class='activated' + else + state='inactive' + tooltip='Turn on nightlight' + class='none' + fi +printf '{"alt": "%s", "tooltip": "%s", "class": "%s" }' \ + "${state}" "${tooltip}" "${class}" + exit 0 + ;; + *) + echo 'Invalid option' + exit 1 + ;; + esac +done + +# Toggle +if [[ -z ${pid} ]] ; then + # Clear queue + for job in $(at -l -q "${ATQUEUE}" | cut -f1); do + at -r "${job}" + done + + if [ "$( command -v wlsunset )" ]; then + notify-send 'Starting nightlight' + wlsunset -l 50.50 -L 4.00 -t 3000 -T 6500 & + else + notify-send 'Nightlight is not available' + exit 1 + fi +else + # Currently stop wlsunset but restart in an hour. + kill ${pid} + notify-send 'Stopping nightlight' 'Restarting in an hour' + at now +1 hours -f "${0}" -q "${ATQUEUE}" +fi diff --git a/stow/hyprland/.config/hypr/hy3.conf b/stow/hyprland/.config/hypr/hy3.conf index 7d3e999..6cd7c06 100644 --- a/stow/hyprland/.config/hypr/hy3.conf +++ b/stow/hyprland/.config/hypr/hy3.conf @@ -1,6 +1,9 @@ +# +# ~/.config/hypr/hy3.conf +# -# TODO Do not hardcode this path -plugin = /nix/store/afivj8v5kfdsadxs4pa45vh0y65s3ajm-hy3-hl0.49.0/lib/libhy3.so +# Load the plugin. File should contain `plugin = /path/to/lib/libhy3.so` +source = /home/tdpeuter/.config/hypr/hy3-plugin.conf general:layout = hy3 diff --git a/stow/hyprland/.config/hypr/hyprland.conf b/stow/hyprland/.config/hypr/hyprland.conf index 6dc3b6b..1ccbc2e 100644 --- a/stow/hyprland/.config/hypr/hyprland.conf +++ b/stow/hyprland/.config/hypr/hyprland.conf @@ -85,9 +85,6 @@ animations { } gestures { - workspace_swipe = true - workspace_swipe_fingers = 3 - workspace_swipe_min_fingers = false workspace_swipe_distance = 300 workspace_swipe_invert = true workspace_swipe_min_speed_to_force = 30 @@ -103,6 +100,12 @@ gestures { workspace_swipe_forever = true workspace_swipe_use_r = false + + # hyprlang if !HYPRLAND_V_0_53 + workspace_swipe = true + workspace_swipe_fingers = 3 + workspace_swipe_min_fingers = false + # hyprlang endif } group { @@ -258,6 +261,10 @@ env = XCURSOR_SIZE,24 # SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5 $flag = MOD4 +$LMB = mouse:272 +$RMB = mouse:273 +$MMB = mouse:274 + $left = h $down = j $up = k diff --git a/stow/hyprland/.config/hypr/keybinds.conf b/stow/hyprland/.config/hypr/keybinds.conf index 1a4f1e1..f628da6 100644 --- a/stow/hyprland/.config/hypr/keybinds.conf +++ b/stow/hyprland/.config/hypr/keybinds.conf @@ -56,6 +56,10 @@ bind = $flag+Shift, s, settiled bind = $flag, F11, fullscreen, 1 bind = $flag+Shift, F11, fullscreen, 0 +bindm = $flag, $LMB, movewindow +bindm = $flag, $RMB, resizewindow +bindc = $flag, $LMB, togglefloating + # Workspaces $ws1 = 1 diff --git a/stow/hyprland/.config/hypr/modes.conf b/stow/hyprland/.config/hypr/modes.conf index 61bbbf0..4e11c56 100644 --- a/stow/hyprland/.config/hypr/modes.conf +++ b/stow/hyprland/.config/hypr/modes.conf @@ -1,3 +1,62 @@ +# Resizing +$mode_resize = Resize +bind = $flag, R, submap, $mode_resize +submap = $mode_resize + +bind = , F, togglefloating + +binde = , $right, resizeactive, 10 0 +binde = , $up, resizeactive, 0 -10 +binde = , $left, resizeactive, -10 0 +binde = , $down, resizeactive, 0 10 + +binde = , Right , resizeactive, 10 0 +binde = , Up, resizeactive, 0 -10 +binde = , Left, resizeactive, -10 0 +binde = , Down, resizeactive, 0 10 + +binde = Shift, $right, resizeactive, 50 0 +binde = Shift, $up, resizeactive, 0 -50 +binde = Shift, $left, resizeactive, -50 0 +binde = Shift, $down, resizeactive, 0 50 + +binde = Shift, Right, resizeactive, 50 0 +binde = Shift, Up, resizeactive, 0 -50 +binde = Shift, Left, resizeactive, -50 0 +binde = Shift, Down, resizeactive, 0 50 + +binde = $flag, $right, moveactive, 10 0 +binde = $flag, $up, moveactive, 0 -10 +binde = $flag, $left, moveactive, -10 0 +binde = $flag, $down, moveactive, 0 10 + +binde = $flag, Right, moveactive, 10 0 +binde = $flag, Up, moveactive, 0 -10 +binde = $flag, Left, moveactive, -10 0 +binde = $flag, Down, moveactive, 0 10 + +binde = $flag+Shift, $right, moveactive, 50 0 +binde = $flag+Shift, $up, moveactive, 0 -50 +binde = $flag+Shift, $left, moveactive, -50 0 +binde = $flag+Shift, $down, moveactive, 0 50 + +binde = $flag+Shift, Right , moveactive, 50 0 +binde = $flag+Shift, Up, moveactive, 0 -50 +binde = $flag+Shift, Left, moveactive, -50 0 +binde = $flag+Shift, Down, moveactive, 0 50 + + +# hyprlang if HYPRLAND_V_0_53 +#gesture = 3, swipe, move +#gesture = 4, swipe, resize +# hyprlang endif + +bind = $flag, R, submap, reset +bind = , Escape, submap, reset +bind = , Return, submap, reset + +submap = reset + # System actions $mode_system = System (l)ock, (s)leep, (h)ibernate, (r)eboot, (Shift+s)hutdown bind = Ctrl+Alt, Delete, submap, $mode_system @@ -36,3 +95,11 @@ bind = , Return, submap, reset submap = reset +# Ignore (all) keybinds. Useful when working with Virtual Machines. +$mode_ignore=Ignore keybinds - Press Control+Alt+Insert to escape. +bind = Ctrl+Alt, Insert, submap, $mode_ignore +submap = $mode_ignore + +bind = Ctrl+Alt, Insert, submap, reset + +submap = reset diff --git a/stow/vim/.vimrc b/stow/vim/.vimrc index 379ddb4..bd87fe5 100644 --- a/stow/vim/.vimrc +++ b/stow/vim/.vimrc @@ -25,8 +25,7 @@ set smarttab set tabstop=4 set title set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx -"" Show suggestions on another line instead of inplace -set wildmenu +set wildmenu "" Show suggestions on another line instead of inplace syntax enable diff --git a/stow/waybar/.config/waybar/config.jsonc b/stow/waybar/.config/waybar/config.jsonc index ff861e3..a83d47c 100644 --- a/stow/waybar/.config/waybar/config.jsonc +++ b/stow/waybar/.config/waybar/config.jsonc @@ -51,6 +51,7 @@ "privacy", "tray", "group/control-center", + "group/display", "group/network", "pulseaudio", "group/power", diff --git a/stow/waybar/.config/waybar/modules.json b/stow/waybar/.config/waybar/modules.json index 6cec15d..683d70b 100644 --- a/stow/waybar/.config/waybar/modules.json +++ b/stow/waybar/.config/waybar/modules.json @@ -1,4 +1,15 @@ { + "backlight": { + "device": "intel_backlight", + "format": "{percent}% {icon}", + "format-icons": [ + "\uf111", /*  */ + "\uf185" /*  */ + ], + "on-click": "brightnessctl -sq set 0", + "on-click-right": "wl-mirror $(hyprctl monitors -j | jq --raw-output '.[] | select(.focused) | .name')" + }, + "battery": { "format": "{capacity}% {icon}", "format-alt": "{time} {icon}", @@ -71,6 +82,12 @@ "tooltip": false }, + "custom/display": { + "format": "\ue163", /*  */ + "tooltip": false, + "on-click": "wdisplays" + }, + "custom/meta": { "format": "\uf17c", /*  */ "tooltip": false, @@ -134,6 +151,19 @@ "tooltip": true }, + "custom/toggle-nightlight": { + "exec": "bash ${SCRIPT_DIR}/toggle-nightlight.sh -g", + "interval": 60, + "return-type": "json", + "on-click": "bash ${SCRIPT_DIR}/toggle-nightlight.sh", + "format": "{icon}", + "format-icons": { + "active": "\uf186", /*  */ + "inactive": "\uf0eb" /*  */ + }, + "tooltip": true + }, + "custom/toggle-notifications": { "exec": "bash ${SCRIPT_DIR}/toggle-notifications.sh -g", "interval": 60, @@ -163,12 +193,31 @@ "group/control-center": { "orientation": "inherit", "modules": [ + /* Preview */ "custom/control-center", + /* Left-most */ "group/language", - /* "hyprland/language", "sway/language", */ - "custom/toggle-notifications", + "custom/toggle-notifications" + /* Right-most */ + ], + "drawer": { + "transition-duration": 500, + "transition-left-to-right": false, + "children-class": "drawer-child" + } + }, + + "group/display": { + "orientation": "inherit", + "modules": [ + /* Preview */ + "custom/display", + /* Most-left */ + "idle_inhibitor", + "custom/toggle-nightlight", "custom/toggle-light-dark", - "bluetooth" + "backlight" + /* Most-right */ ], "drawer": { "transition-duration": 500, @@ -199,6 +248,7 @@ /* Preview */ "network", /* Most-left */ + "bluetooth", "custom/toggle-tailscale" /* Most-right */ ], @@ -220,8 +270,7 @@ "custom/system-hibernate", "custom/system-sleep", "custom/system-lock", - "power-profiles-daemon", - "idle_inhibitor" + "power-profiles-daemon" /* Most-right */ ], "drawer": { diff --git a/stow/waybar/.config/waybar/style.css b/stow/waybar/.config/waybar/style.css index ecc08fc..39880dd 100644 --- a/stow/waybar/.config/waybar/style.css +++ b/stow/waybar/.config/waybar/style.css @@ -82,12 +82,13 @@ window#waybar { #privacy, #privacy-item, #privacy-item.screenshare, -#privacy-item.audio-in { +#privacy-item.audio-in, +#privacy-item.audio-out { background-color: @safety; } -#privacy-item.screenshare { - background-color: #000000; +#privacy-item { + padding: 0; } #pulseaudio.muted {