# warning, below is a fairly long email on beginner package upgrading via OBS
# don't proceed unless you are prepared to experience the wonders of OBS.
# Many will fail, but those that succeed will be called "OBS packager!",
# A moniker with honor unbounded.
On Wed, Feb 15, 2012 at 6:55 AM, Rodney Baker
On Wed, 15 Feb 2012 21:21:36 Will Stephenson wrote:
[...]
I'm sure it's not a trivial update, but as LO is relatively self-contained, it's also not insanely difficult either. Anyone with patience and perseverence, and attention to detail want to step up and help Petr?
Will
I'd volunteer to help if someone will mentor me through the process. I have absolutely no idea how to write a spec file and none of the online guides I've read have made much sense for some reason. I figure once I've done the first one, though, I'll learn pretty quickly. In this case I'm guessing that it should be possible to start with the existing spec file for 3.4.x as a template?
Rodney, I started messing with OBS a couple years ago. First be very aware of the use or project and package. LO is is project composed of lots of packages. When I first started packaging, I did not make a big distinction between those in my mind, and it confused me. Anyway, often it is relatively straightforward to do a version upgrade for a single package. But sometimes it can turn into a more sophisticated process. There are a lot of LO packages, so each one has to be updated separately. And tested of course. You will find lots of good help on the opensuse-packaging mailinglist. The wiki portal for packaging is very complete: http://en.opensuse.org/Portal:Packaging Note all the pages listed on the right hand side. I'd start with the tutorial: http://en.opensuse.org/openSUSE:Build_Service_Tutorial The below steps go with the tutorial, so be sure not to just read the below: Step 1: Do both the WebGUI step and the CLI step. It's not either/or. Your step 2 (Step Two – Create & Upload packages) will be different than the tutorial. You will want to branch a copy of which ever version you need to update. I don't know which project you need to branch from. Assume for a minute it's LibreOffice:Stable, (but I hope there is a staging repo that is actually a better choice.) https://build.opensuse.org/project/packages?project=LibreOffice%3AStable If I were you, I'd just create a sub-project in your home project dedicated to those packages. Using the WebUI that is basically trivial. Decide which of the LO packages you want to work on first. Here's the list: https://build.opensuse.org/project/packages?project=LibreOffice%3AStable I'll assume for a second it's libreoffice-calc. Goto it's overview page: https://build.opensuse.org/package/show?package=libreoffice-calc&project=LibreOffice%3AStable If you're logged in, you should see "branch package" as an action in the middle of the page. If you click that, a new sub-project will be created inside your home project and a branched copy of libre-calc will be placed there. At that point you have accomplished step 2 of the tutorial. Step 3: Make sure you have at least Factory and 12.1 as targets. When you do a local build, it will default to building for factory, so I always have factory as a build target no matter what. It just simplifies things. Step 4: You don't yet have a local copy of the package, so set that up first: # Create a working area # Call your working area whatever you want to # I have all my obs projects as sub-folders of ~/obs, but you can do whatever.
cd ~ mkdir obs
checkout a copy of the package you now have on OBS. The basic command is osc co <project> <package> In my case
cd ~/obs osc co home:gregfreemyer:branches:LibreOffice:Stable libreoffice-calc
Now you should have a directory similar to: ~/obs/home:gregfreemyer:branches:LibreOffice:Stable/libreoffice-calc cd into your directory and verify you can do a local build of the package.
osc build
That should run for several minutes with lots of output. It will then ask for the root password. Once you provide that, it will run for many more minutes, so don't walk away overnight. At the end of all the output it should show that rpm packages are built. Congratulations, you have just built your first package. Once you get that far, post again and I can walk you through the first update of that package. I think you will be surprised how simple it is. The real issue is the large number of packages to update and that you should do at least some basic testing. Good Luck Greg -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org