Category Archives: General

SSH Keys with FE File Explorer Pro

Following posts by Dr. Drang and Federico, I’ve been experimenting with FE File Explorer Pro. I learned a few things I thought I’d share:

The World Deserves Nothing Less and Would Not Wait

I just read The Circle, Dave Egger’s 2013 dystopian novel about a young employee of a tech company that aspires to “complete the circle”: making all information available to everyone, all the time, with the mantra “privacy is theft”. I found the technology discussion obtuse, but the themes resonated with me.

In the book, the titular company seeks to abolish privacy through the use of “SeeChange” cameras. The leadership of this company genuinely believes that consolidation of the world’s information in a single for-profit company is in the interest of humanity. The novel illustrates the absurdity of this idea through personal tragedy.

Last week, the news broke that Facebook has been paying teenagers to provide them with complete access to their phone and web activity. This could easily have taken place in the world of this novel, in which The Circle seeks to implant tracking chips in the bones of babies at birth. In a year of escalating scandals, it’s also the tipping point for me; I’m done with Facebook. I deleted my Facebook account two years ago, and I haven’t missed it for a moment. I deleted my Instagram account today. This website is now my exclusive public presence1.

The open web is the only inoculation against the tragedy that comes with the consolidation of information within companies like The Circle.


  1. I’ve been inactive on Twitter for months, except for auto-generated links to this site. 

.plexignore

I’ve been tinkering with Plex again, and I wanted to add my iTunes music library. Unfortunately, iTunes nests Movies and TV Shows inside of the general music folder, and I had already added those folders as Music and TV Shows libraries in Plex. A little digging turned up the documentation for .plexignore files.

I created a file named ~/Music/iTunes/iTunes Music/.plexignore:

