Package: debhelper
Version: 7.4.10
Severity: important

Any package using dh_fixperms (pretty-much all of them) fails to build
because I get this error:
chmod: changing permissions of debian/build-tools/usr/share/doc/build-tools': 
Invalid argument
dh_fixperms: find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null 
| xargs -0r chmod 755 returned exit code 123

If the offending command is run manually it works fine:
find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null | xargs -0r 
chmod 755

I really don't understand what is going wrong -there isn't much to go wrong 
with 
chmod 755

I suspect it it is running the 'wrong' chmod - but I can't see how any version 
could
find '755' an 'Invalid argument'

This definately broke when I upgraded to current squeeze from mostly-lenny (so 
a huge
pile of stuff changed, including the default /bin/sh.).
I guess it may not really be a debhelper problem but it is manfesting here and I
haven't noticed anything else broken.

I've tried running dash as the shell and then doing 
find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null | xargs -0r 
chmod 755
and it still works fine.

If I run dh_fixperms on it's own as myself I get:
$ DH_VERBOSE=1 dh_fixperms
        find debian/build-tools  -print0 2>/dev/null | xargs -0r chown 
--no-dereference 0:0 
chown: changing ownership of debian/build-tools': Operation not permitted
chown: changing ownership of debian/build-tools/usr': Operation not permitted
chown: changing ownership of debian/build-tools/usr/share': Operation not 
permitted
chown: changing ownership of debian/build-tools/usr/share/doc': Operation not 
permitted
chown: changing ownership of debian/build-tools/usr/share/doc/build-tools': 
Operation not permitted
chown: changing ownership of 
debian/build-tools/usr/share/doc/build-tools/changelog': Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin': Operation not 
permitted
chown: changing ownership of debian/build-tools/usr/bin/build': Operation not 
permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-fixownerships': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-ipkg-reindex': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-insert-ipkg': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-processuploads': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-reprocess': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/repo-listvoices': 
Operation not permitted
chown: changing ownership of debian/build-tools/usr/bin/tcl-listversions': 
Operation not permitted
dh_fixperms: find debian/build-tools  -print0 2>/dev/null | xargs -0r chown 
--no-dereference 0:0 returned exit code 123

which is fair enough (no fakeroot)

With fakeroot we get the dh_fixperms error:
$ DH_VERBOSE=1 fakeroot dh_fixperms
        find debian/build-tools  -print0 2>/dev/null | xargs -0r chown 
--no-dereference 0:0
        find debian/build-tools ! -type l  -print0 2>/dev/null | xargs -0r 
chmod go=rX,u+rw,a-s
        find debian/build-tools/usr/share/doc -type f  ! -regex 
'debian/build-tools/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | 
xargs -0r chmod 644
        find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null | 
xargs -0r chmod 755
chmod: changing permissions of debian/build-tools/usr/share/doc/build-tools': 
Invalid argument
dh_fixperms: find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null 
| xargs -0r chmod 755 returned exit code 123

Running as root it works fine:
# DH_VERBOSE=1 dh_fixperms
        find debian/build-tools  -print0 2>/dev/null | xargs -0r chown 
--no-dereference 0:0
        find debian/build-tools ! -type l  -print0 2>/dev/null | xargs -0r 
chmod go=rX,u+rw,a-s
        find debian/build-tools/usr/share/doc -type f  ! -regex 
'debian/build-tools/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | 
xargs -0r chmod 644
        find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null | 
xargs -0r chmod 755
        find debian/build-tools/usr/share/man debian/build-tools/usr/man/ 
debian/build-tools/usr/X11*/man/ -type f -print0 2>/dev/null | xargs -0r chmod 
644
        find debian/build-tools -perm -5 -type f \( -name '*.so*' -or -name 
'*.la' -or -name '*.a' \)  -print0 2>/dev/null | xargs -0r chmod 644
        find debian/build-tools/usr/include -type f  -print0 2>/dev/null | 
xargs -0r chmod 644
        find debian/build-tools/usr/share/applications -type f -print0 
2>/dev/null | xargs -0r chmod 644
        find debian/build-tools -perm -5 -type f \( -name '*.cmxs' \) -print0 
2>/dev/null | xargs -0r chmod 644
        find debian/build-tools/usr/lib/perl5 
debian/build-tools/usr/share/perl5 -type f -perm -5 -name '*.pm' -print0 
2>/dev/null | xargs -0r chmod a-X
        find debian/build-tools/usr/bin -type f  -print0 2>/dev/null | xargs 
-0r chmod a+x

Running it as root via fakeroot we get the dh_fixperms problem again. That loks 
like a clue.
Perhaps it is a fakeroot problem really?

# DH_VERBOSE=1 fakeroot dh_fixperms
        find debian/build-tools  -print0 2>/dev/null | xargs -0r chown 
--no-dereference 0:0
        find debian/build-tools ! -type l  -print0 2>/dev/null | xargs -0r 
chmod go=rX,u+rw,a-s
        find debian/build-tools/usr/share/doc -type f  ! -regex 
'debian/build-tools/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | 
xargs -0r chmod 644
        find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null | 
xargs -0r chmod 755
chmod: changing permissions of debian/build-tools/usr/share/doc/build-tools': 
Invalid argument
dh_fixperms: find debian/build-tools/usr/share/doc -type d  -print0 2>/dev/null 
| xargs -0r chmod 755 returned exit code 123


Any other ideas? It is entirely repeatable, and is quite serious because I 
can't build
any packages on this machine!

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (700, 'stable'), (300, 'unstable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30-2-amd64 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages debhelper depends on:
ii  binutils                      2.20-4     The GNU assembler, linker and bina
ii  dpkg-dev                      1.14.25    Debian package development tools
ii  file                          5.03-5     Determines file type using "magic"
ii  html2text                     1.3.2a-14  advanced HTML to text converter
ii  man-db                        2.5.6-4    on-line manual pager
ii  perl                          5.10.1-8   Larry Wall's Practical Extraction 
ii  perl-base                     5.10.1-8   minimal Perl system
ii  po-debconf                    1.0.16     tool for managing templates file t

debhelper recommends no packages.

Versions of packages debhelper suggests:
ii  dh-make                       0.50       tool that converts source archives

-- no debconf information
Wookey
-- 
Principal hats:  iEndian - Balloonboard - Toby Churchill - Emdebian
http://wookware.org/

----- End forwarded message -----
Wookey
-- 
Principal hats:  iEndian - Balloonboard - Toby Churchill - Emdebian
http://wookware.org/



-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to