[Bug 292017] emulators/wine-proton: No supported path for i386 packages on 15.x breaks pkg32 compatibility

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 29 Dec 2025 13:33:15 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292017

            Bug ID: 292017
           Summary: emulators/wine-proton: No supported path for i386
                    packages on 15.x breaks pkg32 compatibility
           Product: Ports & Packages
           Version: Latest
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: rikka.goering@outlook.de
                CC: iwtcex@gmail.com, pkg@FreeBSD.org, re@FreeBSD.org
             Flags: maintainer-feedback?(iwtcex@gmail.com)
             Flags: maintainer-feedback?(iwtcex@gmail.com)

Created attachment 266621
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=266621&action=edit
Log of /usr/local/wine-proton/bin/pkg32.sh update

Summary
-------
FreeBSD 15.0 removed i386 release images (and other 32-bit platforms), while
still indicating that 32-bit binaries should remain runnable on 64-bit systems.
However, on 15.x there is currently no supported/public i386 pkg repository (or
replacement mechanism) for installing the 32-bit ports userland needed by
pkg32-based workflows (e.g., Wine/Proton + Steam use-cases that require 32-bit
libs).

As a result, workflows that previously relied on pkg32.sh (installing i386
packages alongside amd64) cannot be satisfied from official infrastructure on
15.x.

Context / Why this matters
--------------------------
A common “compat” use-case on amd64 is running 32-bit Windows games via
Wine/Proton. Even when the kernel can run 32-bit binaries, users still need a
way to obtain 32-bit libraries from ports (and their dependencies). pkg32.sh
historically provided a practical workflow by consuming i386 package
repositories.

Problem
-------
- On FreeBSD 15.x, official i386 package repositories are missing/insufficient
for pkg32 usage.
- In particular, quarterly repositories for FreeBSD:15:i386 are not available,
which makes pkg32 workflows brittle or impossible for stable users. This has
been discussed publicly (see references below).

References
----------
1) FreeBSD 15.0 announcement states 32-bit platforms are removed from 15.0
release images while 32-bit binary execution on 64-bit remains expected.
(freebsd-announce, Feb 2024)
2) freebsd-current discussion indicates FreeBSD:15:i386 quarterly repo not
present / only latest exists, and highlights the practical impact for users
relying on i386 packages.

1)
https://lists.freebsd.org/archives/freebsd-announce/2024-February/000117.html
2) https://lists.freebsd.org/archives/freebsd-current/2025-October/009182.html

Workaround (current)
--------------------
A temporary workaround is:
1) Create a poudriere jail for 14.3-RELEASE i386
2) Bulk build required i386 packages there
3) Inject that repository into pkg32.sh, including ABI configuration

However, this workaround is fragile long-term:
- Versions/toolchains/ports drift
- The longer 15.x evolves, the greater the risk of ABI/API mismatch or missing
features for building modern ports on a 14.x i386 environment.

Questions / Request
-------------------
1) What is the *supported* approach for obtaining/installing 32-bit ports
libraries on FreeBSD 15.x amd64 for compatibility use-cases (pkg32/Wine/Steam)?
2) Is there a plan to keep publishing i386 packages (even if 15.x does not ship
i386 release images), or to provide an alternative repo specifically for
“compat/ports i386 on amd64”?
3) If the answer is “no,” could this be documented explicitly (and potentially
pkg32.sh adjusted / deprecated on 15.x with guidance)?

Impact
------
This impacts the ability to run 32-bit Windows software on FreeBSD via
Wine/Proton, which is a major “desktop adoption” friction point.

-- 
You are receiving this mail because:
You are on the CC list for the bug.