# Ignore Movies
Movies/*

# Ignore TV Shows
TV Shows/*

And I then added ~/Music/iTunes/iTunes Music/ as a Music library in Plex. That seems to have done the trick; the music is now available via Plex without duplication of the movies and TV shows.

Homebridge & Retiring the WUnderground API

With the retirement of the Weather Underground API, I needed to make some changes to my homebridge configuration.

I’ve been using the homebridge-weather-station-extended module to show the outside weather, but that seems to be abandoned, and only offers support for the Weather Underground API. As an alternative, I found the homebridge-weather-plus module. homebridge-weather-plus supports the Dark Sky API, the OpenWeatherMap API, and the Yahoo weather API, in addition to the Weather Underground.

In the end, the configuration was dead simple, per the project’s readme. I added this to my config.json, replacing the XXXs with my API key, and the lat and long with appropriate values:

"platforms": [
    {
        "platform": "WeatherPlus",
        "name": "WeatherPlus",
        "service": "darksky",
        "key": "XXXXXXXXXXXXXXXX",
        "locationGeo": [lat, long],
        "language": "en",
        "units": "imperial",
        "forecast": [1,2,3,4,5,6,7]
    }
]

And with that, I have weather forecasts available to me in the home app again:

Screen capture from macOS Home app

macOS Server VPN Migration

I went to update my iMac to macOS Mojave, and I was reminded that a number of macOS Server services are no longer supported:

[…] in the fall of 2018, new installations and upgrades of macOS Server will require you to migrate most services to other software.

Apple has provided documentation for migrating from macOS Server to open source solutions, and the instructions for moving to vpnd are fairly straightforward:

  1. Turn off VPN in macOS Server (leaving your settings intact).

  2. Create the launchd file /Library/LaunchDaemons/vpn.ppp.l2tp.plist1:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
        <dict>
            <key>Disabled</key>
            <true/>
            <key>EnableTransactions</key>
            <true/>
            <key>Label</key>
            <string>vpn.ppp.l2tp</string>
            <key>KeepAlive</key>
            <true/>
            <key>Program</key>
            <string>/usr/sbin/vpnd</string>
            <key>ProgramArguments</key>
            <array>
            <string>vpnd</string>
            <string>-x</string>
            <string>-i</string>
            <string>com.apple.ppp.l2tp</string>
            </array>
            <key>EnableTransactions</key>
            <false/>
            <key>EnablePressuredExit</key>
            <false/>
        </dict>
    </plist>
    
  3. Set the file ownership to root:wheel2:

    sudo chown root:wheel /Library/LaunchDaemons/ vpn.ppp.l2tp.plist
    
  4. Load the launchd job:

    sudo launchctl load -w /Library/LaunchDaemons/ vpn.ppp.l2tp.plist
    
  5. Verify that the job is running:

    launchctl print system/vpn.ppp.l2tp
    

Once I had completed these steps, macOS Server showed the VPN as running, and my attempts to disable it via the switch would result in it turning right back on. Fortunately, this is the only service I’ve been relying on macOS Server for, since caching was moved into the OS, so my migration was this easy. Replacing some of the other macOS Server services appears to be quite a bit more complicated.


  1. It appears that version 1.2 of the migration instructions have some formatting issues; some of the quotes in the code example have been rendered as smart quotes. 

  2. The migration instructions also mistakenly try to use chmod to change the ownership. 

Hotel Vernon

I just stumbled on this series of videos Narragansett Beer compiled: an oral history of the Hotel Vernon, the Yacht Club, and the speakeasy in the cellar.

Skipping the iPhone XS

I’ve had an unopened iPhone XS on my desk since last Monday. I ordered it through the iPhone Upgrade Program, and I’m trying to decide if I’m going to keep it.

After owning the original iPhone for three years, and an iPhone 4 and iPhone5 for two years each, I switched to buying a new phone every year. I calculated that the depreciation on the iPhones 6, 6S and 7 was about $300 in the first year, and $200 in the second year1, so it was costing me an extra $100 (plus tax) in the odd years to buy a new phone instead of holding on. That worked out to less than an extra $50/year (plus tax) to own the newest phone every year, compared to holding on to a phone for two years.

$50 each year seemed like a great deal for the latest technology, but that value proposition has changed. The costs I’ll incur if I upgrade this year include:

  • Sales Tax: $84.25
  • AT&T Upgrade Fee (plus tax): $31.88
  • The last payment on my iPhone X (since it’s only been out 11 months): $49.91
  • The residual value of a two-year old iPhone X, if I were to keep it another year and own it outright. This is tough to estimate, but resellers are offering $225 - $350 for a two-year iPhone 7+ right now; let’s go with the low-end to make the medicine easier to swallow: $225.00

The total cost of $391.04 is the amount I’ll save if I wait and buy next year’s iPhone, instead of buying the iPhone XS and upgrading again next year. Spreading that premium out over two years is roughly $200/year (including tax); that’s a massive increase over the prior situation.

Part of that increase is that the iPhone Upgrade Program includes AppleCare+, which I’ve never purchased before. Part is that the iPhone X and XS are more fundamentally more expensive than previous generations. Part is the cost associated with just handing the phone back to Apple, instead of dealing with the hassle of a private sale. But I’m not sure if the cost is justified, for me, this year.

The improvements aren’t as numerous, either:

Maybe the strongest indication that I should pass on the iPhone XS is that I haven’t caved in to the temptation to open it yet.

I think I’ll be skipping this one.


  1. Assuming a private resale. 

  2. While this has been true in the past, it wasn’t true with the iPhone X. And while I’d like the flexibility, I’m not sure I’d make use of it during the next year. 

Radiohead

I caught Radiohead at TD Garden last night; they played a really great set:

  1. Daydreaming
  2. Desert Island Disk
  3. Ful Stop
  4. 2 + 2 = 5
  5. Myxomatosis
  6. All I Need
  7. Videotape
  8. No Surprises
  9. Everything in Its Right Place
  10. Bloom
  11. Separator
  12. Reckoner
  13. The National Anthem
  14. How to Disappear Completely
  15. You and Whose Army?
  16. There There
  17. Street Spirit (Fade Out)
  18. Optimistic
  19. Nude
  20. The Numbers
  21. Lotus Flower
  22. Fake Plastic Trees
  23. Idioteque
  24. Exit Music (for a Film)
  25. Karma Police