Language Selection

English French German Italian Portuguese Spanish

Gentoo

The future of Python build systems and Gentoo

Filed under
Development
Gentoo

Over the years, the distutils stdlib module has been used to build setup.py scripts for Python packages. In addition to the baseline functions providing a build system CLI for the package, it provided the ability to easily extend the build system. This led both to growth of heavily customized setup.py scripts as part of some packages, as well as third-party build systems based on distutils, most notably setuptools.

This eventually led to deprecation of distutils themselves (see: PEP 632). Python 3.10 is already warning of distutils deprecation, and the current plan is to remove it in Python 3.12. Ahead of that, the development has moved to a dedicated pypa/distutils repository, and the copy of that is bundled within setuptools.

setuptools still uses the stdlib distutils by default. However, some packages already switch to the bundled copy, and upstream plans on using it by default in the future (see: Porting from Distutils).

At this point, I don’t think there is an explicit need for Gentoo to act here. However, it seems reasonable to avoid using distutils as the build system for Gentoo projects. Since the setuptools copy of distutils is different from the one included in CPython (and PyPy) and at the moment it does not carry the full set of historical Gentoo patches, it probably makes sense to test package compatibility with it nevertheless.

Read more

Redcore Linux Still Aims to Bring Gentoo Linux to the Masses, Now Ships with Linux 5.14

Filed under
Linux
News
Gentoo

Over the past five years, Redcore Linux’s goal has always been to bring the power of the source-based Gentoo Linux operating system to the masses, offering users up-to-date and hardened live ISO images with the most recent KDE Plasma desktop environment and a carefully selected set of applications for office, multimedia, gaming, and Internet browsing needs.

Read more

Gentoo-Based Porteus Kiosk 5.3 Released with Hardware Video Decoding, Virtual Keyboard

Filed under
Linux
News
Gentoo

Porteus Kiosk 5.3 is here about six months after Porteus Kiosk 5.2 to add several new features, including experimental hardware video decoding support and virtual keyboard for both Mozilla Firefox ESR and Google Chrome web browsers.

While the hardware decoding feature can be enabled in remote config with the hardware_video_decode parameter, the virtual keyboard feature comes as an extension and will pop-up automatically when clicking an input field on a web page. Users can control the virtual keyboard in remote config with the virtual_keyboard parameter.

Read more

How upstreams should learn to stop worrying and love uncompressed manpages

Filed under
Gentoo

Portage (Gentoo’s primary package manager) allows me to choose my own compression command using the variable PORTAGE_COMPRESS in make.conf(5). As it happens, right now, it defaults to bzip2.

The vast majority of man pages on my system are therefore compressed with it. This is because most packages don’t bother compressing their man pages - they accept the consensus that it’s for distributions/a user preference. It’s handled by my package manager at the point of installation.

But it doesn’t stop with choice of algorithm. What about compression levels? What if I choose to use say, pbzip2 instead (notably the same algorithm)?

i.e. Even if an upstream correctly guesses the right tool I’ve been using to be consistent with my other man pages (and I love consistency), they may end up doing it wrong anyway.

Read more

Experimental binary Gentoo package hosting (amd64)

Filed under
Development
Gentoo

As an experiment, I've started assembling a simple binary package hosting mechanism for Gentoo. Right now this comes with some serious limitations and should not be used for security or mission critical applications (more on this below). The main purpose of this experiment is to find out how well it works and where we need improvements in Portage's binary package handling.

Read more

Gentoo eudev adopted by Eudev Project

Filed under
GNU
Linux
Gentoo

A recent LinuxQuestions thread discusses the depreciation of the eudev fork which was created by Gentoo a few years back in order to keep systemd at bay. This step by Gentoo sparks some serious doubts among LQ members about what Slackware should do – is the inclusion of systemd near, now that eudev is dead?

Short recap: In November 2015 Slackware replaced its no longer maintained original udev with this new eudev (a standalone extract of udev out of the systemd sources but modified so that every dependency on systemd is removed). This change was actually my chance to announce the liveslak project as a ‘celebration to say farewell to udev‘.

Read more

Additional stage downloads for amd64, ppc, x86, arm available

Filed under
Gentoo

Following some technical reorganization and the introduction of new hardware, the Gentoo Release Engineering team is happy to offer a much-expanded set of stage files for download. Highlights are in particular the inclusion of musl-based stages and of POWER9-optimized ppc64 downloads, as well as additional systemd-based variants for many architectures.

