What is Contrib?
The ARM world is very diverse. Not all systems are easily supported by upstream sources and every board has its own little tweaks that it needs to properly boot.
So the openSUSE team realized that we need something more flexible for enthusiasts to create openSUSE remixes for specific ARM systems. That is what Contrib is.
If you want to add support for a new system, we recommend you start to do it in your home project. When everything works there, ask on the openSUSE ARM mailing list to have someone copy your Contrib project to the official openSUSE name space. Of course we're also happy to help on that list if you get stuck before.
Create a new Contrib
- Create a new subproject inside your home project via the web UI. For the sake of this document let's call it home:user:ARM:Factory:Contrib:Myboard
- Copy the prj and prjconf metas from a known good Contrib into yours and adjust them to your liking
$ osc meta prj devel:ARM:Factory:Contrib:Chromebook > /dev/shm/prj $ osc meta prjconf devel:ARM:Factory:Contrib:Chromebook > /dev/shm/prjconf $ osc meta prj -e -F /dev/shm/prj home:user:ARM:Factory:Contrib:Myboard $ osc meta prjconf -e -F /dev/shm/prjconf home:user:ARM:Factory:Contrib:Myboard # Now fine tune the configuration $ osc meta prj -e home:user:ARM:Factory:Contrib:Myboard
- If you need a downstream kernel, use this script.
- Create a link to the JeOS package
$ osc linkpac openSUSE:Factory:ARM JeOS home:user:ARM:Factory:Contrib:Myboard JeOS-myboard
- Create a new target for your board in the pre_checkin.sh file and adjust all *.in files and config.sh in JeOS-myboard for your board. Then upload everything.
$ bash pre_checkin.sh $ osc addremove $ osc ci
- The Contrib should now be building. Enjoy openSUSE support for your new board!