diff --git a/.gitignore b/.gitignore index 96043124..444c8211 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,9 @@ .externalNativeBuild .cxx local.properties -peptidebuild.properties /.kotlin/sessions app/src/main/assets/embedded pep-api-postman.json +# Keystore files - keep these secure and share privately +*.keystore +*.jks diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 46c69763..c4a4ba49 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -60,9 +60,9 @@ fun property(fileName: String, propertyName: String, fallbackEnv: String? = null } } -// Calls property but with peptidebuild.properties as the first argument +// Calls property but with zekobuild.properties as the first argument fun buildproperty(propertyName: String, fallbackEnv: String? = null): String? { - return property("peptidebuild.properties", propertyName, fallbackEnv) + return property("zekobuild.properties", propertyName, fallbackEnv) } android { @@ -87,6 +87,22 @@ android { } } + signingConfigs { + create("release") { + val keystoreFile = buildproperty("keystore.file", "KEYSTORE_FILE") + val keystorePassword = buildproperty("keystore.password", "KEYSTORE_PASSWORD") + val aliasName = buildproperty("key.alias", "KEY_ALIAS") + val keyPasswordValue = buildproperty("key.password", "KEY_PASSWORD") + + if (keystoreFile != null && keystorePassword != null && aliasName != null && keyPasswordValue != null) { + storeFile = file(keystoreFile) + storePassword = keystorePassword + keyAlias = aliasName + this.keyPassword = keyPasswordValue + } + } + } + buildTypes { release { isMinifyEnabled = true @@ -100,7 +116,13 @@ android { "FLAVOUR_ID", "\"${buildproperty("build.flavour_id", "RVX_BUILD_FLAVOUR_ID")}\"" ) - signingConfig = signingConfigs.getByName("debug") + // Use release signing config if available, otherwise fall back to debug + val releaseSigningConfig = signingConfigs.findByName("release") + if (releaseSigningConfig != null && releaseSigningConfig.storeFile?.exists() == true) { + signingConfig = releaseSigningConfig + } else { + signingConfig = signingConfigs.getByName("debug") + } } debug { diff --git a/revoltbuild.properties.example b/revoltbuild.properties.example deleted file mode 100644 index ea6a101c..00000000 --- a/revoltbuild.properties.example +++ /dev/null @@ -1,4 +0,0 @@ -sentry.dsn= -sentry.upload_mappings=true -build.debug.app_name= -build.flavour_id=ZZUU \ No newline at end of file diff --git a/website/_redirects b/website/_redirects new file mode 100644 index 00000000..2255ef05 --- /dev/null +++ b/website/_redirects @@ -0,0 +1,3 @@ +/* /index.html 200 + + diff --git a/zekobuild.properties b/zekobuild.properties new file mode 100644 index 00000000..5ef5ded9 --- /dev/null +++ b/zekobuild.properties @@ -0,0 +1,13 @@ +sentry.dsn= +sentry.upload_mappings=true +build.debug.app_name=ZekoChat +build.flavour_id=ZZUU + +# Release signing configuration +# IMPORTANT: Change these passwords before using in production! +# Share the keystore file (app/release.keystore) securely with team members +# NOTE: For PKCS12 keystores, key.password must match keystore.password +keystore.file=release.keystore +keystore.password=ASK_MAINTAINER +key.alias=release +key.password=ASK_MAINTAINER \ No newline at end of file