abuse footnote feature on old pages, general updates

This commit is contained in:
gnat 2024-09-14 04:37:07 -07:00
parent 5b91ae130e
commit 3231fa8c31
8 changed files with 62 additions and 40 deletions

View File

@ -2,6 +2,7 @@
(load "html.lisp")
(load "exec.lisp")
(load "utils.lisp")
(load "templates/page.lisp")
(ql:quickload "uiop")

View File

@ -8,12 +8,13 @@
"this is not due to lack of technical ability, but instead due to the accumulation of unreasonable quirks over time in every computer I exert any degree of control over.")
(section ()
(h2 () "booting and the operating system")
(p () "I do not use a bootloader. "
(p () "I do not use a bootloader." ,(exec-command "make-footnote \"I find them to be very annoying and in my experience unreliable\"")
"instead, I have a custom kernel build based off the arch kernel with filesystem and compression drivers such that I can boot straight from my kernel. "
"I also do not have an initramfs.")
(p () "technically, I don't use arch linux. "
"I use [a custom build of] the arch kernel and arch package repos, but actually run artix. "
"a function of this is that instead of systemd, I use openrc."))
"a function of this is that instead of systemd, I use openrc.")
,(exec-command "put-footnotes"))
(section ()
(h2 () "seat management and hardware issue mitigation")
(p () "I once thought it would be entertaining to remove elogind from my system. "
@ -44,8 +45,7 @@ cat /proc/acpi/button/lid/LID0/state | grep open && (modprobe i2c_hid_acpi) || (
"this is unfortunate because it is bad software (this will be elaborated upon), but I like the special workspace system. "
"my status bar and notification system are written in gjs with ags. I resent this because it involves javascript, but oh well. "
"when libastal gets documentation, I will probably rewrite my ui in that. "
"my terminal emulator is my own build of st. "
"I have yet to find a good terminal that supports all the things I want for wayland, so xwayland it is."))
"my terminal emulator is foot because foot does not implement unecessary features."))
(section ()
(h2 () "keyboard")
(p () "unlike my previous laptop, I had the option to buy this laptop such that it came with a blank keyboard. "
@ -59,11 +59,13 @@ cat /proc/acpi/button/lid/LID0/state | grep open && (modprobe i2c_hid_acpi) || (
(ul ()
(li () "killing firefox kills my compositor what I would estimate to be 20% of the time")
(li () "killing firefox causes my headphones to disconnect what I would estimate to be 40% of the time")
(li () "setting firefox to be a floating window causes my entire computer to freeze roughly 10% of the time" ,(exec-command "make-footnote \"I should probably make new firefox profiles. my current firefox profile is haunted, as I have been using it since 7th grade.\""))
(li () "no audio devices other than my headphones are recognized after boot until I run "
(pre () "unfuck audio"))
(li () "when displaying https://wiki.gnuradio.org/index.php/Embedded_Python_Block in any web browser, or a screenshot of this webpage fullscreen on my laptop in any wayland compositor, my screen starts flickering. it only occures with this page. unplugging my computer causes the flickering to reduce in frequency. this will not occur if my mouse pointer is not in the top 2/5ths of the screen.")
(li () "when displaying https://wiki.gnuradio.org/index.php/Embedded_Python_Block in any web browser, or a screenshot of this webpage fullscreen on my laptop in any wayland compositor, my screen starts flickering. it only occures with this page. unplugging my computer causes the flickering to reduce in frequency. this will not occur if my mouse pointer is not in the top 2/5ths of the screen." ,(exec-command "make-footnote \"what on earth\""))
(li () "closing my computer causes network manager to become inoperable. it does not crash, it just stops working.")
(li () "closing my computer causes firefox to be unable to retrieve data regardless of if network manager is working")
(li () "sometimes, pipewire ceases to function. this typically happens after several days of uptime."))))))
(li () "sometimes, pipewire ceases to function. this typically happens after several days of uptime."))
,(exec-command "put-footnotes")))))

