Language Selection

English French German Italian Portuguese Spanish

About Tux Machines

Wednesday, 12 May 21 - Tux Machines is a community-driven public service/news site which has been around for over a decade and a half and primarily focuses on GNU/LinuxSubscribe now Syndicate content

Search This Site

Programming Leftovers

Filed under
Development
  • AMD Releases ROCm 4.2 Compute Stack - Phoronix

    Just over one month has passed since the release of Radeon ROCm 4.1 and it's now been succeeded by the ROCm 4.2 feature release. 

    The Radeon Open eCosystem 4.2 release comes with changes such as: 

    - HIP target platform macros were added for easily targeting HIP_PLATFORM_AMD / HIP_PLATFORM_NVIDIA code differences such as including different header files. 

    - Stream Memory Operations now allow direct synchronization between network nodes and GPUs. 

  •   

  • GCC 12 Adds Support For New #elifdef #elifndef Directives - Phoronix

    With C2X and potentially a future version of C++, there is finally the #elifdef and #elifndef directives. The GNU Compiler Collection is preparing its support. 

    There has long been #ifdef, #else, #elif and similar directives for controlling conditional compilation in C/C++. While there has been #ifdef, until the upcoming C2X there hasn't been #elifdef for else if defined or #elifndef for else if not defined... Short of pairing "#elif defined()" or so. With C2X the #elifdef and #elifndef pre-processor directives are finally there and it's being looked at for C++ as well. 

  •          

  • Can’t the Compiler Do That?

    Good static analysis can save a lot of effort and time. With customized static code analysis, the project code can be checked not only for general programming errors but also for project-specific conventions and best practices. The Clang Compiler Framework provides the ideal basis for this.

    The programming language C++ manages the balancing act between maximum performance, which is essential in the embedded sector, on the one hand, and maximum code correctness through a high level of abstraction on the other. The balancing act is achieved by focusing on compile-time checks and opportunities for optimization. Calculations that could be carried out more efficiently by low-level code should not, where possible, be rewritten by the developer, but by the compiler. Additionally, errors should already be excluded during compilation, instead of taking up valuable computing time for checks at runtime.

    Clang has become very popular in recent years and has long since established itself as one of the most important C and C++ compilers. This success is due not least to the architecture of Clang itself. Clang is not just another compiler, but a compiler framework. The essential parts of the compiler are a carefully designed library, thus enabling the diverse landscape of analysis and refactoring tools that has already emerged around the framework based on the LLVM project.

    The command-line tool, clang-tidy, offers static code analysis and checks compliance with coding conventions, among other things, but can also refactor code independently. The clang-format tool can automatically standardize the coding style. The Clazy tool, which was developed by the author’s company, supplements the compiler with a variety of warnings around the Qt software framework and warns of frequent anti-patterns in the use of the same. Many other useful tools exist in the Clang universe, as well. Even integrated development environments, such as Qt Creator or CLion, rely on the Clang Compiler Framework for syntax highlighting, code navigation, auto-completion, and refactoring.

    Anyone who knows the tools of the Clang world in their entirety is well positioned as a C or C++ developer. But if you want to get everything out of the technology, that is not the end of the story. The LibTooling library, on which most Clang tools are based, also allows you to create your own customized code analysis and refactoring tools, with little effort.

    I’ll give you an example. A small but recurring piece of the puzzle of embedded software is the exponentiation of real numbers, mostly with static, natural exponents. Of course, the std::pow function would be used for this, had it not been determined in extensive profiling that on-the-target architecture std::pow(x, 4) is many times slower than x*x*x and forms a bottleneck in particularly performance-critical code. The senior developer of the project has therefore created a template function, usable as utils::pow<4>(x). And thanks to compiler optimizations, it’s just as nimble as the manual variant1. Nevertheless, since then the usual std::pow variant has crept in again at various places in the code, and even several hundred thousand lines of code have not been ported consistently.

    The first attempt to automate the refactoring is, of course, the search and replace with a regular expression. std::pow\((.*), (\d+)\) already finds the simplest cases. But what about the cases where the “std::” is omitted or the second parameter is more complicated than an integer literal?

  • Ensemble Learning in Python by Example – Linux Hint

    There is no secret that machine learning is getting better with time and the predictive models. Predictive models form the core of machine learning. It is good to improve the accuracy of the model for better results in the machine learning model. A technique called “ensemble machine learning” is used for increasing the performance and accuracy of a model.

    Ensemble learning uses different models of machine learning for trying to make better predictions on the dataset. A model’s predictions are combined in an ensemble model for making the final prediction successful. However, many people are not familiar with ensemble machine learning. Read below; we explain everything about this machine learning technique using Python with appropriate examples.

    Suppose you are participating in a trivia game and have good knowledge of some topics, but you don’t know anything other few topics. A team member would be required to cover all of the game topics if you wish to achieve a maximum score in the game. It is the basic idea behind ensemble learning in which we combine the predictions from different models for accurate output.

  •  

  • William Brown: Compiler Bootstrapping - Can We Trust Rust?

    Recently I have been doing a lot of work for SUSE with how we package the Rust compiler. This process has been really interesting and challenging, but like anything it’s certainly provided a lot of time for thought while waiting for my packages to build.

  • Vircadia Web Interface Announced

    According to the announcement, Vircadia has partnered with Linux Professional Institute (LPI) on this project and will be adding support for Vircadia’s servers to communicate with web browsers over WebRTC.

  • Percona Announces Preview Of Open Source Database as a Service

    As an alternative to public cloud and large enterprise database vendor DBaaS offerings, this on-demand self-service option provides users with a convenient and simple way to deploy databases quickly. Plus, using Percona Kubernetes Operators means it is possible to configure a database once, and deploy it anywhere.

Microsoft Censorship of Free Software, Again (Shoot First, Ask Questions Later, or Respond to PR Backlash/Public Outcry)

Filed under
Microsoft
Gaming
  • GitHub restores a fork of the cross-platform reverse-engineered GTA III and Vice City code

    Remember recently we had a release of the reverse-engineered GTA III and Vice City code that worked well on Linux? Which was then promptly taken down by a DMCA notice? Well, it's back.

    Not the original mind you, one of the forks on GitHub has returned as the forker issued a DMCA Counter Notice and intends to actually fight it. According to TorrentFreak, New Zealand-based developer named Theo is taking a stand against this DMCA behaviour and has managed to get GitHub to restore their fork.

  • One Developer Gets GTA3 And Vice City Source Code Un-DMCAd On GitHub

    The strange flip-flop by Rockstar Games on being open and cool with its fans continues. By way of context and a bit of throat clearing, recall that Rockstar is both the company that whipped out the ban-hammer on Grand Theft Auto 5 players over the use of mods, and the company that paid out money to a modder that fixed that same games long loading times. In addition, Rockstar is both the company that happily used intellectual property to try to silence a documentary while also being the company that enthusiastically embraced gamers making short films out of GTA footage.

Devices: Arduino, Zigbee, and GNU/Linux

Filed under
Hardware
  • Portenta Machine Control: Add a powerful brain to your machines

    Arduino Pro is introducing a powerful new member of the Portenta product family, the Portenta Machine Control. It’s a fully-centralized, low-power, industrial control unit able to drive equipment and machinery. Plus, you can program it using the Arduino framework or other embedded development platforms.

  • Digi IX15 IoT Gateway & Cellular Router features a Zigbee & BLE XBee module

    Digi International has just announced the Digi IX15 IoT gateway and cellular router with Ethernet and 4G LTE connectivity as well as support for Zigbee, Bluetooth 5.0, 2.4 GHz proprietary via an XBee module.

  • The Zigbee Alliance renames to the Connectivity Standards Alliance (CSA), Project CHIP becomes “Matter” [Ed: Pretending one failed because of one's choice of name and not something else]
  • What is an SBC?

    Most of the under-$200 SBCs offer varying degrees of open hardware support. Schematics and other open hardware files are typically available, and most offer community resources like forums and online tech support.

    Customized Linux and Android images are typically available, which are increasingly tied to mainline Linux. There is a lot of sloppy work out there in OS support, especially on the lower-cost models, but OS reliability is improving.

    The most popular OS choices for Linux SBCs are Ubuntu and Yocto Project, which is not a distribution but a standardized collection of components and libraries. Other desktop distros such as Fedora are sometimes supported on higher-end x86 SBCs.

    Linux continues to dominate the Arm SBC world and increasingly competes with Windows 10 in the larger market for commercial x86 SBCs. Low-power microcontroller-driven boards that run real-time operating systems such as FreeRTOS, tend to be more like SOMs (see the new Raspberry Pi Pico). Many Arduino boards, however, are more like SBCs.

    In both the Linux and RTOS MCU board markets, the open source RISC-V architecture has begun to make inroads, with new Linux-driven SBCs such as SiFive’s HiFive Unmatched. We will examine RISC-V in a future article.

  • A Raspberry Pi-powered platform for remote play experiences
  • MontaVista Launches ‘MVShield For Yocto’ Migration-Free Support Program For Yocto Baselines

    MontaVista Software has announced the availability of MVShield for Yocto, a professional services offering to support customer’s Linux distribution created with Yocto Project software, giving access to support and maintenance services without any migration effort to commercial Linux baselines.

    MontaVista will maintain and support the customer’s specific Yocto Project created Linux distribution.

  • IAR Systems extends product portfolio for streamlined Linux-based automated workflows

    IAR Systems®, the future-proof supplier of software tools and services for embedded development, today presented the latest addition to its powerful build tools for Linux, which are based on the well-known build tools in the development toolchain IAR Embedded Workbench®. The extended tools now support deployment in Linux-based frameworks for Renesas' low-power RL78 microcontrollers (MCUs), enabling organizations to streamline building and testing workflows.

Videos/Shows: Ubuntu Cinnamon Remix 21.04, Coder Radio, and KDE Breeze Redesign and Blue Ocean

Filed under
GNU
Linux

NetBSD: aiomixer, X/Open Curses and ncurses, and other news

Filed under
BSD

aiomixer is an application that I've been maintaining outside of NetBSD for a few years. It was available as a package, and was a "graphical" (curses, terminal-based) mixer for NetBSD's audio API, inspired by programs like alsamixer. For some time I've thought that it should be integrated into the NetBSD base system - it's small and simple, very useful, and many developers and users had it installed (some told me that they would install it on all of their machines that needed audio output). For my particular use case, as well as my NetBSD laptop, I have some small NetBSD machines around the house plugged into speakers that I play music from. Sometimes I like to SSH into them to adjust the playback volume, and it's often easier to do visually than with mixerctl(1).

However, there was one problem: when I first wrote aiomixer 2 years ago, I was intimidated by the curses API, so opted to use the Curses Development Kit instead. This turned out to be a mistake, as not only was CDK inflexible for an application like aiomixer, it introduced a hard dependency on ncurses.

Read more

Core Scheduling Looks Like It Will Be Ready For Linux 5.14 To Avoid Disabling SMT/HT

Filed under
Linux
Security

It looks like the years-long effort around CPU core scheduling that's been worked on by multiple vendors in light of CPU security vulnerabilities threatening SMT/HT security will see mainline later this summer with Linux 5.14.

Linux core scheduling has been worked on by pretty much all of the hyperscalers and public cloud providers to improve security without disabling Hyper Threading. Core scheduling is ultimately about what resources can share a CPU core and ensuring potentially unsafe tasks don't run on a sibling thread of a trusted task.

Read more

IBM/Red Hat/Fedora Leftovers

Filed under
Red Hat

  • Automating RHEL for Edge image rollback with GreenBoot

    With the release of Red Hat Enterprise Linux (RHEL) 8.3, Red Hat announced an rpm-ostree version of RHEL targeted for Edge use cases called RHEL for Edge.

    One of the unique features of rpm-ostree is that when you update the operating system, a new deployment is created, and the previous deployment is also retained. This means that if there are issues on the updated version of the operating system, you can roll back to the previous deployment with a single rpm-ostree command, or by selecting the previous deployment in the GRUB boot loader.

    While this ability to manually roll back is very useful, it still requires manual intervention. Edge computing use case scenarios might be up in the tens or hundreds of thousands of nodes, and with this number of systems, automation is critical. In addition, in Edge deployments, these systems might be across the country or across the world, and it might not be practical to access a console on them in the event of issues with an updated image.

    This is why RHEL for Edge includes GreenBoot, which can automate RHEL for Edge operating system rollbacks.

    This post will cover an overview of how to get started with GreenBoot and will walk through an example of using GreenBoot.

  • Using Ansible to configure Podman containers

    In complex IT infrastructure, there are many repetitive tasks. Running those tasks successfully is not easy. Human error always presents a chance of failure. With help of Ansible, you perform all of the tasks through a remote host and, as the tasks are executed with playbooks, and those playbooks can be reused as many times as you need. In this article you will learn how to install and configure Ansible on Fedora Linux and describe how to use it to manage and configure Podman containers.

    Ansible

    Ansible is an open source infrastructure automation tool sponsored by Red Hat. It can deal with all the problems that come with large infrastructure, like installing & updating packages, taking backups, ensuring specific services are always running, and much more. You do this with a playbook which is written in YAML. Ansible playbooks can be used again and again, making the system administrator’s job less complex. Playbooks also eliminate repetitive tasks and can be easily modified. But we have many automation tools like Ansible, why use it? Unlike some other configuration management tools, Ansible is agentless: you don’t have to install anything on managed nodes. For more information about Ansible, see the Ansible tag in Fedora Magazine.

  • Getting better at counting rpm-ostree based systems

    Since the release of Fedora 32, a new mechanism has been in place to better count the number of Fedora users while respecting their privacy. This system is explicitly designed to make sure that no personally identifiable information is sent from counted systems. It also insures that the Fedora infrastructure does not collect any personal data. The nickname for this new counting mechanism is “Count Me”, from the option name. Details are available in DNF Better Counting change request for Fedora 32. In short, the Count Me mechanism works by telling Fedora servers how old your system is (with a very large approximation). This occurs randomly during a metadata refresh request performed by DNF.

  • Cockpit 244

    Cockpit is the modern Linux admin interface. We release regularly.

    Here are the release notes from Cockpit version 244 and Cockpit Machines 244.

  • A brief introduction to Ansible Vault

    Ansible Vault is an Ansible feature that helps you encrypt confidential information without compromising security.

LibreOffice Adds A Command Popup / HUD, Inspired By Half-Decade Old Microsoft Office Feature

Filed under
LibO

Adding to the changes building up for LibreOffice 7.2 ahead of its debut in August is a "Command Popup" or a heads-up display (HUD) of sorts for easily running LibreOffice commands.

For a half-decade now Microsoft Office has offered a "Tell Me" feature whereby it's a text field that the user can enter words/phrases about what they want to do while editing/creating a document. That Tell Me feature can allow quickly accessing different commands that otherwise are tucked away within different menus, etc.

Read more

CyberOS - A New QT Based Arch Linux Distribution that Looks Like Deepin DE

Filed under
Linux
Reviews

So, I stumbled upon a fairly new Linux distribution called CyberOS based on GNOME + Arch Linux. And I thought to do a test drive. Here's how it is.
Read more

Qt5 Markdown Editor Ghostwriter 2.0.0 Released With New Markdown Processor, New Sidebar And Revamped Theming

Filed under
Software

Ghostwriter, a Qt5 Markdown editor, has been updated to version 2.0.0. The new release comes with revamped theming, the HUDs have been replaced with a sidebar, and there's a new default Markdown processor.

Ghostwriter is a free and open source Markdown editor for Linux and Windows (macOS is not officially supported, but it mostly works as long as you compile it from source). The application comes with a clean interface, with a distraction-free writing experience in mind. You can easily disable the sidebar, go full-screen, and show a live HTML preview, either from its View menu or using keyboard shortcuts

Read more

Today in Qt:

  • Qt introduces a new customer support system

    We are making some significant enhancements in our customer support to make it even better. A new upcoming support system allows us to streamline processes and respond to support tickets quicker than ever before.

  • Commercial LTS Qt 5.15.4 Released

    We have released Qt 5.15.4 LTS for commercial license holders today. As a patch release, Qt 5.15.4 does not add any new functionality but provides bug fixes and other improvements.

    Compared to Qt 5.15.3, Qt 5.15.4 contains about 100 bug fixes and security updates. The list of fixes and the overview of all important changes in Qt 5.15.4 can be found from the Qt 5.15.4 release note. It is available via Qt Account Downloads.

  • Qt for Python: details about the 6.1 release

    Last week, we announced Qt 6.1, and with that, we wanted to announce the new release of our official set of Python bindings: Qt for Python.

Mousepad 0.5.5 Is Released With Client Side Decorations And Spellchecking

Filed under
Software

Mousepad is a really simple and light-weight text editor made primarily with the Xfce desktop environment in mind. The latest version comes with client side decoration support and it is enabled by default. That's bad news if you want a light-weight text editor you can use to copy some text from an e-mail client on one virtual desktop into a web browser on another virtual desktop then mousepad is no longer for you since there is no button for making it sticky between virtual desktops anymore. You can also forget about maximizing it vertically or horizontally by clicking the maximize button with the middle or right mouse buttons; that's also gone since those "client side decorations" on the "header bar" don't support those.

The only good news about this new client side decoration "feature" is that it can be turned off. There is a setting in the xfce4-settings-editor under xsettings titled DialogsUseHeader. Mousepad 0.5.5 does, of course, not care if you disable that setting. And there is, of course, now way to turn it off from in Edit ▸ Preferences from within Mousepad. However, our close-up inspection of mousepad/mousepad-settings.h, mousepad/mousepad-util.c and mousepad/org.xfce.mousepad.gschema.xml reveals that Mousepad developer Gaël Bonithon put a secret client-side-decorations into the setting schema. No, it can't be changed by opening some text file in mousepad, the actual settings are stored in the a binary blob file $HOME/.config/dconf/user. The trick to adding a setting to that file so mousepad understands it is to open a terminal and run:

dconf write /org/xfce/mousepad/preferences/window/client-side-decorations false
The header bar on other GTK "apps" can be somewhat fixed by installing gtk3-nocsd, but that's not a elegant solution: It leave you with the window manager title bar and the header bar. Setting that configuration key using dconf makes mousepad look as it should with all the window manager functionality intact.

Read more

'FragAttacks' Hype (With Logo) and Security Patches

Filed under
Security
  • All WiFi devices are vulnerable to "frag attacks", here is how to protect yourself - Techzim

    A well known Belgium security researcher, Mathy Vanhoef, who specialises in WiFi security has discovered a series of flaws that affect all WiFi devices and in particular all WiFi routers out there. Due to the nature of these vulnerabilities, he has christened them frag attacks aka fragmentation and aggregation attacks.

  • FragAttacks: New Security Vulnerabilities Affecting WiFi Devices, 12 CVEs Issued - Phoronix

    FragAttacks was made public on Tuesday as a set of new security vulnerabilities affecting WiFi devices. These are just not some driver-level bugs but rather three of the vulnerabilities are attributed as design flaws in the WiFi standard itself and in turn most devices on the market.

    The FragAttacks researchers believe, "experiments indicate that every Wi-Fi product is affected by at least one vulnerability and that most products are affected by several vulnerabilities." WEP through WPA3 WiFi security is believed to be impacted but the researchers did also acknowledge "the design flaws are hard to abuse".

  • FragAttacks

    This website presents FragAttacks (fragmentation and aggregation attacks) which is a collection of new security vulnerabilities that affect Wi-Fi devices. An adversary that is within radio range of a victim can abuse these vulnerabilities to steal user information or attack devices. Three of the discovered vulnerabilities are design flaws in the Wi-Fi standard and therefore affect most devices. On top of this, several other vulnerabilities were discovered that are caused by widespread programming mistakes in Wi-Fi products. Experiments indicate that every Wi-Fi product is affected by at least one vulnerability and that most products are affected by several vulnerabilities.

  • Security updates for Wednesday

    Security updates have been issued by Debian (composer, hivex, lz4, and rails), Fedora (chromium, community-mysql, djvulibre, dom4j, firefox, php, php-phpmailer6, python-django, and redis), Mageia (mariadb, nagios, and pngcheck), openSUSE (opera, syncthing, and vlc), SUSE (kernel, openvpn, openvpn-openssl1, shim, and xen), and Ubuntu (flatpak, linux, linux-aws, linux-aws-5.4, linux-azure, linux-azure-5.4, linux-gcp, linux-gcp-5.4, linux-gke, linux-gke-5.4, linux-gkeop, linux-gkeop-5.4, linux-hwe-5.4, linux-kvm, linux-oracle, linux-oracle-5.4, linux, linux-aws, linux-azure, linux-gcp, linux-hwe-5.8, linux-kvm, linux-oracle, linux-raspi, linux, linux-aws, linux-azure, linux-gcp, linux-kvm, linux-oracle, linux-raspi, linux, linux-aws, lnux-aws-hwe, linux-azure, inux-azure-4.15, linux-dell300x, linux-gcp, linux-hwe, linux-gcp-4.15, linux-kvm, linux-oracle, linux-raspi2, linux-snapdragon, linux-oem-5.10, linux-oem-5.6, and mariadb-10.1, mariadb-10.3, mariadb-10.5).

Announcing HAProxy Data Plane API 2.3

Filed under
Server
Software

HAProxy Data Plane API version 2.3 is now available and you will find it in the 2.3 version of the Alpine Docker image. It does much to simplify the complexity exposed to users, as well as expand its set of features in areas like service discovery, logging, and validation.

The most obvious change is moving the command-line arguments needed to start the API into a YAML configuration file. This change, which outwardly looks cosmetic, is an indication of the maturity of the API. New features that require their own command-line arguments, such as the new Syslog support, make it clear that this API has grown bigger than its initial role that was focused on generating an HAProxy configuration. It is fast becoming the interface between HAProxy and the services that surround it. Managing that complexity will be crucial going forward.

[...]

The HAProxy Data Plane API version 2.3 adds service discovery capabilities with a native AWS EC2 integration. It also adds a new configuration file that supports HCL and YAML, an Inotify configuration watcher, and Syslog support. The HAProxy Data Plane API continues to get better thanks to the active community surrounding it. If you’d like to get involved, head over to our GitHub repository to learn more!

Read more

Environmental multi-sensor device runs on Raspberry Pi CM4

Filed under
Linux
Hardware

Sfera Labs has launched a $276 “Exo Sense Pi” multi-sensor computer based on an RPi CM4 with sensors for air quality, temp, humidity, light, and motion plus RS-485, an open collector output, 2x digital inputs, a mic, and an RTC.

In 2019, Sfera Labs launched an Exo Sense Py environmental monitoring system that runs MicroPython on an ESP32. Now, the company, which is known for Raspberry Pi Compute Module 3+ (CM3+) based devices such as the Iono Pi Max industrial controller, has launched an Exo Sense Pi that advances to running Raspberry Pi OS Linux on a quad -A72 Raspberry Pi Compute Module 4.

Read more

Stable Kernels: 5.12.3 and 5.11.20

Filed under
Linux

I'm announcing the release of the 5.12.3 kernel.

All users of the 5.12 kernel series must upgrade.

The updated 5.12.y git tree can be found at:
	git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.12.y
and can be browsed at the normal kernel.org git web browser:
	https://git.kernel.org/?p=linux/kernel/git/stable/linux-s...

thanks,

greg k-h

Read more

Also: Linux 5.11.20

today's howtos

Filed under
HowTos
  • How Do I Change My Desktop Background in Ubuntu? – Linux Hint

    The first step after having installed Ubuntu is to personalize it according to your preferences, to give it a “homier feel”. One way to get started with customizing your new Linux setup is to change the desktop background. In this guide, we will show you different ways you can do just that.

  • How Do I Remove Files from Trash on Ubuntu? – Linux Hint

    You can delete unnecessary files and folders by selecting them and pressing the “Delete” button on your keyboard. These deleted files then go to Trash, a system directory designated for deleted files. Deleted files stay in “Trash” until you decide to empty the directory or restore the files. We will be discussing the first option in this guide – how you can remove files from Trash?

    Method 1: Using Ubuntu’s File Manager

    Let us start off with a simple way to clear the trash folder. This and the next method are going to be implemented using the user interface, so people who do not feel comfortable using the terminal often should go this one.

    First, open Ubuntu’s file manager through the sidebar. On the left side, you will see a list of accessible directories. Click on the one that says “Trash”.

  • How To Install HandBrake on Ubuntu 20.04 LTS - idroot

    In this tutorial, we will show you how to install HandBrake on Ubuntu 20.04 LTS. For those of you who didn’t know, Handbrake is a video transcoder for converting video from one format to another format and available for Linux,macOS X, and windows. The open-source, multi-threaded HandBrake can be effectively used for the conversion of DVD-Videos into other formats. This program (HandBrake) supports major video formats like MP4, MKV, H.264, MPEG-4, or other formats.

    This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of the HandBrake open-source video converter on Ubuntu 20.04 (Focal Fossa). You can follow the same instructions for Ubuntu 18.04, 16.04, and any other Debian-based distribution like Linux Mint.

  • How to Access Another Computer on the Same Network with Linux – Linux Hint

    There are many reasons for accessing another computer on the home/office network from your laptop/desktop. For example,

    1. Using Graphical Software Remotely: There are many software that needs high-spec computers to run (i.e., Autodesk Maya, AutoCAD, Blender). Your laptop/desktop may not have the required specs to run it. At times, a particular software may run on a specific operating system that you don’t want to install on your laptop/desktop just for that one piece of software. In these cases, you can install the required graphical software on other computers and access them remotely from your laptop/desktop and use the required graphical software from your laptop/desktop.

    2. Solving Problems Remotely: If you’re the tech guy of your office, at times, you may need to solve problems on the computers of your colleagues or show them how to do something. You can remotely connect to your colleague’s computer and solve his/her problem. This will save you a lot of your time that you would otherwise spend on walking or in the lift or stairs to go to your colleague’s room.

    3. Remote Graphical/Command-Line Administration: You may be a system administrator of a company. The company may have a lot of computers that you need to administer. Going from desk to desk or room to room to administer every single computer of your company will be many hassles for you. Instead, you can sit and relax on your desk and remotely connect to the computers you need to administer from your laptop/desktop. This will save you a lot of time and extra work.

    4. Accessing Virtual Machines: You may want to run virtual machines on your server using Type-I hypervisors like Proxmox VE, VMware vSphere, KVM, etc. In that case, to use the virtual machines, you need to remotely connect to the virtual machines from your laptop/computer as these virtual machines won’t have any physical display, keyboard, or mouse.

    This article will show you different methods of accessing other computers and virtual machines on the same network with Linux. So, let’s get started.

  • How to install Xubuntu 21.04

    In this video, I am going to show how to install Xubuntu 21.04.

  • How to Add a Git Commit Message? – Linux Hint

    Documentation is very useful for any type of programming. It helps us understand the code easily. The coder may forget the function of the code written by himself/herself after a long time. But if the code is well documented, then the coder or anyone can easily understand the function of the code anytime from the documentation. The information about the particular file and folder of GitHub can be set like the documentation using Git commit message. When a git repository is published in GitHub, a default commit message is added with each file and folder of which function of the particular file or folder is not defined clearly. The git user can add the custom commit message for each file or folder that defines the purpose of that file or folder clearly. The way to add the git commit message has been explained in this tutorial.

  • Hidden gem - Show failures only in external results

    Certain tests like ltp perform a series of tests within a test run and show the results as “External results”. This is useful, because it allows to show more details about which substeps are being perform within a test. It allows to show a passing or failing state of those substeps directly in the WebUI. For instance, in the Tumbleweed JeOS ltp-syscalls test case, it shows all running syscalls tests and you are able to identify the failaing syscalls, instead of just the whole ltp-syscalls test failing.

    In a nutshell: openQA will show certain substeps as individual test cases in the WebUI with their corresponding passed/failed state.

  • How to Check Dependencies of a Package in Ubuntu 20.04

    In the Ubuntu system, installing the packages using the command-line is popular among beginners as it seems quite easy. There are various ways to get the dependencies of a package in Ubuntu 20.04. But we need to know about the “package dependencies” for the folks who are unaware of it.

    While installing software packages in the Linux operating system, some packages depend on other packages to function correctly. Sometimes they are already installed on the system, but, in other cases, they installed with the package automatically. These dependent packages are termed package dependencies.

    There are multiple approaches to get dependencies details, such as using apt package manager, dpkg command, or installing a tool.

    Let’s begin with the APT package management system to get the dependencies of a package.

  • How to Check Fail2banLogs? – Linux Hint

    In today’s post, we are going to explain how to check Fail2ban logs. We will also explain what are the log levels and log targets and how we can change them.

    [...]

    What is a Log File?

    Log files are automatically generated files by an application or OS that have a record of events. These files keep track of all events linked with the system or application which generated them. The purpose of log files is to maintain a record of what happened behind the scene so that if something occurs, we can see a detailed list of events that have happened before the problem. It is the first thing administrators check when they encounter any issue. Most log file ends with .log or .txt extension.

  • How to Create a Simple Shell Script in Linux – Linux Hint

    In Unix System, Shell provides an environment to connect the Linux user and operating system. It helps to get input from the user through commands, operate the function based on input and return the output on the terminal.

    Shell scripts are the list of simple commands to perform operations. You can also create your own commands to perform functions in a system.

    How to Create a Simple Shell Script in Linux:

    Shell scripting can be added in a Linux system using multiple text editors. This guide will create a shell script with Linux by default text editor and the “Vim” text editor tool.

  • Display Linux Kernel Module Information With Modinfo Command - OSTechNix

    This brief guide explains what is Linux Kernel module, how to list the currently loaded Kernel modules using lsmod, and how to display Linux Kernel module information with modinfo command in Linux.

    [...]

    Some examples of Kernel modules are firmware and device drivers, which allows the Linux Kernel to access and control hardware connected to the system. Generally, the Kernel modules are used to add support for new hardware (as device drivers), and/or filesystems, or for adding system calls.

    Without Kernel modules, we have to rebuild and reboot the kernel every time we want a new functionality. We also need to build bigger monolithic kernels and add new functionality directly into the kernel image without Kernel modules. With the help of a Kernel modules, we can simply avoid these problems.

  • Ethernet Switch vs. Hub vs. Splitter: What's the Difference? - Make Tech Easier

    You’re short on Ethernet ports and want to transform one Ethernet cable into two. The first thing that springs to mind is probably Ethernet splitting. You have a few options: hub, splitter, or switch. Each solution has something different to offer, so before purchasing any gadget, it’s important to identify which one has the most to offer you. Here we show you the differences between an Ethernet switch vs. hub vs. splitter so you can make the right choice.

    [...]

    A major downside of an Ethernet splitter is that it reduces the number of utilized wires in a Cat 5e Ethernet cable and reduces the data throughput from 1000Mbps to 100Mbps, which is barely on par with most home Internet connections. This enables you to utilize one cable for two Ethernet connections.

    While Ethernet splitters are cheap and appear to offer a good solution, they do result in a slower speed for network traffic. This is likely to affect the performance of your Ethernet-connected devices. Ethernet splitters are also limited to a maximum of two devices per cable.

    For some limited situations, Ethernet splitters are a good option. However, it’s almost always better to opt for an Ethernet switch or hub.

  • How to Delete a Git Branch Locally?

    One of the important features of GitHub is the branch that contains the copy of the project from a particular point. It helps manage the project work properly. When all project works are done and approved, then it is necessary to combine the works from the different branches to the main branch. After merging the project work, it is required to delete the unnecessary branches. The GitHub server contains the main files and folders for the user. The owner of the GitHub account can access the file and folders of the different repositories at any time and if any file is changed locally, then the owner can publish the updated content from the local system to the main server. The branches of the main server are called remote branches and the branches of the local system are called local branches. GitHub Desktop has used it in this tutorial to create, access, and update the repositories of the local drive and GitHub server. The branch of the repository can be deleted by executing commands in the terminal or by using the GitHub Desktop. These two ways of deleting any local git branch have been shown in this tutorial.

  • How to Download and Install TeamViewer on Linux

    Need to remotely access another computer or accept remote access to your Linux PC? Here's how to use TeamViewer on Linux.

    TeamViewer is no doubt one of the most popular remote computing clients available on the internet. Like Windows and macOS, Linux users can also install TeamViewer on their system to remotely access other devices and computers.

    In this article, we will discuss how you can download and install TeamViewer, a remote control and access software, on your Linux machine.

  • How to Enable Dark Mode on Ubuntu 20.04 LTS – Linux Hint

    There are many remarkable advantages of enabling the dark mode on the system.

    By default, the system offers the Standard mode (light/white mode), but there are two more modes: light and dark.

    Most of the PC users preferred to select the dark mode, as working continuously in front of a sharp white background for a longer period makes the eyes tired and burdened.

    Using the dark mode helps to clear visibility for the users having low vision. It also saves the PC energy and adjusts the screen light according to the environmental light condition.

    And the interesting thing is that it looks amazing while using the system with the dark mode. As everything looks catchy, especially all icons/folders can be differentiated easily.

  • How to Find and Delete Broken Symlinks on Linux – Linux Hint

    Symlink or a.k.a symbolic link is a file containing the address of some file or directory and points towards that directory or file. But, when you move or delete the original file, then the symlink gets broken, and it does not work anymore. Although the broken symlinks do not work, they consume the space on your system, and over some time, you realize that you need to get rid of them and free up some storage space.

    This post will provide you with a complete and in-detail guide on finding and deleting a broken Symlink on the Ubuntu 20.04 LTS system. So, let’s start with learning how to verify a symbolic link file.

  • How to Install Scribus on Ubuntu – Linux Hint

    Scribus is an open-source, multi-platform desktop publication application. It is used for designing and publishing brochures, newspapers, magazines, posters, books, and even newsletters.

    If you are familiar with the Adobe InDesign app, then Scribus is a free alternative to it. Scribus has all the features that a premium application offers, such as layout designing, typesetting, vector drawing, and image manipulation. The projects created in Scribus can be published in digital and print formats.

  • How to Manage Startup Programs on Ubuntu Linux – Linux Hint

    Startup programs are the programs or applications that get executed automatically when an Operating system boots up. The programs can be any regular program like Skype, Discord, Torrent Client, etc. They help save time and enhance the usability experience but at the same time, running too many programs leads to the Operating system’s slow and poor performance because the whole memory gets busy in running all those programs.

    This post’s purpose is to get you aware of those programs and help you in learning how to manage startup Programs on Ubuntu 20.04. We will learn all about adding and removing the applications from the startup list in the Ubuntu 20.04 system. So, let’s jump in and start learning.

  • How to Merge Two Branches in Git – Linux Hint

    Any git repository contains one or more branches. The git user creates different branches for storing files and folders based on the different topics. It helps the user to manage the code easily. In the development process, sometimes it requires combining one branch with the other branch of the repository for the project purpose. `git merge` command is used for this task. This command finds out the common base commit command by examining the two commit pointers of the merging branches and generates a new merge to combine the changes after running the command. Both local and remote repositories are required to be updated before running the merge command. The way of merging two branches locally has shown in this tutorial.

  • How to Search in Vim Editor – Linux Hint

    We have heard several times the “Vim” editor tool in Linux distributions. It the most commonly used multiplatform tool that comes up with several modes. Each of its modes has different editing functionality; some are used to perform commands (code editor), and some for the text editor.

    It is simple to work with the “Vim” editor but giving more attention to this tool help to learn to explore more.

    This guide will focus on the search feature of the “Vim” editor, which is quite handy. We need to understand this because searching for the specific word/string from large file data is not easy.

    Let’s start with the “Vim” editor, but keep in mind your mode should be in the command mode.

  • How to convert video to GIF in Linux – Linux Hint

    While using social media, we always see animated GIFs everywhere. If adding a picture on blogs would tell you 100 words about the story, GIF would come up with 1000 words.

    Animated GIFs are used to make the blogs interesting and a great alternative for demo purposes short videos. It is a quick way to display anything that could not be expressed in images, or you don’t need to insert long videos all the time.

    GIFs are also used in software documentation and media and make everything a part of the fun.

  • How to install the Delft icon theme in Linux

    The Delft icon theme is a fork of the famous Faenza icon theme. It’s incredibly stylish and fits right at home on any Linux desktop. If you’d like to try out the Delft icon theme on your system, follow along with the instructions in this guide!

  • How to print command output in Ansible? – Linux Hint

    Ordinarily, when you run an Ansible playbook, you get execution details printed on the terminal. These include the name of the play and task and a play recap indicating if the playbook has made any changes on the managed host or remote system

    But, suppose you want to print the command output of the command being executed on the remote target. How do you go about this? In this tutorial, you will learn how to print the command output in Ansible.

  • How to run a shell script as a different user – Linux Hint

    Sometimes you might find yourself required to run a shell script as a different user other than the active user on the shell. This is quite easy and can be done in a few simple steps So how do you go about this? Let’s find out.

    [...]

    Before getting started, ensure that you have access to the shell of a Linux system; any Linux distribution will do just fine. In this guide, we are running Ubuntu 18.04.

    Equally crucial is to make sure that you have a shell script with execute permissions. We have a simple shell script called welcome.sh that requests a user’s name and prints it out to the terminal.

  • Kali Linux 2021.1 - Fresh Installation Guide

    Kali Linux is arguably one of the best out-of-the-box Linux distributions available for security testing. While many of the tools in Kali can be installed in most Linux distributions, the Offensive Security team developing Kali has put countless hours into perfecting their ready-to-boot security distribution.

    Kali Linux is a secure Debian-based Linux distribution that comes pre-loaded with hundreds of well-known security tools and has gained quite a name for itself.

    Kali even has an industry-respected certification available called “Pentesting with Kali”. The certification is a rigorous 24-hour challenge in which applicants must successfully compromise a number of computers with another 24 hours to write up a professional penetration test report that is sent to and graded by the personnel at Offensive Security. Successfully passing this exam will allow the test taker to obtain the OSCP credential.

  • Compress a PDF with ghostscript

    This days I had to send a multiple page PDF with a bunch of pictures on it, but requirements said that it needed to be smaller than 5Mb. With Ghostscript I was able to transform a 10.9MB file into a 1.2Mb without loosing quality, since it was mandatory that the small letters contained on the PDF were completely readable.

  • What is the Meaning of 127.0.0.1? – Linux Hint

    Internet Protocol or IP uses a 32-bit IPv4 or 128-bit IPv6 address for identifying a device on a network. This is analogous to our physical home address which is used for delivering our mails and online shopping items, for reaching to us, etc. Our physical home address is a mix of numbers and words, but in the case of computers, they only understand numeric addresses in a specific format. Even if we type an address like “www.domain.com”, computers will resolve it into a numerical format using the DNS mechanism.

  • VRChat on Linux PC - Install & Play online virtual reality game

    Online VRChat is a popular virtual parallel world for the player in which he can interact with others using a 3D avatar. The game is available to play using Steam, Quest, Rift, and Viveport. In VRChat, the users can create their own worlds and chat rooms to meet friends and the community. The best part is the developers have given the community almost complete freedom. However, leaving the moderation largely to the community, sometimes have negative consequences such as numerous trolls cavort in the chat rooms and offensive memes kind of things emerge.

    Nevertheless, to counter this VRchat developers have already introduced a panic button. Using which the player can replace all participants’ avatars that are not in the friend list with gray schemes and also mute the corresponding players.

  • Linux for Starters: Your Guide to Linux - Install Ubuntu from your USB stick - Part 4 - LinuxLinks

    This is a series that offers a gentle introduction to Linux for newcomers.

    In this article we show you how to install Ubuntu 21.04 on your hard disk. It’s a slick process.

i.MX8M Mini SBC offers dual GbE with PoE

Filed under
Ubuntu

Gateworks has launched a “Venice GW7200” SBC that runs Ubuntu on an i.MX8M Mini with up to 4GB RAM and 64GB eMMC. Highlights include 2x GbE with PoE, 2x mini-PCIe, MIPI DSI/CSI, and -40 to 85°C support.

Last year when Gateworks announced its 105 x 100mm GW7300 SBC based on NXP’s i.MX8M Mini, the company said there would be three more Mini-based Venice SBCs, including a 140 x 100mm GW7400, 100 x 70mm GW7200, and 100 x 35mm GW7100. The GW7200 has now arrived with the same dual GbE with PoE capability as the GW7300, but with one less mini-PCIe slot and no standard USB host port.

Read more

MX Linux Package Installer review - Nice but can be nicer

Filed under
Linux
Reviews

MX Package Installer is not a bad idea. But it's a workaround to the horrible mess that's Linux packaging. If anything, it just makes the problem more prominent, and puts it into the user's hands really. And, when we integrate over the problem space, the fault ends up at the MX doorsteps, because it's an MX Linux component that created the possibility for the user to try a program, all hopeful, and then to have it crash.

Ideally, every software component would have a clearly defined, rigorous test procedure. Every system would have a chain of these tests, declared, defined, interlinked. No application would be allowed for inclusion or publication without successful testing that proves the components work great on their own and as part of the overall complex system. The responsibility can be shared, if needed, whatever works the best. But to rely on third parties for your own success means gaps and problems and issues and tons of blameshifting. It's Debian, no it's MX, no it's KDE, no it's the user, and so on. Who cares? The Linux desktop isn't growing. Well, I do. I want it to grow.

So this would be the conclusion of this review. MXPI is a nice thing, but it's still 90% nerdy, 10% friendly, and the equation needs to be flipped. Over the years, the MX team has done pretty cool stuff, and I believe and hope they will be able to polish up MXPI. After all, they did it with their distro, and really transformed it from a nerdbox into a cool, accessible system. But the journey is far from over.

Read more

Bodhi Linux is a beautiful nod to the old school ways

Filed under
Linux

Bodhi Linux has become an absolutely fascinating intersection on what Linux was and what it can be. It's both old and new, out-of-date and ahead of its time. Because of that, I believe (for the first time) I could honestly suggest this Linux desktop distribution for just about any type of user. If you're new to the Linux desktop, Bodhi Linux would be a fine first experience. If you're an old hat with Linux, Bodhi will offer up plenty of customization options. With the latest Moksha desktop, you won't be missing out on anything found on your current desktop of choice.

Give Bodhi 6.0 a try and see if it doesn't wind up your desktop of choice.

Read more

Syndicate content

More in Tux Machines

Videos/Shows: Ubuntu Cinnamon Remix 21.04, Coder Radio, and KDE Breeze Redesign and Blue Ocean

NetBSD: aiomixer, X/Open Curses and ncurses, and other news

aiomixer is an application that I've been maintaining outside of NetBSD for a few years. It was available as a package, and was a "graphical" (curses, terminal-based) mixer for NetBSD's audio API, inspired by programs like alsamixer. For some time I've thought that it should be integrated into the NetBSD base system - it's small and simple, very useful, and many developers and users had it installed (some told me that they would install it on all of their machines that needed audio output). For my particular use case, as well as my NetBSD laptop, I have some small NetBSD machines around the house plugged into speakers that I play music from. Sometimes I like to SSH into them to adjust the playback volume, and it's often easier to do visually than with mixerctl(1). However, there was one problem: when I first wrote aiomixer 2 years ago, I was intimidated by the curses API, so opted to use the Curses Development Kit instead. This turned out to be a mistake, as not only was CDK inflexible for an application like aiomixer, it introduced a hard dependency on ncurses. Read more

Core Scheduling Looks Like It Will Be Ready For Linux 5.14 To Avoid Disabling SMT/HT

It looks like the years-long effort around CPU core scheduling that's been worked on by multiple vendors in light of CPU security vulnerabilities threatening SMT/HT security will see mainline later this summer with Linux 5.14. Linux core scheduling has been worked on by pretty much all of the hyperscalers and public cloud providers to improve security without disabling Hyper Threading. Core scheduling is ultimately about what resources can share a CPU core and ensuring potentially unsafe tasks don't run on a sibling thread of a trusted task. Read more

IBM/Red Hat/Fedora Leftovers

  • Automating RHEL for Edge image rollback with GreenBoot

    With the release of Red Hat Enterprise Linux (RHEL) 8.3, Red Hat announced an rpm-ostree version of RHEL targeted for Edge use cases called RHEL for Edge. One of the unique features of rpm-ostree is that when you update the operating system, a new deployment is created, and the previous deployment is also retained. This means that if there are issues on the updated version of the operating system, you can roll back to the previous deployment with a single rpm-ostree command, or by selecting the previous deployment in the GRUB boot loader. While this ability to manually roll back is very useful, it still requires manual intervention. Edge computing use case scenarios might be up in the tens or hundreds of thousands of nodes, and with this number of systems, automation is critical. In addition, in Edge deployments, these systems might be across the country or across the world, and it might not be practical to access a console on them in the event of issues with an updated image. This is why RHEL for Edge includes GreenBoot, which can automate RHEL for Edge operating system rollbacks. This post will cover an overview of how to get started with GreenBoot and will walk through an example of using GreenBoot.

  • Using Ansible to configure Podman containers

    In complex IT infrastructure, there are many repetitive tasks. Running those tasks successfully is not easy. Human error always presents a chance of failure. With help of Ansible, you perform all of the tasks through a remote host and, as the tasks are executed with playbooks, and those playbooks can be reused as many times as you need. In this article you will learn how to install and configure Ansible on Fedora Linux and describe how to use it to manage and configure Podman containers. Ansible Ansible is an open source infrastructure automation tool sponsored by Red Hat. It can deal with all the problems that come with large infrastructure, like installing & updating packages, taking backups, ensuring specific services are always running, and much more. You do this with a playbook which is written in YAML. Ansible playbooks can be used again and again, making the system administrator’s job less complex. Playbooks also eliminate repetitive tasks and can be easily modified. But we have many automation tools like Ansible, why use it? Unlike some other configuration management tools, Ansible is agentless: you don’t have to install anything on managed nodes. For more information about Ansible, see the Ansible tag in Fedora Magazine.

  • Getting better at counting rpm-ostree based systems

    Since the release of Fedora 32, a new mechanism has been in place to better count the number of Fedora users while respecting their privacy. This system is explicitly designed to make sure that no personally identifiable information is sent from counted systems. It also insures that the Fedora infrastructure does not collect any personal data. The nickname for this new counting mechanism is “Count Me”, from the option name. Details are available in DNF Better Counting change request for Fedora 32. In short, the Count Me mechanism works by telling Fedora servers how old your system is (with a very large approximation). This occurs randomly during a metadata refresh request performed by DNF.

  • Cockpit 244

    Cockpit is the modern Linux admin interface. We release regularly. Here are the release notes from Cockpit version 244 and Cockpit Machines 244.

  • A brief introduction to Ansible Vault

    Ansible Vault is an Ansible feature that helps you encrypt confidential information without compromising security.