diff options
Diffstat (limited to 'README.rst')
-rw-r--r-- | README.rst | 132 |
1 files changed, 0 insertions, 132 deletions
diff --git a/README.rst b/README.rst deleted file mode 100644 index 734d82b..0000000 --- a/README.rst +++ /dev/null @@ -1,132 +0,0 @@ -Bundler -+++++++ - -This application is intended to create bundles for the platform in which its being run. This should eventually become the main tool in order to create reproducible builds. - -How to use -++++++++++ - -NOTE: Most of this will be done automatically in a while, but this is how it's done now. - -- Install Xcode and command line tools (OSX only) -- Create a new virtualenv - -:: - mkvirtualenv bundle - -- Install bundler deps (OSX or Linux) - -:: - pip install -r pkg/requirements.pip - -- Install bundler deps (Windows) - -:: - pip install pbs # There's no sh in Windows - pip install modulegraph altgraph - -- Install the needed dependencies - -:: - # Linux - aptitude install libsqlite3-dev - - # In Windows you'll need sqlite3 in your path - -- psutils is a dependency for another dependency, it might get installed in a zip form, which we don't want, so we install it by hand for now - -:: - pip install psutil - -- We need a slightly different python-gnupg, so clone from a different repo - -:: - git clone https://github.com/chiiph/python-gnupg - cd python-gnupg/ - git checkout develop - git pull origin develop - python setup.py develop - -- Same thing with protobuf.socketrpc - -:: - git clone https://github.com/chiiph/protobuf-socket-rpc - cd protobuf-socket-rpc - python setup.py easy_install -Z . - -- Install Qt 4.8 in whatever way you prefer. - -- Build PySide: - -:: - git clone git://gitorious.org/pyside/apiextractor.git - git clone git://gitorious.org/pyside/generatorrunner.git - git clone git://gitorious.org/pyside/shiboken.git - git clone git://gitorious.org/pyside/pyside.git - git clone git://gitorious.org/pyside/pyside-tools.git - - # OSX - export PYSIDESANDBOXPATH=$HOME/Code/pyside/sandbox - export DYLD_LIBRARY_PATH=$PYSIDESANDBOXPATH/lib:$DYLD_LIBRARY_PATH - - # Linux - export PYSIDESANDBOXPATH=$HOME/sandbox - export LD_LIBRARY_PATH=$PYSIDESANDBOXPATH/lib:$LD_LIBRARY_PATH - - export PATH=$PYSIDESANDBOXPATH/bin:$PATH - export PYTHONPATH=$PYSIDESANDBOXPATH/lib/python2.6/site-packages:$PYTHONPATH - export PKG_CONFIG_PATH=$PYSIDESANDBOXPATH/lib/pkgconfig:$PKG_CONFIG_PATH - - alias runcmake='cmake .. -DCMAKE_INSTALL_PREFIX=$PYSIDESANDBOXPATH' - - # In OSX, the paths may vary depending on the Qt installation - runcmake -DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk .. -DQT_QMAKE_EXECUTABLE=/usr/local/bin/qmake -DQT_INCLUDE_DIR=/usr/local/include/ -DQT_INCLUDES=/usr/local/include/ -DALTERNATIVE_QT_INCLUDE_DIR=/usr/local/include/ - # In Linux - runcmake .. - - make install - - # Make them available from the virtualenv - ln -s $PYSIDESANDBOXPATH/lib/python2.7/site-packages/PySide $VIRTUAL_ENV/lib/python2.7/site-packages/PySide - ln -s $PYSIDESANDBOXPATH/lib/python2.7/site-packages/pysideuic $VIRTUAL_ENV/lib/python2.7/site-packages/pysideuic - -- Create a paths file: The problem is that inside a virtualenv we don't have access to the real distutils, so we'll need to look for it on the "original" (i.e. non-virtualenv) paths for python. - -:: - python bundler/create_paths.py <paths file> - -- Collect the binaries. We aren't building everything yet, so you'll need to collect the following files: - -:: - # OSX - Bitmask <-- this is the bitmask_launcher - Python - QtCore - QtGui - cocoasudo - gpg - libboost_filesystem.dylib - libboost_python.dylib - libboost_system.dylib - libpng15.15.dylib - libpyside-python2.7.1.2.dylib - libshiboken-python2.7.1.2.dylib - openvpn.files - openvpn.leap - qt_menu.nib - tuntap-installer.app - -- (Optional) Seed a configuration: You might want to create a bundle with a specific configuration pinned providers. - -- Create the bundle: - -:: - # On OSX and Linux - python bundler/main.py --workon <path/to/bundle/temp> --paths-file <paths file> --binaries <binaries dir> --seeded-config <seeded config> [--nightly] --do gitclone pythonsetup - python bundler/main.py --workon <path/to/bundle/temp> --paths-file <paths file> --binaries <binaries dir> --seeded-config <seeded config> [--nightly] --skip gitclone pythonsetup - - # On Windows - python bundler/main.py --workon <path/to/bundle/temp> --paths-file <paths file> --binaries <binaries dir> --seeded-config <seeded config> [--nightly] --do gitclone - # Modify bitmask_client/pkg/requirements.pip, comment out python-daemon - python bundler/main.py --workon <path/to/bundle/temp> --paths-file <paths file> --binaries <binaries dir> --seeded-config <seeded config> [--nightly] --do pythonsetup - python bundler/main.py --workon <path/to/bundle/temp> --paths-file <paths file> --binaries <binaries dir> --seeded-config <seeded config> [--nightly] --skip gitclone pythonsetup |