Language Selection

English French German Italian Portuguese Spanish

OS

Linux for Beginners: Should You Make the Switch?

Filed under
OS
GNU
Linux

When it comes to operating systems, most people tend to go for the most popular options. If you’re buying a Mac computer, you probably won’t use Windows. PC owners typically choose it without giving this decision a second thought. Still, there is a low-key third option used to power many machines but is rarely used by your average PC owner.

We’re talking about Linux OS, of course. In its many variations, Linux is used as a software basis for many servers, IoT appliances, and many other devices but rarely do we see regular users opt for it. Why is that? Well, let’s take a closer look at this subject and see if this is a good OS choice for you.

Read more

The ‘Unix Way’ Has a Right Way That’s Almost a Lost Way

Filed under
OS
GNU
Linux

I’ve often extolled the philosophy of Unix, and as the title implies, I’m not about to stop. Before I learned computer science, I thought all computers were impenetrably arcane. But when I grasped Unix, through the imperfect medium of Linux, it made intuitive sense to me. Through all its evolution, at its heart Unix retains the charm that I have previously remarked on.

To touch on one such trait that is relevant to the point I want to make, I love that Unix’s simplest tools are also its most versatile. This is because its creators believed that a handful of default tools should allow users to do anything imaginable. To that end, Unix’s brain-parents also ensured effortless interoperation via the common interface of textual data. All these design choices consciously facilitated user freedom.

But this bears an important caveat: freedom has reasonable implied limits. Philosophies with the cardinal virtue of liberating adherents can never afford to shed all limitations for the simple fact that philosophies without doctrines are self-effacing. A philosophy, by existing, defines what it is and thus implicitly delineates what it is not.

This is what I call the “Daoism Paradox.” Without getting too esoteric, Daoist philosophy holds that all is a perfectly effortless way. Existence is as it must be. In fact, its nature is so all-encompassing that defining it is impossible. So how does Daoism express this if expressing Daoism is impossible?

Read more

Good News! De-Googled /e/OS Smartphones is Now Shipping to the US and Canada

Filed under
OS
Gadgets

The de-googled Android fork /e/OS is a passionate step towards removing Google from your daily driver (i.e. your smartphone).

Considering they’re also working on a privacy-friendly Siri alternative, /e/OS is particularly an exciting pitch for the future smartphones without relying on Google.

While /e/ smartphones have been around for a while, it still is not tailored for everyone depending on various requirements for daily activities that you do on a smartphone. I’d suggest doing your research before making a purchase.

However, there’s good news that /e/ smartphones will now also be shipping to the USA and Canada.

Read more

Quark 20.04 review

Filed under
OS
Reviews

Quark is a fairly new project and this is its first stable release. We don’t usually review such young projects, but we were lured in by its polished Windows 10 desktop replica.

In a nutshell, think of Quark as Q4OS working on top of Ubuntu LTS, or more accurately Kubuntu. The developers tell us that their objective with Quark is to bring Q4OS goodness to Ubuntu users. Because Q4OS is based on Debian, it didn’t take the developers much effort to compile the Q4OS tools for Ubuntu.

Read more

Hands-on with KaOS Linux - An Independent KDE Plasma Desktop Distribution

Filed under
OS
KDE
Linux

I have spent some time looking at independent Linux distributions – that means those that are built from scratch and not derived from one of the larger, generally better-known distributions (Debian, Ubuntu, Arch, etc.), such as Solus, which I wrote about earlier. This time I am going to look at KaOS Linux.

The screen shot above shows the initial display of a freshly installed KaOS system. If you are not familiar with the side-panel orientation used here, it is basically the same as the traditional bottom or top panel desktop, but with everything "standing on end". The complete desktop menu is at the top of the panel, just click on the "K" symbol (the desktop menu is open in this screen shot); the common application launchers are just below that, and the controls for things like the network, volume, bluetooth, network and such are at the bottom.

Read more

Fuzix Unix-like operating system ported to Raspberry Pi Pico and ESP8266

Filed under
OS
Hardware

