** TODO Drawing with Krita
** DONE Circuit Design
** TODO Learn More Solidity
-** TODO Learn Haskell
+** TODO Learn Idris
** TODO Learn Lean Theorem Prover
* Academic
** TODO QFT
SCHEDULED: <2025-09-16 Tue 15:45>
*** DONE Friends Stay a Night
SCHEDULED: <2025-09-23 Tue>
-*** TODO Covet Concert
-SCHEDULED: <2025-10-10 Fri>
-Exciting!
-*** TODO Optometry appointment
+*** DONE Optometry appointment
SCHEDULED: <2025-09-29 Mon 16:45>
For eye health @ Mount Pleasant Optometry.
-*** TODO Magbay Concert
+*** DONE Magbay Concert
SCHEDULED: <2025-09-30 Tue>
Exciting!
-*** TODO Blood test
-SCHEDULED: <2025-10-02 Thu 16:15>
+*** TODO Covet Concert
+SCHEDULED: <2025-10-10 Fri>
+Exciting!
*** TODO BCID
-SCHEDULED: <2025-10-03 Fri 03:40>
+SCHEDULED: <2025-10-04 Fri 03:40>
** Friends
These are tasks related to seeing my friends. There will be tasks listed here when I schedule
something.
These are some habits I want to track. They are repeated according to a calendar schedule in
general.
** TODO Supplements
-SCHEDULED: <2025-09-25 Thu .+1d>
+SCHEDULED: <2025-10-01 Wed .+1d>
:PROPERTIES:
-:LAST_REPEAT: [2025-09-24 Wed 07:07]
+:LAST_REPEAT: [2025-09-30 Tue 13:20]
:STYLE: habit
:END:
+- State "DONE" from "TODO" [2025-09-30 Tue 13:20]
+- State "DONE" from "TODO" [2025-09-28 Sun 20:52]
- State "DONE" from "TODO" [2025-09-24 Wed 07:07]
- State "DONE" from "TODO" [2025-09-21 Sun 06:57]
- State "DONE" from "TODO" [2025-09-17 Wed 03:40]
- EPA/DHA
- Creatine Monohydrate
** TODO Strength Training
-SCHEDULED: <2025-09-25 Thu .+1d>
+SCHEDULED: <2025-09-29 Mon .+1d>
:PROPERTIES:
-:LAST_REPEAT: [2025-09-24 Wed 07:08]
+:LAST_REPEAT: [2025-09-28 Sun 20:52]
:STYLE: habit
:END:
+- State "DONE" from "TODO" [2025-09-28 Sun 20:52]
- State "DONE" from "TODO" [2025-09-24 Wed 07:08]
- State "DONE" from "TODO" [2025-09-21 Sun 06:57]
- State "DONE" from "TODO" [2025-09-17 Wed 03:40]
- State "DONE" from "TODO" [2025-03-11 Tue 00:16]
I want to be healthy.
** TODO Run
-SCHEDULED: <2025-08-26 Tue .+1d>
+SCHEDULED: <2025-09-29 Mon .+1d>
:PROPERTIES:
-:LAST_REPEAT: [2025-08-25 Mon 21:17]
+:LAST_REPEAT: [2025-09-28 Sun 20:52]
:END:
+- State "DONE" from "TODO" [2025-09-28 Sun 20:52]
- State "DONE" from "TODO" [2025-08-25 Mon 21:17]
- State "DONE" from "TODO" [2025-06-26 Thu 23:22]
I want to be able to run or bike every day so that I get my exercise in.
- State "DONE" from "TODO" [2025-01-11 Sat 02:26]
I want to stretch every day so that I can become more flexible.
** TODO Journal
-SCHEDULED: <2025-09-25 Thu .+1d>
+SCHEDULED: <2025-09-29 Mon .+1d>
:PROPERTIES:
-:LAST_REPEAT: [2025-09-24 Wed 07:08]
+:LAST_REPEAT: [2025-09-28 Sun 20:52]
:STYLE: habit
:END:
+- State "DONE" from "TODO" [2025-09-28 Sun 20:52]
- State "DONE" from "TODO" [2025-09-24 Wed 07:08]
- State "DONE" from "TODO" [2025-09-17 Wed 03:40]
- State "DONE" from "TODO" [2025-09-16 Tue 03:14]
;; load theme, fonts, and transparency. Prettify symbols.
(global-prettify-symbols-mode 1)
(set-face-attribute 'default nil :font "Iosevka Nerd Font" :height 130)
- (set-frame-parameter nil 'alpha-background 90)
- (add-to-list 'default-frame-alist '(alpha-background . 90)))
+ (set-frame-parameter nil 'alpha-background 70)
+ (add-to-list 'default-frame-alist '(alpha-background . 70)))
(use-package org
:hook
;; load theme, fonts, and transparency. Prettify symbols.
(global-prettify-symbols-mode 1)
(set-face-attribute 'default nil :font "Iosevka Nerd Font" :height 130)
- (set-frame-parameter nil 'alpha-background 90)
- (add-to-list 'default-frame-alist '(alpha-background . 90)))
+ (set-frame-parameter nil 'alpha-background 70)
+ (add-to-list 'default-frame-alist '(alpha-background . 70)))
#+end_src
As you can see, the config (and sometimes the init section) of most of these use-package blocks
contain most of the imperative commands. In fact, most of the configurations are completely
};
}
#+end_src
-** Firejail
-I know there are some security issues with firejail, but it's probably better than nothing. I'm looking to replace this with bubblewrap in the
-future. Note that I am also going to use AppArmor more often.
-#+begin_src nix :tangle ../nix/modules/firejail.nix
- { pkgs, lib, ... }:
- {
- programs.firejail = {
- enable = true;
- wrappedBinaries = {
- firefox = {
- executable = "${lib.getBin pkgs.firefox-bin}/bin/firefox";
- profile = "${pkgs.firejail}/etc/firejail/firefox.profile";
- };
- emacs = {
- executable = "${lib.getBin pkgs.emacs-pgtk}/bin/emacs";
- profile = "${pkgs.firejail}/etc/firejail/emacs.profile";
- };
- zathura = {
- executable = "${lib.getBin pkgs.zathura}/bin/zathura";
- profile = "${pkgs.firejail}/etc/firejail/zathura.profile";
- };
- };
- };
- }
-#+end_src
** Main Configuration
This is the backbone of the all the NixOS configurations, with all these options being shared
because they enhance security.
./znc.nix
./docker.nix
./impermanence.nix
- ./firejail.nix
];
documentation = {
};
loader = {
- systemd-boot.enable = lib.mkForce ((! config.monorepo.profiles.grub.enable) || (! config.monorepo.profiles.secureBoot.enable));
+ systemd-boot.enable = lib.mkForce ((! config.monorepo.profiles.grub.enable) && (! config.monorepo.profiles.secureBoot.enable));
efi.canTouchEfiVariables = lib.mkForce (! config.monorepo.profiles.grub.enable);
};
};
networking = {
- useDHCP = false;
- dhcpcd.enable = false;
- nameservers = [
- "1.1.1.1"
- "8.8.8.8"
- ];
+ nameservers = [ "8.8.8.8" "1.1.1.1"];
+ dhcpcd.enable = (! config.monorepo.profiles.server.enable);
networkmanager = {
enable = true;
wifi.powersave = false;
./mpd.nix
./mako.nix
./user.nix
+ ./gtk.nix
];
options = {
exec-once = [
"waybar"
"swww-daemon --format xrgb"
- "swww img ${wallpapers}/imagination.png"
+ "sh -c 'swww img \"$(find ${wallpapers} -type f \\( -iname \"*.jpg\" -o -iname \"*.png\" \\) | shuf -n1)\"'"
"fcitx5-remote -r"
"fcitx5 -d --replace"
"fcitx5-remote -r"
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
"ELECTRON_OZONE_PLATFORM_HINT,auto"
];
- blurls = [
- "waybar"
+ layerrule = [
+ "blur,waybar"
];
monitor = [
"Unknown-1,disable"
"workspace 3, title:^(.*fluffychat.*)$"
"workspace 3, class:^(.*element-desktop.*)$"
"workspace 4, class:^(.*qpwgraph.*)$"
+ "workspace 4, class:^(.*pavucontrol.*)$"
"workspace 4, class:^(.*mpv.*)$"
"workspace 5, title:^(.*Monero.*)$"
"workspace 5, title:^(.*org\.bitcoin\..*)$"
];
bind = [
"$mod, F, exec, firefox"
- "$mod, T, exec, tor-browser"
"$mod, Return, exec, kitty"
"$mod, E, exec, emacs"
"$mod, B, exec, bitcoin-qt"
+ "$mod, S, exec, pavucontrol"
"$mod, M, exec, monero-wallet-gui"
"$mod, V, exec, vesktop"
"$mod, C, exec, fluffychat"
"$mod SHIFT, L, movewindow, r"
"$mod SHIFT, K, movewindow, u"
"$mod SHIFT, J, movewindow, d"
+ "$mod, T, togglefloating"
"$mod, H, movefocus, l"
"$mod, L, movefocus, r"
"$mod, K, movefocus, u"
"$mod, J, movefocus, d"
", XF86AudioPlay, exec, mpc toggle"
", Print, exec, grim"
+
+ "$mod, right, resizeactive, 30 0"
+ "$mod, left, resizeactive, -30 0"
+ "$mod, up, resizeactive, 0 -30"
+ "$mod, down, resizeactive, 0 30"
]
++ (
builtins.concatLists (builtins.genList
decoration = {
blur = {
enabled = true;
- size = 5;
- passes = 2;
+ size = 9;
+ passes = 4;
+ contrast = 0.8;
+ brightness = 1.1;
+ noise = 0.02;
+ new_optimizations = true;
+ ignore_opacity = true;
+ xray = false;
};
rounding = 5;
};
*** Kitty
I've set my terminal, kitty, to use catppuccin colors.
#+begin_src nix :tangle ../nix/modules/home/kitty.nix
-{ lib, config, ... }:
-{
- programs.kitty = {
- enable = lib.mkDefault (config.monorepo.profiles.hyprland.enable && config.monorepo.profiles.graphics.enable);
- settings = {
- enable_audio_bell = false;
- font_family = "Iosevka Nerd Font";
- font_size = 14;
- confirm_os_window_close = 0;
- background_opacity = "0.9";
- # Catppuccin theme
- foreground = "#cdd6f4";
- background = "#1e1e2e";
- selection_foreground = "#1e1e2e";
- selection_background = "#f5e0dc";
- cursor = "#f5e0dc";
- cursor_text_color = "#1e1e2e";
- url_color = "#f5e0dc";
- active_border_color = "#B4BEFE";
- inactive_border_color = "#6C7086";
- bell_border_color = "#F9E2AF";
- wayland_titlebar_color = "#1E1E2E";
- macos_titlebar_color = "#1E1E2E";
- active_tab_foreground = "#11111B";
- active_tab_background = "#CBA6F7";
- inactive_tab_foreground = "#CDD6F4";
- inactive_tab_background = "#181825";
- tab_bar_background = "#11111B";
- mark1_foreground = "#1E1E2E";
- mark1_background = "#B4BEFE";
- mark2_foreground = "#1E1E2E";
- mark2_background = "#CBA6F7";
- mark3_foreground = "#1E1E2E";
- mark3_background = "#74C7EC";
- color0 = "#45475A";
- color8 = "#585B70";
- color1 = "#F38BA8";
- color9 = "#F38BA8";
- color2 = "#A6E3A1";
- color10 = "#A6E3A1";
- color3 = "#F9E2AF";
- color11 = "#F9E2AF";
- color4 = "#89B4FA";
- color12 = "#89B4FA";
- color5 = "#F5C2E7";
- color13 = "#F5C2E7";
- color6 = "#94E2D5";
- color14 = "#94E2D5";
- color7 = "#BAC2DE";
- color15 = "#A6ADC8";
+ { lib, config, ... }:
+ {
+ programs.kitty = {
+ enable = lib.mkDefault (config.monorepo.profiles.hyprland.enable && config.monorepo.profiles.graphics.enable);
+ settings = {
+ enable_audio_bell = false;
+ font_family = "Iosevka Nerd Font";
+ font_size = 14;
+ confirm_os_window_close = 0;
+ background_opacity = "0.7";
+ # Catppuccin theme
+ foreground = "#cdd6f4";
+ background = "#1e1e2e";
+ selection_foreground = "#1e1e2e";
+ selection_background = "#f5e0dc";
+ cursor = "#f5e0dc";
+ cursor_text_color = "#1e1e2e";
+ url_color = "#f5e0dc";
+ active_border_color = "#B4BEFE";
+ inactive_border_color = "#6C7086";
+ bell_border_color = "#F9E2AF";
+ wayland_titlebar_color = "#1E1E2E";
+ macos_titlebar_color = "#1E1E2E";
+ active_tab_foreground = "#11111B";
+ active_tab_background = "#CBA6F7";
+ inactive_tab_foreground = "#CDD6F4";
+ inactive_tab_background = "#181825";
+ tab_bar_background = "#11111B";
+ mark1_foreground = "#1E1E2E";
+ mark1_background = "#B4BEFE";
+ mark2_foreground = "#1E1E2E";
+ mark2_background = "#CBA6F7";
+ mark3_foreground = "#1E1E2E";
+ mark3_background = "#74C7EC";
+ color0 = "#45475A";
+ color8 = "#585B70";
+ color1 = "#F38BA8";
+ color9 = "#F38BA8";
+ color2 = "#A6E3A1";
+ color10 = "#A6E3A1";
+ color3 = "#F9E2AF";
+ color11 = "#F9E2AF";
+ color4 = "#89B4FA";
+ color12 = "#89B4FA";
+ color5 = "#F5C2E7";
+ color13 = "#F5C2E7";
+ color6 = "#94E2D5";
+ color14 = "#94E2D5";
+ color7 = "#BAC2DE";
+ color15 = "#A6ADC8";
+ };
};
- };
-}
+ }
#+end_src
*** Mako
This is my notification system. My flake automatically fetches the notification sound, so you
};
}
#+end_src
+*** GTK
+#+begin_src nix :tangle ../nix/modules/home/gtk.nix
+ { lib, config, pkgs, ... }:
+ {
+ gtk = {
+ theme = {
+ package = pkgs.catppuccin-gtk;
+ };
+ };
+ }
+#+end_src
*** Secrets
This uses sops in order to declaratively create the secrets on my system by unencrypting
the yaml file specified. Yes, this is safe to include in the repo.
boot.loader.grub.device = "nodev";
networking = {
+ interfaces.ens3.ipv4.addresses = [
+ {
+ address = ipv4addr;
+ prefixLength = 24;
+ }
+ ];
interfaces.ens3.ipv6.addresses = [
{
address = ipv6addr;
--- /dev/null
+#+TITLE: Daily Journal
+#+STARTUP: showeverything
+#+DESCRIPTION: My daily journal entry
+#+AUTHOR: Preston Pan
+#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../style.css" />
+#+html_head: <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
+#+html_head: <script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+#+options: broken-links:t
+* Sunday, 28 September 2025
+** 20:51
+I fixed my sleep schedule so I am sleeping at a reasonable time now, and I'm going to be more committed to keeping up my blog,
+as well as my agenda and journal in the future.
]
},
"locked": {
- "lastModified": 1758313341,
- "narHash": "sha256-SsI6INUzWwPcRKRaxvi50RttnD9rcC4EjV+67TOEfrQ=",
+ "lastModified": 1758463745,
+ "narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "6f656618ebc71ca82d93d306a8aecb2c5f6f2ab2",
+ "rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
"type": "github"
},
"original": {
]
},
"locked": {
- "lastModified": 1758163506,
- "narHash": "sha256-eGksZmv1ie834yfgJW0z85eZZo10A/JE+6dhHNWQajQ=",
+ "lastModified": 1758768328,
+ "narHash": "sha256-PSg4x8RopDaQ1fkAA9bkmNoSQny373LPwTb/VzlR4uY=",
"owner": "nixpak",
"repo": "nixpak",
- "rev": "17df00be4383dbf88c42ed1fa519cc6dd71df042",
+ "rev": "d0a874ed12135081dfeed555eed8107ac55b01be",
"type": "github"
},
"original": {
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1758198701,
- "narHash": "sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc=",
+ "lastModified": 1758690382,
+ "narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d",
+ "rev": "e643668fd71b949c53f8626614b21ff71a07379d",
"type": "github"
},
"original": {
},
"nixpkgs_3": {
"locked": {
- "lastModified": 1758198701,
- "narHash": "sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc=",
+ "lastModified": 1758690382,
+ "narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d",
+ "rev": "e643668fd71b949c53f8626614b21ff71a07379d",
"type": "github"
},
"original": {
},
"nixpkgs_4": {
"locked": {
- "lastModified": 1757746433,
- "narHash": "sha256-fEvTiU4s9lWgW7mYEU/1QUPirgkn+odUBTaindgiziY=",
+ "lastModified": 1758976413,
+ "narHash": "sha256-hEIDTaIqvW1NMfaNgz6pjhZPZKTmACJmXxGr/H6isIg=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "6d7ec06d6868ac6d94c371458fc2391ded9ff13d",
+ "rev": "e3a3b32cc234f1683258d36c6232f150d57df015",
"type": "github"
},
"original": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
- "lastModified": 1758314668,
- "narHash": "sha256-UeSA8UbYgBeeI/r6YRlkwKrBMhnE2ZliSFb7QB7p4zQ=",
+ "lastModified": 1759032479,
+ "narHash": "sha256-SHa7Pw3bQVZZ41FDf0b6SfSHHx4GzNQRAbHQmQWwSEA=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "180ae0f66d4d50d36c01e750bd7c05f49ff8f24b",
+ "rev": "eb0a72b223db0a0a9095ac53b375148e5f868775",
"type": "github"
},
"original": {
"nixpkgs": "nixpkgs_4"
},
"locked": {
- "lastModified": 1758007585,
- "narHash": "sha256-HYnwlbY6RE5xVd5rh0bYw77pnD8lOgbT4mlrfjgNZ0c=",
+ "lastModified": 1759030640,
+ "narHash": "sha256-53VP3BqMXJqD1He1WADTFyUnpta3mie56H7nC59tSic=",
"owner": "Mic92",
"repo": "sops-nix",
- "rev": "f77d4cfa075c3de66fc9976b80e0c4fc69e2c139",
+ "rev": "9ac51832c70f2ff34fcc97b05fa74b4a78317f9e",
"type": "github"
},
"original": {
},
"wallpapers": {
"locked": {
- "lastModified": 1710138216,
- "narHash": "sha256-LcgB1Fkb9PZLF9BiV310mSWe3emK1+aJ2gxkeSsuOQ4=",
+ "lastModified": 1759390995,
+ "narHash": "sha256-u3MP+vb4DXbuEo6B8zVesG6t6MCtG9vFjp7Cxsazlxs=",
"owner": "ret2pop",
"repo": "wallpapers",
- "rev": "18edf36b53936ee2eda766b7b29ee91b21e2d5cd",
+ "rev": "3b88e204405fd594581b7d988abad9dc7e593884",
"type": "github"
},
"original": {
./znc.nix
./docker.nix
./impermanence.nix
- ./firejail.nix
];
documentation = {
};
loader = {
- systemd-boot.enable = lib.mkForce ((! config.monorepo.profiles.grub.enable) || (! config.monorepo.profiles.secureBoot.enable));
+ systemd-boot.enable = lib.mkForce ((! config.monorepo.profiles.grub.enable) && (! config.monorepo.profiles.secureBoot.enable));
efi.canTouchEfiVariables = lib.mkForce (! config.monorepo.profiles.grub.enable);
};
};
networking = {
- useDHCP = false;
- dhcpcd.enable = false;
- nameservers = [
- "1.1.1.1"
- "8.8.8.8"
- ];
+ nameservers = [ "8.8.8.8" "1.1.1.1"];
+ dhcpcd.enable = (! config.monorepo.profiles.server.enable);
networkmanager = {
enable = true;
wifi.powersave = false;
./mpd.nix
./mako.nix
./user.nix
+ ./gtk.nix
];
options = {
--- /dev/null
+{ lib, config, pkgs, ... }:
+{
+ gtk = {
+ theme = {
+ package = pkgs.catppuccin-gtk;
+ };
+ };
+}
exec-once = [
"waybar"
"swww-daemon --format xrgb"
- "swww img ${wallpapers}/imagination.png"
+ "sh -c 'swww img \"$(find ${wallpapers} -type f \\( -iname \"*.jpg\" -o -iname \"*.png\" \\) | shuf -n1)\"'"
"fcitx5-remote -r"
"fcitx5 -d --replace"
"fcitx5-remote -r"
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
"ELECTRON_OZONE_PLATFORM_HINT,auto"
];
- blurls = [
- "waybar"
+ layerrule = [
+ "blur,waybar"
];
monitor = [
"Unknown-1,disable"
"workspace 3, title:^(.*fluffychat.*)$"
"workspace 3, class:^(.*element-desktop.*)$"
"workspace 4, class:^(.*qpwgraph.*)$"
+ "workspace 4, class:^(.*pavucontrol.*)$"
"workspace 4, class:^(.*mpv.*)$"
"workspace 5, title:^(.*Monero.*)$"
"workspace 5, title:^(.*org\.bitcoin\..*)$"
];
bind = [
"$mod, F, exec, firefox"
- "$mod, T, exec, tor-browser"
"$mod, Return, exec, kitty"
"$mod, E, exec, emacs"
"$mod, B, exec, bitcoin-qt"
+ "$mod, S, exec, pavucontrol"
"$mod, M, exec, monero-wallet-gui"
"$mod, V, exec, vesktop"
"$mod, C, exec, fluffychat"
"$mod SHIFT, L, movewindow, r"
"$mod SHIFT, K, movewindow, u"
"$mod SHIFT, J, movewindow, d"
+ "$mod, T, togglefloating"
"$mod, H, movefocus, l"
"$mod, L, movefocus, r"
"$mod, K, movefocus, u"
"$mod, J, movefocus, d"
", XF86AudioPlay, exec, mpc toggle"
", Print, exec, grim"
+
+ "$mod, right, resizeactive, 30 0"
+ "$mod, left, resizeactive, -30 0"
+ "$mod, up, resizeactive, 0 -30"
+ "$mod, down, resizeactive, 0 30"
]
++ (
builtins.concatLists (builtins.genList
decoration = {
blur = {
enabled = true;
- size = 5;
- passes = 2;
+ size = 9;
+ passes = 4;
+ contrast = 0.8;
+ brightness = 1.1;
+ noise = 0.02;
+ new_optimizations = true;
+ ignore_opacity = true;
+ xray = false;
};
rounding = 5;
};
font_family = "Iosevka Nerd Font";
font_size = 14;
confirm_os_window_close = 0;
- background_opacity = "0.9";
+ background_opacity = "0.7";
# Catppuccin theme
foreground = "#cdd6f4";
background = "#1e1e2e";
boot.loader.grub.device = "nodev";
networking = {
+ interfaces.ens3.ipv4.addresses = [
+ {
+ address = ipv4addr;
+ prefixLength = 24;
+ }
+ ];
interfaces.ens3.ipv6.addresses = [
{
address = ipv6addr;
--- /dev/null
+{
+ "settings": {
+ "autoUpdate": false,
+ "autoUpdateNotification": false,
+ "useQuickCss": true,
+ "themeLinks": [],
+ "enabledThemes": [],
+ "enableReactDevtools": true,
+ "frameless": false,
+ "transparent": true,
+ "winCtrlQ": false,
+ "disableMinSize": false,
+ "winNativeTitleBar": false,
+ "plugins": {
+ "ChatInputButtonAPI": {
+ "enabled": false
+ },
+ "CommandsAPI": {
+ "enabled": true
+ },
+ "DynamicImageModalAPI": {
+ "enabled": false
+ },
+ "MemberListDecoratorsAPI": {
+ "enabled": false
+ },
+ "MessageAccessoriesAPI": {
+ "enabled": true
+ },
+ "MessageDecorationsAPI": {
+ "enabled": false
+ },
+ "MessageEventsAPI": {
+ "enabled": true
+ },
+ "MessagePopoverAPI": {
+ "enabled": false
+ },
+ "MessageUpdaterAPI": {
+ "enabled": false
+ },
+ "ServerListAPI": {
+ "enabled": false
+ },
+ "UserSettingsAPI": {
+ "enabled": true
+ },
+ "AccountPanelServerProfile": {
+ "enabled": false
+ },
+ "AlwaysAnimate": {
+ "enabled": false
+ },
+ "AlwaysExpandRoles": {
+ "enabled": false
+ },
+ "AlwaysTrust": {
+ "enabled": false
+ },
+ "AnonymiseFileNames": {
+ "enabled": false
+ },
+ "AppleMusicRichPresence": {
+ "enabled": false
+ },
+ "WebRichPresence (arRPC)": {
+ "enabled": false
+ },
+ "BANger": {
+ "enabled": false
+ },
+ "BetterFolders": {
+ "enabled": false
+ },
+ "BetterGifAltText": {
+ "enabled": false
+ },
+ "BetterGifPicker": {
+ "enabled": false
+ },
+ "BetterNotesBox": {
+ "enabled": false
+ },
+ "BetterRoleContext": {
+ "enabled": false
+ },
+ "BetterRoleDot": {
+ "enabled": false
+ },
+ "BetterSessions": {
+ "enabled": false
+ },
+ "BetterSettings": {
+ "enabled": true,
+ "disableFade": true,
+ "eagerLoad": true
+ },
+ "BetterUploadButton": {
+ "enabled": false
+ },
+ "BiggerStreamPreview": {
+ "enabled": false
+ },
+ "BlurNSFW": {
+ "enabled": false
+ },
+ "CallTimer": {
+ "enabled": false
+ },
+ "ClearURLs": {
+ "enabled": false
+ },
+ "ClientTheme": {
+ "enabled": false
+ },
+ "ColorSighted": {
+ "enabled": false
+ },
+ "ConsoleJanitor": {
+ "enabled": false
+ },
+ "ConsoleShortcuts": {
+ "enabled": false
+ },
+ "CopyEmojiMarkdown": {
+ "enabled": false
+ },
+ "CopyFileContents": {
+ "enabled": false
+ },
+ "CopyUserURLs": {
+ "enabled": false
+ },
+ "CrashHandler": {
+ "enabled": true
+ },
+ "CtrlEnterSend": {
+ "enabled": false
+ },
+ "CustomRPC": {
+ "enabled": false
+ },
+ "CustomIdle": {
+ "enabled": false
+ },
+ "Dearrow": {
+ "enabled": true,
+ "hideButton": false,
+ "replaceElements": 0,
+ "dearrowByDefault": true
+ },
+ "Decor": {
+ "enabled": false
+ },
+ "DisableCallIdle": {
+ "enabled": false
+ },
+ "DontRoundMyTimestamps": {
+ "enabled": false
+ },
+ "Experiments": {
+ "enabled": false
+ },
+ "F8Break": {
+ "enabled": false
+ },
+ "FakeNitro": {
+ "enabled": true,
+ "enableStickerBypass": true,
+ "enableStreamQualityBypass": true,
+ "enableEmojiBypass": true,
+ "transformEmojis": true,
+ "transformStickers": true,
+ "transformCompoundSentence": false
+ },
+ "FakeProfileThemes": {
+ "enabled": true,
+ "nitroFirst": true
+ },
+ "FavoriteEmojiFirst": {
+ "enabled": false
+ },
+ "FavoriteGifSearch": {
+ "enabled": false
+ },
+ "FixCodeblockGap": {
+ "enabled": false
+ },
+ "FixImagesQuality": {
+ "enabled": false
+ },
+ "FixSpotifyEmbeds": {
+ "enabled": false
+ },
+ "FixYoutubeEmbeds": {
+ "enabled": false
+ },
+ "ForceOwnerCrown": {
+ "enabled": false
+ },
+ "FriendInvites": {
+ "enabled": false
+ },
+ "FriendsSince": {
+ "enabled": false
+ },
+ "FullSearchContext": {
+ "enabled": false
+ },
+ "FullUserInChatbox": {
+ "enabled": false
+ },
+ "GameActivityToggle": {
+ "enabled": false
+ },
+ "GifPaste": {
+ "enabled": false
+ },
+ "GreetStickerPicker": {
+ "enabled": false
+ },
+ "iLoveSpam": {
+ "enabled": false
+ },
+ "IgnoreActivities": {
+ "enabled": false
+ },
+ "ImageLink": {
+ "enabled": false
+ },
+ "ImageZoom": {
+ "enabled": false
+ },
+ "ImplicitRelationships": {
+ "enabled": false
+ },
+ "InvisibleChat": {
+ "enabled": false
+ },
+ "IrcColors": {
+ "enabled": false
+ },
+ "KeepCurrentChannel": {
+ "enabled": false
+ },
+ "LastFMRichPresence": {
+ "enabled": false
+ },
+ "LoadingQuotes": {
+ "enabled": false
+ },
+ "MemberCount": {
+ "enabled": false
+ },
+ "MentionAvatars": {
+ "enabled": false
+ },
+ "MessageClickActions": {
+ "enabled": false
+ },
+ "MessageLatency": {
+ "enabled": false
+ },
+ "MessageLinkEmbeds": {
+ "enabled": false
+ },
+ "MessageLogger": {
+ "enabled": false
+ },
+ "MessageTags": {
+ "enabled": false
+ },
+ "MoreCommands": {
+ "enabled": false
+ },
+ "MoreKaomoji": {
+ "enabled": false
+ },
+ "Moyai": {
+ "enabled": false
+ },
+ "MutualGroupDMs": {
+ "enabled": false
+ },
+ "NewGuildSettings": {
+ "enabled": false
+ },
+ "NoBlockedMessages": {
+ "enabled": false
+ },
+ "NoDevtoolsWarning": {
+ "enabled": false
+ },
+ "NoF1": {
+ "enabled": false
+ },
+ "NoMaskedUrlPaste": {
+ "enabled": false
+ },
+ "NoMosaic": {
+ "enabled": false
+ },
+ "NoOnboardingDelay": {
+ "enabled": false
+ },
+ "NoPendingCount": {
+ "enabled": false
+ },
+ "NoProfileThemes": {
+ "enabled": false
+ },
+ "NoReplyMention": {
+ "enabled": false
+ },
+ "NoScreensharePreview": {
+ "enabled": false
+ },
+ "NoServerEmojis": {
+ "enabled": false
+ },
+ "NoTypingAnimation": {
+ "enabled": false
+ },
+ "NoUnblockToJump": {
+ "enabled": false
+ },
+ "NormalizeMessageLinks": {
+ "enabled": false
+ },
+ "NotificationVolume": {
+ "enabled": false
+ },
+ "NSFWGateBypass": {
+ "enabled": false
+ },
+ "OnePingPerDM": {
+ "enabled": false
+ },
+ "oneko": {
+ "enabled": false
+ },
+ "OpenInApp": {
+ "enabled": false
+ },
+ "OverrideForumDefaults": {
+ "enabled": false
+ },
+ "PartyMode": {
+ "enabled": false
+ },
+ "PauseInvitesForever": {
+ "enabled": false
+ },
+ "PermissionFreeWill": {
+ "enabled": false
+ },
+ "PermissionsViewer": {
+ "enabled": false
+ },
+ "petpet": {
+ "enabled": false
+ },
+ "PictureInPicture": {
+ "enabled": false
+ },
+ "PinDMs": {
+ "enabled": false
+ },
+ "PlainFolderIcon": {
+ "enabled": false
+ },
+ "PlatformIndicators": {
+ "enabled": false
+ },
+ "PreviewMessage": {
+ "enabled": false
+ },
+ "QuickMention": {
+ "enabled": false
+ },
+ "QuickReply": {
+ "enabled": false
+ },
+ "ReactErrorDecoder": {
+ "enabled": false
+ },
+ "ReadAllNotificationsButton": {
+ "enabled": false
+ },
+ "RelationshipNotifier": {
+ "enabled": false
+ },
+ "ReplaceGoogleSearch": {
+ "enabled": false
+ },
+ "ReplyTimestamp": {
+ "enabled": false
+ },
+ "RevealAllSpoilers": {
+ "enabled": false
+ },
+ "ReverseImageSearch": {
+ "enabled": false
+ },
+ "ReviewDB": {
+ "enabled": false
+ },
+ "RoleColorEverywhere": {
+ "enabled": false
+ },
+ "SecretRingToneEnabler": {
+ "enabled": false
+ },
+ "Summaries": {
+ "enabled": false
+ },
+ "SendTimestamps": {
+ "enabled": false
+ },
+ "ServerInfo": {
+ "enabled": false
+ },
+ "ServerListIndicators": {
+ "enabled": false
+ },
+ "ShikiCodeblocks": {
+ "enabled": false
+ },
+ "ShowAllMessageButtons": {
+ "enabled": false
+ },
+ "ShowConnections": {
+ "enabled": false
+ },
+ "ShowHiddenChannels": {
+ "enabled": false
+ },
+ "ShowHiddenThings": {
+ "enabled": false
+ },
+ "ShowMeYourName": {
+ "enabled": false
+ },
+ "ShowTimeoutDuration": {
+ "enabled": false
+ },
+ "SilentMessageToggle": {
+ "enabled": false
+ },
+ "SilentTyping": {
+ "enabled": false
+ },
+ "SortFriendRequests": {
+ "enabled": false
+ },
+ "SpotifyControls": {
+ "enabled": false
+ },
+ "SpotifyCrack": {
+ "enabled": false
+ },
+ "SpotifyShareCommands": {
+ "enabled": false
+ },
+ "StartupTimings": {
+ "enabled": false
+ },
+ "StickerPaste": {
+ "enabled": false
+ },
+ "StreamerModeOnStream": {
+ "enabled": false
+ },
+ "SuperReactionTweaks": {
+ "enabled": false
+ },
+ "TextReplace": {
+ "enabled": false
+ },
+ "ThemeAttributes": {
+ "enabled": false
+ },
+ "Translate": {
+ "enabled": false
+ },
+ "TypingIndicator": {
+ "enabled": false
+ },
+ "TypingTweaks": {
+ "enabled": false
+ },
+ "Unindent": {
+ "enabled": false
+ },
+ "UnlockedAvatarZoom": {
+ "enabled": false
+ },
+ "UnsuppressEmbeds": {
+ "enabled": false
+ },
+ "UserMessagesPronouns": {
+ "enabled": false
+ },
+ "UserVoiceShow": {
+ "enabled": false
+ },
+ "USRBG": {
+ "enabled": false
+ },
+ "ValidReply": {
+ "enabled": false
+ },
+ "ValidUser": {
+ "enabled": false
+ },
+ "VoiceChatDoubleClick": {
+ "enabled": false
+ },
+ "VcNarrator": {
+ "enabled": false
+ },
+ "VencordToolbox": {
+ "enabled": false
+ },
+ "ViewIcons": {
+ "enabled": false
+ },
+ "ViewRaw": {
+ "enabled": false
+ },
+ "VoiceDownload": {
+ "enabled": false
+ },
+ "VoiceMessages": {
+ "enabled": false
+ },
+ "VolumeBooster": {
+ "enabled": false
+ },
+ "WebKeybinds": {
+ "enabled": true
+ },
+ "WebScreenShareFixes": {
+ "enabled": true
+ },
+ "WhoReacted": {
+ "enabled": false
+ },
+ "XSOverlay": {
+ "enabled": false
+ },
+ "YoutubeAdblock": {
+ "enabled": false
+ },
+ "BadgeAPI": {
+ "enabled": true
+ },
+ "HideMedia": {
+ "enabled": false
+ },
+ "ExpressionCloner": {
+ "enabled": false
+ },
+ "CopyStickerLinks": {
+ "enabled": false
+ },
+ "ImageFilename": {
+ "enabled": false
+ },
+ "NoTrack": {
+ "enabled": true,
+ "disableAnalytics": true
+ },
+ "Settings": {
+ "enabled": true,
+ "settingsLocation": "aboveNitro"
+ },
+ "DisableDeepLinks": {
+ "enabled": true
+ },
+ "SupportHelper": {
+ "enabled": true
+ },
+ "WebContextMenus": {
+ "enabled": true
+ }
+ },
+ "notifications": {
+ "timeout": 5000,
+ "position": "bottom-right",
+ "useNative": "not-focused",
+ "logLimit": 50
+ },
+ "cloud": {
+ "authenticated": false,
+ "url": "https://api.vencord.dev/",
+ "settingsSync": false,
+ "settingsSyncVersion": 1759428599622
+ },
+ "eagerPatches": false
+ },
+ "quickCss": "/**\n * @name midnight (catppuccin mocha)\n * @description a dark, customizable discord theme. based on catppuccin mocha theme (https://catppuccin.com).\n * @author refact0r\n * @version 2.1.1\n * @invite nz87hXyvcy\n * @website https://github.com/refact0r/midnight-discord\n * @source https://github.com/refact0r/midnight-discord/blob/master/themes/flavors/midnight-catppuccin-mocha.theme.css\n * @authorId 508863359777505290\n * @authorLink https://www.refact0r.dev\n*/\n\n/* import theme modules */\n@import url('https://refact0r.github.io/midnight-discord/build/midnight.css');\n\nbody {\n /* font, change to '' for default discord font */\n --font: 'figtree'; /* change to '' for default discord font */\n --code-font: ''; /* change to '' for default discord font */\n font-weight: 400 /* normal text font weight. DOES NOT AFFECT BOLD TEXT */;\n\n /* sizes */\n --gap: 12px; /* spacing between panels */\n --divider-thickness: 4px; /* thickness of unread messages divider and highlighted message borders */\n --border-thickness: 1px; /* thickness of borders around main panels. DOES NOT AFFECT OTHER BORDERS */\n\n /* animation/transition options */\n --animations: on; /* off: disable animations/transitions, on: enable animations/transitions */\n --list-item-transition: 0.2s ease; /* transition for list items */\n --dms-icon-svg-transition: 0.4s ease; /* transition for the dms icon */\n --border-hover-transition: 0.2s ease; /* transition for borders when hovered */\n\n /* top bar options */\n --top-bar-height: var(--gap); /* height of the top bar (discord default is 36px, old discord style is 24px, var(--gap) recommended if button position is set to titlebar) */\n --top-bar-button-position: titlebar; /* off: default position, hide: hide buttons completely, serverlist: move inbox button to server list, titlebar: move inbox button to channel titlebar (will hide title) */\n --top-bar-title-position: off; /* off: default centered position, hide: hide title completely, left: left align title (like old discord) */\n --subtle-top-bar-title: off; /* off: default, on: hide the icon and use subtle text color (like old discord) */\n\n /* window controls */\n --custom-window-controls: on; /* off: default window controls, on: custom window controls */\n --window-control-size: 14px; /* size of custom window controls */\n\n /* dms button options */\n --custom-dms-icon: hide; /* off: use default discord icon, hide: remove icon entirely, custom: use custom icon */\n --dms-icon-svg-url: url('https://refact0r.github.io/midnight-discord/assets/Font_Awesome_5_solid_moon.svg'); /* icon svg url. MUST BE A SVG. */\n --dms-icon-svg-size: 90%; /* size of the svg (css mask-size property) */\n --dms-icon-color-before: var(--icon-secondary); /* normal icon color */\n --dms-icon-color-after: var(--white); /* icon color when button is hovered/selected */\n --custom-dms-background: image; /* off to disable, image to use a background image (must set url variable below), color to use a custom color/gradient */\n --dms-background-image-url: url('https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png'); /* url of the background image */\n --dms-background-image-size: cover; /* size of the background image (css background-size property) */\n --dms-background-color: linear-gradient(70deg, var(--blue-2), var(--purple-2), var(--red-2)); /* fixed color/gradient (css background property) */\n\n /* background image options */\n --background-image: off; /* off: no background image, on: enable background image (must set url variable below) */\n --background-image-url: url(''); /* url of the background image */\n\n /* transparency/blur options */\n /* NOTE: TO USE TRANSPARENCY/BLUR, YOU MUST HAVE TRANSPARENT BG COLORS. FOR EXAMPLE: --bg-4: hsla(220, 15%, 10%, 0.7); */\n --transparency-tweaks: on; /* off: no changes, on: remove some elements for better transparency */\n --remove-bg-layer: on; /* off: no changes, on: remove the base --bg-3 layer for use with window transparency (WILL OVERRIDE BACKGROUND IMAGE) */\n --panel-blur: on; /* off: no changes, on: blur the background of panels */\n --blur-amount: 12px; /* amount of blur */\n --bg-floating: var(--bg-3); /* set this to a more opaque color if floating panels look too transparent. only applies if panel blur is on */\n\n /* chatbar options */\n --custom-chatbar: aligned; /* off: default chatbar, aligned: chatbar aligned with the user panel, separated: chatbar separated from chat */\n --chatbar-height: 47px; /* height of the chatbar (52px by default, 47px recommended for aligned, 56px recommended for separated) */\n --chatbar-padding: 8px; /* padding of the chatbar. only applies in aligned mode. */\n\n /* other options */\n --small-user-panel: on; /* off: default user panel, on: smaller user panel like in old discord */\n}\n\n/* color options */\n:root {\n --colors: on; /* off: discord default colors, on: midnight custom colors */\n\n /* text colors */\n --text-0: var(--bg-3); /* text on colored elements */\n --text-1: hsl(226, 64%, 95%); /* other normally white text */\n --text-2: #cdd6f4; /* headings and important text */\n --text-3: #bac2de; /* normal text */\n --text-4: #7f849c; /* icon buttons and channels */\n --text-5: #585b70; /* muted channels/chats and timestamps */\n\n /* background and dark colors */\n --bg-1: #45475a; /* dark buttons when clicked */\n --bg-2: #313244; /* dark buttons */\n --bg-3: #181825; /* spacing, secondary elements */\n --bg-4: #1e1e2e; /* main background color */\n --hover: hsla(235, 15%, 53%, 0.1); /* channels and buttons when hovered */\n --active: hsla(235, 15%, 53%, 0.2); /* channels and buttons when clicked or selected */\n --active-2: hsla(235, 15%, 53%, 0.3); /* extra state for transparent buttons */\n --message-hover: hsla(235, 0%, 0%, 0.1); /* messages when hovered */\n\n /* accent colors */\n --accent-1: var(--purple-1); /* links and other accent text */\n --accent-2: var(--purple-2); /* small accent elements */\n --accent-3: var(--purple-3); /* accent buttons */\n --accent-4: var(--purple-4); /* accent buttons when hovered */\n --accent-5: var(--purple-5); /* accent buttons when clicked */\n --accent-new: var(--accent-2); /* stuff that's normally red like mute/deafen buttons */\n --mention: linear-gradient(to right, color-mix(in hsl, var(--accent-2), transparent 90%) 40%, transparent); /* background of messages that mention you */\n --mention-hover: linear-gradient(to right, color-mix(in hsl, var(--accent-2), transparent 95%) 40%, transparent); /* background of messages that mention you when hovered */\n --reply: linear-gradient(to right, color-mix(in hsl, var(--text-3), transparent 90%) 40%, transparent); /* background of messages that reply to you */\n --reply-hover: linear-gradient(to right, color-mix(in hsl, var(--text-3), transparent 95%) 40%, transparent); /* background of messages that reply to you when hovered */\n\n /* status indicator colors */\n --online: var(--green-2); /* change to #43a25a for default */\n --dnd: var(--red-2); /* change to #d83a42 for default */\n --idle: var(--yellow-2); /* change to #ca9654 for default */\n --streaming: var(--purple-2); /* change to #593695 for default */\n --offline: var(--text-4); /* change to #83838b for default offline color */\n\n /* border colors */\n --border-light: var(--hover); /* general light border color */\n --border: var(--active); /* general normal border color */\n --border-hover: var(--active); /* border color of panels when hovered */\n --button-border: hsl(235, 0%, 100%, 0.1); /* neutral border color of buttons */\n\n /* base colors */\n --red-1: hsl(343deg, 81%, 80%);\n --red-2: hsl(343deg, 81%, 75%);\n --red-3: hsl(343deg, 81%, 75%);\n --red-4: hsl(343deg, 81%, 70%);\n --red-5: hsl(343deg, 81%, 65%);\n\n --green-1: hsl(115deg, 54%, 81%);\n --green-2: hsl(115deg, 54%, 76%);\n --green-3: hsl(115deg, 54%, 76%);\n --green-4: hsl(115deg, 54%, 71%);\n --green-5: hsl(115deg, 54%, 66%);\n\n --blue-1: hsl(199deg, 76%, 74%);\n --blue-2: hsl(199deg, 76%, 69%);\n --blue-3: hsl(199deg, 76%, 69%);\n --blue-4: hsl(199deg, 76%, 64%);\n --blue-5: hsl(199deg, 76%, 59%);\n\n --yellow-1: hsl(41deg, 86%, 88%);\n --yellow-2: hsl(41deg, 86%, 83%);\n --yellow-3: hsl(41deg, 86%, 83%);\n --yellow-4: hsl(41deg, 86%, 78%);\n --yellow-5: hsl(41deg, 86%, 73%);\n\n --purple-1: hsl(267deg, 84%, 86%);\n --purple-2: hsl(267deg, 84%, 81%);\n --purple-3: hsl(267deg, 84%, 81%);\n --purple-4: hsl(267deg, 84%, 76%);\n --purple-5: hsl(267deg, 84%, 71%);\n}"
+}
\ No newline at end of file