14
0
forked from pool/python-pyglet

Accepting request 516624 from devel:languages:python

1

OBS-URL: https://build.opensuse.org/request/show/516624
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyglet?expand=0&rev=3
This commit is contained in:
2017-08-17 09:51:25 +00:00
committed by Git OBS Bridge
4 changed files with 110 additions and 30 deletions

View File

@@ -0,0 +1,34 @@
Index: pyglet/window/xlib/__init__.py
===================================================================
--- pyglet/window/xlib/__init__.py.orig
+++ pyglet/window/xlib/__init__.py
@@ -352,6 +352,9 @@ class XlibWindow(BaseWindow):
# Set caption
self.set_caption(self._caption)
+ # Set WM_CLASS for modern desktop environments
+ self.set_wm_class(self._caption)
+
# this is supported by some compositors (ie gnome-shell), and more to come
# see: http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#idp6357888
_NET_WM_BYPASS_COMPOSITOR_HINT_ON = c_ulong(int(self._fullscreen))
@@ -513,6 +516,19 @@ class XlibWindow(BaseWindow):
self._set_text_property('_NET_WM_NAME', caption)
self._set_text_property('_NET_WM_ICON_NAME', caption)
+ def set_wm_class(self, name):
+ # WM_CLASS can only contain Ascii characters
+ try:
+ name = name.encode('ascii')
+ except UnicodeEncodeError:
+ name = "pyglet"
+
+ hints = xlib.XAllocClassHint()
+ hints.contents.res_class = asbytes(name)
+ hints.contents.res_name = asbytes(name.lower())
+ xlib.XSetClassHint(self._x_display, self._window, hints.contents)
+ xlib.XFree(hints)
+
def get_caption(self):
return self._caption

View File

@@ -0,0 +1,13 @@
Index: pyglet/image/codecs/pil.py
===================================================================
--- pyglet/image/codecs/pil.py.orig
+++ pyglet/image/codecs/pil.py
@@ -48,7 +48,7 @@ from pyglet.image.codecs import *
try:
import Image
-except ImportError:
+except (ImportError, ValueError):
from PIL import Image
class PILImageDecoder(ImageDecoder):

View File

@@ -1,3 +1,33 @@
-------------------------------------------------------------------
Sun Aug 13 15:07:20 UTC 2017 - toddrme2178@gmail.com
- Remove obsolete python-imaging dependency
-------------------------------------------------------------------
Tue Aug 8 21:33:53 UTC 2017 - jengelh@inai.de
- Other OS need not be mentioned in description for an openSUSE
package.
-------------------------------------------------------------------
Mon Aug 7 16:33:50 UTC 2017 - toddrme2178@gmail.com
- Further fix shebangs
- Remove pyglet-1.2.4-fix-examples.patch
We will fix shebangs dynamically
-------------------------------------------------------------------
Sun Aug 6 02:32:29 UTC 2017 - toddrme2178@gmail.com
- Implement single-spec version
-------------------------------------------------------------------
Mon Jul 31 21:13:01 UTC 2017 - kkirill@opensuse.org
- Add pyglet-1.2.4-fix-image-import.patch to fix "import Image"
- Add pyglet-1.2.4-add-wmclass.patch to add WMClass
- Add pyglet-1.2.4-fix-examples.patch to fix python shebang
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Sep 3 08:47:16 UTC 2015 - nemysis@openSUSE.org Thu Sep 3 08:47:16 UTC 2015 - nemysis@openSUSE.org

View File

