From b47f0986d5ce51d6d9ebdec29e98f445ee70e5c3 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 8 Apr 2026 16:57:47 +0000
Subject: [PATCH 1/2] Initial plan
From bcd4a499420b003db0f540ef16dcc7f76f21ea55 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 8 Apr 2026 16:59:14 +0000
Subject: [PATCH 2/2] Fix installer branding and replace complete screen with
auto-reboot
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Replace all "Sovran SystemsOS" (with space) with "Sovran_SystemsOS"
- Line 241: landing page title
- Line 262: internet notice text
- Line 328: welcome/role-selection hero title (was "Sovran Systems")
- Line 910: install progress title
- Replace push_complete method: remove credentials screen (username,
password, first-boot note, reboot button) and replace with a simple
status page that says "Rebooting…" then auto-reboots after 3 seconds
via GLib.timeout_add_seconds
Agent-Logs-Url: https://github.com/naturallaw777/staging_alpha/sessions/2a39f2d5-6aef-42cf-a94a-e1db5c6a601a
Co-authored-by: naturallaw777 <99053422+naturallaw777@users.noreply.github.com>
---
iso/installer.py | 52 ++++++++----------------------------------------
1 file changed, 8 insertions(+), 44 deletions(-)
diff --git a/iso/installer.py b/iso/installer.py
index 008f3ce..b82e8ec 100644
--- a/iso/installer.py
+++ b/iso/installer.py
@@ -238,7 +238,7 @@ class InstallerWindow(Adw.ApplicationWindow):
pass
title = Gtk.Label()
- title.set_markup("Welcome to Sovran SystemsOS")
+ title.set_markup("Welcome to Sovran_SystemsOS")
title.set_margin_top(8)
hero.append(title)
@@ -259,7 +259,7 @@ class InstallerWindow(Adw.ApplicationWindow):
notice.set_markup(
""
"Before installation begins, please ensure you have an active internet connection.\n"
- "Sovran SystemsOS downloads packages during installation and requires internet access\n"
+ "Sovran_SystemsOS downloads packages during installation and requires internet access\n"
"to complete the process. Connect via Ethernet cable or configure Wi-Fi now."
""
)
@@ -325,7 +325,7 @@ class InstallerWindow(Adw.ApplicationWindow):
pass
title = Gtk.Label()
- title.set_markup("Sovran Systems")
+ title.set_markup("Sovran_SystemsOS")
hero.append(title)
sub = Gtk.Label()
@@ -907,7 +907,7 @@ class InstallerWindow(Adw.ApplicationWindow):
outer.append(self.nav_row(
next_label="Install Now",
next_cb=lambda b: self.push_progress(
- "Installing Sovran SystemsOS",
+ "Installing Sovran_SystemsOS",
"Building and installing your system. Please wait...",
self.do_install
)
@@ -979,50 +979,14 @@ class InstallerWindow(Adw.ApplicationWindow):
status = Adw.StatusPage()
status.set_title("Installation Complete!")
- status.set_description("Welcome to Sovran SystemsOS.")
+ status.set_description("Rebooting…")
status.set_vexpand(True)
- creds_group = Adw.PreferencesGroup()
- creds_group.set_title("⚠ Important — read before rebooting")
- creds_group.set_margin_start(40)
- creds_group.set_margin_end(40)
-
- user_row = Adw.ActionRow()
- user_row.set_title("Username")
- user_row.set_subtitle("free")
- creds_group.add(user_row)
-
- pass_row = Adw.ActionRow()
- pass_row.set_title("Default Password")
- pass_row.set_subtitle("free — you will be prompted to change it on first boot")
- creds_group.add(pass_row)
-
- note_row = Adw.ActionRow()
- note_row.set_title("First Boot Setup")
- note_row.set_subtitle(
- "After rebooting, the Sovran Hub will guide you through setting "
- "your password, domains, and all app credentials."
- )
- creds_group.add(note_row)
-
- content_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=16)
- content_box.append(status)
- content_box.append(creds_group)
- outer.append(content_box)
-
- reboot_btn = Gtk.Button(label="Reboot Now")
- reboot_btn.add_css_class("success")
- reboot_btn.add_css_class("pill")
- reboot_btn.connect("clicked", lambda b: subprocess.run(["sudo", "reboot"]))
-
- nav = Gtk.Box()
- nav.set_margin_bottom(24)
- nav.set_margin_end(40)
- nav.set_halign(Gtk.Align.END)
- nav.append(reboot_btn)
- outer.append(nav)
+ outer.append(status)
self.push_page("Complete", outer)
+
+ GLib.timeout_add_seconds(3, lambda: subprocess.run(["sudo", "reboot"]))
return False
# ── Error screen ───────────────────────────────────────────────────────