Last active
November 13, 2018 13:12
-
-
Save mykeels/74316425ec4d9517262bf4d8c19b1ec2 to your computer and use it in GitHub Desktop.
A shell script to change slack's colors
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" | |
| INTEROP_FOLDER="/Applications/Slack.app/Contents/Resources/app.asar.unpacked/src/static" | |
| BACKUP_FILE="$DIR/backup/ssb-interop.js" | |
| if [ -f "$BACKUP_FILE" ] | |
| then | |
| cp "$BACKUP_FILE" "$INTEROP_FOLDER" | |
| # restart slack | |
| killall "Slack" # kill all slack processes | |
| /Applications/Slack.app/Contents/MacOS/Slack </dev/null &>/dev/null & # start slack process in detached mode | |
| fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| function show_usage() { | |
| echo " | |
| NAME | |
| slack-theme | |
| SYNOPSIS | |
| sh slack-theme | |
| sh slack-theme day | |
| sh slack-theme night | |
| sh slack-theme night-mono | |
| sh slack-theme aubergine | |
| sh slack-theme aubergine-mono | |
| sh slack-theme arc-dark | |
| sh slack-theme midnight-blue | |
| sh slack-theme midnight-blue-mono | |
| DESCRIPTION | |
| Change Slack Colors | |
| COMMANDS | |
| day | |
| Revert to Day Mode | |
| night | |
| Use Black CSS | |
| night-mono | |
| Use Night-Mono CSS | |
| aubergine | |
| Use Aubergine CSS | |
| aubergine-mono | |
| Use Aubergine-Mono CSS | |
| arc-dark | |
| Use Arc-Dark CSS | |
| midnight-blue | |
| Use Midnight-Blue CSS | |
| midnight-blue-mono | |
| Use Midnight-Blue-Mono CSS | |
| Report any bugs to [email protected] | |
| " | |
| } | |
| ARC_DARK_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/arc-dark.css" | |
| AUBERGINE_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/aubergine.css" | |
| AUBERGINE_MONO_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/aubergine-monospaced.css" | |
| BLACK_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css" | |
| BLACK_MONO_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/black-monospaced.css" | |
| MIDNIGHT_BLUE_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/midnight-blue.css" | |
| MIDNIGHT_BLUE_MONO_PATH="https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/variants/midnight-blue-monospaced.css" | |
| DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" | |
| INTEROP_FILE="/Applications/Slack.app/Contents/Resources/app.asar.unpacked/src/static/ssb-interop.js" | |
| BACKUP_FOLDER="$DIR/backup" | |
| BACKUP_FILE="$BACKUP_FOLDER/ssb-interop.js" | |
| if [ -z "$1" ] | |
| then | |
| show_usage | |
| exit 0 | |
| fi | |
| if [ "$1" == "install" ] | |
| then | |
| chmod 755 "$DIR/slack-theme" | |
| if [ -z "$(cat ~/.bash_profile | grep "PATH=\$PATH:$PWD")" ] | |
| then | |
| echo "export PATH=\$PATH:$PWD" >> ~/.bash_profile | |
| fi | |
| echo "installed successfully" | |
| exit 0 | |
| fi | |
| if [ "$1" == "day" ] | |
| then | |
| . "$DIR/slack-day" | |
| exit 0 | |
| fi | |
| if [ "$1" == "night" ] | |
| then | |
| CSS_PATH="$BLACK_PATH" | |
| fi | |
| if [ "$1" == "night-mono" ] | |
| then | |
| CSS_PATH="$BLACK_MONO_PATH" | |
| fi | |
| if [ "$1" == "aubergine" ] | |
| then | |
| CSS_PATH="$AUBERGINE_PATH" | |
| fi | |
| if [ "$1" == "aubergine-mono" ] | |
| then | |
| CSS_PATH="$AUBERGINE_MONO_PATH" | |
| fi | |
| if [ "$1" == "arc-dark" ] | |
| then | |
| CSS_PATH="$ARC_DARK_PATH" | |
| fi | |
| if [ "$1" == "midnight-blue" ] | |
| then | |
| CSS_PATH="$MIDNIGHT_BLUE_PATH" | |
| fi | |
| if [ "$1" == "midnight-blue-mono" ] | |
| then | |
| CSS_PATH="$MIDNIGHT_BLUE_MONO_PATH" | |
| fi | |
| if [ -z "$CSS_PATH" ] | |
| then | |
| echo "invalid command" | |
| exit 1 | |
| fi | |
| NODE_SCRIPT=" | |
| document.addEventListener('DOMContentLoaded', function() { | |
| $.ajax({ | |
| url: '$CSS_PATH', | |
| success: function(css) { | |
| let overrides = \` | |
| code { background-color: #535353; color: #85c5ff; } /* Change color: to whatever font color you want */ | |
| .c-mrkdwn__pre, .c-mrkdwn__quote { background: #535353 !important; background-color: #535353 !important; } | |
| \` | |
| \$('<style></style>').appendTo('head').html(css + overrides); | |
| } | |
| }); | |
| }); | |
| " | |
| if [ -f "$INTEROP_FILE" ] | |
| then | |
| mkdir -p "$DIR/backup" # create folder if it does not exist | |
| if [ -z "$(cat "$INTEROP_FILE" | grep "DOMContentLoaded")" ] | |
| then | |
| cp "$INTEROP_FILE" "$BACKUP_FOLDER" # copy file as backup | |
| else | |
| if [ -f "$BACKUP_FILE" ] | |
| then | |
| cp "$BACKUP_FILE" "$INTEROP_FILE" | |
| else | |
| echo "backup file not found" | |
| exit 1 | |
| fi | |
| fi | |
| echo "$NODE_SCRIPT" >> "$INTEROP_FILE" # append script to file | |
| # restart slack | |
| killall "Slack" # kill all slack processes | |
| /Applications/Slack.app/Contents/MacOS/Slack </dev/null &>/dev/null & # start slack process in detached mode | |
| else | |
| echo "file does not exist" | |
| fi |
Author
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
To download and install, run the following code in your terminal: