> I think building packages for Debian could also improve Debian
> > derivatives, like Ubuntu, for multimedia production. And Ubuntu users
> > could contribute to the Debian multimedia team by maintaining packages.
> > It would be nice if Debian and Ubuntu users could have some kind of
> > working together to improve Debian and Ubuntu for multimedia production.
Yes, Good idea! That's what I've intended when I've created the
MOTUMedia team. Unfortunately, the only active people were slomo,
crimsun and myself.
> > Ubuntu users could contribute to the Debian Multimedia Team to maintain
> > packages, but they also want to be sure that their packages they make
> > for Debian will hit Ubuntu of course.
We already have too many packages for too little manpower. So any help
is more than welcome!
> > So I was wondering:
> > 1) how can I maintain a multimedia package for Debian and be sure that
> > it hits Ubuntu (Studio) too?
I'd say get that package imported in a git branch on
git.debian.org. Distributed development is ideal for this usecase.
> > 2) how can I make a Ubuntu package from an Debian package?
> > 3) how can I make an Debian package from an Ubuntu package?
Ubuntu and Debian packages share the same format. Ideally there are no
differences between the debian and the ubuntu package.
For packages that need to have some difference, I'd suggest to maintain
the ubuntu package in a git branch. That way merging back and forth
> > 4) how could we improve this 'working together'?
Subscribe to this mailing list, send patches to existing packages, get
the packages accepted, make sure that packages from debian are kept
up-to-date in ubuntu.
I already do that for the ubuntu ffmpeg and mplayer packages, and I
start to feel a bit lonley
dh_make -e email@example.com -f ../rumor-1.0.3b.tar.gz -c gpl -b
and what does: -c gpl -b
: -c gpl sets the license in debian/copyright to GPL (which is what rumor is distributed under)
: -b uses CDBS
Fill in debian/control with the required information... debian/changelog... etc.
: also, run ``grep -rin copyright *'' from the source root to make sure that there aren't any other
so, I'd make a ~/tmp_debian_files/ and mv *.ex ~/tmp_debian_files/ ... then I'd run debuild -S -sa
from the source root.
cd .. && lintian -I --pedantic rumor-foo.dsc
that tmp folder I make in /rumor-x/debian ?
no, outside, you can make it in /tmp or /home/wherever.
: You just want to move the *.ex and *.EX files out of the debian/ directory... but keep them as a
reference for later on.
debuild -S -sa -k<Your key>
mmh I've set a key, but forgot.. howto get it?
gpg --list-keys <name>
what does this do btw, lintian -I --pedantic rumor-foo.dsc ?
Sweet, now, copy watch.ex back to debian/watch ... edit it (man uscan if I rememer correctly...)
lintian checks for packaging errors. -I displays informational tags. --pedantic ``Pedantic tags are
Lintian at its most pickiest and include checks for particular packaging styles''
now, go back to the source directory, debuild -S -sa -k<foo>
then rerun lintian.
if it's clean, try building the dsc-
how building the dsc?
: with pbuilder
pbuilder --build rumor.foo.dsc
pbuilder --update first
./setup-repository <project> "Project description"
git remote add alioth ssh://<user>@git.debian.org/git/pkg-multimedia/<project>.git
git push alioth master
git push alioth --tags
The package looks in very good shape, nice job! I've just re-touched a
bit the description because some lines where longer than 80 chars
(there were lintian warnings for them). You can get my changes with
I've just uploaded the package to Debian, it will be hold in the NEW
queue until it passes all QA checks.
A quick tutorial about debian packaging "states". When you build your
package everything that needs to be compiled gets compiled. Then
everything is installed into a temporary directory inside debian/ then
various dh_ commands are run to change/make the temporary directories
fit for actual binary .deb. At the the end metadata, maintainer
scripts and those temp directories are compressed into an archive with
name ending in deb.
To get better understanding let's do this:
1) Change into the directory of your package, eg. cd foo-1.0/
2) Run this command
3) Now go into debian/ and look what you have in there. A good way to
see what's there is to run this:
This should show all the files in all subdirectrories. One particular
directory you want to look at is the one named after your package
(hope you are still following, I'm talking about foo-1.0/debian/foo).
It has all the files that will end up in the final deb. Sometimes (if
you are building more than one package) you will have 3 folders e.g.:
tmp/ foo/ foo-data/
Sometimes you will notice that upstream compilation doesn't install
everything you want. In that case you create the debian/$foo.install
Case 1 Single package (you are only creating ONE deb)
Step 1) create debian/install
Step 2) For each missing file/directory write one line:
Where source is path relative the toplevel source directory (foo-1.0),
and destination-dir is where you want the files to end up when your
package is installed on the system eg. (usr/share/lib/)
Case 2 Multiple deb package (youare creating MORE THAN ONE deb)
Step 1) create debian/$(package).install eg. if you want to install
something additionally into a package called supercow-data you create
a file debian/supercow-data.intall
Step 2) Same as in case 1.
> > I have package.install
> > with:
> > debian/tmp/usr/share/applications/* usr/share/applications/
Most likely you want to simply write
And rename "package.install" into simply "install".
"upstream/location/of/desktop/files" is the path to the .desktop
file/files in the tarball
eg. one of my upstreams has desktop files in
vitables-2.0/unixapp/vitables.desktop so in my debian/install I have
Hope this helps. please take a little bit of time and play around with
it to understand which paths you need to be using when. It's something
I had to spend a little while to get the hang of.
Users browsing this forum: No registered users and 1 guest