# Upgrade BOINC to latest version

## jsosic

BOINC is a program, that uses your CPU's idle cicles to cure diseases, study global warming, discover pulsars, and do many other types of scientific research.

People volunteering with BOINC are organized in projects and teams. Projects (like WorldCommunityGrid) focuse on one specific problem (in this case medicine). When people join project, they organize in teams. For every calculation and returned result you get awarded with points. The stronger your machine is, and faster you resolve the task, you get more points. Computer strength is detected by CPU benchmark, and so you get more points for tasks if your benchmarks results are better. This IMHO is not fair, but that's how it is.

So there's a catch with the points - Linux clients have a long known bug - benchmarks on Linux give aprox. only 55% of the Windows benchmarks on the same machine. So basically Linux machines get awarded with 1/2 points for the same task! Problem has been addressed with BOINC 5.8.15 and solved completely with 5.8.17. Current version in Portage is 5.4.11.

There's an easy way to update the program to the newest version, without writing complex ebuilds, re-emergeing and so on. All you have to do is download current BOINC version from here, extract it, and copy its binaries over the one's Portage installed.

Step1:

```
# emerge sci-misc/boinc
```

or if you already have it installed

```
# /etc/init.d/boinc stop
```

Step2:

```
# mkdir ~/temp && cd ~/temp

# wget http://boinc.berkeley.edu/dl/boinc_VERSION_i686-pc-linux-gnu.sh
```

Step3:

```
# chmod +x boinc_VERSION_i686-pc-linux-gnu.sh

# ./boinc_VERSION_i686-pc-linux-gnu.sh
```

Step4:

```
# cd BOINC

# cp boincmgr /usr/bin/boinc_gui

# cp boinc_cmd /usr/bin/boinc_cmd

# cp boinc /usr/bin/boinc_client

# cp ca-bundle.crt /var/lib/boinc
```

Step5:

```
# cd ~ && rm -rf ~/temp

# /etc/init.d/boinc start
```

And there you go, you have the latest boinc version installed  :Smile: 

----------

## likewhoa

that's just plain dirty.. why don't you just put some time into bumping/upgrading the ebuild?

----------

## Phenax

Already an updated ebuild.. https://bugs.gentoo.org/show_bug.cgi?id=166920

----------

## likewhoa

not a surprise to see it,.. boinc is a fairly easy install.

----------

## jsosic

 *likewhoa wrote:*   

> that's just plain dirty.. why don't you just put some time into bumping/upgrading the ebuild?

 

This is just a method if you don't wanna wait for an ebuild... I'm using 5.8.17 right now, it is dirty, but hey, you only overwrite 3 files so it's not a big deal anyway.

----------

## jsosic

 *likewhoa wrote:*   

> not a surprise to see it,.. boinc is a fairly easy install.

 

Then why is 5.4.11 in the portage for such a long time?!

I'm interested in maintaining few ebuilds in which I have personal needs and interests (like this one) myself, and I'm sure there's lots of other people willing to help too.

So, where do I sign up?  :Wink: 

----------

## likewhoa

make an overlay with the ebuilds and submit bugs for new ebuilds that are not part of the tree, ebuilds that you have updated which are part of the tree can be submitted to bugs.gentoo.org but a better place would be the sunrise overlay. only submit bump/upgraded ebuilds to bugs.gentoo.org after 30days, not the next day the new version is out, you gotta give the maintaners of those ebuilds some credit as most don't just maintain one package.

----------

## tsunam

5.8.15 is in the tree now. Its masked for now, just need to get results of people using it.

----------

## likewhoa

 *tsunam wrote:*   

> 5.8.15 is in the tree now. Its masked for now, just need to get results of people using it.

 

using it here, but it needs some motifications which i will be doing shortly,.. I'm also planning on adding USE flags and or ebuilds for building optimized clients.

----------

## tsunam

Well, submit a bug with changes and I'll look over them and go over them with cryos, really want to get it unmasked as the major feature beyond being current, is that it increases the points you request to be more in line with what the windows client actually requests.

