diff options
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | .gitignore | 12 | ||||
-rw-r--r-- | PKGBUILD | 43 | ||||
-rw-r--r-- | datomic.install | 5 | ||||
-rw-r--r-- | datomic.service | 4 | ||||
-rw-r--r-- | transactor.properties | 162 |
6 files changed, 173 insertions, 74 deletions
@@ -1,24 +1,19 @@ -# Generated by mksrcinfo v8 -# Wed Feb 15 03:55:29 UTC 2017 pkgbase = datomic pkgdesc = A database of flexible,time-based facts,supporting queries and joins,with elastic scalability,and ACID transactions - pkgver = 0.9.5561 + pkgver = 1.0.7075 pkgrel = 1 - url = https://my.datomic.com/downloads/free + url = https://www.datomic.com/ install = datomic.install arch = any - license = custom:DatomicFreeEditionLicense - makedepends = unzip + license = APACHE depends = java-environment - depends = maven - optdepends = leiningen + depends = clojure options = !strip - source = datomic-0.9.5561.zip::https://my.datomic.com/downloads/free/0.9.5561 + source = datomic-1.0.7075.zip::https://datomic-pro-downloads.s3.amazonaws.com/1.0.7075/datomic-pro-1.0.7075.zip source = transactor.properties source = datomic.service - md5sums = b6852a34960e3083c55141cadef521da - md5sums = 19e8f0692138f52961a584d8f428a306 - md5sums = 1a90dced8cf46b36a2a87c666aa3b47b + md5sums = f79a099f1c8fc0b43c96835afc7db2f2 + md5sums = 8424bc5c8bff46a5d8251d046ba466df + md5sums = 139868f11fd75560a4d15c4d74939e48 pkgname = datomic - diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..8213f8ac243f --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +# Blacklist everything by default +* + +# Whitelist directories so file patterns may subsequently be whitelisted +!*/ + +# Whitelist specific file patterns +!/.gitignore +!/PKGBUILD +!/datomic.install +!/datomic.service +!/transactor.properties @@ -1,34 +1,31 @@ -# Maintainer: Daichi Shinozaki <dsdseg at gmail dot com> -# Special thanks to: James Henderson +# Maintainer: Dylon Edwards <dylon dot devo at gmail dot com> +# Contributor: Daichi Shinozaki <dsdseg at gmail dot com> +# Contributor: James Henderson pkgname=datomic -pkgver=0.9.5561 +pkgver=1.0.7075 pkgrel=1 pkgdesc="A database of flexible,time-based facts,supporting queries and joins,with elastic scalability,and ACID transactions" arch=('any') -url=https://my.datomic.com/downloads/free -license=('custom:DatomicFreeEditionLicense') -depends=('java-environment' 'maven') -makedepends=('unzip') -optdepends=('leiningen') +url=https://www.datomic.com/ +license=('APACHE') +depends=('java-environment' 'clojure') options=(!strip) -install="$pkgname.install" -source=("$pkgname-$pkgver.zip::https://my.datomic.com/downloads/free/$pkgver" - 'transactor.properties' - $pkgname.service +install="${pkgname}.install" +source=( + "${pkgname}-${pkgver}.zip::https://datomic-pro-downloads.s3.amazonaws.com/${pkgver}/${pkgname}-pro-${pkgver}.zip" + "transactor.properties" + "${pkgname}.service" ) -md5sums=('b6852a34960e3083c55141cadef521da' - '19e8f0692138f52961a584d8f428a306' - '1a90dced8cf46b36a2a87c666aa3b47b') +md5sums=('f79a099f1c8fc0b43c96835afc7db2f2' + '8424bc5c8bff46a5d8251d046ba466df' + '139868f11fd75560a4d15c4d74939e48') package() { - _pkgname="$pkgname-free-$pkgver" - mkdir -p $pkgdir/usr/lib/ $pkgdir/usr/lib/systemd/system - mkdir -p $pkgdir/var/lib/datomic/{data,log} - install -Dm644 $srcdir/$_pkgname/LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE - cp -r "$srcdir/$_pkgname" "$pkgdir"/usr/lib/datomic - cp $srcdir/transactor.properties $pkgdir/usr/lib/datomic/config/ - cp $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system/ - install -Td $srcdir/datomic $pkgdir/etc/logrotate.d/datomic + mkdir -p "${pkgdir}/opt" + cp -r "${srcdir}/${pkgname}-pro-${pkgver}" "${pkgdir}/opt/${pkgname}" + install -D "${srcdir}/${pkgname}.service" -t "${pkgdir}/usr/lib/systemd/system" + install -D "${srcdir}/transactor.properties" -t "${pkgdir}/etc/datomic" + mkdir -p "${pkgdir}/var/lib/datomic" "${pkgdir}/var/log/datomic" } # vim:set ts=2 sw=2 et: diff --git a/datomic.install b/datomic.install index 8d1387d6b7a2..6cabe4605eac 100644 --- a/datomic.install +++ b/datomic.install @@ -4,11 +4,12 @@ pre_install() { post_install() { chown -R datomic /var/lib/datomic + chown -R datomic /var/log/datomic } pre_remove() { - systemctl stop datomic-free - systemctl disable datomic-free + systemctl stop datomic + systemctl disable datomic } post_remove() { diff --git a/datomic.service b/datomic.service index d5f9974b3883..62bee5e49784 100644 --- a/datomic.service +++ b/datomic.service @@ -1,10 +1,10 @@ [Unit] -Description = Datomic (Free Edition) +Description = Datomic Pro [Service] User = datomic Type = simple -ExecStart = /usr/lib/datomic/bin/transactor -Xmx4G -Xms1G /usr/lib/datomic/config/transactor.properties +ExecStart = /opt/datomic/bin/transactor -Xmx4G -Xms1G /etc/datomic/transactor.properties Restart = always [Install] diff --git a/transactor.properties b/transactor.properties index 361b0634ce41..c3c8989497b7 100644 --- a/transactor.properties +++ b/transactor.properties @@ -1,71 +1,165 @@ -################################################################ -# Basic connection settings. +################################################################### -protocol=free +protocol=dev host=localhost port=4334 -## OPTIONAL #################################################### -# The dev: and free: protocols typically use three ports -# starting with the selected :port, but you can specify the -# other ports explicitly, e.g. for virtualization environs -# that do not issue contiguous ports. +## OPTIONAL ####################################################### +## The dev: and free: protocols typically use two ports +## starting with the selected :port, but you can specify the +## second (h2) port explicitly, e.g. for virtualization environs +## that do not issue contiguous ports. # h2-port=4335 -# h2-web-port=4336 -################################################################ -# See http://docs.datomic.com/capacity.html +################################################################### +## Security settings for embedded storage (free and dev). -# Recommended settings for -Xmx4g, ongoing usage. -memory-index-threshold=32m -memory-index-max=128m -object-cache-max=1g +## == Passwords == +## Datomic free/dev has an embedded storage engine with default +## passwords. You can supply the 'admin' password explicitly with +## 'storage-admin-password', and rotate that later by moving it to +## 'old-storage-admin-password', supplying a new +## 'storage-admin-password'. +# storage-admin-password= +# old-storage-admin-password= + +## Peers access storage via the 'datomic' user. You can set/rotate +## the password for 'datomic' using 'storage-datomic-password' and +## 'old-storage-datomic-password' as per above. +## NOTE: If you set the password for 'datomic' peers must connect +## using the same password in the connect URI. +## See https://docs.datomic.com/on-prem/clojure/index.html#datomic.api/connect. +# storage-datomic-password= +# old-storage-datomic-password= + +## == Peer access == +## You can control network access to storage by peers via +## 'storage-access', options are 'local' (the default) and 'remote'. +## NOTE: To enable remote access, you must explicitly specify +## the admin and datomic passwords above. +# storage-access=local + -# Recommended settings for -Xmx4g import jobs. -# memory-index-threshold=512m -# memory-index-max=1g -# object-cache-max=1g -# Recommended settings for -Xmx1g usage, e.g. dev laptops. +################################################################### +# See https://docs.datomic.com/on-prem/capacity.html + + +## Recommended settings for -Xmx4g production usage. # memory-index-threshold=32m -# memory-index-max=128m -# object-cache-max=128m +# memory-index-max=512m +# object-cache-max=1g + + +## Recommended settings for -Xmx1g usage, e.g. dev laptops. +memory-index-threshold=32m +memory-index-max=256m +object-cache-max=128m -## OPTIONAL #################################################### +## OPTIONAL ####################################################### -# Set to false to disable SSL between the peers and the transactor. +## Set to false to disable SSL between the peers and the transactor. # Default: true # encrypt-channel=true -# Data directory is used for dev: and free: storage, and -# as a temporary directory for all storages. -data-dir=/var/lib/datomic/data +## Data directory is used for dev: and free: storage, and +## as a temporary directory for all storages. +data-dir=/var/lib/datomic -# Transactor will log here, see bin/logback.xml to configure logging. -log-dir=/var/lib/datomic/log +## Transactor will log here, see bin/logback.xml to configure logging. +log-dir=/var/log/datomic -# Transactor will write process pid here on startup +## Transactor will write process pid here on startup # pid-file=transactor.pid -## OPTIONAL #################################################### -# See http://docs.datomic.com/capacity.html +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/valcache.html +## Valcache configuration. +## Set these valcache properties to a directory on an SSD to enable valcache + +# valcache-path= +# valcache-max-gb= + + + +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/storage.html +## Memcached configuration. +# memcached=host:port,host:port,... +# memcached-username=datomic +# memcached-password=datomic -# Soft limit on the number of concurrent writes to storage. + + +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/capacity.html + + +## Soft limit on the number of concurrent writes to storage. # Default: 4, Miniumum: 2 # write-concurrency=4 -# Soft limit on the number of concurrent reads to storage. +## Soft limit on the number of concurrent reads to storage. # Default: 2 times write-concurrency, Miniumum: 2 # read-concurrency=8 + +## Parallelism in index jobs. +# Default: 1, Maximum: 8 +# index-parallelism=1 + + + +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/aws.html +## Optional settings for rotating logs to S3 +# (Can be auto-generated by bin/datomic ensure-transactor.) + +# aws-s3-log-bucket-id= + + + +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/aws.html +## Optional settings for Cloudwatch metrics. +# (Can be auto-generated by bin/datomic ensure-transactor.) + +# aws-cloudwatch-region= + +## Pick a unique name to distinguish transactor metrics from different systems. +# aws-cloudwatch-dimension-value=your-system-name + + + +## OPTIONAL ####################################################### +# See https://docs.datomic.com/on-prem/ha.html + + +## The transactor will write a heartbeat into storage on this interval. +## A standby transactor will take over if it sees the heartbeat go +## unwritten for 2x this interval. If your transactor load leads to +## long gc pauses, you can increase this number to prevent the standby +## transactor from unnecessarily taking over during a long gc pause. +# Default: 5000, Miniumum: 5000 +# heartbeat-interval-msec=5000 + + + +## OPTIONAL ####################################################### + + +## The transactor will use this partition for new entities that +## do not explicitly specify a partition. +# Default: :db.part/user +# default-partition=:db.part/user
\ No newline at end of file |