In this video series, we’re diving into Carli, a project designed for creating custom Arch Linux ISOs. Here, you’ll learn how to build, modify, and maintain your own Linux distribution using Archiso and the Calamares installer.
Carli Overview
Carli is more than just an ISO; it’s a complete Arch-based project that lets you design a personalized Linux environment. Whether you’re a beginner or an advanced user, Carli provides a structure to build from scratch, update, and maintain your unique system setup.
Getting Started
You’ll begin with foundational tools, including GitHub and various package-building steps, to manage and store your work.
Advanced Customization
As you progress, Carli guides you through setting up complex components like repositories, packages, and multiple desktop environments. You’ll explore using Calamares as an installer, with tutorials on creating an adaptable, user-friendly setup.
Learning Resources
Carli’s dedicated website and blog offer detailed guides, from basic setup to advanced configurations. Additionally, a series of update and troubleshooting videos will help you keep your system current.
Bob the Builder Page
This page is your roadmap. Start with basic ISO creation and work up to advanced features, including package signing and deployment, ensuring you have a secure, polished ISO.
Next Steps
Follow along as we update Carli and integrate new changes in Archiso and Calamares in future videos. Ready to start building?
Archiso Setup and Folder Structure
Start by checking if your Archiso is up-to-date. Copy and rename your configuration folders (e.g., from Archiso 80 to Archiso 81) to create a new setup. Customize files like releng
(Arch’s default config) by duplicating and modifying for Carli. Keep your desktop setup (e.g., XFCE, Plasma, Cinnamon) and other system services (Bluetooth, networking, display managers) unique to your needs.
Customization and Visual Differences
Using tools like Meld, compare the Arch releng folder with your Carli configuration to identify differences. While Arch’s default ISO boots to a black screen, Carli offers a graphical interface through SDM with XFCE or Plasma. Define system services, applications, and other settings to create a complete, user-friendly ISO that reflects your distribution’s unique setup.
Package Management
Include desired desktop environments (e.g., Cinnamon, Gnome, MATE), and ensure key packages align with your distribution’s purpose. Use Pacman to add packages to your ISO and configure additional tools (e.g., Bluetooth, Git, Neofetch, Calamares) to offer a full-featured system on installation.
System Install and Cleanup
During installation, configure Calamares to remove temporary setup files, keeping the installed system clean. Manage permissions in files like GShadow
and ensure correct access settings for all added files.
In this guide, we cover the essential updates and configurations for Pacman in Carli, specifically when creating a custom Arch Linux ISO. Follow these steps to make backups, configure options, and track changes effectively.
Keeping Pacman Up-to-Date
To ensure you’re working with the latest Pacman version:
- Backup your current
pacman.conf
file by copying it (e.g.,pacman.conf.backup
) to retain a clean reference. - Compare configurations easily using tools like Meld for side-by-side differences.
Modifying Pacman for ISO Builds
For Carli ISO builds, you’ll modify Pacman’s settings within the releng folder, a configuration directory that Archiso uses:
- Adjust settings such as parallel downloads (e.g., increasing from 5 to 8).
- Enable colorized output and check disk space for a clearer, more intuitive command line.
Customized Settings for Future Systems
For a consistent Carli experience, tailor the Pacman configuration to ensure:
- Customized features like parallel downloads are consistent across both build and end-user systems.
- Choices like enabling or disabling specific options (e.g., sandboxing) fit your goals.
Finalizing Changes
- Track updates by pushing changes to Git repositories after testing.
- Use consistent naming and align the config changes for easy future comparisons.
In this guide, we discuss key configurations and updates for Pacman in Carli, especially when building a customized Arch Linux ISO. We explore the steps for ensuring proper package and keyring management to streamline your ISO creation.
Setting Up Pacman for Carli ISO
- Make Backups: Before making changes, copy your current
pacman.conf
as a backup. For quick file comparisons, use tools like Meld. - Configuring Repositories: Set up repositories to point to Carli’s package sources, ensuring access to the latest packages and configurations.
- Parallel Downloads and Display Options: Adjust settings like parallel downloads and colored output to enhance performance and readability.
Keyring Management for Carli Packages
To manage Carli’s keys:
- Add Carli Keyring: Download and import Carli’s keyring to ensure package trust. Run commands like
sudo pacman-key --populate carli
to integrate Carli’s keys into your system. - Check Key Status: After importing, confirm that keys are trusted and available for use. Address any issues with trust by resetting the cache with
sudo pacman -Scc
and repopulating keys as needed.
ISO Building Process
Follow these steps for ISO building:
- Download the Latest Arch Linux ISO: This ensures that you’re working with a current reference.
- Build the Carli ISO: Use Carli’s custom scripts to build the ISO, integrating selected desktop environments like Cinnamon.
Improving Scripts for Better Key Management
To streamline keyring updates, add commands like sudo pacman-key --populate carli
in your build scripts to avoid key errors on fresh installations. Check updated build logs for any issues and make necessary adjustments to ensure that all packages and keys are installed correctly.
This update summarizes recent changes to Carli ISO setup, focusing on new Pacman keys, Calamares configurations, and addressing a Kpmcore bug.
Summary of Key Updates
- Pacman Key Addition: Added Carli’s key to Pacman, ensuring it recognizes Carli alongside other keys. This update is included in build scripts for smooth setup on fresh installations.
- Calamares and ReiserFS:
- Removed ReiserFS support due to discontinued development, aligning with Arch ISO’s recent updates.
- Adjusted
partition.conf
to prevent setup errors from unavailable filesystem choices.
- Kpmcore Bug Workaround:
- Due to a Kpmcore bug affecting swap setup, Calamares now defaults to swap as a file rather than a partition, allowing flexibility for resizing and avoiding partitioning errors.
- Building the Latest Calamares:
- Updated Calamares from the latest GitHub version, ensuring compatibility with current configurations. Dependencies and repository adjustments were implemented to support seamless building and installation.
In the latest update, we’ve made key adjustments in Carli 12 to improve Calamares functionality with Kpmcore. Here’s what’s new:
- Swap Partition Choices: Added options for both smaller and larger swap partitions within Calamares. This flexibility allows users to select the best option for their system requirements.
- Custom Kpmcore Build: Integrated a patched version of Kpmcore available in the Carli repository. This build resolves previous compatibility issues seen with the default Kpmcore from Arch Linux, ensuring seamless operation within Calamares.
In this update, we explore how to build the Carli ISO on a fresh system using the latest tools and configurations.
-
Building the ISO: We started by cloning the latest version of Carli (v12) from GitHub. Building an ISO can be resource-intensive, so we recommend ensuring adequate memory and CPU power.
-
Resources for ISO Creation: For those looking to start a Linux distribution, arcolinuxiso.com offers guides, resources, and videos on each step, from initial setup to complex configurations.
-
Testing with Calamares and Kpmcore: Using Calamares as the installer, we included our custom-built Kpmcore package to avoid issues with swap partitions. The installation went smoothly, showing the importance of using an updated Kpmcore to bypass current bugs.
-
Continuous Maintenance: Building and maintaining an ISO is an ongoing process—like caring for a “small baby.” Regular checks, updates, and adjustments keep the distribution current and functional, especially with community input and support.
For a deeper dive into building Carli and maintaining your own distribution, check out our video series and resources at arcolinuxiso.com.