#2289 Issue closed: SLES 15 SP1: genisoimage has been renamed to mkisofs

Labels: fixed / solved / done, minor bug

musyl opened issue at 2019-11-27 15:45:

Relax-and-Recover (ReaR) Issue Template

Fill in the following items before submitting a new issue
(quick response is not guaranteed with free support):

  • ReaR version ("/usr/sbin/rear -V"):
    Relax-and-Recover 2.5

  • OS version ("cat /etc/rear/os.conf" or "lsb_release -a" or "cat /etc/os-release"):
    SUSE Linux Enterprise Server 15 SP1

  • ReaR configuration files ("cat /etc/rear/site.conf" and/or "cat /etc/rear/local.conf"):

  • Hardware (PC or PowerNV BareMetal or ARM) or virtual machine (KVM guest or PoverVM LPAR):
    PowerVM LPAR

  • System architecture (x86 compatible or PPC64/PPC64LE or what exact ARM device):
    PPC64LE

  • Firmware (BIOS or UEFI or Open Firmware) and bootloader (GRUB or ELILO or Petitboot):
    Open Firmware

  • Storage (local disk or SSD) and/or SAN (FC or iSCSI or FCoE) and/or multipath (DM or NVMe):
    SAN-FC and multipath-DM

  • Description of the issue (ideally so that others can reproduce it):
    In the rear.spec file for ReaR's rpm packaging, the SLES 15 SP1 version (suse_version 1500) is not included. For SLES 15 SP1 the genisoimage package is renamed mkisofs.

  • Workaround, if any:

  • Attachments, as applicable ("rear -D mkrescue/mkbackup/recover" debug log files):

packaging/rpm/rear.spec

```
%if %{?suse_version:1}0
Requires: iproute2
### recent SUSE versions have an extra nfs-client package
### and switched to genisoimage/wodim
%if 0%{?suse_version} >= 1020
Requires: genisoimage
%else
Requires: mkisofs
%endif
###
%endif

```

gdha commented at 2019-11-29 09:00:

For SLE15_SP1 the license should become GPL-3.0-only according https://spdx.org/licenses/

[   95s] rear.src: E: invalid-license (Badness: 100000) GPLv3
[   95s] rear.x86_64: E: invalid-license (Badness: 100000) GPLv3
[   95s] The specified license string is not recognized. Please refer to
[   95s] https://spdx.org/licenses/ for the list of known licenses and their exact
[   95s] spelling.
[   95s] 
[   95s] (none): E: badness 200000 exceeds threshold 1000, aborting.
[   95s] 2 packages and 0 specfiles checked; 2 errors, 13 warnings.
[   95s] 
[   95s] 
[   95s] cloud114 failed "build rear.spec" at Fri Nov 29 06:53:51 UTC 2019.

Need to verify what RHEL says about this for their spec --> https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing
Seems to be named as GPLv3 (which is currently used in our spec file).

jsmeix commented at 2019-11-29 14:26:

FWIW:

I use my own rear.spec for the rear RPM in openSUSE at
https://build.opensuse.org/package/show/Archiving/rear
which contains (excepts)

%bcond_without  use_mkisofs
...
%if %{with use_mkisofs}
Requires:       %{_bindir}/mkisofs
%else
Requires:       %{_bindir}/genisoimage
%endif

but I have no idea how this magic automatism works
and to what extent it actually results what is needed.

I suggest to use RPM weak Recommends e.g. like

Recommends: %{_bindir}/mkisofs
Recommends: %{_bindir}/genisoimage

so that such issues do not cause hard errors
while installing ReaR.

Using Recommends instead of hard Requires
has the additional advantage that the user can
even use ReaR without mkisofs or genisoimage,
e.g. when he does not want to make an ISO image
i.e. when he does not use OUTPUT=ISO.

Regading the License field and openSUSE's RPM checks:

What openSUSE's RPM checks complain about may depend
on the openSUSE version (or other distribution version)
where the package is built on.

On newer versions openSUSE's RPM checks may complain about this
while on older versions openSUSE's RPM checks complain about that.

It may happen that it is impossible (in practice with reasonable effort)
to make a RPM spec file that works cleanly on older and newer
distibutions.

gdha commented at 2019-12-09 13:18:

@jsmeix I agree it would be a good idea to replace the Requires with Recommends fields.

jsmeix commented at 2019-12-09 16:27:

Done via
https://github.com/rear/rear/commit/a9c90aa74d75e5e4147ca7b93a0d14f9083040ec

@gdha
is that sufficient or are more such adaptions needed at other places
e.g. also in the RPM spec files in the OBS packages?

gdha commented at 2020-01-21 09:33:

@jsmeix it still does not build for SLES 15Sp1 due to the License error, but as you mentioned, I don't have an idea yet how to circumvent this.

gozora commented at 2020-01-21 10:46:

Hello @gdha

I had maybe similar issue with ebiso.
I had to change .spec file as follows https://build.opensuse.org/package/rdiff/home:gozora/ebiso?linkrev=base&rev=32

V.

jsmeix commented at 2020-01-21 13:25:

@gozora
thank you!

Hopefully done via
https://github.com/rear/rear/commit/3e5632d933afc1dc3c343dfed8c8d658109182a8

Let's see when those OBS guardian scripts let things fail again...


[Export of Github issue for rear/rear.]