Compare commits
159 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
074e8fa756 | ||
|
|
228cc4140f | ||
|
|
3f6d138b8d | ||
|
|
ac560ba655 | ||
|
|
c0403d7333 | ||
|
|
e591f93791 | ||
|
|
96abd83d98 | ||
|
|
28b9037ca5 | ||
|
|
3b2bb794c9 | ||
|
|
596eab4bad | ||
|
|
fa01702362 | ||
|
|
76525b201e | ||
|
|
26314ca5a5 | ||
|
|
2f04edebfb | ||
|
|
c53d83b22f | ||
|
|
aca5d0eb82 | ||
|
|
26a35aadb1 | ||
|
|
8888795f27 | ||
|
|
5cf1a06cec | ||
|
|
47ff2628a2 | ||
|
|
94488e2df8 | ||
|
|
4e3dfbf794 | ||
|
|
6de806316e | ||
|
|
b98a0f8046 | ||
|
|
449df1d104 | ||
|
|
268b5e3693 | ||
|
|
8042c0475e | ||
|
|
6241ee4629 | ||
|
|
d612ae221c | ||
|
|
f1b831a118 | ||
|
|
0b59b7202d | ||
|
|
d86a5a0c72 | ||
|
|
7a6c9772f3 | ||
|
|
b22b87b6d8 | ||
|
|
d4774b0542 | ||
|
|
e6d7e50a45 | ||
|
|
7ba4b2f018 | ||
|
|
4c99ecf927 | ||
|
|
edb645f887 | ||
|
|
d688fe84ef | ||
|
|
c46924c996 | ||
|
|
56f26e701e | ||
|
|
968fe9cbbc | ||
|
|
19f7ecf885 | ||
|
|
3f10675422 | ||
|
|
746bcc5ac9 | ||
|
|
721c1c957e | ||
|
|
0e09821842 | ||
|
|
607ac4391a | ||
|
|
b1d01e02ca | ||
|
|
3858de8d65 | ||
|
|
a390a80ef1 | ||
|
|
322ec55546 | ||
|
|
34169bb1ff | ||
|
|
0f4aef0e32 | ||
|
|
cf5bfca265 | ||
|
|
affac3abc6 | ||
|
|
9826c5604d | ||
|
|
ea7a8ffc22 | ||
|
|
4cb8caaa1d | ||
|
|
53cb7f6675 | ||
|
|
123ab7f6a7 | ||
|
|
caf054aea2 | ||
|
|
125596498e | ||
|
|
38f2eb4cb2 | ||
|
|
7d437d5c3a | ||
|
|
3d794099a5 | ||
|
|
b7ceebcb67 | ||
|
|
25e0d05142 | ||
|
|
250a494903 | ||
|
|
b47ef16001 | ||
|
|
71f597baa7 | ||
|
|
abf117ac92 | ||
|
|
f3a3f222bd | ||
|
|
f9a2a1c85c | ||
|
|
7d469e7bad | ||
|
|
137a52ccd4 | ||
|
|
9a1769595d | ||
|
|
9b930493d7 | ||
|
|
bfe5dc77a0 | ||
|
|
3ac2c5d791 | ||
|
|
f1226e5638 | ||
|
|
ee91085b07 | ||
|
|
e287baf046 | ||
|
|
8788f76e5c | ||
|
|
6eff6c902c | ||
|
|
d9623e992d | ||
|
|
958e6f1568 | ||
|
|
f3931c6b08 | ||
|
|
3dd087e361 | ||
|
|
ac838f99a9 | ||
|
|
c9bd02b750 | ||
|
|
cfbfb2b3ad | ||
|
|
bccd1a43c4 | ||
|
|
70ed750652 | ||
|
|
c76418d26f | ||
|
|
c062b3d786 | ||
|
|
a9d551df5e | ||
|
|
dc617ed151 | ||
|
|
9f31120cd5 | ||
|
|
e9c922ff39 | ||
|
|
2ab098962d | ||
|
|
863972cf86 | ||
|
|
fd170106b4 | ||
|
|
af83820b85 | ||
|
|
a6be658164 | ||
|
|
0c59886657 | ||
|
|
a78aa001fa | ||
|
|
1e94621ce6 | ||
|
|
e477ecafcc | ||
|
|
da20cbb127 | ||
|
|
fb5cd59d6b | ||
|
|
d3d090e277 | ||
|
|
3a5e19b02c | ||
|
|
83e8374c33 | ||
|
|
82ef5f0c52 | ||
|
|
7aae480722 | ||
|
|
750d96ec13 | ||
|
|
35cba0ab27 | ||
|
|
b23f8ad633 | ||
|
|
85d9aff094 | ||
|
|
a8827b5c9e | ||
|
|
d76713dcd6 | ||
|
|
e3b771bed1 | ||
|
|
136cda5215 | ||
|
|
579531c30a | ||
|
|
dcb59667c1 | ||
|
|
4b411107f7 | ||
|
|
c0810574ce | ||
|
|
3c9d705f80 | ||
|
|
6f9e0e87ce | ||
|
|
c4945351ca | ||
|
|
a1b736ae0c | ||
|
|
2adfe59bd5 | ||
|
|
113b294346 | ||
|
|
19133df94b | ||
|
|
731e3c93c8 | ||
|
|
a160f0941f | ||
|
|
65d1478b00 | ||
|
|
b851b87515 | ||
|
|
96b2b1b5b0 | ||
|
|
3d0c5209cb | ||
|
|
57bbb80a01 | ||
|
|
3593eb329b | ||
|
|
f8dca60331 | ||
|
|
864082fd40 | ||
|
|
b963ddf401 | ||
|
|
83d3ec42e3 | ||
|
|
8ba4fb3b8d | ||
|
|
383c728481 | ||
|
|
ea01a21189 | ||
|
|
b812c7b4a1 | ||
|
|
96b2067577 | ||
|
|
1d4207ae51 | ||
|
|
9960124d32 | ||
|
|
aed7e8526f | ||
|
|
b67c916ac6 | ||
|
|
77b12bc969 | ||
|
|
11ae4a2644 |
@@ -322,6 +322,78 @@
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Irishsmurf",
|
||||
"name": "David K",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/587220?v=4",
|
||||
"profile": "http://www.paddez.com/",
|
||||
"contributions": [
|
||||
"design"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Slam4uk",
|
||||
"name": "Slam4uk",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/78175288?v=4",
|
||||
"profile": "https://github.com/Slam4uk",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "timrettop",
|
||||
"name": "Tim Potter",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/434913?v=4",
|
||||
"profile": "https://github.com/timrettop",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "carlesmu",
|
||||
"name": "Carles Muñoz Gorriz",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/1310090?v=4",
|
||||
"profile": "https://github.com/carlesmu",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "osjurso",
|
||||
"name": "Olav Markus Sjursø",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/17827103?v=4",
|
||||
"profile": "https://github.com/osjurso",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "fyu0h",
|
||||
"name": "fyu0h",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/33602841?v=4",
|
||||
"profile": "https://github.com/fyu0h",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "johnflorin",
|
||||
"name": "Florin",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/45756085?v=4",
|
||||
"profile": "https://github.com/johnflorin",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "tuzumbear",
|
||||
"name": "tuzumbear",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/61370405?v=4",
|
||||
"profile": "https://github.com/tuzumbear",
|
||||
"contributions": [
|
||||
"translation"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 8,
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
.dart_tool/
|
||||
android/
|
||||
build/
|
||||
docs/
|
||||
ios/
|
||||
linux/
|
||||
localization/
|
||||
|
||||
9
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,14 +1,11 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Support via Discord
|
||||
- name: Feature Requests & Support via Discord
|
||||
url: https://www.lunasea.app/discord
|
||||
about: Chat with the developer and users on support and setup related topics.
|
||||
about: Request new features and get support from the community
|
||||
- name: Support via GitHub Discussions
|
||||
url: https://github.com/JagandeepBrar/LunaSea/discussions
|
||||
about: Ask questions and discuss with other community members
|
||||
- name: Support via Reddit
|
||||
url: https://www.lunasea.app/reddit
|
||||
about: Ask the developer and other redditors for support and setup related topics.
|
||||
- name: Feedback & Feature Requests Board
|
||||
url: https://feedback.lunasea.app
|
||||
about: Request new features and modules to be implemented into LunaSea.
|
||||
about: Ask the developer and other redditors for support and setup related topics
|
||||
|
||||
78
.github/actions/prepare_for_build/action.yml
vendored
@@ -1,55 +1,59 @@
|
||||
name: 'Prepare for Build'
|
||||
description: 'Setup all required dependencies and secrets for building the given platform'
|
||||
name: "Prepare for Build"
|
||||
description: "Setup all required dependencies and secrets for building the given platform"
|
||||
|
||||
inputs:
|
||||
platform:
|
||||
description: 'Platform to be Built'
|
||||
description: "Platform to be Built"
|
||||
required: true
|
||||
|
||||
# Config
|
||||
firebase-token:
|
||||
description: 'Firebase Token'
|
||||
description: "Firebase Token"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
skip-core:
|
||||
description: 'Skip Installing Core Files'
|
||||
description: "Skip Installing Core Files"
|
||||
required: false
|
||||
default: 'false'
|
||||
default: "false"
|
||||
|
||||
# Secret Keys
|
||||
android-key-jks:
|
||||
description: 'Android Signing Key'
|
||||
description: "Android Signing Key"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
android-key-properties:
|
||||
description: 'Android Signing Key Properties'
|
||||
description: "Android Signing Key Properties"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
appstore-connect-key:
|
||||
description: 'App Store Connect API Key'
|
||||
description: "App Store Connect API Key"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
code-signing-certificate:
|
||||
description: 'Code Signing Certificate'
|
||||
description: "Code Signing Certificate"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
firebase-service-worker:
|
||||
description: "Firebase Service Worker"
|
||||
required: false
|
||||
default: ""
|
||||
google-play-key:
|
||||
description: 'Google Play Store API Key'
|
||||
description: "Google Play Store API Key"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
match-ssh-private-key:
|
||||
description: 'Fastlane Match SSH Key'
|
||||
description: "Fastlane Match SSH Key"
|
||||
required: false
|
||||
default: ''
|
||||
default: ""
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
|
||||
- name: Prepare Core
|
||||
if: ${{ inputs.skip-core == 'false' }}
|
||||
uses: actions/download-artifact@v3
|
||||
@@ -71,7 +75,7 @@ runs:
|
||||
|
||||
- name: Install Java
|
||||
if: ${{ inputs.platform == 'android' }}
|
||||
uses: actions/setup-java@v2
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: zulu
|
||||
java-version: 11
|
||||
@@ -95,11 +99,11 @@ runs:
|
||||
|
||||
- name: Setup Docker
|
||||
if: ${{ inputs.platform == 'web' }}
|
||||
uses: docker/setup-buildx-action@v1
|
||||
uses: docker/setup-buildx-action@v2
|
||||
|
||||
- name: Setup Match SSH Keys
|
||||
- name: Setup Match SSH Keys
|
||||
if: ${{ inputs.platform == 'ios' || inputs.platform == 'macos' }}
|
||||
uses: webfactory/ssh-agent@v0.5.4
|
||||
uses: webfactory/ssh-agent@v0.6.0
|
||||
with:
|
||||
ssh-private-key: ${{ inputs.match-ssh-private-key }}
|
||||
|
||||
@@ -115,21 +119,30 @@ runs:
|
||||
- name: Setup Firebase Configuration
|
||||
if: ${{ inputs.firebase-token != '' }}
|
||||
shell: bash
|
||||
env:
|
||||
FIREBASE_TOKEN: ${{ inputs.firebase-token }}
|
||||
run: |
|
||||
gem install --user-install xcodeproj
|
||||
npm install -g firebase-tools
|
||||
dart pub global activate flutterfire_cli
|
||||
firebase --version
|
||||
|
||||
dart pub global activate flutterfire_cli 0.3.0-dev.16
|
||||
flutterfire configure \
|
||||
--project=comettools-lunasea \
|
||||
--token=${{ inputs.firebase-token }} \
|
||||
--platforms=android,ios,macos,web \
|
||||
--android-package-name=app.lunasea.lunasea \
|
||||
--ios-bundle-id=app.lunasea.lunasea \
|
||||
--macos-bundle-id=app.lunasea.lunasea \
|
||||
--web-app-id=1:511093487055:web:37d2f8e4c960708add8eba \
|
||||
--no-debug-symbols-ios \
|
||||
--no-debug-symbols-macos \
|
||||
--out=lib/firebase/options.dart \
|
||||
--platforms=android,ios,macos,web \
|
||||
--no-apply-gradle-plugins \
|
||||
--yes
|
||||
|
||||
- name: Setup Firebase Service Worker
|
||||
if: ${{ inputs.firebase-service-worker != '' }}
|
||||
shell: bash
|
||||
run: echo ${{ inputs.firebase-service-worker }} | base64 --decode > web/firebase-messaging-sw.js
|
||||
|
||||
- name: Setup Android Platform
|
||||
if: ${{ inputs.platform == 'android' }}
|
||||
shell: bash
|
||||
@@ -141,12 +154,15 @@ runs:
|
||||
shell: bash
|
||||
run: |
|
||||
(cd ios && bundle install)
|
||||
|
||||
|
||||
- name: Setup Linux Platform
|
||||
if: ${{ inputs.platform == 'linux' }}
|
||||
shell: bash
|
||||
run: |
|
||||
flutter config --enable-linux-desktop
|
||||
sudo iptables -P FORWARD ACCEPT
|
||||
sudo apt-get update -y
|
||||
sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev
|
||||
|
||||
- name: Setup macOS Platform
|
||||
if: ${{ inputs.platform == 'macos' }}
|
||||
|
||||
@@ -28,7 +28,7 @@ runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -52,11 +52,11 @@ runs:
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
if: ${{ inputs.channel == 'docker' }}
|
||||
uses: docker/setup-buildx-action@v1
|
||||
uses: docker/setup-buildx-action@v2
|
||||
|
||||
- name: Setup GitHub Package Registry
|
||||
if: ${{ inputs.channel == 'docker' }}
|
||||
uses: docker/login-action@v1
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ inputs.ghcr-actor }}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Release
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -25,6 +25,7 @@ jobs:
|
||||
flavor: ${{ inputs.flavor }}
|
||||
secrets:
|
||||
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
|
||||
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
|
||||
|
||||
build-android:
|
||||
name: Build Android
|
||||
@@ -58,6 +59,9 @@ jobs:
|
||||
name: Build Linux
|
||||
needs: [ prepare ]
|
||||
uses: JagandeepBrar/LunaSea/.github/workflows/build_linux.yml@master
|
||||
with:
|
||||
build-number: ${{ needs.prepare.outputs.build-number }}
|
||||
build-version: ${{ needs.prepare.outputs.build-version }}
|
||||
|
||||
build-macos:
|
||||
name: Build macOS
|
||||
@@ -89,6 +93,7 @@ jobs:
|
||||
build-flavor: ${{ needs.prepare.outputs.build-flavor }}
|
||||
build-title: ${{ needs.prepare.outputs.build-title }}
|
||||
secrets:
|
||||
FIREBASE_SERVICE_WORKER: ${{ secrets.FIREBASE_SERVICE_WORKER }}
|
||||
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
|
||||
|
||||
build-windows:
|
||||
@@ -106,8 +111,8 @@ jobs:
|
||||
needs: [ prepare, build-android ]
|
||||
uses: JagandeepBrar/LunaSea/.github/workflows/publish_android.yml@master
|
||||
with:
|
||||
build-changelog: ${{ needs.prepare.outputs.build-changelog }}
|
||||
build-flavor: ${{ needs.prepare.outputs.build-flavor }}
|
||||
build-motd: ${{ needs.prepare.outputs.build-motd }}
|
||||
build-title: ${{ needs.prepare.outputs.build-title }}
|
||||
secrets:
|
||||
GOOGLE_PLAY_API: ${{ secrets.GOOGLE_PLAY_API }}
|
||||
@@ -117,8 +122,8 @@ jobs:
|
||||
needs: [ prepare, build-ios ]
|
||||
uses: JagandeepBrar/LunaSea/.github/workflows/publish_ios.yml@master
|
||||
with:
|
||||
build-changelog: ${{ needs.prepare.outputs.build-changelog }}
|
||||
build-flavor: ${{ needs.prepare.outputs.build-flavor }}
|
||||
build-motd: ${{ needs.prepare.outputs.build-motd }}
|
||||
secrets:
|
||||
APPLE_ID: ${{ secrets.APPLE_ID }}
|
||||
APPLE_ITC_TEAM_ID: ${{ secrets.APPLE_ITC_TEAM_ID }}
|
||||
@@ -141,8 +146,8 @@ jobs:
|
||||
needs: [ prepare, build-macos ]
|
||||
uses: JagandeepBrar/LunaSea/.github/workflows/publish_macos.yml@master
|
||||
with:
|
||||
build-changelog: ${{ needs.prepare.outputs.build-changelog }}
|
||||
build-flavor: ${{ needs.prepare.outputs.build-flavor }}
|
||||
build-motd: ${{ needs.prepare.outputs.build-motd }}
|
||||
secrets:
|
||||
APPLE_ID: ${{ secrets.APPLE_ID }}
|
||||
APPLE_ITC_TEAM_ID: ${{ secrets.APPLE_ITC_TEAM_ID }}
|
||||
@@ -178,10 +183,9 @@ jobs:
|
||||
|
||||
notify:
|
||||
name: Notify
|
||||
needs: [ prepare, publish-android, publish-ios, publish-linux, publish-macos, publish-web, publish-s3 ]
|
||||
needs: [ prepare, publish-s3 ]
|
||||
uses: JagandeepBrar/LunaSea/.github/workflows/notify.yml@master
|
||||
with:
|
||||
build-changelog: ${{ needs.prepare.outputs.build-changelog }}
|
||||
build-flavor: ${{ needs.prepare.outputs.build-flavor }}
|
||||
build-title: ${{ needs.prepare.outputs.build-title }}
|
||||
secrets:
|
||||
53
.github/workflows/build_linux.yml
vendored
@@ -2,8 +2,57 @@ name: 'Build Linux'
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
inputs:
|
||||
build-number:
|
||||
required: true
|
||||
type: string
|
||||
build-version:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
build-debian:
|
||||
name: Debian Archive
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup Environment
|
||||
uses: JagandeepBrar/LunaSea/.github/actions/prepare_for_build@master
|
||||
with:
|
||||
platform: linux
|
||||
|
||||
- name: Build LunaSea
|
||||
run: flutter build linux
|
||||
|
||||
- name: Prepare Artifact
|
||||
run: dart ${{github.workspace }}/scripts/generate_debian.dart "${{ inputs.build-version }}+${{ inputs.build-number }}"
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: linux-debian
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
build-tarball:
|
||||
name: Tarball Archive
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup Environment
|
||||
uses: JagandeepBrar/LunaSea/.github/actions/prepare_for_build@master
|
||||
with:
|
||||
platform: linux
|
||||
|
||||
- name: Build LunaSea
|
||||
run: flutter build linux
|
||||
|
||||
- name: Prepare Artifact
|
||||
run: tar czf output/lunasea-linux-amd64.tar.gz -C build/linux/x64/release/bundle/ .
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: linux-tarball
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
build-snapcraft:
|
||||
name: Snapcraft
|
||||
runs-on: ubuntu-latest
|
||||
@@ -25,3 +74,5 @@ jobs:
|
||||
with:
|
||||
name: linux-snapcraft
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
|
||||
5
.github/workflows/build_web.yml
vendored
@@ -13,6 +13,8 @@ on:
|
||||
secrets:
|
||||
FIREBASE_TOKEN:
|
||||
required: true
|
||||
FIREBASE_SERVICE_WORKER:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
build-hosted:
|
||||
@@ -23,6 +25,7 @@ jobs:
|
||||
uses: JagandeepBrar/LunaSea/.github/actions/prepare_for_build@master
|
||||
with:
|
||||
firebase-token: ${{ secrets.FIREBASE_TOKEN }}
|
||||
firebase-service-worker: ${{ secrets.FIREBASE_SERVICE_WORKER }}
|
||||
platform: web
|
||||
|
||||
- name: Build LunaSea
|
||||
@@ -84,7 +87,7 @@ jobs:
|
||||
return tags.map((tag) => `ghcr.io/jagandeepbrar/lunasea:${tag}`).join(',');
|
||||
|
||||
- name: Build LunaSea
|
||||
uses: docker/build-push-action@v2
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: .
|
||||
outputs: type=docker,dest=${{ github.workspace}}/output/lunasea-web-docker.tar
|
||||
|
||||
20
.github/workflows/clear_flutter_cache.yml
vendored
@@ -1,20 +0,0 @@
|
||||
name: Clear Flutter Cache
|
||||
|
||||
on:
|
||||
workflow_dispatch
|
||||
|
||||
jobs:
|
||||
clear:
|
||||
name: Clear Cache
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
channel: stable
|
||||
cache: true
|
||||
cache-key: ${{ github.sha }}
|
||||
|
||||
- name: Flutter Doctor
|
||||
working-directory: ${{ github.workspace }}
|
||||
run: flutter doctor -v
|
||||
7
.github/workflows/github_issue_labels.yml
vendored
@@ -16,11 +16,8 @@ jobs:
|
||||
issue-comment: >
|
||||
Hi @{issue-author}! We use the issue tracker exclusively
|
||||
for bug reports and issues. However, this issue appears
|
||||
to be a feature request. Please use the following channels:
|
||||
|
||||
- [Feedback & Feature Requests Board](https://feedback.lunasea.app)
|
||||
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
to be a feature request. Please use the [Discord](https://www.lunasea.app/discord)
|
||||
to request new features.
|
||||
close-issue: true
|
||||
lock-issue: true
|
||||
issue-lock-reason: 'off-topic'
|
||||
|
||||
8
.github/workflows/notify.yml
vendored
@@ -3,9 +3,6 @@ name: Notify
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
build-changelog:
|
||||
required: true
|
||||
type: string
|
||||
build-flavor:
|
||||
required: true
|
||||
type: string
|
||||
@@ -29,7 +26,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -57,12 +54,11 @@ jobs:
|
||||
id: embed
|
||||
uses: actions/github-script@v6
|
||||
env:
|
||||
BUILD_CHANGELOG: ${{ inputs.build-changelog }}
|
||||
BUILD_FLAVOR: ${{ inputs.build-flavor }}
|
||||
BUILD_TITLE: ${{ inputs.build-title }}
|
||||
with:
|
||||
result-encoding: string
|
||||
script: return require('.github/scripts/notify-embed.js')();
|
||||
script: return require('.github/scripts/notify_discord_embed.js')();
|
||||
|
||||
- name: Send Discord Message
|
||||
uses: Ilshidur/action-discord@0.3.2
|
||||
|
||||
27
.github/workflows/prepare.yml
vendored
@@ -8,12 +8,12 @@ on:
|
||||
required: true
|
||||
|
||||
outputs:
|
||||
build-changelog:
|
||||
description: "Build Changelog"
|
||||
value: ${{ jobs.build-details.outputs.build-changelog }}
|
||||
build-flavor:
|
||||
description: "Build Flavor"
|
||||
value: ${{ jobs.build-details.outputs.build-flavor }}
|
||||
build-motd:
|
||||
description: "Build MOTD"
|
||||
value: ${{ jobs.build-details.outputs.build-motd }}
|
||||
build-number:
|
||||
description: "Build Number"
|
||||
value: ${{ jobs.build-details.outputs.build-number }}
|
||||
@@ -27,20 +27,22 @@ on:
|
||||
secrets:
|
||||
FIREBASE_TOKEN:
|
||||
required: true
|
||||
SENTRY_DSN:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
build-details:
|
||||
name: Build Details
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
build-changelog: ${{ steps.build-changelog.outputs.result }}
|
||||
build-motd: ${{ steps.build-motd.outputs.result }}
|
||||
build-flavor: ${{ steps.build-flavor.outputs.result }}
|
||||
build-number: ${{ steps.build-number.outputs.result }}
|
||||
build-title: ${{ steps.build-title.outputs.output }}
|
||||
build-version: ${{ steps.build-version.outputs.current-version }}
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -48,7 +50,7 @@ jobs:
|
||||
id: commit-count
|
||||
run: |
|
||||
COUNT=`git rev-list HEAD --count`
|
||||
echo "::set-output name=commit-count::$COUNT"
|
||||
echo "commit-count=$COUNT" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Build Flavor
|
||||
id: build-flavor
|
||||
@@ -68,8 +70,8 @@ jobs:
|
||||
}
|
||||
return 'edge';
|
||||
|
||||
- name: Build Changelog
|
||||
id: build-changelog
|
||||
- name: Build MOTD
|
||||
id: build-motd
|
||||
uses: actions/github-script@v6
|
||||
env:
|
||||
FLAVOR: ${{ steps.build-flavor.outputs.result }}
|
||||
@@ -91,24 +93,24 @@ jobs:
|
||||
|
||||
- name: Build Version
|
||||
id: build-version
|
||||
uses: martinbeentjes/npm-get-version-action@v1.1.0
|
||||
uses: martinbeentjes/npm-get-version-action@main
|
||||
|
||||
- name: Build Title
|
||||
id: build-title
|
||||
run: |
|
||||
HASH=`git rev-parse --short ${{ github.sha }}`
|
||||
TITLE="v${{ steps.build-version.outputs.current-version }}-${{ steps.build-flavor.outputs.result }}-${{ steps.build-number.outputs.result }}-$HASH"
|
||||
echo "::set-output name=output::$TITLE"
|
||||
echo "output=$TITLE" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Log Build Details
|
||||
env:
|
||||
CHANGELOG: ${{ steps.build-changelog.outputs.result }}
|
||||
FLAVOR: ${{ steps.build-flavor.outputs.result }}
|
||||
MOTD: ${{ steps.build-motd.outputs.result }}
|
||||
NUMBER: ${{ steps.build-number.outputs.result }}
|
||||
TITLE: ${{ steps.build-title.outputs.output }}
|
||||
VERSION: ${{ steps.build-version.outputs.current-version }}
|
||||
run: |
|
||||
echo "Build Changelog: $CHANGELOG"
|
||||
echo "Build MOTD: $MOTD"
|
||||
echo "Build Flavor: $FLAVOR"
|
||||
echo "Build Number: $NUMBER"
|
||||
echo "Build Title: $TITLE"
|
||||
@@ -131,6 +133,7 @@ jobs:
|
||||
export FLAVOR=${{ needs.build-details.outputs.build-flavor }}
|
||||
export COMMIT=${{ github.sha }}
|
||||
export BUILD=${{ needs.build-details.outputs.build-number }}
|
||||
export SENTRY_DSN=${{ secrets.SENTRY_DSN }}
|
||||
flutter packages pub run environment_config:generate
|
||||
|
||||
- name: Generate Localization
|
||||
|
||||
12
.github/workflows/publish_android.yml
vendored
@@ -3,10 +3,10 @@ name: Publish Android
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
build-changelog:
|
||||
build-flavor:
|
||||
required: true
|
||||
type: string
|
||||
build-flavor:
|
||||
build-motd:
|
||||
required: true
|
||||
type: string
|
||||
build-title:
|
||||
@@ -53,11 +53,11 @@ jobs:
|
||||
|
||||
- name: Generate Changelog
|
||||
env:
|
||||
CHANGELOG: ${{ inputs.build-changelog }}
|
||||
CHANGELOG_PATH: ${{ github.workspace }}/android/fastlane/metadata/android/en-CA/changelogs
|
||||
MOTD: ${{ inputs.build-motd }}
|
||||
OUTPUT_PATH: ${{ github.workspace }}/android/fastlane/metadata/android/en-CA/changelogs
|
||||
run: |
|
||||
mkdir -p $CHANGELOG_PATH
|
||||
echo $CHANGELOG > $CHANGELOG_PATH/default.txt
|
||||
mkdir -p $OUTPUT_PATH
|
||||
echo $MOTD > $OUTPUT_PATH/default.txt
|
||||
|
||||
- name: Deploy to Google Play Store
|
||||
working-directory: ${{ github.workspace }}/android
|
||||
|
||||
12
.github/workflows/publish_ios.yml
vendored
@@ -3,10 +3,10 @@ name: Publish iOS
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
build-changelog:
|
||||
build-flavor:
|
||||
required: true
|
||||
type: string
|
||||
build-flavor:
|
||||
build-motd:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
@@ -43,11 +43,11 @@ jobs:
|
||||
|
||||
- name: Generate Changelog
|
||||
env:
|
||||
CHANGELOG: ${{ inputs.build-changelog }}
|
||||
CHANGELOG_PATH: ${{ github.workspace }}/ios/fastlane
|
||||
MOTD: ${{ inputs.build-motd }}
|
||||
OUTPUT_PATH: ${{ github.workspace }}/ios/fastlane
|
||||
run: |
|
||||
mkdir -p $CHANGELOG_PATH
|
||||
echo $CHANGELOG > $CHANGELOG_PATH/changelog.txt
|
||||
mkdir -p $OUTPUT_PATH
|
||||
echo $MOTD > $OUTPUT_PATH/changelog.txt
|
||||
|
||||
- name: Deploy to App Store Connect
|
||||
working-directory: ${{ github.workspace }}/ios
|
||||
|
||||
12
.github/workflows/publish_macos.yml
vendored
@@ -3,10 +3,10 @@ name: Publish macOS
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
build-changelog:
|
||||
build-flavor:
|
||||
required: true
|
||||
type: string
|
||||
build-flavor:
|
||||
build-motd:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
@@ -43,11 +43,11 @@ jobs:
|
||||
|
||||
- name: Generate Changelog
|
||||
env:
|
||||
CHANGELOG: ${{ inputs.build-changelog }}
|
||||
CHANGELOG_PATH: ${{ github.workspace }}/macos/fastlane
|
||||
MOTD: ${{ inputs.build-motd }}
|
||||
OUTPUT_PATH: ${{ github.workspace }}/macos/fastlane
|
||||
run: |
|
||||
mkdir -p $CHANGELOG_PATH
|
||||
echo $CHANGELOG > $CHANGELOG_PATH/changelog.txt
|
||||
mkdir -p $OUTPUT_PATH
|
||||
echo $MOTD > $OUTPUT_PATH/changelog.txt
|
||||
|
||||
- name: Deploy to App Store Connect
|
||||
working-directory: ${{ github.workspace }}/macos
|
||||
|
||||
14
.github/workflows/publish_s3.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Publish s3
|
||||
name: Publish S3
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
@@ -47,6 +47,18 @@ jobs:
|
||||
name: ios-appstore-package
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
- name: Download Linux Debian
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: linux-debian
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
- name: Download Linux Tarball
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: linux-tarball
|
||||
path: ${{ github.workspace }}/output
|
||||
|
||||
- name: Download Linux Snap
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
|
||||
2
.github/workflows/publish_web.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Publish Web (Docker)
|
||||
name: Publish Web
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
8
.gitignore
vendored
@@ -32,7 +32,6 @@
|
||||
*.g.dart
|
||||
|
||||
# Web related
|
||||
lib/generated_plugin_registrant.dart
|
||||
|
||||
# Exceptions to above rules.
|
||||
!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages
|
||||
@@ -66,8 +65,11 @@ android/key.properties
|
||||
|
||||
# Firebase
|
||||
android/firebase_app_id_file.json
|
||||
android/app/google-services.json
|
||||
ios/firebase_app_id_file.json
|
||||
ios/Runner/GoogleService-Info.plist
|
||||
macos/firebase_app_id_file.json
|
||||
macos/Runner/GoogleService-Info.plist
|
||||
|
||||
# Node Dependency directories
|
||||
node_modules/
|
||||
@@ -80,4 +82,8 @@ output/
|
||||
*.ipa
|
||||
*.dmg
|
||||
*.pkg
|
||||
|
||||
# Linux Artifacts
|
||||
debian/DEBIAN/md5sums
|
||||
debian/usr/share/lunasea
|
||||
*.snap
|
||||
|
||||
24
.metadata
@@ -1,10 +1,30 @@
|
||||
# This file tracks properties of this Flutter project.
|
||||
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
||||
#
|
||||
# This file should be version controlled and should not be manually edited.
|
||||
# This file should be version controlled.
|
||||
|
||||
version:
|
||||
revision: 7e9793dee1b85a243edd0e06cb1658e98b077561
|
||||
revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
|
||||
channel: stable
|
||||
|
||||
project_type: app
|
||||
|
||||
# Tracks metadata for the flutter migrate command
|
||||
migration:
|
||||
platforms:
|
||||
- platform: root
|
||||
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
|
||||
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
|
||||
- platform: windows
|
||||
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
|
||||
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
|
||||
|
||||
# User provided section
|
||||
|
||||
# List of Local paths (relative to this file) that should be
|
||||
# ignored by the migrate tool.
|
||||
#
|
||||
# Files that are not part of the templates will be ignored by default.
|
||||
unmanaged_files:
|
||||
- 'lib/main.dart'
|
||||
- 'ios/Runner.xcodeproj/project.pbxproj'
|
||||
|
||||
@@ -1 +1 @@
|
||||
2.6.8
|
||||
2.7.6
|
||||
4
.vscode/cspell.json
vendored
@@ -45,6 +45,7 @@
|
||||
"LunaConfig",
|
||||
"lunasea",
|
||||
"LunaTable",
|
||||
"microtask",
|
||||
"msix",
|
||||
"Newznab",
|
||||
"NZBGet",
|
||||
@@ -54,6 +55,7 @@
|
||||
"prefill",
|
||||
"Radarr",
|
||||
"Riverpod",
|
||||
"roboto",
|
||||
"SABnzbd",
|
||||
"scrollview",
|
||||
"sksl",
|
||||
@@ -61,9 +63,11 @@
|
||||
"Sonarr",
|
||||
"stickied",
|
||||
"subheaders",
|
||||
"subroutes",
|
||||
"Tautulli",
|
||||
"TestFlight",
|
||||
"Trakt",
|
||||
"typescale",
|
||||
"unencrypted",
|
||||
"unignore",
|
||||
"Weblate",
|
||||
|
||||
5
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"yaml.schemas": {
|
||||
"https://json.schemastore.org/github-issue-config.json": "file:///Users/jagandeepbrar/Git/LunaSea/.github/ISSUE_TEMPLATE/config.yml"
|
||||
}
|
||||
}
|
||||
112
CHANGELOG.md
@@ -2,6 +2,118 @@
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
### [10.2.3](https://github.com/JagandeepBrar/LunaSea/compare/v10.2.2...v10.2.3) (2023-03-22)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **flutter:** replace Skia with Impeller rendering engine ([6241ee4](https://github.com/JagandeepBrar/LunaSea/commit/6241ee462989f1f65fa8f1e18378579e2e77197b))
|
||||
* **flutter:** upgrade to Flutter 3.7/b06b8b2710 ([f1b831a](https://github.com/JagandeepBrar/LunaSea/commit/f1b831a118e56c480aae72042ee4eb7013f954b2))
|
||||
* **tautulli:** add ability to open media in Plex ([5cf1a06](https://github.com/JagandeepBrar/LunaSea/commit/5cf1a06cec079aa66c77425c0ed8d4fa7897bbd3))
|
||||
* **tautulli:** display audio language, subtitle language, and video dynamic range for activity ([6de8063](https://github.com/JagandeepBrar/LunaSea/commit/6de806316efaa61c5ddbac1b8f5b214949f0bcf8))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **http:** correctly set content type for POST requests ([aca5d0e](https://github.com/JagandeepBrar/LunaSea/commit/aca5d0eb826b38ebeec33e3495045bf21e8a49c7))
|
||||
* **links:** use platform default method to laucnh URLs ([596eab4](https://github.com/JagandeepBrar/LunaSea/commit/596eab4bad1aa183e3c0dfc8d20a32c15ecdb78d))
|
||||
* **macos:** set minimum platform version to 10.15 ([d612ae2](https://github.com/JagandeepBrar/LunaSea/commit/d612ae221cac741b3a36893d4bc7f05f5055c7b8))
|
||||
* **uiux:** update bottom modal sheet package to support Flutter 3.7 ([8042c04](https://github.com/JagandeepBrar/LunaSea/commit/8042c0475ecff05d9337842eef7cfe4117d05528))
|
||||
|
||||
### [10.2.2](https://github.com/JagandeepBrar/LunaSea/compare/v10.2.1...v10.2.2) (2022-12-22)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **android:** add option to disable back action to open drawer ([d4774b0](https://github.com/JagandeepBrar/LunaSea/commit/d4774b054204546490ef9f78090e28303eefc1fc))
|
||||
* **linux:** include MD5 sums in Debian distributions ([c46924c](https://github.com/JagandeepBrar/LunaSea/commit/c46924c99645a2d9c27e2d3532d30ecf93882e2a))
|
||||
* **linux:** publish Linux builds as Debian archive (.deb) ([b1d01e0](https://github.com/JagandeepBrar/LunaSea/commit/b1d01e02ca4cdb8a2775700930ada2d1d40a1031))
|
||||
* **linux:** publish Linux builds as tarball (.tar.gz) ([a390a80](https://github.com/JagandeepBrar/LunaSea/commit/a390a80ef1897d4c95812045a3472527ff38fd49))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **calendar:** scroll to last past date with content when selected date has no content ([3f10675](https://github.com/JagandeepBrar/LunaSea/commit/3f10675422b9a32c43f4f49c16b6e9723f267f50))
|
||||
* **linux:** install binaries to /usr/share instead of /usr/local/lib ([edb645f](https://github.com/JagandeepBrar/LunaSea/commit/edb645f8871d8f3a59c122191e8d8219e9957924))
|
||||
* **tautulli:** cached or downloaded activity sessions could not be opened ([4c99ecf](https://github.com/JagandeepBrar/LunaSea/commit/4c99ecf927e21538f875bb7ee93fc7aaf20de479))
|
||||
|
||||
|
||||
### Tweaks
|
||||
|
||||
* **uiux:** disable horizontal swiping/scrolling between pages ([968fe9c](https://github.com/JagandeepBrar/LunaSea/commit/968fe9cbbc4aff3ae584682e462defbf09ea5699))
|
||||
|
||||
### [10.2.1](https://github.com/JagandeepBrar/LunaSea/compare/v10.2.0...v10.2.1) (2022-11-06)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **-arr:** button to open indexer information page ([bccd1a4](https://github.com/JagandeepBrar/LunaSea/commit/bccd1a43c42b349901137f8fc605f393b51d541a))
|
||||
* **calendar:** remove option to show previous days in schedule view, now always shows them ([3ac2c5d](https://github.com/JagandeepBrar/LunaSea/commit/3ac2c5d791f94208a4004d161bb046c24b698345))
|
||||
* **calendar:** scroll to selected date when switching from calendar to schedule view ([f1226e5](https://github.com/JagandeepBrar/LunaSea/commit/f1226e563899cfc0950865a9734448d4e00601b9))
|
||||
* launch recovery mode on bootstrap failure ([c062b3d](https://github.com/JagandeepBrar/LunaSea/commit/c062b3d786e55bc3ba7fe767dd946d73efbef64f))
|
||||
* **lidarr:** add MusicBrainz to links ([c76418d](https://github.com/JagandeepBrar/LunaSea/commit/c76418d26f1a5f52f5cb1e46951f1cf6726508c2))
|
||||
* **modules:** ability to set the boot module ([3dd087e](https://github.com/JagandeepBrar/LunaSea/commit/3dd087e361619889057a0b037b1eef35157a0988))
|
||||
* **radarr:** support moving files when editing the storage path ([c9bd02b](https://github.com/JagandeepBrar/LunaSea/commit/c9bd02b75086579f60ad8987c42ab217c12f6d43))
|
||||
* **web:** support local filesystem read/save actions ([7d437d5](https://github.com/JagandeepBrar/LunaSea/commit/7d437d5c3a34a8681c372570fc366e869f0b2090))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **android:** apply Google Play Services plugin during gradle build ([71f597b](https://github.com/JagandeepBrar/LunaSea/commit/71f597baa7c23102b711c3ca3c1ea5b2f8e1f5e9))
|
||||
* **android:** revert applying Google Play Services plugin during gradle build ([250a494](https://github.com/JagandeepBrar/LunaSea/commit/250a49490333f4de726226dc4aa15a681f32a70c))
|
||||
* **android:** support Android 13 filesystem access ([25e0d05](https://github.com/JagandeepBrar/LunaSea/commit/25e0d051422b399de8c90e0fc71e57349e3355b7))
|
||||
* **android:** utilize Kotlin v1.7.20 & Gradle v7.1.2 ([b7ceebc](https://github.com/JagandeepBrar/LunaSea/commit/b7ceebcb679dbca935b6a1810c0c67a14002e358))
|
||||
* **backup:** edge-case where backup/restore would fail ([f3931c6](https://github.com/JagandeepBrar/LunaSea/commit/f3931c6b08025a70920039e5cbbc9cf7120c0b36))
|
||||
* **calendar:** label unreleased movies as unreleased instead of missing ([70ed750](https://github.com/JagandeepBrar/LunaSea/commit/70ed750652ff419e6fed659a0785adc5064654e7))
|
||||
* **calendar:** start to current date when past days are enabled ([6eff6c9](https://github.com/JagandeepBrar/LunaSea/commit/6eff6c902cd7bcd523d83be09034098234679a79))
|
||||
* **firebase:** inject service file for older OS versions ([38f2eb4](https://github.com/JagandeepBrar/LunaSea/commit/38f2eb4cb2a8e400ce2ecb0b6f2854469c9626fc))
|
||||
* **firebase:** upgrade to Firebase v10 ([#717](https://github.com/JagandeepBrar/LunaSea/issues/717)) ([f3a3f22](https://github.com/JagandeepBrar/LunaSea/commit/f3a3f222bd56beb4e961817b18d71f01fb7c5e81))
|
||||
* **uiux:** add circular radius to linear progression bars ([d9623e9](https://github.com/JagandeepBrar/LunaSea/commit/d9623e992d2ac2039eaa4f069c739d968c921cc6))
|
||||
|
||||
|
||||
### Tweaks
|
||||
|
||||
* **settings:** consolidate appearance, network, and localization pages ([ac838f9](https://github.com/JagandeepBrar/LunaSea/commit/ac838f99a9c839ce4e36e5eae80f1100e2787dc5))
|
||||
* **uiux:** remove forced-upper case on headers ([958e6f1](https://github.com/JagandeepBrar/LunaSea/commit/958e6f156862c1092399649baa361cd955299c88))
|
||||
|
||||
## [10.2.0](https://github.com/JagandeepBrar/LunaSea/compare/v10.1.1...v10.2.0) (2022-09-22)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **-arr:** view download client queue via overlay sheet ([0c59886](https://github.com/JagandeepBrar/LunaSea/commit/0c59886657db0ed05a9d741c82689cb1272c6ad2))
|
||||
* **android:** add support for monochromatic adaptive icon ([#701](https://github.com/JagandeepBrar/LunaSea/issues/701)) ([96b2b1b](https://github.com/JagandeepBrar/LunaSea/commit/96b2b1b5b010507dd7ece3421bf02eac6ba32486))
|
||||
* **locale:** support Croatian ([a160f09](https://github.com/JagandeepBrar/LunaSea/commit/a160f0941f2e0c86d2e2fab5e01a577ceba2a8f3))
|
||||
* **logging:** integrate Sentry logging support for all platforms ([57bbb80](https://github.com/JagandeepBrar/LunaSea/commit/57bbb80a0188d3bed9ca70846a89df6a3c2c0953))
|
||||
* **logo:** add Vectorized app logos ([113b294](https://github.com/JagandeepBrar/LunaSea/commit/113b2943469464598ce07b931818c7e29c6cc63a))
|
||||
* **router:** re-implementation of routing via go_router ([1d4207a](https://github.com/JagandeepBrar/LunaSea/commit/1d4207ae5106c2a0648b77a3b3ef6508665561e8))
|
||||
* **sabnzbd:** rewrite SABnzbd API interface ([a1b736a](https://github.com/JagandeepBrar/LunaSea/commit/a1b736ae0c9bf754d913e86c69d15c27f256c413))
|
||||
* **search:** view download client queue via overlay sheet ([a6be658](https://github.com/JagandeepBrar/LunaSea/commit/a6be658164fed7dd2411a167dec6b4c53eab70f0))
|
||||
* **settings:** re-add option to disable Sentry logging ([3d0c520](https://github.com/JagandeepBrar/LunaSea/commit/3d0c5209cb3e796629817dee986634154e7ffe9e))
|
||||
* **web:** enable service worker processing of notifications ([4b41110](https://github.com/JagandeepBrar/LunaSea/commit/4b411107f74f048e6f3d571845590a5d29720ac3))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **android:** support Android 13 notification prompt ([83e8374](https://github.com/JagandeepBrar/LunaSea/commit/83e8374c33977c82096fcf8d5a4d94da5c291f8f))
|
||||
* **cache:** add type-safety to LRU cache ([7aae480](https://github.com/JagandeepBrar/LunaSea/commit/7aae4807221184dbe1d02454f73998a0458dd7f6))
|
||||
* **database:** prevent deadlock in database deletion actions ([9960124](https://github.com/JagandeepBrar/LunaSea/commit/9960124d3219e2ab72e14443a1a79a1bac6b2cd3))
|
||||
* **graphs:** support fl_chart@0.55.1 ([b812c7b](https://github.com/JagandeepBrar/LunaSea/commit/b812c7b4a12b4766e04b5d4023b45320e6b7927c))
|
||||
* **images:** validate image availability before fading-in ([6f9e0e8](https://github.com/JagandeepBrar/LunaSea/commit/6f9e0e87ce3d02dfff7dec439a2e975585c5b986))
|
||||
* **notifications:** correctly inject service worker for notification handling ([82ef5f0](https://github.com/JagandeepBrar/LunaSea/commit/82ef5f0c529a9e30475f86f496fa63c18785e87c))
|
||||
* **notifications:** enable in-app notifications config was inversed ([3593eb3](https://github.com/JagandeepBrar/LunaSea/commit/3593eb329b38fb4a5b776cf1b165ad6f463e371b))
|
||||
* **resources:** remove feedback board resource ([d3d090e](https://github.com/JagandeepBrar/LunaSea/commit/d3d090e277f7dda7d4ef3d7808e7341cf79178fe))
|
||||
* **scrolling:** remove custom scrolling behaviour ([864082f](https://github.com/JagandeepBrar/LunaSea/commit/864082fd4045ef7dea0e0ab6a17d41ca86015fcb))
|
||||
* **settings:** show notification settings area on web ([136cda5](https://github.com/JagandeepBrar/LunaSea/commit/136cda5215ae1d44dcd898e8e8e0b1e1912b3a41))
|
||||
* **sheets:** set default overlay theme for sheets, remove bottom radius clipping ([3a5e19b](https://github.com/JagandeepBrar/LunaSea/commit/3a5e19b02c048df21bd169a0a06f1e9ae741debb))
|
||||
* **sonarr:** support Sonarr v4 API changes ([e477eca](https://github.com/JagandeepBrar/LunaSea/commit/e477ecafcce268d7de112f33711fc02a089a4206))
|
||||
* **web:** correctly register notification service worker ([579531c](https://github.com/JagandeepBrar/LunaSea/commit/579531c30a17e2c8d53d011dbecf710f42598ec8))
|
||||
|
||||
|
||||
### Tweaks
|
||||
|
||||
* **remove logos:** removes unused logo pngs ([2adfe59](https://github.com/JagandeepBrar/LunaSea/commit/2adfe59bd5cd289beb7f7c703fe26397310dbc90))
|
||||
|
||||
### [10.1.1](https://github.com/JagandeepBrar/LunaSea/compare/v10.1.0...v10.1.1) (2022-08-21)
|
||||
|
||||
|
||||
|
||||
104
CONTRIBUTORS.md
@@ -3,7 +3,7 @@
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
[](#contributors-)
|
||||
[](#contributors-)
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
<!-- markdownlint-restore -->
|
||||
<!-- prettier-ignore-end -->
|
||||
@@ -14,51 +14,63 @@ Thank you to everyone who has helped contribute to LunaSea, from development to
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center"><a href="https://www.jagandeepbrar.io"><img src="https://avatars.githubusercontent.com/u/3048295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jagandeep Brar</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=JagandeepBrar" title="Code">💻</a> <a href="#design-JagandeepBrar" title="Design">🎨</a> <a href="#ideas-JagandeepBrar" title="Ideas, Planning, & Feedback">🤔</a></td>
|
||||
<td align="center"><a href="https://github.com/lightglitch"><img src="https://avatars.githubusercontent.com/u/196953?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mário Franco</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=lightglitch" title="Code">💻</a> <a href="#translation-lightglitch" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Qstick"><img src="https://avatars.githubusercontent.com/u/376117?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Qstick</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=Qstick" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/AliMickey"><img src="https://avatars.githubusercontent.com/u/60691199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Micky</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=AliMickey" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="http://www.xrths.fr"><img src="https://avatars.githubusercontent.com/u/40337934?v=4?s=100" width="100px;" alt=""/><br /><sub><b>xrths</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=xrths" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://pythonexplainedto.me/"><img src="https://avatars.githubusercontent.com/u/41962737?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Patrik Hauguth</b></sub></a><br /><a href="#translation-Phaugt" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://liberapay.com/kingu/"><img src="https://avatars.githubusercontent.com/u/13802408?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allan Nordhøy</b></sub></a><br /><a href="#translation-comradekingu" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/cpt-kuesel"><img src="https://avatars.githubusercontent.com/u/79487102?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cpt-kuesel</b></sub></a><br /><a href="#translation-cpt-kuesel" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/KovalevArtem"><img src="https://avatars.githubusercontent.com/u/36500228?v=4?s=100" width="100px;" alt=""/><br /><sub><b>KovalevArtem</b></sub></a><br /><a href="#translation-KovalevArtem" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/iFelix18"><img src="https://avatars.githubusercontent.com/u/19800006?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Davide</b></sub></a><br /><a href="#translation-iFelix18" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://ersen.srht.site/"><img src="https://avatars.githubusercontent.com/u/88676873?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Oğuz Ersen</b></sub></a><br /><a href="#translation-ersen0" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/bittin"><img src="https://avatars.githubusercontent.com/u/43197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>bittin</b></sub></a><br /><a href="#translation-bittin" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/almontegil"><img src="https://avatars.githubusercontent.com/u/68232356?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gil</b></sub></a><br /><a href="#translation-almontegil" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/TheSander562"><img src="https://avatars.githubusercontent.com/u/14059770?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sander Lambrechts</b></sub></a><br /><a href="#translation-TheSander562" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Guilhermerrrr"><img src="https://avatars.githubusercontent.com/u/92966143?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Guilhermerrrr</b></sub></a><br /><a href="#translation-Guilhermerrrr" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Ben-Wallner"><img src="https://avatars.githubusercontent.com/u/24373331?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ben Biber</b></sub></a><br /><a href="#translation-Ben-Wallner" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/Sytom"><img src="https://avatars.githubusercontent.com/u/30535521?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sytom</b></sub></a><br /><a href="#translation-Sytom" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://xxzj990.top"><img src="https://avatars.githubusercontent.com/u/5134154?v=4?s=100" width="100px;" alt=""/><br /><sub><b>xxzj990</b></sub></a><br /><a href="#translation-xxzj990" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://www.openflixr.com"><img src="https://avatars.githubusercontent.com/u/3245077?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mark Frelink</b></sub></a><br /><a href="#translation-mfrelink" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/diemade"><img src="https://avatars.githubusercontent.com/u/174809?v=4?s=100" width="100px;" alt=""/><br /><sub><b>diemade</b></sub></a><br /><a href="#translation-diemade" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://feikojoosten.com"><img src="https://avatars.githubusercontent.com/u/10920052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Feiko Joosten</b></sub></a><br /><a href="#translation-FeikoJoosten" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/TheMaxul"><img src="https://avatars.githubusercontent.com/u/2436527?v=4?s=100" width="100px;" alt=""/><br /><sub><b>TheMaxul</b></sub></a><br /><a href="#translation-TheMaxul" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://lisacintosh.itch.io"><img src="https://avatars.githubusercontent.com/u/6952213?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Maxime Leroy</b></sub></a><br /><a href="#translation-Lisapple" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/vc5"><img src="https://avatars.githubusercontent.com/u/13097192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Vincent</b></sub></a><br /><a href="#translation-vc5" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/gmcinalli"><img src="https://avatars.githubusercontent.com/u/9024983?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gian Marco Cinalli</b></sub></a><br /><a href="#translation-gmcinalli" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://www.issacc.top/"><img src="https://avatars.githubusercontent.com/u/17275050?v=4?s=100" width="100px;" alt=""/><br /><sub><b>八月的蠢</b></sub></a><br /><a href="#translation-issaccv" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/neoestremi"><img src="https://avatars.githubusercontent.com/u/1340877?v=4?s=100" width="100px;" alt=""/><br /><sub><b>neoestremi</b></sub></a><br /><a href="#translation-neoestremi" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/marcosvdiasofc"><img src="https://avatars.githubusercontent.com/u/96720080?v=4?s=100" width="100px;" alt=""/><br /><sub><b>marcosvdiasofc</b></sub></a><br /><a href="#translation-marcosvdiasofc" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://liberapay.com/FSCorrupt/donate"><img src="https://avatars.githubusercontent.com/u/45659314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>FSCorrupt</b></sub></a><br /><a href="#translation-fscorrupt" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/iHunterX"><img src="https://avatars.githubusercontent.com/u/16854718?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iHunterX</b></sub></a><br /><a href="#translation-iHunterX" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Brokeos"><img src="https://avatars.githubusercontent.com/u/8388746?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brokeos</b></sub></a><br /><a href="#translation-Brokeos" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/punchy98"><img src="https://avatars.githubusercontent.com/u/12002902?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Maldonado</b></sub></a><br /><a href="#translation-punchy98" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/natiz"><img src="https://avatars.githubusercontent.com/u/3515888?v=4?s=100" width="100px;" alt=""/><br /><sub><b>natiz</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=natiz" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/KevoM"><img src="https://avatars.githubusercontent.com/u/8274366?v=4?s=100" width="100px;" alt=""/><br /><sub><b>KevoM</b></sub></a><br /><a href="#translation-KevoM" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/rogeriomendes"><img src="https://avatars.githubusercontent.com/u/1494503?v=4?s=100" width="100px;" alt=""/><br /><sub><b>rogeriomendes</b></sub></a><br /><a href="#translation-rogeriomendes" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center"><a href="https://www.jagandeepbrar.io"><img src="https://avatars.githubusercontent.com/u/3048295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jagandeep Brar</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=JagandeepBrar" title="Code">💻</a> <a href="#design-JagandeepBrar" title="Design">🎨</a> <a href="#ideas-JagandeepBrar" title="Ideas, Planning, & Feedback">🤔</a></td>
|
||||
<td align="center"><a href="https://github.com/lightglitch"><img src="https://avatars.githubusercontent.com/u/196953?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mário Franco</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=lightglitch" title="Code">💻</a> <a href="#translation-lightglitch" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Qstick"><img src="https://avatars.githubusercontent.com/u/376117?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Qstick</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=Qstick" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/AliMickey"><img src="https://avatars.githubusercontent.com/u/60691199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Micky</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=AliMickey" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="http://www.xrths.fr"><img src="https://avatars.githubusercontent.com/u/40337934?v=4?s=100" width="100px;" alt=""/><br /><sub><b>xrths</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=xrths" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://pythonexplainedto.me/"><img src="https://avatars.githubusercontent.com/u/41962737?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Patrik Hauguth</b></sub></a><br /><a href="#translation-Phaugt" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://liberapay.com/kingu/"><img src="https://avatars.githubusercontent.com/u/13802408?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allan Nordhøy</b></sub></a><br /><a href="#translation-comradekingu" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/cpt-kuesel"><img src="https://avatars.githubusercontent.com/u/79487102?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cpt-kuesel</b></sub></a><br /><a href="#translation-cpt-kuesel" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/KovalevArtem"><img src="https://avatars.githubusercontent.com/u/36500228?v=4?s=100" width="100px;" alt=""/><br /><sub><b>KovalevArtem</b></sub></a><br /><a href="#translation-KovalevArtem" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/iFelix18"><img src="https://avatars.githubusercontent.com/u/19800006?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Davide</b></sub></a><br /><a href="#translation-iFelix18" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://ersen.srht.site/"><img src="https://avatars.githubusercontent.com/u/88676873?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Oğuz Ersen</b></sub></a><br /><a href="#translation-ersen0" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/bittin"><img src="https://avatars.githubusercontent.com/u/43197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>bittin</b></sub></a><br /><a href="#translation-bittin" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/almontegil"><img src="https://avatars.githubusercontent.com/u/68232356?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gil</b></sub></a><br /><a href="#translation-almontegil" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/TheSander562"><img src="https://avatars.githubusercontent.com/u/14059770?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sander Lambrechts</b></sub></a><br /><a href="#translation-TheSander562" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Guilhermerrrr"><img src="https://avatars.githubusercontent.com/u/92966143?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Guilhermerrrr</b></sub></a><br /><a href="#translation-Guilhermerrrr" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Ben-Wallner"><img src="https://avatars.githubusercontent.com/u/24373331?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ben Biber</b></sub></a><br /><a href="#translation-Ben-Wallner" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/Sytom"><img src="https://avatars.githubusercontent.com/u/30535521?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sytom</b></sub></a><br /><a href="#translation-Sytom" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://xxzj990.top"><img src="https://avatars.githubusercontent.com/u/5134154?v=4?s=100" width="100px;" alt=""/><br /><sub><b>xxzj990</b></sub></a><br /><a href="#translation-xxzj990" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://www.openflixr.com"><img src="https://avatars.githubusercontent.com/u/3245077?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mark Frelink</b></sub></a><br /><a href="#translation-mfrelink" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/diemade"><img src="https://avatars.githubusercontent.com/u/174809?v=4?s=100" width="100px;" alt=""/><br /><sub><b>diemade</b></sub></a><br /><a href="#translation-diemade" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://feikojoosten.com"><img src="https://avatars.githubusercontent.com/u/10920052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Feiko Joosten</b></sub></a><br /><a href="#translation-FeikoJoosten" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/TheMaxul"><img src="https://avatars.githubusercontent.com/u/2436527?v=4?s=100" width="100px;" alt=""/><br /><sub><b>TheMaxul</b></sub></a><br /><a href="#translation-TheMaxul" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://lisacintosh.itch.io"><img src="https://avatars.githubusercontent.com/u/6952213?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Maxime Leroy</b></sub></a><br /><a href="#translation-Lisapple" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/vc5"><img src="https://avatars.githubusercontent.com/u/13097192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Vincent</b></sub></a><br /><a href="#translation-vc5" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/gmcinalli"><img src="https://avatars.githubusercontent.com/u/9024983?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gian Marco Cinalli</b></sub></a><br /><a href="#translation-gmcinalli" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://www.issacc.top/"><img src="https://avatars.githubusercontent.com/u/17275050?v=4?s=100" width="100px;" alt=""/><br /><sub><b>八月的蠢</b></sub></a><br /><a href="#translation-issaccv" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/neoestremi"><img src="https://avatars.githubusercontent.com/u/1340877?v=4?s=100" width="100px;" alt=""/><br /><sub><b>neoestremi</b></sub></a><br /><a href="#translation-neoestremi" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/marcosvdiasofc"><img src="https://avatars.githubusercontent.com/u/96720080?v=4?s=100" width="100px;" alt=""/><br /><sub><b>marcosvdiasofc</b></sub></a><br /><a href="#translation-marcosvdiasofc" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://liberapay.com/FSCorrupt/donate"><img src="https://avatars.githubusercontent.com/u/45659314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>FSCorrupt</b></sub></a><br /><a href="#translation-fscorrupt" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/iHunterX"><img src="https://avatars.githubusercontent.com/u/16854718?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iHunterX</b></sub></a><br /><a href="#translation-iHunterX" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/Brokeos"><img src="https://avatars.githubusercontent.com/u/8388746?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brokeos</b></sub></a><br /><a href="#translation-Brokeos" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/punchy98"><img src="https://avatars.githubusercontent.com/u/12002902?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Maldonado</b></sub></a><br /><a href="#translation-punchy98" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/natiz"><img src="https://avatars.githubusercontent.com/u/3515888?v=4?s=100" width="100px;" alt=""/><br /><sub><b>natiz</b></sub></a><br /><a href="https://github.com/JagandeepBrar/LunaSea/commits?author=natiz" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/KevoM"><img src="https://avatars.githubusercontent.com/u/8274366?v=4?s=100" width="100px;" alt=""/><br /><sub><b>KevoM</b></sub></a><br /><a href="#translation-KevoM" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/rogeriomendes"><img src="https://avatars.githubusercontent.com/u/1494503?v=4?s=100" width="100px;" alt=""/><br /><sub><b>rogeriomendes</b></sub></a><br /><a href="#translation-rogeriomendes" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="http://www.paddez.com/"><img src="https://avatars.githubusercontent.com/u/587220?v=4?s=100" width="100px;" alt=""/><br /><sub><b>David K</b></sub></a><br /><a href="#design-Irishsmurf" title="Design">🎨</a></td>
|
||||
<td align="center"><a href="https://github.com/Slam4uk"><img src="https://avatars.githubusercontent.com/u/78175288?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Slam4uk</b></sub></a><br /><a href="#translation-Slam4uk" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/timrettop"><img src="https://avatars.githubusercontent.com/u/434913?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Potter</b></sub></a><br /><a href="#translation-timrettop" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/carlesmu"><img src="https://avatars.githubusercontent.com/u/1310090?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Carles Muñoz Gorriz</b></sub></a><br /><a href="#translation-carlesmu" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/osjurso"><img src="https://avatars.githubusercontent.com/u/17827103?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Olav Markus Sjursø</b></sub></a><br /><a href="#translation-osjurso" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/fyu0h"><img src="https://avatars.githubusercontent.com/u/33602841?v=4?s=100" width="100px;" alt=""/><br /><sub><b>fyu0h</b></sub></a><br /><a href="#translation-fyu0h" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/johnflorin"><img src="https://avatars.githubusercontent.com/u/45756085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florin</b></sub></a><br /><a href="#translation-johnflorin" title="Translation">🌍</a></td>
|
||||
<td align="center"><a href="https://github.com/tuzumbear"><img src="https://avatars.githubusercontent.com/u/61370405?v=4?s=100" width="100px;" alt=""/><br /><sub><b>tuzumbear</b></sub></a><br /><a href="#translation-tuzumbear" title="Translation">🌍</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- markdownlint-restore -->
|
||||
|
||||
@@ -33,7 +33,6 @@ Interested in using prerelease build channels of LunaSea? Learn the differences
|
||||
|
||||
- [Build Guide](https://github.com/JagandeepBrar/LunaSea/wiki/Build-Guide)
|
||||
- [Documentation](https://www.lunasea.app/docs)
|
||||
- [Feedback & Feature Requests Board](https://www.lunasea.app/feedback)
|
||||
- [Frequently Asked Questions](https://docs.lunasea.app/getting-started/frequently-asked-questions)
|
||||
|
||||
## Support
|
||||
@@ -41,9 +40,8 @@ Interested in using prerelease build channels of LunaSea? Learn the differences
|
||||
[](https://www.lunasea.app/discord)
|
||||
[](https://www.lunasea.app/reddit)
|
||||
|
||||
**Please only create an issue on GitHub for bugs and software issues**. Post in the [discussions board](https://github.com/JagandeepBrar/LunaSea/discussions) or the [feedback & feature requests board](https://www.lunasea.app/feedback) for requests and general feedback.
|
||||
**Please only create an issue on GitHub for bugs and software issues**. Post in the [discussions board](https://github.com/JagandeepBrar/LunaSea/discussions) or the [Discord forum](https://www.lunasea.app/discord) for requests and general feedback.
|
||||
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
- [Email](mailto:hello@lunasea.app)
|
||||
- [Reddit](https://www.lunasea.app/reddit)
|
||||
- [Website](https://www.lunasea.app)
|
||||
@@ -54,6 +52,5 @@ Interested in using prerelease build channels of LunaSea? Learn the differences
|
||||
|
||||
Thank you to all tools and services for offering free subscriptions for open-source projects!
|
||||
|
||||
- [docs.page](https://docs.page/): docs.page is used to host LunaSea's documentation
|
||||
- [Hellonext](https://www.hellonext.co): Hellonext is used to host LunaSea's feedback board
|
||||
- [Gitbook](https://www.gitbook.com): Gitbook is used to host LunaSea's documentation
|
||||
- [Weblate](https://weblate.org): Weblate is used to gather community localization for LunaSea
|
||||
|
||||
@@ -2,6 +2,8 @@ include: package:flutter_lints/flutter.yaml
|
||||
analyzer:
|
||||
exclude:
|
||||
- 'test/**'
|
||||
- 'test.g.dart'
|
||||
- 'lib/**/*.g.dart'
|
||||
|
||||
linter:
|
||||
rules:
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
CFPropertyList (3.0.5)
|
||||
CFPropertyList (3.0.6)
|
||||
rexml
|
||||
addressable (2.8.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
addressable (2.8.1)
|
||||
public_suffix (>= 2.0.2, < 6.0)
|
||||
artifactory (3.0.15)
|
||||
atomos (0.1.3)
|
||||
aws-eventstream (1.2.0)
|
||||
aws-partitions (1.618.0)
|
||||
aws-sdk-core (3.132.0)
|
||||
aws-partitions (1.731.0)
|
||||
aws-sdk-core (3.170.1)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
aws-partitions (~> 1, >= 1.525.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-partitions (~> 1, >= 1.651.0)
|
||||
aws-sigv4 (~> 1.5)
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-kms (1.58.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-kms (1.63.0)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.114.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-s3 (1.119.1)
|
||||
aws-sdk-core (~> 3, >= 3.165.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.4)
|
||||
aws-sigv4 (1.5.1)
|
||||
aws-sigv4 (1.5.2)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
babosa (1.0.4)
|
||||
claide (1.1.0)
|
||||
@@ -36,8 +36,8 @@ GEM
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
dotenv (2.8.1)
|
||||
emoji_regex (3.2.3)
|
||||
excon (0.92.4)
|
||||
faraday (1.10.1)
|
||||
excon (0.99.0)
|
||||
faraday (1.10.3)
|
||||
faraday-em_http (~> 1.0)
|
||||
faraday-em_synchrony (~> 1.0)
|
||||
faraday-excon (~> 1.1)
|
||||
@@ -66,7 +66,7 @@ GEM
|
||||
faraday_middleware (1.2.0)
|
||||
faraday (~> 1.0)
|
||||
fastimage (2.2.6)
|
||||
fastlane (2.209.0)
|
||||
fastlane (2.212.1)
|
||||
CFPropertyList (>= 2.3, < 4.0.0)
|
||||
addressable (>= 2.8, < 3.0.0)
|
||||
artifactory (~> 3.0)
|
||||
@@ -106,9 +106,9 @@ GEM
|
||||
xcpretty (~> 0.3.0)
|
||||
xcpretty-travis-formatter (>= 0.0.3)
|
||||
gh_inspector (1.1.3)
|
||||
google-apis-androidpublisher_v3 (0.25.0)
|
||||
google-apis-core (>= 0.7, < 2.a)
|
||||
google-apis-core (0.7.0)
|
||||
google-apis-androidpublisher_v3 (0.37.0)
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-apis-core (0.11.0)
|
||||
addressable (~> 2.5, >= 2.5.1)
|
||||
googleauth (>= 0.16.2, < 2.a)
|
||||
httpclient (>= 2.8.1, < 3.a)
|
||||
@@ -117,27 +117,27 @@ GEM
|
||||
retriable (>= 2.0, < 4.a)
|
||||
rexml
|
||||
webrick
|
||||
google-apis-iamcredentials_v1 (0.13.0)
|
||||
google-apis-core (>= 0.7, < 2.a)
|
||||
google-apis-playcustomapp_v1 (0.10.0)
|
||||
google-apis-core (>= 0.7, < 2.a)
|
||||
google-apis-storage_v1 (0.17.0)
|
||||
google-apis-core (>= 0.7, < 2.a)
|
||||
google-apis-iamcredentials_v1 (0.17.0)
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-apis-playcustomapp_v1 (0.13.0)
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-apis-storage_v1 (0.19.0)
|
||||
google-apis-core (>= 0.9.0, < 2.a)
|
||||
google-cloud-core (1.6.0)
|
||||
google-cloud-env (~> 1.0)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-env (1.6.0)
|
||||
faraday (>= 0.17.3, < 3.0)
|
||||
google-cloud-errors (1.2.0)
|
||||
google-cloud-storage (1.38.0)
|
||||
google-cloud-errors (1.3.1)
|
||||
google-cloud-storage (1.44.0)
|
||||
addressable (~> 2.8)
|
||||
digest-crc (~> 0.4)
|
||||
google-apis-iamcredentials_v1 (~> 0.1)
|
||||
google-apis-storage_v1 (~> 0.17.0)
|
||||
google-apis-storage_v1 (~> 0.19.0)
|
||||
google-cloud-core (~> 1.6)
|
||||
googleauth (>= 0.16.2, < 2.a)
|
||||
mini_mime (~> 1.0)
|
||||
googleauth (1.2.0)
|
||||
googleauth (1.3.0)
|
||||
faraday (>= 0.17.3, < 3.a)
|
||||
jwt (>= 1.4, < 3.0)
|
||||
memoist (~> 0.16)
|
||||
@@ -148,11 +148,11 @@ GEM
|
||||
http-cookie (1.0.5)
|
||||
domain_name (~> 0.5)
|
||||
httpclient (2.8.3)
|
||||
jmespath (1.6.1)
|
||||
json (2.6.2)
|
||||
jwt (2.4.1)
|
||||
jmespath (1.6.2)
|
||||
json (2.6.3)
|
||||
jwt (2.7.0)
|
||||
memoist (0.16.2)
|
||||
mini_magick (4.11.0)
|
||||
mini_magick (4.12.0)
|
||||
mini_mime (1.1.2)
|
||||
multi_json (1.15.0)
|
||||
multipart-post (2.0.0)
|
||||
@@ -160,8 +160,8 @@ GEM
|
||||
naturally (2.2.1)
|
||||
optparse (0.1.1)
|
||||
os (1.1.4)
|
||||
plist (3.6.0)
|
||||
public_suffix (4.0.7)
|
||||
plist (3.7.0)
|
||||
public_suffix (5.0.1)
|
||||
rake (13.0.6)
|
||||
representable (3.2.0)
|
||||
declarative (< 0.1.0)
|
||||
@@ -178,7 +178,7 @@ GEM
|
||||
faraday (>= 0.17.5, < 3.a)
|
||||
jwt (>= 1.5, < 3.0)
|
||||
multi_json (~> 1.10)
|
||||
simctl (1.6.8)
|
||||
simctl (1.6.10)
|
||||
CFPropertyList
|
||||
naturally
|
||||
terminal-notifier (2.0.0)
|
||||
@@ -194,7 +194,7 @@ GEM
|
||||
unf_ext
|
||||
unf_ext (0.0.8.2)
|
||||
unicode-display_width (1.8.0)
|
||||
webrick (1.7.0)
|
||||
webrick (1.8.1)
|
||||
word_wrap (1.0.0)
|
||||
xcodeproj (1.22.0)
|
||||
CFPropertyList (>= 2.3.3, < 4.0)
|
||||
@@ -215,4 +215,4 @@ DEPENDENCIES
|
||||
fastlane
|
||||
|
||||
BUNDLED WITH
|
||||
2.3.19
|
||||
2.3.25
|
||||
|
||||
@@ -32,7 +32,7 @@ if (keystorePropertiesFile.exists()) {
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion 31
|
||||
compileSdkVersion 33
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
@@ -50,7 +50,7 @@ android {
|
||||
defaultConfig {
|
||||
applicationId "app.lunasea.lunasea"
|
||||
minSdkVersion 24
|
||||
targetSdkVersion 31
|
||||
targetSdkVersion 33
|
||||
versionCode flutterVersionCode.toInteger()
|
||||
versionName flutterVersionName
|
||||
}
|
||||
@@ -65,6 +65,10 @@ android {
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
debug {
|
||||
applicationIdSuffix ".debug"
|
||||
versionNameSuffix "-dev"
|
||||
}
|
||||
release {
|
||||
signingConfig signingConfigs.release
|
||||
}
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="app.lunasea.lunasea">
|
||||
<application tools:replace="android:label" android:label="LunaSea Dev"></application>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="com.android.vending.BILLING" />
|
||||
<queries>
|
||||
<package android:name="com.plexapp.android" />
|
||||
</queries>
|
||||
</manifest>
|
||||
|
||||
@@ -36,7 +36,11 @@
|
||||
android:value="2" />
|
||||
</application>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="com.android.vending.BILLING" />
|
||||
<queries>
|
||||
<package android:name="com.plexapp.android" />
|
||||
</queries>
|
||||
</manifest>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 6.6 KiB |
|
Before Width: | Height: | Size: 9.3 KiB |
12
android/app/src/main/res/drawable/ic_launcher_foreground.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:viewportWidth="432"
|
||||
android:viewportHeight="432"
|
||||
android:width="108dp"
|
||||
android:height="108dp">
|
||||
<path
|
||||
android:pathData="M262.3 163.2c2.6 -0.2 3.5 0.2 3.2 1.1 -0.3 0.6 -3.1 2.3 -6.2 3.7 -3.1 1.4 -7.9 4.5 -10.5 6.9 -2.7 2.4 -6.1 6.4 -7.5 9 -1.5 2.5 -3.5 7.2 -4.5 10.4 -1 3.1 -1.8 8 -1.8 10.7 0 2.8 0.8 7.6 1.8 10.8 1 3.1 2.9 7.7 4.4 10.2 1.4 2.5 4.8 6.5 7.4 9 2.7 2.4 7.8 5.8 11.4 7.4 5.8 2.7 7.5 3 16 3 7.5 0 10.6 -0.5 14.7 -2.2 2.9 -1.2 7.6 -3.9 10.4 -5.9 2.8 -2.1 6.8 -6.5 9.1 -9.8 2.2 -3.3 4.3 -7.2 4.6 -8.8 0.4 -1.5 1.3 -2.9 1.9 -3.2 1 -0.4 1.2 1 0.7 5.8 -0.4 3.4 -1.5 8.9 -2.6 12.2 -1.1 3.3 -3.5 8.3 -5.3 11 -1.8 2.8 -5.7 7.3 -8.6 10.1 -3 2.8 -7.4 6.2 -9.9 7.6 -2.5 1.4 -7.6 3.5 -11.5 4.7 -4.6 1.4 -9.6 2.1 -14.5 2.1 -4.1 0 -10 -0.7 -13 -1.5 -3 -0.8 -8 -2.7 -11 -4.2 -3 -1.5 -7.8 -4.7 -10.5 -7.1 -2.8 -2.3 -6.9 -7.1 -9.2 -10.5 -2.4 -3.4 -5.3 -9.1 -6.4 -12.7 -1.7 -5 -2.2 -9.1 -2.3 -17.7 -0.1 -6.2 0.2 -11.3 0.6 -11.3 0.5 0 0.8 -0.6 0.8 -1.2 0 -0.7 1.9 -5.1 4.2 -9.8 3 -6 6 -10.2 10.3 -14.4 3.8 -3.7 8.7 -7.1 13.5 -9.4 4.1 -2 7.9 -4 8.4 -4.4 0.5 -0.3 2.5 -0.8 4.5 -1.1 2 -0.2 5.3 -0.4 7.3 -0.5z"
|
||||
android:fillColor="#4ECCA2" />
|
||||
<path
|
||||
android:pathData="M247 165.1c3.2 -0.1 2.8 0.3 -4.5 3.8 -5.3 2.6 -10 5.8 -14 9.7 -4.3 4.2 -7.3 8.4 -10.3 14.4 -2.3 4.7 -4.2 8.9 -4.2 9.5 0 0.6 -2.3 2.1 -5.2 3.5 -2.9 1.4 -7.9 4.2 -11.3 6.4 -3.3 2.1 -14.6 12.3 -25 22.5 -10.4 10.3 -20.8 20.1 -23 21.8 -2.2 1.7 -6.7 4.4 -10 6.1 -3.3 1.6 -8.8 3.8 -12.2 4.8 -3.5 1.1 -6.5 1.6 -6.8 1.2 -0.3 -0.5 1.4 -2.2 3.8 -3.9 2.3 -1.8 5.9 -5 8 -7.3 2.1 -2.3 6.2 -7 9.1 -10.6 2.9 -3.6 8.8 -11 13.2 -16.5 4.3 -5.5 9.4 -11.8 11.3 -14 1.9 -2.2 8.2 -8.7 14 -14.5 5.9 -5.8 14.2 -13 18.6 -16.1 4.4 -3.1 10.9 -7.2 14.5 -9.2 3.6 -2 8.5 -4.4 11 -5.3 2.5 -0.9 7.9 -2.7 12 -4 4.1 -1.2 9.1 -2.3 11 -2.3z"
|
||||
android:fillColor="#2EA07B" />
|
||||
</vector>
|
||||
13
android/app/src/main/res/drawable/ic_launcher_monochrome.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:viewportWidth="432"
|
||||
android:viewportHeight="432"
|
||||
android:width="108dp"
|
||||
android:height="108dp">
|
||||
<path
|
||||
android:fillAlpha="0.6"
|
||||
android:pathData="M262.3 163.2c2.6 -0.2 3.5 0.2 3.2 1.1 -0.3 0.6 -3.1 2.3 -6.2 3.7 -3.1 1.4 -7.9 4.5 -10.5 6.9 -2.7 2.4 -6.1 6.4 -7.5 9 -1.5 2.5 -3.5 7.2 -4.5 10.4 -1 3.1 -1.8 8 -1.8 10.7 0 2.8 0.8 7.6 1.8 10.8 1 3.1 2.9 7.7 4.4 10.2 1.4 2.5 4.8 6.5 7.4 9 2.7 2.4 7.8 5.8 11.4 7.4 5.8 2.7 7.5 3 16 3 7.5 0 10.6 -0.5 14.7 -2.2 2.9 -1.2 7.6 -3.9 10.4 -5.9 2.8 -2.1 6.8 -6.5 9.1 -9.8 2.2 -3.3 4.3 -7.2 4.6 -8.8 0.4 -1.5 1.3 -2.9 1.9 -3.2 1 -0.4 1.2 1 0.7 5.8 -0.4 3.4 -1.5 8.9 -2.6 12.2 -1.1 3.3 -3.5 8.3 -5.3 11 -1.8 2.8 -5.7 7.3 -8.6 10.1 -3 2.8 -7.4 6.2 -9.9 7.6 -2.5 1.4 -7.6 3.5 -11.5 4.7 -4.6 1.4 -9.6 2.1 -14.5 2.1 -4.1 0 -10 -0.7 -13 -1.5 -3 -0.8 -8 -2.7 -11 -4.2 -3 -1.5 -7.8 -4.7 -10.5 -7.1 -2.8 -2.3 -6.9 -7.1 -9.2 -10.5 -2.4 -3.4 -5.3 -9.1 -6.4 -12.7 -1.7 -5 -2.2 -9.1 -2.3 -17.7 -0.1 -6.2 0.2 -11.3 0.6 -11.3 0.5 0 0.8 -0.6 0.8 -1.2 0 -0.7 1.9 -5.1 4.2 -9.8 3 -6 6 -10.2 10.3 -14.4 3.8 -3.7 8.7 -7.1 13.5 -9.4 4.1 -2 7.9 -4 8.4 -4.4 0.5 -0.3 2.5 -0.8 4.5 -1.1 2 -0.2 5.3 -0.4 7.3 -0.5z"
|
||||
android:fillColor="#4ECCA2" />
|
||||
<path
|
||||
android:pathData="M247 165.1c3.2 -0.1 2.8 0.3 -4.5 3.8 -5.3 2.6 -10 5.8 -14 9.7 -4.3 4.2 -7.3 8.4 -10.3 14.4 -2.3 4.7 -4.2 8.9 -4.2 9.5 0 0.6 -2.3 2.1 -5.2 3.5 -2.9 1.4 -7.9 4.2 -11.3 6.4 -3.3 2.1 -14.6 12.3 -25 22.5 -10.4 10.3 -20.8 20.1 -23 21.8 -2.2 1.7 -6.7 4.4 -10 6.1 -3.3 1.6 -8.8 3.8 -12.2 4.8 -3.5 1.1 -6.5 1.6 -6.8 1.2 -0.3 -0.5 1.4 -2.2 3.8 -3.9 2.3 -1.8 5.9 -5 8 -7.3 2.1 -2.3 6.2 -7 9.1 -10.6 2.9 -3.6 8.8 -11 13.2 -16.5 4.3 -5.5 9.4 -11.8 11.3 -14 1.9 -2.2 8.2 -8.7 14 -14.5 5.9 -5.8 14.2 -13 18.6 -16.1 4.4 -3.1 10.9 -7.2 14.5 -9.2 3.6 -2 8.5 -4.4 11 -5.3 2.5 -0.9 7.9 -2.7 12 -4 4.1 -1.2 9.1 -2.3 11 -2.3z"
|
||||
android:fillColor="#2EA07B" />
|
||||
</vector>
|
||||
@@ -2,4 +2,5 @@
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
||||
|
||||
@@ -4,7 +4,11 @@
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="com.android.vending.BILLING" />
|
||||
<queries>
|
||||
<package android:name="com.plexapp.android" />
|
||||
</queries>
|
||||
</manifest>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
buildscript {
|
||||
ext.kotlin_version = '1.5.32'
|
||||
ext.kotlin_version = '1.7.20'
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:4.1.0'
|
||||
classpath 'com.android.tools.build:gradle:7.1.2'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ platform :android do
|
||||
"build",
|
||||
"appbundle",
|
||||
"--release",
|
||||
"--bundle-sksl-path=shaders/android_sksl.json",
|
||||
"--build-number=#{options[:build_number]}",
|
||||
)
|
||||
|
||||
@@ -23,7 +22,6 @@ platform :android do
|
||||
"build",
|
||||
"apk",
|
||||
"--release",
|
||||
"--bundle-sksl-path=shaders/android_sksl.json",
|
||||
"--build-number=#{options[:build_number]}",
|
||||
)
|
||||
|
||||
@@ -38,6 +36,7 @@ platform :android do
|
||||
skip_upload_metadata: true,
|
||||
skip_upload_images: true,
|
||||
skip_upload_screenshots: true,
|
||||
timeout: 600,
|
||||
track: options[:track],
|
||||
version_name: options[:version_name],
|
||||
)
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#Fri Jun 23 08:50:38 CEST 2017
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
|
||||
|
||||
@@ -1,97 +1,46 @@
|
||||
{
|
||||
"motd": "Welcome to LunaSea v10.1.0!\n\nThis release contains a wide variety of bug fixes including a completely rewritten database interface to detect and be resilient against corruption.",
|
||||
"motd": "Welcome to LunaSea v10.2.3!\n\nThis update adds the ability to open Tautulli library items directly in Plex and more details about activity streams.",
|
||||
"feat": {
|
||||
"changelog": [
|
||||
"tautulli": [
|
||||
{
|
||||
"commit": "df65f53a4b00d11abc998f681274d22d94254f14",
|
||||
"message": "prepare and show changelog on pre-release builds"
|
||||
"commit": "5cf1a06cec079aa66c77425c0ed8d4fa7897bbd3",
|
||||
"message": "add ability to open media in Plex"
|
||||
},
|
||||
{
|
||||
"commit": "6de806316efaa61c5ddbac1b8f5b214949f0bcf8",
|
||||
"message": "display audio language, subtitle language, and video dynamic range for activity"
|
||||
}
|
||||
],
|
||||
"calendar": [
|
||||
"flutter": [
|
||||
{
|
||||
"commit": "925f163e1534aeb45e5b22e8254eaf391eabd79f",
|
||||
"message": "show current month in header"
|
||||
"commit": "6241ee462989f1f65fa8f1e18378579e2e77197b",
|
||||
"message": "replace Skia with Impeller rendering engine"
|
||||
},
|
||||
{
|
||||
"commit": "f1b831a118e56c480aae72042ee4eb7013f954b2",
|
||||
"message": "upgrade to Flutter 3.7.7/1837b5be5f"
|
||||
}
|
||||
]
|
||||
},
|
||||
"fix": {
|
||||
"database": [
|
||||
"links": [
|
||||
{
|
||||
"commit": "8fe81d11ab5c5aa484f0c2b471932d5364e6209c",
|
||||
"message": "correctly store manually ordered module list"
|
||||
},
|
||||
{
|
||||
"commit": "758756fcf2456996c7ee02be2bd523cca91c45d3",
|
||||
"message": "detect and recover from database corruption"
|
||||
},
|
||||
{
|
||||
"commit": "fb3e8e53255c457d0922505ad6c2d91f5c0fcf03",
|
||||
"message": "fallback to defaults on null values in profile"
|
||||
},
|
||||
{
|
||||
"commit": "f1dcd0c36d558882bfbc7f4465ed56fac0743c55",
|
||||
"message": "safely type indexer fields and headers"
|
||||
},
|
||||
{
|
||||
"commit": "d4d9816c945b1930ecfda0382d809a7c67839a26",
|
||||
"message": "utilize stricter typing for module headers map"
|
||||
},
|
||||
{
|
||||
"commit": "d8506ee2834ca6a83394c11f6d4d329f03a3647f",
|
||||
"message": "validate enabled profile exists on restore"
|
||||
"commit": "596eab4bad1aa183e3c0dfc8d20a32c15ecdb78d",
|
||||
"message": "use platform default method to launch URLs"
|
||||
}
|
||||
],
|
||||
"sonarr": [
|
||||
"http": [
|
||||
{
|
||||
"commit": "b5bb300046431d8c1c26fd8ac4a26c42444f4f53",
|
||||
"message": "fanart image requests did not including headers"
|
||||
},
|
||||
{
|
||||
"commit": "80678a75bb871a4835d1c73934e043564d80b6b0",
|
||||
"message": "invalid links to theTVDB content"
|
||||
"commit": "aca5d0eb826b38ebeec33e3495045bf21e8a49c7",
|
||||
"message": "correctly set content type for POST requests"
|
||||
}
|
||||
],
|
||||
"lidarr": [
|
||||
"macos": [
|
||||
{
|
||||
"commit": "ad22820d6662371d3d2bc7fbf596f86619002d20",
|
||||
"message": "(history) sort list by date descending"
|
||||
}
|
||||
],
|
||||
"radarr": [
|
||||
{
|
||||
"commit": "22bf728a3dab6b7d76c7674cb4d97dc73e849201",
|
||||
"message": "(queue) allow loading queue list when associated movie is not found"
|
||||
}
|
||||
],
|
||||
"android": [
|
||||
{
|
||||
"commit": "c91ba2ce8134fdc796d0431ba1c9134908fddd91",
|
||||
"message": "correctly handle back-button to open drawer on applicable routes"
|
||||
}
|
||||
],
|
||||
"ui/ux": [
|
||||
{
|
||||
"commit": "95a645c06cf2a76231c4b8dbea87ec593961c205",
|
||||
"message": "(lists) reorderable lists could not be reordered on some platforms"
|
||||
},
|
||||
{
|
||||
"commit": "e05b17ae5ed35cec85ade5b910b82869cb7ad3f2",
|
||||
"message": "(timestamps) display 0-length timestamps as \"0 Minutes\" instead of \"Under a Minute\""
|
||||
"commit": "d612ae221cac741b3a36893d4bc7f05f5055c7b8",
|
||||
"message": "set minimum platform version to 10.15"
|
||||
}
|
||||
]
|
||||
},
|
||||
"refactor": {
|
||||
"purchases": [
|
||||
{
|
||||
"commit": "9cb3fabdf1f5fa10d65770a181ced937413642a2",
|
||||
"message": "rewrite interface to in-app purchase APIs"
|
||||
}
|
||||
],
|
||||
"database": [
|
||||
{
|
||||
"commit": "a0eaca084a399a2e249b142cb720cc50739a3f51",
|
||||
"message": "rewrite interface to key-value database"
|
||||
}
|
||||
]
|
||||
}
|
||||
"refactor": {}
|
||||
}
|
||||
BIN
assets/icon/icon_linux.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
@@ -131,6 +131,20 @@
|
||||
"search": [
|
||||
"tvmaze"
|
||||
]
|
||||
},
|
||||
{
|
||||
"uid": "5d832b893437e33c4a22b7029c2b781b",
|
||||
"css": "musicbrainz",
|
||||
"code": 59401,
|
||||
"src": "custom_icons",
|
||||
"selected": true,
|
||||
"svg": {
|
||||
"path": "M475.1 106.5C469 110.1 462.8 113.7 461.1 114.5 459.5 115.2 456.5 117 454.3 118.4 449.9 121.3 436.7 129.1 426.7 134.6 423.1 136.7 408.2 145.3 393.7 153.9 379.2 162.5 366.3 170 365.1 170.5 363.9 171.1 360.9 172.9 358.5 174.5 356.1 176.1 353.1 177.9 351.9 178.5 350 179.4 330.3 191 319.9 197.2 315.9 199.6 301.8 207.7 295.5 211.2 282.4 218.4 276.4 222.1 275.9 223.2 275.6 223.8 274.8 224.3 274 224.3 273.2 224.3 263.9 229.5 253.2 235.8 242.6 242.1 232.9 247.7 231.7 248.3 230.5 248.8 227.5 250.6 225.1 252.2 222.7 253.8 219.7 255.6 218.5 256.2 214.9 258 196.6 268.8 192.3 271.6 190.2 273 187.4 274.6 186.2 275.2 185 275.8 178.7 279.4 172.3 283.1 165.8 286.9 156.9 292 152.5 294.5L144.4 298.9 144.4 500 144.4 701.1 152.5 705.5C156.9 708 165.8 713.1 172.3 716.9 178.7 720.6 185 724.2 186.2 724.8 187.4 725.4 190.2 727 192.3 728.4 196.6 731.2 214.9 742 218.5 743.8 219.7 744.4 222.7 746.2 225.1 747.8 227.5 749.4 230.5 751.2 231.7 751.7 232.9 752.3 242.6 757.9 253.2 764.2 263.9 770.5 273.2 775.7 274 775.7 274.8 775.7 275.6 776.2 275.9 776.8 276.4 777.9 282.4 781.6 295.5 788.8 301.8 792.3 315.9 800.4 319.9 802.8 330.3 809 350 820.6 351.9 821.5 353.1 822.1 356.1 823.9 358.5 825.5 360.9 827.1 363.9 828.9 365.1 829.5 366.3 830 379.2 837.5 393.7 846.1 408.2 854.7 423.1 863.3 426.7 865.4 436.7 870.9 449.9 878.7 454.3 881.6 456.5 883 459.5 884.8 461.1 885.5 462.8 886.3 469 889.9 475.1 893.5L486.1 900 486.4 700C486.6 590 486.6 410 486.4 300L486.1 100 475.1 106.5M513.2 500L513.2 900.4 520.2 896.4C524 894.2 529.6 890.9 532.6 889 535.6 887.2 538.5 885.6 538.9 885.6 539.4 885.6 543.2 883.4 547.4 880.7 557.1 874.4 570.3 866.6 571 866.6 571.3 866.6 585.4 858.5 602.2 848.5 619 838.6 633.7 830 634.9 829.5 636.1 828.9 639.1 827.1 641.5 825.5 643.9 823.9 646.9 822.1 648.1 821.5 650 820.6 669.7 809 680.1 802.8 684.1 800.4 698.2 792.3 704.5 788.8 717.6 781.6 723.6 777.9 724.1 776.8 724.4 776.2 725.2 775.7 726 775.7 726.8 775.7 736.1 770.5 746.8 764.2 757.4 757.9 767.1 752.3 768.3 751.7 769.5 751.2 772.5 749.4 774.9 747.8 777.3 746.2 780.3 744.4 781.5 743.8 785.1 742 803.4 731.2 807.7 728.4 809.8 727 812.6 725.4 813.8 724.8 815 724.2 821.3 720.6 827.7 716.9 834.2 713.1 843.1 708 847.5 705.5L855.6 701.1 855.6 500 855.6 298.9 847.5 294.5C843.1 292 834.2 286.9 827.7 283.1 821.3 279.4 815 275.8 813.8 275.2 812.6 274.6 809.8 273 807.7 271.6 803.4 268.8 785.1 258 781.5 256.2 780.3 255.6 777.3 253.8 774.9 252.2 772.5 250.6 769.5 248.8 768.3 248.3 767.1 247.7 757.4 242.1 746.8 235.8 736.1 229.5 726.8 224.3 726 224.3 725.2 224.3 724.4 223.8 724.1 223.2 723.6 222.1 717.6 218.4 704.5 211.2 698.2 207.7 684.1 199.6 680.1 197.2 669.7 191 650 179.4 648.1 178.5 646.9 177.9 643.9 176.1 641.5 174.5 639.1 172.9 636.1 171.1 634.9 170.5 633.7 170 619 161.4 602.2 151.5 585.4 141.5 571.3 133.4 571 133.4 570.3 133.4 557.1 125.6 547.4 119.3 543.2 116.6 539.4 114.4 538.9 114.4 538.5 114.4 535.6 112.8 532.6 111 529.6 109.1 524 105.8 520.2 103.6L513.2 99.6 513.2 500",
|
||||
"width": 1000
|
||||
},
|
||||
"search": [
|
||||
"musicbrainz"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
1
assets/images/brands/musicbrainz.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg id="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="400" height="400" viewBox="0, 0, 400,400"><g id="svgg"><path id="path0" d="M190.029 42.611 C 187.610 44.044,185.103 45.471,184.457 45.784 C 183.812 46.096,182.582 46.810,181.723 47.369 C 179.975 48.509,174.674 51.621,170.674 53.855 C 169.223 54.666,163.284 58.136,157.478 61.566 C 151.672 64.996,146.525 67.990,146.041 68.219 C 145.557 68.447,144.370 69.156,143.402 69.794 C 142.434 70.432,141.240 71.155,140.748 71.401 C 140.019 71.765,132.107 76.395,127.957 78.886 C 126.362 79.843,120.705 83.073,118.182 84.468 C 112.956 87.356,110.547 88.836,110.362 89.274 C 110.254 89.528,109.910 89.736,109.597 89.736 C 109.284 89.736,105.545 91.796,101.288 94.313 C 97.031 96.830,93.152 99.077,92.669 99.305 C 92.185 99.533,90.997 100.242,90.029 100.879 C 89.062 101.517,87.874 102.240,87.390 102.486 C 85.978 103.203,78.623 107.531,76.923 108.645 C 76.067 109.206,74.971 109.853,74.487 110.083 C 74.003 110.313,71.496 111.741,68.915 113.257 C 66.334 114.772,62.771 116.811,60.997 117.788 L 57.771 119.564 57.771 200.000 L 57.771 280.436 60.997 282.212 C 62.771 283.189,66.334 285.228,68.915 286.743 C 71.496 288.259,74.003 289.687,74.487 289.917 C 74.971 290.147,76.067 290.794,76.923 291.355 C 78.623 292.469,85.978 296.797,87.390 297.514 C 87.874 297.760,89.062 298.483,90.029 299.121 C 90.997 299.758,92.185 300.467,92.669 300.695 C 93.152 300.923,97.031 303.170,101.288 305.687 C 105.545 308.204,109.284 310.264,109.597 310.264 C 109.910 310.264,110.254 310.472,110.362 310.726 C 110.547 311.164,112.956 312.644,118.182 315.532 C 120.705 316.927,126.362 320.157,127.957 321.114 C 132.107 323.605,140.019 328.235,140.748 328.599 C 141.240 328.845,142.434 329.568,143.402 330.206 C 144.370 330.844,145.557 331.553,146.041 331.781 C 146.525 332.010,151.672 335.004,157.478 338.434 C 163.284 341.864,169.223 345.334,170.674 346.145 C 174.674 348.379,179.975 351.491,181.723 352.631 C 182.582 353.190,183.812 353.904,184.457 354.216 C 185.103 354.529,187.610 355.956,190.029 357.389 L 194.428 359.994 194.577 279.997 C 194.659 235.999,194.659 164.001,194.577 120.003 L 194.428 40.006 190.029 42.611 M205.279 200.000 L 205.279 360.167 208.065 358.562 C 209.597 357.679,211.835 356.348,213.038 355.604 C 214.241 354.861,215.384 354.252,215.578 354.252 C 215.772 354.252,217.295 353.370,218.962 352.291 C 222.855 349.773,228.101 346.628,228.408 346.628 C 228.539 346.628,234.144 343.381,240.863 339.413 C 247.582 335.445,253.475 332.011,253.959 331.782 C 254.443 331.553,255.630 330.844,256.598 330.206 C 257.566 329.568,258.760 328.845,259.252 328.599 C 259.981 328.235,267.893 323.605,272.043 321.114 C 273.638 320.157,279.295 316.927,281.818 315.532 C 287.044 312.644,289.453 311.164,289.638 310.726 C 289.746 310.472,290.090 310.264,290.403 310.264 C 290.716 310.264,294.455 308.204,298.712 305.687 C 302.969 303.170,306.848 300.923,307.331 300.695 C 307.815 300.467,309.003 299.758,309.971 299.121 C 310.938 298.483,312.126 297.760,312.610 297.514 C 314.022 296.797,321.377 292.469,323.077 291.355 C 323.933 290.794,325.029 290.147,325.513 289.917 C 325.997 289.687,328.504 288.259,331.085 286.743 C 333.666 285.228,337.229 283.189,339.003 282.212 L 342.229 280.436 342.229 200.000 L 342.229 119.564 339.003 117.788 C 337.229 116.811,333.666 114.772,331.085 113.257 C 328.504 111.741,325.997 110.313,325.513 110.083 C 325.029 109.853,323.933 109.206,323.077 108.645 C 321.377 107.531,314.022 103.203,312.610 102.486 C 312.126 102.240,310.938 101.517,309.971 100.879 C 309.003 100.242,307.815 99.533,307.331 99.305 C 306.848 99.077,302.969 96.830,298.712 94.313 C 294.455 91.796,290.716 89.736,290.403 89.736 C 290.090 89.736,289.746 89.528,289.638 89.274 C 289.453 88.836,287.044 87.356,281.818 84.468 C 279.295 83.073,273.638 79.843,272.043 78.886 C 267.893 76.395,259.981 71.765,259.252 71.401 C 258.760 71.155,257.566 70.432,256.598 69.794 C 255.630 69.156,254.443 68.447,253.959 68.218 C 253.475 67.989,247.582 64.555,240.863 60.587 C 234.144 56.619,228.539 53.372,228.408 53.372 C 228.101 53.372,222.855 50.227,218.962 47.709 C 217.295 46.630,215.772 45.748,215.578 45.748 C 215.384 45.748,214.241 45.139,213.038 44.396 C 211.835 43.652,209.597 42.321,208.065 41.438 L 205.279 39.833 205.279 200.000 " stroke="none" fill="#000000" fill-rule="evenodd"></path></g></svg>
|
||||
|
After Width: | Height: | Size: 4.3 KiB |
129
assets/localization/ca.json
Normal file
@@ -0,0 +1,129 @@
|
||||
{
|
||||
"radarr.AddMovie": "Afegeix una pel·lícula",
|
||||
"radarr.AddMovieAndSearch": "Afegeix i cerca",
|
||||
"radarr.AddedTag": "S'ha afegit l'etiqueta",
|
||||
"radarr.Age": "Edat",
|
||||
"radarr.All": "Tot",
|
||||
"radarr.Alphabetical": "Alfabètic",
|
||||
"radarr.Approved": "Aprovat",
|
||||
"radarr.Audio": "Àudio",
|
||||
"radarr.Automatic": "Automàtic",
|
||||
"radarr.AvailabilityUnknown": "Disponibilitat desconeguda",
|
||||
"radarr.AvailableIn": "Disponible a {}",
|
||||
"radarr.AvailableToday": "Disponible avui",
|
||||
"radarr.BackupDatabase": "Còpia de seguretat de la Base de Dades",
|
||||
"radarr.BitDepth": "Profunditat de bits",
|
||||
"radarr.Channels": "Canals",
|
||||
"radarr.CinemaDateUnknown": "Data en cinemes desconeguda",
|
||||
"radarr.Codec": "Còdec",
|
||||
"radarr.Configure": "Configura",
|
||||
"radarr.Copy": "Copia",
|
||||
"radarr.CopyFiles": "Enllaç fort/Copia fitxers",
|
||||
"radarr.CopyFull": "Enllaç fort/Copia fitxers",
|
||||
"radarr.CutoffUnmet": "Data límit no trobada",
|
||||
"radarr.DateAdded": "Data d'alta",
|
||||
"radarr.DigitalRelease": "Versió digital",
|
||||
"radarr.DirectoryNotFound": "Directori no trobat",
|
||||
"radarr.Discover": "Descobreix",
|
||||
"radarr.Disks": "Discs",
|
||||
"radarr.DownloadFailed": "La baixada ha fallat",
|
||||
"radarr.DownloadIgnored": "Descàrrega ignorada",
|
||||
"radarr.DynamicRange": "Interval dinàmic",
|
||||
"radarr.EditMovie": "Edita la pel·lícula",
|
||||
"radarr.FPS": "FPS",
|
||||
"radarr.FailedToAddTag": "No s'ha pogut afegir l'etiqueta",
|
||||
"radarr.FileBrowser": "Explorador d'arxius…",
|
||||
"radarr.FilterCatalogue": "Filtra el catàleg",
|
||||
"radarr.GrabbedFrom": "Obtingut de {}",
|
||||
"radarr.History": "Historial",
|
||||
"radarr.HistoryDescription": "Mostra l'activitat recent",
|
||||
"radarr.Import": "Importa",
|
||||
"radarr.ImportMode": "Mode d'importació",
|
||||
"radarr.InCinemas": "Als cinemes",
|
||||
"radarr.InCinemasIn": "Als cinemes el {}",
|
||||
"radarr.InCinemasToday": "Als cinemes avui",
|
||||
"radarr.Interactive": "Interactiu",
|
||||
"radarr.Language": "Idioma",
|
||||
"radarr.Languages": "Llengues",
|
||||
"radarr.ManualImport": "Importació manual",
|
||||
"radarr.ManualImportDescription": "Importa pel·lícules des del sistema de fitxers",
|
||||
"radarr.MinimumAvailability": "Disponibilitat mínima",
|
||||
"radarr.Missing": "Perdudes",
|
||||
"radarr.Monitor": "Segueix",
|
||||
"radarr.MonitorMovie": "Segueix la pel·lícula",
|
||||
"radarr.Monitored": "Seguida",
|
||||
"radarr.MonitoredDescription": "Segueix les noves versions",
|
||||
"radarr.More": "Més",
|
||||
"radarr.Move": "Mou",
|
||||
"radarr.MoveFiles": "Mou fitxers",
|
||||
"radarr.MoveFilesDescription": "Voleu moure els fitxers?",
|
||||
"radarr.MoveFull": "Mou fitxers",
|
||||
"radarr.Movie": "Pel·lícula",
|
||||
"radarr.MovieFileDeleted": "S'ha suprimit el fitxer de la pel·lícula",
|
||||
"radarr.MovieFileRenamed": "S'ha reanomenat el fitxer de la pel·lícula",
|
||||
"radarr.MovieImported": "S'ha importat la pel·lícula ({})",
|
||||
"radarr.MovieNotFound": "No s'ha trobat la pel·lícula",
|
||||
"radarr.MoviePath": "Camí de la pel·lícula",
|
||||
"radarr.Movies": "Pel·lícules",
|
||||
"radarr.NoDisksFound": "No s'han trobat discs",
|
||||
"radarr.NoFilesFound": "No s'ha trobat cap fitxer",
|
||||
"radarr.NoHistoryFound": "No s'ha trobat l'historial",
|
||||
"radarr.NoMoviesFound": "No s'han trobat pel·lícules",
|
||||
"radarr.NoResultsFound": "No s'ha trobat cap resultat",
|
||||
"radarr.NoRootFoldersFound": "No s'han trobat carpetes arrel",
|
||||
"radarr.NoSubdirectoriesFound": "No s'han trobat subdirectoris",
|
||||
"radarr.NoSummaryIsAvailable": "El resum no està disponible.",
|
||||
"radarr.NoTagsFound": "No s'han trobat etiquetes",
|
||||
"radarr.Other": "Altri",
|
||||
"radarr.ParentDirectory": "Directori superior",
|
||||
"radarr.PhysicalRelease": "Versió física",
|
||||
"radarr.Quality": "Qualitat",
|
||||
"radarr.QualityProfile": "Perfil de qualitat",
|
||||
"radarr.Queue": "Posa a la cua",
|
||||
"radarr.QueueDescription": "Mostra actius i en la cua",
|
||||
"radarr.Quick": "Ràpid",
|
||||
"radarr.RefreshMovie": "Refresca la pel·lícula",
|
||||
"radarr.Rejected": "Rebutjada",
|
||||
"radarr.Released": "Estrenada",
|
||||
"radarr.ReleasedToday": "Estrenada avui",
|
||||
"radarr.Releases": "Versions",
|
||||
"radarr.RemoveMovie": "Elimina la pel·lícula",
|
||||
"radarr.Resolution": "Resolució",
|
||||
"radarr.RootFolder": "Carpeta arrel",
|
||||
"radarr.RootFolders": "Carpetes arrels",
|
||||
"radarr.RunRSSSync": "Executa la sincronització RSS",
|
||||
"radarr.Runtime": "Durada",
|
||||
"radarr.ScanType": "Tipus d'escaneig",
|
||||
"radarr.Search": "Cerca",
|
||||
"radarr.SearchAllMissing": "Cerca tots els que falten",
|
||||
"radarr.SearchFor": "Cerca {}",
|
||||
"radarr.Seeders": "Llavors",
|
||||
"radarr.SelectLanguage": "Selecciona els idiomes",
|
||||
"radarr.SelectMovie": "Seleccioneu la pel·lícula",
|
||||
"radarr.SelectQuality": "Selecciona la qualitat",
|
||||
"radarr.Size": "Mida",
|
||||
"radarr.SortCatalogue": "Ordena el catàleg",
|
||||
"radarr.StartSearchFor": "Inicia la cerca de…",
|
||||
"radarr.StartSearchForMissingMovie": "Comença a buscar una pel·lícula que falta",
|
||||
"radarr.Streams": "Fluxos de reproducció",
|
||||
"radarr.Studio": "Estudi",
|
||||
"radarr.Subtitles": "Subtítols",
|
||||
"radarr.SystemStatus": "Estat del sistema",
|
||||
"radarr.SystemStatusDescription": "Estat del sistema i espai al disc",
|
||||
"radarr.Tags": "Etiquetes",
|
||||
"radarr.TagsDescription": "Gestiona les teves etiquetes",
|
||||
"radarr.Type": "Tipus",
|
||||
"radarr.UnmappedFolder": "1 carpeta no assignada",
|
||||
"radarr.UnmappedFolders": "{} carpetes no assignades",
|
||||
"radarr.UnmonitorMovie": "Deixa de seguir la pel·lícula",
|
||||
"radarr.Unmonitored": "Deixa de seguir",
|
||||
"radarr.Unreleased": "No publicada",
|
||||
"radarr.Upcoming": "Proper",
|
||||
"radarr.UpdateLibrary": "Actualitza la biblioteca",
|
||||
"radarr.UpdateMovie": "Actualitza la pel·lícula",
|
||||
"radarr.Video": "Vídeo",
|
||||
"radarr.ViewWebGUI": "Mostra la GUI de la WEB",
|
||||
"radarr.Wanted": "Volgudes",
|
||||
"radarr.Weight": "Mida",
|
||||
"radarr.Year": "Any"
|
||||
}
|
||||
@@ -32,58 +32,103 @@
|
||||
"lunasea.BuyMeACoffee": "Kauf mir einen Kaffee",
|
||||
"lunasea.BuyMeASoda": "Kauf mir eine Limonade",
|
||||
"lunasea.Cancel": "Abbrechen",
|
||||
"lunasea.Candidate": "Kandidat",
|
||||
"lunasea.ChangeProfiles": "Profile wechseln",
|
||||
"lunasea.Changelog": "Änderungsprotokoll",
|
||||
"lunasea.CheckLogsMessage": "Überprüfe die Protokolle für mehr Details",
|
||||
"lunasea.Chores": "Aufgaben",
|
||||
"lunasea.Clear": "Entfernen",
|
||||
"lunasea.Close": "Schließen",
|
||||
"lunasea.ComingSoon": "Bald verfügbar",
|
||||
"lunasea.Copied": "Kopiert",
|
||||
"lunasea.CopiedContentToTheClipboard": "Inhalt in die Zwischenablage kopiert",
|
||||
"lunasea.Critical": "Kritisch",
|
||||
"lunasea.Dashboard": "Übersicht",
|
||||
"lunasea.Days": "{} Tage",
|
||||
"lunasea.DaysAgo": "Vor {} Tagen",
|
||||
"lunasea.Debug": "Fehlersuche",
|
||||
"lunasea.Delete": "Löschen",
|
||||
"lunasea.Descending": "Absteigend",
|
||||
"lunasea.Develop": "Entwicklung",
|
||||
"lunasea.Disable": "Ausschalten",
|
||||
"lunasea.Disabled": "Deaktiviert",
|
||||
"lunasea.Dismiss": "Ausblenden",
|
||||
"lunasea.Docs": "Doku",
|
||||
"lunasea.DownloadClient": "Downloadklient",
|
||||
"lunasea.Edge": "Edge",
|
||||
"lunasea.Error": "Fehler",
|
||||
"lunasea.ExternalModules": "Externe Module",
|
||||
"lunasea.Features": "Funktionen",
|
||||
"lunasea.Fixes": "Behoben",
|
||||
"lunasea.FullChangelog": "Vollständiger Changelog",
|
||||
"lunasea.GoBack": "Zurück",
|
||||
"lunasea.GoToSettings": "Einstellungen öffnen",
|
||||
"lunasea.GridView": "Rasteransicht",
|
||||
"lunasea.Home": "Startseite",
|
||||
"lunasea.Hours": "{} Stunden",
|
||||
"lunasea.HoursAgo": "Vor {} Stunden",
|
||||
"lunasea.IncorrectEncryptionKey": "Ungültige Sicherungsphrase",
|
||||
"lunasea.Internal": "Intern",
|
||||
"lunasea.InvalidFileTypeSelected": "Ungültiger Dateityp ausgewählt",
|
||||
"lunasea.JustNow": "Jetzt gerade",
|
||||
"lunasea.Minutes": "{} Minuten",
|
||||
"lunasea.MinutesAgo": "Vor {} Minuten",
|
||||
"lunasea.Module": "Modul",
|
||||
"lunasea.ModuleIsNotEnabled": "{} ist nicht aktiviert",
|
||||
"lunasea.Months": "{} Monate",
|
||||
"lunasea.MonthsAgo": "Vor {} Monaten",
|
||||
"lunasea.New": "Neu",
|
||||
"lunasea.No": "Nein",
|
||||
"lunasea.NoModulesEnabled": "Keine Module aktiviert",
|
||||
"lunasea.NotSet": "Nicht gesetzt",
|
||||
"lunasea.OneDay": "1 Tag",
|
||||
"lunasea.OneDayAgo": "Vor 1 Tag",
|
||||
"lunasea.OneHour": "1 Stunde",
|
||||
"lunasea.OneHourAgo": "Vor 1 Stunde",
|
||||
"lunasea.OneMinute": "1 Minute",
|
||||
"lunasea.OneMinuteAgo": "Vor 1 Minute",
|
||||
"lunasea.OneMonth": "1 Monat",
|
||||
"lunasea.OneMonthAgo": "Vor 1 Monat",
|
||||
"lunasea.OneSecond": "1 Sekunde",
|
||||
"lunasea.OneSecondAgo": "Vor 1 Sekunde",
|
||||
"lunasea.OneYear": "1 Jahr",
|
||||
"lunasea.OneYearAgo": "Vor 1 Jahr",
|
||||
"lunasea.Options": "Optionen",
|
||||
"lunasea.Other": "Andere",
|
||||
"lunasea.Page": "Seite",
|
||||
"lunasea.PlatformSpecific": "Plattformspezifisch",
|
||||
"lunasea.PleaseTryAgain": "Bitte versuche es erneut",
|
||||
"lunasea.Production": "Produktion",
|
||||
"lunasea.Refresh": "Aktualisieren",
|
||||
"lunasea.Refreshing": "Aktualisieren…",
|
||||
"lunasea.Remove": "Entfernen",
|
||||
"lunasea.Rename": "Umbenennen",
|
||||
"lunasea.Restore": "Wiederherstellen",
|
||||
"lunasea.Retry": "Wiederholung",
|
||||
"lunasea.ReturnToDashboard": "Zurück zur Instrumentenanlage",
|
||||
"lunasea.SearchTextBar": "Suche…",
|
||||
"lunasea.Seconds": "{} Sekunden",
|
||||
"lunasea.SecondsAgo": "Vor {} Sekunden",
|
||||
"lunasea.Set": "Wähle",
|
||||
"lunasea.Settings": "Einstellungen",
|
||||
"lunasea.Stable": "Stabil",
|
||||
"lunasea.StartingView": "Startansicht",
|
||||
"lunasea.Today": "Heute",
|
||||
"lunasea.TransactionFailure": "Transaktion fehlgeschlagen",
|
||||
"lunasea.TryAgain": "Erneut versuchen",
|
||||
"lunasea.Tweaks": "Optimierungen",
|
||||
"lunasea.UnderAMinute": "Unter einer Minute",
|
||||
"lunasea.Unknown": "Unbekannt",
|
||||
"lunasea.UnknownDate": "Unbekanntes Datum",
|
||||
"lunasea.UnknownError": "Unbekannter Fehler",
|
||||
"lunasea.UnknownModule": "Unbekanntes Modul",
|
||||
"lunasea.Update": "Aktualisierung",
|
||||
"lunasea.View": "Ansicht",
|
||||
"lunasea.Warning": "Warnung",
|
||||
"lunasea.Website": "Internetseite",
|
||||
"lunasea.Years": "{} Jahre",
|
||||
"lunasea.YearsAgo": "Vor {} Jahren",
|
||||
"lunasea.Yes": "Ja",
|
||||
"overseerr.Users": "Benutzer",
|
||||
"overseerr.UnknownUser": "Unbekannter Benutzer",
|
||||
"overseerr.NoUsersFound": "Keine Benutzer gefunden",
|
||||
@@ -129,6 +174,7 @@
|
||||
"radarr.Codec": "Kodec",
|
||||
"radarr.Configure": "Konfigurieren",
|
||||
"radarr.Copy": "Kopieren",
|
||||
"radarr.CopyFiles": "Dateien Kopieren",
|
||||
"radarr.CopyFull": "Hardlink/Dateien kopieren",
|
||||
"radarr.CutoffUnmet": "Cutoff nicht erreicht",
|
||||
"radarr.DateAdded": "Hinzugefügt am",
|
||||
@@ -164,7 +210,9 @@
|
||||
"radarr.Monitored": "Überwacht",
|
||||
"radarr.MonitoredDescription": "Neue Veröffentlichungen überwachen",
|
||||
"radarr.More": "Mehr",
|
||||
"radarr.Move": "Übertragen",
|
||||
"radarr.Move": "Verschieben",
|
||||
"radarr.MoveFiles": "Datei verschieben",
|
||||
"radarr.MoveFilesDescription": "Möchten Sie die Dateien verschieben?",
|
||||
"radarr.MoveFull": "Dateien übertragen",
|
||||
"radarr.Movie": "Film",
|
||||
"radarr.MovieFileDeleted": "Filmdatei gelöscht",
|
||||
@@ -194,7 +242,7 @@
|
||||
"radarr.Rejected": "Abgelehnt",
|
||||
"radarr.Released": "Veröffentlicht",
|
||||
"radarr.ReleasedToday": "Heute veröffentlicht",
|
||||
"radarr.Releases": "Releases",
|
||||
"radarr.Releases": "Veröffentlichungen",
|
||||
"radarr.RemoveMovie": "Film entfernen",
|
||||
"radarr.Resolution": "Auflösung",
|
||||
"radarr.RootFolder": "Root-Verzeichnis",
|
||||
@@ -225,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} unbekannte Ordner",
|
||||
"radarr.UnmonitorMovie": "Filmüberwachung entfernen",
|
||||
"radarr.Unmonitored": "Nicht überwacht",
|
||||
"radarr.Unreleased": "Unveröffentlicht",
|
||||
"radarr.Upcoming": "Aufkommend",
|
||||
"radarr.UpdateLibrary": "Mediathek aktualisieren",
|
||||
"radarr.UpdateMovie": "Film aktualisieren",
|
||||
@@ -233,6 +282,30 @@
|
||||
"radarr.Wanted": "Gesucht",
|
||||
"radarr.Weight": "Gewicht",
|
||||
"radarr.Year": "Jahr",
|
||||
"sabnzbd.Age": "Alter",
|
||||
"sabnzbd.All": "Alle",
|
||||
"sabnzbd.Ascending": "Aufsteigend",
|
||||
"sabnzbd.CategoryDefault": "Standard Kategorie",
|
||||
"sabnzbd.Completed": "Abgeschlossen",
|
||||
"sabnzbd.Descending": "Absteigend",
|
||||
"sabnzbd.Duplicate": "Duplikat",
|
||||
"sabnzbd.Failed": "fehlgeschlagen",
|
||||
"sabnzbd.Force": "erzwingen",
|
||||
"sabnzbd.HibernatePC": "Ruhezustand",
|
||||
"sabnzbd.High": "Hoch",
|
||||
"sabnzbd.Low": "Niedrig",
|
||||
"sabnzbd.Name": "Name",
|
||||
"sabnzbd.None": "Keines",
|
||||
"sabnzbd.Normal": "Normal",
|
||||
"sabnzbd.Paused": "Pausiert",
|
||||
"sabnzbd.Repair": "Reparieren",
|
||||
"sabnzbd.RepairUnpack": "Reparieren/Entpacken",
|
||||
"sabnzbd.RepairUnpackDelete": "Reparieren/Entpacken/Löschen",
|
||||
"sabnzbd.Size": "Größe",
|
||||
"sabnzbd.ShutdownPC": "PC Herunterfahren",
|
||||
"sabnzbd.ShutdownSABnzbd": "SABnzbd Herunterfahren",
|
||||
"sabnzbd.StandbyPC": "PC in den Standbymodus setzten",
|
||||
"sabnzbd.Stop": "Stopp",
|
||||
"search.NoCategoriesFound": "Keine Kategorien gefunden",
|
||||
"search.FailedToSend": "Senden fehlgeschlagen",
|
||||
"search.FailedToDownloadNZB": "Herunterladen der NZB fehlgeschlagen",
|
||||
@@ -455,9 +528,7 @@
|
||||
"settings.SortCategory": "Kategorie sortieren",
|
||||
"settings.SortDirection": "Sortierrichtung",
|
||||
"settings.ViewRecentChanges": "Letzte Änderungen anzeigen",
|
||||
"settings.DiscordDescription": "Chat & Diskussionen",
|
||||
"settings.Documentation": "Dokumentation",
|
||||
"settings.FeedbackBoard": "Feedback-Seite",
|
||||
"settings.GitHubDescription": "Sieh dir den Quellcode an",
|
||||
"settings.SystemStatus": "Systemstatus",
|
||||
"settings.SystemStatusDescription": "Statusseite für gehostete Dienste",
|
||||
@@ -466,7 +537,6 @@
|
||||
"settings.RedditDescription": "Stelle Fragen und erhalte Unterstützung",
|
||||
"settings.TestBuildsDescription": "Vorabversionen von LunaSea installieren",
|
||||
"settings.DocumentationDescription": "Sieh dir die Dokumentation an",
|
||||
"settings.FeedbackBoardDescription": "Neue Funktionen anfragen",
|
||||
"settings.WeblateDescription": "Hilf LunaSea zu lokalisieren",
|
||||
"settings.Website": "Webseite",
|
||||
"settings.CalendarSettings": "Kalendereinstellungen",
|
||||
@@ -484,6 +554,48 @@
|
||||
"settings.Home": "Startseite",
|
||||
"settings.PasswordHint1": "Wenn Ihr Passwort Sonderzeichen enthält, sollten Sie stattdessen einen Basic Authentication Header mit Ihrem Benutzernamen und Passwort hinzufügen, um eine bessere Unterstützung zu gewährleisten",
|
||||
"settings.QuickActionsBannerLine1": "Mit den Schnellaktionen können Sie direkt vom Startbildschirm oder dem Launcher Ihres Geräts in die Module springen, indem Sie lange auf das LunaSea-Symbol drücken.",
|
||||
"settings.EmailValidation": "Falsche E-Mail Adresse",
|
||||
"settings.Channel": "Kanal",
|
||||
"settings.FailedToUpdateEmail": "E-Mail konnte nicht aktualisiert werden",
|
||||
"settings.NoAdditionalProfilesAdded": "Es wurden keine zusätzlichen Profile hinzugefügt",
|
||||
"settings.DatabaseCorruptionDetected": "Datenbankbeschädigung erkannt",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "Datenbankbeschädigung wurde erkannt und Ihre Konfiguration wurde gelöscht.",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "Entschuldigen Sie die Unannehmlichkeiten, alle zuvor erstellten Sicherungen sollten wiederherstellbar sein, auch wenn sie zuvor mit einer beschädigten Datenbank exportiert wurden.",
|
||||
"settings.NoProfilesFound": "Keine Profile gefunden",
|
||||
"settings.Platform": "Plattform",
|
||||
"settings.BuildChannels": "Build Kanäle",
|
||||
"settings.BuildChannelsDescription": "Erfahre mehr über zusätzliche Build-Kanäle",
|
||||
"settings.FailedToUpdatePassword": "Passwort konnte nicht aktualisiert werden",
|
||||
"settings.NewPassword": "Neues Passwort",
|
||||
"settings.PasswordUpdated": "Passwort aktualisiert",
|
||||
"settings.PleaseSignInAgain": "Bitte erneut anmelden",
|
||||
"settings.RestoreFromDeviceDescription": "Konfigurationsdaten wiederherstellen",
|
||||
"settings.AddedProfile": "Hinzugefügtes Profil",
|
||||
"settings.Build": "Build",
|
||||
"settings.ChangedProfile": "Profil geändert",
|
||||
"settings.CurrentPassword": "Aktuelles Passwort",
|
||||
"settings.DeletedProfile": "Profil gelöscht",
|
||||
"settings.ProfileToProfile": "\"{}\" zu \"{}\"",
|
||||
"settings.RenamedProfile": "Profil umbenannt",
|
||||
"settings.RestoreFromDevice": "Vom Gerät wiederherstellen",
|
||||
"settings.BackupToDevice": "Sicherung auf Gerät",
|
||||
"settings.BackupToDeviceDescription": "Konfigurationsdaten sichern",
|
||||
"settings.DownloadUpdate": "Update herunterladen",
|
||||
"settings.EmailUpdated": "E-Mail aktualisiert",
|
||||
"settings.EnableInAppNotifications": "App-Benachrichtigungen Aktivieren",
|
||||
"settings.SentryLoggingDescription": "Fehler und Abstürze hochladen und an Sentry senden",
|
||||
"settings.SentryLogging": "Sentry Protokollierung",
|
||||
"settings.Version": "Version",
|
||||
"settings.OpenDrawerOnBackAction": "Seitenmenü bei Zurück-Aktion öffnen",
|
||||
"settings.OpenDrawerOnBackActionDescription": "Öffne das Seitenmenü anstatt LunaSea zu schließen",
|
||||
"settings.UpdateEmail": "Email aktualisieren",
|
||||
"settings.UpdatePassword": "Passwort aktualisieren",
|
||||
"settings.UpToDate": "Auf dem neuesten Stand",
|
||||
"settings.DiscordDescription": "Schlage neue Funktionen vor & erhalte Unterstützung",
|
||||
"settings.ViewTypeLogs": "{} Protokolle ansehen",
|
||||
"settings.BootModule": "Startmodul",
|
||||
"settings.General": "Allgemein",
|
||||
"settings.GeneralDescription": "LunaSea anpassen",
|
||||
"sonarr.AddSeries": "Serie hinzufügen",
|
||||
"sonarr.AddToExclusionList": "Zur Ignorierliste hinzufügen",
|
||||
"sonarr.AllSeasons": "Alle Staffeln",
|
||||
@@ -641,7 +753,7 @@
|
||||
"sonarr.RunningRSSSync": "RSS-Synchro wird durchgeführt {}",
|
||||
"sonarr.Runtime": "Laufzeit",
|
||||
"sonarr.SearchFor": "Nach {} suchen",
|
||||
"sonarr.Releases": "Releases",
|
||||
"sonarr.Releases": "Veröffentlichungen",
|
||||
"sonarr.RemovedSeriesWithFiles": "Serie entfernt (Mit Dateien)",
|
||||
"sonarr.SearchingForSeason": "Staffel wird gesucht…",
|
||||
"sonarr.SeriesFolderImported": "Folge aus Serien-Ordner importiert",
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
"lunasea.Disabled": "Disabled",
|
||||
"lunasea.Dismiss": "Dismiss",
|
||||
"lunasea.Docs": "Docs",
|
||||
"lunasea.DownloadClient": "Download Client",
|
||||
"lunasea.Edge": "Edge",
|
||||
"lunasea.Error": "Error",
|
||||
"lunasea.ExternalModules": "External Modules",
|
||||
@@ -77,6 +78,7 @@
|
||||
"lunasea.Months": "{} Months",
|
||||
"lunasea.MonthsAgo": "{} Months Ago",
|
||||
"lunasea.New": "New",
|
||||
"lunasea.No": "No",
|
||||
"lunasea.NotSet": "Not Set",
|
||||
"lunasea.NoModulesEnabled": "No Modules Enabled",
|
||||
"lunasea.OneDay": "1 Day",
|
||||
@@ -126,6 +128,7 @@
|
||||
"lunasea.Website": "Website",
|
||||
"lunasea.Years": "{} Years",
|
||||
"lunasea.YearsAgo": "{} Years Ago",
|
||||
"lunasea.Yes": "Yes",
|
||||
"overseerr.Audio": "Audio",
|
||||
"overseerr.Approved": "Approved",
|
||||
"overseerr.Available": "Available",
|
||||
@@ -171,6 +174,7 @@
|
||||
"radarr.Codec": "Codec",
|
||||
"radarr.Configure": "Configure",
|
||||
"radarr.Copy": "Copy",
|
||||
"radarr.CopyFiles": "Hardlink/Copy Files",
|
||||
"radarr.CopyFull": "Hardlink/Copy Files",
|
||||
"radarr.CutoffUnmet": "Cutoff Unmet",
|
||||
"radarr.DateAdded": "Date Added",
|
||||
@@ -207,6 +211,8 @@
|
||||
"radarr.MonitorMovie": "Monitor Movie",
|
||||
"radarr.More": "More",
|
||||
"radarr.Move": "Move",
|
||||
"radarr.MoveFiles": "Move Files",
|
||||
"radarr.MoveFilesDescription": "Would you like to move the files?",
|
||||
"radarr.MoveFull": "Move Files",
|
||||
"radarr.Movie": "Movie",
|
||||
"radarr.Movies": "Movies",
|
||||
@@ -267,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} Unmapped Folders",
|
||||
"radarr.Unmonitored": "Unmonitored",
|
||||
"radarr.UnmonitorMovie": "Unmonitor Movie",
|
||||
"radarr.Unreleased": "Unreleased",
|
||||
"radarr.Upcoming": "Upcoming",
|
||||
"radarr.UpdateLibrary": "Update Library",
|
||||
"radarr.UpdateMovie": "Update Movie",
|
||||
@@ -275,6 +282,30 @@
|
||||
"radarr.Wanted": "Wanted",
|
||||
"radarr.Weight": "Weight",
|
||||
"radarr.Year": "Year",
|
||||
"sabnzbd.Age": "Age",
|
||||
"sabnzbd.All": "All",
|
||||
"sabnzbd.Ascending": "Ascending",
|
||||
"sabnzbd.CategoryDefault": "Category Default",
|
||||
"sabnzbd.Completed": "Completed",
|
||||
"sabnzbd.Descending": "Descending",
|
||||
"sabnzbd.Duplicate": "Duplicate",
|
||||
"sabnzbd.Failed": "Failed",
|
||||
"sabnzbd.Force": "Force",
|
||||
"sabnzbd.HibernatePC": "Hibernate PC",
|
||||
"sabnzbd.High": "High",
|
||||
"sabnzbd.Low": "Low",
|
||||
"sabnzbd.Name": "Name",
|
||||
"sabnzbd.None": "None",
|
||||
"sabnzbd.Normal": "Normal",
|
||||
"sabnzbd.Paused": "Paused",
|
||||
"sabnzbd.Repair": "Repair",
|
||||
"sabnzbd.RepairUnpack": "Repair/Unpack",
|
||||
"sabnzbd.RepairUnpackDelete": "Repair/Unpack/Delete",
|
||||
"sabnzbd.Size": "Size",
|
||||
"sabnzbd.ShutdownPC": "Shutdown PC",
|
||||
"sabnzbd.ShutdownSABnzbd": "Shutdown SABnzbd",
|
||||
"sabnzbd.StandbyPC": "Standby PC",
|
||||
"sabnzbd.Stop": "Stop",
|
||||
"search.Age": "Age",
|
||||
"search.AllSubcategories": "All Subcategories",
|
||||
"search.Alphabetical": "Alphabetical",
|
||||
@@ -340,6 +371,7 @@
|
||||
"settings.BasicAuthenticationHint1": "The username must not contain a colon",
|
||||
"settings.BasicAuthenticationHint2": "The password can contain a colon",
|
||||
"settings.BasicAuthenticationHint3": "The username and password are automatically converted to base64 encoding",
|
||||
"settings.BootModule": "Boot Module",
|
||||
"settings.BroadcastAddress": "Broadcast Address",
|
||||
"settings.BroadcastAddressHint1": "This is the broadcast address of your local network",
|
||||
"settings.BroadcastAddressHint2": "Typically this is the IP address of your machine with the last octet set to 255",
|
||||
@@ -408,7 +440,7 @@
|
||||
"settings.DeleteModuleSuccess": "Module Deleted",
|
||||
"settings.DeleteProfile": "Delete Profile",
|
||||
"settings.DeleteProfileDescription": "Delete an Existing Profile",
|
||||
"settings.DiscordDescription": "Chat & Discussions",
|
||||
"settings.DiscordDescription": "Request Features & Get Support",
|
||||
"settings.DismissBanners": "Dismiss Banners",
|
||||
"settings.DismissBannersHint1": "Are you sure you want to dismiss all tooltip banners?",
|
||||
"settings.DismissBannersHint2": "The tooltip banners will give you tips and hints for features available within LunaSea.",
|
||||
@@ -434,11 +466,11 @@
|
||||
"settings.FailedToDeleteAccount": "Failed to Delete Account",
|
||||
"settings.FailedToUpdateEmail": "Failed to Update Email",
|
||||
"settings.FailedToUpdatePassword": "Failed to Update Password",
|
||||
"settings.FeedbackBoard": "Feedback Board",
|
||||
"settings.FeedbackBoardDescription": "Request New Features",
|
||||
"settings.FilterCategory": "Filter Category",
|
||||
"settings.ForgotYourPassword": "Forgot Your Password?",
|
||||
"settings.FutureDays": "Future Days",
|
||||
"settings.General": "General",
|
||||
"settings.GeneralDescription": "Customize LunaSea",
|
||||
"settings.GitHubDescription": "View the Source Code",
|
||||
"settings.HeaderAdded": "Header Added",
|
||||
"settings.HeaderDeleted": "Header Deleted",
|
||||
@@ -485,6 +517,8 @@
|
||||
"settings.NoExternalModulesFound": "No External Modules Found",
|
||||
"settings.NoHeadersAdded": "No Headers Added",
|
||||
"settings.NoProfilesFound": "No Profiles Found",
|
||||
"settings.OpenDrawerOnBackAction": "Open Drawer on Back Action",
|
||||
"settings.OpenDrawerOnBackActionDescription": "Open the drawer instead of closing LunaSea",
|
||||
"settings.OpenLinksIn": "Open Links In…",
|
||||
"settings.Password": "Password",
|
||||
"settings.PasswordHint1": "If your password includes special characters, considering adding a basic authentication header with your username and password instead for better support",
|
||||
@@ -523,6 +557,8 @@
|
||||
"settings.RestoreFromCloudSuccessMessage": "Your configuration has been restored",
|
||||
"settings.RestoreFromDevice": "Restore from Device",
|
||||
"settings.RestoreFromDeviceDescription": "Restore Configuration Data",
|
||||
"settings.SentryLogging": "Sentry Logging",
|
||||
"settings.SentryLoggingDescription": "Upload Errors & Crashes to Sentry",
|
||||
"settings.SignedInFailure": "Failed to Sign In",
|
||||
"settings.SignedInSuccess": "Successfully Signed In",
|
||||
"settings.SignedOutFailure": "Failed to Sign Out",
|
||||
@@ -782,6 +818,7 @@
|
||||
"tautulli.BackupDatabase": "Backup Database",
|
||||
"tautulli.Bandwidth": "Bandwidth",
|
||||
"tautulli.Burn": "Burn",
|
||||
"tautulli.Converting": "Converting",
|
||||
"tautulli.Container": "Container",
|
||||
"tautulli.Copy": "Copy",
|
||||
"tautulli.DeleteCache": "Delete Cache",
|
||||
@@ -819,6 +856,7 @@
|
||||
"tautulli.Sessions": "Sessions",
|
||||
"tautulli.SessionsOne": "1 Session",
|
||||
"tautulli.SessionsMany": "{} Sessions",
|
||||
"tautulli.Speed": "Speed: {}x",
|
||||
"tautulli.Stream": "Stream",
|
||||
"tautulli.Subtitle": "Subtitle",
|
||||
"tautulli.Terminate": "Terminate",
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
"lunasea.Critical": "Crítica",
|
||||
"lunasea.Dashboard": "Tablero",
|
||||
"lunasea.Days": "{} Días",
|
||||
"lunasea.DaysAgo": "{} Hace días",
|
||||
"lunasea.DaysAgo": "Hace {} días",
|
||||
"lunasea.Debug": "Depurar",
|
||||
"lunasea.Delete": "Eliminar",
|
||||
"lunasea.Descending": "Descendente",
|
||||
@@ -63,24 +63,68 @@
|
||||
"lunasea.GoBack": "Regresar",
|
||||
"lunasea.GoToSettings": "Ve a Configuración",
|
||||
"lunasea.GridView": "Vista de cuadrícula",
|
||||
"lunasea.Home": "Inicio",
|
||||
"lunasea.Hours": "{} horas",
|
||||
"lunasea.HoursAgo": "Hace {} horas",
|
||||
"lunasea.IncorrectEncryptionKey": "Clave de cifrado incorrecta",
|
||||
"lunasea.Internal": "Interno",
|
||||
"lunasea.InvalidFileTypeSelected": "Tipo de archivo seleccionado no válido",
|
||||
"lunasea.JustNow": "Ahora mismo",
|
||||
"lunasea.Minutes": "{} minutos",
|
||||
"lunasea.MinutesAgo": "Hace {} minutos",
|
||||
"lunasea.Module": "Módulo",
|
||||
"lunasea.ModuleIsNotEnabled": "{} No está habilitado",
|
||||
"lunasea.Months": "{} meses",
|
||||
"lunasea.MonthsAgo": "Hace {} meses",
|
||||
"lunasea.New": "Nuevo",
|
||||
"lunasea.NoModulesEnabled": "Sin módulos habilitados",
|
||||
"lunasea.NotSet": "No establecido",
|
||||
"lunasea.OneDay": "1 día",
|
||||
"lunasea.OneDayAgo": "Hace 1 día",
|
||||
"lunasea.OneHour": "1 hora",
|
||||
"lunasea.OneHourAgo": "Hace 1 hora",
|
||||
"lunasea.OneMinute": "1 minuto",
|
||||
"lunasea.OneMinuteAgo": "Hace 1 minuto",
|
||||
"lunasea.OneMonth": "1 mes",
|
||||
"lunasea.OneMonthAgo": "Hace 1 mes",
|
||||
"lunasea.OneSecond": "1 segundo",
|
||||
"lunasea.OneSecondAgo": "Hace 1 segundo",
|
||||
"lunasea.OneYear": "1 año",
|
||||
"lunasea.OneYearAgo": "Hace 1 año",
|
||||
"lunasea.Options": "Opciones",
|
||||
"lunasea.Other": "Otro",
|
||||
"lunasea.Page": "Página",
|
||||
"lunasea.PleaseTryAgain": "Por favor, inténtelo de nuevo",
|
||||
"lunasea.Production": "Producción",
|
||||
"lunasea.Refresh": "Actualizar",
|
||||
"lunasea.Refreshing": "Refrescando…",
|
||||
"lunasea.Remove": "Eliminar",
|
||||
"lunasea.Rename": "Renombrar",
|
||||
"lunasea.Restore": "Restaurar",
|
||||
"lunasea.Retry": "Reintentar",
|
||||
"lunasea.ReturnToDashboard": "Regresar al Tablero",
|
||||
"lunasea.SearchTextBar": "Buscar…",
|
||||
"lunasea.Seconds": "{} segundos",
|
||||
"lunasea.SecondsAgo": "Hace {} segundos",
|
||||
"lunasea.Set": "Establecer",
|
||||
"lunasea.Settings": "Configuración",
|
||||
"lunasea.Stable": "Estable",
|
||||
"lunasea.StartingView": "Vista inicial",
|
||||
"lunasea.Today": "Hoy",
|
||||
"lunasea.TransactionFailure": "Error de transacción",
|
||||
"lunasea.TryAgain": "Volver a intentar",
|
||||
"lunasea.Tweaks": "Ajustes",
|
||||
"lunasea.UnderAMinute": "Menos de un minuto",
|
||||
"lunasea.Unknown": "Desconocido",
|
||||
"lunasea.UnknownDate": "Fecha desconocida",
|
||||
"lunasea.UnknownError": "Error desconocido",
|
||||
"lunasea.UnknownModule": "Módulo desconocido",
|
||||
"lunasea.Update": "Actualizar",
|
||||
"lunasea.View": "Ver",
|
||||
"lunasea.Warning": "Aviso",
|
||||
"lunasea.Website": "Sitio web",
|
||||
"lunasea.Years": "{} años",
|
||||
"lunasea.YearsAgo": "Hace {} años",
|
||||
"overseerr.NoRequests": "Sin solicitudes",
|
||||
"overseerr.OneRequest": "1 solicitud",
|
||||
"overseerr.SomeRequests": "{} solicitudes",
|
||||
@@ -89,6 +133,24 @@
|
||||
"overseerr.UnknownUser": "Usuario desconocido",
|
||||
"overseerr.NoUsersFound": "No se encontraron usuarios",
|
||||
"overseerr.Users": "Usuarios",
|
||||
"overseerr.Audio": "Audio",
|
||||
"overseerr.Issues": "Incidencias",
|
||||
"overseerr.Open": "Abrir",
|
||||
"overseerr.OpenedBy": "Abierto por {}",
|
||||
"overseerr.Other": "Otro",
|
||||
"overseerr.Processing": "Procesando",
|
||||
"overseerr.Resolved": "Resuelto",
|
||||
"overseerr.Requested": "Solicitado",
|
||||
"overseerr.RequestedBy": "Solicitado por {}",
|
||||
"overseerr.Subtitle": "Subtítulo",
|
||||
"overseerr.Video": "Vídeo",
|
||||
"overseerr.NoIssuesFound": "No se han encontrado incidencias",
|
||||
"overseerr.NoIssues": "No hay Incidencias",
|
||||
"overseerr.Approved": "Aprobado",
|
||||
"overseerr.Available": "Disponible",
|
||||
"overseerr.Declined": "Rechazado",
|
||||
"overseerr.PartiallyAvailable": "Parcialmente disponible",
|
||||
"overseerr.Pending": "Pendiente",
|
||||
"radarr.AddMovie": "Añadir película",
|
||||
"radarr.AddMovieAndSearch": "Añadir y Buscar",
|
||||
"radarr.AddedTag": "Etiqueta añadida",
|
||||
@@ -212,6 +274,14 @@
|
||||
"radarr.Wanted": "Se busca",
|
||||
"radarr.Weight": "Peso",
|
||||
"radarr.Year": "Año",
|
||||
"sabnzbd.Age": "Años",
|
||||
"sabnzbd.All": "Todos",
|
||||
"sabnzbd.Ascending": "Ascendente",
|
||||
"sabnzbd.CategoryDefault": "Categoría Predeterminada",
|
||||
"sabnzbd.Completed": "Terminado",
|
||||
"sabnzbd.Descending": "Descendente",
|
||||
"sabnzbd.Duplicate": "Duplicado",
|
||||
"sabnzbd.Failed": "Fallido",
|
||||
"search.Alphabetical": "Alfabética",
|
||||
"search.Category": "Categoria",
|
||||
"search.Comments": "Comentarios",
|
||||
@@ -271,7 +341,7 @@
|
||||
"settings.ConfigureModule": "Configurar {}",
|
||||
"settings.Configuration": "Configuración",
|
||||
"settings.ConfigurationDescription": "Configurar LunaSea",
|
||||
"settings.ConnectedSuccessfully": "Conectado exitosamente",
|
||||
"settings.ConnectedSuccessfully": "Conectado",
|
||||
"settings.ConnectedSuccessfullyMessage": "{} está listo para usar con LunaSea!",
|
||||
"settings.ConnectionDetails": "Detalles de conexión",
|
||||
"settings.ConnectionDetailsDescription": "Detalles de conexión para {}",
|
||||
@@ -321,7 +391,7 @@
|
||||
"settings.HostValidation": "Servidor debe incluir http:// o https://",
|
||||
"settings.DisplayName": "Nombre para mostrar",
|
||||
"settings.ImageBackgroundOpacity": "Opacidad de las imágenes de fondo",
|
||||
"settings.InvalidEmail": "Email invalido",
|
||||
"settings.InvalidEmail": "Dirección de correo invalida",
|
||||
"settings.InvalidEmailMessage": "La dirección de correo es invalida",
|
||||
"settings.InvalidPasswordMessage": "La contraseña es invalida",
|
||||
"settings.Language": "Idioma",
|
||||
@@ -346,7 +416,7 @@
|
||||
"settings.QuickActions": "Acciones rápidas",
|
||||
"settings.QuickActionsDescription": "Acciones rápidas en la pantalla principal",
|
||||
"settings.RegisteredFailure": "Registro fallido",
|
||||
"settings.RegisteredSuccess": "Registrado exitosamente",
|
||||
"settings.RegisteredSuccess": "Registrado",
|
||||
"settings.RenameProfile": "Renombrar perfil",
|
||||
"settings.ResetPassword": "Restablecer contraseña",
|
||||
"settings.Resources": "Recursos",
|
||||
@@ -387,7 +457,7 @@
|
||||
"settings.Custom": "Personalizar…",
|
||||
"settings.DeleteHeaderHint1": "¿Está seguro de que desea eliminar esta cabecera?",
|
||||
"settings.DeleteCloudBackup": "Borrar copia de seguridad en la nube",
|
||||
"settings.DeleteCloudBackupSuccess": "Eliminado exitosamente",
|
||||
"settings.DeleteCloudBackupSuccess": "Eliminado",
|
||||
"settings.DismissBannersHint2": "Los banners le darán consejos y sugerencias sobre las funciones disponibles en LunaSea.",
|
||||
"settings.DeleteModule": "Eliminar módulo",
|
||||
"settings.ImageBackgroundOpacityHint1": "Configura la opacidad de las imágenes de fondo.",
|
||||
@@ -419,6 +489,199 @@
|
||||
"settings.AccountDeletedMessage": "Borrado su cuenta de LunaSea",
|
||||
"settings.Channel": "Canal",
|
||||
"settings.Build": "Construir",
|
||||
"settings.DeleteProfileDescription": "Eliminar un perfil existente",
|
||||
"settings.EmailValidation": "Dirección de correo electrónico no válida",
|
||||
"settings.EnableModule": "Habilitar {}",
|
||||
"settings.CurrentPassword": "Contraseña actual",
|
||||
"settings.DaysOne": "1 Día",
|
||||
"settings.DaysCount": "{} Días",
|
||||
"settings.DeleteAccountWarning1": "Este proceso es irreversible",
|
||||
"settings.DeletedProfile": "Perfil eliminado",
|
||||
"settings.Documentation": "Documentación",
|
||||
"settings.DocumentationDescription": "Ver la documentación",
|
||||
"settings.DownloadUpdate": "Descargar actualización",
|
||||
"settings.EmailUpdated": "Correo electrónico actualizado",
|
||||
"settings.DeleteAccount": "Eliminar cuenta",
|
||||
"settings.DeleteAccountDescription": "Eliminar permanentemente su cuenta",
|
||||
"settings.DeleteAccountHint1": "¿Estás seguro de que quieres eliminar tu cuenta de LunaSea?",
|
||||
"settings.DeleteAccountHint2": "Este proceso también eliminará todas las copias de seguridad almacenadas en la nube y los datos adjuntos a esta cuenta.",
|
||||
"settings.Version": "Versión",
|
||||
"settings.FilterCategory": "Filtrar categoría",
|
||||
"settings.FutureDays": "Días futuros",
|
||||
"settings.EnableInAppNotifications": "Activar notificaciones en la app",
|
||||
"settings.UpdateEmail": "Actualizar correo",
|
||||
"settings.SortCategory": "Ordenar categoría",
|
||||
"settings.ProfileToProfile": "\"{}\" a \"{}\"",
|
||||
"settings.Network": "Red",
|
||||
"settings.GitHubDescription": "Ver código fuente",
|
||||
"settings.NetworkDescription": "Personalizar funciones de red",
|
||||
"settings.NewPassword": "Nueva contraseña",
|
||||
"settings.StartingView": "Vista inicial",
|
||||
"settings.PasswordUpdated": "Contraseña actualizada",
|
||||
"settings.PastDays": "Días pasados",
|
||||
"settings.Platform": "Plataforma",
|
||||
"settings.RenameProfileDescription": "Renombrar un perfil existente",
|
||||
"settings.RestoreFromDevice": "Restaurar desde el dispositivo",
|
||||
"settings.RestoreFromDeviceDescription": "Restaurar la configuración",
|
||||
"settings.ViewTypeLogs": "Ver registros de {}",
|
||||
"settings.Home": "Inicio",
|
||||
"settings.UpdatePassword": "Actualizar contraseña",
|
||||
"settings.UpToDate": "Al día",
|
||||
"settings.Use24HourTime": "Usar horario de 24 horas",
|
||||
"settings.ViewRecentChanges": "Ver cambios recientes",
|
||||
"settings.WeblateDescription": "Ayuda a traducir a LunaSea",
|
||||
"settings.Website": "Página web",
|
||||
"settings.WebsiteDescription": "Visitar la página web de LunaSea",
|
||||
"settings.PleaseSignInAgain": "Por favor, inicie sesión de nuevo",
|
||||
"settings.SystemStatus": "Estado de sistema",
|
||||
"settings.RenamedProfile": "Perfil renombrado",
|
||||
"settings.SortDirection": "Ordenar Dirección",
|
||||
"sonarr.AddedOn": "Añadido",
|
||||
"sonarr.AddedTag": "Etiqueta añadida",
|
||||
"sonarr.AddSeries": "Añadir serie",
|
||||
"sonarr.AddToExclusionList": "Añadir a la lista de exclusión",
|
||||
"sonarr.Age": "Edad",
|
||||
"sonarr.AllSeasons": "Todas las temporadas",
|
||||
"sonarr.Approved": "Aprobado",
|
||||
"sonarr.Audio": "Audio",
|
||||
"sonarr.Automatic": "Automático",
|
||||
"sonarr.AutomaticSearch": "Búsqueda automática",
|
||||
"sonarr.Bitrate": "Bitrate",
|
||||
"sonarr.Client": "Cliente",
|
||||
"sonarr.DeleteFile": "Eliminar archivo",
|
||||
"sonarr.DeleteFiles": "Borrar archivos",
|
||||
"sonarr.DeleteEpisodeFile": "Eliminar archivo del episodio",
|
||||
"sonarr.Continuing": "Continuando",
|
||||
"sonarr.Destination": "Destino",
|
||||
"sonarr.EditSeries": "Editar serie",
|
||||
"sonarr.Ended": "Terminado",
|
||||
"sonarr.Episode": "Episodio",
|
||||
"sonarr.Episodes": "Episodios",
|
||||
"sonarr.EpisodesAvailable": "Episodios disponibles",
|
||||
"sonarr.EpisodeFileDeleted": "Archivo del episodio eliminado",
|
||||
"sonarr.EpisodeNumber": "Episodio {}",
|
||||
"sonarr.FilterCatalogue": "Filtrar catálogo",
|
||||
"sonarr.FPS": "FPS",
|
||||
"sonarr.FilterReleases": "Filtrar lanzamientos",
|
||||
"sonarr.History": "Historia",
|
||||
"sonarr.HistoryDescription": "Ver actividad reciente",
|
||||
"sonarr.Indexer": "Indexador",
|
||||
"sonarr.Interactive": "Interactivo",
|
||||
"sonarr.InteractiveSearch": "Búsqueda interactiva",
|
||||
"sonarr.Language": "Idioma",
|
||||
"sonarr.Languages": "Idiomas",
|
||||
"sonarr.Monitored": "Monitoreado",
|
||||
"sonarr.MonitorEpisode": "Monitorear episodio",
|
||||
"sonarr.Monitor": "Monitorear",
|
||||
"sonarr.More": "Más",
|
||||
"sonarr.Name": "Nombre",
|
||||
"sonarr.Other": "Otro",
|
||||
"sonarr.OneSeason": "1 temporada",
|
||||
"sonarr.Path": "Ruta",
|
||||
"sonarr.Quality": "Calidad",
|
||||
"sonarr.PublishedDate": "Fecha de publicación",
|
||||
"sonarr.QualityProfile": "Perfil de calidad",
|
||||
"sonarr.Queue": "Cola",
|
||||
"sonarr.Reason": "Razón",
|
||||
"sonarr.QueueDescription": "Ver contenido activo y en cola",
|
||||
"sonarr.RefreshSeries": "Actualizar serie",
|
||||
"sonarr.Releases": "Lanzamientos",
|
||||
"sonarr.RelativePath": "Ruta relativa",
|
||||
"sonarr.ReleaseGroup": "Grupo de lanzamiento",
|
||||
"sonarr.RemoveSeries": "Eliminar la serie",
|
||||
"sonarr.RemovedSeries": "Serie eliminada",
|
||||
"sonarr.RootFolder": "Carpeta raíz",
|
||||
"sonarr.Resolution": "Resolución",
|
||||
"sonarr.Search": "Buscar",
|
||||
"sonarr.Searching": "Buscando {}",
|
||||
"sonarr.SearchingForEpisode": "Buscando el episodio…",
|
||||
"sonarr.Season": "Temporada",
|
||||
"sonarr.SearchFor": "Buscar {}",
|
||||
"sonarr.Seasons": "Temporadas",
|
||||
"sonarr.SearchingForSeason": "Buscando la temporada…",
|
||||
"sonarr.SearchingDescription": "Buscando todos los episodios faltantes",
|
||||
"sonarr.Seeders": "Seeders",
|
||||
"sonarr.SeasonFolders": "Carpetas de temporada",
|
||||
"sonarr.SeasonDetails": "Detalles de la temporada",
|
||||
"sonarr.SeasonNumber": "Temporada {}",
|
||||
"sonarr.SeriesDetails": "Detalles de la serie",
|
||||
"sonarr.SeriesEnded": "Serie ha terminado",
|
||||
"sonarr.SeriesNotFound": "Serie no encontrada",
|
||||
"sonarr.SeriesPath": "Ruta de la serie",
|
||||
"sonarr.SortCatalogue": "Ordenar catálogo",
|
||||
"sonarr.Size": "Tamaño",
|
||||
"sonarr.SeriesType": "Tipo de serie",
|
||||
"sonarr.Source": "Fuente",
|
||||
"sonarr.SortReleases": "Ordenar lanzamientos",
|
||||
"sonarr.SourceTitle": "Título de la fuente",
|
||||
"sonarr.StartSearchFor": "Comenzar búsqueda por…",
|
||||
"sonarr.Tags": "Etiquetas",
|
||||
"sonarr.Unaired": "No emitido",
|
||||
"sonarr.Unmonitored": "No monitoreada",
|
||||
"sonarr.Upcoming": "Próximamente",
|
||||
"sonarr.UpdateLibrary": "Actualizar biblioteca",
|
||||
"sonarr.UseSeasonFolders": "Usar carpetas de temporada",
|
||||
"sonarr.UpdateSeries": "Actualizar serie",
|
||||
"sonarr.UpdatingLibrary": "Actualización de la biblioteca",
|
||||
"sonarr.Queued": "En cola",
|
||||
"sonarr.PendingWithMessage": "Pendiente: {}",
|
||||
"sonarr.Pending": "Pendiente",
|
||||
"sonarr.Paused": "Pausada",
|
||||
"sonarr.Files": "Archivos",
|
||||
"sonarr.Missing": "Falta",
|
||||
"sonarr.Rejected": "Rechazado",
|
||||
"sonarr.MissingEpisodes": "Episodios faltantes",
|
||||
"sonarr.RemoveFromQueue": "Eliminar de la cola",
|
||||
"sonarr.RemovedFromQueue": "Eliminada de la cola",
|
||||
"sonarr.SearchMonitored": "Búsqueda monitorizada",
|
||||
"sonarr.SearchingForMonitoredEpisodes": "Buscando episodios monitoreados…",
|
||||
"sonarr.RemoveFromDownloadClient": "Eliminar del cliente de descarga",
|
||||
"sonarr.Series": "Series",
|
||||
"sonarr.StartSearchForMissingEpisodes": "Comenzar búsqueda por episodios faltantes",
|
||||
"sonarr.Title": "Título",
|
||||
"sonarr.TimeLeft": "Tiempo restante",
|
||||
"sonarr.Video": "Vídeo",
|
||||
"sonarr.Subtitles": "Subtítulos",
|
||||
"sonarr.Torrent": "Torrente",
|
||||
"sonarr.Usenet": "Usenet",
|
||||
"sonarr.SystemStatus": "Estado de sistema",
|
||||
"sonarr.SystemStatusDescription": "Estado de sistema y Espacio de disco",
|
||||
"sonarr.AddedSeries": "Series añadidas",
|
||||
"sonarr.Download": "Descargar",
|
||||
"sonarr.Downloaded": "Descargado",
|
||||
"sonarr.DownloadedWaitingToProcess": "Descargado: Esperando para procesar",
|
||||
"sonarr.UpdatedSeries": "Serie actualizada",
|
||||
"sonarr.Monitoring": "Monitoreando",
|
||||
"sonarr.Specials": "Especiales",
|
||||
"sonarr.ManySeasons": "{} temporadas",
|
||||
"sonarr.MonitorSeries": "Monitorear serie",
|
||||
"sonarr.ManualImport": "Importación manual",
|
||||
"sonarr.SourceRelative": "Fuente relativa",
|
||||
"sonarr.All": "Todo",
|
||||
"sonarr.Channels": "Canales",
|
||||
"sonarr.Codec": "Códec",
|
||||
"sonarr.DestinationRelative": "Destino relativo",
|
||||
"sonarr.DownloadedImporting": "Descargado: Importando",
|
||||
"sonarr.DownloadedWaitingToImport": "Descargado: Esperando para importar",
|
||||
"sonarr.Downloading": "Descargando",
|
||||
"sonarr.DownloadingWithMessage": "Descargando: {}",
|
||||
"sonarr.DownloadClientUnavailable": "El cliente de descarga no está disponible",
|
||||
"sonarr.DownloadIgnored": "Descarga ignorada",
|
||||
"sonarr.DownloadWarningWithMessage": "Advertencia de descarga: {}",
|
||||
"sonarr.DownloadingRelease": "Descargando lanzamiento…",
|
||||
"sonarr.Leechers": "Leechers",
|
||||
"sonarr.LanguageProfile": "Perfil de idioma",
|
||||
"sonarr.Messages": "Mensajes",
|
||||
"sonarr.Import": "Importar",
|
||||
"sonarr.Message": "Mensaje",
|
||||
"sonarr.BackupDatabase": "Respaldar base de datos",
|
||||
"sonarr.ImportedTo": "Importado a",
|
||||
"sonarr.Runtime": "Duración",
|
||||
"sonarr.Streams": "Transmisiones",
|
||||
"sonarr.DownloadID": "ID de descarga",
|
||||
"sonarr.DownloadFailed": "Descarga fracasó",
|
||||
"sonarr.DeleteEpisodeFileHint1": "¿Seguro que quieres eliminar este archivo de episodio?",
|
||||
"sonarr.DeleteReasonManual": "El archivo fue borrado vía UI",
|
||||
"tautulli.Quality": "Calidad",
|
||||
"tautulli.None": "Ninguno",
|
||||
"tautulli.Terminate": "Terminar",
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
"lunasea.Disabled": "Désactivé",
|
||||
"lunasea.Dismiss": "Rejeter",
|
||||
"lunasea.Docs": "Documents",
|
||||
"lunasea.DownloadClient": "Client de téléchargement",
|
||||
"lunasea.Edge": "Limite",
|
||||
"lunasea.Error": "Erreur",
|
||||
"lunasea.ExternalModules": "Modules externes",
|
||||
@@ -77,6 +78,7 @@
|
||||
"lunasea.Months": "{} Mois",
|
||||
"lunasea.MonthsAgo": "Il y a {} mois",
|
||||
"lunasea.New": "Nouveau",
|
||||
"lunasea.No": "Non",
|
||||
"lunasea.NoModulesEnabled": "Aucun module activé",
|
||||
"lunasea.NotSet": "Non défini",
|
||||
"lunasea.OneDay": "1 Jour",
|
||||
@@ -126,6 +128,7 @@
|
||||
"lunasea.Website": "Site web",
|
||||
"lunasea.Years": "{} années",
|
||||
"lunasea.YearsAgo": "Il y a {} années",
|
||||
"lunasea.Yes": "Oui",
|
||||
"overseerr.Users": "Utilisateurs",
|
||||
"overseerr.UnknownUser": "Utilisateur inconnu",
|
||||
"overseerr.NoUsersFound": "Aucun utilisateur trouvé",
|
||||
@@ -171,6 +174,7 @@
|
||||
"radarr.Codec": "Codec",
|
||||
"radarr.Configure": "Configurer",
|
||||
"radarr.Copy": "Copier",
|
||||
"radarr.CopyFiles": "Copier les fichiers",
|
||||
"radarr.CopyFull": "Lien physique/Copier les fichiers",
|
||||
"radarr.CutoffUnmet": "Prérequis non atteints",
|
||||
"radarr.DateAdded": "Date ajoutée",
|
||||
@@ -207,6 +211,8 @@
|
||||
"radarr.MonitoredDescription": "Surveiller les nouvelles versions",
|
||||
"radarr.More": "Plus",
|
||||
"radarr.Move": "Déplacer",
|
||||
"radarr.MoveFiles": "Déplacer les fichiers",
|
||||
"radarr.MoveFilesDescription": "Voulez-vous déplacer les fichiers ?",
|
||||
"radarr.MoveFull": "Déplacer les fichiers",
|
||||
"radarr.Movie": "Film",
|
||||
"radarr.MovieFileDeleted": "Fichier vidéo supprimé",
|
||||
@@ -267,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} dossiers non cartographiés",
|
||||
"radarr.UnmonitorMovie": "Ne plus surveiller le film",
|
||||
"radarr.Unmonitored": "Non surveillé",
|
||||
"radarr.Unreleased": "Inédits",
|
||||
"radarr.Upcoming": "À venir",
|
||||
"radarr.UpdateLibrary": "Mettre à jour la bibliothèque",
|
||||
"radarr.UpdateMovie": "Mettre à jour le film",
|
||||
@@ -275,6 +282,30 @@
|
||||
"radarr.Wanted": "Recherché",
|
||||
"radarr.Weight": "Poids",
|
||||
"radarr.Year": "Année",
|
||||
"sabnzbd.Failed": "Échoué",
|
||||
"sabnzbd.Low": "Bas",
|
||||
"sabnzbd.Ascending": "Ascendant",
|
||||
"sabnzbd.CategoryDefault": "Catégorie par défaut",
|
||||
"sabnzbd.StandbyPC": "Mettre le PC en veille",
|
||||
"sabnzbd.Stop": "Arrêter",
|
||||
"sabnzbd.Name": "Nom",
|
||||
"sabnzbd.Paused": "En pause",
|
||||
"sabnzbd.RepairUnpack": "Réparer/Deballer",
|
||||
"sabnzbd.High": "Haut",
|
||||
"sabnzbd.None": "Aucun",
|
||||
"sabnzbd.Normal": "Normal",
|
||||
"sabnzbd.RepairUnpackDelete": "Réparer/Deballer/Supprimer",
|
||||
"sabnzbd.Size": "Taille",
|
||||
"sabnzbd.Repair": "Réparer",
|
||||
"sabnzbd.ShutdownPC": "Arrêter le PC",
|
||||
"sabnzbd.ShutdownSABnzbd": "Arrêter SABnzbd",
|
||||
"sabnzbd.Force": "Forcer",
|
||||
"sabnzbd.Completed": "Complétés",
|
||||
"sabnzbd.Descending": "Descendant",
|
||||
"sabnzbd.Duplicate": "Dupliquer",
|
||||
"sabnzbd.HibernatePC": "Mettre le PC en veille",
|
||||
"sabnzbd.All": "Tout",
|
||||
"sabnzbd.Age": "Âge",
|
||||
"search.Subcategories": "Sous-catégories",
|
||||
"search.Size": "Taille",
|
||||
"search.SentTo": "Envoyé à {}",
|
||||
@@ -498,16 +529,13 @@
|
||||
"settings.TLSCertificateValidationDescription": "Valider les certificats dans les connexions TLS",
|
||||
"settings.ViewRecentChanges": "Afficher les changements récents",
|
||||
"settings.DocumentationDescription": "Voir la documentation",
|
||||
"settings.FeedbackBoard": "Page des remarques",
|
||||
"settings.RedditDescription": "Poser des questions et obtenir de l'aide",
|
||||
"settings.TestBuilds": "Versions de tests",
|
||||
"settings.Documentation": "Documentation",
|
||||
"settings.WeblateDescription": "Aidez à traduire LunaSea",
|
||||
"settings.DiscordDescription": "Tchat et discussions",
|
||||
"settings.SystemStatus": "État du système",
|
||||
"settings.SystemStatusDescription": "Page d'état pour les services hébergés",
|
||||
"settings.TestBuildsDescription": "Installer les versions préliminaires de LunaSea",
|
||||
"settings.FeedbackBoardDescription": "Demander de nouvelles fonctionnalités",
|
||||
"settings.Website": "Site web",
|
||||
"settings.GitHubDescription": "Afficher le code source",
|
||||
"settings.WebsiteDescription": "Visitez le site web de LunaSea",
|
||||
@@ -557,6 +585,17 @@
|
||||
"settings.RenamedProfile": "Profil renommé",
|
||||
"settings.Platform": "Plateforme",
|
||||
"settings.Version": "Version",
|
||||
"settings.SentryLogging": "Journaux de Sentry",
|
||||
"settings.SentryLoggingDescription": "Soumettre toutes les erreurs et plantages à Sentry",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "Une corruption de la base de données a été détectée et votre configuration a été effacée.",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "Désolé pour ce problème, toutes les sauvegardes devraient pouvoir être restaurés même celles créés avec une base de données corrompue.",
|
||||
"settings.DatabaseCorruptionDetected": "Base de données corrompue détectée",
|
||||
"settings.OpenDrawerOnBackActionDescription": "Ouvrir le tiroir au lieu de fermer LunaSea",
|
||||
"settings.OpenDrawerOnBackAction": "Ouvrir le tiroir au dos",
|
||||
"settings.DiscordDescription": "Demandes d'améliorations et assistance",
|
||||
"settings.BootModule": "Module de démarrage",
|
||||
"settings.General": "Général",
|
||||
"settings.GeneralDescription": "Personnaliser LunsaSea",
|
||||
"sonarr.AddedOn": "Ajouté le",
|
||||
"sonarr.AddedSeries": "Série ajoutée",
|
||||
"sonarr.AddedTag": "Étiquette ajoutée",
|
||||
@@ -774,10 +813,10 @@
|
||||
"tautulli.Video": "Vidéo",
|
||||
"tautulli.Users": "Utilisateurs",
|
||||
"tautulli.User": "Utilisateur",
|
||||
"tautulli.Transcodes": "Transcodes",
|
||||
"tautulli.Transcode": "Transcode",
|
||||
"tautulli.Transcodes": "Conversions",
|
||||
"tautulli.Transcode": "Conversion",
|
||||
"tautulli.Title": "Titre",
|
||||
"tautulli.Throttled": "Throttled",
|
||||
"tautulli.Throttled": "Limité",
|
||||
"tautulli.TerminateSessionFailed": "Échec de la fin de la session",
|
||||
"tautulli.TerminateSession": "Mettre fin à la session",
|
||||
"tautulli.TerminatedSession": "Session terminée",
|
||||
@@ -836,6 +875,8 @@
|
||||
"tautulli.Audio": "Audio",
|
||||
"tautulli.ActivityDetails": "Détails de l'activité",
|
||||
"tautulli.Activity": "Activité",
|
||||
"tautulli.Speed": "Vitesse : x{}",
|
||||
"tautulli.Converting": "Conversion",
|
||||
"wake_on_lan.MagicPacketSent": "Paquet magique envoyé",
|
||||
"wake_on_lan.MagicPacketSentMessage": "Votre machine devrait se réveiller !",
|
||||
"wake_on_lan.MagicPacketFailedToSend": "Échec de l'envoi du paquet magique"
|
||||
|
||||
21
assets/localization/hr.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"dashboard.Calendar": "Kalendar",
|
||||
"dashboard.Friday": "Petak",
|
||||
"dashboard.FutureDays": "Budući dani",
|
||||
"dashboard.FutureDaysDescription": "Postavi broj dana da se ubuduće dohvate unosi iz kalendara.",
|
||||
"dashboard.MinimumOfOneDay": "Najmanje 1 dan",
|
||||
"dashboard.Modules": "Moduli",
|
||||
"dashboard.Monday": "Ponedjeljak",
|
||||
"dashboard.NoNewContent": "Bez novog sadrzaja",
|
||||
"dashboard.OneMonth": "Jedan mjesec",
|
||||
"dashboard.OneWeek": "Jedan tjedan",
|
||||
"dashboard.PastDays": "Prošli dani",
|
||||
"dashboard.PastDaysDescription": "Postavi broj dana iz prošlosti da se dohvate unosi iz kalendara.",
|
||||
"dashboard.Saturday": "Subota",
|
||||
"dashboard.Schedule": "Raspored",
|
||||
"dashboard.Sunday": "Nedjelja",
|
||||
"dashboard.Thursday": "Četvrtak",
|
||||
"dashboard.Tuesday": "Utorak",
|
||||
"dashboard.TwoWeeks": "Dva tjedna",
|
||||
"dashboard.Wednesday": "Srijeda"
|
||||
}
|
||||
@@ -34,37 +34,67 @@
|
||||
"lunasea.Cancel": "Mégsem",
|
||||
"lunasea.Candidate": "Jelölt",
|
||||
"lunasea.ChangeProfiles": "Profil váltása",
|
||||
"lunasea.Changelog": "Változási napló",
|
||||
"lunasea.CheckLogsMessage": "További részletekért ellenőrizze a naplót",
|
||||
"lunasea.Chores": "Házimunka",
|
||||
"lunasea.Clear": "Törlés",
|
||||
"lunasea.Close": "Bezárás",
|
||||
"lunasea.ComingSoon": "Hamarosan",
|
||||
"lunasea.Copied": "Másolva",
|
||||
"lunasea.CopiedContentToTheClipboard": "Tartalom a vágólapra másolva",
|
||||
"lunasea.Critical": "Kritikus",
|
||||
"lunasea.Dashboard": "Irányítópult",
|
||||
"lunasea.Days": "{} Nap",
|
||||
"lunasea.DaysAgo": "{} Napja",
|
||||
"lunasea.Debug": "Hibakeresés",
|
||||
"lunasea.Delete": "Törlés",
|
||||
"lunasea.Descending": "Csökkenő",
|
||||
"lunasea.Develop": "Fejlesztés",
|
||||
"lunasea.Disable": "Letiltás",
|
||||
"lunasea.Disabled": "Letiltva",
|
||||
"lunasea.Dismiss": "Elvetés",
|
||||
"lunasea.Docs": "Dokumentumok",
|
||||
"lunasea.DownloadClient": "Letöltő kliens",
|
||||
"lunasea.Edge": "Él",
|
||||
"lunasea.Error": "Hiba",
|
||||
"lunasea.ExternalModules": "Külső modulok",
|
||||
"lunasea.Features": "Jellemzők",
|
||||
"lunasea.Fixes": "Javítások",
|
||||
"lunasea.FullChangelog": "Teljes változásnapló",
|
||||
"lunasea.GoBack": "Vissza",
|
||||
"lunasea.GoToSettings": "Beállítások",
|
||||
"lunasea.GridView": "Rács nézet",
|
||||
"lunasea.Home": "Főképernyő",
|
||||
"lunasea.Hours": "{} Óra",
|
||||
"lunasea.HoursAgo": "{} Órája",
|
||||
"lunasea.IncorrectEncryptionKey": "Helytelen titkosítási kulcs",
|
||||
"lunasea.Internal": "Belső",
|
||||
"lunasea.InvalidFileTypeSelected": "Érvénytelen fájltípus van kiválasztva",
|
||||
"lunasea.JustNow": "Csak most",
|
||||
"lunasea.Minutes": "{} Perc",
|
||||
"lunasea.MinutesAgo": "{} Perccel ezelőtt",
|
||||
"lunasea.Module": "Modul",
|
||||
"lunasea.ModuleIsNotEnabled": "{} nincs engedélyezve",
|
||||
"lunasea.Months": "{} Hónap",
|
||||
"lunasea.MonthsAgo": "{} Hónappal ezelőtt",
|
||||
"lunasea.New": "Új",
|
||||
"lunasea.No": "Nem",
|
||||
"lunasea.NoModulesEnabled": "Nincs engedélyezett modul",
|
||||
"lunasea.NotSet": "Nincs beállítva",
|
||||
"lunasea.OneDay": "1 nap",
|
||||
"lunasea.OneDayAgo": "1 napja",
|
||||
"lunasea.OneHour": "1 óra",
|
||||
"lunasea.OneHourAgo": "1 órája",
|
||||
"lunasea.OneMinute": "1 perc",
|
||||
"lunasea.OneMinuteAgo": "1 perce",
|
||||
"lunasea.OneMonth": "1 hónap",
|
||||
"lunasea.OneMonthAgo": "1 hónapja",
|
||||
"lunasea.OneSecond": "1 másodperc",
|
||||
"lunasea.OneSecondAgo": "1 másodperce",
|
||||
"lunasea.OneYear": "1 év",
|
||||
"lunasea.OneYearAgo": "1 éve",
|
||||
"lunasea.Options": "Opciók",
|
||||
"lunasea.Other": "Egyéb",
|
||||
"lunasea.Page": "Oldal",
|
||||
"lunasea.PlatformSpecific": "Platform-specifikus",
|
||||
"lunasea.PleaseTryAgain": "Kérem próbálja újra",
|
||||
@@ -77,19 +107,28 @@
|
||||
"lunasea.Retry": "Újra",
|
||||
"lunasea.ReturnToDashboard": "Vissza az Irányítópultra",
|
||||
"lunasea.SearchTextBar": "Keresés…",
|
||||
"lunasea.Seconds": "{} másodperc",
|
||||
"lunasea.SecondsAgo": "{} másodperce",
|
||||
"lunasea.Set": "Beállítva",
|
||||
"lunasea.Settings": "Beállítások",
|
||||
"lunasea.Stable": "Stabil",
|
||||
"lunasea.StartingView": "Kezdő nézet",
|
||||
"lunasea.Today": "Ma",
|
||||
"lunasea.TransactionFailure": "Sikertelen tranzakció",
|
||||
"lunasea.TryAgain": "Próbálja újra",
|
||||
"lunasea.Tweaks": "Tweakek",
|
||||
"lunasea.UnderAMinute": "Egy perc alatt",
|
||||
"lunasea.Unknown": "Ismeretlen",
|
||||
"lunasea.UnknownDate": "Ismeretlen dátum",
|
||||
"lunasea.UnknownError": "Ismeretlen hiba",
|
||||
"lunasea.UnknownModule": "Ismeretlen modul",
|
||||
"lunasea.Update": "Frissítés",
|
||||
"lunasea.View": "Nézet",
|
||||
"lunasea.Warning": "Figyelem",
|
||||
"lunasea.Website": "Weboldal",
|
||||
"lunasea.Years": "{} Év",
|
||||
"lunasea.YearsAgo": "{} Éve",
|
||||
"lunasea.Yes": "Igen",
|
||||
"overseerr.NoRequestsFound": "Nem találtam kéréseket",
|
||||
"overseerr.Audio": "Audió",
|
||||
"overseerr.Approved": "Jóváhagyott",
|
||||
@@ -135,6 +174,7 @@
|
||||
"radarr.Codec": "Codec",
|
||||
"radarr.Configure": "Konfigurálás",
|
||||
"radarr.Copy": "Másolás",
|
||||
"radarr.CopyFiles": "Hivatkozás/fájl másolása",
|
||||
"radarr.CopyFull": "Hardlink/Fájlok másolása",
|
||||
"radarr.CutoffUnmet": "Teljesítetlen levágása",
|
||||
"radarr.DateAdded": "Hozzáadás dátuma",
|
||||
@@ -171,6 +211,8 @@
|
||||
"radarr.MonitoredDescription": "Új megjelenések monitorozása",
|
||||
"radarr.More": "Továbbiak",
|
||||
"radarr.Move": "Mozgatás",
|
||||
"radarr.MoveFiles": "Fájlok átnevezése",
|
||||
"radarr.MoveFilesDescription": "Szeretné áthelyezni a fájlokat?",
|
||||
"radarr.MoveFull": "Fájlok mozgatása",
|
||||
"radarr.Movie": "Film",
|
||||
"radarr.MovieFileDeleted": "Film fájl törölve",
|
||||
@@ -231,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} leképezés nélküli mappa",
|
||||
"radarr.UnmonitorMovie": "Film monitorozásának visszavonása",
|
||||
"radarr.Unmonitored": "Nincs monitorozva",
|
||||
"radarr.Unreleased": "Kiadatlan",
|
||||
"radarr.Upcoming": "Hamarosan",
|
||||
"radarr.UpdateLibrary": "Könyvtár frissítése",
|
||||
"radarr.UpdateMovie": "Film frissítése",
|
||||
@@ -239,6 +282,30 @@
|
||||
"radarr.Wanted": "Kívánatos",
|
||||
"radarr.Weight": "Súly",
|
||||
"radarr.Year": "Év",
|
||||
"sabnzbd.Age": "Kor",
|
||||
"sabnzbd.All": "Összes",
|
||||
"sabnzbd.Ascending": "Emelkedő",
|
||||
"sabnzbd.CategoryDefault": "Alapértelmezett kategória",
|
||||
"sabnzbd.Completed": "Befejezve",
|
||||
"sabnzbd.Descending": "Csökkenő",
|
||||
"sabnzbd.Duplicate": "Duplikálás",
|
||||
"sabnzbd.Failed": "Nem sikerült",
|
||||
"sabnzbd.HibernatePC": "PC Hibernálása",
|
||||
"sabnzbd.Low": "Alacsony",
|
||||
"sabnzbd.Force": "Kényszerítés",
|
||||
"sabnzbd.High": "Magas",
|
||||
"sabnzbd.Repair": "Javítás",
|
||||
"sabnzbd.RepairUnpack": "Javítás/kicsomagolás",
|
||||
"sabnzbd.ShutdownSABnzbd": "SABnzbd leállítása",
|
||||
"sabnzbd.Name": "Név",
|
||||
"sabnzbd.RepairUnpackDelete": "Javítás/kicsomagolás/törlés",
|
||||
"sabnzbd.StandbyPC": "PC készenlétbe",
|
||||
"sabnzbd.None": "Egyik sem",
|
||||
"sabnzbd.Size": "Méret",
|
||||
"sabnzbd.Normal": "Normál",
|
||||
"sabnzbd.Paused": "Szüneteltetve",
|
||||
"sabnzbd.ShutdownPC": "PC leállítása",
|
||||
"sabnzbd.Stop": "Megállítás",
|
||||
"search.Subcategories": "Alkategóriák",
|
||||
"search.Size": "Méret",
|
||||
"search.SentTo": "Elküldve {}",
|
||||
@@ -331,7 +398,7 @@
|
||||
"settings.HostHint4": "Ha nem használ fordított proxyt, kérjük, adja meg a portot",
|
||||
"settings.HostHint3": "Ne használjon localhostot vagy 127.0.0.1-t",
|
||||
"settings.HostHint2": "Meg kell adnia a http: // vagy a https: //",
|
||||
"settings.HostHint1": "Ez az az URL, amelyben hozzáfér a szolgáltatás webes felhasználói felületéhez",
|
||||
"settings.HostHint1": "Ez az URL amelyben hozzáfér a szolgáltatás webes felhasználói felületéhez",
|
||||
"settings.Host": "Hoszt",
|
||||
"settings.HeaderValueValidation": "Fejlécérték szükséges",
|
||||
"settings.HeaderValue": "Fejléc értéke",
|
||||
@@ -363,7 +430,7 @@
|
||||
"settings.DeleteIndexer": "Indexer törlése",
|
||||
"settings.DeleteHeaderHint1": "Biztosan törli ezt a fejlécet?",
|
||||
"settings.DeleteHeader": "Fejléc törlése",
|
||||
"settings.DeleteCloudBackupSuccess": "Sikeresen törölve",
|
||||
"settings.DeleteCloudBackupSuccess": "Törölve",
|
||||
"settings.DeleteCloudBackupFailure": "Nem sikerült törölni",
|
||||
"settings.DeleteCloudBackupDescription": "Konfigurációs fájl törlése",
|
||||
"settings.DeleteCloudBackup": "A biztonsági mentés törlése a felhőből",
|
||||
@@ -380,7 +447,7 @@
|
||||
"settings.ConnectionDetailsDescription": "A(z) {} kapcsolatának részletei",
|
||||
"settings.ConnectionDetails": "Kapcsolat részletei",
|
||||
"settings.ConnectedSuccessfullyMessage": "{} készen áll a LunaSea használatára!",
|
||||
"settings.ConnectedSuccessfully": "Csatlakozás sikeres",
|
||||
"settings.ConnectedSuccessfully": "Csatlakozva",
|
||||
"settings.ConfigurationDescription": "Konfigurálja és állítsa be a LunaSea-t",
|
||||
"settings.Configuration": "Konfiguráció",
|
||||
"settings.ConfigureModule": "{} konfigurálása",
|
||||
@@ -444,7 +511,6 @@
|
||||
"settings.DaysOne": "1 nap",
|
||||
"settings.DefaultPages": "Alapértelmezett oldalak",
|
||||
"settings.DocumentationDescription": "Tekintse meg a Dokumentációt",
|
||||
"settings.FeedbackBoardDescription": "Kérjen új funkciókat",
|
||||
"settings.ProfilesBannerLine1": "A profilok lehetővé teszik több modulpéldány hozzáadását a LunaSea-hoz. A fő navigációs fiókban válthat a profilok között.",
|
||||
"settings.PasswordHint1": "Ha a jelszava speciális karaktereket tartalmaz, fontolja meg egy alapvető hitelesítési fejléc hozzáadását felhasználónevével és jelszavával a jobb támogatás érdekében",
|
||||
"settings.PasswordUpdated": "Jelszó frissítve",
|
||||
@@ -476,13 +542,11 @@
|
||||
"settings.DefaultSortingAndFilteringDescription": "Állítsa be az alapértelmezett rendezési és szűrési módszereket",
|
||||
"settings.DeleteAccountDescription": "A Fiók végleges törlése",
|
||||
"settings.DeleteProfileDescription": "Meglévő profil törlése",
|
||||
"settings.DiscordDescription": "Csevegés és beszélgetések",
|
||||
"settings.Documentation": "Dokumentáció",
|
||||
"settings.EnableModule": "Engedélyezze {}",
|
||||
"settings.FailedToDeleteAccount": "Nem sikerült törölni a fiókot",
|
||||
"settings.FailedToUpdateEmail": "Nem sikerült frissíteni az e-mailt",
|
||||
"settings.FailedToUpdatePassword": "Nem sikerült frissíteni a jelszót",
|
||||
"settings.FeedbackBoard": "Visszajelzési tábla",
|
||||
"settings.Home": "Főképernyő",
|
||||
"settings.PastDays": "Elmúlt napokban",
|
||||
"settings.PleaseSignInAgain": "Kérem jelentkezzen be újra",
|
||||
@@ -504,6 +568,32 @@
|
||||
"settings.DefaultPagesDescription": "Állítsa be az alapértelmezett céloldalakat",
|
||||
"settings.FutureDays": "Napokban",
|
||||
"settings.GitHubDescription": "Tekintse meg a forráskódot",
|
||||
"settings.RenamedProfile": "Profil átnevezése",
|
||||
"settings.ProfileToProfile": "\"{}\"-tól \"{}\"-ig",
|
||||
"settings.SentryLogging": "Sentry naplózás",
|
||||
"settings.SentryLoggingDescription": "Hibák és összeomlások feltöltése a Sentry-be",
|
||||
"settings.EnableInAppNotifications": "Alkalmazáson belüli értesítések engedélyezése",
|
||||
"settings.BootModule": "Indító modul",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "Elnézést kérünk a kellemetlenségért, minden korábban létrehozott biztonsági másolatnak visszaállíthatónak kell lennie, még akkor is, ha korábban sérült adatbázissal exportálták.",
|
||||
"settings.DatabaseCorruptionDetected": "Korrupt adatbázis",
|
||||
"settings.OpenDrawerOnBackActionDescription": "LunaSea bezárásakor nyissa meg a fiókot",
|
||||
"settings.NoProfilesFound": "Nem található profil",
|
||||
"settings.OpenDrawerOnBackAction": "Nyissa ki a fiókot a visszalépéskor",
|
||||
"settings.AddedProfile": "Hozzáadott profil",
|
||||
"settings.DeletedProfile": "Törölt profil",
|
||||
"settings.DiscordDescription": "Kérjen funkciókat és kérjen támogatást",
|
||||
"settings.ViewTypeLogs": "Tekintse meg a {} naplókat",
|
||||
"settings.ChangedProfile": "Megváltoztatott profil",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "Adatbázissérülést észleltünk, és a konfigurációt töröltük.",
|
||||
"settings.General": "Általános",
|
||||
"settings.GeneralDescription": "LunaSea testreszabása",
|
||||
"settings.NoAdditionalProfilesAdded": "További profilok nem lettek hozzáadva",
|
||||
"settings.Build": "Buildszám",
|
||||
"settings.Channel": "Csatorna",
|
||||
"settings.DownloadUpdate": "Frissítés letöltése",
|
||||
"settings.Platform": "Platform adatai",
|
||||
"settings.UpToDate": "Naprakész",
|
||||
"settings.Version": "Verzió",
|
||||
"sonarr.ManySeasons": "{} Évad",
|
||||
"sonarr.AddReleaseToBlocklist": "Adja hozzá a kiadást a tiltólistához",
|
||||
"sonarr.CheckDownloadClient": "További részletekért ellenőrizze a letöltési klienst",
|
||||
@@ -783,6 +873,8 @@
|
||||
"tautulli.Audio": "Hang",
|
||||
"tautulli.ActivityDetails": "Tevékenység részletei",
|
||||
"tautulli.Activity": "Tevékenység",
|
||||
"tautulli.Converting": "Konvertálás",
|
||||
"tautulli.Speed": "Sebesség: {}x",
|
||||
"wake_on_lan.MagicPacketSent": "Magic Packet elküldve",
|
||||
"wake_on_lan.MagicPacketSentMessage": "A gépednek fel kellene ébrednie!",
|
||||
"wake_on_lan.MagicPacketFailedToSend": "Nem sikerült Magic Packet-et küldeni"
|
||||
|
||||
@@ -84,61 +84,101 @@
|
||||
"lunasea.Website": "Nettside",
|
||||
"radarr.AddMovie": "Legg til film",
|
||||
"radarr.AddMovieAndSearch": "Legg til + søk",
|
||||
"radarr.AddedTag": "La til emne",
|
||||
"radarr.Age": "Alder",
|
||||
"radarr.All": "Alle",
|
||||
"radarr.Alphabetical": "Alfabetisk",
|
||||
"radarr.Approved": "Godkjent",
|
||||
"radarr.Audio": "Lyd",
|
||||
"radarr.Automatic": "Automatisk",
|
||||
"radarr.AvailabilityUnknown": "Ukjent tilgjengelighet",
|
||||
"radarr.AvailableIn": "Tilgjengelig i {}",
|
||||
"radarr.AvailableToday": "Tilgjengelig i dag",
|
||||
"radarr.BackupDatabase": "Sikkerhetskopier database",
|
||||
"radarr.Channels": "Kanaler",
|
||||
"radarr.CinemaDateUnknown": "Kinodato ukjent",
|
||||
"radarr.Codec": "Kodek",
|
||||
"radarr.Configure": "Konfigurer",
|
||||
"radarr.Copy": "Kopier",
|
||||
"radarr.CutoffUnmet": "Ikke oppfylt",
|
||||
"radarr.DateAdded": "Dato lagt til",
|
||||
"radarr.DirectoryNotFound": "Mappe ble ikke funnet",
|
||||
"radarr.Discover": "Oppdag",
|
||||
"radarr.Disks": "Disker",
|
||||
"radarr.DownloadFailed": "Nedlasting mislyktes",
|
||||
"radarr.DownloadIgnored": "Nedlasting ignorert",
|
||||
"radarr.DynamicRange": "Dynamisk rekkevidde",
|
||||
"radarr.EditMovie": "Rediger fil",
|
||||
"radarr.FailedToAddTag": "Klarte ikke legge til emne",
|
||||
"radarr.FileBrowser": "Filutforsker …",
|
||||
"radarr.FilterCatalogue": "Filtrer katalog",
|
||||
"radarr.GrabbedFrom": "Hentat fra {}",
|
||||
"radarr.History": "Historikk",
|
||||
"radarr.HistoryDescription": "Vis nylig historikk",
|
||||
"radarr.Import": "Importer",
|
||||
"radarr.ImportMode": "Importmodus",
|
||||
"radarr.InCinemasIn": "På kino {}",
|
||||
"radarr.InCinemasToday": "På kino i dag",
|
||||
"radarr.Interactive": "Interaktiv",
|
||||
"radarr.Language": "Språk",
|
||||
"radarr.Languages": "Språk",
|
||||
"radarr.ManualImport": "Manuell import",
|
||||
"radarr.ManualImportDescription": "Importer filmer fra filsystemet",
|
||||
"radarr.MinimumAvailability": "Minimumstilgjengelighet",
|
||||
"radarr.Missing": "Mangler",
|
||||
"radarr.MonitorMovie": "Hold oppsyn med film",
|
||||
"radarr.Monitored": "På oppsynsliste",
|
||||
"radarr.MonitoredDescription": "Hold oppsyn med nye utgivelser",
|
||||
"radarr.More": "Mer",
|
||||
"radarr.Move": "Flytt",
|
||||
"radarr.MoveFull": "Flytt filer",
|
||||
"radarr.Movie": "Film",
|
||||
"radarr.MovieFileDeleted": "Filmfil slettet",
|
||||
"radarr.MovieFileRenamed": "Filmfilsnavn endret",
|
||||
"radarr.MovieImported": "Film importert ({})",
|
||||
"radarr.MovieNotFound": "Fant ikke filmen",
|
||||
"radarr.MoviePath": "Filmsti",
|
||||
"radarr.Movies": "Filmer",
|
||||
"radarr.NoDisksFound": "Ingen disker funnet",
|
||||
"radarr.NoFilesFound": "Ingen filer funnet",
|
||||
"radarr.NoHistoryFound": "Fant ingen historikk",
|
||||
"radarr.NoMoviesFound": "Fant ingen filmer",
|
||||
"radarr.NoResultsFound": "Resultatløst",
|
||||
"radarr.NoRootFoldersFound": "Ingen rotmapper funnet",
|
||||
"radarr.NoSubdirectoriesFound": "Ingen undermapper funnet",
|
||||
"radarr.NoSummaryIsAvailable": "Mangler sammendrag.",
|
||||
"radarr.NoTagsFound": "Ingen emner funnet",
|
||||
"radarr.Other": "Annet",
|
||||
"radarr.Quality": "Kvalitet",
|
||||
"radarr.QualityProfile": "Kvalitetsprofil",
|
||||
"radarr.Queue": "Kø",
|
||||
"radarr.QueueDescription": "Vis aktivt og køplassert innhold",
|
||||
"radarr.Quick": "Rask",
|
||||
"radarr.RefreshMovie": "Gjenoppfrisk film",
|
||||
"radarr.Rejected": "Forkastet",
|
||||
"radarr.Released": "Utgitt",
|
||||
"radarr.ReleasedToday": "Utgitt i dag",
|
||||
"radarr.Releases": "Utgivelser",
|
||||
"radarr.RemoveMovie": "Fjern film",
|
||||
"radarr.Resolution": "Oppløsning",
|
||||
"radarr.RootFolder": "Rotmappe",
|
||||
"radarr.RootFolders": "Rotmapper",
|
||||
"radarr.RunRSSSync": "Kjør RSS-synkronisering",
|
||||
"radarr.Runtime": "Spilletid",
|
||||
"radarr.ScanType": "Skannetype",
|
||||
"radarr.Search": "Søk",
|
||||
"radarr.SearchAllMissing": "Søk i alle manglende",
|
||||
"radarr.SearchFor": "Søkk etter {}",
|
||||
"radarr.Seeders": "Delere",
|
||||
"radarr.SelectLanguage": "Velg språk",
|
||||
"radarr.SelectMovie": "Velg film",
|
||||
"radarr.SelectQuality": "Velg kvalitet",
|
||||
"radarr.Size": "Størrelse",
|
||||
"radarr.SortCatalogue": "Sorter katelog",
|
||||
"radarr.StartSearchFor": "Start søk etter …",
|
||||
"radarr.StartSearchForMissingMovie": "Start søk etter manglende film",
|
||||
"radarr.Studio": "Studio",
|
||||
"radarr.Subtitles": "Undertekster",
|
||||
"radarr.SystemStatus": "Systemstatus",
|
||||
"radarr.SystemStatusDescription": "Systemstatus og diskplass",
|
||||
"radarr.Tags": "Etiketter",
|
||||
@@ -149,10 +189,35 @@
|
||||
"radarr.Upcoming": "Kommende",
|
||||
"radarr.UpdateLibrary": "Oppdater bibliotek",
|
||||
"radarr.UpdateMovie": "Oppdater film",
|
||||
"radarr.Video": "Video",
|
||||
"radarr.ViewWebGUI": "Vis vev-grensesnitt",
|
||||
"radarr.Wanted": "Ønsket",
|
||||
"radarr.Weight": "Vekt",
|
||||
"radarr.Year": "År",
|
||||
"sabnzbd.All": "Alle",
|
||||
"sabnzbd.Completed": "Fullført",
|
||||
"sabnzbd.Descending": "Synkende",
|
||||
"sabnzbd.Duplicate": "Duplikat",
|
||||
"sabnzbd.Failed": "Feilet",
|
||||
"sabnzbd.Force": "Tving",
|
||||
"sabnzbd.HibernatePC": "Dvalemodus",
|
||||
"sabnzbd.Name": "Navn",
|
||||
"sabnzbd.RepairUnpack": "Reparer/Pakk ut",
|
||||
"sabnzbd.RepairUnpackDelete": "Reparer/Pakk ut/Slett",
|
||||
"sabnzbd.Size": "Størrelse",
|
||||
"sabnzbd.ShutdownPC": "Skru av PC",
|
||||
"sabnzbd.StandbyPC": "Ventemodus",
|
||||
"sabnzbd.Stop": "Stopp",
|
||||
"sabnzbd.Age": "Alder",
|
||||
"sabnzbd.Ascending": "Stigende",
|
||||
"sabnzbd.CategoryDefault": "Standardkategori",
|
||||
"sabnzbd.High": "Høy",
|
||||
"sabnzbd.Low": "Lav",
|
||||
"sabnzbd.None": "Ingen",
|
||||
"sabnzbd.Paused": "Pauset",
|
||||
"sabnzbd.Normal": "Normal",
|
||||
"sabnzbd.Repair": "Reparer",
|
||||
"sabnzbd.ShutdownSABnzbd": "Skru av SABnzbd",
|
||||
"search.NoCategoriesFound": "Fant ingen kategorier",
|
||||
"search.Subcategories": "Underkategorier",
|
||||
"search.Search": "Søk",
|
||||
@@ -275,7 +340,7 @@
|
||||
"settings.HeaderKey": "Hode-nøkkel",
|
||||
"settings.HeaderKeyValidation": "Hodenøkkel påkrevd",
|
||||
"settings.Email": "E-post",
|
||||
"tautulli.ETA": "Estimert tid til ankomst",
|
||||
"tautulli.ETA": "Estimert tid igjen",
|
||||
"tautulli.Throttled": "Strupet",
|
||||
"tautulli.TerminationAttachMessage": "Du kan alternativt legge ved en avsluttingsmelding nedenfor.",
|
||||
"tautulli.Location": "Sted",
|
||||
|
||||
@@ -164,18 +164,18 @@
|
||||
"radarr.Language": "Idioma",
|
||||
"radarr.Languages": "Idiomas",
|
||||
"radarr.ManualImport": "Importação manual",
|
||||
"radarr.ManualImportDescription": "Importar filmes do sistema de arquivos",
|
||||
"radarr.ManualImportDescription": "Importar filmes do sistema de ficheiros",
|
||||
"radarr.MinimumAvailability": "Disponibilidade mínima",
|
||||
"radarr.More": "Mais",
|
||||
"radarr.Movie": "Filme",
|
||||
"radarr.MovieFileDeleted": "Arquivo do filme excluído",
|
||||
"radarr.MovieFileRenamed": "Arquivo do filme renomeado",
|
||||
"radarr.MovieFileDeleted": "Ficheiro do filme apagado",
|
||||
"radarr.MovieFileRenamed": "Ficheiro do filme renomeado",
|
||||
"radarr.MovieImported": "Filme importado ({})",
|
||||
"radarr.MovieNotFound": "Filme não encontrado",
|
||||
"radarr.MoviePath": "Caminho do filme",
|
||||
"radarr.Movies": "Filmes",
|
||||
"radarr.NoDisksFound": "Nenhum disco encontrado",
|
||||
"radarr.NoFilesFound": "Nenhum arquivo encontrado",
|
||||
"radarr.NoFilesFound": "Nenhum ficheiro encontrado",
|
||||
"radarr.NoHistoryFound": "Nenhum histórico encontrado",
|
||||
"radarr.NoMoviesFound": "Nenhum filme encontrado",
|
||||
"radarr.NoResultsFound": "Nenhum resultado encontrado",
|
||||
@@ -417,11 +417,8 @@
|
||||
"settings.DefaultOptions": "Opções padrão",
|
||||
"settings.DefaultOptionsDescription": "Definir opções de classificação, filtragem e visualização",
|
||||
"settings.DeleteProfileDescription": "Excluir um perfil existente",
|
||||
"settings.DiscordDescription": "Bate-papo e discussões",
|
||||
"settings.EmailUpdated": "E-mail atualizado",
|
||||
"settings.FailedToUpdatePassword": "Falha ao atualizar a senha",
|
||||
"settings.FeedbackBoard": "Painel de comentários",
|
||||
"settings.FeedbackBoardDescription": "Solicitar novos recursos",
|
||||
"settings.FilterCategory": "Categoria de filtro",
|
||||
"settings.FutureDays": "Dias futuros",
|
||||
"settings.GitHubDescription": "Veja o código fonte",
|
||||
@@ -450,11 +447,41 @@
|
||||
"settings.Documentation": "Documentação",
|
||||
"settings.AccountDeletedMessage": "Deletar sua Conta LunaSea",
|
||||
"settings.ConfigurationDescription": "Ajustar e Configurar LunaSea",
|
||||
"settings.SortCategory": "Classificar categoria",
|
||||
"settings.SortDirection": "Direção de classificação",
|
||||
"settings.TLSCertificateValidation": "Validação do certificado TLS",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "Banco de dados corrompido foi detectado e sua configurações foram limpas.",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "Desculpe a inconveniência, todos os backups criados anteriormente devem ser restaurados mesmo quando exportados anteriormente com um banco de dados corrompido.",
|
||||
"settings.DatabaseCorruptionDetected": "Detectado banco de dados corrompido",
|
||||
"settings.AddedProfile": "Perfil Adicionado",
|
||||
"settings.ChangedProfile": "Perfil Alterado",
|
||||
"settings.DeletedProfile": "Perfil Excluído",
|
||||
"settings.NoAdditionalProfilesAdded": "Nenhum perfil adicional foi adicionado",
|
||||
"settings.NoProfilesFound": "Nenhum perfil encontrado",
|
||||
"settings.Platform": "Plataforma",
|
||||
"settings.ProfileToProfile": "\"{}\" para \"{}\"",
|
||||
"settings.RenamedProfile": "Perfil Renomeado",
|
||||
"settings.SystemStatusDescription": "Página de status para serviços hospedados",
|
||||
"settings.Version": "Versão",
|
||||
"settings.UpToDate": "Atualizado",
|
||||
"settings.WeblateDescription": "Ajude a localizar o LunaSea",
|
||||
"settings.ViewRecentChanges": "Ver alterações recentes",
|
||||
"settings.Website": "Site",
|
||||
"settings.WebsiteDescription": "Visitar o site da LunaSea",
|
||||
"settings.ViewTypeLogs": "Ver {} registros",
|
||||
"settings.Build": "Build",
|
||||
"settings.Channel": "Canal",
|
||||
"settings.DownloadUpdate": "Baixar Atualização",
|
||||
"settings.EnableInAppNotifications": "Ativar notificações no aplicativo",
|
||||
"settings.SystemStatus": "Status do Sistema",
|
||||
"settings.TLSCertificateValidationDescription": "Validar certificados em conexões TLS",
|
||||
"settings.UpdateEmail": "Atualizar e-mail",
|
||||
"settings.UpdatePassword": "Atualizar senha",
|
||||
"sonarr.AddedTag": "Tag Adicionada",
|
||||
"sonarr.AddSeries": "Adicionar Série",
|
||||
"sonarr.DeleteFile": "Deletar Arquivo",
|
||||
"sonarr.EpisodeFileDeleted": "Arquivo do Episódio Deletado",
|
||||
"sonarr.EpisodeFileRenamed": "Arquivo do Episódio Renomeado",
|
||||
"sonarr.DeleteFile": "Apagar Ficheiro",
|
||||
"sonarr.EpisodeFileDeleted": "Ficheiro do Episódio Apagado",
|
||||
"sonarr.EpisodeFileRenamed": "Ficheiro do Episódio Renomeado",
|
||||
"sonarr.EpisodeNumber": "Episódio {}",
|
||||
"sonarr.FailedToAddSeries": "Falhou ao Adicionar Séries",
|
||||
"sonarr.FailedToAddTag": "Falhou ao adicionar Tag",
|
||||
@@ -475,18 +502,18 @@
|
||||
"sonarr.Monitoring": "Monitorando",
|
||||
"sonarr.AllSeasons": "Todas as Temporadas",
|
||||
"sonarr.AutomaticSearch": "Busca Automática",
|
||||
"sonarr.DeleteEpisodeFile": "Deletar Arquivo do Episódio",
|
||||
"sonarr.DeleteEpisodeFile": "Deletar Ficheiro do Episódio",
|
||||
"sonarr.Language": "Língua",
|
||||
"sonarr.Audio": "Áudio",
|
||||
"sonarr.DeleteEpisodeFileHint1": "Tem certeza que deseja apagar o arquivo desse episódio?",
|
||||
"sonarr.DeleteFiles": "Deletar Arquivos",
|
||||
"sonarr.DeleteEpisodeFileHint1": "Tem certeza que deseja apagar o ficheiro desse episódio?",
|
||||
"sonarr.DeleteFiles": "Apagar Ficheiros",
|
||||
"sonarr.Episode": "Episódio",
|
||||
"sonarr.EpisodesAvailable": "Episódios Disponíveis",
|
||||
"sonarr.EpisodeImported": "Episódio Importado ({})",
|
||||
"sonarr.FilterCatalogue": "Filtrar Catálogo",
|
||||
"sonarr.FilterReleases": "Filtrar Lançamentos",
|
||||
"sonarr.Languages": "Línguas",
|
||||
"sonarr.ManualImportDescription": "Importar Conteúdo do Sistema de Arquivos",
|
||||
"sonarr.ManualImportDescription": "Importar Conteúdo do Sistema de Ficheiros",
|
||||
"sonarr.Monitored": "Monitorado",
|
||||
"sonarr.MissingEpisodesHint1": "Tem certeza que deseja procurar por todos os episódios faltantes?",
|
||||
"sonarr.MonitorEpisode": "Monitorar Episódio",
|
||||
@@ -506,12 +533,12 @@
|
||||
"sonarr.Channels": "Canais",
|
||||
"sonarr.Client": "Cliente",
|
||||
"sonarr.Continuing": "Continuando",
|
||||
"sonarr.DeleteReasonUpgrade": "O arquivo foi excluído para importar uma atualização",
|
||||
"sonarr.DeleteReasonUpgrade": "O ficheiro foi apagado para importar uma atualização",
|
||||
"sonarr.DestinationRelative": "Destino relativo",
|
||||
"sonarr.Download": "Baixar",
|
||||
"sonarr.BackupDatabase": "Backup do banco de dados",
|
||||
"sonarr.CheckDownloadClient": "Verifique o cliente de download para obter mais detalhes",
|
||||
"sonarr.DeleteReasonMissingFromDisk": "O Sonarr não conseguiu encontrar o arquivo no disco, então ele foi removido",
|
||||
"sonarr.DeleteReasonMissingFromDisk": "O Sonarr não conseguiu encontrar o ficheiro no disco, então ele foi removido",
|
||||
"sonarr.EditSeries": "Editar séries",
|
||||
"sonarr.DownloadingWithMessage": "Baixando: {}",
|
||||
"sonarr.Downloading": "Baixando",
|
||||
@@ -579,5 +606,15 @@
|
||||
"tautulli.Users": "Utilizadores",
|
||||
"tautulli.Video": "Vídeo",
|
||||
"tautulli.ViewWebGUI": "Ver WEB GUI",
|
||||
"tautulli.Year": "Ano"
|
||||
"tautulli.Year": "Ano",
|
||||
"tautulli.TerminationAttachMessage": "Opcionalmente, você pode anexar uma mensagem de rescisão abaixo.",
|
||||
"tautulli.TerminationConfirmMessage": "Deseja encerrar esta sessão?",
|
||||
"tautulli.TerminationMessage": "Mensagem de Rescisão",
|
||||
"tautulli.Transcode": "Transcodificar",
|
||||
"tautulli.TerminateSession": "Encerrar Sessão",
|
||||
"tautulli.TerminatedSession": "Sessão Encerrada",
|
||||
"tautulli.TerminateSessionFailed": "Falha ao encerrar a sessão",
|
||||
"wake_on_lan.MagicPacketSent": "Pacote mágico enviado",
|
||||
"wake_on_lan.MagicPacketSentMessage": "Sua máquina deve estar acordando!",
|
||||
"wake_on_lan.MagicPacketFailedToSend": "Falha ao enviar pacote mágico"
|
||||
}
|
||||
17
assets/localization/ro.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"dashboard.Modules": "Module",
|
||||
"dashboard.Calendar": "Calendar",
|
||||
"dashboard.Friday": "Vineri",
|
||||
"dashboard.OneMonth": "O lună",
|
||||
"dashboard.OneWeek": "O săptămână",
|
||||
"dashboard.PastDays": "Zile trecute",
|
||||
"dashboard.Saturday": "Sâmbătă",
|
||||
"dashboard.Schedule": "Program",
|
||||
"dashboard.Sunday": "Duminică",
|
||||
"dashboard.Thursday": "Joi",
|
||||
"dashboard.Tuesday": "Marți",
|
||||
"dashboard.TwoWeeks": "Două săptămâni",
|
||||
"dashboard.Wednesday": "Miercuri",
|
||||
"dashboard.FutureDays": "Zile în viitor",
|
||||
"dashboard.Monday": "Luni"
|
||||
}
|
||||
@@ -153,6 +153,37 @@
|
||||
"settings.AccountHelp": "Аккаунт LunaSea",
|
||||
"settings.AccountDescription": "Ваш аккаунт в LunaSea",
|
||||
"settings.Account": "Аккаунт",
|
||||
"sonarr.AddedOn": "Добавлено на",
|
||||
"sonarr.AddedSeries": "Добавленны серии",
|
||||
"sonarr.AddedTag": "Добавить Тег",
|
||||
"sonarr.AddSeries": "Добавить серии",
|
||||
"sonarr.Audio": "Аудио",
|
||||
"sonarr.Automatic": "Автоматически",
|
||||
"sonarr.Channels": "Каналы",
|
||||
"sonarr.Codec": "Кодек",
|
||||
"sonarr.Client": "Клиент",
|
||||
"sonarr.DeleteReasonManual": "Файл был удален с помощью пользовательского интерфейса",
|
||||
"sonarr.BackingUpDatabase": "Резервное копирование базы данных{}",
|
||||
"sonarr.Approved": "Одобрено",
|
||||
"sonarr.AutomaticSearch": "Автоматический поиск",
|
||||
"sonarr.BackingUpDatabaseDescription": "Резервное копирование базы данных в фоновом режиме",
|
||||
"sonarr.Bitrate": "Битрейт",
|
||||
"sonarr.Continuing": "Продолжение",
|
||||
"sonarr.Age": "Возраст",
|
||||
"sonarr.All": "Все",
|
||||
"sonarr.AllSeasons": "Все Сезоны",
|
||||
"sonarr.DeleteReasonMissingFromDisk": "Sonarr не смог найти файл на диске, поэтому он был удален",
|
||||
"sonarr.AddReleaseToBlocklist": "Добавить Релиз в Блок-Лист",
|
||||
"sonarr.DeleteReasonUpgrade": "Файл был удален для импорта обновления",
|
||||
"sonarr.BackupDatabase": "Резервная база данных",
|
||||
"sonarr.CheckDownloadClient": "Проверьте клиент загрузки для получения более подробной информации",
|
||||
"sonarr.BitDepth": "Битовая глубина",
|
||||
"sonarr.DeleteEpisodeFileHint1": "Вы уверены, что хотите удалить этот файл?",
|
||||
"sonarr.DeleteFiles": "Удалить файлы",
|
||||
"sonarr.DeleteEpisodeFile": "Удалить файл эпизода",
|
||||
"sonarr.DeleteFile": "Удалить файл",
|
||||
"sonarr.Destination": "Назначение",
|
||||
"sonarr.DestinationRelative": "Относительное назначение",
|
||||
"tautulli.Year": "Год",
|
||||
"tautulli.Video": "Видео",
|
||||
"tautulli.Users": "Пользователи",
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
"lunasea.Disabled": "Devre Dışı",
|
||||
"lunasea.Dismiss": "Kapat",
|
||||
"lunasea.Docs": "Belgeler",
|
||||
"lunasea.DownloadClient": "İstemciyi İndir",
|
||||
"lunasea.Edge": "Kenar",
|
||||
"lunasea.Error": "Hata",
|
||||
"lunasea.ExternalModules": "Harici Modüller",
|
||||
@@ -77,6 +78,7 @@
|
||||
"lunasea.Months": "{} Ay",
|
||||
"lunasea.MonthsAgo": "{} Ay Önce",
|
||||
"lunasea.New": "Yeni",
|
||||
"lunasea.No": "Hayır",
|
||||
"lunasea.NoModulesEnabled": "Etkin Modül Yok",
|
||||
"lunasea.NotSet": "Ayarlanmadı",
|
||||
"lunasea.OneDay": "1 Gün",
|
||||
@@ -126,6 +128,7 @@
|
||||
"lunasea.Website": "Web Sitesi",
|
||||
"lunasea.Years": "{} Yıl",
|
||||
"lunasea.YearsAgo": "{} Yıl Önce",
|
||||
"lunasea.Yes": "Evet",
|
||||
"overseerr.Users": "Kullanıcılar",
|
||||
"overseerr.UnknownUser": "Bilinmeyen Kullanıcı",
|
||||
"overseerr.NoUsersFound": "Kullanıcı Bulunamadı",
|
||||
@@ -171,6 +174,7 @@
|
||||
"radarr.Codec": "Kodek",
|
||||
"radarr.Configure": "Yapılandır",
|
||||
"radarr.Copy": "Kopyala",
|
||||
"radarr.CopyFiles": "Dosyaları Kopyala/Sabit Bağlantı Oluştur",
|
||||
"radarr.CopyFull": "Dosyaları Kopyala/Sabit Bağlantı Oluştur",
|
||||
"radarr.CutoffUnmet": "Karşılanmayanı Kes",
|
||||
"radarr.DateAdded": "Eklenme Tarihi",
|
||||
@@ -207,6 +211,8 @@
|
||||
"radarr.MonitoredDescription": "Yeni yayınlar için takip edin",
|
||||
"radarr.More": "Daha Fazla",
|
||||
"radarr.Move": "Taşı",
|
||||
"radarr.MoveFiles": "Dosyaları Taşı",
|
||||
"radarr.MoveFilesDescription": "Dosyaları taşımak istiyor musunuz?",
|
||||
"radarr.MoveFull": "Dosyaları Taşı",
|
||||
"radarr.Movie": "Film",
|
||||
"radarr.MovieFileDeleted": "Film Dosyası Silindi",
|
||||
@@ -267,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} Eşlenmeyen Klasörler",
|
||||
"radarr.UnmonitorMovie": "Filmi Takip Etmeyi Bırak",
|
||||
"radarr.Unmonitored": "Takip Edilmeyen",
|
||||
"radarr.Unreleased": "Yayınlanmadı",
|
||||
"radarr.Upcoming": "Yakında",
|
||||
"radarr.UpdateLibrary": "Kütüphaneyi Güncelle",
|
||||
"radarr.UpdateMovie": "Filmi Güncelle",
|
||||
@@ -275,6 +282,30 @@
|
||||
"radarr.Wanted": "İstenen",
|
||||
"radarr.Weight": "Ağırlık",
|
||||
"radarr.Year": "Yıl",
|
||||
"sabnzbd.Age": "Yaş",
|
||||
"sabnzbd.Duplicate": "Yinelenen",
|
||||
"sabnzbd.Failed": "Başarısız",
|
||||
"sabnzbd.Force": "Zorla",
|
||||
"sabnzbd.Repair": "Onar",
|
||||
"sabnzbd.RepairUnpack": "Onar/Ayıkla",
|
||||
"sabnzbd.RepairUnpackDelete": "Onar/Ayıkla/Sil",
|
||||
"sabnzbd.Size": "Boyut",
|
||||
"sabnzbd.ShutdownPC": "Bilgisayarı Kapat",
|
||||
"sabnzbd.ShutdownSABnzbd": "SABnzbd'yi Kapat",
|
||||
"sabnzbd.StandbyPC": "Bilgisayarı Beklemeye Al",
|
||||
"sabnzbd.Stop": "Durdur",
|
||||
"sabnzbd.CategoryDefault": "Kategori Öntanımlı Değeri",
|
||||
"sabnzbd.Completed": "Tamamlandı",
|
||||
"sabnzbd.Descending": "Azalan",
|
||||
"sabnzbd.High": "Yüksek",
|
||||
"sabnzbd.Low": "Düşük",
|
||||
"sabnzbd.Paused": "Duraklatıldı",
|
||||
"sabnzbd.All": "Tümü",
|
||||
"sabnzbd.Ascending": "Artan",
|
||||
"sabnzbd.HibernatePC": "Bilgisayarı Hazırda Beklet",
|
||||
"sabnzbd.None": "Yok",
|
||||
"sabnzbd.Name": "Ad",
|
||||
"sabnzbd.Normal": "Normal",
|
||||
"search.Subcategories": "Alt Kategoriler",
|
||||
"search.Size": "Boyut",
|
||||
"search.SentTo": "{}'e gönderildi",
|
||||
@@ -506,11 +537,9 @@
|
||||
"settings.BackupToDevice": "Aygıta Yedekle",
|
||||
"settings.BackupToDeviceDescription": "Yapılandırma Verilerini Yedekle",
|
||||
"settings.CalendarSettings": "Takvim Ayarları",
|
||||
"settings.DiscordDescription": "Sohbet & Tartışma",
|
||||
"settings.DaysOne": "1 Gün",
|
||||
"settings.DaysCount": "{} Gün",
|
||||
"settings.EmailValidation": "Geçersiz E-posta Adresi",
|
||||
"settings.FeedbackBoard": "Geri Bildirim Panosu",
|
||||
"settings.FailedToUpdatePassword": "Parola Güncellenemedi",
|
||||
"settings.FailedToUpdateEmail": "E-posta Güncellenemedi",
|
||||
"settings.GitHubDescription": "Kaynak Kodu Görüntüleyin",
|
||||
@@ -522,7 +551,6 @@
|
||||
"settings.Use24HourTimeDescription": "Zaman Damgalarını 24 Saat Tarzında Göster",
|
||||
"settings.WeblateDescription": "LunaSea'yi Yerelleştirmeye Yardım Edin",
|
||||
"settings.Website": "Web Sitesi",
|
||||
"settings.FeedbackBoardDescription": "Yeni Özellikler İsteyin",
|
||||
"settings.RestoreFromDevice": "Aygıttan Geri Yükle",
|
||||
"settings.FutureDays": "Gelecek Günler",
|
||||
"settings.QuickActionsBannerLine2": "Bir seferde sınırlı sayıda hızlı eylem ayarlanabilir ve başlatıcınızın destekleyebileceğinden fazlasını etkinleştirmenin bir etkisi olmayacaktır.",
|
||||
@@ -555,6 +583,17 @@
|
||||
"settings.RenamedProfile": "Profil Yeniden Adlandırıldı",
|
||||
"settings.DeletedProfile": "Profil Silindi",
|
||||
"settings.NoProfilesFound": "Profil Bulunamadı",
|
||||
"settings.SentryLogging": "Sentry Günlüğü",
|
||||
"settings.SentryLoggingDescription": "Hataları ve Çökmeleri Sentry'ye Yükleyin",
|
||||
"settings.DatabaseCorruptionDetected": "Veri Tabanı Bozulması Tespit Edildi",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "Veri tabanı bozulması tespit edildi ve yapılandırmanız temizlendi.",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "Rahatsızlık için özür dileriz, daha önce oluşturulan tüm yedeklemeler, daha önce bozuk bir veri tabanı ile dışa aktarılmış olsa bile geri yüklenebilir olmalıdır.",
|
||||
"settings.DiscordDescription": "Özellik İsteyin & Destek Alın",
|
||||
"settings.BootModule": "Önyükleme Modülü",
|
||||
"settings.GeneralDescription": "LunaSea'yi Özelleştirin",
|
||||
"settings.General": "Genel",
|
||||
"settings.OpenDrawerOnBackAction": "Geri Eyleminde Çekmeceyi Aç",
|
||||
"settings.OpenDrawerOnBackActionDescription": "LunaSea'yi kapatmak yerine çekmeceyi açın",
|
||||
"sonarr.AddedSeries": "Eklenen Diziler",
|
||||
"sonarr.Age": "Yıl",
|
||||
"sonarr.All": "Her Şey",
|
||||
@@ -589,7 +628,7 @@
|
||||
"sonarr.Monitor": "Takip Et",
|
||||
"sonarr.MonitorEpisode": "Bölümü Takip Et",
|
||||
"sonarr.MonitorSeries": "Diziyi Takip Et",
|
||||
"sonarr.Name": "İsim",
|
||||
"sonarr.Name": "Ad",
|
||||
"sonarr.NoEpisodesFound": "Bölüm Bulunamadı",
|
||||
"sonarr.NoSeasonsFound": "Sezonlar Bulunamadı",
|
||||
"sonarr.NoSeriesFound": "Diziler Bulunamadı",
|
||||
@@ -834,6 +873,8 @@
|
||||
"tautulli.BackingUpConfiguration": "Yapılandırma Yedekleniyor…",
|
||||
"tautulli.Audio": "Ses",
|
||||
"tautulli.ActivityDetails": "Etkinlik Ayrıntıları",
|
||||
"tautulli.Converting": "Dönüştürülüyor",
|
||||
"tautulli.Speed": "Hız: {}x",
|
||||
"wake_on_lan.MagicPacketSent": "Sihirli Paket Gönderildi",
|
||||
"wake_on_lan.MagicPacketSentMessage": "Makineniz uyanıyor olmalı!",
|
||||
"wake_on_lan.MagicPacketFailedToSend": "Sihirli Paket Gönderilemedi"
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
"lunasea.Disabled": "不可用",
|
||||
"lunasea.Dismiss": "解散",
|
||||
"lunasea.Docs": "文档",
|
||||
"lunasea.DownloadClient": "下载客户端",
|
||||
"lunasea.Edge": "边缘",
|
||||
"lunasea.Error": "错误",
|
||||
"lunasea.ExternalModules": "外部模块",
|
||||
@@ -77,6 +78,7 @@
|
||||
"lunasea.Months": "{} 个月",
|
||||
"lunasea.MonthsAgo": "{} 几个月前",
|
||||
"lunasea.New": "新的",
|
||||
"lunasea.No": "否",
|
||||
"lunasea.NoModulesEnabled": "未启用模块",
|
||||
"lunasea.NotSet": "未设置",
|
||||
"lunasea.OneDay": "1天",
|
||||
@@ -126,6 +128,7 @@
|
||||
"lunasea.Website": "网站",
|
||||
"lunasea.Years": "{} 年",
|
||||
"lunasea.YearsAgo": "{} 年前",
|
||||
"lunasea.Yes": "是",
|
||||
"overseerr.NoRequests": "没有请求",
|
||||
"overseerr.OneRequest": "1个请求",
|
||||
"overseerr.SomeRequests": "{} 请求",
|
||||
@@ -171,6 +174,7 @@
|
||||
"radarr.Codec": "编解码器",
|
||||
"radarr.Configure": "配置",
|
||||
"radarr.Copy": "复制",
|
||||
"radarr.CopyFiles": "硬链接/复制文件",
|
||||
"radarr.CopyFull": "硬链接/复制文件",
|
||||
"radarr.CutoffUnmet": "截止未满足",
|
||||
"radarr.DateAdded": "添加日期",
|
||||
@@ -207,6 +211,8 @@
|
||||
"radarr.MonitoredDescription": "监控新版本",
|
||||
"radarr.More": "更多",
|
||||
"radarr.Move": "移动",
|
||||
"radarr.MoveFiles": "移动文件",
|
||||
"radarr.MoveFilesDescription": "确定要移动这些文件吗?",
|
||||
"radarr.MoveFull": "移动文件",
|
||||
"radarr.Movie": "电影",
|
||||
"radarr.MovieFileDeleted": "电影文件已删除",
|
||||
@@ -267,6 +273,7 @@
|
||||
"radarr.UnmappedFolders": "{} 未映射的文件夹",
|
||||
"radarr.UnmonitorMovie": "监控电影",
|
||||
"radarr.Unmonitored": "不受监控",
|
||||
"radarr.Unreleased": "未发布",
|
||||
"radarr.Upcoming": "即将到来",
|
||||
"radarr.UpdateLibrary": "更新库",
|
||||
"radarr.UpdateMovie": "更新电影",
|
||||
@@ -275,6 +282,30 @@
|
||||
"radarr.Wanted": "需要",
|
||||
"radarr.Weight": "轻重",
|
||||
"radarr.Year": "年",
|
||||
"sabnzbd.CategoryDefault": "默认类别",
|
||||
"sabnzbd.Completed": "完成",
|
||||
"sabnzbd.Ascending": "升序",
|
||||
"sabnzbd.Paused": "暂停",
|
||||
"sabnzbd.Normal": "一般",
|
||||
"sabnzbd.Name": "名称",
|
||||
"sabnzbd.None": "没有",
|
||||
"sabnzbd.RepairUnpack": "纠正/拆包",
|
||||
"sabnzbd.All": "全部",
|
||||
"sabnzbd.Descending": "降序",
|
||||
"sabnzbd.Duplicate": "复制",
|
||||
"sabnzbd.Failed": "失败",
|
||||
"sabnzbd.Age": "时代",
|
||||
"sabnzbd.Force": "强制",
|
||||
"sabnzbd.HibernatePC": "电脑休眠",
|
||||
"sabnzbd.High": "高",
|
||||
"sabnzbd.Low": "低",
|
||||
"sabnzbd.Repair": "纠正",
|
||||
"sabnzbd.RepairUnpackDelete": "纠正/拆包/删除",
|
||||
"sabnzbd.Size": "大小",
|
||||
"sabnzbd.ShutdownPC": "关机",
|
||||
"sabnzbd.ShutdownSABnzbd": "关闭SABnzbd",
|
||||
"sabnzbd.StandbyPC": "备用PC",
|
||||
"sabnzbd.Stop": "停止",
|
||||
"search.AllSubcategories": "所有子类别",
|
||||
"search.Alphabetical": "字母顺序",
|
||||
"search.Categories": "类别",
|
||||
@@ -498,16 +529,13 @@
|
||||
"settings.TLSCertificateValidation": "TLS 证书验证",
|
||||
"settings.ViewRecentChanges": "查看最近的更改",
|
||||
"settings.DocumentationDescription": "查看文档",
|
||||
"settings.FeedbackBoard": "反馈板",
|
||||
"settings.GitHubDescription": "查看源代码",
|
||||
"settings.TestBuilds": "测试构建",
|
||||
"settings.TestBuildsDescription": "安装 LunaSea 的预发布版本",
|
||||
"settings.Website": "网站",
|
||||
"settings.WebsiteDescription": "访问 LunaSea 的网站",
|
||||
"settings.FeedbackBoardDescription": "请求新功能",
|
||||
"settings.RedditDescription": "提出问题并获得支持",
|
||||
"settings.WeblateDescription": "帮助 LunaSea 本地化",
|
||||
"settings.DiscordDescription": "聊天和讨论",
|
||||
"settings.Documentation": "文档",
|
||||
"settings.SystemStatus": "系统状况",
|
||||
"settings.SystemStatusDescription": "托管服务的状态页面",
|
||||
@@ -557,8 +585,19 @@
|
||||
"settings.ProfileToProfile": "\"{}\" 至 \"{}\"",
|
||||
"settings.RenamedProfile": "重命名配置文件",
|
||||
"settings.ViewTypeLogs": "查看 {} 日志",
|
||||
"settings.DatabaseCorruptionDetected": "检测到数据库损坏",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine1": "已检测到数据库损坏,并且已清除您的配置。",
|
||||
"settings.DatabaseCorruptionDetectedMessageLine2": "很抱歉给您带来不便,即使以前导出的数据库已损坏,所有以前创建的备份都应该是可恢复的。",
|
||||
"settings.SentryLogging": "哨兵日志记录",
|
||||
"settings.SentryLoggingDescription": "上传错误崩溃到Sentry",
|
||||
"settings.DiscordDescription": "请求功能获得支持",
|
||||
"settings.General": "通用",
|
||||
"settings.GeneralDescription": "自定义LunaSea",
|
||||
"settings.BootModule": "启动模块",
|
||||
"settings.OpenDrawerOnBackAction": "从背面打开抽屉",
|
||||
"settings.OpenDrawerOnBackActionDescription": "打开抽屉而不关闭LunaSea",
|
||||
"sonarr.AddSeries": "添加系列",
|
||||
"sonarr.AddedOn": "添加于",
|
||||
"sonarr.AddedOn": "添加到",
|
||||
"sonarr.Age": "年龄",
|
||||
"sonarr.All": "全部",
|
||||
"sonarr.AllSeasons": "所有季",
|
||||
@@ -734,7 +773,7 @@
|
||||
"sonarr.UpdatedSeries": "更新系列",
|
||||
"sonarr.Languages": "语言文字",
|
||||
"sonarr.NoReleasesFound": "未找到任何新版本",
|
||||
"sonarr.AddedSeries": "添加系列",
|
||||
"sonarr.AddedSeries": "新增系列",
|
||||
"sonarr.AddedTag": "添加标签",
|
||||
"sonarr.AddReleaseToBlocklist": "添加发布到阻止列表",
|
||||
"sonarr.DownloadWarning": "下载警告",
|
||||
@@ -836,6 +875,8 @@
|
||||
"tautulli.NoActiveStreams": "没有活动流",
|
||||
"tautulli.Season": "季 {}",
|
||||
"tautulli.TerminateSessionFailed": "终止会话失败",
|
||||
"tautulli.Converting": "转换",
|
||||
"tautulli.Speed": "倍速:{}x",
|
||||
"wake_on_lan.MagicPacketSent": "已发送幻包",
|
||||
"wake_on_lan.MagicPacketSentMessage": "您的机器正在唤醒!",
|
||||
"wake_on_lan.MagicPacketFailedToSend": "幻包发送失败"
|
||||
|
||||
6
debian/DEBIAN/control
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
Package:LunaSea
|
||||
Architecture:amd64
|
||||
Essential:no
|
||||
Priority:optional
|
||||
Maintainer:LunaSea Support <hello@lunasea.app>
|
||||
Description:Self-hosted software controller built using Flutter
|
||||
3
debian/DEBIAN/postinst
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
ln -sf '/usr/share/lunasea/lunasea' '/usr/bin/lunasea'
|
||||
3
debian/DEBIAN/postrm
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
rm -f '/usr/bin/lunasea'
|
||||
9
debian/usr/share/applications/lunasea.desktop
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
[Desktop Entry]
|
||||
Name=LunaSea
|
||||
Comment=Self-hosted software controller built using Flutter
|
||||
Icon=/usr/share/icons/lunasea.png
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Utilities;Entertainment;
|
||||
Exec=/usr/bin/lunasea
|
||||
TryExec=/usr/bin/lunasea
|
||||
BIN
debian/usr/share/icons/lunasea.png
vendored
Normal file
|
After Width: | Height: | Size: 58 KiB |
158
docs.json
@@ -1,158 +0,0 @@
|
||||
{
|
||||
"name": "LunaSea",
|
||||
"favicon": "/assets/logo.png",
|
||||
"logo": "/assets/logo.png",
|
||||
"logoDark": "/assets/logo.png",
|
||||
"theme": "#4ECCA3",
|
||||
"sidebar": [
|
||||
[
|
||||
"Overview",
|
||||
"/"
|
||||
],
|
||||
[
|
||||
"Getting Started",
|
||||
[
|
||||
[
|
||||
"Build Channels",
|
||||
"/getting-started/build-channels"
|
||||
],
|
||||
[
|
||||
"Donations",
|
||||
"/getting-started/donations"
|
||||
],
|
||||
[
|
||||
"Frequently Asked Questions",
|
||||
"/getting-started/frequently-asked-questions"
|
||||
],
|
||||
[
|
||||
"Platform Restrictions",
|
||||
"/getting-started/platform-restrictions"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"LunaSea",
|
||||
[
|
||||
[
|
||||
"Account",
|
||||
"/lunasea/account"
|
||||
],
|
||||
[
|
||||
"Local Backup & Restore",
|
||||
"/lunasea/local-backup-restore"
|
||||
],
|
||||
[
|
||||
"Logs",
|
||||
"/lunasea/logs"
|
||||
],
|
||||
[
|
||||
"Notifications",
|
||||
"/lunasea/notifications"
|
||||
],
|
||||
[
|
||||
"Profiles",
|
||||
"/lunasea/profiles"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"Modules",
|
||||
[
|
||||
[
|
||||
"Lidarr",
|
||||
"/modules/lidarr"
|
||||
],
|
||||
[
|
||||
"Newznab Search",
|
||||
"/modules/newznab-search"
|
||||
],
|
||||
[
|
||||
"NZBGet",
|
||||
"/modules/nzbget"
|
||||
],
|
||||
[
|
||||
"Overseerr",
|
||||
"/modules/overseerr"
|
||||
],
|
||||
[
|
||||
"Radarr",
|
||||
"/modules/radarr"
|
||||
],
|
||||
[
|
||||
"SABnzbd",
|
||||
"/modules/sabnzbd"
|
||||
],
|
||||
[
|
||||
"Sonarr",
|
||||
"/modules/sonarr"
|
||||
],
|
||||
[
|
||||
"Tautulli",
|
||||
"/modules/tautulli"
|
||||
],
|
||||
[
|
||||
"Wake on LAN",
|
||||
"/modules/wake-on-lan"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"Notifications",
|
||||
[
|
||||
[
|
||||
"Custom",
|
||||
"/notifications/custom"
|
||||
],
|
||||
[
|
||||
"Lidarr",
|
||||
"/notifications/lidarr"
|
||||
],
|
||||
[
|
||||
"Overseerr",
|
||||
"/notifications/overseerr"
|
||||
],
|
||||
[
|
||||
"Radarr",
|
||||
"/notifications/radarr"
|
||||
],
|
||||
[
|
||||
"Sonarr",
|
||||
"/notifications/sonarr"
|
||||
],
|
||||
[
|
||||
"Tautulli",
|
||||
"/notifications/tautulli"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"Releases",
|
||||
[
|
||||
[
|
||||
"Android",
|
||||
"/releases/android"
|
||||
],
|
||||
[
|
||||
"iOS",
|
||||
"/releases/ios"
|
||||
],
|
||||
[
|
||||
"Linux",
|
||||
"/releases/linux"
|
||||
],
|
||||
[
|
||||
"macOS",
|
||||
"/releases/macos"
|
||||
],
|
||||
[
|
||||
"Web",
|
||||
"/releases/web"
|
||||
],
|
||||
[
|
||||
"Windows",
|
||||
"/releases/windows"
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 259 KiB |
|
Before Width: | Height: | Size: 282 KiB |
|
Before Width: | Height: | Size: 253 KiB |
|
Before Width: | Height: | Size: 265 KiB |
@@ -1,37 +0,0 @@
|
||||
---
|
||||
title: Build Channels
|
||||
description: How to use different builds of LunaSea
|
||||
---
|
||||
|
||||
# Build Channels
|
||||
|
||||
LunaSea offers four different build channels, each of which supply signed and notarized copies of LunaSea.
|
||||
|
||||
All releases for every build channel can be downloaded from the [build bucket](https://builds.lunasea.app), and all stable releases for all platforms are also available on [GitHub](https://github.com/JagandeepBrar/LunaSea/releases).
|
||||
|
||||
- [Android](/releases/android)
|
||||
- [iOS](/releases/ios)
|
||||
- [Linux](/releases/linux)
|
||||
- [macOS](/releases/macos)
|
||||
- [Web](/releases/web)
|
||||
- [Windows](/releases/windows/)
|
||||
|
||||
## Stable
|
||||
|
||||
This is the store version and will remain the most stable version. No in-progress features will be deployed to this channel.
|
||||
|
||||
## Candidate
|
||||
|
||||
This channel is focused around _final release candidate testing of completed new features_ leading up to the release to stable. This channel is intended to help catch any remaining bugs from beta builds and overall should remain relatively stable.
|
||||
|
||||
## Beta
|
||||
|
||||
This channel is focused around _early previews and testing of work-in-progress features_. This channel is intended to allow users to give feedback to the developer on features that are actively being worked on.
|
||||
|
||||
## Edge
|
||||
|
||||
This channel's purpose is to _ensure that every commit made to master is building across all platforms_ and allows for easier access to a build for each commit. This is not intended to be used by the average user, but is for community developers or users who need to test a recently added fix that has not yet reached the beta channel.
|
||||
|
||||
There are no restrictions on features in these builds (barring a very specific subset used for debugging/testing) so it gives full access to everything that is work in progress.
|
||||
|
||||
**Do not expect a fully stable experience if you use these builds**, as it is entirely possible that a single build could cause problems including but not limited to database corruption. If you are running these builds, please ensure you have either a cloud or offline backup available for easy restoration.
|
||||
@@ -1,26 +0,0 @@
|
||||
---
|
||||
title: Donations
|
||||
description: How to donate to the developer of LunaSea
|
||||
---
|
||||
|
||||
# Donations
|
||||
|
||||
Thanks for considering donating to LunaSea! Donations are what keep the project alive and completely free for everyone to use. There are a few options available:
|
||||
|
||||
## In-App Purchases
|
||||
|
||||
If you have downloaded LunaSea through the Play Store or App Store, you can directly donate using in-app purchases! Simply head to the Settings and tap the "Donations" tile. There are four options available (all scaled to USD): $0.99, $2.99, $4.99, and $9.99.
|
||||
|
||||
> If you are using TestFlight builds on iOS devices, you will need to switch to the App Store version to donate. Any in-app purchases executed on a TestFlight build do not actually get processed.
|
||||
|
||||
## Ko-Fi
|
||||
|
||||
I have setup a Ko-Fi account for LunaSea, available here: https://ko-fi.com/JagandeepBrar.
|
||||
|
||||
Ko-Fi allows you to make a one-time donation in $1 increments using PayPal.
|
||||
|
||||
## GitHub Sponsors
|
||||
|
||||
I also have setup a GitHub Sponsors account, which is available here: https://github.com/sponsors/JagandeepBrar.
|
||||
|
||||
GitHub Sponsors allow you to setup a recurring donation in the amount of $1 to $5.
|
||||
@@ -1,115 +0,0 @@
|
||||
---
|
||||
title: Frequently Asked Questions
|
||||
description: Frequently asked questions regarding LunaSea
|
||||
---
|
||||
|
||||
# Frequently Asked Questions
|
||||
|
||||
## Modules
|
||||
|
||||
#### How Do I Install a "Module"?
|
||||
|
||||
The software, or as used in LunaSea, _Modules_, are all pieces of software that must be installed on a home computer or server. None of the currently supported software has been developed by me, so the amount of support offered for each module is limited. LunaSea itself does not have the functionality of that software, it acts as a remote.
|
||||
|
||||
#### Can You Support "X" Feature/Module?
|
||||
|
||||
I take all requests into consideration! If you would like to request a feature there are a few ways I recommend:
|
||||
|
||||
- [Feedback Board](https://www.lunasea.app/feedback): The feedback board allows users to create, comment on, and vote on new features and general requests! This is the ideal way to request a new feature, as it allows other users to see active requests, it allows discussions to stay per-request, and the voting system gives me a good indication on the active demand for a feature.
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
- [Email](mailto:hello@lunasea.app)
|
||||
- [Reddit](https://www.lunasea.app/reddit)
|
||||
|
||||
> I may not have the ability to respond to all requests directly, but please be ensured I do read everything!
|
||||
|
||||
#### Why Isn't Feature/Module "X" Supported Yet?
|
||||
|
||||
LunaSea is only developed by one person and while I try to put as much time into LunaSea as I can, I still do have a family, career, and I want to enjoy my personal time.
|
||||
|
||||
I also want to point out that I don't want to make LunaSea a wide ranging but no depth application. I want every application to have as full of an implementation as possible, which can mean that new modules will take time to get implemented between one another.
|
||||
|
||||
#### Torrent Client Support: Is It Coming?
|
||||
|
||||
Support for torrent clients is easily the most requested new module, and I definitely see the demand. However, torrent support currently is not possible in LunaSea because of the restrictions Apple has put forward. Apple does not allow integration of P2P/torrent clients in any capacity for applications that are hosted on the App Store. This includes a P2P client that runs directly on the device and linking to a P2P client that is running on an external machine.
|
||||
|
||||
Torrent support is not completely off the table and may come in the future! But at the moment, over 90% of the active user base is using iOS-based devices and it is hard to justify building a module (that takes a lot of time) that the mass majority of the user base would not be able to use.
|
||||
|
||||
> I am actively thinking of methods to get around this limitation, if you have any ideas consider commenting on the torrent client support [feedback board request](https://feedback.lunasea.app/b/New-Modules/p/torrent-clients-support).
|
||||
|
||||
## Development
|
||||
|
||||
#### Who Makes LunaSea?
|
||||
|
||||
Only one person, me! Hi, my name is Jagandeep, and I am a software engineer from Canada. I am currently the main and only developer on LunaSea but I encourage anyone who is interested and wants to contribute to the project to make a pull request on GitHub!
|
||||
|
||||
#### What is LunaSea Developed In?
|
||||
|
||||
LunaSea is developed using Google's hybrid framework, [Flutter](https://flutter.dev/), which uses [Dart](https://dart.dev/) as its core language. Using Flutter allows an indie developer like myself to build cross-platform applications more easily, as it is one single codebase that allows me to build across many platforms!
|
||||
|
||||
#### How is LunaSea Free?
|
||||
|
||||
LunaSea started off as (and still is) a passion project fueled by my love for data hoarding. It was open-sourced soon after it's initial launch to allow LunaSea to get into the hands of as many users as possible and to give back to the community where there is a lack of open-source, high quality mobile applications.
|
||||
|
||||
#### Are You Ever Going To Charge Money/Insert Ads?
|
||||
|
||||
The only possible reason that LunaSea will ever have any kind of payment model is if features are introduced that cost me recurring charges that are too large to bear. Any and all features that do not incur me a charge will be free, and even any features that would cost me money will become open-source, which offers everyone the ability to have a completely free experience in LunaSea.
|
||||
|
||||
## Bugs & Feedback
|
||||
|
||||
#### I Found a Bug! How Do I Let You Know?
|
||||
|
||||
I tried to make it as stable as possible, but bugs obviously will always be there. If you do run into a bug (especially a fatal/crashing bug), please also attach the logs from the application into the report - logs can be exported from the settings.
|
||||
|
||||
- [GitHub Issues](https://www.lunasea.app/github): The best place to alert me of new issues is directly on the GitHub page. Please try to follow the template for bug reports, but again I am not overly strict and a good explanation of the issue will suffice (this may change in the future if it gets increasingly hard to manage).
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
- [Email](mailto:hello@lunasea.app)
|
||||
- [Reddit](https://www.lunasea.app/reddit)
|
||||
|
||||
#### How Can I Request a New Feature?
|
||||
|
||||
I consider all feedback and actively try to integrate new features that are requested by the community, big or small! You have a few ways to request new features for LunaSea:
|
||||
|
||||
- [Feedback Board](https://www.lunasea.app/feedback): The feedback board allows users to create, comment on, and vote on new features and general requests! This is the ideal way to request a new feature, as it allows other users to see active requests, it allows discussions to stay per-request, and the voting system gives me a good indication on the active demand for a feature.
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
- [Email](mailto:hello@lunasea.app)
|
||||
- [Reddit](https://www.lunasea.app/reddit)
|
||||
|
||||
## Support
|
||||
|
||||
#### Why Don't The Settings Explain Much?
|
||||
|
||||
I understand that the settings section could definitely use better documentation and linking, but this ambiguity and sparse documentation directly within LunaSea is by design.
|
||||
|
||||
LunaSea took quite a runaround to initially get on the App Store because of its relationship with how you acquire Linux ISOs. After successfully getting it on the App Store, I want to avoid adding anything to LunaSea that would potentially get it revoked.
|
||||
|
||||
#### "X" Won't Connect, Help!
|
||||
|
||||
The initial setup can either be incredibly easy or make you want to pull your hair out, I get that and that's what the community is here for! Please feel free to send a message to any of the listed methods to get support where either I or an awesome user in the community will surely come to help you out:
|
||||
|
||||
- [Discord](https://www.lunasea.app/discord)
|
||||
- [Email](mailto:hello@lunasea.app)
|
||||
- [Reddit](https://www.lunasea.app/reddit)
|
||||
|
||||
A few quick tips on common problems:
|
||||
|
||||
- `localhost` and `0.0.0.0` are internal hostnames that means "this computer". They cannot and should not be used as the host, but is commonly used because users mainly access the service from the computer running it. In order for LunaSea to connect, you must find the local IP of your computer (most common home networking configurations have it start with `192.168.0.x` or `192.168.1.x`)
|
||||
- Ensure you match the right API key to the right service. I know this seems like an obvious thing, but you'd be surprised how easy it is to mix up 3-4 API keys when you're going back and forth copying and pasting!
|
||||
- For the -arr services, ensure the binding address in the advanced general settings is not set to `127.0.0.1` or `localhost`, but instead set to either `0.0.0.0`, `*`, or the local IP for the computer/server.
|
||||
- Similarly for the clients, ensure that the host is set to `0.0.0.0`, or the local IP.
|
||||
- As noted in the host prompt, you must add either `http://` or `https://` before the IP or domain. LunaSea does not make any assumptions on the protocol to use (http or https).
|
||||
- Do not use `3xx` redirecting webpages. This is not supported for POST and PUT requests (sending data back to the module) and can cause many headaches, so ideally you should be pointing directly to the module on your network.
|
||||
- _(Windows Only)_: For a lot of software to correctly bind to your network, you need to ensure that you run the software as administrator. This is specifically very important for the -arrs, which will only bind to your host machine if you do not run it as administrator.
|
||||
|
||||
#### How Can I Access My Services Remotely?
|
||||
|
||||
While this is outside of the scope of this project, I can try to point you in the right direction!
|
||||
|
||||
- **Reverse Proxy**: A reverse proxy allows you to open 1 or 2 ports on your network (typically 443 for SSL/https connections and 80 for http connections). Using a reverse proxy also allows you to attach a domain name to your IP and generate a free SSL certificate for https (hint, [LetsEncrypt](https://letsencrypt.org/)). Some common options for reverse proxies are [NGINX Proxy Manager](https://nginxproxymanager.com/), [Traefik](https://traefik.io/), [NGINX](https://nginx.org/), and [Apache](https://www.apache.org/).
|
||||
- **VPN Tunnelling**: Another option is to create a VPN tunnel back to your home network, which would allow you to access your services as if you are on your home network. Tools like [WireGuard](https://www.wireguard.com/) and [OpenVPN](https://openvpn.net/) are perfect for this use case. This is technically the most secure method, but a bit less convenient than using a reverse proxy.
|
||||
- **Direct Port Forwarding**: This method is _not recommended_, but another option is directly forward the ports of the services on your router and access the services via `<External IP>:<Port>`. The reason this is not recommended is because all of the traffic is sent unencrypted (you can use self-signed certificates, but this causes more headaches related to certificate authorities), and the more ports that are open on your network the less secure it is.
|
||||
|
||||
#### I Want to Complain! Where Can I Complain?
|
||||
|
||||
Sorry that LunaSea is not meeting your expectations, feel free to post criticisms or complaints to any of the social platforms or directly [email me](mailto:hello@lunasea.app). I hope that I can remedy your complaints, all I ask is that you do not be abusive or disrespectful to myself or others in the community.
|
||||
|
||||
I also kindly request that before you submit a 1-star App Store/Play Store review that you consider contacting me directly with your complaints. 1-star reviews can really hurt a smaller application's rating since we do not typically get lots of reviews.
|
||||
@@ -1,41 +0,0 @@
|
||||
---
|
||||
title: Platform Restrictions
|
||||
description: Breaking down what is and isn't supported on different platforms
|
||||
---
|
||||
|
||||
# Platform Restrictions
|
||||
|
||||
The tables below showcases which modules or features may not be supported on each platform. If a module or feature is not listed, you can assume that every platform has full support for said module or feature!
|
||||
|
||||
> Work will continuously be down to try to achieve 100% feature parity between all platforms when possible!
|
||||
|
||||
## Module Support
|
||||
|
||||
| Module | Android | iOS | Linux | macOS | Windows | Web (Hosted) | Web (Self-Hosted) |
|
||||
| :---------: | :-----: | :-: | :---: | :---: | :-----: | :----------: | :---------------: |
|
||||
| NZBGet | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
||||
| Overseerr | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
||||
| Tautulli | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
||||
| Wake on LAN | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
## Feature Support
|
||||
|
||||
| Feature | Android | iOS | Linux | macOS | Windows | Web (Hosted) | Web (Self-Hosted) |
|
||||
| :--------------------: | :-----: | :-: | :---: | :---: | :-----: | :----------: | :---------------: |
|
||||
| Local Backup & Restore | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
||||
| LunaSea Accounts | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ |
|
||||
| Notifications | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
|
||||
|
||||
## Web-Specific Restrictions
|
||||
|
||||
#### HTTPS Requirement
|
||||
|
||||
LunaSea's web instances are hosted on [Netlify](https://www.netlify.com) and use [LetsEncrypt](https://letsencrypt.org/) TLS certificates to ensure that an encrypted connection is utilized when loading the LunaSea web application package.
|
||||
|
||||
One limitation this incurs is that most modern web browsers no longer support [mixed content](https://developer.mozilla.org/en-US/docs/Web/Security/Mixed_content), so it is required when using these browsers to utilize a reverse proxy (or something similar) to expose a secure (`HTTPS`) connection to your instances even when hosted on the same machine.
|
||||
|
||||
**All network communication occurs directly between your web browser and host machine**, but this is a limitation put forward by the web browsers.
|
||||
|
||||
#### Wake on LAN Support
|
||||
|
||||
Wake on LAN support will **never** be supported when using LunaSea on the web, because the Wake on LAN protocol relies on the [User Datagram Protocol (UDP)](https://en.wikipedia.org/wiki/User_Datagram_Protocol). UDP connections are not supported in the web browser because of underlying security constraints, and so it will not be possible to utilize wake on LAN now or at any point in the future when using LunaSea on the web.
|
||||
@@ -1,47 +0,0 @@
|
||||
---
|
||||
title: LunaSea
|
||||
description: Self-hosted software controller built using Flutter
|
||||
---
|
||||
|
||||
<Image
|
||||
src="https://raw.githubusercontent.com/JagandeepBrar/LunaSea/master/assets/images/branding_logo.png"
|
||||
width="250px"
|
||||
alt="LunaSea"
|
||||
zoom={false}
|
||||
caption="Self-hosted software controller built using Flutter"
|
||||
/>
|
||||
|
||||
LunaSea is a fully featured, open source self-hosted controller focused on giving you a seamless experience between all of your self-hosted media software remotely on your devices.
|
||||
|
||||
## Modules
|
||||
|
||||
- [Lidarr](/modules/lidarr)
|
||||
- [Newznab Search + NZBHydra2](/modules/newznab-search)
|
||||
- [NZBGet](/modules/nzbget)
|
||||
- [Radarr](/modules/radarr)
|
||||
- [Overseerr (WIP)](/modules/radarr)
|
||||
- [SABnzbd](/modules/sabnzbd)
|
||||
- [Sonarr](/modules/sonarr)
|
||||
- [Tautulli](/modules/tautulli)
|
||||
- [Wake on LAN](/modules/wake-on-lan)
|
||||
|
||||
LunaSea even comes with support for webhook-based push notifications, multiple instances of applications using profiles, backup and restore functionality for your configuration, an AMOLED black theme, and more!
|
||||
|
||||
> LunaSea is purely a remote control application, it does not offer any functionality without software installed on a server/computer.
|
||||
|
||||
## Releases
|
||||
|
||||
All releases for every build channel can be downloaded from the [build bucket](https://builds.lunasea.app), and all stable releases for all platforms are also available on [GitHub](https://github.com/JagandeepBrar/LunaSea/releases).
|
||||
|
||||
- [Android](/releases/android)
|
||||
- [iOS](/releases/ios)
|
||||
- [Linux](/releases/linux)
|
||||
- [macOS](/releases/macos)
|
||||
- [Web](/releases/web)
|
||||
- [Windows](/releases/windows/)
|
||||
|
||||
Interested in using prerelease build channels of LunaSea? Learn the differences between all the build channels and how to join one [here](https://www.lunasea.app/build-channels)!
|
||||
|
||||
## License
|
||||
|
||||
See [LICENSE.md](https://github.com/JagandeepBrar/LunaSea/blob/master/LICENSE.md) for more information.
|
||||
@@ -1,18 +0,0 @@
|
||||
---
|
||||
title: Account
|
||||
description: Accounts to extend LunaSea's functionality
|
||||
---
|
||||
|
||||
# Account
|
||||
|
||||
LunaSea currently offers a _free_ cloud account that can be used for extending the functionality of LunaSea. The only details required to register for an account are an email address and password. At no point will LunaSea or the developers send you any emails, unless you explicitly request a password reset email.
|
||||
|
||||
If you want to protect your privacy, you are free to use a fake email when registering for an account, as there is no required account verification. Be warned that you will be unable to reset your password if you decide to use a fake email, as these functions are handled through Firebase Authentication via email.
|
||||
|
||||
## Encrypted Cloud Configuration Storage
|
||||
|
||||
The three options related to backing up your encrypted backups should be self-explanatory. All configurations are encrypted on-device before being sent off the device. When restoring an encrypted backup, the encrypted backup is downloaded to the device and you will be prompted to decrypt the backup on-device.
|
||||
|
||||
Deleting a backup is a permanent action, **there is no way to restore that backup**.
|
||||
|
||||
> Because all encryption and decryption occurs on-device, it is fully end-to-end encrypted. Forgetting the encryption password will result in there being no way to retrieve the configuration.
|
||||
@@ -1,22 +0,0 @@
|
||||
---
|
||||
title: Local Backup & Restore
|
||||
description: How to backup and restore your LunaSea configuration locally to your device
|
||||
---
|
||||
|
||||
# Local Backup & Restore
|
||||
|
||||
Alongside cloud-based backups, LunaSea offers the ability to create local backups of your configuration which you can manually transfer between devices and restore from. This gives you the freedom to have complete control of your data, and never have your configuration saved in a cloud server. Local backups are fully encrypted on-device, there are currently no plans to offer unencrypted backups.
|
||||
|
||||
> Because all encryption and decryption occurs on-device, it is fully end-to-end encrypted. Forgetting the encryption password will result in there being no way to retrieve the configuration.
|
||||
|
||||
## Creating a Backup
|
||||
|
||||
Creating a backup in LunaSea is simple and painless! Simply go to Settings -> System -> "Backup to Device" to start the backup process.
|
||||
|
||||
The backup will use the system-level share menu or dialog prompt to allow you to save the backup (a `.lunasea` file). Please ensure to keep the `.lunasea` extension when saving the file, as backups without a `.lunasea` extension will not be selectable when attempting to restore your configuration.
|
||||
|
||||
## Restoring a Backup
|
||||
|
||||
Restoring a backup in LunaSea is as simple as creating the backup! Simply go to Settings -> System -> "Restore from Device" to start the restore process.
|
||||
|
||||
The restoration process will request the password used to encrypt the original backup.
|
||||
@@ -1,55 +0,0 @@
|
||||
---
|
||||
title: Logs
|
||||
description: Breaking down LunaSea's built-in on-device logger
|
||||
---
|
||||
|
||||
# Logs
|
||||
|
||||
LunaSea includes an on-device logging system that helps debug crashes, issues, and support requests. LunaSea stores 4 different levels of logs: **Debug**, **Warning**, **Error**, and **Critical**.
|
||||
|
||||
<Tabs
|
||||
defaultValue="debug"
|
||||
values={[
|
||||
{ label: "Debug", value: "debug" },
|
||||
{ label: "Warning", value: "warning" },
|
||||
{ label: "Error", value: "error" },
|
||||
{ label: "Critical", value: "critical" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="debug">
|
||||
_Debug logs are visible/available on prerelease builds only_
|
||||
|
||||
Debug logs are informational logs and messages that are intended to help debug processes.
|
||||
</TabItem>
|
||||
<TabItem value="warning">
|
||||
Warning logs are non-crashing and non-critical errors that have occurred on the device. Warning logs would occur when failing to load an image, passing an incorrect encryption key when trying to restore a backup, etc.
|
||||
</TabItem>
|
||||
<TabItem value="error">
|
||||
Error logs are non-crashing but critical errors that have occurred on the device. Error logs would occur on network errors, connection issues, errors returned from the module, etc.
|
||||
</TabItem>
|
||||
<TabItem value="critical">
|
||||
Fatal logs are crashing errors or unhandled errors that have occurred on the device. Fatal logs would occur when LunaSea fails to complete the boot process, fails to render the UI, etc.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Viewing Log History
|
||||
|
||||
When a _handled_ error occurs, a toast notification will appear that allows you to directly view the error that just occurred.
|
||||
|
||||
LunaSea also stores a list of the **last 100 logs** that have occurred on the device. To access the history of logs, go to Settings -> System -> Logs. The log database size is checked on startup, so all logs that have occurred in the active session will remain in the log history until LunaSea is closed and reopened.
|
||||
|
||||
## Exporting Logs
|
||||
|
||||
LunaSea offers the ability to export your logs into a JSON file, which can be easily sent to the developer to help debug the problems. The exported logs also include additional information, including the code-execution stack trace to see exactly where in the code the error occurred.
|
||||
|
||||
To export your logs, go to Settings -> System -> Logs -> "Export" to trigger an export of your logs. A system-level share menu or dialog prompt will appear with the ability to share or save the exported logs to your device.
|
||||
|
||||
> Because the exported logs contain code-execution stack traces, **the logs may unintentionally contain private information**.
|
||||
>
|
||||
> Please ensure you do not publicly share your exported logs (or before sharing, manually scrub the exported logs). Only share the logs to trusted parties through private channels such as email or direct messages.
|
||||
|
||||
## Clearing Logs
|
||||
|
||||
LunaSea offers the ability to clear all recorded logs from your device. While an available option, it is not recommended to clear your logs often as LunaSea will internally ensure the log database does not grow to an obscenely large size.
|
||||
|
||||
To clear your logs, go to Settings -> System -> Logs -> "Clear" to trigger a clean of the logs database.
|
||||
@@ -1,62 +0,0 @@
|
||||
---
|
||||
title: Notifications
|
||||
description: How to setup webhook-based push notifications with LunaSea
|
||||
---
|
||||
|
||||
# Notifications
|
||||
|
||||
Many of the supported modules have support for webhooks, which we can utilize with the hosted notification relay to get rich, instant notifications with deep-linking support sent as push notifications directly to your devices running LunaSea!
|
||||
|
||||
## Platform Support
|
||||
|
||||
Notifications are only supported on a limited set of platforms at this time. Plans are to support all platforms in the future as support from the underlying notification service is added!
|
||||
|
||||
| Platform | Supported? |
|
||||
| :------: | :--------: |
|
||||
| Android | ✅ |
|
||||
| iOS | ✅ |
|
||||
| Linux | ❌ |
|
||||
| macOS | ✅ |
|
||||
| Windows | ❌ |
|
||||
| Web | ❌ |
|
||||
|
||||
## Module Support
|
||||
|
||||
Not all modules are currently supported, below is a list of all supported modules and if they supported deep linking to the relevant content. Additional support and deeper integration will arrive in future updates!
|
||||
|
||||
| Module | Supported? | Deep Linking? |
|
||||
| :-----------------------------------: | :--------: | :-----------: |
|
||||
| [Lidarr](/notifications/lidarr) | ✅ | ❌ |
|
||||
| NZBGet | ❌ | ❌ |
|
||||
| [Overseerr](/notifications/overseerr) | ✅ | ❌ |
|
||||
| [Radarr](/notifications/radarr) | ✅ | ✅ |
|
||||
| SABnzbd | ❌ | ❌ |
|
||||
| [Sonarr](/notifications/sonarr) | ✅ | ✅ |
|
||||
| [Tautulli](/notifications/tautulli) | ✅ | ✅ |
|
||||
|
||||
## Notification Types
|
||||
|
||||
LunaSea supports two different types of notifications: **User-Based** and **Device-Based**.
|
||||
|
||||
<Tabs
|
||||
defaultValue="user"
|
||||
values={[
|
||||
{ label: "User-Based", value: "user" },
|
||||
{ label: "Device-Based", value: "device" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="user">
|
||||
User-based notifications send notifications to all devices that are linked to your LunaSea account. Your device is automatically linked when you register or sign in to your account. This means that any current and future devices that are signed-in to your account will receive notifications automatically.
|
||||
</TabItem>
|
||||
<TabItem value="device">
|
||||
Device-based notifications send notifications to a single, specific device. Device-based notifications do not require a LunaSea account, but require you to register every device as a new webhook in the module.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Getting Your Webhook URLs
|
||||
|
||||
To get the correct webhook URL for each module simply head to the Settings within LunaSea, then into the "Notifications" page! The buttons on each module card will copy the full, constructed webhook URL to receive user-based or device-based notifications for that specific module. Please ensure to copy and use the correct webhook URL for each module, as mixing them up can lead to unexpected results.
|
||||
|
||||
> **Do not publicly share your user-based or device-based URL!**
|
||||
>
|
||||
> Anyone with access to your user or device webhook URLs can send notifications to your account or device.
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/custom
|
||||
---
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/lidarr
|
||||
---
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/overseerr
|
||||
---
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/radarr
|
||||
---
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/sonarr
|
||||
---
|
||||
@@ -1,3 +0,0 @@
|
||||
---
|
||||
redirect: /notifications/tautulli
|
||||
---
|
||||
@@ -1,39 +0,0 @@
|
||||
---
|
||||
title: Profiles
|
||||
description: Use multiple instances of modules with LunaSea
|
||||
---
|
||||
|
||||
# Profiles
|
||||
|
||||
Do you have multiple instances of modules you want to add to LunaSea? Profiles are the way to do this! LunaSea allows you to have an infinite amount of profiles, each of which can contain a whole new set of configurations for modules.
|
||||
|
||||
## Adding, Deleting, and Renaming Profiles
|
||||
|
||||
To add, delete, or rename a profile, head to Settings -> Profiles. There are a small collection of simple options on this page, each of which should be self-explanatory.
|
||||
|
||||
## Changing Profiles
|
||||
|
||||
There are many ways to switch profiles within LunaSea, but let it be noted that switching profiles clears all state-stored data from memory, and all fetched data will be fully refreshed.
|
||||
|
||||
<Tabs
|
||||
defaultValue="drawer"
|
||||
values={[
|
||||
{ label: "Drawer", value: "drawer" },
|
||||
{ label: "AppBar", value: "appbar" },
|
||||
{ label: "Settings", value: "settings" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="drawer">
|
||||
When you have more than a single profile enabled, the top header of the drawer will show the currently active profile and can be tapped to trigger a dropdown allowing you to select any profile to switch to.
|
||||
|
||||
When in a module and you switch to a profile that does not have the module enabled, the only option available on that page will be to return to the dashboard.
|
||||
</TabItem>
|
||||
<TabItem value="appbar">
|
||||
When on the home/base route of a module that has another instance enabled in another profile, a dropdown arrow will be displayed beside the module title in the AppBar. Simply tap the module name to get a dropdown list of profiles that have that module enabled.
|
||||
|
||||
Any additional profiles that do not have the module enabled will not be shown within the dropdown. If you have additional profiles but no profile has that specific module enabled, the dropdown will not be accessible.
|
||||
</TabItem>
|
||||
<TabItem value="settings">
|
||||
You can change your profile within the Settings, either by entering the "Profiles" page and selecting the enabled profile or by entering the "Configuration" page and hitting the profile icon in the AppBar.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
@@ -1,64 +0,0 @@
|
||||
---
|
||||
title: Lidarr
|
||||
description: How to configure and add Lidarr to LunaSea
|
||||
---
|
||||
|
||||
# Lidarr
|
||||
|
||||
Adding your Lidarr instance to LunaSea only requires a few steps to get going!
|
||||
|
||||
> This documentation only covers adding Lidarr to LunaSea via local area network (LAN) connections, and does not cover exposing Lidarr externally and connecting remotely.
|
||||
|
||||
## Preparation
|
||||
|
||||
#### Find Your Local Area Network IP Address
|
||||
|
||||
Finding your local area network IP address of the machine running Lidarr is the first step to get setup. To find your local IP address, please look at the following guides:
|
||||
|
||||
- [Linux](https://ubuntuhandbook.org/index.php/2020/07/find-ip-address-ubuntu-20-04/)
|
||||
- [macOS](https://osxdaily.com/2010/11/21/find-ip-address-mac/)
|
||||
- [Windows](https://support.microsoft.com/en-us/windows/find-your-ip-address-in-windows-f21a9bbc-c582-55cd-35e0-73431160a1b9)
|
||||
|
||||
If you are running a different operating system, you can use any search engine to look up "Find local IP address on \<your operating system\>" to typically find tons of guides for any platform.
|
||||
|
||||
> It is recommended to set your host machine's IP address to be statically assigned instead of dynamic/DHCP. This ensures that the IP address will not change through machine or network reboots.
|
||||
|
||||
#### Check What Port is Being Used
|
||||
|
||||
If using the default installation, Lidarr runs on port **8686**. In most cases, this port is not changed and does not need to be changed.
|
||||
|
||||
The simplest way to check is to go to Lidarr's web GUI, go to Settings -> General and note the value entered into "Port Number".
|
||||
|
||||
#### Ensure Lidarr is Accessible Across Your Network
|
||||
|
||||
To ensure that Lidarr is accessible across your local network, check the following:
|
||||
|
||||
- In Lidarr's web GUI, go to Settings -> General and enable advanced settings, then ensure that the "Bind Address" is set to `*`
|
||||
- Check any enabled firewalls to confirm that the port running Lidarr is not being blocked
|
||||
- _(Windows Only)_: Ensure that Lidarr has been run as administrator at least once
|
||||
|
||||
#### Check If You Are Using a URL Base
|
||||
|
||||
In Lidarr's web GUI, go to Settings -> General and check the value of "URL Base". If you have nothing set, you can move on. If you do have a value set, please remember the set value as it will be necessary when setting the host within LunaSea.
|
||||
|
||||
## Connecting in LunaSea
|
||||
|
||||
#### Host
|
||||
|
||||
The host is a combination of multiple values found above:
|
||||
|
||||
- The local IP address
|
||||
- The port
|
||||
- If being used, the URL base
|
||||
|
||||
Combine all the values into the following format: `<IP address>:<port>/<URL base>`
|
||||
|
||||
For example, if Lidarr is running on port `8686` on a machine that has the IP address `192.168.100.100` with a URL base set to `/lidarr`, the host is: `http://192.168.100.100:8686/lidarr`. If it had no URL base set, it would be `http://192.168.100.100:8686`.
|
||||
|
||||
#### API Key
|
||||
|
||||
The API key is copied from Lidarr's web GUI, by going to Settings -> General and finding the API key value.
|
||||
|
||||
#### Custom Headers
|
||||
|
||||
Custom headers allows users to attach custom request headers to each API call that is made. This is typically an advanced feature, and is not necessary in most network configurations.
|
||||
@@ -1,50 +0,0 @@
|
||||
---
|
||||
title: Newznab Search
|
||||
description: How to configure and add Newznab Search to LunaSea
|
||||
---
|
||||
|
||||
# Newznab Search
|
||||
|
||||
LunaSea supports any indexer that supports the [Newznab API specification](https://newznab.readthedocs.io/en/latest/). Most modern indexers (including NZBHydra2) are fully compliant with this specification, and compatible with LunaSea.
|
||||
|
||||
> LunaSea supports infinite scrolling of search and category results, which can result in multiple API hits. It is only recommended to add indexers with high API limits to prevent quickly reaching your API limit.
|
||||
|
||||
## Adding an Indexer
|
||||
|
||||
#### Display Name
|
||||
|
||||
Your personal display name for the indexer. The display name can be anything, but indexers are displayed in _alphabetical order_ and the display name you choose will determine where it lands in your list of indexers.
|
||||
|
||||
#### Indexer API Host
|
||||
|
||||
This is the _API host_ from the indexer. Do not confused this with the homepage for the indexer! Some indexers use the same URL, but many indexers will use a separate URL (commonly https://api.indexer.tld).
|
||||
|
||||
If your indexer can and has been added to Lidarr, Radarr, or Sonarr, you can simply copy the URL from the indexer configuration page within their settings.
|
||||
|
||||
#### Indexer API Key
|
||||
|
||||
Your API key that is typically available in the dashboard of the indexer or received by email when originally signing up for the indexer.
|
||||
|
||||
If you are unable to find your API key, consider contacting the administrators of the indexer to get help! The LunaSea developer and community users can try to help, but we cannot guarantee support if nobody has access to said indexer.
|
||||
|
||||
#### Custom Headers
|
||||
|
||||
Custom headers allows users to attach custom request headers to each API call that is made. This is typically an advanced feature, and is not necessary for most public indexers.
|
||||
|
||||
## Indexer API Hosts
|
||||
|
||||
| Indexer | API Host |
|
||||
| :------------: | :----------------------------: |
|
||||
| DOGnzb | https://api.dognzb.cr/ |
|
||||
| DrunkenSlug | https://api.drunkenslug.com/ |
|
||||
| NZB.su | https://api.nzb.su/ |
|
||||
| NZBCat | https://nzb.cat |
|
||||
| NZBFinder | https://nzbfinder.ws |
|
||||
| NZBGeek | https://api.nzbgeek.info |
|
||||
| NZBPlanet | https://api.nzbplanet.net |
|
||||
| omgwtfnzbs | https://api.omgwtfnzbs.me |
|
||||
| OZnzb | https://api.oznzb.com |
|
||||
| SimplyNZBs | https://simplynzbs.com |
|
||||
| Usenet Crawler | https://www.usenet-crawler.com |
|
||||
|
||||
Want to add something to list? Make a pull request on [GitHub](https://www.lunasea.app/github)!
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
title: NZBGet
|
||||
description: How to configure and add NZBGet to LunaSea
|
||||
---
|
||||
|
||||
# NZBGet
|
||||
|
||||
> Coming soon!
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
title: Overseerr
|
||||
description: How to configure and add Overseerr to LunaSea
|
||||
---
|
||||
|
||||
# Overseerr
|
||||
|
||||
> Coming soon!
|
||||
@@ -1,64 +0,0 @@
|
||||
---
|
||||
title: Radarr
|
||||
description: How to configure and add Radarr to LunaSea
|
||||
---
|
||||
|
||||
# Radarr
|
||||
|
||||
Adding your Radarr instance to LunaSea only requires a few steps to get going!
|
||||
|
||||
> This documentation only covers adding Radarr to LunaSea via local area network (LAN) connections, and does not cover exposing Radarr externally and connecting remotely.
|
||||
|
||||
## Preparation
|
||||
|
||||
#### Find Your Local Area Network IP Address
|
||||
|
||||
Finding your local area network IP address of the machine running Radarr is the first step to get setup. To find your local IP address, please look at the following guides:
|
||||
|
||||
- [Linux](https://ubuntuhandbook.org/index.php/2020/07/find-ip-address-ubuntu-20-04/)
|
||||
- [macOS](https://osxdaily.com/2010/11/21/find-ip-address-mac/)
|
||||
- [Windows](https://support.microsoft.com/en-us/windows/find-your-ip-address-in-windows-f21a9bbc-c582-55cd-35e0-73431160a1b9)
|
||||
|
||||
If you are running a different operating system, you can use any search engine to look up "Find local IP address on \<your operating system\>" to typically find tons of guides for any platform.
|
||||
|
||||
> It is recommended to set your host machine's IP address to be statically assigned instead of dynamic/DHCP. This ensures that the IP address will not change through machine or network reboots.
|
||||
|
||||
#### Check What Port is Being Used
|
||||
|
||||
If using the default installation, Radarr runs on port **7878**. In most cases, this port is not changed and does not need to be changed.
|
||||
|
||||
The simplest way to check is to go to Radarr's web GUI, go to Settings -> General and note the value entered into "Port Number".
|
||||
|
||||
#### Ensure Radarr is Accessible Across Your Network
|
||||
|
||||
To ensure that Radarr is accessible across your local network, check the following:
|
||||
|
||||
- In Radarr's web GUI, go to Settings -> General and enable advanced settings, then ensure that the "Bind Address" is set to `*`
|
||||
- Check any enabled firewalls to confirm that the port running Radarr is not being blocked
|
||||
- _(Windows Only)_: Ensure that Radarr has been run as administrator at least once
|
||||
|
||||
#### Check If You Are Using a URL Base
|
||||
|
||||
In Radarr's web GUI, go to Settings -> General and check the value of "URL Base". If you have nothing set, you can move on. If you do have a value set, please remember the set value as it will be necessary when setting the host within LunaSea.
|
||||
|
||||
## Connecting in LunaSea
|
||||
|
||||
#### Host
|
||||
|
||||
The host is a combination of multiple values found above:
|
||||
|
||||
- The local IP address
|
||||
- The port
|
||||
- If being used, the URL base
|
||||
|
||||
Combine all the values into the following format: `<IP address>:<port>/<URL base>`
|
||||
|
||||
For example, if Radarr is running on port `7878` on a machine that has the IP address `192.168.100.100` with a URL base set to `/radarr`, the host is: `http://192.168.100.100:7878/radarr`. If it had no URL base set, it would be `http://192.168.100.100:7878`.
|
||||
|
||||
#### API Key
|
||||
|
||||
The API key is copied from Radarr's web GUI, by going to Settings -> General and finding the API key value.
|
||||
|
||||
#### Custom Headers
|
||||
|
||||
Custom headers allows users to attach custom request headers to each API call that is made. This is typically an advanced feature, and is not necessary in most network configurations.
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
title: SABnzbd
|
||||
description: How to configure and add SABnzbd to LunaSea
|
||||
---
|
||||
|
||||
# SABnzbd
|
||||
|
||||
> Coming soon!
|
||||
@@ -1,64 +0,0 @@
|
||||
---
|
||||
title: Sonarr
|
||||
description: How to configure and add Sonarr to LunaSea
|
||||
---
|
||||
|
||||
# Sonarr
|
||||
|
||||
Adding your Sonarr instance to LunaSea only requires a few steps to get going!
|
||||
|
||||
> This documentation only covers adding Sonarr to LunaSea via local area network (LAN) connections, and does not cover exposing Sonarr externally and connecting remotely.
|
||||
|
||||
## Preparation
|
||||
|
||||
#### Find Your Local Area Network IP Address
|
||||
|
||||
Finding your local area network IP address of the machine running Sonarr is the first step to get setup. To find your local IP address, please look at the following guides:
|
||||
|
||||
- [Linux](https://ubuntuhandbook.org/index.php/2020/07/find-ip-address-ubuntu-20-04/)
|
||||
- [macOS](https://osxdaily.com/2010/11/21/find-ip-address-mac/)
|
||||
- [Windows](https://support.microsoft.com/en-us/windows/find-your-ip-address-in-windows-f21a9bbc-c582-55cd-35e0-73431160a1b9)
|
||||
|
||||
If you are running a different operating system, you can use any search engine to look up "Find local IP address on \<your operating system\>" to typically find tons of guides for any platform.
|
||||
|
||||
> It is recommended to set your host machine's IP address to be statically assigned instead of dynamic/DHCP. This ensures that the IP address will not change through machine or network reboots.
|
||||
|
||||
#### Check What Port is Being Used
|
||||
|
||||
If using the default installation, Sonarr runs on port **8989**. In most cases, this port is not changed and does not need to be changed.
|
||||
|
||||
The simplest way to check is to go to Sonarr's web GUI, go to Settings -> General and note the value entered into "Port Number".
|
||||
|
||||
#### Ensure Sonarr is Accessible Across Your Network
|
||||
|
||||
To ensure that Sonarr is accessible across your local network, check the following:
|
||||
|
||||
- In Sonarr's web GUI, go to Settings -> General and enable advanced settings, then ensure that the "Bind Address" is set to `*`
|
||||
- Check any enabled firewalls to confirm that the port running Sonarr is not being blocked
|
||||
- _(Windows Only)_: Ensure that Sonarr has been run as administrator at least once
|
||||
|
||||
#### Check If You Are Using a URL Base
|
||||
|
||||
In Sonarr's web GUI, go to Settings -> General and check the value of "URL Base". If you have nothing set, you can move on. If you do have a value set, please remember the set value as it will be necessary when setting the host within LunaSea.
|
||||
|
||||
## Connecting in LunaSea
|
||||
|
||||
#### Host
|
||||
|
||||
The host is a combination of multiple values found above:
|
||||
|
||||
- The local IP address
|
||||
- The port
|
||||
- If being used, the URL base
|
||||
|
||||
Combine all the values into the following format: `<IP address>:<port>/<URL base>`
|
||||
|
||||
For example, if Sonarr is running on port `8989` on a machine that has the IP address `192.168.100.100` with a URL base set to `/sonarr`, the host is: `http://192.168.100.100:8989/sonarr`. If it had no URL base set, it would be `http://192.168.100.100:8989`.
|
||||
|
||||
#### API Key
|
||||
|
||||
The API key is copied from Sonarr's web GUI, by going to Settings -> General and finding the API key value.
|
||||
|
||||
#### Custom Headers
|
||||
|
||||
Custom headers allows users to attach custom request headers to each API call that is made. This is typically an advanced feature, and is not necessary in most network configurations.
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
title: Tautulli
|
||||
description: How to configure and add Tautulli to LunaSea
|
||||
---
|
||||
|
||||
# Tautulli
|
||||
|
||||
> Coming soon!
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
title: Wake on LAN
|
||||
description: How to configure and add Wake on LAN to LunaSea
|
||||
---
|
||||
|
||||
# Wake on LAN
|
||||
|
||||
> Coming soon!
|
||||
@@ -1,125 +0,0 @@
|
||||
---
|
||||
title: Custom Notifications
|
||||
description: Setting up custom webhook-based push notifications
|
||||
---
|
||||
|
||||
# Custom Notifications
|
||||
|
||||
## Preparation
|
||||
|
||||
> Custom notifications are considered an advanced feature, and requires basic knowledge of JSON syntax and creating your own scripts/tools to handle sending the payloads.
|
||||
|
||||
1. Read through the main [Notifications](/lunasea/notifications) page
|
||||
2. Copy your device-based or user-based webhook URL from LunaSea
|
||||
|
||||
You will need to slightly modify the webhook URL you have copied from any of the modules. Simply replace the name of the module within the webhook URL to custom and you're good to go!
|
||||
|
||||
Alternatively, you can copy the content of the URL after the last slash (after `device/` or `user/`) to obtain your Firebase device or user identifier.
|
||||
|
||||
## Device-Based
|
||||
|
||||
Send a custom notification using a device token to a single device running LunaSea.
|
||||
|
||||
<Tabs
|
||||
defaultValue="endpoint"
|
||||
values={[
|
||||
{ label: "Endpoint", value: "endpoint" },
|
||||
{ label: "JSON Body Schema", value: "json_body_schema" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="endpoint">
|
||||
```bash
|
||||
POST https://notify.lunasea.app/v1/custom/device/:device_id
|
||||
```
|
||||
|
||||
`device_id`: Firebase device identifier
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="json_body_schema">
|
||||
```json
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"title": "Device-Based Custom Notification",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"description": "The notification title"
|
||||
},
|
||||
"body": {
|
||||
"type": "string",
|
||||
"description": "The notification body content"
|
||||
},
|
||||
"image": {
|
||||
"type": "string",
|
||||
"description": "A publicly accessible image to be attached to the notification"
|
||||
}
|
||||
},
|
||||
"required": ["title", "body"]
|
||||
}
|
||||
```
|
||||
|
||||
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## User-Based
|
||||
|
||||
<Tabs
|
||||
defaultValue="endpoint"
|
||||
values={[
|
||||
{ label: "Endpoint", value: "endpoint" },
|
||||
{ label: "JSON Body Schema", value: "json_body_schema" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="endpoint">
|
||||
```bash
|
||||
POST https://notify.lunasea.app/v1/custom/user/:user_id
|
||||
```
|
||||
|
||||
`user_id`: Firebase user identifier
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="json_body_schema">
|
||||
```json
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"title": "User-Based Custom Notification",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"type": "string",
|
||||
"description": "The notification title"
|
||||
},
|
||||
"body": {
|
||||
"type": "string",
|
||||
"description": "The notification body content"
|
||||
},
|
||||
"image": {
|
||||
"type": "string",
|
||||
"description": "A publicly accessible image to be attached to the notification"
|
||||
}
|
||||
},
|
||||
"required": ["title", "body"]
|
||||
}
|
||||
```
|
||||
|
||||
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
- Ensure that the required `title` parameter is a string type
|
||||
- If the type is not a string, the notification will fail
|
||||
- Sending no value or a null value will result in the title "Unknown Title" being used
|
||||
- Ensure that the required `body` parameter is a string type
|
||||
- If the type is not a string, the notification will fail
|
||||
- Sending no value or a null value will result in the body "Unknown Content" being used
|
||||
- If sending an image, ensure that the content is a valid URL
|
||||
- If the content is not a valid URL, the notification will fail
|
||||
- The URL must contain the protocol, `http://` or `https://`
|
||||
- The URL must be a direct link to the image and does not redirect
|
||||
- The URL must be publicly accessible, not requiring any authentication to access
|
||||
- If sending an image, the image must be a supported image type
|
||||
- Supported types include JPGs, PNGs, and animated GIFs
|
||||
@@ -1,92 +0,0 @@
|
||||
---
|
||||
title: Lidarr Notifications
|
||||
description: Setting up Lidarr for webhook-based push notifications
|
||||
---
|
||||
|
||||
# Lidarr Notifications
|
||||
|
||||
## Preparation
|
||||
|
||||
1. Read through the main [Notifications](/lunasea/notifications) page
|
||||
2. Copy your device-based or user-based webhook URL from LunaSea
|
||||
|
||||
## Setup the Webhook
|
||||
|
||||
In Lidarr's web GUI, head to Settings -> Connect, hit the "+" button to add a new connection and select "Webhook". Please follow each section below to setup the webhook:
|
||||
|
||||
<Tabs
|
||||
defaultValue="name"
|
||||
values={[
|
||||
{ label: "Name", value: "name" },
|
||||
{ label: "Triggers", value: "triggers" },
|
||||
{ label: "Tags", value: "tags" },
|
||||
{ label: "URL", value: "url" },
|
||||
{ label: "Method", value: "method" },
|
||||
{ label: "Username", value: "username" },
|
||||
{ label: "Password", value: "password" },
|
||||
]}
|
||||
>
|
||||
|
||||
<TabItem value="name">
|
||||
Select any name, for example "LunaSea".
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="triggers">
|
||||
Select which events should trigger a push notification. The following triggers are supported:
|
||||
|
||||
| Trigger | Supported? |
|
||||
| :---------------------: | :--------: |
|
||||
| On Grab | ✅ |
|
||||
| On Release Import | ✅ |
|
||||
| On Upgrade | ✅ |
|
||||
| On Download Failure | ❌ |
|
||||
| On Import Failure | ❌ |
|
||||
| On Rename | ✅ |
|
||||
| On Track Retag | ✅ |
|
||||
| On Application Update | ❌ |
|
||||
| On Health Issue | ❌ |
|
||||
| Include Health Warnings | ❌ |
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="tags">
|
||||
You can _optionally_ select a tag that must be attached to an artist for the webhook to get triggered.
|
||||
|
||||
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
|
||||
|
||||
If you want to receive notifications for all artists, leave the tags area empty.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="url">
|
||||
Paste the full device-based or user-based URL that was copied from LunaSea.
|
||||
|
||||
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Lidarr instance requires setting up multiple webhooks.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="method">
|
||||
Keep the method on `POST`. Changing the method to `PUT` will cause the webhooks to fail.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="username">
|
||||
The username field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
|
||||
|
||||
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
|
||||
>
|
||||
> Correctly setting up this field is critically important to get full deep-linking support.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="password">
|
||||
Leave the password field empty. Setting this field will currently have no effect.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
Once setup, close LunaSea and run the webhook test in Lidarr. You should receive a new notification letting you know that LunaSea is ready to receive Lidarr notifications!
|
||||
|
||||
## Example
|
||||
|
||||
An example Lidarr webhook can be seen below:
|
||||
|
||||
- No tags are set for this webhook, meaning all artists will trigger a notification
|
||||
- This is a user-based notification webhook, meaning it will be sent to all devices that are linked to the user ID `1234567890`
|
||||
- The webhook is associated with the profile named `My Profile`
|
||||
|
||||

|
||||
@@ -1,67 +0,0 @@
|
||||
---
|
||||
title: Overseerr Notifications
|
||||
description: Setting up Overseerr for webhook-based push notifications
|
||||
---
|
||||
|
||||
# Overseerr Notifications
|
||||
|
||||
## Preparation
|
||||
|
||||
1. Read through the main [Notifications](/lunasea/notifications) page
|
||||
2. Copy your device-based or user-based webhook URL from LunaSea
|
||||
|
||||
## Setup the Webhook
|
||||
|
||||
In Overseerr's web GUI, head to Settings -> Notifications -> LunaSea. Ensure that the agent is enabled, then follow each section below to setup the webhook:
|
||||
|
||||
<Tabs
|
||||
defaultValue="webhook_url"
|
||||
values={[
|
||||
{ label: "Webhook URL", value: "webhook_url" },
|
||||
{ label: "Profile Name", value: "profile_name" },
|
||||
{ label: "Notification Types", value: "notification_types" },
|
||||
]}
|
||||
>
|
||||
|
||||
<TabItem value="webhook_url">
|
||||
Paste the full device-based or user-based URL that was copied from LunaSea.
|
||||
|
||||
Overseerr currently only supports 1 LunaSea notification agent, which means you can only setup a single user-based or device-based notification.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="profile_name">
|
||||
The profile name field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
|
||||
|
||||
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
|
||||
>
|
||||
> Correctly setting up this field is critically important to get full deep-linking support.
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="notification_types">
|
||||
Select which events should trigger a push notification. The following triggers are supported:
|
||||
|
||||
| Trigger | Supported? |
|
||||
| :----------------------------: | :--------: |
|
||||
| Request Pending Approval | ✅ |
|
||||
| Request Automatically Approved | ✅ |
|
||||
| Request Approved | ✅ |
|
||||
| Request Declined | ✅ |
|
||||
| Request Available | ✅ |
|
||||
| Request Processing Failed | ✅ |
|
||||
| Issue Reported | ✅ |
|
||||
| Issue Comment | ✅ |
|
||||
| Issue Resolved | ✅ |
|
||||
| Issue Reopened | ✅ |
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
Once setup, close LunaSea and run the webhook test in Overseerr. You should receive a new notification letting you know that LunaSea is ready to receive Overseerr notifications!
|
||||
|
||||
## Example
|
||||
|
||||
An example Overseerr webhook can be seen below:
|
||||
|
||||
- This is a user-based notification webhook, meaning it will be sent to all devices that are linked to the user ID `1234567890`
|
||||
- The webhook is associated with the profile named `My Profile`
|
||||
|
||||

|
||||