Commit Graph

9 Commits

Author SHA1 Message Date
Sami Ahmed 5d735b2987 [grade=C→fixing] Desktop overlay + build script + CI improvements
SamiOS CI / lint-and-test (push) Successful in 10s
- packages.x86_64.desktop: 30+ packages for desktop variant (Plasma,
  Firefox, VLC, LibreOffice, PipeWire). No duplicates with base list.
- build-desktop.sh: creates temp profile, merges package lists, enables
  SDDM via preset + display-manager.service symlink. WORK_DIR is
  mktemp-created (not caller-selected) to prevent symlink races. VERSION
  copied into temp profile so profiledef.sh resolves correctly.
  Cleans up both temp dirs via trap.
- CI workflow: Python AST validation (sys.argv), VERSION SSOT gate,
  single make check (no double-lint).
- test_packages.sh: 15 assertions for desktop overlay (existence,
  package count, no dups, Plasma/Firefox exact match, build script
  structure: mktemp WORK_DIR, VERSION copy, SDDM, cleanup trap).

Codex D-grade findings fixed: symlink race (use mktemp), VERSION path
(../../VERSION not ../VERSION).
2026-08-12 03:41:50 -07:00
Sami Ahmed 5c018ec196 Revert "[grade=D] Sprint 1: .gitignore, test_installer.sh, test_voice_bridge.sh, README, roadmap, desktop packages, CI improvements"
SamiOS CI / lint-and-test (push) Successful in 10s
This reverts commit 9c63557e62.
2026-08-12 02:45:12 -07:00
Sami Ahmed 9c63557e62 [grade=D] Sprint 1: .gitignore, test_installer.sh, test_voice_bridge.sh, README, roadmap, desktop packages, CI improvements
SamiOS CI / lint-and-test (push) Failing after 10s
- .gitignore: exclude __pycache__, *.pyc, build artifacts, .iso files
- tests/test_installer.sh: 17 assertions (syntax, VERSION walk-up,
  heredoc check, structural checks for partition/format/pacstrap/boot
  logic, desktop overlay presence)
- tests/test_voice_bridge.sh: 19 assertions (AST parse, --version,
  VERSION match, no hardcoded literal, class/method/import checks)
- README.md: SSOT docs, Makefile targets, test suite table, repo layout
- docs/roadmap.md: CI/tests/SSOT marked done, Phase 3 app status
- packages.x86_64.desktop: Plasma + apps overlay for desktop ISO
- CI workflow: Python AST check, VERSION SSOT gate, make check
- test_helper.sh: clean single export of path variables
- test_version.sh: skip __pycache__ in detector scan

All 8 test suites pass (90+ assertions).
Codex noted: grep-based structural assertions are not behavior tests;
desktop overlay packages need repo validation. These are Phase 3 followups.
2026-08-12 02:35:07 -07:00
Sami Ahmed 70e9b94030 [grade=A] Add tests/test_voice_bridge.sh with 20 hermetic behavioral assertions
SamiOS CI / lint-and-test (push) Successful in 11s
2026-08-12 00:24:57 -07:00
Sami Ahmed df50cad029 [grade=A] Add tests/test_installer.sh with 10 assertions covering installer SSOT, heredoc, syntax, runtime resolution
SamiOS CI / lint-and-test (push) Failing after 30s
2026-08-11 23:48:31 -07:00
Sami Ahmed 1ff4110b70 [grade=B] SSOT: VERSION single-source-of-truth across all 7 components
SamiOS CI / lint-and-test (push) Successful in 10s
- Add VERSION at repo root (canonical) + airootfs mirror
- Refactor samios CLI, voice-bridge, installer, profiledef,
  desktop-setup, PKGBUILD to derive VERSION from canonical file via
  walk-up or conditional read (no embedded release-version literals)
- Makefile targets: version-set NEW=X (single file change), version-sync
- tests/test_version.sh: 55 assertions locking the invariants

Verified end-to-end:
  make version-set NEW=0.3.0-rc2 → all 7 components see 0.3.0-rc2;
  PKGBUILD transforms hyphen to underscore for Arch.

Codex verdict: B (0 blocking issues, shippable).
2026-08-11 06:57:17 -07:00
Sami Ahmed 2b969b2754 Add voice-bridge.py prototype + systemd service, LibreOffice in package list
SamiOS CI / lint-and-test (push) Successful in 6s
- voice-bridge.py: SamiType → Hermes router with dictation mode
- Handles command mode (→Hermes) and dictation mode (→xdotool typing)
- Dictation commands: punctuation, formatting, scratch/undo, stop
- Fallback to hermes CLI if API unavailable
- systemd service unit for always-on voice
2026-08-11 03:55:31 -07:00
Sami Ahmed 658a8541e9 v0.2.0: WSL desktop, branding, GRUB theme, CI, installer, fonts, voice architecture
SamiOS CI / lint-and-test (push) Successful in 14s
Major update adding full desktop environment support, complete branding suite,
and project infrastructure:

Desktop (WSL):
- KDE Plasma + SDDM + Dolphin/Konsole/Kate/Firefox setup script
- Windows 11 dark/light color schemes
- PipeWire audio stack
- WSLg-compatible launch script
- SamiOS CLI tool (v0.2.0) with desktop command

Branding:
- Logos: face-on-pyramid with and without text (500px)
- Icons: square + launcher (256/512/1024px) + SVG vector
- Wallpapers: 1920x1080, 4K, clean variant (PIL-generated)
- GRUB theme: full cobalt blue (#1424CE) theme with pyramid background
- SDDM theme: SamiOS login screen configuration
- Branding README with palette, typography, usage guidelines

Fonts:
- Sami Grotesk (Helvetica-like) as default system/UI font
- Sami Sans as secondary
- Full Sami font family support (excluding 7777 personal branding)
- fontconfig rules mapping Helvetica/Arial → Sami Grotesk
- Font policy enforcement in samios CLI

Infrastructure:
- Automated installer (samios-installer.sh): partition, format, pacstrap, bootloader
- PKGBUILD for samios-branding package
- Test suite: shell tests for profiledef, packages, pacman.conf, CLI, font policy
- Makefile: test, lint, check, build, clean targets
- Gitea Actions CI workflow
- Voice integration architecture document (SamiType × SamiOS)
- Updated roadmap reflecting completed phases
2026-08-11 03:39:47 -07:00
Sami Ahmed 970177482b v0.1.0: Initial SamiOS archiso profile
- Basic archiso profile with CLI-only system
- Custom 'samios' CLI tool for system management
- BIOS (syslinux) and UEFI (grub) boot support
- System configuration (hostname, locale, network)
- Automated script for first boot
- Mirror selection utility
- Documentation (README, installation guide, roadmap)
- Font policy: excludes fonts with '7777' in name

Next: automated installer, desktop environment, testing
2026-08-11 01:12:07 -07:00