Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-02-05 Thread Rex Dieter
Thomas Haller wrote:

> On Sun, 2018-02-04 at 09:08 -0600, Rex Dieter wrote:
>> Thomas Haller wrote:
>> 
>> > now, building network-manager-applet(fc28) on Fedora 27, it fails:
>> > 
>> > Full log written to /data/src/fedpkg/network-manager-
>> > applet/network-
>> > manager-applet-1.8.10/x86_64-redhat-linux-gnu/meson-
>> > logs/testlog.txt
>> > + %ldconfig_scriptlets -n libnma
>> > /var/tmp/rpm-tmp.YVXizL: line 40: fg: no job control
>> > error: Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
>> > Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
>> > 
>> > 
>> > This doesn't seem right. Can we fix this? It seems very convenient
>> > to
>> > be able to build a package for f28 across various Fedora versions,
>> > becauseredhat-rpm-config-70-1.fc27 that is how I test the
>> > package...
>> 
>> If you're building locally, do you actually have redhat-rpm-config-
>> 70-1.fc27
>> installed?   (It's currently still in updates-testing).
>> 
>> It is tagged as a koji buildroot override, so koji builds should get
>> it too.
>> 
> 
> Hi,
> 
> yes, redhat-rpm-config-70-1.fc27 fixes the build. Thanks.
> 
> As a suggestion, maybe not update packages in dist-git, before the
> required packages hit Fedora stable...

As far as I know, packages were updated only in master/ branch, where the 
required packages were already available.

-- Rex

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-02-05 Thread Thomas Haller
On Sun, 2018-02-04 at 09:08 -0600, Rex Dieter wrote:
> Thomas Haller wrote:
> 
> > now, building network-manager-applet(fc28) on Fedora 27, it fails:
> > 
> > Full log written to /data/src/fedpkg/network-manager-
> > applet/network-
> > manager-applet-1.8.10/x86_64-redhat-linux-gnu/meson-
> > logs/testlog.txt
> > + %ldconfig_scriptlets -n libnma
> > /var/tmp/rpm-tmp.YVXizL: line 40: fg: no job control
> > error: Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
> > Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
> > 
> > 
> > This doesn't seem right. Can we fix this? It seems very convenient
> > to
> > be able to build a package for f28 across various Fedora versions,
> > becauseredhat-rpm-config-70-1.fc27 that is how I test the
> > package...
> 
> If you're building locally, do you actually have redhat-rpm-config-
> 70-1.fc27 
> installed?   (It's currently still in updates-testing).
> 
> It is tagged as a koji buildroot override, so koji builds should get
> it too.
> 

Hi,

yes, redhat-rpm-config-70-1.fc27 fixes the build. Thanks.

As a suggestion, maybe not update packages in dist-git, before the
required packages hit Fedora stable...

best,
Thomas

signature.asc
Description: This is a digitally signed message part
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-02-04 Thread Rex Dieter
Thomas Haller wrote:

> now, building network-manager-applet(fc28) on Fedora 27, it fails:
> 
> Full log written to /data/src/fedpkg/network-manager-applet/network-
> manager-applet-1.8.10/x86_64-redhat-linux-gnu/meson-logs/testlog.txt
> + %ldconfig_scriptlets -n libnma
> /var/tmp/rpm-tmp.YVXizL: line 40: fg: no job control
> error: Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
> Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
> 
> 
> This doesn't seem right. Can we fix this? It seems very convenient to
> be able to build a package for f28 across various Fedora versions,
> becauseredhat-rpm-config-70-1.fc27 that is how I test the package...

If you're building locally, do you actually have redhat-rpm-config-70-1.fc27 
installed?   (It's currently still in updates-testing).

It is tagged as a koji buildroot override, so koji builds should get it too.

-- Rex

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-02-04 Thread Thomas Haller
On Tue, 2018-01-30 at 10:04 +0100, Igor Gnatenko wrote:
> For those who didn't check Change page since today's morning: Thanks
> to Jason
> Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
> implementation. 
> 
> Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
> %ldconfig_postun, %ldconfig_scriptlets.
> 
> So long story short:
> * If you have %post -p /sbin/ldconfig and %postun -p /sbin/ldconfig,
> replace it
> with %ldconfig_scriptlets
> * If you have just one of those, replace it with %ldconfig_post or
> %ldconfig_postun accordingly
> * If you just call to /sbin/ldconfig from one of your scriptlets in
> shell, just
> replace it with %?ldconfig
> 
> However, if you are not interested to support distro versions less
> than F28,
> then just remove scriptlets 😉 Although on F28+, those macro expand t
> o nothin
> g so it's just matter of having 1-2 additional lines in spec file.

Hi,

now, building network-manager-applet(fc28) on Fedora 27, it fails:

Full log written to /data/src/fedpkg/network-manager-applet/network-
manager-applet-1.8.10/x86_64-redhat-linux-gnu/meson-logs/testlog.txt
+ %ldconfig_scriptlets -n libnma
/var/tmp/rpm-tmp.YVXizL: line 40: fg: no job control
error: Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)
Bad exit status from /var/tmp/rpm-tmp.YVXizL (%check)


This doesn't seem right. Can we fix this? It seems very convenient to
be able to build a package for f28 across various Fedora versions,
because that is how I test the package...

See 
https://src.fedoraproject.org/rpms/network-manager-applet/c/d6f6981153e4bc1512c0d45d34ca23b4624e4d90?branch=master


best,
Thomas


> 
> On Mon, 2018-01-29 at 22:30 +0100, Jan Kurik wrote:
> > = Proposed Self Contained Change: Removing ldconfig scriptlets =
> > https://fedoraproject.org/wiki/Changes/Removing_ldconfig_scriptlets
> > 
> > Change owner(s):
> > * Igor Gnatenko 
> > * Neal Gompa 
> > 
> > For many years, package maintainers were required to write
> > scriptlets
> > which call ldconfig in %post/%postun if they package shared
> > libraries.
> > 
> > == Detailed Description ==
> > Since time immemorial, Red Hat/Fedora packagers have been required
> > to
> > add a stanza to spec files for packages containing libraries to
> > update
> > the ldconfig cache.
> > 
> > %post -p /sbin/ldconfig
> > %postun -p /sbin/ldconfig
> > 
> > To say this is annoying is to put it mildly. However, there was no
> > standard mechanism to make this boilerplate go away. Now with RPM
> > 4.13+, we should change this to file triggers and make all of that
> > go
> > away.
> > 
> > With this change, these scriptlets can be removed and ldconfig
> > would
> > be run just once per transaction.
> > 
> > If your package places shared libraries in special locations
> > referenced by ld.so.conf, you still need to run ldconfig manually.
> > 
> > For those who concerned about whether this is self-contained or
> > system-wide change: there is no overhead if packagers don't remove
> > ldconfig scriptlets in time, so completion doesn't depend whether
> > packagers remove them or not. We are just making it possible.
> > 
> > 
> > == Scope ==
> > * Proposal owners:
> > Make sure that DSO symlinks are being packagedcommit, add
> > transaction
> > filetriggers to glibccommit + commit.
> > 
> > * Other developers:
> > Package maintainers are advised to remove ldconfig scriptlets in
> > order
> > to achieve benefits specified above.
> > 
> > * Release engineering:
> > #7284: https://pagure.io/releng/issue/7284
> > 
> > * List of deliverables:
> > N/A (not a System Wide Change)
> > 
> > * Policies and guidelines:
> > Packaging guidelines need to be updated to reflect reality.
> > 
> > * Trademark approval:
> > N/A (not needed for this Change)
> > -- 
> > Jan Kuřík
> > Platform & Fedora Program Manager
> > Red Hat Czech s.r.o., Purkynova 99/71, 612 45 Brno, Czech Republic
> 
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org

signature.asc
Description: This is a digitally signed message part
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-01-30 Thread Igor Gnatenko
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On Tue, 2018-01-30 at 11:25 +0100, Miroslav Lichvar wrote:
> On Tue, Jan 30, 2018 at 10:04:48AM +0100, Igor Gnatenko wrote:
> > For those who didn't check Change page since today's morning: Thanks to
> > Jason
> > Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
> > implementation. 
> > 
> > Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
> > %ldconfig_postun, %ldconfig_scriptlets.
> 
> The macros should be used instead of this conditional from the change
> page?

Yes.

> %if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= %27)
> 
> Which package is supposed to provide the macros? I don't see them in
> an up-to-date F27 (and neither rawhide) buildroot.

redhat-rpm-config and epel-rpm-macros. Those are already in buildroot, but not
in updates yet (update is still pending).
- -- 
- -Igor Gnatenko
-BEGIN PGP SIGNATURE-

iQIzBAEBCAAdFiEEhLFO09aHZVqO+CM6aVcUvRu8X0wFAlpwSyEACgkQaVcUvRu8
X0zseBAAqs2BcWiE8TZzMJHrsoZ2K4KK+ll5QApBXzOq9/lS8hvQhsKJIqeu5BLU
uS9XxUdv34xcaKnc5bmnf7fZ54+i7H6DL/Cym3SOnYajJImxqztpQYKkLsKiLjNK
Pl+Y3qWJJWFPKX/DdMO7R4I+Gf2LJxLUyoB4K9aN/ysUZxJW2y2ZpJLWNDBlV0A4
7Lm1+Jp4T82R95OyYTNwxQoNclOHFG0kVCvBN8sPKRDzdSiD4eVwJ+UmmIaV2BF+
9SZBmVA9tO+P9z+GfFSj8MJN7OuWdcNvOkGl/+o3zqKuJ+O+rlX+dQiH6HQTwb1O
Pyl9JGwAct7ko7Je9mIyTQxZKmcUGNdPRJCVg9kJ34w4Yf/QU6fxpENkitFBuPRI
uKgGuqQcLgTwwBarCa2l+mvxj7BrcoAsWRgZ/AiCSa9lvmztM5L9DZM9jkp5tSCZ
K7xicbWc7KNn9mt666FyFJw083ld8eougGBzPForNj6WWBNhp8FjpjtZBsa7aIc/
L9Jq49yDhLRlwtNKdU5ISmNZ+AyX4kzo/Jckn5eliFf7r/nEfsqV9fa/pTuBeTgm
TDt9epyWCkQMtUMMQGekxmMXdJwqPC9jYJgy2lLkn4cZWsm6CTFTllbWA3DvzEBu
mH0rfcrTUsxJdgdvmwWzYiPS60Oaq7ahcF8P94BT7CKn8AKqMqY=
=cgpB
-END PGP SIGNATURE-
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-01-30 Thread Miroslav Lichvar
On Tue, Jan 30, 2018 at 10:04:48AM +0100, Igor Gnatenko wrote:
> For those who didn't check Change page since today's morning: Thanks to Jason
> Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
> implementation. 
> 
> Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
> %ldconfig_postun, %ldconfig_scriptlets.

The macros should be used instead of this conditional from the change
page?

%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= %27)

