Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update/clarify Linux system requirements #2549

Merged
merged 2 commits into from
May 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changes/2549.doc.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The system requirements were updated to be more explicit and now include details for OpenSUSE Tumbleweed.
26 changes: 1 addition & 25 deletions docs/how-to/contribute/code.rst
Original file line number Diff line number Diff line change
Expand Up @@ -86,31 +86,7 @@ Next, install any additional dependencies for your operating system:

.. group-tab:: Linux

Ubuntu 18.04+, Debian 10+

.. code-block:: console

(venv) $ sudo apt update
(venv) $ sudo apt install pkg-config python3-dev libgirepository1.0-dev libcairo2-dev gir1.2-webkit2-4.0 libcanberra-gtk3-module

Fedora

.. code-block:: console

(venv) $ sudo dnf install pkg-config python3-devel gobject-introspection-devel cairo-gobject-devel webkit2gtk3 libcanberra-gtk3

Arch / Manjaro

.. code-block:: console

(venv) $ sudo pacman -Syu git pkgconf gobject-introspection cairo webkit2gtk libcanberra

FreeBSD

.. code-block:: console

(venv) $ sudo pkg update
(venv) $ sudo pkg install gobject-introspection cairo webkit2-gtk3
.. include:: /reference/platforms/unix-prerequisites.rst

.. group-tab:: Windows

Expand Down
10 changes: 8 additions & 2 deletions docs/how-to/contribute/docs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ You'll also need to install the Enchant spell checking library.

Enchant can be installed as a system package:

**Ubuntu 20.04+ / Debian 10+**
**Ubuntu / Debian**

.. code-block:: console

Expand All @@ -53,12 +53,18 @@ You'll also need to install the Enchant spell checking library.

$ sudo dnf install enchant

**Arch, Manjaro**
**Arch / Manjaro**

.. code-block:: console

$ sudo pacman -Syu enchant

**OpenSUSE Tumbleweed**

.. code-block:: console

$ sudo zypper install enchant

.. group-tab:: Windows

Enchant is installed automatically when you set up your development
Expand Down
3 changes: 2 additions & 1 deletion docs/reference/api/widgets/mapview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,11 @@ System requirements
for WebKit2, plus the GObject Introspection bindings for WebKit2. The name of
the system package required is distribution dependent:

- Ubuntu 18.04, 20.04; Debian 11: ``gir1.2-webkit2-4.0``
- Ubuntu 20.04; Debian 11: ``gir1.2-webkit2-4.0``
- Ubuntu 22.04+; Debian 12+: ``gir1.2-webkit2-4.1``
- Fedora: ``webkit2gtk4.1``
- Arch/Manjaro: ``webkit2gtk-4.1``
- OpenSUSE Tumbleweed: ``libwebkit2gtk3 typelib(WebKit2)``
- FreeBSD: ``webkit2-gtk3``

* Using MapView on Android requires the OSMDroid package in your project's Gradle
Expand Down
3 changes: 2 additions & 1 deletion docs/reference/api/widgets/webview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,11 @@ System requirements
for WebKit2, plus the GObject Introspection bindings for WebKit2. The name of
the system package required is distribution dependent:

- Ubuntu 18.04, 20.04; Debian 11: ``gir1.2-webkit2-4.0``
- Ubuntu 20.04; Debian 11: ``gir1.2-webkit2-4.0``
- Ubuntu 22.04+; Debian 12+: ``gir1.2-webkit2-4.1``
- Fedora: ``webkit2gtk4.1``
- Arch/Manjaro: ``webkit2gtk-4.1``
- OpenSUSE Tumbleweed: ``libwebkit2gtk3 typelib(WebKit2)``
- FreeBSD: ``webkit2-gtk3``

Notes
Expand Down
8 changes: 3 additions & 5 deletions docs/reference/platforms/linux.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,9 @@ The Toga backend for Linux (and other Unix-like operating systems) is `toga-gtk
Prerequisites
-------------

``toga-gtk`` requires GTK 3.22 or newer. This requirement can be met with with all
versions of Ubuntu since 18.04, and all versions of Fedora since Fedora 26.

Toga receives the most testing with GTK 3.24. This is the version that has shipped with
all versions of Ubuntu since Ubuntu 20.04, and all versions of Fedora since Fedora 29.
``toga-gtk`` requires GTK 3.22 or newer. Most testing occurs with GTK 3.24 as this is
the version that has shipped with all versions of Ubuntu since Ubuntu 20.04, and all
versions of Fedora since Fedora 29.

The system packages that provide GTK must be installed manually:

Expand Down
16 changes: 11 additions & 5 deletions docs/reference/platforms/unix-prerequisites.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,31 +5,37 @@ some of the common alternatives:
The package list should be the same as in ci.yml, and the BeeWare tutorial
(CI will also have WebView requirements)

**Ubuntu 18.04+ / Debian 11+**
**Ubuntu / Debian**

.. code-block:: console

(venv) $ sudo apt update
(venv) $ sudo apt install pkg-config python3-dev libgirepository1.0-dev libcairo2-dev libcanberra-gtk3-module
(venv) $ sudo apt install git build-essential pkg-config python3-dev libgirepository1.0-dev libcairo2-dev gir1.2-gtk-3.0 libcanberra-gtk3-module

**Fedora**

.. code-block:: console

(venv) $ sudo dnf install pkg-config python3-devel gobject-introspection-devel cairo-gobject-devel libcanberra-gtk3
(venv) $ sudo dnf install git gcc make pkg-config python3-devel gobject-introspection-devel cairo-gobject-devel gtk3 libcanberra-gtk3

**Arch / Manjaro**

.. code-block:: console

(venv) $ sudo pacman -Syu git pkgconf gobject-introspection cairo libcanberra
(venv) $ sudo pacman -Syu git base-devel pkgconf python3 gobject-introspection cairo gtk3 libcanberra

**OpenSUSE Tumbleweed**

.. code-block:: console

(venv) $ sudo zypper install git patterns-devel-base-devel_basis pkgconf-pkg-config python3-devel gobject-introspection-devel cairo-devel gtk3 'typelib(Gtk)=3.0' libcanberra-gtk3-module

**FreeBSD**

.. code-block:: console

(venv) $ sudo pkg update
(venv) $ sudo pkg install gobject-introspection cairo libcanberra-gtk3
(venv) $ sudo pkg install git gcc cmake pkgconf python3 gobject-introspection cairo gtk3 libcanberra-gtk3

If you're not using one of these, you'll need to work out how to install the developer
libraries for ``python3``, ``cairo``, and ``gobject-introspection`` (and please let us
Expand Down
Loading