commit 1c0f607e375aceca4ba1d2c9ff16e6648dc4215e Author: EnumDev Date: Thu May 8 17:14:25 2025 +0300 Initial Commit diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..982256e --- /dev/null +++ b/pkg.info @@ -0,0 +1,10 @@ +name: krb5 +description: A network authentication protocol +version: 1.21.3 +url: https://web.mit.edu/kerberos/ +license: custom +architecture: any +depends: ["e2fsprogs","glibc","glibc","openssl"] +make_depends: ["perl"] +keep: ["etc/krb5.conf","var/lib/krb5kdc/kdc.conf"] +type: source diff --git a/source-files/kadmind.esv b/source-files/kadmind.esv new file mode 100644 index 0000000..a41270f --- /dev/null +++ b/source-files/kadmind.esv @@ -0,0 +1,6 @@ +name: kadmind +description: Kerberos 5 Administration Server +type: background +start_cmd: /usr/sbin/kadmind -nofork +exit_method: kill +restart: true diff --git a/source-files/kpropd.esv b/source-files/kpropd.esv new file mode 100644 index 0000000..db0de0c --- /dev/null +++ b/source-files/kpropd.esv @@ -0,0 +1,6 @@ +name: kpropd +description: Kerberos 5 Propagation Server +type: background +start_cmd: /usr/sbin/kpropd -S +exit_method: kill +restart: true diff --git a/source-files/krb5kdc.esv b/source-files/krb5kdc.esv new file mode 100644 index 0000000..7aa1cf2 --- /dev/null +++ b/source-files/krb5kdc.esv @@ -0,0 +1,6 @@ +name: krb5kdc +description: Kerberos 5 KDC +type: background +start_cmd: /usr/sbin/krb5kdc -n +exit_method: kill +restart: true diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..b1b0bdf --- /dev/null +++ b/source.sh @@ -0,0 +1,48 @@ +# 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://kerberos.org/dist/krb5/${BPM_PKG_VERSION%.*}/krb5-${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" +} + +# The build function is executed in the source directory +# This function is used to compile the source code +build() { + cd src + + sed -i -e '/eq 0/{N;s/12 //}' plugins/kdb/db2/libdb2/test/run.test + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var/lib \ + --runstatedir=/run \ + --with-system-et \ + --with-system-ss \ + --with-system-verto=no \ + --enable-dns-for-realm \ + --disable-rpath + make +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + cd src + + make DESTDIR="$BPM_OUTPUT" install + sed '/PROG_RPATH_FLAGS/d' -i "$BPM_OUTPUT"/usr/bin/krb5-config + + install -Dpm644 config-files/krb5.conf -t "$BPM_OUTPUT"/etc + install -Dpm644 config-files/kdc.conf -t "$BPM_OUTPUT"/var/lib/krb5kdc + + install -Dm644 "$BPM_WORKDIR"/*.esv -t "$BPM_OUTPUT"/etc/esvm/services/ + + install -Dm644 "$BPM_SOURCE"/NOTICE "$BPM_OUTPUT"/usr/share/licenses/krb5/LICENSE +}