Language Selection

English French German Italian Portuguese Spanish

About Tux Machines

Saturday, 17 Aug 19 - Tux Machines is a community-driven public service/news site which has been around for over a decade and primarily focuses on GNU/LinuxSubscribe now Syndicate content

Search This Site

Quick Roundup

Type Title Author Repliessort icon Last Post
Story Do You Have an Xbox? srlinuxx 11/04/2005 - 3:35am
Story This Week at the Movies: Hitch & The Aviator srlinuxx 11/04/2005 - 3:34am
Story Latest On the Browser Wars srlinuxx 11/04/2005 - 3:32am
Story Legislation to regulate games srlinuxx 11/04/2005 - 3:31am
Story Typing Style Can Be Password srlinuxx 11/04/2005 - 3:30am
Story Hey Coool, a Virtual Tour srlinuxx 11/04/2005 - 3:30am
Story Experiences of a Linux Newbie srlinuxx 11/04/2005 - 3:29am
Story June Cleaver meets Fortune 500 srlinuxx 11/04/2005 - 3:29am
Story Predictions of Gloom and Doom srlinuxx 11/04/2005 - 3:29am
Story EBay eyes open source srlinuxx 11/04/2005 - 3:28am

Oracle Is Working To Upstream More Of DTrace To The Linux Kernel & eBPF Implementation

Filed under

While DTrace prospects for the Linux kernel are no longer viewed as magical or groundbreaking as they once were more than a decade ago, Oracle continues to work on its DTrace port to Linux and extending its reach beyond just their "Unbreakable Enterprise Kernel" for their RHEL-cloned Oracle Linux. Oracle now says they are working towards upstreaming more work as well as getting an eBPF-based implementation for the kernel.

On Wednesday, Oracle published a blog post outlining DTrace on Fedora. Getting DTrace working on Fedora isn't trivial: currently it requires building a patched version of the Linux kernel and also building the DTrace user-space utilities. That's how it currently is for most or all Linux distributions besides Oracle Linux with UEK.

Read more

OpenBSD and FreeBSD Updates

Filed under
  • OpenBSD -stable binary packages

    The OpenBSD base system has received binary updates for security and some other important problems in the base OS through syspatch(8) for the last few releases.

    We are pleased to announce that we now also provide selected binary packages for the most recent release. These are built from the -stable ports tree which receives security and a few other important fixes: [...]

  • FreeBSD Around the World

    One of our major goals this year is to increase FreeBSD awareness around the world. I’m excited about upcoming events, like the Linux Foundation’s Open Source Summit, where we are giving a talk on FreeBSD. But first, I wanted to highlight some of the events we’ve attended over the past few months. I have been pretty bad about writing event reports, so I’m summarizing some of them here. It’s a good thing our Marketing Director isn’t local, otherwise she would be camping in our office forcing me to write the reports.

New Finnish government to promote open source

Filed under

The new government of Finland, formally appointed on 6 June, will promote the use of open source software for public services’ IT systems. The preference for open source, open (programming) interfaces and open data is part of the Government Programme that was published on 3 June. A machine translation from the Government Programme entitled: “A participatory and knowledgeable Finland - a socially, economically and ecologically sustainable society”: [...]

Read more

Also: >Why Los Angeles decided to open source its future

Programming: LWN on Python, LLVM 9.0 RC2

