office/cups-pdf: Updated for version 2.5.0

This commit is contained in:
Sebastien Ballet 2010-05-12 17:44:37 +02:00 committed by David Somero
parent ced6313e1e
commit a03e58c043
6 changed files with 78 additions and 37 deletions

View file

@ -1,4 +1,7 @@
cups-pdf is designed to produce PDF files by providing a PDF
printer.
See README.SBo for setup information.
See README.SBo for setup information.
Users of older versions (i.e < 2.5.0) will have to look at
UPGRADE.TXT before upgrading.

View file

@ -35,24 +35,26 @@ Welcome to CUPS-PDF v2
Important notes:
================
*CUPS-PDF requires root privileges since it has to modify file ownerships.
In recent distributions the "RunAsUser" option in cupsd.conf is set to
"Yes" which removes these privileges. Please make sure to set
"RunAsUser No" if you want to use CUPS-PDF.
*** Starting with version 1.2.0 CUPS implements the "RunAsOption" no
longer. In order to ensure CUPS-PDF is running with the required root
privileges you have to make 'root' the owner of the cups-pdf backend
and set the file permissions of the backend to 0700 (root only).
*make sure if any of CUPS-PDF's working directories (e.g. output) is a
NFS mounted volume it is mounted without root_squash!
*CUPS-PDF is known to fail if the gs (GhostScript) binary on a system is
compressed by upx (Ultimate Packer for eXecutables).
*if you are using SELinux make sure it does not interfere with CUPS-PDF
(you can disable SELinux for CUPS by "setsebool -P cupsd_disable_trans 1"
or have a look at contrib/SELinux-HOWTO to make it work)
* CUPS-PDF requires root privileges since it has to modify file ownerships.
In order to ensure CUPS-PDF is running with the required root privileges
you have to make 'root' the owner of the cups-pdf backend and set the
file permissions of the backend to 0700 (root only).
NOTE: in older versions of CUPS (<1.2.0) you have to set the "RunAsUser"
option in cupsd.conf to "No" in order to grant full privileges.
* CUPS-PDF needs a fully featured UNIX-filesystem to work. Make sure if any
of CUPS-PDF's working directories (e.g. output) are located on an NFS
mounted volume they are mounted without root_squash! Other filesystems
(e.g. NetWare or Windows shares) are _not_ supported!
* CUPS-PDF is known to fail if the gs (GhostScript) binary on a system is
compressed by upx (Ultimate Packer for eXecutables).
* If you are using SELinux, AppArmour or similar tools, make sure these do
not interfere with CUPS-PDF.
(You can disable SELinux for CUPS by "setsebool -P cupsd_disable_trans 1"
or have a look at contrib/SELinux-HOWTO to make it work)
Now after restarting CUPS you will be able to choose "Virtual Printer (PDF
Printer)" when setting up a new printer in CUPS.
Now you will be able to choose "CUPS-PDF (Virtual PDF Printer)" when
setting up a new printer in CUPS (a CUPS-restart may be necessary).
To set up a queue for other UNIX clients you should select Postscript as
vendor and the Color Printer as model for your new printer; queues that get
their input from samba or netatalk (i.e. Windows, OS/2 or MacOS) can be set
@ -96,7 +98,7 @@ Welcome to CUPS-PDF v2
4. contact
----------
Volker Christian Behr
Dr. Volker Christian Behr
behr@physik.uni-wuerzburg.de
http://www.cups-pdf.de

View file

@ -0,0 +1,11 @@
Starting from 2.5.0, the SlackBuild prevents overwriting of
configuration file (i.e /etc/cups/cups-pdf.conf).
Therefore, users of older versions (i.e < 2.5.0) who use a
customized configuration file should save it before upgrading.
Sorry for the inconvenience.
--
SeB

View file

@ -2,10 +2,10 @@
# Slackware build script for cups-pdf
# Written by Sebastien Ballet (phenixi@aliceadsl.fr)
# Modified by SlackBuilds.org
# Modified by SlackBuilds.org
PRGNAM=cups-pdf
VERSION=2.4.8
VERSION=2.5.0
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -15,38 +15,49 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O9 -march=i486 -mtune=i686"
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O9 -march=i686 -mtune=i686"
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP || exit 1
cd $TMP
rm -rf $PRGNAM-$VERSION
tar -xvf $CWD/$PRGNAM'_'$VERSION.tar.gz || exit 1
cd $PRGNAM-$VERSION || exit 1
tar -xvf $CWD/$PRGNAM'_'$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
mkdir -p $PKG/usr/lib/cups/backend
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/cups/backend
gcc $SLCKFLAGS -s -o $PKG/usr/lib${LIBDIRSUFFIX}/cups/backend/cups-pdf src/cups-pdf.c
chmod 0700 $PKG/usr/lib${LIBDIRSUFFIX}/cups/backend/cups-pdf
mkdir -p $PKG/etc/cups
cat extra/cups-pdf.conf > $PKG/etc/cups/cups-pdf.conf.new
mkdir -p $PKG/usr/share/cups/model
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
gcc $SLCKFLAGS -s -o $PKG/usr/lib/cups/backend/cups-pdf src/cups-pdf.c || exit 1
chmod 0700 $PKG/usr/lib/cups/backend/cups-pdf
cp -a extra/cups-pdf.conf $PKG/etc/cups
cp -a extra/CUPS-PDF.ppd $PKG/usr/share/cups/model
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README.SBo > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo
cat $CWD/UPGRADE.TXT > $PKG/usr/doc/$PRGNAM-$VERSION/UPGRADE.TXT
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz

View file

@ -1,8 +1,8 @@
PRGNAM="cups-pdf"
VERSION="2.4.8"
VERSION="2.5.0"
HOMEPAGE="http://www.cups-pdf.de/"
DOWNLOAD="http://www.cups-pdf.de/src/cups-pdf_2.4.8.tar.gz"
MD5SUM="0d17dc5e094b366c8ad43cc27c7f82c9"
DOWNLOAD="http://www.cups-pdf.de/src/cups-pdf_2.5.0.tar.gz"
MD5SUM="9194af099a8c0e9aa213505b29ec6818"
MAINTAINER="Sebastien Ballet"
EMAIL="phenixi@aliceadsl.fr"
APPROVED="dsomero"

14
office/cups-pdf/doinst.sh Normal file
View file

@ -0,0 +1,14 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
# If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy
rm $NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
config etc/cups/cups-pdf.conf.new