Skip to content

Releases: xt0n1-t3ch/DLSSync

DLSSync v1.7.0

Choose a tag to compare

@xt0n1-t3ch xt0n1-t3ch released this 20 Sep 22:01
63db7a0

Standard (recommended for GitHub users)

Standard includes the app updater. Portable mode uses manual executable replacement.

NexusBuild (manual network actions)

NexusBuild has no app updater. Network actions require an explicit user action.

Common source commit: 63db7a016ed5e7a34e0b67ada4a12c2264e6f435

Signatures

These Windows files are not Authenticode-signed. Windows shows an unknown-publisher warning on first run. That warning is correct, and this release does not ask you to turn off SmartScreen, Windows Defender or any other protection.
Verify the exact file you downloaded against SHA256SUMS.txt before you run it.
The Standard updater payload still carries its Tauri Ed25519 signature in latest.json. That signature protects the update payload; it is not a Windows publisher signature.
DLSSync still verifies the Authenticode publisher of every game DLL it downloads. That check is unchanged by this release's own signature state.

DLSSync 1.7.0 is a Windows 10/11 x64 release. Standard and NexusBuild packages are built from one source commit under a single v1.7.0 tag. Standard carries the app updater; NexusBuild performs no automatic network request. Read the signature statement in the release notes before you run an installer.

Added

  • Searchable local Windows device inventory with exact PnP identities and reported device problems.
  • DLSS Ray Reconstruction profile overrides that use the NVIDIA-documented Ray Reconstruction enable and forced-preset driver settings.
  • DLSS 2, 3, 4 and 5 capability reporting by NVIDIA GPU architecture, driver version, supported presets and frame-generation multipliers.
  • Installed NVIDIA profile API and supported setting IDs are probed separately from in-game effects. Profile writes and resets are confirmed with a fresh read.
  • Local mod previews, installation, settings and removal backed by durable per-installation receipts. A preview expires after five minutes and can be used once.
  • Mod ownership, retained files and unverified compatibility appear as separate statements in game details, in all eight locales.
  • Append-only SQLite operation journal for catalog refreshes, update preparation, applies, rollbacks, scans and driver actions, with filters, a dedicated Journal view and redacted JSON export.
  • dlssync-cli with status, scan, catalog status, catalog refresh, plan, confirmed apply, confirmed rollback, journal list, journal export and doctor, in human-readable or --json output.
  • dlssync-application, dlssync-contracts, operation-journal and xtask owners, so the desktop app and the CLI use the same policies instead of Tauri-local logic.
  • Generated, versioned Rust-to-TypeScript contract bindings with drift and architecture gates.
  • Feature-sliced frontend boundaries, deterministic development-only preview fixtures and strict ESLint.
  • Nexus distribution packaging and its verification script.

