Xpra: Ticket #1306: osx moduleset changes tracker ticket

Tracking the latest changes and recording why / how things work the way they do.

Related to #533 (original moduleset ticket), #840 (64-bit), #641 (osx packaging) Recent osx tickets: #1271 (websocket client changes) Moduleset updates and build errors: #1007 and #544 (misc lib updates), #971 (build failures), r9116, .. Sound changes: #970 (switch to gstreamer 1.x) #1069 (gstreamer 1.6), #1168 (gstreamer 1.8)

Recent changes: r13715, r13714, r13713, r13712, r13711, r13710, r13709, r13708, r13707, r13706, r13705, r13704, r13703, r13702, r13701, r13700, r13699, r13698, r13697, r13696, r13695, r13694, r13693, r13692

Got some errors updating today:


Until we move to a clean 64-bit build env, we need this one to remain stable. (and we'll keep updating this one with minor stuff like ffmpeg and friends after then 1.0 release, and use trunk for the more bleeding edge stuff)

Wed, 14 Sep 2016 19:59:52 GMT - Smo:

There are many changes and I didn't have a chance to test them all. Some will have to be reverted i'm sure and some patches tweaked.

Right now I'm trying to solve the issue why it is ignoring my overriding of moduleset with

moduleset = "http://xpra.org/svn/Xpra/trunk/osx/jhbuild/modulesets-stable/gtk-osx.modules"

No matter what I do it seems to be ignoring it. I can't seem to figure this one out I will continue to try.

in .jhbuildrc-custom

Wed, 14 Sep 2016 21:10:49 GMT - Smo:

libffi should be reverted to old version for 10.5 even left myself warning in there and missed it

<!-- anything higher than this fails on osx 10.5 -->

r13725 reverts this to older version once again

Wed, 14 Sep 2016 21:29:04 GMT - Smo:

pixman had same build error reverting it for now

done in r13728

Wed, 14 Sep 2016 22:28:55 GMT - Smo:

I believe I've discovered another issue. Openssl 1.1 doesn't seem to work properly with Python 2.7.12. Sometimes we can see errors like this

AttributeError: 'module' object has no attribute 'sha1'

because the hashlib module is broken

I am going to try and compile python before I install openssl and use the system openssl but this is probably not a good fix.

Wed, 14 Sep 2016 22:34:46 GMT - Smo:

r13729 removes the patch that is not needed for gtk+

Wed, 14 Sep 2016 23:10:36 GMT - Smo:

I've built python before doing openssl which seems to fix the issue for now. Not sure if python is built with openssl support or not at this point.

Maybe it never did build with openssl support in the first place?

Wed, 14 Sep 2016 23:49:18 GMT - Smo:

new glib doesn't build on old system with this error

checking OSX version >= 10.9.0... no
configure: error: OSX version is too old!

Will have to revert this change as well

Wed, 14 Sep 2016 23:51:58 GMT - Smo:

glib reverted to 2.44.1 in r13730

Thu, 15 Sep 2016 00:57:41 GMT - Smo:

problem with gobject-introspection

configure: error: Package requirements (glib-2.0 >= 2.48.0) were not met:
Requested 'glib-2.0 >= 2.48.0' but version of GLib is 2.44.1

Thu, 15 Sep 2016 01:51:59 GMT - Smo:

r13732 reverts gobject-introspection and all associated packages

Thu, 15 Sep 2016 02:30:04 GMT - Antoine Martin:

The python 2.7.x vs openssl 1.1 issue is tracked here: patch which we may be able to use until python 2.7.13 comes out.

Thu, 15 Sep 2016 06:12:46 GMT - Smo:

Everything builds once again for me.

*** success *** [119/119]

Still might be some issues with patches but these are probably from sources that redirect to https.

The process was something like this

jhbuild bootstrap
jhbuild build python
jhbuild build perl
jhbuild -m ~/Source/jhbuild/modulesets/bootstrap.modules build perl-xml-simple --force
jhbuild build curl
export SSL_CERT_FILE="$HOME/gtk/inst/etc/ssl/cacert.pem"
curl -o ${SSL_CERT_FILE} -k https://curl.haxx.se/ca/cacert.pem
add to .jhbuildrc-custom so curl works for downloads
os.environ["SSL_CERT_FILE"] = "/Users/osx/gtk/inst/etc/ssl/cacert.pem"
jhbuild build

On older systems here where we can't update jhbuild anymore we probably need to overwrite ~/Sources/jhbuild/modulesets/bootstrap.modules with the one we have.

An update would do this normally its the only file you can't override in .jhbuildrc-custom

Maybe it would be simpler to hold on off new openssl for a bit is there some reason we need the latest?

Thu, 15 Sep 2016 06:21:13 GMT - Antoine Martin:

Links to changesets: r13725 (libffi downgrade), r13726 (syntax typo), r13727 (removed python patch), r13728 (pixman revert), r13729 (gtk patch removed), r13730 (glib revert), r13731 (patch no longer applies?), r13732 (revert gobject-introspection)

Looks like comment:12 needs editing, shouldn't it be "jhbuild build python"?

We can go with openssl 1.0.2 until python 2.7.13 comes out.

Tue, 20 Sep 2016 19:38:10 GMT - Smo:

r13786 changes openssl back to 1.0.2h until new python comes out.

Probably change this in the next release.

Going to do a full rebuild to make sure all is well then close this ticket.

Wed, 21 Sep 2016 18:09:25 GMT - Smo:

Full rebuild worked no problem now I need to get pkg and dmg out to testing to see how it works.

Thu, 22 Sep 2016 23:11:11 GMT - Smo:

r13828 adds patch for bomutils to fix the prefix it installs to

Thu, 22 Sep 2016 23:44:26 GMT - Smo:

Here are some changes beteween the stable-moduleset we use and the one from gtk-osx project

Some of these I don't remember so I will have to look into them. Others are because our build host is osx 10.5.x

xpra version gtk-osx version reason

Fri, 23 Sep 2016 04:00:39 GMT - Antoine Martin: priority changed

Please bump openssl: OpenSSL Fixes Over a Dozen Exploits, Including a High-Severity Vulnerability

Sat, 24 Sep 2016 06:15:36 GMT - Antoine Martin:

Saw the openssl update: r13851 + r13852, added cryptography 1.5.1 in r13853.

For reference, I wanted up update and found some failures:

*** the following modules were not built *** [119/119]
pycairo-python2.6 pygtk gtk-mac-integration-python meta-gtk-osx-python

Why does it even try to build pycairo-python2.6?? It also rebuilt a lot of things I didn't think needed doing. Could this have been caused by a transient network failure to download our modules overrides? I've switched to https for the base moduleset URL since, and the problem seems to have gone away.

Mon, 26 Sep 2016 08:32:06 GMT - Antoine Martin:

BTW, why are we still on 2.4.30? I see this bug has been fixed and looks relevant: improved fullscreen behaviouur: The attached patch improves the behaviour of fullscreen windows on El Capitan and perhaps other somewhat recent versions of OS X.

Mon, 26 Sep 2016 16:32:51 GMT - Antoine Martin:

And again: openssl critical bug.

Wed, 12 Oct 2016 00:07:51 GMT - Smo:

openssl updated in r14112 disabled libyuv building for libvpx in r14113 build libvpx 1.6.0 again for ffmpeg in r14114

Wed, 12 Oct 2016 03:30:31 GMT - Antoine Martin:

Mon, 26 Dec 2016 09:19:31 GMT - Antoine Martin: status changed; resolution set

Milestone complete.

Fri, 17 Aug 2018 06:45:45 GMT - Antoine Martin:

For 2.4 see #1787

Sat, 23 Jan 2021 05:20:39 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1306