From ec0f7e3f7a431712cdb21cf68aa4a998b0f4209e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patryk=20Mi=C5=9B?= Date: Sun, 23 Apr 2023 14:36:52 +0200 Subject: [PATCH] build: dependency and syntax updates (#17) * build: Update Gradle to v8.1.1 * build: Bump dependencies * build: move repo configurations to settings --------- Co-authored-by: Patryk Mis <24607131+PatrickMis@users.noreply.github.com> --- app/build.gradle.kts | 49 ++-- build.gradle.kts | 15 +- gradle/wrapper/gradle-wrapper.jar | Bin 59203 -> 62076 bytes gradle/wrapper/gradle-wrapper.properties | 7 +- gradlew | 288 ++++++++++++++--------- gradlew.bat | 181 +++++++------- settings.gradle.kts | 17 ++ 7 files changed, 308 insertions(+), 249 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 493d7daf..9b25cbed 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -2,26 +2,13 @@ plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("kotlin-parcelize") - kotlin("plugin.serialization") version "1.7.20" -} - -repositories { - mavenCentral() - maven("https://jitpack.io") - google() - maven { - url = uri("https://maven.pkg.github.com/revanced/revanced-patcher") - credentials { - username = (project.findProperty("gpr.user") ?: System.getenv("GITHUB_ACTOR")) as String - password = (project.findProperty("gpr.key") ?: System.getenv("GITHUB_TOKEN")) as String - } - } + kotlin("plugin.serialization") version "1.8.20" } android { namespace = "app.revanced.manager.compose" compileSdk = 33 - buildToolsVersion = "33.0.0" + buildToolsVersion = "33.0.2" defaultConfig { applicationId = "app.revanced.manager.compose" @@ -49,24 +36,24 @@ android { buildFeatures.compose = true - composeOptions.kotlinCompilerExtensionVersion = "1.4.0" + composeOptions.kotlinCompilerExtensionVersion = "1.4.6" } dependencies { // AndroidX Core - implementation("androidx.core:core-ktx:1.9.0") - implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.0") - implementation("androidx.core:core-splashscreen:1.0.0") - implementation("androidx.activity:activity-compose:1.6.1") + implementation("androidx.core:core-ktx:1.10.0") + implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1") + implementation("androidx.core:core-splashscreen:1.0.1") + implementation("androidx.activity:activity-compose:1.7.1") // Compose - val composeVersion = "1.4.0-alpha05" - implementation("androidx.compose.ui:ui:$composeVersion") - implementation("androidx.compose.ui:ui-tooling-preview:$composeVersion") + implementation(platform("androidx.compose:compose-bom:2023.04.00")) + implementation("androidx.compose.ui:ui") + implementation("androidx.compose.ui:ui-tooling-preview") // Accompanist - val accompanistVersion = "0.29.1-alpha" + val accompanistVersion = "0.30.1" implementation("com.google.accompanist:accompanist-systemuicontroller:$accompanistVersion") //implementation("com.google.accompanist:accompanist-placeholder-material:$accompanistVersion") implementation("com.google.accompanist:accompanist-drawablepainter:$accompanistVersion") @@ -74,27 +61,27 @@ dependencies { //implementation("com.google.accompanist:accompanist-permissions:$accompanistVersion") // KotlinX - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.4.1") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") // Material 3 - implementation("androidx.compose.material3:material3:1.1.0-alpha08") + implementation("androidx.compose.material3:material3") // ReVanced implementation("app.revanced:revanced-patcher:6.4.3") // Koin - implementation("io.insert-koin:koin-android:3.3.2") - implementation("io.insert-koin:koin-androidx-compose:3.4.1") + implementation("io.insert-koin:koin-android:3.4.0") + implementation("io.insert-koin:koin-androidx-compose:3.4.4") // Compose Navigation - implementation("dev.olshevski.navigation:reimagined:1.3.1") + implementation("dev.olshevski.navigation:reimagined:1.4.0") // Ktor - val ktorVersion = "2.1.3" + val ktorVersion = "2.3.0" implementation("io.ktor:ktor-client-core:$ktorVersion") implementation("io.ktor:ktor-client-logging:$ktorVersion") implementation("io.ktor:ktor-client-okhttp:$ktorVersion") implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") -} \ No newline at end of file +} diff --git a/build.gradle.kts b/build.gradle.kts index b71d0ff0..4b3dd002 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,14 +1,5 @@ -buildscript { - repositories { - google() - } -} - plugins { - id("com.android.application") version "7.3.1" apply false - id("com.android.library") version "7.3.1" apply false - id("org.jetbrains.kotlin.android") version "1.8.0" apply false + id("com.android.application") version "7.4.2" apply false + id("com.android.library") version "7.4.2" apply false + id("org.jetbrains.kotlin.android") version "1.8.20" apply false } -repositories { - google() -} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index e708b1c023ec8b20f512888fe07c5bd3ff77bb8f..c1962a79e29d3e0ab67b14947c167a862655af9b 100644 GIT binary patch delta 42507 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

-F9?3Iq*&kaZad$Xh4bqydX)Qk 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 bP?h;UloerR14)}Pm@&K(VqkE-0^$JxEZb^Q diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index f5099251..2c3425d4 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,7 @@ -#Fri Jan 27 01:52:21 TRT 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionSha256Sum=e111cb9948407e26351227dabce49822fb88c37ee72f1d1582a69c68af2e702f +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip +networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 4f906e0c..aeb74cbb 100644 --- a/gradlew +++ b/gradlew @@ -1,7 +1,7 @@ -#!/usr/bin/env sh +#!/bin/sh # -# Copyright 2015 the original author or authors. +# Copyright © 2015-2021 the original authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,67 +17,98 @@ # ############################################################################## -## -## Gradle start up script for UN*X -## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# ############################################################################## # Attempt to set APP_HOME + # Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" +MAX_FD=maximum warn () { echo "$*" -} +} >&2 die () { echo echo "$*" echo exit 1 -} +} >&2 # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar @@ -87,9 +118,9 @@ CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACMD=$JAVA_HOME/jre/sh/java else - JAVACMD="$JAVA_HOME/bin/java" + JAVACMD=$JAVA_HOME/bin/java fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -98,7 +129,7 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD="java" + JAVACMD=java which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the @@ -106,80 +137,109 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin or MSYS, switch paths to Windows format before running java -if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=`expr $i + 1` - done - case $i in - 0) set -- ;; - 1) set -- "$args0" ;; - 2) set -- "$args0" "$args1" ;; - 3) set -- "$args0" "$args1" "$args2" ;; - 4) set -- "$args0" "$args1" "$args2" "$args3" ;; - 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " -} -APP_ARGS=`save "$@"` +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. -# Collect all arguments for the java command, following the shell quoting and substitution rules -eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index 107acd32..6689b85b 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,89 +1,92 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem - -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto execute - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle.kts b/settings.gradle.kts index bbe3256c..89a5a62e 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -3,12 +3,29 @@ pluginManagement { gradlePluginPortal() google() mavenCentral() + maven("https://jitpack.io") + maven { + url = uri("https://maven.pkg.github.com/revanced/revanced-patcher") + credentials { + username = providers.gradleProperty("gpr.user").orNull ?: System.getenv("GITHUB_ACTOR") + password = providers.gradleProperty("gpr.key").orNull ?: System.getenv("GITHUB_TOKEN") + } + } } } dependencyResolutionManagement { + repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() + maven("https://jitpack.io") + maven { + url = uri("https://maven.pkg.github.com/revanced/revanced-patcher") + credentials { + username = providers.gradleProperty("gpr.user").orNull ?: System.getenv("GITHUB_ACTOR") + password = providers.gradleProperty("gpr.key").orNull ?: System.getenv("GITHUB_TOKEN") + } + } } } rootProject.name = "ReVanced Manager"