Initial commit

This commit is contained in:
2025-10-31 18:28:41 +02:00
commit b6c621d9b3
8 changed files with 1696 additions and 0 deletions
+2
View File
@@ -0,0 +1,2 @@
# Exclude bpm archives
*.bpm
+8
View File
@@ -0,0 +1,8 @@
#!/bin/bash
URL="https://www.exim.org/"
# Get version number from tag name
VERSION=$(curl -s -L "$URL" | grep 'Latest Version: ' | grep -o -E '[0-9]{1,}\.[0-9]{1,}(\.[0-9]{1,})?')
echo "$VERSION"
+38
View File
@@ -0,0 +1,38 @@
name: exim
description: Message Transfer Agent
version: "4.99"
revision: 1
url: https://www.exim.org/
license: GPL2-only
architecture: any
type: source
keep:
- etc/mail/aliases
- etc/mail/exim.conf
depends:
- bash
- gdbm
- glibc
- libidn
- libidn2
- openldap
- libnsl
- libxcrypt
- openssl
- pam
- pcre2
- perl
- sqlite
make_depends:
- perl-file-fcntllock
conflicts:
- smtp-forwarder
- smtp-server
provides:
- smtp-forwarder
- smtp-server
downloads:
- url: https://ftp.exim.org/pub/exim/exim4/exim-${BPM_PKG_VERSION}.tar.xz
extract_to: ${BPM_SOURCE}
extract_strip_components: 1
checksum: 5df38b042ffa9a9c8d31b20bc8481558070e361b06f657608622a62a327adcba
File diff suppressed because it is too large Load Diff
+36
View File
@@ -0,0 +1,36 @@
#
# /etc/mail/aliases
#
# NOTE: Make sure you run 'newaliases' after modifying this file
#
# Basic system aliases -- these MUST be present.
MAILER-DAEMON: postmaster
postmaster: root
hostmaster: root
webmaster: hostmaster
ftpmaster: hostmaster
admin: hostmaster
administrator: hostmaster
# General redirections for pseudo accounts.
bin: root
daemon: root
games: root
ingres: root
nobody: root
system: root
toor: root
uucp: root
# Well-known aliases.
manager: root
dumper: root
operator: root
abuse: root
# trap decode to catch security attacks
decode: root
# Person who should get root's mail
#root:
+6
View File
@@ -0,0 +1,6 @@
name: exim
description: Exim mailer daemon
type: background
start_cmd: /usr/sbin/exim -bdf -q30m
exit_method: kill
restart: false
+1
View File
@@ -0,0 +1 @@
u exim 79 "Exim MTA" /var/spool/exim
+75
View File
@@ -0,0 +1,75 @@
# 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
# The prepare function is executed in the root of the temp directory
# This function is used for putting downloaded files to the correct location or applying patches
prepare() {
cd "$BPM_SOURCE"
install -Dm644 "$BPM_WORKDIR"/Makefile Local/Makefile
}
# The build function is executed in the source directory
# This function is used to compile the source code
build() {
make
}
# The package function is executed in the source directory
# This function is used to move the compiled files into the output directory
package() {
local BINS=(
exicyclog
exigrep
exim
exim_checkaccess
exim_dbmbuild
exim_dumpdb
exim_fixdb
exim_id_update
exim_lock
exim_msgdate
exim_tidydb
eximstats
exinext
exipick
exiqgrep
exiqsumm
exiwhat
)
pushd build-Linux-"${BPM_PKG_ARCH}"
install -Dm755 ${BINS[@]} -t "$BPM_OUTPUT"/usr/sbin/
chmod u+s "$BPM_OUTPUT"/usr/sbin/exim
for i in mailq newaliases rmail rsmtp runq sendmail; do
ln -sf exim "$BPM_OUTPUT"/usr/sbin/"$i"
done
popd
# Install documentation
install -Dm644 doc/exim.8 "$BPM_OUTPUT"/usr/share/man/man8/exim.8
# Install configuration file
install -Dm644 "$BPM_WORKDIR"/aliases "$BPM_OUTPUT"/etc/mail/aliases
sed -e "s#/etc/aliases#/etc/mail/aliases#g" \
-e "s#SYSTEM_ALIASES_FILE#/etc/mail/aliases#g" \
src/configure.default | install -Dm0644 /dev/stdin "$BPM_OUTPUT"/etc/mail/exim.conf
# Symlink for FHS compliancy
install -d "$BPM_OUTPUT"/usr/lib
ln -sf ../sbin/exim "$BPM_OUTPUT"/usr/lib/sendmail
# Install sysusers file
install -Dm644 "$BPM_WORKDIR"/sysusers "$BPM_OUTPUT"/usr/lib/sysusers.d/exim.conf
# Install esvm service
install -Dm644 "$BPM_WORKDIR"/exim.esv "$BPM_OUTPUT"/etc/esvm/services/exim.esv
# Install directories
install -dm770 -o root -g 79 "$BPM_OUTPUT"/var/spool/exim
install -dm770 -o 79 -g 79 "$BPM_OUTPUT"/var/spool/exim/db
install -dm770 -o root -g 79 "$BPM_OUTPUT"/var/log/exim
# Install package license
install -Dm644 "$BPM_SOURCE"/LICENCE "$BPM_OUTPUT"/usr/share/licenses/exim/LICENCE
}