source: pst/printing/cups-filters.xml@ 76f2fb4

12.0 12.1 12.2 gimp3 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128 xry111/xf86-video-removal
Last change on this file since 76f2fb4 was 9fd586e9, checked in by Douglas R. Reno <renodr@…>, 15 months ago

Fix CVE-2023-24805 in cups-filters.

  • Property mode set to 100644
File size: 12.5 KB
RevLine 
[dcbd2c6]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[b26bc4c]7 <!ENTITY cups-filters-download-http
[4634c7a]8 "https://www.openprinting.org/download/cups-filters/cups-filters-&cups-filters-version;.tar.xz">
[dcbd2c6]9 <!ENTITY cups-filters-download-ftp " ">
[2cc15a2b]10 <!ENTITY cups-filters-md5sum "24bed15110499fd652d65d6baab85ca6">
[db6385b]11 <!ENTITY cups-filters-size "1.4 MB">
[2cc15a2b]12 <!ENTITY cups-filters-buildsize "56 MB (with tests), 16 MB installed">
[59eea9d]13 <!ENTITY cups-filters-time "0.2 SBU (Using parallelism=4; with tests)">
[dcbd2c6]14]>
15
16<sect1 id="cups-filters" xreflabel="cups-filters-&cups-filters-version;">
17 <?dbhtml filename="cups-filters.html"?>
18
19
20 <title>cups-filters-&cups-filters-version;</title>
21
22 <indexterm zone="cups-filters">
23 <primary sortas="a-cups-filters">cups-filters</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to CUPS Filters</title>
28
29 <para>
30 The <application>CUPS Filters</application> package contains backends,
31 filters and other software that was once part of the core
32 <application>CUPS</application> distribution but is no longer
33 maintained by Apple Inc.
34 </para>
35
[dbd73d6]36 &lfs113_checked;
[dcbd2c6]37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>
42 Download (HTTP): <ulink url="&cups-filters-download-http;"/>
43 </para>
44 </listitem>
45 <listitem>
46 <para>
47 Download (FTP): <ulink url="&cups-filters-download-ftp;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download MD5 sum: &cups-filters-md5sum;
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download size: &cups-filters-size;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Estimated disk space required: &cups-filters-buildsize;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated build time: &cups-filters-time;
68 </para>
69 </listitem>
70 </itemizedlist>
[2f1053c]71
[9fd586e9]72 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
73 <itemizedlist spacing="compact">
74 <listitem>
75 <para>
76 Required patch:
77 <ulink url="&patch-root;/cups-filters-&cups-filters-version;-security_fix-1.patch"/>
78 </para>
79 </listitem>
80 </itemizedlist>
81
[dcbd2c6]82 <bridgehead renderas="sect3">CUPS Filters Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required">
86 <xref linkend="cups"/>,
[f473955b]87 <xref linkend="glib2"/>,
[4118724f]88 <xref linkend="gs"/>,
[9d8cb37]89 <xref linkend="lcms2"/>,
[4118724f]90 <xref linkend="poppler"/>, and
[9d8cb37]91 <xref linkend="qpdf"/>
[dcbd2c6]92 </para>
93
94 <bridgehead renderas="sect4">Recommended</bridgehead>
95 <para role="recommended">
[681cda1]96 <xref linkend="dejavu-fonts"/> (the build fails if they are not
97 installed, although they are only required for the tests),
[2cc15a2b]98 <xref linkend="libexif"/>,
[dcbd2c6]99 <xref linkend="libjpeg"/>,
[10cbf37]100 <xref linkend="libpng"/>,
[681cda1]101 <xref linkend="libtiff"/>, and
[2f727d8f]102 <xref linkend="mupdf"/> (mutool)
[dcbd2c6]103 </para>
104
105 <bridgehead renderas="sect4">Optional</bridgehead>
106 <para role="optional">
[681cda1]107 <xref linkend="avahi"/> (required to build the DNSSD backend of the
108 <command>cups-browsed</command> daemon, which is needed for operating
109 some network printers),
[cad913e0]110 <xref linkend="openldap"/>,
[d42f02c6]111 <xref linkend="php"/> (use of this might be broken),
[75b1a338]112 <ulink url="https://liblouis.github.io/downloads/">Liblouis (Braille)</ulink>, and
113 <ulink url="https://liblouis.github.io/downloads/">Liblouisutdml (Braille)</ulink>
[dcbd2c6]114 </para>
115
[4118724f]116 <bridgehead renderas="sect4">Optional printer drivers (runtime)</bridgehead>
117 <para role="optional">
[f5cdf41]118 <xref role="runtime" linkend="gutenprint"/> (for supported printers),
119 or other printer drivers, such as <ulink role="runtime"
[c6b192c]120 url="https://sourceforge.net/projects/hplip/files/hplip/">hplip</ulink>
[dcbd2c6]121 </para>
122
123 <para condition="html" role="usernotes">
124 User Notes: <ulink url="&blfs-wiki;/cups-filters"/>
125 </para>
126 </sect2>
127
128 <sect2 role="installation">
129 <title>Installation of CUPS Filters</title>
130
[53e1509]131<!--
[c480c33]132 <para revision="systemd">
133 First, fix the systemd unit file to work with
134 <application>CUPS</application> 2.0 and later:
135 </para>
136
137<screen revision="systemd"><userinput>sed -i "s:cups.service:org.cups.cupsd.service:g" utils/cups-browsed.service</userinput></screen>
[53e1509]138-->
[c480c33]139
[9fd586e9]140 <para>
141 First, fix a security vulnerability that can allow for remote code
142 execution with the 'beh' printer backend:
143 </para>
144
145<screen><userinput remap="pre">patch -Np1 -i ../cups-filters-&cups-filters-version;-security_fix-1.patch</userinput></screen>
146
[dcbd2c6]147 <para>
148 Install <application>CUPS Filters</application> by running the following
149 commands:
150 </para>
[7b88d5a]151
[21e0c46]152<screen><userinput>CXXFLAGS="$CXXFLAGS -std=c++17" \
153./configure --prefix=/usr \
[83dc192]154 --sysconfdir=/etc \
155 --localstatedir=/var \
156 --without-rcdir \
157 --disable-static \
158 --disable-avahi \
159 --docdir=/usr/share/doc/cups-filters-&cups-filters-version; &amp;&amp;
[dcbd2c6]160make</userinput></screen>
161
[c480c33]162<!-- The test suite still bombs out for me. I'll leave the instructions for it
163 here though. I didn't have the Dejavu font installed, but used one of the
[3bb415b]164 ones installed by X.
165 Version 1.16.0: test worked for me with "make check >testlog 2>&1",
[747fcf5]166 that is, the other way around. I have DejaVu fonts. Pierre L
[8558044]167 With 1.17.2 (and DejaVu) the test output is clean, no need for a log. Ken
168
[db6385b]169 Tests are clean for version 1.21.0 (and version 1.21.5): - Bruce
[8558044]170 # TOTAL: 6
171 # PASS: 6
172 real 0m2.504s -->
[c480c33]173
[dcbd2c6]174 <para>
[4118724f]175 To test the results, issue:
[6213b66]176 <!--<command>make check &gt;testlog 2&gt;&amp;1</command>.-->
[747fcf5]177 <command>make check</command>. DejaVu fonts
[4118724f]178 are needed for the tests.
[dcbd2c6]179 </para>
180
181 <para>
182 Now, as the <systemitem class="username">root</systemitem> user:
183 </para>
184
185<screen role="root"><userinput>make install</userinput></screen>
186
[c480c33]187 <para revision="systemd">
188 Install the systemd unit by running the following command as the
189 <systemitem class="username">root</systemitem> user:
190 </para>
191
192<screen role="root" revision="systemd"><userinput>install -v -m644 utils/cups-browsed.service /lib/systemd/system/cups-browsed.service</userinput></screen>
193
[dcbd2c6]194 </sect2>
195
196 <sect2 role="commands">
197 <title>Command Explanations</title>
[cfc1f98]198
[10cbf37]199<!-- please comment this if no patches are currently needed -->
[1c459bf2]200<!--<para>
[10cbf37]201 <parameter>patch -Np1 -i ../cups-filters-&cups-filters-version;-poppler71-1.patch</parameter>:
[2f1053c]202 Conditionally apply changes for recent versions of poppler.
[8558044]203 </para>
[1c459bf2]204 Poppler-0.72.0, cups-filters-1.21.5 - no longer needed.-->
[cfc1f98]205
[21e0c46]206 <para>
207 <envar>CXXFLAGS="$CXXFLAGS -std=c++17"</envar>: This environment
[912b324]208 variable is necessary to fix a problem introduced by qpdf-11.3.0.
[21e0c46]209 </para>
210
[03a0a638]211 <para>
212 <parameter>--disable-avahi</parameter>: This switch is needed
213 if the optional <xref linkend="avahi"/> is not installed. Remove
214 it if avahi is installed and you need network printer discovery
215 capabilities.
216 </para>
217
[cbda2a25]218 <para>
[d6da5da]219 <parameter>--without-rcdir</parameter>: This switch disables
220 installation of the bundled bootscript which is not compatible
221 with BLFS.
[cbda2a25]222 </para>
223
[4118724f]224<!-- Those are hard dependencies now
[dcbd2c6]225 <para>
[4118724f]226 <parameter>- -with-gs-path=/usr/bin/gs</parameter>: This switch
[dcbd2c6]227 defines the path to the <application>GhostScript</application>
228 binary in case <xref linkend="gs"/> is not installed at build time.
229 </para>
230
231 <para>
[4118724f]232 <parameter>- -with-pdftops-path=/usr/bin/gs</parameter>: This switch
[dcbd2c6]233 defines the path to the <application>GhostScript</application>
234 binary in case <xref linkend="gs"/> is not installed at build time.
235 </para>
[4118724f]236-->
[dcbd2c6]237
[bfa09457]238 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
239 href="../../xincludes/static-libraries.xml"/>
[39555dd]240 <!--
[2f1053c]241 <para>
[39555dd]242 <option>- -enable-ijs</option>: This switch will allow the pdftoijs
[2f1053c]243 filter, for sending PDFs to an HP InkJet Server, to be built.
244 </para>
[39555dd]245 -->
[2f1053c]246
[8e1a075]247 <para>
[681cda1]248 <option>--with-test-font-path=<replaceable>VALUE</replaceable></option>:
249 If you wish to run the tests, but
[8e1a075]250 you do not have the default
[681cda1]251 <filename>/usr/share/fonts/dejavu/DejaVuSans.ttf</filename> use this
252 switch to specify where <filename>DejaVuSans.ttf</filename> (or perhaps
253 some other text TTF font - untested) is located.
[8e1a075]254 </para>
[681cda1]255
[8e1a075]256
[dcbd2c6]257 </sect2>
258
[cbda2a25]259<!-- TODO: Write a bootscript for cups-browsed -->
260
[c480c33]261 <sect2 role="configuration" revision="systemd">
262 <title>Configuring CUPS Filters</title>
263
264 <sect3 id="cups-filters-init">
265 <title>Systemd Units</title>
266
267 <para>
268 To start the <command>cups-browsed</command> daemon at boot, enable
269 the previously installed systemd unit by running the following command
270 as the <systemitem class="username">root</systemitem> user:
271 </para>
272
273 <indexterm zone="cups-filters cups-filters-init">
274 <primary sortas="f-cups-browsed">cups-browsed</primary>
275 </indexterm>
276
277<screen role="root"><userinput>systemctl enable cups-browsed</userinput></screen>
278
279 </sect3>
[8558044]280
[c480c33]281 </sect2>
282
[dcbd2c6]283 <sect2 role="content">
284 <title>Contents</title>
285
286 <segmentedlist>
[cbda2a25]287 <segtitle>Installed Programs</segtitle>
[dcbd2c6]288 <segtitle>Installed Libraries</segtitle>
289 <segtitle>Installed Directories</segtitle>
290
291 <seglistitem>
292 <seg>
[98fd8b9]293 cups-browsed, driverless, driverless-fax, and foomatic-rip
294 <!-- and ttfread -->
[dcbd2c6]295 </seg>
296 <seg>
297 libcupsfilters.so and libfontembed.so
298 </seg>
299 <seg>
[7374e16]300 /usr/include/{cupsfilters,fontembed},
[fc0e436]301 /usr/lib/cups/{backend,driver,filter},
[d42f02c6]302 /usr/share/cups/{braille,charsets},
[a82b5f44]303 /usr/share/doc/cups-filters-&cups-filters-version;, and
[7273ffc]304 /usr/share/ppd/cupsfilters
[dcbd2c6]305 </seg>
306 </seglistitem>
307 </segmentedlist>
308
309 <variablelist>
310 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
311 <?dbfo list-presentation="list"?>
312 <?dbhtml list-presentation="table"?>
313
[298fee30]314 <varlistentry id="cups-browsed">
315 <term><command>cups-browsed</command></term>
[7374e16]316 <listitem>
317 <para>
[298fee30]318 is a daemon for browsing the Bonjour and CUPS broadcasts of shared,
[4c24eb0a]319 remote CUPS printers
[7374e16]320 </para>
[298fee30]321 <indexterm zone="cups-filters cups-browsed">
322 <primary sortas="b-cups-browsed">cups-browsed</primary>
[7374e16]323 </indexterm>
[a82b5f44]324 </listitem>
325 </varlistentry>
326
327 <varlistentry id="driverless">
328 <term><command>driverless</command></term>
329 <listitem>
330 <para>
[4c24eb0a]331 is a PPD generator utility for driverless printing
[a82b5f44]332 </para>
333 <indexterm zone="cups-filters driverless">
334 <primary sortas="b-driverless">driverless</primary>
335 </indexterm>
336 </listitem>
337 </varlistentry>
338
339 <varlistentry id="driverless-fax">
340 <term><command>driverless-fax</command></term>
341 <listitem>
342 <para>
[4c24eb0a]343 is a wrapper to <command>driverless</command> for FAX type devices
[a82b5f44]344 </para>
345 <indexterm zone="cups-filters driverless-fax">
346 <primary sortas="b-driverless-fax">driverless-fax</primary>
347 </indexterm>
[7374e16]348 </listitem>
349 </varlistentry>
350
[298fee30]351 <varlistentry id="foomatic-rip">
352 <term><command>foomatic-rip</command></term>
[7374e16]353 <listitem>
354 <para>
[298fee30]355 is a universal print filter/RIP wrapper which can be used as CUPS
[4c24eb0a]356 filter or stand-alone for spooler-less, direct printing
[7374e16]357 </para>
[298fee30]358 <indexterm zone="cups-filters foomatic-rip">
359 <primary sortas="b-foomatic-rip">foomatic-rip</primary>
[7374e16]360 </indexterm>
361 </listitem>
362 </varlistentry>
363
[dcbd2c6]364 <varlistentry id="libcupsfilters">
365 <term><filename class="libraryfile">libcupsfilters.so</filename></term>
366 <listitem>
367 <para>
[4c24eb0a]368 contains <application>CUPS Filters</application> API functions
[dcbd2c6]369 </para>
370 <indexterm zone="cups-filters libcupsfilters">
371 <primary sortas="c-libcupsfilters">libcupsfilters.so</primary>
372 </indexterm>
373 </listitem>
374 </varlistentry>
375
376 </variablelist>
377
378 </sect2>
379
380</sect1>
Note: See TracBrowser for help on using the repository browser.