mirror of
https://git.launchpad.net/~ubuntu-qt-code/+git/calamares-settings-ubuntu
synced 2025-06-20 06:01:30 +00:00
Much fix, very fix, wow
This commit is contained in:
parent
68b4f76a29
commit
ac31dfe838
@ -100,7 +100,8 @@ void PackageSelectViewStep::onActivate()
|
|||||||
bool hasInternet = network.hasInternet();
|
bool hasInternet = network.hasInternet();
|
||||||
|
|
||||||
// Handle network unavailability
|
// Handle network unavailability
|
||||||
if (!hasInternet) {
|
//if (!hasInternet) {
|
||||||
|
// Disable almost all fancy features to avoid bugs, revert in 25.10 cycle
|
||||||
ui->full_button->setVisible(false);
|
ui->full_button->setVisible(false);
|
||||||
ui->full_text->setVisible(false);
|
ui->full_text->setVisible(false);
|
||||||
|
|
||||||
@ -114,7 +115,7 @@ void PackageSelectViewStep::onActivate()
|
|||||||
ui->extraparty_scroll->setVisible(false);
|
ui->extraparty_scroll->setVisible(false);
|
||||||
ui->extraparty_text->setVisible(false);
|
ui->extraparty_text->setVisible(false);
|
||||||
ui->mandatory_warning_label->setVisible(false);
|
ui->mandatory_warning_label->setVisible(false);
|
||||||
}
|
//}
|
||||||
|
|
||||||
// Dynamically create package checkboxes only once
|
// Dynamically create package checkboxes only once
|
||||||
if (m_packageCheckBoxes.isEmpty()) {
|
if (m_packageCheckBoxes.isEmpty()) {
|
||||||
|
@ -9,10 +9,6 @@ packages:
|
|||||||
name: "Thunderbird"
|
name: "Thunderbird"
|
||||||
description: "Email, newsfeed, chat, and calendaring client."
|
description: "Email, newsfeed, chat, and calendaring client."
|
||||||
snap: true
|
snap: true
|
||||||
- id: "virt-manager"
|
|
||||||
name: "Virtual Machine Manager"
|
|
||||||
description: "Desktop user interface for managing virtual machines through libvirt."
|
|
||||||
snap: false
|
|
||||||
- id: "krita"
|
- id: "krita"
|
||||||
name: "Krita"
|
name: "Krita"
|
||||||
description: "Graphics editor designed primarily for digital art and 2D animation."
|
description: "Graphics editor designed primarily for digital art and 2D animation."
|
||||||
|
@ -62,9 +62,12 @@ Calamares::JobResult PackageSelectProcess::runAptCommand(const QString& command,
|
|||||||
QRegularExpression getRegex(R"(Get:\d+\s+[^ ]+\s+[^ ]+\s+(.+?)\s+\S+\s+(\S+)\s+\[(.*?)\])");
|
QRegularExpression getRegex(R"(Get:\d+\s+[^ ]+\s+[^ ]+\s+(.+?)\s+\S+\s+(\S+)\s+\[(.*?)\])");
|
||||||
|
|
||||||
connect(&aptProcess, &QProcess::readyReadStandardOutput, this,
|
connect(&aptProcess, &QProcess::readyReadStandardOutput, this,
|
||||||
[this, &aptProcess, &lineCount, progressPerLine, startProgress, endProgress, verboseProgress, commandHRPrefix, getRegex]() mutable {
|
[this, &lineCount, progressPerLine, startProgress, endProgress, verboseProgress, commandHRPrefix, getRegex]() {
|
||||||
while (aptProcess.canReadLine()) {
|
QProcess *aptProcess = (QProcess *)(QObject::sender());
|
||||||
QString line = QString::fromUtf8(aptProcess.readLine()).trimmed();
|
if (aptProcess == NULL) return;
|
||||||
|
while (aptProcess->canReadLine()) {
|
||||||
|
QString line = QString::fromUtf8(aptProcess->readLine()).trimmed();
|
||||||
|
qDebug() << "Apt log line: " << line;
|
||||||
if (line.isEmpty()) {
|
if (line.isEmpty()) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -145,7 +148,7 @@ Calamares::JobResult PackageSelectProcess::runSnapCommand(const QStringList& sna
|
|||||||
|
|
||||||
QString currentDescription;
|
QString currentDescription;
|
||||||
|
|
||||||
connect(&snapProcess, &QProcess::readyReadStandardOutput, this,
|
connect(&snapProcess, &QProcess::readyReadStandardOutput, this,
|
||||||
[&snapProcess, this, ¤tDescription, startProgress, endProgress]( ) {
|
[&snapProcess, this, ¤tDescription, startProgress, endProgress]( ) {
|
||||||
while (snapProcess.canReadLine()) {
|
while (snapProcess.canReadLine()) {
|
||||||
QString line = QString::fromUtf8(snapProcess.readLine()).trimmed();
|
QString line = QString::fromUtf8(snapProcess.readLine()).trimmed();
|
||||||
@ -281,7 +284,7 @@ Calamares::JobResult PackageSelectProcess::exec()
|
|||||||
|
|
||||||
const QVariantMap installationData = gs->value("installation_data").toMap();
|
const QVariantMap installationData = gs->value("installation_data").toMap();
|
||||||
const QString installationMode = installationData.value("installation_mode").toString();
|
const QString installationMode = installationData.value("installation_mode").toString();
|
||||||
const bool hasInternet = installationData.value("hasInternet").toBool();
|
const bool hasInternet = gs->value("hasInternet").toBool();
|
||||||
const bool downloadUpdates = (installationData.value("download_updates").toBool() && hasInternet);
|
const bool downloadUpdates = (installationData.value("download_updates").toBool() && hasInternet);
|
||||||
const QVariantList packagesToInstall = installationData.value("packages_to_install").toList();
|
const QVariantList packagesToInstall = installationData.value("packages_to_install").toList();
|
||||||
const QVariantList packagesToRemove = installationData.value("packages_to_remove").toList();
|
const QVariantList packagesToRemove = installationData.value("packages_to_remove").toList();
|
||||||
@ -293,6 +296,10 @@ Calamares::JobResult PackageSelectProcess::exec()
|
|||||||
rootMountPoint = gs->value("rootMountPoint").toString();
|
rootMountPoint = gs->value("rootMountPoint").toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const QString checkpackage_path = "/usr/libexec/checkpackage-backend";
|
||||||
|
const QString chroot_checkpackage_path = rootMountPoint + checkpackage_path;
|
||||||
|
QFile* cpbe = new QFile(chroot_checkpackage_path);
|
||||||
|
|
||||||
static const QMap<QString, QVector<ProgressAllocation>> allocationMap = {
|
static const QMap<QString, QVector<ProgressAllocation>> allocationMap = {
|
||||||
{ "minimal", { {0.0, 1.0} } },
|
{ "minimal", { {0.0, 1.0} } },
|
||||||
{ "normal", { {0.0, 0.4}, {0.4, 1.0} } },
|
{ "normal", { {0.0, 0.4}, {0.4, 1.0} } },
|
||||||
@ -389,9 +396,6 @@ Calamares::JobResult PackageSelectProcess::exec()
|
|||||||
qDebug() << "Progress range: installStart:" << installStart << "installEnd:" << installEnd;
|
qDebug() << "Progress range: installStart:" << installStart << "installEnd:" << installEnd;
|
||||||
|
|
||||||
if (!debPackages.isEmpty()) {
|
if (!debPackages.isEmpty()) {
|
||||||
const QString checkpackage_path = "/usr/libexec/checkpackage-backend";
|
|
||||||
const QString chroot_checkpackage_path = rootMountPoint + checkpackage_path;
|
|
||||||
|
|
||||||
// Corresponding to the temporary hack in pkgselect adding calamares
|
// Corresponding to the temporary hack in pkgselect adding calamares
|
||||||
// and kdialog to the list, we only want those two included in the
|
// and kdialog to the list, we only want those two included in the
|
||||||
// final installation if we're actually in OEM mode. Otherwise, they
|
// final installation if we're actually in OEM mode. Otherwise, they
|
||||||
@ -412,26 +416,25 @@ Calamares::JobResult PackageSelectProcess::exec()
|
|||||||
// checkpackage-backend needs to be explicitly copied to the chroot
|
// checkpackage-backend needs to be explicitly copied to the chroot
|
||||||
// and removed later for systems with stacked squashfses, or the
|
// and removed later for systems with stacked squashfses, or the
|
||||||
// install command will fail. LP: #2104243
|
// install command will fail. LP: #2104243
|
||||||
QFile* cpbe = new QFile(chroot_checkpackage_path);
|
|
||||||
if (!cpbe->exists()) {
|
if (!cpbe->exists()) {
|
||||||
QFile* parent_cpbe = new QFile(checkpackage_path);
|
QFile* parent_cpbe = new QFile(checkpackage_path);
|
||||||
if (!parent_cpbe->copy(chroot_checkpackage_path)) {
|
if (!parent_cpbe->copy(chroot_checkpackage_path)) {
|
||||||
return Calamares::JobResult::error(tr("Internal Error"),
|
return Calamares::JobResult::error(tr("Internal Error"),
|
||||||
tr("Permission denied when copying checkpackage-backend, are you running Calamares correctly?"));
|
tr("Permission denied when copying checkpackage-backend, are you running Calamares correctly?"));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const QString packageList = debPackages.join(" ");
|
const QString packageList = debPackages.join(" ");
|
||||||
const QString installCommand = QString("DEBIAN_FRONTEND=noninteractive apt-get -y install $(/usr/libexec/checkpackage-backend %1);").arg(packageList);
|
const QString installCommand = QString("DEBIAN_FRONTEND=noninteractive apt-get -y install $(/usr/libexec/checkpackage-backend %1);").arg(packageList);
|
||||||
|
|
||||||
Calamares::JobResult installResult = runAptCommand(installCommand,
|
Calamares::JobResult installResult = runAptCommand(installCommand,
|
||||||
rootMountPoint,
|
rootMountPoint,
|
||||||
installStart,
|
installStart,
|
||||||
installEnd,
|
installEnd,
|
||||||
true);
|
true);
|
||||||
if (!cpbe->remove()) qDebug() << "Warning: failed to clean up /usr/libexec/checkpackage-backend";
|
if (!installResult) {
|
||||||
if (!installResult) return std::move(installResult);
|
|
||||||
} else {
|
|
||||||
if (!cpbe->remove()) qDebug() << "Warning: failed to clean up /usr/libexec/checkpackage-backend";
|
if (!cpbe->remove()) qDebug() << "Warning: failed to clean up /usr/libexec/checkpackage-backend";
|
||||||
|
return std::move(installResult);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else qDebug() << "No packages to install.";
|
else qDebug() << "No packages to install.";
|
||||||
@ -564,5 +567,7 @@ Calamares::JobResult PackageSelectProcess::exec()
|
|||||||
m_prettyStatus = tr("All selected packages installed successfully.");
|
m_prettyStatus = tr("All selected packages installed successfully.");
|
||||||
emit prettyStatusMessageChanged(m_prettyStatus);
|
emit prettyStatusMessageChanged(m_prettyStatus);
|
||||||
|
|
||||||
|
if (!cpbe->remove()) qDebug() << "Warning: failed to clean up /usr/libexec/checkpackage-backend";
|
||||||
|
|
||||||
return Calamares::JobResult::ok();
|
return Calamares::JobResult::ok();
|
||||||
}
|
}
|
||||||
|
20
debian/changelog
vendored
20
debian/changelog
vendored
@ -1,3 +1,13 @@
|
|||||||
|
calamares-settings-ubuntu (1:25.04.27) plucky; urgency=medium
|
||||||
|
|
||||||
|
* Disable virt-manager installation in third-party software options, as the
|
||||||
|
package is broken when installed by pkgselect.
|
||||||
|
* Remove full installation and third-party software options from all
|
||||||
|
flavors.
|
||||||
|
* Fix segfaults during installation. (LP: #2107486)
|
||||||
|
|
||||||
|
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 16 Apr 2025 18:23:56 -0500
|
||||||
|
|
||||||
calamares-settings-ubuntu (1:25.04.26) plucky; urgency=medium
|
calamares-settings-ubuntu (1:25.04.26) plucky; urgency=medium
|
||||||
|
|
||||||
* [bootloader] Instead of utilizing a contextualprocess to only bind-mount
|
* [bootloader] Instead of utilizing a contextualprocess to only bind-mount
|
||||||
@ -87,8 +97,8 @@ calamares-settings-ubuntu (1:25.04.23) plucky; urgency=medium
|
|||||||
|
|
||||||
calamares-settings-ubuntu (1:25.04.22) plucky; urgency=medium
|
calamares-settings-ubuntu (1:25.04.22) plucky; urgency=medium
|
||||||
|
|
||||||
* [Unity] Update welcome slide for Plucky.
|
* [Unity] Update welcome slide for Plucky.
|
||||||
* [Unity] Set Kvantum theme to KvGnomeDark for Calamares.
|
* [Unity] Set Kvantum theme to KvGnomeDark for Calamares.
|
||||||
|
|
||||||
-- Walter Lapchynski <wxl@ubuntu.com> Wed, 26 Mar 2025 00:05:56 +0000
|
-- Walter Lapchynski <wxl@ubuntu.com> Wed, 26 Mar 2025 00:05:56 +0000
|
||||||
|
|
||||||
@ -108,19 +118,19 @@ calamares-settings-ubuntu (1:25.04.19) plucky; urgency=medium
|
|||||||
|
|
||||||
* [Lubuntu] Update slides for current applications:
|
* [Lubuntu] Update slides for current applications:
|
||||||
* Support: IRC -> Matrix, Lubuntu -> Ubuntu Discourse
|
* Support: IRC -> Matrix, Lubuntu -> Ubuntu Discourse
|
||||||
* Lightweight: KCalc -> Qalc
|
* Lightweight: KCalc -> Qalc
|
||||||
|
|
||||||
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 07 Mar 2025 03:21:03 +0000
|
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 07 Mar 2025 03:21:03 +0000
|
||||||
|
|
||||||
calamares-settings-ubuntu (1:25.04.18) plucky; urgency=medium
|
calamares-settings-ubuntu (1:25.04.18) plucky; urgency=medium
|
||||||
|
|
||||||
* Add python3 as build-dep.
|
* Add python3 as build-dep.
|
||||||
|
|
||||||
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 07 Mar 2025 01:11:36 +0000
|
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 07 Mar 2025 01:11:36 +0000
|
||||||
|
|
||||||
calamares-settings-ubuntu (1:25.04.17) plucky; urgency=medium
|
calamares-settings-ubuntu (1:25.04.17) plucky; urgency=medium
|
||||||
|
|
||||||
* [Lubuntu] Update welcome slides for Plucky.
|
* [Lubuntu] Update welcome slides for Plucky.
|
||||||
|
|
||||||
-- Walter Lapchynski <wxl@ubuntu.com> Thu, 06 Mar 2025 10:23:08 +0000
|
-- Walter Lapchynski <wxl@ubuntu.com> Thu, 06 Mar 2025 10:23:08 +0000
|
||||||
|
|
||||||
|
1
debian/control
vendored
1
debian/control
vendored
@ -7,6 +7,7 @@ Build-Depends: debhelper-compat (= 13),
|
|||||||
dh-sequence-qmldeps,
|
dh-sequence-qmldeps,
|
||||||
cmake,
|
cmake,
|
||||||
extra-cmake-modules,
|
extra-cmake-modules,
|
||||||
|
fakeroot,
|
||||||
intltool,
|
intltool,
|
||||||
libapt-pkg-dev,
|
libapt-pkg-dev,
|
||||||
libcalamares-dev (>= 3.3.13-0ubuntu4),
|
libcalamares-dev (>= 3.3.13-0ubuntu4),
|
||||||
|
@ -5,10 +5,6 @@ packages:
|
|||||||
name: "Element"
|
name: "Element"
|
||||||
description: "Matrix-based end-to-end encrypted messenger and secure collaboration app."
|
description: "Matrix-based end-to-end encrypted messenger and secure collaboration app."
|
||||||
snap: true
|
snap: true
|
||||||
- id: "virt-manager"
|
|
||||||
name: "Virtual Machine Manager"
|
|
||||||
description: "Desktop user interface for managing virtual machines through libvirt."
|
|
||||||
snap: false
|
|
||||||
- id: "krita"
|
- id: "krita"
|
||||||
name: "Krita"
|
name: "Krita"
|
||||||
description: "Graphics editor designed primarily for digital art and 2D animation."
|
description: "Graphics editor designed primarily for digital art and 2D animation."
|
||||||
|
@ -10,10 +10,6 @@ packages:
|
|||||||
name: "Thunderbird"
|
name: "Thunderbird"
|
||||||
description: "Email, newsfeed, chat, and calendaring client."
|
description: "Email, newsfeed, chat, and calendaring client."
|
||||||
snap: true
|
snap: true
|
||||||
- id: "virt-manager"
|
|
||||||
name: "Virtual Machine Manager"
|
|
||||||
description: "Desktop user interface for managing virtual machines through libvirt."
|
|
||||||
snap: false
|
|
||||||
- id: "krita"
|
- id: "krita"
|
||||||
name: "Krita"
|
name: "Krita"
|
||||||
description: "Graphics editor designed primarily for digital art and 2D animation."
|
description: "Graphics editor designed primarily for digital art and 2D animation."
|
||||||
|
@ -9,10 +9,6 @@ packages:
|
|||||||
name: "Thunderbird"
|
name: "Thunderbird"
|
||||||
description: "Email, newsfeed, chat, and calendaring client."
|
description: "Email, newsfeed, chat, and calendaring client."
|
||||||
snap: true
|
snap: true
|
||||||
- id: "virt-manager"
|
|
||||||
name: "Virtual Machine Manager"
|
|
||||||
description: "Desktop user interface for managing virtual machines through libvirt."
|
|
||||||
snap: false
|
|
||||||
- id: "krita"
|
- id: "krita"
|
||||||
name: "Krita"
|
name: "Krita"
|
||||||
description: "Graphics editor designed primarily for digital art and 2D animation."
|
description: "Graphics editor designed primarily for digital art and 2D animation."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user