Qt5 Packaging

Contents

[edit] Qt5 Packaking Process

Following procedure automates the communication between a packager, Gitorious and OBS.

Following directory paths are required:

[edit] Prequicities

Checkout OBS Project

machine:/work/obs$ osc co qt5

Clone git tree

machine:/work$ git clone git://gitorious.org/qt/qt5.git

[edit] Configuration

Open update-sources.sh for editing and change following details according to your directory structure:

# QT5_DIR is the directory where qt5 and all the submodules have been
# checked into
QT5_DIR=/work/qt5

# OBSDIR is the directory holding your OBS qt5 project
OBSDIR=/work/obs/qt5


[edit] Process in nutshell

./update-sources.sh --help
./update-sources.sh --no-pull

update-sources.sh command has following functionality

  • Fetch latest Qt5 tree from Gitorious
  • Include .spec, .changes and .path files from qt-specs
  • Create tarballs from Qt5 tree
  • Commit previously mentioned source packages to OBS

[edit] Workflow

Create a patch:

machine:/work/qt-specs$ ecmas qtbase/files/fix-borken-thingies.patch

Modify packaging:

machine:/work/qt-specs$ ecmas qtbase/qtbase.spec

Commit changes to OBS:

machine:/work/qt-specs$ ./update-sources.sh --no-pull

Follow OBS logs and fix more things.