fix typos; closes #237, closes #465

correct subset of fixes, not touching the intentional/sacred ones
This commit is contained in:
ed 2025-08-21 22:03:34 +00:00
parent f9cb2c15e3
commit cc4f4aef99
17 changed files with 24 additions and 22 deletions

View file

@ -267,7 +267,7 @@ also see [comparison to similar software](./docs/versus.md)
* ☑ play video files as audio (converted on server) * ☑ play video files as audio (converted on server)
* ☑ create and play [m3u8 playlists](#playlists) * ☑ create and play [m3u8 playlists](#playlists)
* ☑ image gallery with webm player * ☑ image gallery with webm player
* ☑ [textfile browser](#textfile-viewer) with syntax hilighting * ☑ [textfile browser](#textfile-viewer) with syntax highlighting
* ☑ realtime streaming of growing files (logfiles and such) * ☑ realtime streaming of growing files (logfiles and such)
* ☑ [thumbnails](#thumbnails) * ☑ [thumbnails](#thumbnails)
* ☑ ...of images using Pillow, pyvips, or FFmpeg * ☑ ...of images using Pillow, pyvips, or FFmpeg
@ -834,7 +834,7 @@ the up2k UI is the epitome of polished intuitive experiences:
* `[🔎]` switch between upload and [file-search](#file-search) mode * `[🔎]` switch between upload and [file-search](#file-search) mode
* ignore `[🔎]` if you add files by dragging them into the browser * ignore `[🔎]` if you add files by dragging them into the browser
and then theres the tabs below it, and then there's the tabs below it,
* `[ok]` is the files which completed successfully * `[ok]` is the files which completed successfully
* `[ng]` is the ones that failed / got rejected (already exists, ...) * `[ng]` is the ones that failed / got rejected (already exists, ...)
* `[done]` shows a combined list of `[ok]` and `[ng]`, chronological order * `[done]` shows a combined list of `[ok]` and `[ng]`, chronological order
@ -1066,7 +1066,7 @@ plays almost every audio format there is (if the server has FFmpeg installed fo
the following audio formats are usually always playable, even without FFmpeg: `aac|flac|m4a|mp3|ogg|opus|wav` the following audio formats are usually always playable, even without FFmpeg: `aac|flac|m4a|mp3|ogg|opus|wav`
some hilights: some highlights:
* OS integration; control playback from your phone's lockscreen ([windows](https://user-images.githubusercontent.com/241032/233213022-298a98ba-721a-4cf1-a3d4-f62634bc53d5.png) // [iOS](https://user-images.githubusercontent.com/241032/142711926-0700be6c-3e31-47b3-9928-53722221f722.png) // [android](https://user-images.githubusercontent.com/241032/233212311-a7368590-08c7-4f9f-a1af-48ccf3f36fad.png)) * OS integration; control playback from your phone's lockscreen ([windows](https://user-images.githubusercontent.com/241032/233213022-298a98ba-721a-4cf1-a3d4-f62634bc53d5.png) // [iOS](https://user-images.githubusercontent.com/241032/142711926-0700be6c-3e31-47b3-9928-53722221f722.png) // [android](https://user-images.githubusercontent.com/241032/233212311-a7368590-08c7-4f9f-a1af-48ccf3f36fad.png))
* shows the audio waveform in the seekbar * shows the audio waveform in the seekbar
* not perfectly gapless but can get really close (see settings + eq below); good enough to enjoy gapless albums as intended * not perfectly gapless but can get really close (see settings + eq below); good enough to enjoy gapless albums as intended
@ -2171,7 +2171,7 @@ when connecting the reverse-proxy to `127.0.0.1` instead (the basic and/or old-f
in summary, `haproxy > caddy > traefik > nginx > apache > lighttpd`, and use uds when possible (traefik does not support it yet) in summary, `haproxy > caddy > traefik > nginx > apache > lighttpd`, and use uds when possible (traefik does not support it yet)
* if these results are bullshit because my config exampels are bad, please submit corrections! * if these results are bullshit because my config examples are bad, please submit corrections!
## permanent cloudflare tunnel ## permanent cloudflare tunnel

View file

@ -8,7 +8,7 @@ import sqlite3
import argparse import argparse
DB_VER1 = 3 DB_VER1 = 3
DB_VER2 = 5 DB_VER2 = 6
BY_PATH = None BY_PATH = None
NC = None NC = None
@ -39,7 +39,7 @@ def ls(db):
print(f"{nfiles} files") print(f"{nfiles} files")
print(f"{ntags} tags\n") print(f"{ntags} tags\n")
print("number of occurences for each tag,") print("number of occurrences for each tag,")
print(" 'x' = file has no tags") print(" 'x' = file has no tags")
print(" 't:mtp' = the mtp flag (file not mtp processed yet)") print(" 't:mtp' = the mtp flag (file not mtp processed yet)")
print() print()

View file

@ -46,7 +46,7 @@ def main(cli, vn, rem):
# uncomment one of these: # uncomment one of these:
send_http_302_temporary_redirect(cli, new_path) send_http_302_temporary_redirect(cli, new_path)
#send_http_301_permanent_redirect(cli, new_path) # send_http_301_permanent_redirect(cli, new_path)
#send_errorpage_with_redirect_link(cli, new_path) # send_errorpage_with_redirect_link(cli, new_path)
return "true" return "true"

View file

@ -9,7 +9,7 @@ from plyer import notification
_ = r""" _ = r"""
show os notification on upload; works on windows, linux, macos, android show os notification on upload; works on windows, linux, macos, android
depdencies: dependencies:
windows: python3 -m pip install --user -U plyer windows: python3 -m pip install --user -U plyer
linux: python3 -m pip install --user -U plyer linux: python3 -m pip install --user -U plyer
macos: python3 -m pip install --user -U plyer pyobjus macos: python3 -m pip install --user -U plyer pyobjus

View file

@ -66,7 +66,7 @@ def main():
try: try:
sp.check_call(cmd) sp.check_call(cmd)
except: except:
t = "-- FAILED TO DONWLOAD " + name t = "-- FAILED TO DOWNLOAD " + name
print(f"{t}\n", end="") print(f"{t}\n", end="")
open(t, "wb").close() open(t, "wb").close()

View file

@ -7,7 +7,7 @@ example copyparty config to use this:
--urlform save,get -vsrv/hello:hello:w:c,e2ts,mtp=guestbook=t10,ad,p,bin/mtag/guestbook-read.py:mte=+guestbook --urlform save,get -vsrv/hello:hello:w:c,e2ts,mtp=guestbook=t10,ad,p,bin/mtag/guestbook-read.py:mte=+guestbook
explained: explained:
for realpath srv/hello (served at /hello), write-only for eveyrone, for realpath srv/hello (served at /hello), write-only for everyone,
enable file analysis on upload (e2ts), enable file analysis on upload (e2ts),
use mtp plugin "bin/mtag/guestbook-read.py" to provide metadata tag "guestbook", use mtp plugin "bin/mtag/guestbook-read.py" to provide metadata tag "guestbook",
do this on all uploads regardless of extension, do this on all uploads regardless of extension,

View file

@ -11,7 +11,7 @@ example copyparty config to use this:
--urlform save,get -vsrv/hello:hello:w:c,e2ts,mtp=xgb=ebin,t10,ad,p,bin/mtag/guestbook.py:mte=+xgb --urlform save,get -vsrv/hello:hello:w:c,e2ts,mtp=xgb=ebin,t10,ad,p,bin/mtag/guestbook.py:mte=+xgb
explained: explained:
for realpath srv/hello (served at /hello),write-only for eveyrone, for realpath srv/hello (served at /hello),write-only for everyone,
enable file analysis on upload (e2ts), enable file analysis on upload (e2ts),
use mtp plugin "bin/mtag/guestbook.py" to provide metadata tag "xgb", use mtp plugin "bin/mtag/guestbook.py" to provide metadata tag "xgb",
do this on all uploads with the file extension "bin", do this on all uploads with the file extension "bin",

View file

@ -84,7 +84,7 @@ def main():
# on success, delete the .bin file which contains the URL # on success, delete the .bin file which contains the URL
os.unlink(fp) os.unlink(fp)
except: except:
open("-- FAILED TO DONWLOAD " + name, "wb").close() open("-- FAILED TO DOWNLOAD " + name, "wb").close()
os.unlink(tfn) os.unlink(tfn)
print(url) print(url)

View file

@ -31,7 +31,7 @@
# generate the list of permitted IP ranges like so: # generate the list of permitted IP ranges like so:
# (curl -s https://www.cloudflare.com/ips-v{4,6} | sed 's/^/allow /; s/$/;/'; echo; echo "deny all;") > /etc/nginx/cloudflare-only.conf # (curl -s https://www.cloudflare.com/ips-v{4,6} | sed 's/^/allow /; s/$/;/'; echo; echo "deny all;") > /etc/nginx/cloudflare-only.conf
# #
# and then enable it below by uncomenting the cloudflare-only.conf line # and then enable it below by uncommenting the cloudflare-only.conf line
# #
# ====================================================================== # ======================================================================

View file

@ -775,7 +775,7 @@ def get_sects():
\033[36mc0\033[35m show all process output (default) \033[36mc0\033[35m show all process output (default)
\033[36mc1\033[35m show only stderr \033[36mc1\033[35m show only stderr
\033[36mc2\033[35m show only stdout \033[36mc2\033[35m show only stdout
\033[36mc3\033[35m mute all process otput \033[36mc3\033[35m mute all process output
\033[0m \033[0m
examples: examples:

View file

@ -422,7 +422,7 @@ function init_toc() {
} }
} }
// hilight the correct toc items + scroll into view // highlight the correct toc items + scroll into view
function freshen_toclist() { function freshen_toclist() {
if (anchors.length == 0) if (anchors.length == 0)
return; return;

View file

@ -50,7 +50,7 @@ catch (ex) {
} }
catch (ex) { catch (ex) {
console.log('up2k init failed:', ex); console.log('up2k init failed:', ex);
toast.err(10, 'could not initialze up2k\n\n' + basenames(ex)); toast.err(10, 'could not initialize up2k\n\n' + basenames(ex));
} }
} }
treectl.onscroll(); treectl.onscroll();

View file

@ -328,7 +328,7 @@ if you don't need all the features, you can repack the sfx and save a bunch of s
the features you can opt to drop are the features you can opt to drop are
* `cm`/easymde, the "fancy" markdown editor, saves ~89k * `cm`/easymde, the "fancy" markdown editor, saves ~89k
* `hl`, prism, the syntax hilighter, saves ~41k * `hl`, prism, the syntax highlighter, saves ~41k
* `fnt`, source-code-pro, the monospace font, saves ~9k * `fnt`, source-code-pro, the monospace font, saves ~9k
for the `re`pack to work, first run one of the sfx'es once to unpack it for the `re`pack to work, first run one of the sfx'es once to unpack it

View file

@ -45,4 +45,4 @@ currently **not optimal,** at least when compared to running the python sfx outs
authelia is behaving strangely, handling 340 requests per second for a while, but then it suddenly drops to 75 and stays there... authelia is behaving strangely, handling 340 requests per second for a while, but then it suddenly drops to 75 and stays there...
I'm assuming all of the performance issues is due to a misconfiguration of authelia/traefik/docker on my end, but I don't relly know where to start I'm assuming all of the performance issues is due to a misconfiguration of authelia/traefik/docker on my end, but I don't really know where to start

View file

@ -71,7 +71,7 @@ avg() { awk 'function pr(ncsz) {if (nsmp>0) {printf "%3s %s\n", csz, sum/nsmp} c
python3 -um copyparty -nw -v srv::rw -i 127.0.0.1 2>&1 | tee log python3 -um copyparty -nw -v srv::rw -i 127.0.0.1 2>&1 | tee log
cat log | awk '!/"purl"/{next} {s=$1;sub(/[^m]+m/,"");gsub(/:/," ");t=60*(60*$1+$2)+$3} t<p{t+=86400} !a{a=t;sa=s} {b=t;sb=s} END {print b-a,sa,sb}' cat log | awk '!/"purl"/{next} {s=$1;sub(/[^m]+m/,"");gsub(/:/," ");t=60*(60*$1+$2)+$3} t<p{t+=86400} !a{a=t;sa=s} {b=t;sb=s} END {print b-a,sa,sb}'
# or if the client youre measuring dies for ~15sec every once ina while and you wanna filter those out, # or if the client you're measuring dies for ~15sec every once ina while and you wanna filter those out,
cat log | awk '!/"purl"/{next} {s=$1;sub(/[^m]+m/,"");gsub(/:/," ");t=60*(60*$1+$2)+$3} t<p{t+=86400} !p{a=t;p=t;r=0;next} t-p>1{printf "%.3f += %.3f - %.3f (%.3f) # %.3f -> %.3f\n",r,p,a,p-a,p,t;r+=p-a;a=t} {p=t} END {print r+p-a}' cat log | awk '!/"purl"/{next} {s=$1;sub(/[^m]+m/,"");gsub(/:/," ");t=60*(60*$1+$2)+$3} t<p{t+=86400} !p{a=t;p=t;r=0;next} t-p>1{printf "%.3f += %.3f - %.3f (%.3f) # %.3f -> %.3f\n",r,p,a,p-a,p,t;r+=p-a;a=t} {p=t} END {print r+p-a}'
@ -337,3 +337,5 @@ mk && t0="$(date)" && while true; do date -s "$(date '+ 1 hour')"; systemd-tmpfi
mk && sudo -u ed flock /tmp/foo sleep 40 & sleep 1; ps aux | grep -E 'sleep 40$' && t0="$(date)" && for n in {1..40}; do date -s "$(date '+ 1 day')"; systemd-tmpfiles --clean; ls -1 /tmp | grep foo || break; done; echo "$t0" mk && sudo -u ed flock /tmp/foo sleep 40 & sleep 1; ps aux | grep -E 'sleep 40$' && t0="$(date)" && for n in {1..40}; do date -s "$(date '+ 1 day')"; systemd-tmpfiles --clean; ls -1 /tmp | grep foo || break; done; echo "$t0"
mk && t0="$(date)" && for n in {1..40}; do date -s "$(date '+ 1 day')"; systemd-tmpfiles --clean; ls -1 /tmp | grep foo || break; tar -cf/dev/null /tmp/foo; done; echo "$t0" mk && t0="$(date)" && for n in {1..40}; do date -s "$(date '+ 1 day')"; systemd-tmpfiles --clean; ls -1 /tmp | grep foo || break; tar -cf/dev/null /tmp/foo; done; echo "$t0"
# number of megabytes downloaded since some date
awk </var/log/wjaycore.out '/^..36m2025-05-20/{o=1} !o{next} !/ plain 20[06](,| \[[^,]+\],) +[0-9.]+.\[33m[KM] .* n[0-9]+$/{next} {v=$0;sub(/.* plain 20[06](,| \[[^,]+\],) +/,"",v);sub(/ .*/,"",v);u=v;sub(/.\[.*/,"",v);sub(/.*m/,"",u);$0=u} /[KMG]/{v*=1024} /[MG]/{v*=1024} /G/{v*=1024} {t+=v} END{printf "%d\n",t/(1024*1024)}'

View file

@ -572,7 +572,7 @@ symbol legend,
* ✅ file tags; file discussions!? * ✅ file tags; file discussions!?
* ✅ video transcoding * ✅ video transcoding
* ✅ unzip uploaded archives * ✅ unzip uploaded archives
* ✅ IDE with syntax hilighting * ✅ IDE with syntax highlighting
* ✅ wysiwyg editor for openoffice files * ✅ wysiwyg editor for openoffice files
## [filebrowser](https://github.com/filebrowser/filebrowser) ## [filebrowser](https://github.com/filebrowser/filebrowser)

View file

@ -41,7 +41,7 @@ help() { exec cat <<'EOF'
# `no-cm` saves ~89k by removing easymde/codemirror # `no-cm` saves ~89k by removing easymde/codemirror
# (the fancy markdown editor) # (the fancy markdown editor)
# #
# `no-hl` saves ~41k by removing syntax hilighting in the text viewer # `no-hl` saves ~41k by removing syntax highlighting in the text viewer
# #
# `no-fnt` saves ~9k by removing the source-code-pro font # `no-fnt` saves ~9k by removing the source-code-pro font
# (browsers will try to use 'Consolas' instead) # (browsers will try to use 'Consolas' instead)