Introduction

BOINCMenubar 2 gives you an overview of, and helps you manage, your computers running BOINC.

Description

BOINCMenubar 2 is an alternate GUI manager for BOINC. It is a status menu item that lives on the right side of your menu bar. When you open the menu you get a quick overview of which projects have tasks running as well as other information about the projects that you set up yourself.

The BOINCMenubar menu also has items for controlling BOINC running on a host computer and for controlling projects that are attached to that computer. The host computer can be the same one that is running BOINCMenubar or any computer on the local network running the BOINC client.

There is a preference panel for setting up BOINCMenubar, for setting up all the preferences for the BOINC application itself and for attaching to and detaching from projects and account managers.

To learn more about BOINC:

Requirements

Mac OS X 10.5.x or later.

You need to have the BOINC client software installed on at least one computer on your local network.

Download

BOINCMenubar 2 Version 0.1.17 Beta (see the Release History to find out what changed)

The source is available on GitHub.

Updates

I will announce software updates on my blog and twitter.

The Main Menu

BMBMenu

The main menu has three sections:

Host computer

Information and controls for the host computer.

The host name is a name you create for each host (defaults to This Computer for the localhost). It's submenu allows you to change to different hosts and to edit the list of hosts. See the Hosts Preferences for more on how to set up remote hosts.

The host's total credit and RAC is optional and can be turned on or off in the Appearance Preference

The version of BOINC running on the host computer will be shown. It has a submenu that shows Hardware Information.

Snooze will suspend BOINC for one hour.

Suspend/Resume Network Access will stop BOINC from using the network until you resume it.

A Synchronize with Account Manager item will be shown if you are attached to an account manager. It allows you to update the host with changes you have made at the account manager now instead of waiting for an automatic update.

Projects

Information and controls for projects the host computer is attached to.

Next to the name of each project there will a task count badge that shows how many of that projects tasks are running right now (the number of the left in green) and how many uncompleted tasks are running or ready to run. Tasks that are ready to report, completed with an error, uploading or downloading are not counted.

Under each project's name is a list of information about that project. What information is displayed is customizable, use the Appearance Preference to change what is displayed. You can either show a lot of project information here or none, depending on what you want. In the screenshot above the information is showing the users total credit and RAC for that project and then the host's credit and RAC.

A submenu shows more information about the project (also customizable using the Appearance Preference), menu items that allow you to send commands to the project (Update, Suspend, Stop Downloading New Tasks), and links to pages on the project's website.

BOINCMenubar

Menu items dealing with the BOINCMenubar application.

About BOINCMenubar 2 will show an about window where you can find the version of BOINCMenubar you are running.

The BOINC Help submenu will give you links to this page and to the BOINC project's website where you can find more information about BOINC and any problems you are having with it.

Preferences... will open the Preferences window where you can configure BOINCMenubar and BOINC (see the individual preference pane descriptions below).

Join New Project... is a shortcut to the Projects Preference pane.

Quit BOINCMenubar 2 will quit this application but will not quit BOINC, so your science tasks will continue to run.

Host List submenu

BMBHostList

If you have multiple host computers running BOINC, set them up in the Host Preferences. Then you can select a host from the host submenu and it will change the main menu to display information about BOINC running on that host computer.

The active host will have a checkmark next to it.

BOINCMenubar will remember the last host you connected to, so when you restart BOINCMenubar it will automatically reconnect to that host.

Hardware Information

BMBHardwareInfo

This shows various information reported by BOINC about the host computer.

The "Copy Hardware Support Info to Clipboard" is a convenient way to post your computer's basic hardware information when asking for help on project message boards.

General Preferences

BMBGeneralPrefs

Start BOINCMenubar 2

You can set BOINCMenubar 2 to start when you login to your computer. Note that this will not start BOINC itself, you will need to use BOINCManager or some other method to start BOINC separately.

Growl

Growl is a 3rd party system preference that lets Mac OS X applications unintrusively tell you when things happen. If you don't have Growl installed already go to http://growl.info/ to learn more about and download it.

BOINCMenubar 2 uses Growl to send notifications of certain events. You can edit which events you want to get notifications for by going to the Growl section of the System Preferences.

Network Connection

When BOINC needs to access the network and the computer is not always connected.

Host Credit Milestones

Shows a message when the host's credit passes a milestone for a project.

User Credit Milestones

Same as above but for the account at each project.

Workunits and Results

Tells you how many workunits have been downloaded and results uploaded for each project.

