FROM archlinux:latest # Update and install archiso + OrionOS build dependencies RUN pacman -Syu --noconfirm && \ pacman -S --noconfirm \ archiso \ base-devel \ git \ libx11 \ libxft \ libxfixes \ libxext \ libpng \ dbus \ pam \ fontconfig \ freetype2 \ xorg-server \ xorg-xinit \ feh \ picom \ alsa-utils \ ttf-dejavu \ noto-fonts \ pkgconf && \ pacman -Scc --noconfirm WORKDIR /build # Copy OrionOS source COPY . /build/orionos # Build OrionOS components RUN cd /build/orionos && make 2>&1 | tail -20 # Install binaries into the staging root that archiso will include RUN cd /build/orionos && \ install -Dm755 wm/orionwm /build/orionos/iso/profile/airootfs/usr/local/bin/orionwm && \ install -Dm755 deskbar/oriondeskbar /build/orionos/iso/profile/airootfs/usr/local/bin/oriondeskbar && \ install -Dm755 launcher/orionlauncher /build/orionos/iso/profile/airootfs/usr/local/bin/orionlauncher && \ install -Dm755 themes/orionwallpaper /build/orionos/iso/profile/airootfs/usr/local/bin/orionwallpaper && \ install -Dm755 orionnotify/orionnotify /build/orionos/iso/profile/airootfs/usr/local/bin/orionnotify && \ install -Dm755 orionlock/orionlock /build/orionos/iso/profile/airootfs/usr/local/bin/orionlock && \ install -Dm755 orionshot/orionshot /build/orionos/iso/profile/airootfs/usr/local/bin/orionshot && \ install -Dm755 orionclip/orionclip /build/orionos/iso/profile/airootfs/usr/local/bin/orionclip && \ install -Dm755 orionpkg/orionpkg /build/orionos/iso/profile/airootfs/usr/local/bin/orionpkg && \ cp -r themes/OrionOS /build/orionos/iso/profile/airootfs/usr/share/themes/ && \ install -Dm644 themes/picom.conf /build/orionos/iso/profile/airootfs/etc/orionos/picom.conf # Generate default wallpaper RUN mkdir -p /build/orionos/iso/profile/airootfs/usr/share/orionos/wallpapers && \ bash /build/orionos/themes/wallpapers/generate-default.sh 2>/dev/null && \ cp -f /build/orionos/themes/wallpapers/orionos-default.png \ /build/orionos/iso/profile/airootfs/usr/share/orionos/wallpapers/ 2>/dev/null || true # Build the ISO RUN mkarchiso -v \ -w /tmp/iso-work \ -o /output \ /build/orionos/iso/profile CMD ["/bin/bash"]