I am glad to introduce to the BOINC and Gridcoin community a prepackaged operating system for the undertaking of distributed/volunteer computing that (with development) will allow users to participate in science by simply plugging in a USB.
What is BOINCOS?
BOINCOS is a customised operating system tasked with the sole purpose of performing distributed/volunteer computing using the Berkeley Open Infrastructure for Networked Computing BOINC. BOINCOS's goal is to be run on a USB and be able to boot into any type of hardware in order to use the computer for compute tasks. It is a linux-based operating system built upon Arch Linux.
The OS itself has been developed by one person (me) to solve one of my own problems and I have decided to distribute it to all who will find it useful.
Where can I get it?
BOINCOS has just been released in alpha and still requires further development and testing before a much more higher quality release is finalised. This release is intended to be for testing in order to ensure all platforms and graphics cards are supported so I would not recommend it for a long-term solution.
Before proceeding, it is highly advised to read the documentation before downloading and installing this version.
Milestones and Future Development Goals
The following is a list of milestones I expect to see in the future in its approximate chronological order:
- Extensive testing performed: BOINCOS will be tested on a range of hardware to ensure that BOINC work units both CPU and GPU can be run as well as testing whether the installation can be carried over to various other computers.
- Networking: A fully functioning network manager with GUI will be implemented to allow ease of access to the internet.
- Official webpage: A webpage for BOINCOS will be set up in order to improve user experience.
- Appearance improvements: Improvements to the desktop environment and style, complementing itself to a modern and simple look. This includes community made graphics for the wallpaper and other objects.
- Login GUI/greeter: The addition of a greeter that presents the user with a far more friendlier interface rather than interacting with the console initially.
- Implementation of the BOINC-Helper software: A developed package that allows the user to interact with only what they need in the system including items such as the system monitor, BOINC manager, web browser, a terminal and settings relating to themes and localisations in order to massively simplify the interface.
- Development of a headless version: A version of BOINCOS made to be as small and make as light of impact as possible. This will be a purely command line interface.
- Move to a different desktop environment: It has been considered that the interface can be made far more simpler with an interface such as i3wm as it is far more programmable and can be developed in such a way that allows it to become the most simplest interface.
How can I Support?
BOINCOS needs to be tested on a range of hardware to ensure that it can be used on the widest range of hardware configurations as my local hardware does not have enough deviation to perform adequate testing.
Information on what/how to test can be found within the documentation stated above in addition to the issues page.
BOINCOS will need to be spruced up in the future so it will require a set of high quality wallpapers and graphics to make it far more user-friendly.
Refer to this GitHub Issue.
BOINCOS is very undeveloped and any expertise in customising or hardening operating systems is needed desperately. Currently the main features that need to be refined include:
- Security: Permissions, rules and access lists to prevent misuse of the OS and prevent any form of vulnerabilities being exploited or usage of the system being prevented.
- Disk imaging and bootloading: Packaging systems for distribution and allowing them to run on the widest range of hardware.
Find a list of various related issues in the issues page.
Keep the developers motivated by tipping them. Various contributors are listed on the contributors list.
Basic setup with BOINC, terminal, system monitor and file manager open:
Picture of the computer showing the USB stick running BOINCOS:
Installed web browser showing the BOINC website:
A Note on Development
It should be noted that this project is a result of a learning process as I personally wish to learn about developing and distributing operating systems and I am doing my best to make this as formal of a process as possible. After saying this, I am free to take any constructive criticism or suggestions from others and am actually requesting help on certain topics as stated in some of the issues in the repository.
I should also note that I am still a teenager and still attend school so my time is very limited. In addition to this I have practically no experience in any of the fields required to undertake this project in regards to development, documentation and licences/ethics.
But amidst all this, I am making this project my main priority and hope to see it flourish and be used by much of the community in the near future.
Thanks to those who have read and thanks in advance to anyone who contributes!
Citations for Images:
- BOINC banner, Copyright Michal Krakowiak (BOINC)
- Arch Linux banner, Trademark and Copyright Arch Linux