Compare commits

..

1 commit

Author SHA1 Message Date
Dan Horák
b2d742e18d add installer workaround for zipl >= 2.25.0 2023-01-31 15:28:14 +01:00
8 changed files with 178 additions and 418 deletions

1
.gitignore vendored
View file

@ -6,4 +6,3 @@ src_vipa-2.0.4.tar.gz
/src_vipa-2.1.0.tar.gz
/s390-tools-*.tar.bz2
/s390-tools-*.tar.gz
/s390-tools-*-rust-vendor.tar.xz

View file

@ -54,25 +54,21 @@ EOF
case "$COMMAND" in
add)
if [[ "${KERNEL_DIR}" != "/boot" ]]; then
# rename to match the name used in the pseudo-BLS snippet above
cp --remove-destination --preserve=timestamps -T "${KERNEL_IMAGE}" "/boot/vmlinuz-${KERNEL_VERSION}"
command -v restorecon &>/dev/null && \
restorecon -R "/boot/vmlinuz-${KERNEL_VERSION}"
for i in \
"$KERNEL_IMAGE" \
"$KERNEL_DIR"/System.map \
"$KERNEL_DIR"/config \
"$KERNEL_DIR"/zImage.stub
do
[[ -e "$i" ]] || continue
cp --preserve=timestamps -T "$i" "/boot/${i##*/}-${KERNEL_VERSION}"
cp -aT "$i" "/boot/${i##*/}-${KERNEL_VERSION}"
command -v restorecon &>/dev/null && \
restorecon -R "/boot/${i##*/}-${KERNEL_VERSION}"
done
# hmac is .vmlinuz-<version>.hmac so needs a special treatment
i="$KERNEL_DIR/.${KERNEL_IMAGE##*/}.hmac"
if [[ -e "$i" ]]; then
cp --preserve=timestamps "$i" "/boot/.${KERNEL_IMAGE##*/}-${KERNEL_VERSION}.hmac"
cp -a "$i" "/boot/.${KERNEL_IMAGE##*/}-${KERNEL_VERSION}.hmac"
command -v restorecon &>/dev/null && \
restorecon "/boot/.${KERNEL_IMAGE##*/}-${KERNEL_VERSION}.hmac"
fi
@ -95,7 +91,7 @@ case "$COMMAND" in
[[ -d "$BLS_DIR" ]] || mkdir -m 0700 -p "$BLS_DIR"
BLS_TARGET="${BLS_DIR}/${MACHINE_ID}-${KERNEL_VERSION}.conf"
if [[ -f "${KERNEL_DIR}/bls.conf" ]]; then
cp --preserve=timestamps -T "${KERNEL_DIR}/bls.conf" "${BLS_TARGET}" || exit $?
cp -aT "${KERNEL_DIR}/bls.conf" "${BLS_TARGET}" || exit $?
sed -i -e "s,^linux.*,linux /boot/vmlinuz-${KERNEL_VERSION},g" "${BLS_TARGET}"
sed -i -e "s,^initrd.*,initrd /boot/initramfs-${KERNEL_VERSION}.img,g" "${BLS_TARGET}"
sed -i -e "s#^options.*#options ${BOOT_OPTIONS[*]}#g" "${BLS_TARGET}"
@ -116,7 +112,7 @@ case "$COMMAND" in
if [ "x${MAKEDEBUG}" = "xyes" ]; then
BLS_DEBUG="$(echo ${BLS_TARGET} | sed -e "s/${KERNEL_VERSION}/${KERNEL_VERSION}~debug/")"
cp --preserve=timestamps -T "${BLS_TARGET}" "${BLS_DEBUG}"
cp -aT "${BLS_TARGET}" "${BLS_DEBUG}"
TITLE="$(grep '^title[ \t]' "${BLS_DEBUG}" | sed -e 's/^title[ \t]*//')"
VERSION="$(grep '^version[ \t]' "${BLS_DEBUG}" | sed -e 's/^version[ \t]*//')"
BLSID="$(grep '^id[ \t]' "${BLS_DEBUG}" | sed -e "s/${KERNEL_VERSION}/${KERNEL_VERSION}~debug/")"

View file

@ -1,9 +0,0 @@
---
pathmigration:
excluded_paths:
- /lib/s390-tools
badfuncs:
allowed:
/usr/bin/qethqoat:
- inet_ntoa

View file

@ -1,4 +1,4 @@
From b2daaa34776ba6afec879e362378f6f7563590a6 Mon Sep 17 00:00:00 2001
From a17c57bf2b7b6d64a509cb5fb02fe46849bc550c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
Date: Mon, 20 Jun 2022 17:43:05 +0200
Subject: [PATCH 1/2] Revert "zipl/src: Implement sorting bls entries by
@ -194,10 +194,10 @@ index 0cea1d4..9352f76 100644
return n;
--
2.39.2
2.37.3
From 692e70bcfc32a05e30146bd7077c41e0eaceff03 Mon Sep 17 00:00:00 2001
From 7a51cfc15b870d90bffe1e24a1da922663ffe1d7 Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Mon, 20 Jun 2022 17:46:59 +0200
Subject: [PATCH 2/2] blscfg: sort like rpm nvr, not like a single version
@ -213,7 +213,7 @@ Signed-off-by: Dan Horák <dan@danny.cz>
2 files changed, 95 insertions(+), 2 deletions(-)
diff --git a/zipl/src/Makefile b/zipl/src/Makefile
index cab5655..7ec215d 100644
index 64eabe4..7043005 100644
--- a/zipl/src/Makefile
+++ b/zipl/src/Makefile
@@ -9,6 +9,7 @@ ALL_LDFLAGS += -Wl,-z,noexecstack $(NO_PIE_LDFLAGS)
@ -223,7 +223,7 @@ index cab5655..7ec215d 100644
+ -lrpmio -lrpm
objects = misc.o error.o scan.o job.o boot.o bootmap.o fs-map.o disk.o \
bootmap_header.o envblk.o install.o zipl.o
bootmap_header.o envblk.o install.o zipl.o $(rootdir)/zipl/boot/data.o
diff --git a/zipl/src/scan.c b/zipl/src/scan.c
index 9352f76..3327e2d 100644
--- a/zipl/src/scan.c
@ -344,5 +344,5 @@ index 9352f76..3327e2d 100644
static int
scan_append_section_heading(struct scan_token* scan, int* index, char* name);
--
2.39.2
2.37.3