For amd64, Hardened/SELinux stages are now available directly from the download page, as are stages based on the lightweight C standard library musl. Note that musl requires using the musl overlay, as described on the page of the Hardened musl project.

Read more

I’m now using a binary kernel with Gentoo

Filed under
Gentoo

Yesterday when I was using the tool diff to compare the changes from my current minimal custom kernel configuration to the new kernel configuration that came with the latest kernel in Gentoo, I thought to myself: “Is this really worth it?”.

I don’t gain any performance, and no resource or disk space improvements, so why should I be bothered using my own custom kernel when it takes a considerable amount of time maintaining it? I’ve only been rolling my own custom kernel because it’s fun and a good learning experience.

Wait. I said what now? No disk space improvements? Well. Relativity speaking, my custom kernel is a lot smaller than the binary kernel that Gentoo provides. Technically speaking, I save about 75 MB by only including the absolute bare minimum required for my computer.

The little disk space I gained there, is actually lost to the fact that I always have to keep a copy of the source for the current kernel. The source for the kernel takes up about 52 MB in its compressed state, and about 150 MB uncompressed. Is it really worth all the time and effort for saving 23 MB?

The reason I used to use my own custom kernel to beging with, was for the simple fact that it was fun! It’s a fun learning experience and it’s a fun challenge. That’s it.

Read more

Retiring the multilib project

Filed under
Gentoo

I created the Multilib project back in November 2013 (though the effort itself started roughly a year earlier) with the goal of maintaining the multilib eclasses and porting Gentoo packages to them. Back in the day, we were even requested to co-maintain a few packages whose maintainers were opposed to multilib ports. In June 2015, last of the emul-linux-x86 packages were removed and our work has concluded.

The project continued to exist for the purpose of maintaining the eclasses and providing advice. Today, I can say that the project has served its purpose and it is time to retire it. Most of the team members have already left, the multilib knowledge that we advised on before is now common developer knowledge. I am planning to take care of the project-maintained eclasses personally, and move the relevant documentation to the general wiki space.

At the same time, I would like to take this opportunity to tell the history of our little multilib project.

Read more

Is Gentoo Linux an anachronism?

Filed under
Gentoo

When I started visiting the Gentoo Linux discussion forums in 2007 there were at least three pages of posts daily, if not more. These days there is usually one page. I’m sure the number of Gentoo Linux users has dropped significantly since then. Interest in the distribution has certainly decreased since its heyday: Google Trends – gentoo linux.

I don’t think the drop in interest is limited to individuals either. Articles such as ‘Flying Circus Internet Operations GmbH – Migrating a Hosting Infrastructure from Gentoo to NixOS‘ lead me to suspect that some companies have switched to other distributions over the years. NASDAQ’s use of ‘a modified version of Gentoo Linux’ was publicised in 2011 (How Linux Mastered Wall Street) but I do not know if it still uses the distribution and, in any case, that is only a single significant entity. I personally have never come across another user (corporation or individual) of Gentoo Linux, although I do know several companies and individuals using distributions such as Ubuntu and Fedora.

Gentoo Linux is certainly not for everyone. In recent years the user base seems to have settled down to a smaller number of people, primarily consisting of enthusiasts who appreciate its advanced features and are prepared to put in the extra effort and time required to create and maintain a working installation. I’m sure it also still has a place in some specialised commercial applications, but I have my doubts its deployment comes anywhere near that of the major distributions such as Ubuntu, Red Hat, Fedora, etc. If I were only interested in using an OS that enabled me to perform typical personal and professional tasks, I wouldn’t be using Gentoo Linux. Some people touted Gentoo Linux’s configurability as giving it a speed advantage over binary distributions but, having correctly installed and used Gentoo Linux and various other distributions on the same hardware, I cannot say I noticed an improvement in performance.

[...]

I personally would now only consider installing Gentoo Linux on a machine with at least 16 GB RAM and a CPU with at least four cores and a speed of circa 3 GHz or more. Additionally, although I have been a user of KDE in Gentoo Linux all these years, I would probably switch from KDE to a simpler, less resource-hungry and less feature-rich (some might say less ‘bloated’!) desktop environment such as LXQt in new installations of Gentoo Linux.

One thing that has improved a lot since I started using Gentoo Linux over a decade ago is the package manager Portage, at least in terms of dependency resolution and blockage handling. I used to have to do a lot more work to resolve problems during package upgrades; ‘merging world’ (upgrading installed packages) is generally a lot less troublesome than it used to be ten years ago. Portage is a lot slower than it used to be, but that’s because it does a lot more than it used to do. I used to have to use revdep-rebuild – a utility to resolve reverse dependencies and rebuild affected packages – frequently, but not any more. Building software from source code takes time, though, so plenty of RAM and a fast CPU are important for installing packages, however good the package manager itself.