Which package is supposed to provide the macros? I don't see them in
an up-to-date F27 (and neither rawhide) buildroot.

-- 
Miroslav Lichvar
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-01-30 Thread Igor Gnatenko
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On Tue, 2018-01-30 at 09:49 +, Jonathan Wakely wrote:
> On 30/01/18 10:04 +0100, Igor Gnatenko wrote:
> > -BEGIN PGP SIGNED MESSAGE-
> > Hash: SHA256
> > 
> > For those who didn't check Change page since today's morning: Thanks to
> > Jason
> > Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
> > implementation.
> > 
> > Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
> > %ldconfig_postun, %ldconfig_scriptlets.
> > 
> > So long story short:
> > * If you have %post -p /sbin/ldconfig and %postun -p /sbin/ldconfig,
> > replace it
> > with %ldconfig_scriptlets
> > * If you have just one of those, replace it with %ldconfig_post or
> > %ldconfig_postun accordingly
> > * If you just call to /sbin/ldconfig from one of your scriptlets in shell,
> > just
> > replace it with %?ldconfig
> > 
> > However, if you are not interested to support distro versions less than
> > F28,
> > then just remove scriptlets 😉 Although on F28+, those macro expand t
> > o nothin
> > g so it's just matter of having 1-2 additional lines in spec file.
> 
> Is there any way to use the macros for subpackages?

Sure!

> The boost package has lots of subpackages that install shared libs, so
> each one does:
> 
> %post foo -p /sbin/ldconfig
> %postun foo -p /sbin/ldconfig
> 
> %post bar -p /sbin/ldconfig
> %postun bar -p /sbin/ldconfig

%ldconfig_scriptlets foo
%ldconfig_scriptlets bar

> (Although for Boost we don't have a single spec file that works for
> all distro versions, so I can just remove them entirely in rawhide,
> and keep them in older branches).

It also accepts -n, so %ldconfig_scriptlets -n foo-bar would work as well!
- -- 
- -Igor Gnatenko
-BEGIN PGP SIGNATURE-

iQIzBAEBCAAdFiEEhLFO09aHZVqO+CM6aVcUvRu8X0wFAlpwQ6UACgkQaVcUvRu8
X0wPLRAAmzXRfDQuCLGeGTcUHajpXcThH/t6df0/gEN/RFRK2EygZSg9kDcmbBA0
hsPWjn8wFRUcWawGC7CbMEOWzPswjdsnikKs74YK2t4R7/HRCC1YnEeXRvP44ELg
20eaPOLmOG4DIPoEf4hldQKU8p/sI6udGt3npIHyYoWIci3e/yscLI83YxOvNuCU
QNNaFUng7zBQVoMKwdiIdh1vpwX0jazPUr7ZySS97zQepFUXmWT1ahj1055s5An9
Zl90UlnAjJU1KjrNT3PbglLl5V2bDcMmTBCoug3LFPxYVEPfeI1t1DSDB9rhec59
+tbdktX0LYE9mXzTGqQ4W00XjRVw1LGgj6+xQFLkJWtPcGt2EEB4TEiz2gXGJCLv
fu9BxZh9XNUCaxpIBGQziJpFjlap3Xb4OG6hG8+sndRZ6EVqbEF+DppTKdF7PoK8
leuKuD4eVnF3zNpIdmepPwJ9ASZDZfH7eKQhphblaMKSCuzK0RkxfFqitwMG1nz8
T9ehF2SL3g3kS9x7R+Hy8LsTI5Enc7QU8O0pEjmvvW0qyCIBpA4Zr7j3zWzA0jRl
ow07rMTLaqB8oX3+XvkPhmclPX22bjevQY/c8q1A5zRcy+oG3SouJ04NtbE5Gcka
y2mHVW/P3n1LcVrxOCc4CpbaQ9SI6/ylJf7UbNEr5j9BLtB29v0=
=bKQP
-END PGP SIGNATURE-
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-01-30 Thread Jonathan Wakely

