diff --git a/rpminspect.yaml b/rpminspect.yaml index 8ca8a53..7e19000 100644 --- a/rpminspect.yaml +++ b/rpminspect.yaml @@ -4,5 +4,6 @@ pathmigration: - /lib/s390-tools badfuncs: - ignore: - - /usr/sbin/qethqoat + allowed: + /usr/bin/qethqoat: + - inet_ntoa diff --git a/s390utils-2.33.1-fedora.patch b/s390utils-2.33.1-fedora.patch deleted file mode 100644 index c97b193..0000000 --- a/s390utils-2.33.1-fedora.patch +++ /dev/null @@ -1,311 +0,0 @@ -From ab26b43985f44b71abf40f8d0e50bfbd0808f8b9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jan=20H=C3=B6ppner?= -Date: Fri, 14 Jun 2024 14:25:40 +0200 -Subject: [PATCH 1/2] s390-tools: Replace 'which' with built-in 'command -v' -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -There are still a few scripts using the 'which' command to determine -either the full path or the mere existence of an executable. -Some of these scripts might run in minimal environments where 'which' is -not available due to dependency restriction. 'which' is also considered -unreliable for historical implementation details. - -Use the POSIX defined [1] built-in 'command -v' instead to reduce -package dependencies and improve reliability. - -[1] https://pubs.opengroup.org/onlinepubs/9699919799/ -Reviewed-by: Benjamin Block -Signed-off-by: Jan Höppner -Signed-off-by: Steffen Eiden -(cherry picked from commit 0b0960254e8c2b556cefa97f83651a92f54a5e42) ---- - iucvterm/doc/ts-shell/iucvconn_on_login | 2 +- - netboot/mk-pxelinux-ramfs | 2 +- - ziomon/ziomon | 3 +-- - 3 files changed, 3 insertions(+), 4 deletions(-) - -diff --git a/iucvterm/doc/ts-shell/iucvconn_on_login b/iucvterm/doc/ts-shell/iucvconn_on_login -index 860c4cc..92010df 100755 ---- a/iucvterm/doc/ts-shell/iucvconn_on_login -+++ b/iucvterm/doc/ts-shell/iucvconn_on_login -@@ -15,7 +15,7 @@ - prog_name=`basename $0` - guest_name=${USER:-`whoami 2>/dev/null`} - terminal=lnxhvc0 --iucvconn=`which iucvconn 2>/dev/null` -+iucvconn=`command -v iucvconn 2>/dev/null` - - __error() { - printf "$prog_name: $@\n" >&2 -diff --git a/netboot/mk-pxelinux-ramfs b/netboot/mk-pxelinux-ramfs -index 64ebde1..07f8b07 100755 ---- a/netboot/mk-pxelinux-ramfs -+++ b/netboot/mk-pxelinux-ramfs -@@ -127,7 +127,7 @@ echo "$cmd: Copying kexec" - # Install both binary and required shared libraries - OLDPATH=$PATH - PATH=$OLDPATH:/sbin:/usr/sbin --kexec_bin=$(which kexec) -+kexec_bin=$(command -v kexec) - kexec_sos=$(sharedobjs $kexec_bin) - PATH=$OLDPATH - -diff --git a/ziomon/ziomon b/ziomon/ziomon -index fd6248a..d1545cc 100755 ---- a/ziomon/ziomon -+++ b/ziomon/ziomon -@@ -667,8 +667,7 @@ function check_free_space_mileage() { - - - function check_blktrace() { -- which blktrace >/dev/null 2>&1; -- if [ $? -ne 0 ]; then -+ if ! command -v blktrace >/dev/null 2>&1; then - echo "$WRP_TOOLNAME: Could not find blktrace. Please make sure that the blktrace package is installed and matches the level in the documentation."; - exit 1; - fi --- -2.45.2 - - -From 9770d8bff4b2ef6f01af1c273d1eac121b672a85 Mon Sep 17 00:00:00 2001 -From: Marc Hartmayer -Date: Thu, 6 Jun 2024 15:07:45 +0000 -Subject: [PATCH 2/2] Revert "zipl/src: Fix problems when target parameters are - specified by user" - -The commit fb0b6263d1a9 ("zipl/src: Fix problems when target parameters -are specified by user") breaks the case where the user has to provide -all target attributes via the zipl command line, because the target -device cannot be used to retrieve those attributes. - -$ zipl -V --blsdir /tmp/tmp.xHmFUdgBCi/boot//loader/entries/ --config /tmp/tmp.dSv9MJ3svs -Looking for components in '/lib/s390-tools' -Using config file '/tmp/tmp.dSv9MJ3svs' (from command line) -Using BLS config file '/tmp/tmp.xHmFUdgBCi/boot//loader/entries//50_normal.conf' -Using BLS config file '/tmp/tmp.xHmFUdgBCi/boot//loader/entries//45_normal_swiotlb.conf' -Using BLS config file '/tmp/tmp.xHmFUdgBCi/boot//loader/entries//40_pv.conf' -Using BLS config file '/tmp/tmp.xHmFUdgBCi/boot//loader/entries//30_pv_reboot.conf' -Secure boot support: yes -Target device information - Device..........................: 2b:00 - Device name.....................: nbd0 *) - Device driver name..............: nbd - Type............................: disk device - Disk layout.....................: SCSI disk layout *) - Geometry - start................: 2048 *) - File system block size..........: 4096 - Physical block size.............: 512 *) - Device size in physical blocks..: 2095071 - *) Data provided by user. -Building bootmap in '/tmp/tmp.xHmFUdgBCi/boot/' -Building menu 'zipl-automatic-menu' -Adding #1: IPL section 'Normal Guest' (default) - initial ramdisk...: /tmp/tmp.xHmFUdgBCi/boot//ramdisk-s390x - kernel image......: /tmp/tmp.xHmFUdgBCi/boot//vmlinux-s390x -zIPL environment block content: -Error: Could not add image file '/tmp/tmp.xHmFUdgBCi/boot//vmlinux-s390x': Could not get disk geometry - -This reverts commit fb0b6263d1a9a497760a21ccb178748ec5ccf955. - -Acked-by: Eduard Shishkin -Signed-off-by: Marc Hartmayer -Signed-off-by: Steffen Eiden -(cherry picked from commit 63ff07ba38dda99e2661a097d05266555c727a2e) ---- - zipl/include/job.h | 1 - - zipl/src/bootmap.c | 40 +++++++++++++++++++--------------------- - zipl/src/disk.c | 3 --- - zipl/src/job.c | 3 ++- - 4 files changed, 21 insertions(+), 26 deletions(-) - -diff --git a/zipl/include/job.h b/zipl/include/job.h -index e46788b..597d400 100644 ---- a/zipl/include/job.h -+++ b/zipl/include/job.h -@@ -152,7 +152,6 @@ static inline int target_parameters_are_set(struct job_target_data *td) - - int job_get(int argc, char* argv[], struct job_data** data); - void job_free(struct job_data* job); --void free_target_data(struct job_target_data *td); - int type_from_target(char *target, disk_type_t *type); - int check_job_dump_images(struct job_dump_data* dump, char* name); - int check_job_images_ngdump(struct job_dump_data* dump, char* name); -diff --git a/zipl/src/bootmap.c b/zipl/src/bootmap.c -index 82b77d0..f6f5bac 100644 ---- a/zipl/src/bootmap.c -+++ b/zipl/src/bootmap.c -@@ -304,6 +304,7 @@ static int add_component_file_range(struct install_set *bis, - address_t load_address, - size_t trailer, void *component, - int add_files, -+ struct job_target_data *target, - int comp_id, int menu_idx, - int program_table_id) - { -@@ -338,15 +339,8 @@ static int add_component_file_range(struct install_set *bis, - return -1; - } - } else { -- /* -- * Make sure that file is on target device. -- * For this, retrieve info of the underlying disk without -- * any user hints -- */ -- struct job_target_data tmp = {.source = source_unknown}; -- -- rc = disk_get_info_from_file(filename, &tmp, &file_info); -- free_target_data(&tmp); -+ /* Make sure file is on correct device */ -+ rc = disk_get_info_from_file(filename, target, &file_info); - if (rc) - return -1; - if (file_info->device != bis->info->device) { -@@ -383,11 +377,12 @@ write_segment_table: - static int add_component_file(struct install_set *bis, const char *filename, - address_t load_address, size_t trailer, - void *component, int add_files, -- int comp_id, int menu_idx, int program_table_id) -+ struct job_target_data *target, int comp_id, -+ int menu_idx, int program_table_id) - { - return add_component_file_range(bis, filename, NULL, load_address, - trailer, component, add_files, -- comp_id, menu_idx, -+ target, comp_id, menu_idx, - program_table_id); - } - -@@ -549,7 +544,8 @@ static int add_ipl_program(struct install_set *bis, char *filename, - bool add_envblk, struct job_envblk_data *envblk, - struct job_ipl_data *ipl, disk_blockptr_t *program, - int verbose, int add_files, component_header_type type, -- int is_secure, int menu_idx, int program_table_id) -+ struct job_target_data *target, int is_secure, -+ int menu_idx, int program_table_id) - { - struct signature_header sig_head; - size_t ramdisk_size, image_size; -@@ -671,7 +667,7 @@ static int add_ipl_program(struct install_set *bis, char *filename, - /* Add stage 3 loader to bootmap */ - rc = add_component_file(bis, ZIPL_STAGE3_PATH, STAGE3_LOAD_ADDRESS, - signature_size, VOID_ADD(table, offset), 1, -- COMPONENT_ID_LOADER, menu_idx, -+ target, COMPONENT_ID_LOADER, menu_idx, - program_table_id); - if (rc) { - error_text("Could not add internal loader file '%s'", -@@ -749,7 +745,7 @@ static int add_ipl_program(struct install_set *bis, char *filename, - - rc = add_component_file(bis, ipl->common.image, ipl->common.image_addr, - signature_size, VOID_ADD(table, offset), -- add_files, COMPONENT_ID_KERNEL_IMAGE, -+ add_files, target, COMPONENT_ID_KERNEL_IMAGE, - menu_idx, program_table_id); - if (rc) { - error_text("Could not add image file '%s'", ipl->common.image); -@@ -809,7 +805,7 @@ static int add_ipl_program(struct install_set *bis, char *filename, - ipl->common.ramdisk_addr, - signature_size, - VOID_ADD(table, offset), -- add_files, COMPONENT_ID_RAMDISK, -+ add_files, target, COMPONENT_ID_RAMDISK, - menu_idx, program_table_id); - if (rc) { - error_text("Could not add ramdisk '%s'", -@@ -865,7 +861,7 @@ static int add_ipl_program(struct install_set *bis, char *filename, - rc = add_component_file_range(bis, filename, ®, - ipl->envblk_addr, 0, - VOID_ADD(table, offset), -- 0, -+ 0, target, - COMPONENT_ID_ENVBLK, - menu_idx, - program_table_id); -@@ -897,6 +893,7 @@ static int add_segment_program(struct install_set *bis, - struct job_segment_data *segment, - disk_blockptr_t *program, int verbose, - int add_files, component_header_type type, -+ struct job_target_data *target, - int program_table_id) - { - void *table; -@@ -916,7 +913,7 @@ static int add_segment_program(struct install_set *bis, - printf(" segment file......: %s\n", segment->segment); - - rc = add_component_file(bis, segment->segment, segment->segment_addr, 0, -- VOID_ADD(table, offset), add_files, -+ VOID_ADD(table, offset), add_files, target, - COMPONENT_ID_SEGMENT_FILE, 0 /* menu_idx */, - program_table_id); - if (rc) { -@@ -999,7 +996,7 @@ static int add_dump_program(struct install_set *bis, struct job_data *job, - ipl.common.parmline = dump->common.parmline; - ipl.common.parm_addr = dump->common.parm_addr; - return add_ipl_program(bis, NULL, false, NULL, &ipl, program, -- verbose, 1, type, SECURE_BOOT_DISABLED, -+ verbose, 1, type, target, SECURE_BOOT_DISABLED, - 0 /* menu_idx */, program_table_id); - } - -@@ -1044,7 +1041,8 @@ static int build_program_table(struct job_data *job, - true, &job->envblk, &job->data.ipl, - &table[0], verbose || job->command_line, - job->add_files, component_header, -- job->is_secure, 0, program_table_id); -+ &job->target, job->is_secure, 0, -+ program_table_id); - break; - case job_segment: - if (bis->print_details) { -@@ -1057,7 +1055,7 @@ static int build_program_table(struct job_data *job, - rc = add_segment_program(bis, &job->data.segment, &table[0], - verbose || job->command_line, - job->add_files, COMPONENT_HEADER_IPL, -- program_table_id); -+ &job->target, program_table_id); - break; - case job_dump_partition: - /* Only useful for a partition dump that uses a dump kernel*/ -@@ -1116,7 +1114,7 @@ static int build_program_table(struct job_data *job, - &table[job->data.menu.entry[i].pos], - verbose || job->command_line, - job->add_files, component_header, -- is_secure, i, -+ &job->target, is_secure, i, - program_table_id); - break; - case job_print_usage: -diff --git a/zipl/src/disk.c b/zipl/src/disk.c -index b4bd49a..38a637c 100644 ---- a/zipl/src/disk.c -+++ b/zipl/src/disk.c -@@ -528,9 +528,6 @@ static int disk_set_info_complete(struct job_target_data *td, - * config file, or special "target options" of zipl tool. - * If target parameters were specified by user, then the step 1 above - * is skipped. -- -- * To exclude any user assumptions about the DEVICE, this function -- * should be called with TD pointing to a zeroed structure. - * - * DEVICE: logical, or physical device, optionally formated with a - * file system. -diff --git a/zipl/src/job.c b/zipl/src/job.c -index 2066402..27f0181 100644 ---- a/zipl/src/job.c -+++ b/zipl/src/job.c -@@ -370,7 +370,8 @@ get_command_line(int argc, char* argv[], struct command_line* line) - } - - --void free_target_data(struct job_target_data *data) -+static void -+free_target_data(struct job_target_data* data) - { - free(data->bootmap_dir); - free(data->targetbase); --- -2.45.2 - diff --git a/s390utils-2.40.0-fedora.patch b/s390utils-2.40.0-fedora.patch new file mode 100644 index 0000000..e69de29 diff --git a/s390utils.spec b/s390utils.spec index 3fc3870..7da6a02 100644 --- a/s390utils.spec +++ b/s390utils.spec @@ -11,20 +11,47 @@ %bcond_with pandoc %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.33.1 -Release: 3%{?dist} +Version: 2.40.0 +Release: 1%{?dist} Epoch: 2 -# MIT covers nearly all the files, except init files -License: MIT AND LGPL-2.1-or-later +# 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} 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 @@ -47,7 +74,7 @@ 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} @@ -81,32 +108,7 @@ BuildRequires: libcurl-devel BuildRequires: openssl-devel BuildRequires: rust-toolset %else -BuildRequires: crate(anstream) -BuildRequires: crate(anstyle-query) -BuildRequires: crate(anyhow) -BuildRequires: crate(byteorder) -BuildRequires: crate(cfg-if) -BuildRequires: crate(clap) -BuildRequires: crate(clap_complete) -BuildRequires: crate(clap_derive) -BuildRequires: crate(colorchoice) -BuildRequires: crate(curl) -BuildRequires: crate(is-terminal) -BuildRequires: crate(lazy_static) -BuildRequires: crate(libc) -BuildRequires: crate(log) -BuildRequires: crate(mockito) -BuildRequires: crate(openssl) -BuildRequires: crate(openssl-probe) -BuildRequires: crate(serde) -BuildRequires: crate(serde_derive) -BuildRequires: crate(serde_test) -BuildRequires: crate(serde_yaml) -BuildRequires: crate(strsim) -BuildRequires: crate(terminal_size) -BuildRequires: crate(thiserror) -BuildRequires: crate(zerocopy) -BuildRequires: rust-packaging +BuildRequires: cargo-rpm-macros >= 24 %endif %description @@ -130,6 +132,21 @@ popd %endif rm ./rust/Cargo.lock +# 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 + +# Create tmpfiles config files +echo 'd /var/log/ts-shell 2770 root ts-shell' > s390utils-iucvterm.conf.tmp + +%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}" \ @@ -138,7 +155,12 @@ make \ 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 @@ -152,13 +174,17 @@ popd %install -make install \ +%make_install \ HAVE_DRACUT=1 \ %if %{with pandoc} ENABLE_DOC=1 \ %endif - DESTDIR=%{buildroot} \ +%if "%{_sbindir}" == "%{_bindir}" + BINDIR=/usr/bin \ + USRSBINDIR=/usr/bin \ +%else BINDIR=/usr/sbin \ +%endif SYSTEMDSYSTEMUNITDIR=%{_unitdir} \ DISTRELEASE=%{release} \ V=1 @@ -181,6 +207,7 @@ 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 @@ -226,6 +253,16 @@ 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 @@ -248,26 +285,38 @@ touch %{buildroot}%{_sysconfdir}/zipl.conf %license rust/cargo-vendor.txt %endif %{_bindir}/genprotimg -%{_bindir}/pvapconfig %{_bindir}/pvattest %{_bindir}/pvextract-hdr +%{_bindir}/pvimg %{_bindir}/pvsecret +%{_bindir}/pvverify %{_mandir}/man1/genprotimg.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* %dir %{_datadir}/s390-tools -%{_datadir}/s390-tools/genprotimg/ +%{_datadir}/s390-tools/netboot/ +%{_datadir}/s390-tools/pvimg/ +%{bash_completions_dir}/*.bash +%{zsh_completions_dir}/_* # # enf of multi-arch section @@ -286,6 +335,7 @@ 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 @@ -361,10 +411,12 @@ 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 @@ -377,7 +429,7 @@ This package provides minimal set of tools needed to system to boot. # %package base -License: MIT AND LGPL-2.1-or-later +License: MIT AND LGPL-2.1-or-later AND %{extra_licenses_from_rust_deps} Summary: S390 base tools Provides: s390-tools-base = %{epoch}:%{version}-%{release} Requires: coreutils @@ -397,6 +449,7 @@ BuildRequires: cryptsetup-devel >= 2.0.3 BuildRequires: json-c-devel BuildRequires: rpm-devel BuildRequires: libxml2-devel +BuildRequires: libnl3-devel %description base @@ -474,9 +527,6 @@ 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. @@ -528,10 +578,6 @@ 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 @@ -575,11 +621,11 @@ getent group zkeyadm > /dev/null || groupadd -r zkeyadm %{_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 @@ -593,22 +639,31 @@ getent group zkeyadm > /dev/null || groupadd -r zkeyadm %{_sbindir}/zfcpdbf %{_sbindir}/zgetdump %{_sbindir}/zipl-switch-to-blscfg +%{_sbindir}/zmemtopo %{_sbindir}/znetconf %{_sbindir}/zpcictl +%{_bindir}/cpacfinfo %{_bindir}/dump2tar %{_bindir}/genprotimg -%{_bindir}/pvapconfig %{_bindir}/mk-s390image +%{_bindir}/pvapconfig +%{_bindir}/pvimg +%{_bindir}/pvinfo %{_bindir}/pvattest %{_bindir}/pvextract-hdr %{_bindir}/pvsecret +%{_bindir}/pvverify %{_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 @@ -624,25 +679,37 @@ getent group zkeyadm > /dev/null || groupadd -r zkeyadm %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/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* @@ -673,6 +740,7 @@ getent group zkeyadm > /dev/null || groupadd -r zkeyadm %{_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* @@ -687,10 +755,13 @@ getent group zkeyadm > /dev/null || groupadd -r zkeyadm %{_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/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 @@ -712,7 +783,7 @@ BuildArch: noarch %files se-data %dir %{_datadir}/s390-tools -%{_datadir}/s390-tools/genprotimg/ +%{_datadir}/s390-tools/pvimg/ # # *********************** s390-tools osasnmpd package *********************** @@ -865,10 +936,6 @@ 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 \ @@ -894,13 +961,16 @@ fi %{_bindir}/ts-shell %{_sbindir}/chiucvallow %{_sbindir}/lsiucvallow -%dir %attr(2770,root,ts-shell) /var/log/ts-shell +%{_sysusersdir}/s390utils-iucvterm.conf +%{_tmpfilesdir}/s390utils-iucvterm.conf +%ghost %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 @@ -988,15 +1058,13 @@ 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 *********************** @@ -1067,6 +1135,53 @@ User-space development files for the s390/s390x architecture. %changelog +* Tue Jan 06 2026 Dan Horák - 2:2.40.0-1 +- rebased to 2.40.0 (rhbz#2421447) + +* Thu Nov 13 2025 Dan Horák - 2:2.39.0-1 +- rebased to 2.39.0 (rhbz#2403755) + +* Fri Jul 25 2025 Fedora Release Engineering - 2:2.38.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Fri Jun 27 2025 Dan Horák - 2:2.38.0-1 +- rebased to 2.38.0 (rhbz#2374765) + +* Thu Mar 13 2025 Benjamin A. Beasley - 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 - 2:2.37.0-1 +- rebased to 2.37.0 (rhbz#2330787) + +* Mon Feb 24 2025 Dan Horák - 2:2.36.0-1 +- rebased to 2.36.0 (rhbz#2330787) + +* Thu Feb 06 2025 Fabio Valentini - 2:2.35.0-5 +- Rebuild for openssl crate >= v0.10.70 (RUSTSEC-2025-0004) + +* Mon Jan 20 2025 Dan Horák - 2:2.35.0-4 +- fix build with gcc15 +- Resolves: rhbz#2338176 + +* Wed Jan 15 2025 Zbigniew Jedrzejewski-Szmek - 2:2.35.0-3 +- Add sysusers.d config + +* Tue Jan 14 2025 Dan Horák - 2:2.35.0-2 +- updated for https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin + +* Thu Oct 03 2024 Dan Horák - 2:2.35.0-1 +- rebased to 2.35.0 (rhbz#2316232) + +* Mon Aug 26 2024 Dan Horák - 2:2.34.0-2 +- don't make Rust warnings fatal + +* Mon Aug 12 2024 Dan Horák - 2:2.34.0-1 +- rebased to 2.34.0 (rhbz#2302462) + +* Sat Jul 20 2024 Fedora Release Engineering - 2:2.33.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Mon Jul 15 2024 Dan Horák - 2:2.33.1-3 - "which" is not required any more - Revert "zipl/src: Fix problems when target parameters are specified by user" diff --git a/sources b/sources index e20d197..8572938 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (s390-tools-2.33.1.tar.gz) = 8e5cba1e5264787a2f89b340d4d9372df7cd28ae9fa263dcbc6cbbf460e48c1db167110ff901f35f82e36d0d8c97105acd7167b40d889a829c71b182e175b96c -SHA512 (s390-tools-2.33.1-rust-vendor.tar.xz) = 12b0d3af1eba223b63028b5fec85ff4cc79ec646671e56d4c3606b0b4a9d3f79469dc860141ff86e9a0fd2bc1d54f32f2588615997a9865adbe20a110237b98d +SHA512 (s390-tools-2.40.0.tar.gz) = 1943429581b280bf9ea370da3700a234d509837cb45b2354cdf79b38db87d2183010d18d9132defd77b9d8e11b7e002c447ffd7c912e20a50da4cb6877758c0e +SHA512 (s390-tools-2.40.0-rust-vendor.tar.xz) = fd1894c4e950a3c51054432731a3aeef4318e794aa4af2dc5fed31da16dce2020f014a64241e44766fb40b0fd6c1ac5943366e38dcfebf264875220ecf1285b5