@@ -1,7 +1,7 @@
# #
# spec file for package python-pyglet # spec file for package python-pyglet
# #
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@@ -16,29 +16,31 @@
# #
%define oname pyglet %{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-pyglet Name: python-pyglet
Version: 1.2.4 Version: 1.2.4
Release: 0 Release: 0
Summary: Cross-platform windowing and multimedia library Summary: Windowing and multimedia library
License: BSD-3-Clause License: BSD-3-Clause
Group: Development/Languages/Python Group: Development/Languages/Python
Url: https://bitbucket.org/pyglet/pyglet Url: https://bitbucket.org/pyglet/pyglet
Source0: http://pypi.python.org/packages/source/p/%{oname}/%{oname}-%{version}.tar.gz Source0: https://files.pythonhosted.org/packages/source/p/pyglet/pyglet-%{version}.tar.gz
Source1: %{name}-rpmlintrc Source1: %{name}-rpmlintrc
%if 0%{?suse_version} # PATCH-FIX-OPENSUSE pyglet-1.2.4-fix-image-import.patch -- fix "import Image"
BuildRequires: fdupes Patch0: pyglet-1.2.4-fix-image-import.patch
%endif # PATCH-FEATURE-UPSTREAM pyglet-1.2.4-add-wmclass.patch -- https://bitbucket.org/pyglet/pyglet/issues/92
Patch1: pyglet-1.2.4-add-wmclass.patch
BuildRequires: %{python_module Pillow}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
BuildRequires: alsa-devel BuildRequires: alsa-devel
BuildRequires: dos2unix BuildRequires: dos2unix
BuildRequires: fdupes
BuildRequires: fontconfig-devel BuildRequires: fontconfig-devel
BuildRequires: freetype2-devel BuildRequires: freetype2-devel
BuildRequires: gtk2-devel BuildRequires: gtk2-devel
BuildRequires: openal-soft-devel BuildRequires: openal-soft-devel
BuildRequires: python-devel BuildRequires: python-rpm-macros
BuildRequires: python-imaging
BuildRequires: python-setuptools
BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(x11)
@@ -47,42 +49,43 @@ Requires: fontconfig-devel
Requires: freetype2-devel Requires: freetype2-devel
Requires: gtk2-devel Requires: gtk2-devel
Requires: openal-soft-devel Requires: openal-soft-devel
Requires: python-imaging
Requires: pkgconfig(gl) Requires: pkgconfig(gl)
Requires: pkgconfig(glu) Requires: pkgconfig(glu)
Requires: pkgconfig(x11) Requires: pkgconfig(x11)
BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: python-Pillow
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%else
BuildArch: noarch BuildArch: noarch
%endif %python_subpackages
%description %description
pyglet provides an object-oriented programming pyglet provides an object-oriented programming interface for
interface for developing games and other visually-rich applications developing games and other visually-rich applications.
for Windows, Mac OS X and Linux.
%prep %prep
%setup -q -n %{oname}-%{version} %setup -q -n pyglet-%{version}
%patch0
%patch1
# Convert to unix line end # Convert to unix line end
find -name "*.py" -exec dos2unix "{}" "+" find -name "*.py" -exec dos2unix "{}" "+"
%build %build
python setup.py build %python_build
%install %install
python setup.py install --prefix=%{_prefix} --root=%{buildroot} %python_install
%if 0%{?suse_version} %{python_expand cp -Lr examples examples_%{$python_bin_suffix}
%fdupes -s %{buildroot}%{_prefix} find examples_%{$python_bin_suffix} -name "*.py" -exec sed -i "s|^#!/usr/bin/python$|#!%{__$python}|" {} \;
%endif find examples_%{$python_bin_suffix} -name "*.py" -exec sed -i "s|^#!/usr/bin/env python$|#!%{__$python}|" {} \;
%fdupes examples_%{$python_bin_suffix}
%fdupes %{buildroot}%{$python_sitelib}
}
%files %files %{python_files}
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc CHANGELOG README LICENSE NOTICE RELEASE_NOTES examples %doc CHANGELOG README LICENSE NOTICE RELEASE_NOTES
%{python_sitelib}/%{oname} %doc examples_%{python_bin_suffix}
%{python_sitelib}/%{oname}-%{version}-py%{py_ver}.egg-info %{python_sitelib}/pyglet
%{python_sitelib}/pyglet-%{version}-py*.egg-info
%changelog %changelog