User Tools

Site Tools


userdoc:kup

This is an old revision of the document!


Using kernel.org uploader (kup)

Kernel.org uploader (kup) is a Perl program that was written for the sole purpose of making sure that any software uploaded to kernel.org is cryptographically verified against a list of pre-approved maintainers. If you are a kernel developer and you'd like to be able to upload tarballs, patches or any other data to https://kernel.org/pub/, this document is for you.

Before you begin

EXTREMELY IMPORTANT: Do not upload non-Open Source software without special prior permission. This includes binaries of software intended to be Open Source for which source code isn't actually available yet. IN PARTICULAR, do not upload non-Open Source cryptographic software, or cryptographic binaries from source not available on the Internet, under any circumstances. This is absolutely essential.

If you have not yet set up your ssh access, first see ssh_access.

Obtaining kup

Kup is packaged for most distributions and is probably installable using your distribution's package management tools. For example, on Fedora it is installable using:

yum install kup

You can also check out the git tree to obtain the latest version of kup:

git clone git://git.kernel.org/pub/scm/utils/kup/kup.git

Configuring kup

Set your $HOME/.kuprc as follows (requires kup >= 0.3.2):

rsh = ssh -a -x -T -i /home/yourname/.ssh/id_rsa_korg_gitolite
host = yourkorgusername@kup.kernel.org

That should be all you need to do. You may test things by running:

kup ls /pub

You should see the following or similar output:

+++ /pub/
drwxrwsr-x   6 hpa      498    4096 2011-12-01 19:56:21 dist
drwxr-sr-x  13 root     498    4096 2011-11-16 18:36:48 linux
drwxrwsr-x   3 498      498    4096 2008-09-23 23:35:52 media
drwxr-xr-x   2 root     root   4096 2011-10-18 18:24:52 scm
drwxrwsr-x   2 hpa      498    4096 2011-12-01 19:56:21 site
drwxr-sr-x  13 root     498    4096 2011-11-27 17:31:37 software
drwxr-sr-x   3 498      498    4096 2008-04-30 22:31:54 tools

If you get an error in return, check to make sure you are using the correct private key and username (see ssh_access).

If it is still not working for you, please contact support for further assistance.

Uploading with kup

Please carefully read the manpages provided by kup to familiarize yourself with the procedure:

man kup

You can test kup by uploading into a special /test directory:

kup put foo.tar foo.tar.asc /test/foo.tar.gz

8-o: If you get "invalid signature", the most likely cause is that your signature is against the compressed version of the archive. Kup expects the signature to be against .tar, not .tar.?z. It uncompresses the file, then runs the verification check, then recompresses in multiple formats.

Please remove anything you put there after you are done:

kup rm /test/foo.tar.gz

Anything uploaded to /pub will be rsynced to kernel.org frontends and will be available on http://kernel.org/pub after a few minutes.

Permissions

If you find that some directories do not have the correct permissions, or if you need to set up groups in order to allow multiple developers write access, please send a request to support.

userdoc/kup.1415712079.txt.gz · Last modified: 2014-11-11 13:21 by mricon