summaryrefslogtreecommitdiff
path: root/extra/cups
diff options
context:
space:
mode:
Diffstat (limited to 'extra/cups')
-rw-r--r--extra/cups/PKGBUILD40
-rw-r--r--extra/cups/avahi-missing-in-conditionals.patch118
-rwxr-xr-xextra/cups/cups68
-rw-r--r--extra/cups/cups-no-export-ssllibs.patch8
-rw-r--r--extra/cups/cups-no-gcrypt.patch8
-rw-r--r--extra/cups/cupsd-conf-remove-obsolete-browse-directives.patch12
-rw-r--r--extra/cups/recognize-remote-cups-queue-via-dnssd-uri.patch25
-rw-r--r--extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch74
8 files changed, 20 insertions, 333 deletions
diff --git a/extra/cups/PKGBUILD b/extra/cups/PKGBUILD
index 38291f4f5..7cefbaaca 100644
--- a/extra/cups/PKGBUILD
+++ b/extra/cups/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 166183 2012-09-05 08:15:25Z andyrtr $
+# $Id: PKGBUILD 180282 2013-03-19 15:32:07Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase="cups"
pkgname=('libcups' 'cups')
-pkgver=1.6.1
-pkgrel=6
+pkgver=1.6.2
+pkgrel=1
arch=('i686' 'x86_64')
license=('GPL')
url="http://www.cups.org/"
@@ -15,24 +15,15 @@ source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
cups-no-gcrypt.patch
cups-no-gzip-man.patch
cups-systemd-socket.patch
- cups cups.logrotate cups.pam
- cupsd-conf-remove-obsolete-browse-directives.patch
- avahi-missing-in-conditionals.patch
- recognize-remote-cups-queue-via-dnssd-uri.patch
- usb-backend-reset-after-job-only-for-specific-devices.patch)
+ cups.logrotate cups.pam)
#options=('!emptydirs')
-md5sums=('87ade07e3d1efd03c9c3add949cf9c00'
- '9b8467a1e51d360096b70e2c3c081e6c'
- '3733c23e77eb503bd94cc368e02830dc'
+md5sums=('13c8b2b2336d42001abe4899766b62dc'
+ '3ba9e3410df1dc3015463d615ef91b3b'
+ 'cc4101beccb5ed6deb1c92707a575925'
'90c30380d4c8cd48a908cfdadae1ea24'
'b4868b83f7f2d6ec24a1be76509379f0'
- '9657daa21760bb0b5fa3d8b51d5e01a1'
'f861b18f4446c43918c8643dcbbd7f6d'
- '96f82c38f3f540b53f3e5144900acf17'
- '6bef262b5081051e88cd2ae94fed1867'
- '9c91b1319f4b20dc323986cb4abbe806'
- 'dcef8dd5614461166cada8a706eebb49'
- '0779ef8ba1d724ebb3b9bf360deba52b')
+ '96f82c38f3f540b53f3e5144900acf17')
build() {
cd ${srcdir}/${pkgbase}-${pkgver}
@@ -41,23 +32,14 @@ build() {
# modified now to the changes done by Gentoo in their svn ebuild
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-print/cups/files/cups-1.5.0-systemd-socket.patch?revision=1.1
patch -Np1 -i ${srcdir}/cups-systemd-socket.patch
-
+
# Do not export SSL libs in cups-config
patch -Np1 -i "${srcdir}/cups-no-export-ssllibs.patch"
patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch"
+
# don't zip man pages in make install, let makepkg do that / Fedora
patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch
-
- # upstream bugtracker patches
- # http://www.cups.org/str.php?L4157 - fix broken default server config
- patch -Np1 -i ${srcdir}/cupsd-conf-remove-obsolete-browse-directives.patch
- # http://www.cups.org/str.php?L4156 - In many DNS-SD/Bonjour conditionals Avahi is not considered
- patch -Np1 -i ${srcdir}/avahi-missing-in-conditionals.patch
- # http://www.cups.org/str.php?L4158 - DNS-SD-based print queues pointing to CUPS server are not considered remote printers with driver on server
- patch -Np1 -i ${srcdir}/recognize-remote-cups-queue-via-dnssd-uri.patch
- # http://cups.org/str.php?L4155 / https://bugs.archlinux.org/task/30965
- patch -Np0 -i ${srcdir}/usb-backend-reset-after-job-only-for-specific-devices.patch
# Rebuild configure script for not zipping man-pages.
aclocal -I config-scripts
@@ -118,6 +100,7 @@ backup=(etc/cups/cupsd.conf
etc/cups/snmp.conf
etc/cups/printers.conf
etc/cups/classes.conf
+ etc/cups/cups-files.conf
etc/cups/subscriptions.conf
etc/dbus-1/system.d/cups.conf
etc/logrotate.d/cups
@@ -135,7 +118,6 @@ optdepends=('xdg-utils: xdg .desktop file support')
# kill the sysv stuff
rm -rf ${pkgdir}/etc/rc*.d
rm -rf ${pkgdir}/etc/init.d
- install -D -m755 ../cups ${pkgdir}/etc/rc.d/cupsd
install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups
install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups
diff --git a/extra/cups/avahi-missing-in-conditionals.patch b/extra/cups/avahi-missing-in-conditionals.patch
deleted file mode 100644
index b261f58ae..000000000
--- a/extra/cups/avahi-missing-in-conditionals.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-diff -uraN cups/scheduler/client.c cups-new/scheduler/client.c
---- cups/scheduler/client.c 2012-05-25 15:28:49.000000000 +0200
-+++ cups-new/scheduler/client.c 2012-08-04 20:13:17.082220961 +0200
-@@ -4021,7 +4021,7 @@
- !strncmp(host, "[::1]:", 6));
- }
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- /*
- * Check if the hostname is something.local (Bonjour); if so, allow it.
- */
-@@ -4040,7 +4040,7 @@
- !_cups_strcasecmp(end, ".local.") ||
- !_cups_strncasecmp(end, ".local.:", 8)))
- return (1);
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
- /*
- * Check if the hostname is an IP address...
-@@ -4101,7 +4101,7 @@
- }
- }
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- for (a = (cupsd_alias_t *)cupsArrayFirst(DNSSDAlias);
- a;
- a = (cupsd_alias_t *)cupsArrayNext(DNSSDAlias))
-@@ -4126,7 +4126,7 @@
- return (1);
- }
- }
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
- /*
- * Check for interface hostname matches...
-diff -uraN cups/scheduler/conf.c cups-new/scheduler/conf.c
---- cups/scheduler/conf.c 2012-05-25 15:28:49.000000000 +0200
-+++ cups-new/scheduler/conf.c 2012-08-04 20:15:49.830978405 +0200
-@@ -89,9 +89,9 @@
- {
- { "AccessLog", &AccessLog, CUPSD_VARTYPE_STRING },
- { "AutoPurgeJobs", &JobAutoPurge, CUPSD_VARTYPE_BOOLEAN },
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- { "BrowseDNSSDSubTypes", &DNSSDSubTypes, CUPSD_VARTYPE_STRING },
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
- { "BrowseWebIF", &BrowseWebIF, CUPSD_VARTYPE_BOOLEAN },
- { "Browsing", &Browsing, CUPSD_VARTYPE_BOOLEAN },
- { "CacheDir", &CacheDir, CUPSD_VARTYPE_STRING },
-@@ -735,9 +735,9 @@
- Browsing = CUPS_DEFAULT_BROWSING;
- DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- cupsdSetString(&DNSSDSubTypes, "_cups,_print");
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
- cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE);
- cupsdSetString(&SMBConfigFile, CUPS_DEFAULT_SMB_CONFIG_FILE);
-diff -uraN cups/scheduler/ipp.c cups-new/scheduler/ipp.c
---- cups/scheduler/ipp.c 2012-05-25 15:28:49.000000000 +0200
-+++ cups-new/scheduler/ipp.c 2012-08-04 20:13:17.086220978 +0200
-@@ -4813,7 +4813,7 @@
- ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
- ippTimeToDate(curtime));
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
- {
- if (printer->reg_name)
-@@ -4823,7 +4823,7 @@
- ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
- "printer-dns-sd-name", 0);
- }
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
- if (!ra || cupsArrayFind(ra, "printer-error-policy"))
- ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
-diff -uraN cups/scheduler/main.c cups-new/scheduler/main.c
---- cups/scheduler/main.c 2012-05-25 15:28:49.000000000 +0200
-+++ cups-new/scheduler/main.c 2012-08-04 20:13:17.090221001 +0200
-@@ -781,9 +781,9 @@
- * Got an error from select!
- */
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- cupsd_printer_t *p; /* Current printer */
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
-
- if (errno == EINTR) /* Just interrupted by a signal */
-@@ -824,13 +824,13 @@
- job->print_pipes[0], job->print_pipes[1],
- job->back_pipes[0], job->back_pipes[1]);
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- p;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- cupsdLogMessage(CUPSD_LOG_EMERG, "printer[%s] reg_name=\"%s\"", p->name,
- p->reg_name ? p->reg_name : "(null)");
--#endif /* HAVE_DNSSD */
-+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-
- break;
- }
diff --git a/extra/cups/cups b/extra/cups/cups
deleted file mode 100755
index 744c8e663..000000000
--- a/extra/cups/cups
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/bash
-
-daemon_name=cupsd
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-#. /etc/conf.d/$daemon_name.conf
-
-get_pid() {
- pidof -o %PPID $daemon_name
-}
-
-case "$1" in
- start)
- stat_busy "Starting $daemon_name daemon"
-
- PID=$(get_pid)
- if [ -z "$PID" ]; then
- [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid
- # RUN
- $daemon_name
- #
- if [ $? -gt 0 ]; then
- stat_fail
- exit 1
- else
- echo $(get_pid) > /var/run/$daemon_name.pid
- add_daemon $daemon_name
- stat_done
- fi
- else
- stat_fail
- exit 1
- fi
- ;;
-
- stop)
- stat_busy "Stopping $daemon_name daemon"
- PID=$(get_pid)
- # KILL
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- #
- if [ $? -gt 0 ]; then
- stat_fail
- exit 1
- else
- rm -f /var/run/$daemon_name.pid &> /dev/null
- rm_daemon $daemon_name
- stat_done
- fi
- ;;
-
- restart)
- $0 stop
- sleep 3
- $0 start
- ;;
-
- status)
- stat_busy "Checking $daemon_name status";
- ck_status $daemon_name
- ;;
-
- *)
- echo "usage: $0 {start|stop|restart|status}"
-esac
-
-exit 0
diff --git a/extra/cups/cups-no-export-ssllibs.patch b/extra/cups/cups-no-export-ssllibs.patch
index 9be3c819b..e227bd182 100644
--- a/extra/cups/cups-no-export-ssllibs.patch
+++ b/extra/cups/cups-no-export-ssllibs.patch
@@ -1,7 +1,7 @@
diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4
---- cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200
-+++ cups-1.5b1/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200
-@@ -164,7 +164,7 @@ AC_SUBST(IPPALIASES)
+--- cups-1.6.2/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200
++++ cups-1.6.2/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200
+@@ -180,7 +180,7 @@
AC_SUBST(SSLFLAGS)
AC_SUBST(SSLLIBS)
@@ -9,4 +9,4 @@ diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/conf
+EXPORT_SSLLIBS=""
AC_SUBST(EXPORT_SSLLIBS)
-
+ dnl
diff --git a/extra/cups/cups-no-gcrypt.patch b/extra/cups/cups-no-gcrypt.patch
index 42f71d0d4..4eaff67ce 100644
--- a/extra/cups/cups-no-gcrypt.patch
+++ b/extra/cups/cups-no-gcrypt.patch
@@ -9,12 +9,14 @@ diff -ruN cups-1.4.7.orig//config-scripts/cups-ssl.m4 cups-1.4.7/config-scripts/
if $PKGCONFIG --exists gnutls; then
have_ssl=1
SSLLIBS=`$PKGCONFIG --libs gnutls`
-@@ -110,16 +109,6 @@
- AC_DEFINE(HAVE_SSL)
+@@ -108,18 +107,6 @@
AC_DEFINE(HAVE_GNUTLS)
fi
--
+
- if test $have_ssl = 1; then
+- CUPS_SERVERCERT="ssl/server.crt"
+- CUPS_SERVERKEY="ssl/server.key"
+-
- if $PKGCONFIG --exists gcrypt; then
- SSLLIBS="$SSLLIBS `$PKGCONFIG --libs gcrypt`"
- SSLFLAGS="$SSLFLAGS `$PKGCONFIG --cflags gcrypt`"
diff --git a/extra/cups/cupsd-conf-remove-obsolete-browse-directives.patch b/extra/cups/cupsd-conf-remove-obsolete-browse-directives.patch
deleted file mode 100644
index 97636c7f2..000000000
--- a/extra/cups/cupsd-conf-remove-obsolete-browse-directives.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -uraN cups/conf/cupsd.conf.in cups-new/conf/cupsd.conf.in
---- cups/conf/cupsd.conf.in 2012-05-25 15:28:25.000000000 +0200
-+++ cups-new/conf/cupsd.conf.in 2012-08-04 20:56:26.699062177 +0200
-@@ -19,8 +19,6 @@
-
- # Show shared printers on the local network.
- Browsing On
--BrowseOrder allow,deny
--BrowseAllow all
- BrowseLocalProtocols @CUPS_BROWSE_LOCAL_PROTOCOLS@
-
- # Default authentication type, when authentication is required...
diff --git a/extra/cups/recognize-remote-cups-queue-via-dnssd-uri.patch b/extra/cups/recognize-remote-cups-queue-via-dnssd-uri.patch
deleted file mode 100644
index 6349bd901..000000000
--- a/extra/cups/recognize-remote-cups-queue-via-dnssd-uri.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -uraN cups/scheduler/printers.c cups-new/scheduler/printers.c
---- cups/scheduler/printers.c 2012-05-25 15:28:49.000000000 +0200
-+++ cups-new/scheduler/printers.c 2012-08-04 20:58:40.475725544 +0200
-@@ -4829,13 +4829,14 @@
- "printer-make-and-model", NULL,
- "Local System V Printer");
- }
-- else if (!strncmp(p->device_uri, "ipp://", 6) &&
-- (strstr(p->device_uri, "/printers/") != NULL ||
-- strstr(p->device_uri, "/classes/") != NULL ||
-- ((strstr(p->device_uri, "._ipp.") != NULL ||
-- strstr(p->device_uri, "._ipps.") != NULL) &&
-- !strcmp(p->device_uri + strlen(p->device_uri) - 5,
-- "/cups"))))
-+ else if ((!strncmp(p->device_uri, "ipp://", 6) &&
-+ (strstr(p->device_uri, "/printers/") != NULL ||
-+ strstr(p->device_uri, "/classes/") != NULL)) ||
-+ (!strncmp(p->device_uri, "dnssd://", 8) &&
-+ (strstr(p->device_uri, "._ipp.") != NULL ||
-+ strstr(p->device_uri, "._ipps.") != NULL) &&
-+ !strcmp(p->device_uri + strlen(p->device_uri) - 5,
-+ "/cups")))
- {
- /*
- * Tell the client this is really a hard-wired remote printer.
diff --git a/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch b/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch
deleted file mode 100644
index dcf91c833..000000000
--- a/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch
+++ /dev/null
@@ -1,74 +0,0 @@
---- backend/usb-libusb.c.orig 2012-07-16 19:10:55.000000000 +0200
-+++ backend/usb-libusb.c 2012-08-06 11:01:58.034150159 +0200
-@@ -70,7 +70,7 @@
- read_endp, /* Read endpoint */
- protocol, /* Protocol: 1 = Uni-di, 2 = Bi-di. */
- usblp_attached, /* "usblp" kernel module attached? */
-- opened_for_job; /* Set to 1 by print_device() */
-+ reset_after_job; /* Set to 1 by print_device() */
- unsigned int quirks; /* Quirks flags */
- struct libusb_device_handle *handle; /* Open handle to device */
- } usb_printer_t;
-@@ -122,6 +122,8 @@
- #define USBLP_QUIRK_USB_INIT 0x2 /* needs vendor USB init string */
- #define USBLP_QUIRK_BAD_CLASS 0x4 /* descriptor uses vendor-specific
- Class or SubClass */
-+#define USBLP_QUIRK_RESET 0x4000 /* After printing do a reset
-+ for clean-up */
- #define USBLP_QUIRK_NO_REATTACH 0x8000 /* After printing we cannot re-attach
- the usblp kernel module */
-
-@@ -147,9 +149,11 @@
- { 0x04b8, 0x0202, USBLP_QUIRK_BAD_CLASS }, /* Seiko Epson Receipt
- Printer M129C */
- { 0x067b, 0x2305, USBLP_QUIRK_BIDIR |
-- USBLP_QUIRK_NO_REATTACH },
-+ USBLP_QUIRK_NO_REATTACH |
-+ USBLP_QUIRK_RESET },
- /* Prolific Technology, Inc. PL2305 Parallel Port
- (USB -> Parallel adapter) */
-+ { 0x04e8, 0x0000, USBLP_QUIRK_RESET }, /* All Samsung devices */
- { 0, 0 }
- };
-
-@@ -256,7 +260,12 @@
- }
-
- g.print_fd = print_fd;
-- g.printer->opened_for_job = 1;
-+
-+ /*
-+ * Some devices need a reset after finishing a job, these devices are
-+ * marked with the USBLP_QUIRK_RESET quirk.
-+ */
-+ g.printer->reset_after_job = (g.printer->quirks & USBLP_QUIRK_RESET ? 1 : 0);
-
- /*
- * If we are printing data from a print driver on stdin, ignore SIGTERM
-@@ -772,7 +781,7 @@
- * Reset the device to clean up after the job
- */
-
-- if (printer->opened_for_job == 1)
-+ if (printer->reset_after_job == 1)
- {
- if ((errcode = libusb_reset_device(printer->handle)) < 0)
- fprintf(stderr,
-@@ -1288,7 +1297,7 @@
- }
-
- printer->usblp_attached = 0;
-- printer->opened_for_job = 0;
-+ printer->reset_after_job = 0;
-
- if (verbose)
- fputs("STATE: +connecting-to-device\n", stderr);
-@@ -1586,7 +1595,7 @@
- for (i = 0; quirk_printers[i].vendorId; i++)
- {
- if (vendor == quirk_printers[i].vendorId &&
-- product == quirk_printers[i].productId)
-+ (product == 0x0000 || product == quirk_printers[i].productId))
- return quirk_printers[i].quirks;
- }
- return 0;