From 19db5275a62947a679e75b5c1550de7e6ed4c4df Mon Sep 17 00:00:00 2001 From: EnumDev Date: Sat, 3 May 2025 13:52:21 +0300 Subject: [PATCH] Initial Commit --- pkg.info | 8 ++++++ source-files/ntp.conf | 17 +++++++++++++ source-files/ntpd.esv | 5 ++++ source-files/sysusers | 1 + source.sh | 57 +++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 88 insertions(+) create mode 100644 pkg.info create mode 100644 source-files/ntp.conf create mode 100644 source-files/ntpd.esv create mode 100644 source-files/sysusers create mode 100644 source.sh diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..64e31ae --- /dev/null +++ b/pkg.info @@ -0,0 +1,8 @@ +name: ntp +description: Network Time Protocol implementation +version: 4.2.8p18 +url: https://www.ntp.org/ +license: custom +architecture: any +depends: ["libcap","libedit","openssl","perl","sysusers"] +type: source diff --git a/source-files/ntp.conf b/source-files/ntp.conf new file mode 100644 index 0000000..e465c6c --- /dev/null +++ b/source-files/ntp.conf @@ -0,0 +1,17 @@ +# Asia +server 0.asia.pool.ntp.org + +# Australia +server 0.oceania.pool.ntp.org + +# Europe +server 0.europe.pool.ntp.org + +# North America +server 0.north-america.pool.ntp.org + +# South America +server 2.south-america.pool.ntp.org + +driftfile /var/lib/ntp/ntp.drift +pidfile /run/ntpd.pid diff --git a/source-files/ntpd.esv b/source-files/ntpd.esv new file mode 100644 index 0000000..d06ed88 --- /dev/null +++ b/source-files/ntpd.esv @@ -0,0 +1,5 @@ +name: ntpd +description: Network Time Protocol daemon +type: simple +start_cmd: /usr/sbin/ntpd -g -u ntp:ntp +exit_method: kill diff --git a/source-files/sysusers b/source-files/sysusers new file mode 100644 index 0000000..9450d34 --- /dev/null +++ b/source-files/sysusers @@ -0,0 +1 @@ +u ntp 87 "Network Time Protocol" /var/lib/ntp /bin/false diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..09de78f --- /dev/null +++ b/source.sh @@ -0,0 +1,57 @@ +# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +DOWNLOAD="https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-${BPM_PKG_VERSION%.*}/ntp-${BPM_PKG_VERSION}.tar.gz" +FILENAME="${DOWNLOAD##*/}" + +# The prepare function is executed in the root of the temp directory +# This function is used for downloading files and putting them into the correct location +prepare() { + wget "$DOWNLOAD" + tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE" + + # Fix pthread_detach configure error + sed -e "s;pthread_detach(NULL);pthread_detach(0);" -i "$BPM_SOURCE"/configure "$BPM_SOURCE"/sntp/configure +} + +# The build function is executed in the source directory +# This function is used to compile the source code +build() { + # Fix for ntp compilation issue with libmd installed + export CFLAGS="${CFLAGS} -Wno-incompatible-pointer-types" + + ./configure --prefix=/usr \ + --bindir=/usr/sbin \ + --sysconfdir=/etc \ + --enable-linuxcaps \ + --enable-ntp-signd + make +} + +# The check function is executed in the source directory +# This function is used to run tests to verify the package has been compiled correctly +check() { + make check +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + make DESTDIR="$BPM_OUTPUT" install + + install -d "$BPM_OUTPUT"/var/lib/ntp + chown -R 87:87 "$BPM_OUTPUT"/var/lib/ntp + + # Install config + install -Dm644 "$BPM_WORKDIR"/ntp.conf "$BPM_OUTPUT"/etc/ntp.conf + + # Install esvm service + install -Dm644 "$BPM_WORKDIR"/ntpd.esv "$BPM_OUTPUT"/etc/esvm/services/ntpd.esv + + # Install sysusers file + install -Dm644 "$BPM_WORKDIR"/sysusers "$BPM_OUTPUT"/usr/lib/sysusers.d/ntp.conf + + # Install package license + install -Dm644 COPYRIGHT "$BPM_OUTPUT"/usr/share/licenses/ntp/COPYRIGHT +}