Commit Graph
236 Commits
Author SHA1 Message Date
Kalah 0c1c1b5ab3 Merge pull request #117 from 3AvisD/chore/launcher-name
launcher: use a neutral Darling Launcher name and icon
2026-10-21 17:45:18 +02:00
3AvisD 6dec8e176e launcher: use a neutral Darling Launcher name and icon
Use a project-owned identity for the visible desktop entry while keeping the existing binary, package and window-matching identifiers working. The helper now copies the project's original icon instead of extracting one from the client, and the old game-named entry and icons it created are removed. Extend the packaging check to assert the neutral fields.
2026-10-20 23:49:39 -06:00
Kalah b88893b1cd Merge pull request #114 from nicolai455/fix/nix-fhs-fontconfig
fix(nix): harden fontconfig compatibility across host setups
2026-10-20 13:58:44 +02:00
lucannez64 bdbf1e9a37 test(nix): run font compatibility regressions in CI 2026-10-20 13:57:05 +02:00
Nicolai Bruns 699b96ffc8 docs(tests): document fontconfig regression helpers 2026-10-20 13:43:22 +02:00
Nicolai Bruns 6a96869db8 fix(nix): harden fontconfig compatibility across host setups 2026-10-20 13:31:02 +02:00
nbandlucannez64 ec85cfb96b fix: preserve ambiguous guest processes during prefix cleanup (#111)
* fix: preserve ambiguous guest processes during prefix cleanup

* fix: warn only for matching runtime cleanup candidates

---------

Co-authored-by: lucannez64 <[email protected]>
2026-10-20 13:02:29 +02:00
nbandKalah bbfa4c61b0 fix(appkit): add NSSavePanel tag-name compatibility (#112)
Co-authored-by: Kalah <[email protected]>
2026-10-20 12:24:10 +02:00
Kalah c00dd569c0 Fix Nix FHS text fonts and fontconfig aliases (#113) 2026-10-20 12:14:32 +02:00
Kalah 71f7cfd4a0 Merge pull request #105 from WolfBlack879/fix/trustd-keepalive
security: keep trustd running from boot (fixes black Riot Client window)
2026-10-20 12:02:15 +02:00
Kalah f91dee1580 Merge branch 'main' into fix/trustd-keepalive 2026-10-20 12:00:48 +02:00
Kalah 1069572d2c Merge pull request #107 from DavidutzDev/fix/darlingserver-fd-limit
Raise darlingserver's soft fd limit when the hard limit is fixed
2026-10-20 11:58:17 +02:00
Kalah b93421d55b Merge branch 'main' into fix/darlingserver-fd-limit 2026-10-20 11:57:42 +02:00
Kalah fc178d2d86 Merge pull request #110 from 3AvisD/fix/trademark-logo
Compliance and best-practice adjustments
2026-10-20 11:53:24 +02:00
lucannez64 ef36caf35c Fix Mach-O analysis with no matching strings 2026-10-20 11:52:23 +02:00
3AvisD 4157d1ed3b docs: add scope and terminology guidance
Add docs/COMPLIANCE.md with the project's compatibility scope: no DRM/anti-cheat circumvention, no third-party game assets, and neutral terminology for issues and PRs. Link it from README and NOTICE.
2026-10-19 23:06:47 -06:00
3AvisD 3309f079c7 patches, tools, docs: use neutral integrity-check wording and state the compatibility scope
The patch comments and the Mach-O strings filter named an anti-cheat product. Use neutral wording; the patches still differ only in comments. The platform-identity document now says the overrides are for compatibility, not a bypass of anti-cheat, telemetry, licensing or platform controls.
2026-10-19 22:47:59 -06:00
3AvisD 24962cc056 flake.nix: mark the desktop entry and package as unofficial
Keep the executable names and StartupWMClass; only the user-facing name, comment and descriptions change.
2026-10-19 22:47:59 -06:00
3AvisD 9651602cba README, NOTICE: add trademark notice and remove the gameplay clip
Consolidate the non-affiliation note into a dedicated Trademarks section, replace the embedded gameplay video with a pointer to the status document, and reword the takedown note as a continuity statement. Describe the compatibility tools as referring to public API names and constants.
2026-10-19 22:47:59 -06:00
3AvisD 3edddf250d darling-lol: use an original project mark instead of the game logo
The bundled darling-lol.svg/png are the League of Legends logo, a Riot Games trademark, used as the project icon. The README already states that the project is not affiliated with or endorsed by Riot Games, so the icon should not be someone else's mark.

Replace both files with an original D monogram. Same file names, so flake.nix and the desktop entry keep working. The mark is provisional and easy to swap for a final one. No functional changes.
2026-10-19 22:36:55 -06:00
David GhegheaandClaude Opus 5.5 cb1c9c2354 Raise darlingserver's soft fd limit when the hard limit is fixed
Under the rootless NixOS launcher darlingserver cannot raise its hard
RLIMIT_NOFILE to nr_open, so it kept the soft limit it inherited. Every
named memory entry holds a memfd in darlingserver, and its descriptors
peak at about 1100 when the League lobby opens. With an inherited soft
limit of 1024, memfd_create failed with EMFILE, mach_make_memory_entry_64
returned KERN_RESOURCE_SHORTAGE, and Chromium's CHECK in
PlatformSharedMemoryRegion::Create killed the League UX and the Riot
Client renderer after clicking Play.

When raising the hard limit fails, raise the soft limit to the inherited
hard limit instead. Log errno, size and fd limits when named-entry
creation fails, and log the live memfd count every 1024 creations so a
leak shows up in dserver.log.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-19 22:45:23 +02:00
BenjaminandClaude Opus 5.5 a68e3ab169 security: keep trustd running from boot
The Riot Client UI intermittently stayed black for 30s to 2+ minutes
(sometimes indefinitely). Electron 22 / Chrome 108 verifies the local
Riot backend's TLS certificate through SecTrust, which calls trustd over
XPC. trustd is launched on demand and has EnablePressuredExit, so it is
often not running; under Darling the on-demand launch can take minutes,
and every cert verification (serialized behind Chrome's global lock)
waits for it. The UI's websocket handshake stalls after ServerHello
until then.

Start trustd at boot and keep it alive. Measured on one machine:
before, time to "renderer socket connected to Foundation" ranged
0.8s-136s or never; after, 0.83s / 0.85s / 0.97s on three launches.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_014cgmCWUB2zNH4uiMEioafC
2026-10-19 17:10:06 -03:00
Kalah 6505ecffba Merge pull request #101 from PolarSeeker77/docs/nvidia-reports
Document NVIDIA reports instead of "NVIDIA is not validated"
2026-10-19 19:08:32 +02:00
Kalah ac30bb3f23 Merge branch 'main' into docs/nvidia-reports 2026-10-19 19:08:01 +02:00
Kalah 46f4bea286 Merge pull request #100 from lucannez64/fix/host-dns
Use the host DNS resolver in Darling
2026-10-19 19:06:55 +02:00
lucannez64 857aabf8b7 Bypass proxies when checking guest DNS 2026-10-19 18:22:17 +02:00
Polar 5260291443 Document NVIDIA reports instead of "NVIDIA is not validated" 2026-10-19 16:21:26 +00:00
lucannez64 306c6c5bf8 Use the host DNS resolver in Darling 2026-10-19 18:11:49 +02:00
Kalah 02c6eebb00 Merge pull request #88 from lucannez64/fix/x11-vrr
Fix Metal VSync and VRR presentation together
2026-10-19 13:00:57 +02:00
lucannez64 cf86cff688 Keep the merged X11 patch in canonical diff format 2026-10-19 13:00:24 +02:00
lucannez64 71efcdf5f6 Merge current main into the tested VSync and VRR fixes 2026-10-19 12:59:58 +02:00
lucannez64 86cfbb1fd0 Merge VSync and VRR fixes for combined testing 2026-10-19 12:15:09 +02:00
Kalah acd54d8d4d Merge pull request #96 from lucannez64/fix/nsopenpanel-close
Fix NSOpenPanel Open/Cancel not closing the panel (fixes #85)
2026-10-19 09:35:43 +02:00
lucannez64andClaude Sonnet 5.5 9efaf4fb8e Openpanel probe: expand the tree to the subfolder before selecting, print selection diagnostics
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-19 09:33:30 +02:00
lucannez64andClaude Sonnet 5.5 092c454699 Fix openpanel probe: keep trigger note and panel alive across modal pools
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-19 09:28:34 +02:00
lucannez64andClaude Sonnet 5.5 15b1c49d02 Add standalone NSOpenPanel Open/Cancel probe for issue #85
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-19 09:19:42 +02:00
lucannez64andClaude Sonnet 5.5 caec5f1dce Make NSOpenPanel Open/Cancel always end the modal session
Open with no row selected passed nil to -_setFilename:, and NSOpenPanel boxed it in an
array literal, so the action threw before the modal session was stopped and the panel
stayed up. Both buttons now go through one helper that stops the session only when
this panel is the modal window and always orders the panel out; Open accepts the
selection (filtered by canChooseFiles/canChooseDirectories and multiple-selection),
or the shown directory for directory choosers. Escape cancels.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-19 08:49:04 +02:00
Kalah fe892961ab Merge pull request #89 from lucannez64/fix/splash-stays-mapped
Keep hidden X11 windows unmapped
2026-10-19 08:25:12 +02:00
lucannez64andClaude Sonnet 5.5 6a3f81cd3f Keep hidden X11 windows unmapped
Restack and makeKey no longer map a window AppKit considers hidden, and
setIsVisible: NO always unmaps, so the client's splash stays hidden.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-19 08:00:41 +02:00
Kalah a35aecb3ec Merge pull request #87 from ekisu/fix/cocoa-window-decorations
Fix client-side window decorations and LeagueClient header dragging
2026-10-19 07:43:05 +02:00
Kalah 34d7d4aeb8 Merge branch 'main' into fix/cocoa-window-decorations 2026-10-19 07:40:37 +02:00
lucannez64 99cd0f038d Present full-window Metal layers on the managed X11 surface for VRR 2026-10-19 07:35:16 +02:00
Kalah f20bb9cec4 Merge pull request #77 from lucannez64/fix/overview-stuck-super
X11: release modifiers swallowed by the GNOME overview (#74)
2026-10-19 07:17:06 +02:00
Kalah ead486fcc7 Merge branch 'main' into fix/overview-stuck-super 2026-10-19 07:13:28 +02:00
ekisu c451834cc2 Recompile NSEvent in incremental AppKit runtime builds 2026-10-19 01:15:32 -03:00
ekisu 956f1a156d Implement Cocoa local event monitors for native client dragging 2026-10-19 01:15:03 -03:00
ekisu cae74e9e0c Fix X11 decorations for client-drawn Cocoa windows
Synchronize Motif decoration hints on style and titlebar-property changes, including native-window recreation and restoring ordinary WM decorations. Add a ten-case standalone Cocoa/X11 regression probe and document validation on KWin/Xwayland.
2026-10-18 21:06:22 -03:00
lucannez64 3142128575 Fix Metal VSync propagation to window swap intervals 2026-10-19 01:10:03 +02:00
Kalah bcb3245e56 Merge pull request #80 from lucannez64/fix/rootless-update-test
Fix rootless update test after the shared-identity step
2026-10-19 01:00:21 +02:00
lucannez64andClaude Opus 5.5 d6829e8201 tests: expect the shared-identity step at the end of rootless update
#79 made update.sh stop Darling again after the overlays and run
configure-darling-platform.py --replace-known-defaults --write. The
rootless update test still expected the old call list and failed. Stub the
identity tool, expect the stop + identity calls last, and check a failed
install never reaches them.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-19 00:58:45 +02:00