This page shows the source for this entry, with WebCore formatting language tags and attributes highlighted.

Title

How Encodo sets up new workstations

Description

<img attachment="windows-8-logo.png" align="right-column" title="Windows 8.1"><img attachment="ubuntu-logo.png" align="right-column" title="Ubuntu"><img attachment="339px-clonezilla.svg.png" align="right" title="Clonezilla"><img attachment="811025.png" align="right-column" title="Chocolatey"><img attachment="virtualbox_logo.png" align="right" title="VirtualBox">At <a href="http://encodo.com">Encodo</a>, we've recently set up a few new workstations with Windows 8.1 and wanted to share the process we use, in case it might come in handy for others. Windows can take a long time to install, as can Microsoft Office and, most especially, Visual Studio with all of its service packs. If we installed everything manually every time we needed a new machine, we'd lose a day each time. To solve this problem, we decided to define the <i>Encodo Windows Base Image</i>, which includes all of the standard software that everyone should have installed. Using this image saves a lot of time when you need to either install a new workstation or you'd like to start with a fresh installation if your current one has gotten a bit crufty. Encodo doesn't have a lot of workstations, so we don't really need anything too enterprise-y, but we do want something that works reliably and quickly. After a lot of trial and error, we've come up with the following scheme. <ul> Maintain a Windows 8.1 image in a VMDK file Use VirtualBox to run the image Use Chocolatey for (almost) all software installation Use Ubuntu Live on a USB stick (from which to boot) Use Clonezilla to copy the image to the target drive </ul> <h>Installed Software</h> The standard loadout for developers comprises the following applications. These are updated by Windows Update. <ul> Windows 8.1 Enterprise Excel Powerpoint Word Visio German Office Proofing Tools Visual Studio 2013 </ul> These applications must be updated manually. <ul> ReSharper Ultimate Timesnapper </ul> The rest of the software is maintained with Chocolatey. <ul> beyondcompare (file differ) conemu (PowerShell enhancement) fiddler4 (HTTP traffic analyzer) firefox flashplayerplugin git (source control) googlechrome greenshot (screenshot tool) jitsi (VOIP/SIP) jre8 (Java) keepass (Password manager) nodejs pidgin (XMPP chat) poshgit (Powershell/Git integration) putty (SSH) smartgit (GIT GUI) stylecop (VS/R# extension) sublimetext3 (text editor) sumatrapdf (PDF viewer) truecrypt (Drive encryption) vlc (video/audio player/converter) winscp (SSH file-copy tool) wireshark (TCP traffic analyzer) </ul> <h>Maintaining the Image</h> This part has gotten quite simple. <ol> Load the VM with the Windows 8.1 image Apply Windows Updates Update ReSharper, if necessary Run <c>choco upgrade all</c> to update all Chocolatey packages Shut down the VM cleanly </ol> <h>Writing the image to a new SSD</h> The instructions we maintain internally are more detailed, but the general gist is to do the following, <ol> Install the SSD in the target machine Plug in the Ubuntu Live USB stick Plug in the USB drive that has the Windows image and Clonezilla on it Boot to the Ubuntu desktop Make sure you have network access Install VirtualBox in Ubuntu from the App Center Create a VMDK file for the target SSD Start VirtualBox and create a new VM with the Windows image and SSD VMDK as drives and Clonezilla configured as a CD Start the VM and boot to Clonezilla Follow instructions, choose options and then wait 40 minutes to clone data Power off Clonezilla Shut down Ubuntu Live Unplug the USB drive and stick Boot your newly minted Windows 8.1 from the SSD Install Lenovo System Update (if necessary) and update drivers (if necessary) Add the machine to the Windows domain Remote-install Windows/Office licenses and activate Windows Remote-install Avira antivirus Grant administrator rights to the owner of the laptop Use <c>sysprep /generalize</c> to reset Windows to an OOB (Out-of-box) experience for the new owner </ol> <h>Conclusion</h> We're pretty happy with this approach and the loadout but welcome any feedback or suggestions to improve them. We've set up two notebooks in the last three weeks, but that's definitely a high-water mark for us. We expect to use this process one more time this year (in August, when a new hire arrives), but it's nice to know that we now have a predictable process.