Infer package name suffix from project path (#283)

This commit is contained in:
stevenyomi 2024-01-16 09:35:29 +08:00 committed by GitHub
parent ddb788f76c
commit 42e1db7f31
306 changed files with 7 additions and 289 deletions

View File

@ -223,6 +223,10 @@ src/<lang>/<mysourcename>/
13 directories, 9 files
```
`<lang>` should be an ISO 639-1 compliant language code (two letters or `all`). `<mysourcename>`
should be adapted from the site name, and can only contain lowercase ASCII letters and digits.
Your extension code must be placed in the package `eu.kanade.tachiyomi.extension.<lang>.<mysourcename>`.
#### AndroidManifest.xml
A minimal [Android manifest file](https://developer.android.com/guide/topics/manifest/manifest-intro)
is needed for Android to recognize an extension when it's compiled into an APK file. You can also add
@ -234,7 +238,6 @@ Make sure that your new extension's `build.gradle` file follows the following st
```gradle
ext {
extName = '<My source name>'
pkgNameSuffix = '<lang>.<mysourcename>'
extClass = '.<MySourceName>'
extVersionCode = 1
isNsfw = true
@ -245,8 +248,7 @@ apply from: "$rootDir/common.gradle"
| Field | Description |
|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `extName` | The name of the extension. |
| `pkgNameSuffix` | A unique suffix added to `eu.kanade.tachiyomi.extension`. The language and the site name should be enough. Remember your extension code implementation must be placed in this package. |
| `extName` | The name of the extension. Should be romanized if site name is not in English. |
| `extClass` | Points to the class that implements `Source`. You can use a relative path starting with a dot (the package name is the base path). This is used to find and instantiate the source(s). |
| `extVersionCode` | The extension version code. This must be a positive integer and incremented with any change to the code. |
| `libVersion` | (Optional, defaults to `1.4`) The version of the [extensions library](https://github.com/tachiyomiorg/extensions-lib) used. |

View File

@ -25,11 +25,11 @@ android {
defaultConfig {
minSdkVersion AndroidConfig.minSdk
targetSdkVersion AndroidConfig.targetSdk
applicationIdSuffix pkgNameSuffix
applicationIdSuffix project.parent.name + "." + project.name
versionCode extVersionCode
versionName project.ext.properties.getOrDefault("libVersion", "1.4") + ".$extVersionCode"
base {
archivesName = "tachiyomi-$pkgNameSuffix-v$versionName"
archivesName = "tachiyomi-$applicationIdSuffix-v$versionName"
}
def readmes = project.projectDir.listFiles({ File file ->
file.name == "README.md" || file.name == "CHANGELOG.md"

View File

@ -71,7 +71,6 @@ interface ThemeSourceGenerator {
|// THIS FILE IS AUTO-GENERATED; DO NOT EDIT
|ext {
| extName = '${source.name}'
| pkgNameSuffix = '${pkgNameSuffix(source, ".")}'
| extClass = '.${source.className}'
| extFactory = '$themePkg'
| extVersionCode = ${baseVersionCode + source.overrideVersionCode + multisrcLibraryVersion}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Akuma'
pkgNameSuffix = 'all.akuma'
extClass = '.Akuma'
extVersionCode = 1
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Bato.to'
pkgNameSuffix = 'all.batoto'
extClass = '.BatoToFactory'
extVersionCode = 34
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Buon Dua'
pkgNameSuffix = 'all.buondua'
extClass = '.BuonDua'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Comic Fury'
pkgNameSuffix = 'all.comicfury'
extClass = '.ComicFuryFactory'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Comick'
pkgNameSuffix = 'all.comickfun'
extClass = '.ComickFunFactory'
extVersionCode = 41
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Comico'
pkgNameSuffix = 'all.comico'
extClass = '.ComicoFactory'
extVersionCode = 5
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Commit Strip'
pkgNameSuffix = 'all.commitstrip'
extClass = '.CommitStripFactory'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Cubari'
pkgNameSuffix = "all.cubari"
extClass = '.CubariFactory'
extVersionCode = 24
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Danbooru'
pkgNameSuffix = 'all.danbooru'
extClass = '.Danbooru'
extVersionCode = 1
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Dragon Ball Multiverse'
pkgNameSuffix = 'all.dragonballmultiverse'
extClass = '.DbMFactory'
extVersionCode = 5
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'E-Hentai'
pkgNameSuffix = 'all.ehentai'
extClass = '.EHFactory'
extVersionCode = 20
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Everia.club'
pkgNameSuffix = 'all.everiaclub'
extClass = '.EveriaClub'
extVersionCode = 9
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Frelein Books'
pkgNameSuffix = 'all.freleinbooks'
extClass = '.FreleinBooks'
extVersionCode = 1
isNsfw = false

View File

@ -1,6 +1,5 @@
ext {
extName = 'Hennojin'
pkgNameSuffix = 'all.hennojin'
extClass = '.HennojinFactory'
extVersionCode = 1
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'HOLONOMETRIA'
pkgNameSuffix = 'all.holonometria'
extClass = '.HolonometriaFactory'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'IMHentai'
pkgNameSuffix = 'all.imhentai'
extClass = '.IMHentaiFactory'
extVersionCode = 14
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'izneo (webtoons)'
pkgNameSuffix = 'all.izneo'
extClass = '.IzneoFactory'
extVersionCode = 5
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Junmeitu'
pkgNameSuffix = 'all.junmeitu'
extClass = '.Junmeitu'
extVersionCode = 5
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'League of Legends'
pkgNameSuffix = 'all.leagueoflegends'
extClass = '.LOLFactory'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Little Garden'
pkgNameSuffix = 'all.littlegarden'
extClass = '.LittleGarden'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Luscious'
pkgNameSuffix = 'all.luscious'
extClass = '.LusciousFactory'
extVersionCode = 19
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'MangaDex'
pkgNameSuffix = 'all.mangadex'
extClass = '.MangaDexFactory'
extVersionCode = 192
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'MangaPark'
pkgNameSuffix = 'all.mangapark'
extClass = '.MangaParkFactory'
extVersionCode = 19
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'MANGA Plus by SHUEISHA'
pkgNameSuffix = 'all.mangaplus'
extClass = '.MangaPlusFactory'
extVersionCode = 49
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'MANGA Plus Creators by SHUEISHA'
pkgNameSuffix = 'all.mangapluscreators'
extClass = '.MangaPlusCreatorsFactory'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'MangaToon (Limited)'
pkgNameSuffix = 'all.mangatoon'
extClass = '.MangaToonFactory'
extVersionCode = 5
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Manga UP!'
pkgNameSuffix = 'all.mangaup'
extClass = '.MangaUpFactory'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Mango'
pkgNameSuffix = 'all.mango'
extClass = '.Mango'
extVersionCode = 9
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Meitua.top'
pkgNameSuffix = 'all.meituatop'
extClass = '.MeituaTop'
extVersionCode = 5
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'MyReadingManga'
pkgNameSuffix = 'all.myreadingmanga'
extClass = '.MyReadingMangaFactory'
extVersionCode = 49
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'NETCOMICS'
pkgNameSuffix = 'all.netcomics'
extClass = '.NetcomicsFactory'
extVersionCode = 3
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'NHentai'
pkgNameSuffix = 'all.nhentai'
extClass = '.NHFactory'
extVersionCode = 39
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'NineManga'
pkgNameSuffix = "all.ninemanga"
extClass = '.NineMangaFactory'
extVersionCode = 19
}

View File

@ -1,6 +1,5 @@
ext {
extName = '999Hentai'
pkgNameSuffix = 'all.ninenineninehentai'
extClass = '.NineNineNineHentaiFactory'
extVersionCode = 5
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'NOISE Manga'
pkgNameSuffix = 'all.noisemanga'
extClass = '.NoiseMangaFactory'
extVersionCode = 5
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'NovelCool'
pkgNameSuffix = 'all.novelcool'
extClass = '.NovelCoolFactory'
extVersionCode = 3
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Pepper&Carrot'
pkgNameSuffix = 'all.peppercarrot'
extClass = '.PepperCarrot'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Photos18'
pkgNameSuffix = 'all.photos18'
extClass = '.Photos18'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Pixiv'
pkgNameSuffix = 'all.pixiv'
extClass = '.PixivFactory'
extVersionCode = 8
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Project Suki'
pkgNameSuffix = 'all.projectsuki'
extClass = '.ProjectSuki'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Sandra and Woo'
pkgNameSuffix = 'all.sandraandwoo'
extClass = '.SandraAndWooFactory'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Simply Cosplay'
pkgNameSuffix = 'all.simplycosplay'
extClass = '.SimplyCosplay'
extVersionCode = 1
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Simply Hentai'
pkgNameSuffix = 'all.simplyhentai'
extClass = '.SimplyHentaiFactory'
extVersionCode = 6
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Taddy INK (Webtoons)'
pkgNameSuffix = 'all.taddyink'
extClass = '.TaddyInkFactory'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Tappytoon'
pkgNameSuffix = 'all.tappytoon'
extClass = '.TappytoonFactory'
extVersionCode = 7
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'The Library of Ohara'
pkgNameSuffix = 'all.thelibraryofohara'
extClass = '.TheLibraryOfOharaFactory'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Toomics'
pkgNameSuffix = 'all.toomics'
extClass = '.ToomicsFactory'
extVersionCode = 7
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Vinne Veritas - CCC'
pkgNameSuffix = 'all.vinnieVeritas'
extClass = '.vinnieVeritasFactory'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Xinmeitulu'
pkgNameSuffix = 'all.xinmeitulu'
extClass = '.Xinmeitulu'
extVersionCode = 4
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'xkcd'
pkgNameSuffix = 'all.xkcd'
extClass = '.XkcdFactory'
extVersionCode = 13
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Yaoi Manga Online'
pkgNameSuffix = 'all.yaoimangaonline'
extClass = '.YaoiMangaOnline'
extVersionCode = 3
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'GMANGA'
pkgNameSuffix = 'ar.gmanga'
extClass = '.Gmanga'
extVersionCode = 13
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Manga.ae'
pkgNameSuffix = 'ar.mangaae'
extClass = '.MangaAe'
extVersionCode = 11
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Shqqaa Manga'
pkgNameSuffix = 'ar.shqqaa'
extClass = '.Shqqaa'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Team X'
pkgNameSuffix = 'ar.teamx'
extClass = '.TeamX'
extVersionCode = 16
isNsfw = false

View File

@ -1,6 +1,5 @@
ext {
extName = 'Manga Tube'
pkgNameSuffix = 'de.mangatube'
extClass = '.MangaTube'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'WieManga'
pkgNameSuffix = 'de.wiemanga'
extClass = '.WieManga'
extVersionCode = 5
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'AllAnime'
pkgNameSuffix = 'en.allanime'
extClass = '.AllAnime'
extVersionCode = 6
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Anchira'
pkgNameSuffix = 'en.anchira'
extClass = '.Anchira'
extVersionCode = 4
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'A Pair of 2+'
pkgNameSuffix = 'en.apairof2'
extClass = '.APairOf2'
extVersionCode = 31
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'aurora'
pkgNameSuffix = 'en.aurora'
extClass = '.Aurora'
extVersionCode = 4
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'buttsmithy'
pkgNameSuffix = 'en.buttsmithy'
extClass = '.Buttsmithy'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Clone Manga'
pkgNameSuffix = 'en.clonemanga'
extClass = '.CloneManga'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'CloudRecess'
pkgNameSuffix = 'en.cloudrecess'
extClass = '.CloudRecess'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Collected Curios'
pkgNameSuffix = 'en.collectedcurios'
extClass = '.Collectedcurios'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Comicastle'
pkgNameSuffix = 'en.comicastle'
extClass = '.Comicastle'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'ComicExtra'
pkgNameSuffix = 'en.comicextra'
extClass = '.ComicExtra'
extVersionCode = 14
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Dark Legacy Comics'
pkgNameSuffix = 'en.darklegacycomics'
extClass = '.DarkLegacyComics'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Digital Comic Museum'
pkgNameSuffix = 'en.digitalcomicmuseum'
extClass = '.DigitalComicMuseum'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Disaster Scans'
pkgNameSuffix = 'en.disasterscans'
extClass = '.DisasterScans'
extVersionCode = 32
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Doujins'
pkgNameSuffix = 'en.doujins'
extClass = '.Doujins'
extVersionCode = 5
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Dynasty'
pkgNameSuffix = 'en.dynasty'
extClass = '.DynastyFactory'
extVersionCode = 23
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'EarlyManga'
pkgNameSuffix = 'en.earlymanga'
extClass = '.EarlyManga'
extVersionCode = 21
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Eggporncomics'
pkgNameSuffix = 'en.eggporncomics'
extClass = '.Eggporncomics'
extVersionCode = 2
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Elan School'
pkgNameSuffix = 'en.elanschool'
extClass = '.ElanSchool'
extVersionCode = 1
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Existential Comics'
pkgNameSuffix = 'en.existentialcomics'
extClass = '.ExistentialComics'
extVersionCode = 4
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Cyanide & Happiness'
pkgNameSuffix = 'en.explosm'
extClass = '.Explosm'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Grrl Power Comic'
pkgNameSuffix = 'en.grrlpower'
extClass = '.GrrlPower'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Gunnerkrigg Court'
pkgNameSuffix = 'en.gunnerkriggcourt'
extClass = '.GunnerkriggCourt'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Gone with the Blastwave'
pkgNameSuffix = 'en.gwtb'
extClass = '.GWTB'
extVersionCode = 2
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Hentai2Read'
pkgNameSuffix = 'en.hentai2read'
extClass = '.Hentai2Read'
extVersionCode = 14
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Hentaidexy'
pkgNameSuffix = 'en.hentaidexy'
extClass = '.Hentaidexy'
extVersionCode = 32
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'HentaiFox'
pkgNameSuffix = 'en.hentaifox'
extClass = '.HentaiFox'
extVersionCode = 4
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'HentaiHere'
pkgNameSuffix = 'en.hentaihere'
extClass = '.HentaiHere'
extVersionCode = 4
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'Hiveworks Comics'
pkgNameSuffix = 'en.hiveworks'
extClass = '.Hiveworks'
extVersionCode = 8
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'HonkaiImpact3'
pkgNameSuffix = 'en.honkaiimpact'
extClass = '.Honkaiimpact'
extVersionCode = 2
}

View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -1,6 +1,5 @@
ext {
extName = 'InfinityScans'
pkgNameSuffix = 'en.infinityscans'
extClass = '.InfinityScans'
extVersionCode = 1
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'I Roved Out'
pkgNameSuffix = 'en.irovedout'
extClass = '.IRovedOut'
extVersionCode = 3
isNsfw = true

View File

@ -1,6 +1,5 @@
ext {
extName = 'keenspot'
pkgNameSuffix = 'en.keenspot'
extClass = '.KeenspotFactory'
extVersionCode = 3
}

View File

@ -1,6 +1,5 @@
ext {
extName = 'Kill Six Billion Demons'
pkgNameSuffix = 'en.killsixbilliondemons'
extClass = '.KillSixBillionDemons'
extVersionCode = 5
}

Some files were not shown because too many files have changed in this diff Show More