Porting systemd To New Distributions HOWTO: You need to make the follow changes to adapt systemd to your distribution: 1) Find the right configure parameters for: --with-rootprefix= --with-sysvinit-path= --with-sysvrcnd-path= --with-rc-local-script-path-start= --with-rc-local-script-path-stop= --with-kbd-loadkeys= --with-kbd-setfont= --with-tty-gid= --with-ntp-servers= 2) Try it out. Play around (as an ordinary user) with '/usr/lib/systemd/systemd --test --system' for a test run of systemd without booting. This will read the unit files and print the initial transaction it would execute during boot-up. This will also inform you about ordering loops and suchlike NTP POOL: By default, timesyncd uses the Google NTP servers time[1-4].google.com. They serve time that is not standards compliant, and can be up to .5s off. Google does not officially support these servers for the broader audience. Distributions and vendors really should not ship OSes or devices with these NTP servers configured. Instead, please register your own vendor pool at ntp.org and make it the built-in default by passing --with-ntp-servers= to configure. Registering vendor pools is free: http://www.pool.ntp.org/en/vendors.html Again, if you ship your software or device with the default NTP servers, then you will get served wrong time, and will rely on services that might not be supported for long. CONTRIBUTING UPSTREAM: We generally do no longer accept distribution-specific patches to systemd upstream. If you have to make changes to systemd's source code to make it work on your distribution, unless your code is generic enough to be generally useful, we are unlikely to merge it. Please always consider adopting the upstream defaults. If that is not possible, please maintain the relevant patches downstream. Thank you for understanding.