kind: autotools
depends:
- foundation.bst
sources:
- kind: git
  url: upstream:ntp
  track: ntp-4.2.8p2
  ref: b2ccf8dd31d1457ae9f0ae270054117179220370
config:
  configure-commands:
  - ./configure --prefix="%{prefix}" --enable-linuxcaps
  install-commands:
    (>):
    - |
      cat > ntpd.service << EOF
      [Unit]
      Description=Network Time Service
      After=network.target nss-lookup.target
      Conflicts=systemd-timesyncd.service

      [Service]
      Type=forking
      ExecStart=/usr/bin/ntpd -u ntp:ntp -Ng
      PrivateTmp=True
      Restart=on-failure

      [Install]
      WantedBy=multi-user.target
      EOF
    - install -D -m 644 ntpd.service "%{install-root}"/lib/systemd/system/ntpd.service
    - mkdir -p "%{install-root}"/lib/systemd/system/multi-user.target.wants
    - ln -s /lib/systemd/system/ntpd.service  "%{install-root}"/lib/systemd/system/multi-user.target.wants/ntpd.service
    - |
      cat > ntp.conf << EOF
      # We use iburst here to reduce the potential initial delay to set the clock
      server 0.pool.ntp.org iburst
      server 1.pool.ntp.org iburst
      server 2.pool.ntp.org iburst
      server 3.pool.ntp.org iburst

      # kod - notify client when packets are denied service,
      # rather than just dropping the packets
      #
      # nomodify - deny queries which attempt to modify the state of the server
      #
      # notrap - decline to provide mode 6 control message trap service to
      # matching hosts
      #
      # see ntp.conf(5) for more details
      restrict -4 default limit kod notrap nomodify
      restrict -6 default limit kod notrap nomodify
      EOF
    - install -D -m 644 ntp.conf "%{install-root}"/etc/ntp.conf
public:
  bst:
    integration-commands:
    - groupadd -r ntp
    - useradd -g ntp -d /home/ntp -s /bin/false -r ntp
