Language Selection

English French German Italian Portuguese Spanish

July 2022

Czkawka is Your Swiss Knife For Cleaning Files on Linux

Filed under

After using your Linux system for a couple of months or years, you will find that a lot of dust will start building up on different parts of your OS.

This is especially true regarding your own data and files.

You will have many duplicate files, large files that you no longer use or need, files which you copied to somewhere else but forgot to delete from the original position to free up space… It will eventually be a mess.

On Windows, there were many data cleaning programs like CCleaner and others, but are there any useful alternatives on Linux?

Luckily, the answer is yes, and today we will be doing a walkthrough on Czkawka; an open source data cleaning software which can be used for all your system cleaning purposes.

Read on

Videos/Audiocasts/Shows: Numbers in Kernel Releases, LINUX Unplugged, and GNU/Linux OEMs

Filed under

Jakub Kicinski: TLS 1.3 Rx improvements in Linux 5.20

Filed under

The first implementation of kTLS was designed in the good old days of TLS 1.2. When TLS 1.3 came into the picture the interest in kTLS had slightly diminished and the implementation, although functional, was rather simple and did not retain all the benefits. This post covers developments in the Linux 5.20 implementation of TLS which claws back the performance lost moving to TLS 1.3.

Read on

Also: Kicinski: TLS 1.3 Rx improvements in Linux 5.20 []

today's howtos

Filed under

  • How to Animate GIF in ImageMagick

    An animation is pretty cool. I mean, it’s animated, how can you not like it, right? But did you know that an animation is nothing more than a bunch of pictures put together and played one after the other, super fast? When you see an animation, it’s nothing more than a bunch of pictures that are played fast enough such that your eyes can’t tell that they’re pictures. Your eyes interpret them as a small movie. Now, that we know how an animation is made, let’s get to it and make some.

    In this tutorial, we will show you how to animate using the ImageMagick. Please note that ImageMagick is a very thorough package, and you can do a lot. So, we will only cover the basics of animation.

  • How To Install OpenCart on Ubuntu 22.04 LTS - idroot

    In this tutorial, we will show you how to install OpenCart on Ubuntu 22.04 LTS. For those of you who didn’t know, OpenCart is an open-source PHP-based online e-commerce solution. It offers a lot of plugins that help you to extend the platform’s functionality and includes features like user management, multi-store functionality, affiliates, discounts, multiple payment gateways, product reviews, and more.

    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 the step-by-step installation of the OpenCart free open source ecommerce platform on Ubuntu 22.04 (Jammy Jellyfish). You can follow the same instructions for Ubuntu 22.04 and any other Debian-based distribution like Linux Mint, Elementary OS, Pop!_OS, and more as well.

  • Running command line tasks in Neovim

    My daily workflow often involves repeatedly running tasks, whether that be build commands, unit tests, or some other scripts. My ideal workflow is to have a terminal split on the right hand side, and then be able to send tasks to it.

  • What Are Linux NIS and NIS+

    NIS and NIS+ share as many differences as they share their similarities. These programs, commonly known as Network Information Service and Network Information Service Plus, deliver a simple network lookup and check of the processes and databases.

  • How To Flush the DNS Cache on Ubuntu 22.04

    In the world of computers, machines don’t use names as humans do. They go by a string of numbers. Computers, phones, and all these devices can identify and talk with each other using these numbers, also known as IP addresses. In contrast, humans recognize each other by their names, and it’s difficult for us to remember strings of numbers. Thus, architects have developed a naming system known as Domain Name System or DNS to bridge this communication gap between machines and humans.

    The objective of DNS is to resolve names to numbers. To be more specific, it resolves URLs to IP addresses. If someone types in the address bar of their browser window and hits enter, the DNS will resolve this URL to “” by checking within its database and matching the URL with the IP address. Once your machine has this IP address, it can connect with Google and display the website’s contents. To avoid the communication between your computer and the server and minimize the load times, these entries are stored on your computer in a local cache, i.e., DNS cache.

  • How To Install Terminator on Ubuntu 22.04

    Anyone who uses a Linux system knows that the terminal is at the center of the Linux Ecosystem. Though you can control everything from the terminal, many emulators have been released, providing you with many extra features on top of the basic terminal. This guide will look at Terminator, one such emulator, and how you can install it on Ubuntu 22.04.

    As discussed, the terminal itself is pretty powerful. However, Terminator provides extra productivity features that can help you make your time with the terminal more efficient and effective. For instance, it allows you to arrange the terminals in a grid-like setting and gives you tabs to handle multiple commands in a single window. You can also drag and drop the tabs. There are many keyboard shortcuts for you, and you can save the layouts for future uses and add plugins for even more functionality. So, how can you get it installed? Let’s start.

  • How to Install AnyDesk on Ubuntu 22.04

    “AnyDesk is a small but powerful application that gives the users facility to establish a connection to access a remote computer, and you can use that system from your system. It became even more famous during the COVID-19 era as it provides a simple and secure work-from-home facility thanks to its military-grade encryption.

    It is free for everyone except the commercial users who are required to buy licenses. AnyDesk is available on all the platforms like Linux, Windows, Android, iOS, Raspberry Pi, and many other operating systems.

    It is not available on the official Ubuntu repository, and we will have to manually install it, so we will go through all the steps required to install it on Ubuntu 22.04 Jammy JellyFish.

  • How to install Discord on Pop!_OS 22.04 - Invidious

    In this video, we are looking at how to install Discord on Pop!_OS 22.04.

  • How to install Vita3K on a Chromebook

    Today we are looking at how to install Vita3K on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

  • How to use External Secrets with AWS Secrets manager

    In most enterprise systems where software release cycles consist of separate environments like dev, stage, live, having multiple environments that can be dynamically configured is common. An application may have three different sets of database credentials for authentication. Each set of credentials would be respective to an instance for a particular environment. This approach essentially allows software developers to interact with a developer-friendly database when carrying out their day-to-day coding.

Games: xscorch, Valve, and 10 Free and Open Source Game Engines

Filed under

  • xscorch : A faithful Scorched Earth clone for Linux

    Back in High School, in the 1990s, I was taking a class on Architectural Drafting. One of my absolute favorite classes — and one of the best perks of the class is that we had PC’s, running MS-DOS, that we could use with AutoCAD (a drafting application).

    Now. What happens when you put a bunch of nerdy teenagers in front of a row of DOS PCs?

    We bring in floppy disks. With games. Naturally.


    And, what’s more, xscorch seems to be in the repository of nearly every Linux distribution on planet Earth.

    sudo apt install xscorch

    Try that on a Debian based system (or Ubuntu) and you should be ready to relive your 1990s DOS gaming dreams!

  • Valve Has Unloaded a Truckload of Games for the Deck in the Past Week - Boiling Steam

    Valve is not just speeding up the production of the Steam Deck – they have just announced that everyone who has pre-ordered until now should get their Steam Deck within this year – but also the number of games validated for the platform. We have passed not long ago the 4000 games milestone, and in just a few days they have added a truckload of games – more than 300.

  • 10 Free and Open Source Game Engines - Part 2 - LinuxLinks

    Game engines offer huge benefits to game developers. The main functionality they provide is the library of core functions used in a computer game. This often includes a realtime rendering engine for 2D or 3D graphics, physics engine with collision detection, a character animation system, scene graph, sound, artificial intelligence, threading, networking, input, streaming localization support, debugging tools, integration with languages, and the provision of performance monitoring and optimization tools.

    Game engines play a crucial role in the fast creation and development of computer games. As they offer a collection of visual development tools, and are often presented in an integrated development environment, they vastly accelerate the development of games. Game engines are referred to as “game middleware” because they provide a flexible and reusable software platform.

    We covered game engines in this article. This article recommends more great game engines.

    Let’s explore these additional 10 game engines. For each engine we have compiled its own portal page, a full description with an in-depth analysis of its features, a screen shot of the program in action, together with links to relevant resources.

KDE and GNOME Work in GSoC

Programming Leftovers

