Uploading to Extras-devel
m (→Preparing a source package: Whitespace) |
(Clarify promotion minimum criteria.) |
||
Line 72: | Line 72: | ||
== Promotion == | == Promotion == | ||
- | After the autobuilder builds a package, it will be available in Extras-Devel. This is the experimental repository. | + | After the autobuilder builds a package, it will be available in Extras-Devel. This is the experimental repository. |
+ | |||
+ | Please make sure your package is ready for the masses and at least test: | ||
+ | * if it installs without problems | ||
+ | * if it uninstalls without problems | ||
+ | * if it doesn't introduce dependency problems for other packages. | ||
+ | |||
+ | You can promote your package to Extras with the promotion interface. | ||
* [https://garage.maemo.org/promoter/chinook chinook] - Maemo 4.0 | * [https://garage.maemo.org/promoter/chinook chinook] - Maemo 4.0 |
Revision as of 12:29, 8 July 2008
Contents |
Pre-requisites
Setup
Setting up SSH and PGP to upload to extras
Put your SSH key[1] and PGP key[2] into Garage.
- If you need to create an RSA SSH key (Make sure it is an RSA key):
-
ssk-keygen -t rsa
(enter enter enter). - Copy the contents of
~/.ssh/id_rsa.pub
in the "Public SSH keys" section of your garage account maintenance page.
- If you need to create a PGP key:
- Create the key using:
gpg --gen-key
: enter your name, email address etc. - Export the key using: gpg --export --armor jqdoe@example.com
- Copy the text to the extras sign-up page.
Setting up Scratchbox to use the extras repository
Add the extras repository to your Scratchbox install:
- Login to Scratchbox
- Create
/etc/apt/sources.list.d/extras-repo.list
- Update
apt
's information.
Note: this should be done in both your ARMEL and x86 targets.
/scratchbox/login cat >/etc/apt/sources.list.d/extras-repo.list <<EOT #Maemo extras deb http://repository.maemo.org/extras/ diablo free non-free deb-src http://repository.maemo.org/extras/ diablo free EOT fakeroot apt-get update
Preparing a source package
Upstream sources can be easily repacked using mud-builder which automates the steps below. Alternatively, you can do it directly using Debian tooling:
Create your package with dpkg-buildpackage in the project source directory:
dpkg-buildpackage -rfakeroot -sa -S -i
You may verify that your Build-Depends field in debian/control is complete by running
dpkg-depcheck -m dpkg-buildpackage -rfakeroot -b
in the source tree. (You'll need to fakeroot apt-get install devscripts
for this to work).
Upload
Sign the package
Sign the .changes file (you'll need to do it outside scratchbox) with
debsign -k<key-id> <package>.changes
If you have multiple keys or don't know your key-id, you can find it with
gpg --list-keys
Example output:
pub 1024D/FEA210ED 2007-06-14 [expired: 2008-06-13] uid Niels Breet (Maemo) <maemo@xxx> pub 4096R/80C3F817 2008-06-30 [expires: 2009-06-30] uid Niels Breet (Maemo) <niels@xxx>
The key-id is found in the second column, in this case FEA210ED or 80C3F817.
Upload the package
Describe: upload source package to diablo-extras-builder via dput
[3], scp
[4] or through the web interface[5].
Point to: existing documentation
Promotion
After the autobuilder builds a package, it will be available in Extras-Devel. This is the experimental repository.
Please make sure your package is ready for the masses and at least test:
- if it installs without problems
- if it uninstalls without problems
- if it doesn't introduce dependency problems for other packages.
You can promote your package to Extras with the promotion interface.
Resources
- Extras assistant
- Garage SSH key
- Build logs: chinook, diablo