Random factoid: Linux can still read HFS+

Imagine my surprise when I boot up Hill, load hfsprogs, and mount my iPod’s data partition under Alpine Linux and it just works ™ provided the magic sanctified cable that cost $20 at the fruit store rather than the generic one.

Of course, the oh crud involving the file server’s RAID enclosure means experimenting with Linux media players for syncing music is tabled for another day, along with whether or not Rockbox shall replace its OS in favor of not having to suffer Apple’s software for the sync.

Server Recovery

There are rare occasions when I am glad to be both smarter than the average computer user, and a touch paranoid. Today has proven to be one of those times.

Earlier today, my file server’s RAID enclosure managed to take a ThinkPad to the face, and this lead to a great circle of profanity upon the discovery that said server was no longer seeing a disk label. Turns out that managed to nudge the mode switch (which of course some arsehole put on the front) and depress the power button sufficiently to switch modes to combined disks. Of course, switching back wiped out the metadata and so on.

But because I’m a right pain in the ass myself and the first reaction to going from a Master / Backup drive pair to a RAID 1 redundancy was roughly, “Ahh shit, now I need a third drive for the backups,” I only lost data since yesterday at about 0102 UTC when I backed up the array to my NVMe drive. Which largely amounts to having to re-upload some recent files to the server’s Music share, rather than 100 GB of family photos that aren’t offsite so frequently.

Being the anal retentive pain in the ass that I am, the restore process is even relatively simple for the file shares since it’s roughly reformat drive, run script for each share, copy files for each share, verify permissions / access control lists / ownership / contexts / yada, yada. I’m too paranoid not to already know that the backup procedure will work, because how the fuck would I have migrated the data the first time? 😁

The catch? Well, the virtual machines weren’t backed up but were being stored on the array. It’s been on my todo list to study the best way to handle backing them up automatically. Only one virtual machine actually had any local data of consequence, and was the authoritative name server for my LAN’s domain. Except I kind of don’t need to worry about that for three reasons:

  • Name servers two and three are configured so that either can be converted to take over the job with a minimal fuss.
  • Their topology was chosen so only resolving local domains would fail if name server one fails longer than the pair serving my LAN caches.
  • Name servers one, two, and three are each automatically backed up every night to, you guessed it, the file server!

Which means name server one’s sudden demise fits into the “important but not urgent” quadrant of my Eisenhower matrix, and affords cause to revisit the issue of how the VM’s should be managed on Zeta.

Also while I’m at it, I’ve repositioned Zeta’s RAID enclosure to make it much harder for anything to hit that fucking button and switch. I might build a proper safety cover just to be extra paranoid, lol.

Destruction of trust and faith, supplemental

Well, that’s fun and interesting. Several attempts at removing / reimporting later, I found that results would not change. But in between importing and quitting, if I used “Show in Finder”, it decided to open one of the missing tracks–right out of the trash. Emptying the trash, deleting the album, quitting the app, relaunching, and re-importing seems to have worked. Watching the activity window, it even worked its way through sound check information.

So, I guess it can be made to work–Apple Music just can’t be trusted unless you’re prepared to quit app and review that every import matches what it should. ‘Cuz that scales so well \o/.

Yeah, my urge to press my old ThinkPad or Latitude into song management duty is rising.

The way to destroy all trust and faith in your music software

Eons ago when I had first encountered iTunes, I will admit that I really hated it–but I will also admit that it *worked* which is ya know, like the most important thing ever about software? We just had a difference in opinion on how things should work, but it did work, and for that I respected iTunes despite the sour taste it left in my mouth. For friends, it was often the gold standard unless they were fellow unix nerds.

Importing music into Apple Music is mostly painless. Drag a folder of tunes onto the icon and boom, it’s imported. The tag editor even makes it easy to add album art and metadata, if so inclined.

And here’s the rub?