Filed under
  • Escape sequences in Python strings

    The three-quote version allows for simpler multi-line strings and can use three double quotes instead if the programmer wants. But strings can also contain escape sequences, such as '\n' for newlines, '\t' for tabs, and so on. That means the backslash has a special meaning, so it needs to be escaped (i.e. '\\') if it is to be used literally, as well. A few other characters, notably a real newline or an embedded quote of the type used to delimit the string, also need to be backslash escaped.
    But what to do about string literals with invalid escape sequences in them? A programmer who has put '\latex' as part of a string literal (to pick a not entirely random example) presumably actually wants '\\latex', which is what Python currently translates it to. Python does emit a DeprecationWarning in that case, but the warning was invisible by default until Python 3.7. However, that same programmer probably does not want '\tan(x)' to turn into a tab plus 'an(x)', but that is exactly what happens.

    The change for Python 3.8 is to further elevate the warning to a SyntaxWarning, with plans to turn that into a SyntaxError in Python 3.9. A bug report filed in February 2018 shows the path of the change. But shortly after the Python 3.8 beta releases were made, Raymond Hettinger reported that he was seeing the warnings "pop up from time to time" from various third-party packages. Aaron Meurer concurred with Hettinger and pointed out a number of other problems he had encountered.

  • LLVM 9.0-RC2 Released While LLVM 10 Switches To C++14

    LLVM 9.0 Release Candidate 2 is now available for testing while LLVM 10.0 has switched its code-base over to supporting C++14.

    Hans Wennborg announced the second and expected final release candidate for the LLVM 9.0 release and associated sub-projects like Clang 9.0. LLVM 9.0 is running about one week behind schedule at this point but there's still time to get it to ship on-time in two weeks, otherwise it's looking like it should land just slightly belated in early September.

  • [llvm-dev] [9.0.0 Release] Release Candidate 2 is here
    Hello everyone,
    9.0.0-rc2 was tagged yesterday from the release_90 branch at r368683.
    In the Git monorepo it's available as the llvmorg-9.0.0-rc2 tag.
    Source code and docs are available at
    Binaries will be added as they become available.
    The tag went in roughly one week behind schedule (see "Upcoming
    Releases" at, but there are still two weeks left to
    the planned release date.
    Please file bug reports for any issues you find and mark them blocking Please also look at the blockers and see if
    there's anything you can help with -- there are several bugs which
    lack traction at the moment.
    Release testers: please start your engines, run the script, share your
    results, and upload binaries.
    Many thanks,

Kernel: AMD Graphics and LWN Articles Outside Paywall

Filed under
  • AMD Renoir Lands In Mesa's RadeonSI - Further Pointing To Vega, Not Navi

    Last week AMD sent out their initial Linux graphics driver support for next-gen Renoir APUs. Those Linux kernel bits will land with AMDGPU in the upcoming Linux 5.4 cycle while the RadeonSI changes were merged today marking that OpenGL support as a new feature for the upcoming Mesa 19.2.

    Renoir leaks up to this point indicated it would be a 7nm APU based on Zen 2 with Navi graphics. The Zen 2 cores still could be accurate, but the graphics driver patches from last week and the RadeonSI OpenGL driver support today all point to it being Vega.

  • An end to implicit fall-throughs in the kernel

    The C switch statement has, since the beginning of the language, required the use of explicit break statements to prevent execution from falling through from one case to the next. This behavior can be a useful feature, allowing for more compact code, but it can also lead to bugs. The effort to rid the kernel of implicit fall-through coding patterns came to a conclusion with the 5.3-rc2 release, where the last cases were fixed. There is a good chance that these fixes will have to be redone in the future, though.

    The problem with C's fall-through behavior is that it is implicit, with no indication of whether the behavior is intended or not. Developers learn (the hard way, sometimes) to end each case with a break statement as a matter of habit, but it's still an easy thing to forget, and the resulting code is seen by the compiler as being entirely valid. A forgotten break almost certainly introduces a bug, even if it might not manifest itself for years. Many developers have had reason to wish that the C language required an explicit indication by the programmer that fall-through behavior is desired.

  • vDSO, 32-bit time, and seccomp

    The seccomp() mechanism is notoriously difficult to use. It also turns out to be easy to break unintentionally, as the development community discovered when a timekeeping change meant to address the year-2038 problem created a regression for seccomp() users in the 5.3 kernel. Work is underway to mitigate the problem for now, but seccomp() users on 32-bit systems are likely to have to change their configurations at some point.

    The virtual dynamic shared object (vDSO) mechanism is an optimization provided by the kernel to reduce the cost of certain frequently used system calls. The vDSO is a small region of kernel-provided memory that is normally mapped into the address space of every user-space process; it contains implementations of system calls that can, in some circumstances at least, do their work in a user-space context. That allows the caller to avoid making a real system call and, thus, to avoid the cost of a context switch into kernel mode. System calls related to timekeeping, such as gettimeofday() are implemented in the vDSO, since they can often run quickly in user space and they tend to be called frequently.

    The vDSO has generally been implemented in an architecture-specific way, even though the functions it performs are mostly the same across architectures. In the 5.2 development cycle, Vincenzo Frascino added a generic vDSO implementation that factored out much of the architecture-specific code into a single implementation that could be used on all architectures. During the 5.3 merge window, the x86 architecture switched over to the generic version, and all was well — or so it seemed.

Programming: Lisp, CTF, and Python

Filed under
  • Racket: Lisp for learning

    Lisp is one of the oldest programming languages still in use today—Fortran is older by a year, but the Lisp community (or communities) seems to be the more dynamic of the two. In any case, the Lisp landscape has a lot of nooks and crannies to explore; I recently ran into a dialect that I had not encountered before: Racket. That may simply reflect ignorance on my part, but, while I was introduced to Lisp (too) many moons ago, I had not really paid it much mind until I sat in on a talk about Lisp at earlier this year. Something about Racket caught my eye, so I did some poking around to see what it is all about.

    The dynamism in the Lisp world also means that there are lots of projects, subprojects, dialects, descendants, and so on to keep straight. Lisp itself has split into three main dialects: Common Lisp, Scheme, and Clojure. Common Lisp and Scheme each have multiple implementations. Racket is based on Scheme; it was known as "PLT Scheme" (after the PLT organization behind the language) until version 5.0 was released in 2010.

  • The Compact C Type Format in the GNU toolchain

    The Compact C Type Format (CTF) is a way of representing information about a binary program; it can be seen as a simpler alternative to the widely used DWARF format. While CTF has been around for some years, it has not seen much use in the Linux world. According to Elena Zannoni, who talked about CTF at the 2019 Open Source Summit Japan, that situation may be about to change; work is underway to bring CTF support to the GNU tools shipped universally with Linux systems.
    Compiling a program into its binary form discards a lot of information found in the source code; that information can be needed when the time comes to track down a bug in the compiled program. To facilitate this work, compilers create debugging information that records the names and types of the variables used by a program, along with function names, the line numbers in the source program, and more; this information is then stored in one of many formats. DWARF is by far the most commonly used format on Unix-like systems, but it is not the only one.

  • Append Vs. Extend in Python List

    In this tutorial, you’ll explore the difference between append and extend methods of Python List. Both these methods are used to manipulate the lists in their specific way.

    The append method adds a single or a group of items (sequence) as one element at the tail of a list. On the other hand, the extend method appends the input elements to the end as part of the original list.

    After reading the above description about append() and extend(), it may seem a bit confusing to you. So, we’ll explain each of these methods with examples and show the difference between them.

  • Accessing Remote Data with a Generalized File System

    For context, we are talking about the low-level business of getting raw bytes from some location. We are used to doing that on a local disk, but communicating with other storage mechanisms can be tricky, and certainly different in every case. For example, consider the different ways you would go about reading files from Hadoop, a server for which you have SSH credentials, or for a cloud storage service like Amazon S3. Since these are important to answer when dealing with big data, we developed code to complement Dask just for the job, and released packages like s3fs and gcsfs.

    We found that those packages, which were built and released standalone, were popular even without Dask, partly because they were being used by other PyData libraries such as pandas and xarray. So we realised that the general idea of dealing with arbitrary file systems, as well as helpful code to map URLs to bytes, should not be buried in Dask, but should be made open and available to everyone, even if they are not interested in parallel/out-of-core computing.

Mozilla's WebThings Gateway now available for Turris Omnia router

Filed under

The first step for adding devices is to put them in a mode that is receptive to a new pairing, one at a time, then to tell the Gateway web application to scan for them. Once they are recognized (and renamed to something that makes more sense to the user), there are a number of different options. The device state can be queried (e.g. is a door open or a light on) or changed, for example; some devices may require an add-on in order to access them. Users can also create a floor plan of their house to place icons of the devices in the right locations.

Beyond that, there is a rules engine where automated changes can be programmed. So if the user wants a certain light to go on or off at a specific time, for example, that can be done. The interface is icon oriented, which should make it easier for less technical users. There is also an experimental Smart Assistant feature that allows voice or typed commands like "turn on the kitchen light" to be handled. The voice data is sent to Google's voice assistant API; the text commands are handled locally on the Gateway device. It is not clear why the assistant is not using Mozilla's speech-processing engine.

New for version 0.9 is a Notifier add-on that will send an email or SMS text message based on rules that the user specifies, so motion sensor activity could trigger a text message, for example. Accompanying the Gateway release is the 0.12 release of the WebThings Framework. It has made some changes to the Web Thing API to more closely align it with the recent W3C WoT Thing Description draft.

Centralizing IoT handling on a system controlled by the user is an admirable goal. The IoT world has so far proven to be an insecure morass of competing lock-in plays, or so it seems to this cynical observer. Wresting control of the devices from the manufacturers and placing it in the hands of their owners seems like an excellent step forward. Hopefully Mozilla sticks with this project for the long haul and that it gets the community support that it surely deserves—and needs.

Read more

A Collection Of The Ultimate Web Browsers For Ubuntu

Filed under

Web browsers are vital if you're going to have any sort of online experience on your computer. There are hundreds of choices out there, as well as the standard browser which will come pre-installed on your computer, but that's often not the best choice, and it can be quite an intimidating task to sift through every dodgy review site on the internet to try and find the right browser for you. Ending up with a Downloads folder filled with installers and a desktop littered with icons isn't what you want or need, so this collection of web browsers for Ubuntu should be able to help you decide on which one you want before you go and download every single browser available on the internet.

Read more

Immutable Linux with Silverblue: My favorite superpower

Filed under
Red Hat

I’m a recent but dedicated convert to Silverblue, which I run on my main home laptop, and which I’ll be putting onto my work laptop when I’m due a hardware upgrade in a few months’ time. I wrote an article about Silverblue over at Enable Sysadmin, and over the weekend, I moved the laptop that one of my kids has over to it as well. In terms of usability, look, and feel, Silverblue is basically a version of Fedora. There’s one key difference, however, which is that the operating system is mounted read-only, meaning that it’s immutable.

What does "immutable" mean? It means that it can’t be changed. To be more accurate, in a software context, it generally means that something can’t be changed during run time.

Read more

Guix Makes Bitcoin Core Development More Trustless

Filed under

According to Dong, “Guix allows users to verify that the Bitcoin Core client they download corresponds exactly to the code that Bitcoin Core developers write. It mitigates attacks that target the way we turn our codebase into the client executables we release.”

In spite of the clear focus on the needs of developers, Guix is also something that users may need and want to use if they choose to be cautious about the software that they run.

At press time, Guix is only available for Ubuntu builds.

Read more

13MP MIPI-CSI2 cam plugs into Variscite i.MX8M board

Filed under

E-con has launched a 13-megapixel, 4-lane MIPI-CSI2 “e-CAM130_iMX8M” camera designed to work with Variscite’s DART-MX8M eval kit. Future models will support Variscite’s i.MX8M Mini, i.MX8X and i.MX8 QuadMax based boards.

E-con Systems announced a collaboration with embedded board vendor Variscite to provide cameras optimized for its Linux-driven, NXP i.MX8-powered compute modules. For starters, E-con has launched a $199 e-CAM130_iMX8M camera that connects to the evaluation kit for Variscite’s i.MX8M-equipped DART-MX8M module.

Read more

Android Leftovers

Filed under

Enthusiasts Plan Open-Source Raspberry Pi Tablet for 2019

Filed under

CutiePi's website claims the device will offer "a complete Raspberry Pi in a tablet form factor, minus the trouble of connecting monitor or power supply," for people to experiment with. We could see the CutiePi appealing to Raspberry Pi users curious about the platform's potential in new form factors. Its status as a completely open-source project could also attract the attention of people who dislike proprietary hardware.

The device itself currently includes an 8-inch display in a 209 x 124 x 12mm enclosure its creators said can be 3D-printed. Everything is powered by a "custom designed CM3 Lite carrier board" that (as the name suggests) features a Raspberry Pi Compute Module 3 Lite. That product is essentially a Raspberry Pi Model 3 with a BCM2837 processor and 1GB RAM in a different form factor that's supposed to allow it to be used for industrial applications.
Relying on the Compute Model 3 Lite might be a bit of a letdown for Raspberry Pi enthusiasts hoping the CutiePi would offer more power. The Raspberry Pi Foundation released the Compute Model 3 Lite in 2017; the better-performing Compute Model 3+ debuted in January. The newer model, which is based on the Raspberry Pi Model 3B+, includes an improved thermal management system over its predecessor, as well as the BCM2837B0 processor.

CutiePi will also include a custom user interface on top of Raspbian made specifically for touchscreen devices. The tablet's creators said they're hoping to augment built-in apps, including a namesake terminal emulator built on top of Qt, with Raspbian PIXEL apps via XWayland. Projects created for the Raspberry Pi should also be relatively easy to port to CutiePi; that's the entire point of building a tablet on top of the existing pastry-evoking platform.

Read more

Mozilla: Secure Connections, Localisation and Latest on Rust

Filed under
  • Mozilla revamps Firefox's HTTPS address bar information

    Mozilla plans to make changes to the information that the organization's Firefox browser displays in its address bar when it connects to sites.

    Firefox displays an i-icon and a lock symbol currently when connecting to sites. The i-icon displays information about the security of the connection, content blocking, and permissions, the lock icon indicates the security state of the connection visually. A green lock indicates a secure connection and if a site has an Extended Validation certificate, the name of the company is displayed in the address bar as well.

    Mozilla plans to make changes to the information that is displayed in the browser's address bar that all Firefox users need to be aware of.

  • Mozilla Localization (L10N): L10n Report: August Edition

    We’re quickly approaching the deadline for Firefox 69. The last day to ship your changes in this version is August 20, less than a week away.

    A lot of content targeting Firefox 70 already landed and it’s available in Pontoon for translation, with more to come in the following days. Here are a few of the areas where you should focus your testing on.

  • This Week In Rust: This Week in Rust 299

today's leftovers

Filed under

How to Distro Hop With a Web Browser

Filed under

Getting familiar with Linux up close and personal is easy to do with a free service provided by, a website that allows testing without ISO downloads or local installations.

Are you a wandering Linux distro hopper looking for a way to streamline the selection process? Are you a Windows or macOS user who wants to try Linux?

Linux has countless distributions and dozens of desktop environments. How can you choose?

Now you can find the perfect combination of distro and desktop without leaving the Web browser running on your current operating system. Just point that browser to

The DistroTest website is a relatively new online Linux distro-vetting system. It even includes some BSD offerings if you have a hankering to venture into an operating system that is similar to Linux.

Read more

Also: Highlights of YaST Development Sprint 82

Linux on Devices: Aitech Defense Systems and Kontron

Filed under
  • Proven Linux OS Expanded to Aitech's Multi-core Remote I/O Subsystem

    Chatsworth, Calif. July 2019 - Aitech Defense Systems, Inc., a part of the Aitech Group, has ported the cost-effective, open source Linux operating system onto its intelligent Ai-RIO remote I/O interface unit (RIU). This modular small form factor (SFF) RIU internally networks up to eight expansion modules - or 'slices' - for extremely high density and low power in a compact physical space.

  • Tiny Type 10 module serves up Apollo Lake with 16GB DDR4

    Kontron’s Linux-friendly, COM Express Mini Type 10 form-factor “COMe-m4AL10” and “COMe-m4AL10 (E2)” modules are built around Apollo Lake SoCs and offer up to 16GB DDR4 and 64GB eMMC with up to -40 to 85°C (E2) support.

    Kontron announced two 84 x 55mm, Intel Apollo Lake based compute modules with 16GB DDR4. The Atom-powered, -40 to 85°C ready COMe-m4AL10 (E2) and Pentium and Celeron equipped, 0 to 60°C COMe-m4AL10 both support up to twice the RAM of the previous (circa-2017) industrial temp COMe-mAL10 (E2) and commercial COMe-mAL10 modules, which use DDR3L RAM.

Syndicate content