Changeset View
Changeset View
Standalone View
Standalone View
head/sysutils/e2fsprogs/pkg-install
#!/bin/sh | #!/bin/sh | ||||
set -eu | set -eu | ||||
PKGNAME="$1" | PKGNAME="$1" | ||||
MODE="$2" # PRE-INSTALL, POST-INSTALL, DEINSTALL, POST-DEINSTALL | MODE="$2" # PRE-INSTALL, POST-INSTALL, DEINSTALL, POST-DEINSTALL | ||||
case "$MODE" in | case "$MODE" in | ||||
POST-INSTALL) | POST-INSTALL) | ||||
# try to replace the e2fsck and its wrapper, fsck_ext2fs, | # try to replace the e2fsck and its wrapper, fsck_ext2fs, | ||||
# symbolic links by hard links if possible (pkg ships them as symlinks) | # symbolic links by hard links if possible (pkg ships them as symlinks) | ||||
d1=${PKG_ROOTDIR}/sbin/ ; dev1=$(stat -Lf %Xd "$d1") | d1=${PKG_ROOTDIR}/sbin/ ; dev1=$(stat -Lf %Xd "$d1") | ||||
d2=${PKG_ROOTDIR}${PKG_PREFIX}/sbin/ ; dev2=$(stat -Lf %Xd "$d2") | d2=${PKG_ROOTDIR}${PKG_PREFIX}/sbin/ ; dev2=$(stat -Lf %Xd "$d2") | ||||
if [ "$dev1" = "$dev2" ] && [ "$(realpath "$d1")" != "$(realpath "$d2")"; then | if [ "$dev1" = "$dev2" ] && [ "$(realpath "$d1")" != "$(realpath "$d2")" ]; then | ||||
for i in e2fsck fsck_ext2fs ; do | for i in e2fsck fsck_ext2fs ; do | ||||
ln -fhP ${d1}${i} ${d2}${i} | ln -fhP ${d1}${i} ${d2}${i} | ||||
done | done | ||||
for i in ext2 ext3 ext4 ; do | for i in ext2 ext3 ext4 ; do | ||||
ln -fhP ${d2}e2fsck ${d2}fsck.$i | ln -fhP ${d2}e2fsck ${d2}fsck.$i | ||||
done | done | ||||
fi | fi | ||||
# | # | ||||
▲ Show 20 Lines • Show All 60 Lines • Show Last 20 Lines |