View Issue Details

IDProjectCategoryView StatusLast Update
0005119GNUnetGNSpublic2019-02-28 11:17
Reporterng0Assigned Tong0 
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionSVN HEAD 
Target Version0.11.0Fixed in Version0.11.0 
Summary0005119: followup to 0005078 / GNS library file changes
DescriptionI was just informed that https://gnunet.org/bugs/view.php?id=5078 was solved by:

> Users / distros now must manually move the $PREFIX/lib/gnunet/nss/* files to the respective directory where libc expects NSS plugins (or adjust the search path).

This is bad in practice. There is no notice about this, no message. And even if you are expected to read something as a package maintainer (as in package in distro) you are likely to miss it.
The best is to to assume no interaction.
So what's the best way to solve this? I can simply adjust this on my system and the package, that's not a problem.
There should be a configure time option to select the directory for this.
TagsNo tags attached.

Activities

Christian Grothoff

2018-04-01 15:52

manager   ~0012912

The big issue here is that this is not so much about installing the plugin in the NSS directory. The bigger required change (for the user) is to activate it by editing /etc/nsswitch.conf. Doing that is a big decision, so it should only be done by a package maintainer or end-user who knows what they are doing (and how to revert).

ng0

2018-05-22 12:49

developer   ~0012941

/etc/nssswitch.conf is no problem in my opinion.
What bothers me more is expected manual intervention for lib/gnunet/nss/* ... the nssswitch.conf can be installed (it is now in contrib/conf/nss/) as "example" data under share/gnunet/nss/$file.
It's not problem to adjust and extend the nss search-path, but we should communicate it. 9 out of 10 package maintainers will probably not get it if we simply write it in the manual. And for those who skip the README file, we can make an output on the screen ("for nss support, do...") after make has finished.

^
That's how I would resolve this issue for now.

WDYT?

Christian Grothoff

2018-06-04 18:43

manager   ~0012979

Having a configure option still means maintainers could miss it. But feel free to add it, as long as not setting it doesn't break the build.

ng0

2019-02-13 21:24

developer   ~0013711

Another take on this: install it as example data as part of a normal installation.

Christian Grothoff

2019-02-13 22:32

manager   ~0013712

You mean the configuration file? I hope you don't intend to install the plugin as example data ;-)

ng0

2019-02-13 22:40

developer   ~0013713

Last edited: 2019-02-13 22:41

View 2 revisions

Yes, the configuration file.
Since it's been a while, can you list the files required for this to be copied, including the configuration file?

in the default setting, $out/lib/gnunet/nss/ does not exist, so I have no current list to go by (or I failed to pass the path to nss).

Christian Grothoff

2019-02-13 22:55

manager   ~0013714

Basically, the line "hosts" in /etc/nsswitch.conf must be changed
to contain gns.

Before:
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

After:
hosts: files gns [NOTFOUND=return] mdns4_minimal [NOTFOUND=return] dns mdns4

ng0

2019-02-13 23:26

developer   ~0013721

Okay, thanks.

No other files are involved, no .so moving somewhere by hand / automation?

Christian Grothoff

2019-02-13 23:52

manager   ~0013730

Only this file, plus that the NSS plugin must be in the "correct" location.

ng0

2019-02-14 00:00

developer   ~0013734

Okay, I think I can work with this.
This could be closed for now, we should work this into the README, the documentation handbook and other relevant parts as well as include it as a change in the release message maybe (for maintainers to pick up on it).

Christian Grothoff

2019-02-14 10:12

manager   ~0013740

Ok, for the release message, I've started a pad for collaborative editing:
https://cryptpad.fr/pad/#/2/pad/edit/bypuNC5xVJlEktzTpm4IsXw5/

Issue History

Date Modified Username Field Change
2017-08-17 18:35 ng0 New Issue
2018-04-01 15:52 Christian Grothoff Note Added: 0012912
2018-05-22 12:49 ng0 Note Added: 0012941
2018-05-22 12:50 ng0 Assigned To => ng0
2018-05-22 12:50 ng0 Status new => assigned
2018-06-04 18:43 Christian Grothoff Note Added: 0012979
2019-02-13 21:24 ng0 Note Added: 0013711
2019-02-13 21:24 ng0 Assigned To ng0 => Christian Grothoff
2019-02-13 21:24 ng0 Status assigned => feedback
2019-02-13 22:32 Christian Grothoff Note Added: 0013712
2019-02-13 22:40 ng0 Note Added: 0013713
2019-02-13 22:40 ng0 Status feedback => assigned
2019-02-13 22:41 ng0 Note Edited: 0013713 View Revisions
2019-02-13 22:55 Christian Grothoff Note Added: 0013714
2019-02-13 22:55 Christian Grothoff Assigned To Christian Grothoff => ng0
2019-02-13 22:55 Christian Grothoff Status assigned => feedback
2019-02-13 23:26 ng0 Note Added: 0013721
2019-02-13 23:52 Christian Grothoff Note Added: 0013730
2019-02-14 00:00 ng0 Note Added: 0013734
2019-02-14 10:12 Christian Grothoff Note Added: 0013740
2019-02-14 10:12 Christian Grothoff Status feedback => resolved
2019-02-14 10:12 Christian Grothoff Resolution open => fixed
2019-02-14 10:12 Christian Grothoff Fixed in Version => 0.11.0
2019-02-14 10:13 Christian Grothoff Product Version => SVN HEAD
2019-02-14 10:13 Christian Grothoff Target Version => 0.11.0
2019-02-28 11:17 Christian Grothoff Status resolved => closed