Home Home > Packaging
Sign up | Login

Deprecation notice: openSUSE Lizards user blog platform is deprecated, and will remain read only for the time being. Learn more...

Archive for the ‘Packaging’ Category

new osc package released

July 10th, 2008 by

After two or three weeks of coding (not mine mostly, but by Marcus and Dirk), a lot of good stuff has accumulated in the osc development tree. Time to release a new package. It is a particularly good moment because today the 1.0 release of the Build Service has been announced.

The list of changes is long, the NEWS file has it all. Overview:

  • version 0.105
  • easier usage of osc submitreq: It is less picky on commandline arguments, can be called in working copies or project directories, figures out which build service instance to use, and has improved output. Also, there is a osc submitreq delete action now (which only works if you have write permissions on the destination though)
  • osc search: added option -i|–involved, to show in which projects/packages a developer is involved
  • osc importsrcpkg: no signature check anymore
  • osc linkpac: –revision option added.
  • osc copypac: use the correct userid when copying to another api host
  • osc build: double check the buildinfo for local builds.
  • osc buildhist: change the output into a format which better matches actual RPM filenames.
  • osc commit: give commit message tempfiles a “.diff” suffix, so syntax highlighting automatically works in capable editors
  • don’t expand/unexpand if the working copy has local modifications – this is a workaround for #399247 but this way the working copy isn’t screwed up. Also, make sure no _linkerror files end up in working copies.
  • better error reporting in a whole number of cases, especially printing out more available detail. For instance, osc meta now prints out a concrete text why something you submitted was not accepted.

Have a lot of fun with it.

And just a note, remember that it is very easy to write osc plugins in order to extend or alter the functionality! Here’s the documentation.

Hamradio packages ready !

June 19th, 2008 by

Tim and I updated the Amateur radio (hamradio) packages and made them ready for 11.0 .

Amateur radio (also Hamradio) is both a hobby and a service in which participants, called “hams”, use various types of radio communications equipment (also homebrew) to communicate with other radio amateurs for public service, recreation and self-training.

The repository is available at http://download.opensuse.org/repositories/hamradio/ .

You can also install single packages via the 1-click-Installer of the software-search-portal at http://software.opensuse.org/search or add the repository to YaST2/zypper.

YaST2:

Open the repository editor and add http://download.opensuse.org/repositories/hamradio/<your distribution version>

Example: http://download.opensuse.org/repositories/hamradio/openSUSE_11.0/

zypper:

10.1: zypper ar -r http://download.opensuse.org/repositories/hamradio/SUSE_Linux_10.1/hamradio.repo

10.2: zypper ar -r http://download.opensuse.org/repositories/hamradio/openSUSE_10.2/hamradio.repo

10.3: zypper ar -r http://download.opensuse.org/repositories/hamradio/openSUSE_10.3/hamradio.repo

11.0 zypper ar -r http://download.opensuse.org/repositories/hamradio/openSUSE_11.0/hamradio.repo

Here’s a list of available packages:

7plus
acfax
aldo
aprsd
as296-tty
ax25-apps
ax25-doc
ax25spyd
ax25-tools
axssh
axw3
baken
baycomepp
conlogv
cwdaemon
digi_ned
dpbox
dxc
fbbdoc
fbbsrv
fldigi
fltk
fpac
glfer
gmfsk
gnuradio
gpredict
gpsk31
gpsman
gpsmanshp
grig
HamFax
hamlib
hamlog
hf
ibp
kamplus
klog
kpsk
kptc
ktrack
libax25
libgdal
libgeos
libgeotiff
libhdf4
libproj4
linkt
linrad
minimuf
mtrack
multimon
node
qgrid
qrq
qsstv
rspfd
sdcc
shapelib
soundmodem
spandsp
splat
svxlink
tfkiss
tkconv
tlf
tnt
twpsk
unixcw
wxapt
xastir
xcall
xcircuit
xconvers
xdemorse
xdx
xfhell
xlog
xoscope
xsmc-calc
xwxapt
yfklog
z8530drv-utils

