%define calamdate 20150227 %define partdate 20150112 %define major 1 %define libname %mklibname %{name} %{major} %define develname %mklibname %{name} -d Summary: Distribution-independent installer framework Name: calamares Version: 1.0.0 Release: 0.%{calamdate}.2 Group: System/Configuration/Other License: GPLv3+ URL: http://calamares.io/ # git archive --format=tar --prefix=calamares-0.17.0-20150112/ HEAD | xz -vf > calamares-0.17.0-20150112.tar.xz Source0: calamares-%{version}-%{calamdate}.tar.xz # https://github.com/calamares/partitionmanager Source1: calamares-partitionmanager-%{partdate}.tar.xz Source2: calamares.rpmlintrc Source3: %{name}.service Source4: %{name}-install-start Source5: omv-bootloader.conf Source6: omv-displaymanager.conf Source7: omv-finished.conf Source8: omv-fstab.conf Source10: omv-grubcfg.conf Source11: omv-keyboard.conf Source12: omv-locale.conf Source13: omv-machineid.conf Source14: omv-mount.conf Source15: omv-packages.conf Source16: omv-prepare.conf Source17: omv-services.conf Source18: omv-settings.conf Source19: omv-unpackfs.conf Source20: omv-users.conf Source21: OpenMandriva-adverts.tar.xz Patch1: calamares-0.17.0-20150112-openmandriva-desktop-file.patch BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5DBus) BuildRequires: pkgconfig(Qt5Xml) BuildRequires: pkgconfig(Qt5Network) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Widgets) BuildRequires: pkgconfig(Qt5Test) BuildRequires: pkgconfig(Qt5Concurrent) BuildRequires: pkgconfig(Qt5Svg) BuildRequires: pkgconfig(Qt5Quick) BuildRequires: pkgconfig(libatasmart) BuildRequires: pkgconfig(blkid) BuildRequires: pkgconfig(libparted) BuildRequires: pkgconfig(polkit-qt5-1) BuildRequires: cmake >= 3.0 BuildRequires: cmake(ECM) BuildRequires: qt5-qttools BuildRequires: qt5-linguist BuildRequires: cmake(KF5CoreAddons) BuildRequires: cmake(KF5Config) BuildRequires: cmake(KF5Solid) BuildRequires: cmake(KF5I18n) BuildRequires: yaml-cpp-devel BuildRequires: pkgconfig(python3) BuildRequires: boost-devel >= 1.54.0 BuildRequires: boost-python3-devel Requires(post): distro-release-OpenMandriva Requires(post): distro-theme-OpenMandriva Requires: coreutils Requires: util-linux Requires: dracut Requires: grub2 %ifarch x86_64 # EFI currently only supported on x86_64 Requires: grub2-efi %endif Requires: console-setup # x11 stuff Requires: setxkbmap Requires: xkbcomp Requires: NetworkManager Requires: os-prober Requires: e2fsprogs Requires: dosfstools Requires: ntfs-3g Requires: gawk #(tpg) needs to be ported to KF5 #Requires: partitionmanager Requires: systemd Requires: systemd-units Requires: rsync Requires: shadow Requires: polkit Requires: urpmi Requires: squashfs-tools ExclusiveArch: %{ix86} x86_64 %description Calamares is a distribution-independent installer framework, designed to install from a live CD/DVD/USB environment to a hard disk. It includes a graphical installation program based on Qt 5. %package -n %{libname} Summary: Calamares runtime libraries Group: System/Libraries Requires: %{name} = %{EVRD} %description -n %{libname} Librarief for %{name}. %package -n %{develname} Summary: Development files for %{name} Group: Development/C Requires: %{libname} = %{EVRD} Requires: cmake %description -n %{develname} Development files and headers for %{name}. %prep %setup -q -n %{name}-%{version}-%{calamdate} -a 1 rm -rf src/modules/partition/partitionmanager mv -f calamares-partitionmanager-%{partdate} src/modules/partition/partitionmanager %apply_patches #delete backup files rm -f src/modules/*/*.conf.default-settings %build # workaround for broken LLVM export CC=gcc export CXX=g++ %cmake_qt5 -DWITH_PARTITIONMANAGER:BOOL="ON" -DWITH_PYTHON:BOOL="ON" -DCMAKE_BUILD_TYPE:STRING="RelWithDebInfo" %make %install %makeinstall_std -C build #own the local settings directories mkdir -p %{buildroot}%{_sysconfdir}/calamares/modules mkdir -p %{buildroot}%{_sysconfdir}/calamares/branding/auto touch %{buildroot}%{_sysconfdir}/calamares/branding/auto/branding.desc # (tpg) settings specific for OMV install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/calamares/modules/bootloader.conf install -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/calamares/modules/displaymanager.conf install -m 644 %{SOURCE7} %{buildroot}%{_sysconfdir}/calamares/modules/finished.conf install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/calamares/modules/fstab.conf install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/calamares/modules/grubcfg.conf install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/calamares/modules/keyboard.conf install -m 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/calamares/modules/locale.conf install -m 644 %{SOURCE13} %{buildroot}%{_sysconfdir}/calamares/modules/machineid.conf install -m 644 %{SOURCE14} %{buildroot}%{_sysconfdir}/calamares/modules/mount.conf install -m 644 %{SOURCE15} %{buildroot}%{_sysconfdir}/calamares/modules/packages.conf install -m 644 %{SOURCE16} %{buildroot}%{_sysconfdir}/calamares/modules/prepare.conf install -m 644 %{SOURCE17} %{buildroot}%{_sysconfdir}/calamares/modules/services.conf install -m 644 %{SOURCE18} %{buildroot}%{_sysconfdir}/calamares/settings.conf install -m 644 %{SOURCE19} %{buildroot}%{_sysconfdir}/calamares/modules/unpackfs.conf install -m 644 %{SOURCE20} %{buildroot}%{_sysconfdir}/calamares/modules/users.conf # (tpg) service files mkdir -p %{buildroot}{%{_unitdir},%{_sbindir}} install -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}.service install -m 755 %{SOURCE4} %{buildroot}%{_sbindir}/%{name}-install-start install -d %{buildroot}%{_presetdir} cat > %{buildroot}%{_presetdir}/90-%{name}.preset << EOF enable %{name}.service EOF # (tpg) install adverts and slideshow tar xf %{SOURCE21} -C %{buildroot}%{_sysconfdir}/calamares/branding/auto %post # generate the "auto" branding . %{_sysconfdir}/os-release cat >%{_sysconfdir}/calamares/branding/auto/branding.desc <