Anthony Musgrove 229 Posted May 24 Author Posted May 24 Could you please confirm the OS / Linux flavor/version you're using to get these errors? I'll see if I can replicate it here as well in a VM. It may be something we can circumnavigate in the plugin core. Thank you
Deihmos 173 Posted May 24 Posted May 24 38 minutes ago, Anthony Musgrove said: Could you please confirm the OS / Linux flavor/version you're using to get these errors? I'll see if I can replicate it here as well in a VM. It may be something we can circumnavigate in the plugin core. Thank you Using Debian 13 Trixie AMD64. I also tried Ubuntu 26.04 and got the same error. 1
Anthony Musgrove 229 Posted May 24 Author Posted May 24 (edited) Okay great, I've replicated the issue. 2026-05-24 07:35:41.161 Info Emby ScripterX: onPlaybackStart: START scripterx "Chrome Windows" 7 "Toy Story 3" 2026-05-24 07:35:41.163 Info Emby ScripterX: DEBUG SCRIPTERX PROCESS START 2026-05-24 07:35:41.166 Info Emby ScripterX: DEBUG SCRIPTERX PROCESS END 2026-05-24 07:35:41.188 Error Emby ScripterX: Error executing script '/home/scripterx/media/Scripts/playback.sh START scripterx "Chrome Windows" 7 "Toy Story 3"': bash: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.38' not found (required by bash) bash: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.33' not found (required by bash) bash: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.36' not found (required by bash) bash: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.34' not found (required by bash) bash: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.33' not found (required by /lib/x86_64-linux-gnu/libtinfo.so.6) So this is definitely an issue stemming from an Emby Core update, which is okay, Luke will look into it, I'm looking into how we can rectify on our side too. Thank you for bringing this to my attention! Edit: I must say, I've tested on Windows (latest server version) and on Windows everything is functioning correctly, so yes it's definitely some kind of environment issue(s). Edited May 24 by Anthony Musgrove
Deihmos 173 Posted May 24 Posted May 24 (edited) 48 minutes ago, Luke said: And it only appears in the log when trying to run scripts? That is correct. That's the only time it shows in the logs. No issues with 4.9.3. Edited May 24 by Deihmos
Anthony Musgrove 229 Posted May 24 Author Posted May 24 (edited) 3 hours ago, Luke said: And it only appears in the log when trying to run scripts? It appears so mate, only when the plugin is trying to use bash (executing anything) in the current execution environment, Process proc = new Process(); proc.Start(); I will test a few more things today; I'll test with other interpreters like PHP binary etc. I think it may have to do with the version of the GLIBC libraries that the newer servers are compiled with. Thanks again! Edited May 24 by Anthony Musgrove updated for new information
Anthony Musgrove 229 Posted May 24 Author Posted May 24 (edited) So the same is occurring when trying to use php as the interpreter: 2026-05-24 23:27:57.558 Error Emby ScripterX: Error executing script '/home/scripterx/media/Scripts/playback.php START scripterx "Chrome Windows" 7 "Toy Story 3"': /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.38' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.29' not found (required by /usr/bin/php) Part of log relevant: 2026-05-24 23:27:57.555 Info Emby ScripterX: onPlaybackStart: START scripterx "Chrome Windows" 7 "Toy Story 3" 2026-05-24 23:27:57.555 Info Emby ScripterX: DEBUG SCRIPTERX PROCESS START 2026-05-24 23:27:57.556 Info Emby ScripterX: DEBUG SCRIPTERX PROCESS END 2026-05-24 23:27:57.558 Error Emby ScripterX: Error executing script '/home/scripterx/media/Scripts/playback.php START scripterx "Chrome Windows" 7 "Toy Story 3"': /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.38' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.29' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.35' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.32' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.29' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.30' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.34' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.33' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.38' not found (required by /usr/bin/php) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.28' not found (required by /lib/x86_64-linux-gnu/libxml2.so.2) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.33' not found (required by /lib/x86_64-linux-gnu/libxml2.so.2) /usr/bin/php: /opt/emby-server/lib/libc.so.6: version `GLIBC_2.34' not found (required by /lib/x86_64-linux-gnu/libxml2.so.2) /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.29' not found (required by /lib/x86_64-linux-gnu/libxml2.so.2) /usr/bin/php: /opt/emby-server/lib/libm.so.6: version `GLIBC_2.38' not found (required by /lib/x86_64-linux-gnu/libxml2.so.2) OS: scripterx@scripterx-dev:~/media/Scripts$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.4 LTS Release: 24.04 Codename: noble ScripterX Configuration: Emby Server Version: Edited May 24 by Anthony Musgrove added additional log
Anthony Musgrove 229 Posted May 24 Author Posted May 24 Note - I can solve it on the plugin side by setting the LD_LIBRARY_PATH environment variable prior to executing the process; ie: proc.StartInfo.EnvironmentVariables["LD_LIBRARY_PATH"] = "/usr/local/lib"; however, I doubt this is going to be a secure or scalable solution. I'll wait for your input to see if there's anything on your side (GLIBC library versions etc) that needs to be rectified. If not, we will have to brainstorm a way to make this scalable, stable and secure. Thanks again, Anthony
Anthony Musgrove 229 Posted May 25 Author Posted May 25 (edited) I've just released v6.0.1.1 with temporary GLIBC fix to see how it scales. I've restricted this release to Server v4.9.5.0+ so that it doesn't effect any older installations. Feedback would be appreciated. The fix simply sets LD_LIBRARY_PATH to /usr/local/lib if Plugin is running on anything apart from Windows. Can confirm that updating my production environment to 6.0.1.1, it is now functioning again on Ubuntu Server: Playback START : User: anthony on device Google Chrome Windows - media: [ID: 440] Cloudy with a Chance of Meatballs Edited May 25 by Anthony Musgrove
GavinCampbell 17 Posted May 25 Posted May 25 4 minutes ago, Anthony Musgrove said: I've just released v6.0.1.1 with temporary GLIBC fix to see how it scales. I've restricted this release to Server v4.9.5.0+ so that it doesn't effect any older installations. Feedback would be appreciated. The fix simply sets LD_LIBRARY_PATH to /usr/local/lib if Plugin is running on anything apart from Windows. Can confirm that updating my production environment to 6.0.1.1, it is now functioning again on Ubuntu Server: Playback START : User: anthony on device Google Chrome Windows - media: [ID: 440] Cloudy with a Chance of Meatballs I run Emby server in a docker container on Unraid. Just installed 6.0.1.1 and can confirm that it is working again. 1
TMCsw 274 Posted May 25 Posted May 25 Working fine now on Proxmox: LXC Debian 13 with 4.9.5.0 LXC Debian 13 with 4.10.0.12 Just a thought, but perhaps it would be better to unset LD_LIBRARY_PATH or LD_LIBRARY_PATH="" as it's usually not set in most default shells (bash & sh anyway). 1
Anthony Musgrove 229 Posted May 25 Author Posted May 25 (edited) 19 minutes ago, TMCsw said: Working fine now on Proxmox: LXC Debian 13 with 4.9.5.0 LXC Debian 13 with 4.10.0.12 Just a thought, but perhaps it would be better to unset LD_LIBRARY_PATH or LD_LIBRARY_PATH="" as it's usually not set in most default shells (bash & sh anyway). That's actually a good idea, I will do some testing. Thank you It seems to be working fine with LD_LIBRARY_PATH="", so I'll keep that for the next release, thank you again. scripterx@scripterx-dev:~/media/Scripts$ tail playback_php.log Playback: START : User scripterx on device Chrome Windows - media: (7) Toy Story 3 Code edit: if(!Plugin.IsWindows()) proc.StartInfo.EnvironmentVariables["LD_LIBRARY_PATH"] = ""; Edited May 25 by Anthony Musgrove 1
Suliamu 50 Posted May 26 Posted May 26 My logs are filling up with those error reports since the last update to stable: *** Error Report *** Version: 4.9.5.0 Command line: /opt/emby-server/system/EmbyServer.dll -programdata /var/lib/emby -ffdetect /opt/emby-server/bin/ffdetect -ffmpeg /opt/emby-server/bin/ffmpeg -ffprobe /opt/emby-server/bin/ffprobe -restartexitcode 3 -updatepackage emby-server-deb_{version}_amd64.deb Operating system: Linux version 6.1.0-48-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP OS/Process: x64/x64 Framework: .NET 8.0.25 Runtime: opt/emby-server/system/System.Private.CoreLib.dll Processor count: 20 Data path: /var/lib/emby Application path: /opt/emby-server/system System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object. at EmbyScripterX.Core.ScripterXContextFactory.Transcoding(PlayMethod playMethod, TranscodingInfo transcodingInfo) at EmbyScripterX.EventManagers.ScripterXSessionManager._sessionManager_PlaybackProgress(Object sender, PlaybackProgressEventArgs e) at MediaBrowser.Common.Events.EventHelper.TriggerAll[T](EventHandler`1 mainHandler, Object sender, T args, ILogger logger) Source: EmbyScripterX TargetSite: EmbyScripterX.Core.ScripterXEventContext Transcoding(MediaBrowser.Model.Session.PlayMethod, MediaBrowser.Model.Session.TranscodingInfo) Is there something i should do to fix those?
Anthony Musgrove 229 Posted May 26 Author Posted May 26 47 minutes ago, Suliamu said: My logs are filling up with those error reports since the last update to stable: *** Error Report *** Version: 4.9.5.0 Command line: /opt/emby-server/system/EmbyServer.dll -programdata /var/lib/emby -ffdetect /opt/emby-server/bin/ffdetect -ffmpeg /opt/emby-server/bin/ffmpeg -ffprobe /opt/emby-server/bin/ffprobe -restartexitcode 3 -updatepackage emby-server-deb_{version}_amd64.deb Operating system: Linux version 6.1.0-48-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP OS/Process: x64/x64 Framework: .NET 8.0.25 Runtime: opt/emby-server/system/System.Private.CoreLib.dll Processor count: 20 Data path: /var/lib/emby Application path: /opt/emby-server/system System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object. at EmbyScripterX.Core.ScripterXContextFactory.Transcoding(PlayMethod playMethod, TranscodingInfo transcodingInfo) at EmbyScripterX.EventManagers.ScripterXSessionManager._sessionManager_PlaybackProgress(Object sender, PlaybackProgressEventArgs e) at MediaBrowser.Common.Events.EventHelper.TriggerAll[T](EventHandler`1 mainHandler, Object sender, T args, ILogger logger) Source: EmbyScripterX TargetSite: EmbyScripterX.Core.ScripterXEventContext Transcoding(MediaBrowser.Model.Session.PlayMethod, MediaBrowser.Model.Session.TranscodingInfo) Is there something i should do to fix those? Thank you @SuliamuI'll be releasing an update shortly to rectify that. 1
Anthony Musgrove 229 Posted May 26 Author Posted May 26 v6.0.1.2 - live now on Catalog * Created permanent fix for server v4.9.5+ to address GLIBC issues (LD_LIBRARY_PATH is now set to "" when processes/scripts are running in the Emby execution environment) * Rectify transcoding null log entries issue 2
Anthony Musgrove 229 Posted May 26 Author Posted May 26 ** I've also added the EmbyScripterX.dll as a release on the project's GitHub, so that if you would like to test 6.0.1.2 on older releases of Emby Server you can, feel free to give feedback if you have any issues.
Anthony Musgrove 229 Posted May 30 Author Posted May 30 (edited) Version 6.1.0.0 released on Catalog; General Added the following new events: onPluginInstalled onPluginUpdated onPluginUninstalled onPackageInstalling onPackageInstalled onPackageInstallCancelled onPackageInstallFailed onRemoteControlDisconnected Added the following new tokens to Session group: %client% %device.type% %has.custom.device.name% %last.activity.date% %party.id% %protocol% %device.endpoint.ip% %supports.remote.control% %user.image.tag% Added new subset of global tokens (available to all actions & events) NetworkInformation %remote.ip.addresses% - Comma separated string listing all remote IP addresses for the server. %local.ip.addresses% - Comma separated string listing all local IP addresses for the server. %mac.addresses% - Comma separated string listing all mac addresses for the server. Reintroduced event: onNetworkRemoteAddressChanged This version (and all future versions released) will require emby server 4.9.5+, however I'll add the DLL file to the Releases page on GitHub incase anyone with an older server install wants to test it. Some script examples for the new events: package_installing.sh #!/bin/bash # Parameters expected: "%package.name%" "%package.version%" "%package.classification%" "%package.description%" "%package.checksum%" "%package.target.filename%" "%package.timestamp%" "%installation.id%" "%installation.name%" "%installation.version%" "%installation.update.class%" echo Package Installing: [name: $1] [version: $2] [classification: $3] [desc: $4] [checksum: $5] [target filename: $6] [timestamp: $7] [installId: $8] [installName: $9] [installVersion: ${10}] [installUpdateClass: ${11}] >> packages.log package_installed.sh #!/bin/bash # Parameters expected: "%package.name%" "%package.version%" "%package.classification%" "%package.description%" "%package.checksum%" "%package.target.filename%" "%package.timestamp%" "%installation.id%" "%installation.name%" "%installation.version%" "%installation.update.class%" "%package.sourceurl%" echo Package Installed: [name: $1] [version: $2] [classification: $3] [desc: $4] [checksum: $5] [target filename: $6] [timestamp: $7] [installId: $8] [installName: $9] [installVersion: ${10}] [installUpdateClass: ${11}] [sourceUrl: ${12}] >> packages.log packages.log Package Installing: [name: Emby Diagnostics] [version: 4.8.0.81] [classification: Release] [desc: Compatibility Update] [checksum: 79171208ef8012747367e2617d95e5f0] [target filename: Emby.DiagnosticsPlugin.dll] [timestamp: 4/11/2025 2:07:03 PM +00:00] [installId: 3e9cb5e5-403f-43ea-9f8c-2780db08b2ad] [installName: Emby Diagnostics] [installVersion: 4.8.0.81] [installUpdateClass: Release] Package Installed: [name: Emby Diagnostics] [version: 4.8.0.81] [classification: Release] [desc: Compatibility Update] [checksum: 79171208ef8012747367e2617d95e5f0] [target filename: Emby.DiagnosticsPlugin.dll] [timestamp: 4/11/2025 2:07:03 PM +00:00] [installId: 3e9cb5e5-403f-43ea-9f8c-2780db08b2ad] [installName: Emby Diagnostics] [installVersion: 4.8.0.81] [installUpdateClass: Release] [sourceUrl: https://embydata.com/admin/service/packageFiles/Emby.DiagnosticsPlugin.dll_4.8.0.81.exe] plugin_installed.sh #!/bin/bash # Parameters expected: "%package.name%" "%package.version%" "%package.sourceurl%" "%package.classification%" "%package.description%" "%package.checksum%" "%package.target.filename%" "%page.timestamp%" echo Plugin Installed [Name: $1] [Version: $2] [SourceURL: $3] [Classification: $4] [Desc: $5] [Checksum: $6] [Target Filename: $7] [Timestamp: $8] >> plugins.log plugin_uninstalled.sh #!/bin/bash # Parameters expected: %plugin.id% "%plugin.name%" %plugin.version% echo Plugin Uninstalled [Plugin ID: $1] [Name: $2] [Version: $3] >> plugins.log plugins.log Plugin Installed [Name: Emby Diagnostics] [Version: 4.8.0.81] [SourceURL: https://embydata.com/admin/service/packageFiles/Emby.DiagnosticsPlugin.dll_4.8.0.81.exe] [Classification: Release] [Desc: Compatibility Update] [Checksum: 79171208ef8012747367e2617d95e5f0] [Target Filename: Emby.DiagnosticsPlugin.dll] [Timestamp: 4/11/2025 2:07:03 PM +00:00] Plugin Uninstalled [Plugin ID: 2ea04f4b-a776-428e-9869-58e8e5b149c2] [Name: Diagnostics PlugIn] [Version: 4.8.0.81] Network Information %remote.ip.addresses% %local.ip.addresses% %mac.addresses% [Remote IP Addresses: $6] [Local IP Addresses: $7] [MAC Addresses: $8] >> [Remote IP Addresses: 100.200.100.20] [Local IP Addresses: 192.168.1.40,fe80::a00:27ff:fe47:c18a%2,127.0.0.1,::1] [MAC Addresses: 08001148B2C4] Please feel free to provide feedback, bugs, ideas, issues, etc. Warmest regards, Anthony Edited May 30 by Anthony Musgrove 1
Anthony Musgrove 229 Posted May 30 Author Posted May 30 And currently working on implementing these events for next release :- 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now