[listaller] Re: How to manually declare dependencies in a distro-agnostic way

  • From: Matthias Klumpp <matthias@xxxxxxxxxxxx>
  • To: listaller@xxxxxxxxxxxxx
  • Date: Thu, 27 Sep 2012 20:33:05 +0200

Hi!

2012/9/27 Florian Höch <lists+listaller@xxxxxxxxx>:
> seems this is the first real message to the list :)
Indeed, you're the first one on the new ML at Freelists :-) Congrats!

> I've already succesfully created and tested an ipk package of my
> application (using listaller 0.5.5 under Debian unstable), but I'd like
> to manually specify some dependencies (wxPython and numpy) in addition
> to the stuff that is automatically detected,
First of all: There will be some changes in Listaller 0.5.6, which I
can hopefully release next monday, if PackageKit is ready too (long
overdue...). After that, all interfaces are frozen, so you might have
a little bit of breakage.
But we'll also have much better documentation then, so working with LI
will become much easier.
To answer your question:
You can inject any dependency you want by creating a
"dependencies.list" file in your install-source-dir. The file uses an
RFC 2822-like syntax, so you can add dependencies like this:

Name: Python-Numpy
ID: python-numpy
Python2: numpy
Python: numpy

Name: Next-Dependency
ID: foo
Libraries: libfoo.so.1
Feed: http://example.com/libfoo-1.xml

etc.

The "Python" field defaults to Python3, the Python2 field is clear :P
(you probably want only one of them)
The name is the Python package name, the dirname you find when looking
for example at "/usr/lib/pyshared/python2.7/" (name is "numpy" here)
For wxGTK it will probably something like "wx-2.8-gtk2-unicode".
It definitely is worth noting that due to some issues with PackageKit
and mainly with the distributions itself, package installations might
fail because dependencies are not found. This can happen because
Listaller's implementation for the Python language is incomplete and
because distributors don't provide enough metadata to detect
dependencies in a distro-agnostic way.
Unfortunately we lost the developer who was responsible for Python
integration and had the required know-how to implement everything
properly. (he's writing his master thesis...) - But I'll also look at
this issue later. (Fixing PK and the package-signing has priority (I
hate GPGMe!), also bringing all interfaces in a release-ready state)

Kind regards,
    Matthias

Other related posts: