Manjaro Summit public Alpha now available

Is there a plan to have an KDE alpha version of Summit as well, or will this only become a point of contention when Summit hits Beta or Stable?

If you can build an ISO and share everything I’d be glad to take a look at it.

At some point yes. There is a KDE image already, but it is not actively maintained. If anyone who uses KDE wishes to pick up its maintenance feel free to poke me.

2 Likes

Thanks for your suggestion, you have to talk with the Manjaro team to share your work.

Now I can probably send links so
ISO (Tested on GNOME Boxes)
calamares repo
archiso

3 Likes

Really cool, thanks! I gave it a spin and it worked absolutely fine. I’ll see if we can package this all up and also spin a KDE installer based on your work.

Thanks again!

1 Like

I just now tried using encrypted btrfs and it didn’t work so I guess I’ll go try to fix it
Fixed

2 Likes

@nisel11 where you host the PKGBUILDs for the extra packages you had created, like the calamares you patched …

It’s just calamares PKGBUILD from manjaro gitlab with renamed to manjaro-summit and my repo as source

# Maintainer: Philip MĂźller <philm[at]manjaro[dog]org>

pkgname=calamares-summit
pkgver=3.3.14
_pkgver=3.3.14
pkgrel=3
pkgdesc='Distribution-independent installer framework'
arch=('i686' 'x86_64')
license=('BSD-2-Clause AND CC0-1.0 AND CC-BY-4.0 AND GPL-3.0-or-later AND LGPL-2.0-only AND LGPL-2.1-only AND LGPL-3.0-or-later AND MIT')
url="https://gitlab.manjaro.org/applications/calamares"
depends=('kconfig' 'kcoreaddons' 'kiconthemes' 'ki18n' 'solid' 'yaml-cpp' 'kpmcore'
        'boost-libs' 'ckbcomp' 'hwinfo' 'qt6-svg' 'polkit-qt6'
        'squashfs-tools' 'libpwquality' 'python')
makedepends=('extra-cmake-modules' 'qt6-tools' 'qt6-translations' 'git' 'boost')
backup=('usr/share/calamares/modules/bootloader.conf'
        'usr/share/calamares/modules/displaymanager.conf'
        'usr/share/calamares/modules/initcpio.conf'
        'usr/share/calamares/modules/unpackfs.conf')

source+=('git+https://github.com/nisel11/calamares.git')
sha256sums=('SKIP')

prepare() {
        #mv ${srcdir}/calamares-${_commit} ${srcdir}/calamares-${pkgver}
        #mv ${srcdir}/calamares-v${pkgver} ${srcdir}/calamares-${pkgver}
        cd ${srcdir}/calamares

        # change version
        sed -i -e "s|$pkgver|$_pkgver|g" CMakeLists.txt
        #_ver="$(cat CMakeLists.txt | grep -m3 -e "  VERSION" | grep -o "[[:digit:]]*" | xargs | sed s'/ /./g')"
        _ver="$pkgver"
        printf 'Version: %s-%s' "${_ver}" "${pkgrel}"
        echo ""
        sed -i -e "s|\${CALAMARES_VERSION_MAJOR}.\${CALAMARES_VERSION_MINOR}.\${CALAMARES_VERSION_PATCH}|${_ver}-${pkgrel}|g" CMakeLists.txt
        sed -i -e "s|CALAMARES_VERSION_RC 1|CALAMARES_VERSION_RC 0|g" CMakeLists.txt

        # change branding
        sed -i -e "s/default/manjaro/g" src/branding/CMakeLists.txt

        # Apply patches
        local src
        for src in "${source[@]}"; do
                src="${src%%::*}"
                src="${src##*/}"
                [[ $src = *.patch ]] || continue
                msg2 "Applying patch: $src..."
                patch -Np1 < "../$src"
        done
}

build() {
        cd ${srcdir}/calamares

        mkdir -p build
        cd build
        cmake .. \
              -DCMAKE_BUILD_TYPE=Debug \
              -DCMAKE_INSTALL_PREFIX=/usr \
              -DCMAKE_INSTALL_LIBDIR=lib \
              -DWITH_QT6=ON \
              -DINSTALL_CONFIG=ON \
              -DSKIP_MODULES="initramfs initramfscfg \
                              dummyprocess dummypython \
                              dummycpp dummypythonqt \
                              services-openrc"
        make
}

