docs: Update supported distros for Linux GUI client (#7647)

We have RPM builds and instructions for installing them, so I've moved
this to our docs.

Identified #7646 as a known issue.
This commit is contained in:
Jamil
2025-01-03 05:02:20 -08:00
committed by GitHub
parent dc55d063d4
commit 36cd9a18d2
2 changed files with 45 additions and 34 deletions

View File

@@ -73,33 +73,6 @@ If that doesn't work:
- Click `New client secret`
- Note down the secret value. This should be entered into the GitHub repository's secrets as `AZURE_CLIENT_SECRET`.
## Installing on CentOS 9
These instructions will move to the knowledge base once the first release supporting CentOS 9 is cut.
### Install system tray
GNOME Shell 40 in CentOS 9 does not have a system tray by default. Use these steps to install it.
For other desktops like xfce4 or KDE, the system tray may already work properly.
1. `sudo dnf install epel-release` (Needed to get GNOME extensions)
2. `sudo dnf install gnome-shell-extension-appindicator`
3. Log out and back in to restart GNOME
4. `gnome-extensions enable appindicatorsupport@rgcjonas.gmail.com` (This will tab-complete.)
### Install Firezone
1. Download the RPM
2. `sudo dnf install systemd-resolved` (Installing it explicitly prevents it from being auto-removed if Firezone is removed)
3. `sudo dnf install ./firezone-client-gui-*.rpm`
4. `sudo usermod -aG firezone-client $USER`
5. `sudo systemctl enable firezone-client-ipc.service` (See https://www.freedesktop.org/software/systemd/man/latest/systemd.preset.html, "It is not recommended to ship preset files within the respective software packages implementing the units". The Fedora family of distros also seem to have their own policy that installing a service should not auto-start or enable it.)
6. Reboot to finish adding yourself to the group. Logging out and back in is not enough. This also starts the new services for us.
7. `sudo cp /etc/resolv.conf /etc/resolv.conf.before-firezone` Back up your resolv.conf file. If anything goes wrong with your DNS, you can copy this back into place.
8. `sudo ln --force --symbolic /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf` This puts `systemd-resolved`, and therefore Firezone, in control of the system's DNS. `systemd-resolved` does not do this automatically, since it's under `/etc`.
9. Run `firezone-client-gui` from the app menu.
## Running
From this dir:

View File

@@ -15,11 +15,11 @@ present to authenticate with your identity provider interactively.
## Prerequisites
- **x86-64** or **ARM64** CPU architecture
- Ubuntu **20.04** or **22.04**. (For ARM64, only 22.04) Other distributions may
- Ubuntu **22.04** or higher, or CentOS 9 or higher. Other distributions may
work, but are not officially supported.
- **systemd-resolved**. Ubuntu already uses this by default.
## Installation
## Installation (Ubuntu)
Download the `.deb` package from our [changelog page](/changelog), or from the
direct link below:
@@ -44,6 +44,44 @@ reboot
To auto-start the Client when you log in, run
`firezone-client-gui debug set-autostart true`
## Installation (CentOS)
### Step 1: Install system tray
GNOME Shell 40 in CentOS 9 does not have a system tray by default. Use these
steps to install it. For other desktops like xfce4 or KDE, the system tray may
already work properly.
1. `sudo dnf install epel-release` (Needed to get GNOME extensions)
2. `sudo dnf install gnome-shell-extension-appindicator`
3. Log out and back in to restart GNOME
4. `gnome-extensions enable appindicatorsupport@rgcjonas.gmail.com`
### Step 2: Install Firezone
1. Download the RPM:
[Download the latest Linux GUI `.rpm` from GitHub Releases](https://www.github.com/firezone/firezone/releases)
2. `sudo dnf install systemd-resolved` (Installing it explicitly prevents it
from being auto-removed if Firezone is removed)
3. `sudo dnf install ./firezone-client-gui-*.rpm`
4. `sudo usermod -aG firezone-client $USER`
5. `sudo systemctl enable firezone-client-ipc.service` (See
https://www.freedesktop.org/software/systemd/man/latest/systemd.preset.html,
"It is not recommended to ship preset files within the respective software
packages implementing the units". The Fedora family of distros also seem to
have their own policy that installing a service should not auto-start or
enable it.)
6. Reboot to finish adding yourself to the group. Logging out and back in is not
enough. This also starts the new services for us.
7. `sudo cp /etc/resolv.conf /etc/resolv.conf.before-firezone` Back up your
resolv.conf file. If anything goes wrong with your DNS, you can copy this
back into place.
8. `sudo ln --force --symbolic /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf`
This puts `systemd-resolved`, and therefore Firezone, in control of the
system's DNS. `systemd-resolved` does not do this automatically, since it's
under `/etc`.
9. Run `firezone-client-gui` from the app menu.
## Usage
### Signing in
@@ -95,11 +133,11 @@ will use its normal DNS and Internet behavior.
## Upgrading
1. Download the latest `.deb` installer package from
["Installation"](#installation) above.
1. Download the latest `.deb` or `.rpm` installer package from
[GitHub Releases](https://www.github.com/firezone/firezone/releases).
1. Quit `firezone-client-gui` if it's running.
1. Install the new package:
`sudo apt-get install ./firezone-client-gui-linux_<VERSION>_<ARCH>.deb`
`sudo apt-get install ./firezone-client-gui-linux_<VERSION>_<ARCH>.(deb|rpm)`
1. Restart `firezone-client-gui`.
## Diagnostic logs
@@ -203,8 +241,8 @@ the tunnel, and a GUI which allows the user to control Firezone.
## Known issues
- The GUI Client does not run on Ubuntu 24.04 yet
[#4883](https://github.com/firezone/firezone/issues/4883)
- The update checker notification does not work for RPM installations
[#7646](https://github.com/firezone/firezone/issues/7646)
- If you update Firezone while the GUI is running, you must manually restart the
GUI [#5790](https://github.com/firezone/firezone/issues/5952)