Things I've Figured Out

Installing Cyanogenmod 13 NIGHTLY (CM13) on a Nexus 5X

I had some issues getting Cyanogenmod running/booting on my Nexus 5X. After reading through a bunch of forum posts and some trial and error, I got it running.

Here are the steps:

  1. Download a factory image (version didn’t matter for me)
  2. Extract the tar and
  3. Rename bootloader-bullhead-XXXXXX.img to bootloader.img and radio-bullhead-XXXXXX.img to radio.img and move them in with the rest of the .img files
  4. Reboot Nexus 5X into the bootloader (power + vol down)
  5. Run the following commands in terminal in the directory where your extracted files are:
    fastboot flash bootloader bootloader.img;
    fastboot reboot-bootloader;
    echo "Waiting 5 seconds for bootloader to reboot";
    sleep 5;
    fastboot flash radio radio.img;
    fastboot reboot-bootloader;
    echo "Waiting 5 seconds for bootloader to reboot";
    sleep 5;
    fastboot flash system system.img;
    fastboot flash vendor vendor.img;
    fastboot flash userdata userdata.img;  # See comments 
    fastboot flash boot boot.img;
    fastboot erase cache;
    fastboot flash cache cache.img;
  6. Install TWRP (fastboot flash recovery /path/to/twrp.img)
  7. At the bootloader, go into recovery mode
  8. Once in TWRP, click Advanced, then ADB Sideload, Swipe to start Sideload
  9. In terminal, run the command: adb sideload /path/to/
  10. If you want GApps, sideload that too.
  11. After successful install, reboot!

Getting Media Keys Working for Your CODE Keyboard for Spotify on OS X

CODE Keyboard Media Keys I love my CODE Keyboard, but it was driving me crazy that I couldn’t skip tracks in Spotify but my Macbook media keys could. After contacting support and doing quite a bit of research, I finally found a solution that will work for both CODE Keyboards and DAS Keyboards on OS X. (Tested on Yosemite with a CODE TKL Keyboard)


(Not hard, just very verbose steps)

  1. Download and install Karabiner
  2. Open Karabiner and click the Misc & Uninstall tab
  3. Click Open private.xml. This will open a Finder window
  4. Edit private.xml with your favorite text editor
  5. Copy the XML from here and replace all of the XML in your open copy of private.xml
  6. Save and close private.xml
  7. Open Karabiner again, click the Change Key tab
  8. Click Reload XML
  9. Das Keyboard 4 – Media Keys should now be at the top, check that checkbox
  10. Skip songs in Spotify!

Auto Boot Android When Plugged Into Power

LG Nexus Devices:
Auto boot on charge:
fastboot oem off-mode-charge 0
Restore default (charge screen while off and charging)
fastboot oem off-mode-charge 1

Rooted Samsung Devices:

  1. Copy existing /system/bin/playlpm to /system/bin/playlpm.backup
  2. Replace /system/bin/playlpm with the following:
  3. chmod 0755/system/bin/playlpm
  4. chown /system/bin/playlpm


GitHub Widget for WordPress

I was working on the Code for Boulder website and wanted to showcase some of the projects that we’ve been working on. I found this jQuery plugin by New Media Campaigns that did exactly what I wanted. Well, except be a WordPress plugin. But that’s my contribution! You can see below what it creates:

After installing the plugin, you can add the following shortcode:

[github_widget repo="danmandle/Wordpress-GitHub-jQuery-Widget"]

You should swap out the repo value with the path to the repo you’d like to share!

OS X VPN – Accessing Other IP Blocks

Backstory: I bought a Synology DiskStation DS412+ and set up a PPTP VPN server on  it. The problem was that the DiskStation had a separate IP range (192.168.14.XX) for VPN clients than the network DNS server that it was connected to. So my options at the outset were either to not be able to access anything on my remote network (192.168.4.XX) or route all of my traffic through the VPN which would be slow and unnecessary.

After doing a bunch of digging, I found a solution, and here’s how to do it:

In terminal:

sudo nano /etc/ppp/ip-up

Body of the file:
(NOTE: Change to the IP range of your network)

/sbin/route add -interface ppp0

Back in terminal:

sudo chmod 0755 /etc/ppp/ip-up

APN & MMS Settings for Aio Wireless

It’s almost impossible to find the APN (Access Point Network) settings for Aio Wireless so I thought I’d post them here for people to find them easier.

After contacting customer support, here is what they gave me:

  • Name: Internet
  • APN: ndo
  • Proxy: Not Set
  • Port: Not Set
  • Username: Not Set
  • Password: Not Set
  • Server: Not Set
  • MMSC:
  • MMS Proxy:
  • MMS Port: 80
  • MCC: 310
  • MNC: 150
  • Authentication type: Not Set
  • APN type: default, mms, fota, hipri, supl

Get Twistori Working on Mountain Lion, Mavericks, and Yosemite

twistoriI love Twistori. If you’re not familiar with it, Twistori is a website that has keywords (love, hate, think, believe, feel, wish) and pulls tweets with those keywords and beautifully scrolls them on the screen. They had a screensaver that did this too, but support stopped with Snow Leopard, but I found a workaround: WebSaver. It does just what it sounds like: load a website when your screensaver is activated. The added benefit for people with dual (or more) monitors, is that it loads Twistori per monitor, which typically allows for a different keyword per screen!

So how do you get this awesomeness on your computer?

  1. Download WebSaver
  2. Open up the DMG and double-click WebSaver.saver
  3. Install
  4. Select WebSaver from your list of available screensavers
  5. Click “Screen Saver Options…”
  6. Put in the URL field and click OK.
  7. Test out your new Twistori screensaver!

Provisioning Script for New Macs

Among other things, I’m also the IT guy in the office. When we get a new hire, it’s my job to get the machine up and ready. I’ve made a pretty simple bash script that does most of the tedious things for me. I throw that on a flash drive and put applications that I want installed in the apps folder. The way I have it set up, I have an admin account that I set up after first boot/reinstall then I create an admin account for the new computer user. Below are two segments of code: the first is the script that does all the magic, the second is a plist for the dock.
Continue reading

« Older posts

Copyright © 2023 Things I've Figured Out

Theme by Anders NorenUp ↑