Changed

  • A game update stays one click. DLSSync resolves the exact files, target versions, source, expected hash and expected Authenticode publisher before it writes anything, and it stops the update when the catalog changes between preparation and apply.
  • Game details open in a centered, opaque, responsive dialog. Local packages moved to Advanced.
  • An installed file is labeled as a catalog release only when its scanned hash matches that release.
  • Library uses one artwork-led grid with the original game poster art, and keeps compact and list alternatives. Search opens in an opaque panel anchored to the top-bar search control.
  • Catalog is organized around the main technologies, with separately versioned support libraries and other vendors in disclosures. Package versions are separate from version counts.
  • Backups leads with the view title and an overflow menu for secondary actions. The summary dashboard, the subtitle and the counts legend are gone; search, game and date grouping, per-game groups and the missing or unverified warnings remain, and those warnings appear only when the count is not zero.
  • Narrow windows use a compact navigation rail. Scroll areas use a compact theme-aware scrollbar without stepper arrows, and fall back to the system scrollbar in forced-colors mode.
  • Settings controls are aligned, the GPU driver layout is clearer, and Windows device rows are compact while keeping the observed device data.
  • Detected GPU vendors, including hybrid systems, are prioritized in game details, catalog browsing, default update selections and background updates. Other libraries stay available for explicit selection, and nothing is auto-selected when the hardware is unknown.
  • Catalog schema version 2 or 3, freshness, future-clock and minimum-driver requirements are enforced before an update is applied.
  • The signed v3 catalog is published while the v2 endpoint keeps working for existing clients.
  • Catalog entries record actual DLL versions, package versions, exact archive entries, SHA-256 and observed signature status as separate fields, preserve historical MD5 records explicitly and keep per-source failure and freshness information.
  • Current FidelityFX runtimes resolve from immutable SDK commits, with a verified archive cache.
  • x64 vendor artifacts are selected and their PE identity is verified before any file is replaced.
  • The Nexus build compiles without the updater dependency and makes no automatic application-update or catalog request. Opening Catalog, starting the app or restoring focus performs no network refresh; an explicit Refresh Catalog fetches the current signed upstream manifest. Nexus assets stay out of latest.json.
  • Portable archives include portable.flag. Settings, catalog, backups, logs and journal resolve under <exe>\data, and automatic application updates stay disabled.
  • product.toml owns product identity, repositories, URLs, distribution capabilities and the portable marker. The workspace package version owns 1.7.0.
  • GitHub source and signed-manifest links are visible in every distribution, while Nexus updater behavior stays disabled.
  • GPU driver detection prioritizes PCI identities, refreshes cached system data after an external change, and keeps AMD branch tables and Intel operating-system targeting explicit.
  • Command arguments, results, errors and events are generated from the Rust signatures.
  • Development startup works again with coordinated Vite, Svelte and Node updates.
  • The release workflow builds the Standard channel with the pinned Tauri CLI directly, so the Cargo separator survives and --no-default-features reaches Cargo instead of the Tauri CLI, which has no such option. Nexus already used this invocation.
  • Portable archive instructions state that settings, catalog, backups, logs and journal live under .\data beside the executable.

Removed

  • The Trust Center screen and its supply-chain dashboard. Ed25519 catalog verification continues in the backend and still refuses an unverified catalog.
  • The unused legacy auto-apply-after-rescan control. Its serialized field stays compatible, and the background auto-apply workflow remains available.

Fixed

  • Steam scans retain previously observed games when one configured library root is temporarily unavailable.
  • Download clients honor the saved connection timeout after startup and settings changes.
  • Post-update observation preserves launcher identity, failed driver installs keep their retry candidate, and local package ownership comparisons follow Windows path casing rules.
  • Local package targets can create missing nested parent directories, while backup restores reject normalized paths outside the configured backup root.
  • The WebView2 E2E harness reports early app exits, waits for real scan completion, closes owned flyouts, and uses unambiguous driver-list assertions.
  • Vitest and its V8 coverage provider are aligned at 4.1.11. The resolved frontend and Rust dependency updates include nanoid 3.3.19, brace-expansion 5.0.12, devalue 5.9.4, quinn-proto 0.11.16 and serde_with 3.21.0.
  • Vendor marks and explicit backup-row columns are restored, backup entry grid placement and responsive text width are corrected, and the game-detail grid is correct after the decorative feature icons were removed.
  • Nexus-only Cargo flags reach Cargo, and the build-time capability is derived without the Standard updater permission.
  • Windows driver updates match exact PnP hardware IDs, installation targets are revalidated, per-package Windows Update Agent outcomes are checked, and active-version verification is reported separately.
  • Driver installation stops when a requested package export fails. Exported snapshot files are verified with SHA-256 before a restore, and a restore is marked complete only after a device-version readback.
  • Notification dismiss hover is separate from the notification body, and initial focus lands on the panel close control.
  • Vendor search results survive a refresh, and Library table details wrap without clipping technology labels.
  • View and density changes apply immediately, interface preference writes are serialized, and a late save response can no longer replace a newer selection.
  • Epic artwork resolves f...
Read more

DLSSync 1.6.9 — Nexus Mods build

Pre-release

Choose a tag to compare

@xt0n1-t3ch xt0n1-t3ch released this 17 Jun 05:25
2aba1a0

Nexus Mods compliant build of DLSSync 1.6.9. The full DLSS/FSR/XeSS/Streamline/DirectStorage/driver sync is intact; the application self-updater is removed and the signed DLL catalog is pinned to an immutable manifest commit, so the package meets Nexus Mods hosting rules.

This is a Nexus-specific build, published as a pre-release so it does not affect the standard auto-updating channel.

