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 |
|---------|---------|
|<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/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/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/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_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_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_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_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) |
| | Containers (Docker, Kubernetes, etc...) |
| | More Coming Soon! |

View File

@@ -32,7 +32,7 @@ executeScript "CommonDevTools.ps1";
# visualstudio2017enterprise
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 ---
choco install -y visualstudio2017-workload-azure

View File

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

View File

@@ -1,5 +1,5 @@
#--- 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
# https://docs.microsoft.com/en-us/windows/application-management/remove-provisioned-apps-during-update
@@ -32,7 +32,6 @@ $applicationList = @(
"Microsoft.MicrosoftOfficeHub"
"Microsoft.OneConnect"
"Microsoft.WindowsPhone"
"Microsoft.SkypeApp"
"Microsoft.WindowsSoundRecorder"
"*Solitaire*"
"Microsoft.MicrosoftStickyNotes"
@@ -44,13 +43,10 @@ $applicationList = @(
"Microsoft.NetworkSpeedTest"
"Microsoft.FreshPaint"
"Microsoft.Print3D"
#Non-Microsoft
"*Autodesk*"
"*BubbleWitch*"
"king.com.CandyCrush*"
"*Dell*"
"*Dropbox*"
"*Facebook*"
"*Keeper*"
"*Netflix*"

View File

@@ -8,9 +8,11 @@ choco install -y vscode-docker
#--- 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
# TODO reboot here
<#
#--- SLES ---
# Install SLES Store app