Live data from Hacker News

Debian Packages That Need Lovin'

wnpp.debian.net

101–110 of 151 posts

Re: Debian Packages That Need Lovin'

#101
Packaging for debian anything non trivial is damn too hard.

It took me 5 days to figure out how to package a complete web app with params, upgrades, post install transpiling, db init, etc.

And I haven't put that on a private repo yet, it's yet another annoying thing to do.

Nothing is well documented, doc is old and confusing, the tooling is archaic and wants to inflict pain (debconf anyone ?), the life cycle of a Deb package is atrocious to get right.

And you have to do all that in raw bash scripts. Not there are no alternatives, any scripting language is potentially usable, but the support is poor enough to deter you from them.

It's not I don't want to contribute to the ecosystem, but I won't invest the colossal effort and exercice in frustration to overcome the barrier to entry. My packages don't even need to go to the official repo, just let me do my things in peace.

Make a python lib that let you describe a package, hook on life cycle events to run code, with clear documented recipes et where to put what types of files, and let me run that to generate the Deb. Event web pack is easier to use for God sake.

I'm not even touching the process of packaging something to be included in debian repositories here, which is another beat entirely.

Quit the smug act, debian packagers. You don't know better.

You do know better on how to design a distro and protect the official repository. Great. I praised you for that for decades.

But you know nothing about making your users life easy. You just don't. So ask them, and fix that, or don't complain about no contrib. This is not news, we raised our voices for years.

I contribute all the time to Foss in code and doc, I donate in mass. We ARE willing to help. And we do.

It's not us. It's you.

Re: Debian Packages That Need Lovin'

#102
post #44
post #37

Earlier quoted context omitted.

> things seem to have devolved into grabbing things from random github repos Devolved from what ? I believe from software not having any dependencies unless they absolutely must because adding dependencies is such a royal pain. Software written in C and C++ has long been used to the system package manager being language package manager, and the (UNIX) OS being its IDE.