No application self-updater

  • The Tauri updater plugin is not built into the binary; the generated config has plugins.updater.active = false with no endpoints and no latest.json, and the capability file has no updater:default.
  • The frontend ships no app-updater code path and surfaces no GitHub/source links; updates are installed manually from Nexus Mods.

DLL download destinations are fixed

  • The signed catalog is pinned to an immutable commit (afc77c0da20834b616375a66338e70e113d64686), so destinations cannot change without a source change and a new release; release builds ignore the DLSSYNC_MANIFEST_URL override, and the on-disk cache is signature-verified on load.
  • Replacement DLLs are checked against expected SHA-256, vendor signatures are verified where applicable, files are staged, backups are kept, and rollback is available. No game injection, silent driver installs, binary patching, kernel hooks, or telemetry.

Assets

  • DLSSync_1.6.9_nexus_portable_x64.zip — portable build (recommended)
  • DLSSync_1.6.9_x64-setup.exe — NSIS installer
  • DLSSync_1.6.9_x64_en-US.msi — MSI installer

SHA-256

DLSSync_1.6.9_nexus_portable_x64.zip  fd5c916876188151373712681ce0f9ae50211f10f6716324a867dfff87f202d0
DLSSync_1.6.9_x64-setup.exe           c777fffc3aebd5e758a712acc214f961780c6486e664292a1ddda82e4c49aeb9
DLSSync_1.6.9_x64_en-US.msi           d4df35b7f8761a087bde75db6d2c3185bc7937b6d65362b9621d23dc98b6b820
target/nexus/tauri.conf.json          898efe6392f2903da8c5734aada537fafc6a4dd37aba128ea2269eac3b9d9724
target/nexus/default.capability.json  58b9133188f336cd1620b017bf37655b6f528ce575eb1a13c517ce73974430cb

Source: commit 2aba1a024ae56f0c1a9fcea8fa2c293fc7dbb42d (tag nexus-build-1.6.9). Build + verification: docs/nexus-build.md.

DLSSync v1.6.9

Choose a tag to compare

@github-actions github-actions released this 12 Jun 23:27

The integrity-hardening release. This is the public v1.6.9 line for the v1.6.8 mouse side-button navigation polish plus the security/integrity follow-up: it closes the active esbuild Dependabot advisory without forcing a risky frontend framework migration, restores the generated manifest/schema contract that was breaking the hourly DLSSync-Manifest pipeline, and tightens the release docs around the signed catalog path.

Added

  • Shipped the v1.6.8 mouse side-button navigation polish in the public v1.6.9 build: button 3 moves back through DLSSync app state and button 4 restores the next state when one exists.

Security

  • Forced the transitive esbuild toolchain dependency to 0.28.1, the patched line for GHSA-gv7w-rqvm-qjhr, through the root package.json pnpm override instead of leaving Vite/Vitest on a vulnerable binary resolver.
  • Kept the signed manifest contract strict: empty dynamic anti-cheat binary rows are no longer serialized into the generated public catalog, preventing schema drift from breaking the manifest publisher.

Changed

  • Release metadata, README, docs, and test index now point at v1.6.9 as the current security/integrity line.
  • The production frontend build now targets the Tauri WebView2 baseline directly instead of falling back to Safari when TAURI_PLATFORM is absent.
  • The anti-cheat docs now document how optional manifest binary signatures layer over the static detector without emitting an empty field.

Fixed

  • The hourly DLSSync-Manifest workflow no longer receives a generated anti_cheat_binaries: [] field that the public schema rejects.
  • Patched esbuild no longer tries to downlevel the Svelte runtime to an irrelevant Safari target during standalone frontend builds.

DLSSync v1.6.7

Choose a tag to compare

@github-actions github-actions released this 11 Jun 02:22
cd7fff9

The vendor-parity, trust, and color release. AMD one-click driver install works now — it was quietly broken before. The catalog is cryptographically enforced: a tampered manifest is rejected, and an offline first run still loads a signed catalog instead of a blank screen. Two full security passes closed holes around the driver installer, backup restore, elevated restores, and downloads. FSR and XeSS now update as coherent multi-DLL sets in one atomic click — with a hardware gate so FSR 4 is never pushed onto a GPU that can't run it. And the whole interface learned to speak in color: vendor-brand tech badges, a status hero in the Library, traffic-light state everywhere, and game art that tints the app around it.

