daily-upstream-builds-xfce
|
|
Documents |
|
|
Archive |
| /Artwork /ArtworkGuidelines /DefaultImageViewer /DefaultMailClient /DefaultMusicPlayer /NotifyOsd /XubuntuDocumentation /daily-upstream-builds-xfce /session-slim-down |
Daily upstream builds of Xfce
Perform daily upstream package builds of Xfce trunk for testing & debugging
Launchpad entry: daily-upstream-builds-xfce
Release target: Karmic
Contributors: CodySomerville
Field of the spec: Team Infrastructure
Summary
The goal is to take the trunk of Xfce (only core components for now) every night and attempt to build two sets of debian packages: relatively unmodified (as close as vanilla upstream as possible) and patched as normal (modified with our usual set of patches).
Rationale
This will provide us with a number of benefits which include, but are not limited to, the following:
- Early detection of problems, issues, and concerns
- Easier to help test the latest and greatest Xfce
- Easier to test if a bug has been fixed already or not
- Easier to determine if a bug is our fault or really a bug upstream
Use cases
- Jenny, an Xfce developer, asks Zelda to test some changes she made to xfce4-mixer's slider controls the other day. Zelda easily installs the xfce4-mixer from the PPA and finds that she can no longer move the sliders to change the volume after setting them to max. Zelda removes the xfce4-mixer from the PPA and re-installs the latest version from the Xubuntu after sharing a laugh about the bug with Jenny.
- Zorro wants to help contribute to Xubuntu/Xfce via testing/QA so he enables the PPA in Software Sources. Since Zorro gets the latest from trunk every day, he is able to keep up with development and helps make Xubuntu/Xfce better by helping spot bugs and problems early.
- Wayne, a Xubuntu developer, is trying to debug a tricky issue that seems to be only affecting Xubuntu users. Wayne uses the packages from the two PPAs (vanilla vs. Xubuntu) and determines the issue is with an old Xubuntu patch (or really is in Xfce).
- Zippy has the nightly build PPAs enabled but a change in the source code upstream makes the packages fail to build. No one has gotten around to fixing the issue for awhile and when Zippy reports the issue to Xfce developers the Xfce developers get frustrated.
The specification
Design
We'll use launchpad's ability to import remove SVN and GIT into launchpad bzr branches. They will be marked as trunk of their respective launchpad project.
A team will be created to own the two bzr branches per Xfce component (vanilla vs. xubuntu) and two PPAs that will host the packages of the respective bzr branches (again, vanilla vs. xubuntu).
A tool (see below) will be used to prepare and perform the daily (aka nightly) uploads to the PPAs for the launchpad buildds to build. The tool will probably initially be hosted/ran on my machine but we'll naturally want to get more permanent hosting somewhere more reliable.
TODO: Explore different available tools such as:
Notes on the implementation
Status of Xfce Core Components
Component Name |
Launchpad Product |
Upstream Code Import |
Nightly Builds |
|
|||
|
|||
|
|||
|
|||
|
|||
xfconf - |
|
||
|
Status of Xfce Desktop Applications
Component Name |
Launchpad Product |
Upstream Code Import |
Nightly Builds |
|
|||
|
|
||
|
|||
|
|||
|
|||
|
|||
|
Status of Xfce Libraries, Engines, & Services
Component Name |
Launchpad Product |
Upstream Code Import |
Nightly Builds |
|
|||
|
Extra maintenance work after the spec
- The tool will need to be maintained to ensure it keeps running.
- We'll need to maintain the debian packaging used to build the packages (mitigated by the magic of bzr)
- We'll need to update all the imports once Xfce switches to git
- We'll need to poke launchpad developers to fix any import failures if they occur
Issues that need solving
Upstream
By the Xubuntu team
By the developer implementing the spec
TODO: Explore different available tools such as:
Comments
"Short comment" commenter