Filed under

  • Dlsym() 3 C Function

    “Linux has come up with many of its unique functions to perform routine tasks. The dlsym() function is one of them. The dlsym() function goal is to find the address of a defined symbol specified in a DLL (Dynamic Link Library) that has been made accessible via a dlopen() function call. After loading the dynamic shared object (common link library) file indicated by the null-terminated string filename, the function dlopen() outputs an anonymous “connection” for the loaded object. The named symbol is looked up in the dynamic link library (DLL) that has been fetched by the dlopen() method. In this article, we will talk about the use of dlsym().

    If the desired symbol is not present in that DLL, the dependent DLLs of that DLL will be searched for it, after by any dependencies of those, and so on in a breadth-first fashion until the desired symbol is found or all the DLLs have been searched for this purpose. Although the sequence in which dependent DLLs at the same level are searched is undetermined, this search order determines how duplication symbols in distinct DLLs will be identified. Be aware that unloaded dependent dynamic libraries won’t be loaded as a consequence of a dlsym() search for dependent DLLs. Only the DLLs that were loaded as a component of the dlopen() call’s dependent DLLs will be scanned.”

  • Bzero 3 C Function

    “The basic memory structure of a computer may be easily accessed by programmers or users in C or other programming languages. They can interact and perform numerous commands on memory using registers and other tools. Memory management is thus one of the primary functions of the C programming language. Thus, the typical operation applied in many scenarios involved zeroing out the region of computer memory. Dynamic memory should occasionally be filled with zeros to purge garbage entries.

    Some structs often need to have their multiple bit-mask values explicitly replaced with zeros before their members are initialized. For this, the C language came up with the bzero 3 functions to be utilized in the program. Thus, we have decided to implement the use of the bzero 3 C function in our C program. Let’s get started.”

  • Counting Sort Complexity

    Counting sort is best illustrated with the sorting of integers. In C/C++ and Java, the characters are integers and can be sorted in the way the integers are sorted.

  • Epoll 7 C Function

    The C language is a very vast language when it comes to the use of different technologies or APIs. It is also very usable when we want to use the socket programming. Just like this, it comes up with the epoll 7 functions. Poll(2) and the epoll API both observe the various document descriptors to determine whether I/O is feasible on every one of them. The epoll API extends very well with the great numbers of monitored document descriptors and may be used as being either a level-prompted or edge-prompted gateway.

    The epoll entity, an in-kernel information model that may be seen from the user-space as a wrapper for two sets, serves as the foundational idea of the epoll API. Within this guide, we’ll discuss the use of the epoll function in the C language.

  • Comparing strtod with from_chars (GCC 12) – Daniel Lemire's blog

    A reader (Richard Ebeling) invited me to revisit an older blog post: Parsing floats in C++: benchmarking strtod vs. from_chars. Back then I reported that switching from strtod to from_chars in C++ to parse numbers could lead to a speed increase (by 20%). The code is much the same, we go from…

  • Rakudo compiler, Release #157 (2022.07) - Rakudo Compiler for Raku Programming Language

    On behalf of the Rakudo development team, I’m very happy to announce the July 2022 release of Rakudo #157. Rakudo is an implementation of the Raku1 language.

  • Nibble Stew: Implementing a "mini-LaTeX" in ~2000 lines of code

    The input text file for War of the Worlds is about 332 kB in size and the final PDF contains 221 pages. The program generates the output in 7 seconds on a Ryzen 7 3700 using only one core. This problem is fairly easily parallelizable so if one were to use all 16 cores at the same time the whole operation would take less than a second. I did not do exact measurements but the processing speed seems to be within the same order of magnitude as plain LaTeX.

    The really surprising thing was that according to Massif the peak memory consumption was 5 MB. I had not tried to save memory when coding and just made copies of strings and other objects without a care in the world and still managed to almost fit the entire workload in the 4 MB L2 cache of the processor. Goes to show that premature optimization really is the root of all evil (or wasted effort at least).

    Most CPU cycles are spent inside Pango. This is not due to any perf problems in Pango, but because this algorithm has an atypical work load. It keeps on asking Pango to shape and measure short text segments that are almost but not entirely identical. For each line that does get rendered, Pango had to process ~10 similar blocks of text. The code caches the results so it should only ask for the size of any individual string once, but this is still the bottleneck. On the other hand since you can process a fairly hefty book in 10 seconds or so it is arguable whether further optimizations are even necessary,

  • Python os.system

    “Integrating repetitive tasks is a great idea. Shell scripts are frequently used by programmers and software operators to handle some recurring processes. But, shell scripts could get more difficult to manage because these processes get a little more complicated. However, the Python programming language could be utilized for automated processes rather than terminal commands. The same feature as those terminal commands is available in Python through some functions for executing operating system commands.

    We can handle computer operations in a systematic and organized manner by acquiring how to execute the command line in Python. The OS package of a python programming language offers tools for cooperating with any operating system of the computer. OS is included in the basic utility packages for Python. This package includes a compact approach of using additional features that rely on the operating system.

    The instruction as a string is implemented by the os.system() function in a terminal. The same restrictions apply to this procedure, which would be accomplished by using the system() method of C Programming language. If an instruction produces any outcome, the standard output source of the programmer receives it. When this function is employed, the corresponding operating system terminal is going to open, and the instructions are run there.”

  • Change the View of PyTorch Tensor

    “In this PyTorch tutorial, we will see how to change the view of a tensor in PyTorch. PyTorch is an open-source framework available with a Python programming language.

    A tensor is a multidimensional array that is used to store the data. So for using a Tensor, we have to import the torch module.

    To create a tensor, the method used is tensor()”

  • Compute the Logarithm of Elements of a Tensor in PyTorch

    “In this PyTorch tutorial, we will see how to perform logarithmic functions on a given tensor.

    PyTorch is an open-source framework available with a Python programming language.

    A tensor is a multidimensional array that is used to store the data. So for using a Tensor, we have to import the torch module.

  • How To Exit a Function in Python

    As most of us might know, a function in Python is a chunk of code that can be reused when required without having to write it repeatedly.
    Each program has a particular “flow”. Flow refers to the order in which a program gets executed. In a program, we have lines of code where we initialize variables, take inputs and outputs, and often create and call functions.

    We can have one or more functions to perform particular tasks or operations. These functions might or might not return some value or result. However, we need to make a function call for these functions to run and execute. This is necessary.

    Once the function has run completely, the next step is to exit the function. For this, we have the “return statement”. The return statement is used (implicitly or explicitly) to exit the function.

  • How to if the Object is a PyTorch Tensor and Return the Metadata of a Tensor in PyTorch?

    “In this PyTorch tutorial, we will see how to get the information from the given tensor in PyTorch.
    PyTorch is an open-source framework available with a Python programming language.

    A tensor is a multidimensional array that is used to store the data. So for using a Tensor, we have to import the torch module.

    It is possible to check whether the given object is a tensor or not.

    torch.is_tensor() is used to check whether the given object is tensor or not.

    If the object is a tensor, it will return True otherwise, False.”

  • Logical NOT in PyTorch

    “In this PyTorch tutorial, we will see how to perform a logical NOT operation on a tensor using logocal_not().
    PyTorch is an open-source framework available with a Python programming language. We can process the data in PyTorch in the form of a Tensor.

    A tensor is a multidimensional array that is used to store the data. So for using a Tensor, we have to import the torch module.

    To create a tensor, the method used is tensor()”

  • Gawk Scripting Usage Examples

    One way of working with files in Linux is using a scripting language to manage the automation of repeated tasks. An example of a good scripting language is awk which makes the extracting of data and working with patterns easy. The GNU implementation of the awk scripting language is gawk. If you are yet to come to terms with its usage, you are in luck. This post presents the different examples of the use of gawk in Linux, and by the end of this guide, you will have a solid understanding of working with it.

  • Create First Spring Boot Application

    All these tools are used by the developers to create the spring applications.

    Since the Spring Initializer is a mostly used tool, we will start with this first and then we will discuss the other tools in our next articles.

    We will use the Eclipse for the development/coding. Eclipse is an IDE that is primarily used to create the java-based applications.

    If you are not familiar with Eclipse, don’t worry because it’s a simple code editor. We will help you understand it in this article. To get it, visit the official site and install it to your local system.

