[arch-commits] Commit in deepin-movie/trunk (4 files)

Felix Yan felixonmars at archlinux.org
Sat Dec 10 07:07:24 UTC 2016


    Date: Saturday, December 10, 2016 @ 07:07:24
  Author: felixonmars
Revision: 198686

upgpkg: deepin-movie 1:2.2.10-1

Added:
  deepin-movie/trunk/ctypes.patch
  deepin-movie/trunk/xcffib.patch
Modified:
  deepin-movie/trunk/PKGBUILD
Deleted:
  deepin-movie/trunk/pyqt5.6.patch

---------------+
 PKGBUILD      |   24 ++++++++++++------------
 ctypes.patch  |   38 ++++++++++++++++++++++++++++++++++++++
 pyqt5.6.patch |   12 ------------
 xcffib.patch  |   43 +++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 93 insertions(+), 24 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2016-12-10 07:04:13 UTC (rev 198685)
+++ PKGBUILD	2016-12-10 07:07:24 UTC (rev 198686)
@@ -2,23 +2,22 @@
 # Maintainer: Felix Yan <felixonmars at archlinux.org>
 
 pkgname=deepin-movie
-pkgver=2.3.0.20160214
-_commit=197d817a39101836a38ad22bffad60a1b3937959
+epoch=1
+pkgver=2.2.10
 pkgrel=1
 pkgdesc='Movie player based on QtAV'
 arch=('any')
-url="https://gitcafe.com/Deepin/deepin-movie"
+url="https://github.com/linuxdeepin/deepin-movie"
 license=('GPL3')
-depends=('python2-pyqt5' 'qtav' 'mediainfo' 'deepin-menu' 'python2-dbus'
-         'python2-peewee' 'python2-pillow' 'python2-magic' 'python2-bottle'
-         'deepin-qml-widgets' 'python2-xpybutil' 'python2-deepin-utils'
-         'python2-requests' 'dleyna-renderer' 'deepin-dbus-factory')
+depends=('python2-ass' 'python2-pyqt5' 'qtav' 'mediainfo' 'deepin-menu' 'python2-dbus'
+         'python2-peewee' 'python2-magic' 'deepin-qml-widgets' 'python2-xpybutil')
 makedepends=('deepin-gettext-tools' 'git')
 groups=('deepin-extra')
-source=("git+https://github.com/linuxdeepin/deepin-movie.git#commit=$_commit"
-        pyqt5.6.patch)
+source=("git+https://github.com/linuxdeepin/deepin-movie.git#tag=$pkgver"
+        ctypes.patch xcffib.patch)
 sha256sums=('SKIP'
-            '9e0c61503f46ebba7dd24917e84a1248e9f339a82bcca3091a02be7ed5ceb8aa')
+            '0427345ba7da2460795b992e566daa0f5be234f4c66dac6e73b64ade17ed1eb7'
+            '612699576290d30e3687995e76aa75b8559afd697d3bf8b8d8c858633a38eac5')
 
 prepare() {
   cd deepin-movie
@@ -26,7 +25,8 @@
   # fix python version
   find -iname "*.py" | xargs sed -i 's=\(^#! */usr/bin.*\)python *$=\1python2='
 
-  patch -p1 -i ../pyqt5.6.patch
+  patch -p1 -i ../ctypes.patch
+  patch -p1 -i ../xcffib.patch
 }
 
 build() {
@@ -39,5 +39,5 @@
   cd deepin-movie
   make DESTDIR="${pkgdir}" PREFIX="/usr" install
 
-  chmod 0755 "$pkgdir"/usr/share/deepin-movie/main.py "$pkgdir"/usr/bin/host_service.py
+  chmod 0755 "$pkgdir"/usr/share/deepin-movie/main.py
 }

