Mer/Build/Install OBS

(next steps)
(Debian)
Line 10: Line 10:
Assuming a Debian Lenny/5.0 development box locally:
Assuming a Debian Lenny/5.0 development box locally:
-
To get the OBS tools repository add the following line:
+
To get the OBS tools repository add an entry to the sources.lists:
-
  deb <nowiki>http://download.opensuse.org/repositories/openSUSE:/Tools/Debian_5.0/ /</nowiki>
+
  echo "deb <nowiki>http://download.opensuse.org/repositories/openSUSE:/Tools/Debian_5.0/ /</nowiki>" > /etc/apt/sources.list.d/obs.list
-
to a new file called:
+
-
/etc/apt/sources.list.d/obs.list
+
Then
Then

Revision as of 19:33, 4 November 2009

Contents

Installing OBS tools locally

You'll need an account with Novell

You must then visit your project list and click : "Let me build my packages"

(Could someone confirm the step above... it only appears when you create a new account)

Debian

Assuming a Debian Lenny/5.0 development box locally:

To get the OBS tools repository add an entry to the sources.lists:

echo "deb http://download.opensuse.org/repositories/openSUSE:/Tools/Debian_5.0/ /" > /etc/apt/sources.list.d/obs.list

Then

apt-get update
apt-get install osc build qemu

Ubuntu

Assuming an Ubuntu9.04 development box locally:

To get the OBS tools repository add the following line:

deb http://download.opensuse.org/repositories/openSUSE:/Tools/xUbuntu_9.04/ /

to a new file called:

/etc/apt/sources.list.d/obs.list

Then

apt-get update
apt-get install osc build

Now edit /etc/apt/sources.list.d/obs.list and comment that line out.

Note there is a problem in Ubuntu9.04 osc as of 25 May '09... to fix it, do this as root:

 cd /usr/lib/python2.6/dist-packages/
 ln -s ../site-packages/osc* .

Suse don't have an Ubuntu qemu yet so we use the one they make for Debian (bug raised):

Add the following lines:

deb http://download.opensuse.org/repositories/openSUSE:/Tools/Debian_5.0/ /

to a new file called:

/etc/apt/sources.list.d/debian5_qemu.list

Then

apt-get update
apt-get install qemu

now remove that file:

rm /etc/apt/sources.list.d/debian5_qemu.list 

and run

apt-get update


Troubleshooting

If you get the following error when adding one of these repos

W: GPG error: http://ftp.debian.org stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY SOMEKEY

Then run the command

gpg --keyserver pgpkeys.mit.edu --recv-key SOMEKEY && gpg -a --export  SOMEKEY | sudo apt-key add -

replacing SOMEKEY with the complained about key

Other distributions

You can find openSuse build tools for various distributions at http://download.opensuse.org/repositories/openSUSE:/Tools/

All OSes

Now, as a normal user, run

osc

and enter novell.com username/passwd when prompted (note these are stored in cleartext in the config file). Note this isn't supposed to do anything (it prints out the osc help) but it stores your name/pw for future use.

Go and login.

Make sure you click the "let me build packages" button.

There is a link to 'Home Project' on the left, follow this and enter a description.

Note that if, in the future, qemu fails to work you may need to setup the associations for arm binaries by running:

 qemu-binfmt-conf.sh

Local osc setup

Create a local build path.

mkdir -p ~/maemo/Mer/obs

All references below with (yourusername) should of course be replaced with the login name on your local machine.

You can now check some settings in your ~/.oscrc :

This is the OBS builder we're using... maybe we'll use a maemo.org instance one day?

apiurl = https://api.opensuse.org

This specifies where all the cached binary packages are held to create a chroot build environment. Around 300MB.

packagecachedir = /home/(yourusername)/maemo/Mer/obs/.pkg-cache/

This specifies the default location where a complete chroot build will be installed. This will be a minimal OS install - allow 400MB minimum. Replace (yourusername) with your current login name

build-root = /home/(yourusername)/maemo/Mer/obs/build-%(repo)s-%(arch)s

The next section is credentials for access control to the builder.

[https://api.opensuse.org]
user = <username>
pass = <password>

Next Steps

Go back up to Mer/Build and then onto Application Building