Question about DSM / XPEnology

Recommended Posts

So I am building a open source version of QTS / DSM built from the ground up. I was just curious about what DSM / QTS is running under in terms of programming languages. From what I've discovered from the firmware I can conclude this:


- Nginx / Apache as a webserver for the UI


- Custom CSS / JS mixed in with EXTjs as a base UI


- Lots of CGI scripts (Don't know what there written in since there encrypted / compiled to a binary format)


I'm either thinking that there server side stuff is either written in PHP or C++ to handle Disks / Install packages / user management etc. Can anyone confirm / deny this?

Link to post
Share on other sites



The source code for DSM (at least version 5.x at present) is available for you to browse through here: ... %20Source/


From there you'll see lots of bash scripts, and mostly compiled C for running the actual hardware side, with PHP and CGI scripts for accessing that from the Web GUI


The rest is a combination of existing packages.


New packages can be written in all sorts of languages and many used by people regularly include Java, Python, .NET (via mono) and C with some web-based tools using PHP and CGI.

Now, given Docker support on higher end devices, you can run pretty much whatever you like too!

Link to post
Share on other sites