View file

@ -0,0 +1,108 @@
From d721eb018973842a432869f6f9efd5752b2e7f19 Mon Sep 17 00:00:00 2001
From: Marc Hartmayer <mhartmay@linux.ibm.com>
Date: Mon, 19 Dec 2022 09:51:51 +0000
Subject: [PATCH 1/3] zgetdump/Makefile: don't use `.check_dep_zgetdump` as
linker input
The `.check_dep_zgetdump` file is used to cache the result of the
dependency checks and should not be used as input for linking or
anything else. Let's add it as dependency for the objects file. This
shouldn't cause any problems since the Makefile rule for object files is
defined in `common.mak` as follows:
%.o: %.c
$(CC) $(ALL_CPPFLAGS) $(ALL_CFLAGS) -c $< -o $@
Fixes: https://github.com/ibm-s390-linux/s390-tools/issues/147
Fixes: 8d8d5e9746a4 ("zdump: Fix Makefile dependencies")
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: Jan Hoeppner <hoeppner@linux.ibm.com>
Signed-off-by: Jan Hoeppner <hoeppner@linux.ibm.com>
---
zdump/Makefile | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/zdump/Makefile b/zdump/Makefile
index ca8aadc..934dc47 100644
--- a/zdump/Makefile
+++ b/zdump/Makefile
@@ -119,7 +119,9 @@ libs = $(rootdir)/libutil/libutil.a $(LIBPV)
all: $(BUILD_TARGETS)
-zgetdump: .check_dep_zgetdump $(OBJECTS) $(libs)
+$(OBJECTS): .check_dep_zgetdump
+
+zgetdump: $(OBJECTS) $(libs)
skip-zgetdump:
echo " SKIP zgetdump due to unresolved dependencies"
--
2.39.1
From d9f54f76e2e6f17e0b5bafdc0d09ff0e72edd474 Mon Sep 17 00:00:00 2001
From: Ingo Franzki <ifranzki@linux.ibm.com>
Date: Fri, 20 Jan 2023 11:04:18 +0100
Subject: [PATCH 2/3] zkey: Support EP11 host library version 4
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Try to load libep11.so.4 if available, but fallback to older
library versions if not.
Reviewed-by: Jörg Schmidbauer <jschmidb@de.ibm.com>
Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
Signed-off-by: Steffen Eiden <seiden@linux.ibm.com>
---
zkey/ep11.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/zkey/ep11.c b/zkey/ep11.c
index 58dc3c5..8359929 100644
--- a/zkey/ep11.c
+++ b/zkey/ep11.c
@@ -35,7 +35,7 @@
* Definitions for the EP11 library
*/
#define EP11_LIBRARY_NAME "libep11.so"
-#define EP11_LIBRARY_VERSION 3
+#define EP11_LIBRARY_VERSION 4
#define EP11_WEB_PAGE "http://www.ibm.com/security/cryptocards"
/**
--
2.39.1
From 4ccda5b241a8e5e98c2e17bce1d1fe450d30660f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
Date: Tue, 31 Jan 2023 09:52:23 +0100
Subject: [PATCH 3/3] workaround for installers in F<=37
zipl changed a string that is parsed by the install in release 2.25.0
making it impossible to finish the installation without manual
intervention. But there is a workaroiund to make the string look as
expected by the installer. It will unblock installations of Fedora 37 or
older with the updates repo enabled.
---
zipl/src/install.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/zipl/src/install.c b/zipl/src/install.c
index 4d14627..5886246 100644
--- a/zipl/src/install.c
+++ b/zipl/src/install.c
@@ -345,7 +345,7 @@ int install_bootloader(struct job_data *job, struct install_set *bis)
int fd, rc;
/* Inform user about what we're up to */
- printf("Preparing boot device for %sIPL: ",
+ printf("Preparing boot device: for %sIPL: ",
disk_get_ipl_type(info->type));
if (info->name) {
printf("%s", info->name);
--
2.39.1

View file

@ -1,57 +1,21 @@
# secure boot support is for RHEL only
%if 0%{?rhel} >= 8
%bcond_without signzipl
%else
%bcond_with signzipl
%global signzipl 1
%endif
%if 0%{?fedora}
%bcond_without pandoc
%else
%bcond_with pandoc
%global with_pandoc 1
%endif
# Also controls whether %%cargo_generate_buildrequires generates dev-dependencies
%bcond_without check
Name: s390utils
Summary: Utilities and daemons for IBM z Systems
Version: 2.40.0
Release: 1%{?dist}
Version: 2.25.0
Release: 4%{?dist}
Epoch: 2
# MIT covers nearly all the files, except init files (LGPL-2.1-or-later)
#
# Statically-linked Rust dependencies contribute additional license terms,
# listed in the output of %%{cargo_license_summary}:
#
# (MIT OR Apache-2.0) AND Unicode-DFS-2016
# Apache-2.0
# Apache-2.0 OR BSL-1.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-2-Clause OR Apache-2.0 OR MIT
# MIT
# MIT OR Apache-2.0
# Unlicense OR MIT
%global extra_licenses_from_rust_deps %{shrink:
Apache-2.0 AND
(Apache-2.0 OR BSL-1.0) AND
(Apache-2.0 OR MIT) AND
(Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND
(BSD-2-Clause OR Apache-2.0 OR MIT) AND
Unicode-DFS-2016 AND
(Unlicense OR MIT)
}
License: MIT AND LGPL-2.1-or-later AND %{extra_licenses_from_rust_deps}
License: MIT
ExclusiveArch: s390 s390x
URL: https://github.com/ibm-s390-linux/s390-tools
Source0: https://github.com/ibm-s390-linux/s390-tools/archive/v%{version}.tar.gz#/s390-tools-%{version}.tar.gz
# To create the vendor tarball:
# tar xf s390-tools-%%{version}.tar.gz ; pushd s390-tools-%%{version}/rust ; \
# rm -f Cargo.lock && cargo vendor && \
# tar Jvcf ../../s390-tools-%%{version}-rust-vendor.tar.xz vendor/ ; popd
%if 0%{?rhel}
Source1: s390-tools-%{version}-rust-vendor.tar.xz
%endif
Source5: https://fedorapeople.org/cgit/sharkcz/public_git/utils.git/tree/zfcpconf.sh
Source7: https://fedorapeople.org/cgit/sharkcz/public_git/utils.git/tree/zfcp.udev
Source12: https://fedorapeople.org/cgit/sharkcz/public_git/utils.git/tree/dasd.udev
@ -65,7 +29,7 @@ Source23: 20-zipl-kernel.install
Source24: 52-zipl-rescue.install
Source25: 91-zipl.install
%if %{with signzipl}
%if 0%{?signzipl}
%define pesign_name redhatsecureboot302
%endif
@ -74,18 +38,8 @@ Patch0: s390-tools-zipl-invert-script-options.patch
Patch1: s390-tools-zipl-blscfg-rpm-nvr-sort.patch
# upstream fixes/updates
#Patch100: s390utils-%%{version}-fedora.patch
Patch100: s390utils-%%{version}-fedora.patch
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
# Add Provides for upstream name
Provides: s390-tools = %{epoch}:%{version}-%{release}
%ifarch s390x
#
# s390x/native package structure
#
Requires: s390utils-core = %{epoch}:%{version}-%{release}
Requires: s390utils-base = %{epoch}:%{version}-%{release}
Requires: s390utils-osasnmpd = %{epoch}:%{version}-%{release}
@ -93,23 +47,9 @@ Requires: s390utils-cpuplugd = %{epoch}:%{version}-%{release}
Requires: s390utils-mon_statd = %{epoch}:%{version}-%{release}
Requires: s390utils-iucvterm = %{epoch}:%{version}-%{release}
Requires: s390utils-ziomon = %{epoch}:%{version}-%{release}
%else
#
# multiarch package structure
#
Requires: s390utils-se-data = %{epoch}:%{version}-%{release}
%endif
BuildRequires: make
BuildRequires: gcc-c++
BuildRequires: glib2-devel
%if 0%{?rhel}
BuildRequires: libcurl-devel
BuildRequires: openssl-devel
BuildRequires: rust-toolset
%else
BuildRequires: cargo-rpm-macros >= 24
%endif
%description
This is a meta package for installing the default s390-tools sub packages.
@ -120,81 +60,49 @@ The s390utils packages contain a set of user space utilities that should to
be used together with the zSeries (s390) Linux kernel and device drivers.
%prep
%autosetup -n s390-tools-%{version} -p1
%setup -q -n s390-tools-%{version}
%if 0%{?rhel}
pushd rust
tar xf %{SOURCE1}
%cargo_prep -v vendor
popd
%else
%cargo_prep
%endif
rm ./rust/Cargo.lock
# Fedora/RHEL changes
%patch0 -p1 -b .zipl-invert-script-options
%patch1 -p1 -b .blscfg-rpm-nvr-sort
# Create sysusers config files
echo 'g zkeyadm' > s390utils-base.conf.usr
echo 'g ts-shell' > s390utils-iucvterm.conf.usr
echo 'g cpacfstats' > s390utils-cpacfstatsd.conf.usr
# upstream fixes/updates
%patch100 -p1
# Create tmpfiles config files
echo 'd /var/log/ts-shell 2770 root ts-shell' > s390utils-iucvterm.conf.tmp
# drop -Werror from genprotimg to allow building with GCC 12
sed -i.bak -e 's/-Werror//g' genprotimg/src/Makefile genprotimg/boot/Makefile
# remove --strip from install
find . -name Makefile | xargs sed -i 's/$(INSTALL) -s/$(INSTALL)/g'
%if !0%{?rhel}
%generate_buildrequires
pushd rust >/dev/null
%cargo_generate_buildrequires
popd >/dev/null
%endif
%build
make \
CFLAGS="%{build_cflags}" CXXFLAGS="%{build_cxxflags}" LDFLAGS="%{build_ldflags}" \
HAVE_DRACUT=1 \
%if %{with pandoc}
%if 0%{?with_pandoc}
ENABLE_DOC=1 \
%endif
NO_PIE_LDFLAGS="" \
%if "%{_sbindir}" == "%{_bindir}"
BINDIR=/usr/bin \
USRSBINDIR=/usr/bin \
%else
BINDIR=/usr/sbin \
%endif
DISTRELEASE=%{release} \
V=1
pushd rust
%cargo_license_summary
%{cargo_license} > LICENSE.dependencies
%if 0%{?rhel}
%cargo_vendor_manifest
%endif
popd
%install
%make_install \
make install \
HAVE_DRACUT=1 \
%if %{with pandoc}
%if 0%{?with_pandoc}
ENABLE_DOC=1 \
%endif
%if "%{_sbindir}" == "%{_bindir}"
BINDIR=/usr/bin \
USRSBINDIR=/usr/bin \
%else
DESTDIR=%{buildroot} \
BINDIR=/usr/sbin \
%endif
SYSTEMDSYSTEMUNITDIR=%{_unitdir} \
DISTRELEASE=%{release} \
V=1
%ifarch s390x
#
# s390x/native specific %%install section
#
# sign the stage3 bootloader
%if %{with signzipl}
%if 0%{?signzipl}
if [ -x /usr/bin/rpm-sign ]; then
pushd %{buildroot}/lib/s390-tools/
rpm-sign --key "%{pesign_name}" --lkmsign stage3.bin --output stage3.signed
@ -207,7 +115,6 @@ fi
# move tools to searchable dir
mv %{buildroot}%{_datadir}/s390-tools/netboot/mk-s390image %{buildroot}%{_bindir}
mv %{buildroot}%{_datadir}/s390-tools/netboot/mk-s390image.1 %{buildroot}%{_mandir}/man1
mkdir -p %{buildroot}{/boot,%{_udevrulesdir},%{_sysconfdir}/{profile.d,sysconfig},%{_prefix}/lib/modules-load.d}
install -p -m 644 zipl/boot/tape0.bin %{buildroot}/boot/tape0
@ -254,88 +161,17 @@ install -p -m 644 %{SOURCE17} %{buildroot}%{_udevrulesdir}/81-ccw.rules
# zipl.conf to be ghosted
touch %{buildroot}%{_sysconfdir}/zipl.conf
# install systemd sysusers and tmpfiles
mkdir -p %{buildroot}{%{_sysusersdir},%{_tmpfilesdir}}/
for f in s390utils-*.conf.usr; do
install -p -m 644 $f %{buildroot}%{_sysusersdir}/$(basename -s .usr $f)
done
for f in s390utils-*.conf.tmp; do
install -p -m 644 $f %{buildroot}%{_tmpfilesdir}/$(basename -s .tmp $f)
done
%endif
%ifarch s390x
#
# s390x/native main %%files section
#
%files
%doc README.md
%else
#
# multiarch %%files section
#
%files
%doc README.md
%license LICENSE
%license rust/LICENSE.dependencies
%if 0%{?rhel}
%license rust/cargo-vendor.txt
%endif
%{_bindir}/genprotimg
%{_bindir}/pvattest
%{_bindir}/pvextract-hdr
%{_bindir}/pvimg
%{_bindir}/pvsecret
%{_bindir}/pvverify
%{_mandir}/man1/genprotimg.1*
%{_mandir}/man1/pvattest.1*
%{_mandir}/man1/pvattest-check.1*
%{_mandir}/man1/pvattest-create.1*
%{_mandir}/man1/pvattest-perform.1*
%{_mandir}/man1/pvattest-verify.1*
%{_mandir}/man1/pvimg.1*
%{_mandir}/man1/pvimg-create.1*
%{_mandir}/man1/pvimg-info.1*
%{_mandir}/man1/pvimg-test.1*
%{_mandir}/man1/pvsecret-add.1*
%{_mandir}/man1/pvsecret-create-association.1*
%{_mandir}/man1/pvsecret-create-meta.1*
%{_mandir}/man1/pvsecret-create-retrievable.1*
%{_mandir}/man1/pvsecret-create-update-cck.1*
%{_mandir}/man1/pvsecret-create.1*
%{_mandir}/man1/pvsecret-list.1*
%{_mandir}/man1/pvsecret-lock.1*
%{_mandir}/man1/pvsecret-retrieve.1*
%{_mandir}/man1/pvsecret-verify.1*
%{_mandir}/man1/pvsecret.1*
%{_mandir}/man1/pvverify.1*
%dir %{_datadir}/s390-tools
%{_datadir}/s390-tools/netboot/
%{_datadir}/s390-tools/pvimg/
%{bash_completions_dir}/*.bash
%{zsh_completions_dir}/_*
#
# enf of multi-arch section
#
%endif
%ifarch s390x
#
# s390x specific sub-packages
#
#
# ************************* s390-tools core package *************************
#
%package core
License: MIT
Summary: S390 core tools
Provides: s390-tools-core = %{epoch}:%{version}-%{release}
Requires: coreutils
Requires: makedumpfile
%{?systemd_requires}
# BRs are covered via the base package
@ -356,7 +192,7 @@ This package provides minimal set of tools needed to system to boot.
%files core
%doc README.md zdev/src/chzdev_usage.txt
%license LICENSE
%doc LICENSE
%{_sbindir}/chreipl
%{_sbindir}/chzdev
%{_sbindir}/cio_ignore
@ -372,17 +208,13 @@ This package provides minimal set of tools needed to system to boot.
/lib/s390-tools/cpictl
/lib/s390-tools/stage3.bin
/lib/s390-tools/zdev_id
/lib/s390-tools/zdev-from-dasd_mod.dasd
/lib/s390-tools/zdev-root-update
/lib/s390-tools/zdev-to-dasd_mod.dasd
/lib/s390-tools/zdev-to-rd.znet
/lib/s390-tools/zipl.conf
%ghost %config(noreplace) %{_sysconfdir}/zipl.conf
%config(noreplace) %{_sysconfdir}/ziplenv
%{_unitdir}/cpi.service
%config(noreplace) %{_sysconfdir}/sysconfig/cpi
/usr/lib/dracut/modules.d/95zdev/
/usr/lib/dracut/modules.d/95zdev-kdump/
%{_mandir}/man5/zipl.conf.5*
%{_mandir}/man8/chreipl.8*
%{_mandir}/man8/chzdev.8*
@ -411,12 +243,10 @@ This package provides minimal set of tools needed to system to boot.
%{_udevrulesdir}/56-dasd.rules
%{_udevrulesdir}/56-zfcp.rules
%{_udevrulesdir}/59-dasd.rules
%{_udevrulesdir}/59-virtio-blk.rules
%{_udevrulesdir}/60-readahead.rules
%{_udevrulesdir}/81-ccw.rules
%{_udevrulesdir}/81-dpm.rules
%{_udevrulesdir}/90-cpi.rules
%{_udevrulesdir}/80-hotplug-cpu.rules
%{_sysconfdir}/kernel/install.d/20-grubby.install
%{_prefix}/lib/kernel/install.d/10-zfcpdump.install
%{_prefix}/lib/kernel/install.d/20-zipl-kernel.install
@ -429,18 +259,14 @@ This package provides minimal set of tools needed to system to boot.
#
%package base
License: MIT AND LGPL-2.1-or-later AND %{extra_licenses_from_rust_deps}
License: MIT
Summary: S390 base tools
Provides: s390-tools-base = %{epoch}:%{version}-%{release}
Requires: coreutils
Requires: ethtool
Requires: file
Requires: gawk
Requires: sed
Requires: gawk sed coreutils
Requires: sg3_utils
Requires: ethtool
Requires: tar
Requires: file
Requires: s390utils-core = %{epoch}:%{version}-%{release}
Requires: s390utils-se-data = %{epoch}:%{version}-%{release}
%{?systemd_requires}
BuildRequires: perl-generators
BuildRequires: ncurses-devel
@ -448,8 +274,8 @@ BuildRequires: glibc-static
BuildRequires: cryptsetup-devel >= 2.0.3
BuildRequires: json-c-devel
BuildRequires: rpm-devel
BuildRequires: glib2-devel
BuildRequires: libxml2-devel
BuildRequires: libnl3-devel
%description base
@ -514,6 +340,11 @@ s390 base tools. This collection provides the following utilities:
* tunedasd:
Adjust tunable parameters on DASD devices.
* vmconvert:
Convert system dumps created by the z/VM VMDUMP command into dumps with
LKCD format. These LKCD dumps can then be analyzed with the dump analysis
tool lcrash.
* vmcp:
Allows Linux users to send commands to the z/VM control program (CP).
The normal usage is to invoke vmcp with the command you want to
@ -527,6 +358,9 @@ s390 base tools. This collection provides the following utilities:
feature. Those traces are filtered with the zfcpdbf script, i.e. merge
several traces, make it more readable etc.
* scsi_logging_level:
Create, get or set the logging level for the SCSI logging facility.
* zconf:
Set of scripts to configure and list status information of Linux for
zSeries IO devices.
@ -578,6 +412,10 @@ For more information refer to the following publications:
* "Device Drivers, Features, and Commands" chapter "Useful Linux commands"
* "Using the dump tools"
%pre base
# check for zkeyadm group and create it
getent group zkeyadm > /dev/null || groupadd -r zkeyadm
%post base
%systemd_post dumpconf.service
@ -589,14 +427,9 @@ For more information refer to the following publications:
%files base
%doc README.md zdev/src/lszdev_usage.txt
%license rust/LICENSE.dependencies
%if 0%{?rhel}
%license rust/cargo-vendor.txt
%endif
%{_sbindir}/chccwdev
%{_sbindir}/chchp
%{_sbindir}/chcpumf
%{_sbindir}/chpstat
%{_sbindir}/chshut
%{_sbindir}/chzcrypt
%{_sbindir}/dasdstat
@ -611,9 +444,8 @@ For more information refer to the following publications:
%{_sbindir}/lscss
%{_sbindir}/lsdasd
%{_sbindir}/lshwc
%{_sbindir}/lsluns
%{_sbindir}/lsqeth
%{_sbindir}/lspai
%{_sbindir}/lsluns
%{_sbindir}/lsreipl
%{_sbindir}/lsscm
%{_sbindir}/lsshut
@ -621,11 +453,11 @@ For more information refer to the following publications:
%{_sbindir}/lstape
%{_sbindir}/lszcrypt
%{_sbindir}/lszfcp
%{_sbindir}/opticsmon
%{_sbindir}/pai
%{_sbindir}/qetharp
%{_sbindir}/qethconf
%{_sbindir}/qethqoat
%{_sbindir}/scsi_logging_level
%{_sbindir}/sclpdbf
%{_sbindir}/start_hsnc.sh
%{_sbindir}/tape390_crypt
@ -639,31 +471,21 @@ For more information refer to the following publications:
%{_sbindir}/zfcpdbf
%{_sbindir}/zgetdump
%{_sbindir}/zipl-switch-to-blscfg
%{_sbindir}/zmemtopo
%{_sbindir}/znetconf
%{_sbindir}/zpcictl
%{_bindir}/cpacfinfo
%{_bindir}/dump2tar
%{_bindir}/genprotimg
%{_bindir}/mk-s390image
%{_bindir}/pvapconfig
%{_bindir}/pvimg
%{_bindir}/pvinfo
%{_bindir}/pvattest
%{_bindir}/pvextract-hdr
%{_bindir}/pvsecret
%{_bindir}/pvverify
%{_bindir}/vmconvert
%{_bindir}/zkey
%{_bindir}/zkey-cryptsetup
%{_bindir}/zpwr
%{_unitdir}/dumpconf.service
%{_unitdir}/opticsmon.service
%ghost %config(noreplace) %{_sysconfdir}/zipl.conf
%config(noreplace) %{_sysconfdir}/sysconfig/dumpconf
%{_sysconfdir}/mdevctl.d/*
%{_sysusersdir}/s390utils-base.conf
/usr/lib/dracut/modules.d/99ngdump/
/usr/lib/dracut/dracut.conf.d/99-pkey.conf
# own the mdevctl dirs until new release is available
%dir /usr/lib/mdevctl
%dir /usr/lib/mdevctl/scripts.d
@ -679,43 +501,22 @@ For more information refer to the following publications:
%dir %{_libdir}/zkey
%{_libdir}/zkey/zkey-ekmfweb.so
%{_libdir}/zkey/zkey-kmip.so
%{_mandir}/man1/cpacfinfo.1*
%{_mandir}/man1/dump2tar.1*
%{_mandir}/man1/genprotimg.1*
%{_mandir}/man1/mk-s390image.1*
%{_mandir}/man1/pvapconfig.1*
%{_mandir}/man1/pvattest.1*
%{_mandir}/man1/pvattest-check.1*
%{_mandir}/man1/pvattest-create.1*
%{_mandir}/man1/pvattest-perform.1*
%{_mandir}/man1/pvattest-verify.1*
%{_mandir}/man1/pvimg.1*
%{_mandir}/man1/pvimg-create.1*
%{_mandir}/man1/pvimg-info.1*
%{_mandir}/man1/pvimg-test.1*
%{_mandir}/man1/pvsecret-add.1*
%{_mandir}/man1/pvsecret-create-association.1*
%{_mandir}/man1/pvsecret-create-meta.1*
%{_mandir}/man1/pvsecret-create-retrievable.1*
%{_mandir}/man1/pvsecret-create-update-cck.1*
%{_mandir}/man1/pvsecret-create.1*
%{_mandir}/man1/pvsecret-list.1*
%{_mandir}/man1/pvsecret-lock.1*
%{_mandir}/man1/pvsecret-retrieve.1*
%{_mandir}/man1/pvsecret-verify.1*
%{_mandir}/man1/pvsecret.1*
%{_mandir}/man1/pvverify.1*
%{_mandir}/man1/vmconvert.1*
%{_mandir}/man1/zkey.1*
%{_mandir}/man1/zkey-cryptsetup.1*
%{_mandir}/man1/zkey-ekmfweb.1*
%{_mandir}/man1/zkey-kmip.1*
%{_mandir}/man1/zpwr.1*
%{_mandir}/man4/prandom.4*
%{_mandir}/man5/hsavmcore.conf.5*
%{_mandir}/man8/chccwdev.8*
%{_mandir}/man8/chchp.8*
%{_mandir}/man8/chcpumf.8*
%{_mandir}/man8/chpstat.8*
%{_mandir}/man8/chshut.8*
%{_mandir}/man8/chzcrypt.8*
%{_mandir}/man8/dasdstat.8*
@ -731,7 +532,6 @@ For more information refer to the following publications:
%{_mandir}/man8/lsdasd.8*
%{_mandir}/man8/lshwc.8*
%{_mandir}/man8/lsluns.8*
%{_mandir}/man8/lspai.8*
%{_mandir}/man8/lsqeth.8*
%{_mandir}/man8/lsreipl.8*
%{_mandir}/man8/lsscm.8*
@ -740,7 +540,6 @@ For more information refer to the following publications:
%{_mandir}/man8/lstape.8*
%{_mandir}/man8/lszcrypt.8*
%{_mandir}/man8/lszfcp.8*
%{_mandir}/man8/opticsmon.8*
%{_mandir}/man8/pai.8*
%{_mandir}/man8/qetharp.8*
%{_mandir}/man8/qethconf.8*
@ -755,13 +554,11 @@ For more information refer to the following publications:
%{_mandir}/man8/zfcpdbf.8*
%{_mandir}/man8/zgetdump.8*
%{_mandir}/man8/zipl-switch-to-blscfg.8*
%{_mandir}/man8/zmemtopo.8*
%{_mandir}/man8/znetconf.8*
%{_mandir}/man8/zpcictl.8*
%dir %{_datadir}/s390-tools
%{_datadir}/s390-tools/genprotimg/
%{_datadir}/s390-tools/netboot/
%{bash_completions_dir}/*.bash
%{zsh_completions_dir}/_*
%dir %attr(0770,root,zkeyadm) %{_sysconfdir}/zkey
%dir %attr(0770,root,zkeyadm) %{_sysconfdir}/zkey/kmip
%dir %attr(0770,root,zkeyadm) %{_sysconfdir}/zkey/kmip/profiles
@ -772,25 +569,11 @@ For more information refer to the following publications:
# Additional Fedora/RHEL specific stuff
/boot/tape0
%package se-data
License: MIT
Summary: Data for Secure Execution
Provides: s390-tools-se-data = %{epoch}:%{version}-%{release}
BuildArch: noarch
%description se-data
%{summary}.
%files se-data
%dir %{_datadir}/s390-tools
%{_datadir}/s390-tools/pvimg/
#
# *********************** s390-tools osasnmpd package ***********************
#
%package osasnmpd
Summary: SNMP sub-agent for OSA-Express cards
Provides: s390-tools-osasnmpd = %{epoch}:%{version}-%{release}
Requires: net-snmp
Requires: psmisc
BuildRequires: net-snmp-devel
@ -810,7 +593,6 @@ ATM Ethernet LAN Emulation in QDIO mode.
#
%package mon_statd
Summary: Monitoring daemons for Linux in z/VM
Provides: s390-tools-mon_statd = %{epoch}:%{version}-%{release}
Requires: coreutils
%{?systemd_requires}
@ -850,7 +632,6 @@ Monitoring daemons for Linux in z/VM:
#
%package cpuplugd
Summary: Daemon that manages CPU and memory resources
Provides: s390-tools-cpuplugd = %{epoch}:%{version}-%{release}
%{?systemd_requires}
BuildRequires: systemd
@ -880,7 +661,6 @@ memory can be increased or decreased exploiting the CMM1 feature.
#
%package ziomon
Summary: S390 ziomon tools
Provides: s390-tools-ziomon = %{epoch}:%{version}-%{release}
Requires: blktrace
Requires: coreutils
Requires: device-mapper-multipath
@ -919,7 +699,6 @@ Tool set to collect data for zfcp performance analysis and report.
#
%package iucvterm
Summary: z/VM IUCV terminal applications
Provides: s390-tools-iucvterm = %{epoch}:%{version}-%{release}
Requires(pre): shadow-utils
Requires(post): grep
Requires(postun): grep
@ -936,6 +715,10 @@ active TCP/IP connection between two Linux guest operating systems.
- ts-shell: Terminal server shell to authorize and control IUCV terminal
connections for individual Linux users.
%pre iucvterm
# check for ts-shell group and create it
getent group ts-shell > /dev/null || groupadd -r ts-shell
%post iucvterm
# /etc/shells is provided by "setup"
grep -q '^/usr/bin/ts-shell$' /etc/shells \
@ -961,16 +744,13 @@ fi
%{_bindir}/ts-shell
%{_sbindir}/chiucvallow
%{_sbindir}/lsiucvallow
%{_sysusersdir}/s390utils-iucvterm.conf
%{_tmpfilesdir}/s390utils-iucvterm.conf
%ghost %dir %attr(2770,root,ts-shell) /var/log/ts-shell
%dir %attr(2770,root,ts-shell) /var/log/ts-shell
%doc iucvterm/doc/ts-shell
%{_mandir}/man1/iucvconn.1*
%{_mandir}/man1/iucvtty.1*
%{_mandir}/man1/ts-shell.1*
%{_mandir}/man7/af_iucv.7*
%{_mandir}/man8/chiucvallow.8*
%{_mandir}/man8/lsiucvallow.8*
%{_mandir}/man9/hvc_iucv.9*
%{_unitdir}/iucvtty-login@.service
%{_unitdir}/ttyrun-getty@.service
@ -983,7 +763,6 @@ fi
Summary: CMS file system based on FUSE
BuildRequires: fuse3-devel
Requires: fuse3
Provides: s390-tools-cmsfs-fuse = %{epoch}:%{version}-%{release}
Requires: glibc-gconv-extra
Obsoletes: %{name}-cmsfs < 2:2.7.0-3
@ -1004,7 +783,6 @@ Summary: z/OS data set access based on FUSE
BuildRequires: fuse3-devel
BuildRequires: libcurl-devel
Requires: fuse3
Provides: s390-tools-zdsfs = %{epoch}:%{version}-%{release}
%description zdsfs
This package contains the z/OS data set access based on FUSE.
@ -1020,7 +798,6 @@ This package contains the z/OS data set access based on FUSE.
Summary: HMC drive file system based on FUSE
BuildRequires: fuse3-devel
Requires: fuse3
Provides: s390-tools-hmcdrvfs = %{epoch}:%{version}-%{release}
%description hmcdrvfs
This package contains a HMC drive file system based on FUSE and a tool
@ -1037,7 +814,6 @@ to list files and directories.
#
%package cpacfstatsd
Summary: Monitor and maintain CPACF activity counters
Provides: s390-tools-cpacfstatsd = %{epoch}:%{version}-%{release}
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
@ -1058,13 +834,15 @@ and maintain CPACF activity counters.
%postun cpacfstatsd
%systemd_postun_with_restart cpacfstatsd.service
%pre cpacfstatsd
getent group cpacfstats >/dev/null || groupadd -r cpacfstats
%files cpacfstatsd
%{_bindir}/cpacfstats
%{_sbindir}/cpacfstatsd
%{_mandir}/man1/cpacfstats.1*
%{_mandir}/man8/cpacfstatsd.8*
%{_unitdir}/cpacfstatsd.service
%{_sysusersdir}/s390utils-cpacfstatsd.conf
#
# *********************** chreipl-fcp-mpath package ***********************
@ -1074,13 +852,12 @@ Summary: Use multipath information for re-IPL path failover
BuildRequires: make
BuildRequires: bash
BuildRequires: coreutils
%if %{with pandoc}
%if 0%{?with_pandoc}
BuildRequires: pandoc
%endif
BuildRequires: gawk
BuildRequires: gzip
BuildRequires: sed
Provides: s390-tools-chreipl-fcp-mpath = %{epoch}:%{version}-%{release}
Requires: bash
Requires: coreutils
Requires: util-linux
@ -1096,7 +873,7 @@ reconfigures the FCP re-IPL settings to use an operational path.
%files chreipl-fcp-mpath
%doc chreipl-fcp-mpath/README.md
%if %{with pandoc}
%if 0%{?with_pandoc}
%doc chreipl-fcp-mpath/README.html
%endif
%dir %{_prefix}/lib/chreipl-fcp-mpath/
@ -1115,7 +892,7 @@ reconfigures the FCP re-IPL settings to use an operational path.
#
%package devel
Summary: Development files
Provides: s390-tools-devel = %{epoch}:%{version}-%{release}
Requires: %{name}-base%{?_isa} = %{epoch}:%{version}-%{release}
%description devel
@ -1128,118 +905,8 @@ User-space development files for the s390/s390x architecture.
%{_libdir}/libekmfweb.so
%{_libdir}/libkmipclient.so
#
# end of s390x specific sub-packages
#
%endif
%changelog
* Tue Jan 06 2026 Dan Horák <dan[at]danny.cz> - 2:2.40.0-1
- rebased to 2.40.0 (rhbz#2421447)
* Thu Nov 13 2025 Dan Horák <dan[at]danny.cz> - 2:2.39.0-1
- rebased to 2.39.0 (rhbz#2403755)
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.38.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Jun 27 2025 Dan Horák <dan[at]danny.cz> - 2:2.38.0-1
- rebased to 2.38.0 (rhbz#2374765)
* Thu Mar 13 2025 Benjamin A. Beasley <code@musicinmybrain.net> - 2:2.37.0-2
- Properly generate Rust BuildRequires on Fedora
- Update License (for s390utils/s390utils-base) to reflect Rust deps.
* Thu Feb 27 2025 Jakub Čajka <jcajka@redhat.com> - 2:2.37.0-1
- rebased to 2.37.0 (rhbz#2330787)
* Mon Feb 24 2025 Dan Horák <dan[at]danny.cz> - 2:2.36.0-1
- rebased to 2.36.0 (rhbz#2330787)
* Thu Feb 06 2025 Fabio Valentini <decathorpe@gmail.com> - 2:2.35.0-5
- Rebuild for openssl crate >= v0.10.70 (RUSTSEC-2025-0004)
* Mon Jan 20 2025 Dan Horák <dan[at]danny.cz> - 2:2.35.0-4
- fix build with gcc15
- Resolves: rhbz#2338176
* Wed Jan 15 2025 Zbigniew Jedrzejewski-Szmek <zbyszek@in.waw.pl> - 2:2.35.0-3
- Add sysusers.d config
* Tue Jan 14 2025 Dan Horák <dan[at]danny.cz> - 2:2.35.0-2
- updated for https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin
* Thu Oct 03 2024 Dan Horák <dan[at]danny.cz> - 2:2.35.0-1
- rebased to 2.35.0 (rhbz#2316232)
* Mon Aug 26 2024 Dan Horák <dan[at]danny.cz> - 2:2.34.0-2
- don't make Rust warnings fatal
* Mon Aug 12 2024 Dan Horák <dan[at]danny.cz> - 2:2.34.0-1
- rebased to 2.34.0 (rhbz#2302462)
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.33.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jul 15 2024 Dan Horák <dan[at]danny.cz> - 2:2.33.1-3
- "which" is not required any more
- Revert "zipl/src: Fix problems when target parameters are specified by user"
* Thu Jun 20 2024 Dan Horák <dan[at]danny.cz> - 2:2.33.1-2
- add which as a dependency for base and ziomon subpackages (RHEL-38488)
* Tue May 28 2024 Dan Horák <dan[at]danny.cz> - 2:2.33.1-1
- rebased to 2.33.1 (rhbz#2283542)
* Thu Apr 04 2024 Dan Horák <dan[at]danny.cz> - 2:2.32.0-1
- rebased to 2.32.0 (rhbz#2273003)
* Fri Mar 08 2024 Neal Gompa <ngompa@fedoraproject.org> - 2:2.31.0-2
- Add 's390-tools' Provides to all packages
* Mon Feb 05 2024 Dan Horák <dan[at]danny.cz> - 2:2.31.0-1
- rebased to 2.31.0 (rhbz#2262499)
* Thu Jan 25 2024 Dan Horák <dan[at]danny.cz> - 2:2.30.0-2
- add s390utils-se-data as a noarch subpackage with Secure Execution data files
* Tue Jan 02 2024 Dan Horák <dan[at]danny.cz> - 2:2.30.0-1
- rebased to 2.30.0 (rhbz#2252519)
* Fri Dec 01 2023 Fabio Valentini <decathorpe@gmail.com> - 2:2.29.0-6
- Rebuild for openssl crate >= v0.10.60 (RUSTSEC-2023-0044, RUSTSEC-2023-0072)
* Fri Nov 10 2023 Dan Horák <dan[at]danny.cz> - 2:2.29.0-5
- enable multi-arch build
* Fri Nov 10 2023 Dan Horák <dan[at]danny.cz> - 2:2.29.0-4
- fix upstream kernel installations
* Mon Oct 23 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 2:2.29.0-3
- Use vendored dependencies in RHEL builds
* Thu Aug 31 2023 Jakub Čajka <jcajka[at]redhat.com> - 2:2.29.0-2
- enable rust based tools
* Mon Aug 07 2023 Dan Horák <dan[at]danny.cz> - 2:2.29.0-1
- rebased to 2.29.0
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.28.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jul 11 2023 Dan Horák <dan[at]danny.cz> - 2:2.28.0-1
- rebased to 2.28.0
* Wed May 31 2023 Dan Horák <dan[at]danny.cz> - 2:2.27.0-1
- rebased to 2.27.0
* Fri May 19 2023 Petr Pisar <ppisar@redhat.com> - 2:2.26.0-2
- Rebuild against rpm-4.19 (https://fedoraproject.org/wiki/Changes/RPM-4.19)
* Fri Mar 03 2023 Dan Horák <dan[at]danny.cz> - 2:2.26.0-1
- rebased to 2.26.0
* Tue Jan 31 2023 Dan Horák <dan[at]danny.cz> - 2:2.25.0-4
- add post GA fixes

View file

@ -1,2 +1 @@
SHA512 (s390-tools-2.40.0.tar.gz) = 1943429581b280bf9ea370da3700a234d509837cb45b2354cdf79b38db87d2183010d18d9132defd77b9d8e11b7e002c447ffd7c912e20a50da4cb6877758c0e
SHA512 (s390-tools-2.40.0-rust-vendor.tar.xz) = fd1894c4e950a3c51054432731a3aeef4318e794aa4af2dc5fed31da16dce2020f014a64241e44766fb40b0fd6c1ac5943366e38dcfebf264875220ecf1285b5
SHA512 (s390-tools-2.25.0.tar.gz) = 1c766a4bd19c957596c741a80141712acf150591c0ff1a47caf1aa8a17f7153c1441560f05aef78bb3f05bd35c1fef431569cabd7e7d6b003bd74beedb7213d9