wine_integration

package
v0.5.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 18, 2026 License: AGPL-3.0 Imports: 14 Imported by: 6

Documentation

Index

Constants

View Source
const (
	// GitHub binaries
	UmuLauncher        = "Open-Wine-Components/umu-launcher"
	UmuProton          = "Open-Wine-Components/umu-proton"
	ProtonGeCustom     = "GloriousEggroll/proton-ge-custom"
	ProtonCachyOs      = "CachyOS/proton-cachyos"
	ProtonEm           = "Etaash-mathamsetty/Proton"
	CrossOver          = "CrossOver"
	WineMacOs          = "Gcenx/macOS_Wine_builds"
	GamePortingToolkit = "Gcenx/game-porting-toolkit"
	DxMt               = "3Shain/dxmt"
	Innoextract        = "dscharrer/innoextract"

	// Direct download binaries
	VcRedistX64      = "vc_redist.x64.exe"
	VcRedistX86      = "vc_redist.x86.exe"
	DxEndUserRuntime = "directx_Jun2010_redist.exe"
)
View Source
const (
	ProtonEnableWayland = "enable-wayland"
	ProtonPreferSdl     = "prefer-sdl"
	ProtonDisableHidRaw = "disable-hidraw"
	ProtonEnableHdr     = "enable-hdr"
	ProtonNoSteamInput  = "no-steaminput"
	ProtonUseD7Vk       = "use-d7vk"
)
View Source
const (
	SteamProton316                  = "proton-3.16"
	SteamProton370                  = "proton-3.7"
	SteamProton411                  = "proton-4.11"
	SteamProton420                  = "proton-4.2"
	SteamProton500                  = "proton-5.0"
	SteamProton513                  = "proton-5.13"
	SteamProton630                  = "proton-6.3"
	SteamProton700                  = "proton-7.0"
	SteamProton800                  = "proton-8.0"
	SteamProton900                  = "proton-9.0"
	SteamProton1000                 = "proton-10.0"
	SteamProton1100                 = "proton-11.0"
	SteamProtonNext                 = "proton-next"
	SteamProtonHotfix               = "proton-hotfix"
	SteamProtonExperimental         = "proton-experimental"
	SteamProtonBattlEyeRuntime      = "proton-battleye-runtime"
	SteamProtonEasyAntiCheatRuntime = "proton-easy-anti-cheat-runtime"
)
View Source
const (
	VcRedistX64Code      = "vcredistx64"
	VcRedistX86Code      = "vcredistx86"
	DxEndUserRuntimeCode = "directx"
)
View Source
const DxSetupPath = "/DirectX/DXSETUP.exe"

Variables

