// tilda (top-level)
buildscript {
ext.kotlin_version = '1.9.0'
ext.ktor_version = '1.6.2'
ext.exposed_version = '0.31.1'
ext.lucene_version = '8.1.1'
ext.sqlite_version = '3.27.2.1'
}
plugins {
id 'org.jetbrains.kotlin.jvm' version "$kotlin_version"
}
repositories {
mavenCentral()
}
defaultTasks 'installDist'
version = 0.4
group = 'uk.co.nickthecoder'
subprojects {
/*
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
kotlinOptions {
jvmTarget = "1.8"
}
}
*/
repositories {
mavenCentral()
// Required for kotlinx-html-jvm (a dependency of ktor-html-builder)
maven { url "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven" }
}
}
project(':brentwood-core') {
apply plugin: 'kotlin'
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "org.slf4j:slf4j-simple:1.7.26"
implementation 'org.apache.commons:commons-text:1.9'
implementation "io.ktor:ktor-server-core:$ktor_version" // Web framework
implementation "io.ktor:ktor-server-netty:$ktor_version" // Using the lightweight netty http server
implementation "io.ktor:ktor-html-builder:$ktor_version"
implementation "io.ktor:ktor-auth:$ktor_version"
// For Search
implementation 'org.apache.httpcomponents:httpclient:4.5.1'
implementation "org.apache.lucene:lucene-core:$lucene_version"
implementation "org.apache.lucene:lucene-analyzers-common:$lucene_version"
implementation "org.apache.lucene:lucene-queries:$lucene_version"
implementation 'net.sourceforge.htmlcleaner:htmlcleaner:2.15'
// Database access in Images.
implementation("org.jetbrains.exposed:exposed-core:$exposed_version")
implementation("org.jetbrains.exposed:exposed-dao:$exposed_version")
implementation("org.jetbrains.exposed:exposed-jdbc:$exposed_version")
// Markdown to html (for the Software component)
implementation("org.jetbrains:markdown:0.6.0")
implementation "org.xerial:sqlite-jdbc:$sqlite_version"
testImplementation 'junit:junit:4.11'
}
}
project(':brentwood-familyalbum') {
apply plugin: 'kotlin'
dependencies {
implementation project(':brentwood-core')
implementation "io.ktor:ktor-html-builder:$ktor_version"
implementation "io.ktor:ktor-auth:$ktor_version"
implementation("org.jetbrains.exposed:exposed-core:$exposed_version")
implementation("org.jetbrains.exposed:exposed-dao:$exposed_version")
implementation("org.jetbrains.exposed:exposed-jdbc:$exposed_version")
// To migrate from the old database
implementation 'org.mariadb.jdbc:mariadb-java-client:2.1.2'
}
}
project(':brentwood-player') {
apply plugin: 'kotlin'
dependencies {
implementation project(':brentwood-core')
implementation "io.ktor:ktor-html-builder:$ktor_version"
implementation "org.xerial:sqlite-jdbc:$sqlite_version"
implementation "org.slf4j:slf4j-simple:1.7.26" // Required by exposed
implementation("org.jetbrains.exposed:exposed-core:$exposed_version")
implementation("org.jetbrains.exposed:exposed-dao:$exposed_version")
implementation("org.jetbrains.exposed:exposed-jdbc:$exposed_version")
implementation("org.jetbrains.exposed:exposed-java-time:$exposed_version")
// For Search
implementation "org.apache.lucene:lucene-core:$lucene_version"
implementation "org.apache.lucene:lucene-analyzers-common:$lucene_version"
implementation "org.apache.lucene:lucene-queries:$lucene_version"
implementation "org.apache.lucene:lucene-queryparser:$lucene_version"
implementation "org:jaudiotagger:2.0.3" // Read music meta-data.
}
}
project(':brentwood-home') {
apply plugin: 'kotlin'
apply plugin: 'application'
defaultTasks 'run'
mainClassName = "uk.co.nickthecoder.brentwood.home.NickTheCoder"
dependencies {
implementation project(':brentwood-core')
implementation project(':brentwood-familyalbum')
implementation project(':brentwood-player')
implementation "io.ktor:ktor-server-core:$ktor_version"
implementation "io.ktor:ktor-server-netty:$ktor_version"
implementation "io.ktor:ktor-html-builder:$ktor_version"
implementation( "io.ktor:ktor-auth:$ktor_version" )
implementation("org.xerial:sqlite-jdbc:$sqlite_version")
implementation("org.jetbrains.exposed:exposed-core:$exposed_version")
implementation("org.jetbrains.exposed:exposed-dao:$exposed_version")
implementation("org.jetbrains.exposed:exposed-jdbc:$exposed_version")
implementation 'org.apache.httpcomponents:httpclient:4.5.1'
implementation "org.apache.lucene:lucene-core:$lucene_version"
implementation "org.apache.lucene:lucene-analyzers-common:$lucene_version"
implementation "org.apache.lucene:lucene-queries:$lucene_version"
implementation 'net.sourceforge.htmlcleaner:htmlcleaner:2.15'
// Markdown to html (for the 3D component)
implementation("org.jetbrains:markdown:0.6.0")
// Allows access to setUID and setGID system calls.
implementation group: 'net.java.dev.jna', name: 'jna', version: '5.8.0'
}
}