Override Calamares patches to adapt finish screen content

This commit is contained in:
Michael Smith 2024-09-08 22:48:33 +02:00
parent 10dc188e83
commit 836088c53f
9 changed files with 549 additions and 3 deletions

View File

@ -8,11 +8,26 @@
...
}:
with lib; let
calamares-desk-os = lowPrio (
(pkgs.calamares.override {nixos-extensions = true;})
.overrideAttrs {
patches = [
../../packages/calamares/0001-Modifies-the-users-module-to-only-set-passwords-of-u.patch
../../packages/calamares/0002-Makes-calamares-search-run-current-system-sw-share-c.patch
../../packages/calamares/0003-Uses-pkexec-within-modules-in-order-to-run-calamares.patch
../../packages/calamares/0004-Adds-unfree-qml-to-packagechooserq.patch
../../packages/calamares/0005-Modifies-finished-module-to-add-some-NixOS-resources.patch
../../packages/calamares/0006-Remove-options-for-unsupported-partition-types.patch
../../packages/calamares/0007-Fix-setting-the-kayboard-layout-on-GNOME-wayland.patch
../../packages/calamares/0008-Change-default-location-where-calamares-searches-for.patch
];
}
);
calamares-extensions-desk-os = pkgs.callPackage ../../packages/calamares-extensions {};
calamares-nixos-autostart = pkgs.makeAutostartItem {
name = "io.calamares.calamares";
package = pkgs.calamares-nixos;
package = calamares-desk-os;
};
calamares-extensions-desk-os = pkgs.callPackage ../../packages/calamares-extensions {};
in {
imports = [
./iso-image.nix
@ -124,7 +139,7 @@ in {
environment.systemPackages = with pkgs; [
# Calamares for graphical installation
libsForQt5.kpmcore
calamares-nixos
calamares-desk-os
calamares-nixos-autostart
calamares-extensions-desk-os
# Get list of locales

View File

@ -0,0 +1,50 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 15:53:16 -0400
Subject: [PATCH] Modifies the users module to only set passwords of user and
root
as the users will have already been created in the configuration.nix
file
---
src/modules/users/Config.cpp | 15 ---------------
1 file changed, 15 deletions(-)
diff --git a/src/modules/users/Config.cpp b/src/modules/users/Config.cpp
index cd56bc3e2..9b09b36cd 100644
--- a/src/modules/users/Config.cpp
+++ b/src/modules/users/Config.cpp
@@ -1028,12 +1028,6 @@ Config::createJobs() const
Calamares::Job* j;
- if ( !m_sudoersGroup.isEmpty() )
- {
- j = new SetupSudoJob( m_sudoersGroup, m_sudoStyle );
- jobs.append( Calamares::job_ptr( j ) );
- }
-
if ( getActiveDirectoryUsed() )
{
j = new ActiveDirectoryJob( m_activeDirectoryAdminUsername,
@@ -1043,20 +1037,11 @@ Config::createJobs() const
jobs.append( Calamares::job_ptr( j ) );
}
- j = new SetupGroupsJob( this );
- jobs.append( Calamares::job_ptr( j ) );
-
- j = new CreateUserJob( this );
- jobs.append( Calamares::job_ptr( j ) );
-
j = new SetPasswordJob( loginName(), userPassword() );
jobs.append( Calamares::job_ptr( j ) );
j = new SetPasswordJob( "root", rootPassword() );
jobs.append( Calamares::job_ptr( j ) );
- j = new SetHostNameJob( this );
- jobs.append( Calamares::job_ptr( j ) );
-
return jobs;
}

View File

@ -0,0 +1,60 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 15:57:55 -0400
Subject: [PATCH] Makes calamares search
/run/current-system/sw/share/calamares/ for extra configuration files as by
default it only searches /usr/share/calamares/ and
/nix/store/<hash>-calamares-<version>/share/calamares/ but
calamares-nixos-extensions is not in either of these locations
---
src/calamares/main.cpp | 1 +
src/libcalamares/utils/Dirs.cpp | 8 ++++++++
src/libcalamares/utils/Dirs.h | 3 +++
3 files changed, 12 insertions(+)
diff --git a/src/calamares/main.cpp b/src/calamares/main.cpp
index e0491e5f9..faf272016 100644
--- a/src/calamares/main.cpp
+++ b/src/calamares/main.cpp
@@ -132,6 +132,7 @@ main( int argc, char* argv[] )
#endif
std::unique_ptr< KDSingleApplication > possiblyUnique;
+ Calamares::setNixosDirs();
const bool is_debug = handle_args( a );
if ( !is_debug )
{
diff --git a/src/libcalamares/utils/Dirs.cpp b/src/libcalamares/utils/Dirs.cpp
index c42768a08..dfce7eb5d 100644
--- a/src/libcalamares/utils/Dirs.cpp
+++ b/src/libcalamares/utils/Dirs.cpp
@@ -114,6 +114,14 @@ setXdgDirs()
s_haveExtraDirs = !( s_extraConfigDirs.isEmpty() && s_extraDataDirs.isEmpty() );
}
+void
+setNixosDirs()
+{
+ s_extraConfigDirs << "/run/current-system/sw/share/calamares/";
+ s_extraDataDirs << "/run/current-system/sw/share/calamares/";
+ s_haveExtraDirs = !( s_extraConfigDirs.isEmpty() && s_extraDataDirs.isEmpty() );
+}
+
QStringList
extraConfigDirs()
{
diff --git a/src/libcalamares/utils/Dirs.h b/src/libcalamares/utils/Dirs.h
index d0edd7a4f..26bd16b4e 100644
--- a/src/libcalamares/utils/Dirs.h
+++ b/src/libcalamares/utils/Dirs.h
@@ -50,6 +50,9 @@ DLLEXPORT bool isAppDataDirOverridden();
/** @brief Setup extra config and data dirs from the XDG variables.
*/
DLLEXPORT void setXdgDirs();
+/** @brief Setup extra config and data dirs fir NixOS.
+ */
+DLLEXPORT void setNixosDirs();
/** @brief Are any extra directories configured? */
DLLEXPORT bool haveExtraDirs();
/** @brief XDG_CONFIG_DIRS, each guaranteed to end with / */

View File

@ -0,0 +1,119 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 15:59:54 -0400
Subject: [PATCH] Uses pkexec within modules in order to run calamares without
root permissions as a whole.
Also fixes storage check in the welcome module
---
src/libcalamares/utils/Runner.cpp | 8 +++---
src/modules/mount/main.py | 8 +++---
.../welcome/checker/GeneralRequirements.cpp | 27 ++++++++++++++++++-
.../welcome/checker/GeneralRequirements.h | 1 +
4 files changed, 35 insertions(+), 9 deletions(-)
diff --git a/src/libcalamares/utils/Runner.cpp b/src/libcalamares/utils/Runner.cpp
index f7872a7d0..a246ca110 100644
--- a/src/libcalamares/utils/Runner.cpp
+++ b/src/libcalamares/utils/Runner.cpp
@@ -145,13 +145,13 @@ Calamares::Utils::Runner::run()
}
if ( m_location == RunLocation::RunInTarget )
{
- process.setProgram( "chroot" );
- process.setArguments( QStringList { workingDirectory.absolutePath() } << m_command );
+ process.setProgram( "pkexec" );
+ process.setArguments( QStringList { "chroot" } + QStringList { workingDirectory.absolutePath() } << m_command );
}
else
{
- process.setProgram( "env" );
- process.setArguments( m_command );
+ process.setProgram( "pkexec" );
+ process.setArguments( QStringList { "env" } + m_command );
}
if ( m_output )
diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py
index 4a16f8872..6d32916a5 100644
--- a/src/modules/mount/main.py
+++ b/src/modules/mount/main.py
@@ -244,7 +244,7 @@ def mount_partition(root_mount_point, partition, partitions, mount_options, moun
# Ensure that the created directory has the correct SELinux context on
# SELinux-enabled systems.
- os.makedirs(mount_point, exist_ok=True)
+ subprocess.check_call(["pkexec", "mkdir", "-p", mount_point])
try:
subprocess.call(['chcon', '--reference=' + raw_mount_point, mount_point])
@@ -288,13 +288,13 @@ def mount_partition(root_mount_point, partition, partitions, mount_options, moun
for s in btrfs_subvolumes:
if not s["subvolume"]:
continue
- os.makedirs(root_mount_point + os.path.dirname(s["subvolume"]), exist_ok=True)
- subprocess.check_call(["btrfs", "subvolume", "create",
+ subprocess.check_call(["pkexec", "mkdir", "-p", root_mount_point + os.path.dirname(s["subvolume"])])
+ subprocess.check_call(["pkexec", "btrfs", "subvolume", "create",
root_mount_point + s["subvolume"]])
if s["mountPoint"] == "/":
# insert the root subvolume into global storage
libcalamares.globalstorage.insert("btrfsRootSubvolume", s["subvolume"])
- subprocess.check_call(["umount", "-v", root_mount_point])
+ subprocess.check_call(["pkexec", "umount", "-v", root_mount_point])
device = partition["device"]
diff --git a/src/modules/welcome/checker/GeneralRequirements.cpp b/src/modules/welcome/checker/GeneralRequirements.cpp
index a58f3df83..b66576b09 100644
--- a/src/modules/welcome/checker/GeneralRequirements.cpp
+++ b/src/modules/welcome/checker/GeneralRequirements.cpp
@@ -431,10 +431,35 @@ GeneralRequirements::checkEnoughStorage( qint64 requiredSpace )
cWarning() << "GeneralRequirements is configured without libparted.";
return false;
#else
- return check_big_enough( requiredSpace );
+ return big_enough( requiredSpace );
#endif
}
+bool
+GeneralRequirements::big_enough( qint64 requiredSpace )
+{
+ FILE *fpipe;
+ char command[128];
+ snprintf(command, sizeof(command), "lsblk --bytes -no SIZE,TYPE | grep disk | awk '$1 > %llu {print $1}'", requiredSpace);
+ char c = 0;
+
+ if (0 == (fpipe = (FILE*)popen(command, "r")))
+ {
+ cWarning() << "Failed to check storage size.";
+ return false;
+ }
+
+ while (fread(&c, sizeof c, 1, fpipe))
+ {
+ pclose(fpipe);
+ return true;
+ }
+
+ pclose(fpipe);
+
+ return false;
+}
+
bool
GeneralRequirements::checkEnoughRam( qint64 requiredRam )
{
diff --git a/src/modules/welcome/checker/GeneralRequirements.h b/src/modules/welcome/checker/GeneralRequirements.h
index b6646da11..ea27324fa 100644
--- a/src/modules/welcome/checker/GeneralRequirements.h
+++ b/src/modules/welcome/checker/GeneralRequirements.h
@@ -36,6 +36,7 @@ private:
bool checkHasPower();
bool checkHasInternet();
bool checkIsRoot();
+ bool big_enough( qint64 requiredSpace );
qreal m_requiredStorageGiB;
qreal m_requiredRamGiB;

View File

@ -0,0 +1,122 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 16:00:43 -0400
Subject: [PATCH] Adds unfree qml to packagechooserq
---
.../packagechooserq/packagechooserq.qrc | 1 +
.../packagechooserq@unfree.qml | 75 +++++++++++++++++++
src/modules/packagechooserq/unfree.conf | 11 +++
3 files changed, 87 insertions(+)
create mode 100644 src/modules/packagechooserq/packagechooserq@unfree.qml
create mode 100644 src/modules/packagechooserq/unfree.conf
diff --git a/src/modules/packagechooserq/packagechooserq.qrc b/src/modules/packagechooserq/packagechooserq.qrc
index 1b892dce1..ee80a934b 100644
--- a/src/modules/packagechooserq/packagechooserq.qrc
+++ b/src/modules/packagechooserq/packagechooserq.qrc
@@ -4,5 +4,6 @@
<file>images/libreoffice.jpg</file>
<file>images/no-selection.png</file>
<file>images/plasma.png</file>
+ <file>packagechooserq@unfree.qml</file>
</qresource>
</RCC>
diff --git a/src/modules/packagechooserq/packagechooserq@unfree.qml b/src/modules/packagechooserq/packagechooserq@unfree.qml
new file mode 100644
index 000000000..5e36d77d9
--- /dev/null
+++ b/src/modules/packagechooserq/packagechooserq@unfree.qml
@@ -0,0 +1,75 @@
+/* === This file is part of Calamares - <https://calamares.io> ===
+ *
+ * SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ *
+ * Calamares is Free Software: see the License-Identifier above.
+ *
+ */
+
+import io.calamares.core 1.0
+import io.calamares.ui 1.0
+
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+import QtQuick.Layouts 1.3
+
+Item {
+
+ SystemPalette {
+ id: palette
+ colorGroup: SystemPalette.Active
+ }
+
+ width: parent.width
+ height: parent.height
+
+ Rectangle {
+ anchors.fill: parent
+ color: palette.window
+
+ ButtonGroup {
+ id: switchGroup
+ }
+
+ Column {
+ id: column
+ anchors.centerIn: parent
+ spacing: 5
+
+ Rectangle {
+ width: 700
+ height: 200
+ color: palette.base
+ radius: 10
+ border.width: 0
+ Text {
+ color: palette.text
+ width: 600
+ height: 150
+ anchors.centerIn: parent
+ text: qsTr("NixOS is fully open source, but it also provides software packages with unfree licenses. By default unfree packages are not allowed, but you can enable it here. If you check this box, software installed might have additional End User License Agreements (EULAs) attached. If not enabled, some hardware might not work fully when no suitable open source drivers are available.<br/>")
+ font.pointSize: 12
+ wrapMode: Text.WordWrap
+ }
+
+ CheckBox {
+ id: element2
+ anchors.horizontalCenter: parent.horizontalCenter
+ y: 145
+ text: qsTr("Allow unfree software")
+ checked: false
+
+ onCheckedChanged: {
+ if ( checked ) {
+ config.packageChoice = "unfree"
+ } else {
+ config.packageChoice = "free"
+ }
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/src/modules/packagechooserq/unfree.conf b/src/modules/packagechooserq/unfree.conf
new file mode 100644
index 000000000..da79a8eac
--- /dev/null
+++ b/src/modules/packagechooserq/unfree.conf
@@ -0,0 +1,11 @@
+# SPDX-FileCopyrightText: no
+# SPDX-License-Identifier: CC0-1.0
+#
+---
+qmlLabel:
+ label: "Unfree Software"
+method: legacy
+mode: required
+labels:
+ step: "Unfree Software"
+packageChoice: free

View File

@ -0,0 +1,84 @@
diff --git a/src/modules/finished/FinishedPage.cpp b/src/modules/finished/FinishedPage.cpp
index 51be526..4345575 100644
--- a/src/modules/finished/FinishedPage.cpp
+++ b/src/modules/finished/FinishedPage.cpp
@@ -74,8 +74,7 @@ FinishedPage::retranslate()
{
ui->mainText->setText( tr( "<h1>All done.</h1><br/>"
"%1 has been set up on your computer.<br/>"
- "You may now start using your new system.",
- "@info" )
+ "You can now start using your new system.<br/>", "@info" )
.arg( branding->versionedName() ) );
ui->restartCheckBox->setToolTip( tr( "<html><head/><body>"
"<p>When this box is checked, your system will "
@@ -88,9 +87,8 @@ FinishedPage::retranslate()
{
ui->mainText->setText( tr( "<h1>All done.</h1><br/>"
"%1 has been installed on your computer.<br/>"
- "You may now restart into your new system, or continue "
- "using the %2 Live environment.",
- "@info" )
+ "After you click \"Done\" your computer will restart into your new system and "
+ "you can start using it.<br/>", "@info" )
.arg( branding->versionedName(), branding->productName() ) );
ui->restartCheckBox->setToolTip( tr( "<html><head/><body>"
"<p>When this box is checked, your system will "
diff --git a/src/modules/packagechooser/PackageChooserPage.cpp b/src/modules/packagechooser/PackageChooserPage.cpp
index 44a570d..4dc931b 100644
--- a/src/modules/packagechooser/PackageChooserPage.cpp
+++ b/src/modules/packagechooser/PackageChooserPage.cpp
@@ -52,6 +52,7 @@ PackageChooserPage::currentChanged( const QModelIndex& index )
if ( !index.isValid() || !ui->products->selectionModel()->hasSelection() )
{
ui->productName->setText( m_introduction.name.get() );
+ ui->productName->setStyleSheet("font-weight: bold");
ui->productScreenshot->setPixmap( m_introduction.screenshot );
ui->productDescription->setText( m_introduction.description.get() );
}
diff --git a/src/modules/packagechooser/page_package.ui b/src/modules/packagechooser/page_package.ui
index 2ab5b7f..bed4620 100644
--- a/src/modules/packagechooser/page_package.ui
+++ b/src/modules/packagechooser/page_package.ui
@@ -37,20 +37,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
</widget>
</item>
<item>
- <layout class="QVBoxLayout" name="verticalLayout" stretch="1,30,1">
- <item>
- <widget class="QLabel" name="productName">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Product Name</string>
- </property>
- </widget>
- </item>
+ <layout class="QVBoxLayout" name="verticalLayout" stretch="30,1,1">
<item>
<widget class="FixedAspectRatioLabel" name="productScreenshot">
<property name="sizePolicy">
@@ -67,6 +54,19 @@ SPDX-License-Identifier: GPL-3.0-or-later
</property>
</widget>
</item>
+ <item>
+ <widget class="QLabel" name="productName">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Product Name</string>
+ </property>
+ </widget>
+ </item>
<item>
<widget class="QLabel" name="productDescription">
<property name="sizePolicy">

View File

@ -0,0 +1,38 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 16:02:40 -0400
Subject: [PATCH] Remove options for unsupported partition types
---
src/modules/partition/gui/CreatePartitionDialog.cpp | 3 ++-
src/modules/partition/gui/EditExistingPartitionDialog.cpp | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/modules/partition/gui/CreatePartitionDialog.cpp b/src/modules/partition/gui/CreatePartitionDialog.cpp
index d18676138..60bb8fdaf 100644
--- a/src/modules/partition/gui/CreatePartitionDialog.cpp
+++ b/src/modules/partition/gui/CreatePartitionDialog.cpp
@@ -108,7 +108,8 @@ CreatePartitionDialog::CreatePartitionDialog( Device* device,
{
// We need to ensure zfs is added to the list if the zfs module is enabled
if ( ( fs->type() == FileSystem::Type::Zfs && Calamares::Settings::instance()->isModuleEnabled( "zfs" ) )
- || ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended ) )
+ || ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended
+ && fs->type() != FileSystem::Luks && fs->type() != FileSystem::Luks2 && fs->type() != FileSystem::Minix ) )
{
fsNames << userVisibleFS( fs ); // This is put into the combobox
if ( fs->type() == defaultFSType )
diff --git a/src/modules/partition/gui/EditExistingPartitionDialog.cpp b/src/modules/partition/gui/EditExistingPartitionDialog.cpp
index 7a3f4951a..4c3bfc4b0 100644
--- a/src/modules/partition/gui/EditExistingPartitionDialog.cpp
+++ b/src/modules/partition/gui/EditExistingPartitionDialog.cpp
@@ -113,7 +113,8 @@ EditExistingPartitionDialog::EditExistingPartitionDialog( Device* device,
{
// We need to ensure zfs is added to the list if the zfs module is enabled
if ( ( fs->type() == FileSystem::Type::Zfs && Calamares::Settings::instance()->isModuleEnabled( "zfs" ) )
- || ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended ) )
+ || ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended
+ && fs->type() != FileSystem::Luks && fs->type() != FileSystem::Luks2 && fs->type() != FileSystem::Minix) )
{
fsNames << userVisibleFS( fs ); // For the combo box
}

View File

@ -0,0 +1,36 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 16:03:14 -0400
Subject: [PATCH] Fix setting the kayboard layout on GNOME wayland.
By default the module uses the setxkbmap, which will not change the
keyboard
---
src/modules/keyboard/Config.cpp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/modules/keyboard/Config.cpp b/src/modules/keyboard/Config.cpp
index ad6bee6f7..4d43abe53 100644
--- a/src/modules/keyboard/Config.cpp
+++ b/src/modules/keyboard/Config.cpp
@@ -307,7 +307,10 @@ Config::xkbApply()
xkbmap_layout_args( { m_additionalLayoutInfo.additionalLayout, m_selectedLayout },
{ m_additionalLayoutInfo.additionalVariant, m_selectedVariant },
m_additionalLayoutInfo.groupSwitcher ) );
-
+ QString xkbmap = QString( "[('xkb','%1\%2'),('xkb','%3\%4')]").arg(
+ m_selectedLayout, ((!m_selectedVariant.isEmpty()) ? "+" + m_selectedVariant : ""),
+ m_additionalLayoutInfo.additionalLayout, ((!m_additionalLayoutInfo.additionalVariant.isEmpty()) ? "+" + m_additionalLayoutInfo.additionalVariant : ""));
+ QProcess::execute( "sh", { "-c", "if command -v gsettings; then gsettings set org.gnome.desktop.input-sources sources \"$0\"; fi", xkbmap });
cDebug() << "xkbmap selection changed to: " << m_selectedLayout << '-' << m_selectedVariant << "(added "
<< m_additionalLayoutInfo.additionalLayout << "-" << m_additionalLayoutInfo.additionalVariant
<< " since current layout is not ASCII-capable)";
@@ -315,6 +318,8 @@ Config::xkbApply()
else
{
QProcess::execute( "setxkbmap", xkbmap_layout_args( m_selectedLayout, m_selectedVariant ) );
+ QString xkbmap = QString( "[('xkb','%1\%2')]").arg( m_selectedLayout, ((!m_selectedVariant.isEmpty()) ? "+" + m_selectedVariant : "") );
+ QProcess::execute( "sh", { "-c", "if command -v gsettings; then gsettings set org.gnome.desktop.input-sources sources \"$0\"; fi", xkbmap });
cDebug() << "xkbmap selection changed to: " << m_selectedLayout << '-' << m_selectedVariant;
}
m_setxkbmapTimer.disconnect( this );

View File

@ -0,0 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Fuentes <vmfuentes64@gmail.com>
Date: Thu, 1 Aug 2024 16:03:53 -0400
Subject: [PATCH] Change default location where calamares searches for locales
---
src/modules/locale/Config.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/modules/locale/Config.cpp b/src/modules/locale/Config.cpp
index 8fa17a768..79b5419b6 100644
--- a/src/modules/locale/Config.cpp
+++ b/src/modules/locale/Config.cpp
@@ -48,7 +48,7 @@ loadLocales( const QString& localeGenPath )
// supported locales. We first try that one, and if it doesn't exist, we fall back
// to parsing the lines from locale.gen
localeGenLines.clear();
- QFile supported( "/usr/share/i18n/SUPPORTED" );
+ QFile supported( "/run/current-system/sw/share/i18n/SUPPORTED" );
QByteArray ba;
if ( supported.exists() && supported.open( QIODevice::ReadOnly | QIODevice::Text ) )