EESSI / compatibility-layer

Compatibility layer of the EESSI project
https://eessi.github.io/docs/compatibility_layer
GNU General Public License v2.0
11 stars 21 forks source link

Add USE flags for `nss-pam-ldapd` and `sssd` #199

Closed bedroge closed 4 months ago

bedroge commented 6 months ago

Required by https://github.com/EESSI/gentoo-overlay/pull/99. Note that it also removes a bunch of host symlinks that are no longer required due to the changes in both PRs.

This solves https://gitlab.com/eessi/support/-/issues/32, as it will make use of the host daemons.

eessi-bot[bot] commented 6 months ago

Instance eessi-bot-mc-aws is configured to build:

bedroge commented 4 months ago

The script added in commit https://github.com/EESSI/compatibility-layer/pull/199/commits/8523330ae511ed69766c8861a336c6914cebb6df will apply all those changes. I've run it in our build container, and this is the (expected) difference in packages:

diff in installed packages:
--- /tmp/tmp.nACeZhs5wv/installed-pkgs-pre-update.txt   2024-04-15 13:26:59.806934026 +0200
+++ /tmp/tmp.nACeZhs5wv/installed-pkgs-post-update.txt  2024-04-15 14:08:54.713948610 +0200
@@ -244,12 +244,13 @@
 net-misc/curl-8.3.0-r2::gentoo
 net-misc/rsync-3.2.7-r2::gentoo
 net-misc/wget-1.21.4::gentoo
+net-nds/openldap-2.6.6::gentoo
 perl-core/File-Temp-0.231.100::gentoo
 sys-apps/acl-2.3.1-r2::gentoo
 sys-apps/archspec-0.2.1::eessi
 sys-apps/attr-2.5.1-r2::gentoo
 sys-apps/baselayout-2.13-r1::gentoo
-sys-apps/coreutils-9.3-r1::gentoo
+sys-apps/coreutils-9.3-r3::gentoo
 sys-apps/dbus-1.15.6::gentoo
 sys-apps/debianutils-5.7::gentoo
 sys-apps/diffutils-3.10::gentoo
@@ -272,10 +273,12 @@
 sys-apps/sed-4.9::gentoo
 sys-apps/systemd-utils-253.5::gentoo
 sys-apps/texinfo-7.0.3::gentoo
-sys-apps/util-linux-2.38.1-r2::gentoo
+sys-apps/util-linux-2.38.1-r3::gentoo
 sys-apps/which-2.21::gentoo
+sys-auth/nss-pam-ldapd-0.9.12-r2::eessi
 sys-auth/pambase-20220214::gentoo
 sys-auth/passwdqc-2.0.2-r1::gentoo
+sys-auth/sssd-2.8.2::eessi
 sys-cluster/lmod-8.7.23::gentoo
 sys-cluster/rdma-core-45.0::gentoo
 sys-devel/bc-1.07.1-r6::gentoo

