Backport a patch from master to drop the python3-pillow dep
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1935838
This commit is contained in:
parent
ee5fe5435e
commit
7dc4a40303
84
13524af2029c2a8a3fb32ef27c39c214d9b5b13c.patch
Normal file
84
13524af2029c2a8a3fb32ef27c39c214d9b5b13c.patch
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
commit 4706031223f6809b40ef7d4c3f14103941621d57
|
||||||
|
Author: Richard Hughes <richard@hughsie.com>
|
||||||
|
Date: Fri Apr 9 15:20:13 2021 +0100
|
||||||
|
|
||||||
|
Write BMP data directly without using PIL
|
||||||
|
|
||||||
|
This allows us to drop a build-time dep.
|
||||||
|
|
||||||
|
diff --git a/po/make-images b/po/make-images
|
||||||
|
index b1097bc2..c3cad9e7 100755
|
||||||
|
--- a/po/make-images
|
||||||
|
+++ b/po/make-images
|
||||||
|
@@ -18,7 +18,6 @@ import gi
|
||||||
|
gi.require_version('Pango', '1.0')
|
||||||
|
gi.require_version('PangoCairo', '1.0')
|
||||||
|
from gi.repository import Pango, PangoCairo
|
||||||
|
-from PIL import Image
|
||||||
|
|
||||||
|
def usage(return_code):
|
||||||
|
""" print usage and exit with the supplied return code """
|
||||||
|
@@ -29,6 +28,32 @@ def usage(return_code):
|
||||||
|
out.write("usage: make-images <label text> <mo file directory> <LINGUAS> <installdir>")
|
||||||
|
sys.exit(return_code)
|
||||||
|
|
||||||
|
+def _cairo_surface_write_to_bmp(img: cairo.ImageSurface) -> bytes:
|
||||||
|
+
|
||||||
|
+ data = bytes(img.get_data())
|
||||||
|
+ return (
|
||||||
|
+ b"BM"
|
||||||
|
+ + struct.pack(
|
||||||
|
+ "<ihhiiiihhiiiiii",
|
||||||
|
+ 54 + len(data), # size of BMP file
|
||||||
|
+ 0, # unused
|
||||||
|
+ 0, # unused
|
||||||
|
+ 54, # pixel array offset
|
||||||
|
+ 40, # DIB header
|
||||||
|
+ img.get_width(), # width
|
||||||
|
+ -img.get_height(), # height (top down)
|
||||||
|
+ 1, # planes
|
||||||
|
+ 32, # BPP
|
||||||
|
+ 0, # no compression
|
||||||
|
+ len(data), # size of the raw bitmap data
|
||||||
|
+ 2835, # 72DPI H
|
||||||
|
+ 2835, # 72DPI V
|
||||||
|
+ 0, # palette
|
||||||
|
+ 0, # all colors are important
|
||||||
|
+ )
|
||||||
|
+ + data
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
class Rasterizer:
|
||||||
|
""" Rasterize some text """
|
||||||
|
|
||||||
|
@@ -140,11 +165,8 @@ class Rasterizer:
|
||||||
|
os.mkdir(d, 0o755)
|
||||||
|
d = os.path.split(filename)[0]
|
||||||
|
make_dir(d)
|
||||||
|
- img.write_to_png(filename)
|
||||||
|
- pimg = Image.open(filename)
|
||||||
|
- img = pimg.copy()
|
||||||
|
- del pimg
|
||||||
|
- img.save(filename)
|
||||||
|
+ with open(filename, "wb") as f:
|
||||||
|
+ f.write(_cairo_surface_write_to_bmp(img))
|
||||||
|
|
||||||
|
for lang in self.languages:
|
||||||
|
#print("lang:\"%s\" string:\"%s\"" % (lang, string))
|
||||||
|
diff --git a/po/test-deps b/po/test-deps
|
||||||
|
index f5276daa..27b4055b 100755
|
||||||
|
--- a/po/test-deps
|
||||||
|
+++ b/po/test-deps
|
||||||
|
@@ -34,12 +34,6 @@ except ValueError:
|
||||||
|
print("Error: missing cairo gobject introspection library")
|
||||||
|
err = 1
|
||||||
|
|
||||||
|
-try:
|
||||||
|
- from PIL import Image
|
||||||
|
-except ImportError:
|
||||||
|
- print("Error: missing dependency python pillow (python3-pil)")
|
||||||
|
- err = 1
|
||||||
|
-
|
||||||
|
try:
|
||||||
|
import cairo
|
||||||
|
except ImportError:
|
11
fwupd.spec
11
fwupd.spec
@ -44,11 +44,14 @@
|
|||||||
Summary: Firmware update daemon
|
Summary: Firmware update daemon
|
||||||
Name: fwupd
|
Name: fwupd
|
||||||
Version: 1.5.5
|
Version: 1.5.5
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: https://github.com/fwupd/fwupd
|
URL: https://github.com/fwupd/fwupd
|
||||||
Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
|
Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
|
||||||
|
|
||||||
|
# backport from upstream
|
||||||
|
Patch0: 13524af2029c2a8a3fb32ef27c39c214d9b5b13c.patch
|
||||||
|
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext
|
||||||
BuildRequires: glib2-devel >= %{glib2_version}
|
BuildRequires: glib2-devel >= %{glib2_version}
|
||||||
BuildRequires: libxmlb-devel >= %{libxmlb_version}
|
BuildRequires: libxmlb-devel >= %{libxmlb_version}
|
||||||
@ -89,7 +92,7 @@ BuildRequires: libqmi-devel >= 1.22.0
|
|||||||
|
|
||||||
%if 0%{?have_uefi}
|
%if 0%{?have_uefi}
|
||||||
BuildRequires: efivar-devel >= 33
|
BuildRequires: efivar-devel >= 33
|
||||||
BuildRequires: python3 python3-cairo python3-gobject python3-pillow
|
BuildRequires: python3 python3-cairo python3-gobject
|
||||||
BuildRequires: pango-devel
|
BuildRequires: pango-devel
|
||||||
BuildRequires: cairo-devel cairo-gobject-devel
|
BuildRequires: cairo-devel cairo-gobject-devel
|
||||||
BuildRequires: freetype
|
BuildRequires: freetype
|
||||||
@ -471,6 +474,10 @@ done
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 12 2021 Richard Hughes <richard@hughsie.com> 1.5.5-3
|
||||||
|
- Backport a patch from master to drop the python3-pillow dep
|
||||||
|
- Resolves: rhbz#1935838
|
||||||
|
|
||||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.5-2
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.5-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user