From aeb8f52d6dbf5533d1c21b7984e9087d7cfa9f2d Mon Sep 17 00:00:00 2001 From: Tibo De Peuter Date: Sun, 10 Nov 2024 20:18:46 +0100 Subject: [PATCH] Sync --- colors.sh | 96 ++++++++++++++ nixos/flake.lock | 127 ++++++------------ nixos/flake.nix | 8 +- nixos/hosts/Tibo-NixFat/default.nix | 10 +- nixos/modules/desktop/sway/default.nix | 13 +- nixos/modules/hardware/yubikey/default.nix | 12 +- nixos/secrets/HomeLab.yaml | 6 +- nixos/shells/c/default.nix | 30 +++++ nixos/shells/java/default.nix | 26 ++++ nixos/shells/latex/default.nix | 24 ++++ nixos/users/tdpeuter/default.nix | 8 ++ nixos/users/tdpeuter/dotfiles.nix | 23 +++- nixos/users/tdpeuter/secrets.nix | 1 + scripts/toggle-light-dark.sh | 17 ++- stow/ssh/.ssh/config | 6 + stow/sway/.config/sway/modes | 69 +++++----- stow/waybar/.config/waybar/config | 8 +- stow/waybar/.config/waybar/left.json | 7 +- stow/waybar/.config/waybar/modern.css | 80 ++++++++++++ stow/waybar/.config/waybar/modules.json | 144 +++++++++++---------- stow/waybar/.config/waybar/style-dark.css | 10 ++ stow/waybar/.config/waybar/style-light.css | 10 ++ stow/waybar/.config/waybar/style.css | 138 +++++++++----------- 23 files changed, 569 insertions(+), 304 deletions(-) create mode 100644 nixos/shells/c/default.nix create mode 100644 nixos/shells/java/default.nix create mode 100644 nixos/shells/latex/default.nix create mode 100644 stow/waybar/.config/waybar/modern.css create mode 100644 stow/waybar/.config/waybar/style-dark.css create mode 100644 stow/waybar/.config/waybar/style-light.css diff --git a/colors.sh b/colors.sh index d7ccfdc..1b71fdb 100644 --- a/colors.sh +++ b/colors.sh @@ -79,3 +79,99 @@ printf "\033]4;14;#74C7EC\007" # FFFFFF # White 15 printf "\033]4;15;#FFFFFF\007" + +# NEW COLORS 20241101 +# +# Nr # R G B H S B # Name +# FG # 250 250 250 0 0 98 # Daisy (White) +printf "\033]10;#FAFAFA\007" +# BG # 19 19 19 0 0 7 # - +printf "\033]11;#131313\007" + +# Regular colors (0-7) + +# Nr # R G B H S B # Name +# 0 # 61 61 61 0 0 24 # - (Black) +printf "\033]4;0;#3D3D3D\007" +# 1 # 186 19 61 345 90 73 # - (Red) +printf "\033]4;1;#BA133D\007" +# 2 # 61 186 19 105 90 73 # - (Green) +printf "\033]4;2;#3DBA13\007" +# 3 # 186 144 19 45 90 73 # - (Yellow) +printf "\033]4;3;#BA9013\007" +# 4 # 19 61 186 225 90 73 # - (Blue) +printf "\033]4;4;#133DBA\007" +# 5 # 144 19 186 285 90 73 # - (Magenta) +printf "\033]4;5;#9013BA\007" +# 6 # 19 186 144 165 90 73 # - (Cyan) +printf "\033]4;6;#13BA90\007" +# 7 # 186 186 186 0 0 73 # - (White) +printf "\033]4;7;#BABABA\007" + +# Bright colors (8-15) + +# Nr # R G B H S B # Name +# 8 # 122 122 122 0 0 48 # - (Black) +printf "\033]4;8;#363636\007" +# 9 # 250 25 81 345 90 98 # - (Red) +printf "\033]4;9;#FA1951\007" +# 10 # 81 250 25 105 90 98 # - (Green) +printf "\033]4;10;#51FA19\007" +# 11 # 250 194 25 45 90 98 # - (Yellow) +printf "\033]4;11;#FAC219\007" +# 12 # 25 81 250 225 90 98 # - (Blue) +printf "\033]4;12;#1951FA\007" +# 13 # 194 25 250 285 90 98 # - (Magenta) +printf "\033]4;13;#C219FA\007" +# 14 # 25 259 194 165 90 98 # - (Cyan) +printf "\033]4;14;#19FAC2\007" +# 15 # 250 250 250 0 0 98 # - (White) +printf "\033]4;15;#FAFAFA\007" + +# BRIGHTER +# +# Nr # R G B H S B # Name +# FG # 250 250 250 0 0 98 # Daisy (White) +printf "\033]11;#FAFAFA\007" +# BG # 19 19 19 0 0 7 # - +printf "\033]10;#131313\007" + +# Regular colors (0-7) + +# Nr # R G B H S B # Name +# 0 # 61 61 61 0 0 24 # - (Black) +printf "\033]4;0;#3D3D3D\007" +# 1 # 186 19 61 345 90 73 # - (Red) +printf "\033]4;1;#E62E4D\007" +# 2 # 61 186 19 105 90 73 # - (Green) +printf "\033]4;2;#4DE62E\007" +# 3 # 186 144 19 45 90 73 # - (Yellow) +printf "\033]4;3;#E6C72E\007" +# 4 # 19 61 186 225 90 73 # - (Blue) +printf "\033]4;4;#2E4CE6\007" +# 5 # 144 19 186 285 90 73 # - (Magenta) +printf "\033]4;5;#C52DE3\007" +# 6 # 19 186 144 165 90 73 # - (Cyan) +printf "\033]4;6;#2EE6C7\007" +# 7 # 186 186 186 0 0 73 # - (White) +printf "\033]4;7;#BABABA\007" + +# Bright colors (8-15) + +# Nr # R G B H S B # Name +# 8 # 122 122 122 0 0 48 # - (Black) +printf "\033]4;8;#7A7A7A\007" +# 9 # 250 25 81 345 90 98 # - (Red) +printf "\033]4;9;#FF002B\007" +# 10 # 81 250 25 105 90 98 # - (Green) +printf "\033]4;10;#2BFF00\007" +# 11 # 250 194 25 45 90 98 # - (Yellow) +printf "\033]4;11;#FFd500\007" +# 12 # 25 81 250 225 90 98 # - (Blue) +printf "\033]4;12;#002AFF\007" +# 13 # 194 25 250 285 90 98 # - (Magenta) +printf "\033]4;13;#D400FF\007" +# 14 # 25 259 194 165 90 98 # - (Cyan) +printf "\033]4;14;#00FFC0\007" +# 15 # 250 250 250 0 0 98 # - (White) +printf "\033]4;15;#FAFAFA\007" diff --git a/nixos/flake.lock b/nixos/flake.lock index 91147eb..1a1cf80 100644 --- a/nixos/flake.lock +++ b/nixos/flake.lock @@ -1,54 +1,15 @@ { "nodes": { - "devshell": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1713532798, - "narHash": "sha256-wtBhsdMJA3Wa32Wtm1eeo84GejtI43pMrFrmwLXrsEc=", - "owner": "numtide", - "repo": "devshell", - "rev": "12e914740a25ea1891ec619bb53cf5e6ca922e40", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "devshell", - "type": "github" - } - }, "flake-utils": { "inputs": { "systems": "systems" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1726560853, + "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { - "inputs": { - "systems": "systems_2" - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "type": "github" }, "original": { @@ -64,11 +25,11 @@ ] }, "locked": { - "lastModified": 1716736833, - "narHash": "sha256-rNObca6dm7Qs524O4st8VJH6pZ/Xe1gxl+Rx6mcWYo0=", + "lastModified": 1726989464, + "narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=", "owner": "nix-community", "repo": "home-manager", - "rev": "a631666f5ec18271e86a5cde998cba68c33d9ac6", + "rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176", "type": "github" }, "original": { @@ -86,11 +47,11 @@ ] }, "locked": { - "lastModified": 1701208414, - "narHash": "sha256-xrQ0FyhwTZK6BwKhahIkUVZhMNk21IEI1nUcWSONtpo=", + "lastModified": 1720066371, + "narHash": "sha256-uPlLYH2S0ACj0IcgaK9Lsf4spmJoGejR9DotXiXSBZQ=", "owner": "nix-community", "repo": "nix-github-actions", - "rev": "93e39cc1a087d65bcf7a132e75a650c44dd2b734", + "rev": "622f829f5fe69310a866c8a6cd07e747c44ef820", "type": "github" }, "original": { @@ -101,11 +62,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1717144377, - "narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=", + "lastModified": 1730883749, + "narHash": "sha256-mwrFF0vElHJP8X3pFCByJR365Q2463ATp2qGIrDUdlE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "805a384895c696f802a9bf5bf4720f37385df547", + "rev": "dba414932936fde69f0606b4f1d87c5bc0003ede", "type": "github" }, "original": { @@ -116,27 +77,27 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1717265169, - "narHash": "sha256-IITcGd6xpNoyq9SZBigCkv4+qMHSqot0RDPR4xsZ2CA=", + "lastModified": 1730602179, + "narHash": "sha256-efgLzQAWSzJuCLiCaQUCDu4NudNlHdg2NzGLX5GYaEY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3b1b4895b2c5f9f5544d02132896aeb9ceea77bc", + "rev": "3c2f1c4ca372622cb2f9de8016c9a0b1cbd0f37c", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.11", + "ref": "release-24.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1716948383, - "narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=", + "lastModified": 1730785428, + "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ad57eef4ef0659193044870c731987a6df5cf56b", + "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", "type": "github" }, "original": { @@ -155,15 +116,15 @@ "nixpkgs" ], "poetry2nix": "poetry2nix", - "systems": "systems_3", + "systems": "systems_2", "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1701455376, - "narHash": "sha256-FMLrMdi6JY7ZfqV5XnNj64jnDcGKznKZLn7O6OMO3u0=", + "lastModified": 1724283233, + "narHash": "sha256-XMPn6YHwFOJCGLE9M5F3AEFKA0u+maf8CpIEWmvaQTQ=", "owner": "ThinkChaos", "repo": "openconnect-sso", - "rev": "20c0015c4264c72cc19ac272de0dc534309bd21b", + "rev": "94f1ddfef1662d56ede0a093bcfc3d23156bc1a1", "type": "github" }, "original": { @@ -197,11 +158,11 @@ ] }, "locked": { - "lastModified": 1701105783, - "narHash": "sha256-5IOI0xXGbhAkUZNNcPId48V78Q+/JlW0hzlif0zxRmM=", + "lastModified": 1721039874, + "narHash": "sha256-XANsG9GYHip8pxZpbqKf/YGv8tIa0xTh289Y+WNBNfw=", "owner": "nix-community", "repo": "poetry2nix", - "rev": "0b2bff39e9bd4e6db3208e09c276ca83a063b370", + "rev": "d11c01e58587e5f21037ed6477465a7f26a32e27", "type": "github" }, "original": { @@ -212,8 +173,7 @@ }, "root": { "inputs": { - "devshell": "devshell", - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils", "home-manager": "home-manager", "nixpkgs": "nixpkgs", "nixpkgs-unstable": "nixpkgs-unstable", @@ -230,11 +190,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1717297459, - "narHash": "sha256-cZC2f68w5UrJ1f+2NWGV9Gx0dEYmxwomWN2B0lx0QRA=", + "lastModified": 1730883027, + "narHash": "sha256-pvXMOJIqRW0trsW+FzRMl6d5PbsM4rWfD5lcKCOrrwI=", "owner": "Mic92", "repo": "sops-nix", - "rev": "ab2a43b0d21d1d37d4d5726a892f714eaeb4b075", + "rev": "c5ae1e214ff935f2d3593187a131becb289ea639", "type": "github" }, "original": { @@ -273,21 +233,6 @@ "type": "github" } }, - "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "treefmt-nix": { "inputs": { "nixpkgs": [ @@ -296,11 +241,11 @@ ] }, "locked": { - "lastModified": 1699786194, - "narHash": "sha256-3h3EH1FXQkIeAuzaWB+nK0XK54uSD46pp+dMD3gAcB4=", + "lastModified": 1721769617, + "narHash": "sha256-6Pqa0bi5nV74IZcENKYRToRNM5obo1EQ+3ihtunJ014=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "e82f32aa7f06bbbd56d7b12186d555223dc399d1", + "rev": "8db8970be1fb8be9c845af7ebec53b699fe7e009", "type": "github" }, "original": { @@ -316,11 +261,11 @@ ] }, "locked": { - "lastModified": 1715533576, - "narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=", + "lastModified": 1722363685, + "narHash": "sha256-XCf2PIAT6lH7BwytgioPmVf/wkzXjSKScC4KzcZgb64=", "owner": "gytis-ivaskevicius", "repo": "flake-utils-plus", - "rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f", + "rev": "6b10f51ff73a66bb29f3bc8151a59d217713f496", "type": "github" }, "original": { diff --git a/nixos/flake.nix b/nixos/flake.nix index cda9173..8c51697 100644 --- a/nixos/flake.nix +++ b/nixos/flake.nix @@ -5,17 +5,13 @@ nixpkgs.url = "nixpkgs/nixos-24.05"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; - devshell = { - url = "github:numtide/devshell"; - inputs.nixpkgs.follows = "nixpkgs"; - }; flake-utils.url = "github:numtide/flake-utils"; home-manager = { url = "github:nix-community/home-manager/release-24.05"; inputs.nixpkgs.follows = "nixpkgs"; }; openconnect-sso = { - url = github:ThinkChaos/openconnect-sso/fix/nix-flake; + url = "github:ThinkChaos/openconnect-sso/fix/nix-flake"; inputs = { flake-utils.follows = "utils"; nixpkgs.follows = "nixpkgs"; @@ -33,7 +29,7 @@ outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, - devshell, flake-utils, home-manager, openconnect-sso, sops-nix, utils, + flake-utils, home-manager, openconnect-sso, sops-nix, utils, ... }: let system = "x86_64-linux"; diff --git a/nixos/hosts/Tibo-NixFat/default.nix b/nixos/hosts/Tibo-NixFat/default.nix index 6f0e53c..e295e2e 100644 --- a/nixos/hosts/Tibo-NixFat/default.nix +++ b/nixos/hosts/Tibo-NixFat/default.nix @@ -19,7 +19,7 @@ networking = { networkmanager.enable = true; - # openconnect-sso.enable = true; + openconnect-sso.enable = true; }; nix = { @@ -80,6 +80,7 @@ programs = { zsh.enable = true; + steam.enable = true; }; hardware.bluetooth = { @@ -87,7 +88,10 @@ powerOnBoot = false; }; - networking.hostName = "Tibo-NixFat"; + networking = { + hostName = "Tibo-NixFat"; + networkmanager.wifi.powersave = true; + }; services = { # Handle the laptop lid switch as follows: @@ -105,6 +109,8 @@ # Touchpad libinput.enable = true; + + thermald.enable = true; }; system.stateVersion = "24.05"; diff --git a/nixos/modules/desktop/sway/default.nix b/nixos/modules/desktop/sway/default.nix index bab109b..15d3087 100644 --- a/nixos/modules/desktop/sway/default.nix +++ b/nixos/modules/desktop/sway/default.nix @@ -108,6 +108,8 @@ in { source-han-serif-japanese ]; + hardware.opengl.enable = true; + security.polkit.enable = true; services = { @@ -142,9 +144,14 @@ in { extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; }; - programs.sway = { - enable = true; - wrapperFeatures.gtk = true; + programs = { + sway = { + enable = true; + package = pkgs.swayfx; + wrapperFeatures.gtk = true; + }; + + waybar.enable = true; }; sisyphus.users.wantedGroups = [ diff --git a/nixos/modules/hardware/yubikey/default.nix b/nixos/modules/hardware/yubikey/default.nix index 708b9c1..2134c87 100644 --- a/nixos/modules/hardware/yubikey/default.nix +++ b/nixos/modules/hardware/yubikey/default.nix @@ -25,11 +25,17 @@ in { ]; # Send a notification if the YubiKey is waiting for touch. - systemd.user.services.yubikey-touch-detector = { + systemd.services.yubikey-touch-detector = { enable = true; description = "Detects when your YubiKey is waiting for a touch"; - path = with pkgs; [ yubikey-touch-detector ]; - script = ''exec yubikey-touch-detector --notify''; + path = with pkgs; [ + gnupg + yubikey-touch-detector + ]; + wantedBy = [ + "graphical-session.target" + ]; + script = ''exec yubikey-touch-detector --libnotify''; environment.YUBIKEY_TOUCH_DETECTOR_LIBNOTIFY = "true"; }; }; diff --git a/nixos/secrets/HomeLab.yaml b/nixos/secrets/HomeLab.yaml index 9678afb..f749611 100644 --- a/nixos/secrets/HomeLab.yaml +++ b/nixos/secrets/HomeLab.yaml @@ -1,4 +1,6 @@ HomeLab: + Gitea: + ssh: ENC[AES256_GCM,data:+H9qhfOg5WlTB7pihvbJ9omY/zLTAADe8KzI4fbdZ7NuaM0auC95AIQqhwNNCZNglg9UGOVL662pY7dNhbQ/2iCLPHSPgFFXf3fx1moRRcYYQzoJxsgxp19FZQeGNJ0qfRf72xYbZQZKslyHQmcqDieoVTyhaLqTfgC8MQ/UZofw/ortmgME7z51rGV5sXXMjxpJpHz9JxiPwQEL0ABWDAeCqBVBzlqqwdmfKEdkcR4l3USHfH1iNF5XQ5V26I+UGDOyoixt1c/BXzD9xzKI7MUDoRz+qfC6C62LIlEgqZY5tWg+tVZnqobakxwH6d8pXtQ7vaIREEP0LqQMkrNcK8X+cDRteToQ1fcxtN1V+JfZSa9pVC+iGgvmSZ00q4bnOgTmgO9IZ80TvOR4bHpRhjM5l4JMbLBv2jqY1zeUx/5L3WNuYIm9sL5mWXkV/RAD8WCemNSWdKbGsvByEUeiFcxczL/vQ6y3fi+ntmXUgeXVy5zVNkNlYbqd+DemBmwZQb9D1T5T97i2ChciYb3/ON1NObja/bt0PTQa,iv:hIbwsPcDSfgDItlvFFy0vCjuQWvgoQHBH60v8nTVTNg=,tag:1T/TdTEy98TfgMzYAxfHKA==,type:str] Hugo: ssh: ENC[AES256_GCM,data:Tfuba25e4hJ8Ovl1IdVtDvg0L0sCc9sYTXstRg89IAUzwv/1u8mxdj9ka6ZKaSQr2QUaNWs0BoPV36O4bI2hTwoqhUarhXXZNnJKHtd8xBu/+kfMSOMGa5qD9V9m3L5OFdt+gdwhJxemeQNkvN0Vhsu4DJFPZRPmGflJ2HVRYaRW4AsI+JPqiWSEeKz40f3PQPJ2h26gF+pADmPwtEfcUGZdGnJXUsiYMC0aBEWWxyAgBgj5W+Nbe+OCopEX1qyRcR8qO+LONjuC0b5hcGeOXjWj/d1FnBfxDHeoxRGhNCo8TUk0ap1mpSAttdr55/C51duQfeV09Iow4nzUR2H0jmzojUAjKXXCkBsK6yjIKxW+4+4OKCC9ERz5mDmu5Z+4aFM7CpSquCAnDVFw1Uq9MJqAnSz6AGh29J4LUwMnVNtf+gQwzGyl/C9wE/Svm0UAwP19h6hLcM1rp6bV4xjfSXNDspUkz4Xr3RdPpTI1PemtMZIq8fP64q0FlFZeV62ctl9hCtDVRDo3fG3FUM08fa0OfJpVYjSEAOfC,iv:T8z+P5++cES9Co9d/2tcU0PbxZZM/5x63tcxIjBeQ0I=,tag:AjsulFme64/xEPjgZQFtow==,type:str] Nextcloud: @@ -18,8 +20,8 @@ sops: aDNUbFlhWWVoOWpjVlV1VTVJejlSMjQK6wCeCRdHY5oyTX6/R1U5AOGJyp0exi1A dWPUMfkKBBBkrR+G6ougd8o3FwFf+yfb5RhaTxxqjit6p2RyMjR64w== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-10-19T12:24:34Z" - mac: ENC[AES256_GCM,data:Bh/vHdsFCzk+YaRcZe/Eiq4xfLSDX1tSV4Jg8lFgzPqXCBwCgohDREZ8LSZPuQtStIugzyRNyPcnWrZcDwDiaS9klM5sIxjeGIF7ZDS81sQnQVNRyX/m9vl6AgVtP9KHgOpJwGObzuvNBE7XnOZ3q03/ah1LXRowJUn63wB4Qxk=,iv:GVLQUjm0bMHusD0F8gJ5DlZvqdDHPsT0VwxLhHh9ozE=,tag:cffv8wKTQ9UYrCPx+3zTMw==,type:str] + lastmodified: "2024-10-20T07:58:57Z" + mac: ENC[AES256_GCM,data:mmFgjE7rp7fXmPOnETGamHR3kUAguFCNNTQcEnD+uM4xeSp3QcB2g8tkKYaJAjkWWqKRSm9/Iu1NWOr9GWyu4O1h7ppWSvpKawWki6cHpqBl8JOwbx/SZi5bzU1lBtoJyT6hD1aCu9ENOMUkpPY3rKcYwbsRMJpKYsbXymPikcQ=,iv:kPB6ds8c4yc/w7Ny1d3DTyztQF4yTr0NyKgIHEzIKAg=,tag:VTpXRb5HaWDjVB52K7mByw==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 diff --git a/nixos/shells/c/default.nix b/nixos/shells/c/default.nix new file mode 100644 index 0000000..09a7f1d --- /dev/null +++ b/nixos/shells/c/default.nix @@ -0,0 +1,30 @@ +{ + description = "C Flake"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, flake-utils, nixpkgs }: + flake-utils.lib.eachDefaultSystem (system: + let + lib = import lib; + pkgs = import nixpkgs { + inherit system; + config.allowUnfree = true; + }; + in { + devShells.default = pkgs.mkShell { + packages = with pkgs; [ + cmake + gcc + gnumake + valgrind + + # You might want to use your own IDE. + (jetbrains.plugins.addPlugins jetbrains.clion [ "github-copilot" ]) + ]; + }; + }); +} diff --git a/nixos/shells/java/default.nix b/nixos/shells/java/default.nix new file mode 100644 index 0000000..676c946 --- /dev/null +++ b/nixos/shells/java/default.nix @@ -0,0 +1,26 @@ +{ + description = "Java Flake"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + + outputs = { self, nixpkgs, flake-utils }: + flake-utils.lib.eachDefaultSystem + ( system: + let + pkgs = import nixpkgs { + inherit system; + config.allowUnfree = true; + }; + in { + devShells.default = pkgs.mkShell { + packages = with pkgs; [ + jdk8 + openjdk17 + + # You might want to use your own IDE. + (jetbrains.plugins.addPlugins jetbrains.idea-ultimate [ "github-copilot" ]) + ]; + }; + }); +} diff --git a/nixos/shells/latex/default.nix b/nixos/shells/latex/default.nix new file mode 100644 index 0000000..e2cb799 --- /dev/null +++ b/nixos/shells/latex/default.nix @@ -0,0 +1,24 @@ +{ + description = "LaTeX Flake"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + + outputs = { self, nixpkgs, flake-utils}: + flake-utils.lib.eachDefaultSystem + (system: + let + pkgs = import nixpkgs { + inherit system; + }; + in { + devShells.default = pkgs.mkShell { + packages = with pkgs; [ + texlive.combined.scheme-full + pgfplots + biber + ]; + }; + } + ); +} diff --git a/nixos/users/tdpeuter/default.nix b/nixos/users/tdpeuter/default.nix index 035bccf..899086f 100644 --- a/nixos/users/tdpeuter/default.nix +++ b/nixos/users/tdpeuter/default.nix @@ -136,6 +136,14 @@ in { cursorTheme = cursor; }; + services.syncthing = { + enable = true; + extraOptions = [ + "--no-default-folder" + ]; + tray.enable = true; + }; + xdg = { desktopEntries.spotify = { name = "Spotify"; diff --git a/nixos/users/tdpeuter/dotfiles.nix b/nixos/users/tdpeuter/dotfiles.nix index 9766b08..dd30c05 100644 --- a/nixos/users/tdpeuter/dotfiles.nix +++ b/nixos/users/tdpeuter/dotfiles.nix @@ -72,14 +72,14 @@ in { ".config/zellij" = { source = ../../../stow/zellij/.config/zellij; }; - ".oh-my-zsh" = { - enable = config.users.users.tdpeuter.shell == pkgs.zsh; - source = "${pkgs.oh-my-zsh}/share/oh-my-zsh"; + ".gnupg" = { + inherit (config.programs.gnupg.agent) enable; + source = ../../../stow/gnupg/.gnupg; recursive = true; - }; - ".oh-my-zsh/themes/tdpeuter.zsh-theme" = { - enable = config.users.users.tdpeuter.shell == pkgs.zsh; - source = ../../../stow/zsh/.oh-my-zsh/themes/tdpeuter.zsh-theme; +# onChange = '' +# chmod 700 /home/tdpeuter/.gnupg +# chmod 600 /home/tdpeuter/.gnupg/* +# ''; }; ".ssh/config" = lib.mkIf config.sisyphus.programs.ssh.enable { inherit (config.sisyphus.programs.ssh) enable; @@ -97,6 +97,15 @@ in { }; } (lib.mkIf (config.users.users.tdpeuter.shell == pkgs.zsh) { + ".oh-my-zsh" = { + enable = config.users.users.tdpeuter.shell == pkgs.zsh; + source = "${pkgs.oh-my-zsh}/share/oh-my-zsh"; + recursive = true; + }; + ".oh-my-zsh/themes/tdpeuter.zsh-theme" = { + enable = config.users.users.tdpeuter.shell == pkgs.zsh; + source = ../../../stow/zsh/.oh-my-zsh/themes/tdpeuter.zsh-theme; + }; ".zshrc" = { source = ../../../stow/zsh/.zshrc; }; diff --git a/nixos/users/tdpeuter/secrets.nix b/nixos/users/tdpeuter/secrets.nix index 75939f3..e37b277 100644 --- a/nixos/users/tdpeuter/secrets.nix +++ b/nixos/users/tdpeuter/secrets.nix @@ -32,6 +32,7 @@ in { "UGent/SubGit/ssh" = UGent; # HomeLab + "HomeLab/Gitea/ssh" = HomeLab; "HomeLab/Hugo/ssh" = HomeLab; "HomeLab/Nextcloud/ssh" = HomeLab; }); diff --git a/scripts/toggle-light-dark.sh b/scripts/toggle-light-dark.sh index ec38506..37817e6 100755 --- a/scripts/toggle-light-dark.sh +++ b/scripts/toggle-light-dark.sh @@ -30,6 +30,10 @@ declare -A wallpaper wallpaper[${THEME_LIGHT}]="bg-light" wallpaper[${THEME_DARK}]="bg-dark" +declare -A icon +icon[${THEME_LIGHT}]="\uf185" +icon[${THEME_DARK}]="\uf186" + ############# ### Logic ### ############# @@ -48,14 +52,14 @@ while getopts ":m:g" option; do fi ;; g) - previous_theme="$(cat ${STATE_FILE})" - if [ "${previous_theme}" == "${THEME_LIGHT}" ]; then + current_state="$(cat "${STATE_FILE}")" + next_state="${theme_next[${current_state}]}" + if [ "${current_state}" == "${THEME_DARK}" ]; then class="activated" - percentage=1 - else - percentage=0 + percentage=100 fi - printf '{ "class": "%s", "percentage": %d }' "${class}" "${percentage}" + printf '{"text": "%s", "alt": "%s", "tooltip": "Set theme to %s", "percentage": %d, "class": "%s"}' \ + "${icon[${next_state}]}" "${gsettings_alt[${next_state}]}" "${next_state}" "${percentage:=0}" "${class:="none"}" exit 0 ;; *) @@ -120,6 +124,7 @@ fi if [ "$(command -v swaybg)" ]; then bg_path="${BG_DIR}/${wallpaper[${theme}]}" /run/current-system/sw/bin/cp "${bg_path}" "${STATE_DIR}/bg" && swaymsg reload & + # pkill --signal 13 "waybar" & fi # Vifm diff --git a/stow/ssh/.ssh/config b/stow/ssh/.ssh/config index d3f6834..55c6397 100644 --- a/stow/ssh/.ssh/config +++ b/stow/ssh/.ssh/config @@ -31,6 +31,12 @@ Host subgit.ugent.be CanonicalizeHostname yes # Ignore capitalization # HomeLab +Host Gitea + User admin + HostName 192.168.0.24 + IdentitiesOnly yes + IdentityFile /run/secrets/HomeLab/Gitea/ssh + Host Hugo User admin HostName 192.168.0.11 diff --git a/stow/sway/.config/sway/modes b/stow/sway/.config/sway/modes index 074dab5..d62608f 100644 --- a/stow/sway/.config/sway/modes +++ b/stow/sway/.config/sway/modes @@ -7,40 +7,49 @@ set $default "default" # Resizing set $mode_resize "Resize" bindsym $flag+r mode $mode_resize -mode $mode_resize bindsym { - $right resize grow width 10 px or 10 ppt - $up resize grow height 10 px or 10 ppt - $left resize shrink width 10 px or 10 ppt - $down resize shrink height 10 px or 10 ppt +mode $mode_resize { + bindsym { + $right resize grow width 10 px or 10 ppt + $up resize grow height 10 px or 10 ppt + $left resize shrink width 10 px or 10 ppt + $down resize shrink height 10 px or 10 ppt - Right resize grow width 10 px or 10 ppt - Up resize grow height 10 px or 10 ppt - Left resize shrink width 10 px or 10 ppt - Down resize shrink height 10 px or 10 ppt + Right resize grow width 10 px or 10 ppt + Up resize grow height 10 px or 10 ppt + Left resize shrink width 10 px or 10 ppt + Down resize shrink height 10 px or 10 ppt - Shift+$right resize grow width 50 px or 50 ppt - Shift+$up resize grow height 50 px or 50 ppt - Shift+$left resize shrink width 50 px or 50 ppt - Shift+$down resize shrink height 50 px or 50 ppt + Shift+$right resize grow width 50 px or 50 ppt + Shift+$up resize grow height 50 px or 50 ppt + Shift+$left resize shrink width 50 px or 50 ppt + Shift+$down resize shrink height 50 px or 50 ppt - Shift+Right resize grow width 50 px or 50 ppt - Shift+Up resize grow height 50 px or 50 ppt - Shift+Left resize shrink width 50 px or 50 ppt - Shift+Down resize shrink height 50 px or 50 ppt + Shift+Right resize grow width 50 px or 50 ppt + Shift+Up resize grow height 50 px or 50 ppt + Shift+Left resize shrink width 50 px or 50 ppt + Shift+Down resize shrink height 50 px or 50 ppt - $flag+$right move right - $flag+$up move up - $flag+$left move left - $flag+$down move down + $flag+$right move right + $flag+$up move up + $flag+$left move left + $flag+$down move down - $flag+Right move right - $flag+Up move up - $flag+Left move left - $flag+Down move down + $flag+Right move right + $flag+Up move up + $flag+Left move left + $flag+Down move down - $flag+r mode $default - Escape mode $default - Return mode $default + $flag+r mode $default + Escape mode $default + Return mode $default + } + + bindgesture { + swipe:2:right resize grow width 10 px or 10 ppt + swipe:2:down resize grow height 10 px or 10 ppt + swipe:2:left resize shrink width 10 px or 10 ppt + swipe:2:up resize shrink height 10 px or 10 ppt + } } # System actions @@ -94,8 +103,8 @@ mode $mode_screenshot bindsym { set $mode_launcher "Launch (f)irefox, (s)potify or (t)hunderbird." bindsym $flag+o mode $mode_launcher mode $mode_launcher bindsym { - f exec firefox - t exec thunderbird + f exec firefox, mode $default + t exec thunderbird, mode $default $flag+o mode $default Escape mode $default diff --git a/stow/waybar/.config/waybar/config b/stow/waybar/.config/waybar/config index 3b1a053..93f4b60 100644 --- a/stow/waybar/.config/waybar/config +++ b/stow/waybar/.config/waybar/config @@ -19,9 +19,9 @@ "include": [ // Import modules (!) - "~/.config/waybar/modules.json", -// "~/.config/waybar/default.json" - "~/.config/waybar/left.json" + "./modules.json", +// "./default.json" + "./left.json" ], }, @@ -36,7 +36,7 @@ "include": [ // Import modules (!) - "~/.config/waybar/modules.json" + "./modules.json" ], }] diff --git a/stow/waybar/.config/waybar/left.json b/stow/waybar/.config/waybar/left.json index 8ab0639..86b9a00 100644 --- a/stow/waybar/.config/waybar/left.json +++ b/stow/waybar/.config/waybar/left.json @@ -2,16 +2,15 @@ "modules-left": [ "sway/workspaces", "custom/scratchpad-indicator", - "mpris", "group/system" ], "modules-right": [ - "group/hardware", + "tray", + "sway/language", "bluetooth", "network", "pulseaudio", "group/battery", - "custom/sep", - "tray" + "mpris" ] } diff --git a/stow/waybar/.config/waybar/modern.css b/stow/waybar/.config/waybar/modern.css new file mode 100644 index 0000000..35ce570 --- /dev/null +++ b/stow/waybar/.config/waybar/modern.css @@ -0,0 +1,80 @@ +@define-color foreground rgb(202, 202, 202); +@define-color background rgb( 3, 3, 3); + +@define-color highlight-background alpha(@foreground, 0.4); + +@define-color accent #00897b; +@define-color white #ecf0f1; +@define-color warning-red #eb4d4b; + +* { + font-family: letter, "Font Awesome 6 Free", font-awesome, monospace; + font-size: 13px; + font-weight: 600; +} + +window#waybar { + border: none; + color: @white; + + transition-property: background-color; + transition-duration: .5s; +} + +window#waybar.keep { + background-color: @transparent; +} + +window#waybar.toggle { + background-color: alpha(@foreground, 0.4); +} + +tooltip { + background: alpha(@background, 0.8); +} +tooltip label { + color: @white; +} + +#workspaces button { + border: none; + padding: 0 8px; + border-radius: 5px; + animation: ws_normal 20s ease-in-out 1; +} + +#mode, +#workspaces button.focused { + background-color: alpha(@background, 0.2); +} + +#workspaces button:hover { + background-color: alpha(@background, 0.2); +} + +#battery, +#disk, +#bluetooth, +#clock, +#custom-browser, +#custom-scratchpad-indicator, +#custom-system-hibernate, #custom-system-lock, #custom-system-reboot, #custom-system-shutdown, #custom-system-sleep, +#custom-toggle-light-dark, +#custom-toggle-night-light, +#custom-toggle-notifications, +#cpu, +#idle_inhibitor, +#keyboard-state, +#memory, +#mpris, +#network, +#sway-language, +#sway-window, +#power-profiles-daemon, +#privacy, +#pulseaudio, +#temperature, +#tray { + color: @white; +} + diff --git a/stow/waybar/.config/waybar/modules.json b/stow/waybar/.config/waybar/modules.json index 026ad07..03d10d6 100644 --- a/stow/waybar/.config/waybar/modules.json +++ b/stow/waybar/.config/waybar/modules.json @@ -20,13 +20,14 @@ }, "bluetooth": { + /* bluetooth-b */ "format-disabled": "\uf294", "format-off": "\uf294", "format-on": "\uf294", "format-connected": "\uf294c", "max-length": 10.3, "on-click": "bluetoothctl power $( bluetoothctl show | sed -n 's/\\s*Powered: \\(yes\\|no\\)/\\1/p' | sed 's/yes/off/;s/no/on/' )", - "on-click-right": "kitty -e bluetoothctl", + "on-click-right": "foot -e bluetoothctl", "tooltip-format": "{status}", "tooltip-format-on": "{status}, no devices connected", "tooltip-format-connected": "{status} ({num_connections}):\n{device_enumerate}", @@ -36,9 +37,20 @@ "clock": { "format": "{:%H:%M}", - "format-alt": "{:%d/%m/%Y %H:%M}", + "format-alt": "{:%a %b %d, %Y %R}", "timezone": "Europe/Brussels", - "tooltip-format": "{:%Y %B}\n{calendar}" + "tooltip-format": "{:%Y %B}\n{calendar}", + "calendar": { + "mode-mon-col": 3, + "on-scroll": 1, + "format": { + /* Highlight today's date. */ + "today": "{}" + } + }, + "actions": { + "on-click": "mode" + } }, "custom/browser": { @@ -47,39 +59,11 @@ "tooltip-format": "Launch an application" }, - "custom/light-dark-toggle": { - "exec": "bash ${SCRIPT_DIR}/toggle-light-dark.sh -g", - "exec-on-event": true, - "on-click": "bash ${SCRIPT_DIR}/toggle-light-dark.sh", - // "format": "\uf042 ", - "format": "{icon}", - "format-icons": [ - "\uf185", - "\uf111" - ], - "tooltip": true, - "tooltip-format": "Toggle between light and dark mode" - }, - - "custom/keyboard-switch": { - "format": "\uf11c", - "on-click": "swaymsg input type:keyboard xkb_switch_layout next", - "tooltip-format": "Toggle keyboard layouts", - "tooltip": true - }, - - "custom/night-light-toggle": { - "on-click": "bash ${SCRIPT_DIR}/sunset.sh", - "format": "\uf0eb ", - "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", + "format": "\uf2d2 {}", "on-click": "exec swaymsg 'scratchpad show'", "on-click-right": "exec swaymsg 'move scratchpad'" }, @@ -119,6 +103,23 @@ "on-click": "systemctl poweroff -i" }, + "custom/toggle-light-dark": { + "exec": "bash ${SCRIPT_DIR}/toggle-light-dark.sh -g", + "signal": 13, + "return-type": "json", + "on-click": "bash ${SCRIPT_DIR}/toggle-light-dark.sh", + // "format": "\uf042 ", + "format": "{}", + "tooltip": true + }, + + "custom/toggle-night-light": { + "on-click": "bash ${SCRIPT_DIR}/sunset.sh", + "format": "\uf0eb ", + "tooltip": true, + "tooltip-format": "Toggle night-light on or off" + }, + "custom/toggle-notifications": { "on-click": "bash ${SCRIPT_DIR}/do-not-disturb.sh", "tooltip-format": "Toggle notifications", @@ -127,8 +128,9 @@ }, "cpu": { + "interval": 10, "format": "{usage}% \uf2db", - "on-click": "foot -e htop", + "on-click": "foot -e top", "tooltip": true }, @@ -136,6 +138,11 @@ "orientation": "inherit", "modules": [ "battery", + "custom/sep", + "memory", + "cpu", + "temperature", + "custom/sep", "custom/system-shutdown", "custom/system-reboot", "custom/system-hibernate", @@ -143,22 +150,6 @@ "custom/system-lock", "custom/sep", "power-profiles-daemon", - "custom/sep" - ], - "drawer": { - "transition-duration": 500, - "transition-left-to-right": false, - "children-class": "drawer-child" - } - }, - - "group/hardware": { - "orientation": "inherit", - "modules": [ - "custom/sep", - "memory", - "cpu", - "temperature" ], "drawer": { "transition-duration": 500, @@ -173,7 +164,6 @@ "idle_inhibitor", "custom/light-dark-toggle", "custom/night-light-toggle", - "custom/keyboard-switch", "custom/toggle-notifications" ], "drawer": { @@ -227,20 +217,27 @@ "title", "artist" ], - "dynamic-len": 40, + "dynamic-len": 40 }, "network": { "format-disconnected": "\uf127", - "format-ethernet": "\uf6ff {ifname}: {ipadds}/{cidr}", - "format-wifi": "\uf1eb", + "format-ethernet": "\uf6ff {ifname}: {ipadds}/{cidr}", /* network-wired */ + "format-wifi": "\uf1eb", /* wifi */ "interval": 5, - "on-click-right": "kitty -e nmtui", + "on-click-right": "foot -e nmtui", "tooltip-format": "{ifname}: {ipaddr}", "tooltip-format-disconnected": "Disconnected", "tooltip-format-wifi": "{essid} ({signalStrength}%)\n{ifname}: {ipaddr}" }, + "sway/language": { + "format": "{short}", + "on-click": "swaymsg input type:keyboard xkb_switch_layout next", + "tooltip-format": "Switch keyboard layouts", + "tooltip": true + }, + "sway/window": { "max-length": 85 }, @@ -250,7 +247,9 @@ "disable-scroll": true, "format": "{icon}{name}", "format-icons": { - "default": "", // Prevent showing workspace name literal. + //"default": "\uf111", + "default": "", + //"focused": "\uf192", "urgent": "\uf071 " }, // "persistent_workspaces": { @@ -264,9 +263,9 @@ "tooltip": true, "format-icons": { "default": "", - "performance": "", + "performance": "\uf135", "balanced": "", - "power-saver": "" + "power-saver": "\uf06c" } }, @@ -290,19 +289,23 @@ "pulseaudio": { "format": "{volume}% {icon}{format_source}", - "format-muted": "\uf6a9{format_source}", + "format-muted": "\uf6a9{format_source}", /* volume-xmark */ "format-bluetooth": "{volume}% {icon}\uf294{format_source}", "format-bluetooth-muted": "\uf6a9 {icon}\uf294{format_source}", "format-source": " {volume}% \uf130", "format-source-muted": "", "format-icons": { - "headphone": "\uf58f", - "hands-free": "\uf590", - "headset": "\uf590", - "phone": "\uf3ce", - "portable": "\uf3ce", - "car": "\uf1b9", - "default": ["\uf026", "\uf027", "\uf028 "] + "headphone": "\uf58f", /*  headphones-simple */ + "hands-free": "\uf590", /*  headset */ + "headset": "\uf590", /*  headset */ + "phone": "\uf3ce", /* mobile */ + "portable": "\uf3ce", /* mobile */ + "car": "\uf1b9", /* car */ + "default": [ + "\uf026", /*  volume-off */ + "\uf027", /*  volume-low */ + "\uf028" /*  volume-high */ + ] }, "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", "on-click-right": "pavucontrol", @@ -310,12 +313,19 @@ }, "temperature": { - "critical-threshold": 70, + "critical-threshold": 75, "format": "{temperatureC}°C {icon}", - "format-icons": ["\uf2cb", "\uf2c9", "\uf2c7"] + "format-icons": [ + "\uf2cb", /*  temperature-empty */ + "\uf2ca", /*  temperature-quarter */ + "\uf2c9", /*  temperature-half */ + "\uf2c8", /*  temperature-three-quarters */ + "\uf2c7" /*  temperature-full */ + ] }, "tray": { + "show-passive-items": true, "spacing": 10 } } diff --git a/stow/waybar/.config/waybar/style-dark.css b/stow/waybar/.config/waybar/style-dark.css new file mode 100644 index 0000000..49d4f87 --- /dev/null +++ b/stow/waybar/.config/waybar/style-dark.css @@ -0,0 +1,10 @@ +@define-color foreground rgb( 3, 3, 3); +@define-color background rgb(202, 202, 202); + +@define-color highlight-background alpha(@foreground, 0.4); + +* { + color: @foreground; + font-family: letter, "Font Awesome 6 Free", font-awesome, monospace; +} + diff --git a/stow/waybar/.config/waybar/style-light.css b/stow/waybar/.config/waybar/style-light.css new file mode 100644 index 0000000..2b875b5 --- /dev/null +++ b/stow/waybar/.config/waybar/style-light.css @@ -0,0 +1,10 @@ +@define-color foreground rgb(202, 202, 202); +@define-color background rgb( 3, 3, 3); + +@define-color highlight-background alpha(@foreground, 0.4); + +* { + color: @foreground; + background-color: red; +} + diff --git a/stow/waybar/.config/waybar/style.css b/stow/waybar/.config/waybar/style.css index f9fe080..957cb40 100644 --- a/stow/waybar/.config/waybar/style.css +++ b/stow/waybar/.config/waybar/style.css @@ -9,72 +9,41 @@ * - round.css */ -@define-color transparent-black rgba(23, 23, 23, 0.9); -@define-color white #ecf0f1; -@define-color warning-red #eb4d4b; -@define-color accent #00897b; +@import "modern.css"; -window#waybar { - font-family: letter, "Font Awesome 6 Free", font-awesome, monospace; - font-size: 13px; - -webkit-font-smoothing: antialiased; - transition-property: background-color; - transition-duration: .5s; -} - -#window, #workspaces { - margin: 0 5px; -} - -#workspaces button { - border: none; - border-radius: 0; - min-width: 30px; - padding: 0 5px; -} - -#workspaces button.focused { - background-color: transparent; - color: @white; -} - -#workspaces button:hover { - background-color: transparent; - color: @transparent-black; -} - -#workspaces button.urgent { - color: @white; - background-color: @warning-red; -} - -/* All modules individually. */ -#backlight, -#battery, +#disk, #bluetooth, #clock, -#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-scratchpad-indicator, +#custom-system-hibernate, #custom-system-lock, #custom-system-reboot, #custom-system-shutdown, #custom-system-sleep, +#custom-toggle-light-dark, +#custom-toggle-night-light, #custom-toggle-notifications, -#disk, -#group-hardware, -#group-system, +#cpu, #idle_inhibitor, #keyboard-state, #memory, -#mode, -#mpd, #mpris, #network, +#sway-language, +#sway-window, #power-profiles-daemon, -#privacy-item.audio-in, #privacy-item.audio-out, #privacy-item.screenshare, +#privacy, #pulseaudio, #temperature, #tray { - padding: 0 5px; + padding: 0 4px; +} + +/* FIXME */ +#battery { + padding: 0 0 0 4px; +} + +#window, +#workspaces { + margin: 0 4px; } /* If workspaces is the leftmost module, omit left margin */ @@ -87,19 +56,6 @@ window#waybar { margin-right: 0; } -@keyframes blink { - to { - background-color: #ffffff; - color: #000000; - } -} - -label:focus { - background-color: #000000; -} - -/* Module specific colours */ - #battery.charging, #battery.plugged { color: #ffffff; background-color: #26A65B; @@ -122,27 +78,32 @@ label:focus { opacity: 0.6; } +#idle_inhibitor.activated { + background-color: #ecf0f1; + color: #2d3436; +} + #mpris { - color: #2a5c45; + color: #ecf0f1; min-width: 100px; } #mpris.spotify { background-color: #66cc99; + color: #2a5c45; } #mpris.vlc { background-color: #ffa000; } -#temperature.critical { - background-color: #eb4d4b; +#mpris.Feishin { + background: rgb(170,92,195); + background: linear-gradient(90deg, rgba(170,92,195,1) 0%, rgba(0,164,220,1) 100%); } -#custom_light-dark-toggle.activated, -#idle_inhibitor.activated { - background-color: #ecf0f1; - color: #2d3436; +#temperature.critical { + background-color: @warning-red; } #tray > .passive { @@ -151,15 +112,34 @@ label:focus { #tray > .needs-attention { -gtk-icon-effect: highlight; - background-color: #eb4d4b; + background-color: @warning-red; } -#privacy-item.audio-in, -#privacy-item.audio-out, -#privacy-item.screenshare { - background-color: #ffaa01; - color: #2d3436; +#workspaces button.focused { + box-shadow: none; } -@import "sharp.css"; +button { + /* Avoid rounded borders under each button name */ + border: none; + border-radius: 0; + box-shadow: none; +} + +/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ +button:hover { + background: inherit; + box-shadow: none; +} + +label:focus { + background-color: #000000; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: #000000; + } +}