Open-source News

Zink OpenGL-On-Vulkan Benchmarks Are Very Competitive To Radeon OpenGL Driver

Phoronix - Mon, 08/22/2022 - 18:30
With this weekend having seen more Zink refactoring code land and Zink being faster than RadeonSI at least for some operations, it was time to fire up some fresh benchmarks of this generic OpenGL-on-Vulkan implementation. From the newest Mesa code this weekend after the latest Zink patches were merged, here is a look at how the Zink performance is compared to the RadeonSI Gallium3D driver's native OpenGL support. All of the testing was done using an AMD Radeon RX 6800 XT graphics card.

Ubuntu Now Supports The Allwinner D1 Powered Nezha RISC-V Board

Phoronix - Mon, 08/22/2022 - 17:35
Last week Canonical announced official Ubuntu RISC-V images for the StarFive VisionFive board while this week they are expanding their supported RISC-V line-up to also include the Nezha single board computer powered by the Allwinner D1 SoC...

GTK4's Broadway HTML5 Backend Coming Back To Ubuntu, Debian

Phoronix - Mon, 08/22/2022 - 17:20
For the past decade going back to the early GTK3 days there has been the "Broadway" back-end that allows for GTK interfaces to be rendered within HTML5 web browsers. Aside from demos and other toys, there hasn't been too much widespread use reported with this GTK HTML5 back-end and some distributions like Ubuntu and Debian haven't been shipping the Broadway support with the newer GTK4. However, that is changing now for Debian and with this autumn's release of Ubuntu 22.10...

Experimental Patches Allow Much Faster AArch64 & RISC-V Kexec Kernel Reboots

Phoronix - Mon, 08/22/2022 - 16:57
For those making use of Kexec reboots for booting to a new kernel without fully bringing down the system to reduce the server downtime from POST'ing and other hardware initialization tasks, Kexec reboots may soon be much faster on 64-bit Arm and RISC-V systems...

Kdenlive 22.08 Video Editor Brings UI Improvements, Experimental Parallel Processing

Phoronix - Mon, 08/22/2022 - 16:45
Following last week's release of KDE Gear 22.08, Kdenlive 22.08 is out as the newest version of this open-source, KDE/Qt-aligned non-linear video editing software...

Mentoring as a power multiplier in open source

opensource.com - Mon, 08/22/2022 - 15:00
Mentoring as a power multiplier in open source Josh Solomon Mon, 08/22/2022 - 03:00 Register or Login to like Register or Login to like

Many developers struggle with work-life balance. They are overloaded with regular tasks and frequently called upon to solve urgent customer issues. Yet many developers, like me, have ideas they want to promote if only they had time to do so. Sometimes these pet ideas do not make it through the product management feature-selection process. Other times, a developer does not have time to complete the solution end-to-end on their own, yet they know if it could somehow be implemented, the project would benefit.

This is where mentoring comes in. Mentorship has many benefits: It helps the mentee's personal development, and it can improve the mentor's self-confidence and leadership skills. I discussed these benefits in an interview about skillful mentoring in the Red Hat Research Quarterly that includes many tips for a rewarding mentor relationship.

However, in the scenario I just described, mentorship has another very practical benefit: It helps with enrolling developers in the projects the mentor-developer wants to promote. In this article, I will explain how you can use mentoring as a power multiplier in the open source software (OSS) world and create a multi-win situation by mentoring people who further contribute to the open source community.

This article is based on my experience mentoring students as part of the collaboration between my organization and Reichman University, but it can apply to any mentorship situation.

Open source software is a gateway

OSS is a great entry ticket for many people into any of several exciting software community projects. It can help undergraduate and graduate students gain visible experience so they improve their first job search. Or, it can help more experienced programmers find interesting projects (plenty of those are available) or particularly challenging projects (plenty of those as well). In many of these cases, there can be a good match between people who are looking for programming opportunities and the projects looking for more developers.

The first step is leveraging the opportunity.

More open source career advice Open source cheat sheets Linux starter kit for developers 7 questions sysadmins should ask a potential employer before taking a job Resources for IT artchitects Cheat sheet: IT job interviews Building a multi-win combination

Developers have projects they want to push; outside programmers want to contribute to open source projects. But how can they find each other?

There are multiple mechanisms that can be used to match projects with contributors. First, I want to share my mentorship story; then, I will discuss other options.

My story started when I was invited to offer research projects to Reichman University students. In collaboration with industry partners, the university was running a course and lab in which students were offered various projects sponsored by many companies. The students could then implement them with support and mentoring from those companies.

