[arch-commits] Commit in cups/trunk (PKGBUILD cups-systemd-socket.patch cups.install)

Andreas Radke andyrtr at archlinux.org
Sun Nov 15 12:49:11 UTC 2020


    Date: Sunday, November 15, 2020 @ 12:49:11
  Author: andyrtr
Revision: 401139

upgpkg: cups 2.3.3+105+g59137acc1-1: switch to OpenPrinting cups fork; follow other linux distributions with common service naming scheme; avoid libtool overlinking

Modified:
  cups/trunk/PKGBUILD
  cups/trunk/cups-systemd-socket.patch
  cups/trunk/cups.install

---------------------------+
 PKGBUILD                  |   59 ++++++++++++++++++++++++++++++--------------
 cups-systemd-socket.patch |    8 +++--
 cups.install              |   10 ++++++-
 3 files changed, 55 insertions(+), 22 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2020-11-15 12:11:15 UTC (rev 401138)
+++ PKGBUILD	2020-11-15 12:49:11 UTC (rev 401139)
@@ -2,15 +2,19 @@
 
 pkgbase="cups"
 pkgname=('libcups' 'cups')
-pkgver=2.3.3
-pkgrel=3
+_commit=59137acc14cffad7fa1c076ea09f6d555aac203d # master 2020-11-14
+pkgver=2.3.3+105+g59137acc1
+pkgrel=1
 arch=('x86_64')
 license=('Apache' 'custom')
-url="https://www.cups.org/"
+#url="https://www.cups.org/"
+url="https://github.com/OpenPrinting/cups"
 makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls'
              'cups-filters' 'bc' 'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus'
-             'avahi'  'hicolor-icon-theme' 'systemd' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind')
-source=(https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig}
+             'avahi'  'hicolor-icon-theme' 'systemd' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind'
+             'git')
+source=(#https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig}
+        "git+https://github.com/OpenPrinting/cups#commit=$_commit"
         cups.logrotate
         cups.pam
         cups.sysusers
@@ -20,7 +24,7 @@
         # bugfixes
         cups-systemd-socket.patch
         guid.patch)
-sha256sums=('261fd948bce8647b6d5cb2a1784f0c24cc52b5c4e827b71d726020bcc502f3ee'
+sha256sums=(#'261fd948bce8647b6d5cb2a1784f0c24cc52b5c4e827b71d726020bcc502f3ee'
             'SKIP'
             'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9'
             '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5'
@@ -27,15 +31,21 @@
             '06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2'
             'ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832'
             '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af'
-            '3d8e24fd340fecef7101672d342433365cf78130b7182ecfd03071e31e894a9b'
+            'f0d65d37aa57de0481244f9f0dc1fe2277a1fbe43e5333e24649c2f9e10f414e'
             'd4537526c1e075866ae22ad263da000fc2a592d36c26b79a459a1cfdade2bb2d')
 validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <security at cups.org>
 validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org <security at cups.org>"
 validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet <michael.r.sweet at gmail.com>"
 
+
+pkgver() {
+  cd $pkgbase
+  git describe --tags | sed 's/-/+/g' | sed 's/v//'
+}
+
 prepare() {
 
-  cd "${pkgbase}"-${pkgver}
+  cd "${pkgbase}" #-${pkgver}
 
   # improve build and linking
   # Do not export SSL libs in cups-config
@@ -51,9 +61,9 @@
   patch -Np1 -i "${srcdir}"/guid.patch
 
   # set MaxLogSize to 0 to prevent using cups internal log rotation
-  sed -i -e '5i\ ' conf/cupsd.conf.in
-  sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in
-  sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in
+#  sed -i -e '5i\ ' conf/cupsd.conf.in
+#  sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in
+#  sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in
 
   # Rebuild configure script for not zipping man-pages.
   aclocal -I config-scripts
@@ -61,8 +71,11 @@
 }
 
 build() {
-  cd "${pkgbase}"-${pkgver}
+  cd "${pkgbase}" #-${pkgver}
 
+  # The build system uses only DSOFLAGS but not LDFLAGS to build some libraries.
+  export DSOFLAGS=${LDFLAGS}
+
   # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id
   ./configure --prefix=/usr \
      --sysconfdir=/etc \
@@ -74,6 +87,7 @@
      --with-exe-file-perm=0755 \
      --with-cups-user=209 \
      --with-cups-group=209 \
+     --with-max-log-size=0 \
      --enable-pam=yes \
      --enable-raw-printing \
      --enable-dbus=yes \
@@ -88,8 +102,9 @@
 }
 
 check() {
-  cd "${pkgbase}"-${pkgver}
-  #make -k check || /bin/true
+  cd "${pkgbase}" #-${pkgver}
+#  make -k check || /bin/true
+#  make check
 }
 
 package_libcups() {
@@ -96,11 +111,12 @@
 pkgdesc="The CUPS Printing System - client libraries and headers"
 depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb' 'libxcrypt')
 
-  cd ${pkgbase}-${pkgver}
+  cd ${pkgbase} #-${pkgver}
   make BUILDROOT="${pkgdir}" install-headers install-libs
   # put this into the libs pkg to make other software find the libs(no pkg-config file included)
   mkdir -p "${pkgdir}"/usr/bin
-  install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config
+#  install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config
+  install -m755 "${srcdir}"/"${pkgbase}"/cups-config "${pkgdir}"/usr/bin/cups-config
 
   # add license + exception
   install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE}
@@ -124,7 +140,7 @@
             'colord: for ICC color profile support'
             'logrotate: for logfile rotation support')
 
