Nextcloud Talk Desktop client based on Nextcloud Talk web application bundling ✨
- Nextcloud Server version 27 or higher.
- Nextcloud Talk version 17 or higher.
- Currently not supported:
- Works with limitations:
- File Viewer — only images and videos
Full multi-account currently is not currently supported.
However, using portable zip
distribution, you can have several Nextcloud Talk instances run simultaneously. Just rename the executable from default Nextcloud Talk
to a custom name. For example:
/path/to/apps/
├── home-apps/
│ └── Nextcloud Talk/
│ ├── ...
│ ├── Nextcloud Talk (Home).exe
│ └── ...
└── work-apps/
└── Nextcloud Talk/
├── ...
├── Nextcloud Talk (Work).exe
└── ...
# Install dependencies
npm ci
# Make .env file
cp .env.example .env
# Don't forget to configure ENV variables!
Nextcloud Talk Desktop requires Nextcloud Talk source code.
Clone nextcloud/spreed
and install dependencies:
# Clone in the repository root
git clone https://github.com/nextcloud/spreed
# Install dependencies
cd ./spreed/
npm ci
# Don't forget to return back
cd ../
Set TALK_PATH
ENV variable or edit .env
file:
TALK_PATH=/path/to/nextcloud-dev/apps/spreed/
# Start development server
npm start
#########################
# Package to executable #
#########################
# 🐧 Linux
npm run package:linux
# 🍏 Mac (Darwin)
npm run package:mac
# 🪟 Windows (win32)
npm run package:windows
# All
npm run package:all
#########################
# Make ZIP distribution #
#########################
# 🐧 Linux
npm run make:linux
# 🍏 Mac (Darwin)
# Note: doesn't work on Windows, use WSL
npm run make:mac
# 🪟 Windows (win32)
npm run make:windows
# All
npm run make:all
- Create
release/vX.Y.Z
branch. - Update
CHANGELOG.md
.- If a built-in Talk version is to be changed - add a note:
### Build-in Talk update Built-in Talk in binaries is updated to $(VERSION) Talk changelog: https://github.com/nextcloud/spreed/blob/master/CHANGELOG.md
- If a built-in Talk version is to be changed - add a note:
- Update
package.json
:- For minor update:
npm version minor
- For patch update:
npm version patch
- For minor update:
- Create a release PR.
- Merge the release PR.
- Create and push a tag:
git tag -a v$(version) -m "Tagging the $(version) release." git push origin v$(version) git push releases v$(version)
- Draft a new release on GitHub in nextcloud-releases/talk-desktop
- Add release title:
v$(version) - Talk v$(talkVersion)
, e.g.v0.10.0 - Talk v17.1.0-rc.1
- Choose a tag
- Add the respective
CHANGELOG.md
section - Use the Generate release notes button and wrap put the result into
## What's Changed <details> <!-- Generated content --> </details>
- Add release title:
- Draft a new release on GitHub in nextcloud/talk-desktop
- Copy everything from the previous step
- Add:
> 📥 Download Binaries on https://github.com/nextcloud-releases/talk-desktop/releases/tag/v$(version)
- Package release, specify version and platforms:
npm run release:package -- --version v$(talkVersion) --windows --linux --mac
- Upload packages to the GitHub Releases on nextcloud-releases/talk-desktop
- Publish both releases on GitHub Releases
Talk frontend depends on the global Nextcloud server styles. To manually get them run:
# node ./scripts/fetch-server-styles.mjs <VERSION>, for example
node ./scripts/fetch-server-styles.mjs stable29
See: https://github.com/nextcloud/spreed#contribution-guidelines