One big problem I encountered with init scripts for teeworlds is, that they are not very flexible. Many people are running several teeworlds servers on their server and which servers are online often changes. What I want to say is this: If you use an init script, you want to write/configure it once and then just use it, as it is. This is not applicable for teeworlds, because often you find yourself in the situation of creating a new server or removing one etc. It's very inconvenient to edit the init script everytime.
Another problem is, that teeworlds is not that stable and crashes sometimes, so you probably want an autorestart feature for teewolrds.
For both of those reasons, I am currently using supervisor to start/stop/control my teeworlds servers.
I agree with you about the use of external libraries, they should be removed. In binary releases, we should keep them in however (SDL.dll etc.)
@m!nus: In what way is using our pnglite/zlib better/easier/whatever than using system one? I mean, we have to install sdl, too, to compile, why not those libraries, too?