www.cendio.com
Bug 3995 - debian packaging of client fails lintian sanity tests
: debian packaging of client fails lintian sanity tests
Status: CLOSED FIXED
: ThinLinc
Client
: 3.2.0
: PC Unknown
: P2 Normal
: 4.1.1
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2011-09-21 13:14 by
Modified: 2013-10-24 10:49 (History)
Acceptance Criteria:


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From cendio 2011-09-21 13:14:51

    
------- Comment #2 From cendio 2012-06-07 14:21:42 -------
Ubuntu's software center only complains when the "lintian" tool is installed.
And it only makes noise about some errors. With the 64-bit packaging in place,
this is what's left:

Lintian check results for
/media/USBDISK/thinlinc-client_3.4.0post-3520_amd64.deb:
Use of uninitialized value $ENV{"HOME"} in concatenation (.) or string at
/usr/bin/lintian line 108.
E: thinlinc-client: non-etc-file-marked-as-conffile
opt/thinlinc/etc/ssh_known_hosts
E: thinlinc-client: non-etc-file-marked-as-conffile
opt/thinlinc/etc/tlclient.conf
------- Comment #3 From cendio 2012-06-07 14:22:42 -------
Here's the complete list of errors and warnings:

user@lolbuntu:~$ lintian 
/media/USBDISK/thinlinc-client_3.4.0post-3520_amd64.deb 
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/libalsa-util.so /usr/lib64
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-sink.so
/opt/thinlinc/lib/pulse-0.9/modules
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-sink.so /usr/lib64
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-sink.so
/local/home/tlbuilder/buildarea/trunk/ctc/buildarea/BUILD/thinlinc-client/pulseaudio/src/.libs
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-source.so
/opt/thinlinc/lib/pulse-0.9/modules
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-source.so /usr/lib64
E: thinlinc-client: binary-or-shlib-defines-rpath
opt/thinlinc/lib/tlclient/module-alsa-source.so
/local/home/tlbuilder/buildarea/trunk/ctc/buildarea/BUILD/thinlinc-client/pulseaudio/src/.libs
E: thinlinc-client: embedded-library
opt/thinlinc/lib/tlclient/opensc-pkcs11.so: openssl
E: thinlinc-client: embedded-library
opt/thinlinc/lib/tlclient/opensc-pkcs11.so: ltdl
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/pdftops: libjpeg
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/pulseaudio: ltdl
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/ssh: openssl
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/tlclient.bin:
expat
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/tlclient.bin:
libpng
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/vncviewer: expat
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/vncviewer:
libjpeg
E: thinlinc-client: embedded-library opt/thinlinc/lib/tlclient/vncviewer:
libpng
W: thinlinc-client: missing-depends-line
E: thinlinc-client: non-etc-file-marked-as-conffile
opt/thinlinc/etc/ssh_known_hosts
E: thinlinc-client: non-etc-file-marked-as-conffile
opt/thinlinc/etc/tlclient.conf
E: thinlinc-client: file-in-etc-not-marked-as-conffile
etc/profile.d/tlclient.csh
E: thinlinc-client: file-in-etc-not-marked-as-conffile
etc/profile.d/tlclient.sh
E: thinlinc-client: control-file-has-bad-permissions postinst 0644 != 0755
E: thinlinc-client: control-file-has-bad-permissions prerm 0644 != 0755
E: thinlinc-client: no-copyright-file
E: thinlinc-client: extended-description-is-empty
W: thinlinc-client: unknown-section alien
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/tlclient
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/tlclient-openconf
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/tlclient-xdm
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/etc/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/etc/ssh_known_hosts
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/etc/tlclient.conf
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/EULA.txt
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/libalsa-util.so
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/de/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/de/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/de/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/es/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/es/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/es/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/fr/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/fr/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/fr/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/nl/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/nl/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/nl/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/pt_BR/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/pt_BR/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/pt_BR/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/ru/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/ru/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/ru/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/sv/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/sv/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/sv/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/locale/tr/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/tr/LC_MESSAGES/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/locale/tr/LC_MESSAGES/tlclient.mo
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/module-alsa-sink.so
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/module-alsa-source.so
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/open_source_licenses.txt
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/opensc-pkcs11.so
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/pcsctun
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/pdftops
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/pulseaudio
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/sercd
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/ssh
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/thinlinc-client-mime.xml
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/thinlinc-client.desktop
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/tl-su
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/tlclient-xdmstartup
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/tlclient.bin
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/tlclient.svg
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/tlclient_16.png
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/tlclient_24.png
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/tlclient_48.png
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/tlcontrol
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/unfsd
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/vncviewer
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/xdg-utils/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdg-utils/xdg-desktop-menu
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdg-utils/xdg-icon-resource
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdg-utils/xdg-mime
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdg-utils/xdg-open
E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/lib/tlclient/xdmstartup.d/
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdmstartup.d/00-startwm.sh
E: thinlinc-client: dir-or-file-in-opt
opt/thinlinc/lib/tlclient/xdmstartup.d/90-loop-client.sh
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/de
E: thinlinc-client: md5sums-lists-nonexisting-file opt/thinlinc/lib
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/fr/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/xdmstartup.d
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/fr
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/pt_BR/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/tr
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/sv/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/ru
E: thinlinc-client: md5sums-lists-nonexisting-file opt/thinlinc/bin
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/nl/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file opt/thinlinc/lib/tlclient
E: thinlinc-client: md5sums-lists-nonexisting-file opt/thinlinc/etc
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/pt_BR
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/es/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file opt/thinlinc
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/tr/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/sv
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/xdg-utils
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/de/LC_MESSAGES
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/es
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/nl
E: thinlinc-client: md5sums-lists-nonexisting-file
opt/thinlinc/lib/tlclient/locale/ru/LC_MESSAGES
W: thinlinc-client: executable-not-elf-or-script
opt/thinlinc/lib/tlclient/xdmstartup.d/90-loop-client.sh
W: thinlinc-client: executable-not-elf-or-script etc/profile.d/tlclient.sh
W: thinlinc-client: executable-not-elf-or-script
opt/thinlinc/lib/tlclient/xdmstartup.d/00-startwm.sh
W: thinlinc-client: executable-not-elf-or-script etc/profile.d/tlclient.csh
W: thinlinc-client: maintainer-script-ignores-errors prerm
W: thinlinc-client: maintainer-script-ignores-errors postinst
E: thinlinc-client: shlib-with-executable-bit
opt/thinlinc/lib/tlclient/libalsa-util.so 0755
E: thinlinc-client: shlib-with-executable-bit
opt/thinlinc/lib/tlclient/module-alsa-sink.so 0755
E: thinlinc-client: shlib-with-executable-bit
opt/thinlinc/lib/tlclient/module-alsa-source.so 0755
------- Comment #4 From cendio 2013-07-15 11:16:33 -------
Apparently, when you install on Ubuntu, you get an message saying:

