updated todo since I wont be working on this for a while

This commit is contained in:
robojerk 2025-07-24 08:09:56 +00:00
parent 80499e2acc
commit 8102903b9a

114
todo.md
View file

@ -1,24 +1,102 @@
# ParticleOS Installer - TODO List
# ParticleOS ISO Builder - TODO
## Reminders
We are building an installer for an atomic desktop based on Ubuntu
Remove completed tasks to keep the file tidy.
bootc is REQUIRED
## Project Goals
- Create a bootable ISO for ParticleOS using bootc
- Implement atomic image installation to VM/bare metal
- Build a true bootc-native approach
## Current Task
## ✅ COMPLETED TODAY (2025-07-24)
_ Discuss what we're actually doing. The goal at the moment should be proving that we can and know how to install an an atomic image to a vm, then to a bare metal system.
- Once we can prove we CAN install our then finally build an iso of our own. Eith LiveCD ( should we just use the image we made? ) or use calmares linux install.
### Major Achievements:
1. **✅ Successfully Created ISO**: Generated `output/particleos-250724-0759.iso` (928MB)
2. **✅ Fixed All Build Issues**: Resolved dependency conflicts, Dockerfile syntax errors, and missing directories
3. **✅ Implemented True bootc Native Approach**:
- Created separate system image (`particleos-system:latest`) and live image (`particleos-live:latest`)
- Built minimal live environment with bootc tools
- Embedded `install-particleos` script for deployment
4. **✅ Robust Package Management**: Dynamic package detection for any version of bootc/ostree packages
5. **✅ Complete Dependency Resolution**: All required libraries and tools properly installed
6. **✅ ISO Boots in QEMU**: VM starts and kernel loads (though has rootfs mounting issue)
## Uncompleted
- Discuess targeting Plucky Penguin or event Questing Quokka since it's only 2 months from release
- Discuss update build to use latest KDE Plasma 6 with default to Wayland
- Discuss blocking AppArmor and switch to SELinux in the image creation. ** See selinux_ubuntu.md **
- Once we can build a iso, create ci/cd to, include artifacts or release.
- Discuss how to get flatpak installed and install certain flatpak application
- Discuss things missing but ** can ** be migrated from Aurora, Bazzite, and Bluefin
## Completed
### Technical Fixes Applied:
- **Dependency Issues**: Fixed bootc dependencies (podman, skopeo, libglib2.0-0t64, etc.)
- **Dockerfile Syntax**: Separated install-particleos script from embedded content
- **Directory Structure**: Added missing isolinux directory creation
- **Syslinux Modules**: Robust detection for ldlinux.c32 and other .c32 modules
- **Package Installation**: Dynamic version detection for all custom packages
## 🔄 CURRENT STATUS
- **ISO Created**: ✅ `output/particleos-250724-0759.iso` (928MB compressed)
- **VM Boots**: ✅ QEMU VM starts and kernel loads
- **Root Issue**: ❌ Kernel panic - "Unable to mount root fs on unknown-block(0,0)"
## 🎯 NEXT STEPS (Priority Order)
### 1. **Fix Live Environment Root Filesystem** (CRITICAL)
- **Issue**: Live environment can't mount its root filesystem
- **Root Cause**: Likely missing or incorrect casper/live-boot configuration
- **Actions Needed**:
- Verify casper configuration in live environment
- Check initramfs includes proper live-boot modules
- Ensure squashfs is properly referenced in bootloader config
- Test with simpler live-boot setup first
### 2. **Debug Live Boot Process**
- **Actions**:
- Add debug parameters to kernel boot line
- Check initramfs contents for live-boot scripts
- Verify casper.conf and filesystem.manifest are correct
- Test with Ubuntu's standard live-boot configuration
### 3. **Improve Installer Experience**
- **Current**: Basic command-line installer with device selection
- **Future**: Consider graphical installer or guided text interface
- **Features to add**:
- Partitioning options
- User account creation
- Network configuration
- Progress indicators
### 4. **Test Installation Process**
- **Actions**:
- Test bootc install command in live environment
- Verify system image deployment works
- Test booting installed system
- Validate atomic update capabilities
### 5. **Documentation and Polish**
- **Actions**:
- Document build process
- Create user installation guide
- Add error handling and recovery options
- Optimize ISO size and boot speed
## 🔧 TECHNICAL DEBT
- **Live-boot Configuration**: Needs proper setup for custom live environment
- **Error Handling**: Add better error messages and recovery options
- **Testing**: Need automated testing for build and installation process
- **Documentation**: Comprehensive guides for users and developers
## 📊 BUILD METRICS
- **System Image**: ~1.4GB uncompressed
- **Live Image**: ~928MB compressed
- **Build Time**: ~10-15 minutes
- **Dependencies**: All resolved successfully
## 🎉 SUCCESS INDICATORS
- [x] ISO builds without errors
- [x] All dependencies resolved
- [x] VM boots and kernel loads
- [ ] Live environment mounts root filesystem
- [ ] Installer script works correctly
- [ ] System image deploys successfully
- [ ] Installed system boots and works
## 🚀 ULTIMATE GOAL
Create a production-ready ParticleOS ISO that:
1. Boots reliably on various hardware
2. Provides intuitive installation experience
3. Deploys atomic bootc-managed system
4. Supports seamless updates and rollbacks