[opensuse-packaging] Hint needed

Hi, After building my packages using rpmbuild, solving all the rpmlint complaints, I have tried to build my packages using build. Everything worked fine, but I'd like to know if it is 'legal' to copy the $HOME/.rpmmacros into the BUILD_ROOT directory. Actually, I'd like rpmbuild (the one called by build) to take into account all the macros I've set to enable signing the package (%_signature, %_gpg_path, %_gpg_name, %_gpgbin), as well as the %packager macro. When I used to call rpmbuild alone, all these macros were set in $HOME/.rpmmacros, and then I called rpmbuild -ba --sign <my_spec_file> Now I'd like to call build with BUILD_RPM_BUILD_STAGE="-ba --sign" Or may be is this a wrong method? Anybody can help? Regards, Nadia --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Hi Nadia, Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey:
After building my packages using rpmbuild, solving all the rpmlint complaints, I have tried to build my packages using build. Everything worked fine, but I'd like to know if it is 'legal' to copy the $HOME/.rpmmacros into the BUILD_ROOT directory.
why not using lbuild (1)? With lbuild, you can put your marcros in /etc/build/files/10.1/etc/rpm/macros an simple build you rpms with "lbuild-10.1 foo.spec". Detlef (1) http://software.opensuse.org/download/home:/lnussel/SUSE_Factory/noarch/ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Detlef Reichelt wrote:
Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey:
After building my packages using rpmbuild, solving all the rpmlint complaints, I have tried to build my packages using build. Everything worked fine, but I'd like to know if it is 'legal' to copy the $HOME/.rpmmacros into the BUILD_ROOT directory.
why not using lbuild (1)? With lbuild, you can put your marcros in /etc/build/files/10.1/etc/rpm/macros an simple build you rpms with "lbuild-10.1 foo.spec".
On a side note, be very careful what you put into .rpmmacros (or etc/rpm/macros with lbuild) because it can cause builds to be unreproducible. IMO build reproduceability is a very important feature of RPM (well, src.rpm's). Defining %distribution and %package [1] is fine and could even be considered good practice, but overriding/adding macros means the src.rpm won't build on other hosts/environments than your own. [1] e.g.: %packager Pascal Bleser <guru@unixtech.be> %distribution SUSE LINUX 10.1 (X86-64) just my 0.02? cheers - -- -o) Pascal Bleser http://linux01.gwdg.de/~pbleser/ /\\ <pascal.bleser@skynet.be> <guru@unixtech.be> _\_v The more things change, the more they stay insane. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) iD8DBQFFaDSTr3NMWliFcXcRAqf/AJ4gFg1IA4SG94+pQOVasI83VJOsqwCfdQwa lldS/Qi0k7GTtFFlGsDzIfU= =aSbO -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Pascal Bleser wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Detlef Reichelt wrote:
Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey:
After building my packages using rpmbuild, solving all the rpmlint complaints, I have tried to build my packages using build. Everything worked fine, but I'd like to know if it is 'legal' to copy the $HOME/.rpmmacros into the BUILD_ROOT directory.
why not using lbuild (1)? With lbuild, you can put your marcros in /etc/build/files/10.1/etc/rpm/macros an simple build you rpms with "lbuild-10.1 foo.spec".
On a side note, be very careful what you put into .rpmmacros (or etc/rpm/macros with lbuild) because it can cause builds to be unreproducible. IMO build reproduceability is a very important feature of RPM (well, src.rpm's).
Defining %distribution and %package [1] is fine and could even be considered good practice, but overriding/adding macros means the src.rpm won't build on other hosts/environments than your own.
[1] e.g.: %packager Pascal Bleser <guru@unixtech.be> %distribution SUSE LINUX 10.1 (X86-64)
just my 0.02?
Pascal, I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild). Regards, Nadia --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild).
after you have build the packages for all architectures/distros you call rpm --addsign */*.rpm this saves you from typing your passphrase multiple times and you can sign all of them in one go. rpm --resign might be nice too. it removes all other signatures before adding your own. hope this helps darix -- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

On Mon, Nov 27, 2006 at 10:36:11AM +0100, Marcus Rueckert wrote:
On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild).
after you have build the packages for all architectures/distros you call
rpm --addsign */*.rpm
rpm --resign might be nice too. it removes all other signatures before adding your own.
Hmm. Isn't it the same with --addsign? # man rpm SIGNING A PACKAGE rpm --addsign|--resign PACKAGE_FILE ... Both of the --addsign and --resign options generate and insert new sig‐ natures for each package PACKAGE_FILE given, replacing any existing signatures. There are two options for historical reasons, there is no difference in behavior currently. Or is the manual page not up-to-date? Best regards, Stefan Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE LINUX Products GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ------------------------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Marcus Rueckert schrieb:
On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild).
after you have build the packages for all architectures/distros you call
rpm --addsign */*.rpm
this saves you from typing your passphrase multiple times and you can sign all of them in one go.
rpm --resign might be nice too. it removes all other signatures before adding your own.
There is no difference between --addsign and --resign. RPMs cannot have more than one signature, so --addsign removes all the other signature, too. Herbert --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

On Mon, Nov 27, 2006 at 10:53:45AM +0100, Herbert Graeber wrote:
Marcus Rueckert schrieb:
On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild).
after you have build the packages for all architectures/distros you call
rpm --addsign */*.rpm
this saves you from typing your passphrase multiple times and you can sign all of them in one go.
rpm --resign might be nice too. it removes all other signatures before adding your own.
There is no difference between --addsign and --resign. RPMs cannot have more than one signature, so --addsign removes all the other signature, too.
Ok. Stupid question. How can one remove an existing signature? Only by replacing it with a dummy signature? Stefan Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE LINUX Products GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ------------------------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Stefan Dirsch schrieb:
On Mon, Nov 27, 2006 at 10:53:45AM +0100, Herbert Graeber wrote:
Marcus Rueckert schrieb:
On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild). after you have build the packages for all architectures/distros you call
rpm --addsign */*.rpm
this saves you from typing your passphrase multiple times and you can sign all of them in one go.
rpm --resign might be nice too. it removes all other signatures before adding your own. There is no difference between --addsign and --resign. RPMs cannot have more than one signature, so --addsign removes all the other signature, too.
Ok. Stupid question. How can one remove an existing signature? Only by replacing it with a dummy signature?
Stefan
Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE LINUX Products GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ------------------------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
--delsign should do that. Herbert --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Marcus Rueckert wrote:
On 2006-11-27 10:26:41 +0100, Nadia Derbey wrote:
I use .rpmmacros to set the %packager and what is needed for the gpg signature (otherwise rpmlint complains about it :-( ). So, may be my question should have been the following: How to sign packages when they are built using build (or lbuild).
after you have build the packages for all architectures/distros you call
rpm --addsign */*.rpm
this saves you from typing your passphrase multiple times and you can sign all of them in one go.
rpm --resign might be nice too. it removes all other signatures before adding your own.
hope this helps
darix
Thanks a lot! Actually, I already knew that solution, but I was wondering whether there was something more "integrated" with build. I'll do that, so. Regards, Nadia --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Detlef Reichelt wrote:
Hi Nadia,
Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey:
After building my packages using rpmbuild, solving all the rpmlint complaints, I have tried to build my packages using build. Everything worked fine, but I'd like to know if it is 'legal' to copy the $HOME/.rpmmacros into the BUILD_ROOT directory.
why not using lbuild (1)? With lbuild, you can put your marcros in /etc/build/files/10.1/etc/rpm/macros an simple build you rpms with "lbuild-10.1 foo.spec".
Detlef
Detlef, My problem is that I'd like to use the same rpm building tool as the "official" one used to build Open SuSE packages. 1st, I wanted to use y2pmbuild, but somebody told me it was obsolete, and I had to use build instead. Now if you tell me that lbuild is ok too, I can try to use that one. Which package does it come with? Thanks, Nadia -- =============================================================== Name.......... Nadia DERBEY Organization.. BULL/DT/OSwR&D/Linux --------------------------------------------------------------- Email......... mailto:Nadia.Derbey@bull.net Address....... BULL, B.P. 208, 38432 Echirolles Cedex, France Tel........... (33) 76 29 77 62 [Internal Bull: (229) 77 62] Telex,Fax..... 980648 F - (33) 76 29 76 00 Internal Bull. Mail: FREC-B1405 =============================================================== --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Hi Nadia, Am Montag, 27. November 2006 10:22 schrieb Nadia Derbey:
Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey: [...] My problem is that I'd like to use the same rpm building tool as the "official" one used to build Open SuSE packages. 1st, I wanted to use y2pmbuild, but somebody told me it was obsolete, and I had to use build instead.
Ludwig Nussel extended the build-tools with the features of y2pmbuild. Nice work. ;)
Now if you tell me that lbuild is ok too, I can try to use that one.
Which package does it come with?
Write it in my first mail: http://software.opensuse.org/download/home:/lnussel/SUSE_Factory/noarch/ Detlef --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org

Detlef Reichelt wrote:
Hi Nadia,
Am Montag, 27. November 2006 10:22 schrieb Nadia Derbey:
Am Donnerstag, 23. November 2006 13:38 schrieb Nadia Derbey:
[...]
My problem is that I'd like to use the same rpm building tool as the "official" one used to build Open SuSE packages. 1st, I wanted to use y2pmbuild, but somebody told me it was obsolete, and I had to use build instead.
Ludwig Nussel extended the build-tools with the features of y2pmbuild. Nice work. ;)
Now if you tell me that lbuild is ok too, I can try to use that one.
Which package does it come with?
Write it in my first mail:
http://software.opensuse.org/download/home:/lnussel/SUSE_Factory/noarch/
Thx! --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (6)
-
Detlef Reichelt
-
Herbert Graeber
-
Marcus Rueckert
-
Nadia Derbey
-
Pascal Bleser
-
Stefan Dirsch