Forked.

Notes on a fork, and on the person who wrote its licence

Issue 0126 October 2026

Report

The fork is legal. That was never the hard part.

NotProton made Wine run inside Steam on the Mac. Bridgeplay used the same source, dropped the CrossOver licence requirement, and shipped 39 releases, 20 of them in fifty hours. The original author answered with an issue titled "This should not exist." Here is what actually happened, according to the commits.

Lineage

Nothing here started from zero. Every layer has an owner, a licence, and a reason to exist.

  1. 1993

    Wine begins. Its code will become the floor under everything on this page.

  2. 2018

    Valve funds Wine for Proton. The same pattern is used again eight years later, on another operating system.

  3. 2023

    Apple ships the Game Porting Toolkit on top of Wine and D3DMetal. macOS gets an official way to run Windows games.

  4. 2025

    Whisky stops. Its creator concludes that his own free project hurt Wine’s funding.

  5. Sep 2026

    NotProton folds Steam, hooks, and CrossOver into one app. Without a CrossOver licence, nothing runs.

  6. Oct 2026

    Bridgeplay uses the same WineCX source, builds its own engine, and removes that licence from the equation.

PositionThis lineage makes the claim that NotProton built everything from scratch hard to sustain: Wine came first, then Valve, Apple, and CodeWeavers each left code in the stack. NotProton may choose CrossOver; GPL does not automatically include the right to dictate what other people do. That is where the pro-NotProton side starts to sound like a gatekeeper standing on shared foundations.

Chronology

