mirror of
https://github.com/wailsapp/wails.git
synced 2026-03-15 15:15:51 +01:00
feat(setup): add imageBuilt status to Docker dependency check
Add imageBuilt field to DependencyStatus struct to track whether the wails-cross Docker image exists. This allows the OOBE flow to properly detect when Docker is installed but the cross-compilation image hasn't been built yet, and prompt users to set up cross-platform builds. Also moves the Docker build progress indicator to the center of the footer for better visual placement. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
951930bd61
commit
ee6530e48b
12 changed files with 1037 additions and 1110 deletions
48
v3/internal/setupwizard/frontend/dist/assets/index-B3e89ulo.js
vendored
Normal file
48
v3/internal/setupwizard/frontend/dist/assets/index-B3e89ulo.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
v3/internal/setupwizard/frontend/dist/assets/index-uKyTD00T.css
vendored
Normal file
1
v3/internal/setupwizard/frontend/dist/assets/index-uKyTD00T.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -7,8 +7,8 @@
|
|||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
|
||||
<script type="module" crossorigin src="/assets/index-CZ5wFxc6.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-Bmci9vCI.css">
|
||||
<script type="module" crossorigin src="/assets/index-B3e89ulo.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-uKyTD00T.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -134,9 +134,9 @@ html, body, #root {
|
|||
animation: scrollBackground 60s linear infinite;
|
||||
}
|
||||
|
||||
/* Reduced motion support */
|
||||
/* Reduced motion support - but preserve loading spinners */
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
*, *::before, *::after {
|
||||
*:not(.animate-spin):not(.spinner), *:not(.animate-spin):not(.spinner)::before, *:not(.animate-spin):not(.spinner)::after {
|
||||
animation-duration: 0.01ms !important;
|
||||
animation-iteration-count: 1 !important;
|
||||
transition-duration: 0.01ms !important;
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ export interface DependencyStatus {
|
|||
message?: string;
|
||||
installCommand?: string;
|
||||
helpUrl?: string;
|
||||
imageBuilt?: boolean; // For Docker: whether wails-cross image exists
|
||||
}
|
||||
|
||||
export interface DockerStatus {
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ type DependencyStatus struct {
|
|||
Message string `json:"message,omitempty"`
|
||||
InstallCommand string `json:"installCommand,omitempty"`
|
||||
HelpURL string `json:"helpUrl,omitempty"`
|
||||
ImageBuilt bool `json:"imageBuilt"` // For Docker: whether wails-cross image exists
|
||||
}
|
||||
|
||||
// DockerStatus represents Docker installation and image status
|
||||
|
|
|
|||
|
|
@ -120,14 +120,17 @@ func checkDocker() DependencyStatus {
|
|||
}
|
||||
|
||||
// Check for wails-cross image
|
||||
// docker image inspect returns "[]" (empty JSON array) on stdout when image doesn't exist
|
||||
imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross")
|
||||
if imageCheck == "" || strings.Contains(imageCheck, "Error") {
|
||||
if imageCheck == "" || imageCheck == "[]" || strings.Contains(imageCheck, "Error") {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = false
|
||||
dep.Message = "wails-cross image not built"
|
||||
} else {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = true
|
||||
dep.Message = "Cross-compilation ready"
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -124,14 +124,17 @@ func checkDocker() DependencyStatus {
|
|||
}
|
||||
|
||||
// Check for wails-cross image
|
||||
// docker image inspect returns "[]" (empty JSON array) on stdout when image doesn't exist
|
||||
imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross")
|
||||
if imageCheck == "" || strings.Contains(imageCheck, "Error") {
|
||||
if imageCheck == "" || imageCheck == "[]" || strings.Contains(imageCheck, "Error") {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = false
|
||||
dep.Message = "Run 'wails3 task setup:docker' to build cross-compilation image"
|
||||
} else {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = true
|
||||
dep.Message = "Cross-compilation ready"
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -127,14 +127,17 @@ func checkDocker() DependencyStatus {
|
|||
}
|
||||
|
||||
// Check for wails-cross image
|
||||
// docker image inspect returns "[]" (empty JSON array) on stdout when image doesn't exist
|
||||
imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross")
|
||||
if imageCheck == "" || strings.Contains(imageCheck, "Error") {
|
||||
if imageCheck == "" || imageCheck == "[]" || strings.Contains(imageCheck, "Error") {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = false
|
||||
dep.Message = "wails-cross image not built"
|
||||
} else {
|
||||
dep.Installed = true
|
||||
dep.Status = "installed"
|
||||
dep.ImageBuilt = true
|
||||
dep.Message = "Cross-compilation ready"
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue