libnss-resolve not automatically installed


VIVAVIS AG
 

Hi,

I'm currently on branch dunfell and using systemd-resolved.

I want to have glibc's NSS resolver functions using systemd-resolved.
I've noticed that the plugin libnss-resolve.so.2 was not in my image
by default.

In systemd_244.5.bb, nss-resolve is in PACKAGECONFIG by default.
libnss-resolve is build and packaged, but not installed by default.

To install the missing library libnss-resolve.so.2, I've added
IMAGE_INSTALL_append = " libnss-resolve"
to my image recipe, but I wonder, if this is the right place or necessary
at all.

My assumption was that having nss-resolve in PACKAGECONFIG will
also install the related library, which is obviously not the case.

Furthermore, I had to write an append-file for base-files, such that
/etc/nsswitch.conf contains the following line
hosts: resolve [!UNAVAIL=return] files dns myhostname

Possibly, I've overlooked something essential.
I'd be very happy, if someone can shed some light on this issue.

Best regards,

Carsten Stelling


Khem Raj
 



On Wed, Aug 3, 2022 at 6:30 PM VIVAVIS AG via lists.yoctoproject.org <embedded=vivavis.com@...> wrote:
Hi,

I'm currently on branch dunfell and using systemd-resolved.

I want to have glibc's NSS resolver functions using systemd-resolved.
I've noticed that the plugin libnss-resolve.so.2 was not in my image
by default.

In systemd_244.5.bb, nss-resolve is in PACKAGECONFIG by default.
libnss-resolve is build and packaged, but not installed by default.

To install the missing library libnss-resolve.so.2, I've added
  IMAGE_INSTALL_append = " libnss-resolve"
to my image recipe, but I wonder, if this is the right place or necessary
at all.

My assumption was that having nss-resolve in PACKAGECONFIG will
also install the related library, which is obviously not the case.

Packageconfigs are about what you would like to build it’s still another step what you would like to bundle in your image which is what IMAGE_INSTALL does. At times this is already done because whatever the packagrconfig is enabling is already part of a output package that’s in your IMAGE_INSTALL dependencies and gets pulled in indirectly but that’s not the case here. Therefore you have to do it in both places


Furthermore, I had to write an append-file for base-files, such that
/etc/nsswitch.conf contains the following line
  hosts: resolve [!UNAVAIL=return] files dns myhostname

Possibly, I've overlooked something essential.
I'd be very happy, if someone can shed some light on this issue.

Best regards,

Carsten Stelling




VIVAVIS AG
 

Hi Khem,

Von: Khem Raj <raj.khem@...>
Gesendet: Donnerstag, 4. August 2022 13:20

To install the missing library libnss-resolve.so.2, I've added
  IMAGE_INSTALL_append = " libnss-resolve"
to my image recipe, but I wonder, if this is the right place or necessary
at all.

My assumption was that having nss-resolve in PACKAGECONFIG will
also install the related library, which is obviously not the case.
Packageconfigs are about what you would like to build it’s still another step what you would like to bundle in your image which is what IMAGE_INSTALL does. At times this is already done because whatever the packagrconfig is enabling is already part of a output package that’s in your IMAGE_INSTALL dependencies and gets pulled in indirectly but that’s not the case here. Therefore you have to do it in both places


Furthermore, I had to write an append-file for base-files, such that
/etc/nsswitch.conf contains the following line
  hosts: resolve [!UNAVAIL=return] files dns myhostname
Ok, there's nothing to worry about.
Adding libnss-resolve to IMAGE_INSTALL and overwriting nsswitch.conf in
the append-file ist he correct procedure here.

Thanks for clarification.

Carsten


Khem Raj
 



On Thu, Aug 4, 2022 at 1:35 PM embedded (VIVAVIS AG) <embedded@...> wrote:
Hi Khem,

> Von: Khem Raj <raj.khem@...>
> Gesendet: Donnerstag, 4. August 2022 13:20
>>
>> To install the missing library libnss-resolve.so.2, I've added
>>   IMAGE_INSTALL_append = " libnss-resolve"
>> to my image recipe, but I wonder, if this is the right place or necessary
>> at all.
>>
>> My assumption was that having nss-resolve in PACKAGECONFIG will
>> also install the related library, which is obviously not the case.
>
> Packageconfigs are about what you would like to build it’s still another step what you would like to bundle in your image which is what IMAGE_INSTALL does. At times this is already done because whatever the packagrconfig is enabling is already part of a output package that’s in your IMAGE_INSTALL dependencies and gets pulled in indirectly but that’s not the case here. Therefore you have to do it in both places
>
>>
>> Furthermore, I had to write an append-file for base-files, such that
>> /etc/nsswitch.conf contains the following line
>>   hosts: resolve [!UNAVAIL=return] files dns myhostname
>>

Ok, there's nothing to worry about.
Adding libnss-resolve to IMAGE_INSTALL and overwriting nsswitch.conf in
the append-file ist he correct procedure here.

Yes 


Thanks for clarification.

Carsten