/// 28 Mar 2024, 4:30 am ////// ITS FOSS ///
It's FOSS has around 2000 articles and it is difficult to find the interesting ones just from browsing the website.
This is what prompted me to consolidate articles based on topics. So, you get pages like Fedora guides, Rust series etc. I am also putting up 'collection pages' that could let you access a particular topic more easily. The Linux application suggestion collection is one of the many more to be published in the coming weeks.
Question for you. Would you like to see some coverage on open source Android apps on It's FOSS?
💬 Let's see what else you get in this edition:
- KDE global themes causing data deletion.
- A modern, Rust-based alternative to NVIDIA Nouveau driver.
- Fedora 40 features.
- And other Linux news, videos and, of course, memes!
- This edition of FOSS Weekly is supported by Mailfence.
📥 Mailfence: Secure Mail Service
Privacy is a right, not a feature. That's why Mailfence provides an integrated suite of tools including encrypted email, calendar, contacts and more. No ads, no spams, no trackers. State-of-the-art security features and strong Belgian privacy protection law.
Get your free Mailfence account today.
📰 Linux news
- KDE has had to clarify the risks behind installing global themes on KDE Plasma.
- Ubuntu 24.04 LTS wallpapers are here, with both official and community offerings.
- Nova is a new, Rust-based alternative to Nouveau that is aimed towards newer NVIDIA GPUs.
🧠 What we’re thinking about
An interesting read as to how Valve managed to shoot their Steam Deck OLED launch trailer.
🧮 Linux Tips, Tutorials and More
Nano can do a lot of things that not many people are aware of.
You could also check disk usage using your terminal with Gdu.
Love dark mode? Use it in LibreOffice too.
📹 What we are watching
KDE's Dolphin file manager can be tweaked to your liking. Watch some of them in action in this video.
✨ Project highlights
This seems like an interesting new distro.
🧩 New quiz unit
The quieter you become, the more questions you can answer 😆
💡 Quick handy tip
In Firefox, you can go back and forth the history on current tab using the ALT+Scroll shortcut on your keyboard.
🤣 Meme of the week
Proprietary software is a big no!
🗓️ Tech Trivia
On 22 March 1993, Intel introduced the first Pentium microprocessor.
🧑🤝🧑 FOSSverse corner
I always considered It's FOSS to be focused on desktop Linux users but it was overwhelming to get this message from Martin Nyagah, a reader based in Kenya.
I recently landed a DevOps job with a digital health platform! I am writing to express my gratitude for the resources you have shared with me. Your help was instrumental in my job search and I truly appreciate it.I am looking forward to continuing to learn from you in the future.
Got something interesting to say? You may share your views through this form and I'll feature them on the upcoming It's FOSS testimonials page.
❤️ With love
Share it with your Linux-using friends and encourage them to subscribe (hint: it's here).
Share the articles in Linux Subreddits and community forums.
Follow us on Google News and stay updated in your News feed.
Opt for It's FOSS Plus membership and support us 🙏
Enjoy using Linux 😄
/// 27 Mar 2024, 4:50 pm ////// FSF News ///
/// 27 Mar 2024, 12:49 pm ////// Linux Security ///
Wine is an open-source, free, and user-friendly program that allows Linux users to run Windows-based applications and games on Unix-like operating systems. Wine serves as
The post How to Install Wine on Debian, Ubuntu and Linux Mint first appeared on Tecmint: Linux Howtos, Tutorials & Guides.Read more of this story at Slashdot.
/// 28 Mar 2024, 9:18 am ////// Linux Links ///
In this article in the series we examine the power consumption of the FIREBAT T8 Plus Mini PC under different loads.
The post FIREBAT T8 Plus Mini PC Running Linux: Power Consumption appeared first on LinuxLinks.
/// 10 Mar 2024, 11:19 am ////// Linuxtech ///
/// 5 Mar 2024, 12:46 am ////// Blackmoreops ///
“My little birds are everywhere, even in the North, they whisper to me the strangest stories.” – Lord Varys Meet Whispers, an advanced static code analysis tool meticulously designed to parse various common data formats, unveiling hardcoded credentials, and identifying potentially hazardous functions. Whispers seamlessly integrates into both the command-line interface (CLI) and your Continuous …
The post Whispers: A Powerful Static Code Analysis Tool for Credential Detection appeared first on blackMORE Ops.
/// 2 Mar 2024, 8:08 pm ////// LinuxAndUbuntu ///
The Linux desktop environment has long been a bastion of customization, security, and performance. With the release of KDE Plasma 6.0, the KDE community has taken these qualities to a new level. This major release brings a list of new features and improvements that promise to redefine the Linux desktop experience.
What’s new In KDE Plasma 6.0
Table of Contents
The Transition to Qt 6 and Wayland
One of the most significant changes in Plasma 6.0 is the transition to the latest version of the Qt application framework and the modern Linux graphics platform, Wayland. This move not only enhances the security, efficiency, and performance of Plasma but also improves support for modern hardware. Users will notice a smoother and more reliable user experience that paves the way for future improvements.
The New Overview Effect
The Overview and Desktop Grid effects have been combined into one in Plasma 6.0 with significant improvements to touchpad gestures. This makes multitasking and navigating between applications even more intuitive and seamless.
Colors and High Dynamic Range (HDR)
Plasma on Wayland now has partial support for High Dynamic Range (HDR), providing richer and deeper colors for games, videos, and visual creations. Users can also set an ICC profile for each screen individually with Plasma adjusting the colors accordingly. On top of that, Plasma now supports color blindness correction filters which enhances accessibility for users with color vision deficiencies.
New Wallpaper and Wallpaper Settings
The mesmerizing ‘Scarlet Tree’ wallpaper by axo1otl is now available in Plasma 6.0 which captures the dynamic interplay between the sun’s vibrant energy and the comet’s celestial dance. Users can change their wallpaper from System Settings, with options to change the wallpaper for specific screens or all screens simultaneously.
The Floating Panel
The panel now floats by default in Plasma 6.0 and provides a more modern and flexible user experience. We can also configure panels with an intelligent auto-hide mode (“Dodge Windows”) to make them hide when windows touch them.
Refreshed Breeze Theme
The Breeze theme has been overhauled in Plasma 6.0 to give it a more modern look and feel with fewer frames and more consistent spacing. This refresh enhances the overall aesthetic of Plasma and makes it more visually appealing.
Reorganized Settings
The Settings app has been improved in Plasma 6.0 and makes it more user-friendly. It reduces the number of nested pages.
Buttons have been relocated to the toolbar on many settings pages, enhancing consistency with other applications and creating additional space for content. We can now customize their sound theme with a new default sound theme named “Ocean” introduced to replace the “Oxygen” sound theme.
The Return of the Cube Effect
The famous cube effect which was temporarily removed in previous versions of Plasma due to architectural improvements in KWin, is now back in Plasma 6.0. This effect provides a clear visualization of multiple desktops and is a fun way to showcase Plasma’s capabilities.
Plasma Search
Plasma Search now lets users customize the ordering of search results to provide a more personalized search experience. We can also convert between time zones and making it easier to keep in touch with colleagues, friends, and family in different parts of the world.
Improved Fingerprint Unlock
Plasma 6.0 now supports both password and fingerprint authentication for the lock screen simultaneously to provide users with more flexibility and convenience.
Support for More Islamic Calendars
The calendar applet now supports the Astronomical and Umm al-Qura Calendar in addition to the existing Julian, Milankovic, Chinese Lunar, Indian, Hebrew, Persian, and Islamic Civil calendars.
KDE Gear 24.04
KMail and KOrganizer Enhancements
KMail, the email viewer, now removes ads and tracking code from emails using a more powerful ad blocker written in Rust. The email composer now shows the validity and trust level of OpenPGP keys of recipients and warns users when keys are almost or currently expired.
KOrganizer now lets us send encrypted and signed email invitations which ensures confidentiality in professional settings.
Itinerary
Itinerary is KDE’s travel assistant that has been improved in Plasma 6.0. The default home screen now allows users to organize their preferred applications in a grid and group them.
A welcome screen has been added on the first launch, guiding users through configuring WiFi, timezone, device scaling, and mobile connection settings.
Kdenlive
Kdenlive, the video editor, has been updated to Qt 6 in Gear 24.02 with many applications adopting a more frameless look for their interface.
Dolphin
Dolphin, KDE’s file and folder explorer, has been redesigned in Plasma 6.0. The settings have been reorganized to make them easier to navigate, and accessibility improvements have been made with toolbar buttons and the disk space in the status bar now keyboard-accessible.
Spectacle
KDE’s screenshot utility, Spectacle, has been improved in Plasma 6.0. Recording features have been enhanced with a system tray icon now showing the time recorded. We can now record any arbitrary part of the screen, in addition to the whole screen or an application window.
NeoChat
NeoChat, KDE’s Matrix client, has been updated in Plasma 6.0. A welcome page now lets users choose which account to use and log in to other accounts. Users can register a new account directly from the app, and deactivating a Matrix account is now possible from within NeoChat.
PlasmaTube
PlasmaTube, KDE’s YouTube client, has been updated in Plasma 6.0. We can now search for videos, view video details, and play videos in full screen.
Tokodon
KDE’s Mastodon client, Tokodon, has been updated in Plasma 6.0. Users can now write new posts more easily with the option to set focal points for followers to see in their timelines.
Users can also hide boosts and replies in their main timeline, and reporting and muting accounts are now more accessible.
Download KDE Neon
If you want to use KDE Plasma 6.0, download and test the latest KDE Neon.
Conclusion
So that’s KDE Plasma 6.0. With a great list of new features and improvements, Plasma 6 is now more beautiful than ever. I remember including Plasma in one of my first reviews of the best Linux desktop environments, and I am glad to say that it has maintained its status in the list.
The post KDE Plasma 6.0 Major Release With Incredible New Features appeared first on LinuxAndUbuntu.
/// 7 Mar 2024, 8:20 pm ////// Unixunderground ///
You may know the Testing Farm from the article written by David Kornel and Jakub Stejskal. That article highlighted the primary advantages of this testing system. You should review the earlier article, as this article will not go through the basics of the Testing Farm usage. It will only delve into the reasons for utilizing your custom images and explore potential automation methods with Hashicorp Packer.
AWS images
The Testing Farm automatically deploys Amazon Web Services (AWS) machines using a default set of Amazon Machine Images (AMIs) available to users. This curated subset includes popular community images such as CentOS and Fedora Linux. While these AMIs typically represent bare operating systems, they don’t have to remain in that state.
Think of these AMIs as analogous to container images. You have the flexibility to embed all installation and configuration steps directly into the image itself. By doing so, you can preconfigure the environment, ensuring that everything is ready before the actual Testing Farm job begins.
The Trade-Off
However, there’s a trade-off. While customizing AMIs streamlines the process, building them manually can be challenging and time-consuming. The effort involved in creating a well-prepared AMI is substantial.
In an upcoming section of this article, we’ll delve into a practical solution. We’ll explore how to use Hashicorp Packer, a powerful tool for creating machine images, and illustrate its application in the context of the Debezium project.
Benefits of custom images for Testing Farm
There might be some confusion surrounding the rationale for creating custom images, especially considering the investment of time, effort, and resources. However, this question is highly relevant, and the answer lies in a straightforward concept: time efficiency.
Imagine you are testing web applications within containers. You must deploy the database, web server, and other supporting systems each time you perform testing. For instance, when testing against an Oracle database, the container image alone can be nearly 10 GB. Pulling this image for every pull request (PR) takes several minutes.
By building a custom Amazon Machine Image (AMI) that includes this giant image, you eliminate the need to pull it repeatedly. This initial investment pays off significantly in the long run. Additionally, there’s another advantage: reducing unnecessary information exposure to developers. With a preconfigured system, developers can focus solely on the tests without being burdened by extraneous details.
In summary, custom images streamline the testing process, enhance efficiency, and provide a cleaner development experience for your team. Of course, this solution might not be ideal for all use cases and should be used only if it adds value to your testing scenarios. For example, if you are testing packages for Fedora Linux or CentOS and integration with it, you should always use the latest available image on Testing Farm to mitigate the risks associated with a custom image being outdated.
Automate the process with Packer
The trade-off when considering using custom images is that you must create them. This requirement might discourage some developers from pursuing this route. However, there’s good news: Packer significantly improves this experience.
Initially developed by HashiCorp, Packer is a powerful tool for creating consistent Virtual Machine Images for various platforms. AWS (Amazon Web Services) is one of the supported platforms. Virtual Machine images used in an AWS environment are called AMI (Amazon Machine Images).
Descriptions of image builds are written in HCL format and provide a rich set of provisioners. These provisioners act as plugins, allowing developers to execute specific tools within the machine from which Packer generates the image snapshot.
Among the most interesting provisioners are:
- File — Copies files from the current machine to the EC2 instance.
- Shell — Executes shell scripts within the machine.
- Ansible — Enables direct execution of Ansible playbooks on the machine.
In the sections that follow, we’ll explore practical examples and how Packer can enhance your image-building process.
Debezium use-case
So far, we have discussed the reasons for using custom images and why you should automate the build, but how can you do that? Let’s showcase this on the actual project! We onboarded Testing Farm with the Debezium project last year. Debezium is the de facto industrial standard for CDC (Change Data Capture) streaming. Debezium currently supports about fourteen databases, each with a different setup and hardware needs, but if there is one common feature, it is memory consumption. Suppose those databases run in the container with a minimal amount of RAM (Random Access Memory). In that case, they tend to do things like flushing to disk, etc., and those things are very annoying for testing because you need to rerun the tests after the failures with longer wait times or other workarounds.
Because of that, we have moved part of the testing to the Testing Farm, where we ask for sufficient hardware to ensure databases have enough space and RAM so tests are “stable”. One of the supported databases for Debezium is Oracle DBMS. As was pointed out earlier, Oracle’s container images are quite large, so we had to build the AMI image to give our community the fastest feedback on the PRs.
Firstly, we have started working on the Ansible playbooks, installing everything necessary to run the database and our test suite. This Ansible playbook looks like this:
# oracle_docker.yml --- - name: Debezium testing environment playbook hosts: 'all' become: yes become_method: sudo tasks: - name: Add Docker-ce repository yum_repository: name: docker-ce description: Repository from Docker baseurl: https://download.docker.com/linux/centos/8/x86_64/stable gpgcheck: no - name: Update all packages yum: name: "*" state: latest exclude: ansible* - name: Install dependencies yum: name: ['wget', 'java-17-openjdk-devel', 'make', 'git', 'zip', 'coreutils', 'libaio'] state: present - name: Install Docker dependencies yum: name: ['docker-ce', 'docker-ce-cli', 'containerd.io', 'docker-buildx-plugin'] state: present - name: Unzip oracle libs unarchive: src: /tmp/oracle-libs.zip dest: /root/ remote_src: true - name: Install Oracle sqlplus shell: | wget https://download.oracle.com/otn_software/linux/instantclient/2113000/oracle-instantclient-basic-21.13.0.0.0-1.el8.x86_64.rpm -O sqlplus-basic.rpm wget https://download.oracle.com/otn_software/linux/instantclient/2113000/oracle-instantclient-sqlplus-21.13.0.0.0-1.el8.x86_64.rpm -O sqlplus-adv.rpm rpm -i sqlplus-basic.rpm rpm -i sqlplus-adv.rpm - name: Prepare Oracle script copy: src: /tmp/install-oracle-driver.sh dest: /root/install-oracle-driver.sh remote_src: true - name: Make executable shell: chmod +x /root/install-oracle-driver.sh - name: Install maven shell: | mkdir -p /usr/share/maven /usr/share/maven/ref curl -fsSL -o /tmp/apache-maven.tar.gz https://apache.osuosl.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 rm -f /tmp/apache-maven.tar.gz ln -s /usr/share/maven/bin/mvn /usr/bin/mvn - name: Start docker daemon systemd: name: docker state: started enabled: true - name: Pull Oracle images from quay shell: | docker pull custom.repo/oracle:{{ oracle_tag }} when: use_custom|bool == true - name: Pull Oracle images from official repository shell: | docker pull container-registry.oracle.com/database/free:23.3.0.0 when: use_custom|bool == false - name: Logout from registries shell: | docker logout quay.io when: use_quay|bool == true
As you can see, this playbook does everything:
- Docker installation
- SQLPlus installation
- Running some side Oracle init script
- Installing Maven and all other test suite dependencies
- Pulling the image
Once all those steps are finished, the machine should be fully prepared to run the test suite and start the database. We can create an image from this machine snapshot. OK, now it’s time to look at the packer descriptor.
# ami-build.pkr.hcl
packer {
required_plugins {
amazon = {
source = "github.com/hashicorp/amazon"
version = "~> 1.2.6"
}
ansible = {
source = "github.com/hashicorp/ansible"
version = "~> 1"
}
}
}
variable "aws_access_key" {
type = string
sensitive = true
}
variable "aws_secret_key" {
type = string
sensitive = true
}
variable "aws_region" {
type = string
default = "us-east-2"
}
variable "aws_instance_type" {
type = string
default = "t3.small"
}
variable "aws_ssh_username" {
type = string
default = "centos"
}
variable "image_name" {
type = string
}
variable "oracle_image" {
type = string
}
variable source_ami {
type = string
default = "ami-080baaeff069b7464"
}
variable "aws_volume_type" {
type = string
default = "gp3"
}
source "amazon-ebs" "debezium" {
access_key = var.aws_access_key
secret_key = var.aws_secret_key
source_ami = var.source_ami
region = var.aws_region
force_deregister = true
force_delete_snapshot = true
instance_type = var.aws_instance_type
ssh_username = var.aws_ssh_username
ami_name = var.image_name
ami_users = ["125523088429"]
# choose the most free subnet which matches the filters
# https://www.packer.io/plugins/builders/amazon/ebs#subnet_filter
subnet_filter {
filters = {
"tag:Class": "build"
}
most_free = true
random = false
}
launch_block_device_mappings {
device_name = "/dev/sda1"
delete_on_termination = "true"
volume_type = var.aws_volume_type
volume_size = 30
}
}
build {
sources = ["source.amazon-ebs.debezium"]
name = "debezium-oracle-packer"
provisioner "file" {
source = "./provisioners/files/oracle-libs.zip"
destination = "/tmp/oracle-libs.zip"
}
provisioner "file" {
source = "./provisioners/files/install-oracle-driver.sh"
destination = "/tmp/install-oracle-driver.sh"
}
provisioner "shell" {
script = "./provisioners/scripts/bootstrap.sh"
}
provisioner "ansible" {
playbook_file = "./provisioners/ansible/oracle_docker.yml"
extra_arguments = [ "-vv", "-e oracle_tag="${var.oracle_image}"" ]
# Required workaround for Ansible 2.8+
# https://www.packer.io/docs/provisioners/ansible/ansible#troubleshooting
use_proxy = false
}
}
The descriptor above contains all the information necessary for the Packer to build the AMI image. At the start you can see the definitions of all the variables. These are mostly just configuration or sensitive information. Next, you find the configuration of the Amazon plugin (this allows the AMI build). You can see that besides casual configurations like secrets and regions, you also must pass source_ami. This field defines the base image for our build. For Debezium, we are using CentOS Stream 8.
The next important field is ssh_username. That field can be very tricky because you can find more variants of the username for some distros. For CentOS, it is usually centos or ec2-user. Be careful setting this because debugging during the build process is challenging.
The last important thing, specifically regarding Testing Farm, is the ami_users field. This field contains an array of users with whom Packer will share the new AMI. This step is necessary to use your image in the Testing Farm environment.
The last part of the descriptor contains all the provisioners you want to run before the AMI build starts. For Debezium, we just copy some libraries and init scripts, run the bootstrap script (this script installs initial dependencies – EPEL and Ansible; you can find it below), and trigger the ansible-playbook (showcased above).
# bootstrap.sh
#!/bin/bash
set -ex
sudo yum install -y epel-release
sudo yum install -y ansible
Once all provisioners and descriptors are complete, you put those in the correct file structure. On Debezium, we are use the following:
testing-farm-build
├── ami-build.pkr.hcl
└── provisioners
├── ansible
│ ├── oracle_docker.yml
│ └── variables.yml
├── files
│ └── install-oracle-driver.sh
└── scripts
└── bootstrap.sh
Then, you just have to step into the root directory (testing-farm-build) and start the build. You can begin the packer build with the following command:
packer build -var="aws_secret_key=${AWS_SECRET_ACCESS_KEY}" -var="aws_access_key=${AWS_ACCESS_KEY_ID}" -var="image_name=${AMI_NAME}" -var="aws_ssh_username=centos" .
You can pass whatever variables you want directly into the command. If you do not want to export some information as an environment variable, do not include it here, and the packer will automatically ask you for it during the build process.
Once your AMI is built, you are only one step away before you can use your image in the Testing Farm environment. You have to open the PR on the Testing Farm infrastructure repository and make the following additions: Add a new regex matcher for your AMI names into the image map – for example
Add your AWS account ID as the new image owner from which Testing Farm will gather images – for example.
After Testing Farm maintainers merge those PRs, your images will be available for provisioning in a couple of minutes. Once they are ready, you should be able to see them here.
Conclusion
Building your custom image for the Testing Farm unlocks a world of possibilities for enhancing your testing workflow. Creating a tailored image can accelerate test runs and provide targeted feedback to your community. And best of all, the entire image build process can be seamlessly automated using Packer with minimal effort. This article should be a helpful guide for fellow Testing Farm users looking to optimize their experience. If you have any questions or need assistance during setup, feel free to reach out — I’m here to help!
/// 13 Mar 2024, 2:25 pm ////// ThisHosting.Rocks ///
/// 17 Jan 2024, 5:02 am ////// gHacks Technology News ///
Ubuntu 24.04 LTS is expected in April 2024. The new long-term service support release of the popular Linux distribution may receive up to 12 years of support.
The extended support range was announced by Canonical CEO Mark Shuttleworth in an interview with the YouTube channel Destination Linux. The interview begins at 8.46 and the revelation about extended support happens at the 17:36 mark.
Here is the video for you to watch:
Core support for Ubuntu won't change according to Shuttleworth. Ubuntu LTS versions continue to be supported for 5 years and non-LTS releases for 9 months. Ubuntu 23.04 is the current release version, Ubuntu 22.04 LTS the current long-term support release.
Ubuntu Pro subscribers may extend support of LTS versions by an additional 7 years going forward. Ubuntu Pro is available for Home users and Enterprise / business customers. The subscription is free at the time of writing for Home users and starts at $25 per year and machine for Enterprise customers. Server subscriptions start at $500 per month.
Canonical introduced Ubuntu Pro back in January of 2023. Back then, the company announced that subscribers would be able to get 10 years of security updates for Ubuntu Main and more than 20,000 additional packages. Ubuntu Pro promises other advantages, including a kernel livepatch service or optional phone and ticket support.
The livepatch service works through notifications. Canonical releases a security notice when a critical or high Linux kernel vulnerability is found. Systems with livepatch enabled will download and install these patches automatically once they have been released.
Organizations may subscribe to Ubuntu Pro to run a specific LTS version of the Linux distribution for an extended period of time. Canonical has increased the maximum support length by 2 years to 12 years now for Ubuntu Pro subscribers according to Shuttleworth. Extended support will be backdated to previous LTS versions of Ubuntu as well. Shuttleworth calls it "Platinum grade Enterprise commitment".
Support for packages is also improved and has reached the 30,000 packages mark. This means that Ubuntu Main and these packages will be supported by Canonical for up to 12 years.
Closing Words
Ubuntu Pro subscribers may get 12 years of support for their desktops and servers. This extends the previous support period of 10 years by another 2. Enterprise customers who require long-term support benefit from this the most.
Most Home users may want to upgrade their desktop systems regularly to gain access to new features and support for new technologies.
Now You: for how long would you like your OS to be supported?
Thank you for being a Ghacks reader. The post Canonical: up to 12 years of support for Ubuntu 24.04 LTS appeared first on gHacks Technology News.