-  cd "${pkgbase}"-${pkgver}
+  cd "${pkgbase}" #-${pkgver}
   make BUILDROOT="${pkgdir}" install-data install-exec
 
   # this one we ship in the libcups pkg
@@ -165,9 +181,16 @@
   # remove client.conf man page
   rm -f "${pkgdir}"/usr/share/man/man5/client.conf.5
 
-  # comment out all conversion rules which use any of the removed filters that are now part of cups-filters
+  # comment out removed filters that are now part of cups-filters
   perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$pkgdir"/usr/share/cups/mime/mime.convs
 
   # comment out unnecessary PageLogFormat entry
   sed -i -e 's:PageLogFormat:#PageLogFormat:' "$pkgdir"/etc/cups/cupsd.conf*
+
+  # rename the systems service files
+  mv "${pkgdir}"/usr/lib/systemd/system/org.cups.cups-lpd.socket "${pkgdir}"/usr/lib/systemd/system/cups-lpd.socket
+  mv "${pkgdir}"/usr/lib/systemd/system/org.cups.cups-lpd at .service "${pkgdir}"/usr/lib/systemd/system/cups-lpd at .service
+  mv "${pkgdir}"/usr/lib/systemd/system/org.cups.cupsd.path "${pkgdir}"/usr/lib/systemd/system/cups.path
+  mv "${pkgdir}"/usr/lib/systemd/system/org.cups.cupsd.service "${pkgdir}"/usr/lib/systemd/system/cups.service
+  mv "${pkgdir}"/usr/lib/systemd/system/org.cups.cupsd.socket "${pkgdir}"/usr/lib/systemd/system/cups.socket
 }

Modified: cups-systemd-socket.patch
===================================================================
--- cups-systemd-socket.patch	2020-11-15 12:11:15 UTC (rev 401138)
+++ cups-systemd-socket.patch	2020-11-15 12:49:11 UTC (rev 401139)
@@ -21,18 +21,20 @@
 diff -up cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.path.in
 --- cups-2.3.0/scheduler/org.cups.cupsd.service.in	2019-08-23 17:19:38.000000000 +0200
 +++ cups-2.3.0/scheduler/org.cups.cupsd.service.in.new	2019-08-25 20:20:25.805339727 +0200
-@@ -1,11 +1,12 @@
+@@ -1,12 +1,13 @@
  [Unit]
  Description=CUPS Scheduler
  Documentation=man:cupsd(8)
 -After=sssd.service
 +After=sssd.service network-online.target
+ Requires=cups.socket
 +Wants=network-online.target
- 
+
  [Service]
  ExecStart=@sbindir@/cupsd -l
 -Type=simple
 +Type=notify
  Restart=on-failure
+
+ [Install]
  
- [Install]

Modified: cups.install
===================================================================
--- cups.install	2020-11-15 12:11:15 UTC (rev 401138)
+++ cups.install	2020-11-15 12:49:11 UTC (rev 401139)
@@ -16,5 +16,13 @@
     echo "make sure /etc/cups and all files within are owned by"
     echo "cups group - run \"chgrp -R cups /etc/cups\"." 
   fi
+
+  # upstream reverted back to common old naming scheme
+  if [[ $(vercmp 2.3.3+105+g59137acc1-1 $2) = 1 ]]; then
+    echo ">>> Cups systemd socket and service files have been"
+    echo ">>> renamed by upstream decision. Please make sure"
+    echo ">>> to disable/reenable the services to your need."
+    echo ">>> hint: \"pacman -Ql cups | grep systemd\" and"
+    echo ">>> \"ls -lR /etc/systemd/ | grep cups\" "
+  fi
 }
-



More information about the arch-commits mailing list