Reverting back to Mavericks

It’s unclear.  I did a fresh install of Yosemite on a Retina MacBook Pro 13″ 11,1 but the battery life was terrible.  Typically 4-5 hours max.  In order to revert to the “Out of Box” state you need to delete the primary Mac OS partition and then boot to recovery using CMD + Option + R.  This will initiate the “Internet Recovery” which will take hopefully less than an hour to download whatever OS the machine came with, in my case Mavericks.  Upon receipt of the machine I did a fresh install of Yosemite but consistently saw terrible battery life.  My hope was that it was Yosemite related, so I’ve reverted back to 10.9.4.

I’ve now performed an SMC reset and I see over 13:00 hours at 100% battery life under Mavericks.  It’s unclear if Yosemite is at fault, or the SMC is at fault, the clean install is at fault, I mean who the fuck knows Apple?  All I know is that I did a fresh install of Yosemite on a brand new machine and it got about 4 hours of battery life.  Now it says it has 13 hours of battery life.  Talk about a fucking unreliable narrator.

Consolidating photo libraries from multiple drives

I’m trying out “The Big Mean Folder Machine” version 2.29 to consolidate (or “merge”) various years of photo cruft.  The process of culling and consolidation will hopefully allow me to have a single photo directory backed up to Amazon Glacial forever.  I believe as I mentioned in another post, mechanical disks fail so having a redundant and offsite backup strategy is crucial.  And certainly a key part of of this is limiting the number of places you’re storing your local data so that you can create redundancy.

I’ll write more here when I get all this data and drives sorted out, but so far I was able to run a scan and it the BMFM was able to create a folder hierarchy from multiple drives.   I may need to do some merges first and then a split.

MacBook 5,1 upgrading to Mavericks and some notes…

A buddy of mine was upgrading an older MacBook (Unibody Aluminum, Late 2008, Model ID 5,1) from 10.6.8. In theory, you press the “upgrade to 10.9” button from the App Store and everything goes swimmingly. In his case it resulted in a serious disk error and wouldn’t boot into recovery mode; it would only boot the initial OS install utility screen and then fail to install the OS. Repeatedly. A recovery partition had not been created as the machine was running 10.6.8 and he also did not have the original 10.5 DVD that came with the Mac nor access to another Mac to create USB sticks from.  So there’s the rub.

He had  10.6 Time Machine backups, of course, so this wasn’t a catastrophic issue but the quandary here was that he couldn’t initiate the Time Machine recovery without the the original 10.5 DVD or from the new 10.9 installer. And the old hard drive still had errors.

Here’s a list of a few things we tried until it finally sorted itself it:

1) Create boot USB sticks of 10.8 from Ubuntu – (no go, same problem as 10.9)
2) “Restore From Backup” option on 10.9 Installer did nothing
3) Put in a new 320GB Western Digital Scorpio Black and 8GB of fresh RAM
4) 10.6.2 retail iMac install DVD – (loaded Time Machine Recovery but would not install 10.6)
5) Confirmed “secret EFI firmware” version of the MacBook 5,1 can use 8GB ram, 64bit mode

So at this point the machine is back online. He has recovered 10.6.8 from the Time Machine backups onto a new 320GB drive. He confirms that the EFI firmware has been updated to the latest version and the RAM gets upgraded to 8GB. He’s back running 10.6.8 at least.

The question then is if he hits “Install Mavericks” from the App Store will the machine kill itself again? He has the backup so he rolls the dice and it works, the machine updates successfully from 10.6.8 to 10.9.

From here it is rote. Make a fresh backup of functioning 10.9 (don’t delete your 10.6.8 backup just yet!). Do a fresh install from a working USB stick of 10.9. Migrate the crap from the old installation.

That’s it. Not more than 20-30 hours of your life. But hey, the late 2008 Unibody MacBook is now running the latest and greatest.

12.04 LTS for everyone.

Fixing LadioCast crashes & 10.9 SSH issues…

Had some issues when scripting LadioCast broadcasts, started to cause it to crash repeatedly.  The .plist file to delete is com.kawauso.LadioCast.plist from the Library.  Should return the application to defaults.  There was an update to the application in October, so it’s possible this error handling behavior was fixed, but uninstalls did not appear to delete the .plist.

Also, updated to 10.9 “Mavericks” on the server and pretty much all SSH functions stopped working.  Briefly got them working again, but so far it’s been a bust.  Will back update to 10.8 with a fresh re-install.   This machine was an upgrade from 10.6 to 10.8 to 10.9, so it’s possible in all of this OpenSSH failed, but regardless a lot of users have had issues with SSH and 10.9.  An alternative is to run a standalone Linux server or something like a Synology NAS.  Seemingly more reliable those.

Event Handler Script for LadioCast

Added this AppleScript to LadioCast to update from Spotify Radio to Sonos with proper track metadata when on local radio:

