Michael Stapelbergs, in his blog, stated why he has planned to reduce his involvement towards Debian software distribution. Stapelbergs is the one who wrote the Linux tiling window manager i3, the code search engine Debian Code Search and the netsplit-free.
He said, he’ll reduce his involvement in Debian by,
- transitioning packages to be team-maintained
- remove the Uploaders field on packages with other maintainers
- orphan packages where he is the sole maintainer
Stapelbergs mentions the pain points in Debian and why he decided to move away from it.
Change process in Debian
Debian follows a different change process where packages are nudged in the right direction by a document called the Debian Policy, or its programmatic embodiment, lintian. This tool is not necessarily important. “currently, all packages become lint-unclean, all maintainers need to read up on what the new thing is, how it might break, whether/how it affects them, manually run some tests, and finally decide to opt in. This causes a lot of overhead and manually executed mechanical changes across packages”, Stapelbergs writes.
“Granting so much personal freedom to individual maintainers prevents us as a project from raising the abstraction level for building Debian packages, which in turn makes tooling harder.”
Fragmented workflow and infrastructure
Debian generally seems to prefer decentralized approaches over centralized ones. For example, individual packages are maintained in separate repositories (as opposed to in one repository), each repository can use any SCM (git and svn are common ones) or no SCM at all, and each repository can be hosted on a different site.
Practically, non-standard hosting options are used rarely enough to not justify their cost, but frequently enough to be a huge pain when trying to automate changes to packages.
Stapelbergs said that after he noticed the workflow fragmentation in the Go packaging team, he also tried fixing this with the workflow changes proposal, but did not succeed in implementing it.
Debian is hard to machine-read
“While it is obviously possible to deal with Debian packages programmatically, the experience is far from pleasant. Everything seems slow and cumbersome.”
debiman needs help from piuparts in analyzing the alternatives mechanism of each package to display the manpages of e.g. psql(1). This is because maintainer scripts modify the alternatives database by calling shell scripts. Without actually installing a package, you cannot know which changes it does to the alternatives database.
There used to be a fedmsg instance for Debian, but it no longer seems to exist. “It is unclear where to get notifications from for new packages, and where best to fetch those packages”, Stapelbergs says.
A user on HackerNews said, “I’ve been willing to package a few of my open-source projects as well for almost a year, and out of frustration, I’ve ended up building my .deb packages manually and hosting them on my own apt repository. In the meantime, I’ve published a few packages on PPAs (for Ubuntu) and on AUR (for ArchLinux), and it’s been as easy as it could have been.”
Check out what the entire blogpost by Stapelbergs.
Maish Saidel-Keesing believes Docker will die soon
OK .. Time to share my thoughts on the soon to be death of #docker
— Maish Saidel-Keesing (@maishsk) July 17, 2018
Docker has undoubtedly brought in the popular containerization technology. However, Saidel-Keesing says, “Over the past 12-24 months, people are coming to the realization that docker has run its course and as a technology is not going to be able to provide additional value to what they have today – and have decided to start to look elsewhere for that extra edge.”
He also talks about how Open Container Initiative brought with it the Runtime Spec, which opened the door to use something else besides docker as the runtime. Docker is no longer the only runtime that is being used.
“Kelsey Hightower – has updated his Kubernetes the hard way over the years from CRI-O to containerd to gvisor. All the cool kids on the block are no longer using docker as the underlying runtime. There are many other options out there today clearcontainers, katacontainers and the list is continuously growing”, Saidel-Keesing says.
“What triggered me was a post from Scott Mccarty – about the upcoming RHEL 8 beta – Enterprise Linux 8 Beta: A new set of container tools”
This will officially be the end of docker… It has been a while in the making https://t.co/kBTjpXAzAL
— Maish Saidel-Keesing (@maishsk) February 20, 2019
Saidel-Keesing writes, “Lo and behold – no more docker package available in RHEL 8”. He further added, “If you’re a container veteran, you may have developed a habit of tailoring your systems by installing the “docker” package. On your brand new RHEL 8 Beta system, the first thing you’ll likely do is go to your old friend yum. You’ll try to install the docker package, but to no avail. If you are crafty, next, you’ll search and find this package:
podman-docker.noarch : “package to Emulate Docker CLI using podman.”
To know more on this news, head over to Maish Saidel-Keesing’s blog post.