Note that it also recompiles glibc, adds some additional configuration, and bumps the commit used for the EESSI overlay (in order to get the changes from https://github.com/EESSI/gentoo-overlay/pull/99).

This is the output from running some of the affected commands:

$ last

wtmp begins Mon Dec  5 01:00:00 2022

$ who
$ 

Note that it looks like who still doesn't work, but that's because of the container, and the who from the container itself gives the same result. Even more important is the following, which shows that the correct paths are now picked up by these tools:

$ strace who 2>&1 | grep "[u,w]tmp"
access("/var/run/utmpx", F_OK)          = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/var/run/utmp", O_RDONLY|O_CLOEXEC) = 3

$ strace last 2>&1 | grep "[u,w]tmp"
openat(AT_FDCWD, "/var/log/wtmp", O_RDONLY) = 3
write(1, "\nwtmp begins Mon Dec  5 01:00:00"..., 38
wtmp begins Mon Dec  5 01:00:00 2022

The same changes have been deployed to the pilot repo, and tests with LDAP showed that this works fine now. See https://gitlab.com/eessi/support/-/issues/32 for some more details.

bedroge commented 4 months ago

I've run the update script on both architectures, this is the (same) diff for both of them:

diff for x86_64 ``` diff in installed packages: --- /tmp/tmp.yPsjSzedQy/installed-pkgs-pre-update.txt 2024-04-16 07:49:15.661591371 +0000 +++ /tmp/tmp.yPsjSzedQy/installed-pkgs-post-update.txt 2024-04-16 08:00:55.035870582 +0000 @@ -244,12 +244,13 @@ net-misc/curl-8.3.0-r2::gentoo net-misc/rsync-3.2.7-r2::gentoo net-misc/wget-1.21.4::gentoo +net-nds/openldap-2.6.6::gentoo perl-core/File-Temp-0.231.100::gentoo sys-apps/acl-2.3.1-r2::gentoo sys-apps/archspec-0.2.1::eessi sys-apps/attr-2.5.1-r2::gentoo sys-apps/baselayout-2.13-r1::gentoo -sys-apps/coreutils-9.3-r1::gentoo +sys-apps/coreutils-9.3-r3::gentoo sys-apps/dbus-1.15.6::gentoo sys-apps/debianutils-5.7::gentoo sys-apps/diffutils-3.10::gentoo @@ -272,10 +273,12 @@ sys-apps/sed-4.9::gentoo sys-apps/systemd-utils-253.5::gentoo sys-apps/texinfo-7.0.3::gentoo -sys-apps/util-linux-2.38.1-r2::gentoo +sys-apps/util-linux-2.38.1-r3::gentoo sys-apps/which-2.21::gentoo +sys-auth/nss-pam-ldapd-0.9.12-r2::eessi sys-auth/pambase-20220214::gentoo sys-auth/passwdqc-2.0.2-r1::gentoo +sys-auth/sssd-2.8.2::eessi sys-cluster/lmod-8.7.23::gentoo sys-cluster/rdma-core-45.0::gentoo sys-devel/bc-1.07.1-r6::gentoo ```
diff for aarch64 ``` diff in installed packages: --- /tmp/tmp.SmTRkm2rb9/installed-pkgs-pre-update.txt 2024-04-16 07:49:19.445369083 +0000 +++ /tmp/tmp.SmTRkm2rb9/installed-pkgs-post-update.txt 2024-04-16 07:58:40.506902840 +0000 @@ -244,12 +244,13 @@ net-misc/curl-8.3.0-r2::gentoo net-misc/rsync-3.2.7-r2::gentoo net-misc/wget-1.21.4::gentoo +net-nds/openldap-2.6.6::gentoo perl-core/File-Temp-0.231.100::gentoo sys-apps/acl-2.3.1-r2::gentoo sys-apps/archspec-0.2.1::eessi sys-apps/attr-2.5.1-r2::gentoo sys-apps/baselayout-2.13-r1::gentoo -sys-apps/coreutils-9.3-r1::gentoo +sys-apps/coreutils-9.3-r3::gentoo sys-apps/dbus-1.15.6::gentoo sys-apps/debianutils-5.7::gentoo sys-apps/diffutils-3.10::gentoo @@ -272,10 +273,12 @@ sys-apps/sed-4.9::gentoo sys-apps/systemd-utils-253.5::gentoo sys-apps/texinfo-7.0.3::gentoo -sys-apps/util-linux-2.38.1-r2::gentoo +sys-apps/util-linux-2.38.1-r3::gentoo sys-apps/which-2.21::gentoo +sys-auth/nss-pam-ldapd-0.9.12-r2::eessi sys-auth/pambase-20220214::gentoo sys-auth/passwdqc-2.0.2-r1::gentoo +sys-auth/sssd-2.8.2::eessi sys-cluster/lmod-8.7.23::gentoo sys-cluster/rdma-core-45.0::gentoo sys-devel/bc-1.07.1-r6::gentoo ```

I'm building the tarballs now, so staging PRs should appear soon.