Shared OCI layer containing common configuration files used across all Bluefin variants (bluefin, bluefin-dx, bluefin-lts).
This layer contains two main configuration directories:
- Bling - CLI theming settings
- Fastfetch settings - System information display configuration
- Setup configuration - First-boot and system setup parameters
- Firefox defaults - Pre-configured Firefox settings
- Flatpak customization - Multiple levels of flatpak configuration:
- System-level flatpak overrides in
flatpak-overrides/(e.g., Bazaar) - User-level flatpak overrides in
/etc/skel/.local/share/flatpak/overrides/(e.g., VSCode, Chrome) - System flatpak Brewfiles for default application installation
- System-level flatpak overrides in
- Homebrew Brewfiles - Curated application bundles installable via
bbrewfull-desktop.Brewfile- Full collection of GNOME Circle and community flatpak applicationssystem-flatpaks.Brewfile- Default system-wide flatpaks for all Bluefin variantssystem-dx-flatpaks.Brewfile- Additional flatpaks for DX (Developer Experience) mode- Other specialized Brewfiles for fonts, CLI tools, AI tools, etc.
- Just recipes - Additional command recipes for system management
- MOTD templates - Message of the day and tips
- Setup hooks - Scripts for privileged, system, and user setup stages
Reference this layer as a build stage and copy the directories you need:
FROM ghcr.io/projectbluefin/common:latest AS bluefin-common
# Copy all system files
COPY --from=bluefin-common /system_files /This is what Aurora should use, gives shares the common set of files and keeps the images opinions seperate.
FROM ghcr.io/projectbluefin/common:latest AS bluefin-common
# Copy only /etc configuration
COPY --from=bluefin-common /system_files/etc /etcFROM ghcr.io/projectbluefin/common:latest AS bluefin-common
# Copy only /usr/share configuration
COPY --from=bluefin-common /system_files/usr /usrBluefin-common provides a comprehensive flatpak customization system with multiple layers:
Default flatpaks are now managed via Homebrew Brewfiles, allowing for declarative system-wide installation:
system-flatpaks.Brewfile- Core flatpaks installed on all Bluefin variants (37 applications including Firefox, Thunderbird, GNOME Circle apps, and utilities)system-dx-flatpaks.Brewfile- Additional development-focused flatpaks for DX mode (6 applications including Podman Desktop, Builder, and DevToolbox)
These can be installed using:
ujust install-system-flatpaksTwo types of flatpak overrides are provided to grant additional permissions to specific applications:
System-level overrides (/usr/share/ublue-os/flatpak-overrides/):
io.github.kolunmi.Bazaar- Grants access tohost-etcfor system configuration
User-level overrides (/etc/skel/.local/share/flatpak/overrides/):
com.visualstudio.code- Enables Wayland support and Podman socket accesscom.google.Chrome- Grants access to local applications and icons directories
These overrides are automatically applied to new user accounts through the /etc/skel template.
The /usr/share/ublue-os/homebrew/ directory contains curated application bundles installable via bbrew:
system-flatpaks.Brewfile- Default system-wide flatpaks for all Bluefin variantssystem-dx-flatpaks.Brewfile- Additional flatpaks for DX (Developer Experience) modefull-desktop.Brewfile- Comprehensive collection of GNOME Circle and community flatpak applications for a full desktop experiencefonts.Brewfile- Additional monospace fonts for developmentcli.Brewfile- CLI tools and utilitiesai-tools.Brewfile- AI and machine learning toolscncf.Brewfile- Cloud Native Computing Foundation toolsk8s-tools.Brewfile- Kubernetes toolside.Brewfile- Integrated development environmentsartwork.Brewfile- Design and artwork applications
Users can install these bundles using the ujust bbrew command, which will prompt them to select a Brewfile.
just build