<div dir="ltr">OK, I'm stuck. This sounds great, and just the sort of thing I want to do as a casual Ubuntu-oriented developer, but I keep running into roadblocks, and can't find any documentation.<div><br></div><div>I google "git-ubuntu" and find nothing more recent and relevant than this 2017 article:</div><div><br></div><div>Developing Ubuntu using git | Ubuntu<br> <a href="https://ubuntu.com/blog/developing-ubuntu-using-git">https://ubuntu.com/blog/developing-ubuntu-using-git</a><br></div><div><br></div><div>It doesn't lead me immediately to anything I can just run. Nor does wajig search git-ubuntu or ChatGPT-4 or this:</div><div><br></div><div>$ git ubuntu</div>git: 'ubuntu' is not a git command. See 'git --help'.<br><div><br></div><div>Next I try ` git clone lp:git-ubuntu` and get</div><div>ssh: Could not resolve hostname lp: Temporary failure in name resolution<br></div><div><br></div><div>ChatGPT suggests that perhaps I meant this:</div><div><br></div><div>$ git clone --verbose <a href="https://git.launchpad.net/git-ubuntu:git-ubuntu">https://git.launchpad.net/git-ubuntu:git-ubuntu</a><br>Cloning into 'git-ubuntu'...<br>Username for '<a href="https://git.launchpad.net">https://git.launchpad.net</a>':<br></div><div><br></div><div>It seems odd there would be a need to authenticate, and my first attempts at using an Ubuntu SSO credential failed there.</div><div><br></div><div>So how does a guy who's forgotten most of what he ever learned about launchpad, bzr and Ubuntu source management catch up?</div><div><br></div><div>Finally, perhaps it would help to take the Ubuntu/Debian developer documentation and load it into some large language model for easier natural language search?</div><div>Ala one of these:</div><div><br></div><div>How to implement Q&A against your documentation with GPT3, embeddings and Datasette<br> <a href="https://simonwillison.net/2023/Jan/13/semantic-search-answers/">https://simonwillison.net/2023/Jan/13/semantic-search-answers/</a><br><br>How to customize LLMs like ChatGPT with your own data and documents - TechTalks<br> <a href="https://bdtechtalks.com/2023/05/01/customize-chatgpt-llm-embeddings/">https://bdtechtalks.com/2023/05/01/customize-chatgpt-llm-embeddings/</a><br></div><div><br></div><div>Cheers,</div><div><br></div><div>Neal</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 9, 2023 at 11:24 PM Bryce Harrington <<a href="mailto:bryce.harrington@canonical.com">bryce.harrington@canonical.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Fri, Jun 09, 2023 at 09:11:34PM -0700, Steve Langasek wrote:<br>
> On Wed, Jun 07, 2023 at 09:27:47PM -0700, Bryce Harrington wrote:<br>
> > On Wed, Jun 07, 2023 at 06:41:14PM -0700, Steve Langasek wrote:<br>
> <br>
> > It does not exist, actually!  I recall we dropped it a few years ago,<br>
> > see see f2dc622e.<br>
> <br>
> $ git-ubuntu help<br>
> usage: git-ubuntu [-h] <command> ...<br>
> git-ubuntu: error: argument <command>: invalid choice: 'help' (choose from 'build', 'build-source', 'import-local', 'import-ppa', 'lint', 'review', 'clone', 'export-orig', 'import', 'importer-service-broker', 'importer-service-poller', 'importer-service-worker', 'merge', 'prepare-upload', 'queue', 'remote', 'submit', 'tag')<br>
>                                                                             ^^^^^<br>
> $<br>
<br>
Heh, that list is pretty out of date.  build-source is gone, and I think<br>
review and lint are as well.  There is still a 'build' module with some<br>
of the remaining code from the original build command, but you can see<br>
from the above commit that the hook for the command was removed.<br>
<br>
> > That said, though, I've wondered if 'build' may not necessarily be the<br>
> > ideal jargon, anyway.  Since the (prepare-upload args) step can trigger<br>
> > a git push, and because this is done principly when uploading, it feels<br>
> > more like a submission-style workflow than a build; "build" also implies<br>
> > you're creating some form of artifact for local use, which in this case<br>
> > you're not, really.<br>
> <br>
> > So, I'd suggest that even though 'git-ubuntu build' is not used, you may<br>
> > still want to think more anyway about if there's a better term.<br>
> <br>
> Related commands:<br>
> <br>
>  - dpkg-buildpackage<br>
>  - debuild<br>
>  - gbp buildpackage<br>
>  - bzr builddeb<br>
>  - sbuild<br>
> <br>
> So "build" is quite a strong theme in the existing tools.<br>
><br>
> An interesting point, though, is that this makes me realize I would only<br>
> ever care about the sauce this provides when preparing a source package for<br>
> upload to Ubuntu, and not when I was trying to do a binary package build. <br>
> Another previous git-ubuntu subcommand was 'git-ubuntu build-source'.  Do<br>
> you think that would be a better fit?<br>
<br>
That occurred to me too.  We had subsumbed 'build-source' to 'build -S'<br>
since both commands used basically the same code just passing the -S<br>
along to the underlying tools.<br>
<br>
> I don't think 'submission-style' quite describes what I'm expecting to<br>
> achieve here.  I might want to build a source package, then do a variety of<br>
> things with it before actually uploading it; e.g. run a debdiff against the<br>
> previous package to be sure it's actually a clean diff at that level, take<br>
> the source artifacts and do a test build, push to a ppa before pushing to<br>
> the Ubuntu archive, manually mangle the .changes file (rare, but I happen<br>
> to have just done this for a series of SRUs so that they would have complete<br>
> changelogs but not link to a whole list of unrelated bugs in the SRU<br>
> process), etc.  And the target of the 'git push' may or may not be something<br>
> that we want to merge immediately, may or may not want to raise an MP for<br>
> immediately.<br>
<br>
Right, the point I was making there is that since the 'prepare-upload'<br>
step pushes the branch to Launchpad, I don't want or need to include<br>
that in my workflow until the end, after all that is done and I'm ready<br>
to do the .changes upload.  Then I do one final debuild -S and run<br>
prepare-upload, verify it worked and check the .changes file has<br>
expected fields, and then I directly dput the .changes.  I think of that<br>
as more of a submission-style procedure.<br>
<br>
But, there's more than one way to do this.  I'm sure we all have unique<br>
workflows for how we prep source packages.<br>
<br>
Bryce<br>
<br>
-- <br>
ubuntu-devel mailing list<br>
<a href="mailto:ubuntu-devel@lists.ubuntu.com" target="_blank">ubuntu-devel@lists.ubuntu.com</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel</a><br>
</blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">Neal McBurnett                 <a href="http://neal.mcburnett.org/" target="_blank">http://neal.mcburnett.org/</a><br></div>