mirror of
https://github.com/nickolaj-jepsen/nixos.git
synced 2026-01-22 08:06:50 +01:00
feat: add scripts
This commit is contained in:
parent
f1d4ea06fc
commit
4e8afa2dfc
3 changed files with 53 additions and 0 deletions
27
modules/scripts/reboot-windows.bash
Normal file
27
modules/scripts/reboot-windows.bash
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Find windows entry id using bootctl
|
||||
WINDOWS_ID=$(bootctl list --json=short | jq -r '.[] | select(.title != null) | select(.title | ascii_downcase | contains("windows")) | .id' | head -n 1)
|
||||
|
||||
if [ -z "$WINDOWS_ID" ]; then
|
||||
# Fallback to checking the ID itself
|
||||
WINDOWS_ID=$(bootctl list --json=short | jq -r '.[] | select(.id | ascii_downcase | contains("windows")) | .id' | head -n 1)
|
||||
fi
|
||||
|
||||
if [ -z "$WINDOWS_ID" ]; then
|
||||
echo "Error: No Windows boot entry found in systemd-boot."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Setting next boot to: $WINDOWS_ID"
|
||||
|
||||
# Check if we have root, if not, try to use sudo
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
sudo bootctl set-oneshot "$WINDOWS_ID"
|
||||
echo "Rebooting..."
|
||||
sudo systemctl reboot
|
||||
else
|
||||
bootctl set-oneshot "$WINDOWS_ID"
|
||||
echo "Rebooting..."
|
||||
systemctl reboot
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue