adding boinc-client-nox and boinctui for EL7

This commit is contained in:
tengel 2024-03-20 09:19:02 -05:00
parent b6511d3531
commit 8ef069461a
3 changed files with 441 additions and 0 deletions

View file

@ -0,0 +1,37 @@
# Log Rotation for BOINC Daemon Logs
#
# See http://boinc.berkeley.edu/ for more information about BOINC
#
# Daemon is stopped and then restarted after the logs are rotated.
#
# On restart, all results that checkpoint will fall back to the last one, if it exists.
# On restart, all results that did not checkpoint will start from the beginning.
# Author: Kathryn Marks <kathryn.boinc@gmail.com>
# Created: October 6, 2007
# Modified: Milos Jakubicek <xjakub@fi.muni.cz>
# Last Modified: July 19, 2009
######################################################################
/var/log/boinc.log /var/log/boincerr.log
{
missingok
compress
delaycompress
notifempty
nomail
create 664 boinc boinc
sharedscripts
prerotate
if [ -f /var/lock/subsys/boinc-client ]; then
touch /tmp/boinc_was_running
service boinc-client stop >& /dev/null
fi
endscript
postrotate
if [ -f /tmp/boinc_was_running ]; then
rm /tmp/boinc_was_running
service boinc-client start >& /dev/null
fi
endscript
}

364
boinc/boinc-client-nox.spec Normal file
View file

