-
Notifications
You must be signed in to change notification settings - Fork 385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ssb-interop.js no longer used in Slack beta 4 #234
Comments
Version 4.0.0 is now the official version of Slack, and is still missing the ssb-interpo.js file |
The ssb-interop file is now located in an archive: https://dev.to/mykeels/why-is-slack-changing-its-internals-4p4c
|
@krazyito65 Any idea on how to unpack and pack it again? I used |
found this on another repo: https://github.com/LanikSJ/slack-dark-mode/pull/77/files#diff-4e5b58d0c0e2e47e41878b4116e03b7f # Unpack Asar Archive for Slack
sudo npx asar extract $SLACK_RESOURCES_DIR/app.asar $SLACK_RESOURCES_DIR/app.asar.unpacked
# Add JS Code to Slack
sudo tee -a "$SLACK_FILEPATH" < $SLACK_EVENT_LISTENER
# Insert the CSS File Location in JS
sudo sed -i -e s@SLACK_DARK_THEME_PATH@$THEME_FILEPATH@g $SLACK_FILEPATH
# Pack the Asar Archive for Slack
sudo npx asar pack $SLACK_RESOURCES_DIR/app.asar.unpacked $SLACK_RESOURCES_DIR/app.asar I haven't tried it myself yet. I'm using the SNAP version on ubuntu, so it hasn't gotten pushed to me, though I've been trying to figure out how to easily do it on windows. |
@JRoviraa if your slack crashed, your app.asar file might be corrupted. You might want to reinstall slack, or pull the file from here. https://raw.githubusercontent.com/mykeels/slack-v40-app-asar/master/app.asar |
Has anyone gotten this working on macOS? I modified my lazy (and poor security practices) script, and I was able to see dark mode after hitting CMD+R, but the workspace switcher was displaying weird. So I quit and restarted Slack, and light mode is back as if I never did anything. #!/bin/bash
SLACK_ASAR=/Applications/Slack.app/Contents/Resources/app.asar
sudo npx asar extract $SLACK_ASAR $SLACK_ASAR.unpacked
sudo tee -a $SLACK_ASAR.unpacked/dist/ssb-interop.bundle.js <<-'EOF'
document.addEventListener('DOMContentLoaded', function() {
$.ajax({
url: 'https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/gruvbox-dark.css',
success: function(css) {
$("<style></style>").appendTo('head').html(css);
}
});
});
EOF
sudo npx asar pack $SLACK_ASAR.unpacked $SLACK_ASAR I extracted the new asar to a new directory to see if my changes were still in there, and I do see them right after the source map comment as expected. |
I ran through extraction, modification, and packing manually and have been able to get it working properly. Only difference is that I put the function in before the source map comment, but that shouldn't matter. |
Very strange... I tried this other script as-is and I get the same result: https://github.com/LanikSJ/slack-dark-mode Still seeing light mode but I extracted the asar and do see the modifications to @crustyboot are you on macOS? I'm using 10.14.3 on a 2018 MBP with a 2.2GHz i7, if that matters. |
Hey @lvarado, yeah I am running macOS 10.13. So looking at your script, the other thing I did that was different was extract I wonder if something went sideways when you packaged |
Good thought, I just tried a different directory name and still no dice. Double checked the update is present by unpacking the new asar. I'll let my retinas burn for now and use the webapp with Stylish whenever possible until someone smarter and more patient than me gets this same issue. |
This script worked for me: https://github.com/smitt04/slack-dark-theme/blob/master/darkSlack.sh#L23 |
Thank you for sharing, @tborychowski! That script worked for me too. It looks like maybe |
@tborychowski or whoever else may know.. When I run that script, I entered my password to grant the sudo access, getting this error, any ideas? EDIT: Looks like I got it going with |
Anyone managed to get it to work in Windows with ANY of these solutions? |
@ransagy |
pretty annoying these steps we have to take to do this, when they could just release their own dark mode already.. I've been using their builtin darkmode on android and its been great. |
I strongly agree it is annoying, especially when every update requires manual effort to re-enable dark scripts. IIRC they mentioned that they plan to support dark mode for the web client, so we just have to be patient and respect the software development process. There's probably more technical challenges than we appreciate being on the outside looking in. My hope is that this new v4 lays some kind of groundwork for improved theming. |
Kinda hard to be patient when they have promised native dark mode since 2014. |
Ah. The JS there is significantly different, Interesting. I'll try it ASAP, thanks! |
Thanks to the above link, I have hacked together an update for the powershell script I shared previously to apply this: #73 (comment)
Instructions:
|
This works, Thanks! I'm guessing the really new change here is that we need to refresh and mod the webviews as you and others suggested, it's not enough to just inject the style. |
Substitution with sed:
|
Thanks for this! Anyone know how to get rid of the white titlebar on MacOSX once applying these changes for v4.0? It seems like once you get Slack in dark mode by appending the custom CSS, the window titlebar reverts to bright white. Also, I've needed to "Reset App Data..." in order to get the dark mode results to appear (reloading doesn't work). Does anyone have a workaround that doesn't require selecting "Reset App Data..."? |
I'm trying to get this to work for ubuntu 'snap' installs. Is it important that I pack the asar with the node modules in the unpacked folder? or should i unpack it separately, make my changes, then repack it separately? |
@andrewcartwright1 Any chance you want to source control that script and centralize updates for it? I just ran it this morning and it worked, thanks! |
https://github.com/LanikSJ/slack-dark-mode -- This repo has a script that works for MAc, linux(snap installs as well), and windows. You could take the script and replace the css with the css of this repo to get it to work. |
You can also use https://github.com/Gargaj/makeitdark/blob/master/makeitdark.py if you don't want to install node.js |
I was having some issues with the desktop app on Windows after its auto-update to 4.0.2. It was not displaying the dark theme even when the ssb-interop.bundle.js & app.asar were modified correctly. What worked for me was to exit Slack, delete everything in %appdata%\Slack (i.e. Roaming, not Local), and reopen Slack. I think all the cached files in that directory were to blame, but I didn't have the patience to figure out which ones so I deleted them all, to no ill effect. |
It looks like the file to use is now main-preload-entry-point.bundle.js rather than ssb-interop.bundle.js. Credit to https://github.com/caiceA/slack-black-theme/ |
…#234) tipped me off to a fix here (https://github.com/caiceA/slack-black-theme/commit/c09f3e0fe9c3f362f3c8c9e55554da076a04a354\#diff-4e5b58d0c0e2e47e41878b4116e03b7f) which worked for me.
In Slack beta 4.0.0, the
ssb-interop.js
no longer exists. It looks like Slack modified the internal structure of the app, and I couldn't locate where the CSS is now located.The text was updated successfully, but these errors were encountered: