hobbyist sysadmin and tech support person, still occasionally seen on IRC interests: windows 98, macos 9/8, plan9, systemd, athena, x.25, all kinds of 80s-00s "retro" computing & networking ✨︎ no, I really don't have a good profile picture ✨︎
Public Key
npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 Profile Code
nprofile1qqswnuhesgyf39n2fne96tqj98u57myllhrw0mc36wkm5dwx9devl6gpz4mhxue69uhhyetvv9ujuerfw36x7tnsw43q9kta3g
Show more details
Published at
2026-10-21T21:01:17Z Event JSON
{
"id": "86b9388df1d863ff9b70c3a5ec15f6578fb804554a75b84c055f46b784fe1c3d" ,
"pubkey": "e9f2f9820898966a4cf25d2c1229f94f6c9ffdc6e7ef11d3adba35c62b72cfe9" ,
"created_at": 1792616477 ,
"kind": 0 ,
"tags": [
[
"proxy",
"https://social.treehouse.systems/users/grawity",
"activitypub"
],
[
"client",
"Mostr",
"31990:6be38f8c63df7dbf84db7ec4a6e6fbbd8d19dca3b980efad18585c46f04b26f9:mostr",
"wss://relay.ditto.pub"
]
],
"content": "{\"name\":\"grawity\",\"about\":\"hobbyist sysadmin and tech support person, still occasionally seen on IRC\\n\\ninterests: windows 98, macos 9/8, plan9, systemd, athena, x.25, all kinds of 80s-00s \\\"retro\\\" computing \u0026 networking\\n\\n✨︎ no, I really don't have a good profile picture ✨︎\",\"picture\":\"https://v2.cache.treehouse.systems/accounts/avatars/108/203/387/436/705/040/original/5c49b47eaf668f79.jpg\",\"nip05\":\"[email protected] \",\"fields\":[[\"Location\",\"https://nullroute.lt\"],[\"Location\",\"Lithuania\"],[\"Location\",\"https://symlink.lt\"],[\"Location\",\"AS206633\"]]}" ,
"sig": "0af538673640cbb7372303532934cc6becac3eb221115ae37fb2a5835f1eb5d84f88190017a105073cb75fed6467dd64eb4ff58114fc39302a6f8d9f381f9b08"
}
Last Notes npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity It turns out that you can just compile the PciSioSerialDxe.efi from EDK2 and load it via your fs0:\startup.nsh to make the EFI Shell show up on a generic PC's serial port https://cache.treehouse.systems/media_attachments/files/117/172/396/845/554/196/original/102bf8bcba950dad.png https://cache.treehouse.systems/media_attachments/files/117/172/397/873/071/566/original/8b39a3a9d54edc5d.png https://cache.treehouse.systems/media_attachments/files/117/172/398/686/606/258/original/c1c12da6be4ea801.png https://cache.treehouse.systems/media_attachments/files/117/172/422/419/692/444/original/fb709213bce30610.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity openssh.git is down, glibc.git is down, gnupg.git is down, libssh.git is down... I don't like the world where I have to fall back to Github mirrors. especially if github also keeps going down npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…jsss I mean it's still dynamically linked to external libraries in general, just the *Haskell* parts are statically-linked (like aur/git-annex-standalone), without the libHSxxx.so stuff so using the distro packages, the Debian build "time /usr/bin/git-annex version" takes 0.014s on a i5-650 from 2010 – while the Arch build takes 0.35s on i5-10210U set to performance mode (which is the fastest Arch system I've got; in practice it was around 0.5s-0.6s on both my usual KabyLake laptop and the IvyBridge servers that I was working on) I was doing a migration of several repos which involved scripting things like $(git-annex examinekey) and similar, for each of 2000-3000 files on each of the hosts, and was really surprised that on the ancient machine (and via USB2 at that) everything went much faster npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity huh, turns out /usr/bin/git-annex on Arch takes over half a second just to *load all of the libraries* since it's built dynamically-linked (while on Debian it's statically linked and the same invocation takes 0.015s instead of 0.6s) that's why all of my scripts were so slow! npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…h6ty @nprofile…j9hp tbh those two could be one and the same - I can imagine something like logging in to a walled BBS that happens to also gateway to a dozen other walled BBSes, like FidoNet or FirstClass or Hotline or something such... (and meanwhile, most Git repositories and platforms are rather walled nowadays. Like all the gitlabs with "signup disabled due to spam, sorry" or the single-user forgejos without any signup at all.) At the same time... I'm reminded of several posts by people hosting Git repos, and in one case scientific data sets, that even these days, CI systems just clone the same repository whole on each and every build, even though it'd be really easy to cache and reuse. So I doubt that a poorly written crawler would actually bother caching even Git-style replicated documents, unless somehow forced to do so npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity would be neat if youtube allowed you to search by transcript I mean it has the auto-generated subtitles and transcripts *anyway*, why are they not searchable (well, probably because of a bunch of negative consequences I guess that I'm not accounting for...) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity In theory I like using Harica as our CA, especially given that it's run out of a university, but they definitely need to find someone to re-do their whole frontend... Like what do you mean there's no way to list *admin accounts* except by downloading a CSV? (Or searching by some field, and no, you can't search by "email contains @" anymore.) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity valid Bash syntax (to confuse C programmers with): function main(int argc, char *argv[]) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity I discovered https://ijmacd.github.io/rfc3339-iso8601/ npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity bit late to post a Friday screenshot but I thought it was funny https://cache.treehouse.systems/media_attachments/files/116/272/018/071/146/131/original/be01ea346c5db5b8.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity had a thought: what happens to the kernel when the *major* version number gets too big for Linus? ...though at current rates, I suppose that'll only happen well after Linus's own version number has already reached 3 digits anyway npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity ...on the topic of argv[0] being mutable https://social.treehouse.systems/@grawity/114910244850655560 npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…duyn To be fair. My boss (head of IT) did once discover that his computer got turned into an FTP server. ("I need a public IP because I want to RDP from anywhere" ended real fast that day.) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity Every time I turn on one of the PCs at work with GIGABYTE mainboards, I keep thinking: could they really not afford a few more kilobytes for *their own logo* without JPEG compression artifacts? npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…f4xf unfortunately, the way Audacity's autosaving works, I recall 1-2 years ago it led to a bug where merely opening an old project with new Audacity would immediately corrupt the project... and looking at their GitHub, they now just recently had a similar bug *again* npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…84gr make sure to run termshark under systemd-run -p MemoryMax=1G or something such, before it accidentally OOMs your whole server. termshark does that sometimes npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity 1) this is the first time I've seen a pull request attributed *entirely* to an 'AI' account, with its driver's name only found partially hidden in commit metadata, 2) on the positive side, the response by Oracle employee was surprisingly direct https://github.com/VirtualBox/virtualbox/pull/50 npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity If a building burns down, is it more appropriate to delete it from OpenStreetMap or to tag it with building:fireproof=no? npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…8nxg makes sense, at least now that I found out that enabling "ip6tables" also makes it do the same NAT for IPv6 as well. (v26 requires manually specifying the IPv6 prefix and doesn't say what kind it prefers – only v27 seems to pick a private IPv6 prefix automatically, but v26 is what Debian has) now to figure out how to add some kind of firewall rules for internal services npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity setting up docker for the first time, am I supposed to assign it a routed /24 from the overall LAN, or am I supposed to let it use the default 172.17 and rely on it NATing things? npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity Finally found a post explaining to dumbasses like me why modern 2 GHz CPUs are so much faster than old-gen 2 GHz CPUs. https://superuser.com/a/906227/1686 npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity here's another htop at 10 fps, and here's some of the worst C code I've written (also I got all the raw frames off someone else's Github) https://git.nullroute.lt/hacks/htopchat.git/tree/badapple https://cache.treehouse.systems/media_attachments/files/114/910/225/014/112/119/original/9a5b1e5a313e4f86.mp4 npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity I was going to test if my projects compile on ppc64be, but basically nothing is installed, so I got distracted npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity sorry to anyone looking at the ppc64 server's htop right now https://cache.treehouse.systems/media_attachments/files/114/902/392/664/585/289/original/3a60441e3d1103d5.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity Arch's been splitting packages a lot recently. this looks ugly but overall I think it's actually good because now users can rely on the package manager enforcing dependencies, instead of "oh the GUI crashes? well it's your own fault for not reading the new optdepends clearly mentioned in the middle of the 2000-line pacman output when you did the -Syu last week" https://cache.treehouse.systems/media_attachments/files/114/789/513/263/753/016/original/40356603884584ff.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity well this is an Ethernet connector I've not seen before https://electronics.stackexchange.com/questions/745922/identify-4-pair-krone-plug it seems mildly cursed, like something between the Token Ring connector and a "20 Cigarette Adapter" (also: '[...] and had to "accidentally" knock someone offline to get these photos') npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…m3qg @nprofile…g98g no, I do like ~/bin being my personal stuff and not clutter from pip/cargo/cpan (*especially* the pip/cpan stuff that comes with some modules and never gets run); that definitely goes into a dotdir (or into ~/lib/bin at most; I used to use ~/lib but now prefer ~/.local) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity systemctl migrate @nprofile…xc3l to an instance that supports longer posts npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @nprofile…cgs9 on that thought, I keep trying to figure out the right ffmpeg or vlc incantation to re-stream a YouTube livestream as someting that could be watched through the actual RealPlayer on Win98... (Not much luck so far, although RealEncoder can convert static .mp4's fine.) npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity so Mikrotik now explicitly states their update policy in their docs: "Even devices that are no longer manufactured for 20 years, will still receive software updates, as long as they have enough RAM and are not based on a MIPS-LE CPU" https://help.mikrotik.com/docs/spaces/ROS/pages/19136707/Software+Specifications npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity my archlinuxing is going well https://cache.treehouse.systems/media_attachments/files/113/108/605/045/166/001/original/2605ea160f41694e.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity I might have found the earliest instance of curl|bash (it predates curl by a year) https://cache.treehouse.systems/media_attachments/files/113/051/905/322/401/393/original/339a21c33d192a1f.png npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity everyone else: the class constructor is called initialize() or construct() perl: ADJUST{} npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity salt.exceptions.SaltClientError: Got a bad pillar from master, type str, expecting dict: Salt-minion 3007 cannot talk to Salt-master 3006. You'd think an Enterprise Infrastructure Management system would have better backwards compatibility than *literally none whatsoever* npub1a8e0nqsgnztx5n8jt5kpy20efakfllwxulh3r5adhg6uv2mjel5sfrq8r7 grawity @npub1pxy…htpa in that case, wasn't this once the purpose of extra/jshon?