From 2986bba31ba2ccadad92c287c6c5041ca9476939 Mon Sep 17 00:00:00 2001 From: naturallaw77 Date: Sun, 29 Mar 2026 09:12:30 -0500 Subject: [PATCH] updated common and install --- iso/common.nix | 18 ++++++++++-------- iso/installer.sh | 38 +++++++++++++++++++------------------- result | 2 +- 3 files changed, 30 insertions(+), 28 deletions(-) diff --git a/iso/common.nix b/iso/common.nix index 4d9988a..b179664 100644 --- a/iso/common.nix +++ b/iso/common.nix @@ -17,10 +17,12 @@ in services.gnome.gnome-initial-setup.enable = false; environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ]; + # Allow free user to run installer commands as root without a password + security.sudo.wheelNeedsPassword = false; users.users.free = { isNormalUser = true; description = "free"; - extraGroups = [ "networkmanager" ]; + extraGroups = [ "networkmanager" "wheel" ]; initialPassword = "free"; }; @@ -48,11 +50,11 @@ in environment.etc."sovran/flake".source = sovranSource; environment.etc."xdg/autostart/sovran-installer.desktop".text = '' - [Desktop Entry] - Type=Application - Name=Sovran Guided Installer - Exec=gnome-terminal -- bash -c "${installer}/bin/sovran-install; exec bash" - Terminal=false - X-GNOME-Autostart-enabled=true - ''; +[Desktop Entry] +Type=Application +Name=Sovran Guided Installer +Exec=gnome-terminal -- bash -c "${installer}/bin/sovran-install; exec bash" +Terminal=false +X-GNOME-Autostart-enabled=true +''; } diff --git a/iso/installer.sh b/iso/installer.sh index dd13e89..837ed5b 100644 --- a/iso/installer.sh +++ b/iso/installer.sh @@ -17,7 +17,7 @@ human_size() { # ── 1. WELCOME & ROLE SELECTION ────────────────────────────────────────── ROLE=$(zenity --list --radiolist \ - --window-icon="$LOGO" \ + --icon="$LOGO" \ --width=1000 --height=400 \ --title="Welcome to Sovran SystemsOS" \ --text="Sovran Systems\nBe Digitally Sovereign\n\nPlease select your preferred installation type:" \ @@ -28,7 +28,7 @@ ROLE=$(zenity --list --radiolist \ FALSE "₿" "Node (Bitcoin-only)" "Full Bitcoin node with Bitcoin Lightning and non-KYC buying and selling." || true) if [ -z "$ROLE" ]; then - zenity --error --window-icon="$LOGO" --text="Installation cancelled." + zenity --error --icon="$LOGO" --text="Installation cancelled." exit 1 fi @@ -38,7 +38,7 @@ fi mapfile -t DISKS < <(lsblk -b -dno NAME,SIZE,TYPE,RO,TRAN -e 7,11 | awk '$3=="disk" && $4=="0" && $5!="usb" {print $1":"$2}') if [ "${#DISKS[@]}" -eq 0 ]; then - zenity --error --window-icon="$LOGO" --text="No valid internal drives found. (USB drives are ignored)" + zenity --error --icon="$LOGO" --text="No valid internal drives found. (USB drives are ignored)" exit 1 fi @@ -58,7 +58,7 @@ fi # Updated to check against 2TB if [ -n "$DATA_DISK" ] && [ "$DATA_SIZE" -lt "$BYTES_2TB" ]; then - zenity --warning --window-icon="$LOGO" --text="Second disk detected (${DATA_DISK}), but it is smaller than 2TB.\n\nIt will NOT be used." + zenity --warning --icon="$LOGO" --text="Second disk detected (${DATA_DISK}), but it is smaller than 2TB.\n\nIt will NOT be used." DATA_DISK="" DATA_SIZE="" fi @@ -70,9 +70,9 @@ else SUMMARY="${SUMMARY}\nData disk: none" fi -CONFIRM=$(zenity --entry --window-icon="$LOGO" --text="WARNING: This will ERASE ALL DATA on:\n\n${SUMMARY}\n\nType ERASE to continue.") +CONFIRM=$(zenity --entry --icon="$LOGO" --text="WARNING: This will ERASE ALL DATA on:\n\n${SUMMARY}\n\nType ERASE to continue.") if [ "$CONFIRM" != "ERASE" ]; then - zenity --error --window-icon="$LOGO" --text="Install cancelled." + zenity --error --icon="$LOGO" --text="Install cancelled." exit 1 fi @@ -88,27 +88,27 @@ fi # Use --arg (not --argstr) so device paths are passed as Nix string values correctly ( if [ -n "$DATA_PATH" ]; then - disko --mode disko /etc/sovran/flake/iso/disko.nix \ + sudo disko --mode disko /etc/sovran/flake/iso/disko.nix \ --arg device '"'"$BOOT_PATH"'"' \ --arg dataDevice '"'"$DATA_PATH"'"' else - disko --mode disko /etc/sovran/flake/iso/disko.nix \ + sudo disko --mode disko /etc/sovran/flake/iso/disko.nix \ --arg device '"'"$BOOT_PATH"'"' fi ) 2>&1 | zenity --progress --pulsing \ - --window-icon="$LOGO" \ + --icon="$LOGO" \ --title="Partitioning Drives" \ --text="Partitioning and formatting your drives...\n\nThis will take a moment." \ --width=500 \ --auto-close \ --no-cancel -nixos-generate-config --root /mnt +sudo nixos-generate-config --root /mnt cp /mnt/etc/nixos/hardware-configuration.nix /tmp/hardware-configuration.nix -rm -rf /mnt/etc/nixos/* -cp -a /etc/sovran/flake/* /mnt/etc/nixos/ -cp /tmp/hardware-configuration.nix /mnt/etc/nixos/hardware-configuration.nix +sudo rm -rf /mnt/etc/nixos/* +sudo cp -a /etc/sovran/flake/* /mnt/etc/nixos/ +sudo cp /tmp/hardware-configuration.nix /mnt/etc/nixos/hardware-configuration.nix # ── 4. APPLY ROLE STATE & TEMPLATE ─────────────────────────────────────── @@ -122,7 +122,7 @@ case "$ROLE" in "Node (Bitcoin-only)") IS_NODE="true" ;; esac -cat > /mnt/etc/nixos/role-state.nix < /dev/null < /mnt/etc/nixos/role-state.nix <&1 | \ +sudo nixos-install --root /mnt --flake /mnt/etc/nixos#nixos 2>&1 | \ zenity --progress --pulsing \ - --window-icon="$LOGO" \ + --icon="$LOGO" \ --title="Installing Sovran SystemsOS" \ --text="Installing your system...\n\nThis may take 20–40 minutes depending on your internet speed.\nPlease do not turn off your computer." \ --width=500 \ @@ -172,4 +172,4 @@ Before you reboot, please write down your main login details: Click OK to reboot into your new system!" -reboot +sudo reboot diff --git a/result b/result index fcf0d27..7f47e9c 120000 --- a/result +++ b/result @@ -1 +1 @@ -/nix/store/f8vzhhkqnyir5kjrksw39jbjcxkw0vrs-Sovran_SystemsOS.iso \ No newline at end of file +/nix/store/d2wsw3p539hmdhc6gaxjds8l2yw1jr4n-Sovran_SystemsOS.iso \ No newline at end of file