= Deluge.app for OSX = == Manual Steps (Tested on Yosemite VM) == 1. Install XCode 1. Jhbuild install and update Python: {{{ wget https://git.gnome.org/browse/gtk-osx/plain/gtk-osx-build-setup.sh sh gtk-osx-build-setup.sh export PATH=~/.local/bin:~/gtk/inst/bin:$PATH jhbuild build bootstrap jhbuild build python }}} * Uncomment `_gtk_osx_use_jhbuild_python = True` in `.jhbuildrc-custom`. 1. [https://wiki.gnome.org/Projects/GTK+/OSX/Building GTK OSX Build]: {{{ jhbuild build meta-gtk-osx-bootstrap }}} 1. [https://wiki.gnome.org/Projects/GTK+/OSX/Python PyGTK] (Includes `meta-gtk-osx-core`) {{{ jhbuild build libglade jhbuild build meta-gtk-osx-python }}} * A [https://git.gnome.org/browse/pygobject/commit/?h=pygobject-2-28&id=42d01f060c5d764baa881d13c103d68897163a49 pygobject patch] to apply to fix annoying console warnings. 1. GTK OSX Themes: {{{ jhbuild build meta-gtk-osx-themes jhbuild build gtk-quartz-engine }}} * ''Note:'' [https://www.xpra.org/trac/attachment/ticket/533/quartz-style-fix.patch Quartz patch] if build error: `'height' is uninitialized`. 1. [https://wiki.gnome.org/Projects/GTK%2B/OSX/Bundling Bundler] for Packaging Deluge. {{{ wget http://ftp.gnome.org/pub/gnome/sources/gtk-mac-bundler/0.7/gtk-mac-bundler-0.7.4.tar.xz tar xf gtk-mac-bundler-0.7.4.tar.xz cd gtk-mac-bundler-0.7.4 make install }}} 1. Build libtorrent and deps using [https://gist.github.com/cas--/d1df3758d6e794c0ca4e libtorrent.modules]: {{{ wget https://gist.githubusercontent.com/cas--/d1df3758d6e794c0ca4e/raw/libtorrent.modules jhbuild -m libtorrent.modules build meta_libtorrent }}} - OpenSSL will require "Skip Module (2)" when they fail at the end of installing stage as they cannot take advantage of DESTDIR path. - ''Note on OpenSSL Error:'' 'libcrypto is a fat file' is due to mixing arch types (i386, x64) in build process. 1. Install Python [https://pip.pypa.io/en/latest/installing/ pip] and Deluge dependencies: {{{ jhbuild shell wget https://bootstrap.pypa.io/get-pip.py python get-pip.py pip install twisted[tls] chardet mako pyxdg setproctitle pillow py2app }}} * Either uninstall `pillow` or [https://bitbucket.org/ronaldoussoren/macholib/pull-requests/10/ patch `MachOGraph.py`] when encountering error `dyld_find() got an unexpected keyword argument 'loader'`. * Verify whether building as 'wheel' affects packaging. 1. Follow `Build Deluge.app` steps below, will require `setup.cfg` file and `osx` directory from git repo. == Previous Semi-Automated Guide == [[Include(http://git.deluge-torrent.org/deluge/plain/osx/README.rst?h=1.3-stable, text/x-rst)]]