Compare commits
1 Commits
bead/nixos
...
bead/nixos
| Author | SHA1 | Date | |
|---|---|---|---|
| 79ff0b8aa4 |
@@ -1,19 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Build Live USB ISO from flake configuration
|
|
||||||
# Creates an uncompressed ISO suitable for Ventoy and other USB boot tools
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
echo "Building Live USB ISO..."
|
|
||||||
nix build .#nixosConfigurations.live-usb.config.system.build.isoImage --show-trace
|
|
||||||
|
|
||||||
if [ -f "./result/iso/"*.iso ]; then
|
|
||||||
iso_file=$(ls ./result/iso/*.iso)
|
|
||||||
echo "✅ Build complete!"
|
|
||||||
echo "📁 ISO location: $iso_file"
|
|
||||||
echo "💾 Ready for Ventoy or dd to USB"
|
|
||||||
else
|
|
||||||
echo "❌ Build failed - no ISO file found"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
18
flake.nix
18
flake.nix
@@ -275,6 +275,16 @@
|
|||||||
export PATH="${pkgs.lib.makeBinPath commonDeps}:$PATH"
|
export PATH="${pkgs.lib.makeBinPath commonDeps}:$PATH"
|
||||||
${builtins.readFile ./scripts/upgrade.sh}
|
${builtins.readFile ./scripts/upgrade.sh}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
bootstrap = pkgs.writeShellScriptBin "bootstrap" ''
|
||||||
|
export PATH="${pkgs.lib.makeBinPath commonDeps}:$PATH"
|
||||||
|
${builtins.readFile ./scripts/bootstrap.sh}
|
||||||
|
'';
|
||||||
|
|
||||||
|
build-liveusb = pkgs.writeShellScriptBin "build-liveusb" ''
|
||||||
|
export PATH="${pkgs.lib.makeBinPath commonDeps}:$PATH"
|
||||||
|
${builtins.readFile ./scripts/build-liveusb.sh}
|
||||||
|
'';
|
||||||
in {
|
in {
|
||||||
update-doomemacs = {
|
update-doomemacs = {
|
||||||
type = "app";
|
type = "app";
|
||||||
@@ -292,6 +302,14 @@
|
|||||||
type = "app";
|
type = "app";
|
||||||
program = "${upgrade}/bin/upgrade";
|
program = "${upgrade}/bin/upgrade";
|
||||||
};
|
};
|
||||||
|
bootstrap = {
|
||||||
|
type = "app";
|
||||||
|
program = "${bootstrap}/bin/bootstrap";
|
||||||
|
};
|
||||||
|
build-liveusb = {
|
||||||
|
type = "app";
|
||||||
|
program = "${build-liveusb}/bin/build-liveusb";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
4
bootstrap.sh → scripts/bootstrap.sh
Executable file → Normal file
4
bootstrap.sh → scripts/bootstrap.sh
Executable file → Normal file
@@ -1,6 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# bootstrap.sh
|
# bootstrap.sh
|
||||||
# Usage: sudo ./bootstrap.sh <hostname>
|
# Usage: nix run .#bootstrap -- <hostname>
|
||||||
|
# Or: sudo ./scripts/bootstrap.sh <hostname>
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
NEW_HOSTNAME="${1:?missing hostname}"
|
NEW_HOSTNAME="${1:?missing hostname}"
|
||||||
@@ -8,4 +9,3 @@ FLAKE_URI="git+https://git.johnogle.info/johno/nixos-configs.git#${NEW_HOSTNAME}
|
|||||||
|
|
||||||
export NIX_CONFIG="experimental-features = nix-command flakes"
|
export NIX_CONFIG="experimental-features = nix-command flakes"
|
||||||
nixos-rebuild switch --flake "$FLAKE_URI"
|
nixos-rebuild switch --flake "$FLAKE_URI"
|
||||||
|
|
||||||
22
scripts/build-liveusb.sh
Normal file
22
scripts/build-liveusb.sh
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Build Live USB ISO from flake configuration
|
||||||
|
# Creates an uncompressed ISO suitable for Ventoy and other USB boot tools
|
||||||
|
# Usage: nix run .#build-liveusb
|
||||||
|
# Or: ./scripts/build-liveusb.sh
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
REPO_ROOT="${REPO_ROOT:-$(git rev-parse --show-toplevel 2>/dev/null || pwd)}"
|
||||||
|
|
||||||
|
echo "Building Live USB ISO..."
|
||||||
|
nix build "${REPO_ROOT}#nixosConfigurations.live-usb.config.system.build.isoImage" --show-trace
|
||||||
|
|
||||||
|
if ls "${REPO_ROOT}/result/iso/"*.iso 1> /dev/null 2>&1; then
|
||||||
|
iso_file=$(ls "${REPO_ROOT}/result/iso/"*.iso)
|
||||||
|
echo "Build complete!"
|
||||||
|
echo "ISO location: $iso_file"
|
||||||
|
echo "Ready for Ventoy or dd to USB"
|
||||||
|
else
|
||||||
|
echo "Build failed - no ISO file found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
@@ -1,30 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# Parse arguments
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case $1 in
|
|
||||||
--help|-h)
|
|
||||||
echo "Usage: $0 [OPTIONS]"
|
|
||||||
echo ""
|
|
||||||
echo "Rotate to the next wallpaper in the configured list."
|
|
||||||
echo ""
|
|
||||||
echo "This script increments the currentIndex in home/wallpapers/default.nix,"
|
|
||||||
echo "cycling through available wallpapers. Rebuild your system to apply"
|
|
||||||
echo "the new wallpaper."
|
|
||||||
echo ""
|
|
||||||
echo "Options:"
|
|
||||||
echo " --help, -h Show this help message"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unknown option: $1"
|
|
||||||
echo "Use --help for usage information"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Colors for output
|
# Colors for output
|
||||||
RED='\033[0;31m'
|
RED='\033[0;31m'
|
||||||
GREEN='\033[0;32m'
|
GREEN='\033[0;32m'
|
||||||
|
|||||||
@@ -1,30 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# Parse arguments
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case $1 in
|
|
||||||
--help|-h)
|
|
||||||
echo "Usage: $0 [OPTIONS]"
|
|
||||||
echo ""
|
|
||||||
echo "Update Doom Emacs to the latest commit from the doomemacs repository."
|
|
||||||
echo ""
|
|
||||||
echo "This script fetches the latest commit SHA from the default branch,"
|
|
||||||
echo "updates the rev and sha256 in home/roles/emacs/default.nix, and"
|
|
||||||
echo "prepares the configuration for a system rebuild."
|
|
||||||
echo ""
|
|
||||||
echo "Options:"
|
|
||||||
echo " --help, -h Show this help message"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unknown option: $1"
|
|
||||||
echo "Use --help for usage information"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Colors for output
|
# Colors for output
|
||||||
RED='\033[0;31m'
|
RED='\033[0;31m'
|
||||||
GREEN='\033[0;32m'
|
GREEN='\033[0;32m'
|
||||||
|
|||||||
@@ -1,35 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# Parse arguments
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case $1 in
|
|
||||||
--help|-h)
|
|
||||||
echo "Usage: $0 [OPTIONS]"
|
|
||||||
echo ""
|
|
||||||
echo "Perform a major upgrade of the NixOS configuration."
|
|
||||||
echo ""
|
|
||||||
echo "This script runs the following steps:"
|
|
||||||
echo " 1. Update all flake inputs (nix flake update)"
|
|
||||||
echo " 2. Update Doom Emacs to the latest commit"
|
|
||||||
echo " 3. Update Claude Code to the latest version"
|
|
||||||
echo " 4. Rotate to the next wallpaper"
|
|
||||||
echo ""
|
|
||||||
echo "After completion, review changes with 'git diff' and rebuild"
|
|
||||||
echo "your system with 'sudo nixos-rebuild switch --flake .'"
|
|
||||||
echo ""
|
|
||||||
echo "Options:"
|
|
||||||
echo " --help, -h Show this help message"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unknown option: $1"
|
|
||||||
echo "Use --help for usage information"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Colors for output
|
# Colors for output
|
||||||
RED='\033[0;31m'
|
RED='\033[0;31m'
|
||||||
GREEN='\033[0;32m'
|
GREEN='\033[0;32m'
|
||||||
|
|||||||
Reference in New Issue
Block a user