-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathqcw-utils.ps1
More file actions
54 lines (45 loc) · 1.7 KB
/
Copy pathqcw-utils.ps1
File metadata and controls
54 lines (45 loc) · 1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
$target=$args[0]
if ([string]::IsNullOrEmpty($target)) { $target = "qcw-utils" }
if (Test-Path -Path $target) {
Write-Output "Target forlder '$target' already exists"
exit 1
}
$defaultBat = @"
@ECHO OFF
set QCW_DIR=%~dp0..
set PATH=%LOCALAPPDATA%\Programs\podman-desktop;%PROGRAMFILES%\qemu;%PATH%
set ELECTRON_NO_ATTACH_CONSOLE=true
cmd /k "ECHO Welcome to Podman shell"
"@
$qemuBat = @"
@ECHO OFF
set QCW_DIR=%~dp0..
set PATH=%LOCALAPPDATA%\Programs\podman-desktop;%PROGRAMFILES%\qemu;%PATH%
set CONTAINERS_MACHINE_PROVIDER=QEMU
set ELECTRON_NO_ATTACH_CONSOLE=true
cmd /k "ECHO Welcome to Podman with QEMU shell"
"@
$wslBat = @"
@ECHO OFF
set QCW_DIR=%~dp0..
set PATH=%LOCALAPPDATA%\Programs\podman-desktop;%PROGRAMFILES%\qemu;%PATH%
set CONTAINERS_MACHINE_PROVIDER=WSL
set ELECTRON_NO_ATTACH_CONSOLE=true
cmd /k "ECHO Welcome to Podman with WSL shell"
"@
$hypervBat = @"
@ECHO OFF
set QCW_DIR=%~dp0..
set PATH=%LOCALAPPDATA%\Programs\podman-desktop;%PROGRAMFILES%\qemu;%PATH%
set CONTAINERS_MACHINE_PROVIDER=HYPERV
set ELECTRON_NO_ATTACH_CONSOLE=true
cmd /k "ECHO Welcome to Podman with HYPERV shell"
"@
$shellsTarget = Join-Path $target "shells"
New-Item -Path $target -ItemType Directory | Out-Null
New-Item -Path $shellsTarget -ItemType Directory | Out-Null
New-Item -Path $shellsTarget -Name "podman-default.bat" -ItemType File -Value $defaultBat | Out-Null
New-Item -Path $shellsTarget -Name "podman-qemu.bat" -ItemType File -Value $qemuBat | Out-Null
New-Item -Path $shellsTarget -Name "podman-wsl.bat" -ItemType File -Value $wslBat | Out-Null
New-Item -Path $shellsTarget -Name "podman-hyperv.bat" -ItemType File -Value $hypervBat | Out-Null
Write-Output "'qcw-utils' to '$target' folder installation completed"