Install Ubuntu 18 and improve ML recipe setup (#66)

* move to Ubuntu 18 
* created two ML recipes
* using update-sessionenvironmnet instead of refreshenv
* discover helper script URI rather than hardcode it
* fixing readme links to support reboot
This commit is contained in:
Yosef Durr
2018-08-28 12:51:59 -07:00
committed by GitHub
parent 0bef63c3b1
commit d13e6b2416
8 changed files with 85 additions and 41 deletions

View File

@@ -42,10 +42,11 @@ To run a recipe script, click a link in the table below from your target machine
|Click link to run |Description | |Click link to run |Description |
|---------|---------| |---------|---------|
|<a href='http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_app.ps1'>Desktop App</a> | Windows Desktop App Development (Visual Studio, Windows SDK) | |<a href='http://boxstarter.org/package/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_app.ps1'>Desktop App</a> | Windows Desktop App Development (Visual Studio, Windows SDK) |
|<a href='http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_web.ps1'>Web</a> | Web (VS Code, WSL, Multiple Browsers) | |<a href='http://boxstarter.org/package/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_web.ps1'>Web</a> | Web (VS Code, WSL, Multiple Browsers) |
|<a href='http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_web_nodejs.ps1'>Web NodeJS</a> | Web Dev with NodeJS (Web + NodeJS LTS)¹ | |<a href='http://boxstarter.org/package/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_web_nodejs.ps1'>Web NodeJS</a> | Web Dev with NodeJS (Web + NodeJS LTS)¹ |
|<a href='http://boxstarter.org/package/nr/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_ml_python.ps1'>Machine Learning</a>| Machine Learning (Python, WSL, VS Code) | |<a href='http://boxstarter.org/package/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_ml_windows.ps1'>Machine Learning Windows</a>| Machine Learning with only Windows native tools |
|<a href='http://boxstarter.org/package/url?https://raw.githubusercontent.com/Microsoft/windows-dev-box-setup-scripts/master/dev_ml_wsl.ps1'>Machine Learning Linux</a>| Machine Learning with Linux tools running on WSL |
| | Xamarin (Visual Studio, Xamarin, Android SDK) | | | Xamarin (Visual Studio, Xamarin, Android SDK) |
| | Containers (Docker, Kubernetes, etc...) | | | Containers (Docker, Kubernetes, etc...) |
| | More Coming Soon! | | | More Coming Soon! |

View File

@@ -32,7 +32,7 @@ executeScript "CommonDevTools.ps1";
# visualstudio2017enterprise # visualstudio2017enterprise
choco install visualstudio2017community -y --package-parameters "--add Microsoft.VisualStudio.Component.Git" choco install visualstudio2017community -y --package-parameters "--add Microsoft.VisualStudio.Component.Git"
RefreshEnv #refreshing env due to Git install Update-SessionEnvironment #refreshing env due to Git install
#--- UWP Workload and installing Windows Template Studio --- #--- UWP Workload and installing Windows Template Studio ---
choco install -y visualstudio2017-workload-azure choco install -y visualstudio2017-workload-azure

View File

@@ -1,29 +1,28 @@
# Description: Boxstarter Script # Description: Boxstarter Script
# Author: Microsoft # Author: Microsoft
# Common dev settings for machine learning # Common dev settings for machine learning using only Windows native tools
Disable-UAC Disable-UAC
# see if we can't get calling URL somehow, that would eliminate this need # see if we can't get calling URL somehow, that would eliminate this need
# should move to a config file # should move to a config file
$user = "Microsoft"; $user = "Microsoft";
$baseBranch = "master"; $baseBranch = "MLSamples";
$finalBaseHelperUri = "https://raw.githubusercontent.com/$user/windows-dev-box-setup-scripts/$baseBranch/scripts"; $finalBaseHelperUri = "https://raw.githubusercontent.com/$user/windows-dev-box-setup-scripts/$baseBranch/scripts";
function executeScript { function executeScript {
Param ([string]$script) Param ([string]$script)
write-host "executing $finalBaseHelperUri/$script ..." write-host "executing $finalBaseHelperUri/$script ..."
iex ((new-object net.webclient).DownloadString("$finalBaseHelperUri/$script")) iex ((new-object net.webclient).DownloadString("$finalBaseHelperUri/$script"))
} }
#--- Setting up Windows --- #--- Setting up Windows ---
executeScript "SystemConfiguration.ps1"; executeScript "SystemConfiguration.ps1";
executeScript "FileExplorerSettings.ps1"; executeScript "FileExplorerSettings.ps1";
executeScript "RemoveDefaultApps.ps1"; executeScript "RemoveDefaultApps.ps1";
executeScript "GetMLIDEAndTooling.ps1"; executeScript "GetMLIDEAndTooling.ps1";
executeScript "VirtualizationTools.ps1"; executeScript "PythonMLTools.ps1";
executeScript "PythonMLTools.ps1";
Enable-UAC
Enable-UAC Enable-MicrosoftUpdate
Enable-MicrosoftUpdate Install-WindowsUpdate -acceptEula
Install-WindowsUpdate -acceptEula

40
dev_ml_wsl.ps1 Normal file
View File

@@ -0,0 +1,40 @@
# Description: Boxstarter Script
# Author: Microsoft
# Common dev settings for machine learning using Windows and Linux native tools
Disable-UAC
# Get the base URI path from the ScriptToCall value
$bstrappackage = "-bootstrapPackage"
$Boxstarter | Foreach-Object { write-host "The key name is $_.Key and value is $_.Value" }
$helperUri = $Boxstarter['ScriptToCall']
write-host "ScriptToCall is $helperUri"
$strpos = $helperUri.IndexOf($bstrappackage)
$helperUri = $helperUri.Substring($strpos + $bstrappackage.Length)
$helperUri = $helperUri.TrimStart("'", " ")
$helperUri = $helperUri.TrimEnd("'", " ")
$helperUri = $helperUri.Substring(0, $helperUri.LastIndexOf("/"))
$helperUri += "/scripts"
write-host "helper script base URI is $helperUri"
function executeScript {
Param ([string]$script)
write-host "executing $helperUri/$script ..."
iex ((new-object net.webclient).DownloadString("$helperUri/$script"))
}
#--- Setting up Windows ---
executeScript "SystemConfiguration.ps1";
executeScript "FileExplorerSettings.ps1";
executeScript "RemoveDefaultApps.ps1";
executeScript "CommonDevTools.ps1";
executeScript "VirtualizationTools.ps1";
executeScript "GetMLPythonSamplesOffGithub.ps1";
# TODO: now install additional ML tools inside the WSL distro once default user w/blank password is working
Enable-UAC
Enable-MicrosoftUpdate
Install-WindowsUpdate -acceptEula

View File

@@ -0,0 +1,6 @@
write-host "Downloading Python ML samples to your desktop ..."
Update-SessionEnvironment
cd $env:USERPROFILE\desktop
git clone https://github.com/Microsoft/Dev-Advocacy-Samples/tree/master/python-mlclassification

View File

@@ -1,4 +1,4 @@
RefreshEnv Update-SessionEnvironment
cd $env:USERPROFILE\desktop cd $env:USERPROFILE\desktop
mkdir UwpSamples mkdir UwpSamples
cd UwpSamples cd UwpSamples

View File

@@ -1,5 +1,5 @@
#--- Uninstall unecessary applications that come with Windows out of the box --- #--- Uninstall unecessary applications that come with Windows out of the box ---
Write-Host "Uninstall unecessary applications that come with Windows out of the box" -ForegroundColor "Yellow" Write-Host "Uninstall some applications that come with Windows out of the box" -ForegroundColor "Yellow"
#Referenced to build script #Referenced to build script
# https://docs.microsoft.com/en-us/windows/application-management/remove-provisioned-apps-during-update # https://docs.microsoft.com/en-us/windows/application-management/remove-provisioned-apps-during-update
@@ -32,7 +32,6 @@ $applicationList = @(
"Microsoft.MicrosoftOfficeHub" "Microsoft.MicrosoftOfficeHub"
"Microsoft.OneConnect" "Microsoft.OneConnect"
"Microsoft.WindowsPhone" "Microsoft.WindowsPhone"
"Microsoft.SkypeApp"
"Microsoft.WindowsSoundRecorder" "Microsoft.WindowsSoundRecorder"
"*Solitaire*" "*Solitaire*"
"Microsoft.MicrosoftStickyNotes" "Microsoft.MicrosoftStickyNotes"
@@ -44,13 +43,10 @@ $applicationList = @(
"Microsoft.NetworkSpeedTest" "Microsoft.NetworkSpeedTest"
"Microsoft.FreshPaint" "Microsoft.FreshPaint"
"Microsoft.Print3D" "Microsoft.Print3D"
#Non-Microsoft
"*Autodesk*" "*Autodesk*"
"*BubbleWitch*" "*BubbleWitch*"
"king.com.CandyCrush*" "king.com.CandyCrush*"
"*Dell*" "*Dell*"
"*Dropbox*"
"*Facebook*" "*Facebook*"
"*Keeper*" "*Keeper*"
"*Netflix*" "*Netflix*"

View File

@@ -8,9 +8,11 @@ choco install -y vscode-docker
#--- Ubuntu --- #--- Ubuntu ---
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile ~/Ubuntu.appx -UseBasicParsing Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile ~/Ubuntu.appx -UseBasicParsing
Add-AppxPackage -Path ~/Ubuntu.appx Add-AppxPackage -Path ~/Ubuntu.appx
# TODO reboot here
<# <#
#--- SLES --- #--- SLES ---
# Install SLES Store app # Install SLES Store app