Packaging multi-file mpv scripts (uosc)

I am currently trying to package the uosc UI for mpv. I have made a naïve attempt here. This does not work as uosc cannot find the files it requires at run time; here is the error from mpv:

[uosc] Lua error: ...8shrgl2sr3bnl3k7g0-uosc-4.5.0/share/mpv/scripts/uosc.lua:15: module 'uosc_shared/lib/std' not found:
[uosc] 	no field package.preload['uosc_shared/lib/std']
[uosc] 	no file '/nix/store/pdrw76vs6ns8ss4jjla0kfybnkxpzjgm-lua-5.2.4-env/share/lua/5.2/uosc_shared/lib/std.lua'
[uosc] 	no file '/home/corin/.config/mpv/scripts/uosc_shared/lib/std.lua'
[uosc] 	no file '/nix/store/pdrw76vs6ns8ss4jjla0kfybnkxpzjgm-lua-5.2.4-env/lib/lua/5.2/uosc_shared/lib/'

Any ideas on how this can be remedied? mpvacious replaces require with dofile, but this seems pretty fragile to me for more complicated scripts.

1 Like