Files
nixpkgs/pkgs/top-level/wine-packages.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

74 lines
2.0 KiB
Nix

{
lib,
stdenv,
config,
callPackage,
wineBuild,
}:
rec {
fonts = callPackage ../applications/emulators/wine/fonts.nix { };
minimal = callPackage ../applications/emulators/wine {
wineRelease = config.wine.release or "stable";
inherit wineBuild;
};
base = minimal.override {
gettextSupport = true;
fontconfigSupport = stdenv.hostPlatform.isLinux;
alsaSupport = stdenv.hostPlatform.isLinux;
openglSupport = true;
vulkanSupport = true;
tlsSupport = true;
cupsSupport = true;
dbusSupport = stdenv.hostPlatform.isLinux;
cairoSupport = stdenv.hostPlatform.isLinux;
cursesSupport = true;
saneSupport = stdenv.hostPlatform.isLinux;
pulseaudioSupport = config.pulseaudio or stdenv.hostPlatform.isLinux;
udevSupport = stdenv.hostPlatform.isLinux;
xineramaSupport = stdenv.hostPlatform.isLinux;
sdlSupport = true;
mingwSupport = true;
usbSupport = true;
waylandSupport = stdenv.hostPlatform.isLinux;
x11Support = stdenv.hostPlatform.isLinux;
};
full = base.override {
gtkSupport = stdenv.hostPlatform.isLinux;
gstreamerSupport = true;
openclSupport = true;
odbcSupport = true;
netapiSupport = stdenv.hostPlatform.isLinux;
vaSupport = stdenv.hostPlatform.isLinux;
pcapSupport = true;
v4lSupport = stdenv.hostPlatform.isLinux;
gphoto2Support = true;
krb5Support = true;
embedInstallers = true;
};
stable = base.override { wineRelease = "stable"; };
stableFull = full.override { wineRelease = "stable"; };
unstable = base.override { wineRelease = "unstable"; };
unstableFull = full.override { wineRelease = "unstable"; };
staging = base.override { wineRelease = "staging"; };
stagingFull = full.override { wineRelease = "staging"; };
wayland = base.override {
x11Support = false;
};
waylandFull = full.override {
x11Support = false;
};
yabridge =
let
yabridge = base.override { wineRelease = "yabridge"; };
in
if wineBuild == "wineWow" then yabridge else lib.dontDistribute yabridge;
}