1
0
Fork 0
mirror of https://git.sr.ht/~seirdy/seirdy.one synced 2024-11-23 21:02:09 +00:00
Commit graph

95 commits

Author SHA1 Message Date
Rohan Kumar
fa6de41991
Makefile: support quick builds with renderSections 2024-03-25 01:57:46 -04:00
Rohan Kumar
b18917ab83
Fix outdated webmanifest path 2024-01-30 19:57:31 -05:00
Rohan Kumar
2badbe2601
Use cache-busting partial instead of Fingerprint
This gives files much smaller fingerprints, and supports caching.
2023-12-08 16:08:40 -08:00
Rohan Kumar
9923ebc34b
Fix dupe jobs again 2023-11-29 05:20:30 -08:00
Rohan Kumar
eafff23800
Fix dupe jobs 2023-11-29 05:16:48 -08:00
Rohan Kumar
e2c8a2fc56
Fix concurrency issues in deploy-envs 2023-11-29 05:11:00 -08:00
Rohan Kumar
a097b46950
Use local buku to get bookmarks if possible 2023-11-29 00:33:06 -08:00
Rohan Kumar
4581c83561
Make rsync output less noisy
Don't show .gz files: that's almost everything thanks to ect's
non-deterministic output
2023-11-28 19:46:15 -08:00
Rohan Kumar
3de047b413
skip stylelint, validate feeds in deploy-envs
stylelint is broken rn
2023-11-26 23:48:23 -08:00
Rohan Kumar
866ca1b386
Switch soem things from find -exec to xargs
Allows better filtering and doesn't supress exit codes. Since I'm no
longer supressing exit codes, I had to handle them properly in
copy-file-to-xhtml.sh by using if-statements.

This also allowed me to skip the generation of an XHTML redirect page.
2023-11-26 15:14:06 -08:00
Rohan Kumar
6487c5c7f3
Make html-validate skip redirect page 2023-11-26 14:57:56 -08:00
Rohan Kumar
a1b6a89a66
Makefile: only skip the Hugo cache during deploys 2023-11-25 13:36:43 -08:00
Rohan Kumar
de65f4d506
Move some CI logic to scripts/makefile
Also update some of its docs
2023-11-24 13:02:52 -08:00
Rohan Kumar
66c4c62888
Make feedvalidator run offline
This is possible thanks to a feedvalidator bug being fixed:
<d4ee1132eb>
2023-11-17 15:25:31 -08:00
Rohan Kumar
dcb19779ce
Don't run html-proofer on envs deploy 2023-11-15 02:31:45 -08:00
Rohan Kumar
dad8c4e3e4
Add html-proofer to lint-local 2023-11-14 22:54:33 -08:00
Rohan Kumar
522e322cf5
Switch accessibility checkers to pnpx 2023-11-10 10:43:16 -08:00
Rohan Kumar
980a6b4ec4
Add html-validate to local linters 2023-10-20 04:06:36 -07:00
Rohan Kumar
838d73ed22
Reduce zopfli level, switch from jq to jaq
jaq is faster and more strict which is exactly what I want. zopfli level
9 is overkill and takes almost twice as long for barely any difference.
2023-08-27 14:31:32 -07:00
Rohan Kumar
4a54eb8299
Add .gif, .ico to rsync skip-compress 2023-08-16 10:47:27 -07:00
Rohan Kumar
3df303dfcf
update build scripts
- new version of webhint has false positives
- new html-proofer has different flags
- add a comment
2023-04-24 09:54:00 -07:00
Rohan Kumar
5cbe4ef6c2
Clean up + rename get-webmention script
Now caches webmentions for an hour
2022-12-24 10:11:25 -08:00
Rohan Kumar
a22528a3b5
Fix: fetch webmention json only once
Hugo parallelization means the webmention json may be fetched multiple
times, which is excessive.
2022-12-24 08:26:31 -08:00
Rohan Kumar
8709bf9ec2
Overhaul webmention generation
Use a new branch of webmentiond that lets me pull in all webmentions for
all pages in a single JSON response

Before, Hugo would make one request to webmentiond per page to ask for
approved webmentions for that page. Sometimes, it makes two requests
because some pages used to have a different canonical location. In all,
it ended up making over 150 requests within a second or two. Webmentiond
can handle this for now, but this isn't sustainable: page count will
only increase with time. I wanted to have Hugo instead get all
webmentions for all pages in one cached request.

I recompiled webmentiond from
https://github.com/zerok/webmentiond/pull/65, which updates the API to
support admin access keys. The admin API allows pulling in all
webmentions for all pages, instead of pulling them in for one page at a
time.

Doing so requires getting a bearer token, so I had to manage a new CI
secret: the password for getting a token. I get the token in a shell
script (get-token.sh) and write it to a temporary file, then have Hugo
read the token from that file. The shell script gets the password using
either the CI secret (in CI) or using my password manager (on my
workstation).

TODO: support marginalia (mentions with fragments in their targets)
2022-12-19 11:07:57 -08:00
Rohan Kumar
ed04b8628d
Run Nu validator on xhtml
Nu updated to flag XHTML-isms. Run on XHTML files so it can default to
strict mode.
2022-11-26 00:16:55 -08:00
Rohan Kumar
ff21ae6e3b
Fix deploy for gemini about page 2022-11-04 11:07:06 -07:00
Rohan Kumar
ca386ed375
make deploy-envs: remove SSH flags + obsolete var 2022-09-02 09:29:06 -07:00
Rohan Kumar
e07e479460
fix file attrs 2022-08-31 20:35:37 -07:00
Rohan Kumar
9783690e6a
more ssh updates 2022-08-31 13:47:56 -07:00
Rohan Kumar
0866e4d2bc
Don't brotli-compress the Tor hidden service
The Tor hidden service does not use TLS, so it doesn't use HTTP/2 or
HTTP/3. Therefore, it can't use Brotli; statically-compressing Brotli
content is just wasted CPU cycles.
2022-08-13 14:25:54 -07:00
Rohan Kumar
679feb8f5c
exclude BIMI icon and search from Nu validator 2022-08-13 14:05:23 -07:00
Rohan Kumar
b0f70e63f3
Breaking html-proofer changes 2022-08-12 00:00:01 -07:00
Rohan Kumar
d73ee7ebf5
Speed up internal jobs
- Make xhtml and html alternates the same (we're polygot), cutting
  static-compression time in half
- Make axe-ff run on local files, reducing some overhead.
2022-08-10 21:30:22 -07:00
Rohan Kumar
7cf0e4bc9b
Internal: check-whole-site: deploy in parallel
Saves about a minute of time.
2022-08-05 22:49:18 -07:00
Rohan Kumar
f95e28ec98
Actually don't preserve mtime 2022-08-02 18:27:36 -07:00
Rohan Kumar
99f7222fdd
rsync: preserve mtime, perms 2022-08-02 18:21:41 -07:00
Rohan Kumar
c0904f3b32
Moar site testing
- Replace achecker flags with a config file
- Bring back webhint
- Amend check-whole-site so that it will deploy to staging if all checks
  pass, and then run webhint on every staging page.
2022-07-17 20:01:54 -07:00
Rohan Kumar
70b8a5e9cb
re-org the About section, add breadcrumbs
Create an "about" section.

Add breadcrumbs to show relationships between pages with full page
titles.
2022-07-07 17:44:34 -07:00
Rohan Kumar
4cb2f44afc
Avoid overwriting htmltest cache 2022-06-29 18:15:28 -07:00
Rohan Kumar
84aaf683b0
Validate and fix feeds, persist link-check cache 2022-06-17 22:09:32 -07:00
Rohan Kumar
fba366ca11
Check and fix broken links 2022-06-17 20:36:35 -07:00
Rohan Kumar
2f8e5d8a4d
Use Equal Access to checl whole site 2022-06-15 19:43:01 -07:00
Rohan Kumar
21aca6d4fe
Fix: don't put onion links in gemini capsule 2022-06-10 18:41:21 -07:00
Rohan Kumar
c9291830d0
Automatically pull webring links during build 2022-06-07 09:39:32 -07:00
Rohan Kumar
bc6577e241
Make: Allow setting hugo flags for deploy-staging 2022-06-03 15:49:11 -07:00
Rohan Kumar
a9ebc9e0c4
Don't compress envs deploy 2022-06-02 17:17:19 -07:00
Rohan Kumar
cb26956bca
Internal: improve scripts
- I forgot to compress xhtml files. fix that.

- Stylistic change: remove unnecessary brace expansions
- Don't repeatedly append to a file; run commands in a different scope
  and write all at once.

Move Nu HTML validator filtering into a shell script:
- Return a bad exit code if validation errors are found after filtering
- Remove null-ish values from the JSON output; the final output *should*
  be an empty string, since nothing should be reported.
2022-06-02 17:18:13 -07:00
Rohan Kumar
b4850ed89a
Use XML declaration on XHTML, other XHTML tweaks
- Remove XHTML content-type meta header from HTML documents, reverting
  back to the meta charset
- Give XHTML documents their own XHTML declaration
- Remove now-redundant meta charset from XHTML
- Since XHTML and HTML documents differ now, compress after running
  xhtmlize and make xhtmlize only act on uncompressed files.
- Validate XHTML using vnu
2022-05-31 17:16:44 -07:00
Rohan Kumar
90aeb2d23a
Create both index.html and index.xhtml files
Combines well with content-negotiation based on the "Accept" header.
2022-05-30 16:09:40 -07:00
Rohan Kumar
1aed7a66d4
Switch to XHTML5 markup
The site now has polygot markup and can handle both XHTML5 and HTML5
parsing rules. My staging site will be XHTML but my main site will be
HTML5, just in case of parse errors.

If other tools (e.g. LightHouse) end up supporting XHTML5, I'll consider
switching the content-type to XHTML.
2022-05-30 17:39:45 -07:00