Files
gitnex/app/build.gradle
M M Arif 8061078c74 Features and improvements (#1561)
- Add zig lang to files and lang stats bar
- Fix bottom nav menu colors
- HTTP basic auth
- Add pagination to filter labels for issues

closes #1559
closes #1560
closes #803

Reviewed-on: https://codeberg.org/gitnex/GitNex/pulls/1561
Co-authored-by: M M Arif <mmarif@swatian.com>
Co-committed-by: M M Arif <mmarif@swatian.com>
2026-01-09 19:28:55 +01:00

161 lines
6.0 KiB
Groovy

plugins {
id "com.diffplug.spotless" version "8.1.0"
}
apply plugin: 'com.android.application'
android {
defaultConfig {
applicationId = "org.mian.gitnex"
minSdkVersion 26
targetSdkVersion 36
versionCode = 1195
versionName = "12.0.0-dev"
multiDexEnabled = true
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
compileSdk = 36
}
flavorDimensions = ["default"]
productFlavors {
free {
applicationId "org.mian.gitnex"
}
pro {
applicationId "org.mian.gitnex.pro"
}
}
buildFeatures {
viewBinding = true
buildConfig = true
}
buildTypes {
release {
minifyEnabled false
shrinkResources = false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
dependenciesInfo {
includeInApk = false
}
compileOptions {
coreLibraryDesugaringEnabled = true
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_21
}
lint {
abortOnError = false
}
namespace = 'org.mian.gitnex'
defaultConfig {
vectorDrawables.useSupportLibrary = true
}
packagingOptions {
resources {
excludes += [
'META-INF/versions/9/OSGI-INF/MANIFEST.MF',
'META-INF/DEPENDENCIES',
'META-INF/LICENSE',
'META-INF/LICENSE.txt',
'META-INF/NOTICE',
'META-INF/NOTICE.txt'
]
pickFirsts += [
'META-INF/versions/9/OSGI-INF/MANIFEST.MF'
]
}
}
}
configurations {
cleanedAnnotations
compile.exclude group: 'org.jetbrains', module: 'annotations'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.7.1'
implementation 'com.google.android.material:material:1.13.0'
implementation 'androidx.compose.material3:material3:1.4.0'
implementation 'androidx.compose.material3:material3-window-size-class:1.4.0'
implementation 'androidx.viewpager2:viewpager2:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
implementation "androidx.legacy:legacy-support-v4:1.0.0"
implementation "androidx.navigation:navigation-fragment:2.9.6"
implementation "androidx.navigation:navigation-ui:2.9.6"
implementation "androidx.lifecycle:lifecycle-viewmodel:2.10.0"
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.3.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.7.0'
implementation 'com.squareup.okhttp3:okhttp:5.3.2'
implementation 'com.google.code.gson:gson:2.13.2'
implementation 'com.github.ramseth001:TextDrawable:1.1.3'
implementation 'com.squareup.retrofit2:retrofit:3.0.0'
implementation 'com.squareup.retrofit2:converter-gson:3.0.0'
implementation 'com.squareup.retrofit2:converter-scalars:3.0.0'
implementation 'com.squareup.okhttp3:logging-interceptor:5.3.2'
implementation 'org.ocpsoft.prettytime:prettytime:5.0.7.Final'
implementation "com.github.skydoves:colorpickerview:2.3.0"
implementation "io.noties.markwon:core:4.6.2"
implementation "io.noties.markwon:ext-latex:4.6.2"
implementation "io.noties.markwon:ext-strikethrough:4.6.2"
implementation "io.noties.markwon:ext-tables:4.6.2"
implementation "io.noties.markwon:ext-tasklist:4.6.2"
implementation "io.noties.markwon:html:4.6.2"
implementation "io.noties.markwon:image:4.6.2"
implementation "io.noties.markwon:linkify:4.6.2"
implementation "io.noties.markwon:recycler:4.6.2"
implementation "io.noties.markwon:recycler-table:4.6.2"
implementation "io.noties.markwon:simple-ext:4.6.2"
implementation "io.noties.markwon:image-glide:4.6.2"
implementation "com.github.bumptech.glide:glide:5.0.5"
implementation 'com.github.bumptech.glide:annotations:5.0.5'
implementation "com.github.bumptech.glide:okhttp3-integration:5.0.5"
annotationProcessor 'com.github.bumptech.glide:compiler:5.0.5'
implementation "com.caverock:androidsvg-aar:1.4"
implementation "pl.droidsonroids.gif:android-gif-drawable:1.2.30"
implementation 'com.google.guava:guava:33.5.0-jre'
//noinspection NewerVersionAvailable,GradleDependency
implementation 'commons-io:commons-io:2.5'
implementation 'org.apache.commons:commons-lang3:3.20.0'
implementation "com.github.chrisbanes:PhotoView:2.3.0"
implementation 'ch.acra:acra-mail:5.13.1'
implementation 'ch.acra:acra-limiter:5.13.1'
implementation 'ch.acra:acra-notification:5.13.1'
implementation 'androidx.room:room-runtime:2.8.4'
annotationProcessor 'androidx.room:room-compiler:2.8.4'
implementation "androidx.work:work-runtime:2.11.0"
implementation "io.mikael:urlbuilder:2.0.9"
implementation "org.codeberg.gitnex-garage:emoji-java:v5.1.2"
//noinspection GradleDependency
coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.5"
implementation 'androidx.biometric:biometric:1.1.0'
//noinspection GradleDependency
implementation 'com.github.chrisvest:stormpot:2.4.2'
implementation 'androidx.browser:browser:1.9.0'
implementation 'com.google.android.flexbox:flexbox:3.0.0'
implementation('org.codeberg.gitnex:tea4j-autodeploy:fa90c7d20a') {
exclude module: 'org.apache.oltu.oauth2.common'
}
implementation 'io.github.amrdeveloper:codeview:1.3.9'
constraints {
it.implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0")
it.implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0")
}
}
spotless {
java {
target 'src/**/*.java'
importOrder('android', 'androidx', 'com', 'junit', 'net', 'org', 'java', 'javax', '', '\\#')
removeUnusedImports()
googleJavaFormat().aosp()
leadingSpacesToTabs()
formatAnnotations()
}
}