Security

  • Manifest signatures are now enforced. A catalog whose Ed25519 signature does not verify is refused, and the app falls back to the last trusted copy on disk or a signed manifest bundled in the app — so a CDN hiccup or a tampered file can never feed you the wrong DLLs, and an offline first run still works.
  • Closed an argument-injection path: the value passed to the elevated (Administrator) driver installer is now strictly validated and quoted, so a crafted update id cannot smuggle extra flags into the elevated process.
  • Backup restore is fenced in. It refuses to write outside the backup store, through a symlink, or onto a system file, and it verifies the backup's hash before restoring.
  • Driver downloads only happen from official NVIDIA, AMD, and Intel domains. An arbitrary download URL is rejected.
  • Hardened the rest of the surface: notification links are sanitized to known hosts, scan targets can't be pointed at your whole drive, the catalog download can't be tricked into a giant allocation, and every CI action is pinned to an exact commit.
  • The elevated system-driver restore validates and safely quotes its backup path before the Administrator helper sees it, and it refuses paths outside the backup store or through symlinks.
  • The driver installer is downloaded into a randomized staging folder and verified-then-launched from that same path, closing the window where a local attacker could swap the file between the check and the run.
  • Every download now has a hard total-size cap and an overall deadline, so a misbehaving server can't slowly stream gigabytes into your disk or stall an install forever.
  • DLL paths arriving from the interface are re-checked at the apply boundary — extension, location, and system directories — before any file is touched, and a driver whose signature chain skipped revocation checking is labeled instead of silently trusted.

Added

  • AMD one-click driver install. DLSSync now resolves the real Adrenalin installer for your card's branch and installs it — previously the AMD path had no installer link and silently failed.
  • NVIDIA Standard-vs-DCH driver detection, so the small set of users on Standard drivers stop being handed a DCH installer that won't take.
  • Intel drivers now match your Windows version, so a Windows 10 machine is never offered a Windows 11-only package.
  • Silent driver installs for NVIDIA and Intel — a routine update no longer pops the full vendor installer wizard.
  • A bundled NVIDIA GPU database and the signed fallback catalog, so driver lookups and the catalog both keep working if a source is briefly unreachable.
  • Anti-cheat detection can pick up new or renamed engines from a catalog refresh, instead of waiting for an app update.
  • Unrecognized GPUs now get vendor-neutral recommendations (XeSS, DirectStorage, Reflex, Streamline) instead of nothing.
  • One-click FSR and XeSS set updates. AMD's FSR and Intel's XeSS ship as matched multi-DLL sets (loader, upscaler, frame generation), and swapping only one member breaks games — DLSSync now updates the whole set as a single atomic transaction from the game panel: all files succeed together or everything rolls back.
  • An FSR 4 hardware gate. FSR 4 upscaling only runs on AMD RDNA4 cards (Radeon RX 9000 series); on anything else the set action is locked with an explanation instead of letting you install DLLs the GPU can't use — checked in the interface and enforced again in the backend.
  • Reverted-swap detection. When a game update quietly rolls your swapped DLL back to the old version, DLSSync notices on the next scan and raises a notification — the game shows as outdated again and one click (or background auto-apply) re-applies your version.
  • A "Managed by NVIDIA App" notice in the game panel when NVIDIA's own per-game DLSS override is active and DLSSync has no preferences for that game, so the two tools never silently fight over the same files.
  • A Library status hero: the pending-update count as a big color-coded numeral, a bar segmented by vendor so you see at a glance whose tech needs updating, and Games / Up to date / Protected counters (Protected = games with restore points).
  • A driver health summary strip at the top of Drivers — one chip per GPU with a status dot, plus a system-components chip — and a DLSS preset recommendation matched to your GPU generation (Preset K for RTX 20/30; K plus L/M Performance presets for RTX 40/50).
  • Catalog freshness at a glance: the manifest timestamp is green when fresh, amber when the feed has gone stale.

