Set up your development environment for building, running, and testing the Mattermost Desktop App.
Install Homebrew: http://brew.sh
Open Terminal
Install dependencies
brew install nvm git python3
Run nvm install --lts
to install and use the latest LTS version.
Open Terminal
Install NodeJS from one of the following sources:
nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
nvm install --lts
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt-get update
sudo apt-get install -y nodejs
You might need to install curl
as well:
sudo apt install curl
Install other dependencies:
Linux requires the X11 developement libraries and libpng
to build native Node modules.
sudo apt install git python3 g++ libx11-dev libxtst-dev libpng-dev
To build RPMs, you need rpmbuild
:
sudo apt install rpm
Install Chocolatey: https://chocolatey.org/install
Install Visual Studio Community: https://visualstudio.microsoft.com/vs/community/
Open PowerShell
Install dependencies
choco install nvm git python3
Restart PowerShell (to refresh the environment variables)
Run nvm install lts
and nvm use lts
to install and use the latest NodeJS LTS version.
NOTE: We don’t officially support Arch Linux for use with the Mattermost Desktop App. The provided guide is unofficial.
Open Terminal
Install NodeJS via nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
nvm install --lts
Install other dependencies:
Linux requires the X11 developement libraries and libpng
to build native Node modules.
Arch requires libffi
since it’s not installed by default.
sudo pacman -S install npm git python3 gcc make libx11 libxtst libpng libffi
To build RPMs, you need rpmbuild
sudo pacman -S install rpm
NOTE: We don’t officially support Fedora/Red Hat/CentOS Linux for use with the Mattermost Desktop App. The provided guide is unofficial.
Open Terminal
Install NodeJS via nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
nvm install --lts
Install other dependencies:
Linux requires the X11 developement libraries and libpng
to build native Node modules.
sudo apt install git python3 g++ libX11-devel libXtst-devel libpng-devel`
To build RPMs, you need rpmbuild
:
sudo dnf install rpm-build
To develop with the Desktop App, we recommend that you set up a Mattermost server specifically for this purpose. This lets you customize it as needed in cases where there are specific integration requirements needed for testing.
You can find information on setting that up here:
Alternatively, for some changes you may be able to test using an existing Mattermost instance, or one that has been deployed on platforms like Docker, Linux, Kubernetes, Heroku, or others. Please refer to the Mattermost Deployment Guide for more info.
Fork GitHub Repository: https://github.com/mattermost/desktop
Clone from your repo:
git clone https://github.com/<YOUR_GITHUB_USERNAME>/desktop.git
Open the desktop directory
cd desktop
Install Node Modules
npm i
Run the application
npm run watch