Four dates to hold on to: 8 October (first commit), 21 October (Threads launch), 22 October (#79), 24 October (concessions). Times are shown in WIB (UTC+7); hover a timestamp for UTC. Every row has a source you can open. Data is frozen at 26 October 2026, 14:00 WIB.

Phase one

Before anyone had the right to be angry

Up to 22 October, 11:06 WIB

The policy was already written. The fork already existed. Both ran for two weeks without addressing each other.

CodeWeavers writes Whisky’s obituary

Its CEO praises the project that just stopped, and hopes other people will build their own versions. The sentence will be quoted repeatedly over four days in October.

“We develop Wine so that anyone can use it, whether they buy CrossOver, download Proton, or build their own tools like Whisky.”

CodeWeavers, 18 April 2025

Public release 1.0

NotProton was born as a Steam app plus the CrossOver runner. Without CrossOver it cannot run anything. That is not a bug, it is the design.

Required for Crossover?

The first question about money, answered 22 minutes later: yes, a CrossOver licence is required. The issue was closed at minute 41.

Add setup for Wine and GPTK 4 in steam without crossover

A pull request adds a free engine. Rejected three hours later: supporting things that are not CrossOver is not a design goal of this project. The author says the work was generated with Gemini Flash.

Does/Will this support non-paid crossover alternatives? (Wine, Whisky, Bourbon, etc)

Joziah2 asks the question everyone will ask. The answer is long, and most of it is about Whisky’s closing letter.

Add free WineHQ engine with DXMT as an alternative to CrossOver

Raymond’s first commit, two hours and nine minutes before the #37 answer was published. The commit subject already names the work: an alternative to CrossOver. Author and committer dates match, so this is not a backdated timestamp.

It does not.

The answer names CodeWeavers as the only reason Wine exists on macOS, and refuses to take more than it gives. The text reappears as the body of issue #79, ten days later.

“Without CodeWeavers, we would not have Wine on macOS, it’s as simple as that.”

NotProtonNot, issue #37, 8 October 2026

Add DualSense Bluetooth PCM, XInput rumble forwarding, and Game Mode support for Wine games

sn0wst0rm sends controller support. The maintainer responds warmly and says it will likely make the next major release. As of 26 October the pull request is still open and unreleased.

That specific fork is parasitic

The target was Dino0005’s fork, not Bridgeplay, which did not exist yet. The stated reasons: it enables functionality he chose not to support, and it contributes nothing back upstream.

“That specific fork is parasitic (it enables functionality I specifically opted not to support + makes changes that are positive but does not contribute anything back upstream) and I would prefer not to directly link it here.”

NotProtonNot, PR #90, 11 October 2026

Apologies for how aggressive I was in my comments.

Six hours after “parasitic”. Dino accepted at 07:33, and a second apology came at 22:38. The quote above is incomplete without this part.

fix(ws2_32): own host name no longer resolves to loopback first (TEKKEN 8 ranked)

The file name sounds like privacy spoofing. It is not: macOS returns loopback addresses first for the machine’s own host name, and TEKKEN 8’s matchmaking SDK takes the first result and hangs. The patch drops loopback and link-local results while a routable one remains, keeping the order.

Improve the readme a little

The README gains the sentence that had only lived in issues: support for alternatives to CrossOver itself is not planned. This is the first commit to state it in the repository, three days after Raymond’s fork appeared.

feat: DLSS in Deadlock, crackle-free CoreAudio and forced vsync (ray.23)

The nvapi shim wraps a single query function, overwrites the driver version and branch, and forwards everything else to Apple’s nvapi. The fake driver version is what unlocks the DLSS option in games that keep a minimum driver list.

No. Never. Macs are also expensive.

The question: could the installer offer a choice of CrossOver, GPTK, and Wine? The answer is three words, then a sentence about the price of Macs. It is the last answer given before the fork grew into its own project.

The Bridgeplay repo is created

Twelve days after the first commit, and two days before the issue that changed everything. Until this point the work lived in a NotProton-WineHQ fork.

docs: Bridgeplay README with visuals from bridgeplay.dev

The README already names Bridgeplay as a fork of NotProton, two days before #79. The claim that credit was added in response to the backlash does not hold for this point.

Public launch on Threads

The launch post sells Bridgeplay as a free way to play Windows games in Steam on the Mac, with no mention of NotProton. The research archive records no time, so only the date is certain. One day later #79 opens in this repository’s tracker.

Attribution review: no violation

An independent reviewer concludes the licence was not violated and attribution was present. One gap is recorded: the launch post on social media did not mention NotProton.

Closed with a fix

The GPTK licence and the word “fork” on the site were fixed within hours, then the issue was closed.

v0.7.32

The first release in a window that will produce twenty releases in fifty hours. Eleven minutes later, issue #79 is opened.

Phase two

Forty-eight hours

22 October, 11:17 WIB to 23 October, 23:36 WIB

One issue, sixteen comments, two concessions, one sentence that cannot be taken back.

This should not exist.

Opened by the original author in the fork’s own tracker. Its body copies the #37 answer. It accuses the fork of harming the Wine project, and asks that things like it not exist.

“Stop. These slop forks are not helpful. They harm the Wine Project.”

NotProtonNot, issue #79, 22 October 2026

docs: credit CodeWeavers’ Wine work and port upstream PRs only after they’re merged

The port-after-merge rule becomes repository policy, not a verbal promise. Six minutes later, Raymond replies in #79.

Thank you for writing this, and for NotProton.

Raymond withdraws the 32-bit claim, acknowledges the debt to NotProton, and offers three commitments: upstream first, no pull requests to NotProton, credit stays.

“Bridgeplay wouldn’t exist without your work, and you’re right about more of this than I’d like.”

Raymond Chin, issue #79, 22 October 2026

Closed by Raymond

Status completed, two and a half hours after his reply. The discussion did not stop: the next comments from the NotProton side arrived at 20:33 and at 05:47 the following morning.

What a gross project, what a gross mentality.

After the issue was closed, and after Raymond offered concessions. The register shifts from a licence argument to a personal judgement.

You’re a real piece of garbage. I wish you nothing but the worst.

A reply to Raymond’s conciliatory comment, with the suggestion that the reply was written by AI. The accusation was correct, and was admitted two days later.

“You’re a real piece of garbage. I wish you nothing but the worst.”

NotProtonNot, issue #79, 23 October 2026

v1.2.1

A release with feature plug-ins and prefix fixes, on the same day as the comment above. It contains no controller commits, so PR #90 is still unmerged.

Phase three

What was left afterwards

24 October, 00:10 WIB to 26 October, 14:00 WIB

The fork removed a feature, fixed its credits, and cleaned up its licences. The original author went back to work. Nobody conceded, and nobody stopped.

docs: put the fork credit at the top of the README

The NotProton credit moves to the top of the README, eleven hours before open letter #693. The claim that credit only appeared after the backlash does not hold at this point.

chore: remove all files

A pull request from a fork to delete the entire repository. Not the maintainer’s action, but part of the pressure that night.

docs(licenses): ship the LGPL text and list the WineCX runtime’s libraries

The full LGPL text for the Wine files the app carries lands in the bundle, with a list of every library in the WineCX runtime archive. NOTICE names its GPL parts (FFmpeg, x264, x265, libdvdcss, libdvdread, libdvdnav) and the written source offer now covers GPL files. The order is worth noting: six minutes before open letter #693 was filed.

aimardcr’s open letter

The harshest criticism came from Indonesia and arrived as paragraphs, not jeers. aimardcr writes that the problem is not the use of AI but the way Raymond answers criticism. Twenty-three minutes later Raymond admits his replies were written by a bot.

“But what you are doing right now isn’t contributing”

aimardcr, issue #693, 24 October 2026

the way i responded is full AI and was a mistake to ask my bots reply as i was in between meetings.

An admission that earlier replies were written by a bot. It turns the AI accusation in #79 into an irony rather than an error.

“the way i responded is full AI and was a mistake to ask my bots reply as i was in between meetings.”

Raymond Chin, issue #693, 24 October 2026

Retire bridgeplay

A request that the project be shut down.

Merge #702 and apologise

An apology and a shutdown demand. In this thread Raymond links the Reddit discussion on 25 October.

fix(installer): stop shipping the WineCX runtime and fix the license notes

The installer stops carrying the WineCX runtime. The commit message gives the reason: the runtime bundles GPL libraries (FFmpeg, x264, x265, libdvd*) whose source neither dappermint nor Bridgeplay publishes, so setup downloads it and the installer drops to 45 MB. NOTICE also stops calling GPTK’s wine/ folder LGPL Wine; it holds Apple’s D3DMetal DLLs.

docs: plainer claims, full list of Steam changes, shorter copy

The README stops saying games run natively, in one click, or at up to 3x, and drops titles that are not in the compatibility list. It lists every change Bridgeplay makes to Steam, including the RTX 4090 identity games see for DLSS, and credits Leon Seemann, Proton, dappermint, and sn0wst0rm.

v0.7.51

The 39th release overall, and the last one as of 26 October. After this, the repository stops releasing.

Thought for Bridgeplay

ilya-id writes a long thread. In it, Raymond says he contacted CodeWeavers before the blow-up and is still waiting for a reply. As of 26 October there is no public reply.

docs(credits): name every copyright holder and keep authors on ported code

NOTICE names every copyright holder. This is a concession that can be checked in a file rather than in a statement.

revert(controllers): take out the DualSense bridge, Steam rumble and game-mode host

sn0wst0rm’s work is removed from the code. The credit stays in NOTICE and the README, and the commit message says the work was kept on a parked/notproton-90 branch; that branch is not on the remote as cloned. Since PR #90 is still open and 1.2.1 does not include it, this is lost functionality, not cosmetics.

Hey, look, a Winetricks UI

NotProton’s last commit as of 26 October. The product ships as usual. No change of stance toward the fork, and no answer to the previous day’s comment.

feat(app): name Leon Seemann in the copyright line and add the GPL notice to About

Leon Seemann, who owns the NotProton-WineHQ repository the work branched from, enters the app’s copyright line, and the GPL notice is added to the About screen. A concession readable in Info.plist rather than in a thread.

fix(compat): ignore invalid manifests before deduplicating installed games (#1108)

The last commit before the data was frozen. The repository is still moving on publication day: PR #1108 merged at 13:05 WIB. No new release, and no change of stance toward NotProton.

No public statement

As of 26 October, CodeWeavers has published nothing about NotProton or Bridgeplay. The October blog archive stops before the drama, and no post mentions either name. Only the older Whisky position exists.

Raymond Chin's greatest deficiency in the eyes of critics is actually simple: he is too famous to forgive.

If this repo were forked by an ordinary person, no one would care at all. The "unethical" accusation is just a stage costume. Defending free software licenses every day, his software actually became free and went viral, then suddenly busy inventing things.

PositionThe chronology needs no extra drama. NotProton had written its policy, Bridgeplay already existed, and then #79 turned a technical rejection into a demand that the fork should not exist - with an old answer pasted into the body for good measure. After “you are a real piece of garbage”, this is hard to call a mere architecture dispute. The pro-NotProton side wrote its own punchline.

The public trial

Two rooms where this case was taken public: Threads, where Bridgeplay launched, and Reddit, where the maintainer’s demand was tested. The transcripts come from a local research archive, because direct access is blocked.

Threads posts

  1. Launch post

    Mac gabisa main game Windows? done ✅ Gw open source gratis cara paling seamless buat main Windows game di native Steam Macbook kalian. bridgeplay.dev monggo di star, test, contribute kalo mau.

    One day before #79. Dated 21 October; the research archive records no time.

    www.threads.com/share/Ghhu9Qw9X
  2. Bug report post

    kalo ada bug, bekabar

    Posted on the same day, 21 October 2026, and opened for problem reports.

    www.threads.com/share/JQUcHnKXk

Reddit thread r/macgaming

NotProton maintainer confronts influencer-backed fork Bridgeplay over macOS Wine sustainability; owner refuses to take down repo despite upstream’s demands

  • 340+Upvotes
  • 260+Downvotes
  • hundredsComments

Figures come from the 26 October research archive. Reddit shows a public score, not a breakdown of upvotes and downvotes, so these numbers cannot be reopened on the original page.

Open the original thread

The maintainer’s statement

I do not think they are required to do what I want. The license I opted to use gives them the right to do what they are doing. But what they are doing is harmful. Not to me, but to CodeWeavers. I think that's a tragedy. So I asked them to not do it. I ask everyone who does this to stop. Most have opted to stop. Free software is freedom. Free speech. Free as in freedom. Not as in free beer. Forks like these offer free beer, but the only company producing beer is CodeWeavers, and if they get into trouble....we're all screwed. I continue to believe that the behavior of the social media influencer is disgusting and actively harmful. Additionally, they are end to end vibing a fork, merging in incomplete/unreviewed PRs and hallucinating issues.

u/NotProtonMac · NotProton maintainer

Other voices in the thread

  1. u/Particular-Treat-650Rejecting the demand124 upvotes

    Does an upstream maintainer's request to stop distributing a fork carry weight? Absolutely, unconditionally, no. The license is the license. Not having a say and not being able to revoke it are the whole point.

  2. u/SeanmclemRejecting the demand173 upvotes

    That's open source.

  3. u/y-c-cRejecting the demand

    I'm a paying customer of CrossOver but I'm honestly kind of tired of all these whiteknighting of CodeWeavers... CodeWeavers didn't invent WINE. They built themselves around an existing open source software (WINE), which already had been around for years and the foundation built by lots of other contributors...

  4. u/peckxetraRejecting the demand

    Open source shouldn't mean 'you're free to fork my project, but only if I approve of what you do with it.' You can question Raymond's engineering decisions. You can criticize his reliance on AI... But if the fork complies with the license, demanding its deletion purely on ethical grounds? That's where I disagree.

  5. u/Adventurous_Plum_656Criticism of Raymond

    As for the Bridgeplay 'maintainer', all they seem to respond is with AI-written messages. I doubt they care at all, which is honestly my bigger issue with this whole discourse. If you can't even write for your own project, what is your project for? Robots?

  6. u/rampancyCriticism of Raymond

    The problem is people who just want to use AI to vibe code for them the full CrossOver software stack for free... Does the maintainer of Bridgeplay or folks behind the veritable baker's dozen of vibe coded WINE launchers out there have the chops to maintain their code, solve compatibility issues or fix bugs?

  7. u/RoboErectusRejecting the demand

    If a vibecoder surpassed what codeweavers has done, then they absolutely deserve to get supplanted... Projects that learn to use the new tools will thrive. This has always been the case.

  8. u/itsjaseRejecting the demand

    I think this post is gonna backfire, I only know Bridgeplay exists now because of this post.

PositionOn Reddit, NotProton says the fork is lawful but harmful, then asks everyone to stop. That is a political position, not a consequence of the licence. The funnier part is that the pro-NotProton thread meant to kill Bridgeplay makes people discover it instead. If this was an anti-publicity strategy, it worked like an advert.

The engine

The arguments on this page rest on code, so the code is shown. Every number comes from a local clone and a diff against merge-base 730f100; every engine patch was read, not assumed.

Three codebases

  • NotProton

    Owner
    NotProtonNot
    Licence
    GPL-3.0
    Role
    Steam hooks and the CrossOver runner
    Size
    201 commits, about 53k lines excluding vendor
  • WineCX / GPTK

    Owner
    CodeWeavers dan Apple
    Licence
    LGPL-2.1+ untuk Wine; GPTK proprietary
    Role
    The engine that runs .exe files
    Size
    WineCX 11.17, runtime 4.7.3
  • Bridgeplay

    Owner
    Raymond Chin
    Licence
    GPL-3.0
    Role
    Fork, free engine, and new features
    Size
    336 fork-owned commits, 39 releases

Side by side

Two products doing the same work in different ways. These rows come from the READMEs, manifests, and repository contents, not from claims in a thread.

  • Runner

    NotProton

    CrossOver 26.3. Without a licence, the app runs nothing.

    Bridgeplay

    WineCX 11.17 with MSync, downloaded separately at setup.

  • Graphics

    NotProton

    D3DMetal from GPTK, limited DXMT.

    Bridgeplay

    GPTK 4.0 beta 3, DXMT, DXVK-macOS 1.10.3.

  • DLSS

    NotProton

    Whatever D3DMetal reports.

    Bridgeplay

    nvapi-shim reports driver 595.41 so the DLSS option appears; the rest is forwarded to Apple’s nvapi.

  • Steam hooks

    NotProton

    notproton.dylib through Info.plist and a local signature.

    Bridgeplay

    The same mechanism, plus scripts for signature repair and the quarantine flag.

  • Installer

    NotProton

    CLI through a Homebrew cask.

    Bridgeplay

    Graphical Setup Assistant, engine downloaded at setup. Since 24 October, without the WineCX runtime.

  • AI agent traces

    NotProton

    None.

    Bridgeplay

    CLAUDE.md, AGENTS.md, and .claude state in .gitignore.

What the fork added to the inherited code

These figures are counted from Bridgeplay’s side: a diff against merge-base 730f100, the point where the fork split from NotProton. 444 files changed with +49,270 and −3,044 lines; the rows below are the largest parts.

  1. overlay-shim/framegen.m+2,521

    Frame generation: two-way optical flow, MTLFXFrameInterpolator, presentDrawable:atTime: pacing, fallback.

  2. native-shim/+2,600

    Controller shim: hid_profile.c 36 KB, gamepad_shim.c 34 KB, gc_virtual.m 21 KB.

  3. dylib/feats/compat_run.sh+1,098

    Two engines, per-appid gamefixes, backend selection.

  4. app/19.7k → 33.4k

    Setup Assistant, installer, more than 60 Swift tests.

  5. compat/+2,614

    games.json and reported.json, a compatibility database.

  6. native-launch/np-native.c+551

    Launch wrapper and launch options.

  7. patch engine8 directories

    winemac, wined3d, winebus, ws2_32, win32u, winecoreaudio, d3dx11, ngx-signer.

What was left alone

The hook layer described as only an interface changed 37 lines across three files. The rest of the project’s value sits outside that layer.

  • dylib/hooks/hooks.c23
  • dylib/core/loader.c4
  • dylib/resolver/resolver.c10

Engine patch audit

Ten patches, read one by one. The label on each row judges whether a patch stands as engineering or changes something outside the project’s own code.

  1. winemac retina203Defensible

    NSProxy wraps the view so frames are measured in Win32 pixels; present is called before WM_SIZE.

  2. ws2_32 own-hostname118Defensible

    Drops loopback and link-local results from getaddrinfo for the machine’s own host name, keeping the order.

  3. winebus SDL mappings30Defensible

    Reverses the allocation order and always writes the NUL; the WineCX version writes past the heap boundary when the array is full.

  4. wined3d driver version42Defensible

    Environment override, four-component parser, off by default.

  5. winecoreaudio buffer18With caveats

    The device buffer is set to half a period for render. The change is one line, with no test.

  6. d3dx11 CreateThreadPump51With caveats

    A stub becomes a function returning E_NOTIMPL. All it removes is a crash.

  7. hide-wine-exports84With caveats

    get_proc_address rejects ntdll!wine_*; __wine_* stays. There is precedent in Wine Staging.

  8. nvapi-shim125With caveats

    Wraps one query function, overwrites the driver version, forwards the rest to Apple’s nvapi.

  9. win32u driver version29Not defensible

    Edits a string and a QWORD in win32u.so, then re-signs ad hoc. The only patch that touches the engine binary.

  10. ngx-signer225Not defensible

    Wraps CryptQueryObject and WinVerifyTrust so system32\nvngx.dll passes as the game’s sl.interposer.dll.

Two patches cannot be defended: win32u edits bytes inside the engine binary and re-signs it, and ngx-signer makes one Authenticode check stop meaning anything. The rest can be argued about as aggressive engineering. These two cannot.

PositionTechnically, Bridgeplay is not just NotProton with a new logo: the diff is 444 files and almost 50,000 added lines. Two patches still cannot be defended. Criticism of Bridgeplay can therefore be valid without accepting the whole NotProton narrative - and “slop” is still not a substitute for a code audit.

Three arguments

Each accusation is put next to evidence that can be checked. Some fall. Some stand, and the ones that stand are the least comfortable for both sides.

This is just an interface on top of other people’s work.

Partly

The hook layer is NotProton’s, and is barely touched: 23 lines in hooks.c, 4 in loader.c, 10 in resolver.c. But the diff against the merge base is 444 files and 49,270 added lines, including engine patches, a 2,600-line controller shim, and 2,521 lines of frame generation. Most of the project’s value sits outside the interface.

Evidence

  • 444 files, +49,270/−3,044 against merge-base 730f100.
  • native-shim: 75 CHECKs and a real device report fixture. framegen: 60 CHECKs, two engines.
  • winebus fixes an allocation bug that WineCX ships.

The code was taken without attribution.

Partly

The pre-merge port is true and acknowledged: the port-after-merge rule was added on 22 October. “Without attribution” is false: sn0wst0rm’s credit stays after the feature was removed, and the revert message names its origin.

Evidence

  • e823152 adds the rule that ports wait until merged.
  • Commit 5df8a5f: “NOTICE and the README keep sn0wst0rm’s credit.”
  • Review #2, 21 October, found no licence violation.
  • bridgeplay.dev, opened 26 October: “Bridgeplay is a fork of NotProton”, with Leon Seemann, dappermint and sn0wst0rm named in the “Built in the open” section.

The criticism came from outside, an attack on an Indonesian developer.

Falls

Factually false. The harshest critics were Indonesian users, including the ones who opened the open letter and the pull requests to shut the repo down. The person who moved to a personal attack was the original author, in English, in a public tracker.

Evidence

  • Open letter #693, 24 October.
  • PR #702, #704, #712 and issue #727, all 24 October.
  • The #79 quote, 23 October: “You’re a real piece of garbage.”

PositionThe argument is lopsided: the pro-NotProton side wants freedom to mean permission to use, not permission to fork. GPL-3.0 has no “unless the result lets people use CrossOver for free” exception. Bridgeplay still owes attribution and process; that debt is not NotProton’s veto.

What we do not defend

The position on the cover only means something if this list ships with it. Seven items on NotProton’s side, four on Bridgeplay’s, each with a trail you can open.

NotProton

  1. Demanding what its own licence allows

    #79 asks that forks like this stop existing. In the same thread, the original author writes that the licence he chose gives people the right to make one. The two sentences cannot stand together.

    “Yes, you have a right to make such a fork, the license I selected gives you that right.”

    NotProtonNot, issue #79, 23 October 2026
  2. Gatekeeping for a paid product

    The policy is consistent and public: CrossOver is required (#5), other engines are not a design goal (#18), and a choice of engines is answered “No. Never.” That is the product owner’s right. What cannot be defended is using GPL-3.0 for the same code while refusing the consequence that licence carries.

    EvidenceCommit 30b65c0 writes the prohibition into the README on 11 October, three days after the first fork.

  3. A personal attack, in a public tracker

    After Raymond offered concessions, the reply was not a technical one. The sentence is still in #79, with no apology after it.

    “You’re a real piece of garbage. I wish you nothing but the worst.”

    NotProtonNot, issue #79, 23 October 2026
  4. Answering engine choice with “No. Never.”

    NotProton has the right to make CrossOver its only supported engine. What we do not defend is answering the question with “Macs are also expensive”, as if the price of the hardware were a technical argument.

    “No. Never. Macs are also expensive.”

    NotProtonNot, issue #37, 14 October 2026
  5. Pasting an old answer into #79

    The body of issue #79 copies the long answer from #37, then uses it to open the confrontation in Bridgeplay’s tracker. Criticism may be repeated; presenting it as a new argument makes the drama look fresher than its substance.

    EvidenceThe #37 answer was posted on 8 October; #79 opened on 22 October using the same text.

  6. Calling another fork “parasitic”

    A comment on PR #90 calls Dino0005’s fork “parasitic” because it enables functionality the maintainer chose not to support and contributes nothing back. The target was not Bridgeplay, but the language still shows a conversational standard we do not defend.

    “That specific fork is parasitic”

    NotProtonNot, PR #90, 11 October 2026
  7. Treating “harming Wine” as a fact

    Issue #79 alleges that the fork harms the Wine project and its funding, but this research found no evidence that funding shifted after Bridgeplay appeared or that CodeWeavers asked for intervention. The allegation can be recorded; its false certainty cannot be defended.

    EvidenceThe funding argument was removed because it could not be proven; CodeWeavers has made no public statement.

Bridgeplay

  1. A launch without its origins

    The launch post on Threads sells the project as a free way to play Windows games, with no mention of NotProton. Independent review #2 records that gap as the only attribution problem, and the site and GPTK licence were fixed within hours.

    “Mac gabisa main game Windows? done ✅ Gw open source gratis cara paling seamless buat main Windows game di native Steam Macbook kalian.”

    Raymond Chin, Threads, quoted in issue #79

    EvidenceReview #2, 21 October: no licence violation, one attribution gap.

  2. Using work that was not merged

    sn0wst0rm’s controller work from PR #90 shipped while that pull request was still unmerged, then was removed on 24 October. The port-after-merge rule only became repository policy in e823152 on 22 October, after the work had been used.

    Evidence5df8a5f, 24 October: “revert(controllers): take out the DualSense bridge, Steam rumble and game-mode host”.

  3. Replies written by a bot

    Raymond’s conciliatory reply in #79 was written by a bot, admitted in #693. The admission came after the person on the other side accused the reply of being AI. The accusation was correct.

    “the way i responded is full AI and was a mistake to ask my bots reply as i was in between meetings.”

    Raymond Chin, issue #693, 24 October 2026
  4. Twenty releases in fifty hours

    Between v0.7.32 and v0.7.51 there are 20 releases in about 50 hours; on 20 October alone there are 99 commits. The numbers do not prove the code is bad. They show there was no time to check it on real hardware.

    Evidencev0.7.32, 22 October 04:06 UTC; v0.7.51, 24 October 06:42 UTC.

PositionThis list separates two things that are being deliberately mixed. NotProton may dislike Bridgeplay; what we do not defend is the pro-NotProton side turning that dislike into a demand for deletion. Bridgeplay may say it was moving fast; that does not erase its own carelessness.

What we could not confirm

This list is not a formality. Anything we could not check was left out of the story rather than softened.

CodeWeavers’ reply to Raymond.
Raymond says he contacted them before the blow-up. A private reply may exist, but none is public as of 26 October.
Claims of religious or racial abuse.
Mentioned in discussion, but no screenshot, link, or archive can be checked. Not included.
Bridgeplay’s behaviour when running a game.
No build or runtime test was performed for this research. Every conclusion comes from source, diffs, and commit history.
The parked/notproton-90 branch.
Named in the revert message, but absent from the remote when the repo was cloned. The claim that the code is kept there cannot be confirmed.

PositionWe do not use what we cannot confirm to rescue anyone: CodeWeavers has not spoken, the runtime was not tested, and the parked branch is not visible. The pro-NotProton side cannot fill those evidentiary gaps with “definitely harmful”, and Bridgeplay cannot fill them with “definitely safe”.

Colophon

Method

Every finding comes from local clones of both repositories, their commit history, tags, and GitHub API responses. Nothing was built and nothing was run. Quotes are reproduced as they appear in issues and commits, spelling included. Times are converted to WIB, with UTC kept in the title attribute. Data is frozen at 26 October 2026, 14:00 WIB. Threads and Reddit quotes come from a local research transcript, because direct access is blocked. The bridgeplay.dev site was opened on 26 October and its contents checked directly.

Credit and limits

This page is not affiliated with NotProton, Bridgeplay, CodeWeavers, or Apple. Names and quotes are used to identify public statements. The raw research lives in the research/ folder, including JSON that can be compared against the commits.

Bridgeplay contributor graph

Numbers

NotProton commits201
Bridgeplay repo commits568
Fork-owned commits336 (221 / 84 / 31)
Diff against merge-base444 files, +49,270 / −3,044
Bridgeplay releases39
NotProton releases16
Contributors listed21
Inherited history (NotProtonNot)156 commits
Contributors with a public Indonesian location2 (Jakarta, Yogyakarta)

Changes

  1. Issue 01 published. Two corrections to the earlier research notes: Raymond’s first commit precedes the #37 answer, and #79 was closed by Raymond, not a bot.
  2. The argument “This fork damages Wine’s funding” is dropped: there is no evidence that Wine’s funding shifted once this fork existed, and its connection to Bridgeplay cannot be shown. The accusation stays in the #79 chronology as a claim, not as an argument. bridgeplay.dev can be opened again, so the entry about its contents leaves the unverified list and is used as evidence in the attribution argument.

PositionOur final conclusion, for this case only: our criticism is aimed at NotProton and its defenders, who seem to be saying, “Free as in freedom... just not the freedoms I don’t like.” Infuriating. We are not discussing every open source project or every other case. We still criticize Bridgeplay, but in this matter we cannot accept the demand that a lawful GPL-3.0 fork should stop existing.