----------

## likewhoa

will do,.. I also will be looking into integrating boinc compiles with the Intel C Compiler icc which really speeds things up. there are a number of optimized clients, seti@home has one too.

----------

## WilliamHeuts

Be aware that most projects penalize optimized clients. Although it's a nice feature to have with the use of USE flags.

5.8.17 (Development version) seems to solve the pointsdifference with Windows client. I don't know if it's because that 5.8.17 requires GCC 4.x instead of 3.x.

But first let's get the recommended version unmasked shall we?  :Smile: 

----------

## swimmer

 *likewhoa wrote:*   

> will do,.. I also will be looking into integrating boinc compiles with the Intel C Compiler icc which really speeds things up. there are a number of optimized clients, seti@home has one too.

 Can you give me an URL for the seti@home optimized client?

TIA

swimmer

----------

## likewhoa

 *swimmer wrote:*   

>  *likewhoa wrote:*   will do,.. I also will be looking into integrating boinc compiles with the Intel C Compiler icc which really speeds things up. there are a number of optimized clients, seti@home has one too. Can you give me an URL for the seti@home optimized client?
> 
> TIA
> 
> swimmer

 

I haven't been able to compile it because my Intel rig is down at the moment but as soon as I get it going i will make a link to my overlay.

----------

## tsunam

 *WilliamHeuts wrote:*   

> Be aware that most projects penalize optimized clients. Although it's a nice feature to have with the use of USE flags.
> 
> 5.8.17 (Development version) seems to solve the pointsdifference with Windows client. I don't know if it's because that 5.8.17 requires GCC 4.x instead of 3.x.
> 
> But first let's get the recommended version unmasked shall we? 

 

