[opensuse-packaging] Building a package based on an existing spec file
Hi, I want to package a ruby gem[1] which already has a spec file [2] in the source tree . Is there a way to let OBS know that the spec is inside the archive or should I manually copy the spec out of the source tree ? Robert [1]: https://github.com/openshift/os-client-tools [2]: https://github.com/openshift/os-client-tools/blob/master/express/client.spec -- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, May 4, 2012 at 10:00 PM, Robert Munteanu <robert.munteanu@gmail.com> wrote:
Hi,
I want to package a ruby gem[1] which already has a spec file [2] in the source tree . Is there a way to let OBS know that the spec is inside the archive or should I manually copy the spec out of the source tree ?
Robert
[1]: https://github.com/openshift/os-client-tools [2]: https://github.com/openshift/os-client-tools/blob/master/express/client.spec
-- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hi, I think you should copy it out. reasons: 1. if spec file is in the archive, other OBS packagers have trouble change the content of spec file in the web interface. and reviewers can't review your package, because they see no spec. indeed in that way only upstream maintainers can change the spec when they make the tarball. so no collaboration on OBS. then it's not "open" developed or has some barriers to do so under existing infrastructure. 2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE. 3. actually, nowadays, without a spec in package source area. the build certainly fails. sometimes you can use service to fetch spec from internet, but anyways at last you have to put it in that folder with tarball. marguerite -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, May 4, 2012 at 6:08 PM, Marguerite Su <i@marguerite.su> wrote:
On Fri, May 4, 2012 at 10:00 PM, Robert Munteanu <robert.munteanu@gmail.com> wrote:
Hi,
I want to package a ruby gem[1] which already has a spec file [2] in the source tree . Is there a way to let OBS know that the spec is inside the archive or should I manually copy the spec out of the source tree ?
Robert
[1]: https://github.com/openshift/os-client-tools [2]: https://github.com/openshift/os-client-tools/blob/master/express/client.spec
-- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hi,
I think you should copy it out.
Good points, thanks. Robert
reasons:
1. if spec file is in the archive, other OBS packagers have trouble change the content of spec file in the web interface. and reviewers can't review your package, because they see no spec. indeed in that way only upstream maintainers can change the spec when they make the tarball. so no collaboration on OBS. then it's not "open" developed or has some barriers to do so under existing infrastructure.
2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE.
3. actually, nowadays, without a spec in package source area. the build certainly fails. sometimes you can use service to fetch spec from internet, but anyways at last you have to put it in that folder with tarball.
marguerite
-- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Dnia piątek, 4 maja 2012 23:08:46 Marguerite Su pisze:
2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE.
You cannot take a RedHat file and slap a SUSE copyright onto it. Chris -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Sat, May 5, 2012 at 1:04 PM, Křištof Želechovski <yecril71pl@gmail.com> wrote:
Dnia piątek, 4 maja 2012 23:08:46 Marguerite Su pisze:
2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE.
You cannot take a RedHat file and slap a SUSE copyright onto it.
Chris
I think that's not required, right? Anyway, gem2rpm-opensuse made it much easier than reusing the existing spec file. Robert -- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Sat, May 5, 2012 at 6:04 PM, Křištof Želechovski <yecril71pl@gmail.com> wrote:
Dnia piątek, 4 maja 2012 23:08:46 Marguerite Su pisze:
2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE.
You cannot take a RedHat file and slap a SUSE copyright onto it.
Chris
I mean this: # # spec file for package # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # I don't know if package in Red Hat or Fedora has such headers. plain spec file has not. indeed, original spec file template come with RPM tarball. in that case, it means every word in every spec file created from any kind of template is GPLed. (seems to be in section 2b) I think that why SuSE "copyright" header said so much nonsense like who contribute who own...if not blabla...it's just a fallback secure. even the hint term referring to these lines in osc is called copyright header. it's just a saying. just showing that spec is used on openSUSE... I'm not lawyer, but in a previous case I happened to know a little about GPL from my lawyer friend from Opera (bug 751746, the author charge fee for a GPL work). And one more thing, if without such headers, your request to Factory will certainly be rejected. I was rejected a few times before. seems it's not required for build on OBS, but required for package in openSUSE standard distro. if you're building in your self playground, come on, you can even package your trash folder... marguerite -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Dnia sobota, 5 maja 2012 20:09:30 Marguerite Su pisze:
the hint term referring to these lines in osc is called copyright header. it's just a saying. just showing that spec is used on openSUSE...
It says that the original copyright is with SUSE, i.e. the primary authors ceded their copyright to SUSE.
And one more thing, if without such headers, your request to Factory will certainly be rejected. I was rejected a few times before. seems it's not required for build on OBS, but required for package in openSUSE standard distro. if you're building in your self playground, come on, you can even package your trash folder...
That means spec files for Factory must be rewritten from scratch. I do not find it to be a serious obstacle. Chris -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
2012/5/5 Marguerite Su <i@marguerite.su>:
On Sat, May 5, 2012 at 6:04 PM, Křištof Želechovski <yecril71pl@gmail.com> wrote:
Dnia piątek, 4 maja 2012 23:08:46 Marguerite Su pisze:
2. the spec is for Red Hat, openSUSE may need to change something to meet our benchmark. like Group Tag( Fedora has less tags than we are), Copyright Header( @2012 SuSE something), Changelog( OBS uses .changes file not inner %changelog), %Clean( OBS does not need that), and some macros may not existed on openSUSE.
You cannot take a RedHat file and slap a SUSE copyright onto it.
Chris
I mean this:
# # spec file for package # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/ #
I don't know if package in Red Hat or Fedora has such headers. plain spec file has not.
Red Hat and Fedora don't use such headers, I believe (might be wrong) that the submitted work from contributors is under the Fedora CLA (Contributors License Agreement). Internally, this is the first group any contributor usually signs on FAS.
indeed, original spec file template come with RPM tarball. in that case, it means every word in every spec file created from any kind of template is GPLed. (seems to be in section 2b) I think that why SuSE "copyright" header said so much nonsense like who contribute who own...if not blabla...it's just a fallback secure. even
The SUSE Copyright headers are injected by some crazy script when submitted to Factory, so I would assume that there's no legal issues with that, else that script would be purged already. Once more I might be wrong, but some submissions I submited to oS:Factory the original header was replaced by SUSE Copyright header (I haven't done it that way). When this happened the original Copyright was also preserved.
the hint term referring to these lines in osc is called copyright header. it's just a saying. just showing that spec is used on openSUSE...
I'm not lawyer, but in a previous case I happened to know a little about GPL from my lawyer friend from Opera (bug 751746, the author charge fee for a GPL work).
And one more thing, if without such headers, your request to Factory will certainly be rejected. I was rejected a few times before. seems it's not required for build on OBS, but required for package in openSUSE standard distro. if you're building in your self playground, come on, you can even package your trash folder...
marguerite -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Nelson Marques // I've stopped trying to understand sandwiches with a third piece of bread in the middle... -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hello, Am Samstag, 5. Mai 2012 schrieb Nelson Marques:
2012/5/5 Marguerite Su <i@marguerite.su>:
I mean this:
# # spec file for package # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, [...]
indeed, original spec file template come with RPM tarball. in that case, it means every word in every spec file created from any kind of template is GPLed. (seems to be in section 2b) I think that why SuSE "copyright" header said so much nonsense like who contribute who own...if not blabla...it's just a fallback secure. even
Basically this copyright header says "the spec is licensed under the same license as the package itsself" (so for GPL software, the spec is GPL also) There's one exception: for packages with a non-open source license, the spec is licensed under the MIT license to ensure that at least the spec is open source ;-)
The SUSE Copyright headers are injected by some crazy script when
s/are/were/ - AFAIK this script is no longer in use. Instead, you'll get your package rejected from factory if the spec doesn't contain any copyright header. The important thing is that the specfile contains a notice about the copyright and the license of the specfile. Using the well-known copyright header that was used/enforced in the past is fine, but AFAIK something like # Copyright (c) 2012 Joe Packager # This file is licensed unter GPL-2.0+ will also be accepted.
I'm not lawyer, but in a previous case I happened to know a little about GPL from my lawyer friend from Opera (bug 751746, the author charge fee for a GPL work).
This bug is non-public (which is not too surprising when it comes to legal stuff) Regards, Christian Boltz PS: hand-picked .sig today ;-) -- I am the "ILOVEGNU" signature virus. Just copy me to your signature. This message was infected under the terms of the GNU General Public License. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
I wouldn't recomend that for several reasons: 1) Most gems will install with all sort of twisted permissions; This needs various fixings during the package which might cover file system permissions amongst other things; 2) Many times upstream gems have complitely idiotic hashbangs (usually known around also as shebangs); sometimes this requires a few fixes during packaging; My recomendation is that you use the provided spec and do all the necessary changes so that you provide a cool package. 2012/5/4 Robert Munteanu <robert.munteanu@gmail.com>:
Hi,
I want to package a ruby gem[1] which already has a spec file [2] in the source tree . Is there a way to let OBS know that the spec is inside the archive or should I manually copy the spec out of the source tree ?
Robert
[1]: https://github.com/openshift/os-client-tools [2]: https://github.com/openshift/os-client-tools/blob/master/express/client.spec
-- Sent from my (old) computer -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Nelson Marques // I've stopped trying to understand sandwiches with a third piece of bread in the middle... -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
participants (5)
-
Christian Boltz
-
Křištof Želechovski
-
Marguerite Su
-
Nelson Marques
-
Robert Munteanu