diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a357584 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +# Ignore build outputs from performing a nix-build or `nix build` command +result +result-* + +# Ignore automatically generated direnv output +.direnv + +# Ignore NixOS interactive test driver history +**/.nixos-test-history diff --git a/modules/applications/hyprland.nix b/modules/applications/hyprland.nix index 5581deb..83bb176 100644 --- a/modules/applications/hyprland.nix +++ b/modules/applications/hyprland.nix @@ -198,8 +198,8 @@ "$mod_SHIFT, S, exec, caelestia shell picker open" # framework 16 rgb macropad "Ctrl+$mod, 6, exec, custom-killall" # pos 1 1 killall apps except focused one - #"Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode - "Ctrl+Alt, 7, exec, caelestia shell gameMode toggle" + "Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode + #"Ctrl+Alt, 7, exec, caelestia shell gameMode toggle" # reloads the autostart programs # pos 3 1 # we passed to caelestia-shell and stoped using that /* @@ -211,7 +211,9 @@ #"Ctrl+Alt, 1, exec, swaync-client -t" # pos 4 1 notification center "Ctrl+Alt, 1, exec, qs ipc call notifications toggle" */ - "Ctrl+Alt, 1, exec, caelestia shell drawers toggle sidebar" + # pos 4 1 notification center. + "Ctrl+Alt, 1, exec, caelestia shell drawers toggle sidebar" + "Ctrl+Alt, 1, exec, [[ -f ~/.cache/hypr-battery-saver ]] || swaync-client -t" "Ctrl+$mod, 4, exec, caelestia shell notifs toggleDnd" "Ctrl+$mod, 3, exec, pavucontrol" # pos 1 2 audiocontrol "Ctrl+Shift+Alt, 0, exec, kitty --hold --class \"custom-changeAudioOutput\" --name \"Select audio output\" zsh -c \"custom-changeAudioOutput\"" # pos 2 2 change audio output fzf diff --git a/modules/applications/waybar.nix b/modules/applications/waybar.nix index 3fbe247..9af7bcd 100644 --- a/modules/applications/waybar.nix +++ b/modules/applications/waybar.nix @@ -1,4 +1,32 @@ _: { + flake.homeModules.waybar-minimal = _: { + programs.waybar = { + enable = true; + settings = [ + { + layer = "top"; + modules-left = []; + modules-center = []; + modules-right = [ + "battery" + "clock" + ]; + + battery = { + format = "{capacity}% {icon}"; + states = { + warning = 30; + critical = 15; + }; + }; + + clock = { + format = "{:%H:%M}"; + }; + } + ]; + }; + }; flake.homeModules.waybar = _: { # replaced by caelestia programs.waybar = { diff --git a/modules/applications/zsh.nix b/modules/applications/zsh.nix index c58545b..01b5c0e 100644 --- a/modules/applications/zsh.nix +++ b/modules/applications/zsh.nix @@ -2,8 +2,25 @@ _: { flake.homeModules.zsh-laptop = _: { programs.zsh = { shellAliases = { - snrt = "git -C ~/nixos add -A && time sudo nixos-rebuild test --flake ~/nixos/#laptop && pkill shell || true && pkill caelestia-shell || true && caelestia-shell -n > /dev/null 2>&1 & disown"; - snrs = "git -C ~/nixos add -A && time sudo nixos-rebuild switch --flake ~/nixos/#laptop && pkill shell || true && pkill caelestia-shell || true && caelestia-shell -n > /dev/null 2>&1 & disown"; + snrt = '' + git -C ~/nixos add -A && + time sudo nixos-rebuild test --flake ~/nixos/#laptop && + pkill shell || true && + if [ ! -f ~/.cache/hypr-battery-saver ]; then + pkill caelestia-shell || true && + caelestia-shell -n > /dev/null 2>&1 & disown + fi + ''; + + snrs = '' + git -C ~/nixos add -A && + time sudo nixos-rebuild switch --flake ~/nixos/#laptop && + pkill shell || true && + if [ ! -f ~/.cache/hypr-battery-saver ]; then + pkill caelestia-shell || true && + caelestia-shell -n > /dev/null 2>&1 & disown + fi + ''; }; }; }; diff --git a/modules/hardware/battery.nix b/modules/hardware/battery.nix index 096d37d..c7e7663 100644 --- a/modules/hardware/battery.nix +++ b/modules/hardware/battery.nix @@ -51,11 +51,12 @@ PLATFORM_PROFILE_ON_BAT = "powersave"; STOP_CHARGE_THRESH_BAT1 = 80; }; +<<<<<<< HEAD };*/ environment.systemPackages = [ self.packages.${pkgs.system}.custom-performance ]; - }; + }; perSystem = {pkgs, ...}: let NotifySound = ../../assets/battery_notify.mp3; in { @@ -361,7 +362,7 @@ pkill -f caelestia || true pkill shell || true pkill -f custom-wallpaper || true - + # Start lightweight notifications pkill swaync || true swaync & disown @@ -372,7 +373,7 @@ # Lower refresh rate (BIGGEST win) hyprctl keyword monitor "eDP-1,2560x1600@60,0x0,1" - + # Core performance toggles hyprctl --batch "\ keyword animations:enabled 0;\ @@ -420,12 +421,12 @@ if [[ -f "''${STATE}.brightness" ]]; then brightnessctl set "$(cat "''${STATE}.brightness")" 2>/dev/null || true fi - + rm -f "$STATE" "''${STATE}.brightness" - + notify-send "Battery Saver" "Disabled" } - + if [[ -f "$STATE" ]]; then disable else diff --git a/modules/hosts/desktop.nix b/modules/hosts/desktop.nix index 4596a34..6dbf7bf 100644 --- a/modules/hosts/desktop.nix +++ b/modules/hosts/desktop.nix @@ -75,15 +75,17 @@ rofi sbb-tui ssh + swaync # used in performance mode thunderbird tomasr vivify + waybar-minimal # used in performance mode zoxide zsh zsh-desktop ]; }; - flake.nixosModules.desktop = _: { + flake.nixosModules.desktop = {pkgs, ...}: { # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave @@ -95,6 +97,9 @@ "nix-command" "flakes" ]; + environment.systemPackages = [ + self.packages.${pkgs.system}.custom-performance + ]; }; flake.nixosModules.home-manager-desktop = {pkgs, ...}: { imports = [ diff --git a/modules/hosts/laptop.nix b/modules/hosts/laptop.nix index 13553ba..7ea7ced 100644 --- a/modules/hosts/laptop.nix +++ b/modules/hosts/laptop.nix @@ -76,9 +76,11 @@ rofi sbb-tui ssh + swaync # used in performance mode thunderbird tomasr vivify + waybar-minimal # used in performance mode zoxide zsh zsh-laptop