Compare commits

..

No commits in common. 'ubuntu/plucky' and 'ubuntu/kinetic' have entirely different histories.

192
debian/changelog vendored

@ -1,195 +1,3 @@
calamares (3.3.9-0ubuntu2) plucky; urgency=medium
* Do not build with QtWebEngines on architectures that do not support it.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 29 Oct 2024 19:01:21 -0500
calamares (3.3.9-0ubuntu1) plucky; urgency=medium
* New upstream release.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 15 Oct 2024 20:44:54 -0500
calamares (3.3.8-0ubuntu1) oracular; urgency=medium
* New upstream release.
-- Simon Quigley <tsimonq2@ubuntu.com> Sat, 06 Jul 2024 12:16:19 -0500
calamares (3.3.5-0ubuntu4) noble; urgency=medium
* Populate grub-{efi,pc}/install_devices debconf config (LP: #2063354).
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 24 Apr 2024 15:28:29 -0500
calamares (3.3.5-0ubuntu3) noble; urgency=medium
* No-change rebuild for CVE-2024-3094
-- Steve Langasek <steve.langasek@ubuntu.com> Sun, 31 Mar 2024 08:44:36 +0000
calamares (3.3.5-0ubuntu2) noble; urgency=medium
* No-change rebuild against libqt5core5t64
-- Steve Langasek <steve.langasek@ubuntu.com> Fri, 15 Mar 2024 04:00:12 +0000
calamares (3.3.5-0ubuntu1) noble; urgency=medium
* New upstream release.
* Fully finish Active Directory prototype, leave the patch commented out for
now.
-- Simon Quigley <tsimonq2@ubuntu.com> Thu, 07 Mar 2024 15:32:51 -0600
calamares (3.3.4-0ubuntu2) noble; urgency=medium
* No-change rebuild for python3.12 t64.
-- Matthias Klose <doko@ubuntu.com> Sat, 02 Mar 2024 21:08:26 +0100
calamares (3.3.4-0ubuntu1) noble; urgency=medium
* New upstream release.
* Refresh patches.
-- Simon Quigley <tsimonq2@ubuntu.com> Mon, 26 Feb 2024 19:04:30 -0600
calamares (3.3.3-0ubuntu1) noble; urgency=medium
* New upstream release.
* Copyright update.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 25 Feb 2024 16:13:53 -0600
calamares (3.3.2-0ubuntu1) noble; urgency=medium
* New upstream release.
* Drop unneeded patches.
- enable-optional-part-encryption.patch (merged upstream)
- fix-btrfs-luks.patch (merged upstream)
* Update copyright file.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Tue, 20 Feb 2024 13:37:43 -0600
calamares (3.3.1-0ubuntu4) noble; urgency=medium
* Fix BTRFS+LUKS installations with unencrypted /boot.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 12 Feb 2024 11:51:59 -0600
calamares (3.3.1-0ubuntu3) noble; urgency=medium
* Allow specifying partitions that must remain unencrypted when using FDE.
* Allow specifying partitions that are only created when FDE is enabled.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 05 Feb 2024 18:12:47 -0600
calamares (3.3.1-0ubuntu2) noble; urgency=medium
* No-change rebuild with Python 3.12 as default
-- Graham Inggs <ginggs@ubuntu.com> Sat, 20 Jan 2024 08:39:43 +0000
calamares (3.3.1-0ubuntu1) noble; urgency=medium
* New upstream release.
* Fixed debian/watch file.
* Updated copyright file.
* Enabled AppStream and AppData (it is no longer enabled by default upstream
but should be enabled by us).
* Dropped lp-2045741.patch, it's included in the latest upstream release.
* Dropped support-appstream-1.0.patch, upstream has overhauled AppStream
handling and this patch is no longer applicable.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 18 Jan 2024 20:29:45 +0000
calamares (3.3.0.0-0ubuntu5) noble; urgency=medium
* Fix two American English entries (LP: #2045741):
- https://github.com/calamares/calamares/issues/2257
-- Simon Quigley <tsimonq2@ubuntu.com> Mon, 01 Jan 2024 13:39:12 -0600
calamares (3.3.0.0-0ubuntu4) noble; urgency=medium
* Add d/p/support-appstream-1.0.patch
-- Rik Mills <rikmills@kde.org> Mon, 18 Dec 2023 20:15:16 +0000
calamares (3.3.0.0-0ubuntu3) noble; urgency=medium
* Change appstream build depend to libappstreamqt5-dev (>= 1.0.0~).
-- Rik Mills <rikmills@kde.org> Mon, 18 Dec 2023 16:24:24 +0000
calamares (3.3.0.0-0ubuntu2) noble; urgency=medium
* No-change rebuild against appstream 1.0.
-- Rik Mills <rikmills@kde.org> Mon, 18 Dec 2023 13:48:07 +0000
calamares (3.3.0.0-0ubuntu1) noble; urgency=medium
* New upstream version.
* Remove reverse-applicable patch.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 12 Dec 2023 08:01:24 -0600
calamares (3.3.0-alpha6-0ubuntu1) noble; urgency=medium
* New upstream release.
* Add some missing build dependencies.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 22 Nov 2023 16:40:53 -0600
calamares (3.3.0-alpha4-0ubuntu3) noble; urgency=medium
* Add util-linux-extra as a runtime dependency to allow hwclock to work.
-- Aaron Rainbolt <arraybolt3@gmail.com> Sun, 19 Nov 2023 22:12:06 -0600
calamares (3.3.0-alpha4-0ubuntu2) noble; urgency=medium
* Fixed encrypted installations. (LP: #2043301)
* Fixed watch file.
* Swapped out an obsolete build dependency (poilcykit-1).
* Created upstream/metadata file.
-- Aaron Rainbolt <arraybolt3@gmail.com> Tue, 14 Nov 2023 17:32:18 -0600
calamares (3.3.0-alpha4-0ubuntu1) noble; urgency=medium
* New upstream release.
* Bump Standards-version to 4.6.2, no changes needed.
* Update Vcs-*, since we no longer maintain this with Ubuntu Studio.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 20 Oct 2023 12:33:39 -0500
calamares (3.3.0-alpha2-0ubuntu6) mantic; urgency=medium
* Add support for Netplan backends (LP: #2036999).
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 08 Oct 2023 11:41:22 -0500
calamares (3.3.0-alpha2-0ubuntu5) mantic; urgency=medium
* Rebuild against new libyaml-cpp0.8.
-- Gianfranco Costamagna <locutusofborg@debian.org> Sat, 02 Sep 2023 07:18:13 +0200
calamares (3.3.0-alpha2-0ubuntu4) lunar; urgency=medium
* Rebuild against latest icu
-- Jeremy Bicha <jbicha@ubuntu.com> Mon, 06 Feb 2023 07:31:56 -0500
calamares (3.3.0-alpha2-0ubuntu3) lunar; urgency=medium
* No-change rebuild with Python 3.11 as default
-- Graham Inggs <ginggs@ubuntu.com> Mon, 26 Dec 2022 09:48:29 +0000
calamares (3.3.0-alpha2-0ubuntu2) kinetic; urgency=medium calamares (3.3.0-alpha2-0ubuntu2) kinetic; urgency=medium
* No-change rebuild to pick up fixed libboost-python dependencies * No-change rebuild to pick up fixed libboost-python dependencies

65
debian/control vendored

@ -6,53 +6,52 @@ XSBC-Original-Maintainer: Jonathan Carter <jcc@debian.org>
Build-Depends: cmake, Build-Depends: cmake,
cryptsetup <!nocheck>, cryptsetup <!nocheck>,
debhelper-compat (= 13), debhelper-compat (= 13),
extra-cmake-modules,
gettext, gettext,
libappstreamqt-dev, libappstreamqt-dev,
libatasmart-dev,
libboost-python-dev, libboost-python-dev,
libicu-dev, libkf5config-dev,
extra-cmake-modules, libkf5coreaddons-dev,
libkf6config-dev, libkf5crash-dev,
libkf6coreaddons-dev, libkf5i18n-dev,
libkf6crash-dev, libkf5iconthemes-dev,
libkf6dbusaddons-dev, libkf5kio-dev,
libkf6i18n-dev, libkf5parts-dev,
libkf6iconthemes-dev, libkf5plasma-dev,
libkf6kio-dev, libkf5service-dev,
libkf6package-dev, libkf5solid-dev,
libkf6parts-dev, libkpmcore-dev,
libkf6service-dev,
libkf6solid-dev,
libkpmcore-dev (>= 24.08),
libparted-dev, libparted-dev,
libplasma-dev, libpolkit-qt5-1-dev,
libpolkit-qt6-1-dev,
libpwquality-dev, libpwquality-dev,
libqt5svg5-dev,
libqt5webkit5-dev,
libyaml-cpp-dev, libyaml-cpp-dev,
os-prober, os-prober <!nocheck>,
pkgconf, pkg-config,
pkg-kde-tools, pkg-kde-tools,
pkexec, policykit-1 <!nocheck>,
python3-all-dev, python3-dev,
python3-yaml, qml-module-qtquick-layouts,
python3-jsonschema, qml-module-qtquick-privatewidgets,
qt6-base-dev, qml-module-qtquick-window2,
qt6-declarative-dev, qml-module-qtquick2,
qt6-location-dev, qtbase5-dev,
qt6-svg-dev, qtdeclarative5-dev,
qt6-tools-dev, qtlocation5-dev,
qt6-webengine-dev <amd64 arm64 armhf> qttools5-dev,
Standards-Version: 4.7.0 qttools5-dev-tools
Standards-Version: 4.6.1
Rules-Requires-Root: no Rules-Requires-Root: no
Homepage: https://github.com/calamares/calamares Homepage: https://github.com/calamares/calamares
Vcs-Browser: https://git.lubuntu.me/Lubuntu/calamares-packaging/ Vcs-Browser: https://git.launchpad.net/~ubuntu-qt-code/+git/calamares
Vcs-Git: https://git.lubuntu.me/Lubuntu/calamares-packaging.git Vcs-Git: https://git.launchpad.net/~ubuntu-qt-code/+git/calamares
XS-Debian-Vcs-Browser: https://salsa.debian.org/qt-kde-team/kde-extras/calamares XS-Debian-Vcs-Browser: https://salsa.debian.org/qt-kde-team/kde-extras/calamares
XS-Debian-Vcs-Git: https://salsa.debian.org/qt-kde-team/kde-extras/calamares.git XS-Debian-Vcs-Git: https://salsa.debian.org/qt-kde-team/kde-extras/calamares.git
Package: calamares Package: calamares
Architecture: linux-any Architecture: linux-any
Depends: os-prober, util-linux-extra, ${misc:Depends}, ${shlibs:Depends} Depends: os-prober, ${misc:Depends}, ${shlibs:Depends}
Recommends: btrfs-progs, squashfs-tools Recommends: btrfs-progs, squashfs-tools
Description: distribution-independent installer framework Description: distribution-independent installer framework
Calamares is a distribution-independent installer framework. Calamares is a distribution-independent installer framework.

25
debian/copyright vendored

@ -3,11 +3,11 @@ Upstream-Name: calamares
Source: https://github.com/calamares/calamares Source: https://github.com/calamares/calamares
Files: * Files: *
Copyright: 2017-2024 Adriaan de Groot <groot@kde.org> Copyright: 2017-2022 Adriaan de Groot <groot@kde.org>
2018 Matthias Klumpp <matthias@tenstral.net> 2018 Matthias Klumpp <matthias@tenstral.net>
2013-2017 Teo Mrnjavac <teo@kde.org> 2013-2017 Teo Mrnjavac <teo@kde.org>
2020 Gaël PORTAY <gael.portay@gmail.com> 2020 Gaël PORTAY <gael.portay@gmail.com>
2014-2024 Anke Boersma <demm@kaosx.us> 2014-2022 Anke Boersma <demm@kaosx.us>
2018 Raul Rodrigo Segura <raurodse@gmail.com> 2018 Raul Rodrigo Segura <raurodse@gmail.com>
2018-2020 Collabora Ltd <arnaud.ferraris@collabora.com> 2018-2020 Collabora Ltd <arnaud.ferraris@collabora.com>
2020-2021 Anubhav Choudhary <ac.10edu@gmail.com> 2020-2021 Anubhav Choudhary <ac.10edu@gmail.com>
@ -71,6 +71,7 @@ Files: AUTHORS
data/config-appimage/settings.conf data/config-appimage/settings.conf
data/config-appimage/modules/* data/config-appimage/modules/*
data/example-root/* data/example-root/*
lang/calamares_i18n.qrc.in
src/libcalamares/CalamaresVersion.h.in src/libcalamares/CalamaresVersion.h.in
src/libcalamares/locale/CountryData_p.cpp src/libcalamares/locale/CountryData_p.cpp
src/libcalamares/CalamaresVersionX.h.in src/libcalamares/CalamaresVersionX.h.in
@ -161,9 +162,8 @@ Files: AUTHORS
src/modules/welcome/tests/* src/modules/welcome/tests/*
src/modules/welcomeq/welcomeq.conf src/modules/welcomeq/welcomeq.conf
src/modules/zfs/zfs.conf src/modules/zfs/zfs.conf
src/qml/calamares-qt5/slideshow/qmldir src/qml/calamares/slideshow/qmldir
src/qml/calamares-qt6/slideshow/qmldir Copyright: None
Copyright: Calamares team
License: CC0-1.0 License: CC0-1.0
Files: CalamaresConfig.cmake.in Files: CalamaresConfig.cmake.in
@ -220,16 +220,16 @@ Files: CalamaresConfig.cmake.in
src/modules/welcome/CMakeLists.txt src/modules/welcome/CMakeLists.txt
src/modules/welcomeq/CMakeLists.txt src/modules/welcomeq/CMakeLists.txt
src/modules/zfs/CMakeLists.txt src/modules/zfs/CMakeLists.txt
src/qml/CMakeLists.txt src/qml/calamares/CMakeLists.txt
Copyright: 2014-2016 Teo Mrnjavac <teo@kde.org> Copyright: 2014-2016 Teo Mrnjavac <teo@kde.org>
2017-2022 Adriaan de Groot <groot@kde.org>
2014 Aurélien Gâteau <agateau@kde.org> 2014 Aurélien Gâteau <agateau@kde.org>
2014-2019 Kevin Kofler <kevin.kofler@chello.at> 2014-2019 Kevin Kofler <kevin.kofler@chello.at>
2008-2011 Volker Lanz <vl@fidra.de> 2008-2011 Volker Lanz <vl@fidra.de>
2021 Anke Boersma <demm@kaosx.us> 2021 Anke Boersma <demm@kaosx.us>
2017-2023 Adriaan de Groot <groot@kde.org>
License: BSD-2-Clause License: BSD-2-Clause
Files: 3rdparty/kdsingleapplication/* Files: 3rdparty/kdsingleapplicationguard/*
Copyright: 2019-2021 Klaralvdalens Datakonsult AB. <info@kdab.com> Copyright: 2019-2021 Klaralvdalens Datakonsult AB. <info@kdab.com>
License: MIT License: MIT
@ -266,13 +266,12 @@ Copyright: 2014 Uri Herrera <uri_herrera@nitrux.in> and others
License: LGPL-3+ License: LGPL-3+
Files: src/modules/finishedq/seedling.svg Files: src/modules/finishedq/seedling.svg
src/modules/localeq/img/chevron-left-solid.svg
Copyright: 2020-2021 FontAwesome <hello@fontawesome.com> Copyright: 2020-2021 FontAwesome <hello@fontawesome.com>
License: CC-BY-4.0 License: CC-BY-4.0
Files: src/qml/calamares-qt5/slideshow/Presentation.qml Files: src/qml/calamares/slideshow/Presentation.qml
src/qml/calamares-qt5/slideshow/Slide.qml src/qml/calamares/slideshow/Slide.qml
src/qml/calamares-qt6/slideshow/Presentation.qml
src/qml/calamares-qt6/slideshow/Slide.qml
Copyright: 2017 Adriaan de Groot <groot@kde.org> Copyright: 2017 Adriaan de Groot <groot@kde.org>
2016 The Qt Company Ltd. 2016 The Qt Company Ltd.
2012 Digia Plc and/or its subsidiary(-ies) 2012 Digia Plc and/or its subsidiary(-ies)
@ -281,7 +280,7 @@ License: LGPL-2.1
Files: debian/* Files: debian/*
Copyright: 2016-2021 Jonathan Carter <jcc@debian.org> Copyright: 2016-2021 Jonathan Carter <jcc@debian.org>
2014 Rohan Garg <rohan@kde.org> 2014 Rohan Garg <rohan@kde.org>
2022-2024 Aaron Rainbolt <arraybolt3@ubuntu.com> 2022 Aaron Rainbolt <arraybolt3@gmail.com>
License: GPL-3+ License: GPL-3+
License: GPL-3+ License: GPL-3+

@ -8,17 +8,18 @@ Subject: replace pkexec by sudo
--- a/calamares.desktop --- a/calamares.desktop
+++ b/calamares.desktop +++ b/calamares.desktop
@@ -5,12 +5,13 @@ Name=Install System @@ -6,13 +6,14 @@ GenericName=System Installer
GenericName=System Installer Comment=Calamares — System Installer
Keywords=calamares;system;installer; Keywords=calamares;system;installer;
TryExec=calamares TryExec=calamares
-Exec=sh -c "pkexec calamares" -Exec=sh -c "pkexec calamares"
+Exec=sh -c "sudo -E calamares -D6" +Exec=sh -c "sudo -E calamares -D6"
Comment=Calamares — System Installer
Categories=Qt;System;
Icon=calamares Icon=calamares
Terminal=false Terminal=false
SingleMainWindow=true
StartupNotify=true StartupNotify=true
Categories=Qt;System;
+NotShowIn=LXQt; +NotShowIn=LXQt;
X-AppStream-Ignore=true X-AppStream-Ignore=true

@ -1,120 +0,0 @@
Description: Allow specifying partitions that are only present when FDE is used.
Author: Aaron Rainbolt <arraybolt3@ubuntu.com>
Origin: ubuntu
Forwarded: not-needed
Last-Update: 2024-02-26
--- a/src/modules/partition/core/PartitionLayout.cpp
+++ b/src/modules/partition/core/PartitionLayout.cpp
@@ -62,6 +62,7 @@ PartitionLayout::PartitionEntry::Partiti
const QString& mountPoint,
const QString& fs,
const bool& noEncrypt,
+ const bool& onlyPresentWithEncryption,
const QVariantMap& features,
const QString& size,
const QString& minSize,
@@ -72,6 +73,7 @@ PartitionLayout::PartitionEntry::Partiti
, partAttributes( attributes )
, partMountPoint( mountPoint )
, partNoEncrypt( noEncrypt )
+ , partOnlyPresentWithEncryption ( onlyPresentWithEncryption )
, partFeatures( features )
, partSize( size )
, partMinSize( minSize )
@@ -119,6 +121,7 @@ PartitionLayout::init( FileSystem::Type
Calamares::getString( pentry, "mountPoint" ),
Calamares::getString( pentry, "filesystem", "unformatted" ),
Calamares::getBool( pentry, "noEncrypt", false ),
+ Calamares::getBool( pentry, "onlyPresentWithEncryption", false ),
Calamares::getSubMap( pentry, "features", ok ),
Calamares::getString( pentry, "size", QStringLiteral( "0" ) ),
Calamares::getString( pentry, "minSize", QStringLiteral( "0" ) ),
@@ -228,6 +231,10 @@ PartitionLayout::createPartitions( Devic
cWarning() << "Partition" << entry.partMountPoint << "size is invalid, skipping...";
continue;
}
+ if ( luksPassphrase.isEmpty() && entry.partOnlyPresentWithEncryption ) {
+ // this partition is being skipped entirely
+ continue;
+ }
// Calculate partition size: Rely on "possibly uninitialized use"
// warnings to ensure that all the cases are covered below.
@@ -252,6 +259,10 @@ PartitionLayout::createPartitions( Devic
availableSectors = totalSectors;
for ( const auto& entry : qAsConst( m_partLayout ) )
{
+ if ( luksPassphrase.isEmpty() && entry.partOnlyPresentWithEncryption ) {
+ // this partition is being skipped entirely
+ continue;
+ }
qint64 sectors = partSectorsMap.value( &entry );
if ( entry.partMinSize.isValid() )
{
@@ -265,6 +276,10 @@ PartitionLayout::createPartitions( Devic
// Assign sectors for percentage-defined partitions.
for ( const auto& entry : qAsConst( m_partLayout ) )
{
+ if ( luksPassphrase.isEmpty() && entry.partOnlyPresentWithEncryption ) {
+ // this partition is being skipped entirely
+ continue;
+ }
if ( entry.partSize.unit() == Calamares::Partition::SizeUnit::Percent )
{
qint64 sectors
@@ -288,6 +303,10 @@ PartitionLayout::createPartitions( Devic
availableSectors = totalSectors;
for ( const auto& entry : qAsConst( m_partLayout ) )
{
+ if ( luksPassphrase.isEmpty() && entry.partOnlyPresentWithEncryption ) {
+ // this partition is being skipped entirely
+ continue;
+ }
// Adjust partition size based on available space.
qint64 sectors = partSectorsMap.value( &entry );
sectors = std::min( sectors, availableSectors );
--- a/src/modules/partition/core/PartitionLayout.h
+++ b/src/modules/partition/core/PartitionLayout.h
@@ -38,6 +38,7 @@ public:
QString partMountPoint;
FileSystem::Type partFileSystem = FileSystem::Unknown;
bool partNoEncrypt = false;
+ bool partOnlyPresentWithEncryption;
QVariantMap partFeatures;
Calamares::Partition::PartitionSize partSize;
Calamares::Partition::PartitionSize partMinSize;
@@ -63,6 +64,7 @@ public:
const QString& mountPoint,
const QString& fs,
const bool& noEncrypt,
+ const bool& onlyPresentWithEncryption,
const QVariantMap& features,
const QString& size,
const QString& minSize = QString(),
--- a/src/modules/partition/partition.conf
+++ b/src/modules/partition/partition.conf
@@ -266,6 +266,7 @@ defaultFileSystemType: "ext4"
# type: "4f68bce3-e8cd-4db1-96e7-fbcaf984b709"
# filesystem: "ext4"
# noEncrypt: false
+# onlyPresentWithEncryption: false
# mountPoint: "/"
# size: 20%
# minSize: 500M
@@ -275,6 +276,7 @@ defaultFileSystemType: "ext4"
# type: "933ac7e1-2eb4-4f13-b844-0e14e2aef915"
# filesystem: "ext4"
# noEncrypt: false
+# onlyPresentWithEncryption: false
# mountPoint: "/home"
# size: 3G
# minSize: 1.5G
@@ -303,6 +305,7 @@ defaultFileSystemType: "ext4"
# default filesystem type, or the user's choice, will be applied instead
# of "unknown" (e.g. the user might pick ext4, or xfs).
# - noEncrypt: whether this partition is exempt from encryption if enabled (optional parameter; default is false)
+# - onlyPresentWithEncryption: whether this partition is only created when encryption is enabled (optional parameter; default is false; ONLY SUPPORTED IN UBUNTU)
# - mountPoint: partition mount point (optional parameter; not mounted if unset)
# - size: partition size in bytes (append 'K', 'M' or 'G' for KiB, MiB or GiB)
# or

@ -1,22 +0,0 @@
Description: Fix a syntax error in Presentation.qml which prevents the slideshow from displaying
Author: Simon Quigley <tsimonq2@lubuntu.me>
Origin: vendor
Last-Update: 2024-10-15
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/qml/calamares-qt6/slideshow/Presentation.qml
+++ b/src/qml/calamares-qt6/slideshow/Presentation.qml
@@ -196,12 +196,7 @@ Item {
Text {
id: notesText
- property real padding: 16;
-
- x: padding
- y: padding
- width: parent.width - 2 * padding
-
+ anchors.margins: 16
font.pixelSize: 16
wrapMode: Text.WordWrap

@ -1,82 +0,0 @@
Description: Populate grub-{efi,pc}/install_devices debconf config
Author: Simon Quigley <tsimonq2@ubuntu.com>
Origin: vendor
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/calamares/+bug/2063354
Last-Update: 2024-04-24
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/modules/bootloader/main.py
+++ b/src/modules/bootloader/main.py
@@ -25,6 +25,7 @@ import os
import re
import shutil
import subprocess
+import tempfile
import libcalamares
@@ -586,6 +587,46 @@ def get_grub_efi_parameters():
return None
+def get_disk_id(device_name, efi):
+ by_id_path = "/dev/disk/by-id"
+
+ if efi:
+ partitions = libcalamares.globalstorage.value("partitions")
+ device_name = None
+
+ for partition in partitions:
+ if "/boot/efi" in partition["mountPoint"]:
+ device_name = partition["device"]
+ break
+
+ device_path = os.path.realpath(device_name)
+
+ for entry in os.listdir(by_id_path):
+ full_entry_path = os.path.join(by_id_path, entry)
+ if os.path.realpath(full_entry_path) == device_path:
+ return full_entry_path
+
+ return None
+
+
+def set_grub_debconf_config(device_name, efi=False):
+ dev_id_path = get_disk_id(device_name, efi=efi)
+
+ if not dev_id_path:
+ return None
+
+ temp_dir = libcalamares.globalstorage.value("rootMountPoint") + "/tmp/"
+ with tempfile.NamedTemporaryFile(mode="w", delete=False, dir=temp_dir) as tmpfile:
+ debconf_target = "grub-efi" if efi else "grub-pc"
+
+ tmpfile.write(f"grub-pc {debconf_target}/install_devices multiselect {dev_id_path}\n")
+ tmpfile_path = tmpfile.name
+
+ debconf_config = "/tmp/" + os.path.basename(tmpfile_path)
+ check_target_env_call(["/usr/bin/debconf-set-selections", debconf_config])
+ os.remove(tmpfile_path)
+
+
def run_grub_mkconfig(partitions, output_file):
"""
Runs grub-mkconfig in the target environment
@@ -636,6 +677,8 @@ def run_grub_install(fw_type, partitions
"--efi-directory=" + efi_directory,
"--bootloader-id=" + efi_bootloader_id,
"--force"])
+
+ set_grub_debconf_config(efi_target, efi=True)
else:
assert efi_directory is None
if libcalamares.globalstorage.value("bootLoader") is None:
@@ -657,6 +700,8 @@ def run_grub_install(fw_type, partitions
"--force",
boot_loader["installPath"]])
+ set_grub_debconf_config(boot_loader["installPath"])
+
def install_grub(efi_directory, fw_type):
"""

@ -1,5 +1,2 @@
0001-replace-pkexec-by-sudo.patch 0001-replace-pkexec-by-sudo.patch
apport-package-hook.patch apport-package-hook.patch
enable-only-present-with-encryption-partitions.patch
grub-debconf-config.patch
fix-presentation-qml-syntax.patch

4
debian/rules vendored

@ -7,10 +7,10 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all
export DEB_BUILD_MAINT_OPTIONS=buildinfo=+path export DEB_BUILD_MAINT_OPTIONS=buildinfo=+path
%: %:
dh $@ --with kf6 --buildsystem kf6 dh $@ --with kf5
override_dh_auto_configure: override_dh_auto_configure:
dh_auto_configure -- -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -DBUILD_APPDATA=ON -DBUILD_APPSTREAM=ON -DINSTALL_COMPLETION=ON -DWITH_QT6=ON dh_auto_configure -- -DWEBVIEW_FORCE_WEBKIT=1 -DKDE_INSTALL_USE_QT_SYS_PATHS=ON
# Some test don't work well, we don't need to run them at package build time. # Some test don't work well, we don't need to run them at package build time.
override_dh_auto_test: override_dh_auto_test:

@ -1,6 +0,0 @@
Name: calamares
Bug-Database: https://github.com/calamares/calamares/issues
Bug-Submit: https://github.com/calamares/calamares/issues/new?assignees=&labels=&projects=&template=bug_report.md
Changelog: https://github.com/calamares/calamares/blob/calamares/CHANGES-3.3
Repository: https://github.com/calamares/calamares.git
Repository-Browse: https://github.com/calamares/calamares

6
debian/watch vendored

@ -1,5 +1,3 @@
version=4 version=4
opts="searchmode=plain, \ opts="pgpsigurlmangle=s/$/.asc/, uversionmangle=s/\..$/-alpha2/" \
pgpsigurlmangle=s/$/.asc/, \ https://github.com/calamares/calamares/releases .*/calamares-([\d\.]+)-alpha([\d]+).tar.gz
uversionmangle=s/(\d+\.\d+\.\d+).*/$1/" \
https://api.github.com/repos/calamares/@PACKAGE@/releases https:\/\/github.com\/calamares\/calamares\/releases\/download\/v(?:[-_]?(\d[\-+\.:\~\da-zA-Z]*))\/calamares-(?:[-_]?(\d[\-+\.:\~\da-zA-Z]*)).tar.gz

Loading…
Cancel
Save