Bug#1012278: kodi web interface does not work
Package: kodi
Version: 2:19.1+dfsg2-2+deb11u1
The Kodi web interface shows a menu bar with Movies/TV Shows/etc but
clicking on them does nothing.
Initial investigation shows that is failing to load its own JavaScript:
9020 recvfrom(17, <unfinished ...>
9020 <... recvfrom resumed>"GET /js/iscroll-min.js?2.1.0 HTT"...,
16384, 0, NULL, NULL) = 425
9020
stat("/usr/share/kodi/addons/webinterface.default/js/iscroll-min.js",
<unfinished ...>
9020 <... stat resumed>{st_mode=S_IFREG|0644, st_size=38987, ...}) = 0
9020 lstat("/usr", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
9020 lstat("/usr/share/kodi", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share/kodi/addons", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share/kodi/addons/webinterface.default", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share/kodi/addons/webinterface.default/js",
<unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020
lstat("/usr/share/kodi/addons/webinterface.default/js/iscroll-min.js",
<unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFLNK|0777, st_size=45, ...}) = 0
9020
readlink("/usr/share/kodi/addons/webinterface.default/js/iscroll-min.js",
<unfinished ...>
9020 <... readlink resumed>"../../../../javascript/iscroll/i"..., 4095)
= 45
9020 lstat("/usr/share/javascript", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share/javascript/iscroll", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share/javascript/iscroll/iscroll-min.js", <unfinished
...>
9020 <... lstat resumed>{st_mode=S_IFREG|0644, st_size=38987, ...}) = 0
9020 lstat("/home", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/home/richard", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/home/richard/.kodi", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 lstat("/usr/share", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
9020 lstat("/usr/share/kodi", <unfinished ...>
9020 <... lstat resumed>{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9020 sendmsg(17, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="HTTP/1.1 404 Not Found\r\nConnecti"...,
iov_len=168}, {iov_base="<html><head><title>File not foun"...,
iov_len=82}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL
<unfinished ...>
I think that it is refuisng to follow symlinks (for obvious security
reasons), and therefore can't load the JS files that have been
replaced with symlinks, presumably in an attempt to reduce the size of
the package.
richard@vitripane:/usr/share/kodi/addons/webinterface.default/js$ ls -l
total 124
lrwxrwxrwx 1 root root 45 Nov 4 2021 iscroll-min.js ->
../../../../javascript/iscroll/iscroll-min.js
lrwxrwxrwx 1 root root 43 Nov 4 2021 jquery-1.8.2.min.js ->
../../../../javascript/jquery/jquery.min.js
-rw-r--r-- 1 root root 18323 Nov 4 2021 json2.js
-rw-r--r-- 1 root root 59644 Nov 4 2021 MediaLibrary.js
-rw-r--r-- 1 root root 27829 Nov 4 2021 NowPlayingManager.js
-rw-r--r-- 1 root root 3401 Nov 4 2021 xbmc.core.js
-rw-r--r-- 1 root root 906 Nov 4 2021 xbmc.init.js
-rw-r--r-- 1 root root 1473 Nov 4 2021 xbmc.launcher.js
-rw-r--r-- 1 root root 1569 Nov 4 2021 xbmc.rpc.js
richard@vitripane:/usr/share/kodi/addons/webinterface.default
I corrected this by replacing the links with copies of teh files, but
the web interface still doesn't work properly.
ttfn/rjk
Reply to: