From 354115b7a3d4546d45a3be1c3d69ab9c50b4ff17 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Fri, 9 May 2025 00:46:59 +0200 Subject: [PATCH] feat: finally adds unfuck script for when things go wrong --- modules/home/scripts/scripts.nix | 24 ++++++++---- modules/home/scripts/scripts/unfuck.sh | 54 ++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 8 deletions(-) create mode 100644 modules/home/scripts/scripts/unfuck.sh diff --git a/modules/home/scripts/scripts.nix b/modules/home/scripts/scripts.nix index 230af59..30afa56 100644 --- a/modules/home/scripts/scripts.nix +++ b/modules/home/scripts/scripts.nix @@ -1,29 +1,37 @@ -{pkgs, ...}: let +{ pkgs, ... }: +let wall-change = pkgs.writeShellScriptBin "wall-change" (builtins.readFile ./scripts/wall-change.sh); - wallpaper-picker = pkgs.writeShellScriptBin "wallpaper-picker" (builtins.readFile ./scripts/wallpaper-picker.sh); + wallpaper-picker = pkgs.writeShellScriptBin "wallpaper-picker" ( + builtins.readFile ./scripts/wallpaper-picker.sh + ); runbg = pkgs.writeShellScriptBin "runbg" (builtins.readFile ./scripts/runbg.sh); notes = pkgs.writeShellScriptBin "notes" (builtins.readFile ./scripts/notes.sh); grabtext = pkgs.writeShellScriptBin "grabtext" (builtins.readFile ./scripts/grabtext.sh); - + unfuck = pkgs.writeShellScriptBin "unfuck" (builtins.readFile ./scripts/unfuck.sh); + toggle_blur = pkgs.writeScriptBin "toggle_blur" (builtins.readFile ./scripts/toggle_blur.sh); - toggle_oppacity = pkgs.writeScriptBin "toggle_oppacity" (builtins.readFile ./scripts/toggle_oppacity.sh); - + toggle_oppacity = pkgs.writeScriptBin "toggle_oppacity" ( + builtins.readFile ./scripts/toggle_oppacity.sh + ); + ascii = pkgs.writeScriptBin "ascii" (builtins.readFile ./scripts/ascii.sh); -in { +in +{ home.packages = with pkgs; [ wall-change wallpaper-picker toggle_blur toggle_oppacity - + runbg notes grabtext + unfuck ascii - + ]; } diff --git a/modules/home/scripts/scripts/unfuck.sh b/modules/home/scripts/scripts/unfuck.sh new file mode 100644 index 0000000..a4fb47b --- /dev/null +++ b/modules/home/scripts/scripts/unfuck.sh @@ -0,0 +1,54 @@ +#!/usr/bin/env bash +# unfuck system when shit goes wrong + +usage() { + echo "usage: unfuck [OPTION]" + echo "example: unfuck everything" +} + +unfuck_wallpaper() { + pkill swww-daemon + setsid swww-daemon & +} + +unfuck_bar() { + pkill waybar + setsid waybar & +} + +unfuck_networkmanager() { + sudo systemctl restart NetworkManager +} + +unfuck_spotify() { + if pgrep ncspot; then + pkill ncspot + ncspot + elif pgrep spotify; then + pkill spotify + spotify + fi +} + +unfuck_screenlock() { + hyprctl --instance 0 'keyword misc:allow_session_lock_restore 1' + hyprctl --instance 0 'dispatch exec lockscreen' +} + +case $1 in +"") + echo "what is fucked?" + ;; +-h | --help) + usage + ;; +everything) + unfuck_screenlock + unfuck_bar + unfuck_spotify + unfuck_wallpaper + ;; +*) + eval "unfuck_$1" + ;; +esac