Security and More: Mageia Downtime and Defending the Enterprise, Beyond Ransomware

Filed under

  • Most of our servers can not be reached since some hours ago.

    Due to a problem in the Data Center where most of is hosted, most of our website (like forums, wiki and bugzilla) cannot be reached since some hours ago.

  • Defending the Enterprise

    "It's important to see how your system behaves" under such circumstances, "so you see those minor differences between standard behavior and the unexpected," says Bergstrom.

    Specific attacks create lots of chaos. "The main attack space for security chaos is ransomware, even though its goal is to make money," says Shortridge. However, ransomware causes more security failures than encrypting critical data. It locks enterprises out of systems and machines, and leads to downtime until an organization pays the ransom or restores from backups.

  • The Hacker Gold Rush That’s Poised to Eclipse Ransomware [Ed: Ransomware is predominantly a Microsoft problems, statistics have shown repeatedly]

    RANSOMWARE ATTACKS, INCLUDING those of the massively disruptive and dangerous variety, have proved difficult to combat comprehensively. Hospitals, government agencies, schools, and even critical infrastructure companies continue to face debilitating attacks and large ransom demands from hackers. But as governments around the world and law enforcement in the United States have grown serious about cracking down on ransomware and have started to make some progress, researchers are trying to stay a step ahead of attackers and anticipate where ransomware gangs may turn next if their main hustle becomes impractical.


    “So much attention is being paid to ransomware, and governments all over the world are taking action to disrupt it, so eventually the return on investment is going to be impacted,” says Hassold, who is director of threat intelligence at Abnormal Security and a former digital behavior analyst for the FBI. “And ransomware actors are not going to say, ‘Oh, hey, you got me’ and go away. So it’s possible that you would have this new threat where you have the more sophisticated actors behind ransomware campaigns moving over to the BEC space where all the money is being made.”

Linux Kernel 5.19 Officially Released, This Is What’s New

Filed under

After being in development for more than two months, Linux kernel 5.19 is finally here and introduces support for ZSTD-compressed firmware files, support for AMD’s Secure Nested Paging feature, a new user-space API for managing MultiPath TCP (MPTCP) flows, initial support for Loongson’s “LoongArch” RISC ISA CPU architecture, as well as support for the ARM Scalable Matrix Extension (SME).

Read more

Is Linux Unix?

Filed under

Linux is an open source and freely available kernel that can be obtained from the internet. Hundreds of distributions have been invented that are inspired by the Linux kernel, such as Debian, Ubuntu, CentOS, Arch Linux, Manjaro, etc. There is an open-source community of Linux to provide rapid runtime support services. Additionally, Linux-based distributions provide an interactive Graphical User Interface which is the primary reason that Linux is used by simple as well as advanced computer users.

In 1969, a group of collaborators and a Non-Profit Organization invented the UNIX operating system at Bell Labs. Primarily, UNIX serves the community that uses servers, workstations, or mainframe computers. It was a dedicated CLI operating system. Later, UNIX also started offering GUI support as well.

Read on

More in Tux Machines

This week in KDE: Major accessibility improvements

Though KDE’s goal-setting process is still ongoing, contributors have started working on Plasma accessibility in a major way! As of Plasma 5.26, all Plasma widgets will be fully compatible and usable with a screen reader, thanks to Fushan Wen with assistance from Harald Sitter! Read on

Today in Techrights