Changed

  • Library cleanup: one primary Apply action instead of three competing buttons, per-game tech badges that highlight what's outdated versus up to date, a shortcut to reveal hidden games, and a designed cover for games with no art.
  • The game detail panel was split into focused pieces (hero, feature list, action bar). The footer buttons are labeled, the selection checkboxes show a keyboard focus ring, and the scrollbar appears on hover so long feature lists are obviously scrollable.
  • Per-game DLSS presets are keyed to the full executable path, so two games that share an executable name no longer share each other's overrides.
  • Every dialog now traps keyboard focus and restores it on close, with the correct screen-reader roles.
  • The background scan holds its cadence instead of drifting later each day on a slow machine.
  • Settings, Drivers, Backups, About, and Catalog each got a pass for clearer grouping, copy, and progressive disclosure.
  • The interface speaks in color now. Tech badges carry their vendor's brand color (NVIDIA green, AMD red, Intel blue, Microsoft purple) with contrast-checked inks in both themes; state dots mark outdated (amber), current (green), and anti-cheat (red); counters and numerals are toned by meaning instead of all reading gray.
  • The focused game's cover art now tints the app backdrop with its dominant color — a subtle radial accent that follows what you're looking at, calmer in light mode, and still when you've asked Windows for reduced motion.
  • Accessibility pass across all six views: every checkbox and toggle has a real accessible name, game cards and list rows are keyboard-reachable without nested-button traps, each game-panel row has a visible "More actions" button as the keyboard twin of right-click, and axe reports zero critical or serious issues in both themes.
  • The end-to-end test suite now runs against an isolated data directory, so a test run can never touch your real library, settings, or backups.

Fixed

  • Pinned DLLs no longer show up as "outdated" in the library, sidebar, and Apply-all count.
  • A background auto-apply that lands while you're applying updates by hand no longer wipes the progress modal.
  • Efficiency mode stays off until you turn it on — it used to enable itself on a first run.
  • The catalog cache survives a power loss mid-write instead of blanking the library on the next launch.
  • The notification vendor logos and CDN routing now agree on one source of truth per technology, and a Spanish notification typo was corrected.
  • The DLSSync logo chip rendered as a dark blob in light mode; it now follows the theme.
  • The Drivers view showed raw translation keys for the system-components summary, and About's "What's New" leaked the date into the first line — both fixed, in English and Spanish.
  • About's header buttons overflowed the window at narrow widths instead of wrapping.
  • Cancelling an apply that fails now tells you instead of doing nothing; finished apply progress is pruned after a few minutes so a long tray session can't accumulate state forever; background scan ticks no longer race a manual apply or pop phantom "found games" toasts; and notification de-duplication is language-independent, so switching languages doesn't re-spam old notifications.
  • The app shell now owns scrolling consistently: long views keep an elegant token-styled scrollbar, the root window no longer exposes the default right-edge scrollbar, and the detail rail no longer fights the main content for scroll space.

DLSSync v1.6.6

Choose a tag to compare

@github-actions github-actions released this 07 Jun 09:44

Quality-of-life on the X button, the apply modal, and Backups. The X minimizes to the system tray for new installs while your saved choice still wins. The Apply Progress wall is gone: close the modal mid-apply, navigate to Catalog or About, then pick it back up from the activity dock. And the date-grouped Backups view divides itself into month headers, so months of history read at a glance instead of a flat scroll.

Added

  • A token-driven <CounterPill> component shared by every sidebar counter so the badges line up the same way everywhere.
  • Three intent-named sidebar groups (Library, Catalog & Drivers, History) plus the existing General. Same icons, same view names, clearer headers.
  • A bundle-size contract test that fails the build if the main JS chunk exceeds 250 KB gzip or the CSS exceeds 75 KB gzip.
  • A rotating chevron on the language switcher tied to aria-expanded so the menu state reads correctly to screen readers and to the eye.
  • A month header divides the Backups date-grouped view at every month boundary, so multi-month histories read at a glance instead of a long flat list.
  • An axe-core accessibility contract over the core components (CounterPill, BrandMark, Checkbox, Toast) that fails the build on any critical or serious WCAG violation.

Changed

  • Close-to-tray is on by default for new installs. An explicit false from a prior config is preserved — never silently re-enabled.
  • The Apply Progress modal can be closed while applies are still running. Click the X, hit Escape, or click outside, and it minimizes to the activity dock. The apply keeps going, the rest of the app is yours. A one-time hint shows you where the dock is the first time.
  • The apply pipeline's pure decisions (error classification, signature-error hinting, version-major parsing, the Streamline cross-major ban check, the failure-outcome shape) moved into their own module with a focused 14-test cargo suite. The 400-line apply hot path stays the orchestrator; the decisions get their own contract.
  • Driver history and Catalog versions flyouts share a <FlyoutShell> primitive now. Backdrop, dialog frame, vendor-accent routing, and the Escape-close behavior live in one place instead of repeated in each consumer.

