diff --git a/change-udev-rules.diff b/change-udev-rules.diff index 3d5cd59..4da9a10 100644 --- a/change-udev-rules.diff +++ b/change-udev-rules.diff @@ -1,13 +1,13 @@ ---- data/rules/55-hpmud.rules.orig 2011-12-09 12:19:54.000000000 +0100 -+++ data/rules/55-hpmud.rules 2012-01-12 16:20:57.000000000 +0100 -@@ -12,142 +12,186 @@ +--- data/rules/55-hpmud.rules.orig 2012-09-04 14:33:13.000000000 +0200 ++++ data/rules/55-hpmud.rules 2012-10-04 15:39:27.000000000 +0200 +@@ -12,142 +12,187 @@ # 3. This rules file is an attempt at being compatable with all distros. Feel free to make your own changes and if you feel your # changes are not distro specific please send your patch to us. 2/11/2009, D Suffield # +# SUSE changed: +# +# ATTRS{idVendor} to ATTR{idVendor} and -+# ATTRS{idProduct to ATTR{idProduct} ++# ATTRS{idProduct} to ATTR{idProduct} +# because ATTRS search all parents which wastes resources +# while ATTR is sufficient here, +# see https://bugzilla.novell.com/show_bug.cgi?id=436085 @@ -230,6 +230,9 @@ # Check for DesignJet product (0x03f0xx14). -ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??14", OWNER="root", GROUP="lp", MODE="660" +ATTR{idVendor}=="03f0", ATTR{idProduct}=="??14", OWNER="root", GROUP="lp", MODE="0664", ENV{sane_hpaio}="yes", ENV{libsane_matched}="yes" ++ ++# The following rule will disable USB autosuspend for the device ++ENV{libsane_matched}=="yes", RUN+="/bin/sh -c 'test -e /sys/$env{DEVPATH}/power/level && echo on > /sys/$env{DEVPATH}/power/level'" # Removed the following rule because FHS states that /etc should be reserved for static files only. This # functionality should be done in a deb/rpm post install script. 2/11/2009, D Suffield @@ -244,25 +247,22 @@ # If sane-bankends is installed add hpaio backend support to dll.conf if needed. -# ENV{sane_hpaio}=="yes", RUN+="/bin/sh -c 'grep -q ^#hpaio /etc/sane.d/dll.conf;if [ $$? -eq 0 ];then sed -i -e s/^#hpaio/hpaio/ /etc/sane.d/dll.conf;else grep -q ^hpaio /etc/sane.d/dll.conf;if [ $$? -ne 0 ];then echo hpaio >>/etc/sane.d/dll.conf;fi;fi'" +ENV{sane_hpaio}=="yes", RUN+="/bin/sh -c 'grep -q ^#hpaio /etc/sane.d/dll.conf;if [ $$? -eq 0 ];then sed -i -e s/^#hpaio/hpaio/ /etc/sane.d/dll.conf;else grep -q ^hpaio /etc/sane.d/dll.conf;if [ $$? -ne 0 ];then echo hpaio >>/etc/sane.d/dll.conf;fi;fi'" -+ -+# The following rule will disable USB autosuspend for the device -+ENV{libsane_matched}=="yes", RUN+="/bin/sh -c 'test -e /sys/$env{DEVPATH}/power/level && echo on > /sys/$env{DEVPATH}/power/level'" LABEL="hpmud_rules_end" ---- data/rules/56-hpmud_support.rules.orig 2011-12-09 12:19:54.000000000 +0100 -+++ data/rules/56-hpmud_support.rules 2012-01-12 16:24:00.000000000 +0100 ++ +--- data/rules/56-hpmud_support.rules.orig 2012-09-04 14:33:13.000000000 +0200 ++++ data/rules/56-hpmud_support.rules 2012-10-04 15:43:36.000000000 +0200 @@ -1,15 +1,16 @@ # HPLIP udev rules file. Notify console user if plugin support is required for this device. -ACTION!="add", GOTO="hpmud_rules_end" -SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GOTO="pid_test" -SUBSYSTEM!="usb_device", GOTO="hpmud_rules_end" -- --LABEL="pid_test" +ACTION!="add", GOTO="hpmud_support_rules_end" +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GOTO="hpmud_support_pid_test" +SUBSYSTEM!="usb_device", GOTO="hpmud_support_rules_end" -+ + +-LABEL="pid_test" +LABEL="hpmud_support_pid_test" # Check for LaserJet products (0x03f0xx17). @@ -276,9 +276,9 @@ -LABEL="hpmud_rules_end" +LABEL="hpmud_support_rules_end" + ---- data/rules/86-hpmud_plugin.rules.orig 2012-06-25 11:39:13.821298335 +0200 -+++ data/rules/86-hpmud_plugin.rules 2012-06-25 11:40:03.421562113 +0200 -@@ -1,13 +1,13 @@ +--- data/rules/86-hpmud_plugin.rules.orig 2012-09-04 14:33:13.000000000 +0200 ++++ data/rules/86-hpmud_plugin.rules 2012-10-04 15:46:25.000000000 +0200 +@@ -1,13 +1,15 @@ # Load hp firmware for this printer. -ACTION!="add", GOTO="hpmud_rules_end" @@ -286,16 +286,17 @@ #Check and add printer for Suse 10.3 distro # hp_Marvel_Device (These printer requires the plugin files. installling when device is detected) --SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??17", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM} &'" --SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??2a", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM}&'" -+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??17", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM} &'" -+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??2a", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM}&'" +-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??17", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM} &'" +-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??2a", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM}&'" ++SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??17", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM} &'" ++SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??2a", PROGRAM="/bin/sh -c 'logger -p user.info loading hp_printer_device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m $env{BUSNUM}:$env{DEVNUM}&'" #Check and add printer for other distros --SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??17", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m %c &'" --SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??2a", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m %c &'" +-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??17", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m %c &'" +-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="??2a", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m %c &'" -LABEL="hpmud_rules_end" -+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??17", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m %c &'" -+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??2a", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/hp-check-plugin -m %c &'" ++SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??17", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m %c &'" ++SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="??2a", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/python /usr/bin/hp-check-plugin -m %c &'" ++ +LABEL="hpmud_plugin_rules_end" - ++ diff --git a/fix-no-return-in-nonvoid-function.diff b/fix-no-return-in-nonvoid-function.diff index 95fde85..a13c47b 100644 --- a/fix-no-return-in-nonvoid-function.diff +++ b/fix-no-return-in-nonvoid-function.diff @@ -1,136 +1,11 @@ ---- scan/sane/hpaio.c.orig 2012-06-18 12:42:51.000000000 +0200 -+++ scan/sane/hpaio.c 2012-06-25 16:30:00.364432019 +0200 -@@ -332,121 +332,132 @@ - if (ma.scantype == HPMUD_SCANTYPE_SOAP) - return soap_open(devicename, pHandle); - if (ma.scantype == HPMUD_SCANTYPE_SOAPHT) - return soapht_open(devicename, pHandle); - if (ma.scantype == HPMUD_SCANTYPE_LEDM) - return ledm_open(devicename, pHandle); - if ((ma.scantype == HPMUD_SCANTYPE_SCL) || (ma.scantype == HPMUD_SCANTYPE_PML)) - return sclpml_open(devicename, pHandle); -+ -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_open() */ - - extern void sane_hpaio_close(SANE_Handle handle) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_close(handle); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_close(handle); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_close(handle); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_close(handle); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_close(handle); -+ -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_close() */ - - extern const SANE_Option_Descriptor * sane_hpaio_get_option_descriptor(SANE_Handle handle, SANE_Int option) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_get_option_descriptor(handle, option); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_get_option_descriptor(handle, option); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_get_option_descriptor(handle, option); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_get_option_descriptor(handle, option); +--- scan/sane/hpaio.c.orig 2012-09-04 14:32:55.000000000 +0200 ++++ scan/sane/hpaio.c 2012-09-28 14:20:24.595427330 +0200 +@@ -368,7 +368,7 @@ extern const SANE_Option_Descriptor * sa if (strcmp(*((char **)handle), "SCL-PML") == 0) return sclpml_get_option_descriptor(handle, option); -+ -+ return 0; + else +- return SANE_STATUS_UNSUPPORTED; ++ return NULL; } /* sane_hpaio_get_option_descriptor() */ extern SANE_Status sane_hpaio_control_option(SANE_Handle handle, SANE_Int option, SANE_Action action, void * pValue, SANE_Int * pInfo ) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_control_option(handle, option, action, pValue, pInfo); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_control_option(handle, option, action, pValue, pInfo); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_control_option(handle, option, action, pValue, pInfo); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_control_option(handle, option, action, pValue, pInfo); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_control_option(handle, option, action, pValue, pInfo); - -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_control_option() */ - - extern SANE_Status sane_hpaio_get_parameters(SANE_Handle handle, SANE_Parameters *pParams) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_get_parameters(handle, pParams); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_get_parameters(handle, pParams); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_get_parameters(handle, pParams); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_get_parameters(handle, pParams); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_get_parameters(handle, pParams); - -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_get_parameters() */ - - extern SANE_Status sane_hpaio_start(SANE_Handle handle) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_start(handle); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_start(handle); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_start(handle); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_start(handle); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_start(handle); - -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_start() */ - - - extern SANE_Status sane_hpaio_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength, SANE_Int *pLength) - { - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_read(handle, data, maxLength, pLength); - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_read(handle, data, maxLength, pLength); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_read(handle, data, maxLength, pLength); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_read(handle, data, maxLength, pLength); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_read(handle, data, maxLength, pLength); - -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_read() */ - - /* Note, sane_cancel is called normally not just during IO abort situations. */ - extern void sane_hpaio_cancel( SANE_Handle handle ) - { - if (strcmp(*((char **)handle), "MARVELL") == 0) - return marvell_cancel(handle); - if (strcmp(*((char **)handle), "SOAP") == 0) - return soap_cancel(handle); - if (strcmp(*((char **)handle), "SOAPHT") == 0) - return soapht_cancel(handle); - if (strcmp(*((char **)handle), "LEDM") == 0) - return ledm_cancel(handle); - if (strcmp(*((char **)handle), "SCL-PML") == 0) - return sclpml_cancel(handle); -- -+ -+ return SANE_STATUS_UNSUPPORTED; - } /* sane_hpaio_cancel() */ - - extern SANE_Status sane_hpaio_set_io_mode(SANE_Handle handle, SANE_Bool nonBlocking) - { - return SANE_STATUS_UNSUPPORTED; - } - - extern SANE_Status sane_hpaio_get_select_fd(SANE_Handle handle, SANE_Int *pFd) diff --git a/hplip-3.12.6.tar.gz b/hplip-3.12.6.tar.gz deleted file mode 100644 index 227a971..0000000 --- a/hplip-3.12.6.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:54578000792969adb583e75efeacb9c46ab69659ec7e9424de390613f3595775 -size 21227044 diff --git a/hplip-3.12.9.tar.gz b/hplip-3.12.9.tar.gz new file mode 100644 index 0000000..2bda399 --- /dev/null +++ b/hplip-3.12.9.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7361b9d6e968ce3306dc438e622a4412156e7c2d71b2a6face5952cf52e23c4 +size 21314003 diff --git a/hplip.changes b/hplip.changes index 7b1b5e1..303d2a7 100644 --- a/hplip.changes +++ b/hplip.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Thu Oct 4 13:37:56 CEST 2012 - jsmeix@suse.de + +- no-hplip_cron.diff deactivates the "cron" stuff in Makefile.am + because it lets build fail on SLE11 products (possibly an + autoconf issue) and we (SUSE) do not allow to install files + like /etc/cron.daily/hplip_cron via RPMs. Instead hplip_cron + is provided as /usr/share/doc/packages/hplip/hplip_cron +- The /var/lib/hp directory is created everywhere except on + openSUSE 12.2 and later versions (perhaps also an autoconf + issue) so that it is created in the install section if it + does not exist as a simple and fail-safe workaround + see https://bugs.launchpad.net/bugs/1018303 + and (bnc#780413). +- Adapted change-udev-rules.diff so that it applies to + the HPLIP 3.12.9 sources. + +------------------------------------------------------------------- +Fri Sep 28 12:42:33 UTC 2012 - mmeister@suse.com + +- Fixed fix-no-return-in-nonvoid-function.diff because + HP's upstream fix is insufficient (not 64-bit safe), + see https://bugs.launchpad.net/hplip/+bug/1017496 +- Adapted no-chgrp_lp_hplip_Logdir.diff so that it + applies to the HPLIP 3.12.9 sources. + +------------------------------------------------------------------ +Fri Sep 28 08:20:55 UTC 2012 - mmeister@suse.com + +- Version upgrade to 3.12.9: + User can collect logs by running 'hp-logcapture' command + for any issue in print/scan/fax functionality. + Logs get stored in /var/log/hp/tmp. + Several more supported printers and all-in-one devices. + Several bug fixes. + For details see + http://hplipopensource.com/hplip-web/release_notes.html + ------------------------------------------------------------------- Thu Jun 28 12:00:28 CEST 2012 - jsmeix@suse.de diff --git a/hplip.spec b/hplip.spec index 338da02..2dbd8ec 100644 --- a/hplip.spec +++ b/hplip.spec @@ -15,7 +15,6 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - Name: hplip # BuildRequires foomatic-filters to avoid /usr/lib/rpm/brp-symlink ERROR: # link target doesn't exist (neither in build root nor in installed system): @@ -51,20 +50,20 @@ BuildRequires: sane-backends %endif BuildRequires: update-desktop-files Summary: HP's Printing, Scanning, and Faxing Software -License: BSD-3-Clause ; GPL-2.0+ ; MIT +License: BSD-3-Clause and GPL-2.0+ and MIT Group: Hardware/Printing # HPLIP has reached 1.0 status. With this release a date encoded revision number is used: # x.y.m : x = major release number, y = year (eg: 6 = 2006), m = month (eg: 6a = second release in June) # Official releases have a 3 digit number and release candidates have a 4 digit number: x.y.m.rc -Version: 3.12.6 +Version: 3.12.9 Release: 0 Url: http://hplipopensource.com # Source0...Source9 is for sources from HP: -# URL for Source0: http://prdownloads.sourceforge.net/hplip/hplip-3.12.6.tar.gz -# URL to verify Source0: http://prdownloads.sourceforge.net/hplip/hplip-3.12.6.tar.gz.asc +# URL for Source0: http://prdownloads.sourceforge.net/hplip/hplip-3.12.9.tar.gz +# URL to verify Source0: http://prdownloads.sourceforge.net/hplip/hplip-3.12.9.tar.gz.asc # How to verify Source0 see: http://hplipopensource.com/node/327 # For example: /usr/bin/gpg --keyserver pgp.mit.edu --recv-keys 0xA59047B9 -# /usr/bin/gpg --verify hplip-3.12.6.tar.gz.asc hplip-3.12.6.tar.gz +# /usr/bin/gpg --verify hplip-3.12.9.tar.gz.asc hplip-3.12.9.tar.gz # must result: Good signature from "HPLIP (HP Linux Imaging and Printing) " Source0: hplip-%{version}.tar.gz # Patch0...Patch9 is for patches from HP: @@ -105,11 +104,15 @@ Source106: hp-systray.wrapper # Patch100... is for special Suse patches: # Patch101 changes the udev rules files 55-hpmud.rules and 56-hpmud_support.rules: Patch101: change-udev-rules.diff -# Patch102 deactivates the "chgrp lp -R /var/log/hp" in Makefile.am +# Patch102 no-chgrp_lp_hplip_Logdir.diff deactivates the "chgrp lp -R /var/log/hp" in Makefile.am # because during install this results "Operation not permitted" # this is done in the files section via attr(0774,root,lp) # where mode 0774 matches to what is set in Makefile.am: Patch102: no-chgrp_lp_hplip_Logdir.diff +# Patch103 no-hplip_cron.diff deactivates the "cron" stuff in Makefile.am +# because it lets build fail on SLE11 products (possibly an autoconf issue) +# and we (i.e. SUSE) do not allow to install /etc/cron.daily/hplip_cron +Patch103: no-hplip_cron.diff # Install into this non-root directory (required when norootforbuild is used): BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: coreutils @@ -321,11 +324,15 @@ with the scan drivers in HPLIP for standard HP all-in-one printers. # Patch101 change-udev-rules.diff # changes the udev rules files 55-hpmud.rules and 56-hpmud_support.rules: %patch101 -# Patch102 deactivates the "chgrp lp -R /var/log/hp" in Makefile.am +# Patch102 no-chgrp_lp_hplip_Logdir.diff deactivates the "chgrp lp -R /var/log/hp" in Makefile.am # because during install this results "Operation not permitted" # this is done in the files section via attr(0774,root,lp) # where mode 0774 matches to what is set in Makefile.am: %patch102 +# Patch103 no-hplip_cron.diff deactivates the "cron" stuff in Makefile.am +# because it lets build fail on SLE11 products (possibly an autoconf issue) +# and we (i.e. SUSE) do not allow to install /etc/cron.daily/hplip_cron +%patch103 %build # If AUTOMAKE='automake --foreign' is not set, autoreconf (in fact automake) @@ -387,6 +394,16 @@ make %install make install DESTDIR=%{buildroot} +# The /var/lib/hp directory is created everywhere except on openSUSE 12.2 and later versions +# (perhaps an autoconf issue) so that it is created here as simple and fail-safe workaround +# see https://bugs.launchpad.net/bugs/1018303 and bnc#780413 +# using fixed "/var/log/hp" because this is hardcoded in the HPLIP sources +# regarding owner and permissions see the "files hpijs" section below +# and Patch102 no-chgrp_lp_hplip_Logdir.diff: +test -d %{buildroot}/var/lib/hp || install -d %{buildroot}/var/lib/hp +# Provide hplip_cron as /usr/share/doc/packages/hplip/hplip_cron +# see Patch103 no-hplip_cron.diff: +install -m 644 data/rules/hplip_cron %{buildroot}%{_defaultdocdir}/%{name}/ # Remove the installed /etc/sane.d/dll.conf # because this is provided by the sane-backends package: rm %{buildroot}%{_sysconfdir}/sane.d/dll.conf @@ -579,6 +596,7 @@ exit 0 %{_bindir}/hp-info %{_bindir}/hp-levels %{_bindir}/hp-linefeedcal +%{_bindir}/hp-logcapture %{_bindir}/hp-makecopies %{_bindir}/hp-makeuri %{_bindir}/hp-mkuri diff --git a/no-chgrp_lp_hplip_Logdir.diff b/no-chgrp_lp_hplip_Logdir.diff index e902f34..f02f4fd 100644 --- a/no-chgrp_lp_hplip_Logdir.diff +++ b/no-chgrp_lp_hplip_Logdir.diff @@ -1,6 +1,6 @@ ---- Makefile.am.orig 2012-04-10 10:35:14.000000000 +0200 -+++ Makefile.am 2012-04-13 12:05:40.000000000 +0200 -@@ -509,14 +509,14 @@ endif +--- Makefile.am.orig 2012-09-04 14:34:06.000000000 +0200 ++++ Makefile.am 2012-09-28 11:18:21.065027065 +0200 +@@ -552,24 +552,24 @@ endif install-dist_hplip_LogDATA: if FULL_BUILD test -z "$(DESTDIR)$(hplip_Logdir)" || mkdir -p $(DESTDIR)$(hplip_Logdir) @@ -13,8 +13,19 @@ - chgrp "lp" -R $(DESTDIR)$(hplip_Logdir) +# chgrp "lp" -R $(DESTDIR)$(hplip_Logdir) chmod 774 $(DESTDIR)$(hplip_Logdir) --endif #FULL_BUILD -+endif #HPLIP_BUILD + endif #FULL_BUILD - install-data-hook: + install-dist_hplip_tmpDATA: + if FULL_BUILD + test -z "$(DESTDIR)$(hplip_tmpdir)" || mkdir -p $(DESTDIR)$(hplip_tmpdir) +- chgrp "lp" -R $(DESTDIR)$(hplip_tmpdir) ++# chgrp "lp" -R $(DESTDIR)$(hplip_tmpdir) + chmod 1774 $(DESTDIR)$(hplip_tmpdir) + endif #FULL_BUILD if HPLIP_BUILD + test -z "$(DESTDIR)$(hplip_tmpdir)" || mkdir -p $(DESTDIR)$(hplip_tmpdir) +- chgrp "lp" -R $(DESTDIR)$(hplip_tmpdir) ++# chgrp "lp" -R $(DESTDIR)$(hplip_tmpdir) + chmod 1774 $(DESTDIR)$(hplip_tmpdir) + endif #FULL_BUILD + diff --git a/no-hplip_cron.diff b/no-hplip_cron.diff new file mode 100644 index 0000000..c448b0a --- /dev/null +++ b/no-hplip_cron.diff @@ -0,0 +1,42 @@ +--- Makefile.am.after-no-chgrp_lp_hplip_Logdir.diff 2012-09-28 15:17:30.000000000 +0200 ++++ Makefile.am 2012-09-28 15:19:34.000000000 +0200 +@@ -107,8 +107,8 @@ hp_mkuri_LDADD = -ldl libhpmud.la + hp_mkuri_CFLAGS = -DCONFDIR=\"$(hplip_confdir)\" + + # cron files +-crondir = /etc/cron.daily +-dist_cron_DATA = data/rules/hplip_cron ++#crondir = /etc/cron.daily ++#dist_cron_DATA = data/rules/hplip_cron + + # hpmud.rules + rulesdir = /etc/udev/rules.d +@@ -573,17 +573,17 @@ if HPLIP_BUILD + chmod 1774 $(DESTDIR)$(hplip_tmpdir) + endif #FULL_BUILD + +-install-dist_cronDATA:$(dist_cron_DATA) +- test -z "$(DESTDIR)$(crondir)" || $(MKDIR_P) "$(DESTDIR)$(crondir)"; \ +- list='$(dist_cron_DATA)'; test -n "$(crondir)" || list=; \ +- for p in $$list; do \ +- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ +- echo "$$d$$p"; \ +- done | $(am__base_list) | \ +- while read files; do \ +- echo " $(INSTALL) -m755 $$files '$(DESTDIR)$(crondir)'"; \ +- $(INSTALL) -m755 $$files "$(DESTDIR)$(crondir)" || exit $$?; \ +- done ++#install-dist_cronDATA:$(dist_cron_DATA) ++# test -z "$(DESTDIR)$(crondir)" || $(MKDIR_P) "$(DESTDIR)$(crondir)"; \ ++# list='$(dist_cron_DATA)'; test -n "$(crondir)" || list=; \ ++# for p in $$list; do \ ++# if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ ++# echo "$$d$$p"; \ ++# done | $(am__base_list) | \ ++# while read files; do \ ++# echo " $(INSTALL) -m755 $$files '$(DESTDIR)$(crondir)'"; \ ++# $(INSTALL) -m755 $$files "$(DESTDIR)$(crondir)" || exit $$?; \ ++# done + + install-data-hook: + if HPLIP_BUILD