A customized Fedora Linux live ISO with pre-configured packages, themes, and utilities.
Latest Updates: See CHANGELOG.md for recent fixes and improvements.
Linux Compatibility: See LINUX_BUILD_FIX.md for known issues and solutions.
π New to building Fedora Remix? See Quickstart_Container.md for a complete step-by-step guide from repository clone to ISO creation.
- Podman installed on your system
- Fedora Remix Builder container (see RemixBuilder)
- At least 20GB free disk space
- SSH key for GitHub access (optional)
From the repository root, align the container tag and remix web settings in one step (recommended instead of hand-editing YAML):
chmod +x Update_Remix_Config.sh # once
./Update_Remix_Config.shThis interactively sets SSH_Key_Location, Fedora_Remix_Location, GitHub_Registry_Owner, Fedora_Version (root config.yml), plus fedora_version and include_pxeboot_files (Setup/config.yml). PXE boot artifacts are optional; answer no if you only need an ISO (Quickstart_Container.md explains when PXE can fail on old or very new Fedora versions). If you pull the published image from ghcr.io/tmichett/fedora-remix-builder, keep GitHub_Registry_Owner as tmichett. You can still edit config.yml by hand first so the scriptβs defaults match your host (Enter at each prompt keeps the shown value).
-
Verify and configure (Recommended):
# Run verification script - checks configuration and starts build ./Verify_Build_Remix.shThe verification script will:
- β Check Fedora versions match between config files
- β Verify container image availability
- β
Optionally confirm PXE/web boot file preference (
include_pxeboot_files) if unset - β Display configuration summary
- β Confirm before building
- β Automatically launch the build if approved
-
Or configure and build manually:
./Update_Remix_Config.sh # preferred: paths, registry owner, Fedora + PXE in sync # optional: vim config.yml first so script defaults match your machine # Run the build ./Build_Remix.sh
-
Build specific variants:
# Interactive mode - choose from available kickstarts ./Build_Remix.sh # Or specify directly ./Build_Remix.sh -k FedoraRemix # GNOME desktop (default) ./Build_Remix.sh -k FedoraRemixCosmic # COSMIC desktop # List available kickstarts ./Build_Remix.sh -l
-
Find your ISO:
- Location:
{Fedora_Remix_Location}/FedoraRemix/{KickstartName}.iso - Examples:
FedoraRemix.iso(GNOME desktop)FedoraRemixCosmic.iso(COSMIC desktop)
- Size: ~7-8 GB
- Build time: ~30-45 minutes
- Location:
If you're building on Linux and encounter /sys unmount errors, the issue has been resolved! See LINUX_BUILD_FIX.md for complete details.
Quick summary of the fix:
- β Patched imgcreate library to handle systemd-managed filesystems
- β Dynamic Python version detection
- β Automatic verification of patches
- β Builds now complete successfully on Linux
- Quickstart_Container.md - π Complete quickstart guide for containerized builds
- Quickstart_Physical.md - Native (physical/VM) build with
Build_Remix_Physical.sh - VERIFY_BUILD_REMIX_USAGE.md β
Verify_Build_Remix.shwalkthrough - Notes/Fedora_Remix_Quickstart.md - Long-form notes (RemixBuilder + kickstarts)
- Containerized (Recommended) - Use
./Verify_Build_Remix.shor./Build_Remix.sh - Physical/Virtual - See README_Physical.adoc for building on physical or virtual machines without containers
- LINUX_BUILD_FIX.md - Detailed fixes for Linux build issues (3 major fixes)
- SELINUX_RELABEL_FIX.md - SELinux relabeling error fix (April 2026)
- README_Scripts_Usage.md - Prepare scripts, web setup, Python workflow
- docs/README.adoc - Short AsciiDoc readme (docs folder)
Fedora_Remix/
βββ Build_Remix.sh # Main build script (runs container, kickstart selection)
βββ Update_Remix_Config.sh # Interactive: SSH path, remix dir, registry owner, Fedora + PXE (config.yml + Setup/config.yml)
βββ config.yml # Build configuration
βββ Setup/ # Build preparation scripts
β βββ Enhanced_Remix_Build_Script.sh
β βββ Prepare_Web_Files.py
β βββ Prepare_Fedora_Remix_Build.py
β βββ Kickstarts/ # Kickstart files for customization
β β βββ FedoraRemix.ks # GNOME variant (default)
β β βββ FedoraRemixCosmic.ks # COSMIC variant
β β βββ FedoraRemixPackages.ks # GNOME packages
β β βββ FedoraRemixCosmicPackages.ks # COSMIC packages
β β βββ KickstartSnippets/ # Modular snippets
β β βββ customize-gnome-wallpaper.ks
β β βββ customize-cosmic-wallpaper.ks
β β βββ ...
β βββ files/
β βββ Fixes/ # Python patches for livecd-tools
β βββ fs.py # Systemd /sys unmount fix
β βββ kickstart.py # Kickstart compatibility fix
βββ Files/ # Customization files (themes, configs)
| Variant | Kickstart | Desktop | Description |
|---|---|---|---|
| FedoraRemix | FedoraRemix.ks |
GNOME | Default variant with GNOME desktop, extensions, and full customization |
| FedoraRemixCosmic | FedoraRemixCosmic.ks |
COSMIC | System76's COSMIC desktop environment (Fedora 43+) |
The COSMIC desktop spin provides System76's new Rust-based desktop environment:
- Modern, tiling-capable compositor
- Native Wayland support
- Custom theming with Fedora Remix wallpapers
greetddisplay manager with auto-login support
# Build the COSMIC variant
./Build_Remix.sh -k FedoraRemixCosmicEdit these files to customize your Fedora Remix:
Setup/Kickstarts/FedoraRemix.ks- Main kickstart configurationSetup/Kickstarts/FedoraRemixPackages.ks- Package selectionSetup/Kickstarts/FedoraRemixRepos.ks- Repository configuration
Setup/Kickstarts/FedoraRemixCosmic.ks- Main COSMIC kickstartSetup/Kickstarts/FedoraRemixCosmicPackages.ks- COSMIC package selectionSetup/Kickstarts/KickstartSnippets/customize-cosmic-wallpaper.ks- COSMIC wallpapers
Files/- Custom files, themes, and configurations
See LINUX_BUILD_FIX.md - Python version detection fix required
# Check if container is stuck
sudo podman ps -a | grep remix-builder
# Force cleanup
sudo podman kill remix-builder && sudo podman rm -f remix-builder- Check available disk space (need 10GB+)
- Review build log in
/home/travis/Remix_Builder/FedoraRemix/FedoraBuild-*.log
Contributions welcome! Please ensure:
- Scripts are tested on both Linux and macOS
- Documentation is updated for any changes
- Kickstart files maintain Fedora compatibility
See individual license files within the project.