Skip to content

Commit 5f38b3c

Browse files
leaanthonyclaude
andcommitted
feat: Enhance wails doctor with WebKit fallback support
Improves the doctor command to better detect WebKit dependencies across different Linux distributions by adding fallback package support. ## Changes Made: ### Enhanced Package Manager Detection: - **APT (Debian/Ubuntu)**: Added WebKit 4.1 → 4.0 fallback support - **DNF (Fedora/RHEL)**: Added webkit2gtk4.0-devel fallback for older systems - **Zypper (SUSE)**: Added webkit2gtk4_1-devel for modern SUSE distributions - **Emerge (Gentoo)**: Added support for both webkit-gtk:6 and webkit-gtk:4 slots - **Pacman (Arch)**: Added fallback from webkit2gtk-4.1 to webkit2gtk ### Improved Developer Experience: - Doctor command now tries newer WebKit versions first, falls back gracefully - Provides more accurate dependency detection across distributions - Better guidance for developers on different Linux systems ### How It Works: - Each package manager lists multiple WebKit package options in order of preference - The dependency system tries packages in order until it finds one that's available - Developers get appropriate installation commands for their specific distribution This complements the nfpm overrides by ensuring developers can properly set up their development environment regardless of distribution. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent a1ecb1a commit 5f38b3c

5 files changed

Lines changed: 5 additions & 1 deletion

File tree

v3/internal/doctor/packagemanager/apt.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ func (a *Apt) Packages() Packagemap {
3030
},
3131
"webkit2gtk": []*Package{
3232
{Name: "libwebkit2gtk-4.1-dev", SystemPackage: true, Library: true},
33+
{Name: "libwebkit2gtk-4.0-dev", SystemPackage: true, Library: true},
3334
},
3435
"gcc": []*Package{
3536
{Name: "build-essential", SystemPackage: true},

v3/internal/doctor/packagemanager/dnf.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ func (y *Dnf) Packages() Packagemap {
3131
"webkit2gtk": []*Package{
3232
{Name: "webkit2gtk4.1-devel", SystemPackage: true, Library: true},
3333
{Name: "webkit2gtk3-devel", SystemPackage: true, Library: true},
34-
// {Name: "webkitgtk3-devel", SystemPackage: true, Library: true},
34+
{Name: "webkit2gtk4.0-devel", SystemPackage: true, Library: true},
3535
},
3636
"gcc": []*Package{
3737
{Name: "gcc-c++", SystemPackage: true},

v3/internal/doctor/packagemanager/emerge.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func (e *Emerge) Packages() Packagemap {
3131
},
3232
"webkit2gtk": []*Package{
3333
{Name: "net-libs/webkit-gtk:6", SystemPackage: true, Library: true},
34+
{Name: "net-libs/webkit-gtk:4", SystemPackage: true, Library: true},
3435
},
3536
"gcc": []*Package{
3637
{Name: "sys-devel/gcc", SystemPackage: true},

v3/internal/doctor/packagemanager/pacman.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func (p *Pacman) Packages() Packagemap {
3131
},
3232
"webkit2gtk": []*Package{
3333
{Name: "webkit2gtk-4.1", SystemPackage: true, Library: true},
34+
{Name: "webkit2gtk", SystemPackage: true, Library: true},
3435
},
3536
"gcc": []*Package{
3637
{Name: "gcc", SystemPackage: true},

v3/internal/doctor/packagemanager/zypper.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func (z *Zypper) Packages() Packagemap {
3131
{Name: "gtk3-devel", SystemPackage: true, Library: true},
3232
},
3333
"webkit2gtk": []*Package{
34+
{Name: "webkit2gtk4_1-devel", SystemPackage: true, Library: true},
3435
{Name: "webkit2gtk3-soup2-devel", SystemPackage: true, Library: true},
3536
{Name: "webkit2gtk3-devel", SystemPackage: true, Library: true},
3637
},

0 commit comments

Comments
 (0)