Bug#904414: lintian: check for Perl scripts with a shebang not using /usr/bin/perl (Policy 10.4)

2018-07-23 Thread Chris Lamb
tags 904414 + pending
thanks

Fixed in Git, pending upload:

  
https://salsa.debian.org/lintian/lintian/commit/8b85be8c379c73e40e072cb99e6b6eedcaac943e

  checks/scripts.pm  | 6 ++
  debian/changelog   | 4 
  t/tests/scripts-interpreters/debian/debian/install | 2 ++
  t/tests/scripts-interpreters/debian/debian/links   | 2 ++
  t/tests/scripts-interpreters/debian/usr-bin-env-perl   | 3 +++
  t/tests/scripts-interpreters/debian/usr-local-bin-perl | 3 +++
  t/tests/scripts-interpreters/tags  | 2 ++
  7 files changed, 22 insertions(+)


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-



Bug#904414: lintian: check for Perl scripts with a shebang not using /usr/bin/perl (Policy 10.4)

2018-07-23 Thread Paul Wise
Package: lintian
Version: 2.5.93
Severity: wishlist

Debian Policy 10.4 states:

   All command scripts, including the package maintainer scripts inside
   the package and used by dpkg, should have a #! line naming the shell
   to be used to interpret them.

   In the case of Perl scripts this must be #!/usr/bin/perl.

It would be nice if lintian could detect scripts that are Perl scripts
(text/x-perl MIME type or "Perl script text executable" file type) but
do not use the /usr/bin/perl binary in the shebang. While arguments in
shebangs are usually a bad idea, lintian should accept them here:

Debian Policy 10.4 compliant:

#!/usr/bin/perl
#!/usr/bin/perl -T
#! /usr/bin/perl
#! /usr/bin/perl -T

Not Debian Policy 10.4 compliant:

#!/usr/bin/env perl
#!/usr/local/bin/perl

-- System Information:
Debian Release: buster/sid
  APT prefers testing-debug
  APT policy: (900, 'testing-debug'), (900, 'testing'), (800, 
'unstable-debug'), (800, 'unstable'), (790, 'buildd-unstable'), (700, 
'experimental-debug'), (700, 'experimental'), (690, 'buildd-experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.17.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8), 
LANGUAGE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages lintian depends on:
ii  binutils   2.31.1-1
ii  bzip2  1.0.6-8.1
ii  diffstat   1.61-1+b1
ii  dpkg   1.19.0.5+b1
ii  file   1:5.33-3
ii  gettext0.19.8.1-6+b1
ii  intltool-debian0.35.0+20060710.4
ii  libapt-pkg-perl0.1.34
ii  libarchive-zip-perl1.60-1
ii  libclass-accessor-perl 0.51-1
ii  libclone-perl  0.39-1
ii  libdpkg-perl   1.19.0.5
ii  libemail-valid-perl1.202-1
ii  libfile-basedir-perl   0.08-1
ii  libipc-run-perl20180523.0-1
ii  liblist-moreutils-perl 0.416-1+b3
ii  libparse-debianchangelog-perl  1.2.0-12
ii  libtext-levenshtein-perl   0.13-1
ii  libtimedate-perl   2.3000-2
ii  liburi-perl1.74-1
ii  libxml-simple-perl 2.25-1
ii  libyaml-libyaml-perl   0.69+repack-1
ii  man-db 2.8.3-2
ii  patchutils 0.3.4-2
ii  perl [libdigest-sha-perl]  5.26.2-6
ii  t1utils1.41-2
ii  xz-utils   5.2.2-1.3

Versions of packages lintian recommends:
ii  libperlio-gzip-perl  0.19-1+b4

Versions of packages lintian suggests:
ii  binutils-multiarch 2.31.1-1
ii  dpkg-dev   1.19.0.5
ii  libhtml-parser-perl3.72-3+b2
ii  libtext-template-perl  1.53-1

-- 
bye,
pabs

https://wiki.debian.org/PaulWise


signature.asc
Description: This is a digitally signed message part