Appearance Preferences

Main Menu

BMBAppearencePref

Host and Project Information

Choose between having the Host Computer and Projects sections of the menu above or below the BOINCMenubar section. This is important if the host is attached to a large number of projects, you can make it easier or harder to get to the BOINCMenubar menu commands depending on what is important to you.

Show Total Host Credit and RAC under the Host Name

The host's total credit and Recent Average Credit as summed up from each project the host is currently attached to. It will not include projects the host has completed work on in the past but is no longer attached to.

Sort Host Submenu

If you have added additional remote hosts you can change how they are sorted in the host list submenu.

Show Task Count Badge in the Project's Title

The task count badge will indicate the number of tasks for a project that are downloaded but not completed. If any of the project's tasks are currently running then the number of running tasks is shown on the left in green. Tasks that are ready to report, completed with an error, uploading or downloading are not counted.

Sort Projects

If the host is attached to multiple project's you can change the order that the projects are shown in the menu. Each time the menu is opened the order is reevaluated.

Project and Project Submenu attributes

BMBAppearencePref2

You can customize the information that BOINCMenubar shows in the menus.

The Project tab will change the information shown under a project in the main menu. And the Project Submenu tab will change the information shown in the sub menu displayed when you select a project.

You can turn individual attributes on or off and you can reorder them using the arrows at the bottom of the list or by dragging them where you want.

For example, you can add the two attributes "Total and Running Tasks" and "Total Time Estimate" and move them to the top like this:

BMBAppearenceSelectedAttributes

And that will cause the main menu to show all four attributes under each project:

BMBMenuSelectedAttributes

If you have a large number of projects you may want to turn off all the attributes in the main menu:

BMBAppearenceNoAttributes

Then the projects will be listed with nothing under them:

BMBMenuNoAttributes

Host Preferences

BOINCMenubar 2 can be setup to securely save the login information for remote hosts running BOINC so you can check up on them easily. All passwords are saved using Apple's Keychain Service.

When you first start BOINCMenubar 2 a default host is created for the computer it is running on called 'This Computer'.

Configuring BOINC to accept remote connections

BOINC must be configured to accept remote connections on each computer that you want to have access to.

The configuration is stored in two files:

  • gui_rpc_auth.cfg stores the password for connecting to BOINC running on a host computer. BOINC will automatically create a random password, however you can change it to whatever you like. Note that this is not the password that you use to login to any of the science project's web sites.
  • remote_hosts.cfg stores a list of DNS host names or IP addresses of other computers that are allowed to login to BOINC. Initially this file will not exist, you will have to create a remote_hosts.cfg file on each host computer. In the remote_hosts.cfg file put the DNS host name or IP address of each computer you want to allow access. Each entry must be on it's own line.

On Mac OS X the gui_rpc_auth.cfg and remote_hosts.cfg files will be in /Library/Application Support/BOINC Data.

For information on the location of the config files for other platforms read BOINC's documentation for Controlling BOINC remotely.

Host List Table

BMBHostPref

Add a host

To add a new host press the plus '+' button at the bottom left of the Hosts preference pane. The add/edit host sheet will appear (see below).

Edit a host

To edit a host double click the hosts entry in the host list table. The add/edit host sheet will appear (see below).

Delete a host

To delete a host select the host in the host list table then press the minus '-' button at the bottom left of the Hosts preference pane.

Add/Edit Host Sheet

BMBEditHost

Name

Create any name you want to help you to identify the host computer. Names do not have to be unique.

Host Address

The host address is either a DNS host name or an IP address. For the computer running BOINCMenubar 2 you can use 'localhost'.

To find the host name of a Mac OS X computer: go to System Preferences, open the Sharing preference pane and look under the Computer Name field. It will tell you the host name under which computers on your local network can access that computer, for example: 'MyComputer.local'.

To find the IP address of a Mac OS X computer: go to System Preferences, open the Network preference pane, and get the listed IP Address.

For non-Mac OS X computers consult your OS's user manual.

BOINC Password

This is BOINC's login password. See Configuring BOINC to accept remote connections.

If you select "Always ask" then BOINCMenubar 2 will ask you for the password each time you connect to this host computer.

If you select "Store in keychain" then BOINCMenubar 2 will store the password in your login keychain. The first time you login to the host computer Mac OS X will ask you to allow or deny BOINCMenubar access to the password. If you allow it then BOINCMenubar will start using the stored password and you can use BOINCMenubar to view and manage this host computer without entering the password again. If you deny then BOINCMenubar will ask for the password just like it does for "Always ask" above.