View Source
var DxSetupArgs = []string{"/silent"}
View Source
var OsWineBinaries = []Binary{
	{
		GitHubOwnerRepo: UmuLauncher,
		GitHubAssetGlob: "*-zipapp.tar",
		OS:              vangogh_integration.Linux,
	},
	{
		GitHubOwnerRepo:    ProtonGeCustom,
		GitHubAssetGlob:    tarGz,
		GitHubAssetFilters: []string{"aarch64"},
		OS:                 vangogh_integration.Linux,
	},
	{
		GitHubOwnerRepo: UmuProton,
		GitHubAssetGlob: tarGz,
		OS:              vangogh_integration.Linux,
	},
	{
		GitHubOwnerRepo: ProtonCachyOs,
		GitHubAssetGlob: "*-x86_64.tar.xz",
		OS:              vangogh_integration.Linux,
	},
	{
		GitHubOwnerRepo: ProtonEm,
		GitHubAssetGlob: tarXz,
		OS:              vangogh_integration.Linux,
	},
	{
		Title:   CrossOver,
		Version: "26.2.0",

		Digest:      "sha256:ab39680927a0d9c313cad27fed33dd15a799be40c93bfc432bef70518af10aa4",
		DownloadUrl: "https://media.codeweavers.com/pub/crossover/cxmac/demo/crossover-26.2.0.zip",
		OS:          vangogh_integration.MacOS,
	},
	{
		GitHubOwnerRepo: WineMacOs,
		GitHubAssetGlob: tarXz,
		OS:              vangogh_integration.MacOS,
	},
	{
		GitHubOwnerRepo: GamePortingToolkit,
		GitHubAssetGlob: tarXz,
		OS:              vangogh_integration.MacOS,
	},
	{
		GitHubOwnerRepo: DxMt,
		GitHubAssetGlob: tarGz,
		OS:              vangogh_integration.MacOS,
	},
	{
		Title:   VcRedistX64,
		Code:    VcRedistX64Code,
		Version: "11/11/2025",

		Digest:      strings.ToLower("sha256:843068991DAAA1F73AD9F6239BCE4D0F6A07A51F18C37EA2A867E9BECA71295C"),
		DownloadUrl: "https://aka.ms/vc14/vc_redist.x64.exe",
		OS:          vangogh_integration.Windows,
	},
	{
		Title:   VcRedistX86,
		Code:    VcRedistX86Code,
		Version: "11/11/2025",

		Digest:      strings.ToLower("sha256:F0BAB33A302B3CDB2E11113760D016F54FD3D2632C65BA7834FAC4F0ABD7F1A3"),
		DownloadUrl: "https://aka.ms/vc14/vc_redist.x86.exe",
		OS:          vangogh_integration.Windows,
	},
	{
		Title:   DxEndUserRuntime,
		Code:    DxEndUserRuntimeCode,
		Version: "9.29.1974.1",

		Digest:      "sha256:053f76dcbb28802e23341b6a787e3b0791c0fa5c8d4d011b1044172dbf89c73b",
		DownloadUrl: "https://download.microsoft.com/download/8/4/a/84a35bf1-dafe-4ae8-82af-ad2ae20b6b14/directx_Jun2010_redist.exe",
		OS:          vangogh_integration.Windows,
	},
	{
		GitHubOwnerRepo: Innoextract,
		GitHubAssetGlob: tarXz,
		OS:              vangogh_integration.Linux,
	},
}
View Source
var ProtonOptionsEnv = map[string]string{
	ProtonEnableWayland: "PROTON_ENABLE_WAYLAND",
	ProtonPreferSdl:     "PROTON_PREFER_SDL",
	ProtonDisableHidRaw: "PROTON_DISABLE_HIDRAW",
	ProtonEnableHdr:     "PROTON_ENABLE_HDR",
	ProtonNoSteamInput:  "PROTON_NO_STEAMINPUT",
	ProtonUseD7Vk:       "PROTON_USE_D7VK",
}
View Source
var ProtonRuntimesNames = map[string]string{
	UmuProton:      "umu-proton",
	ProtonGeCustom: "proton-ge",
	ProtonCachyOs:  "proton-cachyos",
	ProtonEm:       "proton-em",
}
View Source
var SteamProtonDirectories = map[string]string{
	SteamProton316:                  "Proton 3.16",
	SteamProton370:                  "Proton 3.7",
	SteamProton411:                  "Proton 4.11",
	SteamProton420:                  "Proton 4.2",
	SteamProton500:                  "Proton 5.0",
	SteamProton513:                  "Proton 5.13",
	SteamProton630:                  "Proton 6.3",
	SteamProton700:                  "Proton 7.0",
	SteamProton800:                  "Proton 8.0",
	SteamProton900:                  "Proton 9.0 (Beta)",
	SteamProton1000:                 "Proton 10.0",
	SteamProton1100:                 "Proton 11.0",
	SteamProtonNext:                 "Proton Next",
	SteamProtonHotfix:               "Proton Hotfix",
	SteamProtonExperimental:         "Proton - Experimental",
	SteamProtonBattlEyeRuntime:      "Proton BattlEye Runtime",
	SteamProtonEasyAntiCheatRuntime: "Proton Easy Anti-Cheat Runtime",
}
View Source
var WineBinariesCodesArgs = map[string][]string{
	VcRedistX64Code:      {"/install", "/quiet", "/norestart"},
	VcRedistX86Code:      {"/install", "/quiet", "/norestart"},
	DxEndUserRuntimeCode: {"/Q", "/C", "/T:C:\\DirectX\\"},
}

Functions

func AllProtonOptions added in v0.4.89

func AllProtonOptions() []string

func AllProtonRuntimes added in v0.4.89

func AllProtonRuntimes() []string

func AllSteamProtonRuntimes added in v0.3.96

func AllSteamProtonRuntimes() []string

func ValidateWineBinary

func ValidateWineBinary(binary *vangogh_integration.WineBinaryDetails, absBinaryDir string, since time.Time, force bool) error

func WineBinariesCodes added in v0.3.22

func WineBinariesCodes() []string

func WinePrograms added in v0.3.22

func WinePrograms() []string

Types

type Binary

type Binary struct {
	Title              string
	Code               string
	Version            string
	Digest             string
	OS                 vangogh_integration.OperatingSystem
	DownloadUrl        string
	GitHubOwnerRepo    string
	GitHubAssetGlob    string
	GitHubAssetFilters []string
}

func (*Binary) GetDigest

func (bin *Binary) GetDigest(kvGitHubReleases kevlar.KeyValues) (string, error)

func (*Binary) GetDownloadUrl

func (bin *Binary) GetDownloadUrl(kvGitHubReleases kevlar.KeyValues) (string, error)

func (*Binary) GetVersion

func (bin *Binary) GetVersion(kvGitHubReleases kevlar.KeyValues) (string, error)

func (*Binary) String

func (bin *Binary) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL