• Docu: Need help to understand section about package creation

    From c.buhtz@posteo.jp@21:1/5 to All on Wed Mar 20 22:40:01 2024
    Hello,

    in order to improve the documentation I need to understand some parts.
    But I am stuck. I don't get it what the authors trying to explain.

    It is about "Creating a new package" section: https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package

    The second paragraph points to dsc-file creation described here: https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize

    The third paragraph is a list of shell commands that do not work in my
    case. For example "uscan" don't work because it does not know what and
    where to download. Of course I understand that.

    I assume I need a dsc file?

    It seems that my understanding problem is the second paragraph and the
    dsc-page it is linking, too.

    For example the first paragraph on the page "/PackagingWithGit/GitDpm/Initialize" is impossible to understand for
    newbies. What is it talking about? There is the term "git-dpm"
    pointing to "/PackagingWithGit/GitDpm/" (now after I edit that page
    myself). But I am not sure what "git-dpm" is and how much of that big
    page I should work on to make that "uscan" command run.

    Kind
    Christian

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to c.buhtz@posteo.jp on Wed Mar 20 22:50:02 2024
    On Wed, Mar 20, 2024 at 09:32:34PM +0000, c.buhtz@posteo.jp wrote:
    Hello,

    in order to improve the documentation I need to understand some parts.
    But I am stuck. I don't get it what the authors trying to explain.

    It is about "Creating a new package" section: https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package

    The second paragraph points to dsc-file creation described here: https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize
    As I said before, we no longer use git-dpm and git-dpm-specific
    documentation is no longer relevant. One should use git-buildpackage which
    is described on https://wiki.debian.org/PackagingWithGit.

    The third paragraph is a list of shell commands that do not work in my
    case. For example "uscan" don't work because it does not know what and
    where to download. Of course I understand that.
    Yes, uscan doesn't make sense in that context.

    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmX7WHstFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh 5k0P/3ej9z0R3qo/epJ2Tq7KN1ljoyC1PnkW/sH1+QHbSCB2ilG5BoKflVTJ9abt 08YJktphlxLKx7C2iNzl4EeG4DSJ4EzFanFyMngdYZ6pqyVGNyGispqe5S4ZH6L3 n+2sca+RiE70CcS3FLTYiTef0xroLHqBHlGbxpVpD9qrmXnA1aLpaMD4VFXgRppf rmHFAvfArVxldufC8fRA5rJTHaScprMrIwWFl8u6wuAptUenVpNliwssU1vzS9Xp i4w/HuXYgghURzRIpt9nuNG8j91mbYssYjG318wKeUGGFSUYRJu5eTabki3i1mHL 9GNrr0/E7WiqLiY/E2t7qNptEqF6Ym2T89rwlxoKiS8nNE67xygptZUN+FK/QDy4 NOGnpnpMsU0LTob/isuhCt9C8VnM0+LabX3RvM21AVrq9Zm5CRxsBjJV0v069klX Xcza/JVhv7+oxI4GlMTPdYiseyvRCErEb3TQ7Q+nL4NoxG+ZF/UjQyaodkGa8Ezn bi/ibqEjv7sCzcZh/6jMsQnFzRJPxlUT8LiROPYhCTxdxL2WJ8JIpn06p3mJ+yVu 1LeHbeA2O1shuVTCkEKHtTiKjDMkObpSYCIYDc4HaePXxiHYGu7Qt7DZnmRDVNgB 4uLPyn0OkgcyCSIygG2JpJMK51cAq/Fuyw1q19wz7szYycPm
    =l23t
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to All on Thu Mar 21 00:00:01 2024
    Thanks for the reply.

    Am 20.03.2024 22:43 schrieb Andrey Rakhmatullin:
    As I said before, we no longer use git-dpm and git-dpm-specific
    documentation is no longer relevant.

    OK, then someone should remove it from the DPT packaging wiki page.

    One should use git-buildpackage which
    is described on https://wiki.debian.org/PackagingWithGit.

    What is the difference to https://wiki.debian.org/Python/GitPackaging ?

    Am I working on the wrong and out-dated wiki page here?

    Yes, uscan doesn't make sense in that context.

    I know that. But I don't know how to solve and I don't see in the wiki
    how to solve.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to c.buhtz@posteo.jp on Sat Mar 23 15:00:01 2024
    On 2024-03-20 22:55 c.buhtz@posteo.jp wrote:
    Am 20.03.2024 22:43 schrieb Andrey Rakhmatullin:
    One should use git-buildpackage which
    is described on https://wiki.debian.org/PackagingWithGit.

    What is the difference to https://wiki.debian.org/Python/GitPackaging
    ?

    I think this is a very relevant question here.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to c.buhtz@posteo.jp on Thu Mar 28 20:00:01 2024
    Hello again,

    the problem persists.

    I don't have the right information in the wiki. So I don't know how to
    proceed with creating a package.

    Can someone point me into the right direction please.

    I have the repo on Salsa. But it is empty. And the commands
    described in "Creating a new package" don't help me to fill it up.

    Thanks in advance,
    Christian Buhtz

    On 2024-03-20 22:32 <c.buhtz@posteo.jp> wrote:
    Hello,

    in order to improve the documentation I need to understand some parts.
    But I am stuck. I don't get it what the authors trying to explain.

    It is about "Creating a new package" section: https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package

    The second paragraph points to dsc-file creation described here: https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize

    The third paragraph is a list of shell commands that do not work in my
    case. For example "uscan" don't work because it does not know what and
    where to download. Of course I understand that.

    I assume I need a dsc file?

    It seems that my understanding problem is the second paragraph and the dsc-page it is linking, too.

    For example the first paragraph on the page "/PackagingWithGit/GitDpm/Initialize" is impossible to understand for newbies. What is it talking about? There is the term "git-dpm"
    pointing to "/PackagingWithGit/GitDpm/" (now after I edit that page
    myself). But I am not sure what "git-dpm" is and how much of that big
    page I should work on to make that "uscan" command run.

    Kind
    Christian

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From weepingclown@21:1/5 to c.buhtz@posteo.jp on Thu Mar 28 20:40:02 2024
    ------6ZIE85JF8EP6XQ6USOQZ0EEU9SLOW6
    Content-Type: text/plain;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    Hello Christian,

    Without knowing what exactly fails for you, it is quite difficult to point out anything. The steps documented in the wiki are supposed to be working.

    That said, the current packaging go to tool for the DPT should be py2dsp, if what you are working on is a python package. `apt install pypi2deb` will give the py2dsp command and `py2dsp <package-name-in-pypi>` can give you a nifty initial template to
    start with. For more info you can try `py2dsp --help`. What I typically use when creating a new package is `py2dsp --profile dpt --distribution unstable --revision 1 --github <github-url> <pypi-package-name>`.

    No other structured documentation on using py2dsp is available AFAIK, and I did struggle initially to understand how to use it. Creating a wiki page for that has been my plan since then, but couldn't get to it because of time constraints as well as fear
    of presenting the wrong info. Maybe I'll try to get to that soon enough.

    Hope this helps.

    Best,
    Ananthu

    On 28 March 2024 6:55:30 pm UTC, c.buhtz@posteo.jp wrote:
    Hello again,

    the problem persists.

    I don't have the right information in the wiki. So I don't know how to >proceed with creating a package.

    Can someone point me into the right direction please.

    I have the repo on Salsa. But it is empty. And the commands
    described in "Creating a new package" don't help me to fill it up.

    Thanks in advance,
    Christian Buhtz

    On 2024-03-20 22:32 <c.buhtz@posteo.jp> wrote:
    Hello,

    in order to improve the documentation I need to understand some parts.
    But I am stuck. I don't get it what the authors trying to explain.

    It is about "Creating a new package" section:
    https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package

    The second paragraph points to dsc-file creation described here:
    https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize

    The third paragraph is a list of shell commands that do not work in my
    case. For example "uscan" don't work because it does not know what and
    where to download. Of course I understand that.

    I assume I need a dsc file?

    It seems that my understanding problem is the second paragraph and the
    dsc-page it is linking, too.

    For example the first paragraph on the page
    "/PackagingWithGit/GitDpm/Initialize" is impossible to understand for
    newbies. What is it talking about? There is the term "git-dpm"
    pointing to "/PackagingWithGit/GitDpm/" (now after I edit that page
    myself). But I am not sure what "git-dpm" is and how much of that big
    page I should work on to make that "uscan" command run.

    Kind
    Christian


    ------6ZIE85JF8EP6XQ6USOQZ0EEU9SLOW6
    Content-Type: text/html;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    <html><head></head><body><div dir="auto">Hello Christian,<br><br>Without knowing what exactly fails for you, it is quite difficult to point out anything. The steps documented in the wiki are supposed to be working.<br><br>That said, the current packaging
    go to tool for the DPT should be py2dsp, if what you are working on is a python package. `apt install pypi2deb` will give the py2dsp command and `py2dsp &lt;package-name-in-pypi&gt;` can give you a nifty initial template to start with. For more info you
    can try `py2dsp --help`. What I typically use when creating a new package is `py2dsp --profile dpt --distribution unstable --revision 1 --github &lt;github-url&gt; &lt;pypi-package-name&gt;`.<br><br>No other structured documentation on using py2dsp is
    available AFAIK, and I did struggle initially to understand how to use it. Creating a wiki page for that has been my plan since then, but couldn't get to it because of time constraints as well as fear of presenting the wrong info. Maybe I'll try to get
    to that soon enough.<br><br>Hope this helps.<br><br>Best,<br>Ananthu</div><br><br><div class="gmail_quote"><div dir="auto">On 28 March 2024 6:55:30 pm UTC, c.buhtz@posteo.jp wrote:</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex;
    border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
    <pre class="k9mail"><div dir="auto">Hello again,<br><br>the problem persists.<br><br>I don't have the right information in the wiki. So I don't know how to<br>proceed with creating a package.<br><br>Can someone point me into the right direction please.<
    <br>I have the repo on Salsa. But it is empty. And the commands<br>described in "Creating a new package" don't help me to fill it up.<br><br>Thanks in advance,<br>Christian Buhtz<br><br>On 2024-03-20 22:32 &lt;c.buhtz@posteo.jp&gt; wrote:<br></div><
    blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><div dir="auto">Hello,<br><br>in order to improve the documentation I need to understand some parts.<br>But I am stuck. I don't get it
    what the authors trying to explain.<br><br>It is about "Creating a new package" section:<br><a href="https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package">https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package</a><br><br>The
    second paragraph points to dsc-file creation described here:<br><a href="https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize">https://wiki.debian.org/PackagingWithGit/GitDpm/Initialize</a><br><br>The third paragraph is a list of shell commands
    that do not work in my<br>case. For example "uscan" don't work because it does not know what and<br>where to download. Of course I understand that.<br><br>I assume I need a dsc file?<br><br>It seems that my understanding problem is the second paragraph
    and the<br>dsc-page it is linking, too.<br><br>For example the first paragraph on the page<br>"/PackagingWithGit/GitDpm/Initialize" is impossible to understand for<br>newbies. What is it talking about? There is the term "git-dpm" <br>pointing to "/
    PackagingWithGit/GitDpm/" (now after I edit that page<br>myself). But I am not sure what "git-dpm" is and how much of that big<br>page I should work on to make that "uscan" command run.<br><br>Kind<br>Christian<br></div></blockquote><div dir="auto"><br></
    </pre></blockquote></div></body></html> ------6ZIE85JF8EP6XQ6USOQZ0EEU9SLOW6--

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Boyuan Yang@21:1/5 to All on Fri Mar 29 04:50:01 2024
    Hi,

    (I am off debian-python mailing list -- please CC me.
    Also, I cannot include previous text in the threads because
    I don't have them in my mailbox. Sorry!)

    Reading https://lists.debian.org/debian-python/2024/03/msg00152.html
    and https://lists.debian.org/debian-python/2024/03/msg00151.html ,
    I can see that https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package is
    indeed poorly written:

    *) It still points to pages of GitDpm, which the Python team is not
    using anymore.

    *) It does not describe the procedure of packaging from scratch very
    well. To be precise, it lacks info about packaging from a status where
    both git repo and the .dsc source package are nonexistant. It doesn't
    describe the "gbp import-orig" subcommand for packaging initialization,
    which is suprising. The same issue applies to https://wiki.debian.org/PackagingWithGit .

    For newcomers, I believe they will get lost at the very first line on https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package ,
    which is "uscan". No one knows why uscan can work with an empty
    directory. The newcomer may not even know what uscan is (actually they
    are supposed to know what uscan is in advance -- but explanation should
    be added here anyway).

    If you really want a readily-available better documentation, consider
    reading the official documentation of git-buildpackage at https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/ .
    After you understand that, merge the remaining useful information from https://wiki.debian.org/Python/GitPackaging to get a thorough
    understanding.

    I don't have a good solution to Wiki pages yet since the article logic
    needs some major editing.

    Thanks,
    Boyuan Yang

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEfncpR22H1vEdkazLwpPntGGCWs4FAmYGOWEACgkQwpPntGGC Ws7zdg/+Jml4M8nZPYZrZKzX2A14ja8461cZEZn591+Pw3/vrb/xFLkxcYDbTwjk u0alT4lIf7aXJl/H0I7ET9erJcU9SMbgmHgcreI/W3cYdl6KOjGUS8S/1X3inUqK k1q+vPal7Ms/Eo5wtAsphKLRw/ckfnNtKkDXHyux2B+c2legVp6umcxsq4QMSTL4 LZi+A5oV4pCNbgsRk1hQOBno4asHEbvwH2qkeyTh68ipirYbdBmEpZn+/oLyt94L H6eZarvzsXxEUCUS9Jo98d3X0gsE6T9RIkbrKAUypudbp7U3L46hf0AZEK/tA4CH yqfVjVY3Npy6V5F68Gj+YdazgmO63dHyz9ijENBLuYofgkBApVoy0UVWJAZrGxVt uFvKUgaX3ANwOvMsEqz1ng9OA7iQKwFuUbR8DHMxijz3WFf2hVcbp0xufa8UtVDe SRmpt9fX5rMNu22uimv9R2eZxBq4QsepOK0x6jiCCtMiMa9cgNfbFMAFc7Gu1QW0 +rFML1IKDpH8V9N/M4pw1Abf4WWts1fTk8vm/5CnBuwknakCeUmeStdHSHnxOBIx v9wUT5LOXIaYSCR41YT+kPQdBi4FAks1pc69od+hOItSp+ha7Geqt8wEyYniQOV6 vv79giZA+8HeSZ0SkbPOi41bG+dcm5SOhI452oPXT6zY8hXXxrc=
    =WrO3
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Tille@21:1/5 to All on Fri Mar 29 07:50:01 2024
    Hi,

    Am Thu, Mar 28, 2024 at 11:45:36PM -0400 schrieb Boyuan Yang:

    I don't have a good solution to Wiki pages yet since the article logic
    needs some major editing.

    I can't provide any help for the Wiki page for DPMT. In Debian Med we
    provide some resources for newcomers:

    Mentoring of the Month:
    https://salsa.debian.org/med-team/community/MoM/-/wikis/Mentoring-of-the-Month-(MoM)

    Debian Med policy is more verbose about packaging details
    https://med-team.pages.debian.net/policy/


    Perhaps a hint to my Live packaging workshop

    https://debconf23.debconf.org/talks/34-live-packaging-workshop/

    might be helpful as well. I did more of these[1] - unfortunately not
    all recordings are available.

    Kind regards
    Andreas.

    [1] https://people.debian.org/~tille/talks/other_en.html

    --
    https://fam-tille.de

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to All on Fri Mar 29 09:00:03 2024
    Dear Boyuan Yang,

    Thanks for your feedback.

    I can see that https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package is
    indeed poorly written:

    *) It still
    [...]

    I agree to your list of aspects that need to be improved.
    It seems you really understood the "workflow" of a newbie.

    For newcomers, I believe they will get lost at the very first line on https://wiki.debian.org/Python/GitPackaging#Creating_a_new_package

    Exactly.

    If you really want a readily-available better documentation, consider
    reading the official documentation of git-buildpackage at https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/ .
    After you understand that, merge the remaining useful information from https://wiki.debian.org/Python/GitPackaging to get a thorough
    understanding.

    I am not willing to do this. With all respect to the DPT but I don't
    write new documentation from scratch. I am not in the position. I can
    improve existing documentation as I did in the past.

    But this thread is about that I am on a point where I am lost in the
    current documentation and someone else with more experience and
    knowledge should take over and clear the path.

    Thanks,
    Christian Buhtz

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to andreas@an3as.eu on Fri Mar 29 09:00:03 2024
    On 2024-03-29 07:48 Andreas Tille <andreas@an3as.eu> wrote:
    Perhaps a hint to my Live packaging workshop

    https://debconf23.debconf.org/talks/34-live-packaging-workshop/

    Also not Python (but Go?) related but I will check it out.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to ooo@mechtilde.de on Fri Mar 29 09:00:03 2024
    Dear Metchtilde,

    Thanks for the reply.

    On 2024-03-29 08:28 Mechtilde <ooo@mechtilde.de> wrote:
    If some want to have more information you can read

    https://ddp-team.pages.debian.net/dpb/BuildWithGBP.pdf in German

    This document is not Python related. The section about Python is empty.
    See section 15 at PDF page 65.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carsten Schoenert@21:1/5 to All on Fri Mar 29 10:00:02 2024
    Am 29.03.24 um 08:51 schrieb c.buhtz@posteo.jp:
    This document is not Python related. The section about Python is empty.
    See section 15 at PDF page 65.

    This isn't really needed yet, packaging Debian packages is technically
    always the same.
    You seems to have a general problem to understand what is the basic
    workflow, what are the steps, what are the various files in the debian/
    folders are for, what are the constraints and relationships of these
    files and how the low level tools work together. You need to work on
    this first before starting to dive into special handling for different languages done by the helper tools.

    So Mechtilde pointed correctly to the

    New Maintainer Guide:
    https://www.debian.org/doc/manuals/maint-guide/

    and to the
    Developer Reference:
    https://www.debian.org/doc/manuals/developers-reference/

    Asking meta questions (It's not working, what do I wrong?) isn't
    helpful, ask specific questions and describe what you already did befor
    you encountered the problem.

    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.

    git-buildpackage is one of the high level tools that can and should
    packaging tasks easier, to use it effective you will need to know what
    it is doing under the hood, means you need to be familiar with the low
    level tools that getting called by gbp.

    --
    Regards
    Carsten

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to c.schoenert@t-online.de on Fri Mar 29 12:30:01 2024
    On 2024-03-29 09:52 Carsten Schoenert <c.schoenert@t-online.de> wrote:
    New Maintainer Guide:
    https://www.debian.org/doc/manuals/maint-guide/

    That document itself points to a new rewritten "tutorial" in its first paragraph.

    <https://www.debian.org/doc/manuals/debmake-doc/index.en.html>

    I suggest to remove one of them. There is to much redundant and
    sometimes out dated "documentation".

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul Boddie@21:1/5 to All on Fri Mar 29 14:00:01 2024
    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.

    git-buildpackage is one of the high level tools that can and should
    packaging tasks easier, to use it effective you will need to know what
    it is doing under the hood, means you need to be familiar with the low
    level tools that getting called by gbp.

    I packaged stuff for Debian about ten years ago or so and recently repackaged one tool, whose package is now parked in a state where it could conceivably be incorporated into Debian but is evidently not of interest to anyone here (or I need to promote it more, perhaps). I have also been packaging Moin 2.0 which
    is coincidentally relevant to these documentation discussion threads.

    After following the advice on the Debian Wiki about suitable approaches for packaging Python libraries and applications, I ended up reading all about gbp and trying out the different suggestions in its documentation. Although quite helpful, this documentation does not give concrete advice about what would-be packagers should do, so it really does fall on context-specific advice to fill in those gaps.

    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
    <introduce debian directory here>
    git add debian
    git commit
    <introduce upstream tag here, if you want to avoid hassle with Salsa>
    git push origin <upstream tag>
    gbp buildpackage --git-debian-branch=debian/master \
    --git-upstream-tag='upstream/%(version)s' --git-builder=sbuild

    This saves me from having to re-read the gbp documentation or find the appropriate mention on the Debian Wiki of whatever the accepted approach might be. I also wrote summaries to maintaining patches since it seemed that gbp could be quite obstructive if not operated in precisely the right fashion, not entirely obvious from its documentation.

    Obviously, this leaves a lot of stuff out, but it is a reminder and not a complete guide. Indeed, the issue of what the Debian directory might contain
    is almost an orthogonal topic to the mechanics of gbp. And then there are the social or collaborative aspects of the exercise as well, like setting up a Salsa account and project, filing an ITP, and so on.

    Yes, such matters are covered in the more general documentation, at least if
    it was updated and no longer refers to Alioth or whatever. But in this context the advice will be quite specific and not vague suggestions that present more choices to be made rather than eliminating them.

    In any case, I commend this effort to improve the documentation. In some ways, it really is quite a brave endeavour. I would have made edits to various pages myself, but I don't want to tread on any toes, and I don't really have much time to spend on this matter alongside numerous other commitments at the moment.

    Paul

    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.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carsten Schoenert@21:1/5 to All on Fri Mar 29 14:50:02 2024
    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
    <introduce debian directory here>
    git add debian
    git commit
    <introduce upstream tag here, if you want to avoid hassle with Salsa>
    git push origin <upstream tag>
    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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From weepingclown@21:1/5 to All on Fri Mar 29 16:40:01 2024
    ------I91BVQV4ZEVM1DXMDB324SRZ9TB12J
    Content-Type: text/plain;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    Hi,

    As an addendum, there is also dedicated wiki pages[0] intended to be of help to newcomers. Not saying that solves everything mentioned before, but it does help quite a lot. As I understand it, the current problem we have is more about the wiki being less
    organized than there not being sufficient resources or them not being easily accessible to everyone.

    [0] https://wiki.debian.org/Packaging/Learn

    Best,
    Ananthu
    ------I91BVQV4ZEVM1DXMDB324SRZ9TB12J
    Content-Type: text/html;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    <!DOCTYPE html><html><body><div dir="auto">Hi,<br><br>As an addendum, there is also dedicated wiki pages[0] intended to be of help to newcomers. Not saying that solves everything mentioned before, but it does help quite a lot. As I understand it, the
    current problem we have is more about the wiki being less organized than there not being sufficient resources or them not being easily accessible to everyone.<br><br>[0] <a href="https://wiki.debian.org/Packaging/Learn">https://wiki.debian.org/Packaging/
    Learn</a><br><br>Best,<br>Ananthu</div></body></html> ------I91BVQV4ZEVM1DXMDB324SRZ9TB12J--

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to weepingclown@disroot.org on Fri Mar 29 17:30:01 2024
    On 2024-03-29 15:34 weepingclown <weepingclown@disroot.org> wrote:
    As I understand it, the current
    problem we have is more about the wiki being less organized than
    there not being sufficient resources or them not being easily
    accessible to everyone.

    Correct. The information is there. But the linkage between them is
    often missing. But there is also some outdated or redundant information.

    As a positive (but of course not perfect) example I can name the "Guide
    for Debian Maintainers" [1] by Osamu Aoki. In its preface these
    describe its own location related to all the other packaging
    documentation existing. Some pages later it gives a short introduction
    to some tools and how they belong together. He gives the "big picture".

    [1] -- <https://www.debian.org/doc/manuals/debmake-doc>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From c.buhtz@posteo.jp@21:1/5 to c.schoenert@t-online.de on Fri Mar 29 17:20:01 2024
    On 2024-03-29 14:48 Carsten Schoenert <c.schoenert@t-online.de> wrote:
    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
    [...]
    [1] https://debianforum.de/forum/viewtopic.php?t=187764

    I followed this steps these days. We discussed some details but the
    discussion got stuck. I didn't received an answer of my last question
    in that thread.

    Kind
    Christian Buhtz

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)