mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-07-03 10:54:38 -05:00
Compare commits
19 Commits
v0.3.0-rc1
...
v0.3.0-rc2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c04cc780b7 | ||
|
|
71ad1bb6e3 | ||
|
|
c1be77ee9b | ||
|
|
d1fa857ffb | ||
|
|
93fd81b38b | ||
|
|
2f116b40b2 | ||
|
|
b884d34bdf | ||
|
|
309803368b | ||
|
|
19fc5be8f3 | ||
|
|
c28fac14c0 | ||
|
|
66e38de29f | ||
|
|
282cb1d3be | ||
|
|
b741ded595 | ||
|
|
6b290695fc | ||
|
|
4e43c554c0 | ||
|
|
090a72b35f | ||
|
|
3fcc269df3 | ||
|
|
9958e0eb34 | ||
|
|
c5269002a2 |
11
.github/scripts/commit-repo.sh
vendored
11
.github/scripts/commit-repo.sh
vendored
@@ -1,24 +1,19 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
git lfs install
|
cp master/server/build/Tachidesk-*.jar preview
|
||||||
#git lfs track "*.zip"
|
cd preview
|
||||||
|
|
||||||
cp ../master/repo/* .
|
|
||||||
new_jar_build=$(ls *.jar| tail -1)
|
new_jar_build=$(ls *.jar| tail -1)
|
||||||
echo "last jar build file name: $new_jar_build"
|
echo "last jar build file name: $new_jar_build"
|
||||||
|
|
||||||
new_win32_build=$(ls *.zip| tail -1)
|
|
||||||
echo "last win32 build file name: $new_win32_build"
|
|
||||||
|
|
||||||
cp -f $new_jar_build Tachidesk-latest.jar
|
cp -f $new_jar_build Tachidesk-latest.jar
|
||||||
cp -f $new_win32_build Tachidesk-latest-win32.zip
|
|
||||||
|
|
||||||
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
git config --global user.name "github-actions[bot]"
|
git config --global user.name "github-actions[bot]"
|
||||||
git status
|
git status
|
||||||
if [ -n "$(git status --porcelain)" ]; then
|
if [ -n "$(git status --porcelain)" ]; then
|
||||||
git add .
|
git add .
|
||||||
git commit -m "Update repo"
|
git commit -m "Update preview repository"
|
||||||
git push
|
git push
|
||||||
else
|
else
|
||||||
echo "No changes to commit"
|
echo "No changes to commit"
|
||||||
|
|||||||
20
.github/scripts/create-repo.sh
vendored
20
.github/scripts/create-repo.sh
vendored
@@ -1,20 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Get last commit message
|
|
||||||
#last_commit_log=$(git log -1 --pretty=format:"%s")
|
|
||||||
#echo "last commit log: $last_commit_log"
|
|
||||||
#
|
|
||||||
#filter_count=$(echo "$last_commit_log" | grep -e '\[RELEASE CI\]' -e '\[CI RELEASE\]' | wc -c)
|
|
||||||
#echo "count is: $filter_count"
|
|
||||||
|
|
||||||
mkdir -p repo/
|
|
||||||
cp server/build/Tachidesk-*.jar repo/
|
|
||||||
cp server/build/Tachidesk-*.zip repo/
|
|
||||||
|
|
||||||
ls repo
|
|
||||||
pwd
|
|
||||||
|
|
||||||
#if [ "$filter_count" -gt 0 ]; then
|
|
||||||
# cp server/build/Tachidesk-*.jar repo/
|
|
||||||
# cp server/build/Tachidesk-*.zip repo/
|
|
||||||
#fi
|
|
||||||
@@ -1,9 +1,6 @@
|
|||||||
name: CI
|
name: CI Pull Request
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
pull_request:
|
pull_request:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
80
.github/workflows/build_push.yml
vendored
Normal file
80
.github/workflows/build_push.yml
vendored
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
name: CI build master
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
check_wrapper:
|
||||||
|
name: Validate Gradle Wrapper
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Clone repo
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Validate Gradle Wrapper
|
||||||
|
uses: gradle/wrapper-validation-action@v1
|
||||||
|
|
||||||
|
build:
|
||||||
|
name: Build FatJar
|
||||||
|
needs: check_wrapper
|
||||||
|
if: "!startsWith(github.event.head_commit.message, '[SKIP CI]')"
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Cancel previous runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.5.0
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
|
||||||
|
- name: Checkout master branch
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
ref: master
|
||||||
|
path: master
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Set up JDK 1.8
|
||||||
|
uses: actions/setup-java@v1
|
||||||
|
with:
|
||||||
|
java-version: 1.8
|
||||||
|
|
||||||
|
- name: Copy CI gradle.properties
|
||||||
|
run: |
|
||||||
|
cd master
|
||||||
|
mkdir -p ~/.gradle
|
||||||
|
cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties
|
||||||
|
|
||||||
|
- name: Download android.jar
|
||||||
|
run: |
|
||||||
|
cd master
|
||||||
|
curl https://raw.githubusercontent.com/AriaMoradi/Tachidesk/android-jar/android.jar -o AndroidCompat/lib/android.jar
|
||||||
|
|
||||||
|
- name: Cache node_modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
**/react/node_modules
|
||||||
|
key: ${{ runner.os }}-${{ hashFiles('**/react/yarn.lock') }}
|
||||||
|
|
||||||
|
- name: Build and copy webUI, Build Jar and launch4j
|
||||||
|
uses: eskatos/gradle-command-action@v1
|
||||||
|
with:
|
||||||
|
build-root-directory: master
|
||||||
|
wrapper-directory: master
|
||||||
|
arguments: :webUI:copyBuild :server:windowsPackage --stacktrace
|
||||||
|
wrapper-cache-enabled: true
|
||||||
|
dependencies-cache-enabled: true
|
||||||
|
configuration-cache-enabled: true
|
||||||
|
|
||||||
|
- name: Checkout preview branch
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
ref: preview
|
||||||
|
path: preview
|
||||||
|
|
||||||
|
- name: Deploy preview
|
||||||
|
run: |
|
||||||
|
./master/.github/scripts/commit-repo.sh
|
||||||
10
.github/workflows/publish.yml
vendored
10
.github/workflows/publish.yml
vendored
@@ -1,4 +1,4 @@
|
|||||||
name: Publish
|
name: CI Publish
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@@ -68,18 +68,12 @@ jobs:
|
|||||||
dependencies-cache-enabled: true
|
dependencies-cache-enabled: true
|
||||||
configuration-cache-enabled: true
|
configuration-cache-enabled: true
|
||||||
|
|
||||||
|
|
||||||
- name: Create repo artifacts
|
|
||||||
run: |
|
|
||||||
cd master
|
|
||||||
./.github/scripts/create-repo.sh
|
|
||||||
|
|
||||||
- name: Upload Release
|
- name: Upload Release
|
||||||
uses: xresloader/upload-to-github-release@master
|
uses: xresloader/upload-to-github-release@master
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
file: "master/repo/*"
|
file: "master/server/build/*.jar;master/server/build/*-win32.zip"
|
||||||
tags: true
|
tags: true
|
||||||
draft: true
|
draft: true
|
||||||
verbose: true
|
verbose: true
|
||||||
|
|||||||
@@ -8,6 +8,17 @@
|
|||||||
|
|
||||||
# This is a bash script to create android.jar stubs
|
# This is a bash script to create android.jar stubs
|
||||||
|
|
||||||
|
for dep in "curl" "base64" "zip"
|
||||||
|
do
|
||||||
|
which $dep >/dev/null 2>&1 || { echo >&2 "Error: This script needs $dep installed."; abort=yes; }
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $abort = yes ]; then
|
||||||
|
echo "Some of the dependencies didn't exist. Aborting."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# foolproof against running from AndroidCompat dir instead of running from project root
|
# foolproof against running from AndroidCompat dir instead of running from project root
|
||||||
if [ "$(basename $(pwd))" = "AndroidCompat" ]; then
|
if [ "$(basename $(pwd))" = "AndroidCompat" ]; then
|
||||||
cd ..
|
cd ..
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ Here is a list of current features:
|
|||||||
- Searching and browsing installed sources.
|
- Searching and browsing installed sources.
|
||||||
- A decent chapter reader.
|
- A decent chapter reader.
|
||||||
- Ability to download Mangas for offline read(This partially works)
|
- Ability to download Mangas for offline read(This partially works)
|
||||||
|
- Backup and restore support powered by Tachiyomi Legacy Backups
|
||||||
|
|
||||||
**Note:** Keep in mind that Tachidesk is alpha software and can break rarely and/or with each update, so you may have to delete your data to fix it. See [General troubleshooting](#general-troubleshooting) and [Support and help](#support-and-help) if it happens.
|
**Note:** Keep in mind that Tachidesk is alpha software and can break rarely and/or with each update, so you may have to delete your data to fix it. See [General troubleshooting](#general-troubleshooting) and [Support and help](#support-and-help) if it happens.
|
||||||
|
|
||||||
@@ -24,9 +25,9 @@ Anyways, for more info checkout [finished milestone #1](https://github.com/Suway
|
|||||||
### All Operating Systems
|
### All Operating Systems
|
||||||
You should have The Java Runtime Environment(JRE) 8 or newer and a modern browser installed. Also an internet connection is required as almost everything this app does is downloading stuff.
|
You should have The Java Runtime Environment(JRE) 8 or newer and a modern browser installed. Also an internet connection is required as almost everything this app does is downloading stuff.
|
||||||
|
|
||||||
Download the latest jar release from [the releases section](https://github.com/Suwayomi/Tachidesk/releases).
|
Download the latest "Stable" jar release from [the releases section](https://github.com/Suwayomi/Tachidesk/releases) or a preview jar build from [the preview branch](https://github.com/Suwayomi/Tachidesk/tree/preview).
|
||||||
|
|
||||||
Double click on the jar file or run `java -jar Tachidesk-vX.Y.Z-rxxx.jar` from a Terminal/Command Prompt window to run the app which will open a new browser window automatically. Also the System Tray Icon is your friend if you need to open the browser window again or close Tachidesk.
|
Double click on the jar file or run `java -jar Tachidesk-vX.Y.Z-rxxx.jar` (or `java -jar Tachidesk-latest.jar` if you have the latest preview) from a Terminal/Command Prompt window to run the app which will open a new browser window automatically. Also the System Tray Icon is your friend if you need to open the browser window again or close Tachidesk.
|
||||||
|
|
||||||
### Windows
|
### Windows
|
||||||
Download the latest win32 release from [the releases section](https://github.com/Suwayomi/Tachidesk/releases).
|
Download the latest win32 release from [the releases section](https://github.com/Suwayomi/Tachidesk/releases).
|
||||||
@@ -54,7 +55,7 @@ On Windows 7 and later : `C:\Users\<Account>\AppData\Local\Tachidesk`
|
|||||||
On Unix/Linux : `/home/<account>/.local/share/Tachidesk`
|
On Unix/Linux : `/home/<account>/.local/share/Tachidesk`
|
||||||
|
|
||||||
## Support and help
|
## Support and help
|
||||||
Join Tachidesk's [discord server](https://discord.gg/wgPyb7hE5d) to hang out with the community and receive support and help.
|
Join Tachidesk's [discord server](https://discord.gg/WdPS74cz) to hang out with the community and receive support and help.
|
||||||
|
|
||||||
## How does it work?
|
## How does it work?
|
||||||
This project has two components:
|
This project has two components:
|
||||||
@@ -65,7 +66,7 @@ This project has two components:
|
|||||||
### Prerequisite: Get Android stubs jar
|
### Prerequisite: Get Android stubs jar
|
||||||
#### Manual download
|
#### Manual download
|
||||||
Download [android.jar](https://raw.githubusercontent.com/Suwayomi/Tachidesk/android-jar/android.jar) and put it under `AndroidCompat/lib`.
|
Download [android.jar](https://raw.githubusercontent.com/Suwayomi/Tachidesk/android-jar/android.jar) and put it under `AndroidCompat/lib`.
|
||||||
#### Automated download(needs `bash`, `curl`, `base64`, `zip` to work)
|
#### Automated download
|
||||||
Run `AndroidCompat/getAndroid.sh`(MacOS/Linux) or `AndroidCompat/getAndroid.ps1`(Windows) from project's root directory to download and rebuild the jar file from Google's repository.
|
Run `AndroidCompat/getAndroid.sh`(MacOS/Linux) or `AndroidCompat/getAndroid.ps1`(Windows) from project's root directory to download and rebuild the jar file from Google's repository.
|
||||||
### Prerequisite: Software dependencies
|
### Prerequisite: Software dependencies
|
||||||
You need this software packages installed in order to build this project:
|
You need this software packages installed in order to build this project:
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ plugins {
|
|||||||
id("edu.sc.seis.launch4j") version "2.4.9"
|
id("edu.sc.seis.launch4j") version "2.4.9"
|
||||||
}
|
}
|
||||||
|
|
||||||
val TachideskVersion = "v0.2.7"
|
val TachideskVersion = "v0.3.0"
|
||||||
|
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
@@ -211,5 +211,9 @@ tasks.named("run") {
|
|||||||
dependsOn("formatKotlin", "lintKotlin")
|
dependsOn("formatKotlin", "lintKotlin")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tasks.named("processResources") {
|
||||||
|
mustRunAfter(":webUI:copyBuild")
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ object Chapter {
|
|||||||
// TODO: delete orphan chapters
|
// TODO: delete orphan chapters
|
||||||
}
|
}
|
||||||
|
|
||||||
chapterList.map { it ->
|
chapterList.mapIndexed { index, it ->
|
||||||
ChapterDataClass(
|
ChapterDataClass(
|
||||||
it.url,
|
it.url,
|
||||||
it.name,
|
it.name,
|
||||||
@@ -79,6 +79,7 @@ object Chapter {
|
|||||||
it.chapter_number,
|
it.chapter_number,
|
||||||
it.scanlator,
|
it.scanlator,
|
||||||
mangaId,
|
mangaId,
|
||||||
|
chapterCount - index,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -135,6 +135,9 @@ export default function MangaDetails(props: IProps) {
|
|||||||
const { setAction } = useContext(NavbarContext);
|
const { setAction } = useContext(NavbarContext);
|
||||||
|
|
||||||
const { manga } = props;
|
const { manga } = props;
|
||||||
|
if (manga.genre == null) {
|
||||||
|
manga.genre = '';
|
||||||
|
}
|
||||||
const [inLibrary, setInLibrary] = useState<string>(
|
const [inLibrary, setInLibrary] = useState<string>(
|
||||||
manga.inLibrary ? 'In Library' : 'Add To Library',
|
manga.inLibrary ? 'In Library' : 'Add To Library',
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user