diff options
-rw-r--r-- | sbopkglint.d/30-manpages.t.sh | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/sbopkglint.d/30-manpages.t.sh b/sbopkglint.d/30-manpages.t.sh index 7ab56d4..7900003 100644 --- a/sbopkglint.d/30-manpages.t.sh +++ b/sbopkglint.d/30-manpages.t.sh @@ -89,9 +89,18 @@ check_locale_dir() { } if [ -d usr/man ]; then - find usr/man -type f > .manpages.$$ - find usr/man -mindepth 1 -type d > .mandirs.$$ - find usr/man -type d -a -empty > .manemptydirs.$$ + find usr/man -name "* *" -print0 | xargs -r0 ls -bld > .spaces.$$ + if [ -s .spaces.$$ ]; then + warn "/usr/man may not contain filenames with spaces:" + cat .spaces.$$ + fi + rm -f .spaces.$$ + + # anything with a space in it won't be found by these, but + # it was complained about already. + find usr/man -type f -a \! -name "* *" > .manpages.$$ + find usr/man -mindepth 1 -type d -a \! -name "* *" > .mandirs.$$ + find usr/man -type d -a -empty -a \! -name "* *" > .manemptydirs.$$ while read d; do [ "$( stat -c '%a %U %G' "$d" )" != "755 root root" ] && BADDIRPERMS+="$d " |