From 63e757729c2787cc6821f8f12628815e26a0ef22 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sep 19 2016 00:23:20 +0000 Subject: Update to 2.4.1 * Mon Sep 19 2016 Kevin Kofler - 2.4.1-1 - Update to 2.4.1 - Drop support for separate partitionmanager tarball, kpmcore is now an external dependency (BuildRequires), drop direct libatasmart, libblkid and parted BRs - Update KF5 build requirements - Update minimum Boost requirement, decreased from 1.55.0 to 1.54.0 - Explicitly BuildRequire gcc-c++ >= 4.9.0 - Drop support for yum (i.e., for Fedora < 22) - Rebase default-settings patch - default-settings: Use America/New_York as the default time zone (matches both Anaconda and upstream Calamares, remixes can override it) - Drop desktop-file patch, use the upstream .desktop file and (now fixed) icon - Update file list and scriptlets for the icon, add Requires: hicolor-icon-theme - Use QtWebEngine for the optional webview module by default - users module: Drop dependency on chfn, which is no longer installed by default --- diff --git a/.gitignore b/.gitignore index 74be4f2..801e3f6 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /calamares-1.1.2.tar.gz /calamares-1.1.3.tar.gz /calamares-1.1.4.2.tar.gz +/calamares-2.4.1.tar.gz diff --git a/calamares-1.1.3-default-settings.patch b/calamares-1.1.3-default-settings.patch deleted file mode 100644 index b94f6c5..0000000 --- a/calamares-1.1.3-default-settings.patch +++ /dev/null @@ -1,186 +0,0 @@ -diff -ur calamares-1.1.3/settings.conf calamares-1.1.3-default-settings/settings.conf ---- calamares-1.1.3/settings.conf 2015-09-14 17:48:01.000000000 +0200 -+++ calamares-1.1.3-default-settings/settings.conf 2015-09-26 01:24:33.164575482 +0200 -@@ -20,12 +20,12 @@ - # Jobs should be executed sparingly (if at all) in this phase. - prepare: - - welcome --- license -+#- license - - locale - - keyboard - - partition - - users --- webview -+#- webview - - summary - - # Phase 2 - install. -@@ -43,17 +43,18 @@ - - locale - - keyboard - - localecfg --- initcpiocfg --- initcpio -+#- initcpiocfg -+#- initcpio - - users - - displaymanager - - networkcfg - - hwclock - - services --#- dracut -+- dracut - #- initramfs - - grubcfg - - bootloader -+- packages - - umount - - # Phase 3 - postinstall. -@@ -70,7 +71,7 @@ - # as paths relative to the current directory. - # Only the name of the branding component (directory) should be specified here, Calamares - # then takes care of finding it and loading the contents. --branding: default -+branding: auto - - # If this is set to true, Calamares will show an "are you sure?" prompt right before the - # install phase, i.e. at the point of no return. If it's false, no prompt is shown. -diff -ur calamares-1.1.3/src/modules/bootloader/bootloader.conf calamares-1.1.3-default-settings/src/modules/bootloader/bootloader.conf ---- calamares-1.1.3/src/modules/bootloader/bootloader.conf 2015-08-06 11:58:32.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/bootloader/bootloader.conf 2015-09-26 01:23:55.545357323 +0200 -@@ -17,11 +17,13 @@ - - # GRUB 2 binary names and boot directory - # Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names. --grubInstall: "grub-install" --grubMkconfig: "grub-mkconfig" --grubCfg: "/boot/grub/grub.cfg" -+grubInstall: "grub2-install" -+grubMkconfig: "grub2-mkconfig" -+grubCfg: "/boot/grub2/grub.cfg" - # Optionally set the --bootloader-id to use for EFI. If not set, this defaults - # to the bootloaderEntryName from branding.desc with problematic characters - # replaced. If an efiBootloaderId is specified here, it is taken to already be a - # valid directory name, so no such postprocessing is done in this case. --# 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" -diff -ur calamares-1.1.3/src/modules/license/license.conf calamares-1.1.3-default-settings/src/modules/license/license.conf ---- calamares-1.1.3/src/modules/license/license.conf 2015-09-14 16:51:04.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/license/license.conf 2015-09-26 01:44:24.149437908 +0200 -@@ -3,21 +3,9 @@ - --- - # YAML: list of maps. - entries: --- id: nvidia # Entry identifier, must be unique. Not user visible. YAML: string. -- name: Nvidia # Pretty name for the software product, user visible and untranslatable. YAML: string. -- vendor: Nvidia Corporation # Pretty name for the software vendor, user visible and untranslatable. YAML: string, optional, default is empty. -+- id: evil # Entry identifier, must be unique. Not user visible. YAML: string. -+ name: Evil # Pretty name for the software product, user visible and untranslatable. YAML: string. -+ vendor: Evil Corporation # Pretty name for the software vendor, user visible and untranslatable. YAML: string, optional, default is empty. - type: driver # Package type for presentation, not user visible but affects user visible strings. YAML: string, allowed values: driver, gpudriver, browserplugin, codec, package, software; optional, default is software. -- url: http://developer.download.nvidia.com/cg/Cg_3.0/license.pdf # Url of license text to display in a web view. YAML: string. -+ url: http://www.example.com/evil_666.0/license.pdf # Url of license text to display in a web view. YAML: string. - required: false # If set to true, the user cannot proceed without accepting this license. YAML: boolean, optional, default is 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 -diff -ur calamares-1.1.3/src/modules/locale/locale.conf calamares-1.1.3-default-settings/src/modules/locale/locale.conf ---- calamares-1.1.3/src/modules/locale/locale.conf 2015-08-06 11:58:34.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/locale/locale.conf 2015-09-26 01:23:55.580357527 +0200 -@@ -1,3 +1,4 @@ - --- --region: "Europe" --zone: "London" -+# default to UTC -+region: "Atlantic" -+zone: "Reykjavik" -diff -ur calamares-1.1.3/src/modules/packages/packages.conf calamares-1.1.3-default-settings/src/modules/packages/packages.conf ---- calamares-1.1.3/src/modules/packages/packages.conf 2015-08-06 11:58:32.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/packages/packages.conf 2015-09-26 01:23:55.609357696 +0200 -@@ -11,7 +11,7 @@ - # - portage - Gentoo package manager - # - entropy - Sabayon package manager - # --backend: packagekit -+backend: dnf - # - # List of maps with package operations such as install or remove. - # Distro developers can provide a list of packages to remove -@@ -26,20 +26,7 @@ - # storage called "packageOperations" and it is processed - # after the static list in the job configuration. - # --#operations: -+operations: -+ - remove: -+ - calamares - # - install: --# - pkg1 --# - pkg2 --# - remove: --# - pkg3 --# - pkg4 --# - install: --# - pkg5 --# - remove: --# - pkg2 --# - pkg1 --# install: --# - pkgs6 --# - pkg7 --# - localInstall: --# - /path/to/pkg8 -diff -ur calamares-1.1.3/src/modules/services/services.conf calamares-1.1.3-default-settings/src/modules/services/services.conf ---- calamares-1.1.3/src/modules/services/services.conf 2015-09-10 13:18:54.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/services/services.conf 2015-09-26 01:42:47.715883986 +0200 -@@ -12,6 +12,4 @@ - - name: "graphical" - mandatory: true - --disable: -- - name: "pacman-init" -- mandatory: false -+disable: [] -diff -ur calamares-1.1.3/src/modules/unpackfs/unpackfs.conf calamares-1.1.3-default-settings/src/modules/unpackfs/unpackfs.conf ---- calamares-1.1.3/src/modules/unpackfs/unpackfs.conf 2015-08-06 11:58:32.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/unpackfs/unpackfs.conf 2015-09-26 01:23:55.630357818 +0200 -@@ -1,8 +1,5 @@ - --- - unpack: -- - source: "/path/to/filesystem.img" -+ - source: "/dev/mapper/live-base" - sourcefs: "ext4" - destination: "" -- - source: "/path/to/another/filesystem.sqfs" -- sourcefs: "squashfs" -- destination: "" -diff -ur calamares-1.1.3/src/modules/users/users.conf calamares-1.1.3-default-settings/src/modules/users/users.conf ---- calamares-1.1.3/src/modules/users/users.conf 2015-08-19 12:52:13.000000000 +0200 -+++ calamares-1.1.3-default-settings/src/modules/users/users.conf 2015-09-26 01:25:56.574056337 +0200 -@@ -3,11 +3,10 @@ - defaultGroups: - - lp - - video -- - network -- - storage -+ - dialout - - wheel - - audio - autologinGroup: autologin --doAutologin: true -+doAutologin: false - sudoersGroup: wheel - setRootPassword: true diff --git a/calamares-2.4.1-default-settings.patch b/calamares-2.4.1-default-settings.patch new file mode 100644 index 0000000..52f33bc --- /dev/null +++ b/calamares-2.4.1-default-settings.patch @@ -0,0 +1,201 @@ +diff -ur calamares-2.4.1/settings.conf calamares-2.4.1-default-settings/settings.conf +--- calamares-2.4.1/settings.conf 2016-08-17 15:47:21.000000000 +0200 ++++ calamares-2.4.1-default-settings/settings.conf 2016-09-19 00:39:06.609469896 +0200 +@@ -79,17 +79,18 @@ + - localecfg + # - luksbootkeyfile + # - luksopenswaphookcfg +- - initcpiocfg +- - initcpio ++# - initcpiocfg ++# - initcpio + - users + - displaymanager + - networkcfg + - hwclock + - services +-# - dracut +- - initramfs +-# - grubcfg ++ - dracut ++# - initramfs ++ - grubcfg + - bootloader ++ - packages + - umount + - show: + # - webview@owncloud +@@ -104,7 +105,7 @@ + # Only the name of the branding component (directory) should be specified 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 false, no prompt +diff -ur calamares-2.4.1/src/modules/bootloader/bootloader.conf calamares-2.4.1-default-settings/src/modules/bootloader/bootloader.conf +--- calamares-2.4.1/src/modules/bootloader/bootloader.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/bootloader/bootloader.conf 2016-09-19 00:35:05.067177280 +0200 +@@ -17,11 +17,13 @@ + + # GRUB 2 binary names and boot directory + # Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names. +-grubInstall: "grub-install" +-grubMkconfig: "grub-mkconfig" +-grubCfg: "/boot/grub/grub.cfg" ++grubInstall: "grub2-install" ++grubMkconfig: "grub2-mkconfig" ++grubCfg: "/boot/grub2/grub.cfg" + # Optionally set the --bootloader-id to use for EFI. If not set, this defaults + # to the bootloaderEntryName from branding.desc with problematic characters + # replaced. If an efiBootloaderId is specified here, it is taken to already be a + # valid directory name, so no such postprocessing is done in this case. +-# 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" +diff -ur calamares-2.4.1/src/modules/license/license.conf calamares-2.4.1-default-settings/src/modules/license/license.conf +--- calamares-2.4.1/src/modules/license/license.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/license/license.conf 2016-09-19 00:35:05.067177280 +0200 +@@ -3,21 +3,9 @@ + --- + # YAML: list of maps. + entries: +-- id: nvidia # Entry identifier, must be unique. Not user visible. YAML: string. +- name: Nvidia # Pretty name for the software product, user visible and untranslatable. YAML: string. +- vendor: Nvidia Corporation # Pretty name for the software vendor, user visible and untranslatable. YAML: string, optional, default is empty. ++- id: evil # Entry identifier, must be unique. Not user visible. YAML: string. ++ name: Evil # Pretty name for the software product, user visible and untranslatable. YAML: string. ++ vendor: Evil Corporation # Pretty name for the software vendor, user visible and untranslatable. YAML: string, optional, default is empty. + type: driver # Package type for presentation, not user visible but affects user visible strings. YAML: string, allowed values: driver, gpudriver, browserplugin, codec, package, software; optional, default is software. +- url: http://developer.download.nvidia.com/cg/Cg_3.0/license.pdf # Url of license text to display in a web view. YAML: string. ++ url: http://www.example.com/evil_666.0/license.pdf # Url of license text to display in a web view. YAML: string. + required: false # If set to true, the user cannot proceed without accepting this license. YAML: boolean, optional, default is 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 +diff -ur calamares-2.4.1/src/modules/netinstall/netinstall.conf calamares-2.4.1-default-settings/src/modules/netinstall/netinstall.conf +--- calamares-2.4.1/src/modules/netinstall/netinstall.conf 2016-07-19 13:04:14.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/netinstall/netinstall.conf 2016-09-19 01:37:41.488266440 +0200 +@@ -1,2 +1,5 @@ + --- +-groupsUrl: http://chakraos.org/netinstall.php ++# 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 ++#groupsUrl: http://example.com/netinstall.yaml +diff -ur calamares-2.4.1/src/modules/packages/packages.conf calamares-2.4.1-default-settings/src/modules/packages/packages.conf +--- calamares-2.4.1/src/modules/packages/packages.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/packages/packages.conf 2016-09-19 00:35:05.068177285 +0200 +@@ -11,7 +11,7 @@ + # - portage - Gentoo package manager + # - entropy - Sabayon package manager + # +-backend: packagekit ++backend: dnf + # + # List of maps with package operations such as install or remove. + # Distro developers can provide a list of packages to remove +@@ -26,20 +26,7 @@ + # storage called "packageOperations" and it is processed + # after the static list in the job configuration. + # +-#operations: ++operations: ++ - remove: ++ - calamares + # - install: +-# - pkg1 +-# - pkg2 +-# - remove: +-# - pkg3 +-# - pkg4 +-# - install: +-# - pkg5 +-# - remove: +-# - pkg2 +-# - pkg1 +-# install: +-# - pkgs6 +-# - pkg7 +-# - localInstall: +-# - /path/to/pkg8 +diff -ur calamares-2.4.1/src/modules/partition/partition.conf calamares-2.4.1-default-settings/src/modules/partition/partition.conf +--- calamares-2.4.1/src/modules/partition/partition.conf 2016-06-23 09:39:24.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/partition/partition.conf 2016-09-19 00:58:22.326638764 +0200 +@@ -7,7 +7,7 @@ + ensureSuspendToDisk: true + + # Correctly draw nested (e.g. logical) partitions as such. +-drawNestedPartitions: false ++drawNestedPartitions: true + + # Show/hide partition labels on manual partitioning page. + alwaysShowPartitionLabels: true +diff -ur calamares-2.4.1/src/modules/services/services.conf calamares-2.4.1-default-settings/src/modules/services/services.conf +--- calamares-2.4.1/src/modules/services/services.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/services/services.conf 2016-09-19 00:35:05.068177285 +0200 +@@ -12,6 +12,4 @@ + - name: "graphical" + mandatory: true + +-disable: +- - name: "pacman-init" +- mandatory: false ++disable: [] +diff -ur calamares-2.4.1/src/modules/umount/umount.conf calamares-2.4.1-default-settings/src/modules/umount/umount.conf +--- calamares-2.4.1/src/modules/umount/umount.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/umount/umount.conf 2016-09-19 01:01:28.424629429 +0200 +@@ -1,9 +1,6 @@ + --- +-#scrLog: "/path/to/installation.log" +-#destLog: "/var/log/installation.log" +-# example when using the Calamares created log: +-#srcLog: "/root/.cache/Calamares/Calamares/Calamares.log" +-#destLog: "/var/log/Calamares.log" ++srcLog: "/root/.cache/Calamares/Calamares/Calamares.log" ++destLog: "/var/log/calamares.log" + # example when creating with a sudo calamares -d log: + #srcLog: "/home/live/installation.log" + #destLog: "/var/log/installation.log" +diff -ur calamares-2.4.1/src/modules/unpackfs/unpackfs.conf calamares-2.4.1-default-settings/src/modules/unpackfs/unpackfs.conf +--- calamares-2.4.1/src/modules/unpackfs/unpackfs.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/unpackfs/unpackfs.conf 2016-09-19 00:35:05.068177285 +0200 +@@ -1,8 +1,5 @@ + --- + unpack: +- - source: "/path/to/filesystem.img" ++ - source: "/dev/mapper/live-base" + sourcefs: "ext4" + destination: "" +- - source: "/path/to/another/filesystem.sqfs" +- sourcefs: "squashfs" +- destination: "" +diff -ur calamares-2.4.1/src/modules/users/users.conf calamares-2.4.1-default-settings/src/modules/users/users.conf +--- calamares-2.4.1/src/modules/users/users.conf 2016-04-12 11:23:47.000000000 +0200 ++++ calamares-2.4.1-default-settings/src/modules/users/users.conf 2016-09-19 00:35:05.068177285 +0200 +@@ -3,12 +3,11 @@ + - users + - lp + - video +- - network +- - storage ++ - dialout + - wheel + - audio + autologinGroup: autologin +-doAutologin: true ++doAutologin: false + sudoersGroup: wheel + setRootPassword: true + doReusePassword: true diff --git a/calamares-2.4.1-users-no-chfn.patch b/calamares-2.4.1-users-no-chfn.patch new file mode 100644 index 0000000..0846f9f --- /dev/null +++ b/calamares-2.4.1-users-no-chfn.patch @@ -0,0 +1,50 @@ +From da655ee4ce99d6abac1ff3719d2d1df241ca070c Mon Sep 17 00:00:00 2001 +From: Kevin Kofler +Date: Thu, 15 Sep 2016 22:14:26 +0200 +Subject: [PATCH] users: Drop dependency on chfn. + +Pass the full name directly to useradd instead, using the "-c" (comment) +parameter, which is "currently used as the field for the user's full +name" according to the documentation. + +The chfn utility is no longer installed by default on current Fedora +releases due to its dependency on libuser. (They split out chfn and chsh +from util-linux into an optional subpackage.) It could be added as a +dependency of Calamares, but since it is needed inside the chroot, it +has to be on the base live image, not the overlay. Thus, to allow +testing Calamares with a simple "dnf install calamares" again, the +dependency needs to go away. And it is unnecessary anyway. +--- + src/modules/users/CreateUserJob.cpp | 9 ++------- + 1 file changed, 2 insertions(+), 7 deletions(-) + +diff --git a/src/modules/users/CreateUserJob.cpp b/src/modules/users/CreateUserJob.cpp +index 556ff9d..9204304 100644 +--- a/src/modules/users/CreateUserJob.cpp ++++ b/src/modules/users/CreateUserJob.cpp +@@ -155,6 +155,8 @@ CreateUserJob::exec() + "-U", + "-G", + defaultGroups, ++ "-c", ++ m_fullName, + m_userName } ); + if ( ec ) + return Calamares::JobResult::error( tr( "Cannot create user %1." ) +@@ -162,13 +164,6 @@ CreateUserJob::exec() + tr( "useradd terminated with error code %1." ) + .arg( ec ) ); + +- ec = CalamaresUtils::System::instance()->targetEnvCall( { "chfn", "-f", m_fullName, m_userName } ); +- if ( ec ) +- return Calamares::JobResult::error( tr( "Cannot set full name for user %1." ) +- .arg( m_userName ), +- tr( "chfn terminated with error code %1." ) +- .arg( ec ) ); +- + ec = CalamaresUtils::System::instance()-> + targetEnvCall( { "chown", + "-R", +-- +2.1.0 + diff --git a/calamares-desktop-file.patch b/calamares-desktop-file.patch deleted file mode 100644 index f440b25..0000000 --- a/calamares-desktop-file.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -ur calamares-fe44633e0ca5205b6eb4baf55c3a3867a6d17c73/calamares.desktop calamares-desktop-file/calamares.desktop ---- calamares-fe44633e0ca5205b6eb4baf55c3a3867a6d17c73/calamares.desktop 2015-01-05 09:45:40.000000000 +0100 -+++ calamares-desktop-file/calamares.desktop 2015-01-10 04:08:20.000000000 +0100 -@@ -1,12 +1,9 @@ - [Desktop Entry] - Type=Application - Version=1.0 --Name=Calamares --GenericName=System Installer --TryExec=calamares -+Name=Install to Hard Disk Drive - Exec=pkexec /usr/bin/calamares --Comment=Calamares — System Installer --Icon=calamares -+Icon=drive-harddisk - Terminal=false - StartupNotify=false - Categories=Qt;System; diff --git a/calamares.spec b/calamares.spec index 648fbea..d9b18d6 100644 --- a/calamares.spec +++ b/calamares.spec @@ -1,18 +1,20 @@ #global snapdate 20150502 #global snaphash a70306e54f505bb296700bb6986af7055bdbdf85 -#global partitionmanagerhash 3f1ace00592088a920f731acb1e42417f71f5e62 + +%ifarch %{?qt5_qtwebengine_arches}%{!?qt5_qtwebengine_arches:%{ix86} x86_64} +# use QtWebEngine instead of QtWebKit for the optional webview module +# only possible on qt5_qtwebengine_arches, which for livearches means only x86 +%global webview_qtwebengine 1 +%endif Name: calamares -Version: 1.1.4.2 -Release: 5%{?snaphash:.%{snapdate}git%(echo %{snaphash} | cut -c -13)}%{?dist} +Version: 2.4.1 +Release: 1%{?snaphash:.%{snapdate}git%(echo %{snaphash} | cut -c -13)}%{?dist} Summary: Installer from a live CD/DVD/USB to disk License: GPLv3+ URL: https://calamares.io/ Source0: https://github.com/calamares/calamares/%{?snaphash:archive}%{!?snaphash:releases/download}/%{?snaphash}%{!?snaphash:v%{version}}/calamares-%{?snaphash}%{!?snaphash:%{version}}.tar.gz -%if %{?partitionmanagerhash:1}%{!?partitionmanagerhash:0} -Source1: https://github.com/calamares/partitionmanager/archive/%{partitionmanagerhash}/calamares-partitionmanager-%{partitionmanagerhash}.tar.gz -%endif Source2: show.qml # Run: # lupdate-qt5 show.qml -ts calamares-auto_fr.ts @@ -28,9 +30,11 @@ Source4: calamares-auto_de.ts Source5: calamares-auto_it.ts # adjust some default settings (default shipped .conf files) -Patch0: calamares-1.1.3-default-settings.patch -# .desktop file customizations and fixes (e.g. don't use nonexistent Icon=) -Patch1: calamares-desktop-file.patch +Patch0: calamares-2.4.1-default-settings.patch + +# users module: Drop dependency on chfn, which is no longer installed by default +# submitted and merged upstream: https://github.com/calamares/calamares/pull/260 +Patch100: calamares-2.4.1-users-no-chfn.patch # Calamares is only supported where live images (and GRUB) are. (#1171380) # This list matches the livearches global from anaconda.spec @@ -38,6 +42,7 @@ ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le BuildRequires: kf5-rpm-macros +BuildRequires: gcc-c++ >= 4.9.0 BuildRequires: cmake >= 2.8.12 BuildRequires: extra-cmake-modules >= 0.0.13 @@ -45,25 +50,33 @@ BuildRequires: qt5-qtbase-devel >= 5.3 BuildRequires: qt5-qtdeclarative-devel >= 5.3 BuildRequires: qt5-qtsvg-devel >= 5.3 BuildRequires: qt5-qttools-devel >= 5.3 +%if 0%{?webview_qtwebengine} +BuildRequires: qt5-qtwebengine-devel >= 5.6 +%global webview_force_webkit OFF +%global webview_engine QtWebEngine +%else BuildRequires: qt5-qtwebkit-devel >= 5.3 +%global webview_force_webkit ON +%global webview_engine Qt5WebKit +%endif BuildRequires: polkit-qt5-1-devel BuildRequires: kf5-kconfig-devel BuildRequires: kf5-kcoreaddons-devel BuildRequires: kf5-ki18n-devel -BuildRequires: kf5-solid-devel +BuildRequires: kf5-kiconthemes-devel +BuildRequires: kf5-kio-devel +BuildRequires: kf5-kservice-devel BuildRequires: pkgconfig BuildRequires: gettext BuildRequires: python3-devel >= 3.3 -BuildRequires: boost-python3-devel >= 1.55.0 +BuildRequires: boost-python3-devel >= 1.54.0 %global __python %{__python3} BuildRequires: yaml-cpp-devel >= 0.5.1 -BuildRequires: libblkid-devel -BuildRequires: libatasmart-devel -BuildRequires: parted-devel +BuildRequires: kpmcore-devel >= 2.2 BuildRequires: desktop-file-utils @@ -96,12 +109,8 @@ Requires: systemd Requires: rsync Requires: shadow-utils Requires: polkit -%if 0%{?fedora} > 21 Requires: dnf -%else -%global use_yum 1 -Requires: yum -%endif +Requires: hicolor-icon-theme Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -127,7 +136,7 @@ Requires: %{name} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description webview -Optional webview module for the Calamares installer, based on Qt5WebKit. +Optional webview module for the Calamares installer, based on %{webview_engine}. %package devel @@ -141,23 +150,16 @@ developing custom modules for Calamares. %prep -%setup -q %{?snaphash:-n %{name}-%{snaphash}} %{?partitionmanagerhash:-a 1} -%if %{?partitionmanagerhash:1}%{!?partitionmanagerhash:0} -rmdir src/modules/partition/partitionmanager -mv -f partitionmanager-%{partitionmanagerhash} src/modules/partition/partitionmanager -%endif +%setup -q %{?snaphash:-n %{name}-%{snaphash}} %patch0 -p1 -b .default-settings -%patch1 -p1 -b .desktop-file # delete backup files so they don't get installed rm -f src/modules/*/*.conf.default-settings -%if 0%{?use_yum} -sed -i -e 's/^backend: dnf$/backend: yum/g' src/modules/packages/packages.conf -%endif +%patch100 -p1 -b .users-no-chfn %build mkdir -p %{_target_platform} pushd %{_target_platform} -%{cmake_kf5} -DWITH_PARTITIONMANAGER:BOOL="ON" -DCMAKE_BUILD_TYPE:STRING="RelWithDebInfo" .. +%{cmake_kf5} -DWEBVIEW_FORCE_WEBKIT:BOOL="%{webview_force_webkit}" -DCMAKE_BUILD_TYPE:STRING="RelWithDebInfo" .. popd make %{?_smp_mflags} -C %{_target_platform} @@ -181,6 +183,8 @@ mkdir -p %{buildroot}%{_sysconfdir}/calamares/branding desktop-file-validate %{buildroot}%{_datadir}/applications/calamares.desktop %post +/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + # generate the "auto" branding . %{_sysconfdir}/os-release @@ -241,6 +245,15 @@ style: sidebarTextSelect: "#292F34" EOF +%postun +if [ $1 -eq 0 ] ; then + /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null + /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + %files %doc LICENSE AUTHORS %{_bindir}/calamares @@ -257,6 +270,7 @@ EOF %{_datadir}/calamares/qml/ %{_datadir}/applications/calamares.desktop %{_datadir}/polkit-1/actions/com.github.calamares.calamares.policy +%{_datadir}/icons/hicolor/scalable/apps/calamares.svg %{_sysconfdir}/calamares/ %post libs -p /sbin/ldconfig @@ -265,8 +279,6 @@ EOF %files libs %{_libdir}/libcalamares.so.* %{_libdir}/libcalamaresui.so.* -# unversioned library -%{_libdir}/libcalapm.so %{_libdir}/calamares/ %exclude %{_libdir}/calamares/modules/webview/ @@ -282,6 +294,22 @@ EOF %changelog +* Mon Sep 19 2016 Kevin Kofler - 2.4.1-1 +- Update to 2.4.1 +- Drop support for separate partitionmanager tarball, kpmcore is now an external + dependency (BuildRequires), drop direct libatasmart, libblkid and parted BRs +- Update KF5 build requirements +- Update minimum Boost requirement, decreased from 1.55.0 to 1.54.0 +- Explicitly BuildRequire gcc-c++ >= 4.9.0 +- Drop support for yum (i.e., for Fedora < 22) +- Rebase default-settings patch +- default-settings: Use America/New_York as the default time zone (matches both + Anaconda and upstream Calamares, remixes can override it) +- Drop desktop-file patch, use the upstream .desktop file and (now fixed) icon +- Update file list and scriptlets for the icon, add Requires: hicolor-icon-theme +- Use QtWebEngine for the optional webview module by default +- users module: Drop dependency on chfn, which is no longer installed by default + * Tue Aug 23 2016 Richard Shaw - 1.1.4.2-5 - Rebuild for updated yaml-cpp diff --git a/sources b/sources index 4b00b4b..3846e84 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -800eae08cc12113e2f5445719509e192 calamares-1.1.4.2.tar.gz +8019a3e11aefeadcc990f2bc744daf2f calamares-2.4.1.tar.gz