roadrunnertwice: DTWOF's Lois in drag. Dialogue: "Dude, just rub a little Castrol 30 weight into it. Works for me." (Castrol (Lois))
[personal profile] roadrunnertwice

All right, so first off, those Spotify assholes can go fuck themselves. With that motion carried, let's get down to business.

I'm working on a longer version of this post, but I think I'm at the point where I can manage a hyper-compressed version.

You have many ordinary music files. You want to listen to the same library on all your devices. You want the option to create and edit playlists on any device, with changes immediately reflected everywhere. You want to download a subset of the library onto any given device for offline listening, with the option to stream the rest of it. You want gapless album playback because we're not living in a drafty cave in 2003. You want sovereign autonomy, and also maybe the option to share your library with some friends and family.

You are NOT asking for too much.

The task will stretch your abilities, but there's a solid chance that it will not exceed them.

Here's how to Do The Thing.


  1. A Computer
    • A normal physical computer on your home network with a bunch of disk to store music files, which is either always on or able to wake up upon network requests. You can dual-task a computer that's already doing other stuff, this doesn't need to be its only job. If you're installing Linux on something, make sure your media is stored on a separate disk partition from your OS and software, in case you need to rebuild the system at some point.
  2. Tailscale
    • The only piece of actual black magic involved here. Sign up, and install it on all your mobile/laptop devices and your server. You'll get magic hostnames and IP addresses that let any connected devices securely talk to each other no matter where they are, without having to open a port on your router or anything. Now your music streaming/downloading is perfect inside your house, and possible anywhere with internet.
    • If you want to get friends and family onto your server, invite them to your account. Eventually (> 3 users) this costs money, but there's a free re-implementation of the coordinating server called Headscale if you're willing to pay labor instead of cash.
  3. Navidrome
    • There are many server apps that can speak "the Subsonic API" for serving personal music streams/downloads to an ecosystem of client apps. Navidrome is the one that has the momentum. It also has ok documentation, multi-library support (for your friends and family), good performance and restrained resource usage, and easy operational characteristics.
  4. Something to manage (and possibly sync) your library
    • Navidrome only does the "scan and serve" part; it leaves library management to you, and you can't just add tracks from any random client device, you need to actually get organized files onto the disk somehow.
    • If the scarred husk of iTunes is still working for you, just use that on your main desktop and then use rsync or something to sync your library to your server (if your desktop isn't your server). If you're on MusicBee or foobar2000 or something, just use that and sync.
    • I wish I had some less fuzzy advice here, but this is the one part of all this that's actually still low-key irreducibly complicated. I will get back to you on this one if I can derive a better answer.
  5. Feishin on any desktop computer
    • It's fucking nice.
    • Yeah, it's a RAM-guzzling Electron app, but so are spotify and qobuz and probably deezer or whatever. Doesn't matter. If you put enough effort into making things convenient and comfortable and modestly attractive, you CAN counterbalance the Electron Tax and come out on top of the available native apps, and these folks have done it.
    • Be sure to configure the keyboard shortcuts to match your preferences, turn on the media hotkeys, and maybe install the mpv helper tool (not required, but it can potentially give slightly better sound quality if it's one of your main listening computers).
  6. Arpeggi on iOS things
    • It's fucking nice. It's literally the best music player I've used in a decade.
    • Unfortunately it's not in the app store yet because it's in a long-running beta; you have to follow the "testflight" link from the subreddit to install it. It's worth it.
    • If you want a backup, you can try Narjo or Flo or Substreamer or Bragi or iSub or Amperfy or Halpoplayer or Cadence or Dromio or Musiver or Soundwaves etc. etc. etc. There's a bunch of Subsonic clients out there, though most are kind of crusty by now.
  7. ?? Symfonium or Dsub?? on Android things
    • I don't have an android thing and cannot vouch for anything here. Symfonium seems broadly adored by everyone who doesn't mind the one-time $5 or whatever.

Orion II

Dec. 14th, 2025 12:20 pm
vaxhacker: (Default)
[personal profile] vaxhacker

I mentioned earlier that having only partially done the Orion questionnaire, I was somehow now destined to keep coming back to write in my journal even after NaBloPoMo was over, like the blogging analogue of the siren’s call of the Trevi Fountain.1

I find myself with a quiet moment here today and only multitasking less than a dozen other things, so why not move it along a little further as well?

  • If you could make pancakes with anyone living or dead, who would it be?
    I’m going to make the assumption that the question is asking about someone I can’t readily do this with today if I wish, so the easy answers of making and sharing breakfast with my spouse and children which would always be my first and everyday desire, or even my own parents, should be stated but for our purposes here set aside for the sake of the deeper “what if…” implied here. I think my grandfather would be my choice. As a young boy I spent many hours with him, learning a lot about his technical expertise and generally looking up to him and spending time with him. It would be nice as an adult to be able to have pancakes (or whatever) with him and be able to share our perspectives now about life and everything looking back on our experiences after all this time.
  • What are some of your favorite words?
    你們 (nǐmen—in Chinese they have a plural form of “you,” distinct from the singular— nǐ 你—which is brilliant to make it clear whether you mean “you” as the one person you’re addressing, or the group of people you’re with; there’s yet another form of “you” when addressing a large audience as well), scrumptious, kerfuffle, ephemeral, gazebo, skullduggery, quux, firebottle, frobnitz.
  • Who are some of your heroes, heroines, real or fictional?
    The previous question revealed one of mine already. My father has always been another of my real-life heroes especially as I was growing up when it seemed to me there was nothing he couldn’t do. Even as I got old enough to realize he was a regular mortal, I started to appreciate the choices he had to make and how he sacrificed to support his family, always putting others first with patience and compassion that was a role model to me to try to aspire to be like.
  • What is something new you’ve done recently?
    Maybe not extremely recently but I’ve been expanding my range a bit on the microcontrollers I’ve been playing with in recent years. Back in the early 2000s I was exclusively using PIC chips but now it’s all Arduinos and Raspberry Pis these days. And I’ve been dabbling a little more in trying to appreciate Anime a bit more.
  • What’s the wildest thing you’ve experienced or witnessed in nature?
    Earthquakes, monsoon season, and a really good tropical thunderstorm with lightning bolts striking way too close for comfort certainly remind one to respect Mother Nature and realize how small we humans are when out in the elements by ourselves.
  • It’s late afternoon on a summer Saturday, you’re sitting with your feet in a cool creek and someone hands you the perfect beverage. What is it?
    Right now, it would typically be a Diet Coke, I’m embarrassed to admit, but I need to cut down on that, so let’s say a lemonade.

I hate giving interviews.
—Bobby Deol



__________
1Which I have, actually, tossed a lira coin into a few years ago but that return trip remains on my “to do” list.

So, yeah

Dec. 14th, 2025 11:45 am
codyne: my wyvern tattoo (Default)
[personal profile] codyne
Yes, the cat had rabies. I had my first round of shots on Friday, and really, it was not anywhere near as horrible as it's been made out to be. Seriously, I had people in the ER where I went for the treatment telling me as they were checking me in how painful the shots were, and how they were going to inject me right in the bites (sort of gleefully, almost, although I will charitably assume they were trying to prepare me for the worst so I'd naturally be relieved that it wasn't really so bad after all).

Granted, I have a high pain tolerance and no fear of needles, especially after the numerous surgeries and procedures I've been through in the past few years, but really? the shingles shots were way worse. So, people, here is my message to you: if you ever suspect you have been bitten by an animal that might have rabies, DO NOT HESITATE to get the shots. If you wait until you start having symptoms, it is too late. Get the shots, it might be somewhat painful and inconvenient but it's seriously nothing compared to dying of rabies.

Public service message over, here is what happened: the initial rabies treatment consists of two sets of shots. First is the actual vaccine. It's given in a muscle, and they let me choose the location. I chose to get it in my right thigh. I barely felt it, didn't even need a bandage, it didn't get sore afterwards or have any aftereffects. I will get three more of the vaccine shots, tomorrow (Monday), Friday, and the Friday after. I had to go to the ER to get the first set of shots, but I can go to the walk-in clinic for the remaining shots. Quick in and out, no big deal.

The second part of the treatment (probably the reason I had to go to the ER, because it had to be administered by a doctor) was to "infiltrate" rabies globulin into all the bite and scratch sites. This was done with a very thin, short needle about a centimeter long. The doctor inserted the needle underneath and around all the bites and injected globulin. It was a bit ouchy but nothing too painful. It took a while because I had two bites, one on each hand, and scratches on my right hand and both legs where the cat came up behind me and jumped on me. After doing the main bites, I asked the doctor if she wanted to do the scratches on my legs. She said she had plenty of globulin and it couldn't be reused for anyone else, so we could use as much as I wanted. The scratches probably weren't necessary to infiltrate, but I figured it couldn't do any harm, so I told her to load me up with as much globulin as she could. She had to change the needle twice because it was so thin it got bent. My hands were a little sore at first, but the soreness went away quickly and I think my hands actually felt better after. Maybe it was psychological relief, but it did help to have healthy serum go right into my bites and scratches.

So that was it. Next time I decide I want to get another cat, I will go to the animal shelter.

On to better news! Yesterday, we had an early Christmas dinner with my younger nephew and his fiancée (they just got engaged, so we were celebrating that, also). They are going to spend actual Christmas with her family, so they came here this weekend. I was pretty exhausted from my week of stress, and hadn't had time to do any shopping, but I managed to put together some veggie enchiladas for dinner, and a few presents. My brother & SIL and I are going to swap main presents on actual Christmas, but I wanted to bring something for them. I've been feeling crafty lately, and I had some leftover yarn from various projects, so I started searching knitting patterns, and decided on a wine bottle cozy (because they like to drink wine) and a couple of bottle/can cozies. Then I decided, since my sister-in-law is a HUGE Mets fan, to see if I could find yarn in Mets colors to knit the cozies. Fortunately, Walmart has a decent selection of basic weight 4 acrylic yarns, and I was making my weekly trip to Walmart anyway, so I picked up a skein each of royal blue and orange.

A wine bottle sitting on a table, wrapped in a knitted cozy in Mets blue and orange

I didn't take a picture of the can cozies but they were just plain cylinders, one in blue with an orange trim and one orange with blue.

They were a big hit, my sister-in-law really got a kick out of having cozies in Mets colors. (I have plenty of yarn left over, I will probably knit her a beanie & scarf with the rest.)

For my nephew and his partner, I had another plan. My mom always told me she wanted me to have her wedding diamond -- it was originally in a plain gold wedding set, but after my dad died, she didn't want to wear wedding rings any more and had the diamond reset in a swirly gold band and put a sapphire in the wedding set, just to have a stone in it. I don't wear rings so I just put mom's jewelry aside, and I don't have kids of my own, so I long ago decided I'd give the diamond to whichever of the nephews got married first. So I took the ring, the wedding set, and a professional appraisal mom had done of the ring way back in the 90s, and gave them to the kids, with an explanation of how they came about and how I'd decided who gets them. (If the older nephew every gets married, I have another diamond ring of mom's I'll give to them. But there's only one wedding ring, so I had to choose between them, and first come, first served.) They were very appreciative! The ring is currently too big for my future niece, so I don't know if they'll resize it or just keep it as a keepsake, but they loved it and will take good care of it, so I'm glad to have finally passed it on.

We had a delicious dinner and I'm relieved and glad to be getting my life back to normal.

RIP Hellcat

Dec. 10th, 2025 02:46 pm
codyne: my wyvern tattoo (Default)
[personal profile] codyne
As I feared, the Hellcat was dead when I got up this morning. I boxed it up, called the Health Department, and headed to the animal hospital to drop it off. They will send it off for testing and I should get the results tomorrow. The Health Department will authorize rabies treatment if necessary once they get the results.

Got home and spent a couple of hours cleaning up the cat room. Such a disaster, the cat had torn up two bags of cat litter and chewed up everything chewable it could find. I thought about what I could salvage and finally decided to just wash what could be washed, wipe down with Clorox anything that could be cleaned, and throw away the rest. I threw away the cat bed the cat had died in, and all the toys that had been strewn around, as well as all the cat litter and kibble in the floor. I could have washed some of the toys, but I decided to just get rid of them all and start fresh. Most of the ones in there he didn't play with anyway -- his favorites are all out in the rest of the house and he has plenty out here. I packed up a few things to be washed -- another cat bed I don't think the cat used, and the towels I'd brought in -- and they'll go in the laundry with the clothes I was wearing around the cat. Everything else got sprayed with Clorox and wiped down: the cat tree, the table and plastic chair, the carrier I used to bring the cat into the house, the stroller and the pile of carriers and stuff in the corner. I emptied the litter box and washed it out with bleach cleanser. Took about two hours and I'm exhausted. I remembered to buy and use gloves while I cleaned, but forgot to wear a mask, and stirred up enough dust to aggravate my allergies.

Last thing I'm going to do is steam clean the floor with my steam mop, after I rest a bit more. I already sprayed it with Clorox but I'm going to mop it as well. Then let the room air out for the rest of the day and put Davey's stuff back in it tomorrow. Meanwhile I'm keeping it closed so Davey can't get in. I suspect I'm being overly cautious (and Davey's had his rabies vax anyway, so he should be fine), but the room could use a good deep-clean anyway and I want to make sure all the kitty's germs are gone.

A void cat sitting in the floor looking at me with evil intentions

I only got one half-decent picture of the kitty in the short time before it became a rage demon. It was a cute little void cat with extra toes on its murder mittens. Poor kitty. I'm sorry it ended this way but at least it's not suffering any more.

Cat update

Dec. 9th, 2025 11:28 am
codyne: my wyvern tattoo (Default)
[personal profile] codyne
Got up this morning and did not hear the hellcat meowing or banging around when I was in the kitchen getting Davey's breakfast ready, so I thought it had possibly died during the night (because it always yells at me when it hears me nearby). Had my morning cocoa and then collected supplies (a large plastic bag and cat-sized cardboard box for the body, if any) and armored up with heavy jeans & sweatshirt, fireplace gloves and the snow shovel for defense, to peek into the cat room and check on the situation. Put Davey in the bedroom so he couldn't go in the cat room while I checked it out (he still thinks Oh Boy! Another cat! and wants to go visit it, poor guy. I really do need to get him a friend when all this is over).

Cracked open the door -- no response. Opened the door and looked inside. No hellcat rushing to attack. Then I saw it lying in the floor across the room, peering up at me. I waited a moment to see what it would do, and after a bit, it got up and started walking towards me, meeping slightly. It seemed a bit wobbly, and not aggressive.

I checked that there was still water in the dish I put in the room yesterday and kibble lying in the floor. The litter box appeared to have been used (I put non-clumping paper pellets in it so it would last a week or so without being scooped, so it doesn't need attending). I backed out before the cat reached me and closed the door.

So. Two possibilities: either the cat has finally calmed down and decided the room is not a torture chamber and no longer wants to murder me on sight, or the cat is in the final stages of its disease and no longer has the strength to attack. Either way (and sadly I suspect it's the latter; it was unnaturally aggressive and violent for days, classic rabies behavior), I will give it another day and see what happens. I suspect it will either be dead tomorrow or calm enough for me to care for it for until its quarantine is over. At which point, I will still have to figure out what to do with it, but I'll worry about that when/if the time comes.

Update to the Update: Just got a call from the guy at the auto place asking me how the cat was doing. I explained what was going on, that the cat had bitten me and was suspected of having rabies and needed to be quarantined for ten days. He says he doesn't think it has rabies because it was fine with them in the garage on Friday, playful but not aggressive, and one of the guys was kind of regretting letting it go. I said if the cat is still alive on Monday (the end of its quarantine), I would be happy to let the guy have it. I said I would definitely let him know either way, if the cat dies and tests positive for rabies, anyone who was scratched/bitten by the cat needs to get treatment. If it doesn't die, I would love to be able to find it another home. So it looks like things are settled. Hellcat gets a reprieve -- from me, anyway. Now we just wait and see.

BSD BTW

Dec. 8th, 2025 07:56 am
vaxhacker: mascot of BSD unix (BSD Daemon)
[personal profile] vaxhacker

THE world of computing has no shortage of tribal factions, some of them more fanatical than others. Emacs vs vi, Windows vs Linux, which programming language is the One and Only to rule them all, the list of things we will pile up hills of old CDROMs and unread manuals to then die on are endless.

Some people are content to leave these choices to more pragmatic matters of selecting the right tool for the job at hand, and quietly allowing others to do the same.1 Others, of course, see their choice of language (*cough*)Rust(*cough*) as superior to all others and are baffled why anyone still bothers using any other language. There are many technical reasons why that is absurd regardless of how amazing that language’s strengths are, of course, but that attitude is kind of interesting psychologically. Why are humans driven to be so territorial about things like this?

And we, of course, see this with Linux distributions2 as well. Sometimes I’m amazed Linux got as popular as it has with all the in-fighting between the distro camps (or, perhaps, it owes some of that to the competition created there).

But in terms of smugness, it’s hard to beat the legendary Arch Linux tribe and their viral tagline, often injected unnecessarily into conversations, “I use Arch, BTW.”

And I get the appeal of Arch, personally, if not the attitude. I like working closer to the bare metal of the computer, given my history of starting there and working upward to higher-level languages and operating systems as I learned. I like administrating systems and have even written a device driver or two of my own. I’m not afraid of getting my hands dirty and don’t need a computing “appliance” or someone else to keep it working for me.

On the other hand, I don’t have the spare time at the moment to have to do that all the time. I’d prefer it to be a hobby, not a daily necessity.

But nonetheless, I took the plunge a couple of years ago to “use Arch BTW.”

Purists may object, saying that I didn’t truly use Arch. I did, briefly, and it was fine, but eventually settled on an Arch derivative called Garuda Linux as my daily driver on my desktop system (while my laptop stayed with Pop_OS! that came factory-installed on it).3

It was fine, I liked the fact that the package manager was called pacman, so creativity points to them for that. Generally, it was Linux, and it worked, and I was happy with it. I could bend it to my will more or less as I needed to.

However, over time, the cracks started to show in ways that got too much in the way for me to want to use it every day.

Arch is a “bleeding-edge” kind of system where people tend to always keep the system patched to the latest versions of every package and every system update. But unfortunately that’s not just a tendency, that’s essentially a requirement. If you go too long without updating, things get unhappy.

And unlike other distros, you can’t easily do selective updates or backrev individual packages and apps. You must upgrade everything on the system every time, always, and often. Which means, quite frequently I’d find that someone had made a change somewhere that I had to accept and now my system was broken until someone fixed it.

And that’s really ok if you’re running a Linux system because you like experimenting with computers and aren’t relying on it to be stable to get real work accomplished. But I was. I had personal stuff to do, and research experiments to run and couldn’t afford random downtime arriving like lightning strikes out of the blue.

So a couple of months ago I decided I just had enough and wiped the whole system to go back to my actual favorite operating system, that has always been my favorite since I discovered it as a teenager (i.e., when dinosaurs still roamed the Earth).

Unix.

Specifically, BSD. Specifically specifically, FreeBSD.

Yeah, there’s a bit of a snarkiness there too, but usually it’s a lot more low-key because it’s a smaller, and I think friendlier, community. The only memorable tag-line I remember being viral over time was an old USENET signature line that went something like, “Linux is for people who hate Windows. BSD is for people who love Unix.” (Again, I have more to say about what it is compared to Linux that’s long enough for its own post but for now it’s not Linux but is similar in that it’s also—like Linux—an open-source operating system based on the older Unix operating system but legally and technically a separate codebase and distinct from it.)

After getting it all set up and having moved my data back on to the system, getting reacquainted with ZFS, and settling in, I’ve been pretty happy with it. “They” say BSD isn’t a great choice for a desktop and is best suited as a server OS. That’s not entirely wrong (and to be fair, the same is said of Linux, but a lot more has been invested in getting Linux working better in that space), but it seems to be good enough for me to meet my needs. And it’s better than I recall it being last time I used it.

Rock-solid and stable, too, which is what I need, while also being an OS that’s not remotely interested in holding my hand with administrating a Unix-like system, which I also like.

And having got that all working with version 14.3 of the system, I see that they just released 15.0. So maybe after Christmas I’ll upgrade it. Maybe. I am in the middle of a metric ton of work on my research so maybe it’ll be Christmas, 2026.

There are two major products that came out of Berkeley: LSD and UNIX. We don’t believe this to be a coincidence.
—Jeremy S. Anderson
UNIX systems administrator



__________
1Even if—for whatever reason—they insist on running Windows.*
2If you’re not familiar what a Linux “distribution” is, or why it matters here, I think I have another entry in mind that explains that a little more but for now just consider that Linux, as a computer operating system, is packaged up in a wide variety of different “flavors” from different vendors to distribute to you, each with a little different look, feel, collection of apps pre-installed, etc.
3Mostly because that (Ubuntu-derived) distro is made by the hardware manufacturer, with their hardware in mind, which, for laptops, saves a fair number of headaches.


__________
*Although TempleOS remains one of life's unsolved mysteries, I admit.