No description
Find a file
2025-07-22 06:46:32 +00:00
scripts Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
aurora-systems.yml Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
build-iso-mmdebstrap.sh Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
build-iso-simple.sh Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
build-iso.sh Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
readme.md Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
test-build.sh Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
test-sources.list Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00
VM_TESTING_SETUP_COMPLETE.md Initial commit: ParticleOS installer with KDE Plasma 2025-07-22 06:46:32 +00:00

ParticleOS Installer

A bootable ISO installer for ParticleOS, a Debian/Ubuntu-based atomic desktop system using apt-ostree.

🎯 Project Overview

ParticleOS is an atomic, immutable desktop system built on Debian/Ubuntu using apt-ostree (the Debian equivalent of rpm-ostree). This installer creates a bootable ISO that allows users to:

  1. Live Boot: Try ParticleOS without installation
  2. Install: Install ParticleOS to disk with atomic updates
  3. Experience: See apt-ostree in action on a real desktop system

🏗️ Architecture

Core Components:

  • Base System: Ubuntu 24.04 LTS with apt-ostree
  • Desktop Environment: KDE Plasma (similar to Aurora)
  • Package Manager: apt-ostree for atomic updates
  • Boot System: GRUB with ParticleOS branding
  • Installer: Custom installer for apt-ostree systems

Key Features:

  • Atomic Updates: Transactional system updates with rollback
  • Immutable by Default: System files protected, user data in /var
  • Package Management: apt-ostree for system packages, Flatpak for applications
  • Live Environment: Boot and test without installation

📁 Project Structure

particleos-installer/
├── README.md                 # This file
├── aurora-system.yaml        # apt-ostree system definition (future)
├── build-iso.sh             # Main ISO build script (future)
├── build-iso-simple.sh      # Simple ISO build script (current)
├── test-build.sh            # Test build environment
├── scripts/
│   ├── setup-chroot.sh      # Set up build environment
│   ├── build-system.sh      # Build ParticleOS system
│   ├── create-iso.sh        # Create bootable ISO
│   └── install-system.sh    # Installer script
├── config/
│   ├── grub.cfg            # GRUB boot configuration
│   ├── isolinux.cfg        # ISOLINUX configuration
│   └── branding/           # ParticleOS branding assets
└── output/                 # Generated ISO files

🚀 Quick Start

Build ParticleOS ISO:

# Clone the repository
git clone <your-repo> particleos-installer
cd particleos-installer

# Test the build environment
./test-build.sh

# Build the ISO (simple method)
./build-iso-simple.sh

# Result: output/particleos-1.0.0.iso

Test in VM:

# Create VM with the ISO
qemu-system-x86_64 -m 4G -enable-kvm \
  -cdrom output/particleos-1.0.0.iso \
  -boot d

🎨 ParticleOS Features

System Management:

# Check system status
apt-ostree status

# List installed packages
apt-ostree list

# Install packages
sudo apt-ostree install nginx

# System updates
sudo apt-ostree upgrade

# Rollback if needed
sudo apt-ostree rollback

Application Management:

# Install applications via Flatpak
flatpak install flathub org.kde.discover

# Or use traditional apt for user packages
sudo apt install firefox

🔧 Development

Prerequisites:

  • Ubuntu 24.04 LTS or Debian 12
  • apt-ostree (from your repository)
  • debootstrap, squashfs-tools, xorriso, grub-pc-bin
  • 10GB+ free space for building

Build Process:

  1. Base System: Create Ubuntu base using debootstrap
  2. Package Installation: Install apt-ostree and desktop packages
  3. System Configuration: Configure services and user accounts
  4. Live Environment: Create bootable live system
  5. ISO Creation: Package into bootable ISO
  6. Testing: Test in VM environment

🎯 Goals

  • apt-ostree Integration: Working atomic package management
  • OCI Image Support: Container image generation
  • Simple ISO Build: Basic bootable ISO creation
  • Advanced ISO Build: Full apt-ostree compose integration
  • Desktop Environment: KDE Plasma with ParticleOS branding
  • Installer: User-friendly installation process
  • Documentation: User and developer guides

🚀 Current Status

Working:

  • Basic ISO build system using debootstrap
  • apt-ostree integration in built system
  • Live boot environment
  • Simple installer script

🔄 In Progress:

  • Advanced apt-ostree compose commands
  • Full system definition support
  • ParticleOS branding and customization

📋 Next Steps:

  1. Test the simple ISO build
  2. Implement apt-ostree compose commands
  3. Add ParticleOS branding
  4. Create user-friendly installer
  5. Document user workflow

🤝 Contributing

This project follows the same principles as uBlue Aurora but adapted for Debian/Ubuntu with apt-ostree. Contributions are welcome!

📄 License

Same license as apt-ostree project.