1
0
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:
Stephan Kulow 2012-03-23 11:04:35 +00:00 committed by Git OBS Bridge
commit a240b4cf6e
15 changed files with 472 additions and 193 deletions

View File

@ -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 \

View File

@ -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>

View File

@ -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
View 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

View File

@ -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,50 +242,56 @@ 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
%{__rm} -f %{buildroot}%{_bindir}/boinc
%{__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
popd
%{__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} -dm0755 %{buildroot}%{_sbindir}
/bin/ln -sf %{_sysconfdir}/init.d/boinc-client %{buildroot}%{_sbindir}/rcboinc-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/%{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 template for sysconfig
%{__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
%{__install} -Dm0644 boinc-gui-64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/boinc-gui.png
%{__install} -Dm0644 boinc-gui-16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/boinc-gui.png
# Move and rename icons
%{__mv} %{buildroot}%{_datadir}/boinc/boincmgr.16x16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/boincmgr.png
@ -299,7 +307,7 @@ popd
# Relinking Manpages
/bin/ln -sf boincmgr.1.gz %{buildroot}%{_mandir}/man1/boincmanager.1.gz
/bin/ln -sf boinccmd.1.gz %{buildroot}%{_mandir}/man1/boinccmd.1.gz
/bin/ln -sf boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz
/bin/ln -sf boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz
# Fix spurious-executable-perm
%{__chmod} 0644 doc/*.php
@ -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}
%postun
%restart_on_update boinc-client
%post
%fillup_and_insserv %{name}
%{_sbindir}/usermod -c "BOINC Client" boinc 2>/dev/null || :
%postun
%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}
@ -373,11 +386,13 @@ fi
%files doc
%defattr(-,root,root,-)
%doc checkin_*
%doc doc/*.txt doc/bolt doc/logo doc/*.php doc/*.png doc/*.html
%doc doc/*.txt doc/bolt doc/logo doc/*.php doc/*.png doc/*.html
%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/*

View File

@ -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
}

View File

@ -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.

View File

@ -1,6 +1,6 @@
[Desktop Entry]
Encoding=UTF-8
Exec=boincmanager
Exec=boinc-manager
Icon=boinc-gui
Terminal=false
Type=Application

View File

@ -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.
//

View File

@ -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
+# Required-Start: $network $remote_fs
+# Required-Stop: $network $remote_fs
+# Default-Start: 3 5
# Default-Stop: 0 1 2 6
-# 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
# 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

View File

@ -1,27 +1,27 @@
/var/log/boinc-client.log {
daily
compress
dateext
notifempty
rotate 99
size 4M
missingok
create 640 root root
postrotate
/etc/init.d/boinc-client restart
endscript
daily
compress
dateext
notifempty
rotate 99
size +4096k
missingok
create 644 root root
postrotate
/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
View 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@

View File

@ -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());

View File

@ -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

View File

@ -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=""