set lastName to “”
set lastArtist to “”
set lastAlbum to “”
tell application “Spotify”
set trackName to name of current track
set trackArtist to artist of current track
set trackAlbum to album of current track
end tell
if trackName is not lastName and trackArtist is not lastArtist and trackAlbum is not lastAlbum then
set lastName to trackName
set lastArtist to trackArtist
set lastAlbum to trackAlbum
tell application “LadioCast”
set metadata song to trackName & ” – ” & trackArtist & ” – ” & trackAlbum
end tell
end if
delay 15
end repeat

Seems to work. In LadioCast you can choose this saved script to run as an “event handler” when playing your Icecast stream. One field from Sonos “TuneIn Radio” that I still haven’t been able to propagate is “On Now” but the track metadata shows up correctly under “Information” and Sonos updates each track via Growl.

Avoiding the analog: Icecast2 for OS X, Sonos & Spotify Radio

Apparently, Spotify has finally released their Radio API to certain content management platforms, but until it’s built into Sonos the only way to actually get Spotify Radio on my ZP80 was to use the analog line-in.  What about creating an Icecast (Shoutcast, Podcast, etc.) local radio station that I tune in to on the Sonos locally? This would then avoid the analog hole (until I add a phonograph line stage).

There were a few sources I had to use to make this work, and I’ve only built/tested this under 32 bit 10.6.8 Snow Leopard (so your mileage may vary for 64 bit and/or more modern OS X machines).  Joao Ricardo’s blog post of  “Icecast Radio in Mac OS X” turns out to be a great starting point.  Note, that he recommends installing MacPorts, which may not strictly be necessary if you have Homebrew already installed.  I have not tried to port Icecast via Homebrew, but I imagine the installation would also work, as others have had success.   For example, here’s Josh Dzielak’s tutorial for Icecast & Darkice using Mountain Lion and Homebrew

So yes, per Joao’s instructions:

1) Install MacPorts (note: there are several dependencies, read up before you even install MacPorts)

2) In Terminal$: sudo port install icecast2

  • If doing Homebrew$: brew install icecast
  • Icecast vs. Icecast2?  I don’t know. You tell me internet, you tell me.
  • This took like 30 minutes using MacPorts on an old 32 bit Intel machine

3) Install Ladiocast.

4) Install Soundflower.

  • Reboot machine.

5) Make sure your admin/user has access/rights to “icecast -c /usr/etc/icecast.xml” as well as wherever an error for Icecast’s “access.log” and “error.log” files.  In my case they needed to added to /opt/local/etc.  You’ll need to adjust access with “chmod 755″ in this example.

6) Start playing some music on your Icecast server machine.  In OS X “Sound Preferences” make sure “Soundflower 2ch” is set as the “output device”; you can also “option + click” on the volume in the at the top right menu and select the source.

7) From Terminal$: icecast -c /usr/etc/icecast.xml

  • At this point Terminal will need to be open, obviously you can set this up as a background process, run on startup, etc. see Josh’s article linked above.

8) From within Ladiocast choose “Soundflower 2ch” as your source, click on the “main” button in Ladiocast.  You should see music bars making music.

  • From the menu in Ladiocast click on “Streamer 1” choose Icecast.  Set or whatever you machine’s IP is for the server.  The default user and pw is located the XML file.
  • For encoding, especially to work with iTunes and probably Sonos, I set it to AAC 320 kbps.  Ogg may in fact work with Sonos, I’ve not tried it.
  • Click “Connect” at the bottom there.

9) In a web browser, type in the IP for the Icecast server.  If said machine is localhost use which is the default port for the service. Click on the .m3u link and open in iTunes/Winamp or similar.  If you have music bars making music and you have a .m3u created you should hear music (double check OGG vs. AAC).

10) Final step: open the desktop Sonos App. Click “Manage” from the menu bar and then “Add Radio Station” and the enter (or whatever your IP is for the Icecast machine).  Create that as a favorite radio station.

11) Works for me.  If you want an Icecast radio station globally on WAN, well, poke those holes. Google a bit.  That’s not this blog entry.  Let’s hope Sonos adds Spotify Radio sooner than later.


SSH debug

The crux is that SSH even when connecting w/ -vvv  or -vT modes won’t tell you precisely why it’s not connecting for obvious security purposes.  This is presuming you’ve double checked all other obvious issues and your public/private key pairs are setup correctly.

In the linked post above Kent Martin writes, the answer is to bind debug to an alternate port on the server side:
/usr/sbin/sshd -d -p 2222

then similarly from the client machine:
ssh -v -p 2222 user@machine_I_am_trying_to_ssh_to

On the server machine terminal you’ll see a more verbose debug log and hopefully it will tell you exactly why your client machine is being rejected.

EMU 0404 USB driver finally updates….

