-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path2024.02.28.html
More file actions
27 lines (25 loc) · 5.34 KB
/
Copy path2024.02.28.html
File metadata and controls
27 lines (25 loc) · 5.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="fediverse:creator" content="@AenBleidd@fosstodon.org"><meta name="description" content="Find more details about the purpose of vanilla BOINC packages for DEB and RPM based Linux distributions."><meta name="keywords" content="BOINC, development, Vitalii Koshura, updates, information, Linux, DEB, RPM"><meta propery="og:title" content="Vanilla BOINC packages: the reason and the purpose"><meta propery="og:description" content="Find more details about the purpose of vanilla BOINC packages for DEB and RPM based Linux distributions."><meta propery="og:type" content="website"><meta propery="og:url" content="https://aenbleidd.github.io/2024.02.28.html"><meta propery="og:image" content="https://aenbleidd.github.io/images/boinc_tux.png"><link rel="canonical" href="https://aenbleidd.github.io/2024.02.28.html"><title>Vanilla BOINC packages: the reason and the purpose</title><link rel="icon" type="image/x-icon" href="favicon.ico">
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/github-dark.css" media="screen">
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-RB9QYE55Z3"></script>
<script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('config', 'G-RB9QYE55Z3');</script>
</head><body><header><div class="container"><h1>Vitalii Koshura: Maintaining BOINC / Vanilla BOINC packages: the reason and the purpose</h1></div></header><div class="container"><aside id="menu"><ul id="menu_items"><li><a href = 'index.html'>Home</a></li><li><a href = 'blog.html'>Blog</a></li><li><a href = 'tutorials.html'>Tutorials</a></li></ul></aside><section id="main_content"><div id="blog_post_single"><p align="center">
<img src="images/boinc_tux.png" alt="Linux Tux loves BOINC"/>
</p>
<p>I have very controversial feelings about open-source software and Linux OS. From one hand, I like the idea of the transparency, when you can always check what is really doing every application you run. From the other hand, as a maintainer of the application, you lose some part of control on it, because it is possible to modify some application's behavior (e.g. via distro patches), that contradicts the original idea of it or break some functionality. And because there are so many different OSs, you can't keep an eye on all of them. That is why sometimes you receive a bug report that looks completely weird, and when you start doing the investigation, you realize, that this happened because of the distro patch, that was intended to fix another issue, but as a result introduced a new one. And, as a maintainer of the application, there are not so much options for you here. But in any case, you have unsatisfied user, that is always bad.</p>
<p>We, at BOINC, faced several times the situation when the package that is distributed with the distro is completely broken, and users have no idea how to fix that. You can post instructions, blog posts, answer questions of forums, but still the same question about the same bug will be asked. Sometimes the communication with the distro maintainers becomes hot, and every party is completely sure that only their opinion is correct.</p>
<p>To get rid of this situation, we decided to create our own BOINC vanilla builds for Linux. We have started with the most popular distributions: Debian, Ubuntu, Fedora and openSUSE. Currently we target only the LTS releases that are officially supported, so that is why for now we provide packages for Ubuntu 20.04 and 22.04 only.</p>
<p>More details (including the list of supported OSs) are <a href="https://github.com/BOINC/boinc/wiki/Linux-DEB-and-RPM-support">here</a>.</p>
<p>Since building all these packages (20 in total for every version) is quite a task, I had to try to automate this as much as possible, including adding some integration tests to avoid very dumb bugs. I can't say that the current CI is finished, but it does its work already: every night we have a new build that is automatically published to the 'nightly' channel on the BOINC official website. This gives our users the opportunity to test new features as soon as they added to the codebase even before the alpha testing phase begins. I can't say this is a recommended way of installing BOINC, but since we have now 2-3 releases every year, it might be helpful for those who have problems with the issues that are blockers for them only.</p>
<p>These packages are not yet recommended to use, but the first result is already very promising. On the video below the process of installation of both BOINC client and Manager on Ubuntu 22.04 is shown:</p>
<p align="center">
<iframe allowfullscreen="" class="BLOG_video_class" height="416" src="https://www.youtube.com/embed/DSxUckiTzPE" width="501" youtube-src-id="DSxUckiTzPE"/></iframe>
</p>
<p>Of course, there are still some issues, but now it will be much easier to fix them and deliver to our users faster.</p>
<p>Stay tuned for further updates.</p></div><div id="previous_post_link"><a href="2023.10.14.html">Previous Post: Introduction</a></div></section><aside id="right_block" style="margin-left: 100px;"></aside></div><footer><div class="container"><p>Vitalii Koshura © 2026</p></div></footer></body></html>