# Multilang FOD RSAT

#### To properly add RSAT to Windows 10 using ContentPacks and proper Language support, follow these steps.  Languages are selected by the System Language and the installed Language Packs

{% hint style="info" %}
**Windows 10 1909 uses the same FOD as Windows 10 1903**
{% endhint %}

## Mount Features on Demand ISO

You will need to first mount the Features on Demand ISO

## Copy Script

Adjust the following script to copy the content to the ContentPack.  Modify and repeat as necessary

```
#Path to the mounted Features on Demand ISO
$FodISO = 'G:\'

#Set the Arch and ReleaseId of the mounted FOD ISO
$Arch = 'x64'
$ReleaseId = '1903'

#ContentPack Name
$ContentPack = 'MultiLang FOD RSAT'

#Languages to support
#The first value must be $null for Language Neutral
#Second value can be * for all Languages
#Second or additional values can be the Language.  eg. en-us
$Languages = @($null,'*')

#Do not modify below this line
#Initialize OSDBuilder
OSDBuilder -Initialize

#Create the ContentPack
New-OSDBuilderContentPack -Name $ContentPack -ContentType OS

#Destination Path
$Destination = "$SetOSDBuilderPathContentPacks\$ContentPack\OSCapability\$ReleaseID $Arch RSAT"

#Process Content
$Architectures = @('x86','amd64','wow64')
if (!(Test-Path $Destination)) {New-Item $Destination -ItemType Directory -Force | Out-Null}
foreach ($Language in $Languages) {
    foreach ($Architecture in $Architectures) {
        Get-ChildItem $FodISO -Recurse -Include metadata,FoDMetadata_Client.cab,"Microsoft-Windows*FoD*$Architecture~$Language~.cab" -Exclude *LanguageFeatures*,*Holographic* | foreach {
            if (!(Test-Path "$Destination\$($_.Name)")) {
                Write-Output "$Destination\$($_.Name)"
                Copy-Item $_.FullName $Destination -Force -Recurse
            }
        }
    }
}
```

![](https://1642863114-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmIIKLDn2u7Sp5DGyF2%2F-Lu1T9JSNblqRMKpBomu%2F-Lu1UGLsyTWj8G_7t-jq%2Fimage.png?alt=media\&token=e579ff7b-51e7-46de-88ff-b0949c330b81)

## Remove Unnecessary Content

You can now safely remove all directories in the ContentPack except for OSCapability

![](https://1642863114-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmIIKLDn2u7Sp5DGyF2%2F-Lu1ATwNTTjmxK4MkNu-%2F-Lu1Q94h9FlzYa5EVVAf%2Fimage.png?alt=media\&token=bd7b3f8f-b6fd-405d-b077-c5c74a56bbbb)

In the OSCapability directory, remove the non-RSAT directories

![](https://1642863114-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmIIKLDn2u7Sp5DGyF2%2F-Lu1ATwNTTjmxK4MkNu-%2F-Lu1QPRO5JLUdzEYYeKJ%2Fimage.png?alt=media\&token=73bb7dc6-aed8-46cc-b109-21f0f5e8f086)

## New-OSBuildTask

Now simply add the ContentPack to your MultiLang OSBuild Task with the **`AddContentPacks`** parameter.  During **`New-OSBuild`**, RSAT will be enabled with the proper Language support

![](https://1642863114-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmIIKLDn2u7Sp5DGyF2%2F-Lu1ATwNTTjmxK4MkNu-%2F-Lu1RMISUPbpHQikY4vb%2Fimage.png?alt=media\&token=ce5bfc3e-5043-4e8b-a676-5df26c65e88d)
