Skip to content

Commit 9f766e6

Browse files
committed
Update docs
1 parent 403da50 commit 9f766e6

File tree

4 files changed

+88
-60
lines changed

4 files changed

+88
-60
lines changed

mkdocs-internal.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ markdown_extensions:
5555
- pymdownx.caret:
5656
- pymdownx.smartsymbols:
5757
- pymdownx.emoji:
58-
emoji_index: !!python/name:materialx.emoji.twemoji
59-
emoji_generator: !!python/name:materialx.emoji.to_svg
58+
emoji_index: !!python/name:material.extensions.emoji.twemoji
59+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
6060
- pymdownx.escapeall:
6161
hardbreak: True
6262
nbsp: True

mkdocs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ markdown_extensions:
8282
- pymdownx.caret:
8383
- pymdownx.smartsymbols:
8484
- pymdownx.emoji:
85-
emoji_index: !!python/name:materialx.emoji.twemoji
86-
emoji_generator: !!python/name:materialx.emoji.to_svg
85+
emoji_index: !!python/name:material.extensions.emoji.twemoji
86+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
8787
- pymdownx.escapeall:
8888
hardbreak: True
8989
nbsp: True

rummage/lib/gui/data/docs/.dochash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
b878f7fc01c2d39369a4c95697d6fda1
1+
e368ff97e0f58e65729edb321f838cb6

rummage/lib/gui/data/docs/installation.html

Lines changed: 83 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -41,32 +41,44 @@
4141
<li class="__toc_level_3"><a href="#installation_1">Installation</a></li>
4242
<ul class="__toc_list_3">
4343

44+
<li class="__toc_level_4"><a href="#windows">Windows</a></li>
45+
<ul class="__toc_list_4">
46+
4447
</ul>
45-
<li class="__toc_level_3"><a href="#linux-prerequisites">Linux Prerequisites</a></li>
46-
<ul class="__toc_list_3">
48+
<li class="__toc_level_4"><a href="#macos">MacOS</a></li>
49+
<ul class="__toc_list_4">
4750

48-
<li class="__toc_level_4"><a href="#recommended">Recommended</a></li>
51+
</ul>
52+
<li class="__toc_level_4"><a href="#linux">Linux</a></li>
4953
<ul class="__toc_list_4">
5054

51-
<li class="__toc_level_5"><a href="#pre-built-wheels">Pre-built Wheels</a></li>
55+
<li class="__toc_level_5"><a href="#pipx">pipx</a></li>
5256
<ul class="__toc_list_5">
5357

5458
</ul>
55-
<li class="__toc_level_5"><a href="#pre-build-packages">Pre-build Packages</a></li>
59+
<li class="__toc_level_5"><a href="#venv">venv</a></li>
5660
<ul class="__toc_list_5">
5761

5862
</ul>
59-
</ul>
60-
<li class="__toc_level_4"><a href="#manual">Manual</a></li>
61-
<ul class="__toc_list_4">
63+
<li class="__toc_level_5"><a href="#prerequisites">Prerequisites</a></li>
64+
<ul class="__toc_list_5">
65+
66+
<li class="__toc_level_6"><a href="#distro-packages">Distro Packages</a></li>
67+
<ul class="__toc_list_6">
6268

6369
</ul>
70+
<li class="__toc_level_6"><a href="#pre-built-wheels">Pre-built Wheels</a></li>
71+
<ul class="__toc_list_6">
72+
6473
</ul>
65-
<li class="__toc_level_3"><a href="#macos-prerequisites">macOS Prerequisites</a></li>
66-
<ul class="__toc_list_3">
74+
<li class="__toc_level_6"><a href="#manual-building">Manual Building</a></li>
75+
<ul class="__toc_list_6">
6776

