diff --git a/README.rst b/README.rst index d7ef3d6..234c87c 100644 --- a/README.rst +++ b/README.rst @@ -5,23 +5,8 @@ Podium ====== -.. image:: https://img.shields.io/pypi/pyversions/podium.svg - :target: https://pypi.python.org/pypi/podium - -.. image:: https://img.shields.io/pypi/v/podium.svg - :target: https://pypi.python.org/pypi/podium - -.. image:: https://img.shields.io/pypi/status/podium.svg - :target: https://pypi.python.org/pypi/podium - -.. image:: https://img.shields.io/pypi/l/podium.svg - :target: https://github.com/beeware/podium/blob/master/LICENSE - -.. image:: https://travis-ci.org/beeware/podium.svg?branch=master - :target: https://travis-ci.org/beeware/podium - .. image:: https://badges.gitter.im/beeware/general.svg - :target: https://gitter.im/beeware/general + :target: https://gitter.im/beeware/general A markup-based slide presentation tool. @@ -85,40 +70,25 @@ Podium attempts to bridge the gap between these two poles. It is comprised of: Quickstart ---------- -Podium currently requires a source checkout of Toga and Podium, as it uses -unreleased features of both projects. - -If you're using Linux, you'll need to install some system packages first:: - - # Ubuntu/Debian - $ sudo apt-get update - $ sudo apt-get install python3-dev libgirepository1.0-dev libcairo2-dev libpango1.0-dev libwebkitgtk-3.0-0 gir1.2-webkit-3.0 - - # Fedora - $ sudo dnf install pkg-config python3-devel gobject-introspection-devel cairo-devel cairo-gobject-devel pango-devel webkitgtk3 +Official releases of Podium can be downloaded from the `GitHub releases page +`__. -Then, you can create a virtual environment and run the following to install -Toga and Podium:: +Download the binary for your platform of choice, and run it. This should open a +file dialog, prompting you to open a ``.podium`` slide deck. An example Podium +slide deck is also available in the releases folder. Unzip the deck, and open +it in Podium. - $ mkdir beeware - $ cd beeware - $ python3 -m venv venv - $ source venv/bin/activate - (venv) $ git clone https://github.com/beeware/toga.git - (venv) $ pip install toga/src/core - # In the next line, replace with: - # * cocoa if you're on macOS - # * gtk if you're on Linux - (venv) $ pip install toga/src/ - (venv) $ git clone https://github.com/beeware/podium.git +.. note:: -Now that you have the code, you can run Podium. + The Linux AppImage format is a cross-platform binary that should run on + any Linux distribution using GLibC 2.23 or later - this includes Ubuntu + 16.04 and later, Fedora 24 and later, and others. - (venv) $ cd podium/src - (venv) $ python -m podium ../example/example.podium + After downloading the AppImage, you may need to mark the AppImage file as + executable (``chmod +x Podium-*.AppImage``) first. In Linux, ``.podium`` + files appear as directories; select the directory and click ``Open``. -This will open a sample slide deck. You should 2 GUI windows, displaying a test -pattern as the first slide. Controls from here are keyboard based: +Controls from here are keyboard based: * CMD-P - Enter presentation mode; or, if in presentation mode, Pause timer * Esc - Exit presentation mode @@ -133,27 +103,57 @@ pattern as the first slide. Controls from here are keyboard based: If you're on Linux, "CMD" is the Control key. -Packaging with Briefcase ------------------------- +Developing Podium +----------------- -**NOTE: These instruction won't work until Podium can use a released -version of Toga** +Podium uses the `BeeWare `__ suite of tools and libraries - +most notably, the `Toga `__ widget toolkit, and +the `Briefcase `__ packaging tool. -Use `Briefcase`_ to package this repository as a standalone application. -Install briefcase using `pip install briefcase`, then: +To develop Podium, create a virtual environment, and install the BeeWare tools. -* **macOS** Run:: +If you're using Linux, you'll need to install some system packages first:: + + # Ubuntu/Debian + $ sudo apt-get update + $ sudo apt-get install python3-dev libgirepository1.0-dev libcairo2-dev libpango1.0-dev libwebkitgtk-3.0-0 gir1.2-webkit-3.0 + + # Fedora + $ sudo dnf install pkg-config python3-devel gobject-introspection-devel cairo-devel cairo-gobject-devel pango-devel webkitgtk3 + +Then, you can create a virtual environment and install the BeeWare tools:: + + $ mkdir beeware + $ cd beeware + $ python3 -m venv venv + $ source venv/bin/activate + (venv) $ pip install --pre beeware + +Now that you have the code, you can clone the Podium repository and run it in +developer mode. + + (venv) $ git clone https://github.com/beeware/podium.git + (venv) $ cd podium + (venv) $ briefcase dev + +This should open the same file dialog as before. + +Packaging with Briefcase +~~~~~~~~~~~~~~~~~~~~~~~~ - $ python setup.py macos - $ open macOS/Podium.app +Use `Briefcase`_ to package this repository as a standalone application:: - This app file can also be copied into your Applications folder. + $ briefcase package -* **Linux** Run:: +Depending on your platform, this will produce a ``macOS`` folder containing +a Podium DMG file, or a ``linux`` folder containing a ``.AppImage`` file. - $ python setup.py linux - $ ./linux/Podium +.. note:: + Packaging cross-distribution Linux binaries is a complex process; See `the + notes on AppImage packaging + `__ + in the Briefcase documentation for more details. Overriding Default themes -------------------------