diff --git a/.gitignore b/.gitignore index 7afd1a1..b17bc1c 100644 --- a/.gitignore +++ b/.gitignore @@ -40,3 +40,4 @@ /calamares-3.2.35.1.tar.gz /calamares-3.2.37.tar.gz /calamares-3.2.38.tar.gz +/calamares-3.2.39.tar.gz diff --git a/calamares-3.2.35.1-kdesu.patch b/calamares-3.2.35.1-kdesu.patch deleted file mode 100644 index 76adf43..0000000 --- a/calamares-3.2.35.1-kdesu.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -rup calamares-3.2.35.1-default-settings/calamares.desktop calamares-3.2.35.1-kdesu/calamares.desktop ---- calamares-3.2.35.1-default-settings/calamares.desktop 2020-12-07 11:09:14.000000000 -0500 -+++ calamares-3.2.35.1-kdesu/calamares.desktop 2021-01-12 19:45:00.031816669 -0500 -@@ -5,7 +5,7 @@ Name=Install System - GenericName=System Installer - Keywords=calamares;system;installer; - TryExec=calamares --Exec=pkexec /usr/bin/calamares -+Exec=kdesu /usr/bin/calamares - Comment=Calamares — System Installer - Icon=calamares - Terminal=false -diff -rup calamares-3.2.35.1-default-settings/calamares.desktop.in calamares-3.2.35.1-kdesu/calamares.desktop.in ---- calamares-3.2.35.1-default-settings/calamares.desktop.in 2020-12-07 11:09:14.000000000 -0500 -+++ calamares-3.2.35.1-kdesu/calamares.desktop.in 2021-01-12 19:45:00.032816674 -0500 -@@ -5,7 +5,7 @@ Name=Install System - GenericName=System Installer - Keywords=calamares;system;installer; - TryExec=calamares --Exec=pkexec /usr/bin/calamares -+Exec=kdesu /usr/bin/calamares - Comment=Calamares — System Installer - Icon=calamares - Terminal=false -Only in calamares-3.2.35.1-kdesu/: calamares.desktop.in.orig -Only in calamares-3.2.35.1-kdesu/: calamares.desktop.orig -diff -rup calamares-3.2.35.1-default-settings/CMakeLists.txt calamares-3.2.35.1-kdesu/CMakeLists.txt ---- calamares-3.2.35.1-default-settings/CMakeLists.txt 2021-01-12 19:32:27.586834996 -0500 -+++ calamares-3.2.35.1-kdesu/CMakeLists.txt 2021-01-12 19:46:53.821418801 -0500 -@@ -50,7 +50,6 @@ set( CALAMARES_VERSION_RC 0 ) # Set to - ### OPTIONS - # - option( INSTALL_CONFIG "Install configuration files" ON ) --option( INSTALL_POLKIT "Install Polkit configuration" ON ) - option( INSTALL_COMPLETION "Install shell completions" OFF ) - # Options for the calamares executable - option( WITH_KF5Crash "Enable crash reporting with KCrash." ON ) # TODO:3.3: WITH->BUILD (this isn't an ABI thing) -@@ -277,18 +276,6 @@ endif() - find_package( Qt5DBus CONFIG ) - - find_package( YAMLCPP ${YAMLCPP_VERSION} REQUIRED ) --if( INSTALL_POLKIT ) -- find_package( PolkitQt5-1 REQUIRED ) --else() -- # Find it anyway, for dependencies-reporting -- find_package( PolkitQt5-1 ) --endif() --set_package_properties( -- PolkitQt5-1 PROPERTIES -- DESCRIPTION "Qt5 support for Polkit" -- URL "https://cgit.kde.org/polkit-qt-1.git" -- PURPOSE "PolkitQt5-1 helps with installing Polkit configuration" --) - - # Find ECM once, and add it to the module search path; Calamares - # modules that need ECM can do -@@ -626,13 +613,6 @@ if( INSTALL_CONFIG ) - ) - endif() - --if( INSTALL_POLKIT ) -- install( -- FILES com.github.calamares.calamares.policy -- DESTINATION "${POLKITQT-1_POLICY_FILES_INSTALL_DIR}" -- ) --endif() -- - if ( INSTALL_COMPLETION ) - if( NOT CMAKE_INSTALL_BASHCOMPLETIONDIR ) - set( CMAKE_INSTALL_BASHCOMPLETIONDIR "${CMAKE_INSTALL_DATADIR}/bash-completion/completions" ) diff --git a/calamares-3.2.38-default-settings.patch b/calamares-3.2.38-default-settings.patch deleted file mode 100644 index a1034df..0000000 --- a/calamares-3.2.38-default-settings.patch +++ /dev/null @@ -1,453 +0,0 @@ -diff -rup calamares-3.2.38/CMakeLists.txt calamares-3.2.38-default-settings/CMakeLists.txt ---- calamares-3.2.38/CMakeLists.txt 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/CMakeLists.txt 2021-03-14 19:14:48.844677294 -0400 -@@ -49,7 +49,7 @@ set( CALAMARES_VERSION_RC 0 ) # Set to - - ### OPTIONS - # --option( INSTALL_CONFIG "Install configuration files" OFF ) -+option( INSTALL_CONFIG "Install configuration files" ON ) - option( INSTALL_POLKIT "Install Polkit configuration" ON ) - option( INSTALL_COMPLETION "Install shell completions" OFF ) - # Options for the calamares executable -diff -rup calamares-3.2.38/settings.conf calamares-3.2.38-default-settings/settings.conf ---- calamares-3.2.38/settings.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/settings.conf 2021-03-14 19:14:48.845677298 -0400 -@@ -134,21 +134,22 @@ sequence: - - locale - - keyboard - - localecfg --# - luksbootkeyfile -+ - luksbootkeyfile - # - luksopenswaphookcfg --# - dracutlukscfg -+ - dracutlukscfg - # - plymouthcfg -- - initcpiocfg -- - initcpio -+# - initcpiocfg -+# - initcpio - - users - - displaymanager - - networkcfg - - hwclock - - services-systemd --# - dracut -- - initramfs --# - grubcfg -+ - dracut -+# - initramfs -+ - grubcfg - - bootloader -+ - packages - - umount - - show: - # - webview@owncloud -@@ -166,7 +167,7 @@ sequence: - # here, Calamares then takes care of finding it and loading the contents. - # - # YAML: string. --branding: default -+branding: auto - - # If this is set to true, Calamares will show an "Are you sure?" prompt right - # before each execution phase, i.e. at points of no return. If this is set to -diff -rup calamares-3.2.38/src/branding/default/branding.desc calamares-3.2.38-default-settings/src/branding/default/branding.desc ---- calamares-3.2.38/src/branding/default/branding.desc 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/branding/default/branding.desc 2021-03-14 19:14:48.847677307 -0400 -@@ -122,12 +122,12 @@ navigation: widget - # are set to "true" (they can also be overridden). - strings: - productName: "@{NAME}" -- shortProductName: Generic -- version: 2020.2 LTS -- shortVersion: 2020.2 -- versionedName: Fancy GNU/Linux 2020.2 LTS "Turgid Tuba" -- shortVersionedName: FancyGL 2020.2 -- bootloaderEntryName: FancyGL -+ shortProductName: "@{NAME}" -+ version: "@{VERSION}" -+ shortVersion: "@{VERSION_ID}" -+ versionedName: "@{NAME} @{VERSION}" -+ shortVersionedName: "@{NAME} @{VERSION_ID}" -+ bootloaderEntryName: "@{NAME}" - productUrl: https://calamares.io/ - supportUrl: https://github.com/calamares/calamares/wiki - knownIssuesUrl: https://github.com/calamares/calamares/issues -diff -rup calamares-3.2.38/src/modules/bootloader/bootloader.conf calamares-3.2.38-default-settings/src/modules/bootloader/bootloader.conf ---- calamares-3.2.38/src/modules/bootloader/bootloader.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/bootloader/bootloader.conf 2021-03-14 19:14:48.848677312 -0400 -@@ -7,7 +7,7 @@ - --- - # Define which bootloader you want to use for EFI installations - # Possible options are 'grub', 'sb-shim' and 'systemd-boot'. --efiBootLoader: "grub" -+efiBootLoader: "sb-shim" - - # systemd-boot configuration files settings, set kernel and initramfs file names - # and amount of time before default selection boots -@@ -29,10 +29,10 @@ timeout: "10" - # GRUB functionality (notably grub-probe) to work. As needed, you may use - # complete paths like `/usr/bin/efibootmgr` for the executables. - # --grubInstall: "grub-install" --grubMkconfig: "grub-mkconfig" --grubCfg: "/boot/grub/grub.cfg" --grubProbe: "grub-probe" -+grubInstall: "grub2-install" -+grubMkconfig: "grub2-mkconfig" -+grubCfg: "/boot/grub2/grub.cfg" -+grubProbe: "grub2-probe" - efiBootMgr: "efibootmgr" - - # Optionally set the bootloader ID to use for EFI. This is passed to -@@ -46,7 +46,9 @@ efiBootMgr: "efibootmgr" - # setting the option here, keep in mind that the name is sanitized - # (problematic characters, see above, are replaced). - # --# efiBootloaderId: "dirname" -+# PACKAGER NOTE: If you really want to change this value, you will also have to -+# change the hardcoded directory name in the grub2(-efi) package. -+efiBootloaderId: "fedora" - - # Optionally install a copy of the GRUB EFI bootloader as the EFI - # fallback loader (either bootia32.efi or bootx64.efi depending on -diff -rup calamares-3.2.38/src/modules/keyboard/keyboard.conf calamares-3.2.38-default-settings/src/modules/keyboard/keyboard.conf ---- calamares-3.2.38/src/modules/keyboard/keyboard.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/keyboard/keyboard.conf 2021-03-14 19:14:48.849677316 -0400 -@@ -20,4 +20,4 @@ convertedKeymapPath: "/lib/kbd/keymaps/x - # Write keymap configuration to /etc/default/keyboard, usually - # found on Debian-related systems. - # Defaults to true if nothing is set. --#writeEtcDefaultKeyboard: true -+writeEtcDefaultKeyboard: false -diff -rup calamares-3.2.38/src/modules/license/license.conf calamares-3.2.38-default-settings/src/modules/license/license.conf ---- calamares-3.2.38/src/modules/license/license.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/license/license.conf 2021-03-14 19:14:48.850677321 -0400 -@@ -22,24 +22,12 @@ - # default, rather than requiring the user to first open it up. - # YAML: boolean, optional, default is false. - entries: --- id: nvidia -- name: Nvidia -- vendor: Nvidia Corporation -+- id: evil -+ name: Evil -+ vendor: Evil Corporation - type: driver -- url: http://developer.download.nvidia.com/cg/Cg_3.0/license.pdf -+ url: http://www.example.com/evil_666.0/license.pdf - required: false --- id: amd -- name: Catalyst -- vendor: "Advanced Micro Devices, Inc." -- type: gpudriver -- url: http://support.amd.com/en-us/download/eula -- required: false --- id: flashplugin -- name: Adobe Flash -- vendor: Adobe Systems Incorporated -- type: browserplugin -- url: http://www.adobe.com/products/eulas/pdfs/PlatformClients_PC_WWEULA_Combined_20100108_1657.pdf -- required: true - # This example uses a file: link. This example uses a relative link, which - # is relative to where you run Calamares. Assuming you run it from build/ - # as part of your testing, you'll get the LICENSE text for Calamares -diff -rup calamares-3.2.38/src/modules/locale/locale.conf calamares-3.2.38-default-settings/src/modules/locale/locale.conf ---- calamares-3.2.38/src/modules/locale/locale.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/locale/locale.conf 2021-03-14 19:14:48.851677325 -0400 -@@ -118,8 +118,8 @@ zone: "New_York" - # - geoip: - style: "json" -- url: "https://geoip.kde.org/v1/calamares" -- selector: "" # leave blank for the default -+ url: "https://geoip.fedoraproject.org/city" -+ selector: "time_zone" - - # For testing purposes, you could use *fixed* style, to see how Calamares - # behaves in a particular zone: -diff -rup calamares-3.2.38/src/modules/mount/mount.conf calamares-3.2.38-default-settings/src/modules/mount/mount.conf ---- calamares-3.2.38/src/modules/mount/mount.conf 2021-03-14 19:14:12.291513428 -0400 -+++ calamares-3.2.38-default-settings/src/modules/mount/mount.conf 2021-03-14 19:22:57.896876338 -0400 -@@ -47,10 +47,7 @@ extraMountsEfi: - - btrfsSubvolumes: - - mountPoint: / -- subvolume: /@ -+ subvolume: /@root -+ - mountPoint: /boot -+ subvolume: /@boot - - mountPoint: /home - subvolume: /@home -- - mountPoint: /var/cache -- subvolume: /@cache -- - mountPoint: /var/log -- subvolume: /@log -\ No newline at end of file -+ -diff -rup calamares-3.2.38/src/modules/netinstall/netinstall.conf calamares-3.2.38-default-settings/src/modules/netinstall/netinstall.conf ---- calamares-3.2.38/src/modules/netinstall/netinstall.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/netinstall/netinstall.conf 2021-03-14 19:14:48.853677334 -0400 -@@ -63,7 +63,9 @@ - # `local` means that the data is obtained from **this** config - # file, under the key *groups*. - # --groupsUrl: local -+# Packager note: If you want to enable the netinstall module, you will also have -+# to create such a file (see the example in the source code). -+groupsUrl: file:///etc/calamares/modules/netinstall.yaml - - # If the installation can proceed without netinstall (e.g. the Live CD - # can create a working installed system, but netinstall is preferred -diff -rup calamares-3.2.38/src/modules/packages/packages.conf calamares-3.2.38-default-settings/src/modules/packages/packages.conf ---- calamares-3.2.38/src/modules/packages/packages.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/packages/packages.conf 2021-03-14 19:14:48.854677338 -0400 -@@ -18,7 +18,7 @@ - # Not actually a package manager, but suitable for testing: - # - dummy - Dummy manager, only logs - # --backend: dummy -+backend: dnf - - # - # Often package installation needs an internet connection. -@@ -42,7 +42,7 @@ backend: dummy - # Therefore set also "update_system" to 'true'. - # - skip_if_no_internet: false --update_db: true -+update_db: false - update_system: false - - # -@@ -168,12 +168,5 @@ update_system: false - # of packages, this can lead to a considerable time savings. - # - operations: -- - install: -- - vi -- - vi-${LOCALE} -- - wget -- - binutils -- - remove: -- - vi -- - wget -- - binutils -+ - try_remove: -+ - calamares -diff -rup calamares-3.2.38/src/modules/partition/partition.conf calamares-3.2.38-default-settings/src/modules/partition/partition.conf ---- calamares-3.2.38/src/modules/partition/partition.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/partition/partition.conf 2021-03-14 19:17:27.964390619 -0400 -@@ -59,7 +59,7 @@ userSwapChoices: - # neverCreateSwap: false - - # Correctly draw nested (e.g. logical) partitions as such. --drawNestedPartitions: false -+drawNestedPartitions: true - - # Show/hide partition labels on manual partitioning page. - alwaysShowPartitionLabels: true -@@ -137,7 +137,7 @@ initialSwapChoice: none - # If nothing is specified, Calamares defaults to "ext4". - # - # Names are case-sensitive and defined by KPMCore. --defaultFileSystemType: "ext4" -+defaultFileSystemType: "btrfs" - - # Show/hide LUKS related functionality in automated partitioning modes. - # Disable this if you choose not to deploy early unlocking support in GRUB2 -diff -rup calamares-3.2.38/src/modules/plasmalnf/plasmalnf.conf calamares-3.2.38-default-settings/src/modules/plasmalnf/plasmalnf.conf ---- calamares-3.2.38/src/modules/plasmalnf/plasmalnf.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/plasmalnf/plasmalnf.conf 2021-03-14 19:14:48.856677347 -0400 -@@ -22,7 +22,7 @@ lnftool: "/usr/bin/lookandfeeltool" - # to the originating username; the lnftool will be run through - # "sudo -H -u " instead of directly. - # --# liveuser: "live" -+liveuser: "liveuser" - - # If *showAll* is true, then all installed themes are shown in the - # UI for selection, even if they are not listed in *themes* (below). -@@ -30,7 +30,7 @@ lnftool: "/usr/bin/lookandfeeltool" - # listed in *themes* -- which is useful to show screenshots for those - # you do have a screenshot for. If *themes* is empty or missing, - # the value of *showAll* is treated as `true`. --showAll: false -+showAll: true - - # You can limit the list of Plasma look-and-feel themes by listing ids - # here. If this key is not present, all of the installed themes are listed. -@@ -58,13 +58,13 @@ showAll: false - # The image screenshot is resized to 12x8 the current font size, with - # a minimum of 120x80 pixels. This allows the screenshot to scale up - # on HiDPI displays where the fonts are larger (in pixels). --themes: -- - org.kde.fuzzy-pig.desktop -- - theme: org.kde.breeze.desktop -- image: "breeze.png" -- - theme: org.kde.breezedark.desktop -- image: "breeze-dark.png" -- - org.kde.fluffy-bunny.desktop -+#themes: -+# - org.kde.fuzzy-pig.desktop -+# - theme: org.kde.breeze.desktop -+# image: "breeze.png" -+# - theme: org.kde.breezedark.desktop -+# image: "breeze-dark.png" -+# - org.kde.fluffy-bunny.desktop - - # You can pre-select one of the themes; it is not applied - # immediately, but its radio-button is switched on to indicate -diff -rup calamares-3.2.38/src/modules/tracking/tracking.conf calamares-3.2.38-default-settings/src/modules/tracking/tracking.conf ---- calamares-3.2.38/src/modules/tracking/tracking.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/tracking/tracking.conf 2021-03-14 19:14:48.857677352 -0400 -@@ -54,13 +54,13 @@ - # This is the global policy; it is displayed as a link on the page. - # If blank or commented out, no link is displayed on the tracking - # page. You **must** provide policy links per-area as well. --policy: "https://github.com/calamares/calamares/wiki/Use-Guide#installation-tracking" -+#policy: "https://github.com/calamares/calamares/wiki/Use-Guide#installation-tracking" - - # This is the default area to enable for tracking. If commented out, - # empty, or otherwise invalid, "none" is used, so no tracking by default. - # Setting an area here also checks the areas before it (install, machine, - # then user) by default -- subject to those areas being enabled at all. --# default: user -+default: none - - # The install area has one specific configuration key: - # url: this URL (remember to include the protocol, and prefer https) -diff -rup calamares-3.2.38/src/modules/umount/umount.conf calamares-3.2.38-default-settings/src/modules/umount/umount.conf ---- calamares-3.2.38/src/modules/umount/umount.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/umount/umount.conf 2021-03-14 19:14:48.858677356 -0400 -@@ -18,8 +18,8 @@ - --- - # example when using the normal Calamares log: - srcLog: "/root/.cache/calamares/session.log" --destLog: "/var/log/Calamares.log" -+destLog: "/var/log/calamares.log" - - # example when using a log created by `sudo calamares -d`: --#srcLog: "/home/live/installation.log" -+#srcLog: "/home/liveuser/installation.log" - #destLog: "/var/log/installation.log" -diff -rup calamares-3.2.38/src/modules/unpackfs/unpackfs.conf calamares-3.2.38-default-settings/src/modules/unpackfs/unpackfs.conf ---- calamares-3.2.38/src/modules/unpackfs/unpackfs.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/unpackfs/unpackfs.conf 2021-03-14 19:14:48.859677361 -0400 -@@ -88,13 +88,6 @@ - # for its destination name, as in the example below. - - unpack: -- - source: ../CHANGES -- sourcefs: file -- destination: "/tmp/changes.txt" -- weight: 1 # Single file -- - source: src/qml/calamares/slideshow -- sourcefs: file -- destination: "/tmp/slideshow/" -- exclude: [ "*.qmlc", "qmldir" ] -- weight: 5 # Lots of files -- # excludeFile: /etc/calamares/modules/unpackfs/exclude-list.txt -+ - source: "/dev/mapper/live-base" -+ sourcefs: "ext4" -+ destination: "" -diff -rup calamares-3.2.38/src/modules/users/users.conf calamares-3.2.38-default-settings/src/modules/users/users.conf ---- calamares-3.2.38/src/modules/users/users.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/users/users.conf 2021-03-14 19:14:48.860677365 -0400 -@@ -34,8 +34,7 @@ defaultGroups: - system: true - - lp - - video -- - network -- - storage -+ - dialout - - name: wheel - must_exist: false - system: true -@@ -51,7 +50,7 @@ autologinGroup: autologin - # - true to check or - # - false to uncheck - # These set the **initial** state of the checkbox. --doAutologin: true -+doAutologin: false - - # When *sudoersGroup* is set to a non-empty string, Calamares creates a - # sudoers file for the user. This file is located at: -@@ -62,7 +61,7 @@ doAutologin: true - # remove this setting (delete or comment out the line below). Otherwise, - # the setting will be duplicated in the `/etc/sudoers.d/10-installer` file, - # potentially confusing users. --sudoersGroup: wheel -+#sudoersGroup: wheel - - # Setting this to false, causes the root account to be disabled. - # When disabled, hides the "Use the same password for administrator" -@@ -115,9 +114,9 @@ passwordRequirements: - nonempty: true - minLength: -1 # Password at least this many characters - maxLength: -1 # Password at most this many characters -- libpwquality: -- - minlen=0 -- - minclass=0 -+# libpwquality: -+# - minlen=0 -+# - minclass=0 - - # You can control the visibility of the 'strong passwords' checkbox here. - # Possible values are: -@@ -143,7 +142,7 @@ allowWeakPasswordsDefault: false - # and rely on a correct configuration file in /etc/default/useradd - # - set, non-empty, use that path as shell. No validation is done - # that the shell actually exists or is executable. --userShell: /bin/bash -+userShell: "" - - # Hostname setting - # -diff -rup calamares-3.2.38/src/modules/welcome/welcome.conf calamares-3.2.38-default-settings/src/modules/welcome/welcome.conf ---- calamares-3.2.38/src/modules/welcome/welcome.conf 2021-03-14 16:49:15.000000000 -0400 -+++ calamares-3.2.38-default-settings/src/modules/welcome/welcome.conf 2021-03-14 19:14:48.861677370 -0400 -@@ -23,7 +23,7 @@ showSupportUrl: true - showKnownIssuesUrl: true - showReleaseNotesUrl: false - # TODO:3.3 Move to branding, keep only a bool here --showDonateUrl: https://kde.org/community/donations/ -+showDonateUrl: false - - # Requirements checking. These are general, generic, things - # that are checked. They may not match with the actual requirements -@@ -42,7 +42,7 @@ requirements: - # Use a privacy-respecting URL here, preferably in your distro's domain. - # - # The URL is only used if "internet" is in the *check* list below. -- internetCheckUrl: http://example.com -+ internetCheckUrl: https://fedoraproject.org/static/hotspot.txt - - # List conditions to check. Each listed condition will be - # probed in some way, and yields true or false according to -@@ -61,9 +61,9 @@ requirements: - # If any of these conditions are not met, the user cannot - # continue past the welcome page. - required: -- # - storage -+ - storage - - ram -- # - root -+ - root - - # GeoIP checking - # -@@ -87,9 +87,9 @@ requirements: - # data. Timezone, city, or other data will not be recognized. - # - geoip: -- style: "none" -- url: "https://geoip.kde.org/v1/ubiquity" # extended XML format -- selector: "CountryCode" # blank uses default, which is wrong -+ style: "json" -+ url: "https://geoip.fedoraproject.org/city" -+ selector: "country_code" - - # User interface - # diff --git a/calamares-3.2.39-default-settings.patch b/calamares-3.2.39-default-settings.patch new file mode 100644 index 0000000..3b6bcc3 --- /dev/null +++ b/calamares-3.2.39-default-settings.patch @@ -0,0 +1,453 @@ +diff -rup calamares-3.2.39/CMakeLists.txt calamares-3.2.39-default-settings/CMakeLists.txt +--- calamares-3.2.39/CMakeLists.txt 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/CMakeLists.txt 2021-03-19 16:01:05.087151965 -0400 +@@ -49,7 +49,7 @@ set( CALAMARES_VERSION_RC 0 ) # Set to + + ### OPTIONS + # +-option( INSTALL_CONFIG "Install configuration files" OFF ) ++option( INSTALL_CONFIG "Install configuration files" ON ) + option( INSTALL_POLKIT "Install Polkit configuration" ON ) + option( INSTALL_COMPLETION "Install shell completions" OFF ) + # Options for the calamares executable +diff -rup calamares-3.2.39/settings.conf calamares-3.2.39-default-settings/settings.conf +--- calamares-3.2.39/settings.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/settings.conf 2021-03-19 16:01:05.089151958 -0400 +@@ -134,21 +134,22 @@ sequence: + - locale + - keyboard + - localecfg +-# - luksbootkeyfile ++ - luksbootkeyfile + # - luksopenswaphookcfg +-# - dracutlukscfg ++ - dracutlukscfg + # - plymouthcfg +- - initcpiocfg +- - initcpio ++# - initcpiocfg ++# - initcpio + - users + - displaymanager + - networkcfg + - hwclock + - services-systemd +-# - dracut +- - initramfs +-# - grubcfg ++ - dracut ++# - initramfs ++ - grubcfg + - bootloader ++ - packages + - umount + - show: + # - webview@owncloud +@@ -166,7 +167,7 @@ sequence: + # here, Calamares then takes care of finding it and loading the contents. + # + # YAML: string. +-branding: default ++branding: auto + + # If this is set to true, Calamares will show an "Are you sure?" prompt right + # before each execution phase, i.e. at points of no return. If this is set to +diff -rup calamares-3.2.39/src/branding/default/branding.desc calamares-3.2.39-default-settings/src/branding/default/branding.desc +--- calamares-3.2.39/src/branding/default/branding.desc 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/branding/default/branding.desc 2021-03-19 16:01:05.090151955 -0400 +@@ -122,12 +122,12 @@ navigation: widget + # are set to "true" (they can also be overridden). + strings: + productName: "@{NAME}" +- shortProductName: Generic +- version: 2020.2 LTS +- shortVersion: 2020.2 +- versionedName: Fancy GNU/Linux 2020.2 LTS "Turgid Tuba" +- shortVersionedName: FancyGL 2020.2 +- bootloaderEntryName: FancyGL ++ shortProductName: "@{NAME}" ++ version: "@{VERSION}" ++ shortVersion: "@{VERSION_ID}" ++ versionedName: "@{NAME} @{VERSION}" ++ shortVersionedName: "@{NAME} @{VERSION_ID}" ++ bootloaderEntryName: "@{NAME}" + productUrl: https://calamares.io/ + supportUrl: https://github.com/calamares/calamares/wiki + knownIssuesUrl: https://github.com/calamares/calamares/issues +diff -rup calamares-3.2.39/src/modules/bootloader/bootloader.conf calamares-3.2.39-default-settings/src/modules/bootloader/bootloader.conf +--- calamares-3.2.39/src/modules/bootloader/bootloader.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/bootloader/bootloader.conf 2021-03-19 16:01:05.091151951 -0400 +@@ -7,7 +7,7 @@ + --- + # Define which bootloader you want to use for EFI installations + # Possible options are 'grub', 'sb-shim' and 'systemd-boot'. +-efiBootLoader: "grub" ++efiBootLoader: "sb-shim" + + # systemd-boot configuration files settings, set kernel and initramfs file names + # and amount of time before default selection boots +@@ -29,10 +29,10 @@ timeout: "10" + # GRUB functionality (notably grub-probe) to work. As needed, you may use + # complete paths like `/usr/bin/efibootmgr` for the executables. + # +-grubInstall: "grub-install" +-grubMkconfig: "grub-mkconfig" +-grubCfg: "/boot/grub/grub.cfg" +-grubProbe: "grub-probe" ++grubInstall: "grub2-install" ++grubMkconfig: "grub2-mkconfig" ++grubCfg: "/boot/grub2/grub.cfg" ++grubProbe: "grub2-probe" + efiBootMgr: "efibootmgr" + + # Optionally set the bootloader ID to use for EFI. This is passed to +@@ -46,7 +46,9 @@ efiBootMgr: "efibootmgr" + # setting the option here, keep in mind that the name is sanitized + # (problematic characters, see above, are replaced). + # +-# efiBootloaderId: "dirname" ++# PACKAGER NOTE: If you really want to change this value, you will also have to ++# change the hardcoded directory name in the grub2(-efi) package. ++efiBootloaderId: "fedora" + + # Optionally install a copy of the GRUB EFI bootloader as the EFI + # fallback loader (either bootia32.efi or bootx64.efi depending on +diff -rup calamares-3.2.39/src/modules/keyboard/keyboard.conf calamares-3.2.39-default-settings/src/modules/keyboard/keyboard.conf +--- calamares-3.2.39/src/modules/keyboard/keyboard.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/keyboard/keyboard.conf 2021-03-19 16:01:05.092151948 -0400 +@@ -20,4 +20,4 @@ convertedKeymapPath: "/lib/kbd/keymaps/x + # Write keymap configuration to /etc/default/keyboard, usually + # found on Debian-related systems. + # Defaults to true if nothing is set. +-#writeEtcDefaultKeyboard: true ++writeEtcDefaultKeyboard: false +diff -rup calamares-3.2.39/src/modules/license/license.conf calamares-3.2.39-default-settings/src/modules/license/license.conf +--- calamares-3.2.39/src/modules/license/license.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/license/license.conf 2021-03-19 16:01:05.093151945 -0400 +@@ -22,24 +22,12 @@ + # default, rather than requiring the user to first open it up. + # YAML: boolean, optional, default is false. + entries: +-- id: nvidia +- name: Nvidia +- vendor: Nvidia Corporation ++- id: evil ++ name: Evil ++ vendor: Evil Corporation + type: driver +- url: http://developer.download.nvidia.com/cg/Cg_3.0/license.pdf ++ url: http://www.example.com/evil_666.0/license.pdf + required: false +-- id: amd +- name: Catalyst +- vendor: "Advanced Micro Devices, Inc." +- type: gpudriver +- url: http://support.amd.com/en-us/download/eula +- required: false +-- id: flashplugin +- name: Adobe Flash +- vendor: Adobe Systems Incorporated +- type: browserplugin +- url: http://www.adobe.com/products/eulas/pdfs/PlatformClients_PC_WWEULA_Combined_20100108_1657.pdf +- required: true + # This example uses a file: link. This example uses a relative link, which + # is relative to where you run Calamares. Assuming you run it from build/ + # as part of your testing, you'll get the LICENSE text for Calamares +diff -rup calamares-3.2.39/src/modules/locale/locale.conf calamares-3.2.39-default-settings/src/modules/locale/locale.conf +--- calamares-3.2.39/src/modules/locale/locale.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/locale/locale.conf 2021-03-19 16:01:05.094151941 -0400 +@@ -118,8 +118,8 @@ zone: "New_York" + # + geoip: + style: "json" +- url: "https://geoip.kde.org/v1/calamares" +- selector: "" # leave blank for the default ++ url: "https://geoip.fedoraproject.org/city" ++ selector: "time_zone" + + # For testing purposes, you could use *fixed* style, to see how Calamares + # behaves in a particular zone: +diff -rup calamares-3.2.39/src/modules/mount/mount.conf calamares-3.2.39-default-settings/src/modules/mount/mount.conf +--- calamares-3.2.39/src/modules/mount/mount.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/mount/mount.conf 2021-03-19 16:01:05.095151938 -0400 +@@ -47,10 +47,7 @@ extraMountsEfi: + + btrfsSubvolumes: + - mountPoint: / +- subvolume: /@ ++ subvolume: /@root ++ - mountPoint: /boot ++ subvolume: /@boot + - mountPoint: /home + subvolume: /@home +- - mountPoint: /var/cache +- subvolume: /@cache +- - mountPoint: /var/log +- subvolume: /@log +\ No newline at end of file ++ +diff -rup calamares-3.2.39/src/modules/netinstall/netinstall.conf calamares-3.2.39-default-settings/src/modules/netinstall/netinstall.conf +--- calamares-3.2.39/src/modules/netinstall/netinstall.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/netinstall/netinstall.conf 2021-03-19 16:01:05.097151931 -0400 +@@ -69,7 +69,9 @@ + # they are interpreted like the *groups* key below. The special case + # `local` loads the data directly from **this** file. + # +-groupsUrl: local ++# Packager note: If you want to enable the netinstall module, you will also have ++# to create such a file (see the example in the source code). ++groupsUrl: file:///etc/calamares/modules/netinstall.yaml + + # Alternate form: + # groupsUrl: [ local ] +diff -rup calamares-3.2.39/src/modules/packages/packages.conf calamares-3.2.39-default-settings/src/modules/packages/packages.conf +--- calamares-3.2.39/src/modules/packages/packages.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/packages/packages.conf 2021-03-19 16:01:05.098151928 -0400 +@@ -18,7 +18,7 @@ + # Not actually a package manager, but suitable for testing: + # - dummy - Dummy manager, only logs + # +-backend: dummy ++backend: dnf + + # + # Often package installation needs an internet connection. +@@ -42,7 +42,7 @@ backend: dummy + # Therefore set also "update_system" to 'true'. + # + skip_if_no_internet: false +-update_db: true ++update_db: false + update_system: false + + # +@@ -168,12 +168,5 @@ update_system: false + # of packages, this can lead to a considerable time savings. + # + operations: +- - install: +- - vi +- - vi-${LOCALE} +- - wget +- - binutils +- - remove: +- - vi +- - wget +- - binutils ++ - try_remove: ++ - calamares +diff -rup calamares-3.2.39/src/modules/partition/partition.conf calamares-3.2.39-default-settings/src/modules/partition/partition.conf +--- calamares-3.2.39/src/modules/partition/partition.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/partition/partition.conf 2021-03-19 16:01:05.099151925 -0400 +@@ -59,7 +59,7 @@ userSwapChoices: + # neverCreateSwap: false + + # Correctly draw nested (e.g. logical) partitions as such. +-drawNestedPartitions: false ++drawNestedPartitions: true + + # Show/hide partition labels on manual partitioning page. + alwaysShowPartitionLabels: true +@@ -137,7 +137,7 @@ initialSwapChoice: none + # If nothing is specified, Calamares defaults to "ext4". + # + # Names are case-sensitive and defined by KPMCore. +-defaultFileSystemType: "ext4" ++defaultFileSystemType: "btrfs" + + # Show/hide LUKS related functionality in automated partitioning modes. + # Disable this if you choose not to deploy early unlocking support in GRUB2 +diff -rup calamares-3.2.39/src/modules/plasmalnf/plasmalnf.conf calamares-3.2.39-default-settings/src/modules/plasmalnf/plasmalnf.conf +--- calamares-3.2.39/src/modules/plasmalnf/plasmalnf.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/plasmalnf/plasmalnf.conf 2021-03-19 16:01:05.100151921 -0400 +@@ -22,7 +22,7 @@ lnftool: "/usr/bin/lookandfeeltool" + # to the originating username; the lnftool will be run through + # "sudo -H -u " instead of directly. + # +-# liveuser: "live" ++liveuser: "liveuser" + + # If *showAll* is true, then all installed themes are shown in the + # UI for selection, even if they are not listed in *themes* (below). +@@ -30,7 +30,7 @@ lnftool: "/usr/bin/lookandfeeltool" + # listed in *themes* -- which is useful to show screenshots for those + # you do have a screenshot for. If *themes* is empty or missing, + # the value of *showAll* is treated as `true`. +-showAll: false ++showAll: true + + # You can limit the list of Plasma look-and-feel themes by listing ids + # here. If this key is not present, all of the installed themes are listed. +@@ -58,13 +58,13 @@ showAll: false + # The image screenshot is resized to 12x8 the current font size, with + # a minimum of 120x80 pixels. This allows the screenshot to scale up + # on HiDPI displays where the fonts are larger (in pixels). +-themes: +- - org.kde.fuzzy-pig.desktop +- - theme: org.kde.breeze.desktop +- image: "breeze.png" +- - theme: org.kde.breezedark.desktop +- image: "breeze-dark.png" +- - org.kde.fluffy-bunny.desktop ++#themes: ++# - org.kde.fuzzy-pig.desktop ++# - theme: org.kde.breeze.desktop ++# image: "breeze.png" ++# - theme: org.kde.breezedark.desktop ++# image: "breeze-dark.png" ++# - org.kde.fluffy-bunny.desktop + + # You can pre-select one of the themes; it is not applied + # immediately, but its radio-button is switched on to indicate +diff -rup calamares-3.2.39/src/modules/tracking/tracking.conf calamares-3.2.39-default-settings/src/modules/tracking/tracking.conf +--- calamares-3.2.39/src/modules/tracking/tracking.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/tracking/tracking.conf 2021-03-19 16:01:05.101151918 -0400 +@@ -54,13 +54,13 @@ + # This is the global policy; it is displayed as a link on the page. + # If blank or commented out, no link is displayed on the tracking + # page. You **must** provide policy links per-area as well. +-policy: "https://github.com/calamares/calamares/wiki/Use-Guide#installation-tracking" ++#policy: "https://github.com/calamares/calamares/wiki/Use-Guide#installation-tracking" + + # This is the default area to enable for tracking. If commented out, + # empty, or otherwise invalid, "none" is used, so no tracking by default. + # Setting an area here also checks the areas before it (install, machine, + # then user) by default -- subject to those areas being enabled at all. +-# default: user ++default: none + + # The install area has one specific configuration key: + # url: this URL (remember to include the protocol, and prefer https) +diff -rup calamares-3.2.39/src/modules/umount/umount.conf calamares-3.2.39-default-settings/src/modules/umount/umount.conf +--- calamares-3.2.39/src/modules/umount/umount.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/umount/umount.conf 2021-03-19 16:01:05.101151918 -0400 +@@ -18,8 +18,8 @@ + --- + # example when using the normal Calamares log: + srcLog: "/root/.cache/calamares/session.log" +-destLog: "/var/log/Calamares.log" ++destLog: "/var/log/calamares.log" + + # example when using a log created by `sudo calamares -d`: +-#srcLog: "/home/live/installation.log" ++#srcLog: "/home/liveuser/installation.log" + #destLog: "/var/log/installation.log" +diff -rup calamares-3.2.39/src/modules/unpackfs/unpackfs.conf calamares-3.2.39-default-settings/src/modules/unpackfs/unpackfs.conf +--- calamares-3.2.39/src/modules/unpackfs/unpackfs.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/unpackfs/unpackfs.conf 2021-03-19 16:01:05.102151915 -0400 +@@ -88,13 +88,6 @@ + # for its destination name, as in the example below. + + unpack: +- - source: ../CHANGES +- sourcefs: file +- destination: "/tmp/changes.txt" +- weight: 1 # Single file +- - source: src/qml/calamares/slideshow +- sourcefs: file +- destination: "/tmp/slideshow/" +- exclude: [ "*.qmlc", "qmldir" ] +- weight: 5 # Lots of files +- # excludeFile: /etc/calamares/modules/unpackfs/exclude-list.txt ++ - source: "/dev/mapper/live-base" ++ sourcefs: "ext4" ++ destination: "" +diff -rup calamares-3.2.39/src/modules/users/users.conf calamares-3.2.39-default-settings/src/modules/users/users.conf +--- calamares-3.2.39/src/modules/users/users.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/users/users.conf 2021-03-19 16:01:05.103151911 -0400 +@@ -34,8 +34,7 @@ defaultGroups: + system: true + - lp + - video +- - network +- - storage ++ - dialout + - name: wheel + must_exist: false + system: true +@@ -51,7 +50,7 @@ autologinGroup: autologin + # - true to check or + # - false to uncheck + # These set the **initial** state of the checkbox. +-doAutologin: true ++doAutologin: false + + # When *sudoersGroup* is set to a non-empty string, Calamares creates a + # sudoers file for the user. This file is located at: +@@ -62,7 +61,7 @@ doAutologin: true + # remove this setting (delete or comment out the line below). Otherwise, + # the setting will be duplicated in the `/etc/sudoers.d/10-installer` file, + # potentially confusing users. +-sudoersGroup: wheel ++#sudoersGroup: wheel + + # Setting this to false, causes the root account to be disabled. + # When disabled, hides the "Use the same password for administrator" +@@ -115,9 +114,9 @@ passwordRequirements: + nonempty: true + minLength: -1 # Password at least this many characters + maxLength: -1 # Password at most this many characters +- libpwquality: +- - minlen=0 +- - minclass=0 ++# libpwquality: ++# - minlen=0 ++# - minclass=0 + + # You can control the visibility of the 'strong passwords' checkbox here. + # Possible values are: +@@ -143,7 +142,7 @@ allowWeakPasswordsDefault: false + # and rely on a correct configuration file in /etc/default/useradd + # - set, non-empty, use that path as shell. No validation is done + # that the shell actually exists or is executable. +-userShell: /bin/bash ++userShell: "" + + # Hostname setting + # +diff -rup calamares-3.2.39/src/modules/welcome/welcome.conf calamares-3.2.39-default-settings/src/modules/welcome/welcome.conf +--- calamares-3.2.39/src/modules/welcome/welcome.conf 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-default-settings/src/modules/welcome/welcome.conf 2021-03-19 16:01:05.104151908 -0400 +@@ -23,7 +23,7 @@ showSupportUrl: true + showKnownIssuesUrl: true + showReleaseNotesUrl: false + # TODO:3.3 Move to branding, keep only a bool here +-showDonateUrl: https://kde.org/community/donations/ ++showDonateUrl: false + + # Requirements checking. These are general, generic, things + # that are checked. They may not match with the actual requirements +@@ -42,7 +42,7 @@ requirements: + # Use a privacy-respecting URL here, preferably in your distro's domain. + # + # The URL is only used if "internet" is in the *check* list below. +- internetCheckUrl: http://example.com ++ internetCheckUrl: https://fedoraproject.org/static/hotspot.txt + + # List conditions to check. Each listed condition will be + # probed in some way, and yields true or false according to +@@ -61,9 +61,9 @@ requirements: + # If any of these conditions are not met, the user cannot + # continue past the welcome page. + required: +- # - storage ++ - storage + - ram +- # - root ++ - root + + # GeoIP checking + # +@@ -87,9 +87,9 @@ requirements: + # data. Timezone, city, or other data will not be recognized. + # + geoip: +- style: "none" +- url: "https://geoip.kde.org/v1/ubiquity" # extended XML format +- selector: "CountryCode" # blank uses default, which is wrong ++ style: "json" ++ url: "https://geoip.fedoraproject.org/city" ++ selector: "country_code" + + # User interface + # diff --git a/calamares-3.2.39-kdesu.patch b/calamares-3.2.39-kdesu.patch new file mode 100644 index 0000000..ed2211e --- /dev/null +++ b/calamares-3.2.39-kdesu.patch @@ -0,0 +1,68 @@ +diff -rup calamares-3.2.39-default-settings/calamares.desktop calamares-3.2.39-kdesu/calamares.desktop +--- calamares-3.2.39-default-settings/calamares.desktop 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-kdesu/calamares.desktop 2021-03-19 23:14:47.355166565 -0400 +@@ -5,7 +5,7 @@ Name=Install System + GenericName=System Installer + Keywords=calamares;system;installer; + TryExec=calamares +-Exec=sh -c "pkexec calamares" ++Exec=kdesu /usr/bin/calamares + Comment=Calamares — System Installer + Icon=calamares + Terminal=false +diff -rup calamares-3.2.39-default-settings/calamares.desktop.in calamares-3.2.39-kdesu/calamares.desktop.in +--- calamares-3.2.39-default-settings/calamares.desktop.in 2021-03-19 09:23:08.000000000 -0400 ++++ calamares-3.2.39-kdesu/calamares.desktop.in 2021-03-19 23:14:47.356166561 -0400 +@@ -5,7 +5,7 @@ Name=Install System + GenericName=System Installer + Keywords=calamares;system;installer; + TryExec=calamares +-Exec=sh -c "pkexec calamares" ++Exec=kdesu /usr/bin/calamares + Comment=Calamares — System Installer + Icon=calamares + Terminal=false +diff -rup calamares-3.2.39-default-settings/CMakeLists.txt calamares-3.2.39-kdesu/CMakeLists.txt +--- calamares-3.2.39-default-settings/CMakeLists.txt 2021-03-19 16:01:05.087151965 -0400 ++++ calamares-3.2.39-kdesu/CMakeLists.txt 2021-03-19 23:14:47.357166558 -0400 +@@ -50,7 +50,6 @@ set( CALAMARES_VERSION_RC 0 ) # Set to + ### OPTIONS + # + option( INSTALL_CONFIG "Install configuration files" ON ) +-option( INSTALL_POLKIT "Install Polkit configuration" ON ) + option( INSTALL_COMPLETION "Install shell completions" OFF ) + # Options for the calamares executable + option( WITH_KF5Crash "Enable crash reporting with KCrash." ON ) # TODO:3.3: WITH->BUILD (this isn't an ABI thing) +@@ -282,18 +281,6 @@ endif() + find_package( Qt5DBus CONFIG ) + + find_package( YAMLCPP ${YAMLCPP_VERSION} REQUIRED ) +-if( INSTALL_POLKIT ) +- find_package( PolkitQt5-1 REQUIRED ) +-else() +- # Find it anyway, for dependencies-reporting +- find_package( PolkitQt5-1 ) +-endif() +-set_package_properties( +- PolkitQt5-1 PROPERTIES +- DESCRIPTION "Qt5 support for Polkit" +- URL "https://cgit.kde.org/polkit-qt-1.git" +- PURPOSE "PolkitQt5-1 helps with installing Polkit configuration" +-) + + # Find ECM once, and add it to the module search path; Calamares + # modules that need ECM can do +@@ -631,13 +618,6 @@ if( INSTALL_CONFIG ) + ) + endif() + +-if( INSTALL_POLKIT ) +- install( +- FILES com.github.calamares.calamares.policy +- DESTINATION "${POLKITQT-1_POLICY_FILES_INSTALL_DIR}" +- ) +-endif() +- + if ( INSTALL_COMPLETION ) + if( NOT CMAKE_INSTALL_BASHCOMPLETIONDIR ) + set( CMAKE_INSTALL_BASHCOMPLETIONDIR "${CMAKE_INSTALL_DATADIR}/bash-completion/completions" ) diff --git a/calamares-PR1622-Improved-btrfs-subvolumes-support.patch b/calamares-PR1622-Improved-btrfs-subvolumes-support.patch deleted file mode 100644 index 35d8ff0..0000000 --- a/calamares-PR1622-Improved-btrfs-subvolumes-support.patch +++ /dev/null @@ -1,607 +0,0 @@ -From 4ab30569c2dc21e6c528edfb86eb26069b66632a Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 21:31:33 +0200 -Subject: [PATCH 01/18] Add default configuration - ---- - src/modules/mount/mount.conf | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -diff --git a/src/modules/mount/mount.conf b/src/modules/mount/mount.conf -index 3a117d32c..19732b4d3 100644 ---- a/src/modules/mount/mount.conf -+++ b/src/modules/mount/mount.conf -@@ -19,6 +19,10 @@ - # The device is not mounted if the mountPoint is unset or if the fs is - # set to unformatted. - # -+--- -+# Btrfs subvolumes to create if root filesystem is on btrfs volume. -+# If mountpoint is mounted already to another partition, it is ignored. -+# Separate subvolume for swapfile is handled separately and automatically. - extraMounts: - - device: proc - fs: proc -@@ -40,3 +44,13 @@ extraMountsEfi: - - device: efivarfs - fs: efivarfs - mountPoint: /sys/firmware/efi/efivars -+ -+btrfsSubvolumes: -+ - mountPoint: / -+ subvolume: @ -+ - mountPoint: /home -+ subvolume: @home -+ - mountPoint: /var/cache -+ subvolume: @cache -+ - mountPoint: /var/log -+ subvolume: @log -\ No newline at end of file - -From b5cfa5109ecc81d0b7671d7b65494cf9f6dafdfc Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 21:34:11 +0200 -Subject: [PATCH 02/18] Add schema definition - ---- - src/modules/mount/mount.schema.yaml | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/src/modules/mount/mount.schema.yaml b/src/modules/mount/mount.schema.yaml -index 2d5e4d4a0..fb5dfb69c 100644 ---- a/src/modules/mount/mount.schema.yaml -+++ b/src/modules/mount/mount.schema.yaml -@@ -29,3 +29,12 @@ properties: - mountPoint: { type: string } - options: { type: string } - required: [ device, mountPoint ] -+ btrfsSubvolumes: -+ type: array -+ items: -+ type: object -+ additionalProperties: false -+ properties: -+ mountPoint: { type: string } -+ subvolume: { type: string } -+ required: [ subvolume, mountPoint ] - -From 945effb048102d2b6dc6ea763b554e889a9e85ab Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:13:29 +0200 -Subject: [PATCH 03/18] Amend subvolumes to include path - ---- - src/modules/mount/mount.conf | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/modules/mount/mount.conf b/src/modules/mount/mount.conf -index 19732b4d3..b96d4576a 100644 ---- a/src/modules/mount/mount.conf -+++ b/src/modules/mount/mount.conf -@@ -47,10 +47,10 @@ extraMountsEfi: - - btrfsSubvolumes: - - mountPoint: / -- subvolume: @ -+ subvolume: /@ - - mountPoint: /home -- subvolume: @home -+ subvolume: /@home - - mountPoint: /var/cache -- subvolume: @cache -+ subvolume: /@cache - - mountPoint: /var/log -- subvolume: @log -\ No newline at end of file -+ subvolume: /@log -\ No newline at end of file - -From 942221c764a8622c9b23d29b1db291404af0f63b Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:24:50 +0200 -Subject: [PATCH 04/18] Generalize subvolume handling - ---- - src/modules/mount/main.py | 39 +++++++++++++++++++-------------------- - 1 file changed, 19 insertions(+), 20 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 3982176df..4b0e911e3 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -81,26 +81,29 @@ def mount_partition(root_mount_point, partition, partitions): - # If a swapfile is used, we also create a subvolume "@swap". - # Finally we remount all of the above on the correct paths. - if fstype == "btrfs" and partition["mountPoint"] == '/': -- has_home_mount_point = False -+ # Root has been mounted to btrfs volume -> create subvolumes from configuration -+ btrfs_subvolumes = libcalamares.job.configuration.get("btrfsSubvolumes") or [] -+ subvolume_mountpoints = [d['mountPoint'] for d in btrfs_subvolumes] -+ # Check if listed mountpoints besides / are already present and don't create subvolume for those - for p in partitions: - if "mountPoint" not in p or not p["mountPoint"]: - continue -- if p["mountPoint"] == "/home": -- has_home_mount_point = True -- break -+ if p["mountpoint"] in subvolume_mountpoints and p["mountpoint"] != '/': -+ # mountpoint is already define, remove subvolume from the list -+ btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountpoint"]] -+ # Now we shouold have a valid list of needed subvolumes, so all subvolumes can be created and mounted -+ for s in btrfs_subvolumes: -+ # Create the subvolume -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + s['subvolume']]) -+ -+ # Handle swap subvolume separately - needs_swap_subvolume = False - swap_choice = global_storage.value( "partitionChoices" ) - if swap_choice: - swap_choice = swap_choice.get( "swap", None ) - if swap_choice and swap_choice == "file": - needs_swap_subvolume = True -- -- subprocess.check_call(['btrfs', 'subvolume', 'create', -- root_mount_point + '/@']) -- -- if not has_home_mount_point: -- subprocess.check_call(['btrfs', 'subvolume', 'create', -- root_mount_point + '/@home']) - if needs_swap_subvolume: - subprocess.check_call(['btrfs', 'subvolume', 'create', - root_mount_point + '/@swap']) -@@ -112,17 +115,13 @@ def mount_partition(root_mount_point, partition, partitions): - if "luksMapperName" in partition: - device = os.path.join("/dev/mapper", partition["luksMapperName"]) - -- if libcalamares.utils.mount(device, -+ # Mount the subvolumes -+ for s in btrfs_subvolumes: -+ mount_option = f"subvol={s[subvolume]}" -+ if libcalamares.utils.mount(device, - mount_point, - fstype, -- ",".join(["subvol=@", partition.get("options", "")])) != 0: -- libcalamares.utils.warning("Cannot mount {}".format(device)) -- -- if not has_home_mount_point: -- if libcalamares.utils.mount(device, -- root_mount_point + "/home", -- fstype, -- ",".join(["subvol=@home", partition.get("options", "")])) != 0: -+ ",".join([mount_option, partition.get("options", "")])) != 0: - libcalamares.utils.warning("Cannot mount {}".format(device)) - - if needs_swap_subvolume: - -From 4b6718b354d1831b8336946798b6113e0aebc71f Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:35:42 +0200 -Subject: [PATCH 05/18] Further generalize subvolume handling - ---- - src/modules/mount/main.py | 26 +++++++------------------- - 1 file changed, 7 insertions(+), 19 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 4b0e911e3..9e7be8a68 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -89,24 +89,19 @@ def mount_partition(root_mount_point, partition, partitions): - if "mountPoint" not in p or not p["mountPoint"]: - continue - if p["mountpoint"] in subvolume_mountpoints and p["mountpoint"] != '/': -- # mountpoint is already define, remove subvolume from the list -+ # mountpoint is already defined, remove subvolume from the list - btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountpoint"]] -- # Now we shouold have a valid list of needed subvolumes, so all subvolumes can be created and mounted -- for s in btrfs_subvolumes: -- # Create the subvolume -- subprocess.check_call(['btrfs', 'subvolume', 'create', -- root_mount_point + s['subvolume']]) -- -- # Handle swap subvolume separately -+ # Check if we need a subvolume for swap file - needs_swap_subvolume = False - swap_choice = global_storage.value( "partitionChoices" ) - if swap_choice: - swap_choice = swap_choice.get( "swap", None ) - if swap_choice and swap_choice == "file": -- needs_swap_subvolume = True -- if needs_swap_subvolume: -+ btrfs_subvolumes.append({'mountPoint': '/swap', 'subvolume': '/@swap'}) -+ # Create the subvolumes that are in the completed list -+ for s in btrfs_subvolumes: - subprocess.check_call(['btrfs', 'subvolume', 'create', -- root_mount_point + '/@swap']) -+ root_mount_point + s['subvolume']]) - - subprocess.check_call(["umount", "-v", root_mount_point]) - -@@ -122,14 +117,7 @@ def mount_partition(root_mount_point, partition, partitions): - mount_point, - fstype, - ",".join([mount_option, partition.get("options", "")])) != 0: -- libcalamares.utils.warning("Cannot mount {}".format(device)) -- -- if needs_swap_subvolume: -- if libcalamares.utils.mount(device, -- root_mount_point + "/swap", -- fstype, -- ",".join(["subvol=@swap", partition.get("options", "")])) != 0: -- libcalamares.utils.warning("Cannot mount {}".format(device)) -+ libcalamares.utils.warning(f"Cannot mount {device}") - - - def run(): - -From f53f43ad03b955d43be16158912540c6d82d3025 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:42:35 +0200 -Subject: [PATCH 06/18] Remove some unnecessary bits - ---- - src/modules/mount/main.py | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 9e7be8a68..17041fdc5 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -89,10 +89,8 @@ def mount_partition(root_mount_point, partition, partitions): - if "mountPoint" not in p or not p["mountPoint"]: - continue - if p["mountpoint"] in subvolume_mountpoints and p["mountpoint"] != '/': -- # mountpoint is already defined, remove subvolume from the list - btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountpoint"]] - # Check if we need a subvolume for swap file -- needs_swap_subvolume = False - swap_choice = global_storage.value( "partitionChoices" ) - if swap_choice: - swap_choice = swap_choice.get( "swap", None ) - -From 092374d08ce67bdb21d77bcc02c4ad052828c302 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:48:02 +0200 -Subject: [PATCH 07/18] Add modified list to global storage - ---- - src/modules/mount/main.py | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 17041fdc5..7a6c1f176 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -96,6 +96,8 @@ def mount_partition(root_mount_point, partition, partitions): - swap_choice = swap_choice.get( "swap", None ) - if swap_choice and swap_choice == "file": - btrfs_subvolumes.append({'mountPoint': '/swap', 'subvolume': '/@swap'}) -+ # Store created list in global storage so it can be used in the fstab module -+ libcalamares.globalstorage.insert("btrfsSubvolumes", btrfs_subvolumes) - # Create the subvolumes that are in the completed list - for s in btrfs_subvolumes: - subprocess.check_call(['btrfs', 'subvolume', 'create', - -From 14fbbd92dc367f56ce85c619165421e307093e84 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 26 Jan 2021 22:56:31 +0200 -Subject: [PATCH 08/18] Get configured subvolumes from the global storage - ---- - src/modules/fstab/main.py | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/modules/fstab/main.py b/src/modules/fstab/main.py -index 6977ccad1..ed73f2f0f 100644 ---- a/src/modules/fstab/main.py -+++ b/src/modules/fstab/main.py -@@ -192,7 +192,9 @@ def generate_fstab(self): - 'list', - self.root_mount_point]) - output_lines = output.splitlines() -+ btrfs_subvolumes = libcalamares.globalstorage.value("btrfsSubvolumes") - for line in output_lines: -+ # This is where changes need to go - if line.endswith(b'path @'): - root_entry = partition - root_entry["subvol"] = "@" - -From 8c0c84f162c77c440b16cee784513237288f3b2e Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Wed, 27 Jan 2021 15:41:01 +0200 -Subject: [PATCH 09/18] Create all fstab entries one way instead of having - special handling - ---- - src/modules/fstab/main.py | 38 +++++++++----------------------------- - 1 file changed, 9 insertions(+), 29 deletions(-) - -diff --git a/src/modules/fstab/main.py b/src/modules/fstab/main.py -index ed73f2f0f..c2e221c37 100644 ---- a/src/modules/fstab/main.py -+++ b/src/modules/fstab/main.py -@@ -183,39 +183,19 @@ def generate_fstab(self): - print(FSTAB_HEADER, file=fstab_file) - - for partition in self.partitions: -- # Special treatment for a btrfs root with @, @home and @swap -- # subvolumes -+ # Special treatment for a btrfs subvolumes - if (partition["fs"] == "btrfs" - and partition["mountPoint"] == "/"): -- output = subprocess.check_output(['btrfs', -- 'subvolume', -- 'list', -- self.root_mount_point]) -- output_lines = output.splitlines() -+ # Subvolume list has been created in mount.conf and curated in mount module, -+ # so all subvolumes here should be safe to add to fstab - btrfs_subvolumes = libcalamares.globalstorage.value("btrfsSubvolumes") -- for line in output_lines: -- # This is where changes need to go -- if line.endswith(b'path @'): -- root_entry = partition -- root_entry["subvol"] = "@" -- dct = self.generate_fstab_line_info(root_entry) -- if dct: -+ for s in btrfs_subvolumes: -+ mount_entry = partition -+ mount_entry["mountPoint"] = s["mountPoint"] -+ home_entry["subvol"] = s["subvolume"] -+ dct = self.generate_fstab_line_info(mount_entry) -+ if dct: - self.print_fstab_line(dct, file=fstab_file) -- elif line.endswith(b'path @home'): -- home_entry = partition -- home_entry["mountPoint"] = "/home" -- home_entry["subvol"] = "@home" -- dct = self.generate_fstab_line_info(home_entry) -- if dct: -- self.print_fstab_line(dct, file=fstab_file) -- elif line.endswith(b'path @swap'): -- swap_part_entry = partition -- swap_part_entry["mountPoint"] = "/swap" -- swap_part_entry["subvol"] = "@swap" -- dct = self.generate_fstab_line_info(swap_part_entry) -- if dct: -- self.print_fstab_line(dct, file=fstab_file) -- - else: - dct = self.generate_fstab_line_info(partition) - if dct: - -From fcf6e2fb25fded1c0b849094dbe2632ab121d09b Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Tue, 2 Feb 2021 23:07:35 +0200 -Subject: [PATCH 10/18] fix typos - ---- - src/modules/mount/main.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 7a6c1f176..d12f88d71 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -88,7 +88,7 @@ def mount_partition(root_mount_point, partition, partitions): - for p in partitions: - if "mountPoint" not in p or not p["mountPoint"]: - continue -- if p["mountpoint"] in subvolume_mountpoints and p["mountpoint"] != '/': -+ if p["mountPoint"] in subvolume_mountpoints and p["mountPoint"] != '/': - btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountpoint"]] - # Check if we need a subvolume for swap file - swap_choice = global_storage.value( "partitionChoices" ) - -From 1e0295dc652ec2166a7f2acee1fcb38868c2f1e1 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Wed, 3 Feb 2021 22:55:11 +0200 -Subject: [PATCH 11/18] Fix name error - ---- - src/modules/mount/main.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index d12f88d71..5bab086a7 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -112,7 +112,7 @@ def mount_partition(root_mount_point, partition, partitions): - - # Mount the subvolumes - for s in btrfs_subvolumes: -- mount_option = f"subvol={s[subvolume]}" -+ mount_option = f"subvol={s['subvolume']}" - if libcalamares.utils.mount(device, - mount_point, - fstype, - -From 1896a38cccdbaab6650b69e115adb93443159346 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sat, 6 Feb 2021 01:38:03 +0200 -Subject: [PATCH 12/18] Fix a typo - ---- - src/modules/mount/main.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 5bab086a7..eb2614caa 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -89,7 +89,7 @@ def mount_partition(root_mount_point, partition, partitions): - if "mountPoint" not in p or not p["mountPoint"]: - continue - if p["mountPoint"] in subvolume_mountpoints and p["mountPoint"] != '/': -- btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountpoint"]] -+ btrfs_subvolumes = [d for d in btrfs_subvolumes if d['mountPoint'] != p["mountPoint"]] - # Check if we need a subvolume for swap file - swap_choice = global_storage.value( "partitionChoices" ) - if swap_choice: - -From 16bf7925a2524c81cc0bdd2fc28109cd5ea17ec0 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sat, 6 Feb 2021 19:48:09 +0200 -Subject: [PATCH 13/18] Adjust comments - ---- - src/modules/mount/main.py | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index eb2614caa..50e72b316 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -74,12 +74,7 @@ def mount_partition(root_mount_point, partition, partitions): - partition.get("options", "")) != 0: - libcalamares.utils.warning("Cannot mount {}".format(device)) - -- # If the root partition is btrfs, we create a subvolume "@" -- # for the root mount point. -- # If a separate /home partition isn't defined, we also create -- # a subvolume "@home". -- # If a swapfile is used, we also create a subvolume "@swap". -- # Finally we remount all of the above on the correct paths. -+ # Special handling for btrfs subvolumes. Create the subvolumes listed in mount.conf - if fstype == "btrfs" and partition["mountPoint"] == '/': - # Root has been mounted to btrfs volume -> create subvolumes from configuration - btrfs_subvolumes = libcalamares.job.configuration.get("btrfsSubvolumes") or [] - -From 67aedd5582c3c1426331e49ed0e8768000dfd3c3 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sat, 6 Feb 2021 19:54:29 +0200 -Subject: [PATCH 14/18] Move comments closer to where they are used - ---- - src/modules/mount/mount.conf | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/modules/mount/mount.conf b/src/modules/mount/mount.conf -index b96d4576a..6168e97cc 100644 ---- a/src/modules/mount/mount.conf -+++ b/src/modules/mount/mount.conf -@@ -19,10 +19,6 @@ - # The device is not mounted if the mountPoint is unset or if the fs is - # set to unformatted. - # ----- --# Btrfs subvolumes to create if root filesystem is on btrfs volume. --# If mountpoint is mounted already to another partition, it is ignored. --# Separate subvolume for swapfile is handled separately and automatically. - extraMounts: - - device: proc - fs: proc -@@ -45,6 +41,10 @@ extraMountsEfi: - fs: efivarfs - mountPoint: /sys/firmware/efi/efivars - -+# Btrfs subvolumes to create if root filesystem is on btrfs volume. -+# If mountpoint is mounted already to another partition, it is ignored. -+# Separate subvolume for swapfile is handled separately and automatically. -+ - btrfsSubvolumes: - - mountPoint: / - subvolume: /@ - -From b16bd6bb23a0bf4775e2626765f3166d1a820b23 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sat, 6 Feb 2021 20:03:30 +0200 -Subject: [PATCH 15/18] Fix name error - ---- - src/modules/fstab/main.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/modules/fstab/main.py b/src/modules/fstab/main.py -index c2e221c37..b6d7a4b2a 100644 ---- a/src/modules/fstab/main.py -+++ b/src/modules/fstab/main.py -@@ -192,7 +192,7 @@ def generate_fstab(self): - for s in btrfs_subvolumes: - mount_entry = partition - mount_entry["mountPoint"] = s["mountPoint"] -- home_entry["subvol"] = s["subvolume"] -+ mount_entry["subvol"] = s["subvolume"] - dct = self.generate_fstab_line_info(mount_entry) - if dct: - self.print_fstab_line(dct, file=fstab_file) - -From 6d55005da07dcac8baced60c591bb6b5ee32ed2f Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sun, 7 Feb 2021 00:16:26 +0200 -Subject: [PATCH 16/18] Mount subvolumes to correct mountpoints - ---- - src/modules/mount/main.py | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 50e72b316..27df309a3 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -108,8 +108,9 @@ def mount_partition(root_mount_point, partition, partitions): - # Mount the subvolumes - for s in btrfs_subvolumes: - mount_option = f"subvol={s['subvolume']}" -+ subvolume_mountpoint = mount_point[:-1] + s['mountPoint'] - if libcalamares.utils.mount(device, -- mount_point, -+ subvolume_mountpoint, - fstype, - ",".join([mount_option, partition.get("options", "")])) != 0: - libcalamares.utils.warning(f"Cannot mount {device}") - -From 0c92a36a5393114a2bafd3af654954bdb1ae9bd9 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sun, 7 Feb 2021 15:29:30 +0200 -Subject: [PATCH 17/18] Remove unnecessary comment - ---- - src/modules/mount/main.py | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 27df309a3..69c994efc 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -32,9 +32,6 @@ def pretty_name(): - def mount_partition(root_mount_point, partition, partitions): - """ - Do a single mount of @p partition inside @p root_mount_point. -- -- The @p partitions are used to handle btrfs special-cases: -- then subvolumes are created for root and home. - """ - # Create mount point with `+` rather than `os.path.join()` because - # `partition["mountPoint"]` starts with a '/'. - -From 16eff98a0653807d5a38a06cc4ccba7983c6ee10 Mon Sep 17 00:00:00 2001 -From: Chrysostomus -Date: Sun, 7 Feb 2021 15:39:38 +0200 -Subject: [PATCH 18/18] Don't use f-strings yet. - ---- - src/modules/mount/main.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 69c994efc..07166dd75 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -104,13 +104,13 @@ def mount_partition(root_mount_point, partition, partitions): - - # Mount the subvolumes - for s in btrfs_subvolumes: -- mount_option = f"subvol={s['subvolume']}" -+ mount_option = "subvol={}".format(s['subvolume']) - subvolume_mountpoint = mount_point[:-1] + s['mountPoint'] - if libcalamares.utils.mount(device, - subvolume_mountpoint, - fstype, - ",".join([mount_option, partition.get("options", "")])) != 0: -- libcalamares.utils.warning(f"Cannot mount {device}") -+ libcalamares.utils.warning("Cannot mount {}".format(device)) - - - def run(): diff --git a/calamares.spec b/calamares.spec index ffa7dbe..0a26f80 100644 --- a/calamares.spec +++ b/calamares.spec @@ -17,7 +17,7 @@ %endif Name: calamares -Version: 3.2.38 +Version: 3.2.39 Release: %{baserelease}%{?snaphash:.%{snapdate}git%(echo %{snaphash} | cut -c -13)}%{!?snaphash:%{?prerelease:.%{prerelease}}}%{?dist} Summary: Installer from a live CD/DVD/USB to disk @@ -38,15 +38,11 @@ Source4: calamares-auto_de.ts # then translate the template in linguist-qt5. Source5: calamares-auto_it.ts -# Backport improved Btrfs support (remove when updating to 3.2.39) -## From: https://github.com/calamares/calamares/pull/1622 -Patch0: calamares-PR1622-Improved-btrfs-subvolumes-support.patch - # adjust some default settings (default shipped .conf files) -Patch1: calamares-3.2.38-default-settings.patch +Patch0: calamares-3.2.39-default-settings.patch # use kdesu instead of pkexec (works around #1171779) -Patch2: calamares-3.2.35.1-kdesu.patch +Patch1: calamares-3.2.39-kdesu.patch # Calamares is only supported where live images (and GRUB) are. (#1171380) # This list matches the arches where grub2-efi is used to boot the system @@ -86,6 +82,7 @@ BuildRequires: qt5-qtwebkit-devel >= 5.212 BuildRequires: kf5-kconfig-devel BuildRequires: kf5-kcoreaddons-devel BuildRequires: kf5-kcrash-devel +BuildRequires: kf5-kdbusaddons-devel BuildRequires: kf5-ki18n-devel BuildRequires: kf5-kpackage-devel BuildRequires: kf5-kparts-devel @@ -98,10 +95,13 @@ BuildRequires: kpmcore-devel >= 4.2.0 # Python 3 BuildRequires: python3-devel >= 3.3 +BuildRequires: python3-jsonschema +BuildRequires: python3-pyyaml BuildRequires: boost-python3-devel >= 1.55.0 %global __python %{__python3} # Other libraries +BuildRequires: appstream-qt-devel BuildRequires: libpwquality-devel BuildRequires: libxcrypt-devel BuildRequires: parted-devel @@ -204,13 +204,10 @@ developing custom modules for Calamares. %prep %setup -q %{?snaphash:-n %{name}-%{snaphash}} %{!?snaphash:%{?prerelease:-n %{name}-%{version}-%{prerelease}}} -%patch0 -p1 -b .btrfs -# delete backup files so they don't get installed -rm -f src/modules/*/*.conf.btrfs -%patch1 -p1 -b .default-settings +%patch0 -p1 -b .default-settings # delete backup files so they don't get installed rm -f src/modules/*/*.conf.default-settings -%patch2 -p1 -b .kdesu +%patch1 -p1 -b .kdesu %build %{cmake_kf5} -DCMAKE_BUILD_TYPE:STRING="RelWithDebInfo" \ @@ -364,6 +361,11 @@ EOF %changelog +* Sat Mar 20 2021 Neal Gompa - 3.2.39-1 +- Update to 3.2.39 +- Drop patches included in this release +- Refresh customization patches + * Sun Mar 14 2021 Neal Gompa - 3.2.38-1 - Update to 3.2.38 - Backport improved Btrfs support diff --git a/sources b/sources index 75cad43..fddc50f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (calamares-3.2.38.tar.gz) = b295f731bc4d5f33e8a521dd077032e42fc13265b22f9aca5d42438a53515611852e005081ae0ccfac3f8ac46e38705d65c79ea4f827f0c6b6bbc87acd5adb9c +SHA512 (calamares-3.2.39.tar.gz) = 0676a1c038d0b8b260b2228f8c7ff0a8a0b670705e50ef3e0a695dd7bea43a28a299c5eaefdd5eba28eeb2558f02f61c0b0fe01b0b817489b9a4879128a85889