Bug 205864

Summary: x11/xpra: Update to 1.0
Product: Ports & Packages Reporter: Zane C. Bowers-Hadley <vvelox>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Many People CC: arrowd, koobs, lme, miwi, pi
Priority: --- Keywords: needs-patch, needs-qa, patch
Version: LatestFlags: bugzilla: maintainer-feedback? (rezny)
Hardware: Any   
OS: Any   
Bug Depends on: 205472    
Bug Blocks:    
Description Flags
shar with diffs for xpra
single file diff for it all
update x11/xpra to 0.16.3
rezny: maintainer-approval+
pi: maintainer-approval?
update x11/xpra to 1.0.2
update x11/xpra to 1.0.2 none

Description Zane C. Bowers-Hadley 2016-01-04 08:47:02 UTC
Created attachment 165037 [details]
shar with diffs for xpra

Update from 0.15.10 to 0.16.0.


The two patches below need removed as well.

Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2016-01-04 12:52:25 UTC
@Zane, we'll need a single unified diff against the port head for this too :) It should/will include the patch file deletions as well.
Comment 2 Zane C. Bowers-Hadley 2016-01-04 15:06:39 UTC
Created attachment 165060 [details]
single file diff for it all
Comment 3 Matthew Rezny freebsd_committer 2016-01-04 15:07:56 UTC
Thank you for taking the effort to do an update. However, I have also been preparing an update to 0.16.0 which is almost ready. There is just one outstanding question to python team that I've been been trying to get answered to be sure gstreamer1 bits are correct. I am well aware of the patches that are no longer needed since I am the one who sent those upstream.

