openSUSE:OBS Light FAQ

Jump to: navigation, search


OBS Light

Where does obslight store its data?

All data is stored in ~/OBSLight and subdirectories.

Each OBS project has its own directory in ~/OBSLight/ObsProjects/, each MIC project has its own directory in ~/OBSLight/MicProjects/.

Is there a configuration file ?

Configuration file is ~/OBSLight/ObslightConfig.

How to show the log ?

  • From the menu: Window -> Show log
  • When a long operation is running, there is a button under the progress bar.
  • A log file is written in ~/OBSLight/obslight.log.

How install the dependency of a package into the project filesystem?

If the project on your OBS doesn’t provide some dependencies and you must add a repository to your project filesystem's zypper configuration, you have two choices:

  • First one, use a URL and an alias:
## obslight filesystem repositories add <repository_url> <repository_alias> <project_alias>
obslight filesystem repositories add http://download.meego.com/live/MeeGo:/1.2:/non-oss/MeeGo_1.2/ MeeGo_non-oss MeeGo_1.2_oss
  • Second one, add the repository of another local project:
## obslight filesystem repositories add from <source_project_alias> <project_alias>
obslight filesystem repositories add from MeeGo_1.2_non-oss MeeGo_1.2_oss

How to create a new package ? (from an existing SPEC file)

Requirements

  • A project on an OBS server (public or private) where you have maintainer rights (for example your home project), and with a build target already configured.
  • An archive of your program, named like program-version.tar.gz (tar.bz2 is OK).
  • A valid SPEC file, named program.spec.

Procedure

openSUSE:OBS Light cannot create new packages at the moment. You have to use the web UI or osc first.

  1. Using the web UI:
    • Go to the project you want to add your package to.
    • Go to Packages tab.
    • Click Create package.
    • Give a name to the package (we recommend the same name as your program, in lower-case), a title and a description (optional but recommended).
  2. Now you should be able to import this package in openSUSE:OBS Light.
    • Run obslightgui.
    • Click Import project button (on the left-bottom).
    • Select a server from the list or configure a new one.
    • Select your project in the list.
    • Select a target and an architecture.
    • Give an alias to the project (can be the name of the project without ":", we suggest suffixing with the architecture).
    • You should now see a list of packages, with the one you created in web UI.
    • Select it and press finish.
  3. The package is now imported into OBS Light, with status broken (because it has no files).
    • In the right panel, select tab Local directory, click Import file.
    • Select your SPEC file and archive (and YAML file if you have one).
    • The files appear in the list with status Added.
    • In the middle panel, click Commit changes, and enter a commit message.
    • The files are uploaded, and the package starts to build on the OBS server.

Where to send bug reports ?

Bugs are centralized on MeeGo's bugzilla.

OBS Light Appliances

Help I have updated and broken my OBS server appliance

The move to OBS 2.3 seems to be far less transparent that it should. But the facilities offered by the V 2.3 are valuable and move to it is worthwhile.
You will find here how I did it, it might work for you but it is without guaranty. Do a snapshot of your appliance before starting.
HowTo upgrade from OBS server 2.1 to 2.3

How to add swap in OBS appliance ?

See how to add swap section of Appliances page.

How to make OBS appliance faster: build in RAM

See how to make builds faster section of Appliances page.

Misc

How to prepare a Spec file using Spectacle ?

Generate a YAML file from scratch

Manually

Run the following command:

specify --new=your_package_name

It will create a new YAML file from a template, and ask you to edit the file. Just replace "^^^" occurrences by which seems appropriate, and got to the Spec and YAML customization section.

Automatically

autospectacle can analyze source archives and generate an appropriate YAML file, but has no documentation.

Generate a YAML file from a Spec file

If you already have a Spec file for your program, you may still want to create a YAML file in order to standardize or simplify it. Run the following command:

spec2spectacle your_package_name.spec

It will parse your Spec file, generate a YAML file, and generate a new Spec file from the YAML file. Notice that the conversion is not perfect, and you may lost information.

Customize the Spec and YAML files

Except from lines between "# >> " and "# << " tags, the content of the Spec file should not be modified by you, because it will be re-written by specify each time you modify the YAML file. So if you see a line you don't like, you have to find which option of the YAML file has generated it (or can prevent it to be generated), change it, and run the following command to update the Spec file:

specify your_package_name.yaml

Complete list of Spectacle options is here: Syntax of spectacle YAML

Why does MeeGo's kernel package fail to build for ARM?

The kernel package has flags to prevent builds on ARM. To compile an ARM kernel, you must use another package, for example the kernel-adaptation-n900 package.

Links