Skip to content

Commit

Permalink
calamares: Update to 3.3.5
Browse files Browse the repository at this point in the history
**Summary**
- Full upstream changelog can be found [here](https://github.com/calamares/calamares/blob/v3.3.5/CHANGES-3.3).
- Built with Qt6
- Set recommended EFI partition size to 1GiB and minimum size to 500MiB
- Set window to expand as needed to fit content

Fixes #1350
Fixes #1239

Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
  • Loading branch information
EbonJaeger committed Mar 15, 2024
1 parent cf20e62 commit f98edcf
Show file tree
Hide file tree
Showing 15 changed files with 3,124 additions and 3,262 deletions.
6 changes: 2 additions & 4 deletions packages/c/calamares/abi_libs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
calamares
libcalamares.so.3.2.62
libcalamares.so.3.3
libcalamares_job_contextualprocess.so
libcalamares_job_dracutlukscfg.so
libcalamares_job_dummycpp.so
Expand Down Expand Up @@ -29,13 +29,11 @@ libcalamares_viewmodule_oemid.so
libcalamares_viewmodule_packagechooser.so
libcalamares_viewmodule_packagechooserq.so
libcalamares_viewmodule_partition.so
libcalamares_viewmodule_plasmalnf.so
libcalamares_viewmodule_summary.so
libcalamares_viewmodule_summaryq.so
libcalamares_viewmodule_tracking.so
libcalamares_viewmodule_users.so
libcalamares_viewmodule_usersq.so
libcalamares_viewmodule_webview.so
libcalamares_viewmodule_welcome.so
libcalamares_viewmodule_welcomeq.so
libcalamaresui.so.3.2.62
libcalamaresui.so.3.3
2,417 changes: 1,079 additions & 1,338 deletions packages/c/calamares/abi_symbols

Large diffs are not rendered by default.

32 changes: 15 additions & 17 deletions packages/c/calamares/abi_used_libs
Original file line number Diff line number Diff line change
@@ -1,21 +1,18 @@
UNKNOWN
libKF5ConfigCore.so.5
libKF5CoreAddons.so.5
libKF5Crash.so.5
libKF5Package.so.5
libKF5Parts.so.5
libQt5Core.so.5
libQt5DBus.so.5
libQt5Gui.so.5
libQt5Network.so.5
libQt5Qml.so.5
libQt5Quick.so.5
libQt5QuickWidgets.so.5
libQt5Svg.so.5
libQt5WebEngine.so.5
libQt5WebEngineWidgets.so.5
libQt5Widgets.so.5
libQt5Xml.so.5
ld-linux-x86-64.so.2
libKF6CoreAddons.so.6
libKF6Crash.so.6
libKF6Parts.so.6
libQt6Core.so.6
libQt6DBus.so.6
libQt6Gui.so.6
libQt6Network.so.6
libQt6Qml.so.6
libQt6Quick.so.6
libQt6QuickWidgets.so.6
libQt6Svg.so.6
libQt6Widgets.so.6
libQt6Xml.so.6
libc.so.6
libcrypt.so.2
libgcc_s.so.1
Expand All @@ -25,5 +22,6 @@ libkpmcore.so.12
libm.so.6
libparted.so.2
libpwquality.so.1
libpython3.11.so.1.0
libstdc++.so.6
libyaml-cpp.so.0.7
3,479 changes: 1,859 additions & 1,620 deletions packages/c/calamares/abi_used_symbols

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions packages/c/calamares/files/install/branding/solus/branding.desc
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ welcomeExpandingLogo: true
# - "normal" or unset, expand as needed, use *windowSize*
# - "fullscreen", start as large as possible, ignore *windowSize*
# - "noexpand", don't expand automatically, use *windowSize*
windowExpanding: noexpand
windowExpanding: normal

# Size of Calamares window, expressed as w,h. Both w and h
# may be either pixels (suffix px) or font-units (suffix em).
Expand Down Expand Up @@ -170,10 +170,10 @@ images:
# branding component also ships a stylesheet.qss. Then they are
# the corresponding CSS attributes of #sidebarApp.
style:
sidebarBackground: "#2F343F"
sidebarText: "#FFFFFF"
sidebarTextSelect: "#FFFFFF"
sidebarTextHighlight: "#5294E2"
SidebarBackground: "#2F343F"
SidebarText: "#FFFFFF"
SidebarTextCurrent: "#FFFFFF"
SidebarBackgroundCurrent: "#5294E2"

### SLIDESHOW
#
Expand Down
31 changes: 19 additions & 12 deletions packages/c/calamares/files/install/modules/bootloader.conf
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,26 @@
# Possible options are 'grub', 'sb-shim' and 'systemd-boot'.
efiBootLoader: "clr-boot-manager"

# systemd-boot configuration files settings, set kernel and initramfs file names
# and amount of time before default selection boots
kernel: "/vmlinuz-linux"
img: "/initramfs-linux.img"
fallback: "/initramfs-linux-fallback.img"
timeout: "10"
# systemd-boot configuration files settings

# Optionally set the menu entry name and kernel name to use in systemd-boot.
# If not specified here, these settings will be taken from branding.desc.
#
# bootloaderEntryName: "Generic GNU/Linux"
# kernelLine: ", with Stable-Kernel"
# fallbackKernelLine: ", with Stable-Kernel (fallback initramfs)"
# kernelSearchPath is the path relative to the root of the install to search for kernels
# A kernel is identified by finding files which match regular expression, kernelPattern
kernelSearchPath: "/usr/lib/modules"
kernelPattern: "^vmlinuz.*"

# loaderEntries is an array of options to add to loader.conf for systemd-boot
# please note that the "default" option is added programmatically
loaderEntries:
- "img /initramfs-linux.img"
- "fallback /initramfs-linux-fallback.img"
- "timeout 10"
- "console-mode keep"

# systemd-boot and refind support custom kernel params
kernelParams: [ "quiet" ]

# A list of kernel names that refind should accept as kernels
#refindKernelList: [ "linux","linux-lts","linux-zen","linux-hardened" ]

# GRUB 2 binary names and boot directory
# Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names.
Expand Down
5 changes: 2 additions & 3 deletions packages/c/calamares/files/install/modules/mount.conf
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,8 @@ extraMounts:
mountPoint: /sys
- device: /dev
mountPoint: /dev
options: bind

extraMountsEfi:
options: [ bind ]
- device: efivarfs
fs: efivarfs
mountPoint: /sys/firmware/efi/efivars
efi: true
9 changes: 6 additions & 3 deletions packages/c/calamares/files/install/modules/partition.conf
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
# Reference: https://github.com/calamares/calamares/blob/3.2.x-stable/src/modules/partition/partition.conf

---
efi:
mountPoint: "/boot"
recommendedSize: 1GiB
minimumSize: 500MiB
label: "EFI"

# When a user chooses "Erase"
defaultPartitionTableType: "gpt"

bootPartitionName: "boot"
efiSystemPartition: "/boot"
efiSystemPartitionName: "EFI"
efiSystemPartitionSize: 1024M

userSwapChoices:
- none # Create no swap, use no swap
Expand Down
5 changes: 4 additions & 1 deletion packages/c/calamares/files/install/modules/users.conf
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,15 @@ allowWeakPasswords: false

allowWeakPasswordsDefault: false

userShell: /usr/bin/bash
user:
shell: /usr/bin/bash
forbidden_names: [ root ]

hostname:
template: "${first}-solus"
location: EtcFile
writeHostsFile: true
forbidden_names: [ localhost ]

presets:
fullName:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,46 +1,40 @@
From bda04865b5d80b0edda8449e8fb0fa375cc1ee9b Mon Sep 17 00:00:00 2001
From: Reilly Brogan <reilly@reillybrogan.com>
Date: Wed, 13 Dec 2023 19:27:51 -0600
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Evan Maddock <maddock.evan@vivaldi.net>
Date: Thu, 14 Mar 2024 13:08:44 -0400
Subject: [PATCH] Solus: Create boot partition for BIOS installs

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
---
src/modules/partition/Config.cpp | 5 +++++
src/modules/partition/core/KPMHelpers.h | 1 +
.../partition/core/PartitionActions.cpp | 20 +++++++++++++++----
src/modules/partition/partition.schema.yaml | 1 +
4 files changed, 23 insertions(+), 4 deletions(-)
src/modules/partition/Config.cpp | 7 +++++++
src/modules/partition/core/PartitionActions.cpp | 17 ++++++++++++++---
src/modules/partition/partition.schema.yaml | 1 +
3 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/src/modules/partition/Config.cpp b/src/modules/partition/Config.cpp
index 367c4ee38..ab2e19bc7 100644
index 2010fecdd..d2d8d2188 100644
--- a/src/modules/partition/Config.cpp
+++ b/src/modules/partition/Config.cpp
@@ -270,6 +270,11 @@ fillGSConfigurationEFI( Calamares::GlobalStorage* gs, const QVariantMap& configu
@@ -337,11 +337,18 @@ fillGSConfigurationEFI( Calamares::GlobalStorage* gs, const QVariantMap& configu
{
gs->insert( "efiSystemPartitionName", CalamaresUtils::getString( configurationMap, "efiSystemPartitionName" ) );
const auto efiLabel = Calamares::getString(
efiConfiguration, "label", Calamares::getString( configurationMap, "efiSystemPartitionName" ) );
+ const auto bootLabel = Calamares::getString( configurationMap, "bootPartitionName" );

if ( !efiLabel.isEmpty() )
{
gs->insert( "efiSystemPartitionName", efiLabel );
}
+
+ // Read and parse key bootPartitionName
+ if ( !bootLabel.isEmpty() )
+ {
+ gs->insert( "bootPartitionName", bootLabel );
+ }
}
+ // Read and parse key bootPartitionName
+ if ( configurationMap.contains( "bootPartitionName" ) )
+ {
+ gs->insert( "bootPartitionName", CalamaresUtils::getString( configurationMap, "bootPartitionName" ) );
+ }
}

void
diff --git a/src/modules/partition/core/KPMHelpers.h b/src/modules/partition/core/KPMHelpers.h
index e059c934a..5f039555a 100644
--- a/src/modules/partition/core/KPMHelpers.h
+++ b/src/modules/partition/core/KPMHelpers.h
@@ -31,6 +31,7 @@ class PartitionRole;
#define KPM_PARTITION_FLAG( x ) PartitionTable::Flag::x
#define KPM_PARTITION_STATE( x ) Partition::State::x
#define KPM_PARTITION_FLAG_ESP PartitionTable::Flag::Boot
+#define KPM_PARTITION_FLAG_BOOT PartitionTable::Flag::Boot
#else
#define KPM_PARTITION_FLAG( x ) PartitionTable::Flag##x
#define KPM_PARTITION_STATE( x ) Partition::State##x
diff --git a/src/modules/partition/core/PartitionActions.cpp b/src/modules/partition/core/PartitionActions.cpp
index 0ce9ff4ed..05c4966f7 100644
index b5fb0cafb..7581ec6b6 100644
--- a/src/modules/partition/core/PartitionActions.cpp
+++ b/src/modules/partition/core/PartitionActions.cpp
@@ -116,7 +116,8 @@ doAutopartition( PartitionCoreModule* core, Device* dev, Choices::AutoPartitionO
Expand All @@ -51,9 +45,9 @@ index 0ce9ff4ed..05c4966f7 100644
+ // On Solus we always want to create a /boot partition
+ if ( true )
{
size_t uefisys_part_sizeB = PartUtils::efiFilesystemMinimumSize();
qint64 efiSectorCount = CalamaresUtils::bytesToSectors( uefisys_part_sizeB, dev->logicalSize() );
@@ -136,11 +137,22 @@ doAutopartition( PartitionCoreModule* core, Device* dev, Choices::AutoPartitionO
qint64 uefisys_part_sizeB = PartUtils::efiFilesystemRecommendedSize();
qint64 efiSectorCount = Calamares::bytesToSectors( uefisys_part_sizeB, dev->logicalSize() );
@@ -136,9 +137,19 @@ doAutopartition( PartitionCoreModule* core, Device* dev, Choices::AutoPartitionO
KPM_PARTITION_FLAG( None ) );
PartitionInfo::setFormat( efiPartition, true );
PartitionInfo::setMountPoint( efiPartition, o.efiPartitionMountPoint );
Expand All @@ -65,32 +59,25 @@ index 0ce9ff4ed..05c4966f7 100644
+ {
+ efiPartition->setLabel( gs->value( "efiSystemPartitionName" ).toString() );
+ }
+ core->createPartition( dev, efiPartition, KPM_PARTITION_FLAG_ESP );
+ }
+ else
+ {
+ if ( gs->contains( "bootPartitionName" ) )
+ {
+ efiPartition->setLabel( gs->value( "bootPartitionName" ).toString() );
+ }
+ core->createPartition( dev, efiPartition, KPM_PARTITION_FLAG_BOOT );
}
- core->createPartition( dev, efiPartition, KPM_PARTITION_FLAG_ESP );
core->createPartition( dev, efiPartition, KPM_PARTITION_FLAG_ESP );
firstFreeSector = lastSector + 1;
}

diff --git a/src/modules/partition/partition.schema.yaml b/src/modules/partition/partition.schema.yaml
index 6c65e8ae7..6d5b7d1b3 100644
index 769c1abae..ccd316535 100644
--- a/src/modules/partition/partition.schema.yaml
+++ b/src/modules/partition/partition.schema.yaml
@@ -9,6 +9,7 @@ properties:
efiSystemPartition: { type: string } # Mount point
efiSystemPartitionSize: { type: string }
efiSystemPartitionName: { type: string }
@@ -10,6 +10,7 @@ properties:
efiSystemPartition: { type: string } # Deprecated alias of efi.mountPoint
efiSystemPartitionSize: { type: string } # Deprecated alias of efi.recommendedSize
efiSystemPartitionName: { type: string } # Deprecated alias of efi.label
+ bootPartitionName: { type: string }

userSwapChoices: { type: array, items: { type: string, enum: [ none, reuse, small, suspend, file ] } }
# ensureSuspendToDisk: { type: boolean, default: true } # Legacy
--
2.43.0

efi:
type: object

This file was deleted.

0 comments on commit f98edcf

Please sign in to comment.