summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/discord.template97
-rwxr-xr-xinstall/discord.fish38
-rwxr-xr-xinstall/scripts.fish2
-rwxr-xr-xscheme/apply-scheme.fish14
-rwxr-xr-xtoggles/communication.fish2
5 files changed, 106 insertions, 47 deletions
diff --git a/data/discord.template b/data/discord.template
new file mode 100644
index 0000000..c6b32b1
--- /dev/null
+++ b/data/discord.template
@@ -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 */
+}
diff --git a/install/discord.fish b/install/discord.fish
index c8f81d7..c8bba5e 100755
--- a/install/discord.fish
+++ b/install/discord.fish
@@ -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
diff --git a/install/scripts.fish b/install/scripts.fish
index 314d3c1..3cca775 100755
--- a/install/scripts.fish
+++ b/install/scripts.fish
@@ -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
diff --git a/scheme/apply-scheme.fish b/scheme/apply-scheme.fish
index b61ac88..ea15aa4 100755
--- a/scheme/apply-scheme.fish
+++ b/scheme/apply-scheme.fish
@@ -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
diff --git a/toggles/communication.fish b/toggles/communication.fish
index c9ca00b..7237d4b 100755
--- a/toggles/communication.fish
+++ b/toggles/communication.fish
@@ -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