Linux 上的 Slack 应用程序:如何禁用频道活动中的“蓝色圆圈”图标?

L42*_*L42 33 linux slack

在工作时,我想禁用在我所在的频道中有任何活动时发生的蓝色图标通知。具体来说,我不希望来自某些松弛团队的此通知: 在此处输入图片说明

有没有办法“使整个 slack 团队静音”,这样我就不会收到蓝色图标通知?谢谢。

小智 20

我似乎没有肖恩提到的设置,但我能够通过打开/usr/lib/slack/resources/app.asar.unpacked/src/static目录,制作slack-taskbar-rest.png文件副本并将其重命名为slack-taskbar-unread.png以用蓝点覆盖版本来完成这项工作。

当然,这消除了所有球队的蓝点,但这就是我想要的。

编辑(2019-05-28):想法仍然正确,但对于Ubuntu上最新的Slack版本(3.4.2),必须替换另外两个文件。以下对我有用:

cd /usr/lib/slack/resources/app.asar.unpacked/src/static
sudo cp slack-taskbar-rest.ico slack-taskbar-unread.ico
sudo cp slack-taskbar-rest.png slack-taskbar-unread.png
sudo cp slack-taskbar-rest-linux.png slack-taskbar-unread-linux.png
Run Code Online (Sandbox Code Playgroud)

  • 如果它处于“snap”状态怎么办? (2认同)

Dmi*_* S. 6

最新版本 4.1.2 不会读取 Linux 上的 .ico 文件,而是更改srcdist. 相反,它构建了一个徽章+底座。幸运的unread>0是,负责徽章的检查仅在缩小的 JS 中出现一次,因此很容易修补。您需要ASAR 工具来修改 Electron 存档 ( npm install -g asar):

mkdir -p ~/tmp/slack
asar extract /usr/lib/slack/resources/app.asar ~/tmp/slack
sed -i 's/unreads>0/unreads<0/g' ~/tmp/slack/dist/main.1.*.js
sudo rm /usr/lib/slack/resources/app.asar
sudo rm -rf /usr/lib/slack/resources/app.asar.unpacked
sudo asar pack ~/tmp/slack /usr/lib/slack/resources/app.asar
sudo mv ~/tmp/slack /usr/lib/slack/resources/app.asar.unpacked
Run Code Online (Sandbox Code Playgroud)

  • 它似乎已移至 main.2.*.js 文件。将 `sed -i 's/unreads&gt;0/unreads&lt;0/g' ~/tmp/slack/dist/main.1.*.js` 更改为 `sed -i 's/unreads&gt;0/unreads&lt;0 /g' ~/tmp/slack/dist/main.2.*.js` 我会编辑我的答案,但目前无法验证修复。我搜索“setTrayIcon”以找到相关文件,并仔细检查“unreads&gt;0”仍然是检查。 (2认同)

rud*_*ker 5

简短的回答是:你不能,没有 hacking slack。

长的答案是,在更新源代码时,如何破解它会因一个版本到下一个版本而有所不同。我们应该团结起来提交一个功能请求(或者这甚至可以被认为是一个错误——这显然是在困扰人们)。

在此之前,这应该是一个社区 wiki,以防止为每个新的 slack 版本生成新的答案。在此处添加您的脚本,并清楚地说明它适用的最新版本,最新的在顶部。


4.7.0

这是对Dmitry S. 的回答的改进。

  • unreads>0被替换为false,因此 slack 应该始终认为没有未读消息。
  • 替换在所有.js文件中完成,因为代码似乎已在最新版本中拆分。
  • asar不是以超级用户权限运行,这对使用npm-g_nosudo.

先决条件:

  • asar 通过 npm 全局安装: npm install -g asar

脚本:

#!/usr/bin/env sh

set -eu

# Clean up previous failed attempts
rm -rf ~/tmp/slack
rm -rf ~/tmp/app.asar

# Unpack
mkdir -p ~/tmp/slack
asar extract /usr/lib/slack/resources/app.asar ~/tmp/slack

# Modify
sed -i 's/unreads>0/false/g' ~/tmp/slack/dist/*.js

# Replace
sudo rm /usr/lib/slack/resources/app.asar
sudo rm -rf /usr/lib/slack/resources/app.asar.unpacked
asar pack ~/tmp/slack ~/tmp/app.asar
sudo cp ~/tmp/app.asar /usr/lib/slack/resources/app.asar
sudo cp -r ~/tmp/slack /usr/lib/slack/resources/app.asar.unpacked

echo "Enjoy your productivity"

Run Code Online (Sandbox Code Playgroud)