discord: use equibop + midnight theme

This commit is contained in:
2 * r + 2 * t
2025-02-17 23:27:39 +11:00
parent ccdcfb6f4a
commit 3b8016c190
5 changed files with 106 additions and 47 deletions
+97
View File
@@ -0,0 +1,97 @@
/**
* @name Midnight (Caelestia)
* @description A dark, rounded discord theme. Caelestia dynamic colours.
* @author refact0r, esme, anubis
* @version 1.6.2
* @invite nz87hXyvcy
* @website https://github.com/refact0r/midnight-discord
* @authorId 508863359777505290
* @authorLink https://www.refact0r.dev
*/
@use "sass:color";
@use "colours" as c;
/* IMPORTANT: make sure to enable dark mode in discord settings for the theme to apply properly!!! */
@import url("https://refact0r.github.io/midnight-discord/midnight.css");
/* customize things here */
:root {
/* font, change to 'gg sans' for default discord font*/
--font: "figtree";
/* top left corner text */
--corner-text: "Caelestia";
/* thickness of messages divider */
--divider-thickness: 3px;
/* color of status indicators and window controls */
--online-indicator: #a6da95; /* change to #23a55a for default green */
--dnd-indicator: #ed8796; /* change to #f23f43 for default red */
--idle-indicator: #eed49f; /* change to #f0b232 for default yellow */
--streaming-indicator: #c6a0f6; /* change to #593695 for default purple */
/* accent colors */
--accent-1: #{c.$lavender}; /* links */
--accent-2: #{c.$lavender}; /* general unread/mention elements */
--accent-3: #{c.$lavender}; /* accent buttons */
--accent-4: #{color.change(c.$lavender, $saturation: 68%, $lightness: 77%)}; /* accent buttons when hovered */
--accent-5: #{color.change(c.$lavender, $saturation: 52%, $lightness: 69%)}; /* accent buttons when clicked */
--mention: #{color.change(c.$lavender, $saturation: 67%, $lightness: 77%, $alpha: 0.1)}; /* mentions & mention messages */
--mention-hover: #{color.change(c.$lavender, $saturation: 67%, $lightness: 77%, $alpha: 0.05)}; /* mentions & mention messages when hovered */
/* text colors */
--text-0: #{c.$text}; /* text on colored elements */
--text-1: #{color.change(c.$text, $lightness: 95%)}; /* bright text on colored elements */
--text-2: #{color.change(c.$text, $lightness: 88%)}; /* headings and important text */
--text-3: #{color.change(c.$text, $lightness: 80%)}; /* normal text */
--text-4: #{c.$overlay1}; /* icon buttons and channels */
--text-5: #{c.$subtext0}; /* muted channels/chats and timestamps */
/* background and dark colors */
--bg-1: #{c.$surface1}; /* dark buttons when clicked */
--bg-2: #{c.$surface0}; /* dark buttons */
--bg-3: #{c.$mantle}; /* spacing, secondary elements */
--bg-4: #{c.$base}; /* main background color */
--hover: #{color.change(c.$overlay1, $alpha: 0.1)}; /* channels and buttons when hovered */
--active: #{color.change(c.$overlay1, $alpha: 0.2)}; /* channels and buttons when clicked or selected */
--message-hover: rgba(0, 0, 0, 0.1); /* messages when hovered */
/* amount of spacing and padding */
--spacing: 12px;
/* animations */
/* ALL ANIMATIONS CAN BE DISABLED WITH REDUCED MOTION IN DISCORD SETTINGS */
--list-item-transition: 0.2s ease; /* channels/members/settings hover transition */
--unread-bar-transition: 0.2s ease; /* unread bar moving into view transition */
--moon-spin-transition: 0.4s ease; /* moon icon spin */
--icon-spin-transition: 1s ease; /* round icon button spin (settings, emoji, etc.) */
/* corner roundness (border-radius) */
--roundness-xl: 22px; /* roundness of big panel outer corners */
--roundness-l: 20px; /* popout panels */
--roundness-m: 16px; /* smaller panels, images, embeds */
--roundness-s: 12px; /* members, settings inputs */
--roundness-xs: 10px; /* channels, buttons */
--roundness-xxs: 8px; /* searchbar, small elements */
/* direct messages moon icon */
/* change to block to show, none to hide */
--discord-icon: none; /* discord icon */
--moon-icon: block; /* moon icon */
--moon-icon-url: url("https://upload.wikimedia.org/wikipedia/commons/c/c4/Font_Awesome_5_solid_moon.svg"); /* custom icon url */
--moon-icon-size: auto;
/* filter uncolorable elements to fit theme */
/* (just set to none, they're too much work to configure) */
--login-bg-filter: none; /* login background artwork */
--green-to-accent-3-filter: none; /* add friend page explore icon */
--blurple-to-accent-3-filter: none; /* add friend page school icon */
/* choose style for window control buttons (minimize-maximize-close) */
/* block to show, none to hide; choose only one to show!*/
--windows-nav: none; /* default windows-style buttons */
--custom-nav: none; /* custom mac-style buttons */
}
+5 -33
View File
@@ -8,6 +8,7 @@ end
. (dirname (status filename))/util.fish
install-deps git
install-optional-deps 'arrpc (rich presence)'
set -l systemd $CONFIG/../systemd/user
set -l client $CONFIG/../$argv[1]
@@ -23,41 +24,12 @@ if test -d $systemd
echo "[Service]
Type=oneshot
ExecStart=$discord/monitor/update.fish" > $systemd/discord-monitor-scheme.service
cp $discord/monitor/discord-monitor-scheme.path $systemd/discord-monitor-scheme.path
ExecStart=$discord/monitor/update.fish" > $systemd/$discord-monitor-scheme.service
cp $discord/monitor/discord-monitor-scheme.path $systemd/$discord-monitor-scheme.path
systemctl --user daemon-reload
systemctl --user enable --now discord-monitor-scheme.path
systemctl --user start discord-monitor-scheme.service
end
# Optionally install arRPC
read -l -p "input 'Install arRPC? [Y/n] ' -n" confirm
if test "$confirm" = 'n' -o "$confirm" = 'N'
log 'Skipping.'
else
log 'Installing arRPC...'
install-deps npm
git clone 'https://github.com/OpenAsar/arrpc.git' $discord/arrpc
cd $discord/arrpc || exit
npm install
echo "[Unit]
Description=arRPC Discord RPC daemon
After=network.target
[Service]
Type=simple
ExecStart=node $discord/arrpc/src
Restart=on-failure
WorkingDirectory=$discord/arrpc
[Install]
WantedBy=default.target" > $systemd/arrpc.service
systemctl --user daemon-reload
systemctl --user enable --now arrpc.service
systemctl --user enable --now $discord-monitor-scheme.path
systemctl --user start $discord-monitor-scheme.service
end
# Link themes to client config
+1 -1
View File
@@ -3,7 +3,7 @@
. (dirname (status filename))/util.fish
install-deps git hyprland-git hyprpaper-git okolors-git imagemagick wl-clipboard fuzzel-git socat foot jq python
install-optional-deps 'vesktop-bin (discord client)' 'btop (system monitor)' 'wf-recorder (screen recorder)' 'grim (screenshot tool)' 'firefox (web browser)' 'spotify-adblock (music player)'
install-optional-deps 'equibop-bin (discord client)' 'btop (system monitor)' 'wf-recorder (screen recorder)' 'grim (screenshot tool)' 'firefox (web browser)' 'spotify-adblock (music player)'
set -l dist $CONFIG/scripts
+2 -12
View File
@@ -14,15 +14,6 @@ function gen-scss
end
end
function gen-scss-palette
echo '$palette: ('
for colour in $argv
set -l split (string split ' ' $colour)
echo " \"$split[1]\": #$split[2],"
end
echo ');'
end
function gen-ini -a program
cp (dirname (status filename))/../data/$program.template $CONFIG/../$program/schemes/dynamic.ini
for colour in $argv[2..]
@@ -70,9 +61,8 @@ end
if test -d $CONFIG/discord
log 'Generating discord scheme'
gen-scss $colours > $CONFIG/discord/dynamic/_variables.scss
gen-scss-palette $colours >> $CONFIG/discord/dynamic/_variables.scss
sass -q --no-charset --no-source-map $CONFIG/discord/dynamic/dynamic.scss $CONFIG/discord/themes/dynamic.theme.css
gen-scss $colours > /tmp/_colours.scss
sass --no-charset --no-source-map -I /tmp $src/../data/discord.template $CONFIG/discord/themes/dynamic.theme.css
end
if test -d $CONFIG/../foot/schemes
+1 -1
View File
@@ -2,7 +2,7 @@
. (dirname (status filename))/util.fish
spawn-or-move '.class == "vesktop"' communication vesktop --enable-features=WebRTCPipeWireCapturer
spawn-or-move '.class == "equibop"' communication equibop
# Has whatsapp firefox profile
if grep -q 'Name=whatsapp' ~/.mozilla/firefox/profiles.ini