forked from pool/boinc-client
Accepting request 103768 from network
fix for bnc#732118, bnc#744389, bnc#744612, bnc#745887 OBS-URL: https://build.opensuse.org/request/show/103768 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boinc-client?expand=0&rev=20
This commit is contained in:
commit
a240b4cf6e
@ -1,6 +1,8 @@
|
||||
--- locale/Makefile.am 2010-04-15 13:59:36.000000000 -0500
|
||||
+++ locale/Makefile.am.orig 2010-10-04 11:03:57.000000000 -0500
|
||||
@@ -45,9 +45,9 @@
|
||||
Index: locale/Makefile.am
|
||||
===================================================================
|
||||
--- locale/Makefile.am.orig
|
||||
+++ locale/Makefile.am
|
||||
@@ -45,9 +45,9 @@ locale_dirs = \
|
||||
install-exec-hook:
|
||||
mydir=$(DESTDIR)$(datadir) ;\
|
||||
for ldir in $(locale_dirs) ; do \
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: lib/filesys.cpp
|
||||
===================================================================
|
||||
--- lib/filesys.cpp.orig 2011-05-16 18:13:03.000000000 +0200
|
||||
+++ lib/filesys.cpp 2011-05-16 18:49:23.426248908 +0200
|
||||
--- lib/filesys.cpp.orig
|
||||
+++ lib/filesys.cpp
|
||||
@@ -36,6 +36,7 @@
|
||||
#include <sys/time.h>
|
||||
#include <unistd.h>
|
||||
|
@ -1,3 +1,59 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 10 23:07:01 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- fix sed for boinc-manager
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 22:51:55 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- fix for bnc#745887 ( Confirm licensing of boinc-client 6.10.60 )
|
||||
- fix for bnc#744612 ( File /usr/bin/boinc_gui incorrectly named )
|
||||
- fix for bnc#744389 ( boinc-client will not run )
|
||||
- fix for bnc#732118 ( BOINC installs but will not run )
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 22:39:34 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- fix replacing old sysconfig file
|
||||
- revert boinc users shell to /sbin/nologin
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 6 15:05:05 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- fix License (http://www.spdx.org/licenses/)
|
||||
* LGPL-3.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Feb 5 23:11:38 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- remove client dep of manager
|
||||
* manager does not really need a local boinc-client ;)
|
||||
- fix desktop file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 4 00:37:37 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- fix deps for boinc-client
|
||||
* Requires libboinc6
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 2 20:32:57 UTC 2012 - chris@computersalat.de
|
||||
|
||||
- rework patches
|
||||
- rework sysconfig file
|
||||
- rework logrotate file
|
||||
- add SuSElike init script
|
||||
- fix user add
|
||||
* boinc needs a shell
|
||||
- fix wrapper
|
||||
* replace boincmanager with boinc-manager and add symlink for
|
||||
backward compatibility
|
||||
* fix boinc_gui -> boinc-gui
|
||||
- fix License
|
||||
* LGPLv3
|
||||
- fix for bnc#689499
|
||||
* a blocked boinc client, the manager works
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 30 20:07:45 UTC 2011 - coolo@suse.com
|
||||
|
||||
|
216
boinc-client.init
Normal file
216
boinc-client.init
Normal file
@ -0,0 +1,216 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2012 Scorpio IT, Deidesheim, Germany
|
||||
# All rights reserved
|
||||
#
|
||||
# Author: Christian Wittmer <rpm@scorpio-it.net>
|
||||
#
|
||||
# /etc/init.d/boinc-client
|
||||
# and its symbolic link
|
||||
# /(usr/)sbin/rcboinc-client
|
||||
#
|
||||
### BEGIN INIT INFO
|
||||
# Provides: boinc-client
|
||||
# Required-Start: $syslog $network $remote_fs
|
||||
# Should-Start: $time
|
||||
# Required-Stop: $syslog $network $remote_fs
|
||||
# Should-Stop: $time
|
||||
# Default-Start: 3 5
|
||||
# Default-Stop: 0 1 2 6
|
||||
# Short-Description: BOINC daemon providing boinc-client
|
||||
# Description: Start BOINC client
|
||||
# For more information about BOINC (the Berkeley Open Infrastructure
|
||||
# for Network Computing) see http://boinc.berkeley.edu
|
||||
### END INIT INFO
|
||||
#
|
||||
|
||||
# Note on runlevels:
|
||||
# 0 - halt/poweroff 6 - reboot
|
||||
# 1 - single user 2 - multiuser without network exported
|
||||
# 3 - multiuser w/ network (text mode) 5 - multiuser w/ network and X11 (xdm)
|
||||
#
|
||||
# Note on script names:
|
||||
# http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/scrptnames.html
|
||||
# A registry has been set up to manage the init script namespace.
|
||||
# http://www.lanana.org/
|
||||
# Please use the names already registered or register one or use a
|
||||
# vendor prefix.
|
||||
|
||||
|
||||
# Check for missing binaries (stale symlinks should not happen)
|
||||
# Note: Special treatment of stop for LSB conformance
|
||||
BOINC_BIN=/usr/bin/boinc-client
|
||||
test -x $BOINC_BIN || { echo "$BOINC_BIN not installed";
|
||||
if [ "$1" = "stop" ]; then exit 0;
|
||||
else exit 5; fi; }
|
||||
|
||||
# Check for existence of needed config file and read it
|
||||
BOINC_CONFIG=/etc/sysconfig/boinc-client
|
||||
test -r $BOINC_CONFIG || { echo "$BOINC_CONFIG not existing";
|
||||
if [ "$1" = "stop" ]; then exit 0;
|
||||
else exit 6; fi; }
|
||||
|
||||
# Read config
|
||||
. $BOINC_CONFIG
|
||||
|
||||
# some other VARS
|
||||
BOINC_SVC="BOINC Client"
|
||||
|
||||
BOINC_DIR="/var/lib/boinc"
|
||||
BOINCCMD_BIN="/usr/bin/boinccmd"
|
||||
BOINC_LOG="/var/log/boinc-client.log"
|
||||
BOINC_ERRLOG="/var/log/boinc-client.err.log"
|
||||
BOINC_PIDFILE="/var/run/boinc-client.pid"
|
||||
BOINC_LOCKFILE="/var/run/boinc-client.lock"
|
||||
|
||||
BOINC_USR=${BOINC_BOINC_USR:="boinc"}
|
||||
BOINC_GRP=${BOINC_BOINC_GRP:="boinc"}
|
||||
BOINC_OPTS=${BOINC_BOINC_OPTS:=""}
|
||||
|
||||
# Source LSB init functions
|
||||
# providing start_daemon, killproc, pidofproc,
|
||||
# log_success_msg, log_failure_msg and log_warning_msg.
|
||||
# This is currently not used by UnitedLinux based distributions and
|
||||
# not needed for init scripts for UnitedLinux only. If it is used,
|
||||
# the functions from rc.status should not be sourced or used.
|
||||
#. /lib/lsb/init-functions
|
||||
|
||||
# Shell functions sourced from /etc/rc.status:
|
||||
# rc_check check and set local and overall rc status
|
||||
# rc_status check and set local and overall rc status
|
||||
# rc_status -v be verbose in local rc status and clear it afterwards
|
||||
# rc_status -v -r ditto and clear both the local and overall rc status
|
||||
# rc_status -s display "skipped" and exit with status 3
|
||||
# rc_status -u display "unused" and exit with status 3
|
||||
# rc_failed set local and overall rc status to failed
|
||||
# rc_failed <num> set local and overall rc status to <num>
|
||||
# rc_reset clear both the local and overall rc status
|
||||
# rc_exit exit appropriate to overall rc status
|
||||
# rc_active checks whether a service is activated by symlinks
|
||||
. /etc/rc.status
|
||||
|
||||
# Reset status of this service
|
||||
rc_reset
|
||||
|
||||
# Return values acc. to LSB for all commands but status:
|
||||
# 0 - success
|
||||
# 1 - generic or unspecified error
|
||||
# 2 - invalid or excess argument(s)
|
||||
# 3 - unimplemented feature (e.g. "reload")
|
||||
# 4 - user had insufficient privileges
|
||||
# 5 - program is not installed
|
||||
# 6 - program is not configured
|
||||
# 7 - program is not running
|
||||
# 8--199 - reserved (8--99 LSB, 100--149 distrib, 150--199 appl)
|
||||
#
|
||||
# Note that starting an already running service, stopping
|
||||
# or restarting a not-running service as well as the restart
|
||||
# with force-reload (in case signaling is not supported) are
|
||||
# considered a success.
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n "Starting ${BOINC_SVC} "
|
||||
## Start daemon with startproc(8). If this fails
|
||||
## the return value is set appropriately by startproc.
|
||||
/sbin/startproc -u $BOINC_USR -g $BOINC_GRP -l $BOINC_LOG -s $BOINC_BIN --dir $BOINC_DIR $BOINC_OPTS
|
||||
|
||||
# Remember status and be verbose
|
||||
rc_status -v
|
||||
;;
|
||||
stop)
|
||||
echo -n "Shutting down ${BOINC_SVC} "
|
||||
## Stop daemon with killproc(8) and if this fails
|
||||
## killproc sets the return value according to LSB.
|
||||
|
||||
/sbin/killproc $BOINC_BIN
|
||||
|
||||
# Remember status and be verbose
|
||||
rc_status -v
|
||||
;;
|
||||
try-restart|condrestart)
|
||||
## Do a restart only if the service was active before.
|
||||
## Note: try-restart is now part of LSB (as of 1.9).
|
||||
## RH has a similar command named condrestart.
|
||||
if test "$1" = "condrestart"; then
|
||||
echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"
|
||||
fi
|
||||
$0 status
|
||||
if test $? = 0; then
|
||||
$0 restart
|
||||
else
|
||||
rc_reset # Not running is not a failure.
|
||||
fi
|
||||
# Remember status and be quiet
|
||||
rc_status
|
||||
;;
|
||||
restart)
|
||||
## Stop the service and regardless of whether it was
|
||||
## running or not, start it again.
|
||||
$0 stop
|
||||
$0 start
|
||||
|
||||
# Remember status and be quiet
|
||||
rc_status
|
||||
;;
|
||||
force-reload)
|
||||
## Signal the daemon to reload its config. Most daemons
|
||||
## do this on signal 1 (SIGHUP).
|
||||
## If it does not support it, restart the service if it
|
||||
## is running.
|
||||
|
||||
echo -n "Reload service ${BOINC_SVC} "
|
||||
## if it supports it:
|
||||
#/sbin/killproc -HUP $BOINC_BIN
|
||||
#touch /var/run/$BOINC_PIDFILE
|
||||
|
||||
# Remember status and be verbose
|
||||
#rc_status -v
|
||||
|
||||
## Otherwise:
|
||||
$0 try-restart
|
||||
# Remember status and be quiet
|
||||
rc_status
|
||||
;;
|
||||
reload)
|
||||
## Like force-reload, but if daemon does not support
|
||||
## signaling, do nothing (!)
|
||||
|
||||
# If it supports signaling:
|
||||
echo -n "Reload service ${BOINC_SVC} "
|
||||
#/sbin/killproc -HUP $BOINC_BIN
|
||||
#touch /var/run/FOO.pid
|
||||
# Remember status and be verbose
|
||||
#rc_status -v
|
||||
|
||||
|
||||
## Otherwise if it does not support reload:
|
||||
rc_failed 3
|
||||
# Remember status and be verbose
|
||||
rc_status -v
|
||||
;;
|
||||
status)
|
||||
echo -n "Checking for service ${BOINC_SVC} "
|
||||
## Check status with checkproc(8), if process is running
|
||||
## checkproc will return with exit status 0.
|
||||
|
||||
# Return value is slightly different for the status command:
|
||||
# 0 - service up and running
|
||||
# 1 - service dead, but /var/run/ pid file exists
|
||||
# 2 - service dead, but /var/lock/ lock file exists
|
||||
# 3 - service not running (unused)
|
||||
# 4 - service status unknown :-(
|
||||
# 5--199 reserved (5--99 LSB, 100--149 distro, 150--199 appl.)
|
||||
|
||||
# NOTE: checkproc returns LSB compliant status values.
|
||||
/sbin/checkproc $BOINC_BIN
|
||||
# NOTE: rc_status knows that we called this init script with
|
||||
# "status" option and adapts its messages accordingly.
|
||||
rc_status -v
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
rc_exit
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package boinc-client
|
||||
#
|
||||
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2011 by Sascha Manns <saigkill@opensuse.org>
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
@ -16,30 +16,30 @@
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
# norootforbuild
|
||||
|
||||
# Global definitions
|
||||
%define _use_internal_dependency_generator 0
|
||||
%if 0%{?suse_version} >= 1140
|
||||
%define __find_requires %wx_requires
|
||||
%endif
|
||||
%define version_ 6_10_60
|
||||
%define soname 6
|
||||
%define boinc_dir %{_localstatedir}/lib/boinc
|
||||
|
||||
Name: boinc-client
|
||||
Version: 6.10.60
|
||||
Release: 1
|
||||
Summary: The BOINC client core
|
||||
License: LGPLv2+
|
||||
License: LGPL-3.0
|
||||
Group: Productivity/Clustering/Computing
|
||||
Url: http://boinc.berkeley.edu/
|
||||
|
||||
Source0: boinc_core_release_%{version_}.tar.bz2
|
||||
Source1: boinc-icons.tar.bz2
|
||||
Source2: boinc-gui.desktop
|
||||
Source3: README.SUSE
|
||||
Source4: sysconfig.boinc-client
|
||||
Source4: sysconfig.%{name}
|
||||
Source5: boinc-logrotate
|
||||
Source6: boincmanager
|
||||
Source7: boinc-client-rpmlintrc
|
||||
Source6: boinc-manager
|
||||
# The source for this package was pulled from upstream's vcs. Use the
|
||||
# following commands to generate the tarball:
|
||||
#
|
||||
@ -47,6 +47,7 @@ Source7: boinc-client-rpmlintrc
|
||||
#
|
||||
# Trim all binaries and other unnecessary things.
|
||||
Source8: generate-tarball.sh
|
||||
Source10: %{name}.init
|
||||
Source100: %{name}-rpmlintrc
|
||||
|
||||
# PATCH-FIX-OPENSUSE boinc-guirpcauth.patch
|
||||
@ -66,9 +67,9 @@ Patch4: boinc-docbook2x.patch
|
||||
# PATCH-FIX-OPENSUSE boinc-server.patch
|
||||
Patch5: boinc-server.patch
|
||||
# PATCH-FIX-OPENSUSE saigkill@opensuse.org adds define HAVE_STRCASESRTR
|
||||
Patch6: boinc-client-str_util.patch
|
||||
Patch6: %{name}-str_util.patch
|
||||
# PATCH-FIX-OPENSUSE pth@suse.de use asprintf to fix buffer overflow
|
||||
Patch7: boinc-client-dynamic_buffers.patch
|
||||
Patch7: %{name}-dynamic_buffers.patch
|
||||
#
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
@ -111,9 +112,9 @@ BuildRequires: wxWidgets-devel >= 2.8.7
|
||||
|
||||
Requires: logrotate
|
||||
Requires: cron
|
||||
#Requires: libboinc%{soname} = %{version}-%{release}
|
||||
|
||||
%lang_package
|
||||
%lang_package -n boinc-manager
|
||||
|
||||
%description
|
||||
The Berkeley Open Infrastructure for Network Computing (BOINC) is an open-
|
||||
@ -131,10 +132,8 @@ global warming, discover sources of gravitational waves, and many other types
|
||||
of scientific and mathematical research.
|
||||
|
||||
%package -n boinc-manager
|
||||
|
||||
Summary: GUI to control and monitor %{name}
|
||||
Summary: GUI to control and monitor boinc-client
|
||||
Group: Productivity/Scientific/Astronomy
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: boinc-manager-lang = %{version}-%{release}
|
||||
Requires: hicolor-icon-theme
|
||||
|
||||
@ -145,11 +144,8 @@ monitoring. The BOINC Manager has two modes of operation, the "Simple View" in
|
||||
which it only displays the most important information and the "Advanced View"
|
||||
in which all information and all control elements are available.
|
||||
|
||||
|
||||
%lang_package -n boinc-manager
|
||||
%package devel
|
||||
|
||||
Summary: Development files for %{name}
|
||||
Summary: Development files for boinc-client
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: mysql-devel
|
||||
@ -159,7 +155,6 @@ Requires: openssl-devel
|
||||
This package contains development files for %{name}.
|
||||
|
||||
%package -n libboinc%{soname}
|
||||
|
||||
Summary: Shared Libs for %{name}
|
||||
Group: System/Libraries
|
||||
|
||||
@ -171,7 +166,6 @@ which it only displays the most important information and the "Advanced View"
|
||||
in which all information and all control elements are available.
|
||||
|
||||
%package doc
|
||||
|
||||
Summary: Documentation files for %{name}
|
||||
Group: Documentation/Other
|
||||
%if 0%{?suse_version} >= 1120
|
||||
@ -210,6 +204,14 @@ pushd clientgui/res/skins/default/graphic/
|
||||
%{__sed} -i 's/static char/static const char/g' *.xpm
|
||||
popd
|
||||
|
||||
### bnc#745656
|
||||
## remove files with questionable licenses
|
||||
# removing NVIDIA owned file that does not clearly allow redistribution or
|
||||
# modification
|
||||
%{__rm} coprocs/CUDA/include/nvapi.h
|
||||
# removing unnecessary APSL licensed files
|
||||
%{__rm} client/app_stats_mac.cpp
|
||||
|
||||
%build
|
||||
#remove ltmain.sh & run libtoolize and ./_autosetup
|
||||
%{__rm} ltmain.sh
|
||||
@ -240,42 +242,48 @@ popd
|
||||
%{makeinstall}
|
||||
|
||||
# Creates default folders
|
||||
%{__mkdir} -p %{buildroot}%{_datadir}/icons/hicolor/16x16/apps
|
||||
%{__mkdir} -p %{buildroot}%{_datadir}/icons/hicolor/32x32/apps
|
||||
%{__mkdir} -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps
|
||||
%{__mkdir} -p %{buildroot}%{_initrddir}
|
||||
%{__mkdir} -p %{buildroot}%{_localstatedir}/lib/boinc
|
||||
%{__mkdir} -p %{buildroot}%{_mandir}/man1
|
||||
%{__mkdir} -p %{buildroot}%{_sysconfdir}/logrotate.d/
|
||||
%{__install} -dm0755 %{buildroot}%{boinc_dir}
|
||||
%{__install} -dm0755 %{buildroot}%{_mandir}/man1
|
||||
|
||||
# Remove old boinc & rename boinc_client to boinc-client
|
||||
%{__rm} -f %{buildroot}%{_bindir}/boinc
|
||||
%{__mv} -f %{buildroot}%{_bindir}/boinc_client %{buildroot}%{_bindir}/boinc-client
|
||||
%{__mv} -f %{buildroot}%{_bindir}/boinc_client %{buildroot}%{_bindir}/%{name}
|
||||
|
||||
# Rename boincmgr and wrap it
|
||||
%{__mv} %{buildroot}%{_bindir}/boincmgr %{buildroot}%{_bindir}/boinc-gui
|
||||
|
||||
# Install boinc-manager wrapper script
|
||||
%{__install} -Dm0755 %{S:6} %{buildroot}%{_bindir}/boinc-manager
|
||||
|
||||
# Use symlink instead of hardlink
|
||||
pushd %{buildroot}%{_bindir}
|
||||
/bin/ln -sf boinc-client boinc
|
||||
%{__ln_s} -f %{name} boinc
|
||||
%{__ln_s} -f boinc-manager boincmgr
|
||||
%{__ln_s} -f boinc-manager boincmanager
|
||||
popd
|
||||
|
||||
# Rename boincmgr and wrap it
|
||||
%{__mv} %{buildroot}%{_bindir}/boincmgr %{buildroot}%{_bindir}/boinc_gui
|
||||
|
||||
# Install boincmanager wrapper script
|
||||
%{__install} -Dm0755 %{S:6} %{buildroot}%{_bindir}/boincmanager
|
||||
# replace @boinc_dir@, @bindir@
|
||||
%{__sed} -i \
|
||||
-e "s,@boinc_dir@,%{boinc_dir},g" \
|
||||
-e "s,@bindir@,%{_bindir},g" \
|
||||
%{buildroot}%{_bindir}/boinc-manager
|
||||
|
||||
# Remove /etc/sysconfig/boinc-client, it is added by %%fillup_and_insserv
|
||||
%{__rm} -f %{buildroot}%{_sysconfdir}/sysconfig/boinc-client
|
||||
%{__rm} -f %{buildroot}%{_sysconfdir}/sysconfig/%{name}
|
||||
|
||||
# Install logrotate and create symlink to /etc/init.d/boinc-client
|
||||
# Install init and create symlink to /etc/init.d/boinc-client
|
||||
%{__install} -Dm0755 %{S:10} %{buildroot}%{_initrddir}/%{name}
|
||||
%{__install} -dm0755 %{buildroot}%{_sbindir}
|
||||
/bin/ln -sf %{_sysconfdir}/init.d/boinc-client %{buildroot}%{_sbindir}/rcboinc-client
|
||||
/bin/ln -sf %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
|
||||
|
||||
# Install logrotate
|
||||
%{__install} -Dm0644 %{S:5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
||||
|
||||
# Install bash completition
|
||||
%{__install} -Dpm0644 client/scripts/boinc.bash %{buildroot}%{_sysconfdir}/bash_completion.d/boinc
|
||||
|
||||
# Install template for sysconfig
|
||||
%{__install} -Dm0644 %{S:4} %{buildroot}/var/adm/fillup-templates/sysconfig.boinc-client
|
||||
%{__install} -Dm0644 %{S:4} %{buildroot}/var/adm/fillup-templates/sysconfig.%{name}
|
||||
|
||||
# Install desktop-file and icons
|
||||
%{__install} -Dm0644 boinc-gui-128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/boinc-gui.png
|
||||
@ -316,21 +324,26 @@ popd
|
||||
%{__rm} -rf '%{buildroot}'
|
||||
|
||||
%pre
|
||||
# Add 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
|
||||
%fillup_and_insserv boinc-client
|
||||
# add group
|
||||
%{_sbindir}/groupadd -r boinc 2>/dev/null || :
|
||||
# add user
|
||||
%{_sbindir}/useradd -c "BOINC Client" -d "%{_localstatedir}/lib/boinc" \
|
||||
-g boinc -r -s /sbin/nologin boinc 2>/dev/null || :
|
||||
if [ -f %{_sysconfdir}/sysconfig/%{name} ]; then
|
||||
if [ "$(grep "BOINC_BOINC_USR" /etc/sysconfig/boinc-client | grep -v grep >/dev/null; echo $?)" == 1 ]; then
|
||||
mv -f %{_sysconfdir}/sysconfig/%{name} %{_sysconfdir}/sysconfig/%{name}.save
|
||||
fi
|
||||
fi
|
||||
|
||||
%preun
|
||||
%stop_on_removal boinc-client
|
||||
%stop_on_removal %{name}
|
||||
|
||||
%post
|
||||
%fillup_and_insserv %{name}
|
||||
%{_sbindir}/usermod -c "BOINC Client" boinc 2>/dev/null || :
|
||||
|
||||
%postun
|
||||
%restart_on_update boinc-client
|
||||
%restart_on_update %{name}
|
||||
%insserv_cleanup
|
||||
|
||||
%post -n boinc-manager
|
||||
@ -355,13 +368,13 @@ fi
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYING COPYRIGHT INSTALL notes todo TODO_OLD README.SUSE
|
||||
%doc COPYING* COPYRIGHT INSTALL notes todo TODO_OLD README.SUSE
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
||||
%config(noreplace) %{_sysconfdir}/bash_completion.d/
|
||||
/var/adm/fillup-templates/sysconfig.boinc-client
|
||||
/var/adm/fillup-templates/sysconfig.%{name}
|
||||
%{_bindir}/boinc
|
||||
%{_bindir}/boinc-client
|
||||
%{_sbindir}/rcboinc-client
|
||||
%{_bindir}/%{name}
|
||||
%{_sbindir}/rc%{name}
|
||||
%{_bindir}/boinccmd
|
||||
%{_bindir}/switcher
|
||||
%{_initrddir}/%{name}
|
||||
@ -377,7 +390,9 @@ fi
|
||||
|
||||
%files -n boinc-manager
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/boinc_gui
|
||||
%{_bindir}/boinc-gui
|
||||
%{_bindir}/boinc-manager
|
||||
%{_bindir}/boincmgr
|
||||
%{_bindir}/boincmanager
|
||||
%{_datadir}/applications/boinc-gui.desktop
|
||||
%{_datadir}/icons/hicolor/*/apps/*
|
||||
|
@ -1,6 +1,8 @@
|
||||
--- client/scripts/boinc.bash 2008-05-16 10:01:52.000000000 -0500
|
||||
+++ client/scripts/boinc.bash.orig 2010-10-04 11:19:36.000000000 -0500
|
||||
@@ -36,7 +36,7 @@
|
||||
Index: client/scripts/boinc.bash
|
||||
===================================================================
|
||||
--- client/scripts/boinc.bash.orig
|
||||
+++ client/scripts/boinc.bash
|
||||
@@ -36,7 +36,7 @@ _boinc()
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
|
@ -1,6 +1,8 @@
|
||||
--- configure.ac 2010-07-01 12:09:41.000000000 -0500
|
||||
+++ configure.ac.orig 2010-10-03 16:24:03.000000000 -0500
|
||||
@@ -284,7 +284,7 @@
|
||||
Index: configure.ac
|
||||
===================================================================
|
||||
--- configure.ac.orig
|
||||
+++ configure.ac
|
||||
@@ -284,7 +284,7 @@ AC_SUBST([TOP_BUILD_DIR], [`pwd`])
|
||||
dnl Check for docbook2x-man, which we use to create the manpages in
|
||||
dnl doc/manpages, and set the conditional HAVE_DOCBOOK2X_MAN to build
|
||||
dnl the manpages only if docbook2x-man is available.
|
||||
|
@ -1,6 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Exec=boincmanager
|
||||
Exec=boinc-manager
|
||||
Icon=boinc-gui
|
||||
Terminal=false
|
||||
Type=Application
|
||||
|
@ -1,6 +1,8 @@
|
||||
--- client/gui_rpc_server.cpp 2010-06-18 11:45:45.000000000 -0500
|
||||
+++ client/gui_rpc_server.cpp.orig 2010-10-04 13:23:39.000000000 -0500
|
||||
@@ -146,12 +146,7 @@
|
||||
Index: client/gui_rpc_server.cpp
|
||||
===================================================================
|
||||
--- client/gui_rpc_server.cpp.orig
|
||||
+++ client/gui_rpc_server.cpp
|
||||
@@ -146,12 +146,7 @@ int GUI_RPC_CONN_SET::get_password() {
|
||||
// they can cause code to execute as this user.
|
||||
// So better protect it.
|
||||
//
|
||||
|
@ -2,7 +2,7 @@ Index: client/scripts/boinc-client.in
|
||||
===================================================================
|
||||
--- client/scripts/boinc-client.in.orig
|
||||
+++ client/scripts/boinc-client.in
|
||||
@@ -19,13 +19,13 @@
|
||||
@@ -19,14 +19,16 @@
|
||||
# For more information about BOINC (the Berkeley Open Infrastructure
|
||||
# for Network Computing) see http://boinc.berkeley.edu
|
||||
# processname: boinc
|
||||
@ -10,17 +10,22 @@ Index: client/scripts/boinc-client.in
|
||||
+# config: /etc/sysconfig/boinc-client
|
||||
#
|
||||
### BEGIN INIT INFO
|
||||
# Provides: boinc
|
||||
-# Provides: boinc
|
||||
-# Required-Start: $network
|
||||
-# Required-Stop: $network
|
||||
-# Default-Start: 3 4 5
|
||||
-# Default-Stop: 0 1 2 6
|
||||
+# Provides: boinc-client
|
||||
+# Required-Start: $network $remote_fs
|
||||
+# Should-Start: $time
|
||||
+# Required-Stop: $network $remote_fs
|
||||
+# Should-Stop: $time
|
||||
+# Default-Start: 3 5
|
||||
# Default-Stop: 0 1 2 6
|
||||
+# Default-Stop: 0 1 2 6
|
||||
# Short-Description: This script monitors the BOINC client.
|
||||
# Description: This script starts the local BOINC client as a daemon
|
||||
@@ -117,6 +117,10 @@ fi
|
||||
# For more information about BOINC (the Berkeley Open Infrastructure
|
||||
@@ -117,6 +119,10 @@ fi
|
||||
#
|
||||
BOINCUSER=boinc
|
||||
|
||||
@ -31,7 +36,7 @@ Index: client/scripts/boinc-client.in
|
||||
# Working directory. Could be /home/boinc, /var/lib/boinc, etc..
|
||||
# The reason I prefer /var/lib/boinc is that this works best for a
|
||||
# cluster of computers where /home/anything might be shared between machines
|
||||
@@ -128,7 +132,7 @@ BOINCDIR=/var/lib/boinc
|
||||
@@ -128,7 +134,7 @@ BOINCDIR=/var/lib/boinc
|
||||
# but I like to rename it and put it in a public place.
|
||||
# (Hint: move boincmgr to /usr/local/bin too so anyone can easily use it).
|
||||
#
|
||||
@ -40,7 +45,7 @@ Index: client/scripts/boinc-client.in
|
||||
BOINCEXE=${bindir}/${BOINCEXE_NAME}
|
||||
BOINCCMD_NAME=boinccmd
|
||||
BOINCCMD=${bindir}/${BOINCCMD_NAME}
|
||||
@@ -161,9 +165,7 @@ BOINCOPTS=
|
||||
@@ -161,9 +167,7 @@ BOINCOPTS=
|
||||
# Subsys lock file ...
|
||||
|
||||
# If there is the subsys directory, then use it ...
|
||||
@ -51,7 +56,7 @@ Index: client/scripts/boinc-client.in
|
||||
LOCKFILE=/var/lock/${BOINCEXE_NAME}
|
||||
elif [ -d /var/run ]; then
|
||||
LOCKFILE=/var/run/${BOINCEXE_NAME}.lock
|
||||
@@ -178,8 +180,8 @@ export TERM=dumb
|
||||
@@ -178,8 +182,8 @@ export TERM=dumb
|
||||
# but if the functions are not found we create our own simple replacements.
|
||||
# (The idea for replacing the functions comes from OpenAFS. Thanks guys!)
|
||||
|
||||
@ -62,7 +67,7 @@ Index: client/scripts/boinc-client.in
|
||||
else
|
||||
if printf "Hello" >/dev/null 2>/dev/null ; then
|
||||
# printf works
|
||||
@@ -279,7 +281,7 @@ if [ ! -d $BOINCDIR ]; then
|
||||
@@ -279,7 +283,7 @@ if [ ! -d $BOINCDIR ]; then
|
||||
echo -n "Creating $BOINCDIR "
|
||||
if mkdir -p $BOINCDIR 2>/dev/null ; then
|
||||
if [ -n "$BOINCUSER" ] ; then
|
||||
@ -71,7 +76,7 @@ Index: client/scripts/boinc-client.in
|
||||
echo_success
|
||||
else
|
||||
echo_failure
|
||||
@@ -329,8 +331,8 @@ if [ "${USERNOW}" = "${BOINCUSER}" ] ; t
|
||||
@@ -329,8 +333,8 @@ if [ "${USERNOW}" = "${BOINCUSER}" ] ; t
|
||||
exit 8
|
||||
fi
|
||||
elif [ "${USERNOW}" = "root" ] ; then
|
||||
|
@ -4,24 +4,24 @@
|
||||
dateext
|
||||
notifempty
|
||||
rotate 99
|
||||
size 4M
|
||||
size +4096k
|
||||
missingok
|
||||
create 640 root root
|
||||
create 644 root root
|
||||
postrotate
|
||||
/etc/init.d/boinc-client restart
|
||||
/etc/init.d/boinc-client restart > /dev/null
|
||||
endscript
|
||||
}
|
||||
|
||||
/var/log/boinc-client_err.log {
|
||||
daily
|
||||
compress
|
||||
dateext
|
||||
notifempty
|
||||
rotate 99
|
||||
size 4M
|
||||
missingok
|
||||
create 640 root root
|
||||
postrotate
|
||||
/etc/init.d/boinc-client restart
|
||||
endscript
|
||||
}
|
||||
#/var/log/boinc-client_err.log {
|
||||
# daily
|
||||
# compress
|
||||
# dateext
|
||||
# notifempty
|
||||
# rotate 99
|
||||
# size +4096k
|
||||
# missingok
|
||||
# create 644 root root
|
||||
# postrotate
|
||||
# /etc/init.d/boinc-client restart > /dev/null
|
||||
# endscript
|
||||
#}
|
||||
|
10
boinc-manager
Normal file
10
boinc-manager
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# boinc-manager - a wrapper to start BOINC Client GUI
|
||||
#
|
||||
# Checking for gui_rpc_auth.cfg
|
||||
if ! test -f ~/gui_rpc_auth.cfg ; then
|
||||
ln -s @boinc_dir@/gui_rpc_auth.cfg ~/.
|
||||
fi
|
||||
|
||||
exec boinc-gui -e @bindir@
|
@ -1,6 +1,8 @@
|
||||
--- sched/handle_request.cpp 2010-01-14 15:18:06.000000000 -0600
|
||||
+++ sched/handle_request.cpp.orig 2010-10-04 11:24:03.000000000 -0500
|
||||
@@ -143,7 +143,9 @@
|
||||
Index: sched/handle_request.cpp
|
||||
===================================================================
|
||||
--- sched/handle_request.cpp.orig
|
||||
+++ sched/handle_request.cpp
|
||||
@@ -143,7 +143,9 @@ int lock_sched() {
|
||||
// write PID into the CGI_<HOSTID> file and flush to disk
|
||||
//
|
||||
count = sprintf(pid_string, "%d\n", getpid());
|
||||
|
32
boincmanager
32
boincmanager
@ -1,32 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# BOINC Manager on Unix
|
||||
#!/bin/sh
|
||||
#
|
||||
# BOINC - start the BOINC Manager
|
||||
|
||||
# Source the configuration file for the boinc-client init script.
|
||||
#
|
||||
config_files="/etc/boinc-client.conf /etc/sysconfig/boinc-client"
|
||||
|
||||
# provide a default
|
||||
BOINCDIR=/var/lib/boinc
|
||||
|
||||
# Find the correct config file
|
||||
#
|
||||
for config_file in $config_files ; do
|
||||
if [ -f ${config_file} ] ; then
|
||||
. ${config_file};
|
||||
break;
|
||||
fi
|
||||
done
|
||||
|
||||
# Checking for gui_rpc_auth.cfg
|
||||
if ! test -f ~/gui_rpc_auth.cfg ; then
|
||||
ln -s /var/lib/boinc/gui_rpc_auth.cfg .
|
||||
fi
|
||||
|
||||
# Change directory and start BOINC Manager
|
||||
#
|
||||
cd "$BOINCDIR"
|
||||
exec boinc-gui
|
@ -1,43 +1,42 @@
|
||||
# -*- mode:sh; mode:font-lock; -*-
|
||||
# Default variable values for the boinc-client /etc/init.d script
|
||||
|
||||
## Path: Productivity/Clustering/Computing
|
||||
## Description: define BOINC user
|
||||
## Type: string
|
||||
## Default: "boinc"
|
||||
## Config: BOINC
|
||||
#
|
||||
BOINCEXE_NAME=boinc-client
|
||||
BOINCCMD_NAME=boinccmd
|
||||
|
||||
# The userid under which boinc-client is run
|
||||
BOINCUSER=boinc
|
||||
BOINCGROUP=boinc
|
||||
|
||||
# The directory in which boinc-client is run
|
||||
BOINCDIR=/var/lib/boinc
|
||||
|
||||
# log files
|
||||
LOGFILE=/var/log/${BOINCEXE_NAME}.log
|
||||
ERRORLOG=/var/log/${BOINCEXE_NAME}_err.log
|
||||
|
||||
# pid file
|
||||
PIDFILE=/var/run/${BOINCEXE_NAME}.pid
|
||||
|
||||
# placement of the lockfile depends upon the operating system
|
||||
# it will probably be one of the following:
|
||||
#LOCKFILE=/var/lock/${BOINCEXE_NAME}
|
||||
#LOCKFILE=/var/run/${BOINCEXE_NAME}.lock
|
||||
#LOCKFILE=/var/lock/subsys/${BOINCEXE_NAME}
|
||||
LOCKFILE=/var/run/${BOINCEXE_NAME}.lock
|
||||
|
||||
# BOINC options: for the command line when running the client.
|
||||
# Be aware that --allow_remote_gui_rpc opens up your machine to the world!
|
||||
# An empty setting will point to boinc
|
||||
#
|
||||
# The default is no options.
|
||||
BOINCOPTS=
|
||||
# Add this option if you want to allow boinc manager connections from remote
|
||||
# machines
|
||||
#BOINCOPTS="--allow_remote_gui_rpc"
|
||||
# Add this option if you want to turn off all logging
|
||||
#BOINCOPTS="--daemon"
|
||||
# Add this option if you want to redirect logging to the files stderrdae.txt
|
||||
# and stdoutdae.txt in BOINCDIR rather than LOGFILE and ERRORLOG
|
||||
#BOINCOPTS="--redirectio"
|
||||
# Add this option if you want to run only when no logins from anywhere are
|
||||
# active
|
||||
#BOINCOPTS="--check_all_logins"
|
||||
BOINC_BOINC_USR="boinc"
|
||||
|
||||
## Path: Productivity/Clustering/Computing
|
||||
## Description: define BOINC group
|
||||
## Type: string
|
||||
## Default: "boinc"
|
||||
## Config: BOINC
|
||||
#
|
||||
# An empty setting will point to boinc
|
||||
#
|
||||
BOINC_BOINC_GRP="boinc"
|
||||
|
||||
## Path: Productivity/Clustering/Computing
|
||||
## Description: define BOINC options
|
||||
## Type: string
|
||||
## Default: ""
|
||||
## Config: BOINC
|
||||
#
|
||||
## --allow_remote_gui_rpc
|
||||
## allow boinc manager connections from remote machines
|
||||
##
|
||||
## --daemon
|
||||
## turn off all logging
|
||||
##
|
||||
## --redirectio
|
||||
## redirect logging to the files stderrdae.txt and stdoutdae.txt
|
||||
## in BOINCDIR rather than LOGFILE and ERRORLOG
|
||||
##
|
||||
## --check_all_logins
|
||||
## run only when no logins from anywhere are active
|
||||
##
|
||||
#
|
||||
BOINC_BOINC_OPTS=""
|
||||
|
Loading…
Reference in New Issue
Block a user