Drag and drop “Alan Jackson – 34 Number Ones” onto the icon, it imports, it plays, the files get organized into “$HOME/Music/Music/Media.localized/Music/Alan Jackson/34 Number Ones” by way of the default copy and organize settings. Yup. All good. Everything working perfectly! Now quit and relaunch Apple Music, and go open the album. Suddenly tracks 4, 20, 32, and 33 are present out of tracks 1 through 37 but here’s the real kicker: the files are still in Apple Music’s library on disk, they just are not in the database after quitting the app!

Now I know why the fucking hell partial albums were showing up on my iPod for some of my content that came from my old MP3 files rather than re-rips to fresh AAC/M4A generated in Apple Music. At first, I thought that it might have been because these are later 320 Kbit/s files encoded for quality unlike the 128 Kbit/s typical of older files. I considered those worth breaking out the stack’o’discs and external optical drive for ripping again, but these don’t need anything else.

Why is that a problem? Well, guess what: Apple Music just destroyed any faith or trust I have in its ability to _ever_ manage my music collection. Because if you can’t reliably import and database files reliably, you cannot be trusted to manage them safely. I could forgive throwing up your digital hands in horror with an error message decrying the files as unable to be imported; that would be fair because it’s descriptive if you encounter some kind of error. Silently flushing data into the aether on the other hand, not so much, even if you leave the files on disk.

For shits and giggles, removing the album removes the 4 tracks from its place on disk and leaves the other 33 behind. Which suggests that it really is a logic error somewhere, as if Apple Music imported the files but forgot to mark them as imported, so it doesn’t actually manage them. Trashing the entire folder on the other hand and re-importing, has a more interesting result. The GUI loads the entire set of files but only the same 4 tracks are copied into the library.

SMH, seriously what the fuck, Apple!

As far as I can tell, this occurs irrespective of the location of imported content. I’ve copied the file server’s master copies to my laptop, so that I could non-destructively sort them into imported and review folders after reviewing what’s ready to drag’n’drop as is, which will need updating metadata, and which require some thought (e.g. albums with mp3/flac and mp3/wav side by side), and so on. That eliminates any possibilities of the network or removable media, and ya know, checksums are kinda reliable at detecting oops a file is corrupt. I don’t think that I’ve had any problems with content directly ripped from disc, only with files imported.

Random things that make me roll my eyes

Apparently, Finder’s Get Info dialog has support for some common multimedia metadata in the “More Info” section much like the “Details” section of Explorer’s properties dialog. Except when viewing network shares or external drives, in which case the More Info section will be pretty useless. Which makes it more grumble some to review such things before importing into Apple Music, and trying to decipher how the application handles various types of metadata on import.

On the flip side, ffprobe still works perfectly on Linux. Because between Linux and ffmpeg, if one isn’t the solution, often the other is, lol.

Off to a Good Start

Despite having very little desire to leave the warm comforts of bed, I managed to open my eyes, get cleaned up, put the laundry on, and head downstairs and begin making breakfast. Next experiment was definitely a success: bacon, egg, cheese, spring onion, and steamed sweet potatoes wrapped up in a burrito. As an experiment, I opted to try a friend’s method of wrapping around the strip of bacon and skip crumbling it into the scramble; and enjoyed the extra slices on the side.

Of course, I wasn’t smart enough to put the coffee on between the bacon and eggs, but alas it means more coffee for right now! Plus as I sit down to coffee, the dryer is now loaded and it will certainly be time for another cup by the time I have to fold laundry.

For me, it’s kind of a rare morning. I almost never buy bacon, so it’s not something that I consume a lot of, but at 105mg a slice the lower sodium stuff was too tempting to pass up. Between the blood pressure of late, and the age old problem of using it all before it goes to waste, I don’t think I’ve actually bought bacon in several years, but it was worth it 😋 even if I shouldn’t make a habit of it.

The iPod Experiment

A profuse amount of profanity aside, we finally have an answer to a question that has been on my mind for several weeks now: who will surrender first, me or the iPod. And that answer is? The iPod gave up first!

Phase I was largely a head scratching affair, never having owned one. Nor in fact an Apple anything until my iPad Pro 2018. After much waiting on shipping however, I found the device to be a progressively hackwittery filled experiment.