On 30/01/18 10:04 +0100, Igor Gnatenko wrote:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

For those who didn't check Change page since today's morning: Thanks to Jason
Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
implementation.

Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
%ldconfig_postun, %ldconfig_scriptlets.

So long story short:
* If you have %post -p /sbin/ldconfig and %postun -p /sbin/ldconfig, replace it
with %ldconfig_scriptlets
* If you have just one of those, replace it with %ldconfig_post or
%ldconfig_postun accordingly
* If you just call to /sbin/ldconfig from one of your scriptlets in shell, just
replace it with %?ldconfig

However, if you are not interested to support distro versions less than F28,
then just remove scriptlets 😉 Although on F28+, those macro expand to nothin
g so it's just matter of having 1-2 additional lines in spec file.


Is there any way to use the macros for subpackages?

The boost package has lots of subpackages that install shared libs, so
each one does:

%post foo -p /sbin/ldconfig
%postun foo -p /sbin/ldconfig

%post bar -p /sbin/ldconfig
%postun bar -p /sbin/ldconfig

(Although for Boost we don't have a single spec file that works for
all distro versions, so I can just remove them entirely in rawhide,
and keep them in older branches).

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: F28 Self Contained Change: Removing ldconfig scriptlets

2018-01-30 Thread Igor Gnatenko
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

For those who didn't check Change page since today's morning: Thanks to Jason
Tibbits (tibbs) who proposed %ldconfig_scriptlets macro and its
implementation. 

Now we have 4 macros you could use: %ldconfig, %ldconfig_post,
%ldconfig_postun, %ldconfig_scriptlets.

So long story short:
* If you have %post -p /sbin/ldconfig and %postun -p /sbin/ldconfig, replace it
with %ldconfig_scriptlets
* If you have just one of those, replace it with %ldconfig_post or
%ldconfig_postun accordingly
* If you just call to /sbin/ldconfig from one of your scriptlets in shell, just
replace it with %?ldconfig

However, if you are not interested to support distro versions less than F28,
then just remove scriptlets 😉 Although on F28+, those macro expand to nothin
g so it's just matter of having 1-2 additional lines in spec file.

On Mon, 2018-01-29 at 22:30 +0100, Jan Kurik wrote:
> = Proposed Self Contained Change: Removing ldconfig scriptlets =
> https://fedoraproject.org/wiki/Changes/Removing_ldconfig_scriptlets
> 
> Change owner(s):
> * Igor Gnatenko 
> * Neal Gompa 
> 
> For many years, package maintainers were required to write scriptlets
> which call ldconfig in %post/%postun if they package shared libraries.
> 
> == Detailed Description ==
> Since time immemorial, Red Hat/Fedora packagers have been required to
> add a stanza to spec files for packages containing libraries to update
> the ldconfig cache.
> 
> %post -p /sbin/ldconfig
> %postun -p /sbin/ldconfig
> 
> To say this is annoying is to put it mildly. However, there was no
> standard mechanism to make this boilerplate go away. Now with RPM
> 4.13+, we should change this to file triggers and make all of that go
> away.
> 
> With this change, these scriptlets can be removed and ldconfig would
> be run just once per transaction.
> 
> If your package places shared libraries in special locations
> referenced by ld.so.conf, you still need to run ldconfig manually.
> 
> For those who concerned about whether this is self-contained or
> system-wide change: there is no overhead if packagers don't remove
> ldconfig scriptlets in time, so completion doesn't depend whether
> packagers remove them or not. We are just making it possible.
> 
> 
> == Scope ==
> * Proposal owners:
> Make sure that DSO symlinks are being packagedcommit, add transaction
> filetriggers to glibccommit + commit.
> 
> * Other developers:
> Package maintainers are advised to remove ldconfig scriptlets in order
> to achieve benefits specified above.
> 
> * Release engineering:
> #7284: https://pagure.io/releng/issue/7284
> 
> * List of deliverables:
> N/A (not a System Wide Change)
> 
> * Policies and guidelines:
> Packaging guidelines need to be updated to reflect reality.
> 
> * Trademark approval:
> N/A (not needed for this Change)
> -- 
> Jan Kuřík
> Platform & Fedora Program Manager
> Red Hat Czech s.r.o., Purkynova 99/71, 612 45 Brno, Czech Republic
- -- 
- -Igor Gnatenko
-BEGIN PGP SIGNATURE-

iQIzBAEBCAAdFiEEhLFO09aHZVqO+CM6aVcUvRu8X0wFAlpwNTAACgkQaVcUvRu8
X0x4FRAAtGD9BxH75UYdRbSVpP9uo+rLSRd0+QZTB0b47P5+tJStDBujbiIjz1MG
nCeYvYqXKDqVMvdhRG9X5V/XIer5Uf5FYWVhpLNB/6ssOU0xuVM7vKlMealOAYGw
p5CtgpDF48ukmFwbIyJOwM1g/Q7hW/2lMcvvGvXBQmRNE0MeaTy5i91oVXjyZvI4
gdK+qv79typk8//8vHOXEXKpAKBWvAjjqzfvM3h4jIveqRqnkZwDBrDuIDSmMuV3
EbiUbkQUFBEh44TFZi5Z+vj2d0gR/apabhQvQWezVJf+FoQSaAD1saOW+aqHVOki
IHXNB9kiyDbLHkj5pj53x6BfFkPGLxIy6jAIJlPUn6EiXtIrjhrBN/rrPlGH/iUH
0Xm8vA0IsQsFRbuTJWkNqjDvIlIvU7gPAsbUWFesymRj2wLEiUONy2qfPQp7TUr0
NEhkzVP4AcKoQ16rJLmyaeixdP0E0tNqMSUrrsoETG0LvictCSyGth1KkMfoCsAp
5bwxIqT0z3Y3rYvyL1uIxgLdOJPXbYA28WLv5im8zNmKBd/JSQwt9uMFf2ehum2P
5NRDZi7eQdYsQUVsbgeRC8sKzyj0q3l1gRaN6QyfkKoSvSZ/1UQjyhfL82xJB62M
cefA85qmjH160gG+ZrVvB5L1CM9jc2bMQHS7y9yiW4kvCL0GmAg=
=OZ+u
-END PGP SIGNATURE-
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org