View File

@ -2,11 +2,12 @@
(page "natalie info" `((section ()
(h1 () "what is a \"natalie\"?")
(span () "I am <a href='/html/natalie-sightings.html'>natalie</a>. obviously.")
(p () "words are not a thing I am good at. this is exacerbaited when the words are about myself."
(p () "words are not a thing I am good at. this is exacerbaited when the words are about myself. "
"despite this, I shall attempt a suitable description of myself.")
(br)
"ideally, I am to be referred to as an \"it\" or a \"she\". the former is preferred to some degree. I suppose I may reasonably be described as asexual. " (br)
"timezone I am in: " ,(exec-command "TZ=\"America/Los_Angeles\" date '+%Z (UTC%z)'") (br)
(p ()
"ideally, I am to be referred to as an \"it\" or a \"she\".",(exec-command "make-footnote \" the former is preferred.\"") "I suppose I may reasonably be described as asexual. " (br)
"timezone I am in: PST/PDT" (br)
"age: $[echo $(( $(date +%s) - $(date -d \"2007-04-01\" +%s) ))] seconds. that is $[echo \"scale=8; ($(date +%s) - $(date -d '2007-04-01' +%s)) / (365.25*24*3600)\" | bc] [earth] years." (br)
"I am kind of a college student. it is complicated. I will be a college student with less complicated circumstances by fall of 2025, barring unforseen circumstances." (br)
"I like systems. particularly ones that have reasonably consistent behavior based on a set of rules. this is omnipresent in my interests." (br)
@ -29,12 +30,14 @@
(li () "non friend people")
(li () "ultraviolet radiation")
(li () "busywork")))
,(exec-command "put-footnotes"))
(section ()
(h2 () "somewhat irregular natalie facts")
(ul ()
(li () "I own 12 thinkpads, all of which were manufactured prior to 2014")
(li () "the number of people that can effectively use my computer is, to my knowledge, 1 (me)")
(li () "I can replace the screen on my first generation iphone se a1662 in 70 seconds")))
(li () "the number of people that can effectively use my computer is, to my knowledge, 1 (me)" ,(exec-command "make-footnote \"the number of people I know who can type on it is 3, including myself\""))
(li () "I can replace the screen on my first generation iphone se a1662 in 70 seconds"))
,(exec-command "put-footnotes"))
(section ()
(h2 () "contact information")
(a (:href "/html/discord.html") "discord: _natalieeee_")

View File

@ -11,10 +11,10 @@
(text-column ()
(h2 () "why do I have a server from my school's basement?")
(p ()
"at the time, my school was at a temporary campus while our regular campus is being remodelled."
"I hope this means there will be less lead in the water when they are done, but given how the district is, who knows."
"The current campus is notably smaller than the regular campus, thus a large amount of things are in storage."
"The man who is in charge of the storage and moving stored items back to the new campus does not like moving items."
"at the time, my school was at a temporary campus while our regular campus is being remodelled. "
"I hope this means there will be less lead in the water when they are done, but given how the district is, who knows. "
"The current campus is notably smaller than the regular campus, thus a large amount of things are in storage ."
"The man who is in charge of the storage and moving stored items back to the new campus does not like moving items. "
"For this reason, when I ask him to let me in to the school's basement to just take random cool things, he says yes.")
(h2 () "it is kind of horrible that I have this server")
(p ()

View File

@ -34,13 +34,13 @@
(p () "I dislike \"web development\". also, I was bored.")
(h3 () "what does sludge do?")
(ul ()
(li () "send data")
(li () "receive data")
(li () "process data")
(li () "create new data")
(li () "move data")
(li () "coerce data[types]")
(li () "other verbs prepended to data"))
(li () "send data")
(li () "receive data")
(li () "process data")
(li () "create new data")
(li () "move data")
(li () "coerce data[types]")
(li () "other verbs prepended to data"))
(h3 () "how does sludge?")
(p () "sludge receives requests for paths. if these paths are in the routing table, it determines what it should respond with. "
"generally, if the path starts with /html/, it will read an html document from the filesystem. "
@ -52,25 +52,32 @@
"you may observe this "
(a (:href "?uwu=true") "here") "."))
(section ()
(h2 () "webocodynamics of natalieee.net")
"the means by which this website runs involves an unreasonable number of symlinks. here is a textual description of a graph of them:"
(code ()
,(join-strings-with-br '(
"site -> s&#x200B;ludge [label=s&#x200B;ludge]"
"s&#x200B;ludge -> site [label=site]"
"htmlgen -> site [label=out]"
"htmlgen -> site [label=site]"
)))
"you may ask: why?"
(br)(br)
"the answer to such a question is that sludge runs with a working directory of \~/site, but scripts in \~/site/scripts must be able to import files from \~/sludge (specifically \~/site/scripts/include). "
"htmlgen needs to be able to read scripts in \~/site/scripts to run commands at compile time. htmlgen writes html to \~/htmlgen/out, thus the double symlink to \~/site. "
"technically, this could all be done without symlinks. this is vaguely more robust because in the event that I move something, I simply need to change the symlinks instead of the paths in arbitrarily many files. "
"nevertheless, the number of symlinks is amusing. "
(footnote () "nevertheless is a stupid word"))
(p ()
"the means by which this website runs involves an unreasonable number of symlinks. here is a textual description of a graph of them:")
(pre ()
(code ()
,(join-strings-with-br '(
"site -> s&#x200B;ludge [label=s&#x200B;ludge]"
"s&#x200B;ludge -> site [label=site]"
"htmlgen -> site [label=out]"
"htmlgen -> site [label=site]"))))
(p ()
"you may ask: why?"
(br) (br)
"the answer to such a question is that sludge runs with a working directory of ~/site, but scripts in ~/site/scripts must be able to import files from ~/sludge (specifically ~/site/scripts/include). "
"htmlgen needs to be able to read scripts in ~/site/scripts to run commands at compile time. htmlgen writes html to ~/htmlgen/out, thus the double symlink to ~/site. "
"technically, this could all be done without symlinks. this is vaguely more robust because in the event that I move something, I simply need to change the symlinks instead of the paths in arbitrarily many files. "
"nevertheless" ,(exec-command "make-footnote \"nevertheless is a stupid work\"") ", the number of symlinks is amusing.")
,(exec-command "put-footnotes"))
(section ()
(h2 () "/.*\\.natalieee.net/")
(ul ()
(li () ,(exec-command "make-link https://git.natalieee.net") ": Gitea instance. You may use it if you feel so inclined for some reason. I wouldn't.")
(li () ,(exec-command "make-link https://dns.natalieee.net") ": Pointless CNAME record to my main domain so that entities using my dns (A number greater than 0!) can put dns.natalieee.net down as their nameserver instead of natalieee.net."))))))
(li () "dns.natalieee.net" ": Pointless CNAME record to my main domain so that entities using my dns (A number greater than 0!) can put dns.natalieee.net down as their nameserver instead of natalieee.net.")
(li () "mpd.natalieee.net: mpd server that my friend asked me to create. I can probably be bothered in to giving arbitrary people credentials if they for some reason wish to listen to the music that I listen to in such a roundabout way"))))))

View File

@ -1,5 +1,6 @@
(defun header ()
'(header ()
`(header ()
,(exec-command "echo > /tmp/footnote_count")
(nav ()
(ul ()
(li ()

8
utils.lisp Normal file
View File

@ -0,0 +1,8 @@
(defun join-strings-with-br (strings)
(reduce (lambda (acc str)
(if (string= acc "")
str
(concatenate 'string acc "<br>" str)))
strings
:initial-value ""))