This was the first year the course was running, and our team had little time to prepare. To act quickly, I had to pull some of my backlog projects that I wanted to implement but didn't have the capacity to do on my own. One of the projects we offered was adding a compression layer to the communications path between components in the Ceph software-defined storage product to reduce the cost of deployments on public clouds. This was a complex project because it involved changes in the data path of a large and sophisticated storage system.

As it happened, this was a very good decision. For their presentations at the end of the course, most students were doing research-oriented, nonproduction projects, such as a proof of concept or a simple research project for choosing the best AI algorithm for a specific problem. Our team, on the other hand, offered a more challenging, full-blown feature that would reside in a huge production project. If we had had more time to plan, I am not sure this would have been our decision, but fortunately, necessity led to a great solution. Now we plan to continue mentoring with production projects on purpose.

It is crucial to match the mentee to the task. At Reichman University, there are many grad students returning to the university after spending some years as developers in the software industry. This meant that we could present relatively complex projects. Fortunately for all involved, Maya Gilad chose to implement the compression project and came with this background along with the desire to contribute to open source projects. She was a perfect fit and could start contributing with a relatively small ramp-up.

Following the required course deliverables, Maya—with my help as a business mentor and Or Friedman's help as a technical mentor—prepared a requirements document and design document and implemented the Ceph compressed communications feature. While working on this feature, we even discovered an additional use case that was not part of the original requirements. By the end of the semester, we had a pull request (PR) ready for Ceph.

The end of this story demonstrates several wins for all involved:

  • During student class presentations, Maya's project was the only one that was actually translated into code in a large production system.
  • From Maya's academic perspective, this was a great success, and she got an A+ grade for this course. Additionally, she was exposed to the Ceph community.
  • The Ceph project got a new feature that is important for deployments on public clouds.
  • Maya is still working and contributing to the open source community.

The road of the PR has just started. This is usually a place where mentees will need a lot of help, since this is likely a new process for them.

As I write this article, we are running the third year of this course. In this round, two students selected another project that I didn't have time to implement myself, this time in Kubernetes. I enrolled a technical mentor that will help me, and our excitement and expectations are very high.

More mentorship opportunities

I am lucky to be involved in an industry-academy collaboration project, but what can you do if you are not involved in such a project?

There are other alternatives for collaboration with students around the world on open source projects. The students are paid for their work, and this is a great opportunity to help students making their first steps in the industry.

The two most popular platforms for making these connections are:

If you are interested in finding interns that will help you, these are very good places to start.

Tip: There is a lot of competition within these platforms, as with the Reichman University projects. Invest some time thinking about how to present your project so that suitable candidates will select it. This is a good marketing exercise, and if you do a good job, it will pay off well.

What are you waiting for?

If this blog piques your interest, here is a summary checklist for a successful mentorship project:

  • Select a well-framed project, and make sure you know and communicate the success criteria for such a project. Make sure it fits the work you plan for the mentees. Both you and the mentees want the project to succeed. Overly complex projects will increase the chances of failure.
    • Make sure the project is well defined.
    • Verify that it can be completed in the desired timeframe.
    • Define timely milestones, and make sure there is a minimal scope, possibly with some additional nice-to-have improvements.
    • If the project is complex, consider breaking it into multiple PRs.
       
  • Make sure you have all the mentor resources you need. You may need some help in mentoring. There is no need to limit yourself to things you can do on your own!
    • Don't forget that you need to merge the PRs—make sure you have enough community support for this step.
       
  • Think of the best way to sell the project to potential mentees—usually, there is strong competition for mentees.
     
  • Find a platform (or platforms) for matching projects and mentees/interns. Study its rules and comply with them.
     
  • Involve the upstream community early. Try to get their feedback on the design as soon as possible; this will pay off when the PR is submitted.

Remember: A successful project with a positive experience for the mentees can lead to additional engagements in OSS communities. A bad mentee experience may do the opposite, so make one of the primary goals of your project a positive mentorship experience that encourages mentees to stay involved.

Need more hands to get open source projects done? Consider the power of mentorship.

Image by:

Internet Archive Book Images. Modified by Opensource.com. CC BY-SA 4.0

Community management Careers What to read next Our journey to open source during Google Summer of Code 7 tips for virtual mentorship in open source This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.

My first impression of GNOME Console on Linux

opensource.com - Mon, 08/22/2022 - 15:00
My first impression of GNOME Console on Linux Alan Formy-Duval Mon, 08/22/2022 - 03:00 Register or Login to like Register or Login to like

New on the GNOME desktop is their terminal emulator application simply named Console. It seems aimed at providing a no-nonsense, stable command-line environment for Linux users.

Introducing GNOME Console for Linux Image by:

​(Alan Formy-Duval, CC BY-SA 4.0)

