Extension Development :: Note to extension builders
If I've understood this correctly, extension builders should aim (if possible) to put everything in /opt/myextension.
In the case of a dsl extension, does it still make sense to put the desktop icon and link in user.tar.gz in /opt/myextension as per a unc extension?
If you're still talking about uci, yes. The user.tar.gz file is useable in all mydsl extensions. It is essentially a *.tar.gz type of mydsl package within the main package, and contains any files needed to be installed in /home/dsl or /opt/something_other_than_myextension (an icon, for example). As with other *.tar.gz mydsl packages, user.tar.gz should not write to parts of the system that are not initially in /ramdisk
What if its a single file binary? Should I still put in in /opt and a symlink in /opt/bin or can I just put the binary in /opt/bin?
That would not be possible with uci packages, since they are mounted into /opt/package_name. A tar.gz package can do that, but I couldn't say whether or not it's an "impolite" way to install (perhaps not keeping a consistent package structure could be seen by some people as impolite?). I think it's something worth getting more feedback about. The only drawback I can see, though, is the user having a slightly tougher time removing the application if it's not found in the standard /opt/mypackage directory.
As far as I can tell, a single-file application should be able to be placed *anywhere* within the filesystem and still work, as long as the user has permission to enter that directory.
I'll try to fix nasm then. Only two binarys, but not placed under /nasm/ and symlinked as those should.