If you want to get it unmasked, put a bug in for it =) (5.8.15 won't be unmasked fully til its been in the tree 30 days without any bugs actually reported against it). As for penalizing optimized clients..what do you mean?

----------

## WilliamHeuts

 *tsunam wrote:*   

>  *WilliamHeuts wrote:*   Be aware that most projects penalize optimized clients. Although it's a nice feature to have with the use of USE flags.
> 
> 5.8.17 (Development version) seems to solve the pointsdifference with Windows client. I don't know if it's because that 5.8.17 requires GCC 4.x instead of 3.x.
> 
> But first let's get the recommended version unmasked shall we?  
> ...

 

#166920 IS my bugreport   :Very Happy:   Running 5.8.15 stable and that's the most important part. Development versions are nice but in no way a necessity in the portage tree.

In projects like WCG and Rosetta@home the claimed points for a result are checked against 3 other returned results. If you're claim is way out of bounce due to the optimized client you'll get penalized for your result and your next result. i.e. you get lesser points than with the standard client. I don't know exactly how it works but running a optimized client on those projects has no benefit at all for your score.

More info from WCG:

http://www.worldcommunitygrid.org/help/viewTopic.do?shortName=linpointscalc

----------

## elgrande71

I posted an ebuild for boinc-5.8.17 with linguas support ( https://bugs.gentoo.org/show_bug.cgi?id=173243 ).

Pay attention to the boinc source file located to http://olivier.mondoloni.free.fr/boinc_source/boinc-5.8.17.tar.bz2

Copy it to your /usr/portage/distfiles directory.

Try it please .   :Wink: 

Thank you.   :Wink: 

----------

## swimmer

I found some working optimized Seti@home clients at http://lunatics.at/index.php?module=Downloads;catd=14 ...

Greetz

swimmer

----------

## elgrande71

Find the ebuild of the lastest boinc version (5.9.3) at https://bugs.gentoo.org/show_bug.cgi?id=173503

Give it a try.   :Wink: 

I have a problem with linguas function in ebuild, could you help me with strip-linguas function for example ?

----------

## kerstman

 *doomhammer666 wrote:*   

> I posted an ebuild for boinc-5.8.17 with linguas support ( https://bugs.gentoo.org/show_bug.cgi?id=173243 ).
> 
> Pay attention to the boinc source file located to http://olivier.mondoloni.free.fr/boinc_source/boinc-5.8.17.tar.bz2
> 
> Copy it to your /usr/portage/distfiles directory.
> ...

 

I had 2 issues

a) LINGUAS en_GB caused a problem - could not be found. I worked around it by removing it from /etc/make.conf

b) I lost /etc/init.d/boinc after the build was installed. Got it back from /usr/portage/sci-misc/boinc/files

Other than that works fine... thanks for the ebuild

----------

## David Duvall

The very first post in this thread showed how to Upgrade to the latest release of BOINC and it worked for me using an Athlon64 4000+ with 64 bit Gentoo Linux.   There were a couple of stumbling blocks along the way and I wanted to let you know how I got it to work for me.  However, you should know that I built my machine to do one thing and only one thing -- BOINC.

I did a fresh install of Gentoo using a 3rd stage 2007.0 release for AMD64 using "CFLAGS=-march=k8 -O2 -pipe".  I was very careful NOT to use ACCEPT_KEYWORDS="~amd64" during the installation of my base system.  Upon basic installation I edited my USE flag to pull-in as many stable 64-bit programs that BOINC "might" need when I install it.  I know that some of these aren't necessary but I used USE="X bash-completion bcmath blas bzip2 cblas cpudetection curl curlwrappers ffcall fortran fortran95 glib glibc-compat20 glut gtk gtkhtml icc libg++ libgda m17n-lib opengl multilib nptl nptlonly perl python qt3 qt3support qt4 shared szip type1 uclib uclib-compat unicode xorg zlib"  (you can bash me all you want about using unnecessary flags but, my BOINC worked right the first time and is returning valid results).

I updated my portage tree with "emerge --sync" and then ran "emerge --emptytree world".  As a personal preference I always run "emerge --fetchonly --emptytree world" before actually running "emerge --emptytree world" (you never know when your internet might go down).  This rebuilt my world using only stable releases of 64 bit programs.  I had no errors.  After the world rebuild I used ""ACCEPT_KEYWORDS="~amd64" emerge boinc".  This will pull-in the masked version of boinc, along with masked versions of programs needed by boinc.  After this completed I started and stopped boinc in order to initialize it.  Make sure to stop Boinc and use "nano -w /var/lib/boinc/gui_rpc_auth.cfg" to edit your password to whatever you like.  Following the instructions in the very first post in this thread I downloaded boinc_5.10.8_x86_64-pc-linux-gnu.sh.  The only problem I had was with a slight change in the command line format.  When using ./boinc_cmd you have to use "./boinc_cmd --host localhost --passwd xyzzy" before any command (zyzzy is just a made-up password).  Also remember to "/ect/init.d/boinc start" before trying to use any commands.... (yes, I made this silly mistake a couple of times and scratched my balding head). I use bam.boincstats.com so my command line looked like "./boinc_cmd --host localhost --passwd xyzzy --join_acct_mgr bam.boincstats.com "David Duvall" dfasefesd123".  It has worked flawlessly for me.  I wish you all good luck.

----------

## smart

Hi all. Thanks for boinc 5.8.15 ebuild. I've got a question about it though.

It contains

        append-flags -O3 -funroll-loops -fforce-addr -ffast-math

is that a technical need or developers preference ?

I haven't found support requests on the forum that would indicate it was a technical need.

----------

## likewhoa

developers preference, benchmarks have shown that those cflags optimized boinc client.

----------

## Trog Dog

 *smart wrote:*   

> Hi all. Thanks for boinc 5.8.15 ebuild. I've got a question about it though.
> 
> It contains
> 
>         append-flags -O3 -funroll-loops -fforce-addr -ffast-math
> ...

 

G'day smart

You can find the build instructions  here . The "ricing" settings were introduced to address the differences in benchmark figures turned in by the windows and the linux versions - linux versions used to report 50% less than the equivalent windows client.

----------