The package is of bad quality 

Perhaps this is the same bug? Re-assigning to --- for discussion.
------- Comment #5 From cendio 2013-07-16 11:32:59 -------
Note that this bug is only for the client. 

It seems that this happens on a default Ubuntu system, which means that we need
to do something about it. Assuming the problem is related to the configuration
files not located below /etc, there are a few options:

1) Move the config files to /etc. However, this means that the client will no
longer be fully contained under its prefix. The tarball client, a relocatable
RPM etc would be different from the DEB client. The documentation would need to
cover the situation where different client have the configuration files in
different locations. Risk of user confusion. 

2) Remove the configuration file attribute from these files. One disadvantage
here is that local changes might be lost during upgrade. Perhaps this can be
handle with a pre-install script that makes a backup.
------- Comment #6 From cendio 2013-07-18 14:30:56 -------
Tested on Ubuntu 12.10-64bit. Installed by downloading in Firefox and
double-clicking on the package. The client was then installed via the "Package
Installer", without errors or warnings, despite the "lintian" package being
installed.
------- Comment #7 From cendio 2013-07-18 14:35:50 -------
(In reply to comment #6)
> Tested on Ubuntu 12.10-64bit. Installed by downloading in Firefox and
> double-clicking on the package. The client was then installed via the "Package
> Installer", without errors or warnings, despite the "lintian" package being
> installed.

Running lintian manually on this machine gives 120 errors and 48 warnings (!).
------- Comment #8 From cendio 2013-07-18 15:08:33 -------
Types of errors:

E: thinlinc-client: embedded-library
opt/thinlinc/lib/tlclient/opensc-pkcs11.so: openssl

E: thinlinc-client: non-etc-file-marked-as-conffile
opt/thinlinc/etc/ssh_known_hosts

E: thinlinc-client: file-in-etc-not-marked-as-conffile
etc/profile.d/tlclient.csh

E: thinlinc-client: control-file-has-bad-permissions postinst 0644 != 0755

E: thinlinc-client: control-file-has-bad-permissions prerm 0644 != 0755

E: thinlinc-client: no-copyright-file

E: thinlinc-client: extended-description-is-empty

E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/tlclient

E: thinlinc-client: shlib-with-executable-bit
opt/thinlinc/lib/tlclient/pulse/libalsa-util.so 0755
------- Comment #9 From cendio 2013-07-18 15:30:00 -------
(In reply to comment #8)
> Types of errors:

> E: thinlinc-client: file-in-etc-not-marked-as-conffile
> etc/profile.d/tlclient.csh

Fixed in r27702, marking as conffile in RPM package as well.
------- Comment #10 From cendio 2013-07-18 16:06:04 -------
(In reply to comment #8)

> E: thinlinc-client: shlib-with-executable-bit
> opt/thinlinc/lib/tlclient/pulse/libalsa-util.so 0755

Red Hat and Debian has different policies. If we remove the executable bit,
then rpmbuild will no longer strip the libs, and we will get lintian warnings
about this instead. Consider checking if LSB says anything about this.
------- Comment #11 From cendio 2013-09-09 15:54:06 -------
Apparently, different distributions are using different Lintian versions and/or
profiles. This makes testing very difficult. 

Long term, I think it would be best if we could include lintian as part of the
test system. However, "lintian" is a very cumbersome package. It's big: the
source code is 19 MiB. It requires a lot of other packages:

Build-Depends: aspell,
               aspell-en,
               binutils,
               bzip2,
               cdbs,
               debhelper (>= 9),
               default-jdk,
               diffstat,
               docbook-utils,
               docbook-xml,
               fakeroot,
               file,
               gettext,
               hardening-includes,
               intltool-debian,
               javahelper,
               libapt-pkg-perl,
               libarchive-zip-perl,
               libclass-accessor-perl,
               libclone-perl,
               libdpkg-perl,
               libdigest-sha-perl,
               libemail-valid-perl,
               libfile-basedir-perl,
               libhtml-parser-perl,
               libipc-run-perl,
               liblist-moreutils-perl,
               libparse-debianchangelog-perl,
               libtest-minimumversion-perl,
               libtest-perl-critic-perl,
               libtest-pod-coverage-perl,
               libtest-pod-perl,
               libtest-spelling-perl,
               libtest-strict-perl,
               libtest-synopsis-perl,
               libtext-levenshtein-perl,
               libtext-template-perl,
               libtimedate-perl,
               liburi-perl,
               man-db,
               patchutils,
               perl,
               pkg-php-tools (>= 1.5~) | bash (<< 4.2+dfsg-1~),
               python,
               python-all-dev,
               python-numpy,
               quilt,
               rsync,
               t1utils,
               unzip,
               xz-utils,
               zip

And finally, there's no way to build/install it except by building dpkg. 

So I guess it's better to handle problems whenever they appear, then add our
own automatic tests.
------- Comment #12 From cendio 2013-09-10 14:16:28 -------
(In reply to comment #10)
> (In reply to comment #8)
> 
> > E: thinlinc-client: shlib-with-executable-bit
> > opt/thinlinc/lib/tlclient/pulse/libalsa-util.so 0755
> 
> Red Hat and Debian has different policies. If we remove the executable bit,
> then rpmbuild will no longer strip the libs, and we will get lintian warnings
> about this instead. Consider checking if LSB says anything about this.

LSB says nothing about this. Fixed in 27854 by changing rpm2debpkg. Affects
server as well, but should be desired.
------- Comment #13 From cendio 2013-09-10 16:03:24 -------
(In reply to comment #8)

> E: thinlinc-client: control-file-has-bad-permissions postinst 0644 != 0755
> 
> E: thinlinc-client: control-file-has-bad-permissions prerm 0644 != 0755

Fixed in 27858.
------- Comment #14 From cendio 2013-09-10 16:20:23 -------
(In reply to comment #8)

> E: thinlinc-client: extended-description-is-empty

Fixed in 27859.
------- Comment #15 From cendio 2013-09-11 08:48:54 -------
(In reply to comment #8)
> Types of errors:

What remains now:


> E: thinlinc-client: embedded-library
> opt/thinlinc/lib/tlclient/opensc-pkcs11.so: openssl

Difficult to solve; we must do that for a portable binary. 


> E: thinlinc-client: non-etc-file-marked-as-conffile
> opt/thinlinc/etc/ssh_known_hosts

We have two options here: 1) Keep it as it is. 2) Tweak rpm2debpkg so that it
no 
longer marks these files as config files. The files are:

opt/thinlinc/etc/ssh_known_hosts
opt/thinlinc/etc/tlclient.conf

If we are no longer marking these as configs, this means that any changes will
be lost on upgrade. 
Note that this will affect the server as well. 


> E: thinlinc-client: no-copyright-file

Wants a file /usr/share/doc/pkg/copyright, which we cannot provide when using
the /opt prefix. 


> E: thinlinc-client: dir-or-file-in-opt opt/thinlinc/bin/tlclient

According to http://lintian.debian.org/tags/dir-or-file-in-opt.html:

"Debian packages should not install into /opt, because it is reserved for
add-on software."

Well, duh! 


In general, it's worth noting that not all lintian errors are causing problems
with the Ubuntu package manager, 
since they are tweaking the errors reported. I've failed to find good
information on what their requirements
actually are nowadays; this seems to be changing between releases. Several bugs
has been filed wrt the
Google Chrome package; most of them seems to be resolved now. Therefore, I
believe that lintian errors which are
also still present in the Chrome package should be safe to ignore. This
includes all of the above errors except:

non-etc-file-marked-as-conffile


In other words, I believe we are fine now. However, I'll take a quick look at
the warnings as well.
------- Comment #16 From cendio 2013-09-11 09:28:31 -------
lintian warnings:

>W: thinlinc-client: missing-depends-line

"The package contains an ELF binary with dynamic dependencies, but does not
have a Depends line in its control file. " 
Difficult for us to solve, since deps are not portable across different
distros. We *could* try to find some more or 
less dummy/bogus package which is available "everywhere", such as "lsb-base".
But perhaps not fully safe in any case;
perhaps not available on HP terminals, for example. 


>W: thinlinc-client: unknown-section alien

rpm2debpkg currently sets Section: alien. I believe this is that the alien tool
used to do, but this section
is not documented, as far as I can tell. Changed to "misc" in 27861.


>W: thinlinc-client: executable-not-elf-or-script opt/thinlinc/lib/tlclient/xdmstartup.d/90-loop-client.sh
>W: thinlinc-client: executable-not-elf-or-script etc/profile.d/tlclient.sh
>W: thinlinc-client: executable-not-elf-or-script opt/thinlinc/lib/tlclient/xdmstartup.d/00-startwm.sh
>W: thinlinc-client: executable-not-elf-or-script etc/profile.d/tlclient.csh

Should be easy to solve, either by not marking as executable, or adding
shebang. For the server, 
it seems we are using a shebang in all .sh files. Fixed in 27862.


>W: thinlinc-client: maintainer-script-ignores-errors prerm
>W: thinlinc-client: maintainer-script-ignores-errors postinst

"The maintainer script doesn't seem to set the -e flag which ensures that the
script's execution is aborted when any executed command fails."

However, we do not want to abort execution on all errors. Ignoring for now.
------- Comment #17 From cendio 2013-09-11 09:32:47 -------
I'd say that this bug is resolved now. The tester should make sure that it is
possible to install the client package on one or two modern Ubuntu distros,
without any bad package warnings.
------- Comment #18 From cendio 2013-09-12 09:04:08 -------
> 
> > E: thinlinc-client: non-etc-file-marked-as-conffile
> > opt/thinlinc/etc/ssh_known_hosts
> 
> We have two options here: 1) Keep it as it is. 2) Tweak rpm2debpkg so that it
> no 
> longer marks these files as config files. The files are:
> 
> opt/thinlinc/etc/ssh_known_hosts
> opt/thinlinc/etc/tlclient.conf
> 
> If we are no longer marking these as configs, this means that any changes will
> be lost on upgrade. 
> Note that this will affect the server as well. 

This error causes the "bad quality" error on Ubuntu 13.04. Need to solve.
------- Comment #20 From cendio 2013-09-12 15:29:32 -------
For reference, when installing a package through the Ubuntu Software Center on
13.04, lintian is executed as:

/usr/bin/perl -w /usr/bin/lintian --no-cfg --fail-on-warnings --profile
ubuntu/aptdaemon /tmp/thinlinc-client_4.1.0post-4081_i386.deb

Notice --fail-on-warnings; we must consider those as well. The ubuntu/aptdaemon
profile contains:

# The default profile installing local software packages used by aptdaemon
Profile: ubuntu/aptdaemon
Extends: debian/aptdaemon
Disable-Tags:
        FSSTND-dir-in-usr,
        FSSTND-dir-in-var,
        arch-dependent-file-in-usr-share,
        binary-file-compressed-with-upx,
        binary-or-shlib-defines-rpath,
        control-interpreter-in-usr-local,
        copyright-contains-dh_make-todo-boilerplate,
        copyright-file-compressed,
        copyright-file-is-symlink,
        copyright-refers-to-incorrect-directory,
        copyright-refers-to-old-directory,
        debian-rules-missing-required-target,
        debian-rules-not-a-makefile,
        description-is-dh_make-template,
        description-synopsis-is-empty,
        dir-or-file-in-srv,
        dir-or-file-in-var-www,
        embedded-library,
        extended-description-is-empty,
        file-in-etc-not-marked-as-conffile,
        file-in-usr-marked-as-conffile,
        install-info-used-in-maintainer-script,
        library-in-debug-or-profile-should-not-be-stripped,
        magic-arch-in-arch-list,
        missing-build-dependency,
        missing-pre-dependency-on-multiarch-support,
        mknod-in-maintainer-script,
        no-architecture-field,
        no-copyright-file,
        no-maintainer-field,
        no-shlibs-control-file,
        package-installs-python-bytecode,
        section-is-dh_make-template,
        statically-linked-binary,
        udeb-uses-unsupported-compression-for-data-tarball,
        uploader-address-is-on-localhost,
        uploader-address-malformed,
        uploader-name-missing,
        usr-share-doc-symlink-to-foreign-package,
        usr-share-doc-symlink-without-dependency,
------- Comment #21 From cendio 2013-09-12 15:37:41 -------
(In reply to comment #18)
> > 
> > > E: thinlinc-client: non-etc-file-marked-as-conffile
> > > opt/thinlinc/etc/ssh_known_hosts
> > 
> > We have two options here: 1) Keep it as it is. 2) Tweak rpm2debpkg so that it
> > no 
> > longer marks these files as config files. The files are:
> > 
> > opt/thinlinc/etc/ssh_known_hosts
> > opt/thinlinc/etc/tlclient.conf
> > 
> > If we are no longer marking these as configs, this means that any changes will
> > be lost on upgrade. 
> > Note that this will affect the server as well. 
> 
> This error causes the "bad quality" error on Ubuntu 13.04. Need to solve.

We have decided to move tlclient machine wide config files to /etc, an all
"package" platforms, thus both DEB and RPM. Symlinks will be placed in the
normal location, which will still be what we are documenting. Obviously, the
dynamic tarball client etc cannot use this approach. Implemented in 27875.
------- Comment #22 From cendio 2013-10-14 11:11:54 -------
Tested on Ubuntu 13.10; the 4.1 client gives warnings on installation, whereas
the nightly build client doesn't. Good enough for me.

Leaving as "resolved" until Karl has also tested.
------- Comment #23 From cendio 2013-10-16 14:09:24 -------
Ubuntu 12.04: Warns about thinlinc-client-4.1.0, doesn't warn about
thinlinc-client-4.1.0post-4115.

Closing.