Latest revision |
Your text |
Line 1: |
Line 1: |
- | {{Mer}}
| + | =Buiding Mer.= |
| | | |
- | This section documents how to use the [http://build.opensuse.org openSUSE Build Service] with Mer. More on the openSUSE Buildservice [http://en.opensuse.org/Build_Service here]. | + | This page is a collection of ramblings about the ongoing experiment with OBS |
| | | |
- | A simple way to think of OBS is as a version control system for source tarballs and .dsc files and whenever you commit a tarball the build farm compiles it for you.
| + | https://build.opensuse.org |
| | | |
- | Over and above this OBS provides a local tool called osc that lets you do clean builds not only for your own OS and architecture but also for other distros and even other architectures (armel).
| + | Mer is based on Ubuntu Jaunty |
| + | http://cdimage.ubuntu.com/releases/jaunty/alpha-6/ |
| | | |
- | ==Getting Started== | + | == Installing OBS tools locally == |
| + | You'll need an account with Novell : http://is.gd/nzxP |
| | | |
- | Approaching OBS can look overwhelming... but it is perfectly possible to get an existing package built for Mer just using a web browser.
| + | Assuming a debian or ubuntu development box locally: |
| | | |
- | The first thing to do is to [[/Install OBS|install OBS]]. This will provide access to the tools and source used to build Mer.
| + | Add osc repo top apt. |
| + | deb http://download.opensuse.org/repositories/openSUSE:/Tools/xUbuntu_8.10/ / |
| + | or |
| + | deb http://download.opensuse.org/repositories/openSUSE:/Tools/Debian_5.0/ / |
| + | to |
| + | /etc/apt/sources.list.d/obs.list |
| | | |
- | Then you should become familiar with building an application using OBS but outside the Mer repository. This is explained in detail in [[/Application Building|Application Building]] which takes you through an example application. | + | Then |
| + | apt-get update |
| + | apt-get install osc |
| | | |
| + | run |
| + | osc |
| + | and enter novell.com username/passwd |
| | | |
- | ==Mer Internals==
| + | Go and login to https://build.opensuse.org |
| | | |
- | When you are comfortable building your own applications for Mer then you can look at the [[Mer/Packages|Mer Packages]] and start helping to improve Mer itself.
| + | Make sure you click the "let me build packages" button. |
| | | |
- | There are [[/Processes|processes]] used to manage the Mer packages which may include [[/UsingGitorious|Using Gitorious]]. | + | There is a link to 'Home Project' on the left I think. Follow this and enter a description. |
| | | |
- | The OBS [[/Cross Build|cross build]] page describes how the OBS has been accelerated.
| + | From now on where I use "home:lbt" uses your own "home:username" |
| | | |
- | == OBS Build Farm ==
| + | Now: |
| + | osc ls home:lbt |
| + | will list |
| | | |
- | http://wiki.maemo.org/Mer/Documentation/Build/Common_Problems
| + | osc co home:lbt |
| + | will checkout the project |
| | | |
| + | now |
| + | osc meta pkg -e home:lbt epeg |
| | | |
- | == QEMU armel image ==
| + | edit the name/description |
| + | run |
| + | osc up |
| + | This makes a package dir |
| + | cp package.tar.gz package.dsc homt:lbt/package |
| + | cd package |
| + | Then add them to version control |
| + | osc addremove |
| + | and upload them |
| + | osc ci |
| | | |
- | An Ubuntu armel image for QEMU is available from here:<br>
| + | Now we need to pick build targets: |
- | http://gitorious.org/mer-toggles/qemu-armel-image (login: qemu/qemu)
| + | https://build.opensuse.org/project/add_target_simple?project=home:lbt |
- | <br>
| + | And pick one or two ( I picked Debian Lenny and Ubuntu 8.10) |
- | Based on these instructions:<br>
| + | |
- | https://wiki.ubuntu.com/ARM/RootfsFromScratch<br>
| + | |
| | | |
- | This is NOT a Mer development image like Mer VMDK is.
| + | To watch what is going on: |
| + | osc buildlog <target> |
| + | so |
| + | osc buildlog Debian_5.0 i586 |
| | | |
- | == Mer Source ==
| + | This does something like a "tail -f" of the Xen builder. |
- | Currently you cannot <code>apt-get source</code> for Mer.
| + | |
- | | + | |
- | Our approach requires you to get a Novell account and is similar to the one in HHGTTG:
| + | |
- | | + | |
- | <blockquote>
| + | |
- | "`...You hadn't exactly gone out of your way to call attention to them had you? I mean like actually telling anyone or anything.'<br>
| + | |
- | `But the plans were on display...'<br>
| + | |
- | `On display? I eventually had to go down to the cellar to find them.'<br>
| + | |
- | `That's the display department.'<br>
| + | |
- | `With a torch.'<br>
| + | |
- | `Ah, well the lights had probably gone.'<br>
| + | |
- | `So had the stairs.'<br>
| + | |
- | `But look you found the notice didn't you?'<br>
| + | |
- | `Yes,' said Arthur, `yes I did. It was on display in the bottom of a locked filing cabinet stuck in a disused lavatory with a sign on the door saying "Beware of The Leopard".'"
| + | |
- | </blockquote>
| + | |
- | <br>
| + | |
- | But slightly simpler...
| + | |
- | | + | |
- | Nb... the fix is trivial and simply requires you to modify the GPL licensed OBS system to publish debian style source distros ... patches accepted.
| + | |