How To Install Windows On Your Mac When All Else Fails

This one is more of a note for me than anything else.

Early Macs (such as our 2007 Mac Mini) have 64 bit CPUs but only support 32 bit UEFI. Things get annoying and complicated when installing dual boot.

This works great to resolve the issue.

3D Acceleration in Windows 10 on VMware Workstation Pro 12 and Ubuntu 16.04 LTS

So, playing around with Workstation 12 on Ubuntu 16.04 and I found when booting a freshly installed copy of Windows 10 Pro, I’d get an alert that 3D acceleration was not working.

I thought this was Odd as it was enabled, and I’d previously checked I had 3d support configured in Linux.

Screenshot from 2016-08-08 15-36-25

Screenshot from 2016-08-08 15-38-00

Checking the test tool for unity, I again confirmed 3D Acceleration was working:

spathi@Loki:~$ /usr/lib/nux/unity_support_test -p
OpenGL vendor string:   Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile 
OpenGL version string:  3.0 Mesa 11.2.0

Not software rendered:    yes
Not blacklisted:          yes
GLX fbconfig:             yes
GLX texture from pixmap:  yes
GL npot or rect textures: yes
GL vertex program:        yes
GL fragment program:      yes
GL vertex buffer object:  yes
GL framebuffer object:    yes
GL version is 1.4+:       yes

Unity 3D supported:       yes

The answer to this was to edit my vmware preferences file and add a string to allow Blacklisted drivers. Now, I am not sure why this is required when it can be seen above that the Intel drivers are not blacklisted, but hey, that requires some more research.

So I fired up vim and edited the preferences file in my home directory :

vim ~/.vmware/preferences

And in my case the missing flat wasn’t present at all, so I added the following at the end of the file. = "TRUE"

I restarted Workstation, low and behold I was no longer receiving errors about 3D acceleration not working.



Obtaining Windows embedded serial key for Surface Pro 3 using Linux

So after switching to Ubuntu on my Surface Pro 3 it occurred to be I would like to virtualise my Windows 10 instance in VMware workstation 12.

Unfortunately before blasting my windows partition away I didn’t grab my Windows Serial Key that is embedded in the UEFI/BIOS.

If I was installing Windows 8/10 directly on the device I’d have no need for the key, as Microsoft check the hardware layer and activate automatically. Unfortunately as this instance of Windows 10 is in a VM, the required hardware layer is not exposed.

I noted there were some windows tools available to grab the embedded serial key, but as I have no windows running on the bare metal, I searched for and found a solution using linux.

Running the following command should spit out the key. I’ve done this on Ubuntu 16.04

sudo hexdump -s 56 -e '"MSDM key: " /29 "%s\n"' /sys/firmware/acpi/tables/MSDM

It should look like:


If for some reason this command doesn’t work, you can also try this one:

sudo xxd /sys/firmware/acpi/tables/MSDM

And you will get an output as follows:

00000000: 4d53 444d 5500 0000 0309 4f45 4d43 0000  MSDMU.....OEMC..
00000010: 4f20 4520 4d20 4300 0003 0000 414d 4920  O E M C.....AMI 
00000020: 1300 0100 0100 0000 0000 0000 0100 0000  ................
00000030: 0000 0000 1d00 0000 4434 5143 4e2d 5039  ........XXXX-XX
00000040: 4647 342d 3842 524b 572d 5858 4734 582d  XXX-XXXXX-XXXXX-
00000050: 3643 4d38 52                             XXXXX

The last set of X’s will be the serial key.

Use this to activate Windows 8/10


Moving to Ubuntu – Replacement software

I’ve taken the plunge and moved from Windows on my Surface Pro 3 to Ubuntu, and while the migration wasn’t so bad it can be challenging to find software that does what you need on Linux when you are used to Windows/Mac OS X.

Here’s some replacement programs with instructions to install.

Note I have also included programs that do exists on Linux (some to my surprise)

Replacement: Keepass! this was an easy one.
Install via apt-get:

sudo apt-get install keepass2

Replacement: Steam! This is also available for Linux
Install Instructions

Replacement: Spotify! This also exists for linux
Install Instructions

VMware Workstation Pro
Replacement: VMware Workstation Pro! This also exists for Linux. You could also use Virtual Box which is free if you’d prefer.
Install Instructions


Surface Pro 3 on Ubuntu 16.04 LTS

After using Ubuntu 16.04 LTS for a few weeks on my Surface Pro 3 I’m quite impressed. Heres what I did to get it working. I’ve gone for a single boot, Ubuntu only install, however I used a dual boot method while testing.

