Skip to content

Create edit ppa documentation#561

Merged
jugmac00 merged 3 commits into
canonical:mainfrom
jugmac00:create-edit-ppa-documentation
Jul 17, 2026
Merged

Create edit ppa documentation#561
jugmac00 merged 3 commits into
canonical:mainfrom
jugmac00:create-edit-ppa-documentation

Conversation

@jugmac00

Copy link
Copy Markdown
Member

No description provided.

@riadelterek riadelterek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@odadacharles odadacharles left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this @jugmac00 . I've left some comments and suggestions.

Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
- :guilabel:`Publish` -- whether the apt repository is updated. If
disabled, nothing is published; for a private PPA no builds are
dispatched either.
- :guilabel:`Build debug symbols` -- create debug symbol packages for

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's a debug symbol package and will someone learning how to create and edit PPAs know what it is.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A debug symbol is a map that connects compiled, machine-readable binary code back to human-readable source code. When a program is built for normal use, these symbols are stripped out to drastically reduce the file size.

Without debug symbols, if a program crashes, your debugger (like gdb) will only show raw memory addresses (e.g., 0x00007fff8234). With debug symbols enabled, it translates those addresses into actual function names, source file paths, and exact line numbers (e.g., main.c: line 42).

In Ubuntu, debug symbols are packed into special packages ending in -dbgsym and formatted as .ddeb files.

I would not want to add all these infos on the PPA page.

I just checked the Ubuntu Project Docs, and they have a full page for that topic, but that also focuses on getting debug symbols for the archive.
https://ubuntu.com/server/docs/how-to/debugging/debug-symbol-packages/

Ideally, we would have a glossary on our own docs, which could give some background info.

I think we can follow up after this PR.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see we have one, see https://ubuntu.com/docs/launchpad/user/reference/glossary/ - but that needs some love.

@odadacharles Would you consider adding this to your list of documents to revise? I am happy to work on that in my next doc rotation.

Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
Comment on lines +141 to +142
A PPA can depend on other archives, so that packages published in those
archives are available when building packages in your PPA. Dependencies can be

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A PPA can depend on other archives, so that packages published in those
archives are available when building packages in your PPA. Dependencies can be
A PPA can have dependencies in other archives, such that packages published in those
archives are required/called when building packages in your PPA. Dependencies can be

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the current phrasing is more correct ("depend on other archives"), and easier to understand. I will keep the current wording.

Comment on lines +154 to +157
- Choose which packages of the distribution's primary archive are
used as build dependencies (for example :guilabel:`Basic`,
:guilabel:`Security`, :guilabel:`Default`, :guilabel:`Proposed`
or :guilabel:`Backports`).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Choose which packages of the distribution's primary archive are
used as build dependencies (for example :guilabel:`Basic`,
:guilabel:`Security`, :guilabel:`Default`, :guilabel:`Proposed`
or :guilabel:`Backports`).
- Choose which packages of the distribution's primary archive are
used as build dependencies (for example Basic, Security, Default, Proposed, Backports).

Once again, intention. Having these as GUI elements is too rigid for what they are

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are GUI elements. See e.g. https://launchpad.net/~launchpad/+archive/ubuntu/buildd/+edit-dependencies. I'd like to keep them as is.

Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
Comment thread docs/user/how-to/packaging/create-ppa.rst Outdated
Extend the "create PPA" how-to with a "Manage archive dependencies"
section covering both the web interface and the web service API,
following the existing tabbed layout used elsewhere on the page.

Dependencies can be managed through the +edit-dependencies view or via
the API. Pin priorities are currently API-only, so the pin_priority
usage (including changing an existing dependency and the PPA-only
restriction) is documented within the web service API tab, and the web
interface tab notes that pinning is not yet available there.
@jugmac00
jugmac00 force-pushed the create-edit-ppa-documentation branch from 6ecab48 to 4ac2f07 Compare July 17, 2026 14:33
@jugmac00

Copy link
Copy Markdown
Member Author

Thanks a lot for your review, @odadacharles.

I have applied most of the suggested changes, and followed up otherwise in the comments.

For a second round of reviews, maybe the following diff makes it easier, as I already have squashed the commits.

diff --git a/docs/user/how-to/packaging/create-ppa.rst b/docs/user/how-to/packaging/create-ppa.rst
index 0fadf67..f4eb4c5 100644
--- a/docs/user/how-to/packaging/create-ppa.rst
+++ b/docs/user/how-to/packaging/create-ppa.rst
@@ -66,7 +66,7 @@ Launchpad users can create PPAs via the web user interface or using the API.
 Edit an existing PPA
 --------------------
          .. note::
 
@@ -201,7 +201,8 @@ managed either through the web user interface or using the API.
             `apt_preferences(5) manual page
             <https://manpages.ubuntu.com/manpages/stonking/man5/apt_preferences.5.html>`_.
 
-        #. Add a dependency with a custom pin priority::
+        #. To add a dependency with a custom pin priority, include a value for
+           `pin_priority` when declaring the dependency::
 
             ppa.addArchiveDependency(dependency=dependency, pocket="Release", pin_priority=1000)
 

-Once a PPA exists, you can change its details either through the web user
+After creating a PPA, you can change its details either through the web user
 interface or using the API.
 
 .. tab-set::
@@ -76,7 +76,7 @@ interface or using the API.
         #. Log into Launchpad and go to the PPA's overview page, for example
            ``https://launchpad.net/~/+archive/ubuntu/test-ppa``.
         #. Select :guilabel:`Change details`.
-        #. On the :guilabel:`Edit` page you can change the following:
+        #. On the edit page you can change the following:
 
            - :guilabel:`Display name` -- a short title for the PPA.
            - :guilabel:`Description` -- a short description of the PPA. URLs are
@@ -94,7 +94,7 @@ interface or using the API.
              build. Some architectures are restricted and may only be enabled or
              disabled by administrators.
 
-        #. Select :guilabel:`Save`.
+        #. Save any changes you've made.
 
 
     .. tab-item:: Web service API
@@ -126,7 +126,7 @@ interface or using the API.
 
             amd64 = lp.processors.getByName(name="amd64")
             arm64 = lp.processors.getByName(name="arm64")
-            ppa.setProcessors(processors=[amd64, arm64])
+            ppa.setProcessors(processors=[amd64.self_link, arm64.self_link])
 
         .. note::
 
@@ -160,7 +160,7 @@ managed either through the web user interface or using the API.
            - Remove existing dependencies by selecting them under
              :guilabel:`Extra dependencies`.
 
-        #. Select :guilabel:`Save`.
+        #. Save any changes you've made.
          .. note::
 
@@ -201,7 +201,8 @@ managed either through the web user interface or using the API.
             `apt_preferences(5) manual page
             <https://manpages.ubuntu.com/manpages/stonking/man5/apt_preferences.5.html>`_.
 
-        #. Add a dependency with a custom pin priority::
+        #. To add a dependency with a custom pin priority, include a value for
+           `pin_priority` when declaring the dependency::
 
             ppa.addArchiveDependency(dependency=dependency, pocket="Release", pin_priority=1000)

@riadelterek riadelterek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm ✔️

@jugmac00
jugmac00 merged commit 5ef13c7 into canonical:main Jul 17, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants