SchizoDuckie/DuckieTV

Setup & Permission issues

cppcooper opened this issue · 2 comments

It would be nice if the setup script took care of outstanding permission issues. I've found duckie to be incapable of launching as a non-root user after running setup to install.

On Archlinux I downloaded the 64 linux nightly. Then:

  1. extracted with 7zip
  2. ran sudo ./setup
  3. attempted to launch duckie

The first issue (caused by 7zip) was that there were no executable files present. So the files were installed as non-executable. So then I attempted to simply enable the executable permission on all the binary files I could spot. When trying to launch I then got the following:

[Tue 11:18:48]
[20296:20296:0221/111848.352058:FATAL:spawn_subprocess.cc(221)] posix_spawn: Permission denied (13)
#0 0x7f46b252f8b3 (/opt/DuckieTV/lib/libnw.so+0x5f2f8b2)
#1 0x7f46b25442f3 (/opt/DuckieTV/lib/libnw.so+0x5f442f2)
#2 0x7f46b25452fa (/opt/DuckieTV/lib/libnw.so+0x5f452f9)
#3 0x7f46b310d2d3 (/opt/DuckieTV/lib/libnw.so+0x6b0d2d2)
#4 0x7f46b3102683 (/opt/DuckieTV/lib/libnw.so+0x6b02682)
#5 0x7f46b4d95ea7 (/opt/DuckieTV/lib/libnw.so+0x8795ea6)
#6 0x7f46b4d8eb3e (/opt/DuckieTV/lib/libnw.so+0x878eb3d)
#7 0x7f46ae7dbfda (/opt/DuckieTV/lib/libnw.so+0x21dbfd9)
#8 0x7f46b20a84f9 (/opt/DuckieTV/lib/libnw.so+0x5aa84f8)
#9 0x7f46b20a604a (/opt/DuckieTV/lib/libnw.so+0x5aa6049)
#10 0x7f46b20a6441 (/opt/DuckieTV/lib/libnw.so+0x5aa6440)
#11 0x7f46ae7da1e7 (/opt/DuckieTV/lib/libnw.so+0x21da1e6)
#12 0x7f46ac43c290 (/usr/lib/libc.so.6+0x2328f)

[20292:20292:0221/111848.499817:FATAL:crashpad_linux.cc(195)] Check failed: client.StartHandler(handler_path, *database_path, metrics_path, url, annotations, arguments, false, false). 
#0 0x7f46b252f8b3 (/opt/DuckieTV/lib/libnw.so+0x5f2f8b2)
#1 0x7f46b25442f3 (/opt/DuckieTV/lib/libnw.so+0x5f442f2)
#2 0x7f46b25450ae (/opt/DuckieTV/lib/libnw.so+0x5f450ad)
#3 0x7f46b4d95ee1 (/opt/DuckieTV/lib/libnw.so+0x8795ee0)
#4 0x7f46b4d8eb3e (/opt/DuckieTV/lib/libnw.so+0x878eb3d)
#5 0x7f46ae7dbfda (/opt/DuckieTV/lib/libnw.so+0x21dbfd9)
#6 0x7f46b20a84f9 (/opt/DuckieTV/lib/libnw.so+0x5aa84f8)
#7 0x7f46b20a604a (/opt/DuckieTV/lib/libnw.so+0x5aa6049)
#8 0x7f46b20a6441 (/opt/DuckieTV/lib/libnw.so+0x5aa6440)
#9 0x7f46ae7da1e7 ChromeMain
#10 0x7f46ac43c290 (/usr/lib/libc.so.6+0x2328f)

Trace/breakpoint trap (core dumped)

So, presuming I missed something and thinking 7zip may have dropped permissions (which it did).. I tried extracting with Ark. The executable permissions were retained, but I still couldn't launch as a non-root user. I lost track of the output for these attempts, but I believe they were the same as the above.

Finally, I did a chown myuser:myuser /opt/DuckieTV -R and I could finally launch it.

Unfortunately the author left the project back in 2017 and I've just enough skill to keep the lights on as far as the Dtv JS code is concerned.
However I've no idea how to modify the installer code that the package builder assembles for linux, osx and whatnot, and I don't have time or interest in going down that rabbit hole.

Ah, ok. Well I could modify the script to work for me, however I doubt it would be acceptable at large. Perhaps somebody will stumble on this and have a more enlightened understanding of the problem and offer a well grounded solution compared to simply chmod +xing all the executable files and chowning the install directory to a user, cause that doesn't seem like a good solution even though it did solve it.