惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cybersecurity and Infrastructure Security Agency CISA
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Martin Fowler
Martin Fowler
GbyAI
GbyAI
P
Palo Alto Networks Blog
N
Netflix TechBlog - Medium
C
Cisco Blogs
Microsoft Security Blog
Microsoft Security Blog
G
Google Developers Blog
A
About on SuperTechFans
PCI Perspectives
PCI Perspectives
Scott Helme
Scott Helme
TaoSecurity Blog
TaoSecurity Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
K
Kaspersky official blog
W
WeLiveSecurity
Y
Y Combinator Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
aimingoo的专栏
aimingoo的专栏
F
Fortinet All Blogs
有赞技术团队
有赞技术团队
人人都是产品经理
人人都是产品经理
月光博客
月光博客
N
News | PayPal Newsroom
Microsoft Azure Blog
Microsoft Azure Blog
G
GRAHAM CLULEY
爱范儿
爱范儿
The GitHub Blog
The GitHub Blog
MongoDB | Blog
MongoDB | Blog
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Know Your Adversary
Know Your Adversary
博客园 - Franky
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
F
Full Disclosure
V
Vulnerabilities – Threatpost
V
Visual Studio Blog
Forbes - Security
Forbes - Security
Attack and Defense Labs
Attack and Defense Labs
MyScale Blog
MyScale Blog
Hacker News: Ask HN
Hacker News: Ask HN
T
Tor Project blog

Arch Linux Forums