Added: ctypes.patch
===================================================================
--- ctypes.patch	                        (rev 0)
+++ ctypes.patch	2016-12-10 07:07:24 UTC (rev 198686)
@@ -0,0 +1,38 @@
+From 8451ef5e2937e1ef4cc9f67145c982773310b3de Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars at archlinux.org>
+Date: Sun, 11 Oct 2015 20:37:29 +0800
+Subject: [PATCH] Fix a ctypes-related crash on Arch
+
+"Python integers and Python longs are passed as the platforms default C
+int type, their value is masked to fit into the C type." So when they
+are big enough a segfault will occur.
+
+Many thanks to lilydjwg.
+
+Change-Id: I2472ed375bf183c39267ea4f2aca5ff09dcea8cd
+---
+ src/utils/font_utils.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/utils/font_utils.py b/src/utils/font_utils.py
+index c13eb21..36d85fa 100644
+--- a/src/utils/font_utils.py
++++ b/src/utils/font_utils.py
+@@ -30,7 +30,9 @@
+ 
+ # initialize
+ libfc.FcInit()
++libfc.FcPatternCreate.restype = c_void_p
+ pattern = libfc.FcPatternCreate()
++libfc.FcObjectSetBuild.restype = c_void_p
+ objectSet = libfc.FcObjectSetBuild("family", "familylang",
+                                    "lang", "spacing", None)
+ 
+@@ -86,6 +88,7 @@ def fontsByLocale(locale):
+ 
+     # get all fonts
+     libfc.FcFontList.restype = POINTER(FcFontSet)
++    libfc.FcFontList.argtypes = [c_void_p] * 3
+     libfc.FcLangSetGetLangs.restype = POINTER(FcStrSet)
+     libfc.FcStrListNext.restype = c_char_p
+     libfc.FcPatternFormat.restype = c_char_p

Deleted: pyqt5.6.patch
===================================================================
--- pyqt5.6.patch	2016-12-10 07:04:13 UTC (rev 198685)
+++ pyqt5.6.patch	2016-12-10 07:07:24 UTC (rev 198686)
@@ -1,12 +0,0 @@
-diff --git a/src/views/window.py b/src/views/window.py
-index 3aee43a..0870ed0 100644
---- a/src/views/window.py
-+++ b/src/views/window.py
-@@ -174,7 +174,6 @@ class Window(QQuickView):
-     def setCursorVisible(self, visible):
-         self.setCursor(QCursor(Qt.ArrowCursor if visible else Qt.BlankCursor))
- 
--    @pyqtSlot("QVariant")
-     def focusWindowChangedSlot(self, win):
-         if not win: self.rootObject().hideTransientWindows()
- 

Added: xcffib.patch
===================================================================
--- xcffib.patch	                        (rev 0)
+++ xcffib.patch	2016-12-10 07:07:24 UTC (rev 198686)
@@ -0,0 +1,43 @@
+From 62fd02a727ae6fdfaac3fb2cd18cf36412153a0e Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars at archlinux.org>
+Date: Fri, 18 Sep 2015 14:07:51 +0800
+Subject: [PATCH] add support for xcffib as an alternative to xpyb
+
+xcffib is well maintained and packaged for most Linux distros, and it is
+meant to be mostly a drop-in replacement to xpyb. It would be great if
+xcffib support could be added so we don't need to package the legacy
+xpyb.
+
+I have also filed a pull request for xpybutil to add xcffib support at
+https://github.com/BurntSushi/xpybutil/pull/8
+
+Change-Id: I9491b5383d6df2ee214e804d93903f91484be076
+---
+ src/views/window.py | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/src/views/window.py b/src/views/window.py
+index 18600d0..181d5c0 100644
+--- a/src/views/window.py
++++ b/src/views/window.py
+@@ -24,7 +24,10 @@
+ import json
+ from random import randint
+ 
+-import xcb
++try:
++    from xcb.xproto import PropMode
++except ImportError:
++    from xcffib.xproto import PropMode
+ from xpybutil.icccm import State
+ from xpybutil.ewmh import (c, atom, request_wm_state_checked,
+     request_active_window_checked, revent_checked )
+@@ -118,7 +121,7 @@ def play(self, pathList):
+     def setDeepinWindowShadowHint(self, width):
+         width = str(width)
+         window = self.winId().__int__()
+-        return c.core.ChangeProperty(xcb.xproto.PropMode.Replace, window,
++        return c.core.ChangeProperty(PropMode.Replace, window,
+                                      atom('DEEPIN_WINDOW_SHADOW'),
+                                      atom('STRING'), 8, len(width), width)
+ 



More information about the arch-commits mailing list