BOINC Preferences

BMBBOINCPref

Editing BOINC Preferences

BMBEditBOINCPref

Network Preferences

BMBNetworkPref

Project Preferences

Attached Projects

BMBProjectsPref

Unattached Projects

BMBProjectsListed

Other Projects

BMBProjectsOther

Account Managers

BMBProjectsAMS

Release History

v0.1.17 Beta

Released 12/4/09

Fixed:

The BMB2 icon would show as disabled when running BOINC 6.10.21 or later.

BMB2 will now actually run on a computer that never had BOINC installed (I said it did before but it didn't).

Added:

Automatic software updates with Sparkle.

Changed:

No longer uses an installer to install BMB2 with special permissions.

Now requires the BOINC GUI password on the local machine for non-admin users (before it only required the password for remote connections).

v0.1.16 Beta

Released 7/11/09

Fixed:

A crashing bug caused by deleting a host in the Hosts preference view while it is the active host.

A crashing bug caused by the project information getting corrupt when trying to connect to a host that is no longer running.

A display problem when detaching from a project, the outline view in the Projects Preference would not update the list of attached projects.

A display problem when connected to a host with no projects, the menu would just display two separator lines with nothing between them. Now it will say "Get Started by Joining a Project…" and open the Project Preferences view.

A display problem when closing a group in the Projects Preferences outline view would cause the project name and some other information to show "No Selection". As a temporary fix I'm not allowing a group to be closed when one of the projects under it is selected. I'll figure out a better solution later.

A number of memory leaks as reported by the Clang Static Analyzer.

Added:

A popup menu in the three BOINC preferences to switch the current host without having to go to the status menu.

v0.1.15 Beta

Released 6/21/09

Fixed:

A crashing bug when using "Override Web Preferences".

The menu icon would flash on and off when the "Use at most X% CPU Time" was less than 100%.

Added:

A crash reporter that will allow you to send crash reports to me. For more info read BOINCMenubar 2 v0.1.15 Beta.

v0.1.14 Beta

Released 6/13/09

Fixed:

A crashing bug when opening the General Preferences having to do with reading the Login Items list to check if BOINCMenubar was already there.

In the Appearances preference using drag and drop to reorder the list of attributes would cause the item dropped to be one extra line down from where it was dropped.

In the Host Information submenu the Download Rate had an extra "/KB".

Project attributes would not be updated in the project's submenu if the menu was closed and then opened again without closing the main menu.

Added:

Tasks to Report: A new attribute in the Appearance preferences for Project and Project Submenu that counts the tasks that have completed but have not been sent to the project yet (in BOINC Manager these tasks are marked "Ready to report"). It will also show a count of any of these tasks that completed with errors. The main task count only counts tasks that have not been completed, so "Tasks to Report" will now count the rest.

v0.1.12 Beta

Released 6/6/09

Fixed:

The Growl user credit milestone notifications were being sent when the Growl "Display Notifications" was off and not when it was on.

If a project had just updated some new workunits but BOINC was not running any workunits from it then the Estimated Time would not be updated if it was shown in the main menu.

The installer did not run BOINCMenubar after the install process.

v0.1.11 Beta

Released 6/1/09

Fixed:

Crashing bug when editing BOINC Preferences.

v0.1.10 Beta

Released 5/31/09

Fixed:

When the appearance setting "Host and Project Information" was changed from "At Top" to "At Bottom" the menu items would get mixed up and out of order. After that the app would not update correctly.

Added:

A new Growl message "Workunits and Results" that lists the number of workunits downloaded and results sent for each project.

A menuitem in the Host Information submenu called "Copy Hardware Support Info to Clipboard" which should be useful for posting your computer's hardware info in support forums and emails.

v0.1.9 Beta

Released 5/26/09

Fixed:

A formating bug, the data values were the same light grey that the labels were.

Made the milestone Growl messages not sticky by default.

v0.1.8 Beta

Released 5/25/09

Fixed:

Several memory leaks when opening the menu.

Added:

Growl messages. There's a message for when BOINC needs a network connection and credit milestone messages for the user and the host computer.

The menu now updates about once a second when it is open.

Added network bandwidth and BOINC time usage to the Host Information submenu.

v0.1.7 Beta

Released 5/17/09

Fixed:

A crashing bug when clicking the Finish button in the attach to project sheet.

Added:

BOINC version number and Host Information in a new menu/submenu item in the hosts section.