[opensuse-buildservice] Easy xbuntu/Debian packages?
Hi list, Is there a howto available which explains how to easily build xbuntu/Debian packages with the OBS? Most information I found on the internet require you to have a Debian/xbuntu system already running. But since the idea of the OBS for me is to not have all that distributions installed locally I would like to do everything inside of the OBS. I also have to admit that I'm used to rpms only - so I do know how to create a spec file, but I'm totally lost with the debian helper apps. I would also like to volunteer to put up a wiki page about creating an "xbuntu spec" out of an existing rpm spec once I understood the procedure. Btw., if wanted I could also help creating a Fedora dedicated page containing some useful information you might want to know once you intend to build Fedora packages. Roland
Hi Roland, Xubuntu is just a flavour of Ubuntu. So, you can build xubuntu packages with the ubuntu project. And read the "new debian maitainerns guide" on http://www.debian.org/doc/maint-guide/ for a introduction to debian packaging. Regards, \sh Am Samstag, den 14.07.2007, 03:50 +0200 schrieb Roland Wolters:
Hi list,
Is there a howto available which explains how to easily build xbuntu/Debian packages with the OBS? Most information I found on the internet require you to have a Debian/xbuntu system already running. But since the idea of the OBS for me is to not have all that distributions installed locally I would like to do everything inside of the OBS.
I also have to admit that I'm used to rpms only - so I do know how to create a spec file, but I'm totally lost with the debian helper apps.
I would also like to volunteer to put up a wiki page about creating an "xbuntu spec" out of an existing rpm spec once I understood the procedure. Btw., if wanted I could also help creating a Fedora dedicated page containing some useful information you might want to know once you intend to build Fedora packages.
Roland -- Stephan Hermann eMail: sh@sourcecode.de Blog: http://linux.blogweb.de/ JID: sh@linux-server.org OSS-Developer and Admin
Hi Stephan, Once upon a time Stephan Hermann wrote:
And read the "new debian maitainerns guide" on http://www.debian.org/doc/maint-guide/ for a introduction to debian packaging.
As mentioned already in the other thread, the main problem is that this guide requires you to have certain tools - like dh_make. Which of course are not included in a rpm distribution like Fedora 7. Regards, Roland -- "So stirbt die Freiheit. Mit donnerndem Applaus" -- Star Wars III
Hi Roland, Am Montag, 16. Juli 2007 14:48 schrieb Roland Wolters:
Hi Stephan,
Once upon a time Stephan Hermann wrote:
And read the "new debian maitainerns guide" on http://www.debian.org/doc/maint-guide/ for a introduction to debian packaging.
As mentioned already in the other thread, the main problem is that this guide requires you to have certain tools - like dh_make. Which of course are not included in a rpm distribution like Fedora 7.
Well, but this is an easy task...install vmware server (free from vmware) and install a debian distro. and install dh_make :) There should be some rpms for dh_make as well...if not, I'm looking into packaging it for rpm based distros... \sh -- Stephan Hermann eMail: sh@sourcecode.de Blog: http://linux.blogweb.de/ JID: sh@linux-server.org OSS-Developer and Admin --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Stephan Hermann wrote:
Well, but this is an easy task...install vmware server (free from vmware) and install a debian distro. and install dh_make :)
There should be some rpms for dh_make as well...if not, I'm looking into packaging it for rpm based distros...
Some Debian package tools are in the 'deb' RPM on SuSE, but not all (e.g. dh_make). +Thomas -- Thomas Anders (thomas.anders at blue-cable.de) --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Once upon a time Stephan Hermann wrote:
Am Montag, 16. Juli 2007 14:48 schrieb Roland Wolters:
Once upon a time Stephan Hermann wrote:
And read the "new debian maitainerns guide" on http://www.debian.org/doc/maint-guide/ for a introduction to debian packaging.
As mentioned already in the other thread, the main problem is that this guide requires you to have certain tools - like dh_make. Which of course are not included in a rpm distribution like Fedora 7.
Well, but this is an easy task...install vmware server (free from vmware) and install a debian distro. and install dh_make :)
Yes, but where would be the advantage of the OpenSuse build server then? Except maybe for the build power itself? Roland -- meinem Geist geht es gut.. er schwebt wie immer über den Dingen.. ... also auch über mir... -- Smilyface
Hi Roland and others. Am Montag, den 16.07.2007, 17:38 +0200 schrieb Roland Wolters:
Once upon a time Stephan Hermann wrote:
Am Montag, 16. Juli 2007 14:48 schrieb Roland Wolters:
Once upon a time Stephan Hermann wrote:
And read the "new debian maitainerns guide" on http://www.debian.org/doc/maint-guide/ for a introduction to debian packaging.
As mentioned already in the other thread, the main problem is that this guide requires you to have certain tools - like dh_make. Which of course are not included in a rpm distribution like Fedora 7.
Well, but this is an easy task...install vmware server (free from vmware) and install a debian distro. and install dh_make :)
Yes, but where would be the advantage of the OpenSuse build server then? Except maybe for the build power itself?
The openbuild service is not for "creating the specific package for a specific distribution". You have to have knowledge about creating the package. There is no way, AFAIK, that you will have one "canonical package build description" for every and any distribution on the linux market. Therefore, you need to create the package with the tools for this particular distro. When dh_make e.g. (which is not essential to create a debian package, it's just a helper tool) is not available, you can do the following: Use dh_make source package from debian (it's just orig.tar.gz or native tar.gz, a .diff.gz and a .dsc file). you can use dpkg-source (which is in the deb rpm on opensuse) and create a debianized source tree and rebuild it for fedora (creating a spec etc.) or you take some debian source package as example, with the debian/ dir inside the sourcetree. You shouldn't build a debian package without knowing anything about debian, the same applies to any other distro. this sounds a bit stubborn, but the differences are sometimes bigger then you expect. Or you can tell some people what you want to package and they create a debian package for you, including the debian/ dir. Regards, \sh -- Stephan Hermann eMail: sh@sourcecode.de Blog: http://linux.blogweb.de/ JID: sh@linux-server.org OSS-Developer and Admin --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Once upon a time Stephan Hermann wrote:
You shouldn't build a debian package without knowing anything about debian, the same applies to any other distro.
Who said I don't know anything about the distro? Anyway, knowing something about a distribution like file system and service handling is still something totally else compared to building packages.
Or you can tell some people what you want to package and they create a debian package for you, including the debian/ dir.
Of course, but I can do that without OBS as well. I thought OBS bridges the gap between deb and rpm distributions a bit by making it easier to build for both types, but I was wrong there at least for the current situation. Anyway, thanks for the answers, Roland -- Humans, eh? Think they're lords of creation. Not like us cats. We *know* we are. Ever see a cat feeding a human? Case proven. -- Terry Pratchett
On Tue, Jul 17, 2007 at 11:20:51AM +0200, Roland Wolters wrote:
Of course, but I can do that without OBS as well. I thought OBS bridges the gap between deb and rpm distributions a bit by making it easier to build for both types, but I was wrong there at least for the current situation.
Well, we try. There's already code in the BS that lets you use the same tarball, multiple patches and changelog for both debian and rpm. What's still different is the way the packages are built, debian has the rule file and lots of dh_helper scripts, rpm has the spec file. Currently you have to provide both spec and dsc/rule files if you want to build for debian and rpm, the semantics are just too different (e.g. pre/postinstall scriptlets work very different for deb and rpm). There are some efforts to specify a "meta" description that can be used to build simple packages, but AFAIK this is still work in progress. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hi Roland Am Dienstag, 17. Juli 2007 11:20 schrieb Roland Wolters:
Once upon a time Stephan Hermann wrote:
You shouldn't build a debian package without knowing anything about debian, the same applies to any other distro.
Who said I don't know anything about the distro? Anyway, knowing something about a distribution like file system and service handling is still something totally else compared to building packages.
What I wanted to say is, e.g. init scripts are different regarding the differnet distros, post(un)inst and pre(un)inst are handled differently, init services are triggered differently etc. this has to be known. (e.g. chkconfig, insserv, update-rc.d, or the new Upstart project from Ubuntu) After all, e.g. for Debian/Ubuntu for every executable there needs to be a man page. If it's not there from upstream you have to generate one as packager, afaik this rule is not given for most rpm based distros, please correct me if I'm wrong) Or regarding copyright licenses...the debian/copyright file is quite different regarding the information it needs, then that what we provide in the rpm spec file. So if you want to provide e.g. some "third-party" packages for Debian/Ubuntu, these infos are essential, as well the signed source package. Many people checking those things, without those infos they won't install a package at all or using official backport repositories (e.g. ubuntu is providing official backport repositories, debian has some semi-official ones) Therefore, as I see the buildservice, which is very "IMHO", the opensuse buildservice can help to build several binary packages for several distros, rpm and deb based, but we (as the users of the build service) should follow and honor the different rules of the different distros.
Or you can tell some people what you want to package and they create a debian package for you, including the debian/ dir.
Of course, but I can do that without OBS as well. I thought OBS bridges the gap between deb and rpm distributions a bit by making it easier to build for both types, but I was wrong there at least for the current situation.
Right. OBS can't "cross create" package build descriptions for different distros, even rpm based distros are different. The funny thing about this is, that one idea was (when I remember correctly my chat with Adrian last year) that there is a plan to create something like this with xml written build description (not the build configurations for different distros on the obs server itself). I could imagine that it is possible to do that. Finding out the similarities for a global xml package build description and handling the differences with different xml namespaces. Creating the different files for different build environments with xslt then is just a matter of time and testing ;) At least that would be a feature what I would like to see in the future, even thinking about Mark Shuttleworths talk during Akademy 2007 (Listen and Watch it here http://home.kde.org/~akademy07/videos/1-06-Keynote-Shuttleworth.ogg or to spare bandwidth you can find it as well on my server: http://www.sourcecode.de/public/files/1-06-Keynote-Shuttleworth.ogg) Regards, \sh -- Stephan Hermann eMail: sh@sourcecode.de Blog: http://linux.blogweb.de/ JID: sh@linux-server.org OSS-Developer and Admin
Once upon a time Stephan Hermann wrote:
Or you can tell some people what you want to package and they create a debian package for you, including the debian/ dir.
Of course, but I can do that without OBS as well. I thought OBS bridges the gap between deb and rpm distributions a bit by making it easier to build for both types, but I was wrong there at least for the current situation.
Right. OBS can't "cross create" package build descriptions for different distros, even rpm based distros are different.
Ok, thanks for the answers so far. I think I first try to build some simple packages for Ubuntu/Debian for testing purposes and to get a feeling for it and afterwards import that stuff to the OBS.
I could imagine that it is possible to do that. Finding out the similarities for a global xml package build description and handling the differences with different xml namespaces. Creating the different files for different build environments with xslt then is just a matter of time and testing ;) At least that would be a feature what I would like to see in the future
Yes, that idea would be awesome: just entering all needed information into an xml and let the OBS do the rest. Roland -- Never argue with an idiot. They will bring you down to their level and beat you with experience.
On Tue, Jul 17, 2007 at 12:15:30PM +0200, Stephan Hermann wrote:
Right. OBS can't "cross create" package build descriptions for different distros, even rpm based distros are different.
The funny thing about this is, that one idea was (when I remember correctly my chat with Adrian last year) that there is a plan to create something like this with xml written build description (not the build configurations for different distros on the obs server itself).
I could imagine that it is possible to do that. Finding out the similarities for a global xml package build description and handling the differences with different xml namespaces. Creating the different files for different build environments with xslt then is just a matter of time and testing ;) At least that would be a feature what I would like to see in the future, even thinking about Mark Shuttleworths talk during Akademy 2007 (Listen and Watch it here http://home.kde.org/~akademy07/videos/1-06-Keynote-Shuttleworth.ogg or to spare bandwidth you can find it as well on my server: http://www.sourcecode.de/public/files/1-06-Keynote-Shuttleworth.ogg)
Is this dead? http://en.opensuse.org/Abstract_Package_Build_Description Peter -- "WARNING: This bug is visible to non-employees. Please be respectful!" SUSE LINUX Products GmbH Research & Development
On Wednesday 18 July 2007 01:41:39 wrote Dr. Peter Poeml:
On Tue, Jul 17, 2007 at 12:15:30PM +0200, Stephan Hermann wrote:
Right. OBS can't "cross create" package build descriptions for different distros, even rpm based distros are different.
The funny thing about this is, that one idea was (when I remember correctly my chat with Adrian last year) that there is a plan to create something like this with xml written build description (not the build configurations for different distros on the obs server itself).
I could imagine that it is possible to do that. Finding out the similarities for a global xml package build description and handling the differences with different xml namespaces. Creating the different files for different build environments with xslt then is just a matter of time and testing ;) At least that would be a feature what I would like to see in the future, even thinking about Mark Shuttleworths talk during Akademy 2007 (Listen and Watch it here http://home.kde.org/~akademy07/videos/1-06-Keynote-Shuttleworth.ogg or to spare bandwidth you can find it as well on my server: http://www.sourcecode.de/public/files/1-06-Keynote-Shuttleworth.ogg)
Is this dead? http://en.opensuse.org/Abstract_Package_Build_Description
It was a Google SoC project, but it is not really usable yet. And it lacks someone who continues to work on it .. However, the idea to create build descriptions from a template set for all distrobutions does exist since a while and there where also approaches to implement it, but none of them is really usable yet AFAIK. bye adrian -- Adrian Schroeter SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) email: adrian@suse.de --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Moins Adrian, Peter, Am Mittwoch, den 18.07.2007, 09:37 +0200 schrieb Adrian Schröter:
On Wednesday 18 July 2007 01:41:39 wrote Dr. Peter Poeml:
On Tue, Jul 17, 2007 at 12:15:30PM +0200, Stephan Hermann wrote:
Right. OBS can't "cross create" package build descriptions for different distros, even rpm based distros are different.
The funny thing about this is, that one idea was (when I remember correctly my chat with Adrian last year) that there is a plan to create something like this with xml written build description (not the build configurations for different distros on the obs server itself).
I could imagine that it is possible to do that. Finding out the similarities for a global xml package build description and handling the differences with different xml namespaces. Creating the different files for different build environments with xslt then is just a matter of time and testing ;) At least that would be a feature what I would like to see in the future, even thinking about Mark Shuttleworths talk during Akademy 2007 (Listen and Watch it here http://home.kde.org/~akademy07/videos/1-06-Keynote-Shuttleworth.ogg or to spare bandwidth you can find it as well on my server: http://www.sourcecode.de/public/files/1-06-Keynote-Shuttleworth.ogg)
Is this dead? http://en.opensuse.org/Abstract_Package_Build_Description
It was a Google SoC project, but it is not really usable yet. And it lacks someone who continues to work on it ..
However, the idea to create build descriptions from a template set for all distrobutions does exist since a while and there where also approaches to implement it, but none of them is really usable yet AFAIK.
I think this idea is taking place in a lot of OSS heads for quite a few days/months/years .. I would like to work together with people who want that. "People who want that"....yeah, this is a big problem. As long as people think (which I did in the last couple of years) that distros are not working together, this plan won't be realized. So, let's start with work on inter-distro-work regarding package management. I think I'm able to provide some infos about debian and rpm package management. Regards, \sh -- Stephan Hermann eMail: sh@sourcecode.de Blog: http://linux.blogweb.de/ JID: sh@linux-server.org OSS-Developer and Admin --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hi Roland, thanks for your interest. On Sat, Jul 14, 2007 at 03:50:34AM +0200, Roland Wolters wrote:
Is there a howto available which explains how to easily build xbuntu/Debian packages with the OBS?
http://en.opensuse.org/Build_Service/Deb_builds may be of interest.
Most information I found on the internet require you to have a Debian/xbuntu system already running. But since the idea of the OBS for me is to not have all that distributions installed locally I would like to do everything inside of the OBS.
That is exactly one of the purposes of the buildservice -- to build packages for distributions that you do not have installed locally.
I also have to admit that I'm used to rpms only - so I do know how to create a spec file, but I'm totally lost with the debian helper apps.
I would also like to volunteer to put up a wiki page about creating an "xbuntu spec" out of an existing rpm spec once I understood the procedure.
If you could enhance the above URL, that would be great!
Btw., if wanted I could also help creating a Fedora dedicated page containing some useful information you might want to know once you intend to build Fedora packages.
There is also http://en.opensuse.org/Build_Service/Tips_and_Tricks Peter -- "WARNING: This bug is visible to non-employees. Please be respectful!" SUSE LINUX Products GmbH Research & Development
Hi Peter, Once upon a time Dr. Peter Poeml wrote:
On Sat, Jul 14, 2007 at 03:50:34AM +0200, Roland Wolters wrote:
Is there a howto available which explains how to easily build xbuntu/Debian packages with the OBS?
http://en.opensuse.org/Build_Service/Deb_builds may be of interest.
Thanks for this link, that was what I was looking for. Is there a specifc reason why that is not linked from [1]? Anyway, while the mentioned page gives some information I still don't see where to start. For example: the Debian packages guidelines at [2] talk about the debian tools needed. Especially the program dh_make is important since it creates a set of other files. Am I supposed to create them by myself, or can OBS do this for me? If yes, how (I use the webclient usually)? To underline my question: the mentioned URL above also says: "The generated diff file includes:" but does not mention where to generated the diff file.
Btw., if wanted I could also help creating a Fedora dedicated page containing some useful information you might want to know once you intend to build Fedora packages.
There is also http://en.opensuse.org/Build_Service/Tips_and_Tricks
I thought more about [1] since some differences between distributions are mentioned there explicitely already. In any way I first want to understand and finish building xbuntu packages before i start writing documentation. Roland [1] http://en.opensuse.org/Build_Service/cross_distribution_package_how_to [2] http://www.debian.org/doc/maint-guide/ -- Wenn er auf großen Kontinenten herumspazierte, ganze Städte raubte und dabei viele Bewohner niedermetzelte... dann würde er wahrscheinlich als Säule der Gesellschaft gelten. -- Terry Pratchett
On Monday 16 July 2007 14:21, Roland Wolters wrote:
Hi Peter,
Once upon a time Dr. Peter Poeml wrote:
On Sat, Jul 14, 2007 at 03:50:34AM +0200, Roland Wolters wrote:
Is there a howto available which explains how to easily build xbuntu/Debian packages with the OBS?
http://en.opensuse.org/Build_Service/Deb_builds may be of interest.
Thanks for this link, that was what I was looking for. Is there a specifc reason why that is not linked from [1]? This question is almost always correctly answered with the phrase "Because nobody has done that yet" ;-)
Anyway, while the mentioned page gives some information I still don't see where to start. For example: the Debian packages guidelines at [2] talk about the debian tools needed. Especially the program dh_make is important since it creates a set of other files. Same here btw.
Am I supposed to create them by myself, or can OBS do this for me? If yes, how (I use the webclient usually)? It can not at the moment. But you're asking for an interesting feature here imo. We could add a function that creates a kind of template with debian files and also a spec file to give an unexperienced packager like me a good start.
regards, Klaas -- Klaas Freitag Novell - SUSE R&D - Internal Tools --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Once upon a time Klaas Freitag wrote:
On Monday 16 July 2007 14:21, Roland Wolters wrote:
Am I supposed to create them by myself, or can OBS do this for me? If yes, how (I use the webclient usually)?
It can not at the moment. But you're asking for an interesting feature here imo. We could add a function that creates a kind of template with debian files and also a spec file to give an unexperienced packager like me a good start.
Thanks for the answer. Btw.: it would be an interesting feature to have a "transformer": while spec and dsc/debian descriptions are quite different and start off totally different it should be technically possible to transform one type to another. In the end both are ways to describe the same task. Roland -- "Ein Tag ohne Lachen ist ein verlorener Tag!" -- Charlie Chaplin
Once upon a time Klaas Freitag wrote:
On Monday 16 July 2007 14:21, Roland Wolters wrote:
Am I supposed to create them by myself, or can OBS do this for me? If yes, how (I use the webclient usually)?
It can not at the moment. But you're asking for an interesting feature here imo. We could add a function that creates a kind of template with debian files and also a spec file to give an unexperienced packager like me a good start.
Thanks for the answer. Btw.: it would be an interesting feature to have a "transformer": while spec and dsc/debian descriptions are quite different and start off totally different it should be technically possible to transform one type to another. In the end both are ways to describe the same task. Without having digged deeply in this topic my feeling says that
On Tuesday 17 July 2007 11:13, Roland Wolters wrote: this would be a *very* complicated task. The problem with spec files are basically that everything can be implemented in it because its basically a shell. I wonder if there are already projects out there trying that and how successfull they are. Klaas -- Klaas Freitag Novell - SUSE R&D - Internal Tools --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (7)
-
Adrian Schröter
-
Dr. Peter Poeml
-
Klaas Freitag
-
Michael Schroeder
-
Roland Wolters
-
Stephan Hermann
-
Thomas Anders