Updates should always be supplied as patches. Shar should never be used for a patch because I can't neither read it properly in bugzilla nor on my machine (I'm not about to execute a random shell script to extract a patch). I did take a glance at the shar in bugzilla, messy as that is, to see that the change from gstreamer 0.10 to 1.x is not handled in your patch.
Comment 4 Zane C. Bowers-Hadley 2016-01-04 15:45:25 UTC
(In reply to matthew from comment #3)


Also just found the one I submitted is not ready. Just noticed I did not restart the server prior to reconnecting to it from another machine. Poking around it now is showing the issue below.

xpra main error:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/xpra/scripts/main.py", line 124, in main
    return run_mode(script_file, err, options, args, mode, defaults)
  File "/usr/local/lib/python2.7/site-packages/xpra/scripts/main.py", line 894, in run_mode
    configure_logging(options, mode)
  File "/usr/local/lib/python2.7/site-packages/xpra/scripts/main.py", line 844, in configure_logging
    enable_color(to, LOG_FORMAT)
  File "/usr/local/lib/python2.7/site-packages/xpra/log.py", line 120, in enable_color
    from xpra.colorstreamhandler import ColorStreamHandler
ImportError: No module named colorstreamhandler
Comment 5 Matthew Rezny freebsd_committer 2016-04-23 17:13:14 UTC
Created attachment 169605 [details]
update x11/xpra to 0.16.3

There's been an outstanding issue with 0.16.x that prevented a port update; numpy fails due to wrong libgcc_s.so being loaded, so there is no scaling or color space conversion and thus most of the efficient video codecs are unavailable. This problem can be worked around by running xpra with LD_PRELOAD=/usr/local/lib/gcc48/libgcc_s.so although that is inconvenient.

xpra 0.17 is one the way, so I'm attaching the patch for 0.16.3, the last of that branch, in case anyone has a use for it. In addition to the above caveat, the patch from PR 205472 is needed until that is committed. At least sound forwarding works better with the newer gstreamer.
Comment 6 Zane C. Bowers-Hadley 2016-04-26 15:40:34 UTC
Joy. Interesting. The same goatse'ing numpy bug is also borking some gnuradio stuff as well.
Comment 7 Zane C. Bowers-Hadley 2016-04-28 17:47:23 UTC
(In reply to matthew from comment #5)

Hmm... USES requires adding fortran to it. This causes it to use GCC properly, as seen with the recent comms/gr-osmosdr update with the same issue with numpy.
Comment 8 Matthew Rezny freebsd_committer 2016-05-10 09:49:11 UTC
Hhmmm... Where should USES=fortran be added to resolve the issue?

xpra doesn't actually use numpy, it is PyOpenGL and pyOpenGL-accelerate that do. Of those, only the latter uses cython, so the former should be unaffected. Nonetheless, I tried adding USES=fortran to all three and rebuilding, but alas, there are still errors when running xpra without the LD_PRELOAD.
Comment 9 Zane C. Bowers-Hadley 2016-05-11 14:12:11 UTC
-USES=           desktop-file-utils pkgconfig python shared-mime-info tar:xz
+USES=           desktop-file-utils pkgconfig python shared-mime-info tar:xz fortran

Is how that should work, but I am still seeing some issues with that... the package works though...

2016-05-11 09:07:39,308 Xpra gtk2 client version 0.16.3-r12205
2016-05-11 09:07:39,308  running on FreeBSD
2016-05-11 09:07:40,125 GStreamer version 1.8 for Python 2.7
2016-05-11 09:07:40,147 Error importing swscale colorspace conversion (csc_swscale)
2016-05-11 09:07:40,147  /lib/libgcc_s.so.1: version GCC_4.6.0 required by /usr/local/lib/gcc48/libgfortran.so.3 not found
2016-05-11 09:07:40,151 Error importing cython colorspace conversion (csc_cython)
2016-05-11 09:07:40,151  /lib/libgcc_s.so.1: version GCC_4.6.0 required by /usr/local/lib/gcc48/libgfortran.so.3 not found
2016-05-11 09:07:40,711 Warning: version mismatch between PyOpenGL and PyOpenGL-accelerate
2016-05-11 09:07:40,711  this may cause crashes
2016-05-11 09:07:40,826 PyOpenGL warning: Incompatible version of OpenGL_accelerate found, need at least (3, 1, 0) found (3, 0, 1)
2016-05-11 09:07:40,826 PyOpenGL warning: Old version of OpenGL_accelerate
2016-05-11 09:07:40,833 OpenGL enabled with GeForce GTS 450/PCIe/SSE2
2016-05-11 09:07:42,971 failed to instantiate the dbus notification handler:
2016-05-11 09:07:42,971  you may need to start a notification service for 'org.freedesktop.Notifications'
2016-05-11 09:07:42,971  disable notifications to avoid this warning
2016-05-11 09:07:43,061  detected keyboard: rules=base, model=pc105, layout=us
2016-05-11 09:07:43,064  desktop size is 3840x1080 with 1 screen:
2016-05-11 09:07:43,064   :0.0 (1027x292 mm - DPI: 94x93)
2016-05-11 09:07:43,064     DVI-I-0 1920x1080 (510x287 mm - DPI: 95x95)
2016-05-11 09:07:43,064     DVI-I-1 1920x1080 at 1920x0 (510x287 mm - DPI: 95x95)
2016-05-11 09:07:43,561 enabled fast mmap transfers using 256MB shared memory area
2016-05-11 09:07:43,562 Xpra X11 server version 0.16.3-r12205
2016-05-11 09:07:43,562  running on FreeBSD
2016-05-11 09:07:44,049 Attached to :1 (press Control-C to detach)

I get that, but it does not appear to affect it though.
Comment 10 Matthew Rezny freebsd_committer 2016-05-14 07:44:46 UTC
It does work with those failures, but not fully. Take a look at the available encodings and notice that you only have raw+lz4. Without colorspace conversion, you cannot use x264, vp8/9, etc. This is a major regression of functionality.

Also, notice the mismatched versions of PyOpenGL and PyOpenGL-accelerate in your environment. Those ports finally got updated, but the first commit was incorrect and broke PyOpenGL-accelerate, so you should make sure your ports tree is up to date and rebuild that one.
Comment 11 Gleb Popov freebsd_committer 2017-01-28 13:05:31 UTC
What's the current status of this?
Comment 12 Kurt Jaeger freebsd_committer 2017-01-28 13:51:41 UTC
someone needs to update the patch to the 1.0 release.
Comment 13 Kurt Jaeger freebsd_committer 2017-01-28 19:31:20 UTC
Created attachment 179381 [details]

Testbuilds on 12a, 11a, 10i are OK. No run-tests done. Can someone test ?
Comment 14 Kurt Jaeger freebsd_committer 2017-01-28 19:31:38 UTC
Changes: https://www.xpra.org/trac/wiki/News
Comment 15 Matthew Rezny freebsd_committer 2017-02-07 02:49:15 UTC
(In reply to Kurt Jaeger from comment #13)

Your 1.0 patch neglects the migration from gstreamer 0.10 to gstreamer 1.x, new dependencies, and the optional files in pkg-plist. While I had neglected to prepare a patch for 0.17.x, this has spurred me to work on an update to 1.0.x. I am currently testing 1.0.2 which is working as well as 0.16.3 was with the same caveats; primarily, the issue with libgfortran.so (required for numpy) causes all the colorspace conversion algorithms to fail and thus none of video encoding options to work unless both client and server are started with LD_PRELOAD of libgcc_s.so from ports.
Comment 16 Matthew Rezny freebsd_committer 2017-02-07 13:43:20 UTC
Created attachment 179707 [details]
update x11/xpra to 1.0.2

Current work in progress is attached for those who wish to test.
Comment 17 Matthew Rezny freebsd_committer 2017-02-11 07:06:12 UTC
Created attachment 179867 [details]
update x11/xpra to 1.0.2

I have devised a work-around for the issue with libgfortran; preload the correct library by modifying the python scripts to load the libgcc_s.so from ports before anything else. This should now be good to go and I will update the port soon.
Comment 18 commit-hook freebsd_committer 2017-02-12 14:28:02 UTC
A commit references this bug:

Author: rezny
Date: Sun Feb 12 14:27:50 UTC 2017
New revision: 433949
URL: https://svnweb.freebsd.org/changeset/ports/433949

  Update to 1.0.2

  PR:		205864
  Approved by:	swills (mentor)
  Differential Revision:	https://reviews.freebsd.org/D9546

Comment 19 Martin Wilke freebsd_committer 2017-02-18 13:04:05 UTC
Comitted in rev 433949