package() {
        cd ${srcdir}/calamares/build
        make DESTDIR="$pkgdir" install
        install -Dm644 "../data/manjaro-icon.svg" "$pkgdir/usr/share/icons/hicolor/scalable/apps/calamares.svg"
        install -Dm644 "../data/calamares.desktop" "$pkgdir/usr/share/applications/calamares.desktop"
        install -Dm755 "../data/calamares_polkit" "$pkgdir/usr/bin/calamares_polkit"
        install -Dm644 "../data/49-nopasswd-calamares.rules" "$pkgdir/etc/polkit-1/rules.d/49-nopasswd-calamares.rules"
        chmod 750      "$pkgdir"/etc/polkit-1/rules.d

        # rename services-systemd back to services
        mv "$pkgdir/usr/lib/calamares/modules/services-systemd" "$pkgdir/usr/lib/calamares/modules/services"
        mv "$pkgdir/usr/share/calamares/modules/services-systemd.conf" "$pkgdir/usr/share/calamares/modules/services.conf"
        sed -i -e 's/-systemd//' "$pkgdir/usr/lib/calamares/modules/services/module.desc"
        sed -i -e 's/-systemd//' "$pkgdir/usr/share/calamares/settings.conf"

        # fix branding install
        cp -av "../src/branding/manjaro" "$pkgdir/usr/share/calamares/branding/"
}

New image updates have been made available. Only a single minor change in this one.

Changed:

  • ptyxis has been replaced with kgx/gnome-console
1 Like

@nisel11 Normally you write patches in a way that it can be upstreamed. I see some modules got changed. Creating a fork of a module is sometimes hard to maintain longterm. Therefore special flags or config settings can be used to trigger those functions when needed. Maybe revisit your changes and modify them in such a way that the regular package of calamares could be used. Calamares is normally modular in nature and can be flexible configured. Settings can be created on build time or provided with separate packages.

I understand this, but the users module doesn’t see groups in /usr/lib/group and I don’t think this can be fixed without tampering with the module, same with umount where I need to either change rootMountPoint to realRootMountPoint and make it show real rootMountPoint instead of deployment mount point or change all modules to use deploymentMountPoint instead of rootMountPoint
(Or I can do like in nix where one module is used to do everything, only there it makes sense, but here it doesn’t)

If with umount I can still somehow manage through mounting only deployment in mount dir, how to fix users I have no idea, probably can do something like cat usr/lib/group >> etc/group and then somehow remove it, but then I will need to make a second module for this

Hi @dennis1248

I’ve just ran the update in two VM and had a problem with layered packages. My Summit KDE VM has three layered packages installed: fd, nano and tree. fd and tree are the same version and downloaded ok, but nano also changes from version 8.3 to 8.4 and fails to obtain the 8.4 file returning a 404 error.

Once reboot, no fd, no tree, nano 8.4 (because new deploys already have it). It seems when one of the layered packages fails, none of the others are installed.

Summit Gnome VM has layered fd and htop. Htop changes from 3.4.0 to 3.4.1 and the same issue, fd ok but htop returns 404 file not found. Once reboot, no fd nor htop.

Also another issue with names in the boot menu. The 20250419 update was the first with an understandable name. But this last update although appears correctly in /arkdep/tracker, the boot menu only says “Manjaro Immutable” again.
aa

Summit Gnome has two deploys, and both have an understandable name “Manjaro Immutable (date-hour-manjaro-summit-gnome-another_date)”.

This was caused by the images being build against unstable but then later pacman being reconfigured to use the stable repos.

This has now been fixed and the fix will roll out with the next image update, pacman will now instead use whatever branch the image was originally build against.

Not sure what is causing that. What systemd-boot should do is show the file names if there are any boot entries with a duplicate title. Can you send me a copy of all files in /boot/loader/entries?

1 Like

@Arrababiski I received the files, thanks.

Your config files look very weird. It seems to not fully move the file contents when systemd-bless-boot validates a boot entry.

The files should look like this, both when bless-boot-enabled and when blessed;

title Manjaro Immutable
linux /arkdep/manjaro-summit-kde-2025-04-19/vmlinuz
initrd /amd-ucode.img
initrd /intel-ucode.img
initrd /arkdep/manjaro-summit-kde-2025-04-19/initramfs-linux.img
options root="LABEL=manjaro_root" rootflags=subvol=/arkdep/deployments/manjaro-summit-kde-2025-04-19/rootfs quiet splash loglevel=3 systemd.show_status=auto rd.udev.log_level=3 rw

Yet instead we have the bless-boot-enabled file (*+3.conf) containing only;

title Manjaro Immutable

And the blessed (*.conf) boot entry;

linux /arkdep/manjaro-summit-kde-2025-04-19/vmlinuz
initrd /amd-ucode.img
initrd /intel-ucode.img
initrd /arkdep/manjaro-summit-kde-2025-04-19/initramfs-linux.img
options root="LABEL=manjaro_root" rootflags=subvol=/arkdep/deployments/manjaro-summit-kde-2025-04-19/rootfs quiet splash loglevel=3 systemd.show_status=auto rd.udev.log_level=3 rw

This might be a bug in systemd-bless-boot. If you are able to still replicate the bug, consider reporting it upstream.

1 Like

May be the +3 conf file was the one created when the first KDE deployment was stuck.

After that I told you about the boot menu wasn’t neither pretty nor very helpful and you made a change to improve the names, could that have had any influence?

My Summit VM is only for testing, as it seems to have previous errors, I will reinstall it from scratch and if it happens again, I will comment again here.