I’ve never been displeased with the price performance of the Creative/E-MU 0404 USB 2.0 [DAC] MIDI audio interface, but seeing as how I mostly use it for music listening I’m not super reliant on the latest and greatest drivers, it’s worked fine with OS X.

From past experience, I know configuring just about any USB audio interface in Windows XP was a headache, and I am told Vista/Win7 fixes some of the audio path issues. But I don’t run Windows 7. I have 10.6.8 on my systems now, the Mini is the main playback hub. The E-MU drivers for it were old, think Rosetta, possibly PowerPC binaries, as in old, but they worked. And despite being capable, Creative/E-MU has never enabled 24 bit 192KHz playback with the 0404 USB under OS X. I’m sure it’s possible. This is all to say, when I updated to the latest drivers for 32/64 bit Snow Leopard / Lion compatibility I just wanted to make sure it didn’t break anything, if it sounds better, great, so long as it doesn’t break functionality.

Here’s a link to the October 14, 2011 64 bit Lion driver download page:

I can’t hear any difference but it didn’t seem to break anything. Still no 192KHz up-sampling option.

On a side note, C says it’s not worth it yet to sync all the songs to the cloud, too much lag, in which case I need to upgrade to a 1TB 9.5mm 2.5″ SATA drive in the Mini, as I’m running low on space. I like having most albums at 16bit/44.1KHz lossless audio, and I occasionally buy CD’s and rip it to such. For streaming over the cloud 320kbps .mp3/aac seems to be standard. At $5/mo Spotify doesn’t sound very good, comparatively, $10/mo apparently bumps the streaming quality. At home FLAC/Apple Lossless sounds better, for sure.

No more shiny plastic discs

The latest updates from the Cupertino camp have included the elimination of the plastic encased MacBook from the notebook lineup and the disappearance of any sort of optical drive from the Mac Mini. And perhaps saddest of all no black anodized MacBook Air. All the newer Macs are now reasonably up to date with mobile Core i3, i5 or i7 processors and “Thunderbolt” ports.

But say again, no DVD drive? What about a Blue-ray Disc drive? Surely iTunes or Amazon isn’t about to start streaming 1080p movies anytime soon. In fact when I recently rented a movie on iTunes to my last generation Mac Mini (late 2009) it forced me to download the entire 1.4GB SD video. Craziness. At least Netflix has HD streaming working well. I think perhaps the Apple TV supports streaming films from iTunes, it’s unclear, though it’s likely a licensing issue.

I mean, I understand where they are going here, people are using discs a lot less. The App Store now allows direct downloading & upgrading of the latest OS (10,7). But I thought the Mac Mini was good for servers & HTPCs? Doesn’t that sometimes require a disc? And why has Apple never been excited about Blu-ray (beyond the awkward hyphenation)? The biggest gripe I have about the Netflix pricing hike is that there simply aren’t nearly as many good films on demand as there are currently on DVD.

I cannot imagine studios are going to kill off the DVD anytime soon. And certainly Blu-ray Disc is the last generation of physical media out there. Anyhow I’m glad I’ve got my not very upgrade friendly 2009 Mini.

I Can Blink

C turned me on to Blink, a very high quality SIP communications package, which just happens to be GNU General Public Licensed, v3. With Android 2.2 and Google Voice I’ve been forced to use a mix-mash of modes to make cSipSimple work reliably. Part of the issue is forwarding phones. With Google Voice I am now forwarding to Gmail, Virgin Mobile, and now SIPgate One. When I turn off all cellular communcations in theory cSipSimple should be the only phone to ring, and in theory it shouldn’t use mobile anytime minutes.

I managed to get this to work on the PEAP encrypted 802.1x Wifi on campus, so in theory at home it should work fine. ICE/STUN with NAT seems to help call quality. The SIPGate iOS application also seems to work fine, though sometimes there is a bit of crackling not present on SIP>SIP calls using other clients.

A third option, which may or may not be in the works at the Googleplex [sic] is the integration of SIP directly to Google Voice. Google was likely testing this functionality as Dan York wrote in his blog, however, it appears Google pulled the plug on it publicly. It would be incredibly convenient to not have to route via the PSTN for Google Voice because as Dan mentions, the calls are already IP based, if only they could stay that way Google Voice users would have higher quality calls and an easier time of it. To test if you have any SIP functionality, plug in, where that number is your GV number.

No more Java Plug-In support OS X 10.5.8 Chrome & Firefox

I was trying to figure out what had happened after I ran a system update, and as it turns out, Java Plug-In support for both Chrome and Firefox web browsers is now deprecated in OS X 10.5.8 “Java Update 10”. Ugh. I’d been meaning to do a clean install of 10.6 for sometime now, I suppose this is just one more reason to do it, but really Apple, you couldn’t have let people know before you did this?