In /usr/bin/grub-kbdcomp line 3: prefix="/usr" ^----^ SC2034: prefix appears unused. Verify use (or export if used externally). In /usr/bin/grub-kbdcomp line 19: . "${pkgdatadir}/grub-mkconfig_lib" ^-- SC1090: Can't follow non-constant source. Use a directive to specify location. In /usr/bin/grub-kbdcomp line 21: self=`basename $0` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: self=$(basename "$0") In /usr/bin/grub-kbdcomp line 44: echo $1 ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$1" In /usr/bin/grub-kbdcomp line 61: output=`argument $option "$@"`; shift ;; ^---------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-----^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: output=$(argument "$option" "$@"); shift ;; In /usr/bin/grub-kbdcomp line 63: output=`echo "$option" | sed 's/--output=//'` ;; ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: output=$(echo "$option" | sed 's/--output=//') ;; In /usr/bin/grub-kbdcomp line 76: ckbcomp $ckbcomp_options | "$grub_mklayout" -o "${output}" ^--------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: ckbcomp "$ckbcomp_options" | "$grub_mklayout" -o "${output}" For more information: https://www.shellcheck.net/wiki/SC1090 -- Can't follow non-constant source.... https://www.shellcheck.net/wiki/SC2034 -- prefix appears unused. Verify use... https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...