Contents |
Create a connection with the OBS server.
obslight addObsServer --serverApi https://api.meego.com --serverRepo http://download.meego.com/live --user obsuser --password opensuse
Create a local project.
obslight addProject --projectLocalName MeeGo_1.2_oss --projectObsName MeeGo:1.2:oss --obsServer https://api.meego.com --projectArch i586 --projectTarget standard
Add a package to your local project.
obslight addPackage --projectLocalName MeeGo_1.2_oss --package kernel
Create your chroot.
obslight createChRoot --projectLocalName MeeGo_1.2_oss
Add a package into your chroot.
obslight addPackageSourceInChRoot --projectLocalName MeeGo_1.2_oss --package kernel
Now you can work into your chroot.
obslight goToChRoot --projectLocalName MeeGo_1.2_oss --package kernel # cp configs/kernel-x86.config .config # make menuconfig # cp .config config-x86
You have two solutions to upstream your work to the OBS server.
# exit obslight makePatch --projectLocalName $ProjectName --package $Package --patch myKernelPatch.patch vi ~/OBSLight/MeeGo_1.2_oss/MeeGo:1.2:oss/kernel/kernel.spec
You must move your patch command %patchXXX -p1 after the command line cp $RPM_SOURCE_DIR/config-* .
# cp config-x86 /chrootTransfert/config-x86 # exit cp /chrootTransfert/config-x86 ~/OBSLight/MeeGo_1.2_oss/MeeGo:1.2:oss/kernel/
Now you can commit.
obslight addAndCommitChanges --projectLocalName $ProjectName --package $Package -m "Patch kernel"
It's the same approach then the arch i586. You can't use the kernel package for armv8.
obslight addObsServer --serverAPI https://api.meego.com --serverRepos http://download.meego.com/live --user obsuser --passw opensuse obslight addProject --projectLocalName MeeGo_1.2_oss --projectObsName MeeGo:1.2:oss --obsServer https://api.meego.com --projectArchitecture armv8el --projectTarget standard obslight addPackage --projectLocalName MeeGo_1.2_oss --package kernel obslight createChRoot --projectLocalName MeeGo_1.2_oss obslight addPackageSourceInChRoot --projectLocalName MeeGo_1.2_oss --package kernel
Here You may have trouble with zypper.[Problem: nothing provides X needed by Y]
Here You may have trouble with the architecture.[error: Architecture is not included: armv8el]
obslight goToChRoot --projectLocalName MeeGo_1.2_oss --package kernel
Here You may have trouble with the sh.[chroot: failed to run command `sh': No such file or directory]
#cp configs/kernel-adaptation-n900.config .config #make menuconfig #cp .config config-adaptation-n900
#exit vi ~/OBSLight/MeeGo_1.2_oss/MeeGo:1.2:oss/kernel-adaptation-n900/kernel-adaptation-n900.spec
you must move your patch command %patchXXX -p1 after the command line cp $RPM_SOURCE_DIR/config-* .
obslight makePatch --projectLocalName MeeGo_1.2_oss --package $Package --patch myKernelPatch.patch obslight addAndCommitChange --projectLocalName MeeGo_1.2_oss --package $Package -m "Patch kernel"
If the project on your OBS doesn’t provide the dependency you must add a repository to zypper, you have two choice.
obslight addRepoInChRoot --projectLocalName MeeGo_1.2_oss --url http://download.meego.com/live/MeeGo:/1.2:/non-oss/MeeGo_1.2/ --alias "MeeGo_non-oss"
Or
obslight addRepoInChRoot --projectLocalName MeeGo_1.2_oss --fromProject $ProjectName