@ -0,0 +1,364 @@
%global revision dd0d630
%global gittag client_release/7/%{version}
%global gitbranch client_release/7/7.10
Summary: The BOINC client
Name: boinc-client-nox
Version: 7.10.2
Release: 3%{?dist}
License: LGPLv2+
Group: Applications/Engineering
URL: http://boinc.berkeley.edu/
Source0: https://github.com/BOINC/boinc/archive/%{gitbranch}/%{name}-%{gittag}.tar.gz
SOURCE1: boinc-client-logrotate-d
Requires: logrotate
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
Requires(pre): shadow-utils
BuildRequires: curl-devel
BuildRequires: libjpeg-devel
BuildRequires: gcc-c++
BuildRequires: gettext
BuildRequires: libtool
BuildRequires: openssl-devel
BuildRequires: sqlite-devel
BuildRequires: docbook2X
%description
The Berkeley Open Infrastructure for Network Computing (BOINC) is an open-
source software platform which supports distributed computing, primarily in
the form of "volunteer" computing and "desktop Grid" computing. It is well
suited for problems which are often described as "trivially parallel". BOINC
is the underlying software used by projects such as SETI@home, Einstein@Home,
ClimatePrediciton.net, the World Community Grid, and many other distributed
computing projects.
This package installs the BOINC client software, which will allow your
computer to participate in one or more BOINC projects, using your spare
computer time to search for cures for diseases, model protein folding, study
global warming, discover sources of gravitational waves, and many other types
of scientific and mathematical research.
%prep
%setup -q -n boinc-client_release-7-%{version}
# Don't force xss
sed -i 's/^ enable_xss="yes"$/ enable_xss="no"/' configure.ac
%build
%global confflags --with-boinc-platform=i686-pc-linux-gnu
%global debug_package %{nil}
./_autosetup
%configure %{?confflags} \
--prefix=/usr \
--sysconfdir=/etc \
--enable-libraries \
--enable-unicode \
--enable-shared \
--enable-dynamic-client-linkage \
--enable-client \
--disable-server \
--disable-static \
--disable-manager \
--disable-install-headers \
--disable-debug \
--with-ssl \
--without-wxdir \
--without-x \
DOCBOOK2X_MAN=/usr/bin/db2x_docbook2man
# Disable rpaths
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
%install
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/boinc
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
make install INSTALL="%{__install} -p" DESTDIR=$RPM_BUILD_ROOT
# Set up links to correct log locations
#ln -s /var/log/boinc/ %%{_localstatedir}/log/boinc.log
#ln -s /var/log/boinc/ %%{_localstatedir}/log/boincerr.log
# Remove libtool archives
rm $RPM_BUILD_ROOT%{_libdir}/*.la $RPM_BUILD_ROOT%{_libdir}/*.a
# Use custom systemd script and logrotate configuration file
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/init.d/boinc-client $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/boinc-client
install -p -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/boinc-client
# bash-completion
install -p -m644 client/scripts/boinc.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/boinc-client
%pre
# Create BOINC user and group
getent group boinc >/dev/null || groupadd -r boinc
getent passwd boinc >/dev/null || \
useradd -r -g boinc -d %{_localstatedir}/lib/boinc -s /sbin/nologin \
-c "BOINC client account." boinc
exit 0
%post
/sbin/ldconfig
%systemd_post boinc-client.service
%preun
%systemd_preun boinc-client.service
%postun
/sbin/ldconfig
%systemd_postun_with_restart boinc-client.service
%files
%doc COPYING COPYRIGHT
%{_bindir}/boinc
%{_bindir}/boinc_client
%{_bindir}/boinccmd
%{_bindir}/switcher
%{_unitdir}/boinc-client.service
%{_mandir}/man1/boinccmd.1.gz
%{_mandir}/man1/boinc.1.gz
%{_libdir}/*.so*
%config(noreplace) %{_sysconfdir}/logrotate.d/boinc-client
%config(noreplace) %{_sysconfdir}/bash_completion.d/boinc-client
%attr(-,boinc,boinc) %{_localstatedir}/lib/boinc/
%changelog
* Sat Nov 03 2018 Troy Engel <troyengel@gmail.com> - 7.10.2-3 nox
- Strip out all X and manager build, make a nox version
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.10.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jul 11 2018 Germano Massullo <germano.massullo@gmail.com> - 7.10.2-2
- Added BuildRequires: gcc-c++
* Wed May 02 2018 Laurence Field <laurence.field@cern.ch> - 7.10.2-1
- New BONC client version 7.10.2
* Wed Apr 25 2018 Laurence Field <laurence.field@cern.ch> - 7.10.1-1
- New BONC client version 7.10.1
* Fri Mar 09 2018 Laurence Field <laurence.field@cern.ch> - 7.9.3-1
- New BONC client version 7.9.3
* Fri Feb 23 2018 Germano Massullo <germano.massullo@gmail.com> - 7.9.2-3
- added macros to use mariadb-connector-c instead of mysql-* only for Fedora > 26
* Mon Feb 19 2018 Germano Massullo <germano.massullo@gmail.com> - 7.9.2-2
- Use mariadb-connector-c instead of mysql-libs or mariadb-libs. See bugreport #1494241
* Mon Feb 19 2018 Laurence Field <laurence.field@cern.ch> - 7.9.2-1
- New BONC client version 7.9.2
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.8.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Feb 02 2018 Germano Massullo <germano.massullo@gmail.com> - 7.8.4-4
- systemd unit file: changed from Type=forking to Type=simple and removed --daemon --start_delay 1 from ExecStart
* Mon Jan 15 2018 Germano Massullo <germano.massullo@gmail.com> - 7.8.4-3
- Removed obsolete %%defattr(-,root,root)
* Sun Jan 07 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 7.8.4-2
- Remove obsolete scriptlets
* Mon Nov 13 2017 Laurence Field <laurence.field@cern.ch> - 7.8.4-1
- New BONC client version 7.8.4
* Fri Oct 13 2017 Laurence Field <laurence.field@cern.ch> - 7.8.3-1
- New BONC client version 7.8.3
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.33-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.33-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Jun 09 2017 Germano Massullo <germano.massullo@gmail.com> - 7.6.33-3
- forced nice=19 in systemd boinc-client unit file
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.33-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Dec 28 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.33-1
- 7.6.33 release
* Thu Jul 21 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-7
- Disabled idle detection. See RedHat Bugzilla #1337607 for further infos. Thanks to Claudio Pisa for his hint on editing BOINC source code
* Sat Jun 25 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-6
- Improved solution to RH bugreport #1347423. Used -DNDEBUG flag instead of patching source code
* Sat Jun 25 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-5
- disabled wxWidgets trace. See RH bugreport #1347423
* Mon May 16 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-4
- Changed gtk+-x11-2.0 to gtk+-x11-3.0
* Mon May 16 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-3
- Edited systemd script to fix bugreport #1329332
* Mon May 16 2016 Germano Massullo <germano.massullo@gmail.com> - 7.6.22-2
- Rebuild to enforce GTK2 stuff removal and do tests to fix bugreport #1323492
* Thu Feb 18 2016 Laurence Field <laurence.field@cern.ch> - 7.6.22-1
- Upstream release of version 7.6.22
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.42-9.gitdd0d630
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Sun Jan 31 2016 Germano Massullo <germano.massullo@gmail.com> - 7.2.42-8.gitdd0d630
- Fixed %%{_sysconfdir}/bash_completion.d/ See https://bugzilla.redhat.com/show_bug.cgi?id=1192799
* Mon Nov 09 2015 Germano Massullo <germano.massullo@gmail.com> - 7.2.42-7.gitdd0d630
- fixed %%{_localstatedir}/lib/boinc/ ownership.
* Mon Aug 03 2015 Ralf Corsépius <corsepiu@fedoraproject.org> - 7.2.42-6.gitdd0d630
- Rework CXXFLAGS handling (Fix F23FTBS, RHBZ#1239389).
- Fix bogus permissions on %%{_localstatedir}/lib/boinc.
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2.42-5.gitdd0d630
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Nov 20 2014 Mattia Verga <mattia.verga@tiscali.it> - 7.2.42-4.gitdd0d630
- Clean up build requires and delete not official script.
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2.42-3.gitdd0d630
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2.42-2.gitdd0d630
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed Mar 19 2014 Mattia Verga <mattia.verga@tiscali.it> - 7.2.42-1.gitdd0d630
- Upgrade to 7.2.42
* Wed Feb 19 2014 Mattia Verga <mattia.verga@tiscali.it> - 7.2.39-1.gitdc95e3f
- Upgrade to 7.2.39 #1065275
- Remove ControlGroup setting from systemd unit file. #1065648
- Backport patch from 7.3 branch to (hopefully) fix idle time detection. #1047044
* Fri Feb 07 2014 Mattia Verga <mattia.verga@tiscali.it> - 7.2.33-3.git1994cc8
- Remove CPUShares limitation to systemd unit. #1038283
* Tue Dec 17 2013 Mattia Verga <mattia.verga@tiscali.it> - 7.2.33-2.git1994cc8
- Change default attribute of /var/lib/boinc to give write permission to boinc group
- Fix systemd requires as described in guidelines
* Tue Dec 17 2013 Mattia Verga <mattia.verga@tiscali.it> - 7.2.33-1.git1994cc8
- Update to 7.2.33
- Removed no more needed X11 patch
- Removed boinc manager notification patch see bug #990693
- Add patch to fix Italian locale dir
- Enabled parallel make
- Removed boincmgr wrap
- Fix checkin_notes
- Added boinc_gpu wrapper to fix GPU detection (see instruction on how to use it)
- Build now requires mariadb-devel instead of mysql-devel as actual default for Fedora
- Fix trim script for new directory and not remove html dir for build error
- Remove scripts for update from sysV to systemd
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.65-2.git79b00ef
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Sun Apr 28 2013 Miloš Jakubíček <xjakub@fi.muni.cz> - 7.0.65-1.git79b00ef
- Update to 7.0.65
- Fix /var/lib/boinc user and group (typo caused by the previous commit)
* Wed Feb 13 2013 Rahul Sundaram <sundaram@fedoraproject.org> - 7.0.44-3.git443c49949
- remove vendor tag from desktop file. https://fedorahosted.org/fpc/ticket/247
- clean up spec to follow current guidelines
- use systemd macros. resolves rhbz#850049
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.44-2.git443c49949
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Tue Jan 15 2013 Miloš Jakubíček <xjakub@fi.muni.cz> - 7.0.44-1.git443c49949
- Svn to Git switch of upstream sources
- Rebase the 7.0a branch to 7.0.44 (pulled from git)
- Removed BR: automake
- Dropped boinc-xcb-compat.patch (merged upstream)
* Tue Jan 15 2013 Miloš Jakubíček <xjakub@fi.muni.cz> - 7.0.36-2.r26158svn
- Added BR: automake
* Sat Jan 12 2013 Miloš Jakubíček <xjakub@fi.muni.cz> - 7.0.36-1.r26158svn
- Rebase the 7.0a branch to 7.0.36
- Removed non-free code as per BZ#894290
- Dropped boinc-client-menu.patch (merged upstream)
* Mon Aug 20 2012 Adam Jackson <ajax@redhat.com> 7.0.29-3.r25790svn
- Rebuild for new xcb-util soname
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.29-2.r25790svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jul 09 2012 Miloš Jakubíček <xjakub@fi.muni.cz> - 7.0.29-1.r25790svn
- Update to 7.0a branch
- Added boinc-client-X11.patch to workaround a --no-as-needed build issue
- Added boinc-manager-client-notification.patch to be tell users about how
to setup Boinc on Fedora
- Added backported boinc-client-menu.patch to fix menu display
- Don't use Boinc rotating log files (never deletes them)
- Fix automatic startup of the service
- Fix leaving lockfile after service stop
- Resolve BZ#731669, BZ#814060, BZ#825032, BZ#827912, BZ#829564, BZ#834900,
BZ#838507.
* Fri Jun 22 2012 Miloš Jakubíček <xjakub@fi.muni.cz> - 6.12.43-2.r25218svn
- Fixed naming systemd service file
- Fixed logging to /var/log/boinc.log and /var/log/boincerr.log
* Wed Feb 08 2012 Miloš Jakubíček <xjakub@fi.muni.cz> - 6.12.43-1.r25218svn
- Rebase the 6.12 branch to 6.12.43
- Switch from SysVInit to systemd
- drop boinc-libnotify.patch (merged upstream)
* Thu Jan 12 2012 Adam Jackson <ajax@redhat.com> 6.12.35-4.rsvn
- boinc-xcb-compat.patch: Also fix the atom enums to be compatible with
new XCB.
* Tue Dec 06 2011 Adam Jackson <ajax@redhat.com> - 6.12.35-3.r24014svn
- Rebuild for new libpng
* Thu Dec 01 2011 Adam Jackson <ajax@redhat.com> 6.12.35-2.rsvn
- Rebuild for new xcb-util
- boinc-glib-compat.patch: Build compat with new glib
- boinc-xcb-compat.patch: Build compat with new xcb-util
* Fri Aug 19 2011 Miloš Jakubíček <xjakub@fi.muni.cz> - 6.12.35-1.r24014svn
- Update to 6.12 branch (fix BZ#719875, BZ#690333)
- Dropped boinc-gui-rpc-port.patch (merged upstream)
- Added BR: libnotify-devel, xcb-util-devel
- Added boinc-libnotify.patch to build with libnotify >= 0.7
- Added boinc-manager-Makefile.patch to fix Makefile indentation error
- Now shipping also BOINC screensaver
- Added BOINC Client translation files
- Fixed scheduling problems related to cgroups (BZ#705444)
* Wed Feb 09 2011 Miloš Jakubíček <xjakub@fi.muni.cz> - 6.10.58-3.r22930svn
- Add boinc-gui-rpc-port.patch, fixing BZ#620585
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.10.58-2.r22930svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Thu Jan 20 2011 Miloš Jakubíček <xjakub@fi.muni.cz> - 6.10.58-1.r22930svn
- Rebase the 6.10 branch to 6.10.58
- Fix rpmlint complaining:
- E: executable-marked-as-config-file /etc/sysconfig/boinc-client
- E: script-without-shebang /etc/sysconfig/boinc-client

40
boinc/boinctui.spec Normal file
View file

@ -0,0 +1,40 @@
Name: boinctui
Version: 2.5.0
Release: 0%{?dist}
Summary: curses based manager for Boinc client
Group: Applications/Communications
License: GPL-3.0+
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source0: boinctui_%{version}.tar.gz
BuildRequires: autoconf ncurses-devel expat-devel openssl-devel
%description
boinctui is a fullscreen text based control tool for BOINC client.
based on curses library
%prep
#echo ----- %{SOURCE0}
#cp %{SOURCE0} %{buildroot}
#%setup -q -n %{name}
%setup -q -n %{name}-%{version}
%build
%global debug_package %{nil}
autoconf
./configure --without-gnutls
make clean
make
%install
make DESTDIR=%{buildroot} install
rm -f %{buildroot}%{_datadir}/doc/boinctui/changelog
%files
%doc changelog
%{_bindir}/%{name}
%changelog
* Sat Nov 03 2018 Troy Engel <troyengel@gmail.com> - 2.5.0
- Update for 2.5.0, disable debug, move changelog