Linux系统下如何让Vivaldi浏览器打开Mattermost消息链接时启动桌面客户端而非网页版
Linux系统下如何让Vivaldi浏览器打开Mattermost消息链接时启动桌面客户端而非网页版
我之前也被这个问题折腾过,试了好几种方法终于搞定了,给你分享几个可行的方案:
方法一:让Mattermost桌面客户端注册专属协议
Mattermost桌面端本身支持mattermost://协议,但有时候安装后没自动注册,咱们手动配置一下:
- 先找到Mattermost的桌面配置文件,通常在
~/.local/share/applications/mattermost.desktop(用户级)或者/usr/share/applications/mattermost.desktop(系统级) - 打开这个文件,在
[Desktop Entry]区块里添加一行:MimeType=x-scheme-handler/mattermost; - 保存后,运行命令更新桌面数据库:
- 用户级文件:
update-desktop-database ~/.local/share/applications/ - 系统级文件:
sudo update-desktop-database /usr/share/applications/
- 用户级文件:
这样系统就会识别mattermost://开头的链接并调用桌面客户端,但咱们平时收到的大多是https链接,所以还得配合下面的方法。
方法二:在Vivaldi里指定Mattermost域名用外部客户端打开
Vivaldi支持给特定域名设置默认打开方式,步骤很简单:
- 打开Vivaldi设置页面(快捷键
Ctrl+,) - 依次进入「隐私和安全」→「网站设置」→「外部内容」→「处理程序」(找不到的话直接在设置搜索框搜「处理程序」)
- 点击「添加」,输入你的Mattermost服务器完整域名,比如
https://your-team.mattermost.com - 在弹出选项里选择「Mattermost」(已注册协议的情况下),或者直接选择Mattermost客户端的安装路径,一般是
/opt/Mattermost/mattermost或~/.local/bin/mattermost
设置完成后,再点击该域名下的消息链接,Vivaldi就会自动调用桌面客户端打开了。
方法三:用脚本转换https链接为mattermost协议(进阶方案)
如果上面的方法不生效,或者你想更灵活处理所有Mattermost链接,可以写个小脚本实现链接转换:
- 创建
mattermost-link-handler.sh脚本,内容如下:#!/bin/bash # 将https开头的Mattermost链接转换为mattermost协议 NEW_URL=$(echo "$1" | sed 's/^https:/mattermost:/') # 替换成你的Mattermost客户端实际路径 exec /opt/Mattermost/mattermost "$NEW_URL" - 给脚本添加执行权限:
chmod +x mattermost-link-handler.sh,然后放到~/.local/bin/目录下 - 创建对应的桌面配置文件
~/.local/share/applications/mattermost-url-handler.desktop:[Desktop Entry] Name=Mattermost URL Handler Exec=/home/你的用户名/.local/bin/mattermost-link-handler.sh %u Type=Application # 仅处理你的Mattermost域名链接,替换为实际域名 MimeType=x-scheme-handler/https?host=your-team.mattermost.com; - 最后运行
update-desktop-database ~/.local/share/applications/更新配置
这样不管从哪里打开的Mattermost https链接,系统都会自动转用桌面客户端打开。
我自己用的是方法一+方法二的组合,在Ubuntu和Manjaro上都能正常生效,你可以根据自己的系统情况试试~
备注:内容来源于stack exchange,提问作者Marco.S
相关产品推荐
相关产品推荐

