From 8b626f58b5fe1e8b21e272c798e27bae0880f730 Mon Sep 17 00:00:00 2001 From: Nicolas MASSE Date: Thu, 30 Oct 2025 09:18:21 +0100 Subject: [PATCH] fix typo in update.sh --- centos-9/SOURCES/zfs-2.2.8.tar.gz | 4 +- fedora-41/SOURCES/zfs-2.3.4.tar.gz | 4 +- fedora-43/SOURCES/zfs-2.3.4.tar.gz | 3 - fedora-43/SPECS/zfs-dkms.spec | 168 -------- fedora-43/SPECS/zfs.spec | 604 ----------------------------- update.sh | 8 +- 6 files changed, 10 insertions(+), 781 deletions(-) delete mode 100644 fedora-43/SOURCES/zfs-2.3.4.tar.gz delete mode 100644 fedora-43/SPECS/zfs-dkms.spec delete mode 100644 fedora-43/SPECS/zfs.spec diff --git a/centos-9/SOURCES/zfs-2.2.8.tar.gz b/centos-9/SOURCES/zfs-2.2.8.tar.gz index 1d9cf05..bc3b200 100644 --- a/centos-9/SOURCES/zfs-2.2.8.tar.gz +++ b/centos-9/SOURCES/zfs-2.2.8.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ef669f8ba31b6998a97002d29eb079c8680e59fd2a9202fcb9ca7a9d9522459d -size 33857690 +oid sha256:727ac0e81c5446aae76839a85ea3ea7a966ed4112421db1d0f70c1b2f92dc0c0 +size 33851391 diff --git a/fedora-41/SOURCES/zfs-2.3.4.tar.gz b/fedora-41/SOURCES/zfs-2.3.4.tar.gz index 62cee6d..66373a8 100644 --- a/fedora-41/SOURCES/zfs-2.3.4.tar.gz +++ b/fedora-41/SOURCES/zfs-2.3.4.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70bc4b6b22e5474faf46d4dad5717a6cdd5f85a9830012ae64014abbe52406fc -size 34387363 +oid sha256:960dadef24223edf16578de75ab471acdf4119ec8e1402408e8c789577ed305e +size 34377346 diff --git a/fedora-43/SOURCES/zfs-2.3.4.tar.gz b/fedora-43/SOURCES/zfs-2.3.4.tar.gz deleted file mode 100644 index 62cee6d..0000000 --- a/fedora-43/SOURCES/zfs-2.3.4.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:70bc4b6b22e5474faf46d4dad5717a6cdd5f85a9830012ae64014abbe52406fc -size 34387363 diff --git a/fedora-43/SPECS/zfs-dkms.spec b/fedora-43/SPECS/zfs-dkms.spec deleted file mode 100644 index a39ae38..0000000 --- a/fedora-43/SPECS/zfs-dkms.spec +++ /dev/null @@ -1,168 +0,0 @@ -%{?!packager: %define packager Brian Behlendorf } - -%if ! 0%{?rhel}%{?fedora}%{?mageia}%{?suse_version}%{?openEuler} -%define not_rpm 1 -%endif - -# Exclude input files from mangling -%global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ - -%define module zfs -%define mkconf scripts/dkms.mkconf - -Name: %{module}-dkms - -Version: 2.3.4 -Release: 1%{?dist} -Summary: Kernel module(s) (dkms) - -Group: System Environment/Kernel -License: CDDL -URL: https://github.com/openzfs/zfs -Source0: %{module}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildArch: noarch - -Requires: dkms >= 2.2.0.3 -Requires(pre): dkms >= 2.2.0.3 -Requires(post): dkms >= 2.2.0.3 -Requires(preun): dkms >= 2.2.0.3 -Requires: gcc, make, perl, diffutils -Requires(post): gcc, make, perl, diffutils - -# Hold back kernel upgrades if kernel is not supported by ZFS -%if 0%{?rhel}%{?fedora}%{?mageia}%{?suse_version}%{?openEuler} -Requires: kernel-devel >= 4.18, kernel-devel <= 6.16.999 -Requires(post): kernel-devel >= 4.18, kernel-devel <= 6.16.999 -Conflicts: kernel-devel < 4.18, kernel-devel > 6.16.999 -Requires: kernel-uname-r >= 4.18, kernel-uname-r <= 6.16.999 -Requires(post): kernel-uname-r >= 4.18, kernel-uname-r <= 6.16.999 -Conflicts: kernel-uname-r < 4.18, kernel-uname-r > 6.16.999 - -Obsoletes: spl-dkms <= %{version} -%endif -Provides: %{module}-kmod = %{version} -AutoReqProv: no - -%if (0%{?fedora}%{?suse_version}%{?openEuler}) || (0%{?rhel} && 0%{?rhel} < 9) -# We don't directly use it, but if this isn't installed, rpmbuild as root can -# crash+corrupt rpmdb -# See issue #12071 -BuildRequires: ncompress -%endif - -%description -This package contains the dkms ZFS kernel modules. - -%prep -%setup -q -n %{module}-%{version} - -%build -%{mkconf} -n %{module} -v %{version} -f dkms.conf - -%install -if [ "$RPM_BUILD_ROOT" != "/" ]; then - rm -rf $RPM_BUILD_ROOT -fi -mkdir -p $RPM_BUILD_ROOT/usr/src/ -cp -rf ${RPM_BUILD_DIR}/%{module}-%{version} $RPM_BUILD_ROOT/usr/src/ - -%clean -if [ "$RPM_BUILD_ROOT" != "/" ]; then - rm -rf $RPM_BUILD_ROOT -fi - -%files -%defattr(-,root,root) -/usr/src/%{module}-%{version} - -%pre -echo "Running pre installation script: $0. Parameters: $*" -# We don't want any other versions lingering around in dkms. -# Tests with 'dnf' showed that in case of reinstall, or upgrade -# the preun scriptlet removed the version we are trying to install. -# Because of this, find all zfs dkms sources in /var/lib/dkms and -# remove them, if we find a matching version in dkms. - -dkms_root=/var/lib/dkms -if [ -d ${dkms_root}/%{module} ]; then - cd ${dkms_root}/%{module} - for x in [[:digit:]]*; do - [ -d "$x" ] || continue - otherver="$x" - opath="${dkms_root}/%{module}/${otherver}" - if [ "$otherver" != %{version} ]; then - # This is a workaround for a broken 'dkms status', we caused in a previous version. - # One day it might be not needed anymore, but it does not hurt to keep it. - if dkms status -m %{module} -v "$otherver" 2>&1 | grep "${opath}/source/dkms.conf does not exist" - then - echo "ERROR: dkms status is broken!" >&2 - if [ -L "${opath}/source" -a ! -d "${opath}/source" ] - then - echo "Trying to fix it by removing the symlink: ${opath}/source" >&2 - echo "You should manually remove ${opath}" >&2 - rm -f "${opath}/source" || echo "Removal failed!" >&2 - fi - fi - if [ `dkms status -m %{module} -v "$otherver" | grep -c %{module}` -gt 0 ]; then - echo "Removing old %{module} dkms modules version $otherver from all kernels." - dkms remove -m %{module} -v "$otherver" --all ||: - fi - fi - done - cd ${dkms_root} -fi - -# Uninstall this version of zfs dkms modules before installation of the package. -if [ `dkms status -m %{module} -v %{version} | grep -c %{module}` -gt 0 ]; then - echo "Removing %{module} dkms modules version %{version} from all kernels." - dkms remove -m %{module} -v %{version} --all ||: -fi - -%post -echo "Running post installation script: $0. Parameters: $*" -# Add the module to dkms, as reccommended in the dkms man page. -# This is generally rpm specfic. -# But this also may help, if we have a broken 'dkms status'. -# Because, if the sources are available and only the symlink pointing -# to them is missing, this will resolve the situation -echo "Adding %{module} dkms modules version %{version} to dkms." -dkms add -m %{module} -v %{version} %{!?not_rpm:--rpm_safe_upgrade} ||: - -# After installing the package, dkms install this zfs version for the current kernel. -# Force the overwriting of old modules to avoid diff warnings in dkms status. -# Or in case of a downgrade to overwrite newer versions. -# Or if some other backed up versions have been restored before. -echo "Installing %{module} dkms modules version %{version} for the current kernel." -dkms install --force -m %{module} -v %{version} ||: - -%preun -dkms_root="/var/lib/dkms/%{module}/%{version}" -echo "Running pre uninstall script: $0. Parameters: $*" -# In case of upgrade we do nothing. See above comment in pre hook. -if [ "$1" = "1" -o "$1" = "upgrade" ] ; then - echo "This is an upgrade. Skipping pre uninstall action." - exit 0 -fi - -# Check if we uninstall the package. In that case remove the dkms modules. -# '0' is the value for the first parameter for rpm packages. -# 'remove' or 'purge' are the possible names for deb packages. -if [ "$1" = "0" -o "$1" = "remove" -o "$1" = "purge" ] ; then - if [ `dkms status -m %{module} -v %{version} | grep -c %{module}` -gt 0 ]; then - echo "Removing %{module} dkms modules version %{version} from all kernels." - dkms remove -m %{module} -v %{version} --all %{!?not_rpm:--rpm_safe_upgrade} && exit 0 - fi - # If removing the modules failed, it might be because of the broken 'dkms status'. - if dkms status -m %{module} -v %{version} 2>&1 | grep "${dkms_root}/source/dkms.conf does not exist" - then - echo "ERROR: dkms status is broken!" >&2 - echo "You should manually remove ${dkms_root}" >&2 - echo "WARNING: installed modules in /lib/modules/`uname -r`/extra could not be removed automatically!" >&2 - fi -else - echo "Script parameter $1 did not match any removal condition." -fi - -exit 0 - diff --git a/fedora-43/SPECS/zfs.spec b/fedora-43/SPECS/zfs.spec deleted file mode 100644 index c99e841..0000000 --- a/fedora-43/SPECS/zfs.spec +++ /dev/null @@ -1,604 +0,0 @@ -%global _sbindir /sbin -%global _libdir /%{_lib} - -# Set the default udev directory based on distribution. -%if %{undefined _udevdir} -%if 0%{?rhel}%{?fedora}%{?centos}%{?suse_version}%{?openEuler} -%global _udevdir %{_prefix}/lib/udev -%else -%global _udevdir /lib/udev -%endif -%endif - -# Set the default udevrule directory based on distribution. -%if %{undefined _udevruledir} -%if 0%{?rhel}%{?fedora}%{?centos}%{?suse_version}%{?openEuler} -%global _udevruledir %{_prefix}/lib/udev/rules.d -%else -%global _udevruledir /lib/udev/rules.d -%endif -%endif - -# Set the default _bashcompletiondir directory based on distribution. -%if %{undefined _bashcompletiondir} -%if 0%{?rhel}%{?fedora}%{?centos}%{?suse_version}%{?openEuler} -%global _bashcompletiondir /etc/bash_completion.d -%else -%global _bashcompletiondir /usr/share/bash-completion -%endif -%endif - -# Set the default dracut directory based on distribution. -%if %{undefined _dracutdir} -%if 0%{?rhel}%{?fedora}%{?centos}%{?suse_version}%{?openEuler} -%global _dracutdir %{_prefix}/lib/dracut -%else -%global _dracutdir %{_prefix}/share/dracut -%endif -%endif - -%if %{undefined _initconfdir} -%global _initconfdir /etc/sysconfig -%endif - -%if %{undefined _unitdir} -%global _unitdir %{_prefix}/lib/systemd/system -%endif - -%if %{undefined _presetdir} -%global _presetdir %{_prefix}/lib/systemd/system-preset -%endif - -%if %{undefined _modulesloaddir} -%global _modulesloaddir %{_prefix}/lib/modules-load.d -%endif - -%if %{undefined _systemdgeneratordir} -%global _systemdgeneratordir %{_prefix}/lib/systemd/system-generators -%endif - -%if %{undefined _pkgconfigdir} -%global _pkgconfigdir %{_prefix}/%{_lib}/pkgconfig -%endif - -%bcond_with debug -%bcond_with debuginfo -%bcond_with asan -%bcond_with ubsan -%bcond_with systemd -%bcond_with pam -%bcond_without pyzfs - -# Generic enable switch for systemd -%if %{with systemd} -%define _systemd 1 -%endif - -# Distros below support systemd -%if 0%{?rhel}%{?fedora}%{?centos}%{?suse_version}%{?openEuler} -%define _systemd 1 -%endif - -# When not specified default to distribution provided version. -%if %{undefined __use_python} -%define __python /usr/bin/python3 -%define __python_pkg_version 3 -%else -%define __python %{__use_python} -%define __python_pkg_version %{__use_python_pkg_version} -%endif -%define __python_sitelib %(%{__python} -Esc " -import sysconfig; -if hasattr(sysconfig, 'get_default_scheme'): - scheme = sysconfig.get_default_scheme() -else: - scheme = sysconfig._get_default_scheme() -if scheme == 'posix_local': - scheme = 'posix_prefix' -prefix = '%{_prefix}' -if prefix == 'NONE': - prefix = '%{ac_default_prefix}' -sitedir = sysconfig.get_path('purelib', scheme, vars={'base': prefix}) -print(sitedir);" 2>/dev/null || %{__python} -Esc "from distutils import sysconfig; print(sysconfig.get_python_lib(0,0))") - -Name: zfs -Version: 2.3.4 -Release: 1%{?dist} -Summary: Commands to control the kernel modules and libraries - -Group: System Environment/Kernel -License: CDDL -URL: https://github.com/openzfs/zfs -Source0: %{name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Requires: libzpool6%{?_isa} = %{version}-%{release} -Requires: libnvpair3%{?_isa} = %{version}-%{release} -Requires: libuutil3%{?_isa} = %{version}-%{release} -Requires: libzfs6%{?_isa} = %{version}-%{release} -Requires: %{name}-kmod = %{version} -Provides: %{name}-kmod-common = %{version}-%{release} -Obsoletes: spl <= %{version} - -# zfs-fuse provides the same commands and man pages that OpenZFS does. -# Renaming those on either side would conflict with all available documentation. -Conflicts: zfs-fuse - -%if 0%{?rhel}%{?centos}%{?fedora}%{?suse_version}%{?openEuler} -BuildRequires: gcc, make -BuildRequires: zlib-devel -BuildRequires: libuuid-devel -BuildRequires: libblkid-devel -BuildRequires: libudev-devel -BuildRequires: libattr-devel -BuildRequires: openssl-devel -%if 0%{?fedora}%{?suse_version}%{?openEuler} || 0%{?rhel} >= 8 || 0%{?centos} >= 8 -BuildRequires: libtirpc-devel -%endif - -%if (0%{?fedora}%{?suse_version}%{?openEuler}) || (0%{?rhel} && 0%{?rhel} < 9) -# We don't directly use it, but if this isn't installed, rpmbuild as root can -# crash+corrupt rpmdb -# See issue #12071 -BuildRequires: ncompress -%endif - -Requires: openssl -%if 0%{?_systemd} -BuildRequires: systemd -%endif - -%endif - -%if 0%{?_systemd} -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -%endif - -# The zpool iostat/status -c scripts call some utilities like lsblk and iostat -Requires: util-linux -Requires: sysstat - -%description -This package contains the core ZFS command line utilities. - -%package -n libzpool6 -Summary: Native ZFS pool library for Linux -Group: System Environment/Kernel -Obsoletes: libzpool2 <= %{version} -Obsoletes: libzpool4 <= %{version} -Obsoletes: libzpool5 <= %{version} - -%description -n libzpool6 -This package contains the zpool library, which provides support -for managing zpools - -%if %{defined ldconfig_scriptlets} -%ldconfig_scriptlets -n libzpool6 -%else -%post -n libzpool6 -p /sbin/ldconfig -%postun -n libzpool6 -p /sbin/ldconfig -%endif - -%package -n libnvpair3 -Summary: Solaris name-value library for Linux -Group: System Environment/Kernel -Obsoletes: libnvpair1 <= %{version} - -%description -n libnvpair3 -This package contains routines for packing and unpacking name-value -pairs. This functionality is used to portably transport data across -process boundaries, between kernel and user space, and can be used -to write self describing data structures on disk. - -%if %{defined ldconfig_scriptlets} -%ldconfig_scriptlets -n libnvpair3 -%else -%post -n libnvpair3 -p /sbin/ldconfig -%postun -n libnvpair3 -p /sbin/ldconfig -%endif - -%package -n libuutil3 -Summary: Solaris userland utility library for Linux -Group: System Environment/Kernel -Obsoletes: libuutil1 <= %{version} - -%description -n libuutil3 -This library provides a variety of compatibility functions for OpenZFS: - * libspl: The Solaris Porting Layer userland library, which provides APIs - that make it possible to run Solaris user code in a Linux environment - with relatively minimal modification. - * libavl: The Adelson-Velskii Landis balanced binary tree manipulation - library. - * libefi: The Extensible Firmware Interface library for GUID disk - partitioning. - * libshare: NFS, SMB, and iSCSI service integration for ZFS. - -%if %{defined ldconfig_scriptlets} -%ldconfig_scriptlets -n libuutil3 -%else -%post -n libuutil3 -p /sbin/ldconfig -%postun -n libuutil3 -p /sbin/ldconfig -%endif - -# The library version is encoded in the package name. When updating the -# version information it is important to add an obsoletes line below for -# the previous version of the package. -%package -n libzfs6 -Summary: Native ZFS filesystem library for Linux -Group: System Environment/Kernel -Obsoletes: libzfs2 <= %{version} -Obsoletes: libzfs4 <= %{version} -Obsoletes: libzfs5 <= %{version} - -%description -n libzfs6 -This package provides support for managing ZFS filesystems - -%if %{defined ldconfig_scriptlets} -%ldconfig_scriptlets -n libzfs6 -%else -%post -n libzfs6 -p /sbin/ldconfig -%postun -n libzfs6 -p /sbin/ldconfig -%endif - -%package -n libzfs6-devel -Summary: Development headers -Group: System Environment/Kernel -Requires: libzfs6%{?_isa} = %{version}-%{release} -Requires: libzpool6%{?_isa} = %{version}-%{release} -Requires: libnvpair3%{?_isa} = %{version}-%{release} -Requires: libuutil3%{?_isa} = %{version}-%{release} -Provides: libzpool6-devel = %{version}-%{release} -Provides: libnvpair3-devel = %{version}-%{release} -Provides: libuutil3-devel = %{version}-%{release} -Obsoletes: zfs-devel <= %{version} -Obsoletes: libzfs2-devel <= %{version} -Obsoletes: libzfs4-devel <= %{version} -Obsoletes: libzfs5-devel <= %{version} - -%description -n libzfs6-devel -This package contains the header files needed for building additional -applications against the ZFS libraries. - -%package test -Summary: Test infrastructure -Group: System Environment/Kernel -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: parted -Requires: lsscsi -Requires: mdadm -Requires: bc -Requires: ksh -Requires: fio -Requires: acl -Requires: sudo -Requires: sysstat -Requires: libaio -Requires: python%{__python_pkg_version} -%if 0%{?rhel}%{?centos}%{?fedora}%{?suse_version}%{?openEuler} -BuildRequires: libaio-devel -%endif -AutoReqProv: no - -%description test -This package contains test infrastructure and support scripts for -validating the file system. - -%package dracut -Summary: Dracut module -Group: System Environment/Kernel -BuildArch: noarch -Requires: %{name} >= %{version} -Requires: dracut -Requires: /usr/bin/awk -Requires: grep - -%description dracut -This package contains a dracut module used to construct an initramfs -image which is ZFS aware. - -%if %{with pyzfs} -# Enforce `python36-` package prefix for CentOS 7 -# since dependencies come from EPEL and are named this way -%package -n python%{__python_pkg_version}-pyzfs -Summary: Python %{python_version} wrapper for libzfs_core -Group: Development/Languages/Python -License: Apache-2.0 -BuildArch: noarch -Requires: libzfs6 = %{version}-%{release} -Requires: libnvpair3 = %{version}-%{release} -Requires: libffi -Requires: python%{__python_pkg_version} - -%if 0%{?centos} == 7 -Requires: python36-cffi -%else -Requires: python%{__python_pkg_version}-cffi -%endif - -%if 0%{?rhel}%{?centos}%{?fedora}%{?suse_version}%{?openEuler} -%if 0%{?centos} == 7 -BuildRequires: python36-packaging -BuildRequires: python36-devel -BuildRequires: python36-cffi -BuildRequires: python36-setuptools -%else -BuildRequires: python%{__python_pkg_version}-packaging -BuildRequires: python%{__python_pkg_version}-devel -BuildRequires: python%{__python_pkg_version}-cffi -BuildRequires: python%{__python_pkg_version}-setuptools -%endif - -BuildRequires: libffi-devel -%endif - -%description -n python%{__python_pkg_version}-pyzfs -This package provides a python wrapper for the libzfs_core C library. -%endif - -%if 0%{?_initramfs} -%package initramfs -Summary: Initramfs module -Group: System Environment/Kernel -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: initramfs-tools - -%description initramfs -This package contains a initramfs module used to construct an initramfs -image which is ZFS aware. -%endif - -%if %{with pam} -%package -n pam_zfs_key -Summary: PAM module for encrypted ZFS datasets - -%if 0%{?rhel}%{?centos}%{?fedora}%{?suse_version}%{?openEuler} -BuildRequires: pam-devel -%endif - -%description -n pam_zfs_key -This package contains the pam_zfs_key PAM module, which provides -support for unlocking datasets on user login. -%endif - -%prep -%if %{with debug} - %define debug --enable-debug -%else - %define debug --disable-debug -%endif - -%if %{with debuginfo} - %define debuginfo --enable-debuginfo -%else - %define debuginfo --disable-debuginfo -%endif - -%if %{with asan} - %define asan --enable-asan -%else - %define asan --disable-asan -%endif - -%if %{with ubsan} - %define ubsan --enable-ubsan -%else - %define ubsan --disable-ubsan -%endif - -%if 0%{?_systemd} - %define systemd --enable-systemd --with-systemdunitdir=%{_unitdir} --with-systemdpresetdir=%{_presetdir} --with-systemdmodulesloaddir=%{_modulesloaddir} --with-systemdgeneratordir=%{_systemdgeneratordir} --disable-sysvinit - %define systemd_svcs zfs-import-cache.service zfs-import-scan.service zfs-mount.service zfs-mount@.service zfs-share.service zfs-zed.service zfs.target zfs-import.target zfs-volume-wait.service zfs-volumes.target -%else - %define systemd --enable-sysvinit --disable-systemd -%endif - -%if %{with pyzfs} - %define pyzfs --enable-pyzfs -%else - %define pyzfs --disable-pyzfs -%endif - -%if %{with pam} - %define pam --enable-pam -%else - %define pam --disable-pam -%endif - -%setup -q - -%build -%configure \ - --with-config=user \ - --with-udevdir=%{_udevdir} \ - --with-udevruledir=%{_udevruledir} \ - --with-dracutdir=%{_dracutdir} \ - --with-pamconfigsdir=%{_datadir}/pam-configs \ - --with-pammoduledir=%{_libdir}/security \ - --with-python=%{__python} \ - --with-pkgconfigdir=%{_pkgconfigdir} \ - --disable-static \ - %{debug} \ - %{debuginfo} \ - %{asan} \ - %{ubsan} \ - %{systemd} \ - %{pam} \ - %{pyzfs} -make %{?_smp_mflags} - -%install -%{__rm} -rf $RPM_BUILD_ROOT -make install DESTDIR=%{?buildroot} -find %{?buildroot}%{_libdir} -name '*.la' -exec rm -f {} \; -%if 0%{!?__brp_mangle_shebangs:1} -find %{?buildroot}%{_bindir} \ - \( -name arc_summary -or -name arcstat -or -name dbufstat \ - -or -name zilstat \) \ - -exec %{__sed} -i 's|^#!.*|#!%{__python}|' {} \; -find %{?buildroot}%{_datadir} \ - \( -name test-runner.py -or -name zts-report.py \) \ - -exec %{__sed} -i 's|^#!.*|#!%{__python}|' {} \; -%endif - -%post -%if 0%{?_systemd} -%if 0%{?systemd_post:1} -%systemd_post %{systemd_svcs} -%else -if [ "$1" = "1" -o "$1" = "install" ] ; then - # Initial installation - systemctl preset %{systemd_svcs} >/dev/null || true -fi -%endif -%else -if [ -x /sbin/chkconfig ]; then - /sbin/chkconfig --add zfs-import - /sbin/chkconfig --add zfs-load-key - /sbin/chkconfig --add zfs-mount - /sbin/chkconfig --add zfs-share - /sbin/chkconfig --add zfs-zed -fi -%endif -exit 0 - -# On RHEL/CentOS 7 the static nodes aren't refreshed by default after -# installing a package. This is the default behavior for Fedora. -%posttrans -%if 0%{?rhel} == 7 || 0%{?centos} == 7 -systemctl restart kmod-static-nodes -systemctl restart systemd-tmpfiles-setup-dev -udevadm trigger -%endif - -%preun -%if 0%{?_systemd} -%if 0%{?systemd_preun:1} -%systemd_preun %{systemd_svcs} -%else -if [ "$1" = "0" -o "$1" = "remove" ] ; then - # Package removal, not upgrade - systemctl --no-reload disable %{systemd_svcs} >/dev/null || true - systemctl stop %{systemd_svcs} >/dev/null || true -fi -%endif -%else -if [ "$1" = "0" -o "$1" = "remove" ] && [ -x /sbin/chkconfig ]; then - /sbin/chkconfig --del zfs-import - /sbin/chkconfig --del zfs-load-key - /sbin/chkconfig --del zfs-mount - /sbin/chkconfig --del zfs-share - /sbin/chkconfig --del zfs-zed -fi -%endif -exit 0 - -%postun -%if 0%{?_systemd} -%if 0%{?systemd_postun:1} -%systemd_postun %{systemd_svcs} -%else -systemctl --system daemon-reload >/dev/null || true -%endif -%endif - -%files -# Core utilities -%{_sbindir}/* -%{_bindir}/raidz_test -%{_bindir}/zvol_wait -# Optional Python 3 scripts -%{_bindir}/arc_summary -%{_bindir}/arcstat -%{_bindir}/dbufstat -%{_bindir}/zilstat -# Man pages -%{_mandir}/man1/* -%{_mandir}/man4/* -%{_mandir}/man5/* -%{_mandir}/man7/* -%{_mandir}/man8/* -# Configuration files and scripts -%{_libexecdir}/%{name} -%{_udevdir}/vdev_id -%{_udevdir}/zvol_id -%{_udevdir}/rules.d/* -%{_datadir}/%{name}/compatibility.d -%if ! 0%{?_systemd} || 0%{?_initramfs} -# Files needed for sysvinit and initramfs-tools -%{_sysconfdir}/%{name}/zfs-functions -%config(noreplace) %{_initconfdir}/zfs -%else -%exclude %{_sysconfdir}/%{name}/zfs-functions -%exclude %{_initconfdir}/zfs -%endif -%if 0%{?_systemd} -%{_unitdir}/* -%{_presetdir}/* -%{_modulesloaddir}/* -%{_systemdgeneratordir}/* -%else -%config(noreplace) %{_sysconfdir}/init.d/* -%endif -%config(noreplace) %{_sysconfdir}/%{name}/zed.d/* -%config(noreplace) %{_sysconfdir}/%{name}/zpool.d/* -%config(noreplace) %{_sysconfdir}/%{name}/vdev_id.conf.*.example -%attr(440, root, root) %config(noreplace) %{_sysconfdir}/sudoers.d/* - -%config(noreplace) %{_bashcompletiondir}/zfs -%config(noreplace) %{_bashcompletiondir}/zpool - -%files -n libzpool6 -%{_libdir}/libzpool.so.* - -%files -n libnvpair3 -%{_libdir}/libnvpair.so.* - -%files -n libuutil3 -%{_libdir}/libuutil.so.* - -%files -n libzfs6 -%{_libdir}/libzfs*.so.* - -%files -n libzfs6-devel -%{_pkgconfigdir}/libzfs.pc -%{_pkgconfigdir}/libzfsbootenv.pc -%{_pkgconfigdir}/libzfs_core.pc -%{_libdir}/*.so -%{_includedir}/* -%doc AUTHORS COPYRIGHT LICENSE NOTICE README.md - -%files test -%{_datadir}/%{name}/zfs-tests -%{_datadir}/%{name}/test-runner -%{_datadir}/%{name}/runfiles -%{_datadir}/%{name}/*.sh - -%files dracut -%doc contrib/dracut/README.md -%{_dracutdir}/modules.d/* - -%if %{with pyzfs} -%files -n python%{__python_pkg_version}-pyzfs -%doc contrib/pyzfs/README -%doc contrib/pyzfs/LICENSE -%defattr(-,root,root,-) -%{__python_sitelib}/libzfs_core/* -%{__python_sitelib}/pyzfs* -%endif - -%if 0%{?_initramfs} -%files initramfs -%doc contrib/initramfs/README.md -/usr/share/initramfs-tools/* -%else -# Since we're not building the initramfs package, -# ignore those files. -%exclude /usr/share/initramfs-tools -%endif - -%if %{with pam} -%files -n pam_zfs_key -%{_libdir}/security/* -%{_datadir}/pam-configs/* -%endif diff --git a/update.sh b/update.sh index 2e538aa..c594f3d 100755 --- a/update.sh +++ b/update.sh @@ -10,7 +10,9 @@ for v in 41 42 43; do echo "Downloading libvirt source for Fedora $v..." dnf download --repofrompath=$dist,https://dl.fedoraproject.org/pub/fedora/linux/releases/$v/Everything/source/tree/ --repofrompath=$dist-updates,https://dl.fedoraproject.org/pub/fedora/linux/updates/$v/Everything/source/tree/ --repo="$dist" --repo="$dist-updates" --source libvirt --destdir $dist/SRPMS/ echo "Downloading zfs source for Fedora $v..." - dnf download --repofrompath=zfs-$dist,http://download.zfsonlinux.org/fedora/42/SRPMS/ --repo=zfs-$dist --source zfs zfs-dkms --destdir $dist/SRPMS/ + if ! dnf download --repofrompath=zfs-$dist,http://download.zfsonlinux.org/fedora/$v/SRPMS/ --repo=zfs-$dist --source zfs zfs-dkms --destdir $dist/SRPMS/; then + echo "ZFS source RPM not found for Fedora $v, skipping..." + fi echo "Importing source RPMs for Fedora $v..." rpm -ivh "--define=_topdir $PWD/$dist" $dist/SRPMS/*.src.rpm done @@ -21,7 +23,9 @@ for v in 9 10; do echo "Downloading libvirt source for CentOS Stream $v..." dnf download --repofrompath=$dist,https://mirror.stream.centos.org/$v-stream/AppStream/source/tree/ --repo="$dist" --source libvirt --destdir $dist/SRPMS/ echo "Downloading zfs source for CentOS Stream $v..." - dnf download --repofrompath=zfs-$dist,http://download.zfsonlinux.org/epel/10/SRPMS/ --repo=zfs-$dist --source zfs zfs-dkms --destdir $dist/SRPMS/ + if ! dnf download --repofrompath=zfs-$dist,http://download.zfsonlinux.org/epel/$v/SRPMS/ --repo=zfs-$dist --source zfs zfs-dkms --destdir $dist/SRPMS/; then + echo "ZFS source RPM not found for CentOS Stream $v, skipping..." + fi echo "Importing source RPMs for CentOS Stream $v..." rpm -ivh "--define=_topdir $PWD/$dist" $dist/SRPMS/*.src.rpm done