Home | Imprint | Git

Meine Dotfiles

In diesem Repositorium (dots) gibt es Konfigurationen für diverse unixoide Systeme.
Sie werden zum Teil nur sporadisch oder nicht aktualisiert, sind daher potentiell veraltet und sollten nur als Referenz genutzt werden. Dieses Repositorium ist auch ein git-Submodul in meinem pages-Repositorium, beziehungsweise in meinem Blog.

Sofern nicht anders gekennzeichnet unterliegt alles in diesem Repositorium der
"GNU GENERAL PUBLIC LICENSE Version 3"
oder ihrer nachfolgenden Versionen (SPDX-License-Identifier: GPL-3.0-or-later)

SSH

Im Verzeichniss "ssh" befinden sich die öffentlichen Schlüssel die den Zugriff auf meine Geräte per SecureShell regeln.

guix channels

 1: (append (list
 2:          (channel
 3:           (name 'ollama-guix)    
 4:           (url "https://codeberg.org/tusharhero/ollama-guix"))
 5: 
 6:          (channel
 7:           (name 'guix-gaming-games)
 8:           (url "https://gitlab.com/guix-gaming-channels/games.git")
 9:           ;; Enable signature verification:
10:           (introduction
11:            (make-channel-introduction
12:             "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
13:             (openpgp-fingerprint
14:              "50F3 3E2E 5B0C 3D90 0424  ABE8 9BDC F497 A4BB CC7F"))))
15: 
16:          (channel
17:           (name 'guix-android)
18:           (url "https://framagit.org/tyreunom/guix-android.git")
19:           (introduction
20:            (make-channel-introduction
21:             "d031d039b1e5473b030fa0f272f693b469d0ac0e"
22:             (openpgp-fingerprint
23:              "1EFB 0909 1F17 D28C CBF9  B13A 53D4 57B2 D636 EE82"))))
24: 
25:          (channel
26:           (name 'guix-science)
27:           (url "https://codeberg.org/guix-science/guix-science.git")
28:           (introduction
29:            (make-channel-introduction
30:             "b1fe5aaff3ab48e798a4cce02f0212bc91f423dc"
31:             (openpgp-fingerprint
32:              "CA4F 8CF4 37D7 478F DA05  5FD4 4213 7701 1A37 8446"))))
33: 
34:          (channel
35:           (name 'guix-science-nonfree)
36:           (url "https://codeberg.org/guix-science/guix-science-nonfree.git")
37:           (introduction
38:            (make-channel-introduction
39:             "58661b110325fd5d9b40e6f0177cc486a615817e"
40:             (openpgp-fingerprint
41:              "CA4F 8CF4 37D7 478F DA05  5FD4 4213 7701 1A37 8446"))))
42: 
43:          (channel
44:           (name 'bin-guix)
45:           (url "https://github.com/ieugen/bin-guix")
46:           (branch "main")
47:           ;;Enable signature verification:
48:           ;;TBA
49:           )
50: 
51:          (channel
52:           (name 'rde)
53:           (url "https://git.sr.ht/~abcdw/rde")
54:           (introduction
55:            (make-channel-introduction
56:             "257cebd587b66e4d865b3537a9a88cccd7107c95"
57:             (openpgp-fingerprint
58:              "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0"))))
59: 
60:          (channel
61:           (name 'guix-past)
62:           (url "https://codeberg.org/guix-science/guix-past")
63:           (introduction
64:            (make-channel-introduction
65:             "0c119db2ea86a389769f4d2b9c6f5c41c027e336"
66:             (openpgp-fingerprint
67:              "3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5"))))
68: 
69:          (channel
70:           (name 'nonguix)
71:           (url "https://gitlab.com/nonguix/nonguix")
72:           (introduction
73:            (make-channel-introduction
74:             "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
75:             (openpgp-fingerprint
76:              "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5")))))
77:         %default-channels)
78: 

N2P-Fermenter manifest

 1: (specifications->manifest
 2:  (list
 3:   "binutils"
 4:   "ccl"
 5:   "curl"
 6:   "ecl"
 7:   "gcc-toolchain"
 8:   "git:send-email"
 9:   "make"
10:   "wakelan"
11:   "aspell"
12:   "aspell-dict-de"
13:   "aspell-dict-en"
14:   "emacs-tramp-auto-auth"
15:   "emacs-auth-source-pass"
16:   "emacs-password-store"
17:   "emacs-password-store-otp"
18:   "emacs-pass"
19:   "password-store"
20:   "gnupg"
21:   "passff-host"
22:   "pass-tomb"
23:   "pinentry-emacs"
24:   "emacs-pinentry"  
25:   "emacs-bbdb"
26:   "bash"                                      
27:   "coreutils"
28:   "cpupower"
29:   "direnv"
30:   "emacs"
31:   "emacs-async"
32:   "emacs-dired-du"
33:   "emacs-dired-hacks"
34:   "emacs-eat"
35:   "emacs-geiser"
36:   "emacs-geiser-guile"
37:   "emacs-marginalia"
38:   "emacs-ob-async"
39:   "emacs-org-contrib"
40:   "emacs-org-node"
41:   "emacs-ox-pandoc"
42:   "emacs-request"
43:   "emacs-with-editor"
44:   "ethtool"
45:   "fd"
46:   "findutils"
47:   "flatpak"
48:   "gawk"
49:   "git"
50:   "glibc-locales"
51:   "gnunet"
52:   "gpm"
53:   "grep"
54:   "imagemagick"
55:   "make"
56:   "netcat-openbsd"
57:   "nftables"
58:   "nmap"
59:   "nss-certs"
60:   "openssh"
61:   "password-store"
62:   "pavucontrol"
63:   "pinentry-emacs"
64:   "sed"
65:   "tree-sitter-bash"
66:   "tree-sitter-c"
67:   "tree-sitter-cmake"
68:   "tree-sitter-css"
69:   "tree-sitter-devicetree"
70:   "tree-sitter-dockerfile"
71:   "tree-sitter-html"
72:   "tree-sitter-latex"
73:   "tree-sitter-org"
74:   "tree-sitter-python"
75:   "tree-sitter-r"
76:   "tree-sitter-scheme"
77:   "unzip"
78:   "usbutils"
79:   "wesnoth"
80:   "wget"
81:   "whois"
82:   "xxhash"
83:   "zip"
84:   "singularity"))

Imac Early '09

Simple config (mit wahlweise Gnome oder EXWM als UI) für einen Apple IMac (early '09) oder eine vergleichbare Maschine
Keiner hier nutzt den also wird nicht mehr weiter entwickelt. (Allgemein versuche ich x86 auszuschleichen.) Wer den IMac will, kann mir hier → jakob.honal@gmx.de eine mail oder einfach ein git-issue schreiben.

Module

 1: (use-modules
 2:  (guix packages)
 3:  (guix download)
 4:  (guix licenses)
 5:  (guix gexp)
 6:  (guix git-download)
 7:  (guix build-system trivial)
 8:  (gnu)
 9:  (gnu system nss)
10:  (gnu packages)
11:  (gnu packages java)
12:  (gnu packages aspell)
13:  (gnu packages xorg)
14:  (gnu packages admin)
15:  (gnu packages emacs-xyz)
16:  (gnu packages emacs)
17:  (gnu packages gawk)
18:  (gnu packages graphviz)
19:  (gnu packages gimp)
20:  (gnu packages inkscape)
21:  (gnu packages pulseaudio)
22:  (gnu packages imagemagick)
23:  (gnu packages gnome)
24:  (gnu packages libreoffice)
25:  (gnu packages texlive)
26:  (gnu packages version-control)
27:  (gnu packages certs)
28:  (gnu packages package-management)
29:  (gnu packages fonts)
30:  (gnu packages video)
31:  (gnu packages gnuzilla)
32:  (nongnu packages linux) (nongnu packages mozilla) (nongnu system linux-initrd)
33:  (srfi srfi-1))
34: 
35: (use-service-modules audio dbus desktop cups networking mcron sound ssh xorg)
36: (use-package-modules
37:  admin audio
38:  bash bootloaders
39:  certs curl cups
40:  package-management
41:  web web-browsers wm
42:  shells shellutils
43:  text-editors terminals
44:  image nano disk freedesktop
45:  linux libreoffice scanner
46:  video
47:  gimp graphics glib
48:  wget 
49:  xorg emacs
50:  xdisorg
51:  ssh
52:  )

Udev Rules

 1: 
 2: ;; Allow members of the "video" group to change the screen brightness.
 3: (define %backlight-udev-rule (udev-rule
 4:                               "90-backlight.rules"
 5:                               (string-append "ACTION==\"add\", SUBSYSTEM==\"backlight\", "
 6:                                              "RUN+=\"/run/current-system/profile/bin/chgrp video /sys/class/backlight/%k/brightness\""
 7:                                              "\n"
 8:                                              "ACTION==\"add\", SUBSYSTEM==\"backlight\", "
 9:                                              "RUN+=\"/run/current-system/profile/bin/chmod g+w /sys/class/backlight/%k/brightness\"")))
10: 

Betriebssystem

 1: (operating-system
 2:  (kernel linux)
 3:  (kernel-arguments '("modprobe.blacklist=pcspkr,snd_pcsp")) ;Kill The Bell
 4:                                         ;  (initrd microcode-initrd)
 5:  (firmware (list linux-firmware))
 6:  (host-name "guiximac")
 7:  (timezone "Europe/Berlin")
 8:  (locale "en_US.utf8")
 9:  (keyboard-layout (keyboard-layout "us" "altgr-intl"))
10:  (bootloader (bootloader-configuration
11:               (bootloader grub-efi-bootloader)
12:               (targets (list "/boot/efi") )
13:               (keyboard-layout keyboard-layout)))
14: 
15:  (file-systems (append (list
16:                         (file-system (device (uuid "bc5d7046-0742-4bfb-b1b7-8a5cc3d0d6b2")) (mount-point "/") (type "ext4"))
17:                         (file-system (device (uuid "DDB6-DBC2" 'fat)) (mount-point "/boot/efi") (type "vfat"))) %base-file-systems))
18:  (users (append (list (user-account
19:                        (name "tantalus")
20:                        (comment "")
21:                        (group "users")
22:                        (supplementary-groups '("netdev" "audio" "video" "lp"))
23:                        (home-directory "/home/tantalus")
24:                        (password (crypt "1234" "1234")))
25: 
26:                       (user-account
27:                        (name "botty")
28:                        (comment "")
29:                        (group "users")
30:                        (supplementary-groups '("netdev" "audio" "video" "lp"))
31:                        (home-directory "/home/botty")
32:                        (password (crypt "botty" "botty")))
33: 
34:                       (user-account
35:                        (name "mutter")
36:                        (comment "")
37:                        (group "users")
38:                        (supplementary-groups '("netdev" "audio" "video" "lp"))
39:                        (home-directory "/home/mutter")
40:                        (password (crypt "mutter" "mutter")))) %base-user-accounts))
41:  (issue "")

Packages

 1: (packages (append (list
 2:                     ;; bare necessities
 3:                     bash bash-completion gnupg man-db coreutils findutils sed grep gawk guix direnv   
 4:                     aspell aspell-dict-en aspell-dict-de curl wget nmap
 5:                     xf86-input-libinput xf86-video-fbdev xf86-input-mouse
 6:                     glibc-locales coreutils xinit xf86-input-synaptics xinput
 7:                     emacs-ox-pandoc emacs-pdf-tools emacs-minibuffer-line emacs
 8:                     emacs-dired-du emacs-exwm graphviz emacs-async emacs-ob-async emacs-request emacs-dired-hacks
 9:                     gimp inkscape xorg-server pavucontrol pamixer imagemagick adwaita-icon-theme gnome-themes-extra
10:                     dconf libreoffice texlive xf86-input-keyboard xf86-video-amdgpu git nss-certs
11:                     flatpak font-sarasa-gothic fontconfig ffmpeg librewolf yt-dlp mpv
12:                     bluez bluez-alsa alsa-plugins alsa-utils gpm xdg-utils xrdb xdg-desktop-portal
13:                     dbus htop nano lf gnome) %base-packages))

Dienste

 1: (services (append (list
 2:                    (service gpm-service-type)
 3:                    (service wpa-supplicant-service-type (wpa-supplicant-configuration
 4:                                                          (config-file "/guix-imac/wpa_supplicant.conf")
 5:                                                          (interface "wlp4s0")))
 6:                    (service dhcp-client-service-type)
 7:                     (service dbus-root-service-type)
 8:                     (service nftables-service-type)
 9:                     (service block-facebook-hosts-service-type)
10:                     (service openssh-service-type
11:                              (openssh-configuration
12:                               (openssh openssh-sans-x)
13:                               (x11-forwarding? #f)
14:                               (permit-root-login 'prohibit-password)
15:                               (password-authentication? #f)
16:                               (generate-host-keys? #t)
17:                               (public-key-authentication? #t)
18:                               (authorized-keys
19:                                `(("root" ,(local-file "./ssh/macfag.pub") ,(local-file "./ssh/rock64.pub") ,(local-file "./ssh/termux_id_ed_25519.pub"))
20:                                  ("macfag" ,(local-file "./ssh/macfag.pub") ,(local-file "./ssh/rock64.pub") ,(local-file "./ssh/termux_id_ed_25519.pub"))
21:                                  ("tantalus" ,(local-file "./ssh/id_ed25519.pub")))))) ;; maybe change this to something like tantalus_id_ed25519.pub instead of the default
22: 
23:                     (service bluetooth-service-type)
24:                    (service sane-service-type sane-backends)
25:                    (service usb-modeswitch-service-type)
26:                    (service cups-service-type (cups-configuration
27:                                                (web-interface? #t)
28:                                                (default-paper-size "A4")
29:                                                (extensions (list cups-filters epson-inkjet-printer-escpr hplip-minimal)))))
30: 
31:                    (modify-services %base-services (guix-service-type config => (guix-configuration (inherit config)
32:                                                                                                     (substitute-urls
33:                                                                                                      (append (list "https://substitutes.nonguix.org"
34:                                                                                                                    "192.168.178.188") %default-substitute-urls))
35:                                                                                                     (authorized-keys
36:                                                                                                      (append (list (local-file "./ssh/nonguix-signing-key.pub"))
37:                                                                                                              %default-authorized-guix-keys)))))))
38: (name-service-switch %mdns-host-lookup-nss))

RockPro64/PineBookPro

Mein aktuelles System (aarch64) ist Libre Only, der devicetree wird von mainline Linux supported!!!. Seit das PinebookPro nicht mehr mit mir spricht läuft das auf meinem RockPro64. Ich muss bei Gelegenheit noch mal einen Reanimationsversuch starten, das PineBookPro ist zu geil um kaputt im Schrank zu liegen. Da kaum Unterschiede zwischen den Maschinen bestehen sollte das, wenn man die bootloadersektion anpasst und wifi/bt treiber bereitstellt aber genau so gut wieder auf einem PinebookPro laufen.

Module

 1: (use-modules (guix packages)
 2:              (guix download)
 3:              (guix licenses)
 4:              (guix gexp)
 5:              (guix git-download)
 6:              (guix build-system trivial)
 7:              (gnu)
 8:              (gnu bootloader u-boot)
 9:              (gnu system nss)
10:              (gnu packages)
11:              (gnu packages linux)
12:              (srfi srfi-1))
13: 
14: (use-service-modules audio dbus desktop networking sound xorg)
15: (use-package-modules aspell audio bash bootloaders certs curl
16:                      pulseaudio emacs emacs-xyz graphviz
17:                      imagemagick video xorg fonts)

Betriebssystem

  1: (operating-system (kernel linux-libre)
  2:                   (kernel-arguments '("modprobe.blacklist=pcspkr,snd_pcsp"))
  3:                   (initrd-modules '())
  4:                   (firmware %base-firmware)
  5:                   (host-name "RockPro") 
  6:                   (timezone "Europe/Berlin")
  7:                   (locale "en_US.utf8")
  8:                   (keyboard-layout (keyboard-layout "us"))
  9: 
 10:                   (bootloader (bootloader-configuration 
 11:                                (bootloader u-boot-rockpro64-rk3399-bootloader) 
 12:                                (targets '("/dev/mmcblk1"))))
 13: 
 14:                   (file-systems (append (list 
 15:                                          (file-system (device  (uuid "9ad093a3-d49b-4b38-8dde-bd706ad52eb9"))
 16:                                                       (mount-point "/")
 17:                                                       (type "ext4"))) %base-file-systems))
 18: 
 19:                   (users (append (list  
 20:                                   (user-account (name "botty") 
 21:                                                 (comment "Botty Mac Botface")
 22:                                                 (group "users") 
 23:                                                 (supplementary-groups '("wheel" "netdev" "audio" "video" "lp")) (home-directory "/home/botty") (password (crypt "botty" "3d8n7")))
 24: 
 25:                                   (user-account (name "root") (uid 0) (comment "") (group "root") (password (crypt "root" "6h94ll"))))
 26:                                  %base-user-accounts))
 27: 
 28:                   (issue "")
 29:                   (packages (append (list                                    
 30:                                      adwaita-icon-theme
 31:                                      alsa-lib
 32:                                      alsa-utils
 33:                                      apertium
 34:                                      arandr
 35:                                      asco
 36:                                      aspell
 37:                                      aspell-dict-de
 38:                                      aspell-dict-en
 39:                                      autorandr
 40:                                      bash                                     
 41:                                      binutils
 42:                                      bluez
 43:                                      brightnessctl
 44:                                      browserpass-native
 45:                                      ccl
 46:                                      coreutils
 47:                                      cpupower
 48:                                      curl
 49:                                      dconf
 50:                                      direnv
 51:                                      dosfstools
 52:                                      dvd+rw-tools
 53:                                      ecl
 54:                                      emacs
 55:                                      emacs-async
 56:                                      emacs-auth-source-pass
 57:                                      emacs-bbdb
 58:                                      emacs-debbugs
 59:                                      emacs-devicetree-ts-mode
 60:                                      emacs-dired-du
 61:                                      emacs-dired-hacks
 62:                                      emacs-eat
 63:                                      emacs-ednc
 64:                                      emacs-ement
 65:                                      emacs-empv
 66:                                      emacs-exwm
 67:                                      emacs-geiser
 68:                                      emacs-geiser-guile
 69:                                      emacs-gptel
 70:                                      emacs-htmlize
 71:                                      emacs-marginalia
 72:                                      emacs-ob-async
 73:                                      emacs-org-caldav
 74:                                      emacs-org-contrib                                       
 75:                                      emacs-org-node
 76:                                      emacs-org-rainbow-tags
 77:                                      emacs-org-roam
 78:                                      emacs-ox-pandoc
 79:                                      emacs-pass
 80:                                      emacs-password-store
 81:                                      emacs-password-store-otp
 82:                                      emacs-pdf-tools
 83:                                      emacs-pinentry
 84:                                      ;; emacs-rainbow-delimiters
 85:                                      ;; emacs-rainbow-mode
 86:                                      emacs-request
 87:                                      emacs-spray
 88:                                      emacs-tramp-auto-auth
 89:                                      emacs-with-editor
 90:                                      emacs-yeetube
 91:                                      ethtool
 92:                                      fd
 93:                                      ffmpeg
 94:                                      findutils
 95:                                      flatpak
 96:                                      font-awesome
 97:                                      font-comic-neue
 98:                                      font-opendyslexic
 99:                                      font-openmoji
100:                                      font-sarasa-gothic
101:                                      gawk
102:                                      gcc-toolchain
103:                                      gimp
104:                                      git
105:                                      git:send-email
106:                                      glibc-locales
107:                                      gnome-themes-extra
108:                                      gnunet
109:                                      gnunet-gtk
110:                                      gnupg
111:                                      gnuplot
112:                                      gpm
113:                                      graphviz
114:                                      grep
115:                                      gtk+
116:                                      gvfs
117:                                      librewolf                                      
118:                                      imagemagick
119:                                      inkscape
120:                                      ;; john-the-ripper-jumbo
121:                                      ;; kicad
122:                                      libguestfs
123:                                      ;; libreoffice
124:                                      libvirt
125:                                      light
126:                                      make
127:                                      man-db
128:                                      man-pages
129:                                      ;; mercurial
130:                                      mesa
131:                                      mesa-utils
132:                                      minetest
133:                                      mono
134:                                      mpg123
135:                                      mpv
136:                                      nbd
137:                                      netcat-openbsd
138:                                      nftables
139:                                      ngspice
140:                                      nmap
141:                                      nss-certs
142:                                      ntfs-3g-static
143:                                      obs
144:                                      openbabel
145:                                      openssh
146:                                      p7zip
147:                                      pamixer
148:                                      pantalaimon
149:                                      pass-coffin
150:                                      passff-host
151:                                      passff-icecat
152:                                      password-store
153:                                      pavucontrol
154:                                      pinentry-emacs
155:                                      qemu
156:                                      qrencode
157:                                      scrot
158:                                      sed
159:                                      shepherd
160:                                      sqlcipher
161:                                      tesseract-ocr
162:                                      tesseract-ocr-tessdata-fast
163:                                      texlive
164:                                      texlive-beamer
165:                                      texlive-collection-fontsrecommended
166:                                      texlive-collection-latexrecommended
167:                                      texlive-scheme-basic
168:                                      texlive-xetex
169:                                      tree-sitter-bash
170:                                      tree-sitter-bibtex
171:                                      tree-sitter-c
172:                                      ;; tree-sitter-cmake 
173:                                      tree-sitter-css
174:                                      tree-sitter-devicetree
175:                                      tree-sitter-dockerfile
176:                                      tree-sitter-html
177:                                      tree-sitter-latex
178:                                      ;; tree-sitter-matlab
179:                                      tree-sitter-org
180:                                      tree-sitter-python
181:                                      ;; tree-sitter-r
182:                                      tree-sitter-scheme
183:                                      ublock-origin-chromium
184:                                      ublock-origin-icecat
185:                                      ungoogled-chromium
186:                                      unzip
187:                                      usbutils
188:                                      wakelan
189:                                      ;; wesnoth
190:                                      wget
191:                                      whois
192:                                      wireplumber                                      
193:                                      xf86-input-libinput
194:                                      xf86-input-mouse
195:                                      xf86-input-synaptics
196:                                      ;;  xf86-video-amdgpu
197:                                      xf86-video-fbdev
198:                                      xinit
199:                                      xinput
200:                                      xmodmap
201:                                      xorg-server
202:                                      xrdb
203:                                      xschem
204:                                      xscreensaver
205:                                      xset
206:                                      xsetroot
207:                                      xxhash
208:                                      yt-dlp
209:                                      zip
210:                                      ) %base-packages))
211: 
212: 
213:                   (services (append (list (service gpm-service-type)
214:                                           (service dhcp-client-service-type)
215:                                           (dbus-service))
216:                                     (modify-services %base-services (guix-service-type config => (guix-configuration (inherit config) (tmpdir "/build"))))))
217:                   (name-service-switch %mdns-host-lookup-nss))
218: 

Proles

Die Konfiguration für einen HPE ProLiant Server (ML-350 Generation 9).
Ich weis der ist x86 aber er war superbillig und hatte ein LTO-4 Kasettenlaufwerk.
Wenn du eine vergleichbare RISC-basierte Maschine abzugeben hast nehme ich die gerne.

Systemdeklaration

Message of the Day

 1: (define %motd
 2:   (plain-file "motd"
 3:               "\
 4:    ░░░                                     ░░░
 5:     ░░▒▒░░░░░░░░░               ░░░░░░░░░▒▒░░
 6:      ░░▒▒▒▒▒░░░░░░░           ░░░░░░░▒▒▒▒▒░
 7:          ░▒▒▒░░▒▒▒▒▒         ░░░░░░░▒▒░
 8:                ░▒▒▒▒░       ░░░░░░
 9:                 ▒▒▒▒▒      ░░░░░░
10:                  ▒▒▒▒▒     ░░░░░
11:                  ░▒▒▒▒▒   ░░░░░    Wilkommen im Proletariat!
12:                   ▒▒▒▒▒   ░░░░░
13:                    ▒▒▒▒▒ ░░░░░
14:                    ░▒▒▒▒▒░░░░░
15:                     ▒▒▒▒▒▒░░░
16:                      ▒▒▒▒▒▒░
17: 
18: *FAILURE TO READ THESE RULES DOES NOT EXEMPT YOU:*
19: 1. Respect the other users.
20: 
21: 2. Follow subserver rules.
22:    Most, if not every, subserver has rules laid out for its users.
23: 
24: 3. Theft is obviously forbidden (and will get you kicked).
25:    Exploting any available opportunity to steal permissions,
26:    credentials or general data from another member of this server is prohibited.
27: 
28: 4. Friendly bots only are allowed.
29:    If you cannot control your bot do not bring it on the Server.
30: 
31: 5. Do not flood users or subservers.
32:    If you spot any flooding, Report it ASAP.
33: 
34: 6. No spamming is allowed.
35:    This inludes mass-advertising, pointlessly pinging multiple users at once
36:    as well as spamming a single endpoint with countless messages.
37: 
38: 7. Pirating is not allowed.
39:    This inludes hosting filesharing software and any other form of
40:    pirate media distribution.
41: 
42: 8. Subserver Wars are not tolerated.
43:    We are a peaceful server, and we intend to stay that way.
44:    If your group has a problem with another group, report it.
45:    If your subserver is the victim of a subserver war, report it.
46:    Every report is dealt with seriously.
47: 
48: 9. Installing Software
49:    The users of this server can (given they have the required permissions)
50:    install software and services in their respective user profiles 
51:    using the guix package manger and the channels configued for it.
52:    Just remeber that the resources aviable to you (netquota, diskspace, compute-time...) may be limited.
53:    For any other software, be it a script from the net or the code you have written on the fly,
54:    you must obtain permission to use it in advance and the code must be audited. 
55:    (Yea, f*** your proprietary closed soure code!)
56: 
57: 10. Dont ask for Privileges (e.g. Admin)
58:     We are not looking for admins at this time.
59:     If you ask to become one, you will never be one.
60:     Working as an admin on this server is a thankless and unpaid job.
61:     Our admins did not want admin, nor should you.
62: 
63: Allthought there are admins present most of the time this is considered an
64: unmoderated environment and you connect here at your own risk.
65: This server is largely unmoderated but, for security reasons, logs are maintained.
66: Be advised that in case of server malconduct, these logs may be consulted.
67: This is a privately owned and operated Server. As such, we reserve the right
68: to remove any person or bot from any or all servers for any reason at any time.
69: Each founder of a Subserver is responsible for policing their own subservers(s)
70: by the correct laws and guidelines.
71: We accept no responsibility for the actions of subserver users or their founders.
72: 
73: Anyone who behaves inappropriately or violates the server rules will lose their account
74: and can find their IP address in the host file of shame.
75: 
76: ​*Permanently, No Exceptions. You have been warned!*
77: 
78:  Happy hacking!\n"))

Module

 1: (use-modules (guix packages)
 2:              (guix download)
 3:              (guix licenses)
 4:              (guix gexp)
 5:              (guix git-download)
 6:              (guix build-system trivial)
 7:              (guix channels)
 8: 
 9:              (gnu)
10:              (gnu bootloader u-boot)
11:              (gnu system nss)
12:              (gnu system locale)
13:              (gnu packages)
14:              (gnu packages admin)
15:              (gnu packages aidc)
16:              (gnu packages aspell)
17:              (gnu packages certs)
18:              (gnu packages cdrom)
19:              (gnu packages chemistry)
20:              (gnu packages compression)
21:              (gnu packages databases)
22:              (gnu packages dictionaries)
23:              (gnu packages digest)
24:              (gnu packages emacs)
25:              (gnu packages emacs-xyz)
26:              (gnu packages fonts)
27:              (gnu packages finance)
28:              (gnu packages games)
29:              (gnu packages gawk)
30:              (gnu packages gimp)
31:              (gnu packages gnunet)
32:              (gnu packages graphviz)
33:              (gnu packages imagemagick)
34:              (gnu packages imagemagick)
35:              (gnu packages inkscape)
36:              (gnu packages libreoffice)
37:              (gnu packages machine-learning)
38:              (gnu packages maths)
39:              (gnu packages messaging)
40:              (gnu packages minetest)
41:              (gnu packages networking)
42:              (gnu packages package-management)
43:              (gnu packages pulseaudio)
44:              (gnu packages telephony)
45:              (gnu packages tex)
46:              (gnu packages texlive)
47:              (gnu packages texlive)
48:              (gnu packages tree-sitter)
49:              (gnu packages version-control)
50:              (gnu packages video)
51:              (gnu packages web)
52:              (gnu packages wget)
53:              (gnu packages xorg)
54: 
55:              (gnu services admin)
56:              (gnu services cuirass)
57:              (gnu services databases)
58:              (gnu services dns)
59:              (gnu services web)
60:              (gnu services certbot)
61:              (gnu services mcron)
62:              (gnu services games)
63:              (gnu services messaging)
64:              (gnu services shepherd)
65:              (gnu services security)
66:              (gnu services linux)
67:              (gnu services avahi)
68: 
69:              (nongnu packages linux)
70:              (nongnu system linux-initrd)
71:              (nongnu packages mozilla)
72:              (srfi srfi-1))
73: 
74: (use-service-modules dbus networking ssh)
75: (use-package-modules aspell admin audio bash bootloaders certs curl package-management web shells text-editors disk linux glib wget pulseaudio emacs emacs-xyz graphviz imagemagick ssh security-token video fonts)

Cuirass

 1: (define %cuirass-specs
 2:   #~(list (specification
 3:            (name "großpackungen")
 4:            (build '(packages (list "minetest"
 5:                                    "librewolf"
 6:                                    "texlivetexmf"
 7:                                    "emacs"
 8:                                    "emacs-pgtk-xwidgets"
 9:                                    "webkitgtk-with-libsoup2"
10:                                    ))))
11: 
12:           (specification
13:            (name "rechenkrebspakete")
14:            (systems (list aarch64-linux armhf-linux riscv64-linux i686-linux))
15:            (build '(packages (list "binutils"
16:                                    "curl"
17:                                    "ecl"
18:                                    "gcc-toolchain"
19:                                    "git:send-email"
20:                                    "make"
21:                                    "wakelan"
22:                                    "aspell"
23:                                    "aspell-dict-de"
24:                                    "aspell-dict-en"
25:                                    "emacs-tramp-auto-auth"
26:                                    "emacs-auth-source-pass"
27:                                    "emacs-password-store"
28:                                    "emacs-password-store-otp"
29:                                    "emacs-pass"
30:                                    "password-store"
31:                                    "gnupg"
32:                                    "pinentry-emacs"
33:                                    "emacs-pinentry"  
34:                                    "bash"  
35:                                    "coreutils"
36:                                    "cpupower"
37:                                    "direnv"
38:                                    "emacs-no-x-toolkit"
39:                                    "emacs-async"
40:                                    "emacs-dired-du"
41:                                    "emacs-dired-hacks"
42:                                    "emacs-eat"
43:                                    "emacs-geiser"
44:                                    "emacs-geiser-guile"
45:                                    "emacs-marginalia"
46:                                    "emacs-ob-async"
47:                                    "emacs-org-contrib"
48:                                    "emacs-org-node"
49:                                    "emacs-request"
50:                                    "emacs-with-editor"
51:                                    "ethtool"
52:                                    "fd"
53:                                    "findutils"
54:                                    "flatpak"
55:                                    "gawk"
56:                                    "git"
57:                                    "glibc-locales"
58:                                    "gnunet"
59:                                    "gpm"
60:                                    "grep"
61:                                    "imagemagick"
62:                                    "make"
63:                                    "netcat-openbsd"
64:                                    "nftables"
65:                                    "nmap"
66:                                    "nss-certs"
67:                                    "openssh"
68:                                    "password-store"
69:                                    "pavucontrol"
70:                                    "pinentry-emacs"
71:                                    "sed"
72:                                    "tree-sitter-bash"
73:                                    "tree-sitter-c"
74:                                    "tree-sitter-cmake"
75:                                    "tree-sitter-css"
76:                                    "tree-sitter-devicetree"
77:                                    "tree-sitter-dockerfile"
78:                                    "tree-sitter-html"
79:                                    "tree-sitter-latex"
80:                                    "tree-sitter-org"
81:                                    "tree-sitter-python"
82:                                    "tree-sitter-r"
83:                                    "tree-sitter-scheme"
84:                                    "unzip"
85:                                    "usbutils"
86:                                    "wget"
87:                                    "whois"
88:                                    "xxhash"
89:                                    "zip"
90:                                    "singularity"))))))
91: 

Crude Jobs

 1: (define guix-gc-job
 2:   ;; run every week
 3:   #~(job (lambda (current-time) (+ current-time (* 7 24 60 60))) "guix gc --verify=contents,repair && guix gc --vacuum-database && guix system delete-generations 2w"))
 4: 
 5: (define ddns-update-job
 6:   ;; Check the IPv6 Adress and if changed update the ddns to the new one given by the ISP every ten minutes.
 7:   ;; Das geht sicher auch ohne bashscript:
 8:   ;; https://guix.gnu.org/cookbook/en/html_node/Dynamic-DNS-mcron-job.html
 9:   ;; get_ip6_function? storage in nem file? ramfile?
10:   #~(job '(next-minute (iota 6 0 10))  ". /ddns.bash"))
11: 
12: (define minetest-respawn-job
13:   ;; Restart every 5 minutes minetest-server in case it is crashed 
14:   #~(job '(next-minute (iota 12 0 5))  ". /minetest-server.bash"
15:          #:user "minetest"))
16: 
17: (define openttd-respawn-job
18:   ;; Restart every 30 minutes openttd-server in case it is crashed 
19:   #~(job '(next-minute '(0 30))  "openttd -fD &> /dev/null"
20:          #:user "openttd"))
21: 
22: (define coinheater-respawn-job
23:   ;; Restart every hour in case coinheater is crashed 
24:   #~(job '(next-hour)  ". /dots/coinheater.bash"
25:          #:user "steve"))
26: 

Services

https://guix.gnu.org/manual/en/html_node/Log-Rotation.html

  1: (define %monerod-accounts
  2:   (list (user-account
  3:          (name "monerod")
  4:          (group "monerod")
  5:          (system? #t)
  6:          (comment "monero daemon user")
  7:          (home-directory "/var/empty")
  8:          (shell (file-append shadow "/sbin/nologin")))
  9:         (user-group
 10:          (name "monerod")
 11:          (system? #t))))
 12: 
 13: 
 14: (define monerod-shepherd-service
 15:   (shepherd-service
 16:    (documentation "Run the monero daemon (monerod).")
 17:    (provision '(monerod))
 18:    (requirement '(networking file-system-/data user-file-systems user-processes))
 19:    (start #~(make-forkexec-constructor '("monerod --rpc-use-ipv6 --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-ipv6-address=::1 --rpc-restricted-bind-port=18089 --rpc-ignore-ipv4 --no-igd --zmq-pub tcp://127.0.0.1:18084 --out-peers 64 --in-peers 64 --disable-dns-checkpoints --enable-dns-blocklist  --data-dir /data/monero/.bitmonero")
 20:                                        #:user "monerod"
 21:                                        #:group "monerod"
 22:                                        #:directory "/var/monerod"
 23:                                        #:log-file "/var/log/monerod.log"
 24:                                        #:pid-file "/var/run/monerod.pid"
 25:                                        ))
 26: 
 27:    (stop #~(make-kill-destructor))))
 28: 
 29: 
 30: (define monerod-service-type
 31:   (service-type
 32:    (name "monerod")
 33:    (description "Runs the Monero Daemon")
 34:    (extensions
 35:     (list (service-extension account-service-type
 36:                              (const %monerod-accounts))
 37:           (service-extension shepherd-root-service-type
 38:                              (compose list monerod-shepherd-service))))))
 39: 
 40: 
 41: 
 42: 
 43: 
 44: (define udev-rules (udev-rules-service 'light light))
 45: ;;  (service nftables-service-type)
 46: ;;         (nftables-configuration (ruleset (list %default-nftables-ruleset))))
 47: ;; portfreigaben für Imap (993), SMTP (465), minetest (30000)
 48: ;;  37889 (P2Pool port) or 37888 (P2Pool mini port)
 49: ;; port 18080 (Monero p2p port) 
 50: ;; OpenTTD (3979)
 51: 
 52: (define fail2ban (service fail2ban-service-type
 53:                           (fail2ban-configuration
 54:                            (extra-jails
 55:                             (list
 56:                              (fail2ban-jail-configuration
 57:                               (name "sshd")
 58:                               (enabled? #t)))))))
 59: 
 60: 
 61: (define openssh (service openssh-service-type
 62:                          (openssh-configuration
 63:                           (openssh openssh-sans-x)
 64:                           (x11-forwarding? #f)
 65:                           (allow-agent-forwarding? #f)
 66:                           (allow-tcp-forwarding? #f)
 67:                           (permit-root-login 'prohibit-password)
 68:                           (password-authentication? #f)
 69:                           (generate-host-keys? #t)
 70:                           (public-key-authentication? #t)
 71:                           (authorized-keys
 72:                            `(("root" ,(local-file "ssh/macfag.pub") ,(local-file "ssh/jakob_id_ed_25519.pub") ,(local-file "ssh/macfag_termux_id_ed25519.pub"))
 73:                              ("prolet" ,(local-file "ssh/macfag.pub") ,(local-file "ssh/jakob_id_ed_25519.pub") ,(local-file "ssh/macfag_termux_id_ed25519.pub"))
 74:                              ("tantalus" ,(local-file "ssh/tantalus_id_ed25519.pub")))))))
 75: 
 76: 
 77: (define avahi (service avahi-service-type
 78:                        (avahi-configuration
 79:                         (wide-area? #t))))                                   
 80: 
 81: (define postgresql (service postgresql-service-type
 82:                             (postgresql-configuration
 83:                              (postgresql postgresql-15)
 84:                              (data-directory "/data/postgres")
 85:                              (config-file (postgresql-config-file 
 86:                                            (extra-config '(("shared_buffers" "16 GB")
 87:                                                            ("max_wal_size" "8 GB"))))))))
 88: 
 89: 
 90: (define postgresql-role (service postgresql-role-service-type
 91:                                  (postgresql-role-configuration
 92:                                   (roles
 93:                                    (list (postgresql-role
 94:                                           (name "cuirass")
 95:                                           (create-database? #t))
 96:                                          (postgresql-role
 97:                                           (name "minetest")
 98:                                           (create-database? #t)))))))
 99: 
100: 
101: 
102: 
103: 
104: (define cuirass (service cuirass-service-type
105:                          (cuirass-configuration
106:                           (interval 120)
107:                           ;; (one-shot? #t) ;; Einmal reicht erstmal
108:                           (fallback? #t) ;; Unsere einzige Chance doch noch ein Paket zu bekommen                                           
109:                           (specifications %cuirass-specs))))
110: 
111: (define guix-publish (service guix-publish-service-type
112:                               (guix-publish-configuration
113:                                (host "0.0.0.0")
114:                                (port 3000)
115:                                (compression '(("zstd" 9)))
116:                                (advertise? #t)
117:                                (cache "/var/cache/guix/publish")
118:                                (cache-bypass-threshold (expt 2 29)) ;; Die nutzer müssen nicht auf substitute im cache warten wenn die Pakete kleiner 500MiB sind  
119:                                )))
120: 
121: 
122: ;; ------------------------------------ Kurznachrichtendienste ------------------------------------
123: 
124: (define prosody (service prosody-service-type
125:                          (prosody-configuration
126:                           (modules-enabled (cons* "groups" "mam" %default-modules-enabled))
127:                           (int-components
128:                            (list
129:                             (int-component-configuration
130:                              (hostname  "192.168.178.188") ;; "chat.prolet.dynv6.net")
131:                              (plugin "muc")
132:                              (mod-muc (mod-muc-configuration)))))
133:                           (virtualhosts
134:                            (list
135:                             (virtualhost-configuration
136:                              (domain "192.168.178.188"))))))
137:   ;;  (domain "prolet.dynv6.net"))))))
138: 
139:   ;; Coturn
140:   ;; opencart ?
141: 
142:   ;; MDA
143:   ;;
144:   (define dovecot (service dovecot-service-type
145:                            (dovecot-configuration
146:                             (mail-location "maildir:~/.mail")
147:                             (protocol-configuration-list (list "imaps"))
148: 
149:                             )))
150: 
151:   ;; MTA
152: 
153:   (define opensmtpd (service opensmtpd-service-type
154:                              (opensmtpd-configuration
155:                               (shepherd-requirement 'networking)
156:                               (config-file (local-file "./smtpd.conf")))))
157: 
158:   ;; DKIM
159:   ;; opensmtp-filter-dkimsign
160: 
161:   (define rspamd (service rspamd-service-type))
162: 
163: 
164: 
165:   ;;  CalDAV and CardDAV Server, not mail but kind of related:
166:   (define radicale (service radicale-service-type))
167: 
168:   ;; last but not least request unlisting of the ip from blocklists
169: 
170: 
171: 
172:   ;; ------------------------------------------ Games ---------------------------------------------
173:   (define wesnothd (service wesnothd-service-type
174:                             (wesnothd-configuration
175:                              (port 15000))))
176: 
177:   ;; ------------------------------------------ Webfront ------------------------------------------
178: 
179:   (define nginx1 (service nginx-service-type
180:                           (nginx-configuration
181:                            (server-blocks
182:                             (list (nginx-server-configuration
183:                                    (server-name '("www.prolet.dynv6.net"))
184:                                    (root "/srv/http/www.prolet.dynv6.net")
185:                                    ;; proxy-pass some.sample.url:port
186:                                    (index (list "index.html" "index.org"))
187:                                    ;; ssl-certificate ssl-certificate-key 
188:                                    ))))))
189: 
190:   ;; minimal do the lets-encrypt shake:
191:   (define nginx2 (service nginx-service-type (nginx-configuration
192:                                               (server-blocks
193:                                                (list
194:                                                 ;; TLS is required for authentication; serve the site via
195:                                                 ;; HTTPS only.
196:                                                 (nginx-server-configuration
197:                                                  (listen '("80"))
198:                                                  (raw-content
199:                                                   (list "return 308 https://suschem.ist;")))
200:                                                 )))))
201: 
202:   ;; ;;  git
203:   (define nginx3 (service nginx-service-type
204:                           (nginx-configuration
205:                            (server-blocks
206:                             (list
207:                              (nginx-server-configuration
208:                               (listen '("443 ssl"))
209:                               (server-name "git.my-host.org")
210:                               (ssl-certificate
211:                                "/etc/letsencrypt/live/git.my-host.org/fullchain.pem")
212:                               (ssl-;; certificate-key
213:                                "/etc/letsencrypt/live/git.my-host.org/privkey.pem")
214:                               (locations
215:                                (list
216:                                 (git-http-nginx-location-configuration
217:                                  (git-http-configuration (uri-path "/")))))))))))
218: 
219: 
220: 
221: 
222: 
223:   ;; ;; minimal do the lets-encrypt shake:
224:   (define  certbot (service certbot-service-type
225:                             (certbot-configuration
226:                              (email "admin@mail.prolet.dynv6.net")
227:                              (certificates
228:                               (list
229:                                (certificate-configuration
230:                                 (domains '("prolet.dynv6.net")))
231:                                )))))
232: 
233: 
234:   (define certbot (service certbot-service-type
235:                            (certbot-configuration
236:                             (certificates
237:                              (list
238:                               (certificate-configuration ;; html home
239:                                (domains '("suschem.ist" "www.prolet.dynv6.net"))) 
240:                               (certificate-configuration ;; Prosody
241:                                (domains '("chat.prolet.dynv6.net"))) 
242:                               (certificate-configuration ;; xmpp upload
243:                                (domains '("upload.chat.prolet.dynv6.net"))) 
244:                               (certificate-configuration ;; xmpp invites
245:                                (domains '("invite.prolet.dynv6.net"))) 
246:                               (certificate-configuration ;; OpenCart
247:                                (domains '("shop.prolet.dynv6.net"))) 
248:                               (certificate-configuration ;; Minetest
249:                                (domains  '("mine.prolet.dynv6.net")))
250:                               (certificate-configuration ;; git                                               
251:                                (domains '("git.prolet.dynv6.net")))
252:                               (certificate-configuration ;; mercurial                                                 
253:                                (domains '("hg.prolet.dynv6.net")))
254:                               (certificate-configuration ;; e-mail                                                    
255:                                (domains '("mail.prolet.dynv6.net")))
256:                               (certificate-configuration ;; cuirass                                                   
257:                                (domains '("ci.prolet.dynv6.net")))
258:                               (certificate-configuration ;; OpenTTD                                                   
259:                                (domains '("ttd.prolet.dynv6.net"))))))))
260: 
261: 
262:   (define autoupdate (service unattended-upgrade-service-type))
263:   (define gpm (service gpm-service-type))
264: 
265:   ;; no need so far but do it anyway
266:   (define zram (service zram-device-service-type
267:                         (zram-device-configuration
268:                          (size (expt 2 38)) ;; 128GB
269:                          (compression-algorithm 'zstd)
270:                          (priority 100))))
271: 
272:   (define monerod (service monerod-service-type))
273:   (define dhcp-client (service dhcp-client-service-type))
274:   (define blockfb (service block-facebook-hosts-service-type))
275:   (define tor (service tor-service-type))
276: 
277:   (define crude-jobs (simple-service 'my-cron-jobs
278:                                      mcron-service-type
279:                                      (list ddns-update-job
280:                                            ;; minetest-respawn-job
281:                                            ;; monerod-respawn-job
282:                                            ;; p2pool-respawn-job
283:                                            ;; xmrig-respawn-job
284:                                            ;; coinheater-respawn-job
285:                                            openttd-respawn-job
286:                                            guix-gc-job
287:                                            )))

Dateisysteme

 1: ;; boot partition
 2: 
 3: (define recovery-boot  (file-system
 4:                         (device (uuid "8A92-1432" 'fat))
 5:                         (mount-point "/boot/efi")
 6:                         ;;(mount-may-fail? #t)
 7:                         (type "vfat")))
 8: 
 9: (define recovery (file-system
10:                   (device (uuid "a3cb1246-d9ae-4013-908d-f6e898d097dd"))
11:                   (mount-point "/")
12:                   (type "ext4")))
13: 
14: (define data (file-system
15:               (device (file-system-label "btrfs_data"))
16:               (mount-point "/")
17:               (type "btrfs")
18:               (check? #f)
19:               (options "compress=zstd,space_cache=v2,subvol=@data")))
20: 
21: (define gnufs (file-system
22:                (mount-point "/gnu")
23:                (device (file-system-label "btrfs_data"))
24:                (type "btrfs")
25:                (check? #f)
26:                (needed-for-boot? #t)
27:                (options "compress=zstd,space_cache=v2,autodefrag,subvol=@gnu")))
28: 
29: (define home (file-system
30:               (mount-point "/home")
31:               (device (file-system-label "btrfs_data"))
32:               (type "btrfs")
33:               (check? #f)
34:               (options "compress=zstd,space_cache=v2,autodefrag,subvol=@home")))
35: 
36: (define git (file-system
37:              (mount-point "/git")
38:              (device (file-system-label "btrfs_data"))
39:              (type "btrfs")
40:              (check? #f)
41:              (options "compress=zstd,space_cache=v2,autodefrag,subvol=@git")))
42: 
43: (define srv (file-system
44:              (mount-point "/srv")
45:              (device (file-system-label "btrfs_data"))
46:              (type "btrfs")
47:              (check? #f)
48:              (options "compress=zstd,space_cache=v2,autodefrag,subvol=@srv")))

Pakete

 1: (define core-packages (list apertium aspell aspell-dict-de aspell-dict-en btrfs-progs coreutils coturn cpupower
 2:                              dvd+rw-tools xorriso ethtool fail2ban findutils gawk git glibc-locales gnunet gpm grep
 3:                              prosody sed usbutils wakelan xinput xxhash nftables nginx openbabel))
 4: (define monero-packages (list monero xxhash xmrig p2pool))
 5: (define util-packages (list whois yt-dlp qrencode nmap netcat-openbsd mercurial mpv imagemagick graphviz gnuplot ffmpeg))
 6: (define games-packages (list wesnoth-server openttd minetest-server))
 7: (define font-packages (list texlive texlive-beamer texlive-scheme-basic font-awesome font-comic-neue
 8:                              font-opendyslexic font-openmoji font-sarasa-gothic))
 9: (define emacs-packages (list emacs-async emacs-devicetree-ts-mode emacs-dired-du emacs-dired-hacks emacs-eat emacs-ednc
10:                               emacs-geiser emacs-geiser-guile emacs-gptel emacs-marginalia emacs-no-x emacs-org-contrib
11:                               emacs-ox-pandoc emacs-pdf-tools emacs-spray emacs-with-editor tree-sitter-bash
12:                               tree-sitter-bibtex tree-sitter-c tree-sitter-cmake tree-sitter-css tree-sitter-devicetree
13:                               tree-sitter-dockerfile tree-sitter-html tree-sitter-latex tree-sitter-matlab tree-sitter-org
14:                               tree-sitter-python tree-sitter-r tree-sitter-scheme))

Nutzer

 1: (define prolet (user-account (name "prolet") 
 2:                              (comment "prolet")
 3:                              (group "users") 
 4:                              (supplementary-groups '("wheel" "netdev" "audio" "video" "lp" "kvm"
 5:                                                      ;;"lpadmin" "fuse" "scanner" "plugdev" "adb"
 6:                                                      "cdrom" "disk"))
 7:                              (home-directory "/home/prolet")
 8:                              (password (crypt "prolet" "3d8n7"))))
 9: 
10: (define tantalus (user-account (name "tantalus")
11:                                (comment "There is no place like 127.0.0.1")
12:                                (group "users")
13:                                (supplementary-groups '("netdev" "audio" "video" "lp" "kvm"))
14:                                (home-directory "/home/tantalus")
15:                                (password (crypt "tantalus" "f5s9k"))))
16: 
17: (define minetest (user-account (name "minetest")
18:                                (comment "minetest user")
19:                                (group "users")
20:                                (home-directory "/var/empty")
21:                                (shell (file-append shadow "/sbin/nologin"))
22:                                (system? #t)))
23: 
24: (define steve (user-account (name "steve")
25:                             (comment "XMR-mining user")
26:                             (group "users")
27:                             (home-directory "/var/empty")
28:                             (shell (file-append shadow "/sbin/nologin"))
29:                             (system? #t)))
30: 
31: (define openttd (user-account (name "openttd")
32:                               (comment "openttd user")
33:                               (group "users")
34:                               (home-directory "/var/empty")
35:                               (shell (file-append shadow "/sbin/nologin"))
36:                               (system? #t)))
37: 
38: (define root (user-account (name "root")
39:                            (uid 0)
40:                            (comment "")
41:                            (group "root")
42:                            (password (crypt "root" "6h91l"))))

Operating-system

 1: (operating-system (kernel linux)
 2:                   (kernel-arguments '("consoleblank=0"
 3:                                       "quiet"
 4:                                       "loglevel=3"
 5:                                       "modprobe.blacklist=pcspkr,snd_pcsp"
 6:                                       "hpsa.hpsa_allow_any=1"
 7:                                       "default_hugepagevsz=1G"
 8:                                       "msr.allow_writes=on"))
 9:                   (initrd-modules (append (list "hpsa") %base-initrd-modules))
10:                   (firmware (list linux-firmware))
11:                   (host-name "guix-proles-350mlg9") 
12:                   (timezone "Europe/Berlin")
13:                   (locale "en_US.utf8")
14:                   (locale-definitions 
15:                    (list 
16:                     (locale-definition (name "en_US.utf8") (source "en_US") (charset "UTF-8"))
17:                     (locale-definition (name "de_DE.utf8") (source "de_DE") (charset "UTF-8"))))
18:                   (keyboard-layout (keyboard-layout "us,de" #:options '("grp:alt_shift_toggle")))
19:                   (issue "error in finalization thread: Success ")
20:                   (bootloader (bootloader-configuration 
21:                                (bootloader grub-efi-bootloader) 
22:                                (targets '("/boot/efi"))
23:                                (keyboard-layout keyboard-layout)
24:                                (timeout 1)))
25:                   (name-service-switch %mdns-host-lookup-nss)
26:                   (users (cons* prolet tantalus minetest steve openttd root %base-user-accounts))
27:                   (file-systems (cons* home srv git gnufs rootfs %base-file-systems))
28:                   (packages (append core-packages monero-packages util-packages games-packages font-packages emacs-packages %base-packages))
29:                   (services (cons* monerod dhcp-client blockfb tor udev-rules fail2ban openssh avahi postgresql postgresql-role cuirass guix-publish
30:                                    crude-jobs zram gpm autoupdate nginx1 wesnothd radicale rspamd dovecot prosody certbot opensmtpd
31:                                    (modify-services %base-services (guix-service-type config => (guix-configuration
32:                                                                                                  (inherit config)
33:                                                                                                  (substitute-urls (append (list "https://substitutes.nonguix.org") %default-substitute-urls))
34:                                                                                                  (authorized-keys (append (list (local-file "./ssh/nonguix-signing-key.pub")) %default-authorized-guix-keys))
35:                                                                                                  (channels (append (list (channel (name 'nonguix)
36:                                                                                                                                   (url "https://gitlab.com/nonguix/nonguix")
37:                                                                                                                                   (introduction
38:                                                                                                                                    (make-channel-introduction
39:                                                                                                                                                  "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
40:                                                                                                                                                  (openpgp-fingerprint
41:                                                                                                                                                   "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5")))))
42:                                                                                                                    %default-channels))))
43:                                                     (login-service-type config => (login-configuration (inherit config) (motd %motd)))))))                          

Skripte

btrfs setup

 1: mkfs.btrfs -L btrfs_data -d single -m raid10 /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
 2: btrfs device scan
 3: mount -t btrfs -o compress=lzo LABEL=btrfs_data /mnt
 4: btrfs subvolume create /mnt/@gnu
 5: btrfs subvolume create /mnt/@srv
 6: btrfs subvolume create /mnt/@git
 7: btrfs subvolume create /mnt/@home
 8: umount /mnt
 9: o_btrfs=defaults,X-mount.mkdir,compress=lzo,ssd,noatime
10: mount -o subvol=@guixsd,$o_btrfs LABEL=btrfs /mnt
11: mount -o subvol=@home,$o_btrfs LABEL=btrfs /mnt/home
12: mount -o subvol=@snapshots,$o_btrfs LABEL=btrfs /mnt/.snapshots
13: mount -o subvol=@grub,$o_btrfs LABEL=btrfs /mnt/boot/grub
14: mount -o subvol=@guix,$o_btrfs LABEL=btrfs /mnt/var/guix
15: mount -o subvol=@gnu,$o_btrfs LABEL=btrfs /mnt/gnu
16: mount -o X-mount.mkdir /dev/nvme0n1p1 /mnt/boot/efi

wesnothd config

1: modt = "testing modt"
2: versions_accepted = "*"
3: #tls_enabled
4: #tls_fullchain
5: #tls_private_key
6: #tls_dh
7: #postgresql db backend?

Lighttpd.conf

 1: # SPDX-License-Identifier: GPL-3.0-or-later
 2: 
 3: server.document-root = "/home/www/pfadiwebsite/public/" 
 4: 
 5: server.port = 80
 6: 
 7: server.username = "www" 
 8: server.groupname = "www" 
 9: 
10: mimetype.assign = (
11:   ".html" => "text/html", 
12:   ".jpg" => "image/jpeg",
13:   ".png" => "image/png" 
14: )
15: 
16: static-file.exclude-extensions = ( ".fcgi", ".php", ".rb", "~", ".inc", ".org", ".txt" )
17: index-file.names = ( "home.html" )

Coinheater

1: #!/bin/bash
2: # modprobe msr allow_writes=on
3: monerod --rpc-use-ipv6 --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-ipv6-address=::1 --rpc-restricted-bind-port=18089 --rpc-ignore-ipv4 --no-igd --zmq-pub tcp://127.0.0.1:18084 --out-peers 64 --in-peers 64 --disable-dns-checkpoints --enable-dns-blocklist  --data-dir /data/monero/.bitmonero --detach
4: (p2pool  --stratum "0.0.0.0:3333" --p2p "0.0.0.0:37889" --zmq-port "18084" --out-peers 64 --in-peers 64 --rpc-port "18089" --host 127.0.0.1 --wallet 426prP4YrwdUjRnLo4YfW25Lk5L8d7RQpiKVZaNh4FwsAkQSFxhRfgcU2Zj1zS6kgoNcNYB5z8YiEijuPEjdtg83BsUC4UL > /dev/null 2>&1 &)
5: # xmrig -o 127.0.0.1:3333 -B -S --cpu-priority=3 --randomx-1gb-pages
6: 

Minetest

1: #!/bin/bash
2: # SPDX-License-Identifier: GPL-3.0-or-later
3: # Chainload these statements with "&&".
4: minetestserver --world "/data/minetest/world0" --config "./minetest.conf" --terminal

GnuNet Konfiguration

 1: [vpn]
 2: FORCESTART = YES
 3: 
 4: [pt]
 5: FORCESTART = YES
 6: TUNNEL_IPV4 = YES
 7: TUNNEL_IPV6 = YES
 8: TUNNEL_DNS = YES
 9: 
10: [gns]
11: FORCESTART = NO
12: 
13: [hostlist]
14: OPTIONS = -e -b
15: PROXY_TYPE = NONE
16: 
17: [fs]
18: CONTENT_CACHING = YES
19: 
20: [PATHS]

ddns

 1:   #!/usr/bin/env -S guix shell bash iproute2 curl -- bash
 2: if [ -z "$netmask" ]; then
 3:     netmask=64
 4: fi
 5: 
 6: if [ -n "$device" ]; then
 7:     device="dev $device"
 8: fi
 9: address=$(/run/current-system/profile/sbin/ip -6 addr list scope global $device | grep -v " fd" | sed -n 's/.*inet6 \([0-9a-f:]\+\).*/\1/p' | head -n 1)
10: 
11: echo "$address" # for testing: report the address that is being send.
12: 
13: if [ -z "$address" ]; then
14:     echo "empty address"
15:     exit 1
16: fi
17: 
18: if [ "$old" != "$address" ]; then
19:     # send ip to dynv6
20:     /run/current-system/profile/bin/curl -6 -fsSk "http://dynv6.com/api/update?hostname=$hostname&ipv6=$address/$netmask&token=$token" &> /dev/null
21:     # send ip to dnshome 
22:     # curl -fsS -6 --data-urlencode "u=$USER" --data-urlencode "p=$PASSWORD" --data-urlencode "ip6=$address" https://dnshome.de/dyndns.php 2>&1
23:     /run/current-system/profile/bin/curl -fsSk -6 "http://www.dnshome.de/dyndns.php?u=$username&p=$password&ip6=$address"
24:     if [[ $? -ge 0 ]]; then
25:         old=$address
26:     fi
27: else
28:     echo "address ist still $address, exiting"
29: fi

Nutzerkonfiguration

Ein sehr Emacs lastiges setup mit EXWM als teilende Fensterverwaltung. Zudem wird auch eine vereinfachte Emacs Konfiguration für den Android Emacs Port in verbindung mit Termux erzeugt.

Guix Home

Module

This "home-environment" file can be passed to 'guix home reconfigure'to reproduce the content of your profile. This is "symbolic": it only specifies package names. To reproduce the exact same profile, you also need to capture the channels being used, as returned by "guix describe". See the "Replicating Guix" section in the manual.

 1: (use-modules
 2:  (gnu home)
 3:  (gnu home services)
 4:  (gnu home services guix)
 5:  (gnu home services desktop)
 6:  (gnu home services shepherd)
 7:  (gnu home services sound)
 8:  (gnu home services dict)
 9:  (gnu home services gnupg)
10:  (gnu home services shells)       
11:  (gnu packages)
12:  (gnu packages shells)
13:  (gnu packages gnupg)
14:  (gnu services)
15:  (gnu services xorg)
16:  (guix gexp)
17:  (guix channels))

Pakete

 1: (define office-pkgs (list "gimp" "avogadro2" "flatpak" "gnunet-gtk" "inkscape" "libreoffice" "obs" "solvespace")) ;; "apertium" "kicad"
 2: (define x11-pkgs (list "adwaita-icon-theme" "arandr" "autorandr" "pamixer" "gnome-themes-extra" "xf86-input-libinput" "xf86-input-mouse" "xf86-input-synaptics" "xf86-video-amdgpu" "xf86-video-fbdev" "xinit" "xinput" "xmodmap" "xorg-server" "xrdb" "xschem" "xscreensaver" "xset" "xsetroot")) ;; "xdg-desktop-portal" "xdg-desktop-portal-gtk"
 3: (define game-pkgs (list "retux" "gnugo" "luanti" "supertux" "supertuxkart" "tuxemon" "wesnoth")) ;;"openttd"
 4: (define emacs-pkgs (list "emacs-async" "emacs-auth-source-pass" "emacs-bbdb" "emacs-debbugs" "emacs-devicetree-ts-mode" "emacs-dired-du" "emacs-dired-hacks" "emacs-eat" "emacs-ednc" "emacs-ement" "emacs-empv" "emacs-exwm" "emacs-geiser" "emacs-geiser-guile" "emacs-pass" "emacs-gptel" "emacs-htmlize" "emacs-marginalia" "emacs-ob-async" "emacs-org-caldav" "emacs-org-contrib" "emacs-org-node" "emacs-org-rainbow-tags" "emacs-org-web-tools" "emacs-ox-pandoc" "emacs-password-store" "emacs-password-store-otp" "emacs-pdf-tools" "emacs-pinentry" "emacs-rainbow-delimiters" "emacs-rainbow-mode" "emacs-request" "emacs-spray" "emacs-tramp-auto-auth" "emacs-with-editor" "pinentry-emacs"))
 5: (define libs-pkgs (list "blender" "graphviz" "gnuplot" "imagemagick" "ollama-linux-amd64" "openbabel" "pandoc" "pantalaimon" 
 6:                         "sqlcipher" "tesseract-ocr" "tesseract-ocr-tessdata-fast" "texlive" "texlive-beamer"
 7:                         "texlive-collection-fontsrecommended" "texlive-collection-latexrecommended"
 8:                         "texlive-scheme-basic" "texlive-scheme-basic" "texlive-xetex" "tree-sitter-bash"
 9:                         "tree-sitter-bibtex" "tree-sitter-c" "tree-sitter-cmake" "tree-sitter-css"
10:                         "tree-sitter-devicetree" "tree-sitter-dockerfile" "tree-sitter-html" "tree-sitter-latex"
11:                         "tree-sitter-matlab" "tree-sitter-org" "tree-sitter-python" "tree-sitter-r" "tree-sitter-scheme"
12:                         "aspell" "aspell-dict-de" "aspell-dict-en" "font-awesome" "font-comic-neue" "font-opendyslexic"
13:                         "font-openmoji" "font-sarasa-gothic" "scrot")) ;; "monero" "wine64" "winetricks"
14: (define web-pkgs (list "ublock-origin-chromium" "ublock-origin-icecat" "librewolf" )) ;;"ungoogled-chromium"
15: (define base-pkgs (list "bash" "binutils" "bluez" "brightnessctl" "browserpass-native" "ccl" "coreutils" "cpupower" "curl" "dconf" "direnv" "dosfstools" "dvd+rw-tools" "ecl" "emacs" "ethtool"
16:                         "fd" "findutils" "gawk" "gcc-toolchain" "git" "git:send-email" "glibc-locales" "gnunet" "gnupg" "gpm" "grep" "gtk+" "gvfs" "john-the-ripper-jumbo" "libguestfs" "libvirt" "light"
17:                         "make" "make" "man-db" "man-pages" "mercurial" "mesa" "mesa-utils" "mono" "mpg123" "mpv"
18:                         "nbd" "netcat-openbsd" "nftables" "ngspice" "nmap" "nss-certs" "ntfs-3g-static" "openssh" "p7zip"
19:                         "pass-coffin" "passff-host" "passff-icecat" "password-store" "pavucontrol"
20:                         "qemu" "qrencode" "sed" "shepherd" "unzip" "usbutils" "wget" "whois"
21:                         "wireplumber" "xxhash" "yt-dlp" "zip")) ;;  "wakelan" 

Home Environment

Below is the list of packages that will show up in your Home profile, under ~/.guix-home/profile.

1: (home-environment (packages (specifications->packages (append base-pkgs x11-pkgs emacs-pkgs libs-pkgs web-pkgs office-pkgs)))

Dienste

Below is the list of Home services. To search for available services, run 'guix home search KEYWORD' in a terminal.

  1: (services
  2:  (append (list (service home-bash-service-type
  3:                         (home-bash-configuration
  4:                          (aliases '(("dd" . "dd bs=4M status=progress")
  5:                                     ("iKMcli" . "LD_LIBRARY_PATH=/home/macfag/blobs/iKMcli /home/macfag/blobs/iKMcli/iKMcli")
  6:                                     ("osss" . "/usr/bin/wine 'c:/Program Files/OutSystems/Service Studio 11/Service Studio/ServiceStudio.exe'")
  7:                                     ("issussy" . "~/dots/export/issussy.bash")
  8:                                     ("ip" . "ip -color=auto")
  9:                                     ("ll" . "ls -l")
 10:                                     ("ls" . "ls -p --color=auto")
 11:                                     ))
 12: 
 13:                          (bashrc (list (local-file "bashrc" "bashrc")))
 14:                          (bash-profile (list (local-file "bash_profile" "bash_profile")))
 15:                          (bash-logout (list (local-file "bash_logout" "bash_logout")))))
 16: 
 17:                (simple-service 'extra-packages-service
 18:                                home-channels-service-type
 19:                                (list
 20:                                 (channel
 21:                                  (name 'ollama-guix)
 22:                                  (url "https://codeberg.org/tusharhero/ollama-guix"))
 23:                                 (channel
 24:                                  (name 'guix-gaming-games)
 25:                                  (url "https://gitlab.com/guix-gaming-channels/games.git")
 26:                                  (introduction
 27:                                   (make-channel-introduction
 28:                                    "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
 29:                                    (openpgp-fingerprint
 30:                                     "50F3 3E2E 5B0C 3D90 0424  ABE8 9BDC F497 A4BB CC7F"))))       
 31:                                 (channel
 32:                                  (name 'nonguix)
 33:                                  (url "https://gitlab.com/nonguix/nonguix")
 34:                                  (introduction
 35:                                   (make-channel-introduction
 36:                                    "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
 37:                                    (openpgp-fingerprint
 38:                                     "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))))
 39: 
 40:                (simple-service 'env-vars-service
 41:                                home-environment-variables-service-type
 42:                                `(("_JAVA_AWT_WM_NONREPARENTING" . #t)
 43:                                  ("GDK_CORE_DEVICE_EVENTS" . #t)
 44:                                  ("PATH" . "${HOME}/.config/guix/current/bin:${HOME}/.guix-profile/bin:${PATH}:${HOME}/.guix-home/profile/bin:${HOME}/.guix-home/profile/sbin:${HOME}/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")
 45:                                  ("GUIX_PROFILE" . "$HOME/.guix-profile")
 46:                                  ("CDPATH" . ".:/")
 47:                                  ("PROMPT_COMMAND" . "history -a")
 48:                                  ("HISTCONTROL" . "erasedups:ignoreboth")
 49:                                  ("HISTSIZE" . "500000")
 50:                                  ("HISTFILESIZE" . "100000")
 51:                                  ("HISTTIMEFORMAT" . "%F %T ")
 52:                                  ("ALTERNATE_EDITOR" . "")
 53:                                  ("EDITOR" . "emacsclient -c -a emacs") 
 54:                                  ("VISUAL" . "${EDITOR}")
 55:                                  ("PAGER" .  "") ;;no pager, just dump the contents and let emacs deal with it
 56:                                  ("GUIX_LOCPATH" . "${HOME}/.guix-home/profile/lib/locale")
 57:                                  ("INFOPATH" . "${HOME}/guix-home/share/info:${INFOPATH}")
 58:                                  ("MANPATH" . "${HOME}/.guix-home/profile/share/man:/usr/share/man${MANPATH}")
 59:                                  ("GTK_THEME" . "advendi")
 60:                                  ("QT_STYLE_OVERRIDE" . "advendi")
 61:                                  ;; ("QT_AUTO_SCREEN_SET_FACTOR" . "0")
 62:                                  ;; ("QT_SCALE_FACTOR" . "2")
 63:                                  ;; ("QT_FONT_DPI" . "96")
 64:                                  ;; ("GDK_SCALE" . "2")
 65:                                  ;; ("GDK_DPI_SCALE" . "0.5")
 66:                                  ("XCURSOR_THEME" . "Adwaita")
 67:                                  ("XCURSOR_SIZE" . "24")
 68:                                  ("XDG_DISPLAY_VAR" . "tty1")
 69:                                  ("XDG_MUSIC_DIR" . "${HOME}/music")
 70:                                  ("XDG_VIDEOS_DIR" . "${HOME}/videos")
 71:                                  ("XDG_CONFIG_DIRS" . "${HOME}/.guix-home/profile/etc/xdg:${HOME}/.guix-profile/etc/xdg")
 72:                                  ("PASSWORD_STORE_DIR" . "${HOME}/.pass")
 73:                                  ("PASSWORD_STORE_ENABLE_EXTENSIONS" . #t )
 74:                                  ;; ("XMODIFIERS" . "@im=exwm-x")
 75:                                  ;; ("GTK_IM_MODULE" . "xim")
 76:                                  ;; ("QT_IM_MODULE" . "xim")
 77:                                  ;; ("CLUTTER_IM_MODULE" . "xim") 
 78:                                  ("XDG_DATA_DIRS" . "${HOME}/.guix-home/profile/share:${HOME}/.guix-profile/share:/home/macfag/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share")
 79:                                  ("SSL_CERT_DIR" . "$HOME/.guix-home/profile/etc/ssl/certs")
 80:                                  ("SSL_CERT_FILE" . "$HOME/.guix-home/profile/etc/ssl/certs/ca-certificates.crt")
 81:                                  ("GIT_SSL_CAINFO" . "$SSL_CERT_FILE")
 82:                                  ("HISTIGNORE" . "&:[ ]*:exit:ls:bg:fg:history:clear:pass")
 83:                                  ("dots" . "$HOME/dots")
 84:                                  ("blog" . "$HOME/blog")
 85:                                  ("pages" . "$HOME/pages")
 86:                                  ("agenda" . "$HOME/agenda")
 87:                                  ))
 88:                (simple-service 'custom-config
 89:                                home-files-service-type
 90:                                `((".xinitrc" ,(local-file "xinitrc"))
 91:                                  ("bash_functions" ,(local-file "bash_functions"))))    
 92: 
 93:                (service home-xdg-configuration-files-service-type `(("emacs/init.el" ,(local-file "init.el"))
 94:                                                                     ("emacs/early-init.el" ,(local-file "early-init.el"))                                                                   
 95:                                                                     ("pantalaimon/pantalaimon.conf" ,(local-file "pantalaimon.conf"))
 96:                                                                     ))
 97:                (service home-gpg-agent-service-type
 98:                         (home-gpg-agent-configuration
 99:                          (pinentry-program
100:                           (file-append pinentry-emacs "/bin/pinentry-emacs"))
101:                          (ssh-support? #t)
102:                          (extra-content "allow-loopback-pinentry")))
103:                ;; this appears broken
104:                ;; (service home-dicod-service-type)
105:                (service home-pipewire-service-type)
106:                (service home-dbus-service-type)
107:                (service home-x11-service-type)
108:                (service home-startx-command-service-type
109:                         (for-home (xorg-configuration)))
110: 
111:                )
112:          %base-home-services)))

Failed Builds

1: (specifications->manifest '("apertium" "openbabel" "wakelan" "kicad" "chromium"))

Emacs

Emacs is the extensible, customizable, self-documenting real-time display editor.

Early Init

 1: 
 2: (setq gc-cons-threshold (* 50 1000 1000))
 3: (push '(fullscreen . maximized) initial-frame-alist)
 4: (push '(fullscreen . maximized) default-frame-alist)
 5: (push '(tool-bar-lines . 0) default-frame-alist)
 6: (push '(menu-bar-lines . 0) default-frame-alist)
 7: (push '(vertical-scroll-bars) default-frame-alist)
 8: 
 9: ;; Transparency, use with picom line in xinitrc (ref:early-init.el)
10: ;; (push '(alpha . (75 . 75)) default-frame-alist)
11: ;; (set-frame-parameter (selected-frame) 'alpha '(75 . 75))
12: 
13: 
14: ;; The following line runs emacs in daemon/server mode
15: (server-start)
16: 
17: (setq inhibit-startup-screen t
18:       read-process-output-max (* 1024 1024)
19:       initial-scratch-message nil
20:       inhibit-compacting-font-caches t
21:       max-lisp-eval-depth 6400
22:       ;; debug-on-error t ; sometimes usefull but annoying most of the time
23:       )
24: (add-hook 'after-init-hook (lambda () (load-theme 'modus-vivendi)))
25: (customize-set-variable 'initial-major-mode 'fundamental-mode)

package archives

 1: ;; -*- lexical-binding: t -*-
 2: ;; make guix packages aviable
 3: (add-to-list 'load-path "~/.guix-home/profile/share/emacs/site-lisp")
 4: (add-to-list 'load-path "~/scripts/emacs") 
 5: (guix-emacs-autoload-packages)
 6: 
 7: ;; make termux packages aviable
 8: ;; (setenv "PATH" (format "%s:%s" "/data/data/com.termux/files/usr/bin"
 9: ;;                     (getenv "PATH")))
10: ;; (push "/data/data/com.termux/files/usr/bin" exec-path)
11: 
12: ;; make (m)elpa packages aviable
13: ;; (require 'package)
14: ;; (setq package-user-dir (expand-file-name "./.packages"))
15: ;; (setq package-archives '(("melpa" . "https://melpa.org/packages/")
16: ;;                          ("elpa" . "https://elpa.gnu.org/packages/")))
17: 
18: ;; (package-initialize)
19: ;; (unless package-archive-contents
20: ;;   (package-refresh-contents))

require Mobile

 1: (require 'battery nil 1)
 2: (require 'icomplete)
 3: (require 'ido)
 4: (require 'ob-emacs-lisp)
 5: (require 'org)
 6: (require 'org-contrib nil 1)
 7: (require 'org-tempo nil 1)
 8: (require 'spray nil 1)
 9: (require 'shell nil 1)
10: (require 'uniquify nil 1)
11: (require 'webjump nil 1)
12: (require 'package nil 1)
13: (require 'shr)

require Desktop

Sonderwünsche. Werden geladen…

 1: (require 'marginalia nil 1)
 2: (require 'eat nil 1)
 3: (require 'ednc nil 1)
 4: (require 'notifications nil 1)
 5: (require 'exwm nil 1)
 6: (require 'exwm-config nil 1)
 7: (require 'exwm-edit nil 1)
 8: (require 'exwm-randr nil 1)
 9: (require 'exwm-xim nil 1)
10: (require 'empv nil 1)
11: (require 'sqlcipher nil 1) ;; https://github.com/vapniks/sqlcipher
12: (require 'org-caldav nil 1)
13: (load-file "~/pages/publish.el")

font

Sarasa Gothic (Tut den Augen, der Seele und dem Kharma gut.)

1: (set-face-attribute 'default nil
2:                     :family "Sarasa Term SC"
3:                     :foundry "outline"
4:                     :slant 'normal
5:                     :weight 'normal
6:                     :height 300
7:                     :weight 'normal
8:                     :width 'normal)
9: 

ligatures -> –> |=> <-

Essentiell weil es attraktiv und Seggsy macht.

 1: (let ((ligatures `((?-  . ,(regexp-opt '("-|" "-~" "---" "-<<" "-<" "--" "->" "->>" "-->")))
 2:                    (?/  . ,(regexp-opt '("/**" "/*" "///" "/=" "/==" "/>" "//")))
 3:                    (?*  . ,(regexp-opt '("*>" "***" "*/")))
 4:                    (?<  . ,(regexp-opt '("<-" "<<-" "<=>" "<=" "<|" "<||" "<|||::=" "<|>" "<:" "<>" "<-<" "<<<" "<==" "<<=" "<=<" "<==>" "<-|" "<<" "<~>" "<=|" "<~~" "<~" "<$>" "<$" "<+>" "<+" "</>" "</" "<*" "<*>" "<->" "<!--")))
 5:                    (?:  . ,(regexp-opt '(":>" ":<" ":::" "::" ":?" ":?>" ":=")))
 6:                    (?=  . ,(regexp-opt '("=>>" "==>" "=/=" "=!=" "=>" "===" "=:=" "==")))
 7:                    (?!  . ,(regexp-opt '("!==" "!!" "!=")))
 8:                    (?>  . ,(regexp-opt '(">]" ">:" ">>-" ">>=" ">=>" ">>>" ">-" ">=")))
 9:                    (?&  . ,(regexp-opt '("&&&" "&&")))
10:                    (?|  . ,(regexp-opt '("|||>" "||>" "|>" "|]" "|}" "|=>" "|->" "|=" "||-" "|-" "||=" "||")))
11:                    (?.  . ,(regexp-opt '(".." ".?" ".=" ".-" "..<" "...")))
12:                    (?+  . ,(regexp-opt '("+++" "+>" "++")))
13:                    (?\[ . ,(regexp-opt '("[||]" "[<" "[|")))
14:                    (?\{ . ,(regexp-opt '("{|")))
15:                    (?\? . ,(regexp-opt '("??" "?." "?=" "?:")))
16:                    (?#  . ,(regexp-opt '("####" "###" "#[" "#{" "#=" "#!" "#:" "#_(" "#_" "#?" "#(" "##")))
17:                    (?\; . ,(regexp-opt '(";;")))
18:                    (?_  . ,(regexp-opt '("_|_" "__")))
19:                    (?\\ . ,(regexp-opt '("\\" "\\/")))
20:                    (?~  . ,(regexp-opt '("~~" "~~>" "~>" "~=" "~-" "~@")))
21:                    (?$  . ,(regexp-opt '("$>")))
22:                    (?^  . ,(regexp-opt '("^=")))
23:                    (?\] . ,(regexp-opt '("]#")))
24:                    )
25:                  ))
26:   (dolist (char-regexp ligatures)
27:     (set-char-table-range composition-function-table (car char-regexp)
28:                           `([,(cdr char-regexp) 0 font-shape-gstring]))))

UX

  • General
     1: 
     2: 
     3: (setq-default message-log-max nil
     4:               cursor-type 'hbar
     5:               mode-line-format nil
     6:               line-spacing nil)
     7: 
     8: (kill-buffer "*Messages*")
     9: 
    10: (auto-save-mode -1)
    11: (scroll-bar-mode -1)
    12: (fringe-mode '(0 . 0))
    13: (global-prettify-symbols-mode 1)
    14: (global-auto-revert-mode 1)
    15: ;; (global-display-line-numbers-mode 1)
    16: 
    17: ;; display prerendered html
    18: ;; (add-hook 'html-mode-hook '(lambda () (shr-render-buffer (current-buffer)))) 
    19: 
    20: (setq icomplete-separator "\n"
    21:       icomplete-hide-common-prefix nil
    22:       icomplete-in-buffer 1
    23:       icomplete-matches-format nil
    24:       max-mini-window-height 0.5)
    25: 
    26: (set-face-attribute 'mode-line-inactive nil :inherit 'default)
    27: 
    28: (global-prettify-symbols-mode 1)
    29: (delete-selection-mode 1)
    30: (electric-pair-mode 1)
    31: (repeat-mode 1)
    32: 
    33: 
    34: ;;(icomplete-mode 1)
    35: ;;(icomplete-vertical-mode 1)
    36: ;; (fido-mode 1)
    37: (fido-vertical-mode 1)
    38: 
    39: (marginalia-mode 1)
    40: 
    41: ;; (customize-set-variable
    42: ;;  'display-buffer-base-action
    43: ;;  '((display-buffer-reuse-window display-buffer-same-window
    44: ;;                                 display-buffer-in-previous-window
    45: ;;                                 display-buffer-use-some-window)))
    46: 
    47: (add-hook 'minibuffer-exit-hook '(lambda ()
    48:                                    (let ((buffer "*Completions*"))
    49:                                      (and (get-buffer buffer)
    50:                                           (kill-buffer buffer)))))
    51: 
    
  • User
     1: ;; Personal Information
     2: (setq user-full-name "Jakob Maximilian Honal"
     3:       user-mail-address "jakob.honal@gmx.de"
     4:       )
     5: 
     6: ;; Send email through SMTP
     7: (setq message-send-mail-function 'smtpmail-send-it
     8:       smtpmail-default-smtp-server "mail.gmx.net"
     9:       smtpmail-stream-type 'ssl
    10:       smtpmail-smtp-service 465)
    11: 
    12: (setq my-email-addresses '("jakob.honal@gmx.de"
    13:                            "b0ttymacb0tfacelol@gmail.com"                         
    14:                            "geraetnull@web.de"))
    15: 
    16: (setq message-alternative-emails
    17:       (regexp-opt my-email-addresses))
    18: 
    19: (defun loop-from ()
    20:   (interactive)
    21:   (save-excursion
    22:     (goto-char (point-min))
    23:     (when (re-search-forward
    24:            "^From: *\\([^<\n]*?\\) *\\(<\\([^>\n]*\\)>\\)?$" nil t)
    25:       (let* ((no-name (null (match-string 2)))
    26:              (name (if no-name user-full-name (match-string 1)))
    27:              (address (match-string (if no-name 1 3))))
    28:         (replace-match (concat "From: " name
    29:                                " <" (next-address address) ">"))))))
    30: 
    31: (defun next-address (address)
    32:   (let ((found (member address my-email-addresses)))
    33:     (if found
    34:         (if (cdr found)
    35:             (cadr found)
    36:           (car my-email-addresses))
    37:       (if (eq last-command this-command)
    38:           (setq from-selected-index
    39:                 (mod (+ from-selected-index 1) (length my-email-addresses)))
    40:         (setq from-selected-index 0))
    41:       (nth from-selected-index my-email-addresses))))
    42: 
    43: 
    44: 
    45: 
    46: ;; auto-complete emacs address using bbdb ;; maybe later
    47: ;; (add-hook 'message-mode-hook
    48: ;;           '(lambda ()
    49: ;;              (flyspell-mode t)
    50: ;;              (local-set-key (kbd "TAB") 'bbdb-complete-name)))
    
  • encoding
    1: (set-language-environment "UTF-8")
    2: (prefer-coding-system       'utf-8)
    3: (set-default-coding-systems 'utf-8)
    4: (set-terminal-coding-system 'utf-8)
    5: (set-keyboard-coding-system 'utf-8)
    6: (setq default-buffer-file-coding-system 'utf-8)
    
  • endless setq
     1: (set-variable (quote scheme-program-name) "guile")
     2: (setq inhibit-startup-screen t
     3:       initial-scratch-message ""
     4:       mouse-wheel-progressive-speed nil
     5:       scroll-conservatively 1000
     6:       scroll-margin 1
     7:       visible-bell t
     8:       backup-inhibited t
     9:       prettify-symbols-unprettify-at-point 'right-edge
    10:       use-short-answers t
    11:       use-dialog-box nil
    12:       auto-save-no-message t
    13:       auto-revert-verbose nil
    14:       global-auto-revert-non-file-buffers t
    15:       large-file-warning-threshold nil
    16:       tooltip-mode nil
    17:       confirm-kill-processes nil
    18:       prefer-coding-system 'utf-8
    19:       set-keyboard-coding-system 'utf-8
    20:       backup-inhibited t
    21:       make-backup-files nil
    22:       default-directory "~/"
    23:       warning-minimum-level :emergency
    24:       dired-listing-switches "--group-directories-first --dereference -al"
    25:       ring-bell-function 'ignore
    26:       sentence-end-double-space nil
    27:       tooltip-mode nil
    28:       display-time-format "%H:%M:%S %b %d %a"
    29:       display-time-interval 1
    30:       async-shell-command-buffer 'new-buffer
    31:       eshell-history-size nil
    32:       uniquify-buffer-name-style 'forward
    33:       font-lock-maximum-decoration t
    34:       blink-cursor-mode t
    35:       calendar-week-start-day 1
    36:       overflow-newline-into-fringe t
    37:       doc-view-resolution 400
    38:       ispell-program-name "aspell"
    39:       flyspell-issue-message-flag nil
    40:       dired-confirm-shell-command nil
    41:       doc-view-resolution 240
    42:       flyspell-issue-message-flag nil
    43:       browse-url-firefox-arguments '("-new-tab")       ;;-new-window
    44:       shr-use-fonts nil
    45:       ;; shr-use-xwidgets-for-media t
    46:       eww-auto-rename-buffer nil
    47:       image-use-external-converter t
    48:       image-dired-thumbnail-storage 'standard-large)
    
  • Proced
    1: (setq proced-auto-update-interval 0.6
    2:       proced-enable-color-flag t
    3:       proced-tree-flag t
    4:       )
    
  • Easypg
     1: (auth-source-pass-enable)
     2: (setq auth-source-pass-filename "~/.pass"
     3:       auth-source-pass-port-separator ":"
     4:       auth-source-pass-extra-query-keywords t)
     5: 
     6: (setq epg-pinentry-mode 'loopback)
     7: (pinentry-start 1)
     8: ;;(setenv "GPG_AGENT_INFO" nil)
     9: ;; debug gnus
    10: ;; https://www.gnu.org/software/emacs/manual/html_mono/auth.html#The-Unix-password-store
    11: ;; https://www.gnu.org/software/emacs/manual/html_mono/auth.html
    12: ;; https://www.gnu.org/software/emacs/manual/html_mono/smtpmail.html#Authentication
    13: ;; https://www.reddit.com/r/emacs/comments/o4g7dv/can_i_integrate_pass_the_password_manager_into/
    14: ;; https://www.reddit.com/r/emacs/comments/si2fiz/auth_sources_pass_authentication_against_gmail_in/
    15: ;; https://www.reddit.com/r/emacs/comments/7cx0vx/help_with_multiple_gmail_accounts_smtp_and/
    16: ;; https://emacs.stackexchange.com/questions/58185/unable-to-authenticate-sending-mail-using-smtpmail-send-it-to-gmail-username-a
    17: ;; https://github.com/kensanata/ggg
    18: 
    19: ;; (setq auth-sources '(password-store))
    20: ;;   (setq auth-source-debug 'trivia)
    21: 
    22: ;; gnus setup  ---------------------------------------------------------
    23: ;; (setq gnus-message-replyencrypt t
    24: ;;       gnus-message-replysign t
    25: ;;       gnus-message-replysignencrypted t
    26: ;;       gnus-treat-x-pgp-sig t
    27: ;;       gnus-buttonized-mime-types
    28: ;;       '("multipart/alternative"
    29: ;;         "multipart/encrypted"
    30: ;;         "multipart/signed")
    31: 
    32: ;;       epg-debug t ;;  then read the *epg-debug*" buffer
    33: ;;       )
    
  • inhibit read only buffer whining
    1: (setq command-error-function (lambda (data context caller)
    2:                                "Ignore the buffer-read-only signal; emacs.stackexchange.com/questions/19742/is-there-a-way-to-disable-the-buffer-is-read-only-warning"
    3:                                (when (not (eq (car data) 'buffer-read-only))
    4:                                  (command-error-default-function data context caller))))
    5: 
    
  • window divider
    1: (set-face-attribute 'window-divider nil :foreground "#000000" :inherit 'default)
    2: (setq window-divider-default-bottom-width 6
    3:       window-divider-default-right-width 6
    4:       window-divider-default-places t)
    5: (window-divider-mode)
    
  • Echo Area Line
     1: (defun stack-notifications (&optional hide)
     2:   (mapconcat (lambda (notification)
     3:                (let ((app-name (ednc-notification-app-name notification)))
     4:                  (unless (member app-name hide)
     5:                    (push app-name hide)
     6:                    (ednc-format-notification notification))))
     7:              (ednc-notifications) ""))
     8: 
     9: ;; empv-status-information
    10: 
    11: (defun echo-line-update ()
    12:   (with-current-buffer " *Minibuf-0*"
    13:     (erase-buffer)
    14:     (insert (format-mode-line '(""
    15:                                 (:eval (format-time-string "%H:%M:%S %b %d %a"))
    16:                                 " "
    17:                                 (:eval (battery-format "%p%%, %B, %th" (funcall battery-status-function)))
    18:                                 " "
    19:                                 ;; empv-display-current
    20:                                 ;;(:eval (string-trim (empv--create-media-summary-for-notification .title .path .media-title)))
    21:                                 ;; " "
    22:                                 (:eval (stack-notifications)))
    23: 
    24:                               'default))))
    25: 
    26: (defvar echo-line-timer nil)
    27: 
    28: (define-minor-mode display-echo-line
    29:   "Display line in the echo area"
    30:   :global t
    31:   (when echo-line-timer
    32:     (cancel-timer echo-line-timer)
    33:     (setq echo-line-timer nil))
    34:   (setq echo-line-timer
    35:         (run-with-timer t 1
    36:                         #'echo-line-update))
    37:   (echo-line-update))
    38: 
    39: (display-echo-line t)
    
  • Inhibit Quail Completions buffer
    1: (with-eval-after-load 'quail (cons (defun quail-completion ())
    2:                                    (defun quail-setup-completion-buf ())))
    
  • Prerender html buffers
    1: 
    
  • source bashrc
    1: (setenv "BASH_ENV" "~/.bashrc")
    2: (setq shell-file-name "bash")
    
  • ytdlp-bulk-download
     1:               ;;;###autoload
     2: (defun ytdlp-bulk-download ()
     3:   "Bulk download videos to the current directory using yt-dlp."
     4:   (interactive)
     5:   (let ((url nil)
     6:         (name "")
     7:         (format ""))
     8:     (while (not (string= url ""))
     9:       (setf url (read-string "URL (omit to quit): "))
    10:       (unless (string= url "")
    11:         (setf format (read-string "(Format): "))
    12:         (setf name (read-string "(Filename): "))
    13:         ((lambda (url &optional name format)
    14:            (call-process-shell-command
    15:             (concat "yt-dlp " (shell-quote-argument url)
    16:                     (when name
    17:                       " -o "(shell-quote-argument name))
    18:                     (when format
    19:                       " --extract-audio --audio-format " (shell-quote-argument format)))
    20:             nil 0))
    21:          url name format)))))
    
  • Async
    1: (add-hook 'dired-load-hook
    2:           (function (lambda () (load "dired-x"))))
    3: 
    4: (dired-async-mode 1)
    5: (async-bytecomp-package-mode 1)
    
  • PDF-Tools
    1: (pdf-loader-install)
    

General Emacs Keybindings

 1: (put 'downcase-region 'disabled nil)
 2: (put 'upcase-region 'disabled nil)
 3: 
 4: (defun run-external-command (cmd)
 5:   (interactive (list (read-shell-command "run cmd: ")))
 6:   (start-process-shell-command cmd nil cmd))
 7: 
 8: (keymap-global-set "C-c c" 'org-capture)
 9: (keymap-global-set "C-z" 'repeat)
10: (keymap-global-set "C-x z" 'webjump)
11: (keymap-global-set "C-x C-z" 'webjump)
12: (keymap-global-set "C-x C-f" 'find-file)  
13: (keymap-global-set "C-x C-k" 'kill-matching-buffers)
14: (keymap-global-set "C-x m" empv-map) ;; compose-mail
15: (keymap-global-set "M-s" 'copy-to-register)
16: (keymap-global-set "M-i" 'insert-register)
17: (keymap-global-set "C-x C-d" 'dired)
18: (keymap-global-set "C-x d" 'run-external-command) ;; list-directory
19: (keymap-global-set "C-x C-b" 'ibuffer)
20: (keymap-global-set "C-s" 'isearch-forward-regexp)
21: (keymap-global-set "C-r" 'isearch-backward-regexp)
22: (keymap-global-set "C-M-s" 'isearch-forward)
23: (keymap-global-set "C-M-r" 'isearch-backward)
24: (keymap-global-set "C-<wheel-up>" 'text-scale-increase)
25: (keymap-global-set "C-<wheel-down>" 'text-scale-decrease)
26: 
27: (defvar org-link-repeat-map
28:   (let ((map (make-sparse-keymap)))
29:     (define-key map (kbd "n") 'org-next-link)
30:     (define-key map (kbd "p") 'org-previous-link)
31:     map))
32: 
33: (dolist (cmd '(org-next-link org-6previous-link))
34:   (put cmd 'repeat-map 'org-link-repeat-map))
35: 
36: (keymap-set dired-mode-map "e" '(lambda () (interactive) (eww-open-file (dired-get-file-for-visit))))

Ibuffer

 1: (setq ibuffer-saved-filter-groups
 2:       (quote (("default"
 3:                ("org" (or
 4:                        (mode . org-mode)
 5:                        (name . "\\.org")))
 6: 
 7:                ("diff" (or
 8:                         (mode . ediff-mode)
 9:                         (name . "^\\diff\\*$")))
10: 
11:                ("emacs" (or
12:                          (mode . dired-mode)
13:                          (name . "^\\*shell\\*$")
14:                          (name . "^\\*scratch\\*$")
15:                          (name . "^\\*Messages\\*$")))))))
16: 
17: (add-hook 'ibuffer-mode-hook
18:           (lambda ()
19:             (ibuffer-switch-to-saved-filter-groups "default")))

Org-Mode

  • Generell
     1: (setq
     2:  org-id-link-to-org-use-id "create-if-interactive-and-no-custom-id"
     3:  org-log-done "note"
     4:  org-agenda-include-diary t
     5:  org-agenda-skip-scheduled-if-deadline-is-shown "repeated-after-deadline"
     6:  org-insert-mode-line-in-empty-file t
     7:  org-startup-folded t
     8:  org-export-with-broken-links t
     9:  org-pretty-entities t
    10:  org-pretty-entities-include-sub-superscripts t
    11:  org-hide-block-startup t
    12:  org-startup-indented t
    13:  org-display-remote-inline-images "cache"
    14:  org-inline-image-background "white"
    15:  org-export-allow-bind-keywords t
    16:  org-image-actual-width nil
    17:  org-src-tab-acts-natively t
    18:  org-time-stamp-formats '("<%Y-%m-%d %a>" . "<%Y-%m-%d %a %H:%M:%S>")
    19:  org-duration-format 'h:mm:ss
    20:  org-agenda-files '("~/agenda/")
    21:  org-archive-location "~/agenda/archive.org::datetree/"
    22:  org-screenshot-image-directory "~/screenshots"
    23:  org-refile-use-outline-path 'file
    24:  ;; org-directory "~/"
    25:  org-html-validation-link nil
    26:  org-export-with-broken-links t
    27:  org-pretty-entities t
    28:  org-pretty-entities-include-sub-superscripts t
    29:  org-agenda-span 'year
    30:  org-agenda-start-day "-35d"
    31:  org-html-htmlize-output-type 'css
    
  • Org-Latex
     1: org-latex-pdf-process (let
     2:                           ((cmd (concat "latexmk -pdflatex='%latex -shell-escape -interaction nonstopmode' -pdf -output-directory=%o %f"
     3:                                         " --synctex=1"
     4:                                         )))
     5:                         (list cmd
     6:                               "cd %o; if test -r %b.idx; then makeindex %b.idx; fi"
     7:                               "cd %o; bibtex %b"
     8:                               cmd
     9:                               cmd))
    10: 
    11: 
    12: ;; (add-to-list 'org-latex-classes
    13: ;;              '("Form" "\\documentclass[11pt,a4paper]{article}
    14: ;;      \\usepackage[utf8]{inputenc}
    15: ;;      \\usepackage[T1]{fontenc}
    16: ;;      \\usepackage{fixltx2e}
    17: ;;      \\usepackage{graphicx}
    18: ;;      \\usepackage{longtable}
    19: ;;      \\usepackage{float}
    20: ;;      \\usepackage{wrapfig}
    21: ;;      \\usepackage{rotating}
    22: ;;      \\usepackage[normalem]{ulem}
    23: ;;      \\usepackage{amsmath}
    24: ;;      \\usepackage{textcomp}
    25: ;;      \\usepackage{marvosym}
    26: ;;      \\usepackage{wasysym}
    27: ;;      \\usepackage{amssymb}
    28: ;;      \\usepackage{hyperref}
    29: ;;      \\usepackage{mathpazo}
    30: ;;      \\usepackage{color}
    31: ;;      \\usepackage{enumerate}
    32: ;;      \\definecolor{bg}{rgb}{0.95,0.95,0.95}
    33: ;;      \\tolerance=1000
    34: ;;            [NO-DEFAULT-PACKAGES]
    35: ;;            [PACKAGES]
    36: ;;            [EXTRA]
    37: ;;      \\linespread{1.1}
    38: ;;      \\hypersetup{pdfborder=0 0 0}"
    39: ;;                ("\\section{%s}" . "\\section*{%s}")
    40: ;;                ("\\subsection{%s}" . "\\subsection*{%s}")
    41: ;;                ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
    42: ;;                ("\\paragraph{%s}" . "\\paragraph*{%s}")
    43: ;;                     ("\\subparagraph{%s}" . "\\subparagraph*{%s}")))
    44: 
    
  • Org-Roam
     1: org-roam-graph-viewer "librewolf"
     2: org-roam-ui-sync-theme '((bg . "#000000")
     3:                          (bg-alt . "#191a1b")
     4:                          (fg . "#ffffff")
     5:                          (fg-alt . "#a8a8a8")
     6:                          (red . "#ffc0bf")
     7:                          (green . "#88ef88")
     8:                          (yellow . "#d2e580")
     9:                          (orange . "#f5ca80")
    10:                          (blue . "#92d9ff")
    11:                          (cyan . "#60e7e0")
    12:                          (magenta . "#ffb8ff")
    13:                          (violet . "#cfcaff")))
    14: 
    
  • Org-Inline-Image-Background
     1: (defcustom org-inline-image-background nil
     2:   "The color used as the default background for inline images.
     3:                             When nil, use the default face background."
     4:   :group 'org
     5:   :type '(choice color (const nil)))
     6: 
     7: (defun create-image-with-background-color (args)
     8:   "Specify background color of Org-mode inline image through modify `ARGS'."
     9:   (let* ((file (car args))
    10:          (type (cadr args))
    11:          (data-p (caddr args))
    12:          (props (cdddr args)))
    13:     ;; Get this return result style from `create-image'.
    14:     (append (list file type data-p)
    15:             (list :background (or org-inline-image-background (face-background 'default)))
    16:             props)))
    17: 
    18: (advice-add 'create-image :filter-args
    19:             #'create-image-with-background-color)
    
  • Org-Agenda
     1: (setq org-todo-keywords '((sequence  "WAIT(w)" "HELP(h)" "TODO(t)" "|" "DONE(d)" "NOPE(n)" "OVER(o)" ))
     2: 
     3:       org-todo-keyword-faces '(("WAIT" . (:foreground "yellow" :weight bold))
     4:                                ("TODO" . (:foreground "#4fafff" :weight bold))
     5:                                ("NOPE" . (:foreground "#ff4500" :weight bold))
     6:                                ("OVER" . (:foreground "#696969" :weight bold))
     7:                                ("HELP" . (:foreground "yellow" :weight bold)))
     8: 
     9:       org-capture-templates '(("t" "Todo" entry (file+headline "~/agenda/2do.org" "Todo") "* TODO %?\ncreated on: %U\n %i")
    10:                               ("T" "Task" entry (file+headline "~/agenda/2do.org" "Task") "* TODO %? %^g \ncreated on: %U\n %i")
    11:                               ("d" "Date" entry (file+headline "~/agenda/2do.org" "Date") "* TODO %? %^g  \nSCHEDULED: %^t DEADLINE: %^t \ncreated on: %U\n %i" :empty-lines 1)
    12:                               ("i" "Info" entry (file+headline "~/agenda/2do.org" "Info") "* TODO %? %^g \ncreated on: %U\n %i")
    13:                               ("w" "Work" entry (file+headline "~/agenda/2do.org" "Work") "* TODO %? %^g \ncreated on: %U\n %i")
    14:                               ("l" "Lena" entry (file+headline "~/agenda/2do.org" "Lena") "* TODO %? %^g \ncreated on: %U\n %i")
    15:                               ("p" "Pfadi" entry (file+headline "~/agenda/2do.org" "Pfadi") "* TODO %? %^g \ncreated on: %U\n %i")
    16:                               ("g" "Geld" entry (file+headline "~/agenda/2do.org" "Geld") "* TODO %? %^g \ncreated on: %U\n %i")
    17:                               ("G" "Guix" entry (file+headline "~/agenda/2do.org" "Guix") "* TODO %? %^g \ncreated on: %U\n %i")
    18:                               ("e" "Emacs" entry (file+headline "~/agenda/2do.org" "Emacs") "* TODO %? %^g \ncreated on: %U\n %i")
    19:                               ("P" "Prolet" entry (file+headline "~/agenda/2do.org" "Prolet") "* TODO %? %^g \ncreated on: %U\n %i")
    20:                               ("m" "Mold" entry (file+headline "~/agenda/2do.org" "Mold") "* TODO %? %^g \ncreated on: %U\n %i")
    21:                               ("z" "Ziel" entry (file+headline "~/agenda/2do.org" "Ziel") "* TODO %? %^g \ncreated on: %U\n %i")
    22:                               ("b" "Blog" entry (file+headline "~/agenda/2do.org" "Blog") "* TODO %? %^g\ncreated on: %U\n %i")
    23:                               ("n" "Netz" entry (file+headline "~/agenda/2do.org" "Netz") "* TODO %? %^g \ncreated on: %U\n %i")
    24:                               ;; see https://github.com/sprig/org-capture-extension  for the  following two
    25:                               ("o" "Protocol" entry (file+headline "~/agenda/2do.org" "Netz") "* TODO %^{Title} %? :netz: \ncreated on: %U\n #+BEGIN_QUOTE\n%i\n#+END_QUOTE\nSource: %c")
    26:                               ("r" "Protocol Link" entry (file+headline "~/agenda/2do.org" "Netz") "* TODO [[%:link][%:description]] %? :netz: \ncreated on: %U")))
    
  • Org-Babel
     1: (org-babel-do-load-languages
     2:  'org-babel-load-languages
     3:  '((dot . t)
     4:    (emacs-lisp . t)
     5:    (latex . t)
     6:    (lua . t)
     7:    (scheme . t)
     8:    (shell . t)
     9:    (calc . t)
    10:    (css . t)
    11:    (org . t)
    12:    (octave . t)
    13:    (gnuplot . t)
    14:    (java . t)
    15:    ;; (php . t)
    16:    (ebnf . t)))
    
  • Org-CalDav
    1: (setq org-caldav-url "https:/cloud.kraut-kollektiv.org/remote.php/dav/calendars/Jakob"
    2:       org-caldav-calendar-id "org-calendar"
    3:       org-caldav-inbox "~/agenda/org-calendar-inbox.org"
    4:       org-caldav-files nil
    5:       org-icalendar-timezone "Europe/Berlin")
    
  • Org trash
     1: (set-face-attribute 'org-agenda-structure t :inherit 'default)
     2: (defun org-mpv-complete-link (&optional arg) (replace-regexp-in-string "file:" "mpv:" (org-link-complete-file arg) t t))
     3: 
     4: (org-link-set-parameters "mpv" :follow #'empv-play-file :complete #'org-mpv-complete-link)
     5: 
     6: 
     7: (add-to-list 'org-src-lang-modes '("inline-js" . javascript)) ;; js2 if you're fancy
     8: (defvar org-babel-default-header-args:inline-js
     9:   '((:results . "html")
    10:     (:exports . "results")))
    11: (defun org-babel-execute:inline-js (body _params)
    12:   (format "<script type=\"text/javascript\">\n%s\n</script>" body))
    

GNUS

  1: ;; (require 'nnir) ; deprecated
  2: ;;
  3: ;; (setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3") 
  4: (setq gnus-secondary-select-methods
  5:       '((nntp "news.gwene.io") ;; Read feeds/atom through gwene
  6:         ;; This tells Gnus to get email via IMAP.
  7:         (nnimap "jakob.honal"
  8:                 (nnimap-address "imap.gmx.net")
  9:                 (nnimap-user "jakob.honal@gmx.de")
 10:                 (nnimap-authenticator login)
 11:                 (nnimap-server-port 993)
 12:                 (nnimap-stream ssl)
 13:                 ;;(gnus-search-engine imap)
 14:                                         ; @see http://www.gnu.org/software/emacs/manual/html_node/gnus/Expiring-Mail.html
 15:                 (nnmail-expiry-target "nnimap+gmx.de:Gelöscht")
 16:                 (nnmail-expiry-wait 90))
 17: 
 18:         ;; (nnimap "geraetnull"
 19:         ;;         (nnimap-address "imap.web.de")
 20:         ;;      (nnimap-user "geraetnull@web.de")
 21:         ;;         (nnimap-server-port 993)
 22:         ;;         (nnimap-stream ssl)
 23:         ;;         ;;(gnus-search-engine imap)
 24:         ;;                              ; @see http://www.gnu.org/software/emacs/manual/html_node/gnus/Expiring-Mail.html
 25:         ;;         (nnmail-expiry-target "nnimap+web.de:Gelöscht")
 26:         ;;         (nnmail-expiry-wait 90))
 27: 
 28:           ;;              (nnimap "suschemist"
 29: ;;                       (nnimap-address "imap-mail.outlook.com")
 30: ;;                    (nnimap-user "suschemist@outlook.com")
 31: ;;                       (nnimap-server-port 993)
 32: ;;                       (nnimap-stream ssl)
 33: ;;                       ;;(gnus-search-engine imap)
 34: ;;                       (nnmail-expiry-wait 90))
 35: 
 36: ;;              (nnimap "phosphorus3115"
 37: ;;                       (nnimap-address "imap-mail.outlook.com")
 38: ;;                    (nnimap-user "phosphorus3115@outlook.de")
 39: ;;                       (nnimap-server-port 993)
 40: ;;                       (nnimap-stream ssl)
 41: ;;                       ;;(gnus-search-engine imap)
 42: ;;                       (nnmail-expiry-wait 90))
 43: 
 44: 
 45:         ))
 46: 
 47: (setq gnus-thread-sort-functions
 48:       '(gnus-thread-sort-by-most-recent-date
 49:         (not gnus-thread-sort-by-number)))
 50: 
 51: (setq gnus-use-cache t)
 52: 
 53: ;; (defun my-gnus-group-list-subscribed-groups ()
 54: ;;   "List all subscribed groups with or without un-read messages"
 55: ;;   (interactive)
 56: ;;   (gnus-group-list-all-groups 5))
 57: 
 58: ;; open attachment
 59: (eval-after-load 'mailcap
 60:   '(progn
 61:      (cond
 62:       ;; on macOS, maybe change mailcap-mime-data?
 63:       ((eq system-type 'darwin))
 64:       ;; on Windows, maybe change mailcap-mime-data?
 65:       ((eq system-type 'windows-nt))
 66:       (t
 67:        ;; Linux, read ~/.mailcap
 68:        (mailcap-parse-mailcaps)))))
 69: 
 70: ;; Tree view for groups.
 71: (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
 72: ;; Threads
 73: (setq gnus-summary-thread-gathering-function 'gnus-gather-threads-by-subject)
 74: 
 75: ;; Also, I prefer to see only the top level message.  If a message has
 76: ;; several replies or is part of a thread, only show the first message.
 77: ;; `gnus-thread-ignore-subject' will ignore the subject and
 78: ;; look at 'In-Reply-To:' and 'References:' headers.
 79: ;; (setq gnus-thread-hide-subtree t)
 80: ;; (setq gnus-thread-ignore-subject t)
 81: 
 82: ;; http://www.gnu.org/software/emacs/manual/html_node/gnus/_005b9_002e2_005d.html
 83: ;; (setq gnus-use-correct-string-widths nil)
 84: 
 85: ;; ;; Sample on how to organize mail folders.
 86: ;; ;; It's dependent on `gnus-topic-mode'.
 87: ;; (eval-after-load 'gnus-topic
 88: ;;   '(progn
 89: ;;      (setq gnus-message-archive-group '((format-time-string "sent.%Y")))
 90: ;;      (setq gnus-server-alist '(("archive" nnfolder "archive" (nnfolder-directory "~/Mail/archive")
 91: ;;                                 (nnfolder-active-file "~/Mail/archive/active")
 92: ;;                                 (nnfolder-get-new-mail nil)
 93: ;;                                 (nnfolder-inhibit-expiry t))))
 94: 
 95: ;; "Gnus" is the root folder, and there are three mail accounts, "misc", "hotmail", "gmail"
 96: ;; (setq gnus-topic-topology '(("Gnus" visible)
 97: ;;                             (("jakob.honal" visible))
 98: ;;                             ;; (("outlook" visible nil nil))
 99: ;;                             (("geraetnull" visible nil nil))))
100: 
101: ;; each topic corresponds to a public imap folder
102: ;; (setq gnus-topic-alist '(
103: ;;                       ;;     ("outlook" ; the key of topic
104: ;;                          ;; "nnimap+hotmail:Inbox"
105: ;;                          ;; "nnimap+hotmail:Drafts"
106: ;;                          ;; "nnimap+hotmail:Sent"
107: ;;                          ;; ;; "nnimap+hotmail:Junk"
108: ;;                          ;; ;; "nnimap+hotmail:Deleted") 
109: 
110: ;;                          ("jakob.honal" ; the key of topic
111: ;;                           "nnimap+gmail:INBOX"
112: ;;                           "nnimap+gmail:Gesendet"
113: ;;                           "nnimap+gmail:Gelöscht"
114: ;;                           "nnimap+gmail:Entwürfe")                         
115: ;;                       ("geraetnull" ; the key of topic
116: ;;                           "nnimap+gmail:INBOX"
117: ;;                           "nnimap+gmail:[Gmail]/Sent Mail"
118: ;;                           "nnimap+gmail:[Gmail]/Trash"
119: ;;                           "nnimap+gmail:Drafts")                               
120: ;;                          ("Gnus")))
121: 
122: ;; see latest 1000 mails in topic hen press Enter on any group
123: ;;   (gnus-topic-set-parameters "jakob.honal" '((display . 1000)))
124: ;;   (gnus-topic-set-parameters "geratnull" '((display . 1000)))
125: ;;  ;; (gnus-topic-set-parameters "outlook" '((display . 1000))))
126: ;; )

eat

Babba Terminal Emulator. (sogar htop und Emacs laufen problemlos darin, was will man mehr?)

1: (add-hook 'eshell-load-hook #'eat-eshell-mode)
2: (eat-eshell-mode)

Webjump

Websuchen (mit C-x z)

  • URL-Handler
     1: (setq browse-url-handlers '(("superuser\\.com" . eww-browse-url)
     2:                             ("stackexchange" . eww-browse-url)
     3:                             ("stackoverflow" . eww-browse-url)
     4:                             ("wikipedia\\.org" . eww-browse-url)
     5:                             ("thefreedictionary\\.com" . eww-browse-url)
     6:                             ("github" . browse-url-firefox)
     7:                             ("dndbeyond\\.com" . browse-url-firefox)
     8:                             ("allanime\\.to" . browse-url-firefox)
     9:                             ("youtube\\.com" . browse-url-firefox)
    10:                             ("kissanimes\\.to" . browse-url-firefox)
    11:                             ("signal\\.org" . browse-url-firefox)
    12:                             ("discord\\.com" . browse-url-firefox)
    13:                             ("gnu\\.org" . eww-browse-url)
    14:                             ("ing\\.de" . browse-url-firefox)
    15:                             ("sciencemadness\\.org" . eww-browse-url)
    16:                             ("html.duckduckgo\\.com" . eww-browse-url)
    17:                             ("thegoodscentscompany\\.com" . browse-url-firefox)
    18:                             ("nypl\\.org" . eww-browse-url )
    19:                             ("." . browse-url-default-browser)))
    20: 
    
  • webjump sites
     1: (setq webjump-sites '(("annas archive" .  [simple-query  "https://annas-archive.org" "https://annas-archive.org/search?q=" ""])
     2:                       ("Org Roam" . "http://127.0.0.1:35901/")
     3:                       ("DeepL" . "https://www.deepl.com/en/translator")
     4:                       ("openstreetmaps" . "openstreetmaps.org")
     5:                       ("alma-music" . "alma-music.de")
     6:                       ("gmx" . "gmx.net")
     7:                       ("Codeberg" . "https://codeberg.org/Schroedinger50PCT")
     8:                       ("New York Public Library Digital Collections" . [simple-query "" "https://digitalcollections.nypl.org/search/index?utf8=%E2%9C%93&keywords=" "&filters%5Brights%5D=pd"])
     9:                       ("DM dm.de" . [simple-query "dm.de" "https://www.dm.de/search?query=" "&searchType=product&sort=price_asc" ])
    10:                       ("Hexapus Hekserij" . [simple-query "hexapus.nl" "https://eng.hekserij.nl/?s=" "&post_type=product"])
    11:                       ("Bojensen Essential Oils" . "https://bojensen.net/EssentialOilsEng/EssentialOils.htm")
    12:                       ("sci-hub" . [simple-query "sci-hub.se" "https://sci-hub.se/" ""])
    13:                       ("sci-hub" . [mirrors "sci-hub.ee"])
    14:                       ("s3" . [simple-query "shop.es-drei.de" "https://shop.es-drei.de/search?sSearch=" ""])
    15:                       ("GNU Project FTP Archive" . [mirrors "https://ftp.gnu.org/pub/gnu/" "https://ftpmirror.gnu.org"])
    16:                       ("GNU Project Website" . "www.gnu.org")
    17:                       ("Guix Manual" . "http://guix.gnu.org/en/manual/devel/en/html_node/")
    18:                       ("GNU Manual" . "https://gnu.org/manual/")
    19:                       ("Guix Cookbook" . "https://guix.gnu.org/en/cookbook/")
    20:                       ("Emacs Website" . "www.gnu.org/software/emacs/emacs.html")
    21:                       ("Savannah Emacs page" . "savannah.gnu.org/projects/emacs")
    22:                       ("Emacs Lisp List" . "www.damtp.cam.ac.uk/user/eglen/emacs/ell.html")
    23:                       ("Emacs Wiki" . [simple-query "www.emacswiki.org" "www.emacswiki.org/cgi-bin/wiki/" ""])
    24:                       ("DuckDuckGo" . [simple-query "duckduckgo.com" "duckduckgo.com/?q=" ""])
    25:                       ("MetaGer" . [simple-query "metager.org" "metager.org/meta/meta.ger3?eingabe=" ""])
    26:                       ("the good scents company" . [simple-query "https://html.duckduckgo.com/html/?q=the+good+scents+company" "https://html.duckduckgo.com/html/?q=the+good+scents+company+" ""])
    27:                       ("Youtube u2b" . [simple-query "youtube.com" "https://www.youtube.com/results?search_query=" ""])
    28:                       ("Wikipedia englisch" . [simple-query "en.wikipedia.org" "en.wikipedia.org/w/index.php?title=Special%3ASearch&search=" ""])
    29:                       ("Wikipedia deutsch" . [simple-query "de.wikipedia.org" "de.wikipedia.org/w/index.php?title=Special%3ASearch&search=" ""])
    30:                       ("Google" . [simple-query "www.google.com" "www.google.com/search?q=" ""])
    31:                       ("National Weather Service" . webjump-to-iwin)
    32:                       ("amalgam-fansubs" . "https://ddl.amalgam-fansubs.moe/"  )
    33:                       ("Usenet FAQs" . "www.faqs.org/faqs/")
    34:                       ("RTFM Usenet FAQs by Group" . "ftp://rtfm.mit.edu/pub/usenet-by-group/")
    35:                       ("RTFM Usenet FAQs by Hierarchy" . "ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/")
    36:                       ("X Consortium Archive" . "ftp.x.org")
    37:                       ("Association for Computing Machinery" . "www.acm.org")
    38:                       ("Computer Professionals for Social Responsibility" . "www.cpsr.org")
    39:                       ("Electronic Frontier Foundation" . "www.eff.org")
    40:                       ("IEEE Computer Society" . "www.computer.org")
    41:                       ("Risks Digest" . webjump-to-risks)
    42:                       ("Supplemental Web site list for webjump" . "www.neilvandyke.org/webjump/")
    43:                       ("Guix Packages" . [simple-query "packages.guix.gnu.org" "packages.guix.gnu.org/search/?query=" ""])
    44:                       ("kissanimes" . [simple-query "kissanimes.tv" "https://kissanimes.tv/fullsearch?s=" ""])
    45:                       ("Cambridge Dictionaries Online" . [simple-query "dictionary.cambridge.org" "dictionary.cambridge.org/cmd_search.asp?searchword=" ""])
    46:                       ("CiteSeer Document Search" . [simple-query "citeseer.nj.nec.com" "citeseer.nj.nec.com/cs?q=" "&submit=Search+Documents&cs=1"])
    47:                       ("CiteSeer Citation Search" . [simple-query "citeseer.nj.nec.com" "citeseer.nj.nec.com/cs?q=" "&submit=Search+Citations&cs=1"])
    48:                       ("Collection of Computer Science Bibliographies" . [simple-query "liinwww.ira.uka.de/bibliography/" "liinwww.ira.uka.de/searchbib/index?query=" ""])
    49:                       ("Guix Issues" . [simple-query "www.issues.guix.gnu.org" "issues.guix.gnu.org/search?query=" ""])
    50:                       ("GNU Guix" . [simple-query "www.guix.gnu.org" "search.guix.gnu.org/?q=" ""])
    51:                       ("Dictionary.com" . [simple-query "www.dictionary.com" "www.dictionary.com/cgi-bin/dict.pl?term=" "&db=*"])
    52:                       ("Ebay" . [simple-query "www.ebay.com" "search.ebay.com/search/search.dll?query=" ""])
    53:                       ("Google Scholar" . [simple-query "https://scholar.google.com" "https://scholar.google.com/scholar?q=" ""])
    54:                       ("dndbeyond" . "www.dndbeyond.com")
    55:                       ("roll20" .  "www.roll20.net")
    56:                       ("EmacsWiki" . [simple-query "www.emacswiki.org/cgi-bin/wiki.pl" "www.emacswiki.org/cgi-bin/wiki.pl?search=" "&dosearch=1"])
    57:                       ("Geektools Whois" . [simple-query "www.geektools.com/whois.html" "www.geektools.com/geektools-cgi/whois.cgi?query=" ""])
    58:                       ("GnuPG" . "www.gnupg.org")
    59:                       ("IMDB" . [simple-query "www.imdb.com" "www.imdb.com/Find?select=All&for=" ""])
    60:                       ("Internet Drafts" . [simple-query "www.ietf.org/ID.html" ,(concat "search.ietf.org/cgi-bin/htsearch?restrict=" (webjump-url-encode "http://www.ietf.org/internet-drafts/") "&words=") ""])
    61:                       ("Linux Kernel Archives" . "www.kernel.org")
    62:                       ("Mailcrypt" . "mailcrypt.sourceforge.net")
    63:                       ("Merriam-Webster Dictionary" . [simple-query "www.m-w.com/dictionary" "www.m-w.com/cgi-bin/netdict?va=" ""])
    64:                       ("PGP Key Server" . [simple-query "pgp.mit.edu" "pgp.mit.edu:11371/pks/lookup?op=index&search=" ""])
    65:                       ("PGPi" . [simple-query "www.pgpi.org" "www.pgpi.org/cgi/search.cgi?keywords=" ""])
    66:                       ("Project Gutenberg" . webjump-to-gutenberg)
    67:                       ("RFC Editor" . [simple-query "www.rfc-editor.org" "www.rfc-editor.org/cgi-bin/rfcsearch.pl?searchwords=" ,(concat "&opt=All%20Fields" "&filefmt=txt" "&search_doc=search_all" "&match_method=prefix" "&sort_method=newer" "&num=25" "&format=ftp")])
    68:                       ("Roget's Internet Thesaurus" . [simple-query "www.thesaurus.com" "www.thesaurus.com/cgi-bin/htsearch?config=roget&words=" ""])
    69:                       ("US Patents" . [simple-query "www.uspto.gov/patft/" ,(concat "appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF" "&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=0&f=S&l=50" "&TERM1=") "&FIELD1=&co1=AND&TERM2=&FIELD2=&d=PG01"])
    70:                       ))
    

empv config

1: (add-to-list 'empv-mpv-args "--ytdl-format=bestvideo+bestaudio/best[ext=mp4]/best")

PDF-Tools

1: (pdf-loader-install)

Spray

1: (setq spray-margin-top 8
2:       spray-margin-left 25
3:       spray-height 800)
4: 
5: (set-face-attribute 'spray-accent-face nil :foreground "green" :inherit 'spray-base-face)

gptel

  1: (setq
  2:  gptel-track-media t
  3:  gptel-default-mode 'org-mode
  4:  gptel-org-branching-context t
  5:  gptel-model "deepseek-r1:latest"   
  6:  gptel-backend (gptel-make-ollama
  7:                    "Ollama"
  8:                  :stream t
  9:                  :host "localhost:11434"
 10:                  :models '((sroecker/sauerkrautlm-7b-hero:latest)
 11:                            (tinydolphin:latest)
 12:                            (deepscaler:latest)
 13:                            (stablelm2:1.6b
 14:                             :capabilities (media)
 15:                             :mime-types ("text/plain"
 16:                                          "text/org"
 17:                                          "application/x-abiword"
 18:                                          "text/css"
 19:                                          "text/csv"
 20:                                          "application/msword"
 21:                                          "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
 22:                                          "application/epub+zip"
 23:                                          "text/html"
 24:                                          "text/calendar"
 25:                                          "text/javascript"
 26:                                          "application/json"
 27:                                          "application/vnd.oasis.opendocument.presentation"
 28:                                          "application/vnd.oasis.opendocument.spreadsheet"
 29:                                          "application/vnd.oasis.opendocument.text"
 30:                                          "application/pdf"
 31:                                          "application/vnd.ms-powerpoint"
 32:                                          "application/vnd.openxmlformats-officedocument.presentationml.presentation"
 33:                                          "application/rtf"
 34:                                          "application/xhtml+xml"
 35:                                          "application/vnd.ms-excel"
 36:                                          "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
 37:                                          "application/xml"
 38:                                          "text/xml"
 39:                                          "text/x-script.elisp"
 40:                                          "text/x-fortran"
 41:                                          "text/x-script.scheme"
 42:                                          "text/x-script.guile"))                       
 43:                            (qwen2.5-coder:latest
 44:                             :capabilities (media)
 45:                             :mime-types ("text/plain"
 46:                                          "text/org"
 47:                                          "application/x-abiword"
 48:                                          "text/css"
 49:                                          "text/csv"
 50:                                          "application/msword"
 51:                                          "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
 52:                                          "application/epub+zip"
 53:                                          "text/html"
 54:                                          "text/calendar"
 55:                                          "text/javascript"
 56:                                          "application/json"
 57:                                          "application/vnd.oasis.opendocument.presentation"
 58:                                          "application/vnd.oasis.opendocument.spreadsheet"
 59:                                          "application/vnd.oasis.opendocument.text"
 60:                                          "application/pdf"
 61:                                          "application/vnd.ms-powerpoint"
 62:                                          "application/vnd.openxmlformats-officedocument.presentationml.presentation"
 63:                                          "application/rtf"
 64:                                          "application/xhtml+xml"
 65:                                          "application/vnd.ms-excel"
 66:                                          "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
 67:                                          "application/xml"
 68:                                          "text/xml"
 69:                                          "text/x-script.elisp"
 70:                                          "text/x-fortran"
 71:                                          "text/x-script.scheme"
 72:                                          "text/x-script.guile"))
 73:                            (moondream:latest
 74:                             :capabilities (media)
 75:                             :mime-types ("text/plain"
 76:                                          "text/org"                                              
 77:                                          "image/png"                                            
 78:                                          "image/jpg"
 79:                                          "image/jpeg"
 80:                                          )) 
 81:                            (deepseek-r1:latest
 82:                             :capabilities (media)
 83:                             :mime-types ("text/plain"
 84:                                          "text/org"
 85:                                          "application/x-abiword"
 86:                                          "text/css"
 87:                                          "text/csv"
 88:                                          "application/msword"
 89:                                          "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
 90:                                          "application/epub+zip"
 91:                                          "text/html"
 92:                                          "text/calendar"
 93:                                          "text/javascript"
 94:                                          "application/json"
 95:                                          "application/vnd.oasis.opendocument.presentation"
 96:                                          "application/vnd.oasis.opendocument.spreadsheet"
 97:                                          "application/vnd.oasis.opendocument.text"
 98:                                          "application/pdf"
 99:                                          "application/vnd.ms-powerpoint"
100:                                          "application/vnd.openxmlformats-officedocument.presentationml.presentation"
101:                                          "application/rtf"
102:                                          "application/xhtml+xml"
103:                                          "application/vnd.ms-excel"
104:                                          "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
105:                                          "application/xml"
106:                                          "text/xml"
107:                                          "text/x-script.elisp"
108:                                          "text/x-fortran"
109:                                          "text/x-script.scheme"
110:                                          "text/x-script.guile"))))
111: 
112:  gptel-directives '((default . "You are a great language model and a helpful assistant. Answer precisely.")
113:                     (programming . "You are a great language model and a careful programmer. Provide code and only code as output without additional text, instructions or notes.")
114:                     (writing . "You are a great language model and an editorial assistant. Answer precisely.")
115:                     (chat . "You are a great language model and a conversationalist. Answer precisely.")
116:                     (scientist . "You are an omniscient scholar. Explain precisely what has been described.")))
117: 
118: (setf (alist-get 'org-mode gptel-prompt-prefix-alist) "@user: ")
119: (setf (alist-get 'org-mode gptel-response-prefix-alist) "@assistant: ")

EXWM Setup

 1:   ;; rename buffer
 2:   (defun exwm-rename-buffer ()
 3:     (interactive)
 4:     (exwm-workspace-rename-buffer
 5:      (concat exwm-class-name ":"
 6:              (if (<= (length exwm-title) 50) exwm-title
 7:                (concat (substring exwm-title 0 49) "...")))))
 8: 
 9:   (add-hook 'exwm-update-class-hook 'exwm-rename-buffer)
10:   (add-hook 'exwm-update-title-hook 'exwm-rename-buffer)
11: 
12:   ;; default config
13:   (ednc-mode 1)
14:   (setq exwm-randr-workspace-monitor-plist '(0 "eDP" 1 "DisplayPort-3" 2 "DisplayPort-1" 3 "DisplayPort-2" 4 "DisplayPort-0" 5 "DisplayPort-4")
15:         exwm-workspace-number 2
16:         exwm-workspace-warp-cursor t
17:         mouse-autoselect-window t
18:         focus-follows-mouse t
19:         exwm-workspace-show-all-buffers t
20:         exwm-layout-show-all-buffers t
21:         ediff-window-setup-function 'ediff-setup-windows-plain
22:         )
23: 
24: ;; das beist sich mit xinitrc
25: (exwm-enable)
26: 
27: 
28:   ;; ;; XInputModule
29:   ;; (exwm-xim-enable)
30: 
31:   ;; (setenv "GTK_IM_MODULE" "xim")
32:   ;; (setenv "QT_IM_MODULE" "xim")
33:   ;; (setenv "XMODIFIERS" "@im=exwm-xim")
34:   ;; (setenv "CLUTTER_IM_MODULE" "xim")
35: 
36:   (defun run-command-in-background (command)
37:     (let ((command-parts (split-string command "[ ]+")))
38:       (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts)))))
39: 
40:   (defun exwm-autorandr-displays ()
41:     (interactive)
42:     (run-command-in-background "autorandr --change --force")
43:     (message "Display config: %s"
44:              (string-trim (shell-command-to-string "autorandr --current"))))
45: 
46:   (exwm-randr-mode 1)
47:   (add-hook 'exwm-randr-screen-change-hook #'exwm-autorandr-displays)
48:   (exwm-autorandr-displays)
49: 

EXWM keybindings

 1: (setq exwm-input-global-keys
 2:       `(
 3:         ;; 's-b': send window to background
 4:         ([?\s-b] . exwm-send-window-to-background)
 5:         ;; 's-r': Reset (to line-mode).
 6:         ([?\s-r] . exwm-reset)
 7:         ;; 's-w': Switch workspace.
 8:         ([?\s-w] . exwm-workspace-switch)
 9:         ;; 's-&': Launch application.
10:         ([?\s-&] . (lambda (command)
11:                      (interactive (list (read-shell-command "$ ")))
12:                      (start-process-shell-command command nil command)))
13:         ;; 's-N': Switch to certain workspace.
14:         ,@(mapcar (lambda (i)
15:                     `(,(kbd (format "s-%d" i)) .
16:                       (lambda ()
17:                         (interactive)
18:                         (exwm-workspace-switch-create ,i))))
19:                   (number-sequence 0 9))))
20: 
21: 
22: (exwm-input-set-key (kbd "<XF86MonBrightnessDown>")
23:                     (lambda () (interactive) (call-process-shell-command "light -U 1 ; light -Ss sysfs/leds/apple::kbd_backlight 32" nil 0)))
24: 
25: (exwm-input-set-key (kbd "<XF86MonBrightnessUp>")
26:                     (lambda () (interactive) (call-process-shell-command "light -A 1 ; light -Ss sysfs/leds/apple::kbd_backlight 32" nil 0)))
27: 
28: (exwm-input-set-key (kbd "<XF86AudioLowerVolume>")
29:                     (lambda () (interactive) (call-process-shell-command "pactl set-sink-volume 0 -1%")))
30: 
31: (exwm-input-set-key (kbd "<XF86AudioRaiseVolume>")
32:                     (lambda () (interactive) (call-process-shell-command "pactl set-sink-volume 0 +1%")))
33: 
34: (exwm-input-set-key (kbd "<XF86AudioMute>")
35:                     (lambda () (interactive) (call-process-shell-command "pactl set-sink-mute 0 toggle")))
36: 
37: (exwm-input-set-key (kbd "<XF86MicMute>")
38:                     (lambda () (interactive) (call-process-shell-command "pactl set-source-mute 0 toggle")))
39: 
40: (exwm-input-set-key (kbd "<XF86AudioPlay>") 'empv-toggle) ;mehr Argumente finden
41: (exwm-input-set-key (kbd "<XF86AudioNext>") 'empv-playlist-next)
42: (exwm-input-set-key (kbd "<XF86AudioPrev>") 'empv-playlist-prev)
43: (exwm-input-set-key (kbd "<XF86Search>") 'org-screenshot-take) ; Screenshot key für touchbar basteln
44: (exwm-input-set-key (kbd "<XF86KbdBrightnessUp>") 'empv-chapter-next)
45: (exwm-input-set-key (kbd "<XF86KbdBrightnessDown>") 'empv-chapter-prev)
46: 
47: (setq exwm-input-simulation-keys
48:       '(([?\C-b] . [left])
49:         ([?\C-f] . [right])
50:         ([?\C-p] . [up])
51:         ([?\C-n] . [down])
52:         ([?\C-a] . [home])
53:         ([?\C-e] . [end])
54:         ([?\M-v] . [prior])
55:         ([?\C-v] . [next])
56:         ([?\C-d] . [delete])
57:         ([?\C-k] . [S-end delete])
58:         ([?\C-s] . [?\C-f])
59:         ([?\C-r] . [?\C-f])
60:         ([?\C-b] . [left])
61:         ([?\M-b] . [C-left])
62:         ([?\M-f] . [C-right])
63:         ([?\M-<] . [C-home])
64:         ([?\M->] . [C-end])
65:         ([?\C-i] . [tab])
66:         ([?\C-m] . [return])
67:         ([?\C-o] . [return left])
68:         ([?\C-g] . [escape])
69:         ([?\C-\_] . [?\C-z])
70:         ([?\C-/] . [?\C-z])
71:         ([?\M-d] . [S-C-right delete])
72:         ([<C-delete>] . [S-C-left delete])
73:         ([<M-delete>] . [S-C-left delete])
74:         ([?\M-S b] . [S-C-left])
75:         ([?\M-S f] . [S-C-right])
76:         ([?\M-w] . [?\C-c])
77:         ([?\C-y] . [?\C-v])
78:         ))

Aliases

lets not forget to set some aliases for annoyingly long commands

 1: 
 2: (defun zoom ()
 3:   (interactive)
 4:   (start-process "flatseal" nil "flatpak" "-u" "run" "us.zoom.Zoom"))
 5: 
 6: (defun flatseal ()
 7:   (interactive)
 8:   (start-process "flatseal" nil "flatpak" "-u" "run" "com.github.tchx84.Flatseal"))
 9: 
10: (defun msteams ()
11:   (interactive)
12:   (start-process "teams" nil "flatpak" "-u" "run" "com.github.IsmaelMartinez.teams_for_linux"))
13: 
14: (defun gradience ()
15:   (interactive)
16:   (start-process "Gradience" nil "flatpak" "-u" "run" "com.github.GradienceTeam.Gradience"))
17: 
18: (defun signal-desktop ()
19:   (interactive)
20:   (start-process "signal-desktop" nil "flatpak" "-u" "run" "org.signal.Signal"))
21: 
22: (defun molsketch ()
23:   (interactive)
24:   (start-process "molsketch" nil "flatpak" "-u" "run" "net.sourceforge.molsketch"))
25: 
26: (defun discordapp ()
27:   (interactive)
28:   (start-process "discordapp" nil "flatpak" "-u" "run" "com.discordapp.Discord"))
29: 
30: (defun ausweisapp ()
31:   (interactive)
32:   (start-process "ausweisapp" nil "flatpak" "-u" "run" "de.bund.ausweisapp.ausweisapp2"))
33: 
34: (defun avogadro2 ()
35:   (interactive)
36:   (start-process "avogadro2" nil "/home/macfag/blobs/avogadro2/Avogadro2-x86_64.AppImage" "--appimage-extract-and-run"))
37: 
38: (defun spawn-cubicgrid-wallpaper ()
39:   (interactive)
40:   (start-process  "cubicgrid" nil "/home/macfag/.guix-home/profile/libexec/xscreensaver/cubicgrid" "--no-bigdots" "--symmetry" "cubic" "--speed" "0.1" "--delay" "0" "--zoom" "5"))
41: 
42: (defun spawn-etruscanvenus-wallpaper ()
43:   (interactive)
44:   (start-process  "etruscanvenus" nil "/home/macfag/.guix-home/profile/libexec/xscreensaver/etruscanvenus" "--view-mode" "walk" "--mode" "wireframe" "--appearance" "solid" "--colors" "direction" "--speed-x" "-0.065" "--speed-y" "-0.774" "--speed-z" "-0.516" "--walk-direction" "-26.129" "--delay" "0"))

Not enought eyecandy? Xscreensaver stacked below transparent Exwm windows/frames gives a nice Videowallpaper For EXWM you need something like this: https://github.com/pestctrl/exwm-background These lines in 6 and 8 need to be uncommented to make it work.

Garbage Collection

1: (setq gc-cons-threshold (* 2 1000 1000))

Customize

 1: (custom-set-variables
 2:  '(fido-mode t)
 3:  '(holiday-bahai-holidays nil)
 4:  '(holiday-general-holidays nil)
 5:  '(holiday-hebrew-holidays nil)
 6:  '(holiday-islamic-holidays nil)
 7:  '(holiday-oriental-holidays nil)
 8:  '(ido-mode nil nil (ido))
 9:  '(safe-local-variable-values
10:    '((org-roam-db-location . "~/webserver/wiki/wiki.db")
11:      (org-roam-directory . "~/webserver/wiki/")
12:      (org-roam-db-location . "~/eunomatics/eunomatics.db")
13:      (org-roam-directory . "~/eunomatics/")
14:      (org-roam-db-location . "~/librefine/librefine.db")
15:      (org-roam-directory . "~/librefine/"))))
16: 
17: (custom-set-faces)

Emacs mobile

Dieser Part erzeugt durch Auslassungen Konfigurationen für den nativen Android Port von Emacs.

Noweb-Early-Init

Die Noweb-Syntax von Org erlaubt es uns die bereits definierte frühe Emacsconfig elegant in diesem Dokument weiter zu vererben.

1: <<emacs-early-init>>

Noweb-mobile-settings

Selbiges geschieht hier noch mal mit der allgemeinen Emacsconfig für Android.

1: <<mobile-settings>>     

hosts

 1: # Static table lookup for hostnames.
 2: # See hosts(5) for details.
 3: 127.0.0.1       localhost
 4: ::0             localhost
 5: # fallback hostname used by NetworkManager
 6: 127.0.0.1       localhost.localdomain
 7: ::0             localhost.localdomain
 8: # trash-reposting seiten, die Problematik mit der "linux-foundation" ist bekannt
 9: 127.0.0.1 linux.com
10: 127.0.0.1 linuxfoundation.org

Hintergundbeleuchtung udev-Regeln

1: ACTION=="add", SUBSYSTEM=="backlight", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
2: ACTION=="add", SUBSYSTEM=="backlight", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"
3: ACTION=="add", SUBSYSTEM=="leds", RUN+="/bin/chgrp input /sys/class/leds/%k/brightness"
4: ACTION=="add", SUBSYSTEM=="leds", RUN+="/bin/chmod g+w /sys/class/leds/%k/brightness"
5: ACTION=="add", SUBSYSTEM=="leds", RUN+="guix shell bash light -- bash -c \"light -Ss sysfs/leds/apple::kbd_backlight 32;\""

MPV

 1: # hwdec=auto-safe
 2: # save-position-on-quit=yes               # saves the seekbar position on exit
 3: # force-seekable=yes                      # forces videos to be seekable
 4: # cache=yes                               # uses a large seekable RAM cache even for local input.
 5: # cache-secs=200                          # uses extra large RAM cache (needs cache=yes to make it useful).
 6: # demuxer-max-back-bytes=20M              # sets fast seeking
 7: # demuxer-max-bytes=20M                   # sets fast seeking
 8: # keep-open=yes                           # keeps the player open after a video/playlist ends
 9: # hls-bitrate=max                         # uses max quality for HLS streams
10: # pause=yes                               # disables autoplay
11: # prefetch-playlist=yes                   # prefetches the playlist
12: # snap-window=yes                         # Enables windows snapping for Windows 10, 11
13: # priority=high                           # Makes PC prioritize MPV for allocating resources
14: # cursor-autohide=30                     # autohides the cursor after x ms
15: # alang=en,eng,de,ger           # default audio languages
16: # embeddedfonts=yes                       # use embedded fonts for SSA/ASS subs
17: # slang=en,eng,de,ger                   # default subtitles languages
18: # sub-auto=all
19: # sub-file-paths-append='Subs/${filename/no-ext}'      # search for external subs in these relative subdirectories
20: # sub-file-paths-append='Subs/${filename}'
21: # sub-file-paths-append='subs/${filename/no-ext}'
22: # sub-file-paths-append='subs/${filename}'
23: # sub-file-paths-append=ASS
24: # sub-file-paths-append=Ass
25: # sub-file-paths-append=SRT
26: # sub-file-paths-append=Srt
27: # sub-file-paths-append=Sub
28: # sub-file-paths-append=Subs
29: # sub-file-paths-append=Subtitles
30: # sub-file-paths-append=ass
31: # sub-file-paths-append=srt
32: # sub-file-paths-append=sub
33: # sub-file-paths-append=subs
34: # sub-file-paths-append=subtitles
35: # sub-fix-timing=no                       # do not try to fix gaps (which might make it worse in some cases)
36: # sub-font-size=30
37: # sub-font="sarasa regular"
38: # sub-scale-with-window=yes                                        
39: # osd-bar-align-y=-1                       # progress bar y alignment (-1 top, 0 centered, 1 bottom)
40: # osd-bar-h=2                             # height of osd bar as a fractional percentage of your screen height
41: # osd-bar-w=99                            # width of " " "
42: # osd-border-color='#DD322640'            # ARGB format
43: # osd-border-size=2                       # size for osd text and progress bar
44: # osd-color='#FFFFFFFF'                   # ARGB format
45: # osd-duration=1000                       # hide the osd after x ms
46: # osd-font-size=30
47: # osd-font="sarasa regular"
48: # osd-status-msg='${time-pos} / ${duration}${?percent-pos:  (${percent-pos}%)}${?frame-drop-count:${!frame-drop-count==0:  Dropped: ${frame-drop-count}}}\n${?chapter:Chapter: ${chapter}}'
49: # video-sync=display-resample
50: 
51: # [extension.gif]
52: # profile-desc=GIF
53: # cache=no
54: # no-pause
55: # loop-file=yes
56: # [extension.png]
57: # profile-desc=PNG
58: # video-aspect-override=no
59: # loop-file=yes
60: # [extension.jpg]
61: # profile-desc=JPG
62: # video-aspect-override=no
63: # loop-file=yes
64: # [extension.jpeg]
65: # profile-desc=JPEG
66: # profile=extension.jpg
67: # loop-file=yes

Librewolf

profiles.ini

1: [Profile0]
2: Name=default
3: IsRelative=1
4: Path=personal.default
5: Default=1
6: 
7: [General]
8: StartWithLastProfile=1
9: Version=2

userContent

  1: @-moz-document url-prefix(about:blank) {
  2:     html > body:empty {
  3:         background-color: #000000 !important;
  4:     }
  5: }
  6: 
  7: @-moz-document url(about:blank) {
  8:     html > body:empty {
  9:         background-color: #000000 !important;
 10:     }
 11: }
 12: 
 13: /* add '[pdf]' next to links to PDF files */
 14: a[href$=".pdf"]:after {
 15:     font-size: smaller;
 16:     content: " [pdf]";
 17: }
 18: 
 19: A:link[HREF*="addata"]  IMG, 
 20: A:link[HREF*="ad."]  IMG, 
 21: A:link[HREF*="ads."]  IMG, 
 22: A:link[HREF*="/ad"]  IMG, 
 23: A:link[HREF*="/A="]  IMG, 
 24: A:link[HREF*="/click"]  IMG, 
 25: A:link[HREF*="?click"]  IMG, 
 26: A:link[HREF*="?banner"]  IMG, 
 27: A:link[HREF*="=click"]  IMG, 
 28: A:link[HREF*="clickurl="]  IMG, 
 29: A:link[HREF*=".atwola."]  IMG, 
 30: A:link[HREF*="spinbox."]  IMG, 
 31: A:link[HREF*="transfer.go"]  IMG, 
 32: A:link[HREF*="adfarm"]  IMG, 
 33: A:link[HREF*="adSpace"]  IMG, 
 34: A:link[HREF*="adserve"]  IMG, 
 35: A:link[HREF*=".banner"]  IMG, 
 36: A:link[HREF*="bluestreak"]  IMG, 
 37: A:link[HREF*="doubleclick"]  IMG, 
 38: A:link[HREF*="/rd."]  IMG, 
 39: A:link[HREF*="/0AD"]  IMG, 
 40: A:link[HREF*=".falkag."]  IMG, 
 41: A:link[HREF*="trackoffer."]  IMG, 
 42: A:link[HREF*="casalemedia."]  IMG, 
 43: A:link[HREF*="valueclick."]  IMG, 
 44: A:link[HREF*="betterbasketball."]  IMG, 
 45: A:link[HREF*="sponsors.phtml"]  IMG, 
 46: A:link[HREF*="realgmtix.phtml"]  IMG, 
 47: A:link[HREF*="BurstingPipe"]  IMG,
 48: A:link[HREF*="ebayobjects"]  IMG,
 49: A:link[HREF*="tracksponsor."]  IMG { display: none ! important } 
 50: 
 51: /* disable ad iframes */
 52: IFRAME[SRC*="addata"],
 53: IFRAME[SRC*="ad."],
 54: IFRAME[SRC*="ads."],
 55: IFRAME[SRC*="/ad"],
 56: IFRAME[SRC*="/A="],
 57: IFRAME[SRC*="/click"],
 58: IFRAME[SRC*="?click"],
 59: IFRAME[SRC*="?banner"],
 60: IFRAME[SRC*="=click"],
 61: IFRAME[SRC*="clickurl="],
 62: IFRAME[SRC*=".atwola."],
 63: IFRAME[SRC*="spinbox."],
 64: IFRAME[SRC*="transfer.go"],
 65: IFRAME[SRC*="adfarm"],
 66: IFRAME[SRC*="adSpace"],
 67: IFRAME[SRC*="adserve"],
 68: IFRAME[SRC*="adjuggler"],
 69: IFRAME[SRC*=".banner"],
 70: IFRAME[SRC*="bluestreak"],
 71: IFRAME[SRC*="doubleclick"],
 72: IFRAME[SRC*="/rd."],
 73: IFRAME[SRC*="/0AD"],
 74: IFRAME[SRC*=".falkag."], 
 75: IFRAME[SRC*="trackoffer."],
 76: IFRAME[SRC*="connextra."],
 77: IFRAME[ID*="merchandisingMERC"],
 78: IFRAME[SRC*="tracksponsor."]  { display: none ! important } 
 79: 
 80: 
 81: /* miscellaneous different blocking rules to block some stuff that gets through */
 82: 
 83: A:link[onmouseover*="AdSolution"] IMG,
 84: *[class=sponsors],
 85: *[class=sp_links],
 86: *[class=advertising],
 87: *[ID=sponsors],
 88: *[ID=ad],
 89: *[ID=inlinead],
 90: *[ID=ad_creative],
 91: *[ID=contextualLinks],
 92: IMG[SRC*=".msads."] { display: none ! important } 
 93: 
 94: 
 95: /* turning some false positives back off */
 96: 
 97: A:link[HREF*="/add"]  IMG, 
 98: A:link[HREF*="/adsl"] IMG,
 99: A:link[HREF*="thread."] IMG,
100: A:link[HREF*="download."] IMG,
101: A:link[HREF*="downloads."] IMG,
102: A:link[HREF*="netflix.com/AddToQueue"] IMG,
103: A:link[HREF*="load."], 
104: A:link[HREF*="loads."], 
105: IFRAME[SRC*="load."], 
106: IFRAME[SRC*="loads."],
107: A:link[HREF*="click.mp3"] IMG { display: inline ! important }

user.js

 1: user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
 2: 
 3: /export// user_pref("general.useragent.override" , "useragent-string");
 4: 
 5: user_pref("widget.content.gtk-theme-override", "advendi");
 6: user_pref("widget.content.allow-gtk-dark-theme", true);
 7: 
 8: user_pref("gfx.font_rendering.fontconfig.max_generic_substitutions", 127);
 9: user_pref("browser.newtabpage.activity-stream.asrouter.providers.snippets", "{}");
10: user_pref("browser.compactmode.show", true);
11: user_pref("browser.display.background_color", "#000000");
12: user_pref("browser.display.background_color.dark", "#000000");
13: user_pref("browser.display.use_system_colors", true);
14: user_pref("browser.download.lastDir", "/home/macfag/Downloads");
15: user_pref("browser.link.open_newwindow", 2);
16: user_pref("browser.newtabpage.enabled", false);
17: user_pref("browser.startup.homepage", "about:blank");
18: user_pref("browser.startup.page", 1);
19: user_pref("browser.tabs.warnOnClose", false);
20: user_pref("browser.tabs.opentabfor.middleclick", false);
21: 
22: user_pref("devtools.f12_enabled", false );
23: 
24: user_pref("font.language.group", "x-western");
25: user_pref("font.minimum-size.x-western", 16);
26: user_pref("font.name.monospace.ar", "Sarasa Term SC");
27: user_pref("font.name.monospace.x-math", "Sarasa Term SC");
28: user_pref("font.name.monospace.x-unicode", "Sarasa Term SC");
29: user_pref("font.name.monospace.x-western", "Sarasa Term SC");
30: user_pref("font.name.monospace.zh-CN", "Sarasa Term SC");
31: user_pref("font.name.sans-serif.ar", "Sarasa Term SC");
32: user_pref("font.name.sans-serif.x-math", "Sarasa Term SC");
33: user_pref("font.name.sans-serif.x-unicode", "Sarasa Term SC");
34: user_pref("font.name.sans-serif.x-western", "Sarasa Term SC");
35: user_pref("font.name.sans-serif.zh-CN", "Sarasa Term SC");
36: user_pref("font.name.serif.ar", "Sarasa Term SC");
37: user_pref("font.name.serif.x-math", "Sarasa Term SC");
38: user_pref("font.name.serif.x-unicode", "Sarasa Term SC");
39: user_pref("font.name.serif.x-western", "Sarasa Term SC");
40: user_pref("font.name.serif.zh-CN", "Sarasa Term SC");
41: user_pref("font.size.monospace.x-western", 16);
42: user_pref("font.name.serif.x-western",  "Sarasa Term SC");
43: user_pref("font.size.variable.x-western", 16);
44: 
45: user_pref("full-screen-api.ignore-widgets", true);
46: user_pref("full-screen-api.warning.timeout", 0);
47: 
48: user_pref("ui.key.menuAccessKeyFocuses", false);
49: user_pref("ui.textHighlightBackground", "#79a8ff");
50: user_pref("ui.textSelectAttentionBackground", "#d0bc00");
51: user_pref("ui.textScaleFactor", 150);

userChrome

 1: /* Needs toolkit.legacyUserProfileCustomizations.stylesheets true */
 2: @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
 3: * {font-size: 12pt !important ; font-family: "Sarasa Fixed SC" !important ;}
 4: 
 5: :-moz-any(#content,#appcontent) browser{
 6:     margin-right:-10px!important;
 7:     overflow-y:scroll;
 8:     margin-bottom:-5px!important;
 9:     overflow-x:scroll;}
10: 
11: #tabbrowser-tabpanels { background: var(--toolbar-bgcolor) !important; }
12: #forward-button { display:none !important; }
13: browser { background-color: #000000 !important; }

GTK-Themen

Settings.ini

 1: [Settings]
 2: gtk-application-prefer-dark-theme=1
 3: gtk-key-theme-name = Emacs
 4: gtk-theme-name = advendi
 5: gtk-font-name = Sarsa Gothic 14
 6: 
 7: [Settings]
 8: gtk-application-prefer-dark-theme=1
 9: gtk-key-theme-name = Emacs
10: gtk-theme-name = advendi
11: gtk-font-name = Sarsa Gothic 14

gtkrc-2.0

1: gtk-key-theme-name = "Emacs"
2: gtk-theme-name = "advendi"
3: style "user-font" {
4: font_name="Sarsa Gothic 14"
5: }
6: widget_class "*" style "user-font"
7: gtk-font-name = "Sarsa Gothic 14"

gtk Filechooser

 1: [Filechooser Settings]
 2: LocationMode=path-bar
 3: ShowHidden=false
 4: ShowSizeColumn=true
 5: GeometryX=812
 6: GeometryY=435
 7: GeometryWidth=1256
 8: GeometryHeight=882
 9: SortColumn=name
10: SortOrder=ascending
11: StartupMode=cwd

gtk3 Settings

1: [Settings]
2: gtk-application-prefer-dark-theme=1
3: gtk-key-theme-name = Emacs
4: gtk-theme-name = advendi
5: gtk-font-name = Sarsa Gothic 14

gtk4 Settings

1: [Settings]
2: gtk-application-prefer-dark-theme=1
3: gtk-key-theme-name = Emacs
4: gtk-theme-name = advendi
5: gtk-font-name = Sarsa Gothic 14

Messaging

Pantalaimon

1: [local-matrix]
2: Homeserver = https://matrix.org:443
3: ListenAddress = localhost
4: ListenPort = 8009

Bash

Bashrc

First lets set some sane defaults for Bash's Shelloptions:

 1: # Do not overwrite files when redirecting stout, force it with ">|" if nedded.
 2: set -o noclobber
 3: # Of course we want those type of keybindings
 4: set -o emacs
 5: 
 6: # expand aliases when a command is read (quirky, read manual)
 7: shopt -s expand_aliases
 8: 
 9: # small overhead, big window!:
10: shopt -s checkwinsize
11: 
12: # recursive globbing
13: shopt -s globstar 2> /dev/null
14: 
15: # append history, do not overwrite
16: shopt -s histappend
17: 
18: # Store multi-line commands as one
19: shopt -s cmdhist
20: 
21: # cd by dirname only and other fast-cd features 
22: shopt -s autocd 2> /dev/null
23: shopt -s dirspell 2> /dev/null
24: shopt -s cdspell 2> /dev/null
25: shopt -s cdable_vars

Next up some Readline-Magic™ is required.

 1: # Be case sensitive on a "case by case" basis.
 2: bind "set completion-ignore-case on"
 3: bind "set completion-map-case on"
 4: 
 5: # be verbose
 6: bind "set show-all-if-ambiguous on"
 7: 
 8: # enable marking of directories in the directory stack when navigating using tab completion
 9: bind "set mark-symlinked-directories on"
10: 
11: # bind the Arrow keys to search through the command history
12: bind '"\e[A": history-search-backward'
13: bind '"\e[B": history-search-forward'
14: 
15: # bind the Arrow keys to move by a single character
16: bind '"\e[C": forward-char'
17: bind '"\e[D": backward-char'
18: 
19: # Insert the last-used command via "space"
20: bind Space:magic-space
1: 
2: # populate the history with some usefull commands
3: history -n ${XDG_CONFIG_HOME}/bash_functions

On interactive (e.g. login) shells source guix profile and if its tty1 start GUI.

 1: [[ $- != *i* ]] && return # Only execute if called interactively
 2: 
 3: if [ -n "$GUIX_ENVIRONMENT" ]; then
 4:     if [[ $PS1 =~ (.*)"\\$" ]]; then
 5:         PS1="${BASH_REMATCH[1]} [env]\\\$ "
 6:     fi
 7: fi
 8: 
 9: # The following code starts GNOME on login.
10: # A cheatsheet for the GNOME Shell can be found here: https://wiki.gnome.org/Projects/GnomeShell/CheatSheet
11: # if [[ -z $DISPLAY && $XDG_SESSION_TYPE == tty ]]; then
12: #     MOZ_ENABLE_WAYLAND=1 QT_QPA_PLATFORM=wayland XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session
13: # fi
14: 
15: # The following code starts EXWM on login.
16: # but first lets run eat - bash integration:
17:   [ -n "$EAT_SHELL_INTEGRATION_DIR" ] && \
18:     source "$EAT_SHELL_INTEGRATION_DIR/bash"
19: # Now to  start emacs+exwm
20: if [[ -z $DISPLAY ]]; then #&& $XDG_SESSION_TYPE == tty && $(tty) == /dev/tty1 -> /dev/pts/0
21:     xinit -- ${HOME}/.guix-home/profile/bin/Xorg :0 vt${XDG_VTNR} -keeptty -configdir ${HOME}/.guix-home/profile/share/X11/xorg.conf.d -modulepath ${HOME}/.guix-home/profile/lib/xorg/modules &>/dev/null
22: fi
23: 
24: 

Bashlogout

1: # try clearing history
2: history -c
3: # clear the console when leaving
4: if [ "$SHLVL" = 2 ]; then
5:     [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
6: fi

Bashprofile

1: . ~/.profile 
2: if [ -f ~/.bashrc ]; then
3:     . ~/.bashrc
4: fi

Bashfunctions

 1: cat ./waitlist.org | xargs -n 1 -P 5 wget -c
 2: ssh root@prolet.dynv6.net
 3: ssh root@prolet.suschem.ist
 4: su -
 5: ip a
 6: ps -aux | grep
 7: killall
 8: kill -9
 9: su -c ""
10: monero-wallet-cli
11: monerod
12: pactl info
13: git push
14: git clone git@
15: pushd
16: popd
17: sudo ntfsfix -d /dev/sda1
18: sudo mount /dev/sda1 /mnt
19: cd /mnt/Windows/System32/config
20: ls -a | grep -i sam
21: chntpw -l SAM
22: chntpw -u Wartung SAM
23: chntpw -u 01f4 SAM
24: git push --all
25: git init --bare ~/dots
26: git submodule update --remote --merge
27: gimp -i -b "(batch-rotate90 \"*.jpg\")" -b "(gimp-quit 0)"
28: ./fastboot devices
29: ./fastboot flash boot ~/boot.img
30: git remote add origin git@codeberg.org:Schroedinger50PCT/dots.git
31: git checkout master
32: git checkout main
33: git checkout origin/main
34: git add .
35: git diff
36: git fetch
37: git status
38: git push -u origin main
39: git submodule add https://codeberg.org/Schroedinger50PCT/dots dots
40: git submodule foreach git pull origin master
41: git submodule foreach git pull origin main
42: git submodule update --init --recursive --remote
43: gpg --with-keygrip -k
44: gpg --full-keygen
45: ssh-keygen -e -f
46: export TERM=xterm-color
47: echo low | tee /sys/bus/pci/drivers/amdgpu/0000:0?:00.0/power_dpm_force_performance_level
48: echo high | tee /sys/bus/pci/drivers/amdgpu/0000:0?:00.0/power_dpm_force_performance_level
49: pass
50: pass open
51: pass close
52: qrencode -s 32 -l H -m 0 -o qr.png input
53: qrencode -s 32 -l H -m 0 -o qr_blog.suschem.ist_url.svg "blog.suschem.ist"
54: chmod +x
55: iKMcli totp --help
56: halt
57: shutdown
58: guix pull
59: gpgconf --launch gpg-agent
60: pass --insert
61: guix search
62: guix package -u
63: guix home search
64: guix remove
65: ls -ao
66: herd status
67: guix home reconfigure ~/dots/home.scm 
68: guix pull ; guix package -u
69: . .config/guix/current/etc/profile 
70: hash guix
71: su -c "guix archive --authorize < /home/macfag/key.txt"
72: guix version
73: guix describe
74: guix refresh
75: guix home list-generations
76: guix home build ~/dots/home.scm
77: guix home switch-generation 54
78: guix home describe
79: shutdown -r now
80: shutdown 
81: shutdown now
82: su -c "halt"
83: guix upgrade
84: guix home gc
85: guix home delete-generations
86: guix home import 
87: guix home reconfigure dots/export/home.scm --allow-downgrades --fallback --no-substitutes

X11

Xdefaults

1: XTerm*utf8: always
2: XTerm*metaSendsEscape: true

Xresources

  1: ##
  2: # Part of a full "MacOS on Gnome X experience setting"
  3: # Here we control general clickpad behaviour. Also requires Daemon to run, see general readme.
  4: # Requires Fusuma https://github.com/iberianpig/fusuma, xdotool
  5: # Other settings and controls done with:
  6: # libinput-three-finger-gestures https://github.com/marsqing/libinput-three-finger-drag
  7: # syngestures https://github.com/mqudsi/syngesture/issues (only if you truly need two-finger history navigation)
  8: # synaptics https://wiki.archlinux.org/title/Touchpad_Synaptics
  9: # Kinto https://github.com/rbreaves/kinto
 10: # Xorg
 11: #
 12: # Place of this file:
 13: # /etc/X11/xorg.conf.d
 14: ##
 15: Section "InputClass"
 16: Identifier "touchpad catchall"
 17: Driver "synaptics"
 18: MatchIsTouchpad "on"
 19: # This option is recommend on all Linux systems using evdev, but cannot be
 20: # enabled by default. See the following link for details:
 21: # http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
 22: MatchDevicePath "/dev/input/event*"
 23: EndSection
 24: 
 25: Section "InputClass"
 26: Identifier "touchpad ignore duplicates"
 27: MatchIsTouchpad "on"
 28: MatchOS "Linux"
 29: MatchDevicePath "/dev/input/mouse*"
 30: Option "Ignore" "on"
 31: EndSection
 32: 
 33: # This option enables the bottom right corner to be a right button on clickpads
 34: # and the right and middle top areas to be right / middle buttons on clickpads
 35: # with a top button area.
 36: # This option is only interpreted by clickpads.
 37: Section "InputClass"
 38: Identifier "Default clickpad buttons"
 39: MatchDriver "synaptics"
 40: Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
 41: Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
 42: EndSection
 43: 
 44: # This option disables software buttons on Apple touchpads.
 45: # This option is only interpreted by clickpads.
 46: Section "InputClass"
 47: Identifier "Disable clickpad buttons on Apple touchpads"
 48: MatchProduct "Apple|bcm5974"
 49: MatchDriver "synaptics"
 50: Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
 51: EndSection
 52: 
 53: Section "InputClass"
 54: Identifier "touchpad"
 55: Driver "synaptics"
 56: MatchIsTouchpad "on"
 57: Option "FingerLow" "1"
 58: Option "FingerHigh" "2"
 59: Option "MaxTapTime" "500"
 60: Option "MaxTapMove" "250"
 61: Option "MaxDoubleTapTime" "250"
 62: Option "ClickTime" "1"
 63: Option "ClickPad" "0"
 64: Option "VertEdgeScroll" "0"
 65: Option "HorizEdgeScroll" "0"
 66: Option "CornerCoasting" "0"
 67: Option "VertTwoFingerScroll" "1"
 68: Option "HorizTwoFingerScroll" "1"
 69: Option "VertScrollDelta" "-666"
 70: Option "HorizScrollDelta" "-666"
 71: Option "MinSpeed" "1"
 72: Option "MaxSpeed" "12"
 73: Option "AccelFactor" "0.01"
 74: Option "PressureMotionMinZ" "1"
 75: Option "PressureMotionMaxZ" "99999999"
 76: Option "HorizHysteresis" "13"
 77: Option "VertHysteresis" "13"
 78: Option "EmulateMidButtonTime" "0"
 79: Option "TouchpadOff" "0"
 80: Option "LockedDrags" "0"
 81: Option "LockedDragTimeout" "0"
 82: Option "RTCornerButton" "0"
 83: Option "RBCornerButton" "0"
 84: Option "LTCornerButton" "0"
 85: Option "LBCornerButton" "0"
 86: Option "TapButton1" "1"
 87: Option "TapButton2" "3"
 88: Option "TapButton3" "0"
 89: Option "ClickFinger1" "1"
 90: Option "ClickFinger2" "3"
 91: Option "ClickFinger3" "0"
 92: Option "CircularScrolling" "0"
 93: Option "CircularaPad" "0"
 94: Option "PalmDetect" "1"
 95: Option "PalmMinWidth" "10"
 96: Option "PalmMinZ" "1"
 97: Option "CoastingSpeed" "1"
 98: Option "CoastingFriction" "25"
 99: Option "SingleTapTimeout" "0"
100: Option "GrabEventDevice" "0"
101: Option "TapAndDragGesture" "0"
102: Option "AreaLeftEdge" "-5000"
103: Option "AreaRightEdge" "5000"
104: Option "AreaTopEdge" "10"
105: Option "Capabilities" "1 0 0 1 1 1 1"
106: EndSection
107: 
108: ! Xcursor
109: ! See: https://github.com/ful1e5/XCursor-pro
110: Xcursor.theme: Adwaita
111: Xcursor.size: 32
112: ! 24
113: ! XTerm
114: ! Fonts
115: XTerm*XftFont: Sarasa Term SC:size=12:antialias=true:style=Regular
116: ! Set the terminal fonts
117: XTerm*vt100.faceName: Sarasa Term SC:size=12:antialias=true:style=Regular
118: XTerm*vt100.boldFont: Sarasa Term SC:size=12:antialias=true:style=Bold
119: 
120: ! Color Theme: Molokai
121: ! Ref: https://www.futurile.net/2016/06/15/xterm-256color-themes-molokai-terminal-theme/
122: ! Colours are in groups as the second one should be a brighter version.
123: 
124: ! Background: black, dark grey
125: #define _background #000000
126: #define _color8 #303030
127: 
128: ! Color1/foreground: light grey: standard files, cursor
129: ! Color9: bright pink: soft link e.g. ln -s test1 imaginarytest
130: #define _foreground #d0d0d0
131: #define _color9 #ff0090
132: 
133: ! Color2: dark green: world read/write dir e.g. /tmp
134: ! Color10: bright green: binaries user can execute /bin
135: #define _color2 #66AA11
136: #define _color10 #80FF00
137: 
138: ! Color3: medium brown: fifo e.g mkfifo fifotest
139: ! Color11: light brown/sand: block special files e.g ls -l /dev/loop0
140: #define _color3 #c47f2c
141: #define _color11 #ffba68
142: 
143: ! Color4: medium blue
144: ! Color12: light blue: directory
145: #define _color4 #30309b
146: #define _color12 #5f5fee
147: 
148: ! Color5: dark purple: Not used in ls, in ranger (not sure where it gets it colors from though)
149: ! Color13: light purple: socket file /var/run/dbus_system_bus_socket
150: #define _color5 #7e40a5
151: #define _color13 #bb88dd
152: 
153: ! Color6: medium magenta
154: ! Color14: light magenta: symbolic links e.g. ~/Examples /bin/lsmod
155: #define _color6 #3579A8
156: #define _color14 #4eb4fa
157: 
158: ! Color7: medium grey: setuid file e.g. /usr/bin/sudo
159: ! Color15: light grey: background color for setuid files e.g /usr/bin/sudo
160: #define _color7 #9999AA
161: ! Trying white in case it helps
162: #define _color15 #ffffff
163: !#define _color15 #d0d0d0
164: 
165: ! General - covering all X clients
166: !*background: _background
167: !*foreground: _foreground
168: ! Not sure what this one does - Solarise had it at base3
169: !*fadeColor: XXX ! Not sure what this does
170: 
171: ! XTerm specific
172: xterm*background: _background
173: xterm*foreground: _foreground
174: 
175: ! Not really required - XTerm defaults to using the foreground colour
176: xterm*cursorColor: _foreground
177: 
178: xterm*color0: _background
179: xterm*color1: _foreground
180: xterm*color2: _color2
181: xterm*color3: _color3
182: xterm*color4: _color4
183: xterm*color5: _color5
184: xterm*color6: _color6
185: xterm*color7: _color7
186: ! 8-15 are considered brighter colours of 1-7
187: xterm*color8: _color8
188: xterm*color9: _color9
189: xterm*color10: _color10
190: xterm*color11: _color11
191: xterm*color12: _color12
192: xterm*color13: _color13
193: xterm*color14: _color14
194: xterm*color15: _color15
195: Xcursor.theme: Adwaita
196: Xcursor.size: 24
197: ! 16 24 48 64 
198: *background: #000000

Xinitrc

 1: xrdb -load $HOME/.Xresources
 2: xhost +SI:localuser:$USER
 3: xsetroot -cursor_name left_ptr
 4: xset r rate 200 60
 5: xset s off -dpms
 6: # picom -b --dbus --vsync --backend glx &
 7: # $HOME/.guix-home/profile/libexec/xscreensaver/glmatrix --delay 0 --speed 3.484 --no-rotate & 
 8: # --eval='(message "%s" (emacs-init-time))'
 9: # emacs --daemon --eval "(require 'exwm)" -f exwm-enable
10: # exec dbus-launch --exit-with-session emacsclient -c --no-wait --eval "(exwm-workspace-switch 1 t)"
11: exec dbus-launch --exit-with-session emacs --debug-init --eval "(require 'exwm)(exwm-enable)(exwm-workspace-switch 1 t)"

IsSussy

Auf sussy files prüfen (SUID,SGID,faulty permissions).

1: find / -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print ; find / -xdev \( -nouser -o -nogroup \) -print ; find / \( -perm -4000 -o -perm -2000 \) -print ; find / -path -prune -o -type f -perm +6000 -ls

ZRAM

zram-start

1: #!/bin/sh
2: modprobe zram
3: SIZE=8192
4: echo $(($SIZE*1024*4*1024)) > /sys/block/zram0/disksize
5: mkswap /dev/zram0
6: swapon /dev/zram0 -p 10

zram-stop

1: #!/bin/sh
2: swapoff /dev/zram0
3: echo 1 > /sys/block/zram0/reset
4: modprobe -r zram

Themen

Im Verzeichnis "themes" befinden sich die Gtk-Themen Aderandi (Hell) und Advendi (Pechschwarz).
Sie wurden aus dem 5.2 Release von adw-gtk3 und den Modus Themen von Protesilaus zusammen gebastelt.

css Thema für modus-vivendi

Dises css Thema versucht modus-vivendi mit sakura-dark zu vereinen.

Body

 1: html {
 2:     font-size: 62.5%;
 3:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term", Roboto, "Iosevka Term", Arial, "Iosevka Term", sans-serif;
 4: }
 5: 
 6: body {
 7:     font-size: 1.8rem;
 8:     line-height: 1.618;
 9:     max-width: 95%;
10:     margin: 0 auto;
11:     /* margin: auto; */
12:     color: #ffffff;
13:     background-color: #000000;
14:     /* background: url(media/bg_zimbelkraut.png); 
15:     background-repeat: no-repeat;
16:     background-attachment: fixed;
17:     background-size: cover; */
18:     padding: 13px;
19: }

Fonts

Meine neue lieblingsfont Sarasa Gothic bzw Iosevka.

 1: 
 2:   @font-face {
 3:     font-display: swap;
 4:     font-family: 'Iosevka Term';
 5:     src: url('/media/fonts/IosevkaTerm-Regular.woff2') format("woff2");
 6: }
 7: 
 8: @font-face {
 9:     font-display: swap;
10:     font-family: 'Iosevka Term Italic';
11:     src: url('/media/fonts/IosevkaTerm-Italic.woff2') format("woff2");
12: }
13: 
14: @font-face {
15:     font-display: swap;
16:     font-family: 'Iosevka Term Bold';
17:     src: url('/media/fonts/IosevkaTerm-Bold.woff2') format("woff2");
18: }
19: 
20:   /* @font-face { */
21:   /*   font-display: swap; */
22:   /*   font-family: 'Iosevka Term Bold Italic'; */
23:   /*   src: url('media/fonts/IosevkaTermSC-BoldItalic.ttf') format("truetype"); */
24:   /* } */

Responsiveness

The following @media statements make the webpage responsive, i.e. ensure that the page looks great no matter on which device it is viewed.

  1: @media (min-width: 10001px) {
  2:     body {
  3:         font-size: 9rem;
  4:         line-height: 1.9;
  5:     }
  6:     img {
  7:         min-width: 600px;
  8:         max-width: 100%;
  9:     }
 10: }
 11: @media (max-width: 10000px) {
 12:     /* Its Over 9000!!! */
 13:     body {
 14:         font-size: 8rem;
 15:         line-height: 1.5;
 16:     }
 17:     img {
 18:         max-width: 100%;
 19:         min-width: 300px;
 20: 
 21:     }
 22: }
 23: @media (max-width: 9000px) {
 24:     body {
 25:         font-size: 7rem;
 26:         line-height: 1.5;
 27:     }
 28:     img {
 29:         max-width: 100%;
 30:         min-width: 300px;
 31: 
 32:     }
 33: 
 34:     @media (max-width: 8000px) {
 35:         body {
 36:             font-size: 6rem;
 37:             line-height: 1.5;
 38:         }
 39:         img {
 40:             max-width: 100%;
 41:             min-width: 300px;
 42: 
 43:         }
 44:     }
 45: 
 46:     @media (max-width: 7000px) {
 47:         body {
 48:             font-size: 5.5rem;
 49:             line-height: 1.5;
 50:         }
 51:         img {
 52:             max-width: 100%;
 53:             min-width: 300px;
 54: 
 55:         }
 56:     }
 57: 
 58:     @media (max-width: 6000px) {
 59:         body {
 60:             font-size: 5rem;
 61:             line-height: 1.5;
 62:         }
 63:         img {
 64:             max-width: 100%;
 65:             min-width: 300px;
 66: 
 67:         }
 68:     }
 69: 
 70:     @media (max-width: 5000px) {
 71:         body {
 72:             font-size: 4rem;
 73:             line-height: 1.5;
 74:         }
 75:         img {
 76:             max-width: 100%;
 77:             min-width: 300px;
 78: 
 79:         }
 80:     }
 81: 
 82:     @media (max-width: 4000px) {
 83:         body {
 84:             font-size: 3rem;
 85:             line-height: 1.5;
 86:         }
 87:         img {
 88:             max-width: 100%;
 89:             min-width: 300px;
 90:         }
 91:     }
 92: 
 93:     @media (max-width: 3000px) {
 94:         body {
 95:             font-size: 2.5rem;
 96:             line-height: 1.5;
 97:         }
 98:         img {
 99:             max-width: 100%;
100:             min-width: 150px;
101:         }
102:     }
103: 
104:     @media (max-width: 2000px) {
105:         body {
106:             font-size: 2rem;
107:             line-height: 1.5;
108:         }
109:         img {
110:             max-width: 100%;
111:             min-width: 150px;
112:         }
113:     }
114: 
115:     @media (max-width: 1800px) {
116:         body {
117:             font-size: 1.5rem;
118:             line-height: 1.5;
119:         }
120:         img {
121:             max-width: 100%;
122:             min-width: 120px;
123:         }
124:     }
125: 
126:     @media (max-width: 1000px) {
127:         body {
128:             font-size: 1.35rem;
129:             line-height: 1.5;
130:         }
131: 
132:         img {
133:             min-width: 120px;
134:             max-width: 100%;
135:         }
136:     }
137: 
138:     @media (max-width: 850px) {
139:         body {
140:             font-size: 1.35rem;
141:             line-height: 1.5;
142:         }
143: 
144:         img {
145:             min-width: 120px;
146:             max-width: 100%;
147:         }
148:     }
149: 
150:     @media (max-width: 500px) {
151:         body {
152:             font-size: 1.2rem;
153:             line-height: 1.5;
154:         }
155:         img {
156:             max-width: 100%;
157:             min-width: 120px;
158:         }
159:     }
160: 
161:     @media (max-width: 300px) {
162:         body {
163:             font-size: 1rem;
164:             line-height: 1.7;
165:         }
166:         img {
167:             max-width: 100%;
168:             min-width: 100px;
169:         }
170:     }
171: 

Headings

 1: top, h1, h2, h3, h4, h5, h6 {
 2:     line-height: 1.1;
 3:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term", Roboto, "Iosevka Term", Arial, "Iosevka Term", sans-serif;
 4:     font-weight: 700;
 5:     margin-top: 3rem;
 6:     margin-bottom: 1.5rem;
 7:     overflow-wrap: break-word;
 8:     word-wrap: break-word;
 9:     -ms-word-break: break-all;
10:     word-break: break-word;
11: }
12: 
13: top {
14:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term", Roboto, "Iosevka Term", Arial, "Iosevka Term", sans-serif;
15:     line-height: 1.5;
16:     font-size: 2em;
17:     font-weight: 300;
18: 
19:     margin-top: 3rem;
20:     margin-left: 0px;
21:     margin-right: 0px;
22:     margin-bottom: 2.5rem;
23: 
24:     padding-left: 2rem;
25:     padding-top: 0rem;
26:     padding-bottom: 0rem;
27:     padding-right: 2rem;
28: 
29:     border: 2px solid #ffffff;
30:     background-color: #00000099;
31:     border-radius:10px;
32: 
33:     overflow-wrap: break-word;
34:     word-wrap: break-word;
35:     -ms-word-break: break-all;
36:     word-break: break-word;
37: }
38: 
39: h1 {
40:     font-size: 2.35em;
41: }
42: 
43: h2 {
44:     font-size: 2em;
45: }
46: 
47: h3 {
48:     font-size: 1.75em;
49: }
50: 
51: h4 {
52:     font-size: 1.5em;
53: }
54: 
55: h5 {
56:     font-size: 1.25em;
57: }
58: 
59: h6 {
60:     font-size: 1em;
61: }
62: 
63: p {
64:     margin-top: 0px;
65:     margin-bottom: 2.5em;
66: }
67: 
68: small, sub, sup {
69:     font-size: 75%;
70: }
71: 
72: hr {
73:     border-color: #ffffff;
74: }

Links

 1: a {
 2:     color: #00bcff;
 3:     background-color: inherit;
 4:     font: inherit;
 5:     text-decoration: inherit;
 6: }
 7: a:visited {
 8:     color: #00bcff;
 9:     /* #feacd0; */
10: }
11: a:hover {
12:     text-decoration: underline;
13:     color: #00bcff;
14: }
15: 
16: todo TODO {
17:     text-decoration: none;
18:     color: #ff00ff;                 
19: }
20: 
21: ul {
22:     padding-left: 1em;
23:     margin-top: 0px;
24:     margin-bottom: 2.5rem;
25: }
26: 
27: li {
28:     margin-bottom: 0.4em;
29: }
30: 
31: blockquote {
32:     margin-left: 1px;
33:     margin-right: 1px;
34:     padding-left: 1em;
35:     padding-top: 0.8rem;
36:     padding-bottom: 0.8rem;
37:     padding-right: 0.8em;
38:     border: 2px solid #989898;
39:     margin-bottom: 2.5rem;
40:     background-color: #00000099;
41:     border-radius:10px;
42: }
43: 
44: blockquote p {
45:     margin-bottom: 0;
46: }
47: 
48: .gototop:link, .gototop:visited, .gototop:hover, .gototop:active, .gototop {
49:     position: fixed;
50:     bottom: 20px;
51:     float: right;
52:     right: 20px;
53:     white-space: nowrap;
54:     background-color: #00000099; 
55:     padding: 2px 6px 2px 6px;
56:     border-top: 1px solid #fff;
57:     border-right: 1px solid #fff;
58:     border-bottom: 1px solid #fff;
59:     border-left: 1px solid #fff;
60:     border-radius: 3px;
61:     z-index: 2;
62:     font-size: 2em;
63: }

Video

 1: /* img:hover { */
 2: /*   opacity: 0.1; */
 3: /* } */
 4: .video-wrapper {
 5:     object-fit: cover;
 6:     height: 100%;
 7:     width: 100%;
 8: 
 9:     position: fixed;
10:     top: 0;
11:     left: 0;
12:     z-index: -1;
13: 
14: }
15: 
16: img, audio{
17:     margin-top: 0px;
18:     margin-bottom: 2.5rem;
19:     display: inline-block;
20:     text-align: center;
21: }
22: 
23: audio:not([controls]) {
24:     display: none;
25:     height: 0;
26: }
27: 
28: svg:not(:root) {
29:     overflow: hidden;
30: }

Tables

 1: table,
 2: table thead,
 3: table thead tr,
 4: table thead tr th,
 5: table colgroup,
 6: table > * {
 7:     text-align: justify;
 8:     text-justify: inter-word;
 9:     border-spacing:0;
10:     border-style: none;
11:     border-collapse: collapse;
12: }
13: 
14: table {
15:     text-align: left;
16:     /* justify */
17:     width: 100%;
18:     border-collapse: collapse;
19: }
20: 
21: th {
22:     text-align: left;
23: }
24: 
25: th, td {
26:     padding: 0em 0em;
27:     border-bottom: 1px solid #1e1e1e;
28: }

Buttons, forms and input

 1: input, textarea {
 2:     border: 1px solid #ffffff;
 3: }
 4: input:focus, textarea:focus {
 5:     border: 1px solid #ffffff;
 6: }
 7: 
 8: textarea {
 9:     width: 100%;
10: }
11: 
12: .button, button, input[type=submit], input[type=reset], input[type=button] {
13:     display: inline-block;
14:     padding: 5px 10px;
15:     text-align: center;
16:     text-decoration: none;
17:     white-space: nowrap;
18:     background-color: #1e1e1e99;
19:     color: #fff;
20:     border-radius: 5px;
21:     border: 2px solid #fff;
22:     cursor: pointer;
23:     box-sizing: border-box;
24:     outline: #333 solid 1px;
25: }
26: .button[disabled], button[disabled], input[type=submit][disabled], input[type=reset][disabled], input[type=button][disabled] {
27:     cursor: default;
28:     opacity: 0.5;
29: }
30: .button:hover:enabled, button:hover:enabled, input[type=submit]:hover:enabled, input[type=reset]:hover:enabled, input[type=button]:hover:enabled {
31:     background-color: #000;
32:     border-color: #fff;
33:     color: #fff;
34:     outline: #333 solid 1px;
35: }
36: 
37: .button:focus:enabled, button:focus:enabled, input[type=submit]:focus:enabled, input[type=reset]:focus:enabled, input[type=button]:focus:enabled, {
38:     outline: none;
39: }
40: 
41: textarea, select, input {
42:     color: #989898;
43:     padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
44:     margin-bottom: 10px;
45:     background-color: #1e1e1e;
46:     border: 1px solid #1e1e1e;
47:     border-radius: 4px;
48:     box-shadow: none;
49:     box-sizing: border-box;
50: }
51: 
52: textarea:focus, select:focus, input:focus {
53:     border: 1px solid #ffffff;
54:     outline: 0;
55: }
56: 
57: input[type=checkbox]:focus {
58:     outline: 1px dotted #ffffff;
59: }
60: 
61: label, legend, fieldset {
62:     display: block;
63:     margin-bottom: 0.5rem;
64:     font-weight: 600;
65: }
66: .figure-number, .table-number, .section-number {
67:     display: none;
68: }
69: 
70: .ol-org {
71:     list-style-position: inside;
72: }
73: 
74: .org-src-container {
75:     width: 100%;
76:     white-space: nowrap;
77:     position: relative;
78:     overflow-x:scroll;
79:     overflow-y:hidden;
80: }

Htmlize

The following was mostly outputed like this by org-html-htmlize-generate-css

   1: .src{
   2:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term", Roboto, "Iosevka Term", Arial, "Iosevka Term", sans-serif;
   3: }
   4: 
   5: .org-abbrev-table-name {
   6:     /* abbrev-table-name */
   7:     color: #feacd0;
   8: }
   9: .org-ansi-color-black {
  10:     /* ansi-color-black */
  11:     color: #000000;
  12:     background-color: #000000;
  13: }
  14: .org-ansi-color-blue {
  15:     /* ansi-color-blue */
  16:     color: #2fafff;
  17:     background-color: #2fafff;
  18: }
  19: .org-ansi-color-bold {
  20:     /* ansi-color-bold */
  21:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
  22: }
  23: .org-ansi-color-bright-black {
  24:     /* ansi-color-bright-black */
  25:     color: #595959;
  26:     background-color: #595959;
  27: }
  28: .org-ansi-color-bright-blue {
  29:     /* ansi-color-bright-blue */
  30:     color: #79a8ff;
  31:     background-color: #79a8ff;
  32: }
  33: .org-ansi-color-bright-cyan {
  34:     /* ansi-color-bright-cyan */
  35:     color: #6ae4b9;
  36:     background-color: #6ae4b9;
  37: }
  38: .org-ansi-color-bright-green {
  39:     /* ansi-color-bright-green */
  40:     color: #00c06f;
  41:     background-color: #00c06f;
  42: }
  43: .org-ansi-color-bright-magenta {
  44:     /* ansi-color-bright-magenta */
  45:     color: #b6a0ff;
  46:     background-color: #b6a0ff;
  47: }
  48: .org-ansi-color-bright-red {
  49:     /* ansi-color-bright-red */
  50:     color: #ef8b50;
  51:     background-color: #ef8b50;
  52: }
  53: .org-ansi-color-bright-white {
  54:     /* ansi-color-bright-white */
  55:     color: #ffffff;
  56:     background-color: #ffffff;
  57: }
  58: .org-ansi-color-bright-yellow {
  59:     /* ansi-color-bright-yellow */
  60:     color: #c0c530;
  61:     background-color: #c0c530;
  62: }
  63: .org-ansi-color-cyan {
  64:     /* ansi-color-cyan */
  65:     color: #00d3d0;
  66:     background-color: #00d3d0;
  67: }
  68: .org-ansi-color-green {
  69:     /* ansi-color-green */
  70:     color: #44bc44;
  71:     background-color: #44bc44;
  72: }
  73: .org-ansi-color-italic {
  74:     /* ansi-color-italic */
  75:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
  76: }
  77: .org-ansi-color-magenta {
  78:     /* ansi-color-magenta */
  79:     color: #feacd0;
  80:     background-color: #feacd0;
  81: }
  82: .org-ansi-color-red {
  83:     /* ansi-color-red */
  84:     color: #ff8059;
  85:     background-color: #ff8059;
  86: }
  87: .org-ansi-color-slow-blink {
  88: }
  89: .org-ansi-color-underline {
  90:     /* ansi-color-underline */
  91:     text-decoration: underline;
  92: }
  93: .org-ansi-color-white {
  94:     /* ansi-color-white */
  95:     color: #a6a6a6;
  96:     background-color: #a6a6a6;
  97: }
  98: .org-ansi-color-yellow {
  99:     /* ansi-color-yellow */
 100:     color: #d0bc00;
 101:     background-color: #d0bc00;
 102: }
 103: .org-battery-load-critical {
 104:     /* battery-load-critical */
 105:     color: #ff8059;
 106:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 107: }
 108: .org-battery-load-low {
 109:     /* battery-load-low */
 110:     color: #d0bc00;
 111:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 112: }
 113: .org-bold {
 114:     /* bold */
 115:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 116: }
 117: .org-bookmark {
 118:     /* bookmark-face */
 119:     color: #ffffff;
 120:     background-color: #004f8f;
 121: }
 122: .org-bookmark-menu-bookmark {
 123:     /* bookmark-menu-bookmark */
 124:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 125: }
 126: .org-border {
 127: }
 128: .org-bracket {
 129: }
 130: .org-browse-url-button {
 131:     /* browse-url-button */
 132:     color: #00bcff;
 133:     text-decoration: underline;
 134: }
 135: .org-buffer-menu-buffer {
 136:     /* buffer-menu-buffer */
 137:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 138: }
 139: .org-builtin {
 140:     /* font-lock-builtin-face */
 141:     color: #f78fe7;
 142: }
 143: .org-button {
 144:     /* button */
 145:     color: #00bcff;
 146:     text-decoration: underline;
 147: }
 148: .org-calc-nonselected {
 149:     /* calc-nonselected-face */
 150:     color: #a8a8a8;
 151:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
 152: }
 153: .org-calc-selected {
 154:     /* calc-selected-face */
 155:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 156: }
 157: .org-calendar-month-header {
 158:     /* calendar-month-header */
 159:     color: #ffffff;
 160:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 161: }
 162: .org-calendar-today {
 163:     /* calendar-today */
 164:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 165:     text-decoration: underline;
 166: }
 167: .org-calendar-weekday-header {
 168:     /* calendar-weekday-header */
 169:     color: #93959b;
 170: }
 171: .org-calendar-weekend-header {
 172:     /* calendar-weekend-header */
 173:     color: #ffa0a0;
 174: }
 175: .org-child-frame-border {
 176:     /* child-frame-border */
 177:     background-color: #646464;
 178: }
 179: .org-comint-highlight-input {
 180:     /* comint-highlight-input */
 181:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 182: }
 183: .org-comint-highlight-prompt {
 184:     /* comint-highlight-prompt */
 185:     color: #6ae4b9;
 186: }
 187: .org-comment {
 188:     /* font-lock-comment-face */
 189:     color: #a8a8a8;
 190: }
 191: .org-comment-delimiter {
 192:     /* font-lock-comment-delimiter-face */
 193:     color: #a8a8a8;
 194: }
 195: .org-compilation-column-number {
 196:     /* compilation-column-number */
 197:     color: #f8dec0;
 198: }
 199: .org-compilation-error {
 200:     /* compilation-error */
 201:     color: #ff8059;
 202: }
 203: .org-compilation-info {
 204:     /* compilation-info */
 205:     color: #c6eaff;
 206: }
 207: .org-compilation-line-number {
 208:     /* compilation-line-number */
 209:     color: #f8dec0;
 210: }
 211: .org-compilation-mode-line-exit {
 212:     /* compilation-mode-line-exit */
 213:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 214: }
 215: .org-compilation-mode-line-fail {
 216:     /* compilation-mode-line-fail */
 217:     color: #ffa7ba;
 218: }
 219: .org-compilation-mode-line-run {
 220:     /* compilation-mode-line-run */
 221:     color: #00d8b4;
 222: }
 223: .org-compilation-warning {
 224:     /* compilation-warning */
 225:     color: #c0c530;
 226: }
 227: .org-completions-annotations {
 228:     /* completions-annotations */
 229:     color: #90c4ed;
 230: }
 231: .org-completions-common-part {
 232:     /* completions-common-part */
 233:     color: #f78fe7;
 234:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 235: }
 236: .org-completions-first-difference {
 237:     /* completions-first-difference */
 238:     color: #2fafff;
 239:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 240: }
 241: .org-completions-group-separator {
 242:     /* completions-group-separator */
 243:     color: #a8a8a8;
 244:     text-decoration: line-through;
 245: }
 246: .org-completions-group-title {
 247:     /* completions-group-title */
 248:     color: #a8a8a8;
 249:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
 250: }
 251: .org-completions-highlight {
 252:     /* completions-highlight */
 253:     color: #ffffff;
 254:     background-color: #00415e;
 255: }
 256: .org-confusingly-reordered {
 257:     /* confusingly-reordered */
 258:     text-decoration: underline;
 259: }
 260: .org-constant {
 261:     /* font-lock-constant-face */
 262:     color: #00bcff;
 263: }
 264: .org-consult-async-failed {
 265:     /* consult-async-failed */
 266:     color: #ff8059;
 267:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 268: }
 269: .org-consult-async-finished {
 270:     /* consult-async-finished */
 271:     color: #44bc44;
 272:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 273: }
 274: .org-consult-async-running {
 275:     /* consult-async-running */
 276:     color: #2fafff;
 277:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 278: }
 279: .org-consult-async-split {
 280:     /* consult-async-split */
 281:     color: #f78fe7;
 282: }
 283: .org-consult-bookmark {
 284:     /* consult-bookmark */
 285:     color: #2fafff;
 286: }
 287: .org-consult-buffer {
 288: }
 289: .org-consult-file {
 290:     /* consult-file */
 291:     color: #c6eaff;
 292: }
 293: .org-consult-grep-context {
 294:     /* consult-grep-context */
 295:     color: #a8a8a8;
 296: }
 297: .org-consult-help {
 298:     /* consult-help */
 299:     color: #a8a8a8;
 300: }
 301: .org-consult-highlight-mark {
 302:     /* consult-highlight-mark */
 303:     color: #fbd6f4;
 304:     background-color: #392a48;
 305: }
 306: .org-consult-highlight-match {
 307:     /* consult-highlight-match */
 308:     color: #fbd6f4;
 309:     background-color: #392a48;
 310: }
 311: .org-consult-key {
 312:     /* consult-key */
 313:     color: #00bcff;
 314:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 315: }
 316: .org-consult-line-number {
 317:     /* consult-line-number */
 318:     color: #f8dec0;
 319: }
 320: .org-consult-line-number-prefix {
 321:     /* consult-line-number-prefix */
 322:     color: #93959b;
 323: }
 324: .org-consult-line-number-wrapped {
 325:     /* consult-line-number-wrapped */
 326:     color: #d0bc00;
 327: }
 328: .org-consult-narrow-indicator {
 329:     /* consult-narrow-indicator */
 330:     color: #f78fe7;
 331: }
 332: .org-consult-preview-insertion {
 333:     /* consult-preview-insertion */
 334:     color: #f8dec0;
 335:     background-color: #382f27;
 336: }
 337: .org-consult-preview-line {
 338:     /* consult-preview-line */
 339:     color: #f8dec0;
 340:     background-color: #382f27;
 341: }
 342: .org-consult-preview-match {
 343:     /* consult-preview-match */
 344:     color: #ffffff;
 345:     background-color: #874900;
 346: }
 347: .org-consult-separator {
 348:     /* consult-separator */
 349:     color: #333;
 350: }
 351: .org-cursor {
 352:     /* cursor */
 353:     background-color: #ffffff;
 354: }
 355: .org-custom-button {
 356:     /* custom-button */
 357:     background-color: #323232;
 358: }
 359: .org-custom-button-pressed {
 360:     /* custom-button-pressed */
 361:     background-color: #323232;
 362: }
 363: .org-custom-button-pressed-unraised {
 364:     /* custom-button-pressed-unraised */
 365:     color: #ee82ee;
 366:     text-decoration: underline;
 367: }
 368: .org-custom-button-unraised {
 369:     /* custom-button-unraised */
 370:     text-decoration: underline;
 371: }
 372: .org-custom-changed {
 373:     /* custom-changed */
 374:     color: #e0e6f0;
 375:     background-color: #00415e;
 376: }
 377: .org-custom-comment {
 378:     /* custom-comment */
 379:     color: #a8a8a8;
 380: }
 381: .org-custom-comment-tag {
 382:     /* custom-comment-tag */
 383:     color: #d3b55f;
 384:     background-color: #191a1b;
 385: }
 386: .org-custom-documentation {
 387: }
 388: .org-custom-face-tag {
 389:     /* custom-face-tag */
 390:     color: #4fafff;
 391:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 392: }
 393: .org-custom-group-subtitle {
 394:     /* custom-group-subtitle */
 395:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 396: }
 397: .org-custom-group-tag {
 398:     /* custom-group-tag */
 399:     color: #f78fe7;
 400:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 401: }
 402: .org-custom-group-tag-1 {
 403:     /* custom-group-tag-1 */
 404:     color: #f8dec0;
 405:     background-color: #382f27;
 406: }
 407: .org-custom-link {
 408:     /* custom-link */
 409:     color: #00bcff;
 410:     text-decoration: underline;
 411: }
 412: .org-custom-modified {
 413:     /* custom-modified */
 414:     color: #e0e6f0;
 415:     background-color: #00415e;
 416: }
 417: .org-custom-rogue {
 418:     /* custom-rogue */
 419:     color: #ffcaf0;
 420:     background-color: #71206a;
 421: }
 422: .org-custom-saved {
 423:     /* custom-saved */
 424:     text-decoration: underline;
 425: }
 426: .org-custom-set {
 427:     /* custom-set */
 428:     color: #79a8ff;
 429: }
 430: .org-custom-state {
 431:     /* custom-state */
 432:     color: #f5aa80;
 433: }
 434: .org-custom-themed {
 435:     /* custom-themed */
 436:     color: #e0e6f0;
 437:     background-color: #10387c;
 438: }
 439: .org-custom-variable-button {
 440:     /* custom-variable-button */
 441:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 442:     text-decoration: underline;
 443: }
 444: .org-custom-variable-obsolete {
 445:     /* custom-variable-obsolete */
 446:     color: #a8a8a8;
 447: }
 448: .org-custom-variable-tag {
 449:     /* custom-variable-tag */
 450:     color: #00d3d0;
 451: }
 452: .org-custom-visibility {
 453:     /* custom-visibility */
 454:     color: #00bcff;
 455:     font-size: 80%;
 456:     text-decoration: underline;
 457: }
 458: .org-default {
 459:     /* default */
 460:     color: #ffffff;
 461:     background-color: #000000;
 462: }
 463: .org-diary {
 464:     /* diary */
 465:     color: #00bcff;
 466:     background-color: #0f0e39;
 467: }
 468: .org-dired-async-failures {
 469:     /* dired-async-failures */
 470:     color: #ffa7ba;
 471:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 472: }
 473: .org-dired-async-message {
 474:     /* dired-async-message */
 475:     color: #34cfff;
 476:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 477: }
 478: .org-dired-async-mode-message {
 479:     /* dired-async-mode-message */
 480:     color: #00d8b4;
 481:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 482: }
 483: .org-dired-broken-symlink {
 484:     /* dired-broken-symlink */
 485:     color: #ff8059;
 486:     text-decoration: underline;
 487: }
 488: .org-dired-directory {
 489:     /* dired-directory */
 490:     color: #2fafff;
 491: }
 492: .org-dired-flagged {
 493:     /* dired-flagged */
 494:     color: #ff99aa;
 495:     background-color: #5a0000;
 496:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 497: }
 498: .org-dired-header {
 499:     /* dired-header */
 500:     color: #ffffff;
 501:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 502: }
 503: .org-dired-ignored {
 504:     /* dired-ignored */
 505:     color: #a8a8a8;
 506: }
 507: .org-dired-mark {
 508:     /* dired-mark */
 509:     color: #79a8ff;
 510:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 511: }
 512: .org-dired-marked {
 513:     /* dired-marked */
 514:     color: #60cfa2;
 515:     background-color: #002f2f;
 516:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 517: }
 518: .org-dired-perm-write {
 519:     /* dired-perm-write */
 520:     color: #f8dec0;
 521: }
 522: .org-dired-set-id {
 523:     /* dired-set-id */
 524:     color: #d0bc00;
 525: }
 526: .org-dired-special {
 527:     /* dired-special */
 528:     color: #00d3d0;
 529: }
 530: .org-dired-symlink {
 531:     /* dired-symlink */
 532:     color: #00d3d0;
 533:     text-decoration: underline;
 534: }
 535: .org-dired-warning {
 536:     /* dired-warning */
 537:     color: #d0bc00;
 538:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 539: }
 540: .org-doc {
 541:     /* font-lock-doc-face */
 542:     color: #b0d6f5;
 543: }
 544: .org-doc-markup {
 545:     /* font-lock-doc-markup-face */
 546:     color: #00bcff;
 547: }
 548: .org-eat-shell-prompt-annotation-failure {
 549:     /* eat-shell-prompt-annotation-failure */
 550:     color: #ff8059;
 551:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 552: }
 553: .org-eat-shell-prompt-annotation-running {
 554:     /* eat-shell-prompt-annotation-running */
 555:     color: #c6eaff;
 556: }
 557: .org-eat-shell-prompt-annotation-success {
 558:     /* eat-shell-prompt-annotation-success */
 559:     color: #44bc44;
 560:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 561: }
 562: .org-eat-term-bold {
 563:     /* eat-term-bold */
 564:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
 565: }
 566: .org-eat-term-color-0 {
 567:     /* eat-term-color-0 */
 568:     color: #000000;
 569:     background-color: #000000;
 570: }
 571: .org-eat-term-color-1 {
 572:     /* eat-term-color-1 */
 573:     color: #ff8059;
 574:     background-color: #ff8059;
 575: }
 576: .org-eat-term-color-10 {
 577:     /* eat-term-color-10 */
 578:     color: #00c06f;
 579:     background-color: #00c06f;
 580: }
 581: .org-eat-term-color-100 {
 582:     /* eat-term-color-100 */
 583:     color: #878700;
 584:     background-color: #878700;
 585: }
 586: .org-eat-term-color-101 {
 587:     /* eat-term-color-101 */
 588:     color: #87875F;
 589:     background-color: #87875F;
 590: }
 591: .org-eat-term-color-102 {
 592:     /* eat-term-color-102 */
 593:     color: #878787;
 594:     background-color: #878787;
 595: }
 596: .org-eat-term-color-103 {
 597:     /* eat-term-color-103 */
 598:     color: #8787AF;
 599:     background-color: #8787AF;
 600: }
 601: .org-eat-term-color-104 {
 602:     /* eat-term-color-104 */
 603:     color: #8787D7;
 604:     background-color: #8787D7;
 605: }
 606: .org-eat-term-color-105 {
 607:     /* eat-term-color-105 */
 608:     color: #8787FF;
 609:     background-color: #8787FF;
 610: }
 611: .org-eat-term-color-106 {
 612:     /* eat-term-color-106 */
 613:     color: #87AF00;
 614:     background-color: #87AF00;
 615: }
 616: .org-eat-term-color-107 {
 617:     /* eat-term-color-107 */
 618:     color: #87AF5F;
 619:     background-color: #87AF5F;
 620: }
 621: .org-eat-term-color-108 {
 622:     /* eat-term-color-108 */
 623:     color: #87AF87;
 624:     background-color: #87AF87;
 625: }
 626: .org-eat-term-color-109 {
 627:     /* eat-term-color-109 */
 628:     color: #87AFAF;
 629:     background-color: #87AFAF;
 630: }
 631: .org-eat-term-color-11 {
 632:     /* eat-term-color-11 */
 633:     color: #c0c530;
 634:     background-color: #c0c530;
 635: }
 636: .org-eat-term-color-110 {
 637:     /* eat-term-color-110 */
 638:     color: #87AFD7;
 639:     background-color: #87AFD7;
 640: }
 641: .org-eat-term-color-111 {
 642:     /* eat-term-color-111 */
 643:     color: #87AFFF;
 644:     background-color: #87AFFF;
 645: }
 646: .org-eat-term-color-112 {
 647:     /* eat-term-color-112 */
 648:     color: #87D700;
 649:     background-color: #87D700;
 650: }
 651: .org-eat-term-color-113 {
 652:     /* eat-term-color-113 */
 653:     color: #87D75F;
 654:     background-color: #87D75F;
 655: }
 656: .org-eat-term-color-114 {
 657:     /* eat-term-color-114 */
 658:     color: #87D787;
 659:     background-color: #87D787;
 660: }
 661: .org-eat-term-color-115 {
 662:     /* eat-term-color-115 */
 663:     color: #87D7AF;
 664:     background-color: #87D7AF;
 665: }
 666: .org-eat-term-color-116 {
 667:     /* eat-term-color-116 */
 668:     color: #87D7D7;
 669:     background-color: #87D7D7;
 670: }
 671: .org-eat-term-color-117 {
 672:     /* eat-term-color-117 */
 673:     color: #87D7FF;
 674:     background-color: #87D7FF;
 675: }
 676: .org-eat-term-color-118 {
 677:     /* eat-term-color-118 */
 678:     color: #87FF00;
 679:     background-color: #87FF00;
 680: }
 681: .org-eat-term-color-119 {
 682:     /* eat-term-color-119 */
 683:     color: #87FF5F;
 684:     background-color: #87FF5F;
 685: }
 686: .org-eat-term-color-12 {
 687:     /* eat-term-color-12 */
 688:     color: #79a8ff;
 689:     background-color: #79a8ff;
 690: }
 691: .org-eat-term-color-120 {
 692:     /* eat-term-color-120 */
 693:     color: #87FF87;
 694:     background-color: #87FF87;
 695: }
 696: .org-eat-term-color-121 {
 697:     /* eat-term-color-121 */
 698:     color: #87FFAF;
 699:     background-color: #87FFAF;
 700: }
 701: .org-eat-term-color-122 {
 702:     /* eat-term-color-122 */
 703:     color: #87FFD7;
 704:     background-color: #87FFD7;
 705: }
 706: .org-eat-term-color-123 {
 707:     /* eat-term-color-123 */
 708:     color: #87FFFF;
 709:     background-color: #87FFFF;
 710: }
 711: .org-eat-term-color-124 {
 712:     /* eat-term-color-124 */
 713:     color: #AF0000;
 714:     background-color: #AF0000;
 715: }
 716: .org-eat-term-color-125 {
 717:     /* eat-term-color-125 */
 718:     color: #AF005F;
 719:     background-color: #AF005F;
 720: }
 721: .org-eat-term-color-126 {
 722:     /* eat-term-color-126 */
 723:     color: #AF0087;
 724:     background-color: #AF0087;
 725: }
 726: .org-eat-term-color-127 {
 727:     /* eat-term-color-127 */
 728:     color: #AF00AF;
 729:     background-color: #AF00AF;
 730: }
 731: .org-eat-term-color-128 {
 732:     /* eat-term-color-128 */
 733:     color: #AF00D7;
 734:     background-color: #AF00D7;
 735: }
 736: .org-eat-term-color-129 {
 737:     /* eat-term-color-129 */
 738:     color: #AF00FF;
 739:     background-color: #AF00FF;
 740: }
 741: .org-eat-term-color-13 {
 742:     /* eat-term-color-13 */
 743:     color: #b6a0ff;
 744:     background-color: #b6a0ff;
 745: }
 746: .org-eat-term-color-130 {
 747:     /* eat-term-color-130 */
 748:     color: #AF5F00;
 749:     background-color: #AF5F00;
 750: }
 751: .org-eat-term-color-131 {
 752:     /* eat-term-color-131 */
 753:     color: #AF5F5F;
 754:     background-color: #AF5F5F;
 755: }
 756: .org-eat-term-color-132 {
 757:     /* eat-term-color-132 */
 758:     color: #AF5F87;
 759:     background-color: #AF5F87;
 760: }
 761: .org-eat-term-color-133 {
 762:     /* eat-term-color-133 */
 763:     color: #AF5FAF;
 764:     background-color: #AF5FAF;
 765: }
 766: .org-eat-term-color-134 {
 767:     /* eat-term-color-134 */
 768:     color: #AF5FD7;
 769:     background-color: #AF5FD7;
 770: }
 771: .org-eat-term-color-135 {
 772:     /* eat-term-color-135 */
 773:     color: #AF5FFF;
 774:     background-color: #AF5FFF;
 775: }
 776: .org-eat-term-color-136 {
 777:     /* eat-term-color-136 */
 778:     color: #AF8700;
 779:     background-color: #AF8700;
 780: }
 781: .org-eat-term-color-137 {
 782:     /* eat-term-color-137 */
 783:     color: #AF875F;
 784:     background-color: #AF875F;
 785: }
 786: .org-eat-term-color-138 {
 787:     /* eat-term-color-138 */
 788:     color: #AF8787;
 789:     background-color: #AF8787;
 790: }
 791: .org-eat-term-color-139 {
 792:     /* eat-term-color-139 */
 793:     color: #AF87AF;
 794:     background-color: #AF87AF;
 795: }
 796: .org-eat-term-color-14 {
 797:     /* eat-term-color-14 */
 798:     color: #6ae4b9;
 799:     background-color: #6ae4b9;
 800: }
 801: .org-eat-term-color-140 {
 802:     /* eat-term-color-140 */
 803:     color: #AF87D7;
 804:     background-color: #AF87D7;
 805: }
 806: .org-eat-term-color-141 {
 807:     /* eat-term-color-141 */
 808:     color: #AF87FF;
 809:     background-color: #AF87FF;
 810: }
 811: .org-eat-term-color-142 {
 812:     /* eat-term-color-142 */
 813:     color: #AFAF00;
 814:     background-color: #AFAF00;
 815: }
 816: .org-eat-term-color-143 {
 817:     /* eat-term-color-143 */
 818:     color: #AFAF5F;
 819:     background-color: #AFAF5F;
 820: }
 821: .org-eat-term-color-144 {
 822:     /* eat-term-color-144 */
 823:     color: #AFAF87;
 824:     background-color: #AFAF87;
 825: }
 826: .org-eat-term-color-145 {
 827:     /* eat-term-color-145 */
 828:     color: #AFAFAF;
 829:     background-color: #AFAFAF;
 830: }
 831: .org-eat-term-color-146 {
 832:     /* eat-term-color-146 */
 833:     color: #AFAFD7;
 834:     background-color: #AFAFD7;
 835: }
 836: .org-eat-term-color-147 {
 837:     /* eat-term-color-147 */
 838:     color: #AFAFFF;
 839:     background-color: #AFAFFF;
 840: }
 841: .org-eat-term-color-148 {
 842:     /* eat-term-color-148 */
 843:     color: #AFD700;
 844:     background-color: #AFD700;
 845: }
 846: .org-eat-term-color-149 {
 847:     /* eat-term-color-149 */
 848:     color: #AFD75F;
 849:     background-color: #AFD75F;
 850: }
 851: .org-eat-term-color-15 {
 852:     /* eat-term-color-15 */
 853:     color: #ffffff;
 854:     background-color: #ffffff;
 855: }
 856: .org-eat-term-color-150 {
 857:     /* eat-term-color-150 */
 858:     color: #AFD787;
 859:     background-color: #AFD787;
 860: }
 861: .org-eat-term-color-151 {
 862:     /* eat-term-color-151 */
 863:     color: #AFD7AF;
 864:     background-color: #AFD7AF;
 865: }
 866: .org-eat-term-color-152 {
 867:     /* eat-term-color-152 */
 868:     color: #AFD7D7;
 869:     background-color: #AFD7D7;
 870: }
 871: .org-eat-term-color-153 {
 872:     /* eat-term-color-153 */
 873:     color: #AFD7FF;
 874:     background-color: #AFD7FF;
 875: }
 876: .org-eat-term-color-154 {
 877:     /* eat-term-color-154 */
 878:     color: #AFFF00;
 879:     background-color: #AFFF00;
 880: }
 881: .org-eat-term-color-155 {
 882:     /* eat-term-color-155 */
 883:     color: #AFFF5F;
 884:     background-color: #AFFF5F;
 885: }
 886: .org-eat-term-color-156 {
 887:     /* eat-term-color-156 */
 888:     color: #AFFF87;
 889:     background-color: #AFFF87;
 890: }
 891: .org-eat-term-color-157 {
 892:     /* eat-term-color-157 */
 893:     color: #AFFFAF;
 894:     background-color: #AFFFAF;
 895: }
 896: .org-eat-term-color-158 {
 897:     /* eat-term-color-158 */
 898:     color: #AFFFD7;
 899:     background-color: #AFFFD7;
 900: }
 901: .org-eat-term-color-159 {
 902:     /* eat-term-color-159 */
 903:     color: #AFFFFF;
 904:     background-color: #AFFFFF;
 905: }
 906: .org-eat-term-color-16 {
 907:     /* eat-term-color-16 */
 908:     color: #000000;
 909:     background-color: #000000;
 910: }
 911: .org-eat-term-color-160 {
 912:     /* eat-term-color-160 */
 913:     color: #D70000;
 914:     background-color: #D70000;
 915: }
 916: .org-eat-term-color-161 {
 917:     /* eat-term-color-161 */
 918:     color: #D7005F;
 919:     background-color: #D7005F;
 920: }
 921: .org-eat-term-color-162 {
 922:     /* eat-term-color-162 */
 923:     color: #D70087;
 924:     background-color: #D70087;
 925: }
 926: .org-eat-term-color-163 {
 927:     /* eat-term-color-163 */
 928:     color: #D700AF;
 929:     background-color: #D700AF;
 930: }
 931: .org-eat-term-color-164 {
 932:     /* eat-term-color-164 */
 933:     color: #D700D7;
 934:     background-color: #D700D7;
 935: }
 936: .org-eat-term-color-165 {
 937:     /* eat-term-color-165 */
 938:     color: #D700FF;
 939:     background-color: #D700FF;
 940: }
 941: .org-eat-term-color-166 {
 942:     /* eat-term-color-166 */
 943:     color: #D75F00;
 944:     background-color: #D75F00;
 945: }
 946: .org-eat-term-color-167 {
 947:     /* eat-term-color-167 */
 948:     color: #D75F5F;
 949:     background-color: #D75F5F;
 950: }
 951: .org-eat-term-color-168 {
 952:     /* eat-term-color-168 */
 953:     color: #D75F87;
 954:     background-color: #D75F87;
 955: }
 956: .org-eat-term-color-169 {
 957:     /* eat-term-color-169 */
 958:     color: #D75FAF;
 959:     background-color: #D75FAF;
 960: }
 961: .org-eat-term-color-17 {
 962:     /* eat-term-color-17 */
 963:     color: #00005F;
 964:     background-color: #00005F;
 965: }
 966: .org-eat-term-color-170 {
 967:     /* eat-term-color-170 */
 968:     color: #D75FD7;
 969:     background-color: #D75FD7;
 970: }
 971: .org-eat-term-color-171 {
 972:     /* eat-term-color-171 */
 973:     color: #D75FFF;
 974:     background-color: #D75FFF;
 975: }
 976: .org-eat-term-color-172 {
 977:     /* eat-term-color-172 */
 978:     color: #D78700;
 979:     background-color: #D78700;
 980: }
 981: .org-eat-term-color-173 {
 982:     /* eat-term-color-173 */
 983:     color: #D7875F;
 984:     background-color: #D7875F;
 985: }
 986: .org-eat-term-color-174 {
 987:     /* eat-term-color-174 */
 988:     color: #D78787;
 989:     background-color: #D78787;
 990: }
 991: .org-eat-term-color-175 {
 992:     /* eat-term-color-175 */
 993:     color: #D787AF;
 994:     background-color: #D787AF;
 995: }
 996: .org-eat-term-color-176 {
 997:     /* eat-term-color-176 */
 998:     color: #D787D7;
 999:     background-color: #D787D7;
1000: }
1001: .org-eat-term-color-177 {
1002:     /* eat-term-color-177 */
1003:     color: #D787FF;
1004:     background-color: #D787FF;
1005: }
1006: .org-eat-term-color-178 {
1007:     /* eat-term-color-178 */
1008:     color: #D7AF00;
1009:     background-color: #D7AF00;
1010: }
1011: .org-eat-term-color-179 {
1012:     /* eat-term-color-179 */
1013:     color: #D7AF5F;
1014:     background-color: #D7AF5F;
1015: }
1016: .org-eat-term-color-18 {
1017:     /* eat-term-color-18 */
1018:     color: #000087;
1019:     background-color: #000087;
1020: }
1021: .org-eat-term-color-180 {
1022:     /* eat-term-color-180 */
1023:     color: #D7AF87;
1024:     background-color: #D7AF87;
1025: }
1026: .org-eat-term-color-181 {
1027:     /* eat-term-color-181 */
1028:     color: #D7AFAF;
1029:     background-color: #D7AFAF;
1030: }
1031: .org-eat-term-color-182 {
1032:     /* eat-term-color-182 */
1033:     color: #D7AFD7;
1034:     background-color: #D7AFD7;
1035: }
1036: .org-eat-term-color-183 {
1037:     /* eat-term-color-183 */
1038:     color: #D7AFFF;
1039:     background-color: #D7AFFF;
1040: }
1041: .org-eat-term-color-184 {
1042:     /* eat-term-color-184 */
1043:     color: #D7D700;
1044:     background-color: #D7D700;
1045: }
1046: .org-eat-term-color-185 {
1047:     /* eat-term-color-185 */
1048:     color: #D7D75F;
1049:     background-color: #D7D75F;
1050: }
1051: .org-eat-term-color-186 {
1052:     /* eat-term-color-186 */
1053:     color: #D7D787;
1054:     background-color: #D7D787;
1055: }
1056: .org-eat-term-color-187 {
1057:     /* eat-term-color-187 */
1058:     color: #D7D7AF;
1059:     background-color: #D7D7AF;
1060: }
1061: .org-eat-term-color-188 {
1062:     /* eat-term-color-188 */
1063:     color: #D7D7D7;
1064:     background-color: #D7D7D7;
1065: }
1066: .org-eat-term-color-189 {
1067:     /* eat-term-color-189 */
1068:     color: #D7D7FF;
1069:     background-color: #D7D7FF;
1070: }
1071: .org-eat-term-color-19 {
1072:     /* eat-term-color-19 */
1073:     color: #0000AF;
1074:     background-color: #0000AF;
1075: }
1076: .org-eat-term-color-190 {
1077:     /* eat-term-color-190 */
1078:     color: #D7FF00;
1079:     background-color: #D7FF00;
1080: }
1081: .org-eat-term-color-191 {
1082:     /* eat-term-color-191 */
1083:     color: #D7FF5F;
1084:     background-color: #D7FF5F;
1085: }
1086: .org-eat-term-color-192 {
1087:     /* eat-term-color-192 */
1088:     color: #D7FF87;
1089:     background-color: #D7FF87;
1090: }
1091: .org-eat-term-color-193 {
1092:     /* eat-term-color-193 */
1093:     color: #D7FFAF;
1094:     background-color: #D7FFAF;
1095: }
1096: .org-eat-term-color-194 {
1097:     /* eat-term-color-194 */
1098:     color: #D7FFD7;
1099:     background-color: #D7FFD7;
1100: }
1101: .org-eat-term-color-195 {
1102:     /* eat-term-color-195 */
1103:     color: #D7FFFF;
1104:     background-color: #D7FFFF;
1105: }
1106: .org-eat-term-color-196 {
1107:     /* eat-term-color-196 */
1108:     color: #FF0000;
1109:     background-color: #FF0000;
1110: }
1111: .org-eat-term-color-197 {
1112:     /* eat-term-color-197 */
1113:     color: #FF005F;
1114:     background-color: #FF005F;
1115: }
1116: .org-eat-term-color-198 {
1117:     /* eat-term-color-198 */
1118:     color: #FF0087;
1119:     background-color: #FF0087;
1120: }
1121: .org-eat-term-color-199 {
1122:     /* eat-term-color-199 */
1123:     color: #FF00AF;
1124:     background-color: #FF00AF;
1125: }
1126: .org-eat-term-color-2 {
1127:     /* eat-term-color-2 */
1128:     color: #44bc44;
1129:     background-color: #44bc44;
1130: }
1131: .org-eat-term-color-20 {
1132:     /* eat-term-color-20 */
1133:     color: #0000D7;
1134:     background-color: #0000D7;
1135: }
1136: .org-eat-term-color-200 {
1137:     /* eat-term-color-200 */
1138:     color: #FF00D7;
1139:     background-color: #FF00D7;
1140: }
1141: .org-eat-term-color-201 {
1142:     /* eat-term-color-201 */
1143:     color: #FF00FF;
1144:     background-color: #FF00FF;
1145: }
1146: .org-eat-term-color-202 {
1147:     /* eat-term-color-202 */
1148:     color: #FF5F00;
1149:     background-color: #FF5F00;
1150: }
1151: .org-eat-term-color-203 {
1152:     /* eat-term-color-203 */
1153:     color: #FF5F5F;
1154:     background-color: #FF5F5F;
1155: }
1156: .org-eat-term-color-204 {
1157:     /* eat-term-color-204 */
1158:     color: #FF5F87;
1159:     background-color: #FF5F87;
1160: }
1161: .org-eat-term-color-205 {
1162:     /* eat-term-color-205 */
1163:     color: #FF5FAF;
1164:     background-color: #FF5FAF;
1165: }
1166: .org-eat-term-color-206 {
1167:     /* eat-term-color-206 */
1168:     color: #FF5FD7;
1169:     background-color: #FF5FD7;
1170: }
1171: .org-eat-term-color-207 {
1172:     /* eat-term-color-207 */
1173:     color: #FF5FFF;
1174:     background-color: #FF5FFF;
1175: }
1176: .org-eat-term-color-208 {
1177:     /* eat-term-color-208 */
1178:     color: #FF8700;
1179:     background-color: #FF8700;
1180: }
1181: .org-eat-term-color-209 {
1182:     /* eat-term-color-209 */
1183:     color: #FF875F;
1184:     background-color: #FF875F;
1185: }
1186: .org-eat-term-color-21 {
1187:     /* eat-term-color-21 */
1188:     color: #0000FF;
1189:     background-color: #0000FF;
1190: }
1191: .org-eat-term-color-210 {
1192:     /* eat-term-color-210 */
1193:     color: #FF8787;
1194:     background-color: #FF8787;
1195: }
1196: .org-eat-term-color-211 {
1197:     /* eat-term-color-211 */
1198:     color: #FF87AF;
1199:     background-color: #FF87AF;
1200: }
1201: .org-eat-term-color-212 {
1202:     /* eat-term-color-212 */
1203:     color: #FF87D7;
1204:     background-color: #FF87D7;
1205: }
1206: .org-eat-term-color-213 {
1207:     /* eat-term-color-213 */
1208:     color: #FF87FF;
1209:     background-color: #FF87FF;
1210: }
1211: .org-eat-term-color-214 {
1212:     /* eat-term-color-214 */
1213:     color: #FFAF00;
1214:     background-color: #FFAF00;
1215: }
1216: .org-eat-term-color-215 {
1217:     /* eat-term-color-215 */
1218:     color: #FFAF5F;
1219:     background-color: #FFAF5F;
1220: }
1221: .org-eat-term-color-216 {
1222:     /* eat-term-color-216 */
1223:     color: #FFAF87;
1224:     background-color: #FFAF87;
1225: }
1226: .org-eat-term-color-217 {
1227:     /* eat-term-color-217 */
1228:     color: #FFAFAF;
1229:     background-color: #FFAFAF;
1230: }
1231: .org-eat-term-color-218 {
1232:     /* eat-term-color-218 */
1233:     color: #FFAFD7;
1234:     background-color: #FFAFD7;
1235: }
1236: .org-eat-term-color-219 {
1237:     /* eat-term-color-219 */
1238:     color: #FFAFFF;
1239:     background-color: #FFAFFF;
1240: }
1241: .org-eat-term-color-22 {
1242:     /* eat-term-color-22 */
1243:     color: #005F00;
1244:     background-color: #005F00;
1245: }
1246: .org-eat-term-color-220 {
1247:     /* eat-term-color-220 */
1248:     color: #FFD700;
1249:     background-color: #FFD700;
1250: }
1251: .org-eat-term-color-221 {
1252:     /* eat-term-color-221 */
1253:     color: #FFD75F;
1254:     background-color: #FFD75F;
1255: }
1256: .org-eat-term-color-222 {
1257:     /* eat-term-color-222 */
1258:     color: #FFD787;
1259:     background-color: #FFD787;
1260: }
1261: .org-eat-term-color-223 {
1262:     /* eat-term-color-223 */
1263:     color: #FFD7AF;
1264:     background-color: #FFD7AF;
1265: }
1266: .org-eat-term-color-224 {
1267:     /* eat-term-color-224 */
1268:     color: #FFD7D7;
1269:     background-color: #FFD7D7;
1270: }
1271: .org-eat-term-color-225 {
1272:     /* eat-term-color-225 */
1273:     color: #FFD7FF;
1274:     background-color: #FFD7FF;
1275: }
1276: .org-eat-term-color-226 {
1277:     /* eat-term-color-226 */
1278:     color: #FFFF00;
1279:     background-color: #FFFF00;
1280: }
1281: .org-eat-term-color-227 {
1282:     /* eat-term-color-227 */
1283:     color: #FFFF5F;
1284:     background-color: #FFFF5F;
1285: }
1286: .org-eat-term-color-228 {
1287:     /* eat-term-color-228 */
1288:     color: #FFFF87;
1289:     background-color: #FFFF87;
1290: }
1291: .org-eat-term-color-229 {
1292:     /* eat-term-color-229 */
1293:     color: #FFFFAF;
1294:     background-color: #FFFFAF;
1295: }
1296: .org-eat-term-color-23 {
1297:     /* eat-term-color-23 */
1298:     color: #005F5F;
1299:     background-color: #005F5F;
1300: }
1301: .org-eat-term-color-230 {
1302:     /* eat-term-color-230 */
1303:     color: #FFFFD7;
1304:     background-color: #FFFFD7;
1305: }
1306: .org-eat-term-color-231 {
1307:     /* eat-term-color-231 */
1308:     color: #FFFFFF;
1309:     background-color: #FFFFFF;
1310: }
1311: .org-eat-term-color-232 {
1312:     /* eat-term-color-232 */
1313:     color: #080808;
1314:     background-color: #080808;
1315: }
1316: .org-eat-term-color-233 {
1317:     /* eat-term-color-233 */
1318:     color: #121212;
1319:     background-color: #121212;
1320: }
1321: .org-eat-term-color-234 {
1322:     /* eat-term-color-234 */
1323:     color: #1C1C1C;
1324:     background-color: #1C1C1C;
1325: }
1326: .org-eat-term-color-235 {
1327:     /* eat-term-color-235 */
1328:     color: #262626;
1329:     background-color: #262626;
1330: }
1331: .org-eat-term-color-236 {
1332:     /* eat-term-color-236 */
1333:     color: #303030;
1334:     background-color: #303030;
1335: }
1336: .org-eat-term-color-237 {
1337:     /* eat-term-color-237 */
1338:     color: #3A3A3A;
1339:     background-color: #3A3A3A;
1340: }
1341: .org-eat-term-color-238 {
1342:     /* eat-term-color-238 */
1343:     color: #444444;
1344:     background-color: #444444;
1345: }
1346: .org-eat-term-color-239 {
1347:     /* eat-term-color-239 */
1348:     color: #4E4E4E;
1349:     background-color: #4E4E4E;
1350: }
1351: .org-eat-term-color-24 {
1352:     /* eat-term-color-24 */
1353:     color: #005F87;
1354:     background-color: #005F87;
1355: }
1356: .org-eat-term-color-240 {
1357:     /* eat-term-color-240 */
1358:     color: #585858;
1359:     background-color: #585858;
1360: }
1361: .org-eat-term-color-241 {
1362:     /* eat-term-color-241 */
1363:     color: #626262;
1364:     background-color: #626262;
1365: }
1366: .org-eat-term-color-242 {
1367:     /* eat-term-color-242 */
1368:     color: #6C6C6C;
1369:     background-color: #6C6C6C;
1370: }
1371: .org-eat-term-color-243 {
1372:     /* eat-term-color-243 */
1373:     color: #767676;
1374:     background-color: #767676;
1375: }
1376: .org-eat-term-color-244 {
1377:     /* eat-term-color-244 */
1378:     color: #808080;
1379:     background-color: #808080;
1380: }
1381: .org-eat-term-color-245 {
1382:     /* eat-term-color-245 */
1383:     color: #8A8A8A;
1384:     background-color: #8A8A8A;
1385: }
1386: .org-eat-term-color-246 {
1387:     /* eat-term-color-246 */
1388:     color: #949494;
1389:     background-color: #949494;
1390: }
1391: .org-eat-term-color-247 {
1392:     /* eat-term-color-247 */
1393:     color: #9E9E9E;
1394:     background-color: #9E9E9E;
1395: }
1396: .org-eat-term-color-248 {
1397:     /* eat-term-color-248 */
1398:     color: #A8A8A8;
1399:     background-color: #A8A8A8;
1400: }
1401: .org-eat-term-color-249 {
1402:     /* eat-term-color-249 */
1403:     color: #B2B2B2;
1404:     background-color: #B2B2B2;
1405: }
1406: .org-eat-term-color-25 {
1407:     /* eat-term-color-25 */
1408:     color: #005FAF;
1409:     background-color: #005FAF;
1410: }
1411: .org-eat-term-color-250 {
1412:     /* eat-term-color-250 */
1413:     color: #BCBCBC;
1414:     background-color: #BCBCBC;
1415: }
1416: .org-eat-term-color-251 {
1417:     /* eat-term-color-251 */
1418:     color: #C6C6C6;
1419:     background-color: #C6C6C6;
1420: }
1421: .org-eat-term-color-252 {
1422:     /* eat-term-color-252 */
1423:     color: #D0D0D0;
1424:     background-color: #D0D0D0;
1425: }
1426: .org-eat-term-color-253 {
1427:     /* eat-term-color-253 */
1428:     color: #DADADA;
1429:     background-color: #DADADA;
1430: }
1431: .org-eat-term-color-254 {
1432:     /* eat-term-color-254 */
1433:     color: #E4E4E4;
1434:     background-color: #E4E4E4;
1435: }
1436: .org-eat-term-color-255 {
1437:     /* eat-term-color-255 */
1438:     color: #EEEEEE;
1439:     background-color: #EEEEEE;
1440: }
1441: .org-eat-term-color-26 {
1442:     /* eat-term-color-26 */
1443:     color: #005FD7;
1444:     background-color: #005FD7;
1445: }
1446: .org-eat-term-color-27 {
1447:     /* eat-term-color-27 */
1448:     color: #005FFF;
1449:     background-color: #005FFF;
1450: }
1451: .org-eat-term-color-28 {
1452:     /* eat-term-color-28 */
1453:     color: #008700;
1454:     background-color: #008700;
1455: }
1456: .org-eat-term-color-29 {
1457:     /* eat-term-color-29 */
1458:     color: #00875F;
1459:     background-color: #00875F;
1460: }
1461: .org-eat-term-color-3 {
1462:     /* eat-term-color-3 */
1463:     color: #d0bc00;
1464:     background-color: #d0bc00;
1465: }
1466: .org-eat-term-color-30 {
1467:     /* eat-term-color-30 */
1468:     color: #008787;
1469:     background-color: #008787;
1470: }
1471: .org-eat-term-color-31 {
1472:     /* eat-term-color-31 */
1473:     color: #0087AF;
1474:     background-color: #0087AF;
1475: }
1476: .org-eat-term-color-32 {
1477:     /* eat-term-color-32 */
1478:     color: #0087D7;
1479:     background-color: #0087D7;
1480: }
1481: .org-eat-term-color-33 {
1482:     /* eat-term-color-33 */
1483:     color: #0087FF;
1484:     background-color: #0087FF;
1485: }
1486: .org-eat-term-color-34 {
1487:     /* eat-term-color-34 */
1488:     color: #00AF00;
1489:     background-color: #00AF00;
1490: }
1491: .org-eat-term-color-35 {
1492:     /* eat-term-color-35 */
1493:     color: #00AF5F;
1494:     background-color: #00AF5F;
1495: }
1496: .org-eat-term-color-36 {
1497:     /* eat-term-color-36 */
1498:     color: #00AF87;
1499:     background-color: #00AF87;
1500: }
1501: .org-eat-term-color-37 {
1502:     /* eat-term-color-37 */
1503:     color: #00AFAF;
1504:     background-color: #00AFAF;
1505: }
1506: .org-eat-term-color-38 {
1507:     /* eat-term-color-38 */
1508:     color: #00AFD7;
1509:     background-color: #00AFD7;
1510: }
1511: .org-eat-term-color-39 {
1512:     /* eat-term-color-39 */
1513:     color: #00AFFF;
1514:     background-color: #00AFFF;
1515: }
1516: .org-eat-term-color-4 {
1517:     /* eat-term-color-4 */
1518:     color: #2fafff;
1519:     background-color: #2fafff;
1520: }
1521: .org-eat-term-color-40 {
1522:     /* eat-term-color-40 */
1523:     color: #00D700;
1524:     background-color: #00D700;
1525: }
1526: .org-eat-term-color-41 {
1527:     /* eat-term-color-41 */
1528:     color: #00D75F;
1529:     background-color: #00D75F;
1530: }
1531: .org-eat-term-color-42 {
1532:     /* eat-term-color-42 */
1533:     color: #00D787;
1534:     background-color: #00D787;
1535: }
1536: .org-eat-term-color-43 {
1537:     /* eat-term-color-43 */
1538:     color: #00D7AF;
1539:     background-color: #00D7AF;
1540: }
1541: .org-eat-term-color-44 {
1542:     /* eat-term-color-44 */
1543:     color: #00D7D7;
1544:     background-color: #00D7D7;
1545: }
1546: .org-eat-term-color-45 {
1547:     /* eat-term-color-45 */
1548:     color: #00D7FF;
1549:     background-color: #00D7FF;
1550: }
1551: .org-eat-term-color-46 {
1552:     /* eat-term-color-46 */
1553:     color: #00FF00;
1554:     background-color: #00FF00;
1555: }
1556: .org-eat-term-color-47 {
1557:     /* eat-term-color-47 */
1558:     color: #00FF5F;
1559:     background-color: #00FF5F;
1560: }
1561: .org-eat-term-color-48 {
1562:     /* eat-term-color-48 */
1563:     color: #00FF87;
1564:     background-color: #00FF87;
1565: }
1566: .org-eat-term-color-49 {
1567:     /* eat-term-color-49 */
1568:     color: #00FFAF;
1569:     background-color: #00FFAF;
1570: }
1571: .org-eat-term-color-5 {
1572:     /* eat-term-color-5 */
1573:     color: #feacd0;
1574:     background-color: #feacd0;
1575: }
1576: .org-eat-term-color-50 {
1577:     /* eat-term-color-50 */
1578:     color: #00FFD7;
1579:     background-color: #00FFD7;
1580: }
1581: .org-eat-term-color-51 {
1582:     /* eat-term-color-51 */
1583:     color: #00FFFF;
1584:     background-color: #00FFFF;
1585: }
1586: .org-eat-term-color-52 {
1587:     /* eat-term-color-52 */
1588:     color: #5F0000;
1589:     background-color: #5F0000;
1590: }
1591: .org-eat-term-color-53 {
1592:     /* eat-term-color-53 */
1593:     color: #5F005F;
1594:     background-color: #5F005F;
1595: }
1596: .org-eat-term-color-54 {
1597:     /* eat-term-color-54 */
1598:     color: #5F0087;
1599:     background-color: #5F0087;
1600: }
1601: .org-eat-term-color-55 {
1602:     /* eat-term-color-55 */
1603:     color: #5F00AF;
1604:     background-color: #5F00AF;
1605: }
1606: .org-eat-term-color-56 {
1607:     /* eat-term-color-56 */
1608:     color: #5F00D7;
1609:     background-color: #5F00D7;
1610: }
1611: .org-eat-term-color-57 {
1612:     /* eat-term-color-57 */
1613:     color: #5F00FF;
1614:     background-color: #5F00FF;
1615: }
1616: .org-eat-term-color-58 {
1617:     /* eat-term-color-58 */
1618:     color: #5F5F00;
1619:     background-color: #5F5F00;
1620: }
1621: .org-eat-term-color-59 {
1622:     /* eat-term-color-59 */
1623:     color: #5F5F5F;
1624:     background-color: #5F5F5F;
1625: }
1626: .org-eat-term-color-6 {
1627:     /* eat-term-color-6 */
1628:     color: #00d3d0;
1629:     background-color: #00d3d0;
1630: }
1631: .org-eat-term-color-60 {
1632:     /* eat-term-color-60 */
1633:     color: #5F5F87;
1634:     background-color: #5F5F87;
1635: }
1636: .org-eat-term-color-61 {
1637:     /* eat-term-color-61 */
1638:     color: #5F5FAF;
1639:     background-color: #5F5FAF;
1640: }
1641: .org-eat-term-color-62 {
1642:     /* eat-term-color-62 */
1643:     color: #5F5FD7;
1644:     background-color: #5F5FD7;
1645: }
1646: .org-eat-term-color-63 {
1647:     /* eat-term-color-63 */
1648:     color: #5F5FFF;
1649:     background-color: #5F5FFF;
1650: }
1651: .org-eat-term-color-64 {
1652:     /* eat-term-color-64 */
1653:     color: #5F8700;
1654:     background-color: #5F8700;
1655: }
1656: .org-eat-term-color-65 {
1657:     /* eat-term-color-65 */
1658:     color: #5F875F;
1659:     background-color: #5F875F;
1660: }
1661: .org-eat-term-color-66 {
1662:     /* eat-term-color-66 */
1663:     color: #5F8787;
1664:     background-color: #5F8787;
1665: }
1666: .org-eat-term-color-67 {
1667:     /* eat-term-color-67 */
1668:     color: #5F87AF;
1669:     background-color: #5F87AF;
1670: }
1671: .org-eat-term-color-68 {
1672:     /* eat-term-color-68 */
1673:     color: #5F87D7;
1674:     background-color: #5F87D7;
1675: }
1676: .org-eat-term-color-69 {
1677:     /* eat-term-color-69 */
1678:     color: #5F87FF;
1679:     background-color: #5F87FF;
1680: }
1681: .org-eat-term-color-7 {
1682:     /* eat-term-color-7 */
1683:     color: #a6a6a6;
1684:     background-color: #a6a6a6;
1685: }
1686: .org-eat-term-color-70 {
1687:     /* eat-term-color-70 */
1688:     color: #5FAF00;
1689:     background-color: #5FAF00;
1690: }
1691: .org-eat-term-color-71 {
1692:     /* eat-term-color-71 */
1693:     color: #5FAF5F;
1694:     background-color: #5FAF5F;
1695: }
1696: .org-eat-term-color-72 {
1697:     /* eat-term-color-72 */
1698:     color: #5FAF87;
1699:     background-color: #5FAF87;
1700: }
1701: .org-eat-term-color-73 {
1702:     /* eat-term-color-73 */
1703:     color: #5FAFAF;
1704:     background-color: #5FAFAF;
1705: }
1706: .org-eat-term-color-74 {
1707:     /* eat-term-color-74 */
1708:     color: #5FAFD7;
1709:     background-color: #5FAFD7;
1710: }
1711: .org-eat-term-color-75 {
1712:     /* eat-term-color-75 */
1713:     color: #5FAFFF;
1714:     background-color: #5FAFFF;
1715: }
1716: .org-eat-term-color-76 {
1717:     /* eat-term-color-76 */
1718:     color: #5FD700;
1719:     background-color: #5FD700;
1720: }
1721: .org-eat-term-color-77 {
1722:     /* eat-term-color-77 */
1723:     color: #5FD75F;
1724:     background-color: #5FD75F;
1725: }
1726: .org-eat-term-color-78 {
1727:     /* eat-term-color-78 */
1728:     color: #5FD787;
1729:     background-color: #5FD787;
1730: }
1731: .org-eat-term-color-79 {
1732:     /* eat-term-color-79 */
1733:     color: #5FD7AF;
1734:     background-color: #5FD7AF;
1735: }
1736: .org-eat-term-color-8 {
1737:     /* eat-term-color-8 */
1738:     color: #595959;
1739:     background-color: #595959;
1740: }
1741: .org-eat-term-color-80 {
1742:     /* eat-term-color-80 */
1743:     color: #5FD7D7;
1744:     background-color: #5FD7D7;
1745: }
1746: .org-eat-term-color-81 {
1747:     /* eat-term-color-81 */
1748:     color: #5FD7FF;
1749:     background-color: #5FD7FF;
1750: }
1751: .org-eat-term-color-82 {
1752:     /* eat-term-color-82 */
1753:     color: #5FFF00;
1754:     background-color: #5FFF00;
1755: }
1756: .org-eat-term-color-83 {
1757:     /* eat-term-color-83 */
1758:     color: #5FFF5F;
1759:     background-color: #5FFF5F;
1760: }
1761: .org-eat-term-color-84 {
1762:     /* eat-term-color-84 */
1763:     color: #5FFF87;
1764:     background-color: #5FFF87;
1765: }
1766: .org-eat-term-color-85 {
1767:     /* eat-term-color-85 */
1768:     color: #5FFFAF;
1769:     background-color: #5FFFAF;
1770: }
1771: .org-eat-term-color-86 {
1772:     /* eat-term-color-86 */
1773:     color: #5FFFD7;
1774:     background-color: #5FFFD7;
1775: }
1776: .org-eat-term-color-87 {
1777:     /* eat-term-color-87 */
1778:     color: #5FFFFF;
1779:     background-color: #5FFFFF;
1780: }
1781: .org-eat-term-color-88 {
1782:     /* eat-term-color-88 */
1783:     color: #870000;
1784:     background-color: #870000;
1785: }
1786: .org-eat-term-color-89 {
1787:     /* eat-term-color-89 */
1788:     color: #87005F;
1789:     background-color: #87005F;
1790: }
1791: .org-eat-term-color-9 {
1792:     /* eat-term-color-9 */
1793:     color: #ef8b50;
1794:     background-color: #ef8b50;
1795: }
1796: .org-eat-term-color-90 {
1797:     /* eat-term-color-90 */
1798:     color: #870087;
1799:     background-color: #870087;
1800: }
1801: .org-eat-term-color-91 {
1802:     /* eat-term-color-91 */
1803:     color: #8700AF;
1804:     background-color: #8700AF;
1805: }
1806: .org-eat-term-color-92 {
1807:     /* eat-term-color-92 */
1808:     color: #8700D7;
1809:     background-color: #8700D7;
1810: }
1811: .org-eat-term-color-93 {
1812:     /* eat-term-color-93 */
1813:     color: #8700FF;
1814:     background-color: #8700FF;
1815: }
1816: .org-eat-term-color-94 {
1817:     /* eat-term-color-94 */
1818:     color: #875F00;
1819:     background-color: #875F00;
1820: }
1821: .org-eat-term-color-95 {
1822:     /* eat-term-color-95 */
1823:     color: #875F5F;
1824:     background-color: #875F5F;
1825: }
1826: .org-eat-term-color-96 {
1827:     /* eat-term-color-96 */
1828:     color: #875F87;
1829:     background-color: #875F87;
1830: }
1831: .org-eat-term-color-97 {
1832:     /* eat-term-color-97 */
1833:     color: #875FAF;
1834:     background-color: #875FAF;
1835: }
1836: .org-eat-term-color-98 {
1837:     /* eat-term-color-98 */
1838:     color: #875FD7;
1839:     background-color: #875FD7;
1840: }
1841: .org-eat-term-color-99 {
1842:     /* eat-term-color-99 */
1843:     color: #875FFF;
1844:     background-color: #875FFF;
1845: }
1846: .org-eat-term-italic {
1847:     /* eat-term-italic */
1848:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
1849: }
1850: .org-eldoc-highlight-function-argument {
1851:     /* eldoc-highlight-function-argument */
1852:     color: #d3b55f;
1853:     background-color: #221000;
1854:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1855: }
1856: .org-elisp-shorthand-font-lock {
1857:     /* elisp-shorthand-font-lock-face */
1858:     color: #00d3d0;
1859: }
1860: .org-error {
1861:     /* error */
1862:     color: #ff8059;
1863:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1864: }
1865: .org-escape {
1866:     /* font-lock-escape-face */
1867:     color: #abab00;
1868: }
1869: .org-escape-glyph {
1870:     /* escape-glyph */
1871:     color: #e7a59a;
1872: }
1873: .org-file-name-shadow {
1874:     /* file-name-shadow */
1875:     color: #a8a8a8;
1876: }
1877: .org-fill-column-indicator {
1878:     /* fill-column-indicator */
1879:     color: #3c3c3c;
1880:     background-color: #3c3c3c;
1881: }
1882: .org-fringe {
1883:     /* fringe */
1884:     color: #ffffff;
1885:     background-color: #1e1e1e;
1886: }
1887: .org-function-call {
1888:     /* font-lock-function-call-face */
1889:     color: #feacd0;
1890: }
1891: .org-function-name {
1892:     /* font-lock-function-name-face */
1893:     color: #feacd0;
1894: }
1895: .org-glyphless-char {
1896:     /* glyphless-char */
1897:     font-size: 60%;
1898: }
1899: .org-header-line {
1900:     /* header-line */
1901:     color: #dddddd;
1902:     background-color: #212121;
1903: }
1904: .org-header-line-highlight {
1905:     /* header-line-highlight */
1906:     color: #ffffff;
1907:     background-color: #00415e;
1908: }
1909: .org-help-argument-name {
1910:     /* help-argument-name */
1911:     color: #00d3d0;
1912: }
1913: .org-help-for-help-header {
1914:     /* help-for-help-header */
1915:     font-size: 126%;
1916: }
1917: .org-help-key-binding {
1918:     /* help-key-binding */
1919:     color: #00bcff;
1920:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1921: }
1922: .org-highlight {
1923:     /* highlight */
1924:     color: #ffffff;
1925:     background-color: #00415e;
1926: }
1927: .org-holiday {
1928:     /* holiday */
1929:     color: #f78fe7;
1930:     background-color: #230631;
1931: }
1932: .org-homoglyph {
1933:     /* homoglyph */
1934:     color: #f5aa80;
1935: }
1936: .org-icomplete-first-match {
1937:     /* icomplete-first-match */
1938:     color: #f78fe7;
1939:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1940: }
1941: .org-icomplete-section {
1942:     /* icomplete-section */
1943:     color: #a8a8a8;
1944:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
1945: }
1946: .org-icomplete-selected-match {
1947:     /* icomplete-selected-match */
1948:     background-color: #323232;
1949:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1950: }
1951: .org-icon {
1952: }
1953: .org-icon-button {
1954:     /* icon-button */
1955:     background-color: #323232;
1956: }
1957: .org-ido-first-match {
1958:     /* ido-first-match */
1959:     color: #f78fe7;
1960:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1961: }
1962: .org-ido-incomplete-regexp {
1963:     /* ido-incomplete-regexp */
1964:     color: #ff8059;
1965:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1966: }
1967: .org-ido-indicator {
1968:     /* ido-indicator */
1969:     color: #e0e6f0;
1970:     background-color: #604200;
1971: }
1972: .org-ido-only-match {
1973:     /* ido-only-match */
1974:     color: #f78fe7;
1975:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
1976: }
1977: .org-ido-subdir {
1978:     /* ido-subdir */
1979:     color: #2fafff;
1980: }
1981: .org-ido-virtual {
1982:     /* ido-virtual */
1983:     color: #b6a0ff;
1984: }
1985: .org-internal-border {
1986: }
1987: .org-isearch {
1988:     /* isearch */
1989:     color: #ffffff;
1990:     background-color: #874900;
1991: }
1992: .org-isearch-fail {
1993:     /* isearch-fail */
1994:     color: #ffb9ab;
1995:     background-color: #77002a;
1996: }
1997: .org-isearch-group-1 {
1998:     /* isearch-group-1 */
1999:     color: #8ecfff;
2000:     background-color: #242679;
2001: }
2002: .org-isearch-group-2 {
2003:     /* isearch-group-2 */
2004:     color: #ffcaf0;
2005:     background-color: #71206a;
2006: }
2007: .org-italic {
2008:     /* italic */
2009:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
2010: }
2011: .org-keyword {
2012:     /* font-lock-keyword-face */
2013:     color: #b6a0ff;
2014: }
2015: .org-lazy-highlight {
2016:     /* lazy-highlight */
2017:     color: #e0e6f0;
2018:     background-color: #00415e;
2019: }
2020: .org-line-number {
2021:     /* line-number */
2022:     color: #a8a8a8;
2023:     background-color: #100f10;
2024: }
2025: .org-link {
2026:     /* link */
2027:     color: #00bcff;
2028:     text-decoration: underline;
2029: }
2030: .org-link-visited {
2031:     /* link-visited */
2032:     color: #b6a0ff;
2033:     text-decoration: underline;
2034: }
2035: .org-marginalia-archive {
2036:     /* marginalia-archive */
2037:     color: #6ae4b9;
2038: }
2039: .org-marginalia-char {
2040:     /* marginalia-char */
2041:     color: #feacd0;
2042: }
2043: .org-marginalia-date {
2044:     /* marginalia-date */
2045:     color: #00d3d0;
2046: }
2047: .org-marginalia-documentation {
2048:     /* marginalia-documentation */
2049:     color: #b0d6f5;
2050: }
2051: .org-marginalia-file-name {
2052:     /* marginalia-file-name */
2053:     color: #82b0ec;
2054: }
2055: .org-marginalia-file-owner {
2056:     /* marginalia-file-owner */
2057:     color: #ffa0a0;
2058: }
2059: .org-marginalia-file-priv-dir {
2060:     /* marginalia-file-priv-dir */
2061:     color: #79a8ff;
2062: }
2063: .org-marginalia-file-priv-exec {
2064:     /* marginalia-file-priv-exec */
2065:     color: #f78fe7;
2066: }
2067: .org-marginalia-file-priv-link {
2068:     /* marginalia-file-priv-link */
2069:     color: #00bcff;
2070: }
2071: .org-marginalia-file-priv-no {
2072:     /* marginalia-file-priv-no */
2073:     color: #7f7f7f;
2074: }
2075: .org-marginalia-file-priv-other {
2076:     /* marginalia-file-priv-other */
2077:     color: #d0bc00;
2078: }
2079: .org-marginalia-file-priv-rare {
2080:     /* marginalia-file-priv-rare */
2081:     color: #ff8059;
2082: }
2083: .org-marginalia-file-priv-read {
2084:     /* marginalia-file-priv-read */
2085:     color: #ffffff;
2086: }
2087: .org-marginalia-file-priv-write {
2088:     /* marginalia-file-priv-write */
2089:     color: #00d3d0;
2090: }
2091: .org-marginalia-function {
2092:     /* marginalia-function */
2093:     color: #ef9fe4;
2094: }
2095: .org-marginalia-installed {
2096:     /* marginalia-installed */
2097:     color: #44bc44;
2098:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2099: }
2100: .org-marginalia-key {
2101:     /* marginalia-key */
2102:     color: #00bcff;
2103:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2104: }
2105: .org-marginalia-lighter {
2106:     /* marginalia-lighter */
2107:     color: #79a8ff;
2108: }
2109: .org-marginalia-list {
2110:     /* marginalia-list */
2111:     color: #cfa6ff;
2112: }
2113: .org-marginalia-mode {
2114:     /* marginalia-mode */
2115:     color: #00d3d0;
2116: }
2117: .org-marginalia-modified {
2118:     /* marginalia-modified */
2119:     color: #ef9fe4;
2120: }
2121: .org-marginalia-null {
2122:     /* marginalia-null */
2123:     color: #a8a8a8;
2124: }
2125: .org-marginalia-number {
2126:     /* marginalia-number */
2127:     color: #00d3d0;
2128: }
2129: .org-marginalia-off {
2130:     /* marginalia-off */
2131:     color: #ff8059;
2132:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2133: }
2134: .org-marginalia-on {
2135:     /* marginalia-on */
2136:     color: #44bc44;
2137:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2138: }
2139: .org-marginalia-size {
2140:     /* marginalia-size */
2141:     color: #a4d0bb;
2142: }
2143: .org-marginalia-string {
2144:     /* marginalia-string */
2145:     color: #79a8ff;
2146: }
2147: .org-marginalia-symbol {
2148:     /* marginalia-symbol */
2149:     color: #80b2f0;
2150: }
2151: .org-marginalia-true {
2152:     /* marginalia-true */
2153:     color: #ffffff;
2154: }
2155: .org-marginalia-type {
2156:     /* marginalia-type */
2157:     color: #6ae4b9;
2158: }
2159: .org-marginalia-value {
2160:     /* marginalia-value */
2161:     color: #00d3d0;
2162: }
2163: .org-marginalia-version {
2164:     /* marginalia-version */
2165:     color: #00d3d0;
2166: }
2167: .org-match {
2168:     /* match */
2169:     color: #fbd6f4;
2170:     background-color: #392a48;
2171: }
2172: .org-menu {
2173:     /* menu */
2174:     color: #ffffff;
2175:     background-color: #323232;
2176: }
2177: .org-minibuffer-prompt {
2178:     /* minibuffer-prompt */
2179:     color: #6ae4b9;
2180: }
2181: .org-misc-punctuation {
2182: }
2183: .org-mode-line {
2184:     /* mode-line */
2185:     color: #f4f4f4;
2186:     background-color: #323232;
2187: }
2188: .org-mode-line-active {
2189:     /* mode-line-active */
2190:     color: #f4f4f4;
2191:     background-color: #323232;
2192: }
2193: .org-mode-line-buffer-id {
2194:     /* mode-line-buffer-id */
2195:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2196: }
2197: .org-mode-line-emphasis {
2198:     /* mode-line-emphasis */
2199:     color: #d5b1ff;
2200:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2201: }
2202: .org-mode-line-highlight {
2203:     /* mode-line-highlight */
2204:     color: #ffffff;
2205:     background-color: #00415e;
2206: }
2207: .org-mode-line-inactive {
2208:     /* mode-line-inactive */
2209:     color: #bfc0c4;
2210:     background-color: #1e1e1e;
2211: }
2212: .org-modus-themes-active-blue {
2213:     /* modus-themes-active-blue */
2214:     color: #323232;
2215:     background-color: #34cfff;
2216: }
2217: .org-modus-themes-active-cyan {
2218:     /* modus-themes-active-cyan */
2219:     color: #323232;
2220:     background-color: #00d8b4;
2221: }
2222: .org-modus-themes-active-green {
2223:     /* modus-themes-active-green */
2224:     color: #323232;
2225:     background-color: #70d73f;
2226: }
2227: .org-modus-themes-active-magenta {
2228:     /* modus-themes-active-magenta */
2229:     color: #323232;
2230:     background-color: #d5b1ff;
2231: }
2232: .org-modus-themes-active-red {
2233:     /* modus-themes-active-red */
2234:     color: #323232;
2235:     background-color: #ffa7ba;
2236: }
2237: .org-modus-themes-active-yellow {
2238:     /* modus-themes-active-yellow */
2239:     color: #323232;
2240:     background-color: #dbbe5f;
2241: }
2242: .org-modus-themes-box-button {
2243:     /* modus-themes-box-button */
2244:     background-color: #323232;
2245: }
2246: .org-modus-themes-box-button-pressed {
2247:     /* modus-themes-box-button-pressed */
2248:     background-color: #323232;
2249: }
2250: .org-modus-themes-completion-match-0 {
2251:     /* modus-themes-completion-match-0 */
2252:     color: #f78fe7;
2253:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2254: }
2255: .org-modus-themes-completion-match-1 {
2256:     /* modus-themes-completion-match-1 */
2257:     color: #2fafff;
2258:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2259: }
2260: .org-modus-themes-completion-match-2 {
2261:     /* modus-themes-completion-match-2 */
2262:     color: #44bc44;
2263:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2264: }
2265: .org-modus-themes-completion-match-3 {
2266:     /* modus-themes-completion-match-3 */
2267:     color: #d0bc00;
2268:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2269: }
2270: .org-modus-themes-completion-selected {
2271:     /* modus-themes-completion-selected */
2272:     background-color: #323232;
2273:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2274: }
2275: .org-modus-themes-completion-selected-popup {
2276:     /* modus-themes-completion-selected-popup */
2277:     background-color: #3c3c3c;
2278:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2279: }
2280: .org-modus-themes-diff-added {
2281:     /* modus-themes-diff-added */
2282:     color: #b4ddb4;
2283:     background-color: #1d3c25;
2284: }
2285: .org-modus-themes-diff-changed {
2286:     /* modus-themes-diff-changed */
2287:     color: #d0daaf;
2288:     background-color: #424200;
2289: }
2290: .org-modus-themes-diff-focus-added {
2291:     /* modus-themes-diff-focus-added */
2292:     color: #b4ddb4;
2293:     background-color: #1d3c25;
2294: }
2295: .org-modus-themes-diff-focus-changed {
2296:     /* modus-themes-diff-focus-changed */
2297:     color: #d0daaf;
2298:     background-color: #424200;
2299: }
2300: .org-modus-themes-diff-focus-removed {
2301:     /* modus-themes-diff-focus-removed */
2302:     color: #eebdba;
2303:     background-color: #601f29;
2304: }
2305: .org-modus-themes-diff-heading {
2306:     /* modus-themes-diff-heading */
2307:     color: #dae7ff;
2308:     background-color: #304466;
2309: }
2310: .org-modus-themes-diff-refine-added {
2311:     /* modus-themes-diff-refine-added */
2312:     color: #e0f6e0;
2313:     background-color: #005a36;
2314: }
2315: .org-modus-themes-diff-refine-changed {
2316:     /* modus-themes-diff-refine-changed */
2317:     color: #ffffcc;
2318:     background-color: #585800;
2319: }
2320: .org-modus-themes-diff-refine-removed {
2321:     /* modus-themes-diff-refine-removed */
2322:     color: #ffd9eb;
2323:     background-color: #852828;
2324: }
2325: .org-modus-themes-diff-removed {
2326:     /* modus-themes-diff-removed */
2327:     color: #eebdba;
2328:     background-color: #601f29;
2329: }
2330: .org-modus-themes-fringe-blue {
2331:     /* modus-themes-fringe-blue */
2332:     color: #ffffff;
2333:     background-color: #3f33af;
2334: }
2335: .org-modus-themes-fringe-cyan {
2336:     /* modus-themes-fringe-cyan */
2337:     color: #ffffff;
2338:     background-color: #004f8f;
2339: }
2340: .org-modus-themes-fringe-green {
2341:     /* modus-themes-fringe-green */
2342:     color: #ffffff;
2343:     background-color: #006700;
2344: }
2345: .org-modus-themes-fringe-magenta {
2346:     /* modus-themes-fringe-magenta */
2347:     color: #ffffff;
2348:     background-color: #6f2f89;
2349: }
2350: .org-modus-themes-fringe-red {
2351:     /* modus-themes-fringe-red */
2352:     color: #ffffff;
2353:     background-color: #8f1f4b;
2354: }
2355: .org-modus-themes-fringe-yellow {
2356:     /* modus-themes-fringe-yellow */
2357:     color: #ffffff;
2358:     background-color: #6f4f00;
2359: }
2360: .org-modus-themes-grue {
2361:     /* modus-themes-grue */
2362:     color: #44bc44;
2363: }
2364: .org-modus-themes-grue-active {
2365:     /* modus-themes-grue-active */
2366:     color: #70d73f;
2367: }
2368: .org-modus-themes-grue-background-active {
2369:     /* modus-themes-grue-background-active */
2370:     color: #ffffff;
2371:     background-color: #006700;
2372: }
2373: .org-modus-themes-grue-background-intense {
2374:     /* modus-themes-grue-background-intense */
2375:     color: #ffffff;
2376:     background-color: #006800;
2377: }
2378: .org-modus-themes-grue-background-subtle {
2379:     /* modus-themes-grue-background-subtle */
2380:     color: #e0e6f0;
2381:     background-color: #2f4a00;
2382: }
2383: .org-modus-themes-grue-nuanced {
2384:     /* modus-themes-grue-nuanced */
2385:     color: #b8e2b8;
2386: }
2387: .org-modus-themes-heading-0 {
2388:     /* modus-themes-heading-0 */
2389:     color: #6ae4b9;
2390:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2391: }
2392: .org-modus-themes-heading-1 {
2393:     /* modus-themes-heading-1 */
2394:     color: #ffffff;
2395:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2396: }
2397: .org-modus-themes-heading-2 {
2398:     /* modus-themes-heading-2 */
2399:     color: #f8dec0;
2400:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2401: }
2402: .org-modus-themes-heading-3 {
2403:     /* modus-themes-heading-3 */
2404:     color: #c6eaff;
2405:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2406: }
2407: .org-modus-themes-heading-4 {
2408:     /* modus-themes-heading-4 */
2409:     color: #bfebe0;
2410:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2411: }
2412: .org-modus-themes-heading-5 {
2413:     /* modus-themes-heading-5 */
2414:     color: #fbd6f4;
2415:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2416: }
2417: .org-modus-themes-heading-6 {
2418:     /* modus-themes-heading-6 */
2419:     color: #dfdfb0;
2420:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2421: }
2422: .org-modus-themes-heading-7 {
2423:     /* modus-themes-heading-7 */
2424:     color: #ffcccc;
2425:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2426: }
2427: .org-modus-themes-heading-8 {
2428:     /* modus-themes-heading-8 */
2429:     color: #e5cfef;
2430:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2431: }
2432: .org-modus-themes-hl-line {
2433:     /* modus-themes-hl-line */
2434:     background-color: #292929;
2435: }
2436: .org-modus-themes-intense-blue {
2437:     /* modus-themes-intense-blue */
2438:     color: #ffffff;
2439:     background-color: #2a40b8;
2440: }
2441: .org-modus-themes-intense-cyan {
2442:     /* modus-themes-intense-cyan */
2443:     color: #ffffff;
2444:     background-color: #005f88;
2445: }
2446: .org-modus-themes-intense-green {
2447:     /* modus-themes-intense-green */
2448:     color: #ffffff;
2449:     background-color: #006800;
2450: }
2451: .org-modus-themes-intense-magenta {
2452:     /* modus-themes-intense-magenta */
2453:     color: #ffffff;
2454:     background-color: #7042a2;
2455: }
2456: .org-modus-themes-intense-neutral {
2457:     /* modus-themes-intense-neutral */
2458:     color: #ffffff;
2459:     background-color: #323232;
2460: }
2461: .org-modus-themes-intense-red {
2462:     /* modus-themes-intense-red */
2463:     color: #ffffff;
2464:     background-color: #a4202a;
2465: }
2466: .org-modus-themes-intense-yellow {
2467:     /* modus-themes-intense-yellow */
2468:     color: #ffffff;
2469:     background-color: #874900;
2470: }
2471: .org-modus-themes-lang-error {
2472:     /* modus-themes-lang-error */
2473:     text-decoration: underline;
2474: }
2475: .org-modus-themes-lang-note {
2476:     /* modus-themes-lang-note */
2477:     text-decoration: underline;
2478: }
2479: .org-modus-themes-lang-warning {
2480:     /* modus-themes-lang-warning */
2481:     text-decoration: underline;
2482: }
2483: .org-modus-themes-link-broken {
2484:     /* modus-themes-link-broken */
2485:     color: #ff8059;
2486:     text-decoration: underline;
2487: }
2488: .org-modus-themes-link-symlink {
2489:     /* modus-themes-link-symlink */
2490:     color: #00d3d0;
2491:     text-decoration: underline;
2492: }
2493: .org-modus-themes-mark-alt {
2494:     /* modus-themes-mark-alt */
2495:     color: #f0aa20;
2496:     background-color: #3f2210;
2497:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2498: }
2499: .org-modus-themes-mark-del {
2500:     /* modus-themes-mark-del */
2501:     color: #ff99aa;
2502:     background-color: #5a0000;
2503:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2504: }
2505: .org-modus-themes-mark-sel {
2506:     /* modus-themes-mark-sel */
2507:     color: #60cfa2;
2508:     background-color: #002f2f;
2509:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2510: }
2511: .org-modus-themes-mark-symbol {
2512:     /* modus-themes-mark-symbol */
2513:     color: #79a8ff;
2514:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2515: }
2516: .org-modus-themes-markup-code {
2517:     /* modus-themes-markup-code */
2518:     color: #6ae4b9;
2519: }
2520: .org-modus-themes-markup-macro {
2521:     /* modus-themes-markup-macro */
2522:     color: #b6a0ff;
2523: }
2524: .org-modus-themes-markup-verbatim {
2525:     /* modus-themes-markup-verbatim */
2526:     color: #f78fe7;
2527: }
2528: .org-modus-themes-nuanced-blue {
2529:     /* modus-themes-nuanced-blue */
2530:     background-color: #0f0e39;
2531: }
2532: .org-modus-themes-nuanced-cyan {
2533:     /* modus-themes-nuanced-cyan */
2534:     background-color: #041529;
2535: }
2536: .org-modus-themes-nuanced-green {
2537:     /* modus-themes-nuanced-green */
2538:     background-color: #001904;
2539: }
2540: .org-modus-themes-nuanced-magenta {
2541:     /* modus-themes-nuanced-magenta */
2542:     background-color: #230631;
2543: }
2544: .org-modus-themes-nuanced-red {
2545:     /* modus-themes-nuanced-red */
2546:     background-color: #2c0614;
2547: }
2548: .org-modus-themes-nuanced-yellow {
2549:     /* modus-themes-nuanced-yellow */
2550:     background-color: #221000;
2551: }
2552: .org-modus-themes-prompt {
2553:     /* modus-themes-prompt */
2554:     color: #6ae4b9;
2555: }
2556: .org-modus-themes-pseudo-header {
2557:     /* modus-themes-pseudo-header */
2558:     color: #ffffff;
2559:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2560: }
2561: .org-modus-themes-refine-blue {
2562:     /* modus-themes-refine-blue */
2563:     color: #8ecfff;
2564:     background-color: #242679;
2565: }
2566: .org-modus-themes-refine-cyan {
2567:     /* modus-themes-refine-cyan */
2568:     color: #8ae4f2;
2569:     background-color: #004065;
2570: }
2571: .org-modus-themes-refine-green {
2572:     /* modus-themes-refine-green */
2573:     color: #9ff0cf;
2574:     background-color: #00422a;
2575: }
2576: .org-modus-themes-refine-magenta {
2577:     /* modus-themes-refine-magenta */
2578:     color: #ffcaf0;
2579:     background-color: #71206a;
2580: }
2581: .org-modus-themes-refine-red {
2582:     /* modus-themes-refine-red */
2583:     color: #ffb9ab;
2584:     background-color: #77002a;
2585: }
2586: .org-modus-themes-refine-yellow {
2587:     /* modus-themes-refine-yellow */
2588:     color: #e2d980;
2589:     background-color: #693200;
2590: }
2591: .org-modus-themes-reset-soft {
2592:     /* modus-themes-reset-soft */
2593:     color: #ffffff;
2594:     background-color: #000000;
2595: }
2596: .org-modus-themes-search-success {
2597:     /* modus-themes-search-success */
2598:     color: #ffffff;
2599:     background-color: #874900;
2600: }
2601: .org-modus-themes-search-success-lazy {
2602:     /* modus-themes-search-success-lazy */
2603:     color: #e0e6f0;
2604:     background-color: #00415e;
2605: }
2606: .org-modus-themes-search-success-modeline {
2607:     /* modus-themes-search-success-modeline */
2608:     color: #70d73f;
2609: }
2610: 
2611: .org-modus-themes-special-calm {
2612:     /* modus-themes-special-calm */
2613:     color: #fbd6f4;
2614:     background-color: #392a48;
2615: }
2616: .org-modus-themes-special-cold {
2617:     /* modus-themes-special-cold */
2618:     color: #c6eaff;
2619:     background-color: #203448;
2620: }
2621: .org-modus-themes-special-mild {
2622:     /* modus-themes-special-mild */
2623:     color: #bfebe0;
2624:     background-color: #00322e;
2625: }
2626: .org-modus-themes-special-warm {
2627:     /* modus-themes-special-warm */
2628:     color: #f8dec0;
2629:     background-color: #382f27;
2630: }
2631: .org-modus-themes-subtle-blue {
2632:     /* modus-themes-subtle-blue */
2633:     color: #e0e6f0;
2634:     background-color: #10387c;
2635: }
2636: .org-modus-themes-subtle-cyan {
2637:     /* modus-themes-subtle-cyan */
2638:     color: #e0e6f0;
2639:     background-color: #00415e;
2640: }
2641: .org-modus-themes-subtle-green {
2642:     /* modus-themes-subtle-green */
2643:     color: #e0e6f0;
2644:     background-color: #2f4a00;
2645: }
2646: .org-modus-themes-subtle-magenta {
2647:     /* modus-themes-subtle-magenta */
2648:     color: #e0e6f0;
2649:     background-color: #49366e;
2650: }
2651: .org-modus-themes-subtle-neutral {
2652:     /* modus-themes-subtle-neutral */
2653:     color: #bfc0c4;
2654:     background-color: #1e1e1e;
2655: }
2656: .org-modus-themes-subtle-red {
2657:     /* modus-themes-subtle-red */
2658:     color: #e0e6f0;
2659:     background-color: #762422;
2660: }
2661: .org-modus-themes-subtle-yellow {
2662:     /* modus-themes-subtle-yellow */
2663:     color: #e0e6f0;
2664:     background-color: #604200;
2665: }
2666: .org-modus-themes-tab-active {
2667:     /* modus-themes-tab-active */
2668:     background-color: #0e0e0e;
2669:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2670: }
2671: .org-modus-themes-tab-backdrop {
2672:     /* modus-themes-tab-backdrop */
2673:     background-color: #323232;
2674: }
2675: .org-modus-themes-tab-inactive {
2676:     /* modus-themes-tab-inactive */
2677:     color: #e0e6f0;
2678:     background-color: #424242;
2679: }
2680: .org-mouse-drag-and-drop-region {
2681:     /* mouse-drag-and-drop-region */
2682:     color: #ffffff;
2683:     background-color: #3c3c3c;
2684: }
2685: .org-negation-char {
2686:     /* font-lock-negation-char-face */
2687:     color: #d0bc00;
2688: }
2689: .org-next-error {
2690:     /* next-error */
2691:     color: #e0e6f0;
2692:     background-color: #762422;
2693: }
2694: .org-next-error-message {
2695:     /* next-error-message */
2696:     color: #ffffff;
2697:     background-color: #00415e;
2698: }
2699: .org-nobreak-hyphen {
2700:     /* nobreak-hyphen */
2701:     color: #e7a59a;
2702: }
2703: .org-nobreak-space {
2704:     /* nobreak-space */
2705:     color: #e7a59a;
2706:     text-decoration: underline;
2707: }
2708: .org-org-agenda-calendar-daterange {
2709:     /* org-agenda-calendar-daterange */
2710:     color: #ffffff;
2711:     background-color: #000000;
2712: }
2713: .org-org-agenda-calendar-event {
2714:     /* org-agenda-calendar-event */
2715:     color: #a8a8a8;
2716: }
2717: .org-org-agenda-calendar-sexp {
2718:     /* org-agenda-calendar-sexp */
2719:     color: #a8a8a8;
2720: }
2721: .org-org-agenda-clocking {
2722:     /* org-agenda-clocking */
2723:     color: #ef8b50;
2724:     background-color: #221000;
2725: }
2726: .org-org-agenda-column-dateline {
2727:     /* org-agenda-column-dateline */
2728:     background-color: #191a1b;
2729: }
2730: .org-org-agenda-current-time {
2731:     /* org-agenda-current-time */
2732:     color: #80b2f0;
2733: }
2734: .org-org-agenda-date {
2735:     /* org-agenda-date */
2736:     color: #00d3d0;
2737: }
2738: .org-org-agenda-date-today {
2739:     /* org-agenda-date-today */
2740:     color: #00d3d0;
2741:     background-color: #203448;
2742: }
2743: .org-org-agenda-date-weekend {
2744:     /* org-agenda-date-weekend */
2745:     color: #a4d0bb;
2746: }
2747: .org-org-agenda-date-weekend-today {
2748:     /* org-agenda-date-weekend-today */
2749:     color: #a4d0bb;
2750:     background-color: #203448;
2751: }
2752: .org-org-agenda-diary {
2753:     /* org-agenda-diary */
2754:     color: #a8a8a8;
2755: }
2756: .org-org-agenda-dimmed-todo {
2757:     /* org-agenda-dimmed-todo-face */
2758:     color: #a8a8a8;
2759: }
2760: .org-org-agenda-done {
2761:     /* org-agenda-done */
2762:     color: #b8e2b8;
2763: }
2764: .org-org-agenda-filter-category {
2765:     /* org-agenda-filter-category */
2766:     color: #00d8b4;
2767:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2768: }
2769: .org-org-agenda-filter-effort {
2770:     /* org-agenda-filter-effort */
2771:     color: #00d8b4;
2772:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2773: }
2774: .org-org-agenda-filter-regexp {
2775:     /* org-agenda-filter-regexp */
2776:     color: #00d8b4;
2777:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2778: }
2779: .org-org-agenda-filter-tags {
2780:     /* org-agenda-filter-tags */
2781:     color: #00d8b4;
2782:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2783: }
2784: .org-org-agenda-restriction-lock {
2785:     /* org-agenda-restriction-lock */
2786:     color: #e0e6f0;
2787:     background-color: #100f10;
2788: }
2789: .org-org-agenda-structure {
2790:     /* org-agenda-structure */
2791:     color: #79a8ff;
2792:     font-size: 114%;
2793:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2794: }
2795: .org-org-agenda-structure-filter {
2796:     /* org-agenda-structure-filter */
2797:     color: #d0bc00;
2798:     font-size: 114%;
2799:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2800: }
2801: .org-org-agenda-structure-secondary {
2802:     /* org-agenda-structure-secondary */
2803:     color: #00d3d0;
2804: }
2805: .org-org-archived {
2806:     /* org-archived */
2807:     color: #a8a8a8;
2808:     background-color: #191a1b;
2809: }
2810: .org-org-block {
2811:     /* org-block */
2812:     color: #ffffff;
2813: }
2814: .org-org-block-begin-line {
2815:     /* org-block-begin-line */
2816:     color: #a8a8a8;
2817: }
2818: .org-org-block-end-line {
2819:     /* org-block-end-line */
2820:     color: #a8a8a8;
2821: }
2822: .org-org-checkbox {
2823:     /* org-checkbox */
2824:     color: #d3b55f;
2825: }
2826: .org-org-checkbox-statistics-done {
2827:     /* org-checkbox-statistics-done */
2828:     color: #44bc44;
2829: }
2830: .org-org-checkbox-statistics-todo {
2831:     /* org-checkbox-statistics-todo */
2832:     color: #ff8059;
2833: }
2834: .org-org-cite {
2835:     /* org-cite */
2836:     color: #00bcff;
2837:     text-decoration: underline;
2838: }
2839: .org-org-cite-key {
2840:     /* org-cite-key */
2841:     color: #00bcff;
2842:     text-decoration: underline;
2843: }
2844: .org-org-clock-overlay {
2845:     /* org-clock-overlay */
2846:     color: #f5aa80;
2847:     background-color: #221000;
2848: }
2849: .org-org-code {
2850:     /* org-code */
2851:     color: #6ae4b9;
2852: }
2853: .org-org-date-selected {
2854:     /* org-date-selected */
2855:     color: #79a8ff;
2856: }
2857: .org-org-default {
2858:     /* org-default */
2859:     color: #ffffff;
2860:     background-color: #000000;
2861: }
2862: .org-org-document-info {
2863:     /* org-document-info */
2864:     color: #c6eaff;
2865: }
2866: .org-org-document-title {
2867:     /* org-document-title */
2868:     color: #6ae4b9;
2869:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2870: }
2871: .org-org-done {
2872:     /* org-done */
2873:     color: #44bc44;
2874: }
2875: .org-org-ellipsis {
2876: }
2877: .org-org-footnote {
2878:     /* org-footnote */
2879:     color: #79a8ff;
2880:     text-decoration: underline;
2881: }
2882: .org-org-formula {
2883:     /* org-formula */
2884:     color: #ef8b50;
2885: }
2886: .org-org-headline-todo {
2887:     /* org-headline-todo */
2888:     color: #ffcccc;
2889: }
2890: .org-org-hide {
2891:     /* org-hide */
2892:     color: #000000;
2893: }
2894: .org-org-imminent-deadline {
2895:     /* org-imminent-deadline */
2896:     color: #fe6060;
2897: }
2898: .org-org-inline-src-block {
2899:     /* org-inline-src-block */
2900:     color: #ffffff;
2901: }
2902: .org-org-latex-and-related {
2903:     /* org-latex-and-related */
2904:     color: #e0b2d6;
2905: }
2906: .org-org-level-1 {
2907:     /* org-level-1 */
2908:     color: #ffffff;
2909:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2910: }
2911: .org-org-level-2 {
2912:     /* org-level-2 */
2913:     color: #f8dec0;
2914:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2915: }
2916: .org-org-level-3 {
2917:     /* org-level-3 */
2918:     color: #c6eaff;
2919:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2920: }
2921: .org-org-level-4 {
2922:     /* org-level-4 */
2923:     color: #bfebe0;
2924:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2925: }
2926: .org-org-level-5 {
2927:     /* org-level-5 */
2928:     color: #fbd6f4;
2929:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2930: }
2931: .org-org-level-6 {
2932:     /* org-level-6 */
2933:     color: #dfdfb0;
2934:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2935: }
2936: .org-org-level-7 {
2937:     /* org-level-7 */
2938:     color: #ffcccc;
2939:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2940: }
2941: .org-org-level-8 {
2942:     /* org-level-8 */
2943:     color: #e5cfef;
2944:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2945: }
2946: .org-org-link {
2947:     /* org-link */
2948:     color: #00bcff;
2949:     text-decoration: underline;
2950: }
2951: .org-org-list-dt {
2952:     /* org-list-dt */
2953:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2954: }
2955: .org-org-macro {
2956:     /* org-macro */
2957:     color: #b6a0ff;
2958: }
2959: .org-org-mode-line-clock {
2960:     /* org-mode-line-clock */
2961:     color: #ffffff;
2962: }
2963: .org-org-mode-line-clock-overrun {
2964:     /* org-mode-line-clock-overrun */
2965:     color: #ffa7ba;
2966:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
2967: }
2968: .org-org-priority {
2969:     /* org-priority */
2970:     color: #feacd0;
2971: }
2972: .org-org-property-value {
2973:     /* org-property-value */
2974:     color: #c6eaff;
2975: }
2976: .org-org-quote {
2977:     /* org-quote */
2978:     color: #c6eaff;
2979: }
2980: .org-org-scheduled {
2981:     /* org-scheduled */
2982:     color: #d2b580;
2983: }
2984: .org-org-scheduled-previously {
2985:     /* org-scheduled-previously */
2986:     color: #d0bc00;
2987: }
2988: .org-org-scheduled-today {
2989:     /* org-scheduled-today */
2990:     color: #d0bc00;
2991: }
2992: .org-org-sexp-date {
2993:     /* org-sexp-date */
2994:     color: #6ae4b9;
2995: }
2996: .org-org-table {
2997:     /* org-table */
2998:     color: #c6eaff;
2999: }
3000: .org-org-table-row {
3001:     /* org-table-row */
3002:     color: #c6eaff;
3003: }
3004: .org-org-tag {
3005:     /* org-tag */
3006:     color: #e5cfef;
3007: }
3008: .org-org-tag-group {
3009:     /* org-tag-group */
3010:     color: #a8e5e5;
3011:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3012: }
3013: .org-org-target {
3014:     /* org-target */
3015:     text-decoration: underline;
3016: }
3017: .org-org-time-grid {
3018:     /* org-time-grid */
3019:     color: #a8a8a8;
3020: }
3021: .org-org-todo {
3022:     /* org-todo */
3023:     color: #ff8059;
3024: }
3025: .org-org-upcoming-deadline {
3026:     /* org-upcoming-deadline */
3027:     color: #ff9077;
3028: }
3029: .org-org-upcoming-distant-deadline {
3030:     /* org-upcoming-distant-deadline */
3031:     color: #ffa0a0;
3032: }
3033: .org-org-verbatim {
3034:     /* org-verbatim */
3035:     color: #f78fe7;
3036: }
3037: .org-org-verse {
3038:     /* org-verse */
3039:     color: #c6eaff;
3040: }
3041: .org-org-warning {
3042:     /* org-warning */
3043:     color: #ff9077;
3044:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3045: }
3046: .org-outline-1 {
3047:     /* outline-1 */
3048:     color: #ffffff;
3049:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3050: }
3051: .org-outline-2 {
3052:     /* outline-2 */
3053:     color: #f8dec0;
3054:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3055: }
3056: .org-outline-3 {
3057:     /* outline-3 */
3058:     color: #c6eaff;
3059:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3060: }
3061: .org-outline-4 {
3062:     /* outline-4 */
3063:     color: #bfebe0;
3064:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3065: }
3066: .org-outline-5 {
3067:     /* outline-5 */
3068:     color: #fbd6f4;
3069:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3070: }
3071: .org-outline-6 {
3072:     /* outline-6 */
3073:     color: #dfdfb0;
3074:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3075: }
3076: .org-outline-7 {
3077:     /* outline-7 */
3078:     color: #ffcccc;
3079:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3080: }
3081: .org-outline-8 {
3082:     /* outline-8 */
3083:     color: #e5cfef;
3084:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3085: }
3086: .org-package-description {
3087:     /* package-description */
3088:     color: #c6eaff;
3089: }
3090: .org-package-help-section-name {
3091:     /* package-help-section-name */
3092:     color: #00d3d0;
3093:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3094: }
3095: .org-package-name {
3096:     /* package-name */
3097:     color: #00bcff;
3098:     text-decoration: underline;
3099: }
3100: .org-package-status-avail-obso {
3101:     /* package-status-avail-obso */
3102:     color: #ff8059;
3103:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3104: }
3105: .org-package-status-available {
3106:     /* package-status-available */
3107:     color: #6ae4b9;
3108: }
3109: .org-package-status-built-in {
3110:     /* package-status-built-in */
3111:     color: #feacd0;
3112: }
3113: .org-package-status-dependency {
3114:     /* package-status-dependency */
3115:     color: #b6a0ff;
3116: }
3117: .org-package-status-disabled {
3118:     /* package-status-disabled */
3119:     color: #e0e6f0;
3120:     background-color: #762422;
3121: }
3122: .org-package-status-external {
3123:     /* package-status-external */
3124:     color: #6ae4b9;
3125: }
3126: .org-package-status-from-source {
3127:     /* package-status-from-source */
3128:     color: #d0bc00;
3129: }
3130: .org-package-status-held {
3131:     /* package-status-held */
3132:     color: #c0c530;
3133: }
3134: .org-package-status-incompat {
3135:     /* package-status-incompat */
3136:     color: #d0bc00;
3137:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3138: }
3139: .org-package-status-installed {
3140:     /* package-status-installed */
3141:     color: #f8dec0;
3142: }
3143: .org-package-status-new {
3144:     /* package-status-new */
3145:     color: #44bc44;
3146:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3147: }
3148: .org-package-status-unsigned {
3149:     /* package-status-unsigned */
3150:     color: #ff8059;
3151:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3152: }
3153: .org-preprocessor {
3154:     /* font-lock-preprocessor-face */
3155:     color: #ff9077;
3156: }
3157: .org-property-name {
3158:     /* font-lock-property-name-face */
3159:     color: #00d3d0;
3160: }
3161: .org-property-use {
3162:     /* font-lock-property-use-face */
3163:     color: #00d3d0;
3164: }
3165: .org-punctuation {
3166: }
3167: .org-query-replace {
3168:     /* query-replace */
3169:     color: #ffffff;
3170:     background-color: #a4202a;
3171: }
3172: .org-rectangle-preview {
3173:     /* rectangle-preview */
3174:     color: #f8dec0;
3175:     background-color: #382f27;
3176: }
3177: .org-regexp {
3178:     /* font-lock-regexp-face */
3179:     color: #79a8ff;
3180: }
3181: .org-regexp-grouping-backslash {
3182:     /* font-lock-regexp-grouping-backslash */
3183:     color: #abab00;
3184: }
3185: .org-regexp-grouping-construct {
3186:     /* font-lock-regexp-grouping-construct */
3187:     color: #e7a59a;
3188: }
3189: .org-region {
3190:     /* region */
3191:     color: #ffffff;
3192:     background-color: #3c3c3c;
3193: }
3194: .org-secondary-selection {
3195:     /* secondary-selection */
3196:     color: #c6eaff;
3197:     background-color: #203448;
3198: }
3199: .org-separator-line {
3200:     /* separator-line */
3201:     text-decoration: underline;
3202: }
3203: .org-sh-escaped-newline {
3204:     /* sh-escaped-newline */
3205:     color: #79a8ff;
3206: }
3207: .org-sh-heredoc {
3208:     /* sh-heredoc */
3209:     color: #79a8ff;
3210: }
3211: .org-sh-quoted-exec {
3212:     /* sh-quoted-exec */
3213:     color: #f78fe7;
3214: }
3215: .org-shadow {
3216:     /* shadow */
3217:     color: #a8a8a8;
3218: }
3219: .org-show-paren-match {
3220:     /* show-paren-match */
3221:     color: #ffffff;
3222:     background-color: #6f3355;
3223: }
3224: .org-show-paren-match-expression {
3225:     /* show-paren-match-expression */
3226:     background-color: #221044;
3227: }
3228: .org-show-paren-mismatch {
3229:     /* show-paren-mismatch */
3230:     color: #ffffff;
3231:     background-color: #a4202a;
3232: }
3233: .org-shr-abbreviation {
3234:     /* shr-abbreviation */
3235:     text-decoration: underline;
3236: }
3237: .org-shr-code {
3238:     /* shr-code */
3239:     color: #f78fe7;
3240: }
3241: .org-shr-h1 {
3242:     /* shr-h1 */
3243:     color: #ffffff;
3244:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3245: }
3246: .org-shr-h2 {
3247:     /* shr-h2 */
3248:     color: #f8dec0;
3249:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3250: }
3251: .org-shr-h3 {
3252:     /* shr-h3 */
3253:     color: #c6eaff;
3254:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3255: }
3256: .org-shr-h4 {
3257:     /* shr-h4 */
3258:     color: #bfebe0;
3259:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3260: }
3261: .org-shr-h5 {
3262:     /* shr-h5 */
3263:     color: #fbd6f4;
3264:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3265: }
3266: .org-shr-h6 {
3267:     /* shr-h6 */
3268:     color: #dfdfb0;
3269:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3270: }
3271: .org-shr-link {
3272:     /* shr-link */
3273:     color: #00bcff;
3274:     text-decoration: underline;
3275: }
3276: .org-shr-mark {
3277:     /* shr-mark */
3278:     color: #000000;
3279:     background-color: #ffff00;
3280: }
3281: .org-shr-selected-link {
3282:     /* shr-selected-link */
3283:     color: #e0e6f0;
3284:     background-color: #762422;
3285: }
3286: .org-shr-strike-through {
3287:     /* shr-strike-through */
3288:     text-decoration: line-through;
3289: }
3290: .org-shr-sup {
3291:     /* shr-sup */
3292:     font-size: 80%;
3293: }
3294: .org-shr-text {
3295:     /* shr-text */
3296:     font-size: 110%;
3297: }
3298: .org-spray-accent {
3299:     /* spray-accent-face */
3300:     color: #ff0000;
3301:     background-color: #000000;
3302: }
3303: .org-spray-base {
3304:     /* spray-base-face */
3305:     color: #ffffff;
3306:     background-color: #000000;
3307: }
3308: .org-string {
3309:     /* font-lock-string-face */
3310:     color: #79a8ff;
3311: }
3312: .org-tab-bar {
3313:     /* tab-bar */
3314:     background-color: #323232;
3315: }
3316: .org-tab-bar-tab {
3317:     /* tab-bar-tab */
3318:     background-color: #0e0e0e;
3319:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3320: }
3321: .org-tab-bar-tab-group-current {
3322:     /* tab-bar-tab-group-current */
3323:     background-color: #0e0e0e;
3324: }
3325: .org-tab-bar-tab-group-inactive {
3326:     /* tab-bar-tab-group-inactive */
3327:     color: #e0e6f0;
3328:     background-color: #424242;
3329: }
3330: .org-tab-bar-tab-inactive {
3331:     /* tab-bar-tab-inactive */
3332:     color: #e0e6f0;
3333:     background-color: #424242;
3334: }
3335: .org-tab-line {
3336:     /* tab-line */
3337:     background-color: #323232;
3338:     font-size: 95%;
3339: }
3340: .org-table-cell {
3341:     /* table-cell */
3342:     background-color: #0f0e39;
3343: }
3344: .org-tabulated-list-fake-header {
3345:     /* tabulated-list-fake-header */
3346:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3347:     text-decoration: underline;
3348:     text-decoration: overline;
3349: }
3350: .org-term {
3351:     /* term */
3352:     color: #ffffff;
3353:     background-color: #000000;
3354: }
3355: .org-term-bold {
3356:     /* term-bold */
3357:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3358: }
3359: .org-term-color-black {
3360:     /* term-color-black */
3361:     color: #595959;
3362:     background-color: #595959;
3363: }
3364: .org-term-color-blue {
3365:     /* term-color-blue */
3366:     color: #2fafff;
3367:     background-color: #2fafff;
3368: }
3369: .org-term-color-bright-black {
3370:     /* term-color-bright-black */
3371:     color: #595959;
3372:     background-color: #595959;
3373: }
3374: .org-term-color-bright-blue {
3375:     /* term-color-bright-blue */
3376:     color: #79a8ff;
3377:     background-color: #79a8ff;
3378: }
3379: .org-term-color-bright-cyan {
3380:     /* term-color-bright-cyan */
3381:     color: #6ae4b9;
3382:     background-color: #6ae4b9;
3383: }
3384: .org-term-color-bright-green {
3385:     /* term-color-bright-green */
3386:     color: #00c06f;
3387:     background-color: #00c06f;
3388: }
3389: .org-term-color-bright-magenta {
3390:     /* term-color-bright-magenta */
3391:     color: #b6a0ff;
3392:     background-color: #b6a0ff;
3393: }
3394: .org-term-color-bright-red {
3395:     /* term-color-bright-red */
3396:     color: #ef8b50;
3397:     background-color: #ef8b50;
3398: }
3399: .org-term-color-bright-white {
3400:     /* term-color-bright-white */
3401:     color: #ffffff;
3402:     background-color: #ffffff;
3403: }
3404: .org-term-color-bright-yellow {
3405:     /* term-color-bright-yellow */
3406:     color: #c0c530;
3407:     background-color: #c0c530;
3408: }
3409: .org-term-color-cyan {
3410:     /* term-color-cyan */
3411:     color: #00d3d0;
3412:     background-color: #00d3d0;
3413: }
3414: .org-term-color-green {
3415:     /* term-color-green */
3416:     color: #44bc44;
3417:     background-color: #44bc44;
3418: }
3419: .org-term-color-magenta {
3420:     /* term-color-magenta */
3421:     color: #feacd0;
3422:     background-color: #feacd0;
3423: }
3424: .org-term-color-red {
3425:     /* term-color-red */
3426:     color: #ff8059;
3427:     background-color: #ff8059;
3428: }
3429: .org-term-color-white {
3430:     /* term-color-white */
3431:     color: #a6a6a6;
3432:     background-color: #a6a6a6;
3433: }
3434: .org-term-color-yellow {
3435:     /* term-color-yellow */
3436:     color: #d0bc00;
3437:     background-color: #d0bc00;
3438: }
3439: .org-term-italic {
3440:     /* term-italic */
3441:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Italic", Roboto, "Iosevka Term Italic", Arial, "Iosevka Term Italic", sans-serif;;
3442: }
3443: .org-term-underline {
3444:     /* term-underline */
3445:     text-decoration: underline;
3446: }
3447: .org-tool-bar {
3448:     /* tool-bar */
3449:     color: #000000;
3450:     background-color: #bfbfbf;
3451: }
3452: .org-tooltip {
3453:     /* tooltip */
3454:     color: #ffffff;
3455:     background-color: #203448;
3456: }
3457: .org-trailing-whitespace {
3458:     /* trailing-whitespace */
3459:     background-color: #a4202a;
3460: }
3461: .org-treesit-explorer-anonymous-node {
3462:     /* treesit-explorer-anonymous-node */
3463:     color: #a8a8a8;
3464: }
3465: .org-treesit-explorer-field-name {
3466: }
3467: .org-tty-menu-disabled {
3468:     /* tty-menu-disabled-face */
3469:     color: #a8a8a8;
3470:     background-color: #191a1b;
3471: }
3472: .org-tty-menu-enabled {
3473:     /* tty-menu-enabled-face */
3474:     color: #ffffff;
3475:     background-color: #191a1b;
3476:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3477: }
3478: .org-tty-menu-selected {
3479:     /* tty-menu-selected-face */
3480:     color: #ffffff;
3481:     background-color: #2a40b8;
3482: }
3483: .org-type {
3484:     /* font-lock-type-face */
3485:     color: #6ae4b9;
3486: }
3487: .org-underline {
3488:     /* underline */
3489:     text-decoration: underline;
3490: }
3491: .org-variable-name {
3492:     /* font-lock-variable-name-face */
3493:     color: #00d3d0;
3494: }
3495: .org-variable-pitch {
3496: }
3497: .org-variable-pitch-text {
3498:     /* variable-pitch-text */
3499:     font-size: 110%;
3500: }
3501: .org-variable-use {
3502:     /* font-lock-variable-use-face */
3503:     color: #00d3d0;
3504: }
3505: .org-vc-conflict-state {
3506:     /* vc-conflict-state */
3507:     color: #ffa7ba;
3508:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3509: }
3510: .org-vc-edited-state {
3511:     /* vc-edited-state */
3512:     color: #dbbe5f;
3513: }
3514: .org-vc-locally-added-state {
3515:     /* vc-locally-added-state */
3516:     color: #00d8b4;
3517: }
3518: .org-vc-locked-state {
3519:     /* vc-locked-state */
3520:     color: #34cfff;
3521: }
3522: .org-vc-missing-state {
3523:     /* vc-missing-state */
3524:     color: #d5b1ff;
3525: }
3526: .org-vc-needs-update-state {
3527:     /* vc-needs-update-state */
3528:     color: #70d73f;
3529: }
3530: .org-vc-removed-state {
3531:     /* vc-removed-state */
3532:     color: #ffa7ba;
3533: }
3534: .org-vc-state-base {
3535:     /* vc-state-base */
3536:     color: #f4f4f4;
3537: }
3538: .org-vc-up-to-date-state {
3539:     /* vc-up-to-date-state */
3540:     color: #c6eaff;
3541: }
3542: .org-vertical-border {
3543:     /* vertical-border */
3544:     color: #646464;
3545: }
3546: .org-warning {
3547:     /* warning */
3548:     color: #d0bc00;
3549:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3550: }
3551: .org-warning-1 {
3552:     /* font-lock-warning-face */
3553:     color: #d0bc00;
3554: }
3555: .org-widget-button {
3556:     /* widget-button */
3557:     color: #79a8ff;
3558:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3559: }
3560: .org-widget-button-pressed {
3561:     /* widget-button-pressed */
3562:     color: #f78fe7;
3563:     font-family: -apple-system, BlinkMacSystemFont, "Iosevka Term Bold", Roboto, "Iosevka Term Bold", Arial, "Iosevka Term Bold", sans-serif;
3564: }
3565: .org-widget-documentation {
3566:     /* widget-documentation */
3567:     color: #44bc44;
3568: }
3569: .org-widget-field {
3570:     /* widget-field */
3571:     color: #ffffff;
3572:     background-color: #191a1b;
3573: }
3574: .org-widget-inactive {
3575:     /* widget-inactive */
3576:     color: #a8a8a8;
3577:     background-color: #100f10;
3578: }
3579: .org-widget-single-line-field {
3580:     /* widget-single-line-field */
3581:     color: #ffffff;
3582:     background-color: #191a1b;
3583: }
3584: .org-window-divider {
3585:     /* window-divider */
3586:     color: #646464;
3587: }
3588: .org-window-divider-first-pixel {
3589:     /* window-divider-first-pixel */
3590:     color: #969696;
3591: }
3592: .org-window-divider-last-pixel {
3593:     /* window-divider-last-pixel */
3594:     color: #969696;
3595: }

Org-Mode Publish

Dont forget to pull in the changes made in the git submodules before publishing:

1: git submodule update --recursive --remote # --init

If for some reason publish.el is deleted or missing, the file must be copied manually from the export directory.

  1: ;; -*- lexical-binding: t -*-
  2: 
  3: ;; (require 'package)
  4: ;; (setq package-user-dir (expand-file-name "./.packages"))
  5: ;; (setq package-archives '(("melpa" . "https://melpa.org/packages/")
  6: ;;                          ("elpa" . "https://elpa.gnu.org/packages/")))
  7: 
  8: ;; (package-initialize)
  9: ;; (unless package-archive-contents
 10: ;;   (package-refresh-contents))
 11: 
 12: (require 'ox-publish)
 13: 
 14: (setq org-publish-project-alist
 15:       `(("blog.suschem.ist" :components ("index"
 16:                                          "contact"
 17:                                          "imprint"
 18:                                          "webroot"
 19:                                          "blog"
 20:                                          "media"
 21:                                          "resume"
 22:                                          "cv"
 23:                                          "dots"
 24:                                          "export"
 25:                                          "gpoints"
 26:                                          "gpoints-scripts"))
 27: 
 28:         ("index"
 29:          ;;:recursive t
 30:          :base-directory "./"
 31:          :exclude ".*"
 32:          :include ("index.org")
 33:          :publishing-function org-html-publish-to-html
 34:          :publishing-directory "./"
 35:          :html-doctype "html5"
 36:          :html-html5-fancy t
 37:          :html-head-include-scripts nil
 38:          :html-head-include-default-style nil
 39:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
 40: <!-- fallback/default icons -->
 41: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
 42: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
 43: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
 44: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
 45: 
 46: <!-- light mode -->
 47: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
 48: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
 49: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
 50: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
 51: 
 52: <!-- Dark mode -->
 53: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
 54: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
 55: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
 56: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
 57: "
 58:          :html-preamble "<top>
 59: <a href=\"imprint.html\">Imprint</a> | 
 60: <a href=\"contact.html\">Contact</a> | 
 61: <a href=\"cv_jakob_maximilian_honal.html\">CV</a> | 
 62: <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a>
 63: </top>"
 64:          :html-postamble "<hr/> <footer>
 65: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
 66: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
 67: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
 68:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
 69:  </footer>"
 70: 
 71:          :with-author nil          
 72:          :with-creator nil         
 73:          :with-toc t            
 74:          :section-numbers nil      
 75:          :htmlized-source t
 76:          :time-stamp-file nil
 77:          )
 78: 
 79:         ("imprint"
 80:          ;;:recursive t
 81:          :base-directory "./"
 82:          :exclude ".*"
 83:          :include ("imprint.org")
 84:          :publishing-function org-html-publish-to-html
 85:          :publishing-directory "./"
 86:          :html-doctype "html5"
 87:          :html-html5-fancy t
 88:          :html-head-include-scripts nil
 89:          :html-head-include-default-style nil
 90:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
 91: <!-- fallback/default icons -->
 92: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
 93: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
 94: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
 95: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
 96: 
 97: <!-- light mode -->
 98: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
 99: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
100: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
101: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
102: 
103: <!-- Dark mode -->
104: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
105: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
106: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
107: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
108: "
109:          :html-preamble ""
110: 
111:          :html-postamble "<hr/> <footer>
112: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
113: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
114: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
115:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
116:  </footer>"
117: 
118:          :with-author nil          
119:          :with-creator nil         
120:          :with-toc t            
121:          :section-numbers nil      
122:          :htmlized-source t
123:          :time-stamp-file nil
124:          )
125: 
126:         ("webroot"
127:          ;;:recursive t
128:          :base-directory "./"
129:          :exclude "dots\\|README.org\\|index.org\\|imprint.org"
130:          :publishing-function org-html-publish-to-html
131:          :publishing-directory "./"
132:          :html-doctype "html5"
133:          :html-html5-fancy t
134:          :html-head-include-scripts nil
135:          :html-head-include-default-style nil
136:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
137: <!-- fallback/default icons -->
138: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
139: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
140: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
141: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
142: 
143: <!-- light mode -->
144: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
145: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
146: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
147: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
148: 
149: <!-- Dark mode -->
150: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
151: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
152: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
153: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
154: "
155:          :html-preamble "<top> <a href=\"index.html\">Home</a> | <a href=\"imprint.html\">Imprint</a> | <a href=\"contact.html\">Contact</a> | <a href=\"cv_jakob_maximilian_honal.html\">CV</a> | <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a> </top>"
156:          :html-postamble "<hr/> <footer>
157: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
158: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
159: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
160:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
161:  </footer>"
162: 
163:          :with-author nil          
164:          :with-creator nil         
165:          :with-toc t            
166:          :section-numbers nil      
167:          :htmlized-source t
168:          :time-stamp-file nil 
169:          )
170: 
171:         ("contact"
172:          ;;:recursive t
173:          :base-directory "./"
174:          :exclude ".*"
175:          :include ("contact.org")
176:          :publishing-function org-html-publish-to-html
177:          :publishing-directory "./"
178:          :html-doctype "html5"
179:          :html-html5-fancy t
180:          :html-head-include-scripts nil
181:          :html-head-include-default-style nil
182:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
183: <!-- fallback/default icons -->
184: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
185: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
186: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
187: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
188: 
189: <!-- light mode -->
190: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
191: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
192: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
193: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
194: 
195: <!-- Dark mode -->
196: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
197: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
198: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
199: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
200: "
201:          :html-preamble "<top><a href=\"index.html\">Home</a> | <a href=\"imprint.html\">Imprint</a> | <a href=\"cv_jakob_maximilian_honal.html\">CV</a> | <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a> </top>"
202:          :html-postamble "<hr/> <footer>
203: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
204: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
205: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
206:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
207:  </footer>"
208: 
209:          :with-author nil          
210:          :with-creator nil         
211:          :with-toc t            
212:          :section-numbers nil      
213:          :htmlized-source t
214:          :time-stamp-file nil 
215:          )
216: 
217:         ("blog"
218:          :recursive t
219:          :base-directory "./blog"
220:          :publishing-function org-html-publish-to-html
221:          :publishing-directory "./"
222:          :html-doctype "html5"
223:          :html-html5-fancy t
224:          :html-head-include-scripts nil
225:          :html-head-include-default-style nil
226:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
227: <!-- fallback/default icons -->
228: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
229: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
230: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
231: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
232: 
233: <!-- light mode -->
234: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
235: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
236: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
237: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
238: 
239: <!-- Dark mode -->
240: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
241: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
242: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
243: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
244: "
245: 
246:          :html-preamble "<top>
247: <a href=\"index.html\">Home</a> |
248:  <a href=\"imprint.html\">Imprint</a> |
249:  <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a>
250: </top>"
251: 
252:          :html-postamble "<hr/> <footer>
253: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
254: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
255: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
256:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
257:  </footer>"
258: 
259:          :with-author nil          
260:          :with-creator nil         
261:          :with-toc t            
262:          :section-numbers nil      
263:          :htmlized-source t
264:          :time-stamp-file nil
265:          )
266: 
267:         ("resume"
268:          :base-directory "./"
269:          :exclude ".*"
270:          :include ("README.org")
271:          :base-extension "org"
272:          :publishing-directory "./"
273:          :publishing-function org-latex-publish-to-pdf)
274: 
275:         ("cv"
276:          ;;:recursive t
277:          :base-directory "./"
278:          :exclude ".*"
279:          :include ("README.org")
280:          :publishing-function org-html-publish-to-html
281:          :publishing-directory "./"
282:          :html-doctype "html5"
283:          :html-html5-fancy t
284:          :html-head-include-scripts nil
285:          :html-head-include-default-style nil
286:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
287: <!-- fallback/default icons -->
288: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
289: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
290: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
291: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
292: 
293: <!-- light mode -->
294: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
295: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
296: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
297: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
298: 
299: <!-- Dark mode -->
300: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
301: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
302: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
303: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
304: "
305:          :html-preamble "<top>
306: <a href=\"index.html\">Home</a> | 
307: <a href=\"imprint.html\">Imprint</a> | 
308: <a href=\"contact.html\">Contact</a> | 
309: <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a>
310: </top>"
311:          :html-postamble "<hr/> <footer>
312: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
313: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
314: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
315:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
316:  </footer>"
317: 
318:          :with-author nil          
319:          :with-creator nil         
320:          :with-toc t            
321:          :section-numbers nil      
322:          :htmlized-source t
323:          :time-stamp-file nil
324:          )
325: 
326:         ("media"
327:          :base-directory "./media"
328:          :base-extension "css\\|txt\\|jpg\\|jpeg\\|gif\\|png\\|webp\\|webm\\|opus\\|ogg\\|mp4\\|mp3\\|vorbis\\|svg\\|bmp\\|flac\\|aac\\|wav"
329:          :recursive t
330:          :publishing-directory  "./media"
331:          :publishing-function org-publish-attachment
332:          :time-stamp-file nil
333:          :auto-sitemap nil
334:          ;; :sitemap-title "Medien"
335:          ;; :sitemap-filename "media.org"
336:          )
337: 
338:         ("dots"
339:          ;;:recursive t
340:          :base-directory "./dots"
341:          :publishing-function org-html-publish-to-html
342:          :publishing-directory "./"
343:          :html-doctype "html5"
344:          :html-html5-fancy t
345:          :html-head-include-scripts nil
346:          :html-head-include-default-style nil
347:          :html-head "<link rel=\"stylesheet\" href=\"modus-vivendi.css\" type=\"text/css\" />
348: <!-- fallback/default icons -->
349: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
350: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\">
351: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\">
352: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\">
353: 
354: <!-- light mode -->
355: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: light)\">
356: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
357: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_black.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: light)\">
358: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_black.png\" media=\"(prefers-color-scheme: light)\">
359: 
360: <!-- Dark mode -->
361: <link rel=\"icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
362: <link rel=\"shortcut icon\" type=\"image/png\" href=\"media/suschem_logo_favicon_white.png\" media=\"(prefers-color-scheme: dark)\">
363: <link rel=\"shortcut icon\" href=\"media/suschem_logo_favicon_white.png\" sizes=\"180x180\" media=\"(prefers-color-scheme: dark)\">
364: <link rel=\"apple-touch-icon\" href=\"media/suschem_logo_favicon_white.png\"media=\"(prefers-color-scheme: dark)\">
365: "
366: 
367:          :html-preamble "<top>
368: <a href=\"index.html\">Home</a> |
369:  <a href=\"imprint.html\">Imprint</a> |
370:  <a href=\"https://codeberg.org/Schroedinger50PCT\">Git</a>
371: </top>"
372: 
373:          :html-postamble "<hr/> <footer>
374: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
375: <div class=\"copyright-container\"> <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
376: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
377:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
378:  </footer>"
379: 
380:          :with-author nil          
381:          :with-creator nil         
382:          :with-toc t            
383:          :section-numbers nil      
384:          :htmlized-source t
385:          :time-stamp-file nil
386:          )
387: 
388:         ("export"
389:          :base-directory "./dots/export"
390:          :base-extension "css\\|txt\\|jpg\\|jpeg\\|gif\\|png\\|webp\\|webm\\|opus\\|ogg\\|mp4\\|mp3\\|vorbis\\|svg\\|bmp\\|flac\\|aac\\|wav"
391:          :recursive t
392:          :exclude ".*"
393:          :include ("modus-vivendi.css" "publish.el")
394:          :publishing-directory  "./"
395:          :publishing-function org-publish-attachment
396:          :time-stamp-file nil
397:          :auto-sitemap nil
398:          )
399: 
400:         ("gpoints-scripts"
401:          :base-directory "./gpoints/"
402:          :base-extension "css\\|js\\|json\\|jpg\\|jpeg\\|gif\\|png\\|webp\\|webm\\|opus\\|ogg\\|mp4\\|mp3\\|vorbis\\|svg\\|bmp\\|flac\\|aac\\|wav"
403:          :recursive t
404:          :publishing-directory  "./"
405:          :publishing-function org-publish-attachment
406:          :time-stamp-file nil
407:          :auto-sitemap nil
408:          )
409: 
410:         ("gpoints"
411:          :recursive t
412:          :base-directory "./gpoints/"
413:          :exclude nil
414:          :publishing-function org-html-publish-to-html
415:          :publishing-directory "./"
416:          :html-doctype "html5"
417:          :html-html5-fancy t
418:          :html-head-include-scripts nil
419:          :html-head-include-default-style nil
420:          :html-head "<link rel=\"stylesheet\" href=\"gpoints.css\" type=\"text/css\" />
421: <link rel=\"manifest\" href=\"/manifest.json\">
422: 
423: <!-- fallback/default icons -->
424: <link rel=\"icon\" type=\"image/png\" href=\"division3zehen_white-512.png\">
425: <link rel=\"mask-icon\" type=\"image/png\" href=\"ddivision3zehen_white-512-maskable.png\">
426: <link type=\"image/png\" href=\"ddivision3zehen_white-512.png\" rel=\"apple-touch-startup-image\">
427: 
428: <meta name=\"description\" content=\"Das Punkte-System, bei dem das Sammeln wirklich Spaß macht. Jetzt Punkte berechnen!\">
429: <meta name=\"keywords\" content=\"G-Points, Punkte, G-Punkte, points, gpunkte, gpoints\">
430: <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />
431: <meta name=\"layoutmode\" content=\"fitscreen/standard\">
432: <meta name=\"imagemode\" content=\"force\">
433: <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />
434: <meta name=\"apple-mobile-web-app-capable\" content=\"yes\">
435: <meta name=\"apple-mobile-web-app-status-bar-style\" content=\"default\">
436: <meta name=\"application-name\" content=\"G-Punkte Rechner\">
437: <meta name=\"apple-mobile-web-app-title\" content=\"G-Punkte Rechner\">
438: <meta name=\"theme-color\" content=\"#000000\">
439: <meta name=\"mobile-web-app-capable\" content=\"yes\">
440: 
441: <meta name=\"msapplication-tooltip\" content=\"Das Punkte-System, bei dem das Sammeln wirklich Spaß macht. Jetzt Punkte berechnen!\">
442: <meta name=\"msapplication-starturl\" content=\"/\">
443: <meta name=\"msapplication-TileImage\" content=\"division3zehen_white-512.png\">
444: <meta name=\"msapplication-TileColor\" content=\"#000000\">
445: <meta name=\"msapplication-navbutton-color\" content=\"#000000\">
446: <meta name=\"msapplication-tap-highlight\" content=\"no\">
447: <meta name=\"full-screen\" content=\"yes\">
448: <meta name=\"browsermode\" content=\"application\">
449: "
450: 
451:          :html-preamble ""
452: 
453:          :html-postamble "<hr/>
454: <footer>
455: <div class=\"footer_links\">
456: <a href=\"https://blog.suschem.ist/imprint.html\">Imprint</a> | 
457: <a href=\"https://codeberg.org/Schroedinger50PCT/gpoints\">Git</a>
458: </div>
459: <div class=\"generated\"> Created with %c on <a href=\"https://guix.gnu.org\">GUIX</a></div>
460: <div class=\"copyright-container\">
461: <div class=\"copyright\"> Copyright &copy; 2024-2027 Jakob Maximilian Honal some rights reserved.
462: <br/> Content is available under <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> CC-BY-SA 4.0 </a> and <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> GPL-3.0-or-later </a> unless otherwise noted. 
463:  <div class=\"license-badges\"> <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"> <img alt=\"Creative Commons License\" src=\"./media/Creative-Commons-License.png\" /> </a>  <a rel=\"license\" href=\"https://www.gnu.org/licenses/gpl-3.0-standalone.html\"> <img alt=\"Gnu Public License\" src=\"./media/gplv3-with-text-136x68.png\" /> </a> </div> </div>
464:  </footer>"
465: 
466:          :with-author nil          
467:          :with-creator nil         
468:          :with-toc t            
469:          :section-numbers nil      
470:          :htmlized-source t
471:          :time-stamp-file nil
472:          )))
473: