Awesome Open Source
Awesome Open Source

Element: decentralized, encrypted chat & collaboration

. . . packaged for Fedora and OpenSUSE

What is this GitHub Repository?

The purpose of this repository is to store all the bits and pieces needed to build and package the Element application for various RPM flavors of Linux: CentOS, Fedora, and OpenSUSE. The binary (installable and runnable) packages are then built by the Fedora Project's COPR build system.

What is Element? Decentralized, encrypted chat & collaboration powered by [matrix].

What is Matrix? An open network for secure, decentralized communication.

In short, Element is an open-source, decentralized, end-to-end encrypted, team collaboration platform who's often compared to IRC, Rocket Chat, Mattermost, Slack, and Discord.

Element was once branded Riot. The name changed as of version 1.7.0 (July, 2020).

More fully, Element is a desktop application implementing the client-side of the matrix protocol enabling decentralized, secure messaging for collaborative groups. This repository enables Element to be easily installed and maintained on the Fedora, Red Hat(IBM), and OpenSUSE family of Linux operating systems and tracks the source surrounding those builds. This GitHub repository maintains source RPM packages and spec files so you can rebuild Element if you are so inclined, though prebuilt binaries have been conveniently built for you. See below for how to install and run Element on your Linux desktop.

Please note that packages also exist for Android, Apple products, and Microsoft Windows. Element for the web (Chromebook and anyone) is available here: https://app.element.io/ — slick!

More about . . .

tl;dr . . .

I just want to install Element!

It's easy to install, run, and maintain Element. Current builds are provided for these platforms (x86_64 only) . . .
Note: I will stop building for any version of an OS that is itself no longer supported

Successful builds:

  • CentOS: versions 8 and Stream (as of Element 1.7.16)
    • Note, EL8 for RHEL and CentOS proper is a bear to build for and may be dropped. CentOS Stream is currently staying current with the builds.
  • Fedora: versions 33+
  • OpenSUSE: Tumbleweed and Leap 15.2 as of Element 1.7.1
    • Note, Leap is a bear to build for and may be behind in versions.

Alternative builds:

  • Flatpak: OpenSUSE Leap and EL8(RHEL/CentOS) folks can use the Element-team supplied Flatpak: https://flathub.org/apps/details/im.riot.Riot Ideally, we'd have reasonably current native builds available for Leap and RHEL/CentOS, but alas. Using a Flatpak (or, for that matter, a Snap or an AppImage) is a brute-force solution, but it is a solution.

[Fedora and CentOS]

Prep . . .

sudo dnf install -y dnf-plugins-core distribution-gpg-keys
sudo dnf copr enable taw/element

Install . . .

sudo dnf install -y element --refresh

[OpenSUSE]

Prep (Leap 15.2 and 15.3) . . .

# Install GPG keys
sudo rpm --import https://keybase.io/toddwarner/key.asc
sudo rpm --import https://download.copr.fedorainfracloud.org/results/taw/element/pubkey.gpg
# Configure and enable the Element repository
sudo zypper install https://download.copr.fedorainfracloud.org/results/taw/element/opensuse-leap-15.2-x86_64/01571621-toddpkgs-element-repo/toddpkgs-element-repo-1.7-5.suse.lp152.taw.noarch.rpm
sudo zypper modifyrepo -er "element-stable"
sudo zypper refresh

Prep (Tumbleweed) . . .

# Install GPG keys
sudo rpm --import https://keybase.io/toddwarner/key.asc
sudo rpm --import https://download.copr.fedorainfracloud.org/results/taw/element/pubkey.gpg
# Configure and enable the Element repository
sudo zypper install https://download.copr.fedorainfracloud.org/results/taw/element/opensuse-tumbleweed-x86_64/01571621-toddpkgs-element-repo/toddpkgs-element-repo-1.7-5.suse.tw.taw.noarch.rpm
sudo zypper modifyrepo -er "element-stable"
sudo zypper refresh

Install . . .

sudo zypper install element

I installed it, now I want to run Element!

Search for and select "Element" from your desktop environment. Done!

Note: If none of this made sense or you couldn't get it to work, Element can also be run as directly from your browser at https://app.element.io/

I installed it, now I want to ensure I get future updates!

Please Note

If within your Element settings > Preferences, you have enabled "Show tray icon and minimize window to it on close" when you exit Element, it minimizes and does not truly exit and upgrades will not be evident until the next reboot.

If you disable that setting, when you exit Element, it truly exits.

Once you have followed the repository and installation instructions above, you should be notified of any future updates enabling you to update the software automatically. And you can always force a check with . . .

# Fedora . . .
sudo dnf upgrade
# OpenSUSE . . .
sudo zypper update

I do this as a hobby, but I will try to be timely with my updates.

Disclaimer

I built these for my own use. I offer these builds for your own convenience (and have now for a long time). If it 'splodes your computer, I am sorry, but buyer beware. :) I am in no way affiliated with the originators of Element—New Vector Ltd/Element—but I do thank them for their wonderful application and the community appreciates their welcoming approach to contributors like myself.

Questions or comments . . .

Contact: t0dd_at_protonmail.com or find me at @t0dd:matrix.org after you have installed Element!


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Shell (232,728
Chat (3,276
Desktop (1,732
Matrix (1,237
Messaging (1,222
Centos (759
Collaboration (725
Fedora (500
Element (409
Riot (153
Related Projects