Fixed

  • Two concurrent driver checks used to collect WMI/DXGI system info twice in parallel under a stale read-lock pattern. A coordinator now serializes the collection so it runs exactly once, and the cached value is reused.
  • Large DLL copies during apply no longer block the tokio runtime — every std::fs::copy is wrapped in spawn_blocking so download-progress emits, cancellation signals, and tray pings stay responsive even while the file copy runs.

DLSSync v1.6.5

Choose a tag to compare

@github-actions github-actions released this 03 Jun 13:49

DLSSync can keep your DLLs current on its own now — a background daemon that scans on a schedule, sits in the tray, and warns you before you touch a game that can ban you for it.

Added

  • Background updates. Turn it on and DLSSync rescans your library on a schedule (every 1 to 168 hours) even with the window closed, shows how many games have updates ready in the tray, and raises a Windows notification when something is waiting. It can close to the tray instead of quitting, start with Windows minimized, and apply everything in one click from the tray, the notification, or the Library header. Optional auto-apply always skips anti-cheat games and makes a backup first. Off by default.
  • A ban-risk warning at the moment you apply. Games protected by Easy Anti-Cheat, BattlEye, or Riot Vanguard now show a risk chip next to Apply and ask for one explicit confirmation before any DLL is replaced — the warning lands at the apply step, not buried in a panel.
  • Manifest signature verification (Ed25519) against a key baked into the app. Verification ships now; fail-closed enforcement is staged for a later release, once the signed manifest is live across the CDN.

Changed

  • Notification logos come from the component being updated, not a guess at the wording — so a DLSSync release no longer shows up wearing NVIDIA's logo, and an FSR or XeSS update wears the right one.
  • The close-to-tray and start-with-Windows switches moved into the new Background updates section; the Performance section keeps the efficiency (EcoQoS) toggle.
  • In release builds the catalog URL can no longer be redirected by an environment variable.

Fixed

  • Duplicate driver notifications are gone — dedup is enforced in the database instead of racing in memory — and the ones that had piled up are pruned the next time you launch. Apply notifications also stop being swallowed after the first one per game.
  • Authenticode checks validate the whole certificate chain for revocation, falling back only when the machine is offline.
  • ZIP extraction is bounded by the bytes actually written rather than a size the archive claims, a single failed download no longer poisons that file's cache for the rest of the session, a cancelled apply stops sooner, and a failed item in a batch now reports which one.
  • Updated the test runner to clear a security advisory.

DLSSync v1.6.4

Choose a tag to compare

@github-actions github-actions released this 03 Jun 00:44

A visual overhaul. The game detail panel, the library filters, and the About, Settings, and Backups pages were rebuilt, the whole app reads correctly in light mode, and notifications stop repeating themselves and start telling you something worth reading.

Added

  • A "DLL updates ready" notification that sums up what is waiting — "8 updates ready in 3 games" — and opens the Library when you click it, so you are not counting per game.

Changed

  • The game detail panel is part of the window now, not a card floating beside it. The title bar runs the full width with minimize, maximize, and close in the corner where they belong, the whole top edge drags the window, and the panel keeps a fixed header and footer so the cover, the anti-cheat warning, and the Apply button stay put while the rest scrolls. The thin line above the cover takes its color from the game's art.
  • Library filters went from two rows of scattered pills to two compact menus, Launcher and Status, that never wrap; sort, view, and density sit together on the right.
  • About, Settings, and Backups were redesigned for clearer hierarchy and tidier stat cards, and every tab shows one title instead of two.
  • Notifications carry the vendor's logo — NVIDIA, AMD, Intel, Microsoft — in place of a generic glyph.

Fixed

  • Light mode is legible everywhere. White text over a bright cover no longer washes out, and the version picker, command palette, and notifications no longer bleed the blurred cover art into a reddish smear behind the content.
  • The same "new driver available" alert was re-posted on every launch; identical notifications collapse to one now.
  • The command palette search box dropped its boxy focus outline, and the page title no longer appears twice at the top of every tab.

DLSSync v1.6.3

