Here you go, I implemented hactoolnet into this for some speed. You still need hactool for unpacking nso as hactoolnet doesn't have this. The program will work without hacktoolnet in your tools folder but if it finds it, for most unpacking stuff it will use that as a priority.
Now why even bother with this.....?
Well for FS unpacking hactool was taking a long time because I couldn't figure out how to stop the output display from working in the background (this is easy to do in python or from cmd) , so the program generates a batch file and extracts with that as it's far faster. Now being as linux doesn't use batch scripts and uses bash instead - maybe it wouldn't work under wine, but if you have hactoolnet in your tools folder it will use that instead of making the batch file, so it should be compatible with linux if linux works with hactoolnet - which I think it does.
So summary - if you have hactoolnet, you can put it in your tools folder and it will get used. If you dont have it in your tools folder - hactool will be used for all the unpacking of files.