I now have Ubuntu on the Surface Pro 3 (i7 256 GB model) working including the keyboard cover w/ trackpad, the surface pro 3 dock and the Arc SE Bluetooth mouse. The Surface Pro 3 dock is also working.

Before beginning:

  • If you have a dock keep it undocked to begin with.
  • Also, I had secure boot turned off the first time around, as I had not realised Microsoft had signed the first stage bootloader for Ubuntu. You can leave this enabled

Heres what I did:

  • Created a Ubuntu Boot disk (micro sd card) from Windows
  • Resized the surface SSD using disk management tool in Windows to free up some space
  • Shutdown, entered into the Surface UEFI and set the boot mode to USB -> SSD
  • Booted this and installed Ubuntu, let it install grub if you want dual boot.
  • Once installed, connect to the network.
  • Now add this PPA to your repository to install the surface kernel extras. I’ve also run through the standard upgrade process just to ensure everything is up to date.
sudo add-apt-repository ppa:tigerite/kernel
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install linux-surface
sudo apt-get dist-upgrade
  • If you have a dock, shutdown and dock the machine, otherwise perform a reboot
  • Power on or wait for the reboot to finish
  • You should now find the keyboard case w/ trackpad is working.
  • If you have a dock you should now have ethernet and your secondary display working.
  • To get the Bluetooth Arc SE Mouse working you will need to do the following
    • Edit /lib/udev/rules.d/50-bluetooth-hci-auto-poweron.rules and comment out the only non-commented line
    • Uncomment lines [Policy] and AutoEnable=true (originaly there is =false, change it) in /etc/bluetooth/main.conf
    • Reboot
    • Perform the pairing now. After pairing successfully I still had no cursor movement, I repaired and then turned bluetooth off and on from the menu bar which got it working.

Things to note:

  • The shortcut buttons on the keyboard case aren’t working, I believe I had this setup on the first install so I will post an update when I have resolved this

I’ll update this section as I find more issues.

References & thanks:

Create an Ubuntu Bootdisk on Windows

Tigerite PPA

Microsoft Bluetooth ARC Mouse SE fix


Please leave comments and suggestions below. I’d love to hear from others using their Surface Pro 3 with Linux and any improvements you’ve found/made.

‘Could not copy file’ error when upgrading Wordfence plugin


I routinely update my WordPress Plugins and found when updating Wordfence I received the following error:

Installing Plugin: Wordfence Security 5.7.8

Downloading install package from…

Unpacking the package…

Could not copy file. wordfence/images/wordfenceFalcon.png

I tried a second time and received the same error for a different file.


Searching WordPress support forums I was able to find a solution that worked.

I SSH’d on to my server and located the /wp-content/upgrade/ folder for my WordPress install. Inside I found a folder called wordfence.tmp

I deleted this folder completely by running sudo rm -rf /wp-content/upgrade/wordfence.tmp

Once the file was deleted I was able to perform the upgrade as normal.


WordFence Upgrade issue on WordPress Support Forums

Running 3 Monitors off an Early 2008 Mac Pro with a Radeon HD 5770


We had an Early 2008 Mac Pro and decided to finally upgrade the video card. We found an ATI Radeon HD 5770 (Mac version) for a reasonable price. We needed to drive 3 screens from the card but hit some issues.

The Radeon HD 5770 has 3 ports – one DVI port and 2 mini display ports. I was able to drive 2 of the monitors without issue using the DVI port and a Mini DisplayPort to DVI cable. Attempting to use the third port resulted in no video on the third screen.

Googling found many articles about using 3 screens for the 2009, 2010 and mid 2012 Mac Pro models, but nothing official mentioned the early 2008 Mac Pro model. Even worse there were mixed opinions on whether it was possible to drive 3 screens at all.


Luckily the solution was pretty simple in this case.

You need to ensure the type of DVI to Mini DisplayPort adapters you are using are active adapters as passive adapters (which I had) will not work for 3 screens.

You will note that in most cases the active adapters cost quite a bit more then the passive ones. In this case I can confirm I bought some cheapies off eBay and these still worked without issue, allowing the Mac Pro to drive all 3 screens at native resolutions.

Mac2008-2 Mac2008-1


eBay auction for mentioned passive adapters

Apple Mini DisplayPort adapter FAQ

Mac Pro (Early 2009, 2010, Mid 2012) – Issues with three displays and multiple DVI, HDMI connections

Mac Pro (Early 2009, 2010, Mid 2012) – Supported display configurations

Macbook Pro won’t turn on – charge light blinking orange


I came home from work and found my Early 2011 17″ MacBook Pro flat even though the charger was plugged in.

Looking closer at the charge led I found it flickering/flashing orange very quickly and the charge indicator leds on the laptop were not indicating charge.

I was unable to power on the laptop at all.