6877
</ul>
6978
</ul>
79+
</ul>
80+
</ul>
81+
</ul>
7082
</ul>
7183
</div>
7284
</div>
@@ -94,18 +106,10 @@ <h2 id="requirements">Requirements</h2>
94106
</tbody>
95107
</table>
96108
<h2 id="installation_1">Installation</h2>
97-
<p>On systems like Windows, installation is pretty straight forward as wheels are provided for all packages in <code>pip</code>. On
98-
other systems, there may be some prerequisites. If on Linux, it is recommended to make sure you can install <code>wxpython</code>
99-
first. This is due to the fact that installation of that library may require special instructions and will cause the
100-
installation of Rummage to fail if <code>wxpython</code> fails due to not having the necessary prerequisites.</p>
101-
<div class="admonition warning">
102-
<p class="admonition-title">Prerequisites</p>
103-
<ul>
104-
<li><a href="#linux-prerequisites">Linux</a></li>
105-
<li><a href="#macos-prerequisites">macOS</a></li>
106-
</ul>
107-
</div>
108-
<p>Assuming prerequisites are satisfied, installing Rummage is easy.</p>
109+
<p>For well supported platforms, Python wheels are usually available for Rummage and its dependencies. In most cases,
110+
installation can be done quickly and easily through <code>pip</code>. Some platforms, like Linux, may require some additional
111+
hoops that you must jump through. Additionally, wxPython, the GUI library that Rummage depends on, may sometimes have
112+
support lagging for the latest Python version.</p>
109113
<p>Install:</p>
110114
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>pip<span class="w"> </span>install<span class="w"> </span>rummage
111115
</code></pre></div>
@@ -115,25 +119,61 @@ <h2 id="installation_1">Installation</h2>
115119
<p>Upgrade:</p>
116120
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>pip<span class="w"> </span>install<span class="w"> </span>--upgrade<span class="w"> </span>rummage
117121
</code></pre></div>
118-
<h2 id="linux-prerequisites">Linux Prerequisites</h2>
119-
<p>Linux is by far the more involved system to install wxPython on, but it is getting easier.</p>
120-
<h3 id="recommended">Recommended</h3>
121-
<h4 id="pre-built-wheels">Pre-built Wheels</h4>
122-
<p>The wxPython project has started providing wheels for certain distros. While not all distros have wheels, this may
123-
be an attractive solution if you run one of the distros that do have pre-built wheels. The one downside is that the
124-
wheels are not available through on PyPI. More information on why and details on installation can be found here:
125-
<a href="https://www.wxpython.org/pages/downloads/">https://www.wxpython.org/pages/downloads/</a>.</p>
126-
<p>Simplified instructions:</p>
127-
<ol>
128-
<li>
129-
<p>Find the folder for your distro over at <a href="https://extras.wxpython.org/wxPython4/extras/linux/">https://extras.wxpython.org/wxPython4/extras/linux/</a>.</p>
130-
</li>
131-
<li>
132-
<p>Use <code>pip</code> and the server's location like so.</p>
122+
<h3 id="windows">Windows</h3>
123+
<p>On systems like Windows, installation is pretty straight forward as wheels are provided for all packages in <code>pip</code>.
124+
Support for the latest Python version may not always be available as the development cycle for wxPython can take a bit
125+
to catch up.</p>
126+
<p>Simply using <code>pip</code> to install is sufficient.</p>
127+
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>pip<span class="w"> </span>install<span class="w"> </span>rummage
128+
</code></pre></div>
129+
<h3 id="macos">MacOS</h3>
130+
<p>In recent years, wheels are usually available for wxPython on macOS. Support for the latest Python version may not
131+
always be available as the development cycle for wxPython can take a bit to catch up.</p>
132+
<p>Usually, you can just use <code>pip</code> to install:</p>
133+
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>pip<span class="w"> </span>install<span class="w"> </span>rummage
134+
</code></pre></div>
135+
<h3 id="linux">Linux</h3>
136+
<p>Linux doesn't often have pre-built wheels for wxPython, so often, you must first ensure some prerequisites are in place
137+
before using <code>pip install</code> (or other methods). Additionally, Linux, in recent years, has made managing libraries and
138+
applications in Python a bit more complex with its new restrictions. Despite all of this, Rummage is still supported,
139+
but may require slightly more complex installation.</p>
140+
<h4 id="pipx">pipx</h4>
141+
<p>If installing Rummage on Linux, you may consider <code>pipx</code>, especially if your distro has a new enough wxPython <a href="#distro-packages">distro
142+
packages</a>. On Ubuntu, installation may look similar to the following:</p>
143+
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>python3-wgtk4.0<span class="w"> </span>python3-wxgtk-webview4.0
144+
<span class="gp">$ </span>pipx<span class="w"> </span>install<span class="w"> </span>--system-site-packages<span class="w"> </span>rummage
145+
</code></pre></div>
146+
<p>The <code>--system-site-packages</code> flag is necessary as by default, <code>pipx</code> will create a brand new virtual environment that
147+
does not have access to the globally available distro package.</p>
148+
<h4 id="venv">venv</h4>
149+
<p>Another approach on Linux is to use the <code>venv</code> package to install Rummage and its dependencies. If your distro has a new
150+
enough wxPython <a href="#distro-packages">distro package</a>, you can install the wxPython and then create your virtual
151+
environment with the <code>--system-site-packages</code> flag to ensure it has access to the installed package. On Ubuntu, it may
152+
look similar to:</p>
153+
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>python3-wgtk4.0<span class="w"> </span>python3-wxgtk-webview4.0
154+
<span class="gp">$ </span>python3<span class="w"> </span>-m<span class="w"> </span>venv<span class="w"> </span>--system-site-packages<span class="w"> </span>./venv/rummage
155+
<span class="gp">$ </span><span class="nb">source</span><span class="w"> </span>./venv/rummage/bin/activate
156+
<span class="gp">$ </span><span class="o">(</span>rummage<span class="o">)</span><span class="w"> </span>$<span class="w"> </span>pip<span class="w"> </span>install<span class="w"> </span>rummage
157+
</code></pre></div>
158+
<p>If your distro does not have a proper wxPython package, you may have to install it from another source under your
159+
virtual environment.</p>
160+
<h4 id="prerequisites">Prerequisites</h4>
161+
<p>The most important prerequisite to getting Rummage installed is <code>wxpython</code>. It is always recommended to ensure it is
162+
installed before trying to install Rummage. If it is not, installation may try and download <code>wxpython</code> and build it
163+
from scratch. This can take a long time and can fail.</p>
164+
<h5 id="distro-packages">Distro Packages</h5>
165+
<p>Many Linux distros make wxPython available via their package manager. Assuming the package is not too old and is still
166+
supported by Rummage, this should automatically fulfill all the needed requirements. As an example, on Ubuntu, you must
167+
install the following:</p>
168+
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>python3-wgtk4.0<span class="w"> </span>python3-wxgtk-webview4.0
169+
</code></pre></div>
170+
<h5 id="pre-built-wheels">Pre-built Wheels</h5>
171+
<p>Another option, if your distro packages are too old, is to see if there is a readily available pre-built wheel from the
172+
wxPython team. These are usually kept here: <a href="https://extras.wxpython.org/wxPython4/extras/linux/">https://extras.wxpython.org/wxPython4/extras/linux/</a>. It is possible through
173+
that even after this, there may be some Linux dependencies missing. The wheel can be installed in a virtual environment
174+
using pip:</p>
133175
<div class="highlight"><pre><span></span><code><span class="gp">$ </span>pip<span class="w"> </span>install<span class="w"> </span>-U<span class="w"> </span>-f<span class="w"> </span>https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-20.04<span class="w"> </span>wxPython
134176
</code></pre></div>
135-
</li>
136-
</ol>
137177
<p>While the wheel should install fine, when you actually run Rummage, you may see some libraries missing. A common one
138178
on Ubuntu is <code>libSDL</code> libraries. If you see a complaint about a library not being found or loaded, and you are on
139179
Ubuntu, you can install <code>apt-find</code> and search for the package containing the file, then you can install it.</p>
@@ -144,11 +184,7 @@ <h4 id="pre-built-wheels">Pre-built Wheels</h4>
144184
<span class="go">libsdl2-2.0-0: /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.10.0</span>
145185
<span class="gp">$ </span>sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>libsdl2-2.0-0
146186
</code></pre></div>
147-
<h4 id="pre-build-packages">Pre-build Packages</h4>
148-
<p>If you have a recent Linux distro that has a pre-built, installable wxPython package for your version of Python, then
149-
it may make sense to just install the pre-built package via your Linux package manager. The version must meet the
150-
version requirements of the Rummage package you are installing.</p>
151-
<h3 id="manual">Manual</h3>
187+
<h5 id="manual-building">Manual Building</h5>
152188
<p>If you have installed a version of Python on your machine that does not have a pre-built wxPython package, or are using
153189
a distro that does not have a pre-built wheel, you may have to build it.</p>
154190
<p>You can build the package by installing with <code>pip</code>, but you may find that it won't build until you get all the
@@ -176,17 +212,9 @@ <h3 id="manual">Manual</h3>
176212
<p>For a complete list of dependencies please check wxPython's official documentation on dependencies before installing.
177213
Particularly under <a href="https://github.com/wxWidgets/Phoenix/blob/master/README.rst#prerequisites">this section</a>. If they are out of date, please contact the wxPython team for better
178214
instructions.</p>
179-
<h2 id="macos-prerequisites">macOS Prerequisites</h2>
180-
<p>On macOS, Rummage uses either pure Python modules, or modules that provide wheels. What this means is that no C code
181-
compilation is required to install Rummage; therefore, no prior steps are needed. But if you want to install <code>regex</code>,
182-
there will be some C code compilation performed by <code>pip</code> which will require Xcode to be installed.</p>
183-
<ol>
184-
<li>Download Xcode from the Mac App Store.</li>
185-
<li>Navigate to Xcode &gt; Preferences &gt; Downloads tab.</li>
186-
<li>Click the button to install the Command Line Tools.</li>
187-
<li>Open Terminal (Applications/Terminal) and run <code>xcode-select --install</code>. You will be prompted to install the Xcode
188-
Command Line Tools.</li>
189-
</ol>
215+
<p>other systems, there may be some prerequisites. If on Linux, it is recommended to make sure you can install <code>wxpython</code>
216+
first. This is due to the fact that installation of that library may require special instructions and will cause the
217+
installation of Rummage to fail if <code>wxpython</code> fails due to not having the necessary prerequisites.</p>
190218
</div>
191219

192220
<!-- Navigation -->

0 commit comments

Comments
 (0)