mirror of
https://github.com/xcat2/xcat-dep.git
synced 2024-11-25 11:00:07 +00:00
171 lines
4.1 KiB
RPMSpec
171 lines
4.1 KiB
RPMSpec
#
|
|
# rpm spec file for conserver, but I don't think it'll work on any
|
|
# platform that doesn't have red hat rpm >= 4.0.2 installed.
|
|
#
|
|
|
|
%define pkg conserver
|
|
%define ver 8.1.16
|
|
|
|
# define the name of the machine on which the main conserver
|
|
# daemon will be running if you don't want to use the default
|
|
# hostname (console)
|
|
%define master console
|
|
|
|
# what red hat (or other distibution) version are you running?
|
|
%define distver 2
|
|
|
|
Summary: Serial console server daemon/client
|
|
Name: %{pkg}
|
|
Version: %{ver}
|
|
Release: %{distver}
|
|
License: BSD
|
|
Group: System Environment/Daemons
|
|
URL: http://www.conserver.com/
|
|
Source: http://www.conserver.com/%{pkg}-%{ver}.tar.gz
|
|
Patch: certificate-auth.patch
|
|
BuildRoot: %{_tmppath}/%{pkg}-buildroot
|
|
Prefix: %{_prefix}
|
|
|
|
|
|
%description
|
|
Conserver is an application that allows multiple users to watch a
|
|
serial console at the same time. It can log the data, allows users to
|
|
take write-access of a console (one at a time), and has a variety of
|
|
bells and whistles to accentuate that basic functionality.
|
|
|
|
|
|
%prep
|
|
%{__rm} -rf %{buildroot}
|
|
%setup -q
|
|
%patch -p1
|
|
|
|
|
|
%build
|
|
# we don't want to install the solaris conserver.rc file
|
|
f="conserver/Makefile.in"
|
|
%{__mv} $f $f.orig
|
|
%{__sed} -e 's/^.*conserver\.rc.*$//' < $f.orig > $f
|
|
|
|
%configure --with-master=%{master} --with-openssl --with-cffile=/etc/conserver.cf
|
|
make
|
|
|
|
|
|
%install
|
|
%{makeinstall}
|
|
|
|
# put commented copies of the sample configure files in the
|
|
# system configuration directory
|
|
%{__mkdir_p} %{buildroot}/%{_sysconfdir}
|
|
%{__sed} -e 's/^/#/' \
|
|
< conserver.cf/conserver.cf \
|
|
> %{buildroot}/%{_sysconfdir}/conserver.cf
|
|
%{__sed} -e 's/^/#/' \
|
|
< conserver.cf/conserver.passwd \
|
|
> %{buildroot}/%{_sysconfdir}/conserver.passwd
|
|
|
|
# install copy of init script
|
|
|
|
%ifos Linux
|
|
%{__mkdir_p} %{buildroot}/%{_initrddir}
|
|
%{__cp} contrib/redhat-rpm/conserver.init %{buildroot}/%{_initrddir}/conserver
|
|
%endif
|
|
|
|
|
|
%clean
|
|
%{__rm} -rf %{buildroot}
|
|
|
|
|
|
%post
|
|
# Create necessary console directories
|
|
#
|
|
mkdir -p /var/log/consoles
|
|
|
|
# Make sure /etc/services has a conserver entry
|
|
#
|
|
if ! egrep conserver /etc/services > /dev/null 2>&1 ; then
|
|
echo "console 782/tcp conserver" >> /etc/services
|
|
fi
|
|
|
|
# Remove any existing entry, then add the current one
|
|
#
|
|
rmitab "conserver" > /dev/null 2>&1
|
|
mkitab "conserver:2:once:/opt/conserver/bin/conserver -d -i -m 64"
|
|
|
|
# If the pid file exists, the daemon may be running
|
|
#
|
|
if [[ -s /var/run/conserver.pid ]]; then
|
|
# kill the daemon
|
|
#
|
|
kill -15 `cat /var/run/conserver.pid` > /dev/null 2>&1
|
|
|
|
# Does a configuration file exist?
|
|
#
|
|
if [[ -s /etc/opt/conserver/conserver.cf ]]; then
|
|
# is it a pre-8.0 configuration file?
|
|
#
|
|
OLD_FORMAT = grep "%%" /etc/opt/conserver/conserver.cf > /dev/null 2>&1
|
|
|
|
if [[ $OLD_FORMAT = "0" ]]; then
|
|
# 8.0 style config file, OK to try and start the daemon
|
|
#
|
|
/opt/conserver/bin/conserver -d -i -m 64
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
%preun
|
|
%ifos Linux
|
|
if [ "$1" = 0 ]; then
|
|
if [ -x %{_initrddir}/conserver ]; then
|
|
%{_initrddir}/conserver stop
|
|
/sbin/chkconfig --del conserver
|
|
fi
|
|
fi
|
|
%endif
|
|
|
|
# Only if we're the last package
|
|
#
|
|
if [[ "$1" = 0 ]]; then
|
|
# Remove the existing entry
|
|
#
|
|
rmitab "conserver" > /dev/null 2>&1
|
|
fi
|
|
|
|
%postun
|
|
|
|
# Only if we're the last package
|
|
#
|
|
if [[ "$1" = 0 ]]; then
|
|
# Remove conserver-specific directories
|
|
#
|
|
rm -fr /var/log/consoles
|
|
|
|
# If the pid file exists, the daemon may be running
|
|
#
|
|
if [[ -s /var/run/conserver.pid ]]; then
|
|
# kill the daemon
|
|
#
|
|
kill -15 `cat /var/run/conserver.pid` > /dev/null 2>&1
|
|
|
|
# Now remove the pid file
|
|
#
|
|
rm -f /var/run/conserver.pid
|
|
fi
|
|
fi
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc CHANGES FAQ INSTALL README conserver.cf
|
|
%config(noreplace) %{_sysconfdir}/conserver.cf
|
|
%config(noreplace) %{_sysconfdir}/conserver.passwd
|
|
# %attr(555,root,root) /%{_initrddir}/conserver
|
|
%{prefix}/bin/console
|
|
# %{prefix}/lib64/conserver/convert
|
|
%{prefix}/man/man1/console.1
|
|
%{prefix}/man/man8/conserver.8
|
|
%{prefix}/man/man5/conserver.cf.5
|
|
%{prefix}/man/man5/conserver.passwd.5
|
|
%{prefix}/share/examples/conserver/conserver.cf
|
|
%{prefix}/share/examples/conserver/conserver.passwd
|
|
%{prefix}/sbin/conserver
|