Initial commit: Sethian v0.1 release

This commit is contained in:
Seth 2026-01-07 16:03:18 -05:00
commit 841eab2661
3 changed files with 211 additions and 0 deletions

114
README.md Normal file
View File

@ -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).

BIN
branding-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

97
sethian-build.sh Executable file
View File

@ -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 <<EOF > /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!"