Language Selection

English French German Italian Portuguese Spanish

About

Background

Tux Machines is a popular news site focusing on Free/libre and Open Source software, especially GNU/Linux. Founded by Susan (srlinuxx) in 2004, the site aims to share relevant news with its valued community of readers.

Scope of coverage

TuxThe site places great focus on GNU, Linux, and other intricate systems that utilise these, such as Android, Chrome OS, and Tizen. Of lesser interest are issues that relate purely to development and Free/Open Source software. Games, applications, instructional posts and proprietary software are habitually covered, but they are grouped and posted only periodically. Tux Machines is primarily focused on Linux, but it occasionally also covers BSD/UNIX, Minix, and lesser known operation systems. Some of our news sources include standards, antitrust and so on.

Contact Details

See our contacts page for up-to-date details. Communication is also facilitated by our forums.

Going Ads-free in 2013

Going forward, Tux Machines does not have ads. Instead it relies on readers' support and is run as a public service.

More in Tux Machines

Programming: Thread Synchronization, Python, C++

  • Thread Synchronization in Linux and Windows Systems, Part 1

    In modern operating systems, each process has its own address space and one thread of control. However, in practice we often face situations requiring several concurrent tasks within a single process and with access to the same process components: structures, open file descriptors, etc.

  • Intro to Black – The Uncompromising Python Code Formatter

    There are several Python code checkers available. For example, a lot of developers enjoy using Pylint or Flake8 to check their code for errors. These tools use static code analysis to check your code for bugs or naming issues. Flake8 will also check your code to see if you are adhering to PEP8, Python’s style guide.

  • Report from the February 2019 ISO C++ meeting (Library)

    Back in February, I attended the WG21 C++ standards committee meeting in rainy Kona, Hawaii (yes, it rained most of the week). This report is so late that we’re now preparing for the next meeting, which will take place mid-July in Cologne. As usual, I spent the majority of my time in the Library Working Group (for LWG; for details on the various Working Groups and Study Groups see Standard C++: The Committee). The purpose of the LWG is to formalize the specification of the C++ Standard Library, i.e. the second “half” of the C++ standard (although in terms of page count it’s closer to three quarters than half). With a new C++20 standard on the horizon, and lots of new features that people want added to the standard library, the LWG has been very busy trying to process the backlog of new proposals forwarded by the Library Evolution Working Group (LEWG). One of the main tasks at the Kona meeting was to review the “Ranges Design Cleanup” proposal. The cleanup involves a number of fixes and improvements to the new Ranges library, addressing issues that came up during the review of the previous (much larger) proposal to add the Ranges library, which is one of the biggest additions to the C++20 library (most of the other significant additions to C++20 affect the core language, without much library impact). In fact, I’d say it’s one of the biggest additions to the C++ standard library since the first standard in 1998. The Ranges library work overhauls the parts of the standard that originated in the Standard Template Library (STL), i.e. iterators, algorithms, and containers, to re-specify them in terms of C++ Concepts. This has been a multi-year effort that has now landed in the C++20 working draft, following multiple proposals and several meetings of wording review by LWG.

  • Save and load Python data with JSON

    JSON stands for JavaScript Object Notation. This format is a popular method of storing data in key-value arrangements so it can be parsed easily later. Don’t let the name fool you, though: You can use JSON in Python—not just JavaScript—as an easy way to store data, and this article demonstrates how to get started.

Android Leftovers

SysAdmin Day Sale: Get 60% off on Linux Foundation Certification & Training

To celebrate the Sysadmin day, the Linux Foundation is giving 60% off on its training courses on sysadmin, Kubernetes, Hyperledger etc. Advance your career with these certifications. Read more

Raspberry Pi 4 and Raspbian Buster: Hands-On

In my previous two posts I looked at the Raspberry Pi 4 hardware and at the procedure for installing and booting the new Raspbian Buster Operating System on the Pi 4. With those basic steps out of the way, now it's time to look at both the hardware and software in more detail. The first thing I want to mention is that when I wrote the previous post about Raspbian, I had not noticed that there is an updated version of Raspbian Buster (2019-07-10) available. This version was released sort of quietly (without the usual blog post announcing and explaining it), although there are release notes for it if you are interested. This release is extremely good news, because it fixes some of the biggest problems that I mentioned in my previous post... Read more