First, the dandy screen that iPods apparently give when the battery is so dead that it has to charge before you can actually do anything at all with the iPod. But hey, that’s not so obscure that you can’t STFW to learn about it, so sure. Later, I would also learn that this screen occurs if you power up an iPod without the battery connected, but that’s getting ahead of my tale.

Secondly, while the device did eventually power itself up there was no stability. Attempting to connect to any machine including an equally old PowerPC system was met with failure, and PCs declaring that it failed to enumerate. That was a pain, but of course the damn thing would boot loop for about 10 to 20 minutes whenever turned on until eventually getting to the menu. Getting into the diagnostics mode to check hard drive info would only spew gibberish! Even when left running with the handful of songs it came with running, I would come back later to find it boot loopy in the morning.

An iFixIt tool kit, a torn up halberd, and a new love for plastic guitar picks and my pocket knife later, I managed to get the device open. But unfortunately the read the instructions first instructions for the SD card adapter it came with actually have fuck all info, and I had expected the board’s ribbon connector to be a pop top like most ribbons connectors I’ve ever seen in electronics (and apparently the original iPod hard drives as well). So I ended up damaging the connector on the board.

Several days and a new iFlash Solo in the mail later, I finally was able to try again only to get nothing, even after reseating the ribbon cable which was original and glued down at the motherboard end. A week of waiting for that in the mail aside, and still gibberish reading from the SD card adapter board. It only showed 96 GB and random stuff, along with locking the device so hard that a power pull of the battery connector was required. Well, at that point it’s either got to be the board or the card, so let’s reach for the collection of SD cards.

Sure enough the moment I replace the SanDisk 128GB card it came with, I can read hard drive data from diagnostics mode! It read the Transcend 64 GB card from my old Samsung tablets just fine and dandy. For shits and giggles, I used the 1G PNY card that was like the first or second SD card that I ever bought almost 15 years ago–worked just fine! Reaching for the various Samsung cards (2GB, 64GB, 512GB) in the spare cards bin, the only one it wouldn’t read was the 512. Okay, so either the board doesn’t handle larger SDXC cards or the motherboard is a model that uses wonky LBA addressing.

Big whoop there because I can probably melt the device’s database before a 64 GB card is filled up, and part of the point to this experiment is the lack of storage capacity left on my phone 😗. Key the next problem: nothing will actually recognize the phracking thing! I tried a bunch of different things with the SD card, trying to format it APM/HFS similar to the card it came with and trying dd recovery with MBR images still widely available, but nope. Ironically, when I dd’d a mounted disk utility image of the old card to the new card over /dev/rdiskN it booted perfectly despite the 128G image -> 64G card lobotomy, but still nothing would recognize it. The most that I could get with various dd and disk utility fun times was for the iPod to boot to the recovery screen or the ready to disconnect screen.

If I could just get it recovered, I knew it would be a win at that point.

I can’t say that I expected my M2 MacBook Air or the new Apple Devices app on Windows 11 to recognize the device, which they do after solving the problem. But I had expected that my iBook G4 running Tiger would work, especially after rolling it up to iTunes 9. Nope, nope, nada and the horse I rode in on. That was the point where I figured the only things left to putz with were the generic iPod sync and charge cable the device came with, and replacing the motherboard. Replacing the motherboard or something else to try the cable with would mean acquiring another, and opening this 5th gen made me glad that I didn’t buy one of the metal ones!

Queue the final count down: use an Apple branded 30-pin iPod cable, and everything works. Even more concerning than the amount of time and effort sunk into this project is that Apple still sells these cables. Another two days and a delivery later–the moment I plug it in, guess what? It’s recognized. SMH, greedy fruit companies and their MFI cables I suppose.

More curiously, both the Apple Devices app on W11 and my Mac running Sonoma offered to restore the iPod. I kind of hoped for the former, assumed the latter wasn’t likely, and expected to be reaching for my old iBook G4 again. Turns out that even on an M2 with Sonoma, you can restore an iPod classic from Finder…it’s just a buggy wreck.

Having to pull the cable, replug, and insert a hard shutdown to get the Mac to kill the hung iOS sync services later, I was able to trivially hook up and sync purchased and imported music through Finder. Long as I used the bloody Apple cable.

