mirror of
https://github.com/dockur/windows.git
synced 2024-11-22 00:03:24 +01:00
feat: Support ecryptfs filesystems (#422)
This commit is contained in:
parent
ad1510b0b9
commit
44a5fa3bf4
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -74,7 +74,7 @@ jobs:
|
|||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
provenance: false
|
provenance: false
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm
|
platforms: linux/amd64,linux/arm64
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
annotations: ${{ steps.meta.outputs.annotations }}
|
annotations: ${{ steps.meta.outputs.annotations }}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM scratch
|
FROM scratch
|
||||||
COPY --from=qemux/qemu-docker:4.24 / /
|
COPY --from=qemux/qemu-docker:4.25 / /
|
||||||
|
|
||||||
ARG DEBCONF_NOWARNINGS "yes"
|
ARG DEBCONF_NOWARNINGS "yes"
|
||||||
ARG DEBIAN_FRONTEND "noninteractive"
|
ARG DEBIAN_FRONTEND "noninteractive"
|
||||||
|
@ -21,7 +21,7 @@ cd /run
|
|||||||
|
|
||||||
trap - ERR
|
trap - ERR
|
||||||
|
|
||||||
info "Booting ${APP}${BOOT_DESC} on a ${CPU} using QEMU v${VERS} with kernel $(uname -r)..."
|
info "Booting ${APP}${BOOT_DESC}..."
|
||||||
[[ "$DEBUG" == [Yy1]* ]] && echo "Arguments: $ARGS" && echo
|
[[ "$DEBUG" == [Yy1]* ]] && echo "Arguments: $ARGS" && echo
|
||||||
|
|
||||||
{ qemu-system-x86_64 ${ARGS:+ $ARGS} >"$QEMU_OUT" 2>"$QEMU_LOG"; rc=$?; } || :
|
{ qemu-system-x86_64 ${ARGS:+ $ARGS} >"$QEMU_OUT" 2>"$QEMU_LOG"; rc=$?; } || :
|
||||||
|
18
src/mido.sh
18
src/mido.sh
@ -200,7 +200,7 @@ handle_curl_error() {
|
|||||||
# https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_08_02
|
# https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_08_02
|
||||||
$((error_code <= 125)))
|
$((error_code <= 125)))
|
||||||
# Must be some other server or network error (possibly with this specific request/file)
|
# Must be some other server or network error (possibly with this specific request/file)
|
||||||
# This is when accounting for all possible errors in the curl manual assuming a correctly formed curl command and HTTP(S) request, using only the curl features we're using, and a sane build
|
# This is when accounting for all possible errors in the curl manual assuming a correctly formed curl command and an HTTP(S) request, using only the curl features we're using, and a sane build
|
||||||
echo_err "Miscellaneous server or network error!"
|
echo_err "Miscellaneous server or network error!"
|
||||||
;;
|
;;
|
||||||
126 | 127)
|
126 | 127)
|
||||||
@ -246,7 +246,7 @@ scurl_file() {
|
|||||||
handle_curl_error "$error_code"
|
handle_curl_error "$error_code"
|
||||||
error_action=$?
|
error_action=$?
|
||||||
|
|
||||||
# Clean up and make sure future resumes don't happen from bad download resume files
|
# Clean up and make sure a future resume doesn't happen from a bad download resume file
|
||||||
if [ -f "$out_file" ]; then
|
if [ -f "$out_file" ]; then
|
||||||
# If file is empty, bad HTTP code, or bad download resume file
|
# If file is empty, bad HTTP code, or bad download resume file
|
||||||
if [ ! -s "$out_file" ] || [ "$error_code" = 22 ] || [ "$error_code" = 36 ]; then
|
if [ ! -s "$out_file" ] || [ "$error_code" = 22 ] || [ "$error_code" = 36 ]; then
|
||||||
@ -374,13 +374,13 @@ consumer_download() {
|
|||||||
|
|
||||||
if ! [ "$iso_download_link_html" ]; then
|
if ! [ "$iso_download_link_html" ]; then
|
||||||
# This should only happen if there's been some change to how this API works
|
# This should only happen if there's been some change to how this API works
|
||||||
echo_err "Microsoft servers gave us an empty response to our request for an automated download. Please check the FAQ on how to boot from a local file and manually download this ISO in a web browser: $url"
|
echo_err "Microsoft servers gave us an empty response to our request for an automated download."
|
||||||
manual_verification="true"
|
manual_verification="true"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if echo "$iso_download_link_html" | grep -q "We are unable to complete your request at this time."; then
|
if echo "$iso_download_link_html" | grep -q "We are unable to complete your request at this time."; then
|
||||||
echo_err "Microsoft blocked the automated download request based on your IP address. Please check the FAQ on how to boot from a local file and manually download this ISO in a web browser here: $url"
|
echo_err "Microsoft blocked the automated download request based on your IP address."
|
||||||
manual_verification="true"
|
manual_verification="true"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -392,12 +392,12 @@ consumer_download() {
|
|||||||
|
|
||||||
if ! [ "$iso_download_link" ]; then
|
if ! [ "$iso_download_link" ]; then
|
||||||
# This should only happen if there's been some change to the download endpoint web address
|
# This should only happen if there's been some change to the download endpoint web address
|
||||||
echo_err "Microsoft servers gave us no download link to our request for an automated download. Please check the FAQ on how to boot from a local file and manually download this ISO in a web browser: $url"
|
echo_err "Microsoft servers gave us no download link to our request for an automated download."
|
||||||
manual_verification="true"
|
manual_verification="true"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo_ok "Got latest ISO download link (valid for 24 hours): $iso_download_link"
|
#echo_ok "Got latest ISO download link (valid for 24 hours): $iso_download_link"
|
||||||
|
|
||||||
# Download ISO
|
# Download ISO
|
||||||
scurl_file "$out_file" "1.3" "$iso_download_link"
|
scurl_file "$out_file" "1.3" "$iso_download_link"
|
||||||
@ -458,7 +458,7 @@ enterprise_eval_download() {
|
|||||||
# Limit untrusted size for input validation
|
# Limit untrusted size for input validation
|
||||||
iso_download_link="$(echo "$iso_download_link" | head -c 1024)"
|
iso_download_link="$(echo "$iso_download_link" | head -c 1024)"
|
||||||
|
|
||||||
echo_ok "Got latest ISO download link: $iso_download_link"
|
#echo_ok "Got latest ISO download link: $iso_download_link"
|
||||||
|
|
||||||
# Use highest TLS version for endpoints that support it
|
# Use highest TLS version for endpoints that support it
|
||||||
case "$iso_download_link" in
|
case "$iso_download_link" in
|
||||||
@ -675,7 +675,7 @@ ending_summary() {
|
|||||||
done
|
done
|
||||||
|
|
||||||
# shellcheck disable=SC2086
|
# shellcheck disable=SC2086
|
||||||
echo_err "$(word_count $media_download_failed_list) attempted download(s) failed! Please re-run Mido with these arguments to try downloading again (any partial downloads will be resumed):$media_download_failed_argument_list"
|
echo_err "Attempted download failed!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Exit codes
|
# Exit codes
|
||||||
@ -716,7 +716,7 @@ handle_exit() {
|
|||||||
|
|
||||||
if [ "$exit_code" != 0 ] || [ "$signal" ]; then
|
if [ "$exit_code" != 0 ] || [ "$signal" ]; then
|
||||||
echo "" >&2
|
echo "" >&2
|
||||||
echo_err "Mido was exited abruptly! PARTially downloaded or UNVERIFIED Windows media may exist. Please re-run this Mido command and do not use the bad media."
|
echo_err "Mido was exited abruptly!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$exit_code" != 0 ]; then
|
if [ "$exit_code" != 0 ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user