- Fixed sfdisk PATH issue in Containerfile.base (sfdisk is in /usr/sbin) - Updated Containerfile.minimal to use full path for grub-install - Enhanced test-bootc-deployment.sh to properly check utility locations - Added comprehensive section about related projects (apt-ostree, deb-bootupd, debian-bootc-corrected) - Updated validation script to handle Debian-specific utility locations - Improved error messages with specific solutions for PATH and utility issues This addresses the critical requirements from scope.md regarding disk utilities and PATH environment variables for bootc deployment.
72 lines
2.5 KiB
Desktop File
72 lines
2.5 KiB
Desktop File
# Particle-OS Desktop Containerfile
|
|
# Builds on the minimal image and adds desktop environment
|
|
# This creates the Phase 3 deliverable: Debian Aurora/Bazzite equivalent
|
|
|
|
FROM particle-os:minimal
|
|
|
|
# Install desktop environment (KDE Plasma)
|
|
RUN apt-get update && apt-get install -y \
|
|
# Display manager
|
|
sddm \
|
|
# KDE Plasma desktop
|
|
task-kde-desktop \
|
|
# Additional desktop applications
|
|
firefox-esr \
|
|
konsole \
|
|
dolphin \
|
|
kate \
|
|
# Multimedia support
|
|
vlc \
|
|
# Office applications
|
|
libreoffice \
|
|
# Additional utilities
|
|
gparted \
|
|
# Desktop-specific OSTree packages
|
|
ostree-grub2 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Configure display manager
|
|
RUN systemctl enable sddm
|
|
|
|
# Set up user environment
|
|
RUN mkdir -p /home/particle/.config && \
|
|
chown -R particle:particle /home/particle
|
|
|
|
# Configure desktop environment
|
|
RUN echo "export DESKTOP_SESSION=plasma" >> /home/particle/.profile && \
|
|
echo "export KDEWM=kwin" >> /home/particle/.profile
|
|
|
|
# Update OSTree configuration for desktop variant
|
|
RUN echo "OSTREE_OSVARIANT=desktop" >> /etc/ostree/ostree.conf && \
|
|
echo "OSTREE_SERVICES=sddm" >> /etc/ostree/ostree.conf && \
|
|
echo "OSTREE_DESKTOP=plasma" >> /etc/ostree/ostree.conf
|
|
|
|
# Create desktop-specific OSTree deployment structure
|
|
RUN mkdir -p /sysroot/ostree/deploy/particle-os/desktop/deploy && \
|
|
mkdir -p /sysroot/ostree/deploy/particle-os/desktop/var && \
|
|
mkdir -p /sysroot/ostree/deploy/particle-os/desktop/usr
|
|
|
|
# Set up desktop-specific systemd services
|
|
RUN systemctl enable sddm
|
|
|
|
# Label the image with OSTree-compliant labels
|
|
LABEL org.opencontainers.image.title="Particle-OS Desktop"
|
|
LABEL org.opencontainers.image.description="Desktop-focused Debian immutable OS"
|
|
LABEL org.opencontainers.image.version="0.1.0"
|
|
LABEL org.opencontainers.image.vendor="Particle-OS Project"
|
|
LABEL org.opencontainers.image.source="https://github.com/your-org/particle-os"
|
|
LABEL org.opencontainers.image.revision="0.1.0"
|
|
LABEL org.opencontainers.image.created="2024-01-01T00:00:00Z"
|
|
LABEL org.opencontainers.image.licenses="MIT"
|
|
LABEL org.opencontainers.image.ref.name="particle-os-desktop"
|
|
LABEL org.opencontainers.image.ostree.osname="particle-os"
|
|
LABEL org.opencontainers.image.ostree.osversion="0.1.0"
|
|
LABEL org.opencontainers.image.ostree.osvariant="desktop"
|
|
LABEL org.opencontainers.image.ostree.desktop="plasma"
|
|
|
|
# Health check
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
|
|
CMD systemctl is-system-running && systemctl is-active sddm || exit 1
|
|
|
|
# Default command
|
|
CMD ["/bin/bash"]
|