I tried another charger but this had the same result, indicating the issue was with the laptop.

After googling I found a thread on the Apple Support Communities with other people having the same issue.


As per the link below, to resolve this issue I unplugged all devices from the laptop (including power) and unscrewed the bottom case, found the battery connector and unplugged the battery. I waited 5 minutes and then plugged the battery back in and put the bottom case back on.

On testing the the charge indicator now showed an orange light, and pressing the charge led indicator button on the laptop confirmed the battery was charging.

Do not remove the battery or touch anything else on the machine, as you may void your warranty. You can use the iFixit guide below, just remember to stop after step 3, you only want to unplug the battery not remove it.


Apple Support Community thread: Won’t start up; charger blinking orange

iFixit guide: Battery replacement for 17″ Unibody MacBook Pro (should be fine for other unibody MacBook Pros)

Mountain Lion IPsec VPN randomly drops out (usually around 45 minutes)


I’ve had this issue with both Lion (MAC OS X 10.7) and Mountain Lion (MAC OS X 10.8). I decided to use the built in VPN client to connect to a CISCO VPN using IPsec, however the connection fails at around 45 minutes every time.

[Side note] – If you are looking to use Apple’s inbuilt VPN client opposed to CISCOs on Mac OS X, check out this great article on migrating across


To fix this I found the resolution on Apple’s forums here

Before proceeding remember, the usual disclaimer applied – you are doing this at your own risk, I take no responsibility if your system dies or turns into a pumpkin. I’ve used this method successfully and have had a VPN connection stay connected for over 9 hours. Also if you are not comfortable using the terminal, I wouldn’t recommended attempting this.

Also, this is a hack at best, you will need to make further changes if you have more then 1 VPN profile configured as we change the included config to be static for the VPN you are connecting to, as opposed to whatever is generated when connecting.

  1. Connect to your VPN as you usually would, this generates the racoon config file we need to use.
  2. The configuration file is generated on /var/run/racoon/ and will be a file named after the ip address you are connecting to followed by the extension .conf – for this example I’ve used the invalid address of – we need to copy this to /etc/racoon so we can modify it. From a terminal run a command such as:  sudo cp /var/run/racoon/ /etc/racoon
  3. Using the editor of your choice (such as vim or pico – I’ll use vim) from the terminal run: sudo vim /etc/racoon/racoon.conf
  4. Go to the end of the file (in Vim you can do this by pressing shift-g) and remark out the line that reads: include “/var/run/racoon/*.conf” ; To remark out a line, simply add a hash (#) to the beginning of it. The line will then read  #include “/var/run/racoon/*.conf” ;
  5. While the file is still open, under the line you just remarked out, configure a new include using the file we copied earlier. Remember to update the path to the correct config file, depending on the IP address you have in the filename. The new line will look like this: include “/etc/racoon/” ;
  6. Save the file
  7. Now we must edit the file we copied earlier, again, in your favourite text editor edit the file, remember to update the command to use the correct filename: sudo vim /etc/racoon/
  8. Once open, look for the line that says dpd_delay xx; xx will be a value, in my case this was 20. We need to change this to 0 (Zero). Update the value so the line now reads: dpd_delay 0;
  9. Next, find the line that states proposal_check xxxx; xxxx will be a word, mine was set to obey. We need to change this to claim. Update the word so the line now reads: proposal_check claim;
  10. Next we need to find all lines in the file (there will be multiple) that state lifetime time xxxx sec; xxxx is a value, mine was 3600. We need to update the value AND the time format (ie, from sec to hours). Update EVERY instance of this line so it reads: lifetime time 12 hours;
  11. Save the file
  12. Disconnect from the VPN session.
  13. Next time you reconnect racoon will use the updated config file and you should find you won’t get disconnected every 45 or so minutes.


Original Apple Support Thread wiki article guide to migrating from CISCO VPN Client to Inbuilt Mac OS X client

Apple Radar bug #12449876


If you have any feedback, or if this works for you please leave a comment. Comments keep me motivated to publish more solutions to issues I come across.

Making a bootable usb key from the ophcrack iso

A friend of mine lost the password to a netbook he hasn’t used in years, to find it for him I used a program called Ophcrack.

There are ISO files for bootable cds on their website, but as his netbook doesn’t have a cdrom drive this wasn’t much use.

I tried several programs like unetbootin but none of these would boot correctly and gave messages such as ‘missing operating system files’

In the end I found that had support for Ophcrack in their Universal USB Installer.

I downloaded the installer, ran it and selected Ophcrack for vista/windows 7. The installer then downloaded the correct iso and made a bootable copy on an inserted USB key.

Download the Universal USB Installer and give it a try.