It requires bc but doesn't have a proper RPM dependency, leaving a default installation with a broken pstopdf and hence a broken thinlocal.
Solve this by reporting bug to SUSE and put up a platform specific note.
(In reply to comment #2)
tl;dr: upstream cups-filters has dropped pstopdf in favor of gstopdf and adjusted their filter chains to fit.
First let's update our SLES image and see if they've also made the same change as OpenSUSE. If they have then we can continue looking at gstopdf, otherwise move that part to a separate bug and go back to the 'bc' problem.
* SLES12SP2 still has pstopdf installed through cups-filters-1.0.58-13.1.x86_64.
* SLES12SP3 has not been released yet, est. release in September.
* OpenSUSE Leap 42.3 is available, and it also has pstopdf available through cups-filters-1.8.2-3.1.x86_64.
Please note that our printing support uses ps2pdf, while this bug talks about pstopdf.
Let's retest ThinLinc on a clean install of SLES and see if this still is an issue.
Some confusion about commands here:
- pstopdf : a CUPS filter, not a normal command. Uses ps2ps for the actual conversion
- ps2pdf : a standalone command to convert PostScript to PDF
A default configured CUPS on SLES (and most other systems), will use it's pstopdf filter when it needs to convert PostScript to PDF.
ThinLinc also adds its own filter, thinlinc-ps2pdf, which is used if the pstopdf is missing. This filter uses ps2pdf to do the actual conversion. I don't think there's any reasonable scenario on SLES where this ends up being used.
Method to reproduce:
1. Minimal install of SLES
2. Install cups, enable and start it
3. Install ThinLinc, letting it pull in all extra dependencies
4. Print a PostScript job*
* Many programs on SLES 12 output PDF directly, so it's only some programs that are affected by this issue. The use of bc in the pstopdf filter is also on some conditional code paths, so it might not trigger for all jobs. I created a PostScript file from gedit and then printed that using lpr.