added nixp,nixr,homep, and homer commands for easily installing/removing packages from the system and home configs

This commit is contained in:
pagedMov
2024-10-11 06:11:34 -04:00
parent da64e6232d
commit 51d9fae969
7 changed files with 187 additions and 71 deletions

8
flake.lock generated
View File

@@ -442,11 +442,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1728554473, "lastModified": 1728640579,
"narHash": "sha256-wzVeYNRedx8aAi8NsUvBbPJAilozHp+mC49NUKYk73c=", "narHash": "sha256-jaUDVs2vKdLLC/NCgQahnFQHGHL6HmDrwLMfxKshj3M=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "b65773bea9b912a41cfcbc789fb2e60a07e3d0c1", "rev": "d655a10381f01212635f2eadd69e1f22930f8f06",
"revCount": 5325, "revCount": 5326,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"

View File

@@ -108,9 +108,9 @@
bezier = [ bezier = [
"fluent_decel, 0, 0.2, 0.4, 1" "fluent_decel, 0, 0.2, 0.4, 1"
"easeOutCirc, 0, 0.55, 0.45, 1" "easeOutCirc, 0, 0.55, 0.45, 1"
"easeOutCubic, 0.33, 1, 0.68, 1" "easeOutCubic, 0.33, 1, 0.68, 1"
"easeinoutsine, 0.37, 0, 0.63, 1" "easeinoutsine, 0.37, 0, 0.63, 1"
]; ];
animation = [ animation = [

View File

@@ -1,76 +1,84 @@
{pkgs, ...}: let {pkgs, ...}: let
wall-change = pkgs.writeShellScriptBin "wall-change" (builtins.readFile ./scripts/wall-change.sh); 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); runbg = pkgs.writeShellScriptBin "runbg" (builtins.readFile ./scripts/runbg.sh);
music = pkgs.writeShellScriptBin "music" (builtins.readFile ./scripts/music.sh); music = pkgs.writeShellScriptBin "music" (builtins.readFile ./scripts/music.sh);
lofi = pkgs.writeScriptBin "lofi" (builtins.readFile ./scripts/lofi.sh); lofi = pkgs.writeScriptBin "lofi" (builtins.readFile ./scripts/lofi.sh);
splash = pkgs.writeShellScriptBin "splash" (builtins.readFile ./scripts/splash.sh); splash = pkgs.writeShellScriptBin "splash" (builtins.readFile ./scripts/splash.sh);
switchmon = pkgs.writeShellScriptBin "switchmon" (builtins.readFile ./scripts/switchmon.sh); switchmon = pkgs.writeShellScriptBin "switchmon" (builtins.readFile ./scripts/switchmon.sh);
nixswitch = pkgs.writeShellScriptBin "nixswitch" (builtins.readFile ./scripts/nixswitch.sh); nixswitch = pkgs.writeShellScriptBin "nixswitch" (builtins.readFile ./scripts/nixswitch.sh);
garbage-collect = pkgs.writeShellScriptBin "garbage-collect" (builtins.readFile ./scripts/garbage-collect.sh); garbage-collect = pkgs.writeShellScriptBin "garbage-collect" (builtins.readFile ./scripts/garbage-collect.sh);
scheck = pkgs.writeShellScriptBin "scheck" (builtins.readFile ./scripts/s_check.sh); scheck = pkgs.writeShellScriptBin "scheck" (builtins.readFile ./scripts/s_check.sh);
mcd = pkgs.writeShellScriptBin "mcd" (builtins.readFile ./scripts/mcd.sh); mcd = pkgs.writeShellScriptBin "mcd" (builtins.readFile ./scripts/mcd.sh);
crs = pkgs.writeShellScriptBin "crs" (builtins.readFile ./scripts/crs.sh); crs = pkgs.writeShellScriptBin "crs" (builtins.readFile ./scripts/crs.sh);
nixcommit = pkgs.writeShellScriptBin "nixcommit" (builtins.readFile ./scripts/nixcommit.sh); nixcommit = pkgs.writeShellScriptBin "nixcommit" (builtins.readFile ./scripts/nixcommit.sh);
invoke = pkgs.writeShellScriptBin "invoke" (builtins.readFile ./scripts/invoke.sh); invoke = pkgs.writeShellScriptBin "invoke" (builtins.readFile ./scripts/invoke.sh);
nsp = pkgs.writeShellScriptBin "nsp" (builtins.readFile ./scripts/nsp.sh); nsp = pkgs.writeShellScriptBin "nsp" (builtins.readFile ./scripts/nsp.sh);
nixp = pkgs.writeShellScriptBin "nixp" (builtins.readFile ./scripts/nixp.sh);
nixr = pkgs.writeShellScriptBin "nixr" (builtins.readFile ./scripts/nixr.sh);
homep = pkgs.writeShellScriptBin "homep" (builtins.readFile ./scripts/homep.sh);
homer = pkgs.writeShellScriptBin "homer" (builtins.readFile ./scripts/homer.sh);
toggle_blur = pkgs.writeScriptBin "toggle_blur" (builtins.readFile ./scripts/toggle_blur.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);
maxfetch = pkgs.writeScriptBin "maxfetch" (builtins.readFile ./scripts/maxfetch.sh); maxfetch = pkgs.writeScriptBin "maxfetch" (builtins.readFile ./scripts/maxfetch.sh);
compress = pkgs.writeScriptBin "compress" (builtins.readFile ./scripts/compress.sh); compress = pkgs.writeScriptBin "compress" (builtins.readFile ./scripts/compress.sh);
extract = pkgs.writeScriptBin "extract" (builtins.readFile ./scripts/extract.sh); extract = pkgs.writeScriptBin "extract" (builtins.readFile ./scripts/extract.sh);
shutdown-script = pkgs.writeScriptBin "shutdown-script" (builtins.readFile ./scripts/shutdown-script.sh); shutdown-script = pkgs.writeScriptBin "shutdown-script" (builtins.readFile ./scripts/shutdown-script.sh);
show-keybinds = pkgs.writeScriptBin "show-keybinds" (builtins.readFile ./scripts/keybinds.sh); show-keybinds = pkgs.writeScriptBin "show-keybinds" (builtins.readFile ./scripts/keybinds.sh);
vm-start = pkgs.writeScriptBin "vm-start" (builtins.readFile ./scripts/vm-start.sh); vm-start = pkgs.writeScriptBin "vm-start" (builtins.readFile ./scripts/vm-start.sh);
ascii = pkgs.writeScriptBin "ascii" (builtins.readFile ./scripts/ascii.sh); ascii = pkgs.writeScriptBin "ascii" (builtins.readFile ./scripts/ascii.sh);
record = pkgs.writeScriptBin "record" (builtins.readFile ./scripts/record.sh); record = pkgs.writeScriptBin "record" (builtins.readFile ./scripts/record.sh);
in { in {
home.packages = [ home.packages = [
nixswitch nixswitch
garbage-collect garbage-collect
scheck scheck
mcd mcd
crs crs
nixcommit nixcommit
invoke invoke
nsp nsp
wall-change wall-change
wallpaper-picker wallpaper-picker
nixp
nixr
homep
homer
runbg runbg
music music
lofi lofi
splash splash
switchmon switchmon
toggle_blur toggle_blur
toggle_oppacity toggle_oppacity
maxfetch maxfetch
compress compress
extract extract
shutdown-script shutdown-script
show-keybinds show-keybinds
vm-start vm-start
ascii ascii
record record
]; ];
} }

View File

@@ -0,0 +1,30 @@
#!/run/current-system/sw/bin/bash
# Ensure the package manifest is generated or updated
if [ ! -f "/tmp/nixpkgs_manifest.txt" ]; then
echo "Generating Nixpkgs manifest..."
nix-env -qaP 2>/dev/null | awk '{print $1}' | sed 's/nixos\.//' > /tmp/nixpkgs_manifest.txt
fi
# Select packages using fzf with multi-select enabled
selected_packages=$(cat /tmp/nixpkgs_manifest.txt | fzf -m)
# Check if any packages were selected
if [ -n "$selected_packages" ]; then
echo "$selected_packages" | while read -r package; do
# Append each selected package to the Nix config file
sed -i "/^\t]/i \ \t\t$package" "$HOME/sysflakes/glasshouse-desktop/home/userpkgs.nix"
echo "Added $package to the Home Manager configuration."
done
echo "Packages added successfully. Rebuild system config?"
select yn in "Yes" "No"; do
case $yn in
"Yes" ) nixswitch;break;;
"No" ) exit;;
esac
done
else
echo "No packages selected."
fi