The Raspberry Pi Pico is not compatible with Linux, but now supports another Unix-like operating system known as Fuzix. Alan Cox’s Fuzix is a Unix-like operating system for older devices with less performance capacity. David Given’s two recent posts have brought to the attention about the operating system’s compatibility with ESP8266 MCU and Raspberry Pi Pico.

Fuzix operating system has a kernel which is the central core of the system. Also, it has a C compiler and a set of core applications similar to the UNIX filesystem. The Raspberry Pi Pico port comes with many benefits like a well-structured Unix filesystem with its compatibility for SD cards through the SPI interface. Hence, supporting the Fuzix operating system. The full set of Fuzix binaries is available through a serial console to UART0.

Read more

Announcing Oracle Solaris 11.4 SRU30

Filed under
OS

We've just released SRU30 for Oracle Solaris 11.4. It is available via 'pkg update' from the support repository or by downloading the SRU from My Oracle Support Doc ID 2433412.1.

Read more

Also: Oracle Solaris 11.4 SRU30 Is The Biggest Update We've Seen In A While

Sailfish OS Koli

Filed under
OS
Gadgets

  • Fourth generation of Sailfish OS is here!

    We’ve come a long way, since Sailfish OS was first introduced in 2013. Now as we enter the 4th generation with Sailfish OS, the secure platform for trusted mobile solutions, we can proudly say that our product is in great shape and ready to expand to new frontiers! After Sailfish 3 was launched many big developments have happened that have have impacted Jolla, Sailfish OS, our partners with us, and all the daily Sailfish users.

    [...]

    The first Sailfish 4 software release, Koli, is today made available to all Sailfish users. You’re welcome to read more details from the Koli blog post, which our software engineer David Llewellyn-Jones has crafted.

    To celebrate this milestone Sailfish 4 release, we’ve also just published a major update to the Sailfish OS website to show better and more visually what this great alternative OS is all about – be sure to check out that as well!

  • Sailfish OS Koli is now available

    No doubt you’ll already have read about the transition of Sailfish OS into its fourth generation. And that, of course, also means a new Sailfish OS release. We’re very pleased to announce Sailfish OS 4.0.1 Koli, one of our biggest Sailfish releases for a long time. There are far too many improvements to cover all of them in detail here – you can check details from the release notes. In line with our version 4 naming, we’ve chosen to look at four significant improvements below.

    But before getting in to that, you’ll of course want to know about Koli. The Koli National Park is in the North Karelia region of Finland in the east, hugging the western shore of Lake Pielinen, which you can see in the update photo. It’s not hard to see why the beautiful vistas provided inspiration for Jean Sibelius, composer of the Finnish national anthem. The photograph also shows the characteristic white quartzite on the Koli “vaara” (amongst the many words for “hill” in Finnish, “vaara” is the second smallest).

Introducing the Linux Mint Devuan Edition

Filed under
OS

The Mint project has been a long-time favorite among Linux users who are mainly home users. Its friendly and common sense approach to a distribution appeals to many people who want to run something with the Linux kernel on their desktop. There's ample testimony of this, from the inception and creation of the Cinnamon desktop as common sense, traditional but still sleek and modern alternative to the evolving desaster and dumbing-down assault from other desktops at the time to coming up with great little tools like the Warpinator for file sharing on a LAN, the Hypnotix IPTV app and other little improvements to make things just a little easier, for the average Joe and the Techie who just wants to get things done alike.

For various reasons I am one of the very small percentile who happen to prefer the Debian Edition over the regular Ubuntu derived offering, which is almost identical in features though. For example, shortly after the release of Linux Mint 20.1 we saw all the small improvements and additions trickle down to LMDE4. Within days we received Cinnamon 4.8.6, including the new ability to add files and folders to Favorites in Nemo file manager which would be reflected in the menu and on the panel, Hypnotix, the Warpinator and new themes and backgrounds through the update channel. I think the newly refereshed icon theme was even trialled first in LMDE. It is definitely not a step child.