The GNOME Console isn't as feature-rich as a lot of other terminals, including the previous GNOME terminal, but I like it and have been using it regularly for the past few months. I enjoy the simplicity of it. I waste time in other terminal emulators configuring fonts, colors, and profiles.

Console does have some options and nice integration with the GNOME desktop. I'll start with the small menu accessed by clicking the hamburger menu at the top-right. It allows for configuring the color theme and font zooming.

Image by:

​(Alan Formy-Duval, CC BY-SA 4.0)

This menu also provides a view of available Keyboard Shortcuts and an option to launch a new window. Finally, you can access the typical About window as shown in the first screenshot above.

In addition to new windows, the small [+] button next to the hamburger opens a new tab within the currently active window.

On the top-left is a search button with the familiar magnifying glass icon. It allows for search and highlighting of text. There is also a small menu when you right-click within the Console window. It provides three more options; Paste, Select All, and the one I think is the neatest is  Show in Files, which I discuss further in the next section.

More Linux resources Linux commands cheat sheet Advanced Linux commands cheat sheet Free online course: RHEL technical overview Linux networking cheat sheet SELinux cheat sheet Linux common commands cheat sheet What are Linux containers? Our latest Linux articles GNOME Console context awareness

The GNOME Console has a few ways that it provides some context awareness. The first is the Show in Files option I mentioned above. This feature opens the GNOME graphical file manager to the current present working directory of your terminal. This reminds me of the opposite feature in the GNOME File Manager called Open in Terminal. Now, with the GNOME Console installed, a new second option called Open in Console is available. I think this is a nice integration detail.

The second option lets the toolbar simply indicate your present working directory under the title. You can see this in several of my screenshots. Note that the GNOME Terminal also has this feature.

Another way the GNOME Console follows the context is to change its toolbar color according to privilege level. Whenever the user has elevated root privileges, this bar turns red. This can quickly be demonstrated with the sudo command.

This screenshot shows a normal toolbar while logged in as my non-privileged self.

Image by:

(Alan Formy-Duval, CC BY-SA 4.0)

After I run sudo bash, the top bar turns red. This can help the user remember to be careful given that using the root comes with great responsibility.

Image by:

(Alan Formy-Duval, CC BY-SA 4.0)

 

Install the GNOME Console on Linux

The GNOME Console wasn't installed by default on my Fedora Linux Desktop system possibly because I had upgraded several times from older versions. It appears that the GNOME Console became the default terminal emulator in Gnome 42. If you don't see it, just install it manually, either with dnf or use the software center.

$ sudo dnf install gnome-consoleClean graphics

 

Image by:

(Alan Formy-Duval, CC BY-SA 4.0)

 

The GNOME Console is a nice clean terminal emulator application. I have been using it for a while now and feel like it “just works”. It is possible that the GNOME Project plans to make it a full replacement to the GNOME Terminal in a future release. It's still too soon to say whether it will gain additional features, but it presents the possibility of a modern experience with good functionality and tight integration with the GNOME Desktop Environment. I suggest you give it a try!

You may have noticed in the screenshots above that after I ran sudo bash, the root username prompt changed color to red. This is not a feature of the GNOME Console. This is a change I previously made to the root user's environment for the same purpose as the red toolbar. There are many ways this can be done, but in case you're interested in how I did it, the prompt color is controlled by the following line in the root user's .bashrc file:

PS1='[\033[01;32m]\u@\h[\033[00m]:[\033[01;34m]\w[\033[00m]$ '

Console is GNOME desktop's new terminal emulator. Try it out for a fresh experience that has tight integration with the GNOME Desktop Environment.

Image by:

Gunnar Wortmann via Pixabay. Modified by Opensource.com. CC BY-SA 4.0.

Linux What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.

Linux 6.0-rc2 Released

Phoronix - Mon, 08/22/2022 - 08:55
Linus Torvalds has just released Linux 6.0-rc2 as the newest weekly test candidate for this next major kernel series...

R600 Gallium3D Driver Receives NIR Backend Fixes For Radeon HD 2000/3000/4000 Series

Phoronix - Sun, 08/21/2022 - 21:17
In addition to the R300g driver seeing new shader optimizations, also being merged this week to Mesa 22.3 were some fixes for the recently-introduced new NIR back-end for the Rade R600 Gallium3D driver for the Radeon HD 2000/3000/4000 series...

Open-Source NVIDIA Vulkan Driver "NVK" Sees Uptick In Activity This Week

Phoronix - Sun, 08/21/2022 - 21:05
The open-source NVIDIA Vulkan driver "NVK" being developed for Mesa has seen a busy week of new development activity on this work-in-progress solution...

Pages