The document describes Disnix, a tool for automated deployment of heterogeneous service-oriented systems. Disnix uses deployment models to capture specifications of services, infrastructure, and distribution. It derives a deployment process from these models to build, transfer, and activate services and their dependencies in the right order across machines. This ensures complete dependencies and allows atomic upgrades and rollbacks. The document evaluates Disnix by using it to deploy the SDS2 asset tracking system across 8 machines, achieving faster, more reliable deployment and upgrading compared to manual processes.