Path: csiph.com!fu-berlin.de!bofh.it!news.nic.it!robomod From: Carsten Schoenert Newsgroups: linux.debian.maint.python Subject: Re: Docu: Need help to understand section about package creation Date: Fri, 29 Mar 2024 14:50:02 +0100 Message-ID: References: X-Original-To: debian-python@lists.debian.org X-Mailbox-Line: From debian-python-request@lists.debian.org Fri Mar 29 13:48:40 2024 Old-Return-Path: X-Amavis-Spam-Status: No, score=-6.977 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, FREEMAIL_FROM=0.001, FVGT_m_MULTI_ODD=0.02, LDO_WHITELIST=-5, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001] autolearn=ham autolearn_force=no X-Policyd-Weight: using cached result; rate: -5.5 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US Autocrypt: addr=c.schoenert@t-online.de; keydata= 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 iWLO Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Toi-Expurgateid: 150726::1711720099-C3B95941-2D9DBF49/0/0 CLEAN NORMAL X-Toi-Msgid: dbbdc7b2-8038-4f49-af7a-6ff8b630dc8e X-Mailing-List: archive/latest/21675 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/f88d9c2c-2b8c-4ca7-addb-775b66a8e2b8@t-online.de Approved: robomod@news.nic.it Lines: 110 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Date: Fri, 29 Mar 2024 14:48:19 +0100 X-Original-Message-ID: X-Original-References: <2e298444b0ca43474151b2711c20978423c17d84.camel@debian.org> <4V5Xf76537z6tyl@submission01.posteo.de> <58c94873-de5c-4f63-abfa-244e0463fbe6@t-online.de> <1918974.IjW8Q8t3uR@jason> Xref: csiph.com linux.debian.maint.python:15665 Hello Paul, Am 29.03.24 um 13:49 schrieb Paul Boddie: > On Friday, 29 March 2024 09:52:14 CET Carsten Schoenert wrote: >> >> Starting with Debian packaging isn't a easy thing and there is *not* the >> one way to do it right. And there are for sure hundreds of HowTos out >> there. You will need to try a few of them and chose in the end the >> workflow that fit's best for you. > > The problem with this advice is that for the Debian Python Team, there > probably aren't many ways to "do it right". Instead, as I understand it, there > will be very few ways that people tolerate, as recent discussion on this list > has indicated. the question in general was not about the right and correct way in the DPT, it was about starting from scratch. At least I don't know of a right way from scratch that is written down as policy, would also make no real sense to me. Starting Debian packaging isn't easy, but it's going to be more complicated if you think there is only one way that's correct. In the end DAK needs some files, how you create them is on your own. The DPT policy doesn't say you need to do packaging a very specif way, it stated that git-buildpackage is the tool for organizing the VCS data. The DPT policy gives you the freedom to do your packaging preparation how ever you like, but it is expected you finally upload the data of your work into a git tree with a specific layout so others can take your work and reproduce a package by using gbp. gbp is very flexible, so if you like to use sbuild in favor of pbuilder e.g. than you can simply do so. BTW: I posted my way on how I created a new Python package for Debian in the German Debian forum extensively and in length last year while DC [1]. Because I also know were starters typically struggle with and I was in the need to introduce a new Python package as a dependency for another package. I'm unsure if Christian did follow my steps by trying to reproduce the package I was working on. I'm thinking he didn't, if he did then I'm wondering where he is having problems to prepare his package. Until now there is no "I did this and this, ..., I failed." The feedback on my mini HowTo was quite low. So I wont do such things again. > In the end, I did my usual thing and distilled the documentation's prose down > to a concise workflow to remind me of what I might need to do if I were to > start packaging something else. In fact, I wrote the following for the Moin > 2.0 packages and then made use of it for the other package: > > git branch -c master upstream > git checkout -b debian/master > > git add debian > git commit > > git push origin > gbp buildpackage --git-debian-branch=debian/master \ > --git-upstream-tag='upstream/%(version)s' --git-builder=sbuild gbp makes all these steps easier I think. Even if you want to do it completely manually. Basically I do this mkdir new-package && cd new-package git init # create a file debian/gbp.conf if you want to have it more convenient gbp import-orig [--verbose] --sign-tags --pristine-tar /path/to/tarball-version.tar.{gz,...,xz} # add required files into debian/ gbp dch -aR gbp buildpackage --git-ignore-new [--git-builder=what_ever_you_like] # run lintian, squash issues, prepare autopkgtest, commit changes atomically # create a patch queue if needed gbp pq import [--ignore-new] # work on patches, commit them gbp qp export git add debian/patches && git commit # hack further, finalize the package, create the final changelog entry if needed git commit debian/changlog gbp buildpackage ... # upload, wait for the DAK email gbp tag --sig-tags git remote add salsa .... gbp push [salsa] But we will find ten more possible ways to create a new package from scratch. :) ... > P.S. The argument made about needing to understand what happens "under the > hood" is something of an indictment of the way technology is developed these > days. A tool that is meant to simplify something should present its own > coherent level of abstraction; deferring to lower-level mechanisms is > something that the Git developers and community like to do, which is why the > usability of Git is the subject of occasional jokes and somewhat more > infrequent attempts to wrap it in more usable interfaces. A good tool is always helpful, and a good first time user experience is also important. But I've seen a lot of people and contributors that were completely lost once a errors message was coming up and they did not know what to do and were to look. A good developer or engineer is always able to help themselves. Means he need to know how things work or at least were to look next to solve problems. [1] https://debianforum.de/forum/viewtopic.php?t=187764 -- Regards Carsten