Read more

Syndicate content

More in Tux Machines

Audiocasts/Shows: Late Night Linux, Destination Linux, and More

Kernel: Slowdown, CephFS, and FS-Cache / CacheFiles

  • How a performance boost in Linux kernel for one family of Intel chips slowed its latest Alder Lake processors

    The mixture of performance and efficiency CPUs in Intel’s 12th-gen Core processors, code-named Alder Lake, hasn’t just been causing problems for some Windows gamers – it almost led to complications for Linux. Phoronix’s Michael Larabel noticed a performance hit in the kernel a fortnight ago – in a work-in-progress release candidate, we should stress – and a fix for the scheduling code landed a little later. It turned out the kernel suffered on Alder Lake chips due to a performance-enhancing tweak for another Intel processor family: the multiple-Atom-core-based Jacobsville. This year, Intel officially canned its Lakefield chips. These consisted of a performance core called Sunny Cove as well as Atom-class efficiency cores dubbed Tremont. Crucially, there are still multi-Tremont-core embedded processors out there, such as Snow Ridge. These are server and infrastructure-oriented components with up to 24 cores. The first proposed cut of kernel 5.16, specifically 5.16-rc1, contained a revision to the scheduler that makes it aware that some clusters of cores share a block of L2 cache – as seen in Snow Ridge and Jacobsville.

  • Testing the Linux Kernel CephFS Client with xfstests

    I do a lot of testing with the kernel cephfs client these days, and have had a number of people ask about how I test it. For now, I’ll gloss over the cluster setup since there are other tutorials for that.

  • Major Rewrite Of Linux's FS-Cache / CacheFiles So It's Smaller & Simpler - Phoronix

    As part of David Howells of Red Hat long-term work on improving the caching code used by network file-systems, he today posted a big patch series rewriting the fscache and cachefiles code as the latest significant step on that adventure. Howells posted a set of 64 patches for rewriting the kernel's fscache and cachefiles code. Linux's fsache is a general purpose cache used by network file-systems while cachefiles is for providing a caching back-end for mounted local file-systems. The Red Hat engineer has been working on this rewrite for more than the past year.

Ubuntu Weekly Newsletter and Ubuntu Desktop on Google Clown

  • Ubuntu Weekly Newsletter Issue 711

    Welcome to the Ubuntu Weekly Newsletter, Issue 711 for the week of November 21 – 27, 2021. The full version of this issue is available here.

  • Launch Ubuntu Desktop on Google Cloud

    This tutorial shows you how to set up a Ubuntu Desktop on Google Cloud. If you need a graphic interface to your virtual desktop on the cloud, this tutorial will teach you how to set up a desktop environment just like what you can get on your own computer.

Open Hardware/Modding: ESP32, 3-D Printing, Raspberry Pi Pico, PocketBeagle

  • Wireless thermal printer kit features M5Stack ATOM Lite controller - CNX Software

    This is certainly not the first ESP32 thermal printer solution, as there are various implementations including bitbank2 thermal printer Arduino connecting ESP32 and nRF52 boards to the printer over Bluetotoh LE, or a Arduino sketches to print bitmaps over serial or MQTT.

  • Generate Fully Parametric, 3D-Printable Speaker Enclosures | Hackaday

    Having the right speaker enclosure can make a big difference to sound quality, so it’s no surprise that customizable ones are a common project for those who treat sound seriously. In that vein, [zx82net]’s Universal Speaker Box aims to give one everything they need to craft the perfect enclosure.

  • Z80 Video Output Via The Raspberry Pi Pico | Hackaday

    Building basic computers from the ground up is a popular pastime in the hacker community. [Kevin] is one such enthusiast, and decided to whip up a video interface for his retro Z80 machine.

  • The Calculator Charm: Calculatorium Leviosa! | Hackaday

    Have you ever tried waving your hand around like a magic wand and summoning a calculator? We would guess not since you’d probably look a little silly doing so. That is unless you had [Andrei’s] cool gesture-controlled calculator. [Andrei] thought it would be helpful to use a calculator in his research lab without having to take his gloves off and the results are pretty cool. His hardware consists of a PocketBeagle, an OLED, and an MPU6050 inertial measurement unit for capturing his hand motions using an accelerometer and gyroscope. The hardware is pretty straightforward, so the beauty of this project lies in its machine learning implementation.