#Maintainer: Ali Molaei #Maintainer: Rafael Fontenelle pkgname="mongodb42-bin" pkgver="4.2.24" _basever="4.2" _basedist="bionic" pkgrel="1" pkgdesc="A high-performance, open source, schema-free document-oriented database" arch=("x86_64" "aarch64") url="https://www.mongodb.com/" license=("custom:SSPLv1") depends=("curl") optdepends=("mongodb-tools: The MongoDB tools provide import, export, and diagnostic capabilities.") provides=("mongodb=$pkgver") conflicts=("mongodb") backup=("etc/mongodb.conf") _repo_url=https://repo.mongodb.org/apt/ubuntu/dists/${_basedist}/mongodb-org/${_basever}/multiverse source=( "mongodb.sysusers" "mongodb.tmpfiles" "LICENSE" ) source_x86_64=( mongodb-org-shell_${pkgver}_x86_64.deb::"${_repo_url}/binary-amd64/mongodb-org-shell_${pkgver}_amd64.deb" mongodb-org-server_${pkgver}_x86_64.deb::"${_repo_url}/binary-amd64/mongodb-org-server_${pkgver}_amd64.deb" mongodb-org-mongos_${pkgver}_x86_64.deb::"${_repo_url}/binary-amd64/mongodb-org-mongos_${pkgver}_amd64.deb") source_aarch64=( mongodb-org-shell_${pkgver}_aarch64.deb::"${_repo_url}/binary-arm64/mongodb-org-shell_${pkgver}_arm64.deb" mongodb-org-server_${pkgver}_aarch64.deb::"${_repo_url}/binary-arm64/mongodb-org-server_${pkgver}_arm64.deb" mongodb-org-mongos_${pkgver}_aarch64.deb::"${_repo_url}/binary-arm64/mongodb-org-mongos_${pkgver}_arm64.deb") noextract=( mongodb-org-shell_${pkgver}_${CARCH}.deb mongodb-org-server_${pkgver}_${CARCH}.deb mongodb-org-mongos_${pkgver}_${CARCH}.deb) sha256sums=('47b884569102f7c79017ee78ef2e98204a25aa834c0ee7d5d62c270ab05d4e2b' '51ee1e1f71598aad919db79a195778e6cb6cfce48267565e88a401ebc64497ac' '09d99ca61eb07873d5334077acba22c33e7f7d0a9fa08c92734e0ac8430d6e27') sha256sums_x86_64=('7fd644e30165498380e1b5a8433f909121e189da47fbfb4a6434440b6421b2de' 'adc584b75729e77f545c1efedd7ba6d7e7737ef8695c48bc29889ef261d3efca' '6302bc8fd1a72c73daf3b754f22a4d89484c30bb51d07f8756ba1183a5b87f44') sha256sums_aarch64=('e6ed9a92af1beb3af7c0368bc85d572bf636f225ae3f43a1324fcdde91770c85' '9d66980e4ac54b3ccc115a249bd3390e308e7d79c91755e9cc8745be48acfec7' '9b3ffe48e945c01f5eb2b0561491278df52a21e38605b3af49fc963900eb42b5') prepare() { mkdir -p output bsdtar -O -xf mongodb-org-shell_${pkgver}_${CARCH}.deb data.tar.xz | bsdtar -C output -xJf - #mongo extracted bsdtar -O -xf mongodb-org-server_${pkgver}_${CARCH}.deb data.tar.xz | bsdtar -C output -xJf - #server extracted bsdtar -O -xf mongodb-org-mongos_${pkgver}_${CARCH}.deb data.tar.xz | bsdtar -C output -xJf - #mongos extracted # Keep historical Arch dbPath sed -i 's|dbPath: /var/lib/mongo$|dbPath: /var/lib/mongodb|' output/etc/mongod.conf # Keep historical Arch conf file name sed -i 's|/etc/mongod.conf|/etc/mongodb.conf|' output/lib/systemd/system/mongod.service # Keep historical Arch user name (no need for separate daemon group name) sed -i 's/User=mongod$/User=mongodb/' output/lib/systemd/system/mongod.service sed -i 's/Group=mongod$/Group=mongodb/' output/lib/systemd/system/mongod.service # Avoid legacy PID filepath sed -i 's|/var/run/|/var/|' output/lib/systemd/system/mongod.service # Remove sysconfig file, used by upstream's init.d script not used on Arch sed -i '/^EnvironmentFile=/d' output/lib/systemd/system/mongod.service # Make systemd wait as long as it takes for MongoDB to start # If MongoDB needs a long time to start, prevent systemd from restarting it every 90 seconds # See: https://jira.mongodb.org/browse/SERVER-38086 sed -i 's/\[Service]/[Service]\nTimeoutStartSec=infinity/' output/lib/systemd/system/mongod.service } package() { install -Dm644 output/etc/mongod.conf "$pkgdir/etc/mongodb.conf" install -Dm644 output/lib/systemd/system/mongod.service "$pkgdir/usr/lib/systemd/system/mongodb.service" install -Dm755 output/usr/bin/* -t "$pkgdir/usr/bin" install -Dm644 output/usr/share/man/man1/* -t "$pkgdir/usr/share/man/man1" install -Dm644 mongodb.sysusers "$pkgdir/usr/lib/sysusers.d/mongodb.conf" install -Dm644 mongodb.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/mongodb.conf" install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" }