commit 841eab266193a53df845ee96baec0866dfbd698f Author: Seth Date: Wed Jan 7 16:03:18 2026 -0500 Initial commit: Sethian v0.1 release diff --git a/README.md b/README.md new file mode 100644 index 0000000..34e3c35 --- /dev/null +++ b/README.md @@ -0,0 +1,114 @@ +# Sethian OS - Modification Log + +## Project Overview +**Base System:** Debian GNU/Linux 13 "Trixie" (Testing) +**Desktop Environment:** GNOME 48 +**Project Path:** `/home/seth/Sethian/sethian0.2` +**Current Version:** 0.2 + +--- + +## 1. Core System Modifications + +### Package Management +* **Added:** + * `task-gnome-desktop`: Full GNOME desktop environment. + * `calamares`: The system installer. + * `calamares-settings-debian`: Debian-specific configurations for Calamares. + * `gnome-shell-extension-dash-to-panel`: Taskbar functionality. + * `gnome-shell-extensions`: Standard GNOME extensions. + * `qbittorrent`: BitTorrent client. +* **Removed (Debloating):** + * `totem`: Default GNOME Videos app. + * `xiterm+thai`: Thai terminal emulator. + * `thunderbird`: Email client. + * `gnome-maps`: Maps application. + * `gnome-weather`: Weather application. + * `malcontent`, `malcontent-gui`: Parental controls. + * `firmware-netronome`, `firmware-marvell-prestera`: Enterprise networking firmware (~200MB). + * `fonts-noto-extra`, `fonts-noto-ui-extra`: Extensive global font support (~400MB). + * `locales-all`: Pre-generated locales for all languages (~230MB). + * `gnome-user-docs`: GNOME documentation (~70MB). + * `wpolish`: Polish dictionary. + +### System Configuration +* **Hostname:** Set to `sethian`. +* **Locales:** + * Restricted to `en_US.UTF-8` and `es_MX.UTF-8`. + * Removed all other locale directories from `/usr/share/locale`. +* **Keyboard Layout:** + * Primary: English (US). + * Secondary: English (Dvorak). + * Toggle: `Win+Space`. + * Applied system-wide via `/etc/default/keyboard` and per-user via DConf. + +--- + +## 2. Desktop & UI Customizations (GNOME) + +### DConf Settings (Applied to Default User) +* **Dash to Panel:** + * Enabled by default. + * **Position:** Top. + * **Height:** 35px. + * **App Grouping:** Disabled (`group-apps=false`). +* **Extensions:** + * Enabled `dash-to-panel` and `apps-menu` by default. +* **Appearance:** + * **Accent Color:** Locked to **Orange**. + * **Wallpaper:** Locked to custom Black + Sethian Logo image. + * **Theme:** Adwaita (Default). + +### Wallpaper +* **File:** `/usr/share/backgrounds/black.png` (1920x1080 Black with centered Sethian logo). +* **Registration:** Added `sethian-wallpapers.xml` to `/usr/share/gnome-background-properties/`. +* **Cleanup:** Removed all other default wallpapers and XML definitions from `/usr/share/gnome-background-properties/`. + +--- + +## 3. Installer (Calamares) Customization + +### Branding +* **Name:** "Sethian" (Replaced "Debian GNU/Linux"). +* **Version:** "0.2" (Replaced "13" / "trixie"). +* **Images:** + * Replaced `squid.png` (Icon), `languages.png` (Welcome), `banner.png` (Header) with `Sethian0.1.png`. + * Target Directory: `/etc/calamares/branding/debian/`. +* **Style:** + * Sidebar Background: Black (`#000000`). + * Highlight Color: Orange (`#ff8c00`). + +### Configuration +* **Welcome Screen:** + * Disabled "Support", "Known Issues", and "Release Notes" buttons. +* **Language Selection:** + * Restricted list to English (`en`) and Mexican Spanish (`es_MX`) via `welcome.conf`. +* **Post-Install:** + * Added `calamares` to the removal list in `packages.conf`, ensuring the installer is uninstalled from the target system after setup. + +--- + +## 4. Bootloader & Splash Branding + +### ISOLINUX (BIOS Boot) +* **Splash Image:** Replaced `/isolinux/splash.png` with Sethian logo in `custom-disk`. +* **Menu Text:** Updated `menu.cfg` and `stdmenu.cfg` to display "Sethian Live" instead of "Debian Live". + +### GRUB (UEFI Boot) +* **Splash Image:** Replaced `/boot/grub/splash.png` with Sethian logo in `custom-disk`. +* **Menu Text:** Updated `grub.cfg` to display "Sethian Live". + +### Plymouth (Boot Animation) +* **Theme:** Default `spinner` theme. +* **Watermark:** Replaced `/usr/share/plymouth/themes/spinner/watermark.png` with Sethian logo. + +### GDM (Login Screen) +* **Background:** Replaced `/usr/share/desktop-base/ceratopsian-theme/login/background.svg` with the Sethian wallpaper. + +--- + +## 5. OS Identification +* **Files Modified:** `/etc/os-release` and `/usr/lib/os-release`. +* **NAME:** "Sethian". +* **PRETTY_NAME:** "Sethian 0.2". +* **HOME_URL:** "https://example.com/sethian" (Placeholder). diff --git a/branding-logo.png b/branding-logo.png new file mode 100644 index 0000000..3810f77 Binary files /dev/null and b/branding-logo.png differ diff --git a/sethian-build.sh b/sethian-build.sh new file mode 100755 index 0000000..0df1524 --- /dev/null +++ b/sethian-build.sh @@ -0,0 +1,97 @@ +#!/bin/bash + +# Exit immediately if a command exits with a non-zero status +set -e + +echo "Starting Sethian 0.1 (Slim Edition + Printing/Scanning) Customization..." + +# --- 1. Repositories & Updates --- +echo "Configuring repositories..." +sed -i 's/main$/main contrib non-free non-free-firmware/' /etc/apt/sources.list +sed -i 's/main non-free-firmware$/main contrib non-free non-free-firmware/' /etc/apt/sources.list + +# Disable installing "Recommends" to keep future installs light +echo 'APT::Install-Recommends "0";' > /etc/apt/apt.conf.d/01norecommends +echo 'APT::Install-Suggests "0";' >> /etc/apt/apt.conf.d/01norecommends + +apt-get update + +# --- 2. Remove Bloatware --- +echo "Removing Heavy/Unused Packages..." + +# Remove Evolution (Email) +apt-get purge -y evolution evolution-common evolution-plugins evolution-ews + +# Remove LibreOffice (Huge space saver) +apt-get purge -y libreoffice* + +# Remove GNOME Games +apt-get purge -y gnome-games aisleriot gnome-sudoku gnome-mines gnome-mahjongg gnome-nibbles gnome-robots quadrapassel lightsoff swell-foop tali five-or-more hitori iagno + +# Remove other standard apps you might not need (Maps, Weather, Contacts, etc.) +# NOTE: We are KEEPING simple-scan for scanner support. +apt-get purge -y gnome-maps gnome-weather gnome-contacts gnome-clocks cheese rhythmbox totem + +# Aggressive cleanup +apt-get autoremove -y + +# --- 3. Install Core Applications & Utilities --- +echo "Installing Core Apps (VLC, Chrome, Extensions, Printer GUI)..." +# We include system-config-printer to ensure the printer setup GUI is available. +apt-get install -y vlc curl wget gnupg git system-config-printer simple-scan + +# Install Chrome +wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor -o /usr/share/keyrings/google-chrome.gpg +echo "deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list +apt-get update +apt-get install -y google-chrome-stable +update-alternatives --set x-www-browser /usr/bin/google-chrome-stable +update-alternatives --set gnome-www-browser /usr/bin/google-chrome-stable + +# Install Gemini CLI +echo "Installing Node.js and Gemini CLI..." +curl -fsSL https://deb.nodesource.com/setup_20.x | bash - +apt-get install -y nodejs +npm install -g @google/gemini-cli + +# Install GNOME Extensions +apt-get install -y gnome-shell-extension-dash-to-panel gnome-shell-extensions + +# --- 4. Drivers & Firmware --- +echo "Installing firmware..." +apt-get install -y firmware-linux firmware-linux-nonfree firmware-misc-nonfree firmware-iwlwifi firmware-realtek + +# --- 5. GNOME Configuration --- +echo "Applying GNOME Settings Overrides..." + +cat < /usr/share/glib-2.0/schemas/90_sethian_custom.gschema.override +[org.gnome.desktop.interface] +color-scheme='prefer-dark' +gtk-theme='Adwaita-dark' + +[org.gnome.shell] +enabled-extensions=['dash-to-panel@jderose9.github.io', 'apps-menu@gnome-shell-extensions.gcampax.github.com'] +favorite-apps=['google-chrome.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'vlc.desktop'] + +[org.gnome.shell.extensions.dash-to-panel] +panel-position='TOP' +taskbar-locked=true +dot-position='TOP' +appicon-margin=4 +appicon-padding=4 +group-apps=false + +[org.gnome.desktop.wm.preferences] +button-layout='appmenu:minimize,maximize,close' +EOF + +glib-compile-schemas /usr/share/glib-2.0/schemas/ + +# --- Final Cleanup --- +echo "Deep Cleaning..." +apt-get clean +rm -rf /var/lib/apt/lists/* +rm -rf /tmp/* +rm -rf /var/cache/apt/archives/* + +echo "Sethian 0.1 Customization Complete!" \ No newline at end of file