diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 13:00:48 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 13:00:48 +0000 |
commit | f542925b701989ba6eed7b08b5226d4021b9b85f (patch) | |
tree | 57e14731f21a6d663326d30b7b88736e9d51c420 /debian/libnss-systemd.postinst | |
parent | Adding upstream version 247.3. (diff) | |
download | systemd-f542925b701989ba6eed7b08b5226d4021b9b85f.tar.xz systemd-f542925b701989ba6eed7b08b5226d4021b9b85f.zip |
Adding debian version 247.3-7+deb11u4.debian/247.3-7+deb11u4debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | debian/libnss-systemd.postinst | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/debian/libnss-systemd.postinst b/debian/libnss-systemd.postinst new file mode 100644 index 0000000..16040bc --- /dev/null +++ b/debian/libnss-systemd.postinst @@ -0,0 +1,39 @@ +#!/bin/sh + +set -e + +# try to insert the systemd entry to the "passwd" and "group" lines in +# /etc/nsswitch.conf to automatically enable libnss-systemd support; do not +# change the configuration if the lines already contain "systemd" +insert_nss_entry() { + echo "Checking NSS setup..." + # abort if /etc/nsswitch.conf does not exist + if ! [ -e /etc/nsswitch.conf ]; then + echo "Could not find /etc/nsswitch.conf." + return + fi + perl -i -pe ' + sub insert { + my $line = shift; + # this also splits on tab + my @bits=split(" ", $line); + # do not break configuration if the line already references + # systemd + if (grep { $_ eq "systemd"} @bits) { + return $line; + } + # add systemd at the end + return $line . " systemd"; + } + s/^(passwd:\s+)(.*)/$1.insert($2)/e; + s/^(group:\s+)(.*)/$1.insert($2)/e; + ' /etc/nsswitch.conf +} + +if [ "$1" = configure ] && [ -z "$2" ]; then + echo "First installation detected..." + # first install: setup the recommended configuration + insert_nss_entry +fi + +#DEBHELPER# |