DistroWatch Weekly |
DistroWatch Weekly, Issue 1059, 26 February 2024 |
Welcome to this year's 9th issue of DistroWatch Weekly!
The Linux terminal is a core part of virtually every distribution and it has its roots in a long tradition, going back to the dawn of Unix. While virtual terminals and modern shells have polished the experience of typing and running commands, adding keyboard shortcuts and auto-completion for convenience, the terminal has not evolved much over the past 50 years. The Warp Terminal team is aiming to change this, ushering in a new type of virtual terminal which approaches the command line like a modern desktop application. Warp introduces text editor style command line editing, predictive typing, logically separated output, and AI assistance. We begin this week with a look at Warp and its capabilities. AI assistants are popping up everywhere, from web browsers to development tools to the terminal. What do you think of the idea of merging AI assistance into the virtual terminal? Let us know in this week's Opinion Poll. Also on the topic of navigating terminals, we discuss how to find help in local manual pages using the man command in this week's Questions and Answers column. Then, in our News section, we discuss malware found in Canonical's Snap repository which steals digital currency and Red Hat contemplating raising the CPU requirements for RHEL 10. We also share some areas where the UBports team plans on improving their mobile operating system. Plus we are pleased to share the releases of the past week with you along with the torrents we are seeding. Then we take a moment to thank our supporters who continue to donate to DistroWatch. We wish you all a wonderful week and happy reading!
This week's DistroWatch Weekly is presented by TUXEDO Computers.
Content:
- Review: Warp terminal with AI
- News: Canonical's Snap store found to be distributing malware, Red Hat considers updating its CPU requirements, UBports working on VoLTE and backup utility
- Questions and answers: Navigating manual pages
- Released last week: Ubuntu 22.04.4, antiX 23.1, Armbian 24.2.1, Accessible-Coconut 22.04.3, Tiny Core Linux 15.0
- Torrent corner: Armbian, Lubuntu, Ubuntu Budgie, Ubuntu MATE, Ubuntu Kylin, Ubuntu Studio, Xubuntu
- Upcoming releases: openSUSE 15.6-beta, FreeBSD 13.3-RC2
- Opinion poll: AI features in the virtual terminal
- Site news: Tracking and searching for x86-64-v3, Donations and Sponsors
- New additions: Accessible-Coconut
- Reader comments
|
Feature Story (By Jesse Smith) |
Warp terminal with AI
I've been using computers for about 38 years and, throughout that time, I've made heavy use of command line interfaces. Early on, in the Commodore 64 and DOS days, there was a lack of alternative options. However, as my computing journey continued into the realms of Windows, Solaris, Linux, and FreeBSD a command line, in some form or another, was always a big part of the experience. The form the command lines took was fairly consistent over the decades. Virtually every terminal I've sat in front of followed a similar flow: show the user a prompt, wait for a command to be typed, dump some output, show the prompt again. The shell syntax and command names varied a lot from one platform to another (the transition from DOS to Solaris was jarring, to put it mildly), but the way the shell behaved, the workflow the terminals presented, remained largely the same. Getting a directory listing and launching a program worked much the same whether I was running DOS, Solaris, or Linux.
Over the years the concept of a terminal (virtual or physical) hasn't changed a lot. Shells have extended the functionality a bit, adding command history, shortcuts, and predictive path names. Virtual terminals have added some mouse support and tabs. Otherwise, the experience of running DOS with some extensions in the 90s feels quite similar to running a bash shell on most Linux distributions. Warp seeks to change this status quo.
The Warp terminal seeks to modernize how users interact with their virtual terminals, providing a number of enhancements and integrations. Warp, which is written in the Rust language, provides some protection against common memory access flaws. It also merges the classic style of a virtual terminal with modern text editor and IDE-style interactions. Warp integrates search features, helpfully offers suggestions to natural language queries, and has an AI assistant to help us troubleshoot errors. That's a lot to ideas to process and I recommend checking out the Warp terminal's documentation before getting started as it highlights some key features.
I had the chance to try out a beta of Warp before it was released for Linux and I'd like to share my experiences and observations with you as this feels like one of the biggest steps forward for me in the command line space since migrating from DOS batch files to Unix shell scripts.
Getting started
I downloaded an AppImage bundle for Warp which was 42MB in size. There are also RPM and Deb files for Warp which are about 25MB in size. Making this file executable and running it opens the Wrap terminal. The first time I launched Warp, the software asked me to sign into a account and it opened a link in my web browser to help me set up a Warp account. This account then supplied me with a registration token I was asked to copy/paste into a field in the Warp start-up wizard. I was asked a few survey questions by the Warp first-run wizard, covering how I learned about Warp and in what environments I planned to use the software. Then the wizard disappeared and presented me with a terminal window.
Warp then asks us a few more questions the first time we run it. These include asking us to select a theme with our options including: Light, Dark, Dracula, and Wave. We can then choose to use a classic prompt style (the shell prompt we'd normally see) or a custom prompt provided by Warp. We're then shown a terminal with a prompt at the bottom of the window. The terminal displays text suggesting we can use the "#" character, followed by a typed natural language question, to ask the terminal for help. I'll come back to this feature in a bit. Then we're left to explore the terminal just as we would use Konsole, GNOME Terminal, or xterm.
Features
The Warp virtual terminal works with most modern Linux shells, including bash, fish, and zsh. When Warp is run it automatically tries to use our account's default shell and adjusts our shell's output to fit in with the Warp interface.
We can see a list of keyboard shortcuts Warp supports by typing Ctrl /. This brings up a list of supported shortcuts which we can use keywords to search. For example, pressing Ctrl / and then typing "setting" will show me that the Ctrl , shortcut opens the Warp Settings window.
Warp Terminal -- Getting a suggestion for a command
(full image size: 186kB, resolution: 1488x864 pixels)
We can get simple advice from the Warp terminal regarding which commands would be useful in a given situation by typing the "#" symbol, followed by a natural language query. For example, typing "# How do I update one flatpak package?" will cause Warp to respond with the suggestion that we run "flatpak update package-name". When I asked Warp: "# How do I update all packages on the system?" it responded, correctly, that I could use "apt update && apt upgrade -y". Likewise asking, "# How do I convert a wav file to mp3?" correctly returned the answer: "ffmpeg -i input-file.wav output-file.mp3".
This approach to asking questions and getting responses is quite slick and clicking on a suggested answer automatically copies the command to our input prompt so we don't need to copy/paste it. This may be my favourite feature of Warp and an option I wished I'd had in college.
When we are typing a command, Warp will try to anticipate our next parameter, such as a filename or a commonly used command switch. The suggestions appear to come from a combination of our shell history and the contents of the current directory. If the suggestion Warp makes is accurate, we can accept the suggestion by pressing the Right Arrow key.
We can also use classic Tab completion, with an enhancement. Pressing Tab may offer multiple matches for command line flags, files, or directories and we can scroll through them to pick the one we want.
As with some other shells, we can press Ctrl R to browse our command history. Warp includes a search feature so we can narrow in on a specific command or parameter we have used in the past. Selecting a past entry automatically copies it to our input line after the prompt.
Warp supports a concept called Launch Configurations. This allows the user to automate certain steps and processes. For example, we might want to set up a configuration to jump to a code project directory and perform a checkout of the source code when we open the terminal.
We can split the Warp terminal into panes. The Ctrl Shift D command splits the terminal down the middle and Ctrl Shift W closes the active pane. This makes it easier to do side-by-side comparisons of output and text files.
Warp can act as a file manager. If a filename is displayed in a command's output (such as from ls) we can click on a file to open it. We can open text files, links, images, and office documents from the command line with a click.
A key feature we are likely to notice when using Warp is the terminal treats command line input like a text editor. We can use the arrow keys and the mouse to navigate text we are typing. We can highlight words to copy them or highlight them and start typing to replace them. We can use normal text editor shortcuts to jump between words.
Normally our command prompt and the text we type remain pinned in one spot, by default at the bottom of the screen. Though we can pin the prompt and input box to the top of the window or let it scroll down the way the prompt does in other terminals. The location of the prompt can be adjusted in Warp's Settings panel. This offers a consistent location for our eyes to track input and reduces mouse movement.
Blocks
When we run a command its output appears in a block in the Warp window. These blocks can be highlighted as a whole and we can perform actions on a command's output block. A block can be selected with the mouse or by pressing Ctrl and the Up/Down Arrow keys. Actions we can perform on a block include copying the entire output of the command, copying the line we typed, searching for text in the output block, and engaging AI help features. This means with a few keystrokes we can run a command, highlight its block, and copy just this one command's output to the clipboard to use elsewhere.
Warp Terminal -- Three output blocks
(full image size: 112kB, resolution: 1281x737 pixels)
One interesting thing we can do with an output block is select it and right-click to find text (or use Ctrl Shift F). We can then search through the block for matching text and it will be highlighted for us. The find feature works on interactive output, such as the text from a system monitor like top. This allows us to search for text like a username or a specific process name and it will stay highlighted, even as the information updates.
Warp Terminal -- Highlighting words in dynamic output
(full image size: 230kB, resolution: 1488x864 pixels)
These output blocks not only make it easy to select and perform actions on text on our screen, it also keeps output from different commands logically separated - both from each other and from our command prompt. This keeps the terminal window looking more tidy.
We can share a block of text, sending it to another person through a URL so they can see our command and its output. This is especially handy when troubleshooting or sending large amounts of information to a colleague. This way they can see exactly what we see, just by clicking a URL we send them. It basically works like a Pastebin service, all within the terminal window.
One more interesting thing we can do with blocks is pass a block of output to an AI chat bot to get suggestions and fixes for common problems. I'll come back to this feature with examples later.
Settings
Warp has an extensive settings panel. It offers the ability to check for Warp software updates, see blocks of output we've shared, and adjust the theme. We can adjust the opacity of the Warp window, toggle cursor blinking, and decide where to (and whether to) pin the input prompt.
There is an option to change the terminal's font (which worked for me) and another for changing font size (which did not work for me). I was able to zoom in/out to adjust font in the main terminal window by using Ctrl + and Ctrl -. I couldn't
find any option to change the font colour if we don't like the colour of one of the themes.
We can toggle whether to see Warp's changelog after each update, we can enable/disable typing aids (like adding a close quote symbol after each open quote). We can change our start-up directory, whether to wrap secure shell sessions to enable Warp features on remote machines, and toggle whether we want to see notifications on the desktop when long-running commands complete.
There are more settings, including seeing which output blocks we have shared with people and what kind of prompt we want. In short, Warp is highly flexible in its layout and behaviour.
Issues
While Warp has a lot of interesting features, a good deal of flexibility, and some helpful tools built into it, it is also still in pre-release development on Linux. There are a few rough edges the developers are polishing and, I found, they were happy to receive feedback so they could address potential problems.
The first issue I ran into is Warp didn't work with some bash variables. For example, bash uses the $_ variable to indicate the last parameter of the previous command. It's useful for tasks like these where we create a new directory and then move into it:
$ mkdir temp
$ cd $_
However, this doesn't work in Warp and results in an error message when the second command is typed, reporting: "bash: cd: warp_report_input: No such file or directory". This issue has been reported and a workaround is to string the commands together on one line, for example the following will work:
$ mkdir temp ; cd $_
Other shell variables tended to work. For example, running the command "echo $USER" correctly outputs my username. Previous command referencing also worked. I could run "echo !:1" to see the first parameter of the previous command, for instance.
Some shell shortcuts are not handled or don't always work as expected. For instance, typing Ctrl A in Warp selects all the text on the input line instead of moving the cursor to the start of the line as one would expect when using bash. Likewise, Ctrl E moves the cursor to the end of the line in bash, but has no effect in Warp.
In bash the shortcut Ctrl L clears the screen. This doesn't always happen in Warp. Some of the window will clear, but not always all of it, sometimes leaving lines of text behind. Running the clear command does successfully clear the terminal window every time.
In the Warp settings panel there is an option to sync the terminal's theme with the host operating system. I tried this and it did not work for me. My Xfce desktop was using a dark theme, but Warp used a light, washed out theme when synced with my host system. I could override this by forcing Warp to use its built-in dark theme.
While not a bug, something I found odd was I could not find a way to delete a single block of output from the Warp window. There is a shortcut to delete all blocks, but not a single block. This would have been handy, I thought, if I wanted to write tutorials and share screenshots of commands, but just include the relevant or successful commands.
Warp Terminal -- Sticky command header blocking top of output
(full image size: 202kB, resolution: 1276x817 pixels)
No matter where the prompt box is pinned (or whether it is pinned), I found the top lines of output in interactive commands (such as top or the vim text editor) would be covered by the Warp prompt. This resulted in the first two lines being covered and I struggled for a while to find a solution, especially when I was logged into remote systems. One fellow Warp user offered a solution. Disabling the sticky command header feature in the settings panel fixes this issue. With the sticky headers turned off all output text was displayed, even when running interactive or remote processes.
AI Features
Earlier I mentioned there is a helpful feature that will take natural language questions such as "# How do I convert a wav file to mp3?" and try to supply a simple answer. Warp has another built in helper function called Ask Warp AI.
How it usually works is we run a command and get some output. Let's say I made a mistake or ran a command and got an error message back. I can click on the lighting icon next to the output block to open a side panel with the Ask Warp AI chat bot. The command I just ran and its output are passed to the chat bot and then we can ask it questions. The default query, already typed in for us, is "How do I fix this?"
Warp Terminal -- Ask Warp AI in action
(full image size: 134kB, resolution: 1208x852 pixels)
I was curious if this would work to help me troubleshoot some problems. More specifically, I wanted to see if the chat bot could guess what I was trying to accomplish and then provide a good solution. I ran Warp through a few examples, including one straight forward task and one more complex one. I'd like to share the results with you.
The first example I tried was fairly easy and a common problem. I attempted to run a script for which I did not have execute permissions. The command just looked like this: "./test-script". The command failed with the error "./test-script: Permission denied", as expected. I then ran the Ask Warp AI feature on the output block and it suggested a three step solution:
- Check the file permissions using "ls -l test-script".
- Enable execute permissions using "chmod +x test-script"
- Try running the script again with "./test-script".
This is a letter perfect answer and one most people who work from the command line have had to perform at least a few times. I decided to ramp up the difficulty.
I created a command which used awk and included a few syntax errors. This is the sort of thing you might do if you made a typo or remembered a keyword incorrectly. The command I ran looked like this and was intended to show every third line in a file containing package names from EasyOS:
cat easyos-5.7.txt | awk '{if (RN % 3 = 0) print $1}'
The command failed with a syntax error, indicating a problem near the equals sign (=). I then clicked the lightning bolt on that output block and pressed Enter. The Warp AI correctly guessed I was trying to print the first field of every third line of the input file. It then correctly pointed out the equals sign should be a double-equals (==) for awk to understand it correctly. The chat bot then pointed out "RN" is a common mistake when people really mean to type "NR" (record number vs number of the record). The Warp bot then suggested I try the following command, which is correct and worked as desired.
cat easyos-5.7.txt | awk '{if (NR % 3 == 0) print $1}'
In other words, even when debugging awk scripts, something I might need to double-check a manual page to do, Warp handled the situation successfully and virtually instantly.
Other observations
I have three other observations I'd like to share. One is that Warp, while it is cross-platform, is not open source. There are some discussions about opening up Warp's source code for some or all of the client-side, but it hasn't happened yet.
Something I appreciate about Warp is it places output in blocks and these blocks are kept separate from the prompt and user input. This prevents the output from background commands from merging with and mangling our next command. Anyone who has debugged daemon services or GUI programs from the command line has likely experienced past commands dumping output all over the command line prompt. Warp cleanly addresses this common problem.
Warp places a wrapper around the ssh command and this can affect the behaviour of sessions on remote hosts. This is documented behaviour and intended to help us enjoy Warp features on remote systems. However, the Warp wrapper can affect output placement and create visual issues on remote sessions. There are a few ways to work around the ssh wrapper if we wish. The easiest way is to disable the SSH Wrapper feature in the Warp settings panel. Another way to to specify the full path name of our ssh program (usually /usr/bin/ssh) which avoids engaging the wrapper.
Conclusions
I tend to be a minimalist when it comes to the command line. I usually disable most features in terminals like Konsole and GNOME Terminal because I want a quick, clean, distraction-free experience. I've been using command lines for a long time, almost all of my life, so I generally don't want more assistance as much as I want the terminal to stay out of my way so I can work.
However, once I spent some time customizing Warp and disabling a few things (like sticky headers, ssh wrappers, and blinking cursors), I found I settled into using Warp quite comfortably. Partly because, with these items turned off, Warp offers a pleasantly distraction-free experience. A bigger bonus for me though was I felt like it was the first terminal in 20 years to improve my experience.
Mostly this improvement came in the form of output blocks. They make the output cleaner, better organized, and the pinned prompt means I always know where I am typing. In other words, this modern Warp terminal makes my environment more static, more predictable, and I value this.
While I personally usually don't need helpful hints and a chat bot to help me through troubleshooting commands anymore (25 years of Linux experience is finally paying off), I think for a lot of people, especially Linux newcomers, these features will help a great deal. Places like distro forums, Reddit, and Stack Overflow are filled with support questions from novice users asking how to perform basic tasks, troubleshoot scripts, and interpret errors. Warp can do this for the user and offer solutions all within the comfort of the terminal window. I think this will be very helpful, especially for less experienced users. I may use it from time to time too if I forget a specific command line flag rather than searching through a manual page.
While Warp does have a few rough edges, they are being addressed. And while there are some features, like the SSH Wrapper, I felt were more distracting than helpful, the vast bulk of Warp's features I found pleasant and helpful. I like the blocks, I like the easy method of sharing output with other people, and I like the troubleshooting bot. I also really enjoy the command line auto-complete suggestions. This might be the first terminal or shell I have used where the in-line suggestions were more helpful than annoying and I ended up using Right Arrow a lot to complete commands rather than disabling the feature as I have in other shells and terminals.
In short, I have been enjoying Warp - both exploring it and its improvements to my workflow as I've gradually got used to the way it tries to improve the user experience. It's been 20 years since I switched terminals for any length of time and Warp might be what finally gets me to shift gears.
|
Miscellaneous News (by Jesse Smith) |
Canonical's Snap store found to be distributing malware, Red Hat considers updating its CPU requirements, UBports working on VoLTE and backup utility
Canonical, the software company behind Ubuntu, came under scrutiny this week with regards to its Snap software repository and the processes by which software authors can publish packages in their curated store. One of the reasons Linux distributions tend to provide central software repositories is to provide users with software which has been tested and verified as safe to use in some fashion. This past week Alan Pope reported a Snap package claiming to be a Bitcoin wallet called Exodus was downloaded from Canonical's Snap repository and used to steal digital coins from its user. An examination of the malicious package revealed it was a low effort piece of malware which should have been caught if Canonical had any vetting processes in place. Pope's overview of the malicious package reveals the details:
"I wanted to take a look at the application itself. So on my workstation, in a separate virtual machine, I ran 'snap download exodus' to download, but not install the application. I don't have any cryptocurrency wallets on my system, but I didn't know what the application might try to do, so for safety I didn't run it directly on my computer. A snap is just a squashfs file, typically containing an application, libraries, assets and metadata. I unpacked the snap with unsquashfs and briefly poked around at the resulting files. Notably much of the metadata in the snap.yaml file was still the developer defaults such as 'Single-line elevator pitch for your amazing snap'. Further investigation revealed this was an application developed using Flutter. The application binary was quite small, and there weren't a lot of bundled libraries beyond the essentials, potentially indicating limited features." The offending application has since been quarantined to prevent it from spreading.
* * * * *
Red Hat announced earlier this year the company was looking at upgrading the CPU requirements for their next major release of Red Hat Enterprise Linux, which would be version 10. At the time some work was being done within CentOS to test performance differences between x86-64-v2 (which was already in use) and x86-64-v3. "The CentOS ISA SIG has produced rebuilds of CentOS 9 with x86-64-v2 and x86-64-v3 baselines, after upgrading the system compiler to GCC 12. As mentioned above, GCC 11, the RHEL 9 system compiler, does not support auto-vectorization at -O2, which is why we switched to GCC 12 for these rebuilds. For this experiment, GCC 12 is still reasonably close to GCC 11 in terms of bug-for-bug C++ compatibility, so that few packages needed fixing before they could be rebuilt. We hope that these builds can be used to show performance improvements for key packages and workloads. Even if we cannot show performance improvements for software included in RHEL, it may still make sense to go ahead with the switch. The reason is that if RHEL 10 requires the x86-64-v3 baseline, ISVs will be able to rely on it, too. This reduces maintenance cost for some ISVs because they no longer need to maintain (and test) AVX and non-AVX code paths in their manually tuned software." The proposal for updating to x86-64-v3 may be going ahead as at least one tester of CentOS Stream has found development snapshots now require a CPU which supports x86-64-v3, blocking older processors from running the distribution.
* * * * *
The UBports team has outlined and organized the work the project's developers are focused on at the moment. Some of the key elements being addressed are VoLTE network compatibility and a backup utility: "The first priority within that is VoLTE, which is especially important for our friends in North America. Ivan Ucherdzhiev is involved with UI. Backups are another issue. We are looking for a utility in Settings which will define folders to be backed up and enable users to choose where they should be backed up to. There would also have to be a restore function, which would be especially useful when setting up a new device. Additional key areas are discussed in the project's blog post.
* * * * *
These and other news stories can be found on our Headlines page.
|
Questions and Answers (by Jesse Smith) |
Navigating manual pages
Recently I was talking with a colleague who was running into trouble running a cron job. A cron job is a task or command that is run at scheduled times. The scheduled job was running, but not properly processing the arguments passed to it. While he engaged in troubleshooting the situation, I turned to the local manual pages on my computer. We both came to the same conclusion: the parameters for the command included percent signs (%) in the configuration file (also known as a crontab file) which were interpreted by cron as special characters.
I mention this bit of trivia because my esteemed colleague had checked the manual page for crontab (by running "man crontab") and found no reference to how percent signs were interpreted differently. On the other hand, I had quickly found the relevant part of the appropriate manual page. As it happened, we'd been looking at two different manual pages, both called "crontab", but I ended up looking at the relevant page while he was shown a page that wasn't helpful in this scenario. Why was that? Well, let's look at how manual pages are organized.
Local manual pages (often referred to as "man pages") are arranged into nine documentation categories:
- Executable programs and shell commands
- System calls
- Library calls
- Special files (such as those found in the /dev directory)
- File formats and conventions (such as the format of a crontab file or /etc/passwd)
- Games
- Miscellaneous
- System administration commands (often specific to the root user)
- Kernel routines
The sorting of manual pages into separate categories helps us in a few ways. It can help us browse groups of pages to find something we want. Having the pages organized this way also means people packaging software can separate documentation about configuration files (which would go under section 5 - file formats) from executable files (section 1) with the same name. However, this style of organization also causes a problem. It means when we look up a manual page with the man command, it will display the first entry with a matching name it finds, not necessarily the entry we want.
In the case of my colleague and myself, when he ran the command "man crontab" the man program searched through its categories in order and quickly found the documentation for the crontab executable program manual page. This manual page is also known as "crontab (1)" because the documentation for executable programs is in category number 1.
I had taken a different approach. I had run the command "man -k crontab" which provided a list of all installed manual pages that had the word "crontab" somewhere in the title. The "-k" flag indicates we are performing a keyword search. The output looked like this:
$ man -k crontab
anacrontab (5) - configuration file for anacron
crontab (1) - maintain crontab files for individual users (Vixie Cron)
crontab (5) - tables for driving cron
Since I was concerned with the format of a cron table (or crontab), the entry "crontab (5)" looked to be the right one. I then ran "man 5 crontab" to bring up the crontab entry in the 5th documentation category. Had I wished to specify the manual page for the crontab executable program I could have run "man 1 crontab". Having brought up the manual page for formatting a crontab file, it was easy to find information on formatting and special characters.
Manual pages are typically stored under the /usr/share/man directory and are separated into directories based on their categories. This means we can browse an index of all manual pages in a specific category by listing the contents of the appropriate directory. For instance, if I wanted to see all documentation on file formats (category 5) I could run:
ls /usr/share/man/man5
On the other hand, if I wanted to browse all manual pages for executable files, I'd run the following command to see all pages in section 1:
ls /usr/share/man/man1
Often times the documentation for one page will refer to related documentation in another page. Many manual pages have a "See Also" section near the bottom where they list other pages which might interest us. For instance, the man page for the crontab executable command suggests we might also like to look at "crontab(5), cron(8)". The first page talks about the file format for setting up scheduled cron jobs. The second page, which eagle-eyed readers will note is in the 8th documentation category for system administration, talks about how to run and manage the cron background service.
For additional information on how to access and explore local manual pages, running the command "man man" will show the manual page viewer's documentation.
* * * * *
Additional answers can be found in our Questions and Answers archive.
|
Released Last Week |
Ubuntu 22.04.4
The Ubuntu team has announced an update to the distribution's 22.04 LTS release. The new update, 22.04.4, mostly fixes security bugs and includes a new install image for ARM servers: "As usual, this point release includes many updates and updated installation media has been provided so that fewer updates will need to be downloaded after installation. These include security updates and corrections for other high-severity bugs, with a focus on maintaining stability and compatibility with Ubuntu 22.04 LTS. 22.04.4 also includes a new arm64+largemem ISO for ARM servers which provides a 64k page size kernel. This can increase throughput at the cost of higher memory usage." The release notes offer additional information.
antiX 23.1
antiX, a systemd-free Linux distribution based on Debian's "stable" branch, has received a minor update to version 23.1: "antiX 23.1 'Arditi del Popolo' is a bug-fix release based on Debian 'Bookworm'. As usual, we offer completely systemd-free and elogind-free flavours for both 32-bit and 64-bit architecture. Features: based on Debian 12 'Bookworm', but without systemd and elogind; eudev instead of udev; customised 5.10.197 Linux kernel; customised 6.1.60 Linux kernel (x64 full only); LibreOffice 24.2.0; Firefox 115.8.0esr on antiX-full, SeaMonkey 2.53.18.1 on antiX-base; Claws Mail; CUPS for printing, PipeWire and WirePlumber on Full editions, ALSA on Base and Core editions; Celluloid and mpv for playing video; SMTube to play youtube videos without using a browser; QPdfView PDF reader; App Select; User Language - set up localisation of popular apps e.g. LibreOffice; no snaps (systemd) and no Flatpaks (elogind)." Continue to the release announcement for further details.
Armbian 24.2.1
The Armbian team has announced the release of Armbian 24.2, the latest version of the project's Debian and Ubuntu-based Linux distribution designed primarily for ARM development boards. It supports a large range of popular armhf, aarch64 and riscv64 devices: "We're excited to announce the latest Armbian release, 24.2, code name 'Kereru'. This update comes with a plethora of changes, making the Armbian experience even better. In recent developments, we're proud to announce the completion of several projects geared towards refining the Armbian experience. Notably, we've resolved DNS resolution issues associated with Debian 'Bookworm', ensuring smoother connectivity for users. Furthermore, our team has optimized the performance of HDMI consoles on Khadas VIM1S and VIM4 devices, alleviating previous sluggishness." See the release announcement and the release changelog for more information.
Accessible-Coconut 22.04.3
The Zendalona team, which develops free and open-source accessibility software for visually-impaired users, has release an updated version of Accessible-Coconut, an Ubuntu-based Linux distribution with integrated accessibility features. The new version 24.04.3, is based on the latest long-term supported variant of Ubuntu MATE: "It is evident from the feedback received over the past few years that the Accessible-Coconut GNU/Linux operating system represents a significant advancement in enhancing the lives of individuals with visual impairments. Zendalona is pleased to announce the release of Accessible-Coconut 22.04.03, which integrates all the valuable feedback provided by our users. Such responses are expected to continue. The new version comes with two interesting new games - Maths-Tutor and Snakes-and-Ladders. Additional updates in the new version encompass system upgrades, enhanced support for Pidgin Telegram, updates to Coco-Patcher, fixes for eBook-speaker and refreshed files within the user guide. We are thrilled to announce that Zendalona has been accepted into Google Summer of Code (GSoC) 2024. This presents a significant opportunity to empower students and drive forward open-source development, particularly in the realm of accessibility." Here is the full release announcement with related links.
Accessible-Coconut 22.04.3 -- Running the MATE desktop
(full image size: 1.1MB, resolution: 1920x1200 pixels)
Tiny Core Linux 15.0
Version 15.0 of Tiny Core Linux, an independently-developed, minimalist and modular distribution with community-built extensions, has been released. This latest version ships with Linux kernel 6.6.8 and an updated toolchain, including glibc 2.38: "Team Tiny Core is proud to announce the release of Tiny Core Linux 15.0. Changelog for 15.0: Linux kernel updated to 6.6.8; glibc updated to 2.38; GCC updated to 13.2.0; Binutils updated to 2.41; e2fsprogs base libraries and apps updated to 1.47.0; util-linux base libraries and apps updated to 2.39.2; zlib base library updated to 1.3; BusyBox updated to 1.36.1; tce-functions setdrive setup - use in chown; tce-audit - add md5check action from bdantas; tce-audit - md5check update from bdantas; tce-load - sudo touch from polikuo; update-everything - handle missing or extraneous dep files from bdantas; tce-update - allow tcedir optional to be a symlink from bdantas; update-everything - add safety checks from bdantas...." Here is the full release announcement as published on the project's user forums.
* * * * *
Development, unannounced and minor bug-fix releases
|
Torrent Corner |
Weekly Torrents
The table below provides a list of torrents DistroWatch is currently seeding. If you do not have a bittorrent client capable of handling the linked files, we suggest installing either the Transmission or KTorrent bittorrent clients.
Archives of our previously seeded torrents may be found in our Torrent Archive. We also maintain a Torrents RSS feed for people who wish to have open source torrents delivered to them. To share your own open source torrents of Linux and BSD projects, please visit our Upload Torrents page.
Torrent Corner statistics:
- Total torrents seeded: 2,967
- Total data uploaded: 44.1TB
|
Upcoming Releases and Announcements |
Summary of expected upcoming releases
|
Opinion Poll (by Jesse Smith) |
AI features in the virtual terminal
At the start of this week's issue we talked about the Warp virtual terminal, a new application which brings a number of convenient features, organization tools, and AI integration to the Linux terminal. We'd like to hear what you think of having AI tools like command line suggestions and a troubleshooting chat bot built into your terminal. Are these features you would find useful?
You can see the results of our previous poll on how large our readers' root partitions are in our previous edition. All previous poll results can be found in our poll archives.
|
What do you think of AI integration in the terminal?
I have tried it and like it: | 20 (2%) |
I have tried it and do not like it: | 15 (1%) |
I have not tried it but want to: | 364 (28%) |
I have not tried it and do not want to: | 822 (63%) |
I do not use a terminal: | 75 (6%) |
|
|
Website News |
Tracking and searching for x86-64-v3
Over the past year or so more Linux distributions have been looking at ways to squeeze more performance out of their packages using CPU optimizations. One increasingly popular approach to optimizing performance is by targeting upgraded specifications for the x86_64 CPU architecture. Updates to this architecture include performance improvements which can speed up workstations and servers. The updated processors (which are backward compatible with the original x86_64 instructions) are usually referred to as x86-64-v2, x86-64-v3, and x86-64-v4.
A few distributions are updating their packages to target x86-64-v3 which will improve performance while causing the packages to no longer run on the original x86_64 instruction set.
We are beginning to tag distributions in our database which support/require these updated x86_64 instructions, in particularly the popular x86-64-v3 architecture. You can now find distributions optimized for updated x86_64 CPUs on our Search page by selecting the desired x86_64 version from the Architecture field.
If you know of a distribution which now supports x86-64-v3 which is not tagged in our database, please let us know by e-mail us at distro@distrowatch.com and placing "x86-64" in the subject line. Please be sure to link to the release notes or wiki page where the developers indicate support for the newer instruction sets as a lot of projects talk about recommending CPU optimizations, but do not actually implement them.
* * * * *
Donations and Sponsors
Each month we receive support and kindness from our readers in the form of donations. These donations help us keep the web server running, pay contributors, and keep infrastructure like our torrent seed box running. We'd like to thank our generous readers and acknowledge how much their contributions mean to us.
This month we're grateful for the $202 in contributions from the following kind souls:
Donor |
Amount |
Dennis H | $102 |
J S | $50 |
Jonathon B | $10 |
Sam C | $10 |
Chung T | $5 |
Darkeugene7896 | $5 |
DuCakedHare | $5 |
Kristmark R. G | $4 |
J.D. L | $2 |
PB C | $2 |
Peter M | $2 |
c6WWldo9 | $1 |
Stephen M | $1 |
R Brooks | $1 |
Shasheen E | $1 |
William E | $1 |
* * * * *
New projects added to database
Accessible-Coconut
Accessible-Coconut (AC) is a community driven GNU/Linux distribution which is completely accessible for persons with visual impairments. It is derived from Ubuntu MATE. The project's goal is to develop an eyes-free desktop environment. Some of the features of the distribution include screen reader, print reading, six-key input, accessible audio and video editing solutions, ebook speaker, screen magnification facilities, and accessible disk management solutions, among various others.
Accessible-Coconut 22.04.3 -- Running the MATE desktop
(full image size: 1.1MB, resolution: 1920x1200 pixels)
* * * * *
DistroWatch database summary
* * * * *
This concludes this week's issue of DistroWatch Weekly. The next instalment will be published on Monday, 4 March 2024. Past articles and reviews can be found through our Weekly Archive and Article Search pages. To contact the authors please send e-mail to:
- Jesse Smith (feedback, questions and suggestions: distribution reviews/submissions, questions and answers, tips and tricks)
- Ladislav Bodnar (feedback, questions, donations, comments)
|
|
Tip Jar |
If you've enjoyed this week's issue of DistroWatch Weekly, please consider sending us a tip. (Tips this week: 1, value: US$10) |
|
|
|
bc1qxes3k2wq3uqzr074tkwwjmwfe63z70gwzfu4lx lnurl1dp68gurn8ghj7ampd3kx2ar0veekzar0wd5xjtnrdakj7tnhv4kxctttdehhwm30d3h82unvwqhhxarpw3jkc7tzw4ex6cfexyfua2nr 86fA3qPTeQtNb2k1vLwEQaAp3XxkvvvXt69gSG5LGunXXikK9koPWZaRQgfFPBPWhMgXjPjccy9LA9xRFchPWQAnPvxh5Le paypal.me/distrowatchweekly • patreon.com/distrowatch |
|
Extended Lifecycle Support by TuxCare |
| |
TUXEDO |
TUXEDO Computers - Linux Hardware in a tailor made suite Choose from a wide range of laptops and PCs in various sizes and shapes at TUXEDOComputers.com. Every machine comes pre-installed and ready-to-run with Linux. Full 24 months of warranty and lifetime support included!
Learn more about our full service package and all benefits from buying at TUXEDO.
|
Archives |
• Issue 1099 (2024-12-02): AnduinOS 1.0.1, measuring RAM usage, SUSE continues rebranding efforts, UBports prepares for next major version, Murena offering non-NFC phone |
• Issue 1098 (2024-11-25): Linux Lite 7.2, backing up specific folders, Murena and Fairphone partner in fair trade deal, Arch installer gets new text interface, Ubuntu security tool patched |
• Issue 1097 (2024-11-18): Chimera Linux vs Chimera OS, choosing between AlmaLinux and Debian, Fedora elevates KDE spin to an edition, Fedora previews new installer, KDE testing its own distro, Qubes-style isolation coming to FreeBSD |
• Issue 1096 (2024-11-11): Bazzite 40, Playtron OS Alpha 1, Tucana Linux 3.1, detecting Screen sessions, Redox imports COSMIC software centre, FreeBSD booting on the PinePhone Pro, LXQt supports Wayland window managers |
• Issue 1095 (2024-11-04): Fedora 41 Kinoite, transferring applications between computers, openSUSE Tumbleweed receives multiple upgrades, Ubuntu testing compiler optimizations, Mint partners with Framework |
• Issue 1094 (2024-10-28): DebLight OS 1, backing up crontab, AlmaLinux introduces Litten branch, openSUSE unveils refreshed look, Ubuntu turns 20 |
• Issue 1093 (2024-10-21): Kubuntu 24.10, atomic vs immutable distributions, Debian upgrading Perl packages, UBports adding VoLTE support, Android to gain native GNU/Linux application support |
• Issue 1092 (2024-10-14): FunOS 24.04.1, a home directory inside a file, work starts of openSUSE Leap 16.0, improvements in Haiku, KDE neon upgrades its base |
• Issue 1091 (2024-10-07): Redox OS 0.9.0, Unified package management vs universal package formats, Redox begins RISC-V port, Mint polishes interface, Qubes certifies new laptop |
• Issue 1090 (2024-09-30): Rhino Linux 2024.2, commercial distros with alternative desktops, Valve seeks to improve Wayland performance, HardenedBSD parterns with Protectli, Tails merges with Tor Project, Quantum Leap partners with the FreeBSD Foundation |
• Issue 1089 (2024-09-23): Expirion 6.0, openKylin 2.0, managing configuration files, the future of Linux development, fixing bugs in Haiku, Slackware packages dracut |
• Issue 1088 (2024-09-16): PorteuX 1.6, migrating from Windows 10 to which Linux distro, making NetBSD immutable, AlmaLinux offers hardware certification, Mint updates old APT tools |
• Issue 1087 (2024-09-09): COSMIC desktop, running cron jobs at variable times, UBports highlights new apps, HardenedBSD offers work around for FreeBSD change, Debian considers how to cull old packages, systemd ported to musl |
• Issue 1086 (2024-09-02): Vanilla OS 2, command line tips for simple tasks, FreeBSD receives investment from STF, openSUSE Tumbleweed update can break network connections, Debian refreshes media |
• Issue 1085 (2024-08-26): Nobara 40, OpenMandriva 24.07 "ROME", distros which include source code, FreeBSD publishes quarterly report, Microsoft updates breaks Linux in dual-boot environments |
• Issue 1084 (2024-08-19): Liya 2.0, dual boot with encryption, Haiku introduces performance improvements, Gentoo dropping IA-64, Redcore merges major upgrade |
• Issue 1083 (2024-08-12): TrueNAS 24.04.2 "SCALE", Linux distros for smartphones, Redox OS introduces web server, PipeWire exposes battery drain on Linux, Canonical updates kernel version policy |
• Issue 1082 (2024-08-05): Linux Mint 22, taking snapshots of UFS on FreeBSD, openSUSE updates Tumbleweed and Aeon, Debian creates Tiny QA Tasks, Manjaro testing immutable images |
• Issue 1081 (2024-07-29): SysLinuxOS 12.4, OpenBSD gain hardware acceleration, Slackware changes kernel naming, Mint publishes upgrade instructions |
• Issue 1080 (2024-07-22): Running GNU/Linux on Android with Andronix, protecting network services, Solus dropping AppArmor and Snap, openSUSE Aeon Desktop gaining full disk encryption, SUSE asks openSUSE to change its branding |
• Issue 1079 (2024-07-15): Ubuntu Core 24, hiding files on Linux, Fedora dropping X11 packages on Workstation, Red Hat phasing out GRUB, new OpenSSH vulnerability, FreeBSD speeds up release cycle, UBports testing new first-run wizard |
• Issue 1078 (2024-07-08): Changing init software, server machines running desktop environments, OpenSSH vulnerability patched, Peppermint launches new edition, HardenedBSD updates ports |
• Issue 1077 (2024-07-01): The Unity and Lomiri interfaces, different distros for different tasks, Ubuntu plans to run Wayland on NVIDIA cards, openSUSE updates Leap Micro, Debian releases refreshed media, UBports gaining contact synchronisation, FreeDOS celebrates its 30th anniversary |
• Issue 1076 (2024-06-24): openSUSE 15.6, what makes Linux unique, SUSE Liberty Linux to support CentOS Linux 7, SLE receives 19 years of support, openSUSE testing Leap Micro edition |
• Issue 1075 (2024-06-17): Redox OS, X11 and Wayland on the BSDs, AlmaLinux releases Pi build, Canonical announces RISC-V laptop with Ubuntu, key changes in systemd |
• Issue 1074 (2024-06-10): Endless OS 6.0.0, distros with init diversity, Mint to filter unverified Flatpaks, Debian adds systemd-boot options, Redox adopts COSMIC desktop, OpenSSH gains new security features |
• Issue 1073 (2024-06-03): LXQt 2.0.0, an overview of Linux desktop environments, Canonical partners with Milk-V, openSUSE introduces new features in Aeon Desktop, Fedora mirrors see rise in traffic, Wayland adds OpenBSD support |
• Issue 1072 (2024-05-27): Manjaro 24.0, comparing init software, OpenBSD ports Plasma 6, Arch community debates mirror requirements, ThinOS to upgrade its FreeBSD core |
• Issue 1071 (2024-05-20): Archcraft 2024.04.06, common command line mistakes, ReactOS imports WINE improvements, Haiku makes adjusting themes easier, NetBSD takes a stand against code generated by chatbots |
• Issue 1070 (2024-05-13): Damn Small Linux 2024, hiding kernel messages during boot, Red Hat offers AI edition, new web browser for UBports, Fedora Asahi Remix 40 released, Qubes extends support for version 4.1 |
• Issue 1069 (2024-05-06): Ubuntu 24.04, installing packages in alternative locations, systemd creates sudo alternative, Mint encourages XApps collaboration, FreeBSD publishes quarterly update |
• Issue 1068 (2024-04-29): Fedora 40, transforming one distro into another, Debian elects new Project Leader, Red Hat extends support cycle, Emmabuntus adds accessibility features, Canonical's new security features |
• Issue 1067 (2024-04-22): LocalSend for transferring files, detecting supported CPU architecure levels, new visual design for APT, Fedora and openSUSE working on reproducible builds, LXQt released, AlmaLinux re-adds hardware support |
• Issue 1066 (2024-04-15): Fun projects to do with the Raspberry Pi and PinePhone, installing new software on fixed-release distributions, improving GNOME Terminal performance, Mint testing new repository mirrors, Gentoo becomes a Software In the Public Interest project |
• Issue 1065 (2024-04-08): Dr.Parted Live 24.03, answering questions about the xz exploit, Linux Mint to ship HWE kernel, AlmaLinux patches flaw ahead of upstream Red Hat, Calculate changes release model |
• Issue 1064 (2024-04-01): NixOS 23.11, the status of Hurd, liblzma compromised upstream, FreeBSD Foundation focuses on improving wireless networking, Ubuntu Pro offers 12 years of support |
• Issue 1063 (2024-03-25): Redcore Linux 2401, how slowly can a rolling release update, Debian starts new Project Leader election, Red Hat creating new NVIDIA driver, Snap store hit with more malware |
• Issue 1062 (2024-03-18): KDE neon 20240304, changing file permissions, Canonical turns 20, Pop!_OS creates new software centre, openSUSE packages Plasma 6 |
• Issue 1061 (2024-03-11): Using a PinePhone as a workstation, restarting background services on a schedule, NixBSD ports Nix to FreeBSD, Fedora packaging COSMIC, postmarketOS to adopt systemd, Linux Mint replacing HexChat |
• Issue 1060 (2024-03-04): AV Linux MX-23.1, bootstrapping a network connection, key OpenBSD features, Qubes certifies new hardware, LXQt and Plasma migrate to Qt 6 |
• Issue 1059 (2024-02-26): Warp Terminal, navigating manual pages, malware found in the Snap store, Red Hat considering CPU requirement update, UBports organizes ongoing work |
• Issue 1058 (2024-02-19): Drauger OS 7.6, how much disk space to allocate, System76 prepares to launch COSMIC desktop, UBports changes its version scheme, TrueNAS to offer faster deduplication |
• Issue 1057 (2024-02-12): Adelie Linux 1.0 Beta, rolling release vs fixed for a smoother experience, Debian working on 2038 bug, elementary OS to split applications from base system updates, Fedora announces Atomic Desktops |
• Issue 1056 (2024-02-05): wattOS R13, the various write speeds of ISO writing tools, DSL returns, Mint faces Wayland challenges, HardenedBSD blocks foreign USB devices, Gentoo publishes new repository, Linux distros patch glibc flaw |
• Issue 1055 (2024-01-29): CNIX OS 231204, distributions patching packages the most, Gentoo team presents ongoing work, UBports introduces connectivity and battery improvements, interview with Haiku developer |
• Issue 1054 (2024-01-22): Solus 4.5, comparing dd and cp when writing ISO files, openSUSE plans new major Leap version, XeroLinux shutting down, HardenedBSD changes its build schedule |
• Issue 1053 (2024-01-15): Linux AI voice assistants, some distributions running hotter than others, UBports talks about coming changes, Qubes certifies StarBook laptops, Asahi Linux improves energy savings |
• Issue 1052 (2024-01-08): OpenMandriva Lx 5.0, keeping shell commands running when theterminal closes, Mint upgrades Edge kernel, Vanilla OS plans big changes, Canonical working to make Snap more cross-platform |
• Issue 1051 (2024-01-01): Favourite distros of 2023, reloading shell settings, Asahi Linux releases Fedora remix, Gentoo offers binary packages, openSUSE provides full disk encryption |
• Issue 1050 (2023-12-18): rlxos 2023.11, renaming files and opening terminal windows in specific directories, TrueNAS publishes ZFS fixes, Debian publishes delayed install media, Haiku polishes desktop experience |
• Issue 1049 (2023-12-11): Lernstick 12, alternatives to WINE, openSUSE updates its branding, Mint unveils new features, Lubuntu team plans for 24.04 |
• Issue 1048 (2023-12-04): openSUSE MicroOS, the transition from X11 to Wayland, Red Hat phasing out X11 packages, UBports making mobile development easier |
• Issue 1047 (2023-11-27): GhostBSD 23.10.1, Why Linux uses swap when memory is free, Ubuntu Budgie may benefit from Wayland work in Xfce, early issues with FreeBSD 14.0 |
• Issue 1046 (2023-11-20): Slackel 7.7 "Openbox", restricting CPU usage, Haiku improves font handling and software centre performance, Canonical launches MicroCloud |
• Issue 1045 (2023-11-13): Fedora 39, how to trust software packages, ReactOS booting with UEFI, elementary OS plans to default to Wayland, Mir gaining ability to split work across video cards |
• Full list of all issues |
Star Labs |
Star Labs - Laptops built for Linux.
View our range including the highly anticipated StarFighter. Available with coreboot open-source firmware and a choice of Ubuntu, elementary, Manjaro and more. Visit Star Labs for information, to buy and get support.
|
Random Distribution |
Fedora
Fedora Linux (formerly Fedora, formerly Fedora Core) is a Linux distribution developed by the community-supported Fedora Project and owned by Red Hat. Fedora Linux contains software distributed under a free and open-source license and aims to be on the leading edge of such technologies. Fedora has a reputation for focusing on innovation, integrating new technologies early on and working closely with upstream Linux communities. The default desktop in Fedora Linux is the GNOME desktop environment and the default interface is the GNOME Shell. Other desktop environments, including KDE, Xfce, LXDE, MATE and Cinnamon, are available. The Fedora project also distributes custom variations of Fedora called Fedora spins. These are built with specific sets of software packages, offering alternative desktop environments or targeting specific interests such as gaming, security, design, scientific computing and robotics.
Status: Active
|
TUXEDO |
TUXEDO Computers - Linux Hardware in a tailor made suite Choose from a wide range of laptops and PCs in various sizes and shapes at TUXEDOComputers.com. Every machine comes pre-installed and ready-to-run with Linux. Full 24 months of warranty and lifetime support included!
Learn more about our full service package and all benefits from buying at TUXEDO.
|
Star Labs |
Star Labs - Laptops built for Linux.
View our range including the highly anticipated StarFighter. Available with coreboot open-source firmware and a choice of Ubuntu, elementary, Manjaro and more. Visit Star Labs for information, to buy and get support.
|
|