diff --git a/configuration.nix b/configuration.nix index 5350758..ae65e86 100644 --- a/configuration.nix +++ b/configuration.nix @@ -137,7 +137,7 @@ environment.systemPackages = with pkgs; [ vim wget - ]; + ] ++ (if !inputs.x11mode then [greetd.regreet] else []); programs.dconf.enable = true; diff --git a/home.nix b/home.nix index 6f4df62..c9a9e94 100644 --- a/home.nix +++ b/home.nix @@ -67,6 +67,7 @@ in samba unzip direnv + font-awesome ] ++ (if x11mode then [ arandr ] else [ wdisplays ]); fonts.fontconfig.enable = true; diff --git a/programm_configs/greetd_sway.conf b/programm_configs/greetd_sway.conf new file mode 100644 index 0000000..30c91b4 --- /dev/null +++ b/programm_configs/greetd_sway.conf @@ -0,0 +1,6 @@ + input * { + xkb_layout "de" + } + output eDP-2 mode 3840x2160 + exec "regreet; swaymsg exit" + include /etc/sway/config.d/* \ No newline at end of file diff --git a/programm_configs/sway.nix b/programm_configs/sway.nix index a8b87d9..61457c9 100644 --- a/programm_configs/sway.nix +++ b/programm_configs/sway.nix @@ -26,9 +26,9 @@ "${mod}+shift+l" = "exec --no-startup-id ~/.config/i3/lock.sh"; # audio control fluff - "XF86AudioRaiseVolume" = "exec --no-startup-id wpctl set-volume @DEFAULT_SINK@ 5%+ && $refresh_i3status"; - "XF86AudioLowerVolume" = "exec --no-startup-id wpctl set-volume @DEFAULT_SINK@ 5%- && $refresh_i3status"; - "XF86AudioMute" = "exec --no-startup-id wpctl set-mute @DEFAULT_SINK@ toggle && $refresh_i3status"; + "XF86AudioRaiseVolume" = "exec --no-startup-id wpctl set-volume @DEFAULT_SINK@ 5%+"; + "XF86AudioLowerVolume" = "exec --no-startup-id wpctl set-volume @DEFAULT_SINK@ 5%-"; + "XF86AudioMute" = "exec --no-startup-id wpctl set-mute @DEFAULT_SINK@ toggle"; # Terminal "${mod}+Return" = "exec alacritty"; @@ -112,10 +112,11 @@ always = true; } { - command = "blueman-applet"; + command = "blueman-tray"; always = true; } ]; }; }; } + diff --git a/programm_configs/waybar.nix b/programm_configs/waybar.nix index d9c4ef7..0beecc7 100644 --- a/programm_configs/waybar.nix +++ b/programm_configs/waybar.nix @@ -1,24 +1,76 @@ { pkgs, ... }: -let - colors = { - background = "#222"; - background-alt = "#444"; - foreground = "#dfdfdf"; - foreground-alt = "#555"; - primary = "#ffb52a"; - secondary = "#e60053"; - alert = "#bd2c40"; - accent = "#ffbb00"; - }; -in { programs.waybar = { enable = true; systemd = { enable = true; }; - settings = [ + style = ./waybarstyle.css; + settings = { + mainBar = { + layer = "top"; + position = "top"; + height = 30; + spacing = 20; + modules-left = [ "sway/workspaces" ]; + modules-right = [ "disk" "pulseaudio" "cpu" "network#eth" "network#wireless" "eth" "battery" "temperature" "clock" "tray" ]; - ]; + "tray" = { + spacing = 10; + icon-size = 20; + }; + + "pulseaudio" = + { + on-click = "wpctl set-mute @DEFAULT_SINK@ toggle"; + format = "{volume}%"; + format-muted = "muted"; + }; + + "sway/workspaces" = { + all-outputs = true; + }; + + "clock" = { + interval = 1; + format = "{:%H:%M}"; + format-alt = "{:%d.%m.%Y %H:%M:%S}"; + }; + + "battery" = { + format = "BAT: {capacity}%"; + bat = "BAT0"; + full-at = "94"; + }; + + "temperature" = { + thermal-zone = 0; + critical-threshold = 70; + format = "{temperatureC}°C"; + interval = 2; + hwmon-path = "/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_input"; + }; + + "network#eth" = { + interval = 5; + interface = "enp12s0"; + format = "{ipaddr}"; + format-disconnected = "disconnected"; + }; + "network#wireless" = { + interval = 5; + interface = "wlp82s0"; + format = "{ipaddr}@{essid} ({signalStrength}%)"; + format-disconnected = "disconnected"; + }; + + "disk" = { + interval = 30; + path = "/"; + tooltip-format = "\"{path}\": {used}/{total} ({percentage_used}%)"; + format = "\"{path}\": {percentage_used}%"; + }; + }; + }; }; } diff --git a/programm_configs/waybarstyle.css b/programm_configs/waybarstyle.css new file mode 100644 index 0000000..cd8c6ce --- /dev/null +++ b/programm_configs/waybarstyle.css @@ -0,0 +1,76 @@ +* { + font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif; + font-size: 18px; +} + +window#waybar { + background: #222222; + color: #dfdfdf; + border-radius: 20px; +} + +#clock { + border-bottom: 4px solid #0a6cf5; +} + +#temperature { + border-bottom: 4px solid #f50a4d; +} + +#temperature.critical { + color: #bd2c40; +} + +#battery { + border-bottom: 4px solid #ffb52a; +} + +#battery.not\ charging { + background: rgb(111.5, 39, 49); +} + +#network.wireless { + border-bottom: 4px solid #9f78e1; +} + +#network.wireless.disconnected { + border-bottom: 4px solid #473666; +} + +#network.disconnected { + color: #ABABAB; +} + +#network.eth { + border-bottom: 4px solid #55aa55; +} + +#cpu { + border-bottom: 4px solid #00f9f9; +} + +#pulseaudio { + border-bottom: 4px solid#dd7a00; +} + +#pulseaudio.muted { + color: #ABABAB; +} + +#disk { + border-bottom: 4px solid #6988ed; +} + +#tray { + margin-right: 20px; +} + +#workspaces { + margin-left: 20px; +} + +#workspaces button.focused { + background-color: #5f5f5f; + border-bottom: 4px solid #ffb52a; + border-radius: 0; +} \ No newline at end of file diff --git a/programm_configs/wayland.nix b/programm_configs/wayland.nix index c47d23d..27282ce 100644 --- a/programm_configs/wayland.nix +++ b/programm_configs/wayland.nix @@ -1,27 +1,27 @@ { config, pkgs, ... }: + let - swayconf = '' - input * { - xkb_layout "de" - } - output eDP-2 mode 3840x2160 - exec "regreet; swaymsg exit" - include /etc/sway/config.d/* - ''; + mySwayConfig = builtins.readFile ./greetd_sway.conf; + swayConfig = pkgs.writeTextFile { + name = "greetd-sway-config"; + text = mySwayConfig; + }; in { # greeter for wayland hardware.opengl.enable = true; - services.greetd.enable = true; - - programs.regreet = { + services.greetd = { enable = true; settings = { default_session = { - command = "${pkgs.sway}/bin/sway --config ${swayconf}"; + command = "${pkgs.sway}/bin/sway --config ${swayConfig}"; }; }; }; + programs.regreet = { + enable = true; + }; + }