Accepting request 238395 from network
- Remove needless rpmlintrc lines to ease error spotting when there really are some. - Cleanup with spec-cleaner for better readability - Move lang packages from Requires to Recommends - Remove unused patch: * boinc-completion.patch - Remove comments with unused patches - Remove conditionals with inits as we don't build for such release anyway - Provide rcboinc symlink for easier usage. - some RPMLINT fixes * fix License: remove ',' * non-standard-gid /var/lib/boinc boinc * SR #227671 to rpmlint - fix deps for libxcb - fix README.SUSE # fix for bnc#779335 * disabled boinc-completion.patch - update to 7.2.42 * Fix problem that was causing scheduler RPCs to fail on Yoyo@home (HTTP status code 400) * for mor info have a look at http://boinc.berkeley.edu/wiki/Release_Notes - removed obsolete patches: * boinc-client-dynamic_buffers.patch OBS-URL: https://build.opensuse.org/request/show/238395 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boinc-client?expand=0&rev=28
This commit is contained in:
commit
519bbc6c58
@ -34,8 +34,8 @@ are:
|
||||
What the installer does
|
||||
|
||||
1. Creates the daemon script at /etc/init.d/boinc-client.
|
||||
2. Places the BOINC binaries (boinc_client, boinc_cmd and boincmgr)
|
||||
in /usr/bin/.
|
||||
2. Places the BOINC binaries (boinc-client, boinccmd, boinc-gui
|
||||
and boincmgr) in /usr/bin/.
|
||||
3. Creates /var/lib/boinc/ for BOINC data files and the slots and
|
||||
projects directories.
|
||||
4. Names the daemon boinc-client.
|
||||
@ -52,7 +52,7 @@ are:
|
||||
2. If you elected to not have Linux start the daemon at boot time,
|
||||
start the daemon manually with |/sbin/service boinc-client start|
|
||||
3. Open a terminal and enter |ps aux | grep boinc| to print a partial
|
||||
list of running processes. You should see |boinc_client --daemon|
|
||||
list of running processes. You should see |boinc-client --dir ...|
|
||||
in that list, if not then something went wrong in the steps above.
|
||||
|
||||
|
||||
@ -95,7 +95,7 @@ manager, you can:
|
||||
directory without becoming root. As you type in each command
|
||||
below, substitute your Linux username wherever you see |username|.
|
||||
Enter the following commands in a terminal, as root:
|
||||
1. |/usr/sbin/usermod -G boinc -a username|
|
||||
1. |/usr/sbin/usermod -A boinc username|
|
||||
2. |chmod g+rw /var/lib/boinc|
|
||||
3. |chmod g+rw /var/lib/boinc/*.*|
|
||||
4. |ln -s /var/lib/boinc/gui_rpc_auth.cfg
|
||||
|
3
boinc-7.2.42.tar.bz2
Normal file
3
boinc-7.2.42.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:dfff203487f9d030f916891074f978abde6c0d34b3147cfc36e42a5060b8d4b8
|
||||
size 40873943
|
@ -3,18 +3,18 @@ Index: locale/Makefile.am
|
||||
--- locale/Makefile.am.orig
|
||||
+++ locale/Makefile.am
|
||||
@@ -45,12 +45,12 @@ locale_dirs = \
|
||||
install-exec-hook:
|
||||
install-data-hook:
|
||||
mydir=$(DESTDIR)$(datadir) ;\
|
||||
for ldir in $(locale_dirs) ; do \
|
||||
- $(INSTALL) -d $$mydir/$$ldir ; \
|
||||
+ $(INSTALL) -d $$mydir/$$ldir/LC_MESSAGES ; \
|
||||
if [ -f $$ldir/BOINC-Manager.mo ] ; then \
|
||||
- $(INSTALL) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/BOINC-Manager.mo ; \
|
||||
+ $(INSTALL) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/LC_MESSAGES/BOINC-Manager.mo ; \
|
||||
- $(INSTALL_DATA) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/BOINC-Manager.mo ; \
|
||||
+ $(INSTALL_DATA) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/LC_MESSAGES/BOINC-Manager.mo ; \
|
||||
fi ;\
|
||||
if [ -f $$ldir/BOINC-Client.mo ] ; then \
|
||||
- $(INSTALL) $$ldir/BOINC-Client.mo $$mydir/$$ldir/BOINC-Client.mo ; \
|
||||
+ $(INSTALL) $$ldir/BOINC-Client.mo $$mydir/$$ldir/LC_MESSAGES/BOINC-Client.mo ; \
|
||||
- $(INSTALL_DATA) $$ldir/BOINC-Client.mo $$mydir/$$ldir/BOINC-Client.mo ; \
|
||||
+ $(INSTALL_DATA) $$ldir/BOINC-Client.mo $$mydir/$$ldir/LC_MESSAGES/BOINC-Client.mo ; \
|
||||
fi ;\
|
||||
done
|
||||
|
||||
|
@ -1,41 +0,0 @@
|
||||
Index: lib/filesys.cpp
|
||||
===================================================================
|
||||
--- lib/filesys.cpp.orig
|
||||
+++ lib/filesys.cpp
|
||||
@@ -47,6 +47,7 @@
|
||||
#include <sys/time.h>
|
||||
#include <unistd.h>
|
||||
#include <dirent.h>
|
||||
+#include <climits>
|
||||
|
||||
#if HAVE_SYS_RESOURCE_H
|
||||
#include <sys/resource.h>
|
||||
@@ -412,7 +413,8 @@
|
||||
} while (FindNextFileA(hFind, &findData));
|
||||
::FindClose(hFind);
|
||||
#else
|
||||
- char filename[1024], subdir[1024];
|
||||
+ char filename[PATH_MAX];
|
||||
+ char *subdir;;
|
||||
int retval=0;
|
||||
DIRREF dirp;
|
||||
double x;
|
||||
@@ -423,7 +425,7 @@
|
||||
while (1) {
|
||||
retval = dir_scan(filename, dirp, sizeof(filename));
|
||||
if (retval) break;
|
||||
- sprintf(subdir, "%s/%s", dirpath, filename);
|
||||
+ asprintf(&subdir, "%s/%s", dirpath, filename);
|
||||
|
||||
if (is_dir(subdir)) {
|
||||
if (recurse) {
|
||||
@@ -436,6 +438,9 @@
|
||||
if (retval) continue;
|
||||
size += x;
|
||||
}
|
||||
+
|
||||
+ if(subdir != NULL)
|
||||
+ free(subdir);
|
||||
}
|
||||
dir_close(dirp);
|
||||
#endif
|
@ -2,15 +2,15 @@ Index: configure.ac
|
||||
===================================================================
|
||||
--- configure.ac.orig
|
||||
+++ configure.ac
|
||||
@@ -39,6 +39,7 @@
|
||||
AC_PROG_CXX
|
||||
@@ -45,6 +45,7 @@ m4_ifdef([AC_PROG_OBJCXX],[AC_PROG_OBJCX
|
||||
dnl ------
|
||||
AC_PROG_F77
|
||||
AC_PROG_CPP
|
||||
+AC_PROG_OBJCXX
|
||||
AC_PROG_MAKE_SET
|
||||
SAH_LINKS
|
||||
AC_LANG_PUSH(C)
|
||||
@@ -744,6 +745,8 @@
|
||||
@@ -793,6 +794,8 @@ AM_CONDITIONAL(ENABLE_LIBRARIES, [test "
|
||||
AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
|
||||
AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
|
||||
|
||||
@ -19,9 +19,11 @@ Index: configure.ac
|
||||
dnl ======================================================================
|
||||
dnl some more vodoo required for building portable client-binary (client, clientgui)
|
||||
dnl ======================================================================
|
||||
Index: clientgui/Makefile.am
|
||||
===================================================================
|
||||
--- clientgui/Makefile.am.orig
|
||||
+++ clientgui/Makefile.am
|
||||
@@ -118,9 +118,8 @@
|
||||
@@ -117,9 +117,8 @@ EXTRA_DIST = *.h \
|
||||
../lib/error_numbers.h \
|
||||
locale $(mac_headers)
|
||||
|
||||
@ -29,7 +31,7 @@ Index: configure.ac
|
||||
-boincmgr_CXXFLAGS = $(AM_CXXFLAGS) $(WX_CXXFLAGS) $(SQLITE3_CPPFLAGS) $(LIBNOTIFY_CFLAGS) $(CLIENTGUIFLAGS) `pkg-config --cflags gtk+-2.0`
|
||||
-boincmgr_LDFLAGS = $(LIBBOINC) $(SQLITE3_LIBS) $(LIBNOTIFY_LIBS) $(CLIENTGUILIBS) $(BOINC_EXTRA_LIBS) $(CLIENTLIBS) `pkg-config --libs gtk+-2.0` -lnotify
|
||||
+boincmgr_CPPFLAGS = $(AM_CPPFLAGS) $(WX_CPPFLAGS) $(SQLITE3_CPPFLAGS) $(LIBNOTIFY_CFLAGS) $(CLIENTGUIFLAGS) $(GTK2_CFLAGS)
|
||||
+boincmgr_LDFLAGS = $(LIBBOINC) $(SQLITE3_LIBS) $(LIBNOTIFY_LIBS) $(CLIENTGUILIBS) $(BOINC_EXTRA_LIBS) $(CLIENTLIBS) $(GTK2_LIBS)
|
||||
+boincmgr_LDFLAGS = $(LIBBOINC) $(SQLITE3_LIBS) $(LIBNOTIFY_LIBS) $(CLIENTGUILIBS) $(BOINC_EXTRA_LIBS) $(CLIENTLIBS) $(GTK2_LIBS) -lnotify
|
||||
|
||||
win_config.h: $(top_srcdir)/config.h
|
||||
grep '#define.*BOINC.*VERSION' $^ > $@
|
@ -1,8 +1 @@
|
||||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
addFilter("suse-branding-unversioned-requires hicolor-icon-theme")
|
||||
addFilter("non-standard-uid")
|
||||
addFilter("libdir-macro-in-noarch-package")
|
||||
addFilter("no-manual-page-for-binary")
|
||||
addFilter("macro-in-comment")
|
||||
|
@ -1,3 +1,61 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 17 13:39:32 UTC 2014 - tchvatal@suse.com
|
||||
|
||||
- Remove needless rpmlintrc lines to ease error spotting when there
|
||||
really are some.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 17 13:30:10 UTC 2014 - tchvatal@suse.com
|
||||
|
||||
- Cleanup with spec-cleaner for better readability
|
||||
- Move lang packages from Requires to Recommends
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 17 13:13:14 UTC 2014 - tchvatal@suse.com
|
||||
|
||||
- Remove unused patch:
|
||||
* boinc-completion.patch
|
||||
- Remove comments with unused patches
|
||||
- Remove conditionals with inits as we don't build for such release
|
||||
anyway
|
||||
- Provide rcboinc symlink for easier usage.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 26 22:34:18 UTC 2014 - chris@computersalat.de
|
||||
|
||||
- some RPMLINT fixes
|
||||
* fix License: remove ','
|
||||
* non-standard-gid /var/lib/boinc boinc
|
||||
* SR #227671 to rpmlint
|
||||
- fix deps for libxcb
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 18 15:21:19 UTC 2014 - chris@computersalat.de
|
||||
|
||||
- fix README.SUSE
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Mar 16 22:23:48 UTC 2014 - chris@computersalat.de
|
||||
|
||||
# fix for bnc#779335
|
||||
* disabled boinc-completion.patch
|
||||
- update to 7.2.42
|
||||
* Fix problem that was causing scheduler RPCs to fail on Yoyo@home
|
||||
(HTTP status code 400)
|
||||
* for mor info have a look at
|
||||
http://boinc.berkeley.edu/wiki/Release_Notes
|
||||
- removed obsolete patches:
|
||||
* boinc-client-dynamic_buffers.patch
|
||||
* boinc-init.patch
|
||||
* boinc-client-7.0.36-AM_CONDITIONAL.patch
|
||||
* boinc-client-7.0.36-dynamic_buffers.patch
|
||||
- rebased patches:
|
||||
* boinc-LC_MESSAGES.patch
|
||||
* boinc-client-AM_CONDITIONAL.patch
|
||||
* boinc-configure.patch
|
||||
* boinc-docbook2x.patch
|
||||
* boinc-guirpcauth.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 26 09:45:58 UTC 2013 - p.drouand@gmail.com
|
||||
|
||||
@ -10,6 +68,16 @@ Sat Oct 26 09:45:58 UTC 2013 - p.drouand@gmail.com
|
||||
- Remove boinc-client-glib_h.patch; fixed on upstream
|
||||
- Do not copy INSTALL in documentation
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 1 20:53:41 UTC 2013 - chris@computersalat.de
|
||||
|
||||
- update to 7.0.28
|
||||
* sorry but there is no ChangeLog :(
|
||||
- rebase patches
|
||||
* dynamic_buffers, guirpcauth, AM_CONDITIONAL
|
||||
- add configure patch
|
||||
- remove obsolete glib_h patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 3 11:12:16 UTC 2013 - coolo@suse.com
|
||||
|
||||
|
@ -1,216 +0,0 @@
|
||||
#!/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"
|
||||
|
||||
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_DIR=${BOINC_BOINC_DIR:="/var/lib/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) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2014 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
|
||||
@ -19,22 +19,28 @@
|
||||
|
||||
# Global definitions
|
||||
%define _use_internal_dependency_generator 0
|
||||
%if 0%{?suse_version} >= 1140
|
||||
%define __find_requires %wx_requires
|
||||
%endif
|
||||
%define version_ 7_0_36
|
||||
%define __find_requires %{wx_requires}
|
||||
%define soname 7
|
||||
%define boinc_dir %{_localstatedir}/lib/boinc
|
||||
|
||||
Name: boinc-client
|
||||
Version: 7.0.36
|
||||
Version: 7.2.42
|
||||
Release: 0
|
||||
Summary: The BOINC client core
|
||||
License: LGPL-3.0
|
||||
Summary: The BOINC client
|
||||
License: GPL-3.0+ or LGPL-3.0+
|
||||
Group: Productivity/Clustering/Computing
|
||||
Url: http://boinc.berkeley.edu/
|
||||
Source0: boinc_core_release-%{version_}.tar.bz2
|
||||
Source1: boinc-icons.tar.bz2
|
||||
# There is no real tarball, hence I did
|
||||
#
|
||||
# git clone git://boinc.berkeley.edu/boinc.git
|
||||
# git checkout master
|
||||
# git checkout -t client_release/7.2/7.2.42
|
||||
#
|
||||
# then I created an archive via git
|
||||
#
|
||||
# git archive -v --format=tar --prefix=boinc-7.2.42/ \
|
||||
# client_release/7.2/7.2.42 | bzip2 >../boinc-7.2.42.tar.bz2
|
||||
Source0: boinc-%{version}.tar.bz2
|
||||
Source1: boinc-icons.tar.bz2
|
||||
Source2: boinc-gui.desktop
|
||||
Source3: README.SUSE
|
||||
Source4: sysconfig.%{name}
|
||||
@ -43,86 +49,70 @@ Source6: boinc-manager
|
||||
# The source for this package was pulled from upstream's vcs. Use the
|
||||
# following commands to generate the tarball:
|
||||
#
|
||||
# ./generate-tarball.sh boinc_core_release_%{version_}
|
||||
# ./generate-tarball.sh boinc_core_release_VERSION
|
||||
#
|
||||
# Trim all binaries and other unnecessary things.
|
||||
Source8: generate-tarball.sh
|
||||
Source10: %{name}.init
|
||||
Source20: boinc-client-systemd
|
||||
Source20: %{name}.service
|
||||
Source100: %{name}-rpmlintrc
|
||||
|
||||
# PATCH-FIX-OPENSUSE boinc-guirpcauth.patch
|
||||
# Create password file rw for group, this enables passwordless connection
|
||||
# of manager from users of the boinc group.
|
||||
# This won't be probably upstreamed as it might be unsafe for common usage
|
||||
# without setting proper group ownership of the password file.
|
||||
Patch0: boinc-guirpcauth.patch
|
||||
# PATCH-FIX-OPENSUSE boinc-init.patch
|
||||
Patch1: boinc-init.patch
|
||||
# PATCH-FIX-OPENSUSE boinc-LC_MESSAGES.patch
|
||||
Patch2: boinc-LC_MESSAGES.patch
|
||||
# PATCH-FIX-OPENSUSE boinc-completion.patch
|
||||
Patch3: boinc-completion.patch
|
||||
# PATCH-FIX-OPENSUSE boinc-docbook2x.patch
|
||||
Patch4: boinc-docbook2x.patch
|
||||
# PATCH-FIX-OPENSUSE pth@suse.de use asprintf to fix buffer overflow
|
||||
Patch5: boinc-client-7.0.36-dynamic_buffers.patch
|
||||
# PATCH-FIX-OPENSUSE coolo - #error: am__fastdepOBJCXX does not appear in AM_CONDITIONAL
|
||||
Patch7: boinc-client-7.0.36-AM_CONDITIONAL.patch
|
||||
#
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
Requires(pre): pwdutils
|
||||
%if 0%{?suse_version} < 1230
|
||||
Requires(pre): %insserv_prereq
|
||||
Requires(pre): %fillup_prereq
|
||||
%else
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
%{?systemd_requires}
|
||||
%endif
|
||||
|
||||
Patch7: %{name}-AM_CONDITIONAL.patch
|
||||
# PATCH-FIX-OPENSUSE computersalat - error:
|
||||
# configure.ac:898: required file `test/version.inc.in' not found
|
||||
# configure.ac:898: required file `py/Boinc/version.py.in' not found
|
||||
Patch8: boinc-configure.patch
|
||||
BuildRequires: Mesa-devel
|
||||
#BuildRequires: autoconf
|
||||
#BuildRequires: automake
|
||||
BuildRequires: docbook2x
|
||||
BuildRequires: docbook_4
|
||||
BuildRequires: update-desktop-files
|
||||
#BuildRequires: fcgi-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: freeglut-devel
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gcc-fortran
|
||||
BuildRequires: gettext-runtime
|
||||
#BuildRequires: gnutls-devel
|
||||
BuildRequires: libcurl-devel >= 7.17.1
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libnotify-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: libxslt
|
||||
#BuildRequires: m4
|
||||
#BuildRequires: make
|
||||
BuildRequires: mysql-devel
|
||||
BuildRequires: openssl-devel
|
||||
#BuildRequires: patch
|
||||
BuildRequires: pkg-config
|
||||
BuildRequires: pwdutils
|
||||
BuildRequires: python-mysql
|
||||
BuildRequires: sqlite3-devel
|
||||
BuildRequires: systemd
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: wxWidgets-devel >= 2.8.0
|
||||
BuildRequires: xorg-x11-libXmu-devel
|
||||
%if 0%{?suse_version} <= 1130
|
||||
BuildRequires: wxGTK-devel >= 2.6.0
|
||||
%else
|
||||
BuildRequires: wxWidgets-devel >= 2.8.7
|
||||
%endif
|
||||
|
||||
Requires: cron
|
||||
Requires: logrotate
|
||||
### FIXME:
|
||||
## updating boinc-client or boinc-manager does not update libboinc6
|
||||
## hence we define this dependency
|
||||
## !! Do not remove this dependency !!
|
||||
Requires: libboinc%{soname} = %{version}-%{release}
|
||||
|
||||
Recommends: boinc-client-lang = %{version}
|
||||
Requires: logrotate
|
||||
Requires(pre): pwdutils
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%{?systemd_requires}
|
||||
%if 0%{?suse_version} >= 1310
|
||||
BuildRequires: libXScrnSaver-devel
|
||||
BuildRequires: libXi-devel
|
||||
BuildRequires: libxcb-devel
|
||||
BuildRequires: xcb-util-devel
|
||||
%else
|
||||
BuildRequires: xorg-x11-libxcb-devel
|
||||
%endif
|
||||
%lang_package
|
||||
%lang_package -n boinc-manager
|
||||
|
||||
@ -144,7 +134,7 @@ of scientific and mathematical research.
|
||||
%package -n boinc-manager
|
||||
Summary: GUI to control and monitor boinc-client
|
||||
Group: Productivity/Scientific/Astronomy
|
||||
Requires: boinc-manager-lang = %{version}-%{release}
|
||||
Recommends: boinc-manager-lang = %{version}
|
||||
Requires: hicolor-icon-theme
|
||||
|
||||
%description -n boinc-manager
|
||||
@ -178,59 +168,49 @@ 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
|
||||
BuildArch: noarch
|
||||
%endif
|
||||
|
||||
%description doc
|
||||
This package contains documentation files for %{name}.
|
||||
|
||||
%prep
|
||||
%setup -q -n boinc_core_release_%{version_} -D -a 1
|
||||
%setup -q -n boinc-%{version} -D -a 1
|
||||
%patch0
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3
|
||||
%patch4
|
||||
%patch5
|
||||
%if 0%{?suse_version} >= 1220
|
||||
%patch7
|
||||
%endif
|
||||
%patch8
|
||||
|
||||
# Install user hints
|
||||
%{__install} -m0644 %{S:3} README.SUSE
|
||||
install -m0644 %{SOURCE3} README.SUSE
|
||||
|
||||
# Fix lang directories (refer patch2)
|
||||
%{__mv} locale/pt_PT locale/pt
|
||||
%{__mv} locale/sv_SE locale/sv
|
||||
mv locale/pt_PT locale/pt
|
||||
mv locale/sv_SE locale/sv
|
||||
|
||||
# fix warning: deprecated conversion from string constant to 'char*'
|
||||
pushd clientgui/common/
|
||||
%{__sed} -i 's/static char/static const char/g' wxFlatNotebookImages.h
|
||||
sed -i 's/static char/static const char/g' wxFlatNotebookImages.h
|
||||
popd
|
||||
pushd clientgui/res/
|
||||
%{__sed} -i 's/static char/static const char/g' *.xpm
|
||||
sed -i 's/static char/static const char/g' *.xpm
|
||||
popd
|
||||
pushd clientgui/res/skins/default/graphic/
|
||||
%{__sed} -i 's/static char/static const char/g' *.xpm
|
||||
sed -i 's/static char/static const char/g' *.xpm
|
||||
popd
|
||||
|
||||
# fix utf8
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes > checkin_notes.utf8
|
||||
touch -r checkin_notes checkin_notes.utf8
|
||||
mv checkin_notes.utf8 checkin_notes
|
||||
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes_2004 > checkin_notes_2004.utf8
|
||||
touch -r checkin_notes_2004 checkin_notes_2004.utf8
|
||||
mv checkin_notes_2004.utf8 checkin_notes_2004
|
||||
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes_2005 > checkin_notes_2005.utf8
|
||||
touch -r checkin_notes_2005 checkin_notes_2005.utf8
|
||||
mv checkin_notes_2005.utf8 checkin_notes_2005
|
||||
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes_2006 > checkin_notes_2006.utf8
|
||||
touch -r checkin_notes_2006 checkin_notes_2006.utf8
|
||||
mv checkin_notes_2006.utf8 checkin_notes_2006
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes_2009 > checkin_notes_2009.utf8
|
||||
touch -r checkin_notes_2009 checkin_notes_2009.utf8
|
||||
mv checkin_notes_2009.utf8 checkin_notes_2009
|
||||
|
||||
iconv -f ISO88591 -t UTF8 < checkin_notes_2010 > checkin_notes_2010.utf8
|
||||
touch -r checkin_notes_2010 checkin_notes_2010.utf8
|
||||
mv checkin_notes_2010.utf8 checkin_notes_2010
|
||||
|
||||
# fix permissions and newlines on source files
|
||||
chmod 644 clientgui/{DlgItemProperties.h,AsyncRPC.cpp,DlgItemProperties.cpp}
|
||||
@ -240,14 +220,14 @@ sed -i 's/\r//' clientgui/DlgItemProperties.cpp
|
||||
## remove files with questionable licenses
|
||||
# removing NVIDIA owned file that does not clearly allow redistribution or
|
||||
# modification
|
||||
%{__rm} coprocs/NVIDIA/include/nvapi.h
|
||||
rm coprocs/NVIDIA/include/nvapi.h
|
||||
# removing unnecessary APSL licensed files
|
||||
%{__rm} client/app_stats_mac.cpp
|
||||
rm client/app_stats_mac.cpp
|
||||
|
||||
%build
|
||||
#remove run libtoolize and ./_autosetup
|
||||
/usr/bin/libtoolize --force
|
||||
./_autosetup
|
||||
%{_bindir}/libtoolize --force
|
||||
./_autosetup
|
||||
|
||||
%configure \
|
||||
--disable-static \
|
||||
@ -259,12 +239,12 @@ sed -i 's/\r//' clientgui/DlgItemProperties.cpp
|
||||
--with-x
|
||||
|
||||
# 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
|
||||
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
|
||||
|
||||
# Export Path and make
|
||||
%{__make} clean
|
||||
%{__make} libboinc_la_LIBADD="-L%{_libdir} -lssl -ldl" \
|
||||
# Export Path and make
|
||||
make clean %{?_smp_mflags}
|
||||
make libboinc_la_LIBADD="-L%{_libdir} -lssl -ldl" \
|
||||
CFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT" \
|
||||
CXXFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT" \
|
||||
DESTDIR=%{_prefix} %{?_smp_mflags}
|
||||
@ -276,112 +256,95 @@ sed -i 's/\r//' clientgui/DlgItemProperties.cpp
|
||||
#
|
||||
# hence we jump into clientgui and build it manually
|
||||
pushd clientgui
|
||||
%{__make} libboinc_la_LIBADD="-L%{_libdir} -lssl -ldl" \
|
||||
%if 0%{?suse_version} >= 1210
|
||||
make libboinc_la_LIBADD="-L%{_libdir} -lssl -ldl" \
|
||||
CFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT -lgtk-x11-2.0" \
|
||||
CXXFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT -lgtk-x11-2.0" \
|
||||
%else
|
||||
CFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT" \
|
||||
CXXFLAGS="%{optflags} -g -W -pipe -fno-strict-aliasing -D_REENTRANT" \
|
||||
%endif
|
||||
DESTDIR=%{_prefix} %{?_smp_mflags}
|
||||
popd
|
||||
pushd locale
|
||||
%{__make}
|
||||
make %{?_smp_mflags}
|
||||
popd
|
||||
|
||||
%install
|
||||
%{makeinstall}
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
for i in clientgui locale; do
|
||||
pushd $i
|
||||
%{makeinstall}
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
popd
|
||||
done
|
||||
|
||||
# Creates default folders
|
||||
%{__install} -dm0755 %{buildroot}%{boinc_dir}
|
||||
%{__install} -dm0755 %{buildroot}%{_mandir}/man1
|
||||
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}/%{name}
|
||||
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
|
||||
mv %{buildroot}%{_bindir}/boincmgr %{buildroot}%{_bindir}/boinc-gui
|
||||
|
||||
# Install boinc-manager wrapper script
|
||||
%{__install} -Dm0755 %{S:6} %{buildroot}%{_bindir}/boinc-manager
|
||||
install -Dm0755 %{SOURCE6} %{buildroot}%{_bindir}/boinc-manager
|
||||
|
||||
# Use symlink instead of hardlink
|
||||
pushd %{buildroot}%{_bindir}
|
||||
%{__ln_s} -f %{name} boinc
|
||||
%{__ln_s} -f boinc-manager boincmgr
|
||||
%{__ln_s} -f boinc-manager boincmanager
|
||||
ln -s -f %{name} boinc
|
||||
ln -s -f boinc-manager boincmgr
|
||||
ln -s -f boinc-manager boincmanager
|
||||
popd
|
||||
|
||||
# replace @boinc_dir@, @bindir@
|
||||
%{__sed} -i \
|
||||
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/%{name}
|
||||
rm -f %{buildroot}%{_sysconfdir}/sysconfig/%{name}
|
||||
|
||||
# Install init and create symlink to /etc/init.d/boinc-client
|
||||
%if 0%{?suse_version} >=1230
|
||||
chmod -x %{S:20}
|
||||
%{__install} -Dm0755 %{S:20} %{buildroot}%{_unitdir}/%{name}.service
|
||||
# Install init and create symlink for rcboinc
|
||||
install -D -m0644 %{SOURCE20} %{buildroot}%{_unitdir}/%{name}.service
|
||||
mkdir -p %{buildroot}%{_sbindir}
|
||||
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
|
||||
# And remove sysvinit script installed by boinc
|
||||
rm -r %{buildroot}/%{_initrddir}
|
||||
%else
|
||||
%{__install} -Dm0755 %{S:10} %{buildroot}%{_initrddir}/%{name}
|
||||
%{__install} -dm0755 %{buildroot}%{_sbindir}
|
||||
/bin/ln -sf %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
|
||||
|
||||
# Install template for sysconfig
|
||||
%{__install} -Dm0644 %{S:4} %{buildroot}/var/adm/fillup-templates/sysconfig.%{name}
|
||||
%endif
|
||||
rm -r %{buildroot}/%{_initddir}
|
||||
|
||||
# Install logrotate
|
||||
%{__install} -Dm0644 %{S:5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
||||
install -Dm0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
||||
|
||||
# Install bash completion
|
||||
%{__install} -Dpm0644 client/scripts/boinc.bash %{buildroot}%{_sysconfdir}/bash_completion.d/boinc
|
||||
install -Dpm0644 client/scripts/boinc.bash %{buildroot}%{_sysconfdir}/bash_completion.d/boinc
|
||||
|
||||
# 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 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 icons
|
||||
%{__install} -m0644 clientgui/res/boincmgr.16x16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/boincmanager.png
|
||||
%{__install} -m0644 clientgui/res/boincmgr.32x32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/boincmanager.png
|
||||
%{__install} -m0644 clientgui/res/boincmgr.48x48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/boincmanager.png
|
||||
install -m0644 clientgui/res/boincmgr.16x16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/boincmanager.png
|
||||
install -m0644 clientgui/res/boincmgr.32x32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/boincmanager.png
|
||||
install -m0644 clientgui/res/boincmgr.48x48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/boincmanager.png
|
||||
|
||||
# Install *.desktop File
|
||||
%suse_update_desktop_file -i boinc-gui Utility
|
||||
|
||||
# Remove libtool archives
|
||||
%{__rm} %{buildroot}%{_libdir}/*.la
|
||||
# Remove static libraries
|
||||
%{__rm} %{buildroot}%{_libdir}/*.a
|
||||
# Remove static libraries, libtool archives
|
||||
rm %{buildroot}%{_libdir}/*.{a,la}
|
||||
|
||||
# Relinking Manpages
|
||||
%{__ln_s} -f boincmgr.1.gz %{buildroot}%{_mandir}/man1/boinc-manager.1.gz
|
||||
%{__ln_s} -f boinccmd.1.gz %{buildroot}%{_mandir}/man1/boinccmd.1.gz
|
||||
%{__ln_s} -f boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz
|
||||
ln -s -f boincmgr.1.gz %{buildroot}%{_mandir}/man1/boinc-manager.1.gz
|
||||
ln -s -f boinccmd.1.gz %{buildroot}%{_mandir}/man1/boinccmd.1.gz
|
||||
ln -s -f boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz
|
||||
|
||||
# Fix spurious-executable-perm
|
||||
%{__chmod} 0644 doc/*.php
|
||||
|
||||
# Don't pick INSTALL file in %doc macro
|
||||
|
||||
chmod 0644 doc/*.php
|
||||
|
||||
# Install fake /var/lib/boinc
|
||||
%{__install} -dm0755 %{buildroot}%{_var}/lib/boinc
|
||||
install -dm0755 %{buildroot}%{_var}/lib/boinc
|
||||
|
||||
# Prepare $LANG Packages
|
||||
%find_lang BOINC-Client
|
||||
@ -396,42 +359,30 @@ rm -r %{buildroot}/%{_initrddir}
|
||||
%{_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
|
||||
if [ "$(grep "BOINC_BOINC_USR" %{_sysconfdir}/sysconfig/boinc-client | grep -v grep >/dev/null; echo $?)" == 1 ]; then
|
||||
mv -f %{_sysconfdir}/sysconfig/%{name} %{_sysconfdir}/sysconfig/%{name}.save
|
||||
fi
|
||||
fi
|
||||
%service_add_pre %{name}.service
|
||||
|
||||
%preun
|
||||
%if 0%{?suse_version} >=1230
|
||||
%service_del_preun %{name}.service
|
||||
%else
|
||||
%stop_on_removal %{name}
|
||||
%endif
|
||||
|
||||
%post
|
||||
%if 0%{?suse_version} >=1230
|
||||
%service_add_post %{name}.service
|
||||
%else
|
||||
%fillup_and_insserv %{name}
|
||||
%endif
|
||||
%{_sbindir}/usermod -c "BOINC Client" -s /sbin/nologin boinc 2>/dev/null || :
|
||||
|
||||
%postun
|
||||
%if 0%{?suse_version} >=1230
|
||||
%service_del_postun
|
||||
%else
|
||||
%restart_on_update %{name}
|
||||
%insserv_cleanup
|
||||
%endif
|
||||
%service_del_postun %{name}.service
|
||||
|
||||
%post -n boinc-manager
|
||||
/usr/bin/touch --no-create %{_datadir}/icons/hicolor || :
|
||||
%{_bindir}/touch --no-create %{_datadir}/icons/hicolor || :
|
||||
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
|
||||
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
|
||||
fi
|
||||
|
||||
%postun -n boinc-manager
|
||||
/usr/bin/touch --no-create %{_datadir}/icons/hicolor || :
|
||||
%{_bindir}/touch --no-create %{_datadir}/icons/hicolor || :
|
||||
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
|
||||
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
|
||||
fi
|
||||
@ -446,22 +397,18 @@ fi
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYING* COPYRIGHT notes todo TODO_OLD README.SUSE
|
||||
%doc COPYING* COPYRIGHT notes todo README.SUSE
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
||||
%config(noreplace) %{_sysconfdir}/bash_completion.d/*
|
||||
%if 0%{?suse_version} >=1230
|
||||
%{_unitdir}/%{name}.service
|
||||
%else
|
||||
/var/adm/fillup-templates/sysconfig.%{name}
|
||||
%{_sbindir}/rc%{name}
|
||||
%{_initrddir}/%{name}
|
||||
%endif
|
||||
%{_bindir}/boinc
|
||||
%{_bindir}/%{name}
|
||||
%{_bindir}/boinccmd
|
||||
%{_bindir}/boincscr
|
||||
%{_bindir}/switcher
|
||||
%{_mandir}/man1/boinccmd.1.gz
|
||||
%{_mandir}/man1/boinc.1.gz
|
||||
%{_unitdir}/%{name}.service
|
||||
%{_sbindir}/rc%{name}
|
||||
%defattr(-,boinc,boinc,-)
|
||||
%{_localstatedir}/lib/boinc/
|
||||
|
||||
@ -482,8 +429,10 @@ fi
|
||||
%{_mandir}/man1/boinc-manager.1.gz
|
||||
|
||||
%files -n %{name}-lang -f BOINC-Client.lang
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files -n boinc-manager-lang -f BOINC-Manager.lang
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files -n libboinc%{soname}
|
||||
%defattr(-,root,root,-)
|
||||
|
@ -1,13 +0,0 @@
|
||||
Index: client/scripts/boinc.bash
|
||||
===================================================================
|
||||
--- client/scripts/boinc.bash.orig
|
||||
+++ client/scripts/boinc.bash
|
||||
@@ -36,7 +36,7 @@ _boinc()
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
-complete -F _boinc -o default boinc
|
||||
+complete -F _boinc -o default-boinc
|
||||
|
||||
_boinccmd()
|
||||
{
|
20
boinc-configure.patch
Normal file
20
boinc-configure.patch
Normal file
@ -0,0 +1,20 @@
|
||||
Index: configure.ac
|
||||
===================================================================
|
||||
--- configure.ac.orig
|
||||
+++ configure.ac
|
||||
@@ -968,7 +968,6 @@ AC_CONFIG_FILES([
|
||||
lib/Makefile
|
||||
locale/Makefile
|
||||
Makefile
|
||||
- py/Boinc/version.py
|
||||
py/Makefile
|
||||
py/boinc_path_config.py:py/boinc_path_config.py.in
|
||||
py/setup.py
|
||||
@@ -990,7 +989,6 @@ AC_CONFIG_FILES([
|
||||
packages/solaris/CSW/boincmanager/prototype
|
||||
test/boinc_path_config.py:py/boinc_path_config.py.in
|
||||
test/Makefile
|
||||
- test/version.inc
|
||||
tools/boinc_path_config.py:py/boinc_path_config.py.in
|
||||
tools/Makefile
|
||||
vda/Makefile
|
@ -2,7 +2,7 @@ Index: configure.ac
|
||||
===================================================================
|
||||
--- configure.ac.orig
|
||||
+++ configure.ac
|
||||
@@ -285,7 +285,7 @@ AC_SUBST([TOP_BUILD_DIR], [`pwd`])
|
||||
@@ -297,7 +297,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.
|
||||
|
@ -2,17 +2,17 @@ Index: client/gui_rpc_server.cpp
|
||||
===================================================================
|
||||
--- client/gui_rpc_server.cpp.orig
|
||||
+++ client/gui_rpc_server.cpp
|
||||
@@ -145,12 +145,7 @@ int GUI_RPC_CONN_SET::get_password() {
|
||||
// they can cause code to execute as this user.
|
||||
// So better protect it.
|
||||
//
|
||||
- if (g_use_sandbox) {
|
||||
- // Allow group access so authorized administrator can modify it
|
||||
- chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP);
|
||||
- } else {
|
||||
- chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR);
|
||||
- }
|
||||
+ chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP);
|
||||
@@ -169,12 +169,7 @@ void GUI_RPC_CONN_SET::get_password() {
|
||||
// they can cause code to execute as this user.
|
||||
// So better protect it.
|
||||
//
|
||||
- if (g_use_sandbox) {
|
||||
- // Allow group access so authorized administrator can modify it
|
||||
- chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP);
|
||||
- } else {
|
||||
- chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR);
|
||||
- }
|
||||
+ chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,89 +0,0 @@
|
||||
Index: client/scripts/boinc-client.in
|
||||
===================================================================
|
||||
--- client/scripts/boinc-client.in.orig
|
||||
+++ client/scripts/boinc-client.in
|
||||
@@ -19,14 +19,16 @@
|
||||
# For more information about BOINC (the Berkeley Open Infrastructure
|
||||
# for Network Computing) see http://boinc.berkeley.edu
|
||||
# processname: boinc
|
||||
-# config: /etc/sysconfig/boinc
|
||||
+# config: /etc/sysconfig/boinc-client
|
||||
#
|
||||
### BEGIN INIT INFO
|
||||
-# 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
|
||||
# Short-Description: This script monitors the BOINC client.
|
||||
# Description: This script starts the local BOINC client as a daemon
|
||||
# For more information about BOINC (the Berkeley Open Infrastructure
|
||||
@@ -117,6 +119,10 @@ fi
|
||||
#
|
||||
BOINCUSER=boinc
|
||||
|
||||
+# Name of group to run as:
|
||||
+#
|
||||
+BOINCUSER=boinc
|
||||
+
|
||||
# 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 +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).
|
||||
#
|
||||
-BOINCEXE_NAME=boinc_client
|
||||
+BOINCEXE_NAME=boinc-client
|
||||
BOINCEXE=${bindir}/${BOINCEXE_NAME}
|
||||
BOINCCMD_NAME=boinccmd
|
||||
BOINCCMD=${bindir}/${BOINCCMD_NAME}
|
||||
@@ -161,9 +167,7 @@ BOINCOPTS=
|
||||
# Subsys lock file ...
|
||||
|
||||
# If there is the subsys directory, then use it ...
|
||||
-if [ -d /var/lock/subsys/ ]; then
|
||||
- LOCKFILE=/var/lock/subsys/${BOINCEXE_NAME}
|
||||
-elif [ -d /var/lock ]; then
|
||||
+if [ -d /var/lock ]; then
|
||||
LOCKFILE=/var/lock/${BOINCEXE_NAME}
|
||||
elif [ -d /var/run ]; then
|
||||
LOCKFILE=/var/run/${BOINCEXE_NAME}.lock
|
||||
@@ -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!)
|
||||
|
||||
-if [ -f /etc/rc.d/init.d/functions ] ; then
|
||||
- . /etc/rc.d/init.d/functions
|
||||
+if [ -f /etc/init.d/functions ] ; then
|
||||
+ . /etc/init.d/functions
|
||||
else
|
||||
if printf "Hello" >/dev/null 2>/dev/null ; then
|
||||
# printf works
|
||||
@@ -279,7 +283,7 @@ if [ ! -d $BOINCDIR ]; then
|
||||
echo -n "Creating $BOINCDIR "
|
||||
if mkdir -p $BOINCDIR 2>/dev/null ; then
|
||||
if [ -n "$BOINCUSER" ] ; then
|
||||
- if chown $BOINCUSER $BOINCDIR ; then
|
||||
+ if chown $BOINCUSER $BOINCGROUP $BOINCDIR ; then
|
||||
echo_success
|
||||
else
|
||||
echo_failure
|
||||
@@ -329,8 +333,8 @@ if [ "${USERNOW}" = "${BOINCUSER}" ] ; t
|
||||
exit 8
|
||||
fi
|
||||
elif [ "${USERNOW}" = "root" ] ; then
|
||||
- cmd="if test -O ${BOINCDIR} ; then echo success ; fi"
|
||||
- if [ -z `su $BOINCUSER -c "$cmd"` ]; then
|
||||
+ # cmd="if test -O ${BOINCDIR} ; then echo success ; fi"
|
||||
+ # if [ -z `su $BOINCUSER -c "$cmd"` ]; then
|
||||
echo -n ERROR: $BOINCDIR is not owned by $BOINCUSER.
|
||||
echo_failure
|
||||
echo
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:061700382a0bdedb182e501f8ce51d5e84831a010bdc322c03820cc5bab0291e
|
||||
size 39793308
|
Loading…
Reference in New Issue
Block a user