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:
@@ -130,14 +130,14 @@ jobs:
|
|||||||
echo "## Installation" >> README.md
|
echo "## Installation" >> README.md
|
||||||
echo "1. Boot from ISO" >> README.md
|
echo "1. Boot from ISO" >> README.md
|
||||||
echo "2. Select desktop environment" >> 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 "" >> README.md
|
||||||
echo "## Issues" >> README.md
|
echo "## Issues" >> README.md
|
||||||
echo "Report at: https://github.com/Antergos-NeXT/antergos-iso/issues" >> README.md
|
echo "Report at: https://github.com/Antergos-NeXT/antergos-iso/issues" >> README.md
|
||||||
echo "" >> README.md
|
echo "" >> README.md
|
||||||
echo "## Source" >> README.md
|
echo "## Source" >> README.md
|
||||||
echo "- ISO Build: https://github.com/Antergos-NeXT/antergos-iso" >> 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
|
echo "- Packages: https://github.com/Antergos-NeXT/antergos-packages" >> README.md
|
||||||
|
|
||||||
# Upload ISO + README
|
# Upload ISO + README
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
Cnchi/
|
|
||||||
antergos-pkgs/
|
antergos-pkgs/
|
||||||
internetarchive.log
|
internetarchive.log
|
||||||
airootfs/root/antergos-skel-liveuser/*.pkg.tar.zst
|
airootfs/root/antergos-skel-liveuser/*.pkg.tar.zst
|
||||||
|
|||||||
@@ -12,12 +12,12 @@ git config user.email "ash8820@proton.me"
|
|||||||
|
|
||||||
## The Crusade
|
## The Crusade
|
||||||
- Arch Linux live ISO, forged from the bones of EndeavourOS-ISO
|
- 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 "."`
|
- To smite the ISO into existence: `./prepare.sh && sudo ./mkarchiso -v "."`
|
||||||
|
|
||||||
## Antergos NeXT Repos
|
## Antergos NeXT Repos
|
||||||
- **antergos-iso**: `https://github.com/Antergos-NeXT/antergos-iso` (branch: master)
|
- **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)
|
- **antergos-packages**: `https://github.com/Antergos-NeXT/antergos-packages` (branch: master)
|
||||||
|
|
||||||
**DEUS VULT**
|
**DEUS VULT**
|
||||||
|
|||||||
@@ -9,31 +9,39 @@
|
|||||||
|
|
||||||
Both a revival **and** a modernization of the Antergos live installer ISO, based on the maintained EndeavourOS-ISO.
|
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, 2012–2026
|
||||||
|
|
||||||
**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) |
|
**Cnchi is not coming back.**
|
||||||
|---|---|---|
|
|
||||||
| **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 |
|
|
||||||
|
|
||||||
**Q: Why not just use Calamares like everyone else?**
|
| Reason | Detail |
|
||||||
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.
|
|--------|--------|
|
||||||
|
| **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 brief eulogy
|
||||||
A: Community feedback. Some users prefer Calamares' workflow. We're not here to force anyone — both are available. Pick the one that fits you.
|
|
||||||
|
|
||||||
**Q: Is Calamares fully functional?**
|
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.
|
||||||
A: Not yet. It's experimental. Some features (lembrame, desktop-specific tweaks) are Cnchi-only. Calamares is there for testing and as a fallback.
|
|
||||||
|
|
||||||
**Q: Will Calamares become the default in the future?**
|
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.
|
||||||
A: Only if Cnchi becomes unmaintainable. As long as Cnchi works, it stays default. Calamares is a backup, not a replacement.
|
|
||||||
|
*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
|
## 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!)
|
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!)
|
||||||
[](https://sourceforge.net/projects/pulsar-linux/files/Antergos_NeXT/latest/download)
|
[](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
|
## How to build
|
||||||
|
|
||||||
@@ -77,7 +85,7 @@ The `.iso` appears in the `out/` directory.
|
|||||||
|
|
||||||
## Custom packages
|
## 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
|
```ini
|
||||||
[antergos-pkgs]
|
[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
|
- [EndeavourOS-ISO](https://github.com/endeavouros-team/EndeavourOS-ISO) — base ISO build system
|
||||||
- [Arch-ISO](https://gitlab.archlinux.org/archlinux/archiso) — archiso tools
|
- [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-packages](https://github.com/Antergos-NeXT/antergos-packages) — custom package repo
|
||||||
- [Antergos wallpapers](https://github.com/Antergos/wallpapers) — original wallpapers
|
- [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"
|
## 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.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
-14
@@ -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
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
# This file can contain commands that will be executed (as root) before
|
# 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
|
# NOTE! This is an advanced feature, so you need to know *exactly* what
|
||||||
# you are doing. Otherwise bad things can happen...
|
# 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.
|
# for a meaningful customization.
|
||||||
#
|
#
|
||||||
# If you add commands to this file, start the whole install process fresh
|
# If you add commands to this file, start the whole install process fresh
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
_IsoConfig() {
|
_IsoConfig() {
|
||||||
## Add your ISO configurations here.
|
## 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'
|
local -r install_mode="$1" # 'online' or 'offline'
|
||||||
|
|
||||||
|
|||||||
@@ -50,7 +50,7 @@
|
|||||||
|
|
||||||
_PostInstallCommands() {
|
_PostInstallCommands() {
|
||||||
## Add your "late-install" commands here.
|
## 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
|
local -r username="$1" # new user you created for the target
|
||||||
|
|
||||||
|
|||||||
@@ -271,7 +271,6 @@ yay
|
|||||||
hal
|
hal
|
||||||
|
|
||||||
## Installer
|
## Installer
|
||||||
cnchi
|
|
||||||
calamares
|
calamares
|
||||||
calamares-branding-antergos-next
|
calamares-branding-antergos-next
|
||||||
squashfs-tools
|
squashfs-tools
|
||||||
|
|||||||
@@ -177,20 +177,12 @@ rm -rf "/var/cache/pacman/pkg/"
|
|||||||
echo "---> Keep ranked mirrorlist for live session (removed revert to packaged default) --->"
|
echo "---> Keep ranked mirrorlist for live session (removed revert to packaged default) --->"
|
||||||
rm -f "/etc/pacman.d/mirrorlist-from-package"
|
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 --->"
|
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
|
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 --->"
|
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
|
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 --->"
|
echo "---> Set Antergos NeXT os-release --->"
|
||||||
cat > "/usr/lib/os-release" << 'OSEOF'
|
cat > "/usr/lib/os-release" << 'OSEOF'
|
||||||
NAME="Antergos NeXT"
|
NAME="Antergos NeXT"
|
||||||
@@ -217,7 +209,7 @@ LSBEOF
|
|||||||
echo "---> Configure GNOME Shell theme for live user --->"
|
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.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.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 '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.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
|
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
|
||||||
|
|||||||
Reference in New Issue
Block a user