diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index c6566840..b0e8c81f 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -10,7 +10,7 @@ plugins {
}
android {
- namespace = "dev.beefers.vendetta.manager"
+ namespace = "app.revenge.manager"
compileSdk = 34
defaultConfig {
@@ -21,6 +21,16 @@ android {
versionCode = versionName!!.split("-").first().replace(".", "").toInt()
+ buildConfigField("String", "MOD_NAME", "\"Revenge\"")
+ buildConfigField("String", "MANAGER_NAME", "\"RevengeManager\"")
+ buildConfigField("String", "REPO", "\"revenge-mod/revenge\"")
+ buildConfigField("String", "ORG_LINK", "\"https://github.com/revenge-mod\"")
+ buildConfigField("String", "INVITE_LINK", "\"https://discord.gg/ddcQf3s2Uq\"")
+ buildConfigField("String", "MODDED_APP_PACKAGE_NAME", "\"app.revenge.app\"")
+ buildConfigField("int", "MODDED_APP_ICON", "0xFEB23A42")
+ buildConfigField("int", "MODDED_APP_ICON_ALPHA", "0xFFFBB33C")
+ buildConfigField("int", "MODDED_APP_ICON_OTHER", "0xFFD3575E")
+
buildConfigField("String", "GIT_BRANCH", "\"${getCurrentBranch()}\"")
buildConfigField("String", "GIT_COMMIT", "\"${getLatestCommit()}\"")
buildConfigField("boolean", "GIT_LOCAL_COMMITS", "${hasLocalCommits()}")
diff --git a/app/src/androidTest/java/dev/beefers/vendetta/manager/ExampleInstrumentedTest.kt b/app/src/androidTest/java/dev/beefers/vendetta/manager/ExampleInstrumentedTest.kt
deleted file mode 100644
index cc845710..00000000
--- a/app/src/androidTest/java/dev/beefers/vendetta/manager/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package dev.beefers.vendetta.manager
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("dev.beefers.vendetta.manager", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 73a85640..f02dc93a 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -49,7 +49,7 @@
-
+
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ManagerApplication.kt b/app/src/main/java/app/revenge/manager/ManagerApplication.kt
similarity index 72%
rename from app/src/main/java/dev/beefers/vendetta/manager/ManagerApplication.kt
rename to app/src/main/java/app/revenge/manager/ManagerApplication.kt
index f1274f7a..cb3532b1 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ManagerApplication.kt
+++ b/app/src/main/java/app/revenge/manager/ManagerApplication.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager
+package app.revenge.manager
import android.app.Application
import android.app.NotificationChannel
@@ -7,13 +7,13 @@ import android.content.Context
import androidx.work.ExistingPeriodicWorkPolicy
import androidx.work.PeriodicWorkRequestBuilder
import androidx.work.WorkManager
-import dev.beefers.vendetta.manager.di.httpModule
-import dev.beefers.vendetta.manager.di.managerModule
-import dev.beefers.vendetta.manager.di.repositoryModule
-import dev.beefers.vendetta.manager.di.viewModelModule
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.domain.manager.UpdateCheckerDuration
-import dev.beefers.vendetta.manager.updatechecker.worker.UpdateWorker
+import app.revenge.manager.di.httpModule
+import app.revenge.manager.di.managerModule
+import app.revenge.manager.di.repositoryModule
+import app.revenge.manager.di.viewModelModule
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.domain.manager.UpdateCheckerDuration
+import app.revenge.manager.updatechecker.worker.UpdateWorker
import org.koin.android.ext.android.get
import org.koin.android.ext.koin.androidContext
import org.koin.core.context.startKoin
@@ -39,7 +39,7 @@ class ManagerApplication : Application() {
if (prefs.updateDuration != UpdateCheckerDuration.DISABLED) {
val duration = prefs.updateDuration
WorkManager.getInstance(applicationContext).enqueueUniquePeriodicWork(
- "dev.beefers.vendetta.manager.UPDATE_CHECK",
+ "app.revenge.manager.UPDATE_CHECK",
ExistingPeriodicWorkPolicy.KEEP,
PeriodicWorkRequestBuilder(duration.time, duration.unit).build()
)
@@ -50,7 +50,7 @@ class ManagerApplication : Application() {
val nm = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
val updates = NotificationChannel(
- "${BuildConfig.APPLICATION_ID}.notifications.UPDATE",
+ "${app.revenge.manager.BuildConfig.APPLICATION_ID}.notifications.UPDATE",
"Discord updates",
NotificationManager.IMPORTANCE_DEFAULT
)
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/di/HttpModule.kt b/app/src/main/java/app/revenge/manager/di/HttpModule.kt
similarity index 80%
rename from app/src/main/java/dev/beefers/vendetta/manager/di/HttpModule.kt
rename to app/src/main/java/app/revenge/manager/di/HttpModule.kt
index 8e8760e6..4c690da2 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/di/HttpModule.kt
+++ b/app/src/main/java/app/revenge/manager/di/HttpModule.kt
@@ -1,7 +1,7 @@
-package dev.beefers.vendetta.manager.di
+package app.revenge.manager.di
-import dev.beefers.vendetta.manager.network.service.HttpService
-import dev.beefers.vendetta.manager.network.service.RestService
+import app.revenge.manager.network.service.HttpService
+import app.revenge.manager.network.service.RestService
import io.ktor.client.HttpClient
import io.ktor.client.engine.cio.CIO
import io.ktor.client.plugins.contentnegotiation.ContentNegotiation
diff --git a/app/src/main/java/app/revenge/manager/di/ManagerModule.kt b/app/src/main/java/app/revenge/manager/di/ManagerModule.kt
new file mode 100644
index 00000000..3ff82778
--- /dev/null
+++ b/app/src/main/java/app/revenge/manager/di/ManagerModule.kt
@@ -0,0 +1,13 @@
+package app.revenge.manager.di
+
+import app.revenge.manager.domain.manager.DownloadManager
+import app.revenge.manager.domain.manager.InstallManager
+import app.revenge.manager.domain.manager.PreferenceManager
+import org.koin.core.module.dsl.singleOf
+import org.koin.dsl.module
+
+val managerModule = module {
+ singleOf(::DownloadManager)
+ singleOf(::PreferenceManager)
+ singleOf(::InstallManager)
+}
\ No newline at end of file
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/di/RepositoryModule.kt b/app/src/main/java/app/revenge/manager/di/RepositoryModule.kt
similarity index 55%
rename from app/src/main/java/dev/beefers/vendetta/manager/di/RepositoryModule.kt
rename to app/src/main/java/app/revenge/manager/di/RepositoryModule.kt
index 6ba01d70..42cb16b1 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/di/RepositoryModule.kt
+++ b/app/src/main/java/app/revenge/manager/di/RepositoryModule.kt
@@ -1,6 +1,6 @@
-package dev.beefers.vendetta.manager.di
+package app.revenge.manager.di
-import dev.beefers.vendetta.manager.domain.repository.RestRepository
+import app.revenge.manager.domain.repository.RestRepository
import org.koin.core.module.dsl.singleOf
import org.koin.dsl.module
diff --git a/app/src/main/java/app/revenge/manager/di/ViewModelModule.kt b/app/src/main/java/app/revenge/manager/di/ViewModelModule.kt
new file mode 100644
index 00000000..bce976d2
--- /dev/null
+++ b/app/src/main/java/app/revenge/manager/di/ViewModelModule.kt
@@ -0,0 +1,17 @@
+package app.revenge.manager.di
+
+import app.revenge.manager.ui.viewmodel.home.HomeViewModel
+import app.revenge.manager.ui.viewmodel.installer.InstallerViewModel
+import app.revenge.manager.ui.viewmodel.installer.LogViewerViewModel
+import app.revenge.manager.ui.viewmodel.libraries.LibrariesViewModel
+import app.revenge.manager.ui.viewmodel.settings.AdvancedSettingsViewModel
+import org.koin.core.module.dsl.factoryOf
+import org.koin.dsl.module
+
+val viewModelModule = module {
+ factoryOf(::InstallerViewModel)
+ factoryOf(::AdvancedSettingsViewModel)
+ factoryOf(::HomeViewModel)
+ factoryOf(::LogViewerViewModel)
+ factoryOf(::LibrariesViewModel)
+}
\ No newline at end of file
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/DownloadManager.kt b/app/src/main/java/app/revenge/manager/domain/manager/DownloadManager.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/manager/DownloadManager.kt
rename to app/src/main/java/app/revenge/manager/domain/manager/DownloadManager.kt
index 6416b872..93606e13 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/DownloadManager.kt
+++ b/app/src/main/java/app/revenge/manager/domain/manager/DownloadManager.kt
@@ -1,10 +1,11 @@
-package dev.beefers.vendetta.manager.domain.manager
+package app.revenge.manager.domain.manager
import android.app.DownloadManager
import android.content.Context
import android.database.Cursor
import android.net.Uri
import androidx.core.content.getSystemService
+import app.revenge.manager.BuildConfig
import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.delay
@@ -21,7 +22,7 @@ class DownloadManager(
suspend fun downloadSplit(version: String, split: String, out: File, onProgressUpdate: (Float?) -> Unit): DownloadResult =
download("${prefs.mirror.baseUrl}/tracker/download/$version/$split", out, onProgressUpdate)
- suspend fun downloadVendetta(out: File, onProgressUpdate: (Float?) -> Unit) =
+ suspend fun downloadMod(out: File, onProgressUpdate: (Float?) -> Unit) =
download(
"https://github.com/revenge-mod/revenge-xposed/releases/latest/download/app-release.apk",
out,
@@ -54,7 +55,7 @@ class DownloadManager(
?: throw IllegalStateException("DownloadManager service is not available")
val downloadId = DownloadManager.Request(Uri.parse(url))
- .setTitle("Bunny Manager")
+ .setTitle("${app.revenge.manager.BuildConfig.MOD_NAME} Manager")
.setDescription("Downloading ${out.name}...")
.setDestinationUri(Uri.fromFile(out))
.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE)
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/InstallManager.kt b/app/src/main/java/app/revenge/manager/domain/manager/InstallManager.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/manager/InstallManager.kt
rename to app/src/main/java/app/revenge/manager/domain/manager/InstallManager.kt
index 83086c35..d702e95a 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/InstallManager.kt
+++ b/app/src/main/java/app/revenge/manager/domain/manager/InstallManager.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.domain.manager
+package app.revenge.manager.domain.manager
import android.annotation.SuppressLint
import android.app.PendingIntent
@@ -10,7 +10,8 @@ import android.os.Build
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
-import dev.beefers.vendetta.manager.installer.session.InstallService
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.installer.session.InstallService
class InstallManager(
private val context: Context,
@@ -28,7 +29,7 @@ class InstallManager(
when {
Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -> {
context.packageManager.getPackageInfo(
- prefs.packageName.ifBlank { "io.github.pyoncord.app" },
+ prefs.packageName.ifBlank { app.revenge.manager.BuildConfig.MODDED_APP_PACKAGE_NAME },
PackageManager.PackageInfoFlags.of(
0L
)
@@ -37,7 +38,7 @@ class InstallManager(
else -> {
context.packageManager.getPackageInfo(
- prefs.packageName.ifBlank { "io.github.pyoncord.app" },
+ prefs.packageName.ifBlank { app.revenge.manager.BuildConfig.MODDED_APP_PACKAGE_NAME },
0
)
}
@@ -50,7 +51,7 @@ class InstallManager(
fun uninstall() {
current?.let {
val callbackIntent = Intent(context, InstallService::class.java).apply {
- action = "vendetta.actions.ACTION_UNINSTALL"
+ action = "revenge.actions.ACTION_UNINSTALL"
}
@SuppressLint("UnspecifiedImmutableFlag")
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/PreferenceManager.kt b/app/src/main/java/app/revenge/manager/domain/manager/PreferenceManager.kt
similarity index 82%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/manager/PreferenceManager.kt
rename to app/src/main/java/app/revenge/manager/domain/manager/PreferenceManager.kt
index 06732560..0b1864ae 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/PreferenceManager.kt
+++ b/app/src/main/java/app/revenge/manager/domain/manager/PreferenceManager.kt
@@ -1,12 +1,13 @@
-package dev.beefers.vendetta.manager.domain.manager
+package app.revenge.manager.domain.manager
import android.content.Context
import android.os.Build
import android.os.Environment
import androidx.annotation.StringRes
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.base.BasePreferenceManager
-import dev.beefers.vendetta.manager.utils.DiscordVersion
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.base.BasePreferenceManager
+import app.revenge.manager.utils.DiscordVersion
import java.io.File
import java.util.concurrent.TimeUnit
@@ -14,11 +15,12 @@ class PreferenceManager(context: Context) :
BasePreferenceManager(context.getSharedPreferences("prefs", Context.MODE_PRIVATE)) {
val DEFAULT_MODULE_LOCATION =
- (context.externalCacheDir ?: File(Environment.getExternalStorageDirectory(), Environment.DIRECTORY_DOWNLOADS).resolve("BunnyManager").also { it.mkdirs() }).resolve("xposed.apk")
+ (context.externalCacheDir ?: File(Environment.getExternalStorageDirectory(), Environment.DIRECTORY_DOWNLOADS).resolve(
+ app.revenge.manager.BuildConfig.MANAGER_NAME).also { it.mkdirs() }).resolve("xposed.apk")
- var packageName by stringPreference("package_name", "io.github.pyoncord.app")
+ var packageName by stringPreference("package_name", app.revenge.manager.BuildConfig.MODDED_APP_PACKAGE_NAME)
- var appName by stringPreference("app_name", "Bunny")
+ var appName by stringPreference("app_name", app.revenge.manager.BuildConfig.MOD_NAME)
var discordVersion by stringPreference("discord_version", "")
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/base/BasePreferenceManager.kt b/app/src/main/java/app/revenge/manager/domain/manager/base/BasePreferenceManager.kt
similarity index 98%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/manager/base/BasePreferenceManager.kt
rename to app/src/main/java/app/revenge/manager/domain/manager/base/BasePreferenceManager.kt
index b84bad31..2efe632e 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/manager/base/BasePreferenceManager.kt
+++ b/app/src/main/java/app/revenge/manager/domain/manager/base/BasePreferenceManager.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.domain.manager.base
+package app.revenge.manager.domain.manager.base
import android.content.SharedPreferences
import androidx.compose.runtime.getValue
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/receiver/InstallReceiver.kt b/app/src/main/java/app/revenge/manager/domain/receiver/InstallReceiver.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/receiver/InstallReceiver.kt
rename to app/src/main/java/app/revenge/manager/domain/receiver/InstallReceiver.kt
index 9831c508..8a06ce91 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/receiver/InstallReceiver.kt
+++ b/app/src/main/java/app/revenge/manager/domain/receiver/InstallReceiver.kt
@@ -1,10 +1,10 @@
-package dev.beefers.vendetta.manager.domain.receiver
+package app.revenge.manager.domain.receiver
import android.annotation.SuppressLint
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
-import dev.beefers.vendetta.manager.domain.manager.InstallManager
+import app.revenge.manager.domain.manager.InstallManager
import org.koin.core.component.KoinComponent
import org.koin.core.component.inject
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/domain/repository/RestRepository.kt b/app/src/main/java/app/revenge/manager/domain/repository/RestRepository.kt
similarity index 72%
rename from app/src/main/java/dev/beefers/vendetta/manager/domain/repository/RestRepository.kt
rename to app/src/main/java/app/revenge/manager/domain/repository/RestRepository.kt
index be0b18b0..33152fe7 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/domain/repository/RestRepository.kt
+++ b/app/src/main/java/app/revenge/manager/domain/repository/RestRepository.kt
@@ -1,8 +1,8 @@
-package dev.beefers.vendetta.manager.domain.repository
+package app.revenge.manager.domain.repository
-import dev.beefers.vendetta.manager.network.service.RestService
-import dev.beefers.vendetta.manager.network.utils.transform
-import dev.beefers.vendetta.manager.utils.DiscordVersion
+import app.revenge.manager.network.service.RestService
+import app.revenge.manager.network.utils.transform
+import app.revenge.manager.utils.DiscordVersion
class RestRepository(
private val service: RestService
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/Installer.kt b/app/src/main/java/app/revenge/manager/installer/Installer.kt
similarity index 71%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/Installer.kt
rename to app/src/main/java/app/revenge/manager/installer/Installer.kt
index de566e5f..cec7f30a 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/Installer.kt
+++ b/app/src/main/java/app/revenge/manager/installer/Installer.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer
+package app.revenge.manager.installer
import java.io.File
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstaller.kt b/app/src/main/java/app/revenge/manager/installer/session/SessionInstaller.kt
similarity index 91%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstaller.kt
rename to app/src/main/java/app/revenge/manager/installer/session/SessionInstaller.kt
index 98668989..26cfcf45 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstaller.kt
+++ b/app/src/main/java/app/revenge/manager/installer/session/SessionInstaller.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.session
+package app.revenge.manager.installer.session
import android.annotation.SuppressLint
import android.app.PendingIntent
@@ -7,7 +7,7 @@ import android.content.Intent
import android.content.pm.PackageInstaller.SessionParams
import android.content.pm.PackageManager
import android.os.Build
-import dev.beefers.vendetta.manager.installer.Installer
+import app.revenge.manager.installer.Installer
import java.io.File
internal class SessionInstaller(private val context: Context) : Installer {
@@ -37,7 +37,7 @@ internal class SessionInstaller(private val context: Context) : Installer {
}
val callbackIntent = Intent(context, InstallService::class.java).apply {
- action = "vendetta.actions.ACTION_INSTALL"
+ action = "revenge.actions.ACTION_INSTALL"
}
@SuppressLint("UnspecifiedImmutableFlag")
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstallerService.kt b/app/src/main/java/app/revenge/manager/installer/session/SessionInstallerService.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstallerService.kt
rename to app/src/main/java/app/revenge/manager/installer/session/SessionInstallerService.kt
index 13dc5528..40b5c4e6 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/session/SessionInstallerService.kt
+++ b/app/src/main/java/app/revenge/manager/installer/session/SessionInstallerService.kt
@@ -1,12 +1,12 @@
-package dev.beefers.vendetta.manager.installer.session
+package app.revenge.manager.installer.session
import android.app.Service
import android.content.Intent
import android.content.pm.PackageInstaller
import android.os.IBinder
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.ui.activity.MainActivity
-import dev.beefers.vendetta.manager.utils.showToast
+import app.revenge.manager.R
+import app.revenge.manager.ui.activity.MainActivity
+import app.revenge.manager.utils.showToast
class InstallService : Service() {
@@ -21,7 +21,7 @@ class InstallService : Service() {
)
override fun onStartCommand(intent: Intent, flags: Int, startId: Int): Int {
- val isInstall = intent.action == "vendetta.actions.ACTION_INSTALL"
+ val isInstall = intent.action == "revenge.actions.ACTION_INSTALL"
when (val statusCode = intent.getIntExtra(PackageInstaller.EXTRA_STATUS, -999)) {
PackageInstaller.STATUS_PENDING_USER_ACTION -> {
@Suppress("DEPRECATION") // No.
@@ -41,10 +41,10 @@ class InstallService : Service() {
// Send error messages back to the activity for debugging (to be received by InstallerScreen)
startActivity(
- Intent("vendetta.actions.ACTION_INSTALL_FINISHED").apply {
+ Intent("revenge.actions.ACTION_INSTALL_FINISHED").apply {
setClass(this@InstallService, MainActivity::class.java)
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
- putExtra("vendetta.extras.EXTRA_MESSAGE", intent.getStringExtra(PackageInstaller.EXTRA_STATUS_MESSAGE))
+ putExtra("revenge.extras.EXTRA_MESSAGE", intent.getStringExtra(PackageInstaller.EXTRA_STATUS_MESSAGE))
}
)
}
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuInstaller.kt b/app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuInstaller.kt
similarity index 87%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuInstaller.kt
rename to app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuInstaller.kt
index 06cb235d..7986b703 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuInstaller.kt
+++ b/app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuInstaller.kt
@@ -1,10 +1,10 @@
-package dev.beefers.vendetta.manager.installer.shizuku
+package app.revenge.manager.installer.shizuku
import android.content.Context
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.InstallManager
-import dev.beefers.vendetta.manager.installer.Installer
-import dev.beefers.vendetta.manager.utils.showToast
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.InstallManager
+import app.revenge.manager.installer.Installer
+import app.revenge.manager.utils.showToast
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import org.koin.core.component.KoinComponent
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuPermissions.kt b/app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuPermissions.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuPermissions.kt
rename to app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuPermissions.kt
index 0273bf53..95bbd0ab 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/shizuku/ShizukuPermissions.kt
+++ b/app/src/main/java/app/revenge/manager/installer/shizuku/ShizukuPermissions.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.shizuku
+package app.revenge.manager.installer.shizuku
import android.content.pm.PackageManager
import kotlinx.coroutines.DelicateCoroutinesApi
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/Step.kt b/app/src/main/java/app/revenge/manager/installer/step/Step.kt
similarity index 97%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/Step.kt
rename to app/src/main/java/app/revenge/manager/installer/step/Step.kt
index 0e5deaca..66d27d09 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/Step.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/Step.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.step
+package app.revenge.manager.installer.step
import androidx.annotation.StringRes
import androidx.compose.runtime.Stable
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepGroup.kt b/app/src/main/java/app/revenge/manager/installer/step/StepGroup.kt
similarity index 65%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepGroup.kt
rename to app/src/main/java/app/revenge/manager/installer/step/StepGroup.kt
index 8ffa25e1..1236d332 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepGroup.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/StepGroup.kt
@@ -1,7 +1,7 @@
-package dev.beefers.vendetta.manager.installer.step
+package app.revenge.manager.installer.step
import androidx.annotation.StringRes
-import dev.beefers.vendetta.manager.R
+import app.revenge.manager.R
/**
* Represents a group of [Step]s
@@ -18,7 +18,7 @@ enum class StepGroup(@StringRes val nameRes: Int) {
PATCHING(R.string.group_patch),
/**
- * Only contains the [install step][dev.beefers.vendetta.manager.installer.step.installing.InstallStep]
+ * Only contains the [install step][app.revenge.manager.installer.step.installing.InstallStep]
*/
INSTALLING(R.string.group_installing)
}
\ No newline at end of file
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepRunner.kt b/app/src/main/java/app/revenge/manager/installer/step/StepRunner.kt
similarity index 76%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepRunner.kt
rename to app/src/main/java/app/revenge/manager/installer/step/StepRunner.kt
index 8d6d92de..f1df2e63 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepRunner.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/StepRunner.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.step
+package app.revenge.manager.installer.step
import android.content.Context
import android.os.Build
@@ -7,21 +7,20 @@ import androidx.compose.runtime.Stable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
-import dev.beefers.vendetta.manager.BuildConfig
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.step.download.DownloadBaseStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLangStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLibsStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadResourcesStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadVendettaStep
-import dev.beefers.vendetta.manager.installer.step.installing.InstallStep
-import dev.beefers.vendetta.manager.installer.step.patching.AddVendettaStep
-import dev.beefers.vendetta.manager.installer.step.patching.PatchManifestsStep
-import dev.beefers.vendetta.manager.installer.step.patching.PresignApksStep
-import dev.beefers.vendetta.manager.installer.step.patching.ReplaceIconStep
-import dev.beefers.vendetta.manager.installer.util.LogEntry
-import dev.beefers.vendetta.manager.installer.util.Logger
-import dev.beefers.vendetta.manager.utils.DiscordVersion
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.step.download.DownloadBaseStep
+import app.revenge.manager.installer.step.download.DownloadLangStep
+import app.revenge.manager.installer.step.download.DownloadLibsStep
+import app.revenge.manager.installer.step.download.DownloadResourcesStep
+import app.revenge.manager.installer.step.download.DownloadModStep
+import app.revenge.manager.installer.step.installing.InstallStep
+import app.revenge.manager.installer.step.patching.AddModStep
+import app.revenge.manager.installer.step.patching.PatchManifestsStep
+import app.revenge.manager.installer.step.patching.PresignApksStep
+import app.revenge.manager.installer.step.patching.ReplaceIconStep
+import app.revenge.manager.installer.util.LogEntry
+import app.revenge.manager.installer.util.Logger
+import app.revenge.manager.utils.DiscordVersion
import kotlinx.collections.immutable.ImmutableList
import kotlinx.collections.immutable.toImmutableList
import kotlinx.coroutines.delay
@@ -34,7 +33,7 @@ import java.io.File
*
* Credit to rushii (github.com/rushiiMachine)
*
- * @param discordVersion Version of Discord to inject Vendetta into
+ * @param discordVersion Version of Discord to inject Revenge into
*/
@Stable
class StepRunner(
@@ -44,14 +43,14 @@ class StepRunner(
private val preferenceManager: PreferenceManager by inject()
private val context: Context by inject()
private val debugInfo = """
- Bunny Manager v${BuildConfig.VERSION_NAME}
- Built from commit ${BuildConfig.GIT_COMMIT} on ${BuildConfig.GIT_BRANCH} ${if (BuildConfig.GIT_LOCAL_CHANGES || BuildConfig.GIT_LOCAL_COMMITS) "(Changes Present)" else ""}
+ ${app.revenge.manager.BuildConfig.MOD_NAME} Manager v${app.revenge.manager.BuildConfig.VERSION_NAME}
+ Built from commit ${app.revenge.manager.BuildConfig.GIT_COMMIT} on ${app.revenge.manager.BuildConfig.GIT_BRANCH} ${if (app.revenge.manager.BuildConfig.GIT_LOCAL_CHANGES || app.revenge.manager.BuildConfig.GIT_LOCAL_COMMITS) "(Changes Present)" else ""}
Running Android ${Build.VERSION.RELEASE}, API level ${Build.VERSION.SDK_INT}
Supported ABIs: ${Build.SUPPORTED_ABIS.joinToString()}
Device: ${Build.MANUFACTURER} - ${Build.MODEL} (${Build.DEVICE})
${if(Build.VERSION.SDK_INT > Build.VERSION_CODES.S) "SOC: ${Build.SOC_MANUFACTURER} ${Build.SOC_MODEL}\n" else "\n\n"}
- Adding Bunny to Discord v$discordVersion
+ Adding ${app.revenge.manager.BuildConfig.MOD_NAME} to Discord v$discordVersion
""".trimIndent()
@@ -71,7 +70,7 @@ class StepRunner(
private val cacheDir =
context.externalCacheDir
?: File(Environment.getExternalStorageDirectory(), Environment.DIRECTORY_DOWNLOADS)
- .resolve("BunnyManager")
+ .resolve(app.revenge.manager.BuildConfig.MANAGER_NAME)
.also { it.mkdirs() }
/**
@@ -120,13 +119,13 @@ class StepRunner(
add(DownloadLibsStep(discordCacheDir, patchedDir, discordVersion.toVersionCode()))
add(DownloadLangStep(discordCacheDir, patchedDir, discordVersion.toVersionCode()))
add(DownloadResourcesStep(discordCacheDir, patchedDir, discordVersion.toVersionCode()))
- add(DownloadVendettaStep(patchedDir))
+ add(DownloadModStep(patchedDir))
// Patching
if (preferenceManager.patchIcon) add(ReplaceIconStep())
add(PatchManifestsStep())
add(PresignApksStep(signedDir))
- add(AddVendettaStep(signedDir, lspatchedDir))
+ add(AddModStep(signedDir, lspatchedDir))
// Installing
add(InstallStep(lspatchedDir))
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepStatus.kt b/app/src/main/java/app/revenge/manager/installer/step/StepStatus.kt
similarity index 83%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepStatus.kt
rename to app/src/main/java/app/revenge/manager/installer/step/StepStatus.kt
index c4153989..c4bbec33 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/StepStatus.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/StepStatus.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.step
+package app.revenge.manager.installer.step
enum class StepStatus {
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadBaseStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadBaseStep.kt
similarity index 72%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadBaseStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/DownloadBaseStep.kt
index 622d0bc0..9f1eaa98 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadBaseStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadBaseStep.kt
@@ -1,8 +1,8 @@
-package dev.beefers.vendetta.manager.installer.step.download
+package app.revenge.manager.installer.step.download
import androidx.compose.runtime.Stable
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.download.base.DownloadStep
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.download.base.DownloadStep
import java.io.File
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLangStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadLangStep.kt
similarity index 76%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLangStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/DownloadLangStep.kt
index 71431fee..30ddecbf 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLangStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadLangStep.kt
@@ -1,8 +1,8 @@
-package dev.beefers.vendetta.manager.installer.step.download
+package app.revenge.manager.installer.step.download
import androidx.compose.runtime.Stable
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.download.base.DownloadStep
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.download.base.DownloadStep
import java.io.File
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLibsStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadLibsStep.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLibsStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/DownloadLibsStep.kt
index 27c014a2..b42c3ee2 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadLibsStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadLibsStep.kt
@@ -1,9 +1,9 @@
-package dev.beefers.vendetta.manager.installer.step.download
+package app.revenge.manager.installer.step.download
import android.os.Build
import androidx.compose.runtime.Stable
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.download.base.DownloadStep
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.download.base.DownloadStep
import java.io.File
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadVendettaStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadModStep.kt
similarity index 52%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadVendettaStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/DownloadModStep.kt
index fc0b706c..cb235739 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadVendettaStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadModStep.kt
@@ -1,21 +1,21 @@
-package dev.beefers.vendetta.manager.installer.step.download
+package app.revenge.manager.installer.step.download
import androidx.compose.runtime.Stable
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.download.base.DownloadStep
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.download.base.DownloadStep
import java.io.File
/**
- * Downloads the Vendetta XPosed module
+ * Downloads the Revenge XPosed module
*
- * https://github.com/pyoncord/BunnyXposed
+ * https://github.com/revenge-mod/revenge-xposed
*/
@Stable
-class DownloadVendettaStep(
+class DownloadModStep(
workingDir: File
): DownloadStep() {
- override val nameRes = R.string.step_dl_vd
+ override val nameRes = R.string.step_dl_mod
override val url: String = "https://github.com/revenge-mod/revenge-xposed/releases/latest/download/app-release.apk"
override val destination = preferenceManager.moduleLocation
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadResourcesStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadResourcesStep.kt
similarity index 75%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadResourcesStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/DownloadResourcesStep.kt
index d914eb19..95ac266a 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/DownloadResourcesStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/DownloadResourcesStep.kt
@@ -1,8 +1,8 @@
-package dev.beefers.vendetta.manager.installer.step.download
+package app.revenge.manager.installer.step.download
import androidx.compose.runtime.Stable
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.download.base.DownloadStep
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.download.base.DownloadStep
import java.io.File
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/base/DownloadStep.kt b/app/src/main/java/app/revenge/manager/installer/step/download/base/DownloadStep.kt
similarity index 83%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/base/DownloadStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/download/base/DownloadStep.kt
index 4e381596..e9197c90 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/download/base/DownloadStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/download/base/DownloadStep.kt
@@ -1,23 +1,21 @@
-package dev.beefers.vendetta.manager.installer.step.download.base
+package app.revenge.manager.installer.step.download.base
import android.content.Context
import androidx.compose.runtime.Stable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.DownloadManager
-import dev.beefers.vendetta.manager.domain.manager.DownloadResult
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.step.Step
-import dev.beefers.vendetta.manager.installer.step.StepGroup
-import dev.beefers.vendetta.manager.installer.step.StepRunner
-import dev.beefers.vendetta.manager.installer.step.StepStatus
-import dev.beefers.vendetta.manager.utils.mainThread
-import dev.beefers.vendetta.manager.utils.showToast
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.DownloadManager
+import app.revenge.manager.domain.manager.DownloadResult
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.installer.step.StepStatus
+import app.revenge.manager.utils.mainThread
+import app.revenge.manager.utils.showToast
import kotlinx.coroutines.CancellationException
-import kotlinx.coroutines.Dispatchers
-import kotlinx.coroutines.withContext
import org.koin.core.component.inject
import java.io.File
import kotlin.math.roundToInt
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/installing/InstallStep.kt b/app/src/main/java/app/revenge/manager/installer/step/installing/InstallStep.kt
similarity index 62%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/installing/InstallStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/installing/InstallStep.kt
index dc353de3..cc474fff 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/installing/InstallStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/installing/InstallStep.kt
@@ -1,16 +1,16 @@
-package dev.beefers.vendetta.manager.installer.step.installing
+package app.revenge.manager.installer.step.installing
import android.content.Context
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.InstallMethod
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.Installer
-import dev.beefers.vendetta.manager.installer.session.SessionInstaller
-import dev.beefers.vendetta.manager.installer.shizuku.ShizukuInstaller
-import dev.beefers.vendetta.manager.installer.step.Step
-import dev.beefers.vendetta.manager.installer.step.StepGroup
-import dev.beefers.vendetta.manager.installer.step.StepRunner
-import dev.beefers.vendetta.manager.utils.isMiui
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.InstallMethod
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.Installer
+import app.revenge.manager.installer.session.SessionInstaller
+import app.revenge.manager.installer.shizuku.ShizukuInstaller
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.utils.isMiui
import org.koin.core.component.inject
import java.io.File
diff --git a/app/src/main/java/app/revenge/manager/installer/step/patching/AddModStep.kt b/app/src/main/java/app/revenge/manager/installer/step/patching/AddModStep.kt
new file mode 100644
index 00000000..a2450bd1
--- /dev/null
+++ b/app/src/main/java/app/revenge/manager/installer/step/patching/AddModStep.kt
@@ -0,0 +1,40 @@
+package app.revenge.manager.installer.step.patching
+
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.installer.step.download.DownloadModStep
+import java.io.File
+
+/**
+ * Uses LSPatch to inject the Revenge XPosed module into Discord
+ *
+ * @param signedDir The signed apks to patch
+ * @param lspatchedDir Output directory for LSPatch
+ */
+class AddModStep(
+ private val signedDir: File,
+ private val lspatchedDir: File
+) : Step() {
+
+ override val group = StepGroup.PATCHING
+ override val nameRes = R.string.step_add_mod
+
+ override suspend fun run(runner: StepRunner) {
+ val mod = runner.getCompletedStep().workingCopy
+
+ runner.logger.i("Adding ${app.revenge.manager.BuildConfig.MOD_NAME}Xposed module with LSPatch")
+ val files = signedDir.listFiles()
+ ?.takeIf { it.isNotEmpty() }
+ ?: throw Error("Missing APKs from signing step")
+
+ app.revenge.manager.installer.util.Patcher.patch(
+ runner.logger,
+ outputDir = lspatchedDir,
+ apkPaths = files.map { it.absolutePath },
+ embeddedModules = listOf(mod.absolutePath)
+ )
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PatchManifestsStep.kt b/app/src/main/java/app/revenge/manager/installer/step/patching/PatchManifestsStep.kt
similarity index 76%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PatchManifestsStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/patching/PatchManifestsStep.kt
index 2d5d3661..8e826c8f 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PatchManifestsStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/patching/PatchManifestsStep.kt
@@ -1,17 +1,17 @@
-package dev.beefers.vendetta.manager.installer.step.patching
+package app.revenge.manager.installer.step.patching
import com.github.diamondminer88.zip.ZipReader
import com.github.diamondminer88.zip.ZipWriter
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.step.Step
-import dev.beefers.vendetta.manager.installer.step.StepGroup
-import dev.beefers.vendetta.manager.installer.step.StepRunner
-import dev.beefers.vendetta.manager.installer.step.download.DownloadBaseStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLangStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLibsStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadResourcesStep
-import dev.beefers.vendetta.manager.installer.util.ManifestPatcher
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.installer.step.download.DownloadBaseStep
+import app.revenge.manager.installer.step.download.DownloadLangStep
+import app.revenge.manager.installer.step.download.DownloadLibsStep
+import app.revenge.manager.installer.step.download.DownloadResourcesStep
+import app.revenge.manager.installer.util.ManifestPatcher
import org.koin.core.component.inject
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PresignApksStep.kt b/app/src/main/java/app/revenge/manager/installer/step/patching/PresignApksStep.kt
similarity index 76%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PresignApksStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/patching/PresignApksStep.kt
index fed1fde4..6ce414c2 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/PresignApksStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/patching/PresignApksStep.kt
@@ -1,18 +1,18 @@
-package dev.beefers.vendetta.manager.installer.step.patching
+package app.revenge.manager.installer.step.patching
import android.os.Build
import com.github.diamondminer88.zip.ZipCompression
import com.github.diamondminer88.zip.ZipReader
import com.github.diamondminer88.zip.ZipWriter
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.installer.step.Step
-import dev.beefers.vendetta.manager.installer.step.StepGroup
-import dev.beefers.vendetta.manager.installer.step.StepRunner
-import dev.beefers.vendetta.manager.installer.step.download.DownloadBaseStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLangStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadLibsStep
-import dev.beefers.vendetta.manager.installer.step.download.DownloadResourcesStep
-import dev.beefers.vendetta.manager.installer.util.Signer
+import app.revenge.manager.R
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.installer.step.download.DownloadBaseStep
+import app.revenge.manager.installer.step.download.DownloadLangStep
+import app.revenge.manager.installer.step.download.DownloadLibsStep
+import app.revenge.manager.installer.step.download.DownloadResourcesStep
+import app.revenge.manager.installer.util.Signer
import java.io.File
/**
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/ReplaceIconStep.kt b/app/src/main/java/app/revenge/manager/installer/step/patching/ReplaceIconStep.kt
similarity index 61%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/ReplaceIconStep.kt
rename to app/src/main/java/app/revenge/manager/installer/step/patching/ReplaceIconStep.kt
index c453ff92..9b9a3e1f 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/step/patching/ReplaceIconStep.kt
+++ b/app/src/main/java/app/revenge/manager/installer/step/patching/ReplaceIconStep.kt
@@ -1,30 +1,26 @@
-package dev.beefers.vendetta.manager.installer.step.patching
+package app.revenge.manager.installer.step.patching
-import android.os.Build
import android.content.Context
import androidx.compose.ui.graphics.Color
import com.github.diamondminer88.zip.ZipWriter
-import com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceIdentifier
-import com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.step.Step
-import dev.beefers.vendetta.manager.installer.step.StepGroup
-import dev.beefers.vendetta.manager.installer.step.StepRunner
-import dev.beefers.vendetta.manager.installer.step.download.DownloadBaseStep
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil.addColorResource
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil.addResource
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil.getMainArscChunk
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil.getPackageChunk
-import dev.beefers.vendetta.manager.installer.utils.ArscUtil.getResourceFileName
-import dev.beefers.vendetta.manager.installer.utils.AxmlUtil
-import dev.beefers.vendetta.manager.utils.DiscordVersion
-import dev.beefers.vendetta.manager.utils.getResBytes
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.step.Step
+import app.revenge.manager.installer.step.StepGroup
+import app.revenge.manager.installer.step.StepRunner
+import app.revenge.manager.installer.step.download.DownloadBaseStep
+import app.revenge.manager.installer.utils.ArscUtil
+import app.revenge.manager.installer.utils.ArscUtil.addColorResource
+import app.revenge.manager.installer.utils.ArscUtil.getMainArscChunk
+import app.revenge.manager.installer.utils.ArscUtil.getPackageChunk
+import app.revenge.manager.installer.utils.ArscUtil.getResourceFileName
+import app.revenge.manager.installer.utils.AxmlUtil
+import app.revenge.manager.utils.DiscordVersion
import org.koin.core.component.inject
/**
- * Replaces the existing app icons with Vendetta tinted ones
+ * Replaces the existing app icons with Revenge tinted ones
*/
class ReplaceIconStep : Step() {
@@ -47,7 +43,7 @@ class ReplaceIconStep : Step() {
runner.logger.i("Patching icon assets (squareIcon=$squareIconFile, roundIcon=$roundIconFile)")
- val backgroundColor = arsc.getPackageChunk().addColorResource("bunny_color", Color(0xFF48488B))
+ val backgroundColor = arsc.getPackageChunk().addColorResource("brand", Color(app.revenge.manager.BuildConfig.MODDED_APP_ICON))
val postfix = when (preferences.channel) {
DiscordVersion.Type.BETA -> "beta"
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/ArscUtil.kt b/app/src/main/java/app/revenge/manager/installer/util/ArscUtil.kt
similarity index 97%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/ArscUtil.kt
rename to app/src/main/java/app/revenge/manager/installer/util/ArscUtil.kt
index aad4496c..9059b224 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/ArscUtil.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/ArscUtil.kt
@@ -1,11 +1,11 @@
// https://github.com/Aliucord/Manager/blob/main/app/src/main/kotlin/com/aliucord/manager/installer/util/ArscUtil.kt
-package dev.beefers.vendetta.manager.installer.utils
+package app.revenge.manager.installer.utils
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.toArgb
import com.github.diamondminer88.zip.ZipReader
import com.google.devrel.gmscore.tools.apk.arsc.*
-import dev.beefers.vendetta.manager.BuildConfig
+import app.revenge.manager.BuildConfig
import java.io.File
object ArscUtil {
@@ -90,7 +90,7 @@ object ArscUtil {
// Add a new resource entry to the type spec chunk
// HACK: Resource index returned by addResource is off by 1 in release builds due to optimizations or something
- val resourceIdx = specChunk.addResource(/* flags = */ 0) + if (BuildConfig.DEBUG) 0 else 1
+ val resourceIdx = specChunk.addResource(/* flags = */ 0) + if (app.revenge.manager.BuildConfig.DEBUG) 0 else 1
for (typeChunk in typeChunks) {
// If no matching config, add a null entry and try next chunk
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/AxmlUtil.kt b/app/src/main/java/app/revenge/manager/installer/util/AxmlUtil.kt
similarity index 98%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/AxmlUtil.kt
rename to app/src/main/java/app/revenge/manager/installer/util/AxmlUtil.kt
index af2d3dd3..f840b17d 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/AxmlUtil.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/AxmlUtil.kt
@@ -1,7 +1,7 @@
// https://github.com/Aliucord/Manager/blob/main/app/src/main/kotlin/com/aliucord/manager/installer/util/AxmlUtil.kt
-package dev.beefers.vendetta.manager.installer.utils
+package app.revenge.manager.installer.utils
-import dev.beefers.vendetta.manager.utils.find
+import app.revenge.manager.utils.find
import com.github.diamondminer88.zip.ZipReader
import com.github.diamondminer88.zip.ZipWriter
import com.google.devrel.gmscore.tools.apk.arsc.*
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/LogEntry.kt b/app/src/main/java/app/revenge/manager/installer/util/LogEntry.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/LogEntry.kt
rename to app/src/main/java/app/revenge/manager/installer/util/LogEntry.kt
index 448ad0d2..8bb5245b 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/LogEntry.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/LogEntry.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.util
+package app.revenge.manager.installer.util
import android.annotation.SuppressLint
import android.os.Parcel
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Logger.kt b/app/src/main/java/app/revenge/manager/installer/util/Logger.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/Logger.kt
rename to app/src/main/java/app/revenge/manager/installer/util/Logger.kt
index 4c166e48..2c88d2a6 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Logger.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/Logger.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.util
+package app.revenge.manager.installer.util
import android.util.Log
import androidx.compose.runtime.Stable
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/ManifestPatcher.kt b/app/src/main/java/app/revenge/manager/installer/util/ManifestPatcher.kt
similarity index 99%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/ManifestPatcher.kt
rename to app/src/main/java/app/revenge/manager/installer/util/ManifestPatcher.kt
index 9549252d..dcea828b 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/ManifestPatcher.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/ManifestPatcher.kt
@@ -1,7 +1,6 @@
-package dev.beefers.vendetta.manager.installer.util
+package app.revenge.manager.installer.util
import android.Manifest
-import android.os.Build
import pxb.android.axml.AxmlReader
import pxb.android.axml.AxmlVisitor
import pxb.android.axml.AxmlWriter
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Patcher.kt b/app/src/main/java/app/revenge/manager/installer/util/Patcher.kt
similarity index 86%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/Patcher.kt
rename to app/src/main/java/app/revenge/manager/installer/util/Patcher.kt
index 14635b57..c4df48a8 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Patcher.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/Patcher.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.installer.util
+package app.revenge.manager.installer.util
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
@@ -26,7 +26,7 @@ object Patcher {
"-m",
*embeddedModules.toTypedArray(),
"-k",
- Signer.keyStore.absolutePath,
+ app.revenge.manager.installer.util.Signer.keyStore.absolutePath,
"password",
"alias",
"password"
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Signer.kt b/app/src/main/java/app/revenge/manager/installer/util/Signer.kt
similarity index 93%
rename from app/src/main/java/dev/beefers/vendetta/manager/installer/util/Signer.kt
rename to app/src/main/java/app/revenge/manager/installer/util/Signer.kt
index 3fb097f9..4123dfce 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/installer/util/Signer.kt
+++ b/app/src/main/java/app/revenge/manager/installer/util/Signer.kt
@@ -1,8 +1,9 @@
-package dev.beefers.vendetta.manager.installer.util
+package app.revenge.manager.installer.util
import android.content.Context
import com.android.apksig.ApkSigner
-import dev.beefers.vendetta.manager.utils.Constants
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.utils.Constants
import org.bouncycastle.asn1.x500.X500Name
import org.bouncycastle.asn1.x509.SubjectPublicKeyInfo
import org.bouncycastle.cert.X509v3CertificateBuilder
@@ -32,7 +33,7 @@ object Signer : KoinComponent {
val keyStore: File by lazy {
val ks = filesDir.resolve("ks.keystore")
migrate(cacheDir, filesDir)
- migrate(Constants.VENDETTA_DIR, filesDir)
+ migrate(Constants.MOD_DIR, filesDir)
ks.also {
if (!it.exists()) {
it.createNewFile()
@@ -53,7 +54,7 @@ object Signer : KoinComponent {
val certificate = keyStore.getCertificate(alias) as X509Certificate
ApkSigner.SignerConfig.Builder(
- "Bunny",
+ app.revenge.manager.BuildConfig.MOD_NAME,
keyStore.getKey(alias, password) as PrivateKey,
listOf(certificate)
).build()
@@ -75,7 +76,7 @@ object Signer : KoinComponent {
do serialNumber = SecureRandom().nextInt().toBigInteger()
while (serialNumber < BigInteger.ZERO)
- val x500Name = X500Name("CN=Bunny Manager")
+ val x500Name = X500Name("CN=${app.revenge.manager.BuildConfig.MOD_NAME} Manager")
val pair = KeyPairGenerator.getInstance("RSA").run {
initialize(2048)
generateKeyPair()
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Commit.kt b/app/src/main/java/app/revenge/manager/network/dto/Commit.kt
similarity index 90%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/dto/Commit.kt
rename to app/src/main/java/app/revenge/manager/network/dto/Commit.kt
index 6d1e2380..fcf1d131 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Commit.kt
+++ b/app/src/main/java/app/revenge/manager/network/dto/Commit.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.network.dto
+package app.revenge.manager.network.dto
import kotlinx.datetime.Instant
import kotlinx.serialization.SerialName
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Index.kt b/app/src/main/java/app/revenge/manager/network/dto/Index.kt
similarity index 82%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/dto/Index.kt
rename to app/src/main/java/app/revenge/manager/network/dto/Index.kt
index 8ade0f9c..f6041740 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Index.kt
+++ b/app/src/main/java/app/revenge/manager/network/dto/Index.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.network.dto
+package app.revenge.manager.network.dto
import kotlinx.serialization.Serializable
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Release.kt b/app/src/main/java/app/revenge/manager/network/dto/Release.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/dto/Release.kt
rename to app/src/main/java/app/revenge/manager/network/dto/Release.kt
index 5ac480c2..fabfa8a4 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/Release.kt
+++ b/app/src/main/java/app/revenge/manager/network/dto/Release.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.network.dto
+package app.revenge.manager.network.dto
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/User.kt b/app/src/main/java/app/revenge/manager/network/dto/User.kt
similarity index 81%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/dto/User.kt
rename to app/src/main/java/app/revenge/manager/network/dto/User.kt
index 029e3708..f9e69cbe 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/dto/User.kt
+++ b/app/src/main/java/app/revenge/manager/network/dto/User.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.network.dto
+package app.revenge.manager.network.dto
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/service/HttpService.kt b/app/src/main/java/app/revenge/manager/network/service/HttpService.kt
similarity index 83%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/service/HttpService.kt
rename to app/src/main/java/app/revenge/manager/network/service/HttpService.kt
index b0fc0f63..03b06dbc 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/service/HttpService.kt
+++ b/app/src/main/java/app/revenge/manager/network/service/HttpService.kt
@@ -1,8 +1,8 @@
-package dev.beefers.vendetta.manager.network.service
+package app.revenge.manager.network.service
-import dev.beefers.vendetta.manager.network.utils.ApiError
-import dev.beefers.vendetta.manager.network.utils.ApiFailure
-import dev.beefers.vendetta.manager.network.utils.ApiResponse
+import app.revenge.manager.network.utils.ApiError
+import app.revenge.manager.network.utils.ApiFailure
+import app.revenge.manager.network.utils.ApiResponse
import io.ktor.client.HttpClient
import io.ktor.client.request.HttpRequestBuilder
import io.ktor.client.request.request
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/service/RestService.kt b/app/src/main/java/app/revenge/manager/network/service/RestService.kt
similarity index 75%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/service/RestService.kt
rename to app/src/main/java/app/revenge/manager/network/service/RestService.kt
index 0b48ab01..678220b5 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/service/RestService.kt
+++ b/app/src/main/java/app/revenge/manager/network/service/RestService.kt
@@ -1,9 +1,9 @@
-package dev.beefers.vendetta.manager.network.service
+package app.revenge.manager.network.service
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.network.dto.Commit
-import dev.beefers.vendetta.manager.network.dto.Index
-import dev.beefers.vendetta.manager.network.dto.Release
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.network.dto.Commit
+import app.revenge.manager.network.dto.Index
+import app.revenge.manager.network.dto.Release
import io.ktor.client.request.parameter
import io.ktor.client.request.url
import kotlinx.coroutines.Dispatchers
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/utils/ApiResponse.kt b/app/src/main/java/app/revenge/manager/network/utils/ApiResponse.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/utils/ApiResponse.kt
rename to app/src/main/java/app/revenge/manager/network/utils/ApiResponse.kt
index baf3e1ab..f4a173de 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/utils/ApiResponse.kt
+++ b/app/src/main/java/app/revenge/manager/network/utils/ApiResponse.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.network.utils
+package app.revenge.manager.network.utils
import io.ktor.http.HttpStatusCode
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/network/utils/CommitsPagingSource.kt b/app/src/main/java/app/revenge/manager/network/utils/CommitsPagingSource.kt
similarity index 75%
rename from app/src/main/java/dev/beefers/vendetta/manager/network/utils/CommitsPagingSource.kt
rename to app/src/main/java/app/revenge/manager/network/utils/CommitsPagingSource.kt
index 81b81e62..3b197a40 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/network/utils/CommitsPagingSource.kt
+++ b/app/src/main/java/app/revenge/manager/network/utils/CommitsPagingSource.kt
@@ -1,9 +1,10 @@
-package dev.beefers.vendetta.manager.network.utils
+package app.revenge.manager.network.utils
import androidx.paging.PagingSource
import androidx.paging.PagingState
-import dev.beefers.vendetta.manager.domain.repository.RestRepository
-import dev.beefers.vendetta.manager.network.dto.Commit
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.domain.repository.RestRepository
+import app.revenge.manager.network.dto.Commit
class CommitsPagingSource(
private val repo: RestRepository
@@ -17,7 +18,7 @@ class CommitsPagingSource(
override suspend fun load(params: LoadParams): LoadResult {
val page = params.key ?: 0
- return when (val response = repo.getCommits("pyoncord/Bunny", page)) {
+ return when (val response = repo.getCommits(app.revenge.manager.BuildConfig.REPO, page)) {
is ApiResponse.Success -> LoadResult.Page(
data = response.data,
prevKey = if (page > 0) page - 1 else null,
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/activity/MainActivity.kt b/app/src/main/java/app/revenge/manager/ui/activity/MainActivity.kt
similarity index 73%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/activity/MainActivity.kt
rename to app/src/main/java/app/revenge/manager/ui/activity/MainActivity.kt
index 7d98d57b..2c7a583c 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/activity/MainActivity.kt
+++ b/app/src/main/java/app/revenge/manager/ui/activity/MainActivity.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.activity
+package app.revenge.manager.ui.activity
import android.Manifest
import android.content.pm.PackageManager
@@ -6,20 +6,19 @@ import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
-import androidx.compose.animation.ExperimentalAnimationApi
import androidx.core.app.ActivityCompat
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import androidx.lifecycle.lifecycleScope
import cafe.adriel.voyager.navigator.Navigator
import cafe.adriel.voyager.transitions.SlideTransition
-import dev.beefers.vendetta.manager.domain.manager.InstallMethod
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.shizuku.ShizukuPermissions
-import dev.beefers.vendetta.manager.ui.screen.home.HomeScreen
-import dev.beefers.vendetta.manager.ui.screen.installer.InstallerScreen
-import dev.beefers.vendetta.manager.ui.theme.VendettaManagerTheme
-import dev.beefers.vendetta.manager.utils.DiscordVersion
-import dev.beefers.vendetta.manager.utils.Intents
+import app.revenge.manager.domain.manager.InstallMethod
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.shizuku.ShizukuPermissions
+import app.revenge.manager.ui.screen.home.HomeScreen
+import app.revenge.manager.ui.screen.installer.InstallerScreen
+import app.revenge.manager.ui.theme.RevengeManagerTheme
+import app.revenge.manager.utils.DiscordVersion
+import app.revenge.manager.utils.Intents
import kotlinx.coroutines.launch
import org.koin.android.ext.android.inject
@@ -56,7 +55,7 @@ class MainActivity : ComponentActivity() {
}
setContent {
- VendettaManagerTheme {
+ RevengeManagerTheme {
Navigator(screen) {
SlideTransition(it)
}
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/Label.kt b/app/src/main/java/app/revenge/manager/ui/components/Label.kt
similarity index 97%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/Label.kt
rename to app/src/main/java/app/revenge/manager/ui/components/Label.kt
index 565f8a57..440e18b7 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/Label.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/Label.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components
+package app.revenge.manager.ui.components
import androidx.compose.foundation.background
import androidx.compose.foundation.border
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/NavBarSpacer.kt b/app/src/main/java/app/revenge/manager/ui/components/NavBarSpacer.kt
similarity index 73%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/NavBarSpacer.kt
rename to app/src/main/java/app/revenge/manager/ui/components/NavBarSpacer.kt
index 8ce4ed36..a4c620ac 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/NavBarSpacer.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/NavBarSpacer.kt
@@ -1,10 +1,10 @@
-package dev.beefers.vendetta.manager.ui.components
+package app.revenge.manager.ui.components
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.height
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
-import dev.beefers.vendetta.manager.utils.DimenUtils
+import app.revenge.manager.utils.DimenUtils
@Composable
fun NavBarSpacer() {
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/RadioController.kt b/app/src/main/java/app/revenge/manager/ui/components/RadioController.kt
similarity index 94%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/RadioController.kt
rename to app/src/main/java/app/revenge/manager/ui/components/RadioController.kt
index 2c1759a9..6d7e9a6e 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/RadioController.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/RadioController.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components
+package app.revenge.manager.ui.components
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Column
@@ -14,7 +14,6 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
-import androidx.compose.ui.platform.LocalContext
@Composable
inline fun > EnumRadioController(
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/SegmentedButton.kt b/app/src/main/java/app/revenge/manager/ui/components/SegmentedButton.kt
similarity index 97%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/SegmentedButton.kt
rename to app/src/main/java/app/revenge/manager/ui/components/SegmentedButton.kt
index 2f22fd67..47996f83 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/SegmentedButton.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/SegmentedButton.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components
+package app.revenge.manager.ui.components
import androidx.compose.foundation.ExperimentalFoundationApi
import androidx.compose.foundation.background
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/ThinDivider.kt b/app/src/main/java/app/revenge/manager/ui/components/ThinDivider.kt
similarity index 85%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/ThinDivider.kt
rename to app/src/main/java/app/revenge/manager/ui/components/ThinDivider.kt
index 8ea5fe95..4caa75c5 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/ThinDivider.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/ThinDivider.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components
+package app.revenge.manager.ui.components
import androidx.compose.material3.Divider
import androidx.compose.material3.MaterialTheme
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsButton.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsButton.kt
similarity index 92%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsButton.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsButton.kt
index 8307a698..951bee65 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsButton.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsButton.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxWidth
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsCategory.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsCategory.kt
similarity index 89%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsCategory.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsCategory.kt
index c9666f86..6aa88b51 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsCategory.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsCategory.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
@@ -9,7 +9,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.vector.ImageVector
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
-import dev.beefers.vendetta.manager.utils.navigate
+import app.revenge.manager.utils.navigate
@Composable
fun SettingsCategory(
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsChoiceDialog.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsChoiceDialog.kt
similarity index 91%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsChoiceDialog.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsChoiceDialog.kt
index cf84c253..ffd86194 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsChoiceDialog.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsChoiceDialog.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.slideInVertically
@@ -12,8 +12,8 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.res.stringResource
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.ui.components.EnumRadioController
+import app.revenge.manager.R
+import app.revenge.manager.ui.components.EnumRadioController
@Composable
inline fun > SettingsChoiceDialog(
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsHeader.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsHeader.kt
similarity index 88%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsHeader.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsHeader.kt
index 97af58b2..851d55a9 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsHeader.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsHeader.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.MaterialTheme
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItem.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItem.kt
similarity index 97%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItem.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItem.kt
index 08986887..146a2994 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItem.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItem.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItemChoice.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItemChoice.kt
similarity index 96%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItemChoice.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItemChoice.kt
index a9877f05..c4206100 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsItemChoice.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsItemChoice.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.clickable
import androidx.compose.material3.FilledTonalButton
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsSwitch.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsSwitch.kt
similarity index 92%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsSwitch.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsSwitch.kt
index 835bfecb..6a33cea1 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsSwitch.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsSwitch.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.clickable
import androidx.compose.material3.Switch
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsTextField.kt b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsTextField.kt
similarity index 93%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsTextField.kt
rename to app/src/main/java/app/revenge/manager/ui/components/settings/SettingsTextField.kt
index 0b4fa8a3..096514da 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/components/settings/SettingsTextField.kt
+++ b/app/src/main/java/app/revenge/manager/ui/components/settings/SettingsTextField.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.components.settings
+package app.revenge.manager.ui.components.settings
import androidx.compose.foundation.layout.*
import androidx.compose.material3.*
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/about/AboutScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/about/AboutScreen.kt
similarity index 91%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/about/AboutScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/about/AboutScreen.kt
index 554c6e4c..2c52914c 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/about/AboutScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/about/AboutScreen.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.screen.about
+package app.revenge.manager.ui.screen.about
import androidx.compose.foundation.Image
import androidx.compose.foundation.clickable
@@ -30,7 +30,6 @@ import androidx.compose.material3.TopAppBarScrollBehavior
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableIntStateOf
-import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
@@ -45,17 +44,17 @@ import androidx.compose.ui.unit.dp
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.BuildConfig
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.screen.libraries.LibrariesScreen
-import dev.beefers.vendetta.manager.ui.widgets.about.LinkItem
-import dev.beefers.vendetta.manager.ui.widgets.about.ListItem
-import dev.beefers.vendetta.manager.ui.widgets.about.UserEntry
-import dev.beefers.vendetta.manager.utils.Constants
-import dev.beefers.vendetta.manager.utils.DimenUtils
-import dev.beefers.vendetta.manager.utils.getBitmap
-import dev.beefers.vendetta.manager.utils.showToast
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.screen.libraries.LibrariesScreen
+import app.revenge.manager.ui.widgets.about.LinkItem
+import app.revenge.manager.ui.widgets.about.ListItem
+import app.revenge.manager.ui.widgets.about.UserEntry
+import app.revenge.manager.utils.Constants
+import app.revenge.manager.utils.DimenUtils
+import app.revenge.manager.utils.getBitmap
+import app.revenge.manager.utils.showToast
import org.koin.androidx.compose.get
class AboutScreen : Screen {
@@ -107,7 +106,7 @@ class AboutScreen : Screen {
)
Text(
- text = "v${BuildConfig.VERSION_NAME} (${BuildConfig.VERSION_CODE})",
+ text = "v${app.revenge.manager.BuildConfig.VERSION_NAME} (${app.revenge.manager.BuildConfig.VERSION_CODE})",
style = MaterialTheme.typography.labelLarge,
color = LocalContentColor.current.copy(alpha = 0.5f),
modifier = Modifier.clickable(
@@ -134,13 +133,13 @@ class AboutScreen : Screen {
LinkItem(
icon = R.drawable.ic_github,
label = R.string.label_github,
- link = "https://github.com/pyoncord"
+ link = app.revenge.manager.BuildConfig.ORG_LINK
)
LinkItem(
icon = R.drawable.ic_discord,
label = R.string.label_discord,
- link = "https://discord.gg/XjYgWXHb9Q"
+ link = app.revenge.manager.BuildConfig.INVITE_LINK
)
}
}
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/home/HomeScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/home/HomeScreen.kt
similarity index 88%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/home/HomeScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/home/HomeScreen.kt
index 5ab283d7..bd738d0a 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/home/HomeScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/home/HomeScreen.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.screen.home
+package app.revenge.manager.ui.screen.home
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.foundation.ExperimentalFoundationApi
@@ -40,20 +40,19 @@ import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.BuildConfig
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.SegmentedButton
-import dev.beefers.vendetta.manager.ui.screen.installer.InstallerScreen
-import dev.beefers.vendetta.manager.ui.screen.settings.SettingsScreen
-import dev.beefers.vendetta.manager.ui.viewmodel.home.HomeViewModel
-import dev.beefers.vendetta.manager.ui.widgets.AppIcon
-import dev.beefers.vendetta.manager.ui.widgets.dialog.StoragePermissionsDialog
-import dev.beefers.vendetta.manager.ui.widgets.home.CommitList
-import dev.beefers.vendetta.manager.ui.widgets.updater.UpdateDialog
-import dev.beefers.vendetta.manager.utils.Constants
-import dev.beefers.vendetta.manager.utils.DiscordVersion
-import dev.beefers.vendetta.manager.utils.navigate
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.SegmentedButton
+import app.revenge.manager.ui.screen.installer.InstallerScreen
+import app.revenge.manager.ui.screen.settings.SettingsScreen
+import app.revenge.manager.ui.viewmodel.home.HomeViewModel
+import app.revenge.manager.ui.widgets.AppIcon
+import app.revenge.manager.ui.widgets.dialog.StoragePermissionsDialog
+import app.revenge.manager.ui.widgets.home.CommitList
+import app.revenge.manager.ui.widgets.updater.UpdateDialog
+import app.revenge.manager.utils.Constants
+import app.revenge.manager.utils.DiscordVersion
+import app.revenge.manager.utils.navigate
import org.koin.androidx.compose.get
class HomeScreen : Screen {
@@ -84,7 +83,7 @@ class HomeScreen : Screen {
if (
viewModel.showUpdateDialog &&
viewModel.release != null &&
- !BuildConfig.DEBUG
+ !app.revenge.manager.BuildConfig.DEBUG
) {
UpdateDialog(
release = viewModel.release!!,
@@ -182,17 +181,17 @@ class HomeScreen : Screen {
SegmentedButton(
icon = Icons.Filled.OpenInNew,
text = stringResource(R.string.action_launch),
- onClick = { viewModel.launchVendetta() }
+ onClick = { viewModel.launchMod() }
)
SegmentedButton(
icon = Icons.Filled.Info,
text = stringResource(R.string.action_info),
- onClick = { viewModel.launchVendettaInfo() }
+ onClick = { viewModel.launchModInfo() }
)
SegmentedButton(
icon = Icons.Filled.Delete,
text = stringResource(R.string.action_uninstall),
- onClick = { viewModel.uninstallVendetta() }
+ onClick = { viewModel.uninstallMod() }
)
}
}
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/InstallerScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/installer/InstallerScreen.kt
similarity index 91%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/InstallerScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/installer/InstallerScreen.kt
index f6d28e14..b095ad73 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/InstallerScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/installer/InstallerScreen.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.screen.installer
+package app.revenge.manager.ui.screen.installer
import android.content.Intent
import androidx.activity.ComponentActivity
@@ -37,14 +37,14 @@ import cafe.adriel.voyager.core.screen.ScreenKey
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.step.StepStatus
-import dev.beefers.vendetta.manager.ui.viewmodel.installer.InstallerViewModel
-import dev.beefers.vendetta.manager.ui.widgets.dialog.BackWarningDialog
-import dev.beefers.vendetta.manager.ui.widgets.dialog.DownloadFailedDialog
-import dev.beefers.vendetta.manager.ui.widgets.installer.StepGroupCard
-import dev.beefers.vendetta.manager.utils.DiscordVersion
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.step.StepStatus
+import app.revenge.manager.ui.viewmodel.installer.InstallerViewModel
+import app.revenge.manager.ui.widgets.dialog.BackWarningDialog
+import app.revenge.manager.ui.widgets.dialog.DownloadFailedDialog
+import app.revenge.manager.ui.widgets.installer.StepGroupCard
+import app.revenge.manager.utils.DiscordVersion
import okhttp3.internal.toImmutableList
import org.koin.androidx.compose.get
import org.koin.core.parameter.parametersOf
@@ -71,7 +71,7 @@ class InstallerScreen(
// Listen for error messages from InstallService
val intentListener: (Intent) -> Unit = remember {
{
- val msg = it.getStringExtra("vendetta.extras.EXTRA_MESSAGE")
+ val msg = it.getStringExtra("revenge.extras.EXTRA_MESSAGE")
if (msg?.isNotBlank() == true) viewModel.logError(msg)
}
}
@@ -150,7 +150,7 @@ class InstallerScreen(
val installSuccessful = viewModel.runner.currentStep?.status == StepStatus.SUCCESSFUL
if (installSuccessful) {
Button(
- onClick = { viewModel.launchVendetta() },
+ onClick = { viewModel.launchMod() },
modifier = Modifier.fillMaxWidth()
) {
Text(stringResource(R.string.action_launch))
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/LogViewerScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/installer/LogViewerScreen.kt
similarity index 88%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/LogViewerScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/installer/LogViewerScreen.kt
index 7dff35d9..a12a9f53 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/installer/LogViewerScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/installer/LogViewerScreen.kt
@@ -1,12 +1,7 @@
-package dev.beefers.vendetta.manager.ui.screen.installer
+package app.revenge.manager.ui.screen.installer
-import androidx.compose.foundation.ExperimentalFoundationApi
-import androidx.compose.foundation.background
-import androidx.compose.foundation.combinedClickable
import androidx.compose.foundation.horizontalScroll
-import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
-import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.padding
@@ -40,18 +35,19 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.DpOffset
import androidx.compose.ui.unit.dp
+import app.revenge.manager.BuildConfig
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.installer.util.LogEntry
-import dev.beefers.vendetta.manager.ui.viewmodel.installer.LogViewerViewModel
-import dev.beefers.vendetta.manager.ui.widgets.installer.LogLine
-import dev.beefers.vendetta.manager.utils.DimenUtils
-import dev.beefers.vendetta.manager.utils.rememberFileSaveLauncher
-import dev.beefers.vendetta.manager.utils.thenIf
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.installer.util.LogEntry
+import app.revenge.manager.ui.viewmodel.installer.LogViewerViewModel
+import app.revenge.manager.ui.widgets.installer.LogLine
+import app.revenge.manager.utils.DimenUtils
+import app.revenge.manager.utils.rememberFileSaveLauncher
+import app.revenge.manager.utils.thenIf
import org.koin.androidx.compose.get
import org.koin.core.parameter.parametersOf
@@ -119,7 +115,7 @@ class LogViewerScreen(
mutableStateOf(false)
}
- IconButton(onClick = { saveFile.launch("VD-Manager-${System.currentTimeMillis()}.log") }) {
+ IconButton(onClick = { saveFile.launch("${BuildConfig.MOD_NAME}-Manager-${System.currentTimeMillis()}.log") }) {
Icon(
imageVector = Icons.Outlined.Save,
contentDescription = stringResource(R.string.action_save_logs)
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/libraries/LibrariesScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/libraries/LibrariesScreen.kt
similarity index 84%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/libraries/LibrariesScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/libraries/LibrariesScreen.kt
index 4e7f88a2..2df9cdba 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/libraries/LibrariesScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/libraries/LibrariesScreen.kt
@@ -1,10 +1,9 @@
-package dev.beefers.vendetta.manager.ui.screen.libraries
+package app.revenge.manager.ui.screen.libraries
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
-import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.itemsIndexed
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
@@ -19,18 +18,15 @@ import androidx.compose.material3.TopAppBarScrollBehavior
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.nestedscroll.nestedScroll
-import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.ThinDivider
-import dev.beefers.vendetta.manager.ui.viewmodel.libraries.LibrariesViewModel
-import dev.beefers.vendetta.manager.ui.widgets.libraries.LibraryItem
-import org.koin.androidx.compose.get
+import app.revenge.manager.R
+import app.revenge.manager.ui.components.ThinDivider
+import app.revenge.manager.ui.viewmodel.libraries.LibrariesViewModel
+import app.revenge.manager.ui.widgets.libraries.LibraryItem
class LibrariesScreen: Screen {
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AdvancedSettings.kt b/app/src/main/java/app/revenge/manager/ui/screen/settings/AdvancedSettings.kt
similarity index 84%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AdvancedSettings.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/settings/AdvancedSettings.kt
index d22699cf..8c887fef 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AdvancedSettings.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/settings/AdvancedSettings.kt
@@ -1,13 +1,8 @@
-package dev.beefers.vendetta.manager.ui.screen.settings
+package app.revenge.manager.ui.screen.settings
-import android.os.Build
import androidx.compose.foundation.layout.Column
-import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
-import androidx.compose.foundation.layout.asPaddingValues
-import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.systemBars
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
@@ -30,15 +25,14 @@ import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.Mirror
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.NavBarSpacer
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsButton
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsItemChoice
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsSwitch
-import dev.beefers.vendetta.manager.ui.viewmodel.settings.AdvancedSettingsViewModel
-import dev.beefers.vendetta.manager.utils.DimenUtils
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.Mirror
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.settings.SettingsButton
+import app.revenge.manager.ui.components.settings.SettingsItemChoice
+import app.revenge.manager.ui.components.settings.SettingsSwitch
+import app.revenge.manager.ui.viewmodel.settings.AdvancedSettingsViewModel
+import app.revenge.manager.utils.DimenUtils
import org.koin.androidx.compose.get
class AdvancedSettings: Screen {
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AppearanceSettings.kt b/app/src/main/java/app/revenge/manager/ui/screen/settings/AppearanceSettings.kt
similarity index 90%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AppearanceSettings.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/settings/AppearanceSettings.kt
index d9fed258..9279e190 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/AppearanceSettings.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/settings/AppearanceSettings.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.screen.settings
+package app.revenge.manager.ui.screen.settings
import android.os.Build
import androidx.compose.foundation.layout.Column
@@ -26,11 +26,11 @@ import androidx.compose.ui.unit.dp
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsSwitch
-import dev.beefers.vendetta.manager.ui.widgets.settings.ThemePicker
-import dev.beefers.vendetta.manager.utils.DimenUtils
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.settings.SettingsSwitch
+import app.revenge.manager.ui.widgets.settings.ThemePicker
+import app.revenge.manager.utils.DimenUtils
import org.koin.androidx.compose.get
class AppearanceSettings: Screen {
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/CustomizationSettings.kt b/app/src/main/java/app/revenge/manager/ui/screen/settings/CustomizationSettings.kt
similarity index 83%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/CustomizationSettings.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/settings/CustomizationSettings.kt
index 48167929..a6e02966 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/CustomizationSettings.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/settings/CustomizationSettings.kt
@@ -1,13 +1,8 @@
-package dev.beefers.vendetta.manager.ui.screen.settings
+package app.revenge.manager.ui.screen.settings
-import android.os.Build
import androidx.compose.foundation.layout.Column
-import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
-import androidx.compose.foundation.layout.asPaddingValues
-import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.systemBars
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
@@ -28,13 +23,12 @@ import androidx.compose.ui.res.stringResource
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.NavBarSpacer
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsItemChoice
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsSwitch
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsTextField
-import dev.beefers.vendetta.manager.utils.DimenUtils
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.settings.SettingsItemChoice
+import app.revenge.manager.ui.components.settings.SettingsSwitch
+import app.revenge.manager.ui.components.settings.SettingsTextField
+import app.revenge.manager.utils.DimenUtils
import org.koin.androidx.compose.get
class CustomizationSettings: Screen {
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/DeveloperSettings.kt b/app/src/main/java/app/revenge/manager/ui/screen/settings/DeveloperSettings.kt
similarity index 84%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/DeveloperSettings.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/settings/DeveloperSettings.kt
index 6dff7c32..41ab1f08 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/DeveloperSettings.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/settings/DeveloperSettings.kt
@@ -1,13 +1,8 @@
-package dev.beefers.vendetta.manager.ui.screen.settings
+package app.revenge.manager.ui.screen.settings
-import android.os.Build
import androidx.compose.foundation.layout.Column
-import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
-import androidx.compose.foundation.layout.asPaddingValues
-import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.systemBars
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
@@ -27,22 +22,18 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.nestedscroll.nestedScroll
-import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.InstallManager
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.NavBarSpacer
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsButton
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsHeader
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsItemChoice
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsSwitch
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsTextField
-import dev.beefers.vendetta.manager.utils.DimenUtils
-import dev.beefers.vendetta.manager.utils.DiscordVersion
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.InstallManager
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.settings.SettingsButton
+import app.revenge.manager.ui.components.settings.SettingsSwitch
+import app.revenge.manager.ui.components.settings.SettingsTextField
+import app.revenge.manager.utils.DimenUtils
+import app.revenge.manager.utils.DiscordVersion
import org.koin.androidx.compose.get
import java.io.File
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/SettingsScreen.kt b/app/src/main/java/app/revenge/manager/ui/screen/settings/SettingsScreen.kt
similarity index 83%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/SettingsScreen.kt
rename to app/src/main/java/app/revenge/manager/ui/screen/settings/SettingsScreen.kt
index 0593bb9b..5aa06dfe 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/screen/settings/SettingsScreen.kt
+++ b/app/src/main/java/app/revenge/manager/ui/screen/settings/SettingsScreen.kt
@@ -1,12 +1,8 @@
-package dev.beefers.vendetta.manager.ui.screen.settings
+package app.revenge.manager.ui.screen.settings
import androidx.compose.foundation.layout.Column
-import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
-import androidx.compose.foundation.layout.asPaddingValues
-import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.systemBars
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
@@ -31,13 +27,12 @@ import androidx.compose.ui.res.stringResource
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import dev.beefers.vendetta.manager.BuildConfig
-import dev.beefers.vendetta.manager.R
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.ui.components.NavBarSpacer
-import dev.beefers.vendetta.manager.ui.components.settings.SettingsCategory
-import dev.beefers.vendetta.manager.ui.screen.about.AboutScreen
-import dev.beefers.vendetta.manager.utils.DimenUtils
+import app.revenge.manager.BuildConfig
+import app.revenge.manager.R
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.ui.components.settings.SettingsCategory
+import app.revenge.manager.ui.screen.about.AboutScreen
+import app.revenge.manager.utils.DimenUtils
import org.koin.androidx.compose.get
class SettingsScreen : Screen {
@@ -94,10 +89,10 @@ class SettingsScreen : Screen {
text = stringResource(R.string.title_about),
subtext = buildString {
append(stringResource(R.string.app_name))
- append(" v${BuildConfig.VERSION_NAME}")
+ append(" v${app.revenge.manager.BuildConfig.VERSION_NAME}")
if (preferences.isDeveloper) {
- append(" (${BuildConfig.GIT_COMMIT}")
- if (BuildConfig.GIT_LOCAL_CHANGES || BuildConfig.GIT_LOCAL_COMMITS) {
+ append(" (${app.revenge.manager.BuildConfig.GIT_COMMIT}")
+ if (app.revenge.manager.BuildConfig.GIT_LOCAL_CHANGES || app.revenge.manager.BuildConfig.GIT_LOCAL_COMMITS) {
append(" - Local")
}
append(")")
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Theme.kt b/app/src/main/java/app/revenge/manager/ui/theme/Theme.kt
similarity index 85%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Theme.kt
rename to app/src/main/java/app/revenge/manager/ui/theme/Theme.kt
index 7d5d2208..7ac7c58a 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Theme.kt
+++ b/app/src/main/java/app/revenge/manager/ui/theme/Theme.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.theme
+package app.revenge.manager.ui.theme
import android.os.Build
import androidx.compose.foundation.isSystemInDarkTheme
@@ -9,12 +9,12 @@ import androidx.compose.material3.dynamicLightColorScheme
import androidx.compose.material3.lightColorScheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalContext
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.domain.manager.Theme
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.domain.manager.Theme
import org.koin.androidx.compose.get
@Composable
-fun VendettaManagerTheme(
+fun RevengeManagerTheme(
content: @Composable () -> Unit
) {
val prefs = get()
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Type.kt b/app/src/main/java/app/revenge/manager/ui/theme/Type.kt
similarity index 73%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Type.kt
rename to app/src/main/java/app/revenge/manager/ui/theme/Type.kt
index e457eb96..24f395a3 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/theme/Type.kt
+++ b/app/src/main/java/app/revenge/manager/ui/theme/Type.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.theme
+package app.revenge.manager.ui.theme
import androidx.compose.material3.Typography
diff --git a/app/src/main/java/dev/beefers/vendetta/manager/ui/viewmodel/home/HomeViewModel.kt b/app/src/main/java/app/revenge/manager/ui/viewmodel/home/HomeViewModel.kt
similarity index 76%
rename from app/src/main/java/dev/beefers/vendetta/manager/ui/viewmodel/home/HomeViewModel.kt
rename to app/src/main/java/app/revenge/manager/ui/viewmodel/home/HomeViewModel.kt
index 8a0b7ac9..eead09bc 100644
--- a/app/src/main/java/dev/beefers/vendetta/manager/ui/viewmodel/home/HomeViewModel.kt
+++ b/app/src/main/java/app/revenge/manager/ui/viewmodel/home/HomeViewModel.kt
@@ -1,4 +1,4 @@
-package dev.beefers.vendetta.manager.ui.viewmodel.home
+package app.revenge.manager.ui.viewmodel.home
import android.content.Context
import android.content.Intent
@@ -13,21 +13,20 @@ import androidx.paging.PagingConfig
import androidx.paging.cachedIn
import cafe.adriel.voyager.core.model.ScreenModel
import cafe.adriel.voyager.core.model.screenModelScope
-import dev.beefers.vendetta.manager.BuildConfig
-import dev.beefers.vendetta.manager.domain.manager.DownloadManager
-import dev.beefers.vendetta.manager.domain.manager.InstallManager
-import dev.beefers.vendetta.manager.domain.manager.InstallMethod
-import dev.beefers.vendetta.manager.domain.manager.PreferenceManager
-import dev.beefers.vendetta.manager.domain.repository.RestRepository
-import dev.beefers.vendetta.manager.installer.Installer
-import dev.beefers.vendetta.manager.installer.session.SessionInstaller
-import dev.beefers.vendetta.manager.installer.shizuku.ShizukuInstaller
-import dev.beefers.vendetta.manager.network.dto.Release
-import dev.beefers.vendetta.manager.network.utils.CommitsPagingSource
-import dev.beefers.vendetta.manager.network.utils.dataOrNull
-import dev.beefers.vendetta.manager.network.utils.ifSuccessful
-import dev.beefers.vendetta.manager.utils.DiscordVersion
-import dev.beefers.vendetta.manager.utils.isMiui
+import app.revenge.manager.domain.manager.DownloadManager
+import app.revenge.manager.domain.manager.InstallManager
+import app.revenge.manager.domain.manager.InstallMethod
+import app.revenge.manager.domain.manager.PreferenceManager
+import app.revenge.manager.domain.repository.RestRepository
+import app.revenge.manager.installer.Installer
+import app.revenge.manager.installer.session.SessionInstaller
+import app.revenge.manager.installer.shizuku.ShizukuInstaller
+import app.revenge.manager.network.dto.Release
+import app.revenge.manager.network.utils.CommitsPagingSource
+import app.revenge.manager.network.utils.dataOrNull
+import app.revenge.manager.network.utils.ifSuccessful
+import app.revenge.manager.utils.DiscordVersion
+import app.revenge.manager.utils.isMiui
import kotlinx.coroutines.launch
import java.io.File
@@ -42,7 +41,7 @@ class HomeViewModel(
private val cacheDir = context.externalCacheDir ?: File(
Environment.getExternalStorageDirectory(),
Environment.DIRECTORY_DOWNLOADS
- ).resolve("BunnyManager").also { it.mkdirs() }
+ ).resolve(app.revenge.manager.BuildConfig.MANAGER_NAME).also { it.mkdirs() }
var discordVersions by mutableStateOf