Skip to content

Instantly share code, notes, and snippets.

@akrabat
Last active July 3, 2025 07:05
Show Gist options
  • Save akrabat/a4bf3e60ea9c3a39a2c162afcf154d24 to your computer and use it in GitHub Desktop.
Save akrabat/a4bf3e60ea9c3a39a2c162afcf154d24 to your computer and use it in GitHub Desktop.

Revisions

  1. akrabat revised this gist Nov 14, 2019. 1 changed file with 0 additions and 0 deletions.
    Binary file added re-run.ps
    Binary file not shown.
  2. akrabat revised this gist Nov 14, 2019. 2 changed files with 0 additions and 42 deletions.
    40 changes: 0 additions & 40 deletions Vagrantfile
    Original file line number Diff line number Diff line change
    @@ -1,27 +1,3 @@

    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    # -*- mode: ruby -*-
    # vi: set ft=ruby :

    @@ -45,22 +21,6 @@ Vagrant.configure("2") do |config|
    vb.memory = "2048"
    vb.cpus = 2
    end


    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    config.vm.provision "shell", privileged: "true", inline: <<-'POWERSHELL'
    Set-TimeZone "Coordinated Universal Time"
    2 changes: 0 additions & 2 deletions setup.ps1
    Original file line number Diff line number Diff line change
    @@ -11,8 +11,6 @@
    # Fix Windows Explorer
    Set-WindowsExplorerOptions -EnableShowHiddenFilesFoldersDrives -EnableShowProtectedOSFiles -EnableShowFileExtensions -EnableShowFullPathInTitleBar

    Install-WindowsUpdate -AcceptEula

    # Useful apps
    choco install -y googlechrome
    choco install -y firefox
  3. akrabat created this gist Nov 14, 2019.
    77 changes: 77 additions & 0 deletions Vagrantfile
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,77 @@

    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    # -*- mode: ruby -*-
    # vi: set ft=ruby :

    # Base box: https://github.com/akrabat/packer-templates

    Vagrant.configure("2") do |config|

    config.vm.box = "19ft/windows2016"
    config.vm.guest = :windows
    config.vm.boot_timeout = 600

    config.vm.hostname = "WinDev"
    config.vm.network "private_network", ip: "192.168.99.201"

    config.vm.communicator = "winrm"

    config.vm.provider "VirtualBox" do |vb|
    # Display the VirtualBox GUI when booting the machine
    vb.gui = true
    # Customize the amount of memory on the VM:
    vb.memory = "2048"
    vb.cpus = 2
    end


    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    config.vm.provision "shell", privileged: "true", inline: <<-'POWERSHELL'
    Set-TimeZone "Coordinated Universal Time"
    # Install Boxstarter
    . { iwr -useb https://boxstarter.org/bootstrapper.ps1 } | iex; Get-Boxstarter -Force
    # Copy setup.ps1 to the Temp directory and then run boxstarter with our setup.ps1 script
    $env:PSModulePath = "$([System.Environment]::GetEnvironmentVariable('PSModulePath', 'User'));$([System.Environment]::GetEnvironmentVariable('PSModulePath', 'Machine'))"
    cp C:\vagrant\setup.ps1 $env:TEMP
    Import-Module Boxstarter.Chocolatey
    $credential = New-Object System.Management.Automation.PSCredential("vagrant", (ConvertTo-SecureString "vagrant" -AsPlainText -Force))
    Install-BoxstarterPackage $env:TEMP\setup.ps1 -Credential $credential
    POWERSHELL
    end
    55 changes: 55 additions & 0 deletions setup.ps1
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,55 @@
    # Boxstarter setup script

    # Notes:
    # - This file has to be idempotent. it will be run several times if the
    # computer needs to be restarted. When that happens, Boxstarter schedules
    # this script to run again with an auto-logon. Fortunately choco install
    # handles trying to install the same package more than once.
    # - Pass -y to choco install to avoid interactive prompts


    # Fix Windows Explorer
    Set-WindowsExplorerOptions -EnableShowHiddenFilesFoldersDrives -EnableShowProtectedOSFiles -EnableShowFileExtensions -EnableShowFullPathInTitleBar

    Install-WindowsUpdate -AcceptEula

    # Useful apps
    choco install -y googlechrome
    choco install -y firefox
    choco install -y 7zip
    choco install -y notepadplusplus
    choco install git -y -params '"/GitAndUnixToolsOnPath /NoAutoCrlf"'

    Install-ChocolateyPinnedTaskBarItem "${env:ProgramFiles(x86)}\Google\Chrome\Application\chrome.exe"
    Install-ChocolateyPinnedTaskBarItem "${env:ProgramFiles(x86)}\Mozilla Firefox\firefox.exe"

    # SQL Server
    choco install -y sql-server-2017 --params='/SAPWD="Indigo12!" /SECURITYMODE=sql'
    choco install -y sql-server-management-studio

    # IIS
    choco install -y IIS-WebServerRole -source windowsfeatures
    choco install -y IIS-WebServer -source windowsfeatures
    choco install -y IIS-CommonHttpFeatures -source windowsfeatures
    choco install -y IIS-StaticContent -source windowsfeatures
    choco install -y IIS-DefaultDocument -source windowsfeatures
    choco install -y IIS-DirectoryBrowsing -source windowsfeatures
    choco install -y IIS-HttpErrors -source windowsfeatures
    choco install -y IIS-ApplicationDevelopment -source windowsfeatures
    choco install -y IIS-CGI -source windowsfeatures
    choco install -y IIS-HealthAndDiagnostics -source windowsfeatures
    choco install -y IIS-HttpLogging -source windowsfeatures
    choco install -y IIS-LoggingLibraries -source windowsfeatures
    choco install -y IIS-RequestMonitor -source windowsfeatures
    choco install -y IIS-Security -source windowsfeatures
    choco install -y IIS-RequestFiltering -source windowsfeatures
    choco install -y IIS-HttpCompressionStatic -source windowsfeatures
    choco install -y IIS-WebServerManagementTools -source windowsfeatures
    choco install -y IIS-ManagementConsole -source windowsfeatures
    choco install -y IIS-ManagementScriptingTools -source windowsfeatures
    choco install -y WAS-WindowsActivationService -source windowsfeatures
    choco install -y WAS-ProcessModel -source windowsfeatures
    choco install -y urlrewrite

    # PHP
    choco install -y php --package-parameters="/InstallDir:C:\PHP"