Phase 7: rename SkyOS → OrionOS across entire codebase

- Rename all binaries: skywm→orionwm, skydeskbar→oriondeskbar,
  skylauncher→orionlauncher, skyinstall/skyinstall-gui→orioninstall*
- Rename theme directory: themes/SkyOS/ → themes/OrionOS/
- Update all string literals, window titles, menu labels, and comments
- Update ISO build: hostname→orionos, user→orion, all paths/labels
- Add Plymouth boot splash theme (orionos) with Navy+Blue palette
- Update GTK2/GTK3 theme names, wallpaper output name
- Update .gitignore, root Makefile, build-iso.sh for new binary names

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-07-23 13:42:18 -04:00
1 parent 803ffe991f
commit 61fa1194db
20 files changed
+452 -160

No files matched your search

+83 -83
View File
@@ -1,15 +1,15 @@
#!/usr/bin/env bash
# Runs inside the Docker container.
# Produces /dist/skyos.iso using archiso's "releng" profile as a base.
# Produces /dist/orionos.iso using archiso's "releng" profile as a base.
set -euo pipefail
DIST="${DIST:-/dist}"
WORK=/tmp/skyos-work
PROFILE=/tmp/skyos-profile
SRC=/skyos
WORK=/tmp/orionos-work
PROFILE=/tmp/orionos-profile
SRC=/orionos
echo "════════════════════════════════════════"
echo " SkyOS ISO Builder"
echo " OrionOS ISO Builder"
echo "════════════════════════════════════════"
# ── 1. Start from archiso's releng profile ────────────────────────────
@@ -195,23 +195,23 @@ echo ">>> Live initramfs HOOKS: base udev microcode archiso block filesystems ke
# passwd / shadow / group
cat > "$AIROOTFS/etc/hostname" <<'EOF'
skyos
orionos
EOF
# Create 'sky' user in the live environment
# Create 'orion' user in the live environment
mkdir -p "$AIROOTFS/etc/sudoers.d"
echo "%wheel ALL=(ALL) ALL" > "$AIROOTFS/etc/sudoers.d/wheel"
# ── 3b. OnlyOffice — create a local pacman repo so mkarchiso can find it
if [[ -f /onlyoffice.pkg.tar.zst ]]; then
echo ">>> Setting up local OnlyOffice repo..."
mkdir -p /skyos-local-repo
cp /onlyoffice.pkg.tar.zst /skyos-local-repo/
OO_PKG="$(find /skyos-local-repo -name '*.pkg.tar.zst' | head -1)"
repo-add /skyos-local-repo/skyos-local.db.tar.gz "$OO_PKG"
mkdir -p /orionos-local-repo
cp /onlyoffice.pkg.tar.zst /orionos-local-repo/
OO_PKG="$(find /orionos-local-repo -name '*.pkg.tar.zst' | head -1)"
repo-add /orionos-local-repo/orionos-local.db.tar.gz "$OO_PKG"
# Prepend [skyos-local] to the profile's pacman.conf
sed -i 's/^\[core\]/[skyos-local]\nSigLevel = Never\nServer = file:\/\/\/skyos-local-repo\n\n[core]/' \
# Prepend [orionos-local] to the profile's pacman.conf
sed -i 's/^\[core\]/[orionos-local]\nSigLevel = Never\nServer = file:\/\/\/orionos-local-repo\n\n[core]/' \
"$PROFILE/pacman.conf"
echo "onlyoffice-bin" >> "$PROFILE/packages.x86_64"
@@ -220,33 +220,33 @@ else
echo ">>> OnlyOffice build not available — skipping."
fi
# ── 4. Install SkyOS binaries ─────────────────────────────────────────
echo ">>> Installing SkyOS binaries..."
# ── 4. Install OrionOS binaries ─────────────────────────────────────────
echo ">>> Installing OrionOS binaries..."
mkdir -p "$AIROOTFS/usr/local/bin"
install -m755 "$SRC/wm/skywm" "$AIROOTFS/usr/local/bin/skywm"
install -m755 "$SRC/deskbar/skydeskbar" "$AIROOTFS/usr/local/bin/skydeskbar"
install -m755 "$SRC/launcher/skylauncher" "$AIROOTFS/usr/local/bin/skylauncher"
install -m755 "$SRC/themes/skywallpaper" "$AIROOTFS/usr/local/bin/skywallpaper"
install -m755 "$SRC/installer/skyinstall" "$AIROOTFS/usr/local/bin/skyinstall"
install -m755 "$SRC/wm/orionwm" "$AIROOTFS/usr/local/bin/orionwm"
install -m755 "$SRC/deskbar/oriondeskbar" "$AIROOTFS/usr/local/bin/oriondeskbar"
install -m755 "$SRC/launcher/orionlauncher" "$AIROOTFS/usr/local/bin/orionlauncher"
install -m755 "$SRC/themes/orionwallpaper" "$AIROOTFS/usr/local/bin/orionwallpaper"
install -m755 "$SRC/installer/orioninstall" "$AIROOTFS/usr/local/bin/orioninstall"
# GUI installer (compiled binary; falls back gracefully if not built)
if [[ -f "$SRC/installer/skyinstall-gui" ]]; then
install -m755 "$SRC/installer/skyinstall-gui" "$AIROOTFS/usr/local/bin/skyinstall-gui"
if [[ -f "$SRC/installer/orioninstall-gui" ]]; then
install -m755 "$SRC/installer/orioninstall-gui" "$AIROOTFS/usr/local/bin/orioninstall-gui"
fi
# ── 5. GTK theme ──────────────────────────────────────────────────────
echo ">>> Installing GTK theme..."
mkdir -p "$AIROOTFS/usr/share/themes"
cp -r "$SRC/themes/SkyOS" "$AIROOTFS/usr/share/themes/"
cp -r "$SRC/themes/OrionOS" "$AIROOTFS/usr/share/themes/"
# ── 6. picom config ───────────────────────────────────────────────────
mkdir -p "$AIROOTFS/etc/skyos"
install -m644 "$SRC/themes/picom.conf" "$AIROOTFS/etc/skyos/picom.conf"
mkdir -p "$AIROOTFS/etc/orionos"
install -m644 "$SRC/themes/picom.conf" "$AIROOTFS/etc/orionos/picom.conf"
# ── 7. Default wallpaper ──────────────────────────────────────────────
echo ">>> Generating default wallpaper..."
mkdir -p "$AIROOTFS/usr/share/skyos/wallpapers"
mkdir -p "$AIROOTFS/usr/share/orionos/wallpapers"
if convert -size 1920x1080 gradient:"#1E3A5A-#0E1A28" \
"$AIROOTFS/usr/share/skyos/wallpapers/skyos-default.png" 2>/dev/null; then
"$AIROOTFS/usr/share/orionos/wallpapers/orionos-default.png" 2>/dev/null; then
echo " Wallpaper generated."
else
echo " (ImageMagick unavailable in container — wallpaper skipped, solid color will be used)"
@@ -259,7 +259,7 @@ mkdir -p "$SKEL/.config/gtk-3.0"
cat > "$SKEL/.xinitrc" <<'XINITRC'
#!/bin/sh
# SkyOS session startup
# OrionOS session startup
# Merge X resources if present
[ -f "$HOME/.Xresources" ] && xrdb -merge "$HOME/.Xresources"
@@ -271,23 +271,23 @@ xset r rate 250 30
xrandr --dpi 96
# Wallpaper
skywallpaper
orionwallpaper
# Create standard user directories (Desktop, Downloads, Pictures…)
xdg-user-dirs-update 2>/dev/null || true
# GTK theme
export GTK_THEME=SkyOS
export GTK_THEME=OrionOS
mkdir -p "$HOME/.config/gtk-3.0"
cat > "$HOME/.config/gtk-3.0/settings.ini" <<EOF
[Settings]
gtk-theme-name=SkyOS
gtk-theme-name=OrionOS
gtk-font-name=Sans 10
gtk-icon-theme-name=Adwaita
gtk-cursor-theme-name=Adwaita
EOF
cat > "$HOME/.gtkrc-2.0" <<EOF
include "/usr/share/themes/SkyOS/gtk-2.0/gtkrc"
include "/usr/share/themes/OrionOS/gtk-2.0/gtkrc"
EOF
# Audio session (pipewire + wireplumber)
@@ -305,7 +305,7 @@ dunst &
nm-applet &
# Compositor
picom --config /etc/skyos/picom.conf &
picom --config /etc/orionos/picom.conf &
# Clipboard sync: keep PRIMARY and CLIPBOARD selections in sync
if command -v xclip &>/dev/null; then
@@ -325,16 +325,16 @@ xfce4-power-manager &
xbindkeys &
# Deskbar
skydeskbar &
oriondeskbar &
# Window manager (must be last — controls the session)
exec skywm
exec orionwm
XINITRC
chmod 755 "$SKEL/.xinitrc"
cat > "$SKEL/.xbindkeysrc" <<'XBK'
# App launcher
"skylauncher"
"orionlauncher"
Mod1 + F1
# Brightness (Mac Fn+F1/F2, also mapped as XF86 keys)
@@ -383,7 +383,7 @@ FONTS
# ── .Xresources — nice dark xterm ────────────────────────────────────
cat > "$SKEL/.Xresources" <<'XRES'
! SkyOS dark terminal theme
! OrionOS dark terminal theme
XTerm*faceName: DejaVu Sans Mono
XTerm*faceSize: 11
XTerm*renderFont: true
@@ -526,7 +526,7 @@ DUNST
cat > "$SKEL/.config/gtk-3.0/settings.ini" <<'GTK3'
[Settings]
gtk-theme-name=SkyOS
gtk-theme-name=OrionOS
gtk-font-name=Sans 10
gtk-icon-theme-name=Adwaita
gtk-cursor-theme-name=DMZ-White
@@ -534,22 +534,22 @@ GTK3
# ── Plymouth dark navy boot splash ───────────────────────────────────
echo ">>> Creating Plymouth theme..."
PLYM="$AIROOTFS/usr/share/plymouth/themes/skyos"
PLYM="$AIROOTFS/usr/share/plymouth/themes/orionos"
mkdir -p "$PLYM"
cat > "$PLYM/skyos.plymouth" <<'PLYMDEF'
cat > "$PLYM/orionos.plymouth" <<'PLYMDEF'
[Plymouth Theme]
Name=SkyOS
Description=SkyOS dark navy boot splash
Name=OrionOS
Description=OrionOS dark navy boot splash
ModuleName=script
[script]
ImageDir=/usr/share/plymouth/themes/skyos
ScriptFile=/usr/share/plymouth/themes/skyos/skyos.script
ImageDir=/usr/share/plymouth/themes/orionos
ScriptFile=/usr/share/plymouth/themes/orionos/orionos.script
PLYMDEF
cat > "$PLYM/skyos.script" <<'PLYMSCRIPT'
# SkyOS Plymouth boot splash — dark navy + accent blue progress bar
cat > "$PLYM/orionos.script" <<'PLYMSCRIPT'
# OrionOS Plymouth boot splash — dark navy + accent blue progress bar
W = Window.GetWidth();
H = Window.GetHeight();
@@ -594,11 +594,11 @@ PLYMSCRIPT
# Generate PNG assets (ImageMagick is used above for the wallpaper)
if command -v convert &>/dev/null; then
# Logo: "SkyOS" in accent blue on transparent background
# Logo: "OrionOS" in accent blue on transparent background
convert -size 340x90 xc:none \
-font DejaVu-Sans-Bold -pointsize 62 \
-fill "#90BBEE" -gravity center \
-annotate 0 "SkyOS" \
-annotate 0 "OrionOS" \
"$PLYM/logo.png" 2>/dev/null \
&& echo " Plymouth logo generated." \
|| echo " Plymouth logo generation failed (non-fatal)."
@@ -661,10 +661,10 @@ MODPROBE
# ── 9. profiledef.sh — archiso metadata ──────────────────────────────
cat > "$PROFILE/profiledef.sh" <<'PROFILEDEF'
#!/usr/bin/env bash
iso_name="skyos"
iso_label="SKYOS_$(date +%Y%m)"
iso_publisher="SkyOS Project"
iso_application="SkyOS — BeOS-inspired Linux Desktop"
iso_name="orionos"
iso_label="ORIONOS_$(date +%Y%m)"
iso_publisher="OrionOS Project"
iso_application="OrionOS — BeOS-inspired Linux Desktop"
iso_version="0.2"
install_dir="arch"
buildmodes=('iso')
@@ -682,11 +682,11 @@ file_permissions=(
["/etc/shadow"]="0:0:400"
["/etc/skel/.xinitrc"]="0:0:755"
["/root/customize_airootfs.sh"]="0:0:755"
["/usr/local/bin/skywm"]="0:0:755"
["/usr/local/bin/skydeskbar"]="0:0:755"
["/usr/local/bin/skylauncher"]="0:0:755"
["/usr/local/bin/skywallpaper"]="0:0:755"
["/usr/local/bin/skyinstall"]="0:0:755"
["/usr/local/bin/orionwm"]="0:0:755"
["/usr/local/bin/oriondeskbar"]="0:0:755"
["/usr/local/bin/orionlauncher"]="0:0:755"
["/usr/local/bin/orionwallpaper"]="0:0:755"
["/usr/local/bin/orioninstall"]="0:0:755"
)
PROFILEDEF
@@ -695,13 +695,13 @@ PROFILEDEF
# systemd-boot entry (UEFI)
mkdir -p "$PROFILE/efiboot/loader/entries"
cat > "$PROFILE/efiboot/loader/loader.conf" <<'LOADER'
default skyos.conf
default orionos.conf
timeout 5
editor no
LOADER
cat > "$PROFILE/efiboot/loader/entries/skyos.conf" <<'ENTRY'
title SkyOS
cat > "$PROFILE/efiboot/loader/entries/orionos.conf" <<'ENTRY'
title OrionOS
linux /arch/boot/x86_64/vmlinuz-linux
initrd /arch/boot/x86_64/initramfs-linux.img
options archisobasedir=arch archisolabel=%ARCHISO_LABEL% quiet splash loglevel=3
@@ -713,7 +713,7 @@ mkdir -p "$AIROOTFS/etc/systemd/system/getty@tty1.service.d"
cat > "$AIROOTFS/etc/systemd/system/getty@tty1.service.d/autologin.conf" <<'AUTOLOGIN'
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin sky --noclear %I $TERM
ExecStart=-/sbin/agetty --autologin orion --noclear %I $TERM
AUTOLOGIN
# bash_profile: startx automatically on tty1 (no exec — keep shell on failure)
@@ -736,9 +736,9 @@ echo "LANG=en_US.UTF-8" > /etc/locale.conf
# Timezone
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
# Create user 'sky' (live session user)
useradd -m -G wheel,audio,video,storage,input -s /bin/bash sky 2>/dev/null || true
echo "sky:skyos" | chpasswd
# Create user 'orion' (live session user)
useradd -m -G wheel,audio,video,storage,input -s /bin/bash orion 2>/dev/null || true
echo "orion:orionos" | chpasswd
# sudoers
echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/wheel
@@ -751,20 +751,20 @@ systemctl enable fstrim.timer 2>/dev/null || true
# MIME / default app associations
if command -v xdg-mime &>/dev/null; then
# Run as the sky user (xdg-mime needs $HOME)
sudo -u sky HOME=/home/sky XDG_DATA_HOME=/home/sky/.local/share \
# Run as the orion user (xdg-mime needs $HOME)
sudo -u orion HOME=/home/orion XDG_DATA_HOME=/home/orion/.local/share \
xdg-mime default firefox.desktop x-scheme-handler/http \
x-scheme-handler/https \
text/html 2>/dev/null || true
sudo -u sky HOME=/home/sky XDG_DATA_HOME=/home/sky/.local/share \
sudo -u orion HOME=/home/orion XDG_DATA_HOME=/home/orion/.local/share \
xdg-mime default evince.desktop application/pdf 2>/dev/null || true
sudo -u sky HOME=/home/sky XDG_DATA_HOME=/home/sky/.local/share \
sudo -u orion HOME=/home/orion XDG_DATA_HOME=/home/orion/.local/share \
xdg-mime default viewnior.desktop image/jpeg image/png \
image/gif image/webp 2>/dev/null || true
sudo -u sky HOME=/home/sky XDG_DATA_HOME=/home/sky/.local/share \
sudo -u orion HOME=/home/orion XDG_DATA_HOME=/home/orion/.local/share \
xdg-mime default mpv.desktop video/mp4 video/mkv \
audio/mpeg audio/flac 2>/dev/null || true
sudo -u sky HOME=/home/sky XDG_DATA_HOME=/home/sky/.local/share \
sudo -u orion HOME=/home/orion XDG_DATA_HOME=/home/orion/.local/share \
xdg-mime default mousepad.desktop text/plain 2>/dev/null || true
fi
update-desktop-database 2>/dev/null || true
@@ -772,8 +772,8 @@ update-desktop-database 2>/dev/null || true
# Fontconfig cache
fc-cache -f 2>/dev/null || true
# Plymouth: set SkyOS as the default theme (archiso runs mkinitcpio after this)
plymouth-set-default-theme skyos 2>/dev/null || true
# Plymouth: set OrionOS as the default theme (archiso runs mkinitcpio after this)
plymouth-set-default-theme orionos 2>/dev/null || true
# xscreensaver config (screen lock)
mkdir -p /etc/skel
@@ -788,19 +788,19 @@ dpmsSuspend: 0:20:00
dpmsOff: 0:30:00
SS
# Copy skeleton to sky's home (ensure xinitrc is present)
cp -r /etc/skel/. /home/sky/ 2>/dev/null || true
chown -R sky:sky /home/sky
# Copy skeleton to orion's home (ensure xinitrc is present)
cp -r /etc/skel/. /home/orion/ 2>/dev/null || true
chown -R orion:orion /home/orion
# Ensure SkyOS binaries are executable (permissions can be lost through squashfs build)
chmod +x /usr/local/bin/skywm \
/usr/local/bin/skydeskbar \
/usr/local/bin/skylauncher \
/usr/local/bin/skywallpaper \
/usr/local/bin/skyinstall 2>/dev/null || true
[ -f /usr/local/bin/skyinstall-gui ] && chmod +x /usr/local/bin/skyinstall-gui
# Ensure OrionOS binaries are executable (permissions can be lost through squashfs build)
chmod +x /usr/local/bin/orionwm \
/usr/local/bin/oriondeskbar \
/usr/local/bin/orionlauncher \
/usr/local/bin/orionwallpaper \
/usr/local/bin/orioninstall 2>/dev/null || true
[ -f /usr/local/bin/orioninstall-gui ] && chmod +x /usr/local/bin/orioninstall-gui
echo "SkyOS customization complete."
echo "OrionOS customization complete."
CUSTOMIZE
chmod 755 "$PROFILE/airootfs/root/customize_airootfs.sh"