mirror of
https://github.com/0x1d/nix.git
synced 2025-12-14 22:02:25 +01:00
69 lines
1.3 KiB
Bash
Executable File
69 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
##
|
|
## ~> OS
|
|
##
|
|
|
|
function info {
|
|
clear
|
|
cat motd
|
|
echo "NixOS Version $(nixos-version)"
|
|
sed -n 's/^##//p' ctl.sh
|
|
}
|
|
|
|
## os-test Rebuild and test OS without creating a new generation
|
|
function os-test {
|
|
sudo nixos-rebuild --flake ./os#nixos test
|
|
}
|
|
|
|
## os-rebuild Rebuild OS and create new generation
|
|
function os-rebuild {
|
|
echo "Rebuild OS"
|
|
sudo nixos-rebuild --flake ./os#nixos switch
|
|
}
|
|
|
|
## os-upgrade Upgrade channels and rebuild OS
|
|
function os-upgrade {
|
|
echo "Upgrade channels and rebuild OS"
|
|
sudo nixos-rebuild --upgrade --flake ./os#nixos switch
|
|
}
|
|
|
|
## vm Build and run as VM
|
|
function vm {
|
|
echo "Build and run configuration as VM"
|
|
rm *.qcow2
|
|
nixos-rebuild build-vm --flake ./os#nixos && result/bin/run-*-vm
|
|
}
|
|
|
|
##
|
|
## ~> Store
|
|
##
|
|
|
|
## store-gc Collecting garbage in nix-store
|
|
function store-gc {
|
|
echo "Collecting garbage"
|
|
nix-store --gc --print-roots | egrep -v "^(/nix/var|/run/\w+-system|\{memory|/proc)"
|
|
}
|
|
|
|
## store-optimise Optimise nix-store
|
|
function store-optimise {
|
|
echo "Optimizing nix-store. This may take a moment..."
|
|
nix-store --optimise
|
|
}
|
|
|
|
## search PACKAGE Search for package
|
|
function search {
|
|
nix search nixpkgs $1
|
|
}
|
|
|
|
##
|
|
## ~> Shell
|
|
##
|
|
|
|
## shell NAME Run a nix-shell from ./shell/
|
|
function shell {
|
|
nix-shell ./shell/$1.nix
|
|
}
|
|
|
|
${@:-info}
|