
* Fix bad path name for user data dir, upgrade node-abi * Run windows e2e * Enable Windows tests and fix linux e2e crash * chore: remove redundant dependencies and environment variables in e2e workflow * fix: resolve Linux GPU process initialization errors in GitHub Actions * Fix linux tests * Fix lint * fix: Enhance GPU handling to prevent process crashes in E2E tests This commit addresses GPU-related stability issues in our E2E test environment by: 1. Updating GPU helper utility with more comprehensive disabling methods 2. Adding environment variables to force software rendering 3. Configuring Electron to use in-process GPU rendering 4. Adding additional Linux dependencies for better GPU support 5. Expanding command-line flags to mitigate GPU process crashes The changes include modifications to: - e2e/utils/gpu-helper.js - e2e/modules/environment.js - .github/workflows/e2e-functional-template.yml - .github/actions/install-os-dependencies/action.yaml * Fix linux tests * Fix linux tests * Fix linux tests * Fix linux tests * Fix linux tests * Revert "chore: remove redundant dependencies and environment variables in e2e workflow" This reverts commit 6a8eb0cbee155c3fd3f26df8d45af8c1f5cf2f12. * run tests with xvfb-run --auto-servernum * change ubuntu-runner to use latest * change ubuntu-runner to use 24.04 version * fix linux tests * fix linux tests * add preload test script * add preload test script * add preload test script * update preload script * reset all changes made to fix linux e2e error * reset all changes made to fix linux e2e error * reset all changes made to fix linux e2e error * fix linux package instalation * fix chrome sandbox permission issue * bump electron version to 36.1.0 * Revert "bump electron version to 36.1.0" This reverts commit 4a9bf858754c0c1909b3626f703578913adf3714. * install dbus and declare DBUS_SYSTEM_BUS_ADDRESS * fix dbus error * fix dbus error * fix dbus error * fix dbus error * fix: Try the community suggestion - https://github.com/actions/runner-images/issues/12127#issuecomment-2854346891 * change libasound2 to libasound2t64 * use gcc-12-aarch64-linux-gnu instead of gcc-aarch64-linux-gnu * remove multilib * fix xvfb crash * fix: add PW_CHROMIUM_ARGS * fix: add --disable-gpu-sandbox to the e2e run command * fix: windows job * pass version to electron rebuild * fix post install script under /e2e * Revert "fix post install script under /e2e" This reverts commit 01efeed2e5038684c0aea5bb0be837b7041be8ca. * skip postinstall scipt for windows job * hardcode electron version in the e2e/package.json * update script * Revert "update script" This reverts commit 078d197e44dc78972876a977f4a91182d89024b6. * update script * reset * upgrade electron/rebuild package * Revert "upgrade electron/rebuild package" This reverts commit 25b144df05152b0bc112db6473263bfd68850874. * Patch electron/rebuild * Fix macOS test --------- Co-authored-by: yasserfaraazkhan <attitude3cena.yf@gmail.com> Co-authored-by: Mattermost Build <build@mattermost.com>
Mattermost Desktop
Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. This repo is for the native desktop application that's built on Electron; it runs on Windows, Mac, and Linux.
Originally created as "electron-mattermost" by Yuya Ochiai.
Features
Desktop integration
- Server dropdown for access to multiple servers
- Dedicated tabs for Channels, Boards and Playbooks
- Desktop Notifications
- Badges for unread channels and mentions
- Deep Linking to open Mattermost links directly in the app
- Runs in background to reduce number of open windows
Usage
Installation
Detailed guides are available at docs.mattermost.com.
- Download a file from the downloads page or from the releases page.
- Run the installer or unzip the archive.
- Launch Mattermost from your Applications folder, menu, or the unarchived folder.
- On the first launch, please enter a name and URL for your Mattermost server. For example,
https://mattermost.example.com
.
Configuration
You can show the dialog from menu bar.
Configuration will be saved into Electron's userData directory:
%APPDATA%\Mattermost
on Windows~/Library/Application Support/Mattermost
on OS X~/.config/Mattermost
on Linux
A custom data directory location can be specified with:
Mattermost.exe --args --data-dir C:\my-mattermost-data
on Windowsopen /Applications/Mattermost.app/ --args --data-dir ~/my-mattermost-data/
on macOS./mattermost-desktop --args --data-dir ~/my-mattermost-data/
on Linux
Custom App Deployments
Our docs provide a guide on how to customize and distribute your own Mattermost Desktop App, including how to distribute the official Windows Desktop App silently to end users, pre-configured with the server URL and other app settings.
Development and Making Contributions
Our developer guide has detailed information on how to set up your development environment, develop, and test changes to the Desktop App.