Compare commits

...

19 Commits

Author SHA1 Message Date
tobias ec3a65f646 Removed white sur icon theme 2026-07-10 15:38:02 +02:00
tobias 237131e2a0 Added thinkpad color profile 2026-07-09 23:45:42 +02:00
tobias a6f56b38b4 Cleaned up hyprland config 2026-07-09 22:36:17 +02:00
tobias 0d9b9bd1d7 Adjusted waybar style 2026-07-09 21:59:14 +02:00
tobias 377726801b Added brightnessctl on IS_DESKTOP=0 and configured waybar to include a power profiles daemon switch if the service is available 2026-07-09 21:52:04 +02:00
tobias f382f9ce22 Added browser extension to readme 2026-07-09 19:41:44 +02:00
tobias 42fc641571 Switched joplin theme to fontawesome and removed SF Pro font 2026-07-09 19:20:49 +02:00
tobias f83e9f8dd3 Added default mimetype apps for text like files 2026-07-09 18:48:41 +02:00
tobias 12f8d94f7d Added SF Pro Display for joplin icons 2026-07-09 18:34:29 +02:00
tobias e3548a9fd7 Changed waybar font 2026-07-09 17:28:20 +02:00
tobias e973c16fb4 Removed ferdium-bin AUR package 2026-07-09 17:22:41 +02:00
tobias c7c8352e89 Set dark mode 2026-07-09 17:21:00 +02:00
tobias a3d98a0522 Set waybar text color to white 2026-07-09 17:10:22 +02:00
tobias 4236135979 Switched dotfiles to sf mono 2026-07-09 17:06:58 +02:00
tobias cb24eea380 Added sf mono fonts 2026-07-09 17:00:42 +02:00
tobias d319764738 Made system package install not fail when previous run failed without internet connection 2026-07-09 11:27:07 +02:00
tobias ecce1db026 Auto pull german mirrors before install 2026-07-06 22:02:11 +02:00
tobias 4023bea6af Changed default config locale 2026-07-06 21:49:04 +02:00
tobias 15a95b84b9 Removed secrets readme 2026-07-06 19:43:59 +02:00
33 changed files with 500 additions and 141 deletions
+16
View File
@@ -0,0 +1,16 @@
# Rank download mirrors before pacstrap — WITHOUT reflector (not on the ISO).
# Pull a Germany/HTTPS list from Arch's official mirrorlist generator, already
# ordered by mirror status/score, and activate it. Only needs curl (on the ISO)
# and hits archlinux.org's CDN, so it doesn't depend on the slow current mirror.
# pacstrap copies this list into the installed system, so it speeds up the base
# install AND every later pacman run. Falls back to the shipped list on failure.
url='https://archlinux.org/mirrorlist/?country=DE&protocol=https&ip_version=4&use_mirror_status=on'
tmp="$(mktemp)"
if curl -fsS --max-time 20 "$url" -o "$tmp" && grep -q '^#Server' "$tmp"; then
cp -f /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak 2>/dev/null || true
sed 's/^#Server/Server/' "$tmp" > /etc/pacman.d/mirrorlist
info "mirrorlist → Germany/https, $(grep -c '^Server' /etc/pacman.d/mirrorlist) mirrors (status-ranked)"
else
info "could not fetch DE mirrorlist — keeping the ISO's list"
fi
rm -f "$tmp"
+1
View File
@@ -24,6 +24,7 @@ read -rp "Type ERASE to continue: " ans
[ "$ans" = ERASE ] || die "aborted"
source ./00-partition.sh # partitions + mounts /mnt, /mnt/boot
source ./05-mirrors.sh # rank pacman mirrors (fast DE) before pacstrap
source ./10-pacstrap.sh # base system + fstab + copy repo to /mnt/root
# in-chroot steps (the whole repo, incl. system.conf, was copied by 10-pacstrap)
+7 -1
View File
@@ -3,9 +3,10 @@
if ! grep -q '^\[multilib\]' /etc/pacman.conf; then
info "enabling [multilib] repo"
sed -i '/^#\[multilib\]/,/^#Include/ s/^#//' /etc/pacman.conf
pacman -Sy
fi
pacman -Sy
# Install the base package set + the GPU vendor group for this host.
pac_file packages/pacman.txt
@@ -14,3 +15,8 @@ case "$GPU" in
intel) pac_file packages/graphics-intel.txt ;;
*) info "no GPU group for GPU='$GPU'" ;;
esac
# Laptop only: backlight control. Desktop monitors (DP/HDMI) don't expose a
# /sys/class/backlight device — they use DDC/CI (ddcutil) — so brightnessctl has
# nothing to control there and the XF86MonBrightness* binds just no-op.
[ "$IS_DESKTOP" = 0 ] && pacman -S --needed --noconfirm brightnessctl
+1
View File
@@ -258,6 +258,7 @@ sysbench
sysfsutils
sysstat
systemd-sysvcompat
tangram
tenacity
testdisk
texinfo
+8 -3
View File
@@ -14,12 +14,17 @@ xdg-mime default org.gnome.Nautilus.desktop inode/directory
# session nothing sets these, so libadwaita/GNOME apps (Nautilus, …) would fall
# back to generic Sans. gtk-*/settings.ini covers the GTK toolkit font;
# gsettings covers the document/monospace fonts read via dconf/the portal.
# color-scheme=prefer-dark is the authoritative dark-mode signal: GTK4/libadwaita
# apps read it directly, and xdg-desktop-portal reports it via the appearance API
# (so GTK3 and Qt apps that ask the portal go dark too). See gtk-*/settings.ini
# for the GTK toolkit dark toggle and ~/.config/kdeglobals for KDE apps.
if command -v gsettings >/dev/null 2>&1; then
gsettings set org.gnome.desktop.interface font-name 'Adwaita Sans 11' \
&& gsettings set org.gnome.desktop.interface document-font-name 'Adwaita Sans 11' \
&& gsettings set org.gnome.desktop.interface monospace-font-name 'Adwaita Mono 11' \
&& info "interface fonts → Adwaita Sans / Mono" \
|| echo " skip: could not set gsettings interface fonts"
&& gsettings set org.gnome.desktop.interface monospace-font-name 'SF Mono 11' \
&& gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' \
&& info "interface fonts → Adwaita Sans / SF Mono, color-scheme → prefer-dark" \
|| echo " skip: could not set gsettings interface prefs"
fi
# User services that ship as ~/.config/systemd/user units (from dotfiles).
Binary file not shown.
@@ -10,6 +10,6 @@
</alias>
<alias>
<family>monospace</family>
<prefer><family>Adwaita Mono</family></prefer>
<prefer><family>SF Mono</family></prefer>
</alias>
</fontconfig>
@@ -1,2 +1,3 @@
[Settings]
gtk-font-name = Adwaita Sans 11
gtk-application-prefer-dark-theme = true
@@ -1,2 +1,3 @@
[Settings]
gtk-font-name = Adwaita Sans 11
gtk-application-prefer-dark-theme = true
+29 -45
View File
@@ -4,11 +4,12 @@
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
################
### MONITORS ###
################
###############################
### MONITORS AND WORKSPACES ###
###############################
# Desktop, dual external monitors setup:
# See https://wiki.hypr.land/Configuring/Monitors/
#monitorv2 {
# output = DP-1
# mode = 3840x2160@60
@@ -27,9 +28,19 @@
# icc = /home/tobias/scripts/set_gamma/LG_1_2020_D6500_sRGB.icm
#}
# Assign Workspace 1 to correct monitor and set cursor to that workspace on start
#workspace=name:1, monitor:DP-2
#exec-once = hyprctl dispatch workspace 1
# workspacerules
#workspace = name:1, monitor:DP-1, default:false
#workspace = name:2, monitor:DP-1, default:false
#workspace = name:3, monitor:DP-1, default:false
#workspace = name:4, monitor:DP-1, default:false
#workspace = name:5, monitor:DP-1, default:false
#workspace = name:6, monitor:DP-2, default:false
#workspace = name:7, monitor:DP-2, default:false
#workspace = name:8, monitor:DP-2, default:false
#workspace = name:9, monitor:DP-2, default:false
#workspace = name:0, monitor:DP-2, default:false
debug {
disable_logs = true
@@ -80,8 +91,10 @@ env = HYPRCURSOR_SIZE,24
env = XCURSOR_THEME,default
# Theme options
env = ADWAITA_THEME,dark
env = COLOR_SCHEME,prefer-dark
# Dark mode is not driven by env vars here: GTK4/libadwaita follow the gsettings
# color-scheme=prefer-dark set in 03-user/40-defaults.sh (also exposed via the xdg
# portal), GTK3 follows gtk-*/settings.ini, Qt follows GTK via QT_QPA_PLATFORMTHEME
# below, and KDE apps follow ~/.config/kdeglobals.
env = GDK_BACKEND,wayland,x11,*
@@ -160,21 +173,13 @@ decoration {
active_opacity = 1.0
inactive_opacity = 1.0
#shadow {
# enabled = true
# range = 4
# render_power = 3
# color = rgba(1a1a1aee)
#}
shadow {
enabled = true
range = 100
render_power = 3
color = rgba(00000050)
scale = 0.99
offset = 0 9
range = 100
render_power = 3
color = rgba(00000050)
scale = 0.99
offset = 0 9
}
# https://wiki.hypr.land/Configuring/Variables/#blur
@@ -255,12 +260,6 @@ ecosystem {
no_donation_nag = true
}
#cursor {
# no_hardware_cursors = true
# min_refresh_rate = 60
#}
#############
### INPUT ###
@@ -395,24 +394,10 @@ bind = $shiftMod, PRINT, exec, hyprshot -m output
bind = $mainMod,P,exec,hyprpicker -a
##############################
### WINDOWS AND WORKSPACES ###
### WINDOWS ###
##############################
# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
# workspacerules
workspace = name:1, monitor:DP-1, default:false
workspace = name:2, monitor:DP-1, default:false
workspace = name:3, monitor:DP-1, default:false
workspace = name:4, monitor:DP-1, default:false
workspace = name:5, monitor:DP-1, default:false
workspace = name:6, monitor:DP-2, default:false
workspace = name:7, monitor:DP-2, default:false
workspace = name:8, monitor:DP-2, default:false
workspace = name:9, monitor:DP-2, default:false
workspace = name:0, monitor:DP-2, default:false
# windowrules
windowrule = float on, size 1100 700, match:class ^(org.gnome.Nautilus)$
@@ -431,10 +416,9 @@ windowrule = float on, size 1200 750, match:class ^(Element)$
windowrule = float on, size 1200 750, match:class ^(org.gnome.Fractal)$
#windowrule = suppressevent[activatefocus activate],initialClass:^(photoshop.exe)$
windowrule = no_initial_focus on, match:initial_class ^(photoshop.exe)$
#windowrule = suppressevent[activatefocus activate],initialClass:^(photoshop.exe)$
#windowrule = noblur,initialClass:^(photoshop.exe)$
#windowrule = noshadow,initialClass:^(photoshop.exe)$
#windowrule = noanim,initialClass:^(photoshop.exe)$
@@ -22,12 +22,13 @@
"todo_completed": true
},
"notes.listRendererId": "compact",
"notes.showCheckboxCompletionChart": false,
"markdown.plugin.softbreaks": false,
"markdown.plugin.typographer": false,
"showTrayIcon": true,
"style.editor.fontSize": 15,
"style.editor.fontFamily": "Adwaita Mono",
"style.editor.monospaceFontFamily": "Adwaita Mono",
"style.editor.fontFamily": "SF Mono",
"style.editor.monospaceFontFamily": "SF Mono",
"style.editor.contentMaxWidth": 0,
"ui.layout": {
"key": "root",
@@ -78,121 +78,121 @@
);
--s-font-family-icons: var(--u-font-family-icons, var(--g-font-family-icons));
--s-icon-size-factor: var(--u-icon-size-factor, var(--g-icon-size-factor));
--g-icon-alarm: "􀐭";
--g-icon-alarm: "\f0f3";
--s-icon-alarm: var(--u-icon-alarm, var(--g-icon-alarm));
--g-icon-arrow-down-circle-fill: "􀁹";
--g-icon-arrow-down-circle-fill: "\f0ab";
--s-icon-arrow-down-circle-fill: var(--u-icon-arrow-down-circle-fill, var(--g-icon-arrow-down-circle-fill));
--g-icon-arrow-triangle-2-circlepath: "􀊯";
--g-icon-arrow-triangle-2-circlepath: "\f021";
--s-icon-arrow-triangle-2-circlepath: var(--u-icon-arrow-triangle-2-circlepath, var(--g-icon-arrow-triangle-2-circlepath));
--g-icon-arrow-up-arrow-down: "􀄬";
--g-icon-arrow-up-arrow-down: "\f0dc";
--s-icon-arrow-up-arrow-down: var(--u-icon-arrow-up-arrow-down, var(--g-icon-arrow-up-arrow-down));
--g-icon-arrow-up-circle-fill: "􀁷";
--g-icon-arrow-up-circle-fill: "\f0aa";
--s-icon-arrow-up-circle-fill: var(--u-icon-arrow-up-circle-fill, var(--g-icon-arrow-up-circle-fill));
--g-icon-arrow-up-forward-app: "􀮵";
--g-icon-arrow-up-forward-app: "\f08e";
--s-icon-arrow-up-forward-app: var(--u-icon-arrow-up-forward-app, var(--g-icon-arrow-up-forward-app));
--g-icon-arrow-up-right-square-fill: "􀄕";
--g-icon-arrow-up-right-square-fill: "\f14c";
--s-icon-arrow-up-right-square-fill: var(--u-icon-arrow-up-right-square-fill, var(--g-icon-arrow-up-right-square-fill));
--g-icon-bold: "􀅓";
--g-icon-bold: "\f032";
--s-icon-bold: var(--u-icon-bold, var(--g-icon-bold));
--g-icon-calendar: "􀉉";
--g-icon-calendar: "\f073";
--s-icon-calendar: var(--u-icon-calendar, var(--g-icon-calendar));
--g-icon-character: "􀀄";
--g-icon-character: "\f031";
--s-icon-character: var(--u-icon-character, var(--g-icon-character));
--g-icon-checkmark: "􀆅";
--g-icon-checkmark: "\f00c";
--s-icon-checkmark: var(--u-icon-checkmark, var(--g-icon-checkmark));
--g-icon-checkmark-circle: "􀁢";
--g-icon-checkmark-circle: "\f058";
--s-icon-checkmark-circle: var(--u-icon-checkmark-circle, var(--g-icon-checkmark-circle));
--g-icon-checkmark-diamond: "􁁚";
--g-icon-checkmark-diamond: "\f14a";
--s-icon-checkmark-diamond: var(--u-icon-checkmark-diamond, var(--g-icon-checkmark-diamond));
--g-icon-checkmark-square: "􀃲";
--g-icon-checkmark-square: "\f046";
--s-icon-checkmark-square: var(--u-icon-checkmark-square, var(--g-icon-checkmark-square));
--g-icon-chevron-backward: "􀯶";
--g-icon-chevron-backward: "\f053";
--s-icon-chevron-backward: var(--u-icon-chevron-backward, var(--g-icon-chevron-backward));
--g-icon-chevron-down: "􀆈";
--g-icon-chevron-down: "\f078";
--s-icon-chevron-down: var(--u-icon-chevron-down, var(--g-icon-chevron-down));
--g-icon-chevron-forward: "􀯻";
--g-icon-chevron-forward: "\f054";
--s-icon-chevron-forward: var(--u-icon-chevron-forward, var(--g-icon-chevron-forward));
--g-icon-chevron-left-slash-chevron-right: "􀙚";
--g-icon-chevron-left-slash-chevron-right: "\f121";
--s-icon-chevron-left-slash-chevron-right: var(--u-icon-chevron-left-slash-chevron-right, var(--g-icon-chevron-left-slash-chevron-right));
--g-icon-chevron-right: "􀆊";
--g-icon-chevron-right: "\f054";
--s-icon-chevron-right: var(--u-icon-chevron-right, var(--g-icon-chevron-right));
--g-icon-chevron-up-chevron-down: "􀆏";
--g-icon-chevron-up-chevron-down: "\f0dc";
--s-icon-chevron-up-chevron-down: var(--u-icon-chevron-up-chevron-down, var(--g-icon-chevron-up-chevron-down));
--g-icon-chevron-up: "􀆇";
--g-icon-chevron-up: "\f077";
--s-icon-chevron-up: var(--u-icon-chevron-up, var(--g-icon-chevron-up));
--g-icon-clock: "􀐫";
--g-icon-clock: "\f017";
--s-icon-clock: var(--u-icon-clock, var(--g-icon-clock));
--g-icon-curlybraces: "􀡅";
--g-icon-curlybraces: "\f120";
--s-icon-curlybraces: var(--u-icon-curlybraces, var(--g-icon-curlybraces));
--g-icon-doc-on-clipboard: "􀉃";
--g-icon-doc-on-clipboard: "\f0ea";
--s-icon-doc-on-clipboard: var(--u-icon-doc-on-clipboard, var(--g-icon-doc-on-clipboard));
--g-icon-doc-richtext: "􀉅";
--g-icon-doc-richtext: "\f0f6";
--s-icon-doc-richtext: var(--u-icon-doc-richtext, var(--g-icon-doc-richtext));
--g-icon-ellipsis: "􀍠";
--g-icon-ellipsis: "\f141";
--s-icon-ellipsis: var(--u-icon-ellipsis, var(--g-icon-ellipsis));
--g-icon-folder: "􀈕";
--g-icon-folder: "\f07b";
--s-icon-folder: var(--u-icon-folder, var(--g-icon-folder));
--g-icon-highlighter: "􀦇";
--g-icon-highlighter: "\f1fc";
--s-icon-highlighter: var(--u-icon-highlighter, var(--g-icon-highlighter));
--g-icon-info-circle: "􀅴";
--g-icon-info-circle: "\f05a";
--s-icon-info-circle: var(--u-icon-info-circle, var(--g-icon-info-circle));
--g-icon-italic: "􀅔";
--g-icon-italic: "\f033";
--s-icon-italic: var(--u-icon-italic, var(--g-icon-italic));
--g-icon-link: "􀉣";
--g-icon-link: "\f0c1";
--s-icon-link: var(--u-icon-link, var(--g-icon-link));
--g-icon-link-circle: "􀒠";
--g-icon-link-circle: "\f0c1";
--s-icon-link-circle: var(--u-icon-link-circle, var(--g-icon-link-circle));
--g-icon-list-bullet-indent: "􀋳";
--g-icon-list-bullet-indent: "\f03c";
--s-icon-list-bullet-indent: var(--u-icon-list-bullet-indent, var(--g-icon-list-bullet-indent));
--g-icon-list-bullet-rectangle: "􀹆";
--g-icon-list-bullet-rectangle: "\f022";
--s-icon-list-bullet-rectangle: var(--u-icon-list-bullet-rectangle, var(--g-icon-list-bullet-rectangle));
--g-icon-list-bullet: "􀋲";
--g-icon-list-bullet: "\f0ca";
--s-icon-list-bullet: var(--u-icon-list-bullet, var(--g-icon-list-bullet));
--g-icon-list-number: "􀋴";
--g-icon-list-number: "\f0cb";
--s-icon-list-number: var(--u-icon-list-number, var(--g-icon-list-number));
--g-icon-magnifyingglass: "􀊫";
--g-icon-magnifyingglass: "\f002";
--s-icon-magnifyingglass: var(--u-icon-magnifyingglass, var(--g-icon-magnifyingglass));
--g-icon-minus: "􀅽";
--g-icon-minus: "\f068";
--s-icon-minus: var(--u-icon-minus, var(--g-icon-minus));
--g-icon-paperclip: "􀉢";
--g-icon-paperclip: "\f0c6";
--s-icon-paperclip: var(--u-icon-paperclip, var(--g-icon-paperclip));
--g-icon-person-2: "􀉫";
--g-icon-person-2: "\f0c0";
--s-icon-person-2: var(--u-icon-person-2, var(--g-icon-person-2));
--g-icon-plus-circle: "􀁌";
--g-icon-plus-circle: "\f055";
--s-icon-plus-circle: var(--u-icon-plus-circle, var(--g-icon-plus-circle));
--g-icon-sidebar-left: "􀏚";
--g-icon-sidebar-left: "\f0db";
--s-icon-sidebar-left: var(--u-icon-sidebar-left, var(--g-icon-sidebar-left));
--g-icon-square-and-arrow-down: "􀈄";
--g-icon-square-and-arrow-down: "\f019";
--s-icon-square-and-arrow-down: var(--u-icon-square-and-arrow-down, var(--g-icon-square-and-arrow-down));
--g-icon-square-and-pencil: "􀈎";
--g-icon-square-and-pencil: "\f044";
--s-icon-square-and-pencil: var(--u-icon-square-and-pencil, var(--g-icon-square-and-pencil));
--g-icon-square-split-2x1: "􀏠";
--g-icon-square-split-2x1: "\f2d0";
--s-icon-square-split-2x1: var(--u-icon-square-split-2x1, var(--g-icon-square-split-2x1));
--g-icon-strikethrough: "􀅖";
--g-icon-strikethrough: "\f0cc";
--s-icon-strikethrough: var(--u-icon-strikethrough, var(--g-icon-strikethrough));
--g-icon-tablecells-badge-ellipsis: "􀏥";
--g-icon-tablecells-badge-ellipsis: "\f0ce";
--s-icon-tablecells-badge-ellipsis: var(--u-icon-tablecells-badge-ellipsis, var(--g-icon-tablecells-badge-ellipsis));
--g-icon-tag: "􀋡";
--g-icon-tag: "\f02b";
--s-icon-tag: var(--u-icon-tag, var(--g-icon-tag));
--g-icon-text-badge-checkmark: "􀋺";
--g-icon-text-badge-checkmark: "\f0ae";
--s-icon-text-badge-checkmark: var(--u-icon-text-badge-checkmark, var(--g-icon-text-badge-checkmark));
--g-icon-text-below-photo: "􀲱";
--g-icon-text-below-photo: "\f03e";
--s-icon-text-below-photo: var(--u-icon-text-below-photo, var(--g-icon-text-below-photo));
--g-icon-text-quote: "􀋿";
--g-icon-text-quote: "\f10e";
--s-icon-text-quote: var(--u-icon-text-quote, var(--g-icon-text-quote));
--g-icon-textformat-abc-dottedunderline: "􀅰";
--g-icon-textformat-abc-dottedunderline: "\f031";
--s-icon-textformat-abc-dottedunderline: var(--u-icon-textformat-abc-dottedunderline, var(--g-icon-textformat-abc-dottedunderline));
--g-icon-textformat-subscript: "􀓡";
--g-icon-textformat-subscript: "\f12c";
--s-icon-textformat-subscript: var(--u-icon-textformat-subscript, var(--g-icon-textformat-subscript));
--g-icon-textformat-superscript: "􀓢";
--g-icon-textformat-superscript: "\f12b";
--s-icon-textformat-superscript: var(--u-icon-textformat-superscript, var(--g-icon-textformat-superscript));
--g-icon-trash: "􀈑";
--g-icon-trash: "\f1f8";
--s-icon-trash: var(--u-icon-trash, var(--g-icon-trash));
--g-icon-underline: "􀅕";
--g-icon-underline: "\f0cd";
--s-icon-underline: var(--u-icon-underline, var(--g-icon-underline));
--g-icon-xmark-circle-fill: "􀁡";
--g-icon-xmark-circle-fill: "\f057";
--s-icon-xmark-circle-fill: var(--u-icon-xmark-circle-fill, var(--g-icon-xmark-circle-fill));
--g-icon-xmark: "􀆄";
--g-icon-xmark: "\f00d";
--s-icon-xmark: var(--u-icon-xmark, var(--g-icon-xmark));
}
@@ -278,7 +278,7 @@
--g-font-family-system: "Adwaita Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
--g-font-family-mono: "Adwaita Mono", ui-monospace, Menlo, Monaco, Consolas,
"Liberation Mono", "Courier New", monospace;
--g-font-family-icons: "Adwaita Sans";
--g-font-family-icons: "Font Awesome 7 Free";
--g-font-size--1: 1.1rem;
--g-font-size-0: 1.2rem;
--g-font-size-1: 1.4rem;
@@ -288,6 +288,7 @@
.fa-caret-right::before {
content: var(--s-icon-chevron-right) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -296,6 +297,7 @@
.fa-caret-down::before {
content: var(--s-icon-chevron-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -304,6 +306,7 @@
.fa-plus::before {
content: var(--s-icon-plus-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -312,6 +315,7 @@
.fa-book::before {
content: var(--s-icon-folder) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -436,6 +440,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a:nth-child(1) i::before {
content: var(--s-icon-textformat-abc-dottedunderline) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -453,6 +458,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a:nth-child(2):before {
content: var(--s-icon-alarm) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -463,6 +469,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a:nth-child(3):before {
content: var(--s-icon-square-split-2x1) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -470,6 +477,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a:nth-child(4):before {
content: var(--s-icon-info-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -477,6 +485,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a[title="Toggle outline"]:before {
content: var(--s-icon-list-bullet-indent) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -484,6 +493,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a[title="Toggle sidebar"]:before {
content: var(--s-icon-sidebar-left) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -491,6 +501,7 @@ body button {
.rli-editor > div > div > div > div > div:first-child .editor-toolbar div:nth-child(2) a[title="Toggle note list"]:before {
content: var(--s-icon-list-bullet-rectangle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -532,6 +543,7 @@ body button {
.rli-editor > div > div > div > div > div :has(.fa-markdown).tox-tbtn.richText-active::after {
content: var(--s-icon-text-below-photo) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -560,6 +572,7 @@ body button {
.rli-editor > div > div > div > div > div:nth-child(2)[style*=padding-top] button .icon-notebooks::before {
content: var(--s-icon-folder) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -643,6 +656,7 @@ body button {
color: var(--s-accentColor) !important;
content: var(--s-icon-arrow-up-right-square-fill) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -651,6 +665,7 @@ body button {
.rli-editor .editor-toolbar > div:first-child > button:nth-of-type(3):nth-of-type(3) span::before {
content: var(--s-icon-arrow-up-forward-app) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -709,6 +724,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(1) button:nth-child(1):before {
content: var(--s-icon-bold) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -716,6 +732,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(1) button:nth-child(2):before {
content: var(--s-icon-italic) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -723,6 +740,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(1) button:nth-child(3):before {
content: var(--s-icon-highlighter) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -730,6 +748,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(1) button:nth-child(4):before {
content: var(--s-icon-strikethrough) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -741,6 +760,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(1) button:nth-child(5):before {
content: var(--s-icon-ellipsis) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -750,6 +770,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(2) button:nth-child(1):before {
content: var(--s-icon-link) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -757,6 +778,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(2) button:nth-child(2):before {
content: var(--s-icon-chevron-left-slash-chevron-right) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -764,6 +786,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(2) button:nth-child(3):before {
content: var(--s-icon-curlybraces) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -771,6 +794,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(2) button:nth-child(4):before {
content: var(--s-icon-paperclip) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -780,6 +804,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(3) button:nth-child(1):before {
content: var(--s-icon-list-bullet) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -787,6 +812,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(3) button:nth-child(2):before {
content: var(--s-icon-list-number) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -794,6 +820,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(3) button:nth-child(3):before {
content: var(--s-icon-text-badge-checkmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -827,6 +854,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(5) button:nth-child(1):before {
content: var(--s-icon-minus) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -836,6 +864,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(6) button:nth-child(1):before {
content: var(--s-icon-text-quote) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -845,6 +874,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(7) button:nth-child(1):before {
content: var(--s-icon-tablecells-badge-ellipsis) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -854,6 +884,7 @@ body button {
.rli-editor .tox-toolbar__group:nth-child(8) button:nth-child(1):before {
content: var(--s-icon-clock) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -931,6 +962,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-bold::before {
content: var(--s-icon-bold) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -938,6 +970,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-italic::before {
content: var(--s-icon-italic) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -945,6 +978,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-link::before {
content: var(--s-icon-link) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -952,6 +986,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-code::before {
content: var(--s-icon-chevron-left-slash-chevron-right) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -959,6 +994,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-attachment::before {
content: var(--s-icon-paperclip) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -966,6 +1002,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-bulleted-list::before {
content: var(--s-icon-list-bullet) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -973,6 +1010,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-numbered-list::before {
content: var(--s-icon-list-number) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -980,6 +1018,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-to-do-list::before {
content: var(--s-icon-text-badge-checkmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -991,6 +1030,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-ellipsis-h::before {
content: var(--s-icon-minus) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -998,6 +1038,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .icon-add-date::before {
content: var(--s-icon-clock) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1014,6 +1055,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-highlighter::before {
content: var(--s-icon-highlighter) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1021,6 +1063,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-strikethrough::before {
content: var(--s-icon-strikethrough) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1028,6 +1071,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-underline::before {
content: var(--s-icon-underline) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1035,6 +1079,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-subscript::before {
content: var(--s-icon-textformat-subscript) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1042,6 +1087,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-superscript::before {
content: var(--s-icon-textformat-superscript) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1049,6 +1095,7 @@ body button {
.rli-editor > div > div > div > div > div:not(:first-child) .editor-toolbar button .fa-hand-point-left::before {
content: var(--s-icon-link-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1264,6 +1311,7 @@ body button {
font-family: "Adwaita Sans";
content: var(--s-icon-tag) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1324,6 +1372,7 @@ body button {
.note-search-bar .fa-chevron-down::before {
content: var(--s-icon-chevron-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1332,6 +1381,7 @@ body button {
.note-search-bar .fa-chevron-up::before {
content: var(--s-icon-chevron-up) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1349,6 +1399,7 @@ body button {
.note-search-bar > div > a:first-child .fa-times::after {
content: var(--s-icon-xmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1409,6 +1460,7 @@ body button {
.rli-noteList .search-bar::after {
content: var(--s-icon-magnifyingglass) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1417,7 +1469,7 @@ body button {
left: 0;
color: var(--g-secondaryLabelColor);
font-size: calc(var(--u-font-family-icons, 1) * 1.7rem);
font-weight: normal !important;
font-weight: 900 !important;
top: 50%;
left: 0.8rem;
pointer-events: none;
@@ -1432,6 +1484,7 @@ body button {
.rli-noteList .search-bar .fa-times::after {
content: var(--s-icon-xmark-circle-fill) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1496,6 +1549,7 @@ body button {
.rli-noteList .new-note-todo-buttons .new-todo-button:before {
content: var(--s-icon-checkmark-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1503,6 +1557,7 @@ body button {
.rli-noteList .new-note-todo-buttons .new-note-button:before {
content: var(--s-icon-square-and-pencil) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1522,6 +1577,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-calendar-alt::before {
content: var(--s-icon-clock) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1529,6 +1585,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-calendar-plus::before {
content: var(--s-icon-calendar) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1536,6 +1593,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-font::before {
content: var(--s-icon-character) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1543,6 +1601,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-calendar-check::before {
content: var(--s-icon-checkmark-square) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1550,6 +1609,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-check::before {
content: var(--s-icon-checkmark-square) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1557,6 +1617,7 @@ body button {
.rli-noteList .sort-order-field-button .fa-wrench::before {
content: var(--s-icon-arrow-up-arrow-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1586,6 +1647,7 @@ body button {
.rli-noteList .sort-order-reverse-button .fa-long-arrow-alt-up::before {
content: var(--s-icon-arrow-up-circle-fill) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1593,6 +1655,7 @@ body button {
.rli-noteList .sort-order-reverse-button .fa-long-arrow-alt-down::before {
content: var(--s-icon-arrow-down-circle-fill) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1681,6 +1744,7 @@ body button {
.rli-noteList .note-list-item .fa-share-square::before {
content: var(--s-icon-arrow-up-right-square-fill) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1769,6 +1833,7 @@ body button {
.rli-noteList .todo-list-item input:checked:after {
content: var(--s-icon-checkmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -1892,6 +1957,7 @@ body button {
.modal-dialog input + a .fa-question-circle::before {
content: var(--s-icon-info-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2044,6 +2110,7 @@ body button {
.modal-dialog .item-list.item-list > div:not(:empty) .fa-book:before {
content: var(--s-icon-folder) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2165,6 +2232,7 @@ body button {
div[style*="z-index: 9999;"][style*="background-color: rgba(0, 0, 0, 0.6);"][style*="align-items: flex-start;"]:not(.dialog-modal-layer) .note-property-box a:not(:empty) .fas.fa-edit::before {
content: var(--s-icon-square-and-pencil) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2172,6 +2240,7 @@ body button {
div[style*="z-index: 9999;"][style*="background-color: rgba(0, 0, 0, 0.6);"][style*="align-items: flex-start;"]:not(.dialog-modal-layer) .note-property-box a:not(:empty) .fas.fa-copy::before {
content: var(--s-icon-doc-on-clipboard) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2179,6 +2248,7 @@ body button {
div[style*="z-index: 9999;"][style*="background-color: rgba(0, 0, 0, 0.6);"][style*="align-items: flex-start;"]:not(.dialog-modal-layer) .note-property-box a:not(:empty) .fas.fa-save::before {
content: var(--s-icon-square-and-arrow-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2261,6 +2331,7 @@ body button {
box-shadow: 0px 0px 1px hsla(var(--s-accentColor--hsl), 0.3), 0px 1px 1.5px hsla(var(--s-accentColor--hsl), 0.15);
content: var(--s-icon-chevron-up-chevron-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2317,6 +2388,7 @@ body button {
.tag-selector [class*=multiValue] > div:last-child::after {
content: var(--s-icon-xmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2785,6 +2857,7 @@ body button {
.sidebar.sidebar > div > div button span::before {
content: var(--s-icon-plus-circle) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2875,6 +2948,7 @@ body button {
.sidebar.sidebar > div .list-item .fa-share-alt::before {
content: var(--s-icon-person-2) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2938,6 +3012,7 @@ body button {
.sidebar.sidebar > div .folder-and-tag-list .list-item::before {
content: var(--s-icon-folder) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2946,6 +3021,7 @@ body button {
.sidebar.sidebar > div .folder-and-tag-list .list-item:has(.fa-trash)::before {
content: var(--s-icon-trash) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -2954,6 +3030,7 @@ body button {
.sidebar.sidebar > div .folder-and-tag-list .list-item:has(.tag-label)::before {
content: var(--s-icon-tag) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -3002,6 +3079,7 @@ body button {
.sidebar.sidebar .fas.fa-caret-right::before {
content: var(--s-icon-chevron-forward) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -3010,6 +3088,7 @@ body button {
.sidebar.sidebar .fas.fa-caret-down::before {
content: var(--s-icon-chevron-down) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -3057,6 +3136,23 @@ body button {
animation: var(--u-sidebar-synchronise-label, tooltipTimeout 1s);
opacity: 1;
}
/* Hide the sync-report expand/collapse arrow and always show the status,
like older versions. */
.sync-report-toggle {
display: none !important;
}
#sync-report {
display: block !important;
height: auto !important;
max-height: none !important;
overflow: visible !important;
opacity: 1 !important;
visibility: visible !important;
}
#sync-report,
#sync-report * {
color: var(--s-sidebar__synchronise-Color) !important;
}
.sidebar.sidebar > div:last-child button {
border: none;
justify-content: flex-start;
@@ -3064,7 +3160,7 @@ body button {
text-align: left;
font-size: 1.3rem;
height: unset !important;
min-height: unset !important;
min-height: unset !important;
max-height: unset !important;
padding-top: .6rem !important;
margin-bottom: .5rem !important;
@@ -3082,12 +3178,24 @@ body button {
.sidebar.sidebar > div:last-child button .icon-sync::before {
content: var(--s-icon-arrow-triangle-2-circlepath) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
font-size: 1.2rem;
-webkit-font-smoothing: antialiased;
}
/* The synchronise button uses Joplin's native Font Awesome classes
(fas fa-check / fa-sync / fa-exclamation... depending on state), but the
bundled FA5 webfont doesn't render here, so it shows a blank box. The FA
class already sets the correct codepoint via ::before content — we just
redirect it to the working system Font Awesome 7 (same codepoints). */
.sidebar-sync-button .fas::before,
.sidebar-sync-button .icon::before {
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
-webkit-font-smoothing: antialiased;
}
}
@media screen {
.CodeMirror.CodeMirror {
@@ -3316,6 +3424,7 @@ body#tinymce .inline-code *,
#joplin-container-content ul.joplin-checklist li.checked:before {
content: var(--s-icon-checkmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -3381,6 +3490,7 @@ body#tinymce .inline-code *,
#joplin-container-content li.joplin-checkbox .checkbox-label-checked:before {
content: var(--s-icon-checkmark) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
@@ -3861,6 +3971,7 @@ span.cm-invalidchar { color: #ff5370; font-weight: bold; }
.ͼ1 .cm-panel.cm-search > button[name="prev"]::before {
content: var(--s-icon-chevron-up) !important;
font-family: var(--s-font-family-icons) !important;
font-weight: 900 !important;
vertical-align: middle;
display: block;
transform: scale(var(--s-icon-size-factor));
+109
View File
@@ -0,0 +1,109 @@
# Dark mode for KDE / KDE Frameworks apps (kdenlive, kid3, krita, …).
# Self-contained Breeze Dark color scheme so it applies without the breeze/plasma
# packages installed.
[ColorEffects:Disabled]
Color=56,56,56
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=112,111,110
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate=30,87,116
BackgroundNormal=49,54,59
DecorationFocus=61,174,233
DecorationHover=61,174,233
ForegroundActive=61,174,233
ForegroundInactive=161,169,177
ForegroundLink=29,153,243
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Selection]
BackgroundAlternate=30,87,116
BackgroundNormal=61,174,233
DecorationFocus=61,174,233
DecorationHover=61,174,233
ForegroundActive=252,252,252
ForegroundInactive=161,169,177
ForegroundLink=253,188,75
ForegroundNegative=176,55,69
ForegroundNeutral=198,92,0
ForegroundNormal=252,252,252
ForegroundPositive=23,104,57
ForegroundVisited=155,89,182
[Colors:Tooltip]
BackgroundAlternate=77,77,77
BackgroundNormal=49,54,59
DecorationFocus=61,174,233
DecorationHover=61,174,233
ForegroundActive=61,174,233
ForegroundInactive=161,169,177
ForegroundLink=29,153,243
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:View]
BackgroundAlternate=35,38,41
BackgroundNormal=27,30,32
DecorationFocus=61,174,233
DecorationHover=61,174,233
ForegroundActive=61,174,233
ForegroundInactive=161,169,177
ForegroundLink=29,153,243
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Window]
BackgroundAlternate=49,54,59
BackgroundNormal=42,46,50
DecorationFocus=61,174,233
DecorationHover=61,174,233
ForegroundActive=61,174,233
ForegroundInactive=161,169,177
ForegroundLink=29,153,243
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[General]
ColorScheme=BreezeDark
Name=Breeze Dark
shadeSortColumn=true
[KDE]
contrast=4
[WM]
activeBackground=49,54,59
activeBlend=252,252,252
activeForeground=252,252,252
inactiveBackground=42,46,50
inactiveBlend=161,169,177
inactiveForeground=161,169,177
+55 -2
View File
@@ -5,7 +5,7 @@ x-scheme-handler/tonsite=org.telegram.desktop._bed96f4b363d7710ea902a60dee70952.
hoppscotch=hoppscotch-handler.desktop
x-scheme-handler/http=firefox.desktop
application/xhtml+xml=firefox.desktop
text/html=firefox.desktop
text/html=code.desktop
x-scheme-handler/https=firefox.desktop
application/x-desktop=code.desktop
inode/directory=org.gnome.Nautilus.desktop
@@ -16,6 +16,33 @@ image/webp=org.gnome.Loupe.desktop
text/csv=libreoffice-calc.desktop
audio/x-opus+ogg=mpv.desktop
text/markdown=code.desktop
# Source/markup files → Code - OSS (text/plain above already covers plain-looking files)
text/css=code.desktop
application/x-php=code.desktop
text/x-php=code.desktop
text/javascript=code.desktop
application/javascript=code.desktop
application/json=code.desktop
application/schema+json=code.desktop
application/xml=code.desktop
text/xml=code.desktop
application/x-shellscript=code.desktop
text/x-python=code.desktop
text/x-csrc=code.desktop
text/x-chdr=code.desktop
text/x-c++src=code.desktop
text/x-java=code.desktop
text/x-go=code.desktop
text/rust=code.desktop
text/x-lua=code.desktop
text/x-kotlin=code.desktop
application/x-perl=code.desktop
application/x-ruby=code.desktop
application/sql=code.desktop
application/toml=code.desktop
application/yaml=code.desktop
text/x-scss=code.desktop
text/x-sass=code.desktop
[Added Associations]
image/jpeg=org.gnome.Loupe.desktop;
@@ -23,7 +50,7 @@ image/png=org.gnome.Loupe.desktop;
x-scheme-handler/tonsite=org.telegram.desktop._bed96f4b363d7710ea902a60dee70952.desktop;
x-scheme-handler/http=firefox.desktop;
application/xhtml+xml=firefox.desktop;
text/html=firefox.desktop;
text/html=code.desktop;firefox.desktop;
x-scheme-handler/https=firefox.desktop;
application/x-desktop=code.desktop;
text/plain=code.desktop;
@@ -37,3 +64,29 @@ audio/x-opus+ogg=mpv.desktop;
application/lunacy=lunacy.desktop;
application/gzip=org.gnome.FileRoller.desktop;
text/markdown=code.desktop;
text/css=code.desktop;
application/x-php=code.desktop;
text/x-php=code.desktop;
text/javascript=code.desktop;
application/javascript=code.desktop;
application/json=code.desktop;
application/schema+json=code.desktop;
application/xml=code.desktop;
text/xml=code.desktop;
application/x-shellscript=code.desktop;
text/x-python=code.desktop;
text/x-csrc=code.desktop;
text/x-chdr=code.desktop;
text/x-c++src=code.desktop;
text/x-java=code.desktop;
text/x-go=code.desktop;
text/rust=code.desktop;
text/x-lua=code.desktop;
text/x-kotlin=code.desktop;
application/x-perl=code.desktop;
application/x-ruby=code.desktop;
application/sql=code.desktop;
application/toml=code.desktop;
application/yaml=code.desktop;
text/x-scss=code.desktop;
text/x-sass=code.desktop;
@@ -23,6 +23,7 @@
"cpu",
"memory",
"battery",
"custom/power_profile",
"custom/studio-sound",
"bluetooth",
"wireplumber",
@@ -195,6 +196,16 @@
"return-type": "json"
},
"custom/power_profile": {
"format": "{}",
"exec": "~/.config/waybar/scripts/power-profile.sh",
"on-click": "~/.config/waybar/scripts/power-profile.sh toggle",
"interval": "once",
"signal": 9,
"return-type": "json",
"tooltip": true
},
"custom/studio-sound": {
"format": "{}",
"exec": "~/.config/waybar/scripts/studio-sound.py",
@@ -0,0 +1,71 @@
#!/bin/bash
# Waybar power-profiles-daemon module.
# default : print the current profile as JSON (empty -> Waybar hides the module)
# toggle : cycle to the next available profile, then signal Waybar to refresh
#
# Wired as interval:"once" + signal in config.jsonc, so the script runs exactly
# once at Waybar startup and thereafter only when we signal it on click. On a
# desktop the single startup run hits an unavailable PPD, prints empty, and the
# module stays hidden forever with no recurring cost.
#
# Availability keys off the systemd unit being *enabled* rather than
# `powerprofilesctl get` succeeding: PPD is D-Bus-activatable and desktop CPUs
# expose EPP too, so `get` would answer on a desktop as well. The repo only
# enables the service on laptops (IS_DESKTOP=0), so `is-enabled` is the honest
# "is this a laptop that uses PPD" signal.
SERVICE=power-profiles-daemon.service
available() {
command -v powerprofilesctl >/dev/null 2>&1 || return 1
systemctl is-enabled "$SERVICE" >/dev/null 2>&1
}
# Available profile names in the order PPD lists them (power-saver … performance).
# Profile header lines are just "name:" (optionally "* name:" for the active one);
# every other line (Driver:, Degraded:, …) has text after the colon.
profiles() {
powerprofilesctl list 2>/dev/null | sed -nE 's/^[[:space:]]*\*?[[:space:]]*([a-z-]+):[[:space:]]*$/\1/p'
}
# FontAwesome glyphs (Nerd Font): f0e7 bolt, f6ad yin-yang, f06c leaf, f011 power.
icon() {
case "$1" in
performance) printf '' ;;
balanced) printf '' ;;
power-saver) printf '' ;;
*) printf '' ;; # power symbol, fallback
esac
}
cycle() {
mapfile -t list < <(profiles)
[ "${#list[@]}" -eq 0 ] && exit 0
cur=$(powerprofilesctl get 2>/dev/null)
next=0
for i in "${!list[@]}"; do
if [ "${list[$i]}" = "$cur" ]; then
next=$(( (i + 1) % ${#list[@]} ))
break
fi
done
powerprofilesctl set "${list[$next]}"
pkill -SIGRTMIN+9 waybar
}
output() {
if ! available; then
printf '{"text":""}\n'
exit 0
fi
cur=$(powerprofilesctl get 2>/dev/null)
[ -z "$cur" ] && { printf '{"text":""}\n'; exit 0; }
printf '{"text":"%s","tooltip":"Power profile: %s\\nClick to cycle","class":"%s"}\n' \
"$(icon "$cur")" "$cur" "$cur"
}
case "$1" in
toggle|cycle) cycle ;;
*) output ;;
esac
+3 -4
View File
@@ -1,11 +1,11 @@
* {
border: none;
border-radius: 0;
/*font-family: "Adwaita Sans", "FontAwesome";*/
font-family: "Adwaita Mono", "FontAwesome";
font-family: "SF Mono", "FontAwesome";
font-weight: 600;
font-size: 13px;
min-height: 0;
color: #ffffff;
}
window#waybar {
@@ -82,7 +82,6 @@ tooltip {
padding: 0px 10px;
margin: 0px;
margin-top: 0px;
/*border: 2px solid red;*/
}
#custom-files {
@@ -138,6 +137,7 @@ tooltip {
color: #a6e3a1;
border-left: 0px;
border-right: 0px;
min-width: 17px;
}
#window {
@@ -180,7 +180,6 @@ menu {
border-radius: 8px;
background: rgba(43, 48, 59, 0.95);
color: #ffffff;
/*border: 1px solid rgba(100, 114, 125, 0.3);*/
border-style: none;
padding: 4px 0;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-2
View File
@@ -5,7 +5,6 @@ coppwr
cura-bin
distroav-bin
dxvk-bin
ferdium-bin
ffmpeg7.1
fontbase
freeshow-bin
@@ -37,6 +36,5 @@ streamrip
uxplay
vcvrack
vkd3d-proton-bin
whitesur-icon-theme
wl-screenrec
yaak-bin
-18
View File
@@ -1,18 +0,0 @@
# Secrets (NOT in git)
Everything in this directory except `README.md` and `run.sh` is gitignored.
Secrets are **typed in interactively** by `run.sh` — nothing is committed, kept
on external media, or baked into the ISO.
## What counts as a secret here
- share credentials — `/etc/nase.meow.credentials` (CIFS) and `/etc/davfs2/secrets`
(davfs); the fstab entries that reference them are non-secret and live in
`02-system/60-shares.sh`
- localsend keys — strip `flutter.ls_security_context` from its prefs before archiving; it regenerates
- GNOME Online Accounts (`~/.config/goa-1.0/accounts.conf`)
- later: licensed/cracked app installers & licenses (see `03-user/90-licensed-apps.sh`)
## Usage
```
sudo ./run.sh # prompts for each credential, writes the /etc files
```
+10 -1
View File
@@ -58,14 +58,23 @@ sudo ~/arch-system-hyprland/04-secrets/run.sh
- install bitwig studio manually
- agisoft metashape manually
- configure wine manually
- configure yabridge manually
```
yabridgectl add "$HOME/.wine-vst/drive_c/Program Files/Steinberg/VstPlugins"
yabridgectl add "$HOME/.wine-vst/drive_c/Program Files/Common Files/VST3"
yabridgectl add "$HOME/.wine-vst/drive_c/Program Files/Common Files/CLAP"
yabridgectl sync
```
- copy vcvrack modules
- copy arduino libraries
- copy processing libraries
- install firefox extensions manually
- ublock origin
- floccus
- dark reader
- Dark Reader
- KeePassXC-Browser
- edit hyprland config to adjust for monitor setup, including color profiles under ~/.local/share/icc
+1 -1
View File
@@ -6,7 +6,7 @@ DISK=/dev/vda # TARGET DISK — WILL BE COMPLETELY ERASED (e.g. /de
HOSTNAME=arch-th
USERNAME=tobias
TIMEZONE=Europe/Berlin
LOCALE=en_US.UTF-8
LOCALE=de_DE.UTF-8
KEYMAP=de
# --- hardware / role (used by 02-system) ---