Security Leftovers

  • Chinese hackers backdoor chat app with new Linux, macOS malware [Ed: Nowadays the Microsofters in the media are calling "backdoors" things that are simply malware and one has to actually install; of course they like to blame "Linux" (because the user can add malware on top of it). Saying Linux isn't secure because it doesn't prevent you installing malware is like saying bridges are dangerous because you may commit suicide by jumping off them.]

    Versions of a cross-platform instant messenger application focused on the Chinese market known as 'MiMi' have been trojanized to deliver a new backdoor (dubbed rshell) that can be used to steal data from Linux and macOS systems.

  • Linux Threats: A Black Hat 2022 Hot Topic? (Video) [Ed: Aside from patent trolling, Blackberry reinvented itself as anti-Linux FUD source in recent years. They intentionally overlook back doors (e.g. Windows) and blame everything on "Linux".]

    There are usually a few cyberthreat trends that seem to emerge as important themes at each year’s Black Hat conference. And this year, the increase in Linux threats may be one of them.

  • #StopRansomware: Zeppelin Ransomware [Ed: Ransomware is predominantly a Microsoft Windows problem]

    CISA and the Federal Bureau of Investigation (FBI) have released a joint Cybersecurity Advisory (CSA), #StopRansomware: Zeppelin Ransomware, to provide information on Zeppelin Ransomware. Actors use Zeppelin Ransomware, a ransomware-as-a-service (RaaS), against a wide range of businesses and critical infrastructure organizations to encrypt victims’ files for financial gain.

  • CISA Adds Two Known Exploited Vulnerabilities to Catalog

    CISA has added two new vulnerabilities to its Known Exploited Vulnerabilities Catalog, based on evidence of active exploitation. These types of vulnerabilities are a frequent attack vector for malicious cyber actors and pose significant risk to the federal enterprise. Note: to view the newly added vulnerabilities in the catalog, click on the arrow in the "Date Added to Catalog" column, which will sort by descending dates. 

  • Cisco Releases Security Update for Multiple Products

    This vulnerability could allow a remote attacker to obtain sensitive information. For updates addressing lower severity vulnerabilities, see the Cisco Security Advisories page.

today's leftovers

  • Portable Computer Pre-History: Portable Before Laptops

    Portability is relative. When former Texas Instruments employees Rod Canion, Jim Harris and Bill Murto created a portable version of the IBM PC in 1982, it was a hulking device that weight 28 pounds and was roughly the size of a sewing machine. If you sold a desktop computer that weighed 28 pounds in 2018, you’d be laughed off the block. But the device, called the Compaq Portable, was revolutionary for its time and thrust the company that made it into the mainstream. It wasn’t too long before then that a portable computer was so embarrassingly large that you would probably break your legs if you used it as a laptop. Tonight’s Tedium ponders a time when portable computing meant something just a little bit bigger.

  • Fedora Sway OSTree Spin name

    The Fedora Sway SIG is working to create an immutable version of the Sway Spin (also work in progress) using OSTree. Those immutable spins of Fedora are becoming more common following Silverblue and Kinoite’s success. As it often happens, one of the most challenging things to do in creating something is to come up with clever names. This task is made even more complex by the relatively small amount of people active in this conversation. For this reason, during the last SIG meeting, it was decided to socialize this decision so that more people could suggest their ideas.

  • Output requirements.txt packages pinned to latest version
  • How to install OpenSCAD on a Chromebook

    Today we are looking at how to install OpenSCAD on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

  • Stupid SMP Tricks: A Review of Locking Engineering Principles and Hierarchy: paulmck — LiveJournal

    Daniel Vetter put together a pair of intriguing blog posts entitled Locking Engineering Principles and Locking Engineering Hierarchy. These appear to be an attempt to establish a set of GPU-wide or perhaps even driver-tree-wide concurrency coding conventions. Which would normally be none of my business. After all, to establish such conventions, Daniel needs to negotiate with the driver subsystem's developers and maintainers, and I am neither. Except that he did call me out on Twitter on this topic. So here I am, as promised, offering color commentary and the occasional suggestion for improvement, both of Daniel's proposal and of the kernel itself. The following sections review his two posts, and then summarize and amplify suggestions for improvement.

  • Ubuntu Unity 22.04 Quick overview #linux #UbuntuUnity - Invidious
  • FOSS Force Open Source News Quiz (8/12/22) - FOSS Force

    How closely did you follow the news about Linux and free and open source software this week? You can get an idea about how well informed you are (and have some fun in the process) by taking our Open Source News Quiz. Once you’re done, scroll down to the comments section and let us know how you did!