R.I.P. Cnchi (2012-2026) — Calamares is the big boy installer now

Full removal of Cnchi from the ISO. It was the original Antergos
installer and we tried to keep it alive with a GTK4 port, but the
Python GTK4 bindings were unstable, the maintenance burden was
unsustainable for a solo dev, and Calamares simply does everything
better.

What changed:
  - README: complete rewrite of installer section with eulogy and
    'Why Calamares and not Cnchi' explanation
  - packages.x86_64: cnchi removed (calamares stays)
  - run_before_squashfs.sh: removed cnchi memes dir creation, cnchi
    desktop file fix, cnchi version comment; changed GTK theme from
    Adwaita to Adwaita-dark (fixes white-on-white welcome app)
  - airootfs/.../cnchi.desktop: deleted
  - user-commands-before.bash: updated cnchi references → generic
  - user_commands.bash: updated cnchi reference → generic
  - .gitignore: removed Cnchi/ entry
  - AGENTS.md: cnchi → calamares
  - .github/workflows/build.yml: cnchi → calamares in README gen
  - NOTICES: kept historical Cnchi credit (unchanged)

🕯️ Requiescat in pace, Cnchi. You did your job.
This commit is contained in:
2026-06-23 13:35:40 +02:00
parent 3099b79251
commit 266ec69576
9 changed files with 38 additions and 54 deletions
+2 -2
View File
@@ -130,14 +130,14 @@ jobs:
echo "## Installation" >> README.md
echo "1. Boot from ISO" >> README.md
echo "2. Select desktop environment" >> README.md
echo "3. Run Cnchi installer" >> README.md
echo "3. Run Calamares installer" >> README.md
echo "" >> README.md
echo "## Issues" >> README.md
echo "Report at: https://github.com/Antergos-NeXT/antergos-iso/issues" >> README.md
echo "" >> README.md
echo "## Source" >> README.md
echo "- ISO Build: https://github.com/Antergos-NeXT/antergos-iso" >> README.md
echo "- Cnchi: https://github.com/Antergos-NeXT/cnchi-next" >> README.md
echo "- Calamares: https://codeberg.org/calamares/calamares" >> README.md
echo "- Packages: https://github.com/Antergos-NeXT/antergos-packages" >> README.md
# Upload ISO + README
-1
View File
@@ -1,4 +1,3 @@
Cnchi/
antergos-pkgs/
internetarchive.log
airootfs/root/antergos-skel-liveuser/*.pkg.tar.zst
+2 -2
View File
@@ -12,12 +12,12 @@ git config user.email "ash8820@proton.me"
## The Crusade
- Arch Linux live ISO, forged from the bones of EndeavourOS-ISO
- A KDE Plasma live environment, bearing the sacred Cnchi installer
- A GNOME live environment with Calamares installer (offline + online)
- To smite the ISO into existence: `./prepare.sh && sudo ./mkarchiso -v "."`
## Antergos NeXT Repos
- **antergos-iso**: `https://github.com/Antergos-NeXT/antergos-iso` (branch: master)
- **cnchi-next**: `https://github.com/Antergos-NeXT/cnchi-next` (branch: cnchi-dev)
- **calamares**: `https://codeberg.org/calamares/calamares` (upstream)
- **antergos-packages**: `https://github.com/Antergos-NeXT/antergos-packages` (branch: master)
**DEUS VULT**
+29 -21
View File
@@ -9,31 +9,39 @@
Both a revival **and** a modernization of the Antergos live installer ISO, based on the maintained EndeavourOS-ISO.
Provides a live GNOME environment to install Arch Linux using **Cnchi**, the original Antergos installer — overhauled for modern Python (GTK4), with multi-DE support and the original installer experience re-engineered for 2026.
Provides a live GNOME environment to install Arch Linux using **Calamares** the mature, upstream-supported universal installer framework — with offline (GNOME squashfs) and online (netinstall with 8 DE choices) modes, and dracut initramfs.
This is not a museum piece. We keep what worked, fix what broke, and aren't afraid to add new things. Cnchi stays because it's what makes Antergos *Antergos* — but we've gutted the guts and replaced the pipes.
> *"I can't let you do that, Dave."* — Cnchi, 20122026
**Calamares** is also included as an **experimental** alternative installer.
## Why Calamares and not Cnchi?
## Why Cnchi and not Calamares?
Cnchi was the original Antergos installer — a custom GTK+ tool that gave Antergos its identity. For Antergos NeXT, we initially ported it to GTK4 and fought to keep it alive. But after days of fighting with a brittle Python codebase, broken GTK4 bindings, and an ever-growing maintenance burden, the honest call was made:
| | Cnchi (default) | Calamares (experimental) |
|---|---|---|
| **Status** | Primary installer, actively developed | Experimental, community requested |
| **Experience** | Original Antergos feel, custom GTK4 UI | Standard Calamares workflow |
| **Development** | Part of the project's DNA | Porting effort, needs testing |
**Cnchi is not coming back.**
**Q: Why not just use Calamares like everyone else?**
A: Because Antergos NeXT is a revival of *Antergos*, not another EndeavourOS or Arch derivative. Cnchi *is* the Antergos installer. Replacing it would defeat the purpose.
| Reason | Detail |
|--------|--------|
| **GTK4 breakage** | Python GTK4 bindings were unstable; widgets broke on every upstream release |
| **Maintenance hell** | Single developer couldn't keep up with Python dependency churn + GTK4 + systemd + dracut |
| **Calamares is better** | Mature, modular C++/Qt6 framework, upstream-supported, offline+online already built in |
| **Time** | Every hour fixing Cnchi was an hour not spent on actual improvements |
**Q: So why include Calamares at all?**
A: Community feedback. Some users prefer Calamares' workflow. We're not here to force anyone — both are available. Pick the one that fits you.
### A brief eulogy
**Q: Is Calamares fully functional?**
A: Not yet. It's experimental. Some features (lembrame, desktop-specific tweaks) are Cnchi-only. Calamares is there for testing and as a fallback.
Cnchi (originally written as a Bash script, then Python/GTK2, then GTK3) served Antergos from 2012 to 2019, and was briefly revived for NeXT. It was ambitious, opinionated, and deeply tied to what made Antergos *Antergos*. But the 2026 Linux desktop is not 2012 — dracut replaces mkinitcpio, systemd-boot replaces grub, and a single-dev team can't carry a full custom installer framework.
**Q: Will Calamares become the default in the future?**
A: Only if Cnchi becomes unmaintainable. As long as Cnchi works, it stays default. Calamares is a backup, not a replacement.
Calamares is the big boy installer now. It works. It's maintained. And with our custom branding, offline/online split, and dracut support, it's more capable than Cnchi ever was.
*Requiescat in pace, Cnchi. You did your job.*
## Installer modes
| Mode | Description |
|------|-------------|
| **Offline** | Unpacks a GNOME squashfs from the ISO — no internet needed, fast install |
| **Online** | Netinstall with 8 DE choices (GNOME, KDE, Xfce, Budgie, Cinnamon, MATE, LXQt, i3/Sway) |
The launcher (`calamares-next`) presents a zenity/kdialog/dialog GUI to pick offline or online mode before launching Calamares.
## Desktop Editions
@@ -59,7 +67,7 @@ Join us on Matrix: (uses pulsar's matrix) [#pulsar-linux:matrix.org](https://mat
ISO images exceed GitHub's 2 GB release limit. They are uploaded to **SourceForge** (uses pulsar's SF Project since the old antergos-next project was deleted oopsie!)
[![Download antergos-next](https://a.fsdn.com/con/app/sf-download-button)](https://sourceforge.net/projects/pulsar-linux/files/Antergos_NeXT/latest/download)
**⚠️ Early releases may have incomplete DE package lists.** The latest `packages.xml` is always in the [cnchi-next repo](https://github.com/Antergos-NeXT/cnchi-next/blob/cnchi-dev/data/packages.xml). Building from source after a fresh clone ensures you have the most up-to-date package selection.
**⚠️ Early releases may have incomplete DE package lists.**
## How to build
@@ -77,7 +85,7 @@ The `.iso` appears in the `out/` directory.
## Custom packages
The ISO uses the `antergos-packages` repo for custom packages (Cnchi, keyring, mirrorlist, desktop settings, wallpapers). Add it to your system:
The ISO uses the `antergos-packages` repo for custom packages (Calamares branding, keyring, mirrorlist, desktop settings, wallpapers). Add it to your system:
```ini
[antergos-pkgs]
@@ -90,7 +98,7 @@ Server = https://antergos-next.github.io/antergos-packages
- [EndeavourOS-ISO](https://github.com/endeavouros-team/EndeavourOS-ISO) — base ISO build system
- [Arch-ISO](https://gitlab.archlinux.org/archlinux/archiso) — archiso tools
- [cnchi-next](https://github.com/Antergos-NeXT/cnchi-next) — our patched Cnchi fork
- [Calamares](https://codeberg.org/calamares/calamares) — upstream installer framework
- [antergos-packages](https://github.com/Antergos-NeXT/antergos-packages) — custom package repo
- [Antergos wallpapers](https://github.com/Antergos/wallpapers) — original wallpapers
@@ -102,7 +110,7 @@ Server = https://antergos-next.github.io/antergos-packages
## A Note to the "Branding Police"
If you came here to hate and you're about to type "why are you using Antergos's branding" — pack your bags and go to Pulsar Linux (formerly Antergos NeXT). We have Dustin's blessing. We are respectful. We are not them. Move on.
If you came here to hate and you're about to type "why are you using Antergos's branding" — pack your bags and go to Manjaro. We have Dustin's blessing. We are respectful. We are not them. Move on.
---
@@ -1,14 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Install Antergos
GenericName=System Installer
Comment=Cnchi — Antergos System Installer
Keywords=cnchi;system;installer;
TryExec=cnchi
Exec=sudo -E cnchi
Categories=Qt;System;
Icon=cnchi
Terminal=false
SingleMainWindow=true
StartupNotify=true
@@ -1,11 +1,11 @@
#!/bin/bash
#
# This file can contain commands that will be executed (as root) before
# cnchi is started. So here you may configure various settings of cnchi.
# Calamares is started. So here you may configure various settings.
#
# NOTE! This is an advanced feature, so you need to know *exactly* what
# you are doing. Otherwise bad things can happen...
# Sound knowledge of cnchi, bash language, and linux commands is required
# Sound knowledge of bash language and linux commands is required
# for a meaningful customization.
#
# If you add commands to this file, start the whole install process fresh
@@ -24,7 +24,7 @@
_IsoConfig() {
## Add your ISO configurations here.
## This is executed as root before cnchi is started.
## This is executed as root before the installer is started.
local -r install_mode="$1" # 'online' or 'offline'
@@ -50,7 +50,7 @@
_PostInstallCommands() {
## Add your "late-install" commands here.
## This is executed as root near the end of cnchi execution.
## This is executed as root near the end of installation.
local -r username="$1" # new user you created for the target
-1
View File
@@ -271,7 +271,6 @@ yay
hal
## Installer
cnchi
calamares
calamares-branding-antergos-next
squashfs-tools
+1 -9
View File
@@ -177,20 +177,12 @@ rm -rf "/var/cache/pacman/pkg/"
echo "---> Keep ranked mirrorlist for live session (removed revert to packaged default) --->"
rm -f "/etc/pacman.d/mirrorlist-from-package"
echo "---> Create cnchi memes directory --->"
mkdir -p "/usr/share/cnchi-memes"
echo "---> Fix cnchi desktop file to use sudo -E --->"
sed -i 's|^Exec=.*cnchi.*|Exec=sudo -E cnchi|' "/usr/share/applications/cnchi.desktop"
echo "---> Fix calamares desktop file to use launcher --->"
sed -i 's|^Exec=.*calamares.*|Exec=sudo -E calamares-next|' "/usr/share/applications/calamares.desktop" 2>/dev/null || true
echo "---> Symlink antergos icon for calamares branding --->"
ln -sf "/usr/share/antergos/antergos-icon.png" "/usr/share/calamares/branding/antergos-next/squid.png" 2>/dev/null || true
# cnchi 0.17.1+ already has the regain_privileges fix in source
echo "---> Set Antergos NeXT os-release --->"
cat > "/usr/lib/os-release" << 'OSEOF'
NAME="Antergos NeXT"
@@ -217,7 +209,7 @@ LSBEOF
echo "---> Configure GNOME Shell theme for live user --->"
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.shell.extensions.user-theme name 'Antergos-NeXT'" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.shell enabled-extensions \"['user-theme@gnome-shell-extensions.gcampax.github.com']\"" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita'" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark'" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.desktop.background picture-uri 'file:///usr/share/antergos/backgrounds/antergos-wallpaper.png'" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.desktop.background picture-uri-dark 'file:///usr/share/antergos/backgrounds/antergos-wallpaper.png'" 2>/dev/null || true
su - antergos -c "dbus-launch --exit-with-session gsettings set org.gnome.desktop.screensaver picture-uri 'file:///usr/share/antergos/backgrounds/antergos-wallpaper.png'" 2>/dev/null || true