summaryrefslogtreecommitdiff
path: root/libre/hplip-libre
diff options
context:
space:
mode:
Diffstat (limited to 'libre/hplip-libre')
-rw-r--r--libre/hplip-libre/PKGBUILD8
-rw-r--r--libre/hplip-libre/cups-1.6-buildfix.diff392
-rw-r--r--libre/hplip-libre/disable_upgrade.patch14
-rw-r--r--libre/hplip-libre/hp-mkuri.patch11
-rw-r--r--libre/hplip-libre/hplip-CVE-2013-4325.patch22
-rw-r--r--libre/hplip-libre/hplip.install18
-rw-r--r--libre/hplip-libre/hplip_typo.patch11
7 files changed, 4 insertions, 472 deletions
diff --git a/libre/hplip-libre/PKGBUILD b/libre/hplip-libre/PKGBUILD
index 18351214e..f0cdd45db 100644
--- a/libre/hplip-libre/PKGBUILD
+++ b/libre/hplip-libre/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 201437 2013-12-11 16:52:25Z andyrtr $
+# $Id: PKGBUILD 204311 2014-01-17 09:00:06Z andyrtr $
# Maintainer: Tom Gundersen <teg@jklm.no>
# Contributor : Rémy Oudompheng <remy@archlinux.org>
# Contributor: Morgan LEFIEUX <comete@archlinuxfr.org>
@@ -6,8 +6,8 @@
_pkgname=hplip
pkgname=hplip-libre
-pkgver=3.13.11
-pkgrel=2.1
+pkgver=3.14.1
+pkgrel=1
pkgdesc="Drivers for HP DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet, without hplip-plugin binary blobs recommendation (Parabola rebranded)"
arch=('i686' 'x86_64' 'mips64el')
url="http://hplipopensource.com"
@@ -31,7 +31,7 @@ provides=$_pkgname=$pkgver
install=hplip.install
source=(http://downloads.sourceforge.net/${_pkgname}/$_pkgname-$pkgver.tar.gz{,.asc}
disable_upgrade.patch)
-md5sums=('8ee362d9bc45fd4eddd3c9d9e583d728'
+md5sums=('11eb45f3d3edf1f03887fd13afc61b51'
'SKIP'
'a853ba0eb0883f4bcee00b4277128b29')
diff --git a/libre/hplip-libre/cups-1.6-buildfix.diff b/libre/hplip-libre/cups-1.6-buildfix.diff
deleted file mode 100644
index 8341a1610..000000000
--- a/libre/hplip-libre/cups-1.6-buildfix.diff
+++ /dev/null
@@ -1,392 +0,0 @@
-diff -up hplip-3.12.6/prnt/cupsext/cupsext.c.ipp_accessors hplip-3.12.6/prnt/cupsext/cupsext.c
---- hplip-3.12.6/prnt/cupsext/cupsext.c.ipp_accessors 2012-06-18 12:41:19.000000000 +0200
-+++ hplip-3.12.6/prnt/cupsext/cupsext.c 2012-07-19 17:11:47.606524137 +0200
-@@ -87,6 +87,46 @@ typedef int Py_ssize_t;
- #define PY_SSIZE_T_MIN INT_MIN
- #endif
-
-+#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
-+#define HAVE_CUPS_1_6 1
-+#endif
-+
-+#ifndef HAVE_CUPS_1_6
-+#define ippGetCount(attr) attr->num_values
-+#define ippGetGroupTag(attr) attr->group_tag
-+#define ippGetValueTag(attr) attr->value_tag
-+#define ippGetName(attr) attr->name
-+#define ippGetBoolean(attr, element) attr->values[element].boolean
-+#define ippGetInteger(attr, element) attr->values[element].integer
-+#define ippGetStatusCode(ipp) ipp->request.status.status_code
-+#define ippGetString(attr, element, language) attr->values[element].string.text
-+
-+static ipp_attribute_t * ippFirstAttribute( ipp_t *ipp )
-+{
-+ if (!ipp)
-+ return (NULL);
-+ return (ipp->current = ipp->attrs);
-+}
-+
-+static ipp_attribute_t * ippNextAttribute( ipp_t *ipp )
-+{
-+ if (!ipp || !ipp->current)
-+ return (NULL);
-+ return (ipp->current = ipp->current->next);
-+}
-+
-+static int ippSetOperation( ipp_t *ipp, ipp_op_t op )
-+{
-+ ipp->request.op.operation_id = op;
-+ return (1);
-+}
-+
-+static int ippSetRequestId( ipp_t *ipp, int request_id )
-+{
-+ ipp->request.any.request_id = request_id;
-+ return (1);
-+}
-+#endif
-
- int g_num_options = 0;
- cups_option_t * g_options;
-@@ -333,8 +373,8 @@ PyObject * getPrinters( PyObject * self,
- request = ippNew();
- language = cupsLangDefault();
-
-- request->request.op.operation_id = CUPS_GET_PRINTERS;
-- request->request.any.request_id = 1;
-+ ippSetOperation( request, CUPS_GET_PRINTERS );
-+ ippSetRequestId ( request, 1);
-
- ippAddString( request, IPP_TAG_OPERATION, IPP_TAG_CHARSET,
- "attributes-charset", NULL, cupsLangEncoding( language ) );
-@@ -378,10 +418,10 @@ PyObject * getPrinters( PyObject * self,
- ipp_pstate_t state;
- int i = 0;
-
-- for ( attr = response->attrs; attr != NULL; attr = attr->next )
-+ for ( attr = ippFirstAttribute( response ); attr != NULL; attr = ippNextAttribute( response ) )
- {
-- while ( attr != NULL && attr->group_tag != IPP_TAG_PRINTER )
-- attr = attr->next;
-+ while ( attr != NULL && ippGetGroupTag( attr ) != IPP_TAG_PRINTER )
-+ attr = ippNextAttribute( response );
-
- if ( attr == NULL )
- break;
-@@ -390,41 +430,41 @@ PyObject * getPrinters( PyObject * self,
- state = IPP_PRINTER_IDLE;
- accepting = 0;
-
-- while ( attr != NULL && attr->group_tag == IPP_TAG_PRINTER )
-+ while ( attr != NULL && ippGetGroupTag( attr ) == IPP_TAG_PRINTER )
- {
-- if ( strcmp( attr->name, "printer-name" ) == 0 &&
-- attr->value_tag == IPP_TAG_NAME )
-- name = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "device-uri" ) == 0 &&
-- attr->value_tag == IPP_TAG_URI )
-- device_uri = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "printer-uri-supported" ) == 0 &&
-- attr->value_tag == IPP_TAG_URI )
-- printer_uri = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "printer-info" ) == 0 &&
-- attr->value_tag == IPP_TAG_TEXT )
-- info = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "printer-location" ) == 0 &&
-- attr->value_tag == IPP_TAG_TEXT )
-- location = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "printer-make-and-model" ) == 0 &&
-- attr->value_tag == IPP_TAG_TEXT )
-- make_model = attr->values[ 0 ].string.text;
--
-- else if ( strcmp( attr->name, "printer-state" ) == 0 &&
-- attr->value_tag == IPP_TAG_ENUM )
-- state = ( ipp_pstate_t ) attr->values[ 0 ].integer;
--
-- else if (!strcmp(attr->name, "printer-is-accepting-jobs") &&
-- attr->value_tag == IPP_TAG_BOOLEAN)
-- accepting = attr->values[ 0 ].boolean;
-+ if ( strcmp( ippGetName( attr ), "printer-name" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_NAME )
-+ name = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "device-uri" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_URI )
-+ device_uri = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "printer-uri-supported" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_URI )
-+ printer_uri = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "printer-info" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_TEXT )
-+ info = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "printer-location" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_TEXT )
-+ location = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "printer-make-and-model" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_TEXT )
-+ make_model = ippGetString( attr, 0, NULL );
-+
-+ else if ( strcmp( ippGetName( attr ), "printer-state" ) == 0 &&
-+ ippGetValueTag( attr ) == IPP_TAG_ENUM )
-+ state = ( ipp_pstate_t ) ippGetInteger( attr, 0 );
-+
-+ else if (!strcmp(ippGetName( attr ), "printer-is-accepting-jobs") &&
-+ ippGetValueTag( attr ) == IPP_TAG_BOOLEAN)
-+ accepting = ippGetBoolean( attr, 0 );
-
-- attr = attr->next;
-+ attr = ippNextAttribute( response );
- }
-
- if ( device_uri == NULL )
-@@ -522,8 +562,8 @@ PyObject * addPrinter( PyObject * self,
- request = ippNew();
- language = cupsLangDefault();
-
-- request->request.op.operation_id = CUPS_ADD_PRINTER;
-- request->request.any.request_id = 1;
-+ ippSetOperation( request, CUPS_ADD_PRINTER );
-+ ippSetRequestId ( request, 1 );
-
- ippAddString( request, IPP_TAG_OPERATION, IPP_TAG_CHARSET,
- "attributes-charset", NULL, cupsLangEncoding( language ) );
-@@ -568,7 +608,7 @@ PyObject * addPrinter( PyObject * self,
- }
- else
- {
-- status = response->request.status.status_code;
-+ status = ippGetStatusCode( response );
- //ippDelete( response );
- r = 1;
- }
-@@ -631,8 +671,8 @@ PyObject * delPrinter( PyObject * self,
- */
- request = ippNew();
-
-- request->request.op.operation_id = CUPS_DELETE_PRINTER;
-- request->request.op.request_id = 1;
-+ ippSetOperation( request, CUPS_DELETE_PRINTER );
-+ ippSetRequestId ( request, 1 );
-
- language = cupsLangDefault();
-
-@@ -650,7 +690,7 @@ PyObject * delPrinter( PyObject * self,
- */
- response = cupsDoRequest( http, request, "/admin/" );
-
-- if ( ( response != NULL ) && ( response->request.status.status_code <= IPP_OK_CONFLICT ) )
-+ if ( ( response != NULL ) && ( ippGetStatusCode( response ) <= IPP_OK_CONFLICT ) )
- {
- r = 1;
- }
-@@ -721,8 +761,8 @@ PyObject * setDefaultPrinter( PyObject *
-
- request = ippNew();
-
-- request->request.op.operation_id = CUPS_SET_DEFAULT;
-- request->request.op.request_id = 1;
-+ ippSetOperation( request, CUPS_SET_DEFAULT );
-+ ippSetRequestId ( request, 1 );
-
- language = cupsLangDefault();
-
-@@ -743,7 +783,7 @@ PyObject * setDefaultPrinter( PyObject *
-
- response = cupsDoRequest( http, request, "/admin/" );
-
-- if ( ( response != NULL ) && ( response->request.status.status_code <= IPP_OK_CONFLICT ) )
-+ if ( ( response != NULL ) && ( ippGetStatusCode( response ) <= IPP_OK_CONFLICT ) )
- {
- r = 1;
- }
-@@ -797,8 +837,8 @@ PyObject * controlPrinter( PyObject * se
-
- request = ippNew();
-
-- request->request.op.operation_id = op;
-- request->request.op.request_id = 1;
-+ ippSetOperation( request, op );
-+ ippSetRequestId ( request, 1 );
-
- language = cupsLangDefault();
-
-@@ -822,7 +862,7 @@ PyObject * controlPrinter( PyObject * se
-
- response = cupsDoRequest(http, request, "/admin/");
-
-- if (( response != NULL ) && (response->request.status.status_code <= IPP_OK_CONFLICT))
-+ if (( response != NULL ) && (ippGetStatusCode( response ) <= IPP_OK_CONFLICT))
- {
- r = 1;
- }
-@@ -837,7 +877,7 @@ abort:
- if ( response != NULL )
- ippDelete( response );
-
-- return Py_BuildValue( "i", r );;
-+ return Py_BuildValue( "i", r );
- }
-
-
-@@ -1116,8 +1156,8 @@ PyObject * getPPDList( PyObject * self,
-
- request = ippNew();
-
-- request->request.op.operation_id = CUPS_GET_PPDS;
-- request->request.op.request_id = 1;
-+ ippSetOperation( request, CUPS_GET_PPDS );
-+ ippSetRequestId ( request, 1 );
-
- language = cupsLangDefault();
-
-@@ -1143,43 +1183,43 @@ PyObject * getPPDList( PyObject * self,
- if ((response = cupsDoRequest(http, request, "/")) != NULL)
- {
-
-- for (attr = response->attrs; attr; attr = attr->next)
-+ for (attr = ippFirstAttribute( response ); attr; attr = ippNextAttribute( response ))
- {
- PyObject *dict;
- char *ppdname = NULL;
-
-- while (attr && attr->group_tag != IPP_TAG_PRINTER)
-- attr = attr->next;
-+ while (attr && ippGetGroupTag( attr ) != IPP_TAG_PRINTER)
-+ attr = ippNextAttribute( response );
-
- if (!attr)
- break;
-
- dict = PyDict_New ();
-
-- for (; attr && attr->group_tag == IPP_TAG_PRINTER; attr = attr->next)
-+ for (; attr && ippGetGroupTag( attr ) == IPP_TAG_PRINTER; attr = ippNextAttribute( response ))
- {
- PyObject *val = NULL;
-
-- if (!strcmp (attr->name, "ppd-name") && attr->value_tag == IPP_TAG_NAME)
-+ if (!strcmp (ippGetName( attr ), "ppd-name") && ippGetValueTag( attr ) == IPP_TAG_NAME)
- {
-- ppdname = attr->values[0].string.text;
-+ ppdname = ippGetString( attr, 0, NULL );
-
- //sprintf( buf, "print '%s'", ppdname);
- //PyRun_SimpleString( buf );
- }
-
-- else if (attr->value_tag == IPP_TAG_TEXT || attr->value_tag == IPP_TAG_NAME || attr->value_tag == IPP_TAG_KEYWORD)
-- //else if ((!strcmp (attr->name, "ppd-natural-language") && attr->value_tag == IPP_TAG_LANGUAGE) ||
-- // (!strcmp (attr->name, "ppd-make-and-model") && attr->value_tag == IPP_TAG_TEXT) ||
-- // (!strcmp (attr->name, "ppd-make") && attr->value_tag == IPP_TAG_TEXT) ||
-- // (!strcmp (attr->name, "ppd-device-id") && attr->value_tag == IPP_TAG_TEXT))
-+ else if (ippGetValueTag( attr ) == IPP_TAG_TEXT || ippGetValueTag( attr ) == IPP_TAG_NAME || ippGetValueTag( attr ) == IPP_TAG_KEYWORD)
-+ //else if ((!strcmp (ippGetName( attr ), "ppd-natural-language") && ippGetValueTag( attr ) == IPP_TAG_LANGUAGE) ||
-+ // (!strcmp (ippGetName( attr ), "ppd-make-and-model") && ippGetValueTag( attr ) == IPP_TAG_TEXT) ||
-+ // (!strcmp (ippGetName( attr ), "ppd-make") && ippGetValueTag( attr ) == IPP_TAG_TEXT) ||
-+ // (!strcmp (ippGetName( attr ), "ppd-device-id") && ippGetValueTag( attr ) == IPP_TAG_TEXT))
- {
-- val = PyObj_from_UTF8(attr->values[0].string.text);
-+ val = PyObj_from_UTF8(ippGetString( attr, 0, NULL ));
- }
-
- if (val)
- {
-- PyDict_SetItemString (dict, attr->name, val);
-+ PyDict_SetItemString (dict, ippGetName( attr ), val);
- Py_DECREF (val);
- }
- }
-diff -up hplip-3.12.6/scan/sane/hpaio.c.ipp_accessors hplip-3.12.6/scan/sane/hpaio.c
---- hplip-3.12.6/scan/sane/hpaio.c.ipp_accessors 2012-06-18 12:42:51.000000000 +0200
-+++ hplip-3.12.6/scan/sane/hpaio.c 2012-07-19 17:12:34.557848760 +0200
-@@ -47,6 +47,43 @@
- #define DEBUG_DECLARE_ONLY
- #include "sanei_debug.h"
-
-+#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
-+#define HAVE_CUPS_1_6 1
-+#endif
-+
-+#ifndef HAVE_CUPS_1_6
-+#define ippGetGroupTag(attr) attr->group_tag
-+#define ippGetValueTag(attr) attr->value_tag
-+#define ippGetName(attr) attr->name
-+#define ippGetString(attr, element, language) attr->values[element].string.text
-+
-+static ipp_attribute_t * ippFirstAttribute( ipp_t *ipp )
-+{
-+ if (!ipp)
-+ return (NULL);
-+ return (ipp->current = ipp->attrs);
-+}
-+
-+static ipp_attribute_t * ippNextAttribute( ipp_t *ipp )
-+{
-+ if (!ipp || !ipp->current)
-+ return (NULL);
-+ return (ipp->current = ipp->current->next);
-+}
-+
-+static int ippSetOperation( ipp_t *ipp, ipp_op_t op )
-+{
-+ ipp->request.op.operation_id = op;
-+ return (1);
-+}
-+
-+static int ippSetRequestId( ipp_t *ipp, int request_id )
-+{
-+ ipp->request.any.request_id = request_id;
-+ return (1);
-+}
-+#endif
-+
- static SANE_Device **DeviceList = NULL;
-
- static int AddDeviceList(char *uri, char *model, SANE_Device ***pd)
-@@ -186,8 +223,8 @@ static int GetCupsPrinters(char ***print
- /* Assemble the IPP request */
- request = ippNew();
-
-- request->request.op.operation_id = CUPS_GET_PRINTERS;
-- request->request.any.request_id = 1;
-+ ippSetOperation( request, CUPS_GET_PRINTERS );
-+ ippSetRequestId( request, 1 );
-
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, "utf-8");
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_LANGUAGE, "attributes-natural-language", NULL, "en");
-@@ -197,20 +234,20 @@ static int GetCupsPrinters(char ***print
- if ((response = cupsDoRequest(http, request, "/")) == NULL)
- goto bugout;
-
-- for (attr = response->attrs; attr != NULL; attr = attr->next)
-+ for (attr = ippFirstAttribute ( response ); attr != NULL; attr = ippNextAttribute( response ))
- {
- /* Skip leading attributes until we hit a printer. */
-- while (attr != NULL && attr->group_tag != IPP_TAG_PRINTER)
-- attr = attr->next;
-+ while (attr != NULL && ippGetGroupTag( attr ) != IPP_TAG_PRINTER)
-+ attr = ippNextAttribute( response );
-
- if (attr == NULL)
- break;
-
-- while (attr != NULL && attr->group_tag == IPP_TAG_PRINTER)
-+ while (attr != NULL && ippGetGroupTag( attr ) == IPP_TAG_PRINTER)
- {
-- if (strcmp(attr->name, "device-uri") == 0 && attr->value_tag == IPP_TAG_URI && AddCupsList(attr->values[0].string.text, printer) == 0)
-+ if (strcmp(ippGetName( attr ), "device-uri") == 0 && ippGetValueTag( attr ) == IPP_TAG_URI && AddCupsList(ippGetString( attr, 0, NULL ), printer) == 0)
- cnt++;
-- attr = attr->next;
-+ attr = ippNextAttribute( response );
- }
-
- if (attr == NULL)
diff --git a/libre/hplip-libre/disable_upgrade.patch b/libre/hplip-libre/disable_upgrade.patch
deleted file mode 100644
index 600d6ccc7..000000000
--- a/libre/hplip-libre/disable_upgrade.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- upgrade.py.orig 2013-10-31 12:46:54.000000000 +0100
-+++ upgrade.py 2013-12-04 14:58:03.000000000 +0100
-@@ -134,6 +134,11 @@ except getopt.GetoptError, e:
- if os.getenv("HPLIP_DEBUG"):
- log.set_level('debug')
-
-+
-+log.error("HPLIP upgrade is disabled by Parabola for security reasons, see https://bugs.archlinux.org/task/38083 - if you like to upgrade HPLIP, use the Parabola software package manager pacman.")
-+clean_exit(1)
-+
-+
- for o, a in opts:
- if o in ('-h', '--help'):
- usage()
diff --git a/libre/hplip-libre/hp-mkuri.patch b/libre/hplip-libre/hp-mkuri.patch
deleted file mode 100644
index 518e7608f..000000000
--- a/libre/hplip-libre/hp-mkuri.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- io/hpmud/hp-mkuri.c.orig 2013-03-17 09:15:15.360624061 -0400
-+++ io/hpmud/hp-mkuri.c 2013-03-17 09:15:30.924316847 -0400
-@@ -266,7 +266,7 @@
-
- /* Bypass glib build dependencies by loading libnotify manually. */
-
-- if ((handle = load_library("libnotify.so.1")) == NULL)
-+ if ((handle = load_library("libnotify.so.4")) == NULL)
- {
- BUG("failed to open libnotify: %m\n");
- goto bugout;
diff --git a/libre/hplip-libre/hplip-CVE-2013-4325.patch b/libre/hplip-libre/hplip-CVE-2013-4325.patch
deleted file mode 100644
index 85bff893b..000000000
--- a/libre/hplip-libre/hplip-CVE-2013-4325.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -up hplip-3.13.7/base/pkit.py.CVE-2013-4325 hplip-3.13.7/base/pkit.py
---- hplip-3.13.7/base/pkit.py.CVE-2013-4325 2013-07-23 06:18:29.000000000 +0100
-+++ hplip-3.13.7/base/pkit.py 2013-09-11 10:54:13.252419283 +0100
-@@ -176,15 +176,10 @@ class PolicyKitService(dbus.service.Obje
- "/org/freedesktop/PolicyKit1/Authority",
- "org.freedesktop.PolicyKit1.Authority")
- policy_kit = dbus.Interface(obj, "org.freedesktop.PolicyKit1.Authority")
-- info = dbus.Interface(connection.get_object("org.freedesktop.DBus",
-- "/org/freedesktop/DBus/Bus",
-- False),
-- "org.freedesktop.DBus")
-- pid = info.GetConnectionUnixProcessID(sender)
-
- subject = (
-- 'unix-process',
-- { 'pid' : dbus.UInt32(pid, variant_level = 1) }
-+ 'system-bus-name',
-+ { 'name' : dbus.String(sender, variant_level = 1) }
- )
- details = { '' : '' }
- flags = dbus.UInt32(1) # AllowUserInteraction = 0x00000001
-
diff --git a/libre/hplip-libre/hplip.install b/libre/hplip-libre/hplip.install
deleted file mode 100644
index 74532cde3..000000000
--- a/libre/hplip-libre/hplip.install
+++ /dev/null
@@ -1,18 +0,0 @@
-post_install() {
- cat << EOF
-
-NOTE
-----
-# If you want to use this driver with sane:
-# echo "hpaio" >> /etc/sane.d/dll.conf
-
-EOF
-}
-
-post_upgrade() {
- if [ "`vercmp $2 3.12.4-2`" -lt 0 ]; then
- # important upgrade notice
- echo "> Please remove your printer in cups, then add it"
- echo "> back and reconfigure it to make it work again!"
- fi
-}
diff --git a/libre/hplip-libre/hplip_typo.patch b/libre/hplip-libre/hplip_typo.patch
deleted file mode 100644
index 8d22f51ea..000000000
--- a/libre/hplip-libre/hplip_typo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- config_usb_printer.py 2013-05-19 02:23:17.506716304 +0300
-+++ config_usb_printer.py.new 2013-05-19 02:23:30.140049848 +0300
-@@ -257,7 +257,7 @@
- # ******************************* RUNNING FIRMWARE DOWNLOAD TO DEVICE FOR SUPPORTED PRINTER'S
- fw_download_req = mq.get('fw-download', False)
- if fw_download_req:
-- fw_cmd = utlis.which('hp-firmware', True)
-+ fw_cmd = utils.which('hp-firmware', True)
- if fw_cmd:
- fw_cmd += " -y3 -s %s"%param
- log.debug(fw_cmd)