Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under


  • [llvm-dev] Trunk is now 13.0.0
    I've created the release/12.x branch and bumped the trunk version to 13.0.0.
    I'm planning to tag 12.0.0-rc1 on Wednesday, once I'm sure there are no major
    issues with the branch.
  • LLVM 12 Ends Feature Work With Better C++20 Support To Intel Sapphire Rapids + AMD Zen 3

    Feature development on LLVM 12.0 has ended along with associated sub-projects like Clang and libc++. Feature work now shifts to LLVM 13.0 while the LLVM 12 stable release should be out in just over one month's time. 

    LLVM release manager Tom Stellard announced on Tuesday night that the 12.x release branch has been created and the main development trunk open to LLVM 13.0 feature work. 

    LLVM 12.0-RC1 is expected to be tagged later today while a second release candidate is expected before the end of February. If all goes well, LLVM 12.0.0 will be out around the start of March. 


  • Qt and CMake: The Past, the Present and the Future

    We made a big decision to start using CMake to build Qt 6 one and a half years ago. The main reason for the decision was user feedback. Most Qt users wanted to have easier integration of their Qt projects with the rest of their software. According to the studies at that time, CMake was clearly the most commonly used build tool among Qt users - qmake aside. In addition, migrating to CMake gave us an opportunity to get rid of the maintenance burden of our internal build tools. 

    Even bigger than the decision was the effort required to migrate to CMake.  Now the essential migration work has been completed and it's time to share our findings.


  • QBSP Cookbook available for Qt 6.0

    With all the fanfare and trumping about Qt 6.0 a small but important part of documentation may have been overlooked: The Qt for Device Creation documentation got a major facelift and reorganization. As part of that we took  feedback and needs from our hardware partners and created something that can be described as a Qt Board Support Package, QBSP cookbook. 


  • Why I use the D programming language for scripting

    The D programming language is often advertised as a system programming language due to its static typing and metaprogramming capabilities. However, it's also a very productive scripting language.

    Python is commonly chosen for scripting due to its flexibility for automating tasks and quickly prototyping ideas. This makes Python very appealing to sysadmins, managers, and developers in general for automating recurring tasks that they might otherwise have to do manually.


  • GCC 11 Will Let You Use -std=c++23 But Without Turning On Any New Features - Phoronix

    A late change to GCC 11 is recognizing the -std=c++23 compiler option but without actually enabling any new features of this next major version of the C++ programming language. 

    It was just in September that the C++20 draft was approved as the latest major update to the C++ programming language. The GNU Compiler Collection has near complete coverage of C++20 with still lacking bits of the modules implementation. But while the next major iteration of C++ is still being figured out, GCC 11 will at least honor the compiler flag of "-std=c++23" or "-std=c++2b" but without actually enabling any new functionality over C++20. This is mainly for helping projects that will eventually default to using that flag but will still build cleanly with C++20 level functionality in the upcoming GCC 11 compiler release. 


  • Columnar layout with Awk



    Here’s a breakdown of a simple Awk script I wrote to format values into neatly aligned columns


    I’m organising my GitHub repositories locally by creating a directory structure representing the different GitHub servers that I use and the orgs and users that I have access to, with symbolic links at the ends of these structures pointing to where I’ve cloned the actual repositories.

  • Dancer2 0.300005 Released

    Well, it’s been a hot minute since the last release, hasn’t it? Dancer2 0.300005 has landed on CPAN and features a number of bug fixes, enhancements, and doc patches...


  • New book: Get Started with MicroPython on Raspberry Pi Pico



  • Major (but not scary) python-slackclient update in f34+

    I’ve updated python-slackclient from 2.7.3 to 3.2.1. The module has changed from slack to slack_sdk. The new version is backwards compatible for now, and will just emit deprecation warnings. The full porting guide is at:

More in Tux Machines

digiKam 7.7.0 is released

After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. Read more

Dilution and Misuse of the "Linux" Brand

Samsung, Red Hat to Work on Linux Drivers for Future Tech

The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. Read more

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.