From 2e3b2447d4e21c8ef740a60b0f043305b3521b64 Mon Sep 17 00:00:00 2001 From: "Stefan Cristian B." Date: Mon, 13 Jul 2026 05:01:48 +0300 Subject: [PATCH] app-admin/calamares: bump 3.4.2-r1 * fixed luks2 and added as default, replacing luks1 * corrected mediums that previously were not able to install * corrected logical errors in downloadstage3, gentoopkg, dracut_gentoo modules * expanded functionality to all the mediums which contain and can successfully install gentoo-kernel-bin with installkernel dracut * added grub.d gentoo specific configuration, for encryption functionalities, and predictable grub and kernel upgrades * corrected livecd option to install encrypted as well * implemented hashlib for stage3 verification, replacing previous sha512sum * replaced which with shutil.which for better reliability * added comments for USE flags changes, and reasoning behind them. * mandated cryptsetup installation in all necessary cases * changes/bugfix on main code for compatibility for PY3.14 * mount /dev/shm and /dev/pts into the chroot so complex source builds * gentoopkg: package_use, for custom USE flags * gentoopkg: accept_keywords, for custom accept_keywords * enable the dbus USE flag on net-wireless/wpa_supplicant for selinux, musl, hardened (openrc/systemd) and llvm-systemd stages, required by net-misc/networkmanager[wifi,-iwd] * dracut_gentoo: follow the gentoo-dist-bin kernel naming Signed-off-by: Stefan Cristian B. Part-of: https://github.com/gentoo/gentoo/pull/46554 Closes: https://github.com/gentoo/gentoo/pull/46554 Signed-off-by: Viorel Munteanu --- app-admin/calamares/Manifest | 1 + app-admin/calamares/calamares-3.4.2-r1.ebuild | 116 ++++++++++++++++++ 2 files changed, 117 insertions(+) create mode 100644 app-admin/calamares/calamares-3.4.2-r1.ebuild diff --git a/app-admin/calamares/Manifest b/app-admin/calamares/Manifest index d1233ea04b6b7..fa2324b7effbf 100644 --- a/app-admin/calamares/Manifest +++ b/app-admin/calamares/Manifest @@ -2,3 +2,4 @@ DIST calamares-3.3.14.tar.gz 4820523 BLAKE2B cdeaf82fbaf33b504e65b43a60f80fc0bcd DIST calamares-3.3.14b-gentoo-patches.patch 70364 BLAKE2B c7549336c7935cf7b4570d05587c0be725dbef2e8a2c6804b42a40b6de96526e8fa23a56df34d3f230f3d95ff17e8b02ae45c1310a8d77122c021ef06c7a8e51 SHA512 3f86db778d4f74c7f0c9258123ce830da200332cac7da41682b5e305f5bad2d2435db6281b2136e3229e839ac39032b765fe0b9e4e7fe534510a1d5f7904b5a2 DIST calamares-3.3.14f-gentoo-patches.patch 90722 BLAKE2B cc7320bfae5f017c45668c084394fe57ee698b58069b0f69422ac8dd69f51f7761272909f5167025a771557f6c48b2510447c9b571627f0bced7463dfc5c13d6 SHA512 7fa008c62725c31e6473aa11bf4702c1f5cbb63d5c031db717e42759c4b2e5cfdb65b027efaa9f74151048882bca000563c6168268ca63aa967ba5a6d30f9594 DIST calamares-3.4.2.tar.gz 4940632 BLAKE2B a7c0d4b6310aeaf6b0ab76fbabe5dc85a37b4761ee31ee0d9670e43551639853bc5d1ea8721154c71f0e105bc20ea57fc44a7a0aa7334e0ed9ad61485fc45ae3 SHA512 efe8428d2b69d0f5019e6cb15079e1c4eedbeb73f642af9f0a3303f53196a7aabdfc877b23baba42790830fd0ecdd1e5b9a20839e9a4336f796781288126010d +DIST calamares-3.4.2b-gentoo-patches.patch 95297 BLAKE2B 42b6927efa91fb7175b6fb085276694e78e92d49e02fbb693e1adb40065725854ffceba9e48fe3d5fef00d43569087ca1c0ba7c90f64c8430ab6a4fb9cfcc805 SHA512 54ef3f5c0b9bccd9eb725990dacdee8c514bf1b728ba55f6c5be4e838fa1630ca58522fd5a5928f2be15898e8c68e977ba8e5fb07200b8831cfbbf8e6e169414 diff --git a/app-admin/calamares/calamares-3.4.2-r1.ebuild b/app-admin/calamares/calamares-3.4.2-r1.ebuild new file mode 100644 index 0000000000000..1bf7dd0f39112 --- /dev/null +++ b/app-admin/calamares/calamares-3.4.2-r1.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ECM_TEST="true" +PYTHON_COMPAT=( python3_{12..14} ) + +QTMIN="6.7.1" +KFMIN="6.9.0" +LIVEPATCH="${P}b" + +inherit ecm python-single-r1 xdg + +DESCRIPTION="Distribution-independent installer framework" +HOMEPAGE="https://calamares.io https://github.com/tableflipper9/calamares" +SRC_URI="https://codeberg.org/Calamares/${PN}/releases/download/v${PV}/${P}.tar.gz + livecd? ( + https://github.com/calamares/calamares/compare/36d30c49...TableFlipper9:calamares:gentoo-patches-3.4.2b.patch \ + -> ${LIVEPATCH}-gentoo-patches.patch + ) +" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +IUSE="livecd" + +DEPEND="${PYTHON_DEPS} + dev-cpp/yaml-cpp:= + dev-libs/icu:= + $(python_gen_cond_dep ' + >=dev-libs/boost-1.72.0:=[python,${PYTHON_USEDEP}] + dev-libs/libpwquality[python,${PYTHON_USEDEP}] + ') + >=dev-qt/qtbase-${QTMIN}:6[concurrent,dbus,gui,network,widgets,xml] + >=dev-qt/qtdeclarative-${QTMIN}:6 + >=dev-qt/qtsvg-${QTMIN}:6 + >=kde-frameworks/kconfig-${KFMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/kcrash-${KFMIN}:6 + >=kde-frameworks/kpackage-${KFMIN}:6 + >=kde-frameworks/kparts-${KFMIN}:6 + sys-apps/dmidecode + >=sys-libs/kpmcore-24.01.75:6= + virtual/libcrypt:= +" +RDEPEND="${DEPEND} + app-admin/sudo + net-misc/rsync + sys-boot/grub:2 + sys-boot/os-prober + sys-fs/squashfs-tools + sys-libs/timezone-data + livecd? ( app-portage/gemato ) +" +BDEPEND=">=dev-qt/qttools-${QTMIN}:6[linguist]" + +src_prepare() { + if use "livecd" ; then + cp "${DISTDIR}/${LIVEPATCH}-gentoo-patches.patch" "${LIVEPATCH}-gentoo-patches.patch" || die + eapply "${LIVEPATCH}-gentoo-patches.patch" + fi + + ecm_src_prepare + export PYTHON_INCLUDE_DIRS="$(python_get_includedir)" \ + PYTHON_INCLUDE_PATH="$(python_get_library_path)"\ + PYTHON_CFLAGS="$(python_get_CFLAGS)"\ + PYTHON_LIBS="$(python_get_LIBS)" +} + +src_configure() { + # get the selected Python version from EPYTHON variable + local python_version="${EPYTHON#python}" + local boost_python_component="${python_version/./}" + + local mycmakeargs=( + -DINSTALL_CONFIG=ON + -DINSTALL_COMPLETION=ON + -DINSTALL_POLKIT=ON + -DCMAKE_DISABLE_FIND_PACKAGE_LIBPARTED=ON + -DWITH_PYTHON=ON + -DWITH_PYBIND11=OFF + -DBUILD_APPDATA=ON + -DWITH_QT6=ON + # explicitly set Python version and paths + -DPYTHONLIBS_VERSION="${python_version}" + -DBOOSTPYTHON_COMPONENT="python${boost_python_component}" + ) + + ecm_src_configure +} + +src_test() { + local myctestargs=( + # Skipped tests: + # packagechoosertest (file exists returned false) + # partitiondevicestest for trying to access host + # usershostnametest for changing hostname + # displaymanager for testing access on host DMs + # + # Requires network + # libcalamaresnetworktest + # test_libcalamaresuipaste + # + # E1101 + # lint-dummypython + # + # E0606 + # lint-mount + -E "(lint-displaymanager|lint-dummypython|lint-mount|validate-unpackfsc-unpackfsc|displaymanager|validate-unpackfsc-1|packagechoosertest|load-dummypython|load-dummypython-1|libcalamaresnetworktest|partitiondevicestest|usershostnametest|test_libcalamaresuipaste)" + ) + + cmake_src_test +}