View File

@@ -0,0 +1,24 @@
#!/run/current-system/sw/bin/bash
selected_packages=$(sed -n '/\[/,/\]/p' "$HOME/sysflakes/glasshouse-desktop/home/userpkgs.nix" | sed '1d;$d' | fzf -m)
if [ -n "$selected_packages" ]; then
echo "$selected_packages" | while read -r package; do
sed -i "/\b$package\b/d" "$HOME/sysflakes/glasshouse-desktop/home/userpkgs.nix"
echo "Removed $package from the Home Manager configuration."
done
echo "Removed packages. Rebuild system config?"
select yn in "Yes" "No"; do
case $yn in
"Yes" ) nixswitch;break;;
"No" ) exit;;
esac
done
else
echo "No packages removed."
fi

View File

@@ -0,0 +1,30 @@
#!/run/current-system/sw/bin/bash
# Ensure the package manifest is generated or updated
if [ ! -f "/tmp/nixpkgs_manifest.txt" ]; then
echo "Generating Nixpkgs manifest..."
nix-env -qaP 2>/dev/null | awk '{print $1}' | sed 's/nixos\.//' > /tmp/nixpkgs_manifest.txt
fi
# Select packages using fzf with multi-select enabled
selected_packages=$(cat /tmp/nixpkgs_manifest.txt | fzf -m)
# Check if any packages were selected
if [ -n "$selected_packages" ]; then
echo "$selected_packages" | while read -r package; do
# Append each selected package to the Nix config file
sed -i "/^\t]/i \ \t\t$package" "$HOME/sysflakes/glasshouse-desktop/sys/packages.nix"
echo "Added $package to the Nix configuration."
done
echo "Packages added successfully. Rebuild system config?"
select yn in "Yes" "No"; do
case $yn in
"Yes" ) nixswitch;break;;
"No" ) exit;;
esac
done
else
echo "No packages selected."
fi

View File

@@ -0,0 +1,24 @@
#!/run/current-system/sw/bin/bash
selected_packages=$(sed -n '/\[/,/\]/p' "$HOME/sysflakes/glasshouse-desktop/sys/packages.nix" | sed '1d;$d' | fzf -m)
if [ -n "$selected_packages" ]; then
echo "$selected_packages" | while read -r package; do
sed -i "/\b$package\b/d" "$HOME/sysflakes/glasshouse-desktop/sys/packages.nix"
echo "Removed $package from the Nix configuration."
done
echo "Removed packages. Rebuild system config?"
select yn in "Yes" "No"; do
case $yn in
"Yes" ) nixswitch;break;;
"No" ) exit;;
esac
done
else
echo "No packages removed."
fi