Files
shed/docs/scripts/commands.md
2024-11-07 15:03:55 -05:00

2.3 KiB

pagedMov's Custom Command Scripts

icanhazip

- Leverages ip and icanhazip.com to return relevant ip info for the current machine.
- Usage:
	- `icanhazip` - returns public ip, local ip, and default gateway
	- `icanhazip -p` - returns only public ip
	- `icanhazip -l` - returns only local ip
	- `icanhazip -d` - returns only default gateway
- Defined in 'modules/home/scripts/commands/icanhazip.nix'

invoke

- Leverages `nix run` to run any command once. Works with arguments.
- Usage:
	- `invoke <command>`
- Example:
	- `invoke hello`
- Defined in 'modules/home/scripts/commands/invoke.nix'

runbg

- Runs a command and detaches the process from the shell silently. Works with arguments. Credit to [Frost-Phoenix](https://github.com/Frost-Phoenix) for writing this script.
- Usage:
	- `runbg <command> <args>`
- Example:
	- `runbg waybar`
- Defined in 'modules/home/scripts/commands/runbg.nix'

toolbelt

- Opens a fuzzyfinder window with some useful utilities. Meant to be used with the Super + P bind defined in hyprland.nix, and not invoked directly from the shell.
- Defined in 'modules/home/scripts/commands/toolbelt.nix'

viconf

- Searches the directory held in the $FLAKEPATH environment variable for a given nix file or directory name. Opens the file found in neovim, or if there are multiple matches, opens a fuzzyfinder window to allow you to choose one.
- Usage:
	- `viconf <part of path or filename>`
- Examples:
	- `viconf hyprland` - Opens $FLAKEPATH/modules/home/environment/hyprland.nix
	- `viconf sys` - Opens fuzzyfinder window containing all nix files in modules/sys and its subdirectories
	- `viconf config` - Opens fuzzyfinder window containing all nix files called 'config.nix'
	- `viconf scripts/def` - Opens $FLAKEPATH/modules/home/scripts/default.nix
- Defined in 'modules/home/scripts/commands/viconf.nix'

vipkg

- Searches the pkgs directory from the nixpkgs github repository. Works almost identically to viconf with a few tweaks to accomodate the different directory structure. Useful for when you want to override a package's build attributes. Can also just be used to search for a package name.
- Usage:
	- `vipkg <part of package name>`
- Example:
	- `vipkg neofetch` - Opens nixpkgs/pkgs/tools/misc/neofetch/default.nix
- Defined in 'modules/home/scripts/commands/vipkg.nix'