Compare commits
No commits in common. "0093a34d48d938803f3e367bcd21738e33d9b4eb" and "07c1c0f9c8e17b17f5a804e44e638cbb047e5ca0" have entirely different histories.
0093a34d48
...
07c1c0f9c8
2 changed files with 27 additions and 53 deletions
75
nswitch
75
nswitch
|
@ -14,8 +14,6 @@ exit_with_new_shell() {
|
||||||
# check if already in directory
|
# check if already in directory
|
||||||
[[ "$INITIAL_PWD" = "$PROJECT" ]] && printf '>>> already in directory\n' && exit 0
|
[[ "$INITIAL_PWD" = "$PROJECT" ]] && printf '>>> already in directory\n' && exit 0
|
||||||
|
|
||||||
cd "$PROJECT" || exit 1
|
|
||||||
|
|
||||||
printf '\n'
|
printf '\n'
|
||||||
printf '>>> opening a new \"%s\" shell\n' "$(basename "$SHELL")"
|
printf '>>> opening a new \"%s\" shell\n' "$(basename "$SHELL")"
|
||||||
printf ' cwd: %s\n' "$(pwd)"
|
printf ' cwd: %s\n' "$(pwd)"
|
||||||
|
@ -23,59 +21,32 @@ exit_with_new_shell() {
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
quick_edit() {
|
cd "$PROJECT" || exit 1
|
||||||
cd "$PROJECT" || exit 1
|
nvim
|
||||||
nvim
|
|
||||||
|
|
||||||
# check if there are changes at all
|
# check if there are changes at all
|
||||||
[[ -z "$(git diff -U0 "$GIT_PATTERN")" ]] && echo ">>> no changes, exiting ..." && exit_with_new_shell
|
[[ -z "$(git diff -U0 "$GIT_PATTERN")" ]] && echo ">>> no changes, exiting ..." && exit_with_new_shell
|
||||||
|
|
||||||
# only then do auto formating
|
# only then do auto formating
|
||||||
printf ">>> auto formating ..."
|
printf ">>> auto formating ..."
|
||||||
nix fmt . &> /dev/null
|
nix fmt . &> /dev/null
|
||||||
printf " DONE!\n"
|
printf " DONE!\n"
|
||||||
|
|
||||||
# and then show the user a diff
|
# and then show the user a diff
|
||||||
git diff -U0 "$GIT_PATTERN" # as a seperate command so we get nice colors and pager
|
git diff -U0 "$GIT_PATTERN" # as a seperate command so we get nice colors and pager
|
||||||
|
|
||||||
printf ">>> Do you want to rebuild NixOS? [y/N]\n"
|
printf ">>> Do you want to rebuild NixOS? [y/N]\n"
|
||||||
printf "<<< " && read -r YESNO
|
printf "<<< " && read -r YESNO
|
||||||
if ! [[ "${YESNO,,}" == "y" ]]; then
|
if ! [[ "${YESNO,,}" == "y" ]]; then
|
||||||
exit_with_new_shell
|
exit_with_new_shell
|
||||||
fi
|
|
||||||
|
|
||||||
printf ">>> Add everything to git staging so nix can find it\n"
|
|
||||||
git add "$GIT_PATTERN"
|
|
||||||
|
|
||||||
printf ">>> Rebuilding NixOS\n"
|
|
||||||
sudo nixos-rebuild switch | tee nixos-switch.log || (
|
|
||||||
grep --color error nixos-switch.log && false)
|
|
||||||
gen=$(nixos-rebuild list-generations | grep current)
|
|
||||||
|
|
||||||
printf ">>> commiting to git\n"
|
|
||||||
git commit -am "$gen"
|
|
||||||
|
|
||||||
exit_with_new_shell
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
help_msg() {
|
|
||||||
printf -- ' without arguments start the main loop\n'
|
|
||||||
printf -- '--help | -h -> show this message\n'
|
|
||||||
printf -- '--new-shell-in-project | -s -> show this message\n'
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if [[ -z "$1" ]]; then
|
|
||||||
quick_edit
|
|
||||||
elif [[ "$1" = "--help" || "$1" = "-h" ]]; then
|
|
||||||
help_msg
|
|
||||||
elif [[ "$1" = "--new-shell-in-project" || "$1" = "-s" ]]; then
|
|
||||||
exit_with_new_shell
|
|
||||||
else
|
|
||||||
help_msg
|
|
||||||
printf "=================\n"
|
|
||||||
printf "didn't recognise: %s\n" "$1"
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
git add "$GIT_PATTERN"
|
||||||
|
|
||||||
|
printf ">>> Rebuilding NixOS\n"
|
||||||
|
sudo nixos-rebuild switch | tee nixos-switch.log || (
|
||||||
|
grep --color error nixos-switch.log && false)
|
||||||
|
gen=$(nixos-rebuild list-generations | grep current)
|
||||||
|
git commit -am "$gen"
|
||||||
|
|
||||||
|
exit_with_new_shell
|
||||||
|
|
|
@ -21,4 +21,7 @@ mkdir -p "$XDG_CONFIG_HOME"
|
||||||
printf 'Using profile: %s\n' "$XDG_CONFIG_HOME"
|
printf 'Using profile: %s\n' "$XDG_CONFIG_HOME"
|
||||||
#exit 0
|
#exit 0
|
||||||
|
|
||||||
rustdesk "${*:2}"
|
# As of rustdesk 1.1.9 giving rustdesk unknown arguments crashes it with an address boundary error.
|
||||||
|
# (At least on my machines)
|
||||||
|
# Thats why we are calling rustdesk without arguments, until thats solved
|
||||||
|
rustdesk #"${*:2}"
|
||||||
|
|
Loading…
Add table
Reference in a new issue