diff --git a/Dockerfile b/Dockerfile index 6069046..fd0ec7b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ FROM scratch -COPY --from=qemux/qemu-arm:3.05 / / +COPY --from=qemux/qemu-arm:3.06 / / ARG VERSION_ARG="0.00" ARG DEBCONF_NOWARNINGS="yes" diff --git a/readme.md b/readme.md index aa7d541..f0ef040 100644 --- a/readme.md +++ b/readme.md @@ -95,15 +95,15 @@ kubectl apply -f https://raw.githubusercontent.com/dockur/windows/refs/heads/mas Select from the values below: - | **Value** | **Version** | **Platform** | **Size** | - |---|---|---|---| - | `11` | Windows 11 Pro | ARM64 | 4.8 GB | - | `11l` | Windows 11 LTSC | ARM64 | 4.7 GB | - | `11e` | Windows 11 Enterprise | ARM64 | 4.8 GB | - ||||| - | `10` | Windows 10 Pro | ARM64 | 3.5 GB | - | `10l` | Windows 10 LTSC | ARM64 | 4.1 GB | - | `10e` | Windows 10 Enterprise | ARM64 | 3.4 GB | + | **Value** | **Version** | **Size** | + |---|---|---| + | `11` | Windows 11 Pro | 4.8 GB | + | `11l` | Windows 11 LTSC | 4.7 GB | + | `11e` | Windows 11 Enterprise | 4.8 GB | + |||| + | `10` | Windows 10 Pro | 3.5 GB | + | `10l` | Windows 10 LTSC | 4.1 GB | + | `10e` | Windows 10 Enterprise | 3.4 GB | > [!TIP] > To install x64 versions of Windows, use [dockur/windows](https://github.com/dockur/windows/). @@ -379,6 +379,10 @@ The example folder `./example` will be available as ` \\host.lan\Data`. - it could help to add `privileged: true` to your compose file (or `sudo` to your `docker run` command), to rule out any permission issue. +### How do I run a Linux desktop in a container? + + You can use [qemus/qemu-arm](https://github.com/qemus/qemu-arm) in that case. + ### Is this project legal? Yes, this project contains only open-source code and does not distribute any copyrighted material. Any product keys found in the code are just generic placeholders provided by Microsoft for trial purposes. So under all applicable laws, this project will be considered legal. diff --git a/src/install.sh b/src/install.sh index e184b5e..991fb7a 100644 --- a/src/install.sh +++ b/src/install.sh @@ -250,12 +250,12 @@ extractESD() { mkdir -p "$dir" size=16106127360 - size_gb=$(( (size + 1073741823)/1073741824 )) + size_gb=$(formatBytes "$size") space=$(df --output=avail -B 1 "$dir" | tail -n 1) - space_gb=$(( (space + 1073741823)/1073741824 )) + space_gb=$(formatBytes "$space") if (( size > space )); then - error "Not enough free space in $STORAGE, have $space_gb GB available but need at least $size_gb GB." && return 1 + error "Not enough free space in $STORAGE, have $space_gb available but need at least $size_gb." && return 1 fi local esdImageCount @@ -341,16 +341,16 @@ extractImage() { mkdir -p "$dir" size=$(stat -c%s "$iso") - size_gb=$(( (size + 1073741823)/1073741824 )) + size_gb=$(formatBytes "$size") space=$(df --output=avail -B 1 "$dir" | tail -n 1) - space_gb=$(( (space + 1073741823)/1073741824 )) + space_gb=$(formatBytes "$space") if ((size<100000000)); then error "Invalid ISO file: Size is smaller than 100 MB" && return 1 fi if (( size > space )); then - error "Not enough free space in $STORAGE, have $space_gb GB available but need at least $size_gb GB." && return 1 + error "Not enough free space in $STORAGE, have $space_gb available but need at least $size_gb." && return 1 fi rm -rf "$dir" @@ -953,12 +953,12 @@ buildImage() { fi size=$(du -h -b --max-depth=0 "$dir" | cut -f1) - size_gb=$(( (size + 1073741823)/1073741824 )) + size_gb=$(formatBytes "$size") space=$(df --output=avail -B 1 "$TMP" | tail -n 1) - space_gb=$(( (space + 1073741823)/1073741824 )) + space_gb=$(formatBytes "$space") if (( size > space )); then - error "Not enough free space in $STORAGE, have $space_gb GB available but need at least $size_gb GB." && return 1 + error "Not enough free space in $STORAGE, have $space_gb available but need at least $size_gb." && return 1 fi if [[ "${BOOT_MODE,,}" != "windows_legacy" ]]; then diff --git a/src/mido.sh b/src/mido.sh index df6d147..bbaa5c2 100644 --- a/src/mido.sh +++ b/src/mido.sh @@ -516,14 +516,15 @@ downloadFile() { local size="$4" local lang="$5" local desc="$6" - local rc total progress domain dots space folder + local rc total total_gb progress domain dots space folder rm -f "$iso" if [ -n "$size" ] && [[ "$size" != "0" ]]; then folder=$(dirname -- "$iso") space=$(df --output=avail -B 1 "$folder" | tail -n 1) - (( size > space )) && error "Not enough free space left to download file!" && return 1 + total_gb=$(formatBytes "$space") + (( size > space )) && error "Not enough free space to download file, only $total_gb left!" && return 1 fi # Check if running with interactive TTY or redirected to docker log @@ -553,8 +554,9 @@ downloadFile() { if (( rc == 0 )) && [ -f "$iso" ]; then total=$(stat -c%s "$iso") + total_gb=$(formatBytes "$total") if [ "$total" -lt 100000000 ]; then - error "Invalid download link: $url (is only $total bytes?). Please report this at $SUPPORT/issues." && return 1 + error "Invalid download link: $url (is only $total_gb ?). Please report this at $SUPPORT/issues." && return 1 fi verifyFile "$iso" "$size" "$total" "$sum" || return 1 html "Download finished successfully..." && return 0