Once my music was synced, I decided that my choice of “Test” song was emotionally a good choice:

P!nk – So What

Totally forgot how appropriate the music video was, but in the name of more fun I’ll be enjoying the rest of the Funhouse album.

Upside of brewing two cups worth in the morning: coffee with breakfast, and coffee after grocery shopping / lunch. Yay for microwaves.

Upside of getting the grocery shopping in the morning: by noon, everything is squared away in the kitchen, had lunch and packed lunches for the week. Likewise, ingredients are readied for dinner plans and prep later this evening. If I’m smart, I’ll get laundry done and folded before it’s time to cook.

Downsides? Having to get out of bed and put on pants. Ya know, if there’s ever robots to take care of doing chores and errands, I hope someone makes an android with an integrated espresso machine…. lol

Lisa Frankenstein

One of those times when I’m scrolling for something to watch and decide, “Eh, screw it,” and decide to watch–and end up very much pleased.

The film does pretty well at capturing a late ’80s vibe without making a big deal of its setting, and manages to be a weird and amusing spin on a tale old as time, or uh, graveyard love stories gone off the rails? Anyway, I was quite amused :).

One upside of sorting through old CDs, is the opportunity to restore files that kind of disappeared two or three laptops ago. Another, is content for a recent experiment but that’s still a work in progress :^o.

Something that I also find curious is how tastes have changed. Less so my taste in music, more so my taste in interfaces. The last time that I ripped and organized these CDs, I had my own fairly strong notions of how things should be organized–and it mostly pissed me off. It’s hard to have a very uniform, tightly organized music collection in my experience. And experience has shown that often one method is as good as another until you start to stress specific problems like the maximum number of files in a directory, so meh.

My archival structure is more or less based off Plex’s format with a relatively lax level of adherence, since it’s easier to just import things like a Steam soundtrack as is, and a stack of old CDs is too much effort to value to sit around writing scripts to munge into the desired filesystem structure.

Which kind of brings me to two things that surprise me. One is that Apple Music will happily import audio CDs despite the emphasis on streaming subscription, and it’s a pretty snappy decoder. MPEG-4 containers with AAC-LC is perfectly acceptable to me as a format today due to the level of openness and support, and the iTunes Plus profile of 256K is good as anything shy of giving me a FLAC file. The other thing is that I don’t hate how Apple Music munges my rips, so much as I don’t care how Apple Music munges my rips.

The last time that I really touched anything Apple and music ripping was probably iTunes 6 or 7, which at the time was ‘current’, and let’s just say that XP was still sexy back then. Most of my friends liked iTunes, and not to big a surprise since most had an iPod even if few had Macs. But I was very perturbed by how iTunes wanted to assert its own definition of how to organize my content instead of obeying my system. Combined with being more of an XMMS / Amarok / MPlayer kind of guy, suffice it to say that I was never a fan of iTunes as a media player nor a library manager.

Fast forward to today, and what’s the real big difference there? Well, honestly the way that Apple Music manages imported CDs seems about the same that I remember from almost 20 years ago. The difference? I don’t want to manage my music through a file system. It doesn’t do my life well to organize such things in terms of files and directories built around tracks, albums, and artists and any other hoopla–no, it’s about the data model not about fitting that model to the file system.

It’s actually a lot like my contemporary relationship to notes taking over the past decade, and Android/iOS software in general. I don’t really want a model built around files when a model built around data is more practical. The obvious consequence of course, is that means decent tools. If you can’t do better than find/grep and so on then don’t bother making a fucking interface!

If files are a natural model to a problem: good. At some level most things should be files because we have good tools for working with files and it’s a fundamental aspect of data storage. But raw files are bad at metadata, at search, at relationships, and a host of other things that are more database like or more structured in nature than a stream of bytes. Files are good at storing that information not expressing those concepts, even more so when portability is a consideration. So while I still don’t like the way Apple Music organizes content anymore than I did iTunes, I can appreciate that it provides a reasonable interface particularly for the import part.

And of course the archival path is still tossing the resulting files into my own structure, lol.