]> git.ipfire.org Git - thirdparty/dracut.git/commit
Allow $DRACUT_INSTALL to be not an absolute path
authorMikhail Novosyolov <m.novosyolov@rosalinux.ru>
Fri, 27 Mar 2020 13:16:07 +0000 (16:16 +0300)
committerDaniel Molkentin <daniel@molkentin.de>
Wed, 5 Aug 2020 15:46:30 +0000 (17:46 +0200)
commitf84ad9e062519c43264f1a512227621b3bf1853b
tree54bbb0e2894318cc6e9b1c3b271b50f3cd634481
parent3f5bf54fbffdc3516a08c9329b4be80b06761c7a
Allow $DRACUT_INSTALL to be not an absolute path

/usr/sbin/dracut-install is a symlink:
$ file /usr/sbin/dracut-install
/usr/sbin/dracut-install: symbolic link to ../lib/dracut/dracut-install

It resulted to "dracut-install not found" error:

+++ for p in $DRACUT_PATH
+++ [[ -L /sbin/dracut-install ]]
+++ [[ -x /sbin/dracut-install ]]
+++ for p in $DRACUT_PATH
+++ [[ -L /bin/dracut-install ]]
+++ [[ -x /bin/dracut-install ]]
+++ for p in $DRACUT_PATH
+++ [[ -L /usr/sbin/dracut-install ]]
+++ printf '%s\n' dracut-install
+++ return 0
++ DRACUT_INSTALL=dracut-install
++ [[ -n dracut-install ]]
++ [[ -n dracut-install ]]
++ DRINSTALLPARTS=0
++ for i in $DRACUT_INSTALL
++ DRINSTALLPARTS=1
++ [[ 1 = 1 ]]
++ [[ -x dracut-install ]]
++ dfatal 'dracut-install not found!'
++ set +x
dracut: dracut-install not found!

[ -x <not a path to file> ] is not correct and will always be false.
But actually it is available. Let's just allow it to be not an absolute path.
Maybe some other places can be improved to avoid DRACUT_INSTALL being not an absolute path.

Signed-off-by: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
dracut-init.sh