🖥️ Nextcloud Talk Desktop 💬
Nextcloud Talk Desktop client based on Nextcloud Talk web application bundling ✨
📥 Download Binaries
https://github.com/nextcloud-releases/talk-desktop/releases
🏗️ Prerequisites
- Nextcloud Server version 27 or higher.
- Nextcloud Talk version 17 or higher.
👾 Drawbacks
- Currently not supported:
- Works with limitations:
- File viewer - opened in the default web-browser
🧑💻 Development Setup
Initial setup
# 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.
nextcloud/spreed
is cloned?
No 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 ../
nextcloud/spreed
is already cloned?
Set TALK_PATH
ENV variable or edit .env
file:
TALK_PATH=/path/to/nextcloud-dev/apps/spreed/
Development
# Start development server
npm start
📦 Packaging
#########################
# 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
✈️ Release
- Create
release/vX.X.X
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 17.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/$(version)
- Package release, specify version and platforms:
npm run release:package -- --version $(version) --windows --linux --mac
- Upload packages to the GitHub Releases on nextcloud-releases/talk-desktop
- Publish both releases on GitHub Releases
👥 Contribution Guidelines
See: https://github.com/nextcloud/spreed#contribution-guidelines