diff --git a/_posts/releases/2025-01-18-v2025.118.151840.md b/_posts/releases/2025-01-18-v2025.118.151840.md
new file mode 100644
index 00000000..810722a1
--- /dev/null
+++ b/_posts/releases/2025-01-18-v2025.118.151840.md
@@ -0,0 +1,127 @@
+---
+layout: release
+title: Sunshine v2025.118.151840 Released
+gh-repo: LizardByte/Sunshine
+gh-badge: [follow, fork, star]
+tags: [release, sunshine]
+comments: true
+author: LizardByte-bot
+---
+
+## Attention
+
+This release contains critical security updates. For more information see
+[GHSA-3hrw-xv8h-9499](https://github.com/LizardByte/Sunshine/security/advisories/GHSA-3hrw-xv8h-9499).
+Please update as soon as possible!
+
+This release also contains many new features and bug fixes, including:
+
+- Implemented automatic resolution and HDR mode changing on Windows.
+- Implemented YUV 4:4:4 encoding support for Intel and NVIDIA GPUs on Windows.
+- Implemented automatic discovery support for macOS hosts.
+- Added support for capturing displays other than the main display on macOS.
+- Added support for emulating DS5, Nintendo Switch Pro, and Xbox One controllers on Linux.
+- Removed the limit on concurrent streaming sessions.
+- Eliminated the need for driver patching to use NvFBC capture on Linux.
+- Significantly reduced CPU usage for encoding when using AMD GPUs (RDNA or later) on Windows.
+- Fixed video traffic timeout error when streaming from a Hyper-V VM using GPU Paravirtualization.
+- Fixed inability to stream from a Windows machine when using the Microsoft Basic Display Adapter driver.
+- Optimized internal frame handling by eliminating redundant data copies and using functions optimized for SSSE3,
+ AVX2, and AVX512.
+- Implemented flow control to reduce the chance of dropped packets by overwhelmed routers or network switches.
+- Reworked the video encoding rate control logic for VA-API to improve bitrate efficiency on Linux.
+- New capture method using Windows.Graphics.Capture API on Windows.
+ This is an experimental feature and requires running Sunshine manually.
+ It is not compatible with running Sunshine as a service.
+- Clients can now be named and unpaired individually.
+- The web UI now supports dark mode.
+- Checkboxes replace select menus for boolean settings in the web UI.
+- RestAPI improvements.
+
+For a more comprehensive list of user-facing changes, see below.
+
+## What's Changed
+* feat(macos/capture): support for capture display other than main display by [@TimmyOVO](https://github.com/TimmyOVO) in [#2449](https://github.com/LizardByte/Sunshine/pull/2449)
+* fix(macos/input): incorrect mouse input for non-main display by [@TimmyOVO](https://github.com/TimmyOVO) in [#2461](https://github.com/LizardByte/Sunshine/pull/2461)
+* webui: Update resolution automation example text with auto refresh rate by [@cgarst](https://github.com/cgarst) in [#2503](https://github.com/LizardByte/Sunshine/pull/2503)
+* fix(linux): add frame processing latency and logging improvements by [@gschintgen](https://github.com/gschintgen) in [#2502](https://github.com/LizardByte/Sunshine/pull/2502)
+* AppImage: add needed VA-API libraries (Intel & AMD) by [@gschintgen](https://github.com/gschintgen) in [#2429](https://github.com/LizardByte/Sunshine/pull/2429)
+* Allow a custom FFmpeg build to be provided using CMake variables by [@chewi](https://github.com/chewi) in [#1970](https://github.com/LizardByte/Sunshine/pull/1970)
+* Fix log message for Periodic Ping by [@c3m3gyanesh](https://github.com/c3m3gyanesh) in [#2538](https://github.com/LizardByte/Sunshine/pull/2538)
+* feat(ui): Dark Mode by [@Hazer](https://github.com/Hazer) in [#2493](https://github.com/LizardByte/Sunshine/pull/2493)
+* build(win): use UCRT64 environment instead of MinGW64. by [@tez011](https://github.com/tez011) in [#2323](https://github.com/LizardByte/Sunshine/pull/2323)
+* feat(win): new capture method, Windows.Graphics.Capture by [@tez011](https://github.com/tez011) in [#2580](https://github.com/LizardByte/Sunshine/pull/2580)
+* Name and unpair individual clients by [@xanderfrangos](https://github.com/xanderfrangos) in [#2042](https://github.com/LizardByte/Sunshine/pull/2042)
+* feat(audio): custom surround-params by [@mariotaku](https://github.com/mariotaku) in [#2424](https://github.com/LizardByte/Sunshine/pull/2424)
+* Remove the need for a patched nvidia library for NvFBC. by [@hgaiser](https://github.com/hgaiser) in [#2471](https://github.com/LizardByte/Sunshine/pull/2471)
+* build(linux): add homebrew support by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#2667](https://github.com/LizardByte/Sunshine/pull/2667)
+* fix(macos): Mouse input broken in-game by [@Hazer](https://github.com/Hazer) in [#2550](https://github.com/LizardByte/Sunshine/pull/2550)
+* feat(input/linux): add support for more virtual input devices by [@Hazer](https://github.com/Hazer) in [#2606](https://github.com/LizardByte/Sunshine/pull/2606)
+* fix(linux/input): battery values conversion by [@ABeltramo](https://github.com/ABeltramo) in [#2715](https://github.com/LizardByte/Sunshine/pull/2715)
+* feat: add min_fps_target setting by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#1043](https://github.com/LizardByte/Sunshine/pull/1043)
+* fix(upnp): support newer miniupnpc library by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#2782](https://github.com/LizardByte/Sunshine/pull/2782)
+* macOS: New implementation of service publication by [@cathyjf](https://github.com/cathyjf) in [#2786](https://github.com/LizardByte/Sunshine/pull/2786)
+* build(linux): drop support for AUR by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#2819](https://github.com/LizardByte/Sunshine/pull/2819)
+* Implement basic network flow control by [@ns6089](https://github.com/ns6089) in [#2803](https://github.com/LizardByte/Sunshine/pull/2803)
+* Provide SSSE3, AVX2, and AVX512 optimized Reed-Solomon functions by [@cgutman](https://github.com/cgutman) in [#2828](https://github.com/LizardByte/Sunshine/pull/2828)
+* Eliminate a redundant alloc+copy of each frame by [@cgutman](https://github.com/cgutman) in [#2852](https://github.com/LizardByte/Sunshine/pull/2852)
+* Implement S/G IO for non-batched sends and eliminate more data copies by [@cgutman](https://github.com/cgutman) in [#2867](https://github.com/LizardByte/Sunshine/pull/2867)
+* Implement S/G IO for batched sends and eliminate another frame copy by [@cgutman](https://github.com/cgutman) in [#2874](https://github.com/LizardByte/Sunshine/pull/2874)
+* Migrate audio pipeline to float from 16-bit integer by [@ns6089](https://github.com/ns6089) in [#2873](https://github.com/LizardByte/Sunshine/pull/2873)
+* Handle CTRL_CLOSE_EVENT on Windows by [@ns6089](https://github.com/ns6089) in [#2952](https://github.com/LizardByte/Sunshine/pull/2952)
+* feat!: drop advertised resolutions and fps by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#2924](https://github.com/LizardByte/Sunshine/pull/2924)
+* fix(linux): ensure NvFBC capture works after multiple sessions by [@insanemal](https://github.com/insanemal) in [#3020](https://github.com/LizardByte/Sunshine/pull/3020)
+* feat(win/video): support native YUV 4:4:4 encoding by [@ns6089](https://github.com/ns6089) in [#2533](https://github.com/LizardByte/Sunshine/pull/2533)
+* fix(linux): enable lowlatency mode for AMD by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#3088](https://github.com/LizardByte/Sunshine/pull/3088)
+* fix(nvhttp): wrap TLS socket to ensure graceful closure by [@cgutman](https://github.com/cgutman) in [#3077](https://github.com/LizardByte/Sunshine/pull/3077)
+* fix(mdns): don't hardcode mDNS instance name by [@cgutman](https://github.com/cgutman) in [#3084](https://github.com/LizardByte/Sunshine/pull/3084)
+* fix(win/video): don't offload chroma subsampling math to texture sampler when downscaling by [@ns6089](https://github.com/ns6089) in [#3014](https://github.com/LizardByte/Sunshine/pull/3014)
+* build(cmake): Prioritize vendored includes over system-wide by [@jmou](https://github.com/jmou) in [#3182](https://github.com/LizardByte/Sunshine/pull/3182)
+* fix(macos): Touch input broken by [@BayLee4](https://github.com/BayLee4) in [#3240](https://github.com/LizardByte/Sunshine/pull/3240)
+* fix(video): encode at least one frame before capture reinit by [@cgutman](https://github.com/cgutman) in [#3300](https://github.com/LizardByte/Sunshine/pull/3300)
+* fix: Reverse Proxy support by [@Degot](https://github.com/Degot) in [#3173](https://github.com/LizardByte/Sunshine/pull/3173)
+* feat(stream)!: remove limit on concurrent sessions and allow quitting apps with active sessions by [@cgutman](https://github.com/cgutman) in [#3325](https://github.com/LizardByte/Sunshine/pull/3325)
+* fix(nvenc): disable filler data in AV1 bitstream by [@cgutman](https://github.com/cgutman) in [#3336](https://github.com/LizardByte/Sunshine/pull/3336)
+* feat(vaapi): add option to enable strict enforcement of frame size by [@cgutman](https://github.com/cgutman) in [#3332](https://github.com/LizardByte/Sunshine/pull/3332)
+* fix(macos): prevent indefinite hanging if screen capture is not granted by [@cathyjf](https://github.com/cathyjf) in [#3360](https://github.com/LizardByte/Sunshine/pull/3360)
+* fix(process): avoid leaking zombies and fds in detached processes by [@cgutman](https://github.com/cgutman) in [#3379](https://github.com/LizardByte/Sunshine/pull/3379)
+* fix(hostname): fix handling of non-ASCII hostnames on Windows by [@cgutman](https://github.com/cgutman) in [#3382](https://github.com/LizardByte/Sunshine/pull/3382)
+* feat(display)!: Add libdisplaydevice dependency and output name mapping by [@FrogTheFrog](https://github.com/FrogTheFrog) in [#2894](https://github.com/LizardByte/Sunshine/pull/2894)
+* fix(nvenc): Enable opt-in client refresh by client by [@TheElixZammuto](https://github.com/TheElixZammuto) in [#3415](https://github.com/LizardByte/Sunshine/pull/3415)
+* fix(shaders/directx): replace modulus with bitwise operator by [@iMakeSoftware](https://github.com/iMakeSoftware) in [#3499](https://github.com/LizardByte/Sunshine/pull/3499)
+* feat(display): Configure display device based on user config by [@FrogTheFrog](https://github.com/FrogTheFrog) in [#3441](https://github.com/LizardByte/Sunshine/pull/3441)
+* fix(confighttp): do not return 200 on errors by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#3385](https://github.com/LizardByte/Sunshine/pull/3385)
+* feat(display): add display mode remapping option by [@FrogTheFrog](https://github.com/FrogTheFrog) in [#3529](https://github.com/LizardByte/Sunshine/pull/3529)
+* fix(capture/windows): fix capture when using the basic render driver by [@cgutman](https://github.com/cgutman) in [#3531](https://github.com/LizardByte/Sunshine/pull/3531)
+* feat(capture/windows): hook APIs to avoid output reparenting that breaks DDA by [@cgutman](https://github.com/cgutman) in [#3530](https://github.com/LizardByte/Sunshine/pull/3530)
+* fix(checkbox): inverse global prep values for apps by [@FrogTheFrog](https://github.com/FrogTheFrog) in [#3547](https://github.com/LizardByte/Sunshine/pull/3547)
+
+## New Contributors
+* [@TimmyOVO](https://github.com/TimmyOVO) made their first contribution in [#2449](https://github.com/LizardByte/Sunshine/pull/2449)
+* [@cgarst](https://github.com/cgarst) made their first contribution in [#2503](https://github.com/LizardByte/Sunshine/pull/2503)
+* [@skryvel](https://github.com/skryvel) made their first contribution in [#2514](https://github.com/LizardByte/Sunshine/pull/2514)
+* [@c3m3gyanesh](https://github.com/c3m3gyanesh) made their first contribution in [#2538](https://github.com/LizardByte/Sunshine/pull/2538)
+* [@BeeLeDev](https://github.com/BeeLeDev) made their first contribution in [#2555](https://github.com/LizardByte/Sunshine/pull/2555)
+* [@xanderfrangos](https://github.com/xanderfrangos) made their first contribution in [#2042](https://github.com/LizardByte/Sunshine/pull/2042)
+* [@hgaiser](https://github.com/hgaiser) made their first contribution in [#2471](https://github.com/LizardByte/Sunshine/pull/2471)
+* [@cathyjf](https://github.com/cathyjf) made their first contribution in [#2786](https://github.com/LizardByte/Sunshine/pull/2786)
+* [@cfalas](https://github.com/cfalas) made their first contribution in [#2841](https://github.com/LizardByte/Sunshine/pull/2841)
+* [@insanemal](https://github.com/insanemal) made their first contribution in [#3020](https://github.com/LizardByte/Sunshine/pull/3020)
+* [@jmou](https://github.com/jmou) made their first contribution in [#3183](https://github.com/LizardByte/Sunshine/pull/3183)
+* [@BayLee4](https://github.com/BayLee4) made their first contribution in [#3240](https://github.com/LizardByte/Sunshine/pull/3240)
+* [@andygrundman](https://github.com/andygrundman) made their first contribution in [#3294](https://github.com/LizardByte/Sunshine/pull/3294)
+* [@midwesternrodent](https://github.com/midwesternrodent) made their first contribution in [#3287](https://github.com/LizardByte/Sunshine/pull/3287)
+* [@caveat-makes-software](https://github.com/caveat-makes-software) made their first contribution in [#3264](https://github.com/LizardByte/Sunshine/pull/3264)
+* [@Degot](https://github.com/Degot) made their first contribution in [#3173](https://github.com/LizardByte/Sunshine/pull/3173)
+* [@soerenkampschroer](https://github.com/soerenkampschroer) made their first contribution in [#3348](https://github.com/LizardByte/Sunshine/pull/3348)
+* [@davidemarcoli](https://github.com/davidemarcoli) made their first contribution in [#3356](https://github.com/LizardByte/Sunshine/pull/3356)
+* [@MiroKaku](https://github.com/MiroKaku) made their first contribution in [#3416](https://github.com/LizardByte/Sunshine/pull/3416)
+* [@petrhanak](https://github.com/petrhanak) made their first contribution in [#3490](https://github.com/LizardByte/Sunshine/pull/3490)
+* [@iMakeSoftware](https://github.com/iMakeSoftware) made their first contribution in [#3499](https://github.com/LizardByte/Sunshine/pull/3499)
+* [@Gurubaseio](https://github.com/Gurubaseio) made their first contribution in [#3466](https://github.com/LizardByte/Sunshine/pull/3466)
+
+**Full Changelog**: https://github.com/LizardByte/Sunshine/compare/v0.23.1...v2025.118.151840
+
+---
+## Contributors
+



