Choose a tag to compare

@github-actions github-actions released this 02 Jun 05:16

DLSSync speaks your language now, and it stops standing between you and the DLSS Enabler.

Added

  • Language support. The whole interface switches between English and Spanish from a globe button at the bottom of the sidebar, and your choice survives a restart. Every word on screen lives in a plain JSON file, so adding a language is a copy-and-rewrite job with no code and no build tools — there is a step-by-step guide for translators in docs/translations.md.

Fixed

  • Under a detected DLSS Enabler, DLSSync updates the Streamline plug-in set within the same major version again, instead of locking it as "Managed by Enabler". The Enabler needs Streamline 2.11 or newer but never updates Streamline itself, so the previous lock kept you from giving the Enabler the version it asks for. Same-major updates are offered again; a cross-major swap — your 2.x set jumping to the driver's 310.x line — is still blocked, because mixing majors crashes the game on launch. Raised on Nexus for Subnautica 2.

DLSSync v1.6.2

Choose a tag to compare

@github-actions github-actions released this 31 May 04:10

Two small additions to help DLSSync find its people: a support card you can turn off, and a Nexus Mods link in About.

Added

  • A support card. After an update succeeds, DLSSync may show a card in the bottom-left — star it on GitHub, endorse it on Nexus Mods, or share it with a friend. It blocks nothing and never disappears on a timer. Close it, or pick "Don't show again" to retire it for good. It comes back from Settings → General → Show the support card whenever you want it.
  • A "Help DLSSync grow" section in About, with a live GitHub star count, a Nexus Mods endorsement link, and a share button — plus a Nexus Mods link in the About header.

DLSSync v1.6.1

Choose a tag to compare

@github-actions github-actions released this 31 May 02:06

DLSSync updates NVIDIA's Streamline plug-ins, and reads them correctly across both of their version schemes. In modern games DLSS Frame Generation is two files — the NGX runtime nvngx_dlssg.dll on the 310.x line and the Streamline plug-in that drives it, sl.dlss_g.dll, on the 2.x line. The Streamline plug-ins update as a matched set from NVIDIA's own signed SDK, applied all-or-nothing, and only when your installed plug-in is on the same version line as the SDK — a driver-managed build is left alone, so your NVIDIA App overrides keep working.

Added

  • Update the Streamline plug-in set in one step. When a game ships NVIDIA's Streamline plug-ins — sl.dlss.dll, sl.dlss_g.dll, sl.dlss_d.dll, and the sl.interposer/sl.common/sl.pcl runtime — the game-detail page offers a single "Update Streamline set" action that swaps the whole matched set to one official SDK version. The plug-ins are version-locked: a half-updated set crashes the game on launch, so the update is atomic — every file installs, or the previous set is restored. The binaries come from NVIDIA's own signed SDK release at apply time, verified by Authenticode; DLSSync hosts nothing. Gated behind "NVIDIA Streamline plug-ins (advanced)" in Settings → Update preferences, and skipped for games a DLSS Enabler manages. NVIDIA's driver already updates these in many games, so this is for titles that ship with that turned off, a pinned version, or an offline machine.
  • The "Update Streamline set" action carries a note: updating Streamline can change how NVIDIA App global overrides apply, per-game overrides keep working, and you can restore the previous set from Backups.

Fixed

  • DLSSync no longer offers a bogus 310.x update for a 2.x Streamline plug-in. It reads which build each sl.* plug-in is — the GitHub SDK stamps the 2.x version, NVIDIA's driver stamps the 310.x version — and offers an update only when the installed plug-in is on the same line as the catalog (2.x) and older. A driver-managed 310.x plug-in is left untouched, which keeps NVIDIA App global preset and ratio overrides working. Reported on Nexus for Subnautica 2.
  • DLSS Enabler detection catches its strongest marker, nvngx-wrapper.dll, plus the enabler log and ASI loader, so a game it manages is recognized even when the older marker files are missing.
  • Under a detected DLSS Enabler, the genuine Streamline plug-ins (sl.interposer.dll, sl.common.dll, sl.pcl.dll, sl.reflex.dll) show a "Managed by Enabler" label and cannot be selected, matching the on-screen notice that DLSSync leaves them alone. They used to show an "Update" badge that apply would refuse anyway. The nvngx_* runtime DLLs still update.