Thats > 80 packages in our repository.

I you find a bug you can report it HERE .

vy 73 es 55 de

DG7GT es DL9PF

learning ruby…

May 26th, 2008 by

Recently, I wanted to show how the buildservice makes packaging easier by creating a specfile template for you (just click the “Create RPM SPEC file templat” checkbox when creating a new package). Unfortunatelly, the template it creates is not really useful for someone not skilled in writing spec files. Also, it’s just a static template, so you have to write the summary and description even though you have just entered both in the web form. Definitely nothing to show off to newbies ;-). But knowing that the buildservice developers have more important stuff to do, and wanting to learn something new, I decided give it a try and fix it myself.

My idea is: The buildservice api asks a set of questions, which are presented by the client (webclient, osc, …) to the user, and creates a specfile based on these questions. Also, the api tries to suggest good defaults where possible. After spending some time learning ruby, rails and the api code, I have an ugly 200 line patch to the api that generates a working specfile for GNU hello ;-).

wizard in action

The user interface part is not yet done, but should be easy. What’s more chalenging is adding heuristics to “do the right thing”: detecting the build system (autotools, cmake, Makefile.PL, etc), detecting build dependencies, and so on. Right now, it only extracts the version number from the tar name.

Collaboratio

May 21st, 2008 by

Collaboration is not always an easy thing: Talking, meetings, making decisions and finding compromises. Sometimes I have the impression that some people in our business find this inter personal activities very exhausting and thus prefer to work on their own. Depending on how genius one is that works far. But for obvious reasons working alone has limits. If we talk about a whole Linux distribution for example one can not succeed: The working power, creativity and time of one is not enough.

That is one reason why we consider it as one of the keys for success that the Build Service enables people to work together in a useful and non annoying way. We think of tools in the Build Service which help. That is difficult because some formalism and guidance (in business often called ‘process’) is needed to keep things going in a transparent and reproduceable way. Control should stay there where it needs to be, for example at the maintainer of a project. On the other hand collaboration tools should not constrict people and their working together.

Here is a little story of Karl who wants to change something in the openSUSE Factory project. He needs to work with the Factory maintainers and this is how that is planned for the future:

Karl, a developer working for a small software company, loves openSUSE but not really the one package Kabax because there is a packaging problem Karl has analyzed.

Karl wants to change that to make sure that the next version of openSUSE contains a good version of Kabax.

For that, a branch of Kabax in Factory is needed where the fixes can be put in, built and tested. Karl uses osc to create a branch. The package is not really maintained in Factory itself, because the few Factory maintainers can not care about all packages there. Kabax has a Devel Project entry in its meta data that points to the project where it is actually maintained by the expert Karsten.

Because of the devel project, osc branches not really from the Factory package but from the development project where the development happens by Karsten. That might be different from the Factory package, but is clearly the development version that soon will be synced to Factory. When that happens is up to Karsten and the maintainers of Factory.

In the branch Karl starts to work on Kabax and creates a beautiful patch. Since his branch package also lives on the Build Service, it builds live for all relevant repos and along the changes of the devel project.

Once Karl is happy with his work he raises the attention of Karsten on his change by creating a submit request. A request in general informs others of something somebody else has done which requires action. In the case of the submit request it tells Karsten that there is a valuable change to his package that should make it’s way to Factory. Karsten now accepts the request and Karls contribution is in.

The nice thing about all this is also that the branch packages as well as the requests are open and visible to everybody who is interested in. That gives us the transparency we need. And of course that does not only work for Factory but for all projects if one wants to change something on a package where he/she does not have permissions yet.

How do you like this story?

Hamradio packages for openSUSE 11.0

May 13th, 2008 by

Together with Tim Fischer I’m packaging hamradio-related software in the “hamradio”-repository in openSUSE Build Service. We are now prepairing updates and start of packaging for upcoming openSUSE 11.0 .

If you are interested in helping us, feel free to contact us! Also if you miss a package in our repo.

I’ll blog on the progress here …

Edit: The repository is http://download.opensuse.org/repositories/hamradio/