Meego Wiki
Views
From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
m (How to patch a kernel armv8 for MeeGo with obslight?)
(Replaced content with "OBS Light has moved! It's now located at openSUSE: [http://en.opensuse.org/openSUSE:OBS_Light_FAQ http://en.opensuse.org/openSUSE:OBS_Light_FAQ]")
 
(46 intermediate revisions not shown)
Line 1: Line 1:
-
= OBS Light Deliverable =
+
OBS Light has moved! It's now located at openSUSE:
-
== How to patch an i586 kernel for MeeGo with obslight? ==
+
[http://en.opensuse.org/openSUSE:OBS_Light_FAQ http://en.opensuse.org/openSUSE:OBS_Light_FAQ]
-
Create a connection with the OBS server.
+
-
*You can execute commands where you want.
+
-
*If you don't have a connection to a OBS server you can use a OBS appliance http://susegallery.com/a/e0uuBG/meego-obs.
+
-
*If you don't have any package in your project, you can use [[Obstag]]
+
-
obslight addObsServer --serverApi https://api.meego.com --serverRepo http://download.meego.com/live --user obsuser --password opensuse
+
-
Create a local project.  
+
-
*The projects are created in '''~/OBSLight/MeeGo_1.2_oss/'''
+
-
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.
+
-
*The packages are created in '''~/OBSLight/MeeGo_1.2_oss/MeeGo:1.2:oss/kernel/'''
+
-
obslight addPackage --projectLocalName MeeGo_1.2_oss --package kernel
+
-
Create your chroot.
+
-
*The chroot directory is '''~/OBSLight/MeeGo_1.2_oss/aChroot/'''.
+
-
*The chroot is created with zypper and your repositorie is automatically added.
+
-
obslight createChRoot --projectLocalName MeeGo_1.2_oss
+
-
Add a package into your chroot.
+
-
*The packages are installed at directory '''/root/rpmbuild/BUILD/kernel-X.X.X/linux-X.X.X'''.
+
-
*After the installation, a git repository is created at the packages's directory.
+
-
obslight addPackageSourceInChRoot --projectLocalName MeeGo_1.2_oss --package kernel
+
-
Now you can work into your chroot.
+
-
*The directory '''~/OBSLight/MeeGo_1.2_oss/chrootTransfert/''' is mounted into the chroot in '''/chrootTransfert/'''.
+
-
*Every scripts execute in aChroot, are stored in '''/chrootTransfert/''' as '''runMe_YYYY-MM-DD_HHhMMmSS.sh'''.
+
-
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.
+
-
* By making a patch
+
-
# 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-* .'''
+
-
 
+
-
* By copying the new configuration file
+
-
# 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.
+
-
*The command '''addAndCommitChanges''' ckeck the add and the delete files, before commit the package.
+
-
obslight addAndCommitChanges --projectLocalName $ProjectName --package $Package -m "Patch kernel"
+
-
 
+
-
== How to patch a kernel armv8 for MeeGo with obslight? ==
+
-
It's the same approach than 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'''.[[http://wiki.meego.com/ObsLightDeliverable#Troubleshooting Problem: nothing provides X needed by Y]]
+
-
+
-
'''Here You may have trouble with the architecture'''.[[http://wiki.meego.com/ObsLightDeliverable#Troubleshooting error: Architecture is not included: armv8el]]
+
-
obslight goToChRoot --projectLocalName MeeGo_1.2_oss --package kernel
+
-
'''Here You may have trouble with the sh'''.[[http://wiki.meego.com/ObsLightDeliverable#Troubleshooting 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"
+
-
 
+
-
== How install the dependency of a package into the chroot? ==
+
-
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
+

Latest revision as of 12:33, 12 June 2012

OBS Light has moved! It's now located at openSUSE: http://en.opensuse.org/openSUSE:OBS_Light_FAQ

Personal tools