Your message dated Fri, 26 Apr 2013 07:10:37 +0200 with message-id <20130426051037.GG5467@mykerinos.kheops.frmug.org> and subject line Re: Bug#706160: general: it should be easier for ordinary developers to work with Debian packages has caused the Debian Bug report #706160, regarding general: it should be easier for ordinary developers to work with Debian packages to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 706160: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=706160 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: general: it should be easier for ordinary developers to work with Debian packages
- From: Ben Longbons <brlongbons@gmail.com>
- Date: Thu, 25 Apr 2013 09:22:02 -0700
- Message-id: <[🔎] 20130425162202.31360.43414.reportbug@ben-laptop.local>
Package: general Severity: wishlist Introduction: This is my attempt at explaining exactly what frustrations prevent me from doing anything with Debian packages, and how another distro (Gentoo) does it better. The fact that Gentoo is a source-based distro is irrelevant. I hope you will seriously consider the issues here for jessie, rather than replying "we understand our system, if others don't that's their problem". First some definitions: Ordinary Developer: A debian user who is comfortable enough with command-line to install programs in /usr/local. They want to perform Simple Tasks. Simple Tasks: quick: Given a program that is not packaged for Debian and is not sufficiently useful to the general public to be worth the maintenance burden, install it such that the package manager knows about it. distribute: Given a completed set of package information for such a package, distribute it in a way that is easy for others to install. patch: Given a program with a buggy upstream release, apply a patch. revert: Given a program with buggy Debian packaging, revert a patch. upgrade: Given a program that is packaged in Debian, upgrade to an unpackaged version. The problems with the way Debian does it are: - debian/ is a subdirectory of the extracted source tree. - Because of the above, debian/rules tries to know about backwards steps. - There are too many files that need to be modified. - There are too many arcane commands that have to be called. - It's not obvious how to build except from apt-get source. - It's not obvious how to modify the patch set directly. - There is no attempt at managing multiple source versions. How Simple Tasks are approached: quick: Debian: - checkinstall is buggy, quirky, and has no upgrade path. - I still haven't figured out how to do this easily. Based on the 'hello' package, which is the simplest possible package, this requires writing a hundred lines of voodoo. A random sampling of existing package I've looked at agrees with this as a lower bound. Gentoo: - vim foo-1.ebuild; ebuild foo-1.ebuild manifest; emerge foo - That may look like oversimplification, but the contents of foo-1.ebuild really are very simple. distribute: Debian: - Still haven't figured out the right way. - I did find the 'dget' command that does some things. How was I supposed to know about this obscure command for a common use case? - You probably have to ship the whole huge .orig.tar.gz file, even though it's available on the internet under a different name, or even if it's really a git snapshot. Gentoo: - Put foo-1.ebuild somewhere online (typically in a git repo) - foo-1.ebuild contains the URL of the upstream tarball or git repo. patch: Debian: - After trying to make local changes, it said: dpkg-source --commit - But it is tedious when you already have a full patch from upstream. Gentoo: - Assume that you're competent enough to get ahold of a patch. - Add the patch to files/ (which is shared between all versions of the package, though you can of course use a different name). - Add the filename to the PATCHES=() variable, remanifest. revert: Debian: - no clue, it keeps trying to readd the changes and it's not obvious how to wipe the working tree. Gentoo: - Remove the filename from the PATCHES=() variable, remanifest. upgrade: Debian: - Hope it's in experimental. - Hope its experimental package is not broken. - Hope adding an experimental package won't break dependencies in the rest of your system. Gentoo: - cp foo-1.ebuild foo-2.ebuild; ebuild foo-2.ebuild manifest - Typically, the source URL will automatically change based on the version number. If this is not the case, it is very obvious to fix. In conclusion: The current Debian way is complicated. The Gentoo way is simple. This is not tied to the fact that Gentoo is a source-based distribution, although that does encourage the right mindset. For evidence, look at the simplicity of: - http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/hello/hello-2.8.ebuild?view=markup - http://devmanual.gentoo.org/eclass-reference/ebuild/index.html Do NOT add yet another packaging tutorial or yet another set of helper scripts. There are too many as it is - they are just confusing and long. For the things that I'm talking about, Gentoo gets along just fine with a manpage - though they have a slightly longer guide for official packages.
--- End Message ---
--- Begin Message ---
- To: 706160-done@bugs.debian.org
- Subject: Re: Bug#706160: general: it should be easier for ordinary developers to work with Debian packages
- From: Christian PERRIER <bubulle@debian.org>
- Date: Fri, 26 Apr 2013 07:10:37 +0200
- Message-id: <20130426051037.GG5467@mykerinos.kheops.frmug.org>
- In-reply-to: <[🔎] 20130425162202.31360.43414.reportbug@ben-laptop.local>
- References: <[🔎] 20130425162202.31360.43414.reportbug@ben-laptop.local>
Quoting Ben Longbons (brlongbons@gmail.com): > Package: general > Severity: wishlist > > Introduction: > This is my attempt at explaining exactly what frustrations prevent me from > doing anything with Debian packages, and how another distro (Gentoo) does > it better. The fact that Gentoo is a source-based distro is irrelevant. I'm definitely sure that a bug report is not the way to achieve anything here. As Wouter mentioned, coming up to $DISTRO and saying that "you guys are doing things wrong and here is how you should do" is like saying "please throw away 20 years of accumulated experience and restart from scratch". I very much doubt it will ever happen. I'm not particularly interested in the following thread but I'm interested in keeping our BTS as clean as possible. So....closing the bug report.Attachment: signature.asc
Description: Digital signature
--- End Message ---