diff --git a/modules/configuration.nix b/modules/configuration.nix index 2e3f155..206e834 100644 --- a/modules/configuration.nix +++ b/modules/configuration.nix @@ -218,6 +218,26 @@ }; # security.rtkit.enable = true; +services.pipewire = { + enable = true; + alsa.enable = true; + pulse.enable = true; + #jack.enable = true; +}; + +services.pipewire.wireplumber.extraConfig = { + "10-bluez-monitor.properties" = { + "bluez5.msbc-support" = false; + "bluez5.hfphsp-support" = false; + "bluez5.hfphsp-backend" = "none"; # Key addition: no backend + "bluez5.roles" = [ "a2dp_sink" ]; + }; + "11-bluetooth-policy" = { + "wireplumber.settings" = { + "bluetooth.autoswitch-to-headset-profile" = false; + }; + }; +}; # services.pipewire = { # enable = true; # alsa.enable = true; diff --git a/modules/firefox-home.nix b/modules/firefox-home.nix index e244b87..55a979c 100644 --- a/modules/firefox-home.nix +++ b/modules/firefox-home.nix @@ -1,5 +1,14 @@ -{ ... }: +{ username, ... }: { + programs.firefox = { + enable = true; + profiles = { + "${username}" = { + extensions.force = true; + }; + }; + }; + systemd.user.services."firefox-autostart" = { serviceConfig = { ExecStart = ""; diff --git a/modules/home.nix b/modules/home.nix index 91b8717..629d856 100644 --- a/modules/home.nix +++ b/modules/home.nix @@ -37,6 +37,13 @@ programs = { home-manager = { enable = true; }; + + zoxide = { + enable = true; + options = [ + "--cmd cd" + ]; + }; kitty = { enable = true; diff --git a/modules/hyprpaper/home.nix b/modules/hyprpaper/home.nix index ce05143..e023019 100644 --- a/modules/hyprpaper/home.nix +++ b/modules/hyprpaper/home.nix @@ -10,11 +10,17 @@ settings = { preload = [ - "/home/${username}/NixOS/other/wallpaper2.png" + "/home/${username}/NixOS/other/wallpaper1.png" + #"/home/${username}/NixOS/other/wallpaper2.png" + #"/home/${username}/NixOS/other/wallpaper3.png" + #"/home/${username}/NixOS/other/wallpaper4.png" ]; wallpaper = [ - "eDP-1,/home/${username}/NixOS/other/wallpaper2.png" + "eDP-1,/home/${username}/NixOS/other/wallpaper1.png" + #"eDP-1,/home/${username}/NixOS/other/wallpaper2.png" + #"eDP-1,/home/${username}/NixOS/other/wallpaper3.png" + #"eDP-1,/home/${username}/NixOS/other/wallpaper4.png" ]; }; }; diff --git a/modules/packages/essentials.nix b/modules/packages/essentials.nix index 69c745f..92a72d2 100644 --- a/modules/packages/essentials.nix +++ b/modules/packages/essentials.nix @@ -36,5 +36,7 @@ fprintd nh whois + networkmanagerapplet + zoxide ]; } diff --git a/modules/stylix/default.nix b/modules/stylix/default.nix index 3ebb4f8..4116a0a 100644 --- a/modules/stylix/default.nix +++ b/modules/stylix/default.nix @@ -40,7 +40,7 @@ plymouth.enable = true; plymouth.logoAnimated = true; console.enable = true; #Default console without desktop environment! (NOT KITTY!) - #grub.enable = false; + grub.enable = false; #qt.enable = false; }; }; diff --git a/modules/stylix/home.nix b/modules/stylix/home.nix index 6109d7b..3e41395 100644 --- a/modules/stylix/home.nix +++ b/modules/stylix/home.nix @@ -9,9 +9,16 @@ stylix = { targets = { - #kitty.enable = false; + kitty.enable = false; + #firefox = { + # enable = true; + # colorTheme.enable = true; + # profileNames = [ "${username}" ]; + #}; + qt.enable = true; + qt.platform = "kde"; #kde.enable = false; - #zen-browser.profileNames = [ "${username}" ]; + zen-browser.profileNames = [ "${username}" ]; }; }; } diff --git a/modules/waybar/config.jsonc b/modules/waybar/config.jsonc index 85f9236..7820ff6 100644 --- a/modules/waybar/config.jsonc +++ b/modules/waybar/config.jsonc @@ -1,181 +1,153 @@ -// -*- mode: jsonc -*- { "layer": "top", - "mode": "dock", - "position": "top", // (top|bottom|left|right) - "height": 40, // (to be removed for auto height) - "width": "auto", - "spacing": 3, // Gaps between modules - "margin": 0, - "fixed-center": true, - "reload_style_on_change": true, + "position": "top", "modules-left": [ - "sway/workspaces", - "sway/mode", - "sway/scratchpad" + "custom/launcher", + "hyprland/workspaces", + "cpu", + "memory" + ], "modules-center": [ - "clock" + "hyprland/window" ], + "spacing": 4, "modules-right": [ - "custom/weather", - "pulseaudio", - "temperature", + "tray", + "wireplumber", "network", "backlight", + "clock", "battery", - "tray" + "custom/power" ], - "keyboard-state": { - "numlock": true, - "capslock": true, - "format": "{icon} {name}", - "format-icons": { - "locked": "", - "unlocked": "" + "backlight": { + "device": "intel_backlight", + "format": "{percent}% {icon}", + "format-icons": ["", ""] + }, + "hyprland/workspaces": { + "format": "{name}", + "persistent-workspaces": { + "1": [], + "2": [], + "3": [] } }, - "sway/mode": { - "format": "{}" - }, - "sway/scratchpad": { - "format": "{icon} {count}", - "show-empty": false, - "format-icons": [ - "", - "" - ], - "tooltip": true, - "tooltip-format": "{title}", - "rewrite": { - "(.*) - Mozilla Firefox": "🌎 $1" - } + "hyprland/window": { + "icon": false, + "separate-outputs": true, + "format": "{}" }, "tray": { - "icon-size": 24, - "show-passive-items": true, - "spacing": 10 + "icon-size": 15, + "spacing": 7 }, "clock": { - "interval": 1, - "format": "{:%A %d. %b %T}", + "format": "{:%H:%M} ", + "format-alt": "{:%A, %B %d, %Y (%R)}", "tooltip-format": "{calendar}", "calendar": { + "mode": "year", + "mode-mon-col": 3, + "weeks-pos": "right", + "on-scroll": 1, + "on-click-right": "mode", "format": { - "today": "{}" + "months": "{}", + "days": "{}", + "weeks": "W{}", + "weekdays": "{}", + "today": "{}" } + }, + "actions": { + "on-click-right": "mode", + "on-click-forward": "tz_up", + "on-click-backward": "tz_down", + "on-scroll-up": "shift_up", + "on-scroll-down": "shift_down" } }, - "temperature": { - // "thermal-zone": 2, - // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", - "interval": 1000, - "critical-threshold": 80, - // "format-critical": "{temperatureC}°C {icon}", - "format": "{temperatureC}°C" - //"format-icons": ["", "", ""] - }, - "backlight": { - // "device": "acpi_video1", - "format": "{icon}", - "tooltip-format": "{icon} {percent}", + "cpu": { + "interval": 1, + "format": "CPU {usage:>2}% {icon0}{icon1}{icon2}{icon3}", "format-icons": [ - "󰌶", - "󱩎", - "󱩏", - "󱩐", - "󱩑", - "󱩒", - "󱩓", - "󱩔", - "󱩕", - "󱩖", - "󰛨" - ] + "▁", + "▂", + "▃", + "▄", + "▅", + "▆", + "▇", + "█" + ], + "on-click": "kitty -e btop" + }, + "memory": { + "interval": 30, + "format": "MEM {used:0.1f}G/{total:0.1f}G" + }, + "network": { + "format": "󰤭 Disabled", + "format-wifi": " ", + "format-ethernet": " 󰈀 ", + "format-disconnected": "⚠", + "tooltip": true, + "tooltip-format": "{ifname}\n{ipaddr}", + "tooltip-format-wifi": "{essid} {ifname}\n{ipaddr}\nstrength: {signalStrength}%", + "on-click": "networkmanager_dmenu" + }, + "custom/launcher": { + "format": " 󰣇 ", + "tooltip": false, + "on-click": "wofi -c ~/.config/wofi/config -I" + }, + "custom/power": { + "format": "  ", + "on-click": "~/.config/wofi/scripts/power.sh", + "tooltip": false + }, + "wireplumber": { + "scroll-step": 10, + "format": "{volume}% {icon} ", + "format-bluetooth": "{icon} {volume}%", + "format-muted": "muted ", + "on-click": "pavucontrol", + "format-icons": { + "headphones": "", + "handsfree": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": [ + "", + "󰓃" + ] + } }, "battery": { "states": { - // "good": 95, "warning": 30, "critical": 15 }, - "format": "{icon}", - "format-full": "{icon}", - "format-charging": "{icon} ", - "format-plugged": "{icon} ", - "format-alt": "{icon}", + "format": "{capacity}% {icon}", + "format-charging": "󰂄 {capacity}%", + "format-pluged": "󱟦 {capacity}%", + "format-full": "󰁹 {capacity}%", "format-icons": [ - "", - "", - "", - "", - "" + "󰂎", + "󰁺", + "󰁻", + "󰁼", + "󰁽", + "󰁾", + "󰁿", + "󰂀", + "󰂁", + "󰂂", + "󰁹" ] - }, - "power-profiles-daemon": { - "format": "{icon}", - "tooltip-format": "Power profile: {profile}\nDriver: {driver}", - "tooltip": true, - "format-icons": { - "default": "", - "performance": "", - "balanced": "", - "power-saver": "" - } - }, - "network": { - "interval": 1000, - "format-wifi": "{icon}", - "format-ethernet": "{ipaddr}/{cidr} ", - "tooltip-format": "{essid}\n{ifname} via {gwaddr}\n{ipaddr}/{cidr}", - "format-linked": "{ifname} (No IP) ", - "format-disconnected": "󰤭", - "format-alt": "{essid}", - "format-icons": [ - "󰤯", - "󰤟", - "󰤢", - "󰤥", - "󰤨" - ] - }, - "pulseaudio": { - "format": "{icon} {format_source}", - "format-muted": " {format_source}", - "format-source": "", - "format-source-muted": " ", - "format-bluetooth": "{icon} {format_source}", - "format-bluetooth-muted": "{icon} {format_source}", - "format-icons": { - "headphone": "", - "hands-free": "", - "headset": "󰋎", - "phone": " ", - "portable": " ", - "car": "", - "default": [ - "", - "", - "" - ] - }, - "tooltip-format": "{icon} {volume}%\n{format_source}", - "ignored-sinks": [ - "Easy Effects Sink" - ] - }, - "sway/window": { - "format": "{app_id}", - "max-length": 50, - "rewrite": { - "(?:.*\\.)+(?!.*\\.)([^.]+)": "$1" - } - }, - "custom/weather": { - "format": "{}°C", - "tooltip": true, - "interval": 3600, - "exec": "wttrbar --date-format \"%d.%m.%Y\" -l de", - "return-type": "json" } } diff --git a/modules/waybar/style.css b/modules/waybar/style.css index 5472129..a2dfbb0 100644 --- a/modules/waybar/style.css +++ b/modules/waybar/style.css @@ -1,130 +1,167 @@ * { - border: none; - border-radius: 0; - font-family: JetBrainsMono NF ExtraBold, Roboto, Helvetica, Arial, sans-serif; - font-size: 21px; - min-height: 0; + font-family: "JetBrainsMono Nerd Font", sans-serif; + font-size: 13px; } window#waybar { - background: rgba(0, 0, 0, 0.6); - color: white; + background-color: transparent; } -button { - margin: 3px; - padding: 3px; +window > box { + margin-top: 0px; + margin-left: 10px; + margin-right: 10px; + padding-left: 4px; + padding-right: 4px; } -tooltip { - background: rgba(0, 0, 0, 0.202);/*rgba(43, 48, 59, 0.5);*/ - border: 4px solid white; - border-radius: 10px; +#window { + background-color: #202020; + border-radius: 20px; + padding: 8px 12px 8px 8px; + margin: 0px 0; } -tooltip label { - color: white; +window#waybar.empty #window { + background: rgba(12, 12, 12, 0); +} + +.modules-left { + padding: 3px; +} + +.modules-right { + padding: 3px; +} + +.modules-center { + padding: 3px; +} + +#workspaces { + background-color: #202020; + border-radius: 20px; + padding: 4px 4px 4px 6px; + margin: 4px 0; } #workspaces button { - margin: 0; - padding: 0; - - background: transparent; - color: #888888; + min-height: 0; + padding: 0 7px; + margin-right: 2px; + color: #f5e0dc; } -#workspaces button.focused { - color: white; +#workspaces button.urgent { + color: #f5e0dc; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; } -#mode, -#clock, -#battery, -#pulseaudio, -#temperature, -#language, -#backlight, -#network, -#tray, -#custom-weather { - padding: 0 10px; +#workspaces button.empty { + color: #cdd6f4; } -#scratchpad, -#window { - margin-left: 6px; - margin-right: 6px; +#workspaces button.visible { + color: #89dceb; } -#custom-weather.sunny { - color: rgb(215, 215, 0); -} - -#custom-weather.lightrain { - color: lightblue; -} - -#custom-weather.rain, -#custom-weather.heavyrain { - color: blue; -} - -#custom-weather.cloudy, -#custom-weather.fog { - color: gray; -} - -#window { - color: darkred; -} - -#language { - color: cadetblue; -} - -#pulseaudio { - color: darkcyan; -} - -#network { - color: coral; -} - -#temperature { - color: rgb(91, 191, 225); -} - -#backlight { - color: rgb(255, 255, 61); -} - -#clock { - color: aqua; -} - -#battery { - color: rgb(147, 63, 225); -} - -#battery.charging { - color: #26A65B; +#workspaces button.active { + color: #fab387; } @keyframes blink { - to { - color: white; - } + to { + color: #202020; + background-color: #dcf5f3; + } } -#battery.warning:not(.charging), -#temperature.critical, -#workspaces button.urgent, -#mode { - color: #ff0000; - animation-name: blink; - animation-duration: 0.5s; - animation-timing-function: steps(2); - animation-iteration-count: infinite; - animation-direction: alternate; +#custom-launcher { + background-color: #202020; + border-radius: 20px; + padding: 8px 8px 8px 4px; + margin: 4px 0; + color: #89dceb; +} + +#custom-power { + background-color: #202020; + border-radius: 20px; + padding: 8px 12px 8px 8px; + margin: 4px 0; +} + +#cpu { + background-color: #202020; + border-radius: 20px; + padding: 8px 8px 8px 20px; + margin: 4px 0; + color: #f2cdcd; +} + +#memory { + background-color: #202020; + border-radius: 20px; + padding: 8px 8px 8px 20px; + margin: 4px 0; + color: #fab387; +} + +#wireplumber { + background-color: #202020; + border-radius: 20px; + padding: 8px 8px 8px 20px; + margin: 4px 0; + color: #f9e2af; +} + +#wireplumber.muted { + color: #f38ba8; +} + +#clock { + background-color: #202020; + border-radius: 20px; + padding: 8px 10px 10px 10px; + margin: 4px 0; + color: #94e2d5; +} + +#network { + background-color: #202020; + color: #cdd6f4; + border-radius: 20px; + padding: 8px; + margin: 4px 0; +} + +#network.disabled { + color: #f38ba8; +} + +#tray { + background-color: #202020; + border-radius: 20px; + padding: 8px 12px 8px 12px; + margin: 4px 0; +} + +#battery { + background-color: #202020; + color: #cdd6f4; + border-radius: 20px; + padding: 8px; + margin: 4px 0; +} + +#backlight { + background-color: #202020; + color: #cdd6f4; + border-radius: 20px; + padding: 8px; + margin: 4px 0; } diff --git a/niri/home.nix b/niri/home.nix index eaf7861..36325e2 100644 --- a/niri/home.nix +++ b/niri/home.nix @@ -33,8 +33,10 @@ } } + prefer-no-csd + layout { - gaps 16 + gaps 10 center-focused-column "never" preset-column-widths { @@ -49,7 +51,7 @@ focus-ring { // off - width 4 + width 2 active-color "#7fc8ff" @@ -59,7 +61,7 @@ border { off - width 4 + width 2 active-color "#ffc87f" inactive-color "#505050" @@ -89,6 +91,13 @@ window-rule { geometry-corner-radius 12 clip-to-geometry true + draw-border-with-background false + } + + output "eDP-1" { + mode "2880x1920@120.000" + scale 2 + // Optional: position x=0 y=0 } binds { @@ -96,7 +105,7 @@ Mod+T hotkey-overlay-title="Open a Terminal: kitty" { spawn "kitty"; } Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; } - Super+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyrplock"; } + Super+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; } Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; } diff --git a/niri/niri.nix b/niri/niri.nix index e7ff620..36764b4 100644 --- a/niri/niri.nix +++ b/niri/niri.nix @@ -18,11 +18,12 @@ waybar ]; -# programs = { -# niri = { -# enable = true; -# }; -# }; + programs = { + niri = { + enable = true; + }; + xwayland.enable = true; + }; #services.xserver.enable = true; @@ -36,11 +37,5 @@ #sound.enable = true; #security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - #alsa.support3Bbit = true; - pulse.enable = true; - # jack.enable = true; - }; + } diff --git a/other/wallpaper.png b/other/wallpaper.png deleted file mode 100644 index e9996f6..0000000 Binary files a/other/wallpaper.png and /dev/null differ diff --git a/other/wallpaper1.png b/other/wallpaper1.png new file mode 100644 index 0000000..1855650 Binary files /dev/null and b/other/wallpaper1.png differ diff --git a/other/wallpaper3.png b/other/wallpaper3.png new file mode 100644 index 0000000..c7d460c Binary files /dev/null and b/other/wallpaper3.png differ diff --git a/other/wallpaper4.png b/other/wallpaper4.png new file mode 100644 index 0000000..705b1ee Binary files /dev/null and b/other/wallpaper4.png differ