Debian successfully packages a ton of Python software, notorious for its complicated dependency graphs. Has been for decades. Debian packages a noticeable amount of C-based software which is just old. Emacs, for example. I suppose that skipping major versions (25 to 27) is considered unacceptable, and packaging and maintaining several versions is just proportionally harder. (This is why my laptop now runs Void, and I…

> Debian successfully packages a ton of Python software, notorious for its complicated dependency graphs. Has been for decades.

But that's what I'm talking about. Suppose there is no software in Debian that uses a Python dependency that you need, hence no one packaged it. Now instead of adding a line to your setup.py (or whatever Python devs use), you have to go through the entire adventure of cooking a Debian package if you want to follow the Debian way. And them submitting it to the main repo which is an adventure and commitment of its own which most people are not ready to make.

Sure, that works to the benefit of everybody, not only your app. And that's the whole point of Debian distribution. Debian developers work on improving Debian. Not on publishing their software. This is the main difference between “app stores” and “package repositories” and “distribution”. Debian is a distribution, and a package repo is only a part of that.

But it kinda saddens me that every language ecosystem has their own package repository, and every distribution ends up having to do effectively busywork of adapting those packages to their distribution and its rules.

Re: Debian Packages That Need Lovin'

#103

If you sort by Installs this is kind of disturbing. A lot of well known packages (Apache2 / OpenSSL / LibreOffice etc.) have no owner? https://wnpp.debian.net/?sort=installs%2Fdesc&page=1

I was pretty shocked, given Debian is considered by some as just a bootloader for Apache.

Re: Debian Packages That Need Lovin'

#104

When you click on random (or not so random) packages like Libreoffice, it brings you to [0] where help was requested in 2007 and as recent as oct 2020 offers for help are ignored. Not sure how this 'process' works? [0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=419523

I'm a Debian developer. It can look a little chaotic from outside.

But there are a few simple principles operating here. Mostly they follow from the Debian being a collection of 1000 developers, all equal. There is no CEO who can decide what's important and force someone to do something. Instead, Debian is a do'ocracy. If there is a dispute, it always takes the form of two Debian developers wanting to do something different. (This means users don't get a say. Not because Debian doesn't care, but because it's a do'ocracy and users can't do anything without going through the lengthy test and evaluation process that Debian insists all it's developers must go through.)

Asking for help, then not taking up an offer breaks this first rule. We don't have two Debian developers doing conflicting things, so there is no conflict. It may not be the nicest way to behave, but shrug no one can force someone to do something like supervise a newbie. After all Debian developers are unpaid volunteers, and you can't force an unpaid volunteer to do something.

Lets take it further. Lets say we have two Debian developers proposing to do different things. Lets say a Debian developer wants to upload a new version of libreoffice. A second rule comes into play here: the package maintainer is king of his packages. He can resist just about anything providing he isn't breaking any policies. So providing the libreoffice package is in reasonably good condition - not too old, all CVE's fixed, yada yada he can resist the new version. In fact I've resisted people wanting to update my package to a beta release, so I've don't just that.

Now lets say Debian packager of libreoffice has let it languish, in fact languished so much it's accumulating CVE's. And worse, in order to resist he must be actively deleting the new version. So we have two people doing different things, and they conflict. At this point either developer can invoke Debian's dispute resolution mechanisms. Interestingly the team doing the dispute resolution isn't allowed to do something themselves, they can only chose which (or perhaps neither) of the things done can proceed. In this case not updating a package accumulating CVE's breaks policy, so they would probably allow the developer uploading the new version to proceed.

This is a very different way of going about getting work done then people normally experience in their working life. A work environment is typically far more hierarchical and authoritarian. A boss can actually order someone to accept help for example :). However, Debian's system is demonstratedly every bit good as RedHat's. Security patches come out just a quickly, and it has far more packages. And clearly as there are 1000 of us developers all pulling together, it can't be too hard a system to work in.

Re: Debian Packages That Need Lovin'

#105
post #70

As someone who's thinking about moving to Linux and has made many non-trivial contributions to Homebrew, the contribution process for Debian packages scares me. The official documentation seems to be more of a reference guide than a tutorial, and community blog posts always seem to start with "That other tool is outdated; here's the new way to do it," making it impossible to know which method is the right one. IMO, w…

Here's something to keep in mind that isn't super clear to newcomers, Linux != Debian. Linus Torvalds doesn't use Debian and nothing Debian does really impacts him or the core of Linux. Debian is just a highly opinionated take on Linux. You can totally dive in and be super productive with Linux without ever having to know about, use or, or care that Debian exists. (oh and Homebrew works great on Linux, give it a shot…

I don't think it is "by design". Many Debian contributors are frustrated as well by the packaging processes and tools, but it turns out that it is not that easy to coordinate the work of thousands of people, most of whose contribute voluntarily in their free time. Debian was founded in the early 90's, developed by thousands and used by millions. It has tens of thousands of packages. You don't just migrate them to the newest packaging technology every day. Once upon a time the next big thing was Subversion. Now it is Git. What will it be next decade? It is difficult to keep up on volunteer work.

I don't mean to say that you have to accept it as it is. If you don't like it, just go somewhere else. If you are motivated to help fixing stuff, that's wonderful. Just don't pretend we like to make stuff difficult for the sake of it.

Disclaimer: volunteer Debian Developer, always on short time to contribute.

Re: Debian Packages That Need Lovin'

#106
post #44
post #37

Earlier quoted context omitted.

> things seem to have devolved into grabbing things from random github repos Devolved from what ? I believe from software not having any dependencies unless they absolutely must because adding dependencies is such a royal pain. Software written in C and C++ has long been used to the system package manager being language package manager, and the (UNIX) OS being its IDE.

Debian successfully packages a ton of Python software, notorious for its complicated dependency graphs. Has been for decades. Debian packages a noticeable amount of C-based software which is just old. Emacs, for example. I suppose that skipping major versions (25 to 27) is considered unacceptable, and packaging and maintaining several versions is just proportionally harder. (This is why my laptop now runs Void, and I…

> Debian successfully packages a ton of Python software, notorious for its complicated dependency graphs.

I guess this depends on your definition of success, but from my perspective as a Python developer, it doesn't really. Most Python software I'm aware of encourages users to get it by other means (e.g. pip, Anaconda, containers), and anecdotally, the majority of users seem to do so. The occasional people who use apt cause frustration 'upstream' when they report bugs in a version that's 2 years out of date.

One package which I help maintain upstream had a security flaw with a CVE, left open in the Debian package for many months after we fixed it. No-one upstream is a Debian developer, and no-one in Debian was updating the package.

Python started out with a traditional model of applications sharing libraries, and is now moving in the direction of self-contained applications with separate dependencies. Languages like Javascript and Rust went straight for the latter model, so are probably even less amenable to Debian packaging.

Re: Debian Packages That Need Lovin'

#107
post #66

Earlier quoted context omitted.

I installed Arch Linux on a ThinkPad in 2011 and it's literally running the same OS today, nearly 10 years later. I won't say I've never had anything break, but never anything major like audio or video or wifi. In my experience, Arch is one of the most stable OS's I've seen. But I suspect a lot of it has to do with what you're doing with it. First, ThinkPads are generally well supported in Linux. Also, I've never see…

I've been thinking about leaving Fedora and your comment intrigues me. Does Zoom work well with i3? Can you share your screen? Regarding PulseAudio, I didn't realize Linux users had a choice about whether to use it - is there an alternate audio subsystem available?

Alsa and JACK are major forces aside from PulseAudio.

Re: Debian Packages That Need Lovin'

#108

Packaging for debian anything non trivial is damn too hard. It took me 5 days to figure out how to package a complete web app with params, upgrades, post install transpiling, db init, etc. And I haven't put that on a private repo yet, it's yet another annoying thing to do. Nothing is well documented, doc is old and confusing, the tooling is archaic and wants to inflict pain (debconf anyone ?), the life cycle of a Deb…

> And you have to do all that in raw bash scripts.

If only that were true. The entrypoint in Debian packaging is a damn Makefile.

I've been a Debian Developer for 16 years, and creating packages for more than that. Saying that I like it or that there aren't problems would be the archetype of Stockholm Syndrome.

Re: Debian Packages That Need Lovin'

#109

Earlier quoted context omitted.

If we're going anecdotal, Ubuntu has been nothing but great for me. I have left laptops off for months and then turned them on and update/upgrade them no problem, as well as computers that I use daily. I think the crux of the update issue is really how well package managers handle interdependencies between packages vs how many/what packages you have on your system.

These are servers with multiple Ethernet and bridge interfaces, primarily used for VM hosting. This requires no third party packages and is not anything non-standard or terribly exotic. I often wonder if Ubuntu tests configurations with anything beyond a single NIC.

Debian is more reliable than Ubuntu about upgrades between and within major versions and in configurations that aren't the most typical.

Still consult the release notes before upgrading between major versions in case there are relevant release-specific gotchas before/after/during, and for generally helpful precautionary advice, but quite often there aren't.

Re: Debian Packages That Need Lovin'

#110
post #66

Earlier quoted context omitted.

I installed Arch Linux on a ThinkPad in 2011 and it's literally running the same OS today, nearly 10 years later. I won't say I've never had anything break, but never anything major like audio or video or wifi. In my experience, Arch is one of the most stable OS's I've seen. But I suspect a lot of it has to do with what you're doing with it. First, ThinkPads are generally well supported in Linux. Also, I've never see…

I've been thinking about leaving Fedora and your comment intrigues me. Does Zoom work well with i3? Can you share your screen? Regarding PulseAudio, I didn't realize Linux users had a choice about whether to use it - is there an alternate audio subsystem available?

> Does Zoom work well with i3? Can you share your screen?

Yes and yes. Source: I run Zoom with i3.

Post reply on HN