Gnome desktop mouse cursor zoom issues / Newbie Corner Avidemux crashes without strace / Applications & Desktop Environments how to apply patches with non-linux linends / Newbie Corner Replicating CachyOS on vanilla Arch (or at least getting close) / Arch Discussion What's arch linux GUI package manager ? / Newbie Corner Hibernation failing due to insufficient memory / System Administration profiledef.sh editting question / Installation trying to script kde plasma wallpaper settings / Programming & Scripting Looking for new Audacious package maintainer / Creating & Modifying Packages issues installing arch with LUKS2 encryption / Newbie Corner QEMU PXE booting does not work with OVMF.4m.fd / Applications & Desktop Environments Wired lan regular disconnect / Newbie Corner Need Help setting up ARCH in my G16 G634JZR iwlwifi started failing consistently, trying to determine root cause Windows randomly jumping between monitors after GNOME 50 update No display via DP or HDMI after boot. / Kernel & Hardware how to change acpi platform_profile? / Newbie Corner Linux denied all kernel modules which not loaded right now Use iPhone as Webcam for Arch Linux Video Output Failure on nvidia-580xx-dkms on TTY --> Desktop switch (Page 2) / Kernel & Hardware I was going to rant ..WINE32 Sabotage compliments of Arvind Krishna / Arch Discussion [SOLVED] LUKS drive auto unlocked by TPM when expected not to / Networking, Server, and Protection Hibernate/suspend from X = dark panel; from TTY = works (ASUS G14, hyb (Page 2) / Laptop Issues Headphone jack noise/buzz / Newbie Corner segmentation fault in cc1plus when building CLK / AUR Issues, Discussion & PKGBUILD Requests Console alternative to meld / GNU/Linux Discussion Problem with paru git clone / Newbie Corner XKB questions / Applications & Desktop Environments gnome-keyring-daemon is not working correctly / Applications & Desktop Environments [SOLVED] Steam opens and immediately closes constantly / Newbie Corner Firefox rounded edges on Sway / Applications & Desktop Environments on Linux arch 7.0.10-arch1-1 connection drops / Networking, Server, and Protection GDM does not open login screen after update / Newbie Corner Cinnamon (X11) fails to load after update (Page 2) / Applications & Desktop Environments fontconfig-2:2.18.x - broken fonts? (Page 2) / Applications & Desktop Environments Bluetooth headphones connect but don't auto-switch (alsa 1.2.16) / Multimedia and Games Audio breaks after every suspend/change of VT (Page 2) / Newbie Corner EFI stub: Warning: unable to unprotect memory range (Page 3) / Kernel & Hardware Keyboard problem with the french disposition / Newbie Corner Working with two network interfaces / Networking, Server, and Protection [SOLVED] Power spikes on laptop / Laptop Issues Problems with Qt? (Page 2) / Applications & Desktop Environments plasmashell 6.6.5 crashing on loop / Applications & Desktop Environments I'm worried / Newbie Corner Help! RTL8723BS "coalesce failed with error -22" after upgrade / Laptop Issues System notifications not working on any browser / Applications & Desktop Environments installing kernels with kernel-install / Community Contributions [SOLVED] Intel AX210 issue on linux=7.0.10 / Kernel & Hardware No longer booting after Windows 11 update / Installation *SOLVED* Two PC's but different boot times - Kernel 7.0? / Kernel & Hardware gnome-shell continuous clutter_input_focus_set_cursor_location msg / Pacman & Package Upgrade Issues google-chrome, vscode and spotify are ignore my fontconfig / Applications & Desktop Environments KDE6 Akonadi default database backend / Creating & Modifying Packages Support / Routing quirks for new Creative Sound Blaster AE-X (USB ID 0 / Kernel & Hardware Kernel Panic and system freezes with 4x16 DDR5 / Kernel & Hardware dm-crypt and SSDs / Newbie Corner Freeze after login whenever upgrading nvidia/kernel / Laptop Issues Blender crashes on startup when using Vulkan backend / Applications & Desktop Environments Top 5 MDM Solutions for Linux Devices in 2026 Elden Ring crash in sound initialisation / Multimedia and Games AUR connection issues (EOF/TLS errors) (Page 5) / AUR Issues, Discussion & PKGBUILD Requests GNOME freeze after login / Applications & Desktop Environments Bash is weird now / Newbie Corner Gif as KDE avatar / Applications & Desktop Environments Export in musescore / Applications & Desktop Environments Nvidia And Amd Drivers / Applications & Desktop Environments [SOLVED] How to get pavucontrol in dark mode? / Newbie Corner Startx does not work / Applications & Desktop Environments Coturn server installtaion / Applications & Desktop Environments Could not resolve Matrix-synapse dependency error / Applications & Desktop Environments Possible solution for mesa-amber build failure with glibc-2.43 / Multimedia and Games [SOLVED] Plymouth forces English (US) layout on boot / Newbie Corner [Solved]What should I use as license if the upstream repo has none? / AUR Issues, Discussion & PKGBUILD Requests The Official Hello Everyone Thread (Page 334) / Newbie Corner [SOLVED] EPSON ET-2710 printer only printing blank pages / Newbie Corner [SOLVED]Session crashes after login, booted back to sddm / Laptop Issues [SOLVED] Asus monitor suspend results in on/off cycling / Newbie Corner Ultrahuman Discount Code [SAVEULTRA] 10% Off For Existing Customers / Creating & Modifying Packages Ultrahuman Discount Code [SAVEULTRA] 10% Off – Verified Coupon for Exi / Arch Discussion New Ultrahuman Discount Code [SAVEULTRA] 2026 – Get 20% Extra OffToday / Programming & Scripting Ultrahuman Discount Code 2026 - "SAVEULTRA" - Get 20% Extra Off / Newbie Corner Sway keybinding stops working after sleep / Applications & Desktop Environments QEMU SPICE how to achieve bidirectional clipboard with Sway? / Applications & Desktop Environments Apollo Neuro Promo Code [APOLLOZEN] $99 Off Legit Or Just Marketing Apollo Neuro Discount Code $99 Off [APOLLOZEN] Secret Savings Trick HTTP session disconnect on WI-FI disconnect / Networking, Server, and Protection [SOLVED] Cannot chain-load into Windows with GRUB. / Newbie Corner [SOLVED] Font hinting appears to be disabled on Qt6 applications? / Applications & Desktop Environments Black screen after waking up from sleep/hybernate/suspend. / Newbie Corner Diskless booting failing, ipconfig no devices to configure / Kernel & Hardware Strange Font Issue Across System / Newbie Corner [SOLVED] Laptop doesn't wake from sleep on NVIDIA 595.71.05 drivers / Newbie Corner Touchpad randomly stops moving (clicks still work) on Hyprland / Laptop Issues Random hangs on Ryzen Mobile after 6.18.13 ? / Kernel & Hardware [SOLVED] Can't get IP address for USB Ethernet device (KORG Wavestate) / Networking, Server, and Protection Laptop display does not turn on after being off for around 50 min / Multimedia and Games Text Corruption in GPU Screen Recorder GUI / Applications & Desktop Environments Mouse not correctly recognized during boot (Page 2) / Kernel & Hardware PKGBUILD review / AUR Issues, Discussion & PKGBUILD Requests Touchpad not working / Newbie Corner
Problems with Worms WMD / Newbie Corner
LeRolls · 2026-06-03 · via Arch Linux Forums

The right libtheora is present in Steam Linux Runtime, you shouldn't need to manually download it:

$ find . | grep 'libtheora(enc|dec)\.so\.1$'
./steamapps/common/SteamLinuxRuntime_sniper/var/tmp-Y6UV92/usr/lib/x86_64-linux-gnu/libtheoraenc.so.1
./steamapps/common/SteamLinuxRuntime_sniper/var/tmp-Y6UV92/usr/lib/x86_64-linux-gnu/libtheoradec.so.1
./steamapps/common/SteamLinuxRuntime_sniper/var/tmp-Y6UV92/usr/lib/i386-linux-gnu/libtheoraenc.so.1
./steamapps/common/SteamLinuxRuntime_sniper/var/tmp-Y6UV92/usr/lib/i386-linux-gnu/libtheoradec.so.1
./steamapps/common/SteamLinuxRuntime_soldier/var/tmp-9J2S92/usr/lib/x86_64-linux-gnu/libtheoraenc.so.1
./steamapps/common/SteamLinuxRuntime_soldier/var/tmp-9J2S92/usr/lib/x86_64-linux-gnu/libtheoradec.so.1
./steamapps/common/SteamLinuxRuntime_soldier/var/tmp-9J2S92/usr/lib/i386-linux-gnu/libtheoraenc.so.1
./steamapps/common/SteamLinuxRuntime_soldier/var/tmp-9J2S92/usr/lib/i386-linux-gnu/libtheoradec.so.1
./ubuntu12_32/steam-runtime.old/usr/lib/x86_64-linux-gnu/libtheoraenc.so.1
./ubuntu12_32/steam-runtime.old/usr/lib/x86_64-linux-gnu/libtheoradec.so.1
./ubuntu12_32/steam-runtime.old/usr/lib/i386-linux-gnu/libtheoraenc.so.1
./ubuntu12_32/steam-runtime.old/usr/lib/i386-linux-gnu/libtheoradec.so.1
./ubuntu12_32/steam-runtime/usr/lib/x86_64-linux-gnu/libtheoraenc.so.1
./ubuntu12_32/steam-runtime/usr/lib/x86_64-linux-gnu/libtheoradec.so.1
./ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu/libtheoraenc.so.1
./ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu/libtheoradec.so.1

It should be enough to add the following to Run.sh (in the LD_PRELOAD section):

"$STEAM_RUNTIME"/usr/lib/x86_64-linux-gnu/libtheoradec.so.1 \
"$STEAM_RUNTIME"/usr/lib/x86_64-linux-gnu/libtheoraenc.so.1 \

However, if you want a cleaner setup, I suggest dropping Run.sh and instead running the game through Steam using the "Play Worms W.M.D" option.
Background: when using "Play Worms W.M.D (Run.sh)" (or when launching from the terminal), the game binary is launched directly, without steam-launch-wrapper, so Steam runtime's libraries are not loaded.
The Run.sh version from the wiki attempts to fix this by manually LD_PRELOAD-ing the needed libraries, but imo it's more robust to just let Steam do its job; as we can see, system library updates (like libtheora from 1.1.1 to 1.2.0) can break the script, and it will require regular updates to keep working.

Over the years of battling with running this game on Linux, I have come up with the following solution:

1. Add a script, e.g. "myrun.sh", to the game directory (and remember to make it executable):

#!/bin/bash

_libraries=(
	lib/libQt5*.so.5
	/usr/lib/libwavpack.so.1
	"$STEAM_RUNTIME"/amd64/lib/x86_64-linux-gnu/libdbus-1.so.3
)

export LD_PRELOAD="${_libraries[@]}"

exec "$@"

2. Add the following to the game's Launch Options in Steam:

3. Run the game through Steam using "Play Worms W.M.D" (not "Play Worms W.M.D (Run.sh)").

If there are any issues, you can replace the last line of the script with

exec "$@" >~/worms-stdout.log 2>~/worms-stderr.log

and then look at the log files to see what the problem is.

(You can also add the following at the top of the script:

echo "$@" >~/worms-steam-cmd.log

to see the Steam Runtime magic in action.)

Edit:
Just realized that some time ago multiplayer broke, and now it requires the following in LD_PRELOAD:

"$STEAM_RUNTIME"/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4
"$STEAM_RUNTIME"/usr/lib/x86_64-linux-gnu/libidn.so.11
"$STEAM_RUNTIME"/lib/x86_64-linux-gnu/libgcrypt.so.11
"$STEAM_RUNTIME"/usr/lib/x86_64-linux-gnu/librtmp.so.0

which largely defeats the advantage of being cleaner than manually preloading all libraries…

Last edited by stanczew (2025-07-20 19:53:35)