R.I.P. Cnchi (2012-2026) — switch to Calamares as sole installer

Cnchi was the heart of Antergos, but the GTK4 Python port proved
too unstable and maintenance-heavy for a solo dev to carry.
GTK4 Python bindings broke on every upstream release, the
codebase was brittle, and maintaining it consumed time that
should go into actual improvements.

Calamares is now the sole installer. It's mature, upstream-
supported, modular C++/Qt6, and with our branding package
it supports:
  - Offline mode (GNOME squashfs, no internet needed)
  - Online mode (8 DEs via netinstall)
  - dracut initramfs
  - zenity/kdialog launcher (calamares-next)

What changed:
  - packages/cnchi/ deleted entirely
  - packages.yaml: cnchi removed, memes kept
  - antergos-next-memes: repurposed from 'Cnchi audio enhancements'
    to generic 'Antergos NeXT welcome audio', path changed from
    /usr/share/cnchi-memes/ to /usr/share/antergos-next-memes/
  - calamares-branding show.qml: Cnchi line → Calamares line
  - README: Cnchi table → HAL section, sources updated

The welcome app's startup jingle still works — the memes package
lives on, just without the Cnchi association.
This commit is contained in:
2026-06-23 13:35:37 +02:00
parent 399107a517
commit 579574fa41
6 changed files with 9 additions and 92 deletions
+3 -5
View File
@@ -6,14 +6,12 @@ Custom package repository for Antergos NeXT ISO builds.
| Package | Description | Source |
|---------|-------------|--------|
| `cnchi` | Antergos NeXT graphical installer (GTK4) | `Antergos-NeXT/Cnchi` (`cnchi-dev`) |
| `calamares` | Universal installer framework (experimental, Qt6) | [upstream](https://codeberg.org/calamares/calamares) |
| `calamares` | Universal installer framework (Qt6) | [upstream](https://codeberg.org/calamares/calamares) |
| `calamares-branding-antergos-next` | Blue Calamares theme + offline/online installer split + dracut | local |
| `hal` | HAL 9000 package manager — dual-mode (pacman wrapper + native standalone) | local |
| `antergos-next-keyring` | GPG keyring for the repo | local |
| `antergos-next-mirrorlist` | Mirror list for `[antergos-pkgs]` | local |
| `antergos-next-desktop-settings` | Custom GTK/Plasma theme, dconf defaults | local |
| `antergos-next-memes` | Audio files for Cnchi easter eggs (channel 666) | local |
| `antergos-wallpapers` | Antergos desktop wallpapers | local |
| `yay` | AUR helper | AUR |
| `downgrade` | Pacman package downgrade tool | AUR |
@@ -32,7 +30,7 @@ Then:
```
pacman -Sy
pacman -S cnchi hal antergos-next-desktop-settings
pacman -S calamares hal antergos-next-desktop-settings
```
## What is HAL?
@@ -60,7 +58,7 @@ The `calamares-branding-antergos-next` package provides:
## Branches
- `master` — package definitions, CI builds + deploys to gh-pages
- Cnchi sources shipped from `Antergos-NeXT/Cnchi` (`cnchi-dev`)
- Calamares packages shipped from upstream (with custom branding)
## License
-1
View File
@@ -5,7 +5,6 @@ packages:
- antergos-next-keyring
- antergos-next-mirrorlist
- antergos-next-desktop-settings
- cnchi
- calamares
- calamares-branding-antergos-next
- antergos-next-memes
+5 -5
View File
@@ -3,7 +3,7 @@
pkgname=antergos-next-memes
pkgver=1.0
pkgrel=1
pkgdesc="Cnchi installer audio enhancements"
pkgdesc="Antergos NeXT welcome audio"
arch=('any')
url="https://github.com/Antergos-NeXT"
license=('custom:fairuse')
@@ -16,8 +16,8 @@ sha256sums=('SKIP'
'SKIP')
package() {
install -dm755 "${pkgdir}/usr/share/cnchi-memes"
cp "i-feel-fantastic.opus" "${pkgdir}/usr/share/cnchi-memes/"
cp "still-alive.opus" "${pkgdir}/usr/share/cnchi-memes/"
cp "its-raining-tacos.opus" "${pkgdir}/usr/share/cnchi-memes/"
install -dm755 "${pkgdir}/usr/share/antergos-next-memes"
cp "i-feel-fantastic.opus" "${pkgdir}/usr/share/antergos-next-memes/"
cp "still-alive.opus" "${pkgdir}/usr/share/antergos-next-memes/"
cp "its-raining-tacos.opus" "${pkgdir}/usr/share/antergos-next-memes/"
}
@@ -145,7 +145,7 @@ Presentation
Text { text: "• Welcome app — system info & quick config" ; font.pixelSize: 13 ; color: "#34495E" }
Text { text: "• Calamares installer — easy setup" ; font.pixelSize: 13 ; color: "#34495E" }
Text { text: "• Cnchi — classic Antergos installer" ; font.pixelSize: 13 ; color: "#34495E" }
Text { text: "• Calamares — easy setup with offline & online modes" ; font.pixelSize: 13 ; color: "#34495E" }
Text { text: "• Pacman + AUR helper — full package access" ; font.pixelSize: 13 ; color: "#34495E" }
Text { text: "• Online documentation and community" ; font.pixelSize: 13 ; color: "#34495E" }
}
-76
View File
@@ -1,76 +0,0 @@
# Maintainer: Celestia Ludenberg <ash8820@proton.me>
# Contributor: Antergos NeXT Team
pkgname=cnchi
pkgver=0.17.1
pkgrel=2
pkgdesc="Antergos NeXT graphical installer (GTK4)"
arch=('any')
url="https://github.com/Antergos-NeXT/cnchi-next"
license=('GPL3')
depends=(
'gtk4'
'python'
'python-cairo'
'python-gobject'
'python-dbus'
'python-requests'
'python-chardet'
'python-feedparser'
'python-idna'
'python-mako'
'python-geoip2'
'python-maxminddb'
'python-passlib'
'pyalpm'
'python-pyparted'
'parted'
'dosfstools'
'mtools'
'ntfs-3g'
'upower'
'gocryptfs'
'iso-codes'
'webkitgtk-6.0'
)
optdepends=('python-libnacl: Lembrame settings sync feature')
makedepends=('git')
install=cnchi.install
source=("${pkgname}::git+https://github.com/Antergos-NeXT/cnchi-next.git#branch=cnchi-dev")
sha256sums=('SKIP')
package() {
cd "${srcdir}/${pkgname}"
# Install Cnchi Python modules
install -dm755 "${pkgdir}/usr/share/cnchi"
cp -r src/* "${pkgdir}/usr/share/cnchi/"
cp -r data "${pkgdir}/usr/share/cnchi/"
cp -r ui "${pkgdir}/usr/share/cnchi/"
cp -r scripts "${pkgdir}/usr/share/cnchi/"
cp -r po "${pkgdir}/usr/share/cnchi/"
cp -r utils "${pkgdir}/usr/share/cnchi/"
cp run "${pkgdir}/usr/share/cnchi/"
cp cnchi.desktop "${pkgdir}/usr/share/cnchi/"
cp requirements.txt "${pkgdir}/usr/share/cnchi/"
# Create executable wrapper
install -dm755 "${pkgdir}/usr/bin"
cat > "${pkgdir}/usr/bin/cnchi" << 'EOF'
#!/bin/bash
exec /usr/bin/python3 /usr/share/cnchi/cnchi.py "$@"
EOF
chmod 755 "${pkgdir}/usr/bin/cnchi"
# Desktop file
install -dm755 "${pkgdir}/usr/share/applications"
cp cnchi.desktop "${pkgdir}/usr/share/applications/"
# Icons
install -dm755 "${pkgdir}/usr/share/icons"
cp -r data/icons/* "${pkgdir}/usr/share/icons/" 2>/dev/null || true
# License
install -dm755 "${pkgdir}/usr/share/licenses/${pkgname}"
cp COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
}
-4
View File
@@ -1,4 +0,0 @@
post_install() {
# Register Cnchi as a potential live session installer
gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor 2>/dev/null || true
}