Compare commits

..

No commits in common. "6f84823117bd5e79b94a69854e378ba1a0bce43d" and "42a149d7b91a329fc1a0fd7073b5ff3b78e5fe73" have entirely different histories.

34 changed files with 245 additions and 130 deletions

View file

@ -2,7 +2,10 @@
"name": "Windows 10 Pro", "name": "Windows 10 Pro",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "10" "VERSION": "10",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows 10 Enterprise", "name": "Windows 10 Enterprise",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "10e" "VERSION": "10e",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows 10 LTSC", "name": "Windows 10 LTSC",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "10l" "VERSION": "10l",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows 11 Enterprise", "name": "Windows 11 Enterprise",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "11e" "VERSION": "11e",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows 11 LTSC", "name": "Windows 11 LTSC",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "11l" "VERSION": "11l",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -1,21 +0,0 @@
{
"name": "Tiny11",
"service": "windows",
"containerEnv": {
"VERSION": "tiny11"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -1,21 +0,0 @@
{
"name": "Tiny11 Core",
"service": "windows",
"containerEnv": {
"VERSION": "core11"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -1,21 +0,0 @@
{
"name": "Tiny11 Nano",
"service": "windows",
"containerEnv": {
"VERSION": "nano11"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2003", "name": "Windows Server 2003",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2003" "VERSION": "2003",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2008 R2", "name": "Windows Server 2008 R2",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2008" "VERSION": "2008",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2012 R2", "name": "Windows Server 2012 R2",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2012" "VERSION": "2012",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2016", "name": "Windows Server 2016",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2016" "VERSION": "2016",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2019", "name": "Windows Server 2019",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2019" "VERSION": "2019",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2022", "name": "Windows Server 2022",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2022" "VERSION": "2022",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows Server 2025", "name": "Windows Server 2025",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2025" "VERSION": "2025",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -1,21 +0,0 @@
{
"name": "Tiny10",
"service": "windows",
"containerEnv": {
"VERSION": "tiny10"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -2,7 +2,10 @@
"name": "Windows 2000 Professional", "name": "Windows 2000 Professional",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "2k" "VERSION": "2k",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -1,8 +1,11 @@
{ {
"name": "Windows Vista Ultimate", "name": "Windows 7 Ultimate (64-bit)",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "vu" "VERSION": "7u",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -1,8 +1,11 @@
{ {
"name": "Windows XP Professional", "name": "Windows 7 Ultimate (32-bit)",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "xp" "VERSION": "7ux86",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -2,7 +2,10 @@
"name": "Windows 8.1 Enterprise", "name": "Windows 8.1 Enterprise",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "8e" "VERSION": "8e",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -4,8 +4,7 @@ services:
container_name: windows container_name: windows
environment: environment:
VERSION: "11" VERSION: "11"
ALLOCATE: "Y" RAM_SIZE: "max"
RAM_SIZE: "half"
DISK_SIZE: "max" DISK_SIZE: "max"
CPU_CORES: "max" CPU_CORES: "max"
devices: devices:

View file

@ -0,0 +1,24 @@
{
"name": "Tiny 11 Core",
"service": "windows",
"containerEnv": {
"VERSION": "core11",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -2,7 +2,10 @@
"name": "Windows 11 Pro", "name": "Windows 11 Pro",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "11" "VERSION": "11",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -0,0 +1,24 @@
{
"name": "Tiny 11 Nano",
"service": "windows",
"containerEnv": {
"VERSION": "nano11",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -0,0 +1,24 @@
{
"name": "Tiny 10",
"service": "windows",
"containerEnv": {
"VERSION": "tiny10",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -0,0 +1,24 @@
{
"name": "Tiny 11",
"service": "windows",
"containerEnv": {
"VERSION": "tiny11",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"hostRequirements": {
"storage": "64gb"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -0,0 +1,21 @@
{
"name": "Windows Vista Ultimate (64-bit)",
"service": "windows",
"containerEnv": {
"VERSION": "vu",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -0,0 +1,21 @@
{
"name": "Windows Vista Ultimate (32-bit)",
"service": "windows",
"containerEnv": {
"VERSION": "vux86",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -1,8 +1,11 @@
{ {
"name": "Windows 7 Ultimate", "name": "Windows XP (32-bit)",
"service": "windows", "service": "windows",
"containerEnv": { "containerEnv": {
"VERSION": "7u" "VERSION": "xp",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
}, },
"forwardPorts": [8006], "forwardPorts": [8006],
"portsAttributes": { "portsAttributes": {

View file

@ -0,0 +1,21 @@
{
"name": "Windows XP (64-bit)",
"service": "windows",
"containerEnv": {
"VERSION": "xp64",
"RAM_SIZE": "max",
"DISK_SIZE": "max",
"CPU_CORES": "max"
},
"forwardPorts": [8006],
"portsAttributes": {
"8006": {
"label": "Web",
"onAutoForward": "openBrowser"
}
},
"otherPortsAttributes": {
"onAutoForward": "silent"
},
"dockerComposeFile": "../codespaces.yml"
}

View file

@ -1,5 +1,4 @@
.dockerignore .dockerignore
.devcontainer
.git .git
.github .github
.gitignore .gitignore

View file

@ -7,29 +7,19 @@ jobs:
name: shellcheck name: shellcheck
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- - uses: actions/checkout@v5
name: Checkout - name: Run ShellCheck
uses: actions/checkout@v5
-
name: Run ShellCheck
uses: ludeeus/action-shellcheck@master uses: ludeeus/action-shellcheck@master
env: env:
SHELLCHECK_OPTS: -x --source-path=src -e SC1091 -e SC2001 -e SC2002 -e SC2034 -e SC2064 -e SC2153 -e SC2317 -e SC2028 SHELLCHECK_OPTS: -x --source-path=src -e SC1091 -e SC2001 -e SC2002 -e SC2034 -e SC2064 -e SC2153 -e SC2317 -e SC2028
- - name: Validate XML
name: Lint Dockerfile uses: action-pack/valid-xml@v1
with:
path: "assets"
file-endings: ".xml"
- name: Lint Dockerfile
uses: hadolint/hadolint-action@v3.3.0 uses: hadolint/hadolint-action@v3.3.0
with: with:
dockerfile: Dockerfile dockerfile: Dockerfile
ignore: DL3006,DL3008 ignore: DL3006,DL3008
failure-threshold: warning failure-threshold: warning
-
name: Validate XML
uses: action-pack/valid-xml@v1
with:
path: "assets"
file-endings: ".xml"
-
name: Validate JSON and YML files
uses: GrantBirki/json-yaml-validate@v4
with:
yaml_exclude_regex: ".*\\kubernetes\\.yml$"

View file

@ -3,7 +3,7 @@
ARG VERSION_ARG="latest" ARG VERSION_ARG="latest"
FROM scratch AS build-amd64 FROM scratch AS build-amd64
COPY --from=qemux/qemu:7.25 / / COPY --from=qemux/qemu:7.24 / /
ARG TARGETARCH ARG TARGETARCH
ARG DEBCONF_NOWARNINGS="yes" ARG DEBCONF_NOWARNINGS="yes"
@ -27,7 +27,7 @@ RUN set -eu && \
COPY --chmod=755 ./src /run/ COPY --chmod=755 ./src /run/
COPY --chmod=755 ./assets /run/assets COPY --chmod=755 ./assets /run/assets
ADD --chmod=664 https://github.com/qemus/virtiso-whql/releases/download/v1.9.48-0/virtio-win-1.9.48.tar.xz /var/drivers.txz ADD --chmod=664 https://github.com/qemus/virtiso-whql/releases/download/v1.9.47-0/virtio-win-1.9.47.tar.xz /var/drivers.txz
FROM dockurr/windows-arm:${VERSION_ARG} AS build-arm64 FROM dockurr/windows-arm:${VERSION_ARG} AS build-arm64
FROM build-${TARGETARCH} FROM build-${TARGETARCH}

View file

@ -22,9 +22,7 @@ cd /run
. boot.sh # Configure boot . boot.sh # Configure boot
. proc.sh # Initialize processor . proc.sh # Initialize processor
. power.sh # Configure shutdown . power.sh # Configure shutdown
. memory.sh # Check available memory
. config.sh # Configure arguments . config.sh # Configure arguments
. finish.sh # Finish initialization
trap - ERR trap - ERR