mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2026-10-08 11:39:10 +11:00
* perf: keep UI startup responsive * test: make favicon checks runner-safe * fix: qualify favicon visibility state * test: isolate favicon visibility fixture * fix: enforce total favicon deadline * fix: address favicon review feedback * fix: recognize disabled SSH firewall rule * perf: restore favicon download throughput * docs: allow public PR review uploads * perf: restore overlapping favicon loading
49 lines
1.4 KiB
PowerShell
49 lines
1.4 KiB
PowerShell
param (
|
|
[switch]$Run
|
|
)
|
|
|
|
$OFS = "`r`n"
|
|
|
|
# Variable to sync between runspaces
|
|
$sync = [Hashtable]::Synchronized(@{})
|
|
$sync.configs = @{}
|
|
|
|
$script = (Get-Content -Path scripts\start.ps1) -replace '#{replaceme}', (Get-Date -Format 'yy.MM.dd')
|
|
$isLocalCompile = -not [string]::Equals($env:GITHUB_ACTIONS, "true", [StringComparison]::OrdinalIgnoreCase)
|
|
$script = $script -replace '#{islocalcompile}', $isLocalCompile.ToString().ToLowerInvariant()
|
|
|
|
$script += Get-ChildItem -Path functions -Recurse -File | ForEach-Object {
|
|
Get-Content -Path $_.FullName -Raw
|
|
}
|
|
|
|
Get-ChildItem config | ForEach-Object {
|
|
$obj = Get-Content -Path $_.FullName -Raw | ConvertFrom-Json
|
|
|
|
if ($_.Name -eq "applications.json") {
|
|
$fixed = [ordered]@{}
|
|
foreach ($p in $obj.PSObject.Properties) {
|
|
$fixed["WPFInstall$($p.Name)"] = $p.Value
|
|
}
|
|
$obj = [pscustomobject]$fixed
|
|
}
|
|
|
|
$json = $obj | ConvertTo-Json -Depth 10
|
|
|
|
$sync.configs[$_.BaseName] = $obj
|
|
$script += "`$sync.configs.$($_.BaseName) = @'`r`n$json`r`n'@ | ConvertFrom-Json"
|
|
}
|
|
|
|
$xaml = Get-Content -Path xaml\inputXML.xaml -Raw
|
|
$script += "`$inputXML = @'`r`n$xaml`r`n'@"
|
|
|
|
$autounattendXml = Get-Content -Path tools\autounattend.xml -Raw
|
|
$script += "`$WinUtilAutounattendXml = @'`r`n$autounattendXml`r`n'@"
|
|
|
|
$script += Get-Content -Path scripts\main.ps1 -Raw
|
|
|
|
Set-Content -Path winutil.ps1 -Value $script
|
|
|
|
if ($Run) {
|
|
.\Winutil.ps1
|
|
}
|