Subject: RPM spec file with non-existant macro on CentOS 7

From: Jasmin Lévesque <[email-masked]>
Date: Wed, 10 Dec 2014 19:23:14 -0500

Package: x2goserver
Version: 4.1.0.0-0.0x2go1.0.git20141208.1203.heuler.el7.centos.x86_64

When installing the nightly build or a rebuilt package, I encounter the
following error:

/var/tmp/rpm-tmp.e1X31q: line 1: fg: no job control
error:
%pre(x2goserver-4.1.0.0-0.0x2go1.0.git20141208.1203.heuler.el7.centos.x86_64)
scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package
x2goserver-4.1.0.0-0.0x2go1.0.git20141208.1203.heuler.el7.centos.x86_64

The package fails to installs.

When digging for the PREIN scriplet, I find the only %pre in the x2goserver
is this line:
485: %systemd_pre x2goserver.service

These are the built-in macros related to systemd on a fresh CentOS 7
install:

[root@centos7 SPECS]# rpmbuild --showrc | grep systemd_
-14: systemd_post
-14: systemd_postun
-14: systemd_postun_with_restart
-14: systemd_preun
-14: systemd_requires

It seems the %systemd_pre macro is not available.

When commenting the line out, the package builds and installs successfully.

Thanks,

Jasmin Levesque
Senior system analyst
Vlan! Technologie