diff --git a/build.gradle b/build.gradle
index 20a8ec64acc71ca227ade83c21a2017294b49595..c4af8a64492ab7e43c17cf37458b714df3e4e6cb 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,6 +5,7 @@ buildscript {
     ext.obfs4_version = '0.0.12-dev-40245c4a'
     ext.junit_version = '5.7.2'
     ext.mockk_version = '1.10.4'
+    ext.ktlint_plugin_version = '10.1.0'
     repositories {
         google()
         mavenCentral()
@@ -19,6 +20,7 @@ buildscript {
 allprojects {
     repositories {
         google()
+        //noinspection JcenterRepositoryObsolete
         jcenter() // for dependencies that haven't moved, yet
         mavenCentral()
     }
diff --git a/gradle/ktlint.gradle b/gradle/ktlint.gradle
index 59358c39ebde3cd15034378ccf07c44f7c4ad243..22e03eae400e982e4a69ff8db4ca7cb3899c89c3 100644
--- a/gradle/ktlint.gradle
+++ b/gradle/ktlint.gradle
@@ -1,11 +1,10 @@
 ktlint {
-    version = "0.41.0"
+    version = "0.42.1"
     android = true
     enableExperimentalRules = false
     verbose = true
     disabledRules = [
             "import-ordering",
             "no-blank-line-before-rbrace",
-            "indent", // remove in 0.42 https://github.com/pinterest/ktlint/issues/764
     ]
 }
diff --git a/mailbox-android/build.gradle b/mailbox-android/build.gradle
index 23af48a7bdc66968523f48e0362cb2fb9024eaf7..323ed59f4861aa1e5b7837f55b3476e9779b806a 100644
--- a/mailbox-android/build.gradle
+++ b/mailbox-android/build.gradle
@@ -5,7 +5,7 @@ plugins {
     id 'kotlin-android'
     id 'kotlin-kapt'
     id 'dagger.hilt.android.plugin'
-    id "org.jlleitschuh.gradle.ktlint" version "10.1.0"
+    id "org.jlleitschuh.gradle.ktlint" version "$ktlint_plugin_version"
 }
 
 android {
diff --git a/mailbox-cli/build.gradle b/mailbox-cli/build.gradle
index c2d1a7c948c1857df79b5ef734ed4a0a69dfac98..6d07db5931dc9c7ae6c2c8e1525ed9f828173c59 100644
--- a/mailbox-cli/build.gradle
+++ b/mailbox-cli/build.gradle
@@ -3,6 +3,7 @@ plugins {
     id 'idea'
     id 'org.jetbrains.kotlin.jvm'
     id 'org.jetbrains.kotlin.kapt'
+    id "org.jlleitschuh.gradle.ktlint" version "$ktlint_plugin_version"
 }
 
 sourceCompatibility = 1.8
@@ -44,6 +45,8 @@ test {
     }
 }
 
+apply from: "${rootProject.rootDir}/gradle/ktlint.gradle"
+
 // At the moment for non-Android projects we need to explicitly mark the code generated by kapt
 // as 'generated source code' for correct highlighting and resolve in IDE.
 idea {
diff --git a/mailbox-cli/src/main/java/org/briarproject/mailbox/cli/Main.kt b/mailbox-cli/src/main/java/org/briarproject/mailbox/cli/Main.kt
index e47a3d7fd7a47b953937453d8b77b877766d4e54..24784e8ba8a1a0c2b205a4ed2282a68950c36e82 100644
--- a/mailbox-cli/src/main/java/org/briarproject/mailbox/cli/Main.kt
+++ b/mailbox-cli/src/main/java/org/briarproject/mailbox/cli/Main.kt
@@ -59,10 +59,12 @@ class Main : CliktCommand(
         val javaCliComponent = DaggerJavaCliComponent.builder().build()
         javaCliComponent.inject(this)
 
-        Runtime.getRuntime().addShutdownHook(Thread {
-            lifecycleManager.stopServices()
-            lifecycleManager.waitForShutdown()
-        })
+        Runtime.getRuntime().addShutdownHook(
+            Thread {
+                lifecycleManager.stopServices()
+                lifecycleManager.waitForShutdown()
+            }
+        )
 
         lifecycleManager.startServices()
         lifecycleManager.waitForStartup()
diff --git a/mailbox-core/build.gradle b/mailbox-core/build.gradle
index 7735fd50ab055516de40d8acfbc9f818df092124..303a1eddbf1bb02f4de758db24b8a9acc22c02b8 100644
--- a/mailbox-core/build.gradle
+++ b/mailbox-core/build.gradle
@@ -3,6 +3,7 @@ plugins {
     id 'idea'
     id 'org.jetbrains.kotlin.jvm'
     id 'org.jetbrains.kotlin.kapt'
+    id "org.jlleitschuh.gradle.ktlint" version "$ktlint_plugin_version"
 }
 
 sourceCompatibility = 1.8
@@ -35,3 +36,5 @@ test {
         events "passed", "skipped", "failed"
     }
 }
+
+apply from: "${rootProject.rootDir}/gradle/ktlint.gradle"
diff --git a/mailbox-core/src/main/java/org/briarproject/mailbox/core/db/DatabaseComponentImpl.kt b/mailbox-core/src/main/java/org/briarproject/mailbox/core/db/DatabaseComponentImpl.kt
index c82dd66dc8bf6be7c3514c3bea98dbf56189c0fe..86804941fc8d92e3f2efb250f18679f4a1280107 100644
--- a/mailbox-core/src/main/java/org/briarproject/mailbox/core/db/DatabaseComponentImpl.kt
+++ b/mailbox-core/src/main/java/org/briarproject/mailbox/core/db/DatabaseComponentImpl.kt
@@ -4,11 +4,11 @@ class DatabaseComponentImpl : DatabaseComponent {
 
     override fun open(listener: MigrationListener?): Boolean {
         // TODO: implement this
-        return true;
+        return true
     }
 
     override fun close() {
         // TODO: implement this
     }
 
-}
\ No newline at end of file
+}
diff --git a/mailbox-core/src/main/java/org/briarproject/mailbox/core/lifecycle/Service.kt b/mailbox-core/src/main/java/org/briarproject/mailbox/core/lifecycle/Service.kt
index cd1a9a86e91cc2c14d5a29182ed9445dc7c3be8b..0c185c92469c1acbe4c3cc40abbfd65ed9b09984 100644
--- a/mailbox-core/src/main/java/org/briarproject/mailbox/core/lifecycle/Service.kt
+++ b/mailbox-core/src/main/java/org/briarproject/mailbox/core/lifecycle/Service.kt
@@ -19,4 +19,4 @@ interface Service {
     @Throws(ServiceException::class)
     fun stopService()
 
-}
\ No newline at end of file
+}