There's only one thing wrong with LMDE and that is that it's based on Debian rather than on Devuan with its more traditional and predictable init. So I set out on a little experiment to build a LMDE-like system on top of Devuan and what can I say, it works very well. Steps are outlined here on the LM forum.

Read more

Devuan Beowulf 3.1.0 point release

Filed under
OS

Once again the Veteran Unix Admins salute you on this day commemorating six years since the first Devuan pre-alpha Valentine's Day release in 2015!

Devuan Beowulf 3.1.0 point release installer ISOs, desktop-live, and minimal-live isos are now available. Note that ARM and virtual images are not updated in this release.

[...]

We wish to thank all of you for the incredible support given to this development effort, which continues to make Devuan a useful and reliable base distribution.

Read more

Also: Devuan 3.1 Released - Debian Fork Now Offers Runit Plus Sysvinit, OpenRC

Syndicate content

More in Tux Machines

Canonical Chooses Google’s Flutter UI SDK to Build Future Ubuntu Apps

For those not in the known, Flutter is an open-source UI SDK (software development kit) created by Google to helps those who want to build quick and modern applications for a wide-range of operating systems, including Android, Linux, Mac, iOS, Windows, Google Fuchsia, that work across desktop, mobile, and the Web. A year ago, Canonical teamed up with Google to make the Flutter SDK available on Linux as Snap, the universal software deployment and package management system for Ubuntu `and other GNU/Linux distributions, allowing those interested in building beautiful apps on the Linux desktop. Read more

Python: Security and NumPy 1.20 Release

  • Python Package Index nukes 3,653 malicious libraries uploaded soon after security shortcoming highlighted

    The Python Package Index, also known as PyPI, has removed 3,653 malicious packages uploaded days after a security weakness in the use of private and public registries was highlighted. Python developers use PyPI to add software libraries written by other developers in their own projects. Other programming languages implement similar package management systems, all of which demand some level of trust. Developers are often advised to review any code they import from an external library though that advice isn't always followed. Package management systems like npm, PyPI, and RubyGems have all had to remove subverted packages in recent years. Malware authors have found that if they can get their code included in popular libraries or applications, they get free distribution and trust they haven't earned. Last month, security researcher Alex Birsan demonstrated how easy it is to take advantage of these systems through a form of typosquatting that exploited the interplay between public and private package registries.

  • A pair of Python vulnerabilities [LWN.net]

    Two separate vulnerabilities led to the fast-tracked release of Python 3.9.2 and 3.8.8 on February 19, though source-only releases of 3.7.10 and 3.6.13 came a few days earlier. The vulnerabilities may be problematic for some Python users and workloads; one could potentially lead to remote code execution. The other is, arguably, not exactly a flaw in the Python standard library—it simply also follows an older standard—but it can lead to web cache poisoning attacks. [...] [Update: As pointed out in an email from Moritz Muehlenhoff, Python 2.7 actually is affected by this bug. He notes that python2 on Debian 10 ("Buster") is affected and has been updated. Also, Fedora has a fix in progress for its python2.7 package.]

  • NumPy 1.20 has been released

    NumPy is a Python library that adds an array data type to the language, along with providing operators appropriate to working on arrays and matrices. By wrapping fast Fortran and C numerical routines, NumPy allows Python programmers to write performant code in what is normally a relatively slow language. NumPy 1.20.0 was announced on January 30, in what its developers describe as the largest release in the history of the project. That makes for a good opportunity to show a little bit about what NumPy is, how to use it, and to describe what's new in the release. [...] NumPy adds a new data type to Python: the multidimensional ndarray. This a container, like a Python list, but with some crucial differences. A NumPy array is usually homogeneous; while the elements of a list can be of various types, an ndarray will, typically, only contain a single, simple type, such as integers, strings, or floats. However, these arrays can instead contain arbitrary Python objects (i.e. descendants of object). This means that the elements will, for simple data types, all occupy the same amount of space in memory. The elements of an ndarray are laid out contiguously in memory, whereas there is no such guarantee for a list. In this way, they are similar to Fortran arrays. These properties of NumPy arrays are essential for efficiency because the location of each element can be directly calculated. Beyond just adding efficient arrays, NumPy also overloads arithmetic operators to act element-wise on the arrays. This allows the Python programmer to express computations concisely, operating on arrays as units, in many cases avoiding the need to use loops. This does not turn Python into a full-blown array language such as APL, but adds to it a syntax similar to that incorporated into Fortran 90 for array operations.

4 Best Free and Open Source Graphical MPD Clients

MPD is a powerful server-side application for playing music. In a home environment, you can connect an MPD server to a Hi-Fi system, and control the server using a notebook or smartphone. You can, of course, play audio files on remote clients. MPD can be started system-wide or on a per-user basis. MPD runs in the background playing music from its playlist. Client programs communicate with MPD to manipulate playback, the playlist, and the database. The client–server model provides advantages over all-inclusive music players. Clients can communicate with the server remotely over an intranet or over the Internet. The server can be a headless computer located anywhere on a network. There’s graphical clients, console clients and web-based clients. To provide an insight into the quality of software that is available, we have compiled a list of 4 best graphical MPD clients. Hopefully, there will be something of interest here for anyone who wants to listen to their music collection via MPD. Here’s our recommendations. They are all free and open source goodness. Read more

LWN on Kernel: 5.12 Merge, Lockless Algorithms, and opy_file_range()

  • 5.12 Merge window, part 1 [LWN.net]

    The beginning of the 5.12 merge window was delayed as the result of severe weather in the US Pacific Northwest. Once Linus Torvalds got going, though, he wasted little time; as of this writing, just over 8,600 non-merge changesets have been pulled into the mainline repository for the 5.12 release — over a period of about two days. As one might imagine, that work contains a long list of significant changes.

  • An introduction to lockless algorithms [LWN.net]

    Low-level knowledge of the memory model is universally recognized as advanced material that can scare even the most seasoned kernel hackers; our editor wrote (in the July article) that "it takes a special kind of mind to really understand the memory model". It's been said that the Linux kernel memory model (and in particular Documentation/memory-barriers.txt) can be used to frighten small children, and the same is probably true of just the words "acquire" and "release". At the same time, mechanisms like RCU and seqlocks are in such widespread use in the kernel that almost every developer will sooner or later encounter fundamentally lockless programming interfaces. For this reason, it is a good idea to equip yourself with at least a basic understanding of lockless primitives. Throughout this series I will describe what acquire and release semantics are really about, and present five relatively simple patterns that alone can cover most uses of the primitives.

  • How useful should copy_file_range() be? [LWN.net]

    Its job is to copy len bytes of data from the file represented by fd_in to fd_out, observing the requested offsets at both ends. The flags argument must be zero. This call first appeared in the 4.5 release. Over time it turned out to have a number of unpleasant bugs, leading to a long series of fixes and some significant grumbling along the way. In 2019 Amir Goldstein fixed more issues and, in the process, removed a significant limitation: until then, copy_file_range() refused to copy between files that were not located on the same filesystem. After this patch was merged (for 5.3), it could copy between any two files, falling back on splice() for the cross-filesystem case. It appeared that copy_file_range() was finally settling into a solid and useful system call. Indeed, it seemed useful enough that the Go developers decided to use it for the io.Copy() function in their standard library. Then they ran into a problem: copy_file_range() will, when given a kernel-generated file as input, copy zero bytes of data and claim success. These files, which include files in /proc, tracefs, and a large range of other virtual filesystems, generally indicate a length of zero when queried with a system call like stat(). copy_file_range(), seeing that zero length, concludes that there is no data to copy and the job is already done; it then returns success. But there is actually data to be read from this kind of file, it just doesn't show in the advertised length of the file; the real length often cannot be known before the file is actually read. Before 5.3, the prohibition on cross-filesystem copies would have caused most such attempts to return an error code; afterward, they fail but appear to work. The kernel is happy, but some users can be surprisingly stubborn about actually wanting to copy the data they asked to be copied; they were rather less happy.