Compare commits

...
Author SHA1 Message Date
Armin Schrenk c615ad2cd7 Merge branch 'develop' into feature/exe-cache-msis 2024-02-28 13:25:25 +01:00
Armin Schrenk 414465371b [ci skip] refactor win-exe workflow
* only publish, if msi and exe succeed
* make stable release jobs dependent of publish
2024-02-28 13:19:54 +01:00
Armin Schrenk 91a4db388f cache also cryptomator and winfsp msi 2024-02-28 12:51:30 +01:00
Armin Schrenk feed72a729 [ci skip] fix flathub workflow 2024-02-27 22:52:56 +01:00
Armin Schrenk bca20a7a66 [ci skip] seperate av whitelisting into own workflow to be able to upload assets on failure 2024-02-27 18:55:14 +01:00
Armin Schrenk a38377baaa [ci skip] Merge branch 'main' into develop 2024-02-27 12:53:30 +01:00
Armin Schrenk 61a45fc738 Merge branch 'release/1.12.3' 2024-02-27 12:52:00 +01:00
Armin Schrenk 3a65b5551f adjust release check to changed metainfo file
references fcb940e29c
2024-02-27 12:48:36 +01:00
Armin Schrenk 94ed5c18b8 damnn merge from develop to release 2024-02-27 12:41:06 +01:00
Armin Schrenk a559483d86 finalize 1.12.3 2024-02-27 12:38:52 +01:00
Armin Schrenk 3acdef1dd0 Merge branch 'develop' into release/1.12.3 2024-02-27 12:37:13 +01:00
Armin Schrenk def6f8ab95 [ci skip] clean up 2024-02-27 12:35:55 +01:00
Armin Schrenk 11ba1f3ddc revert 1ab73be1f4 and 2d968eac8c 2024-02-27 12:32:37 +01:00
CryptobotandGitHub 3228f2cf5f New Crowdin updates (#3343)
New translations strings.properties

Chinese Simplified; Dutch; French; Japanese; Portuguese; Russian; Slovak; Swedish; 

[ci skip]
2024-02-27 10:23:56 +01:00
Armin Schrenk 9c4f7ad79d [ci skip] remove unknown env/style combination from appstream metadata 2024-02-26 17:41:18 +01:00
Armin Schrenk 3bd57d162b [ci skip] update appstream metadata 2024-02-26 17:37:04 +01:00
dependabot[bot]andGitHub 5ea73a5a8d Bump the java-production-dependencies group with 1 update (#3347) 2024-02-26 09:50:42 +00:00
Armin Schrenk 38670838c7 [ci skip] Drop yq usage 2024-02-26 10:15:25 +01:00
Armin Schrenk 3e0b84dbce [ci skip] fix pr body description & reduce log noise 2024-02-23 17:39:38 +01:00
Armin Schrenk 2302db6206 [ci skip] fix create pr command in flathub job 2024-02-23 17:27:48 +01:00
Armin Schrenk a94bf99660 [ci skip] automatically set up tracking branch on push 2024-02-23 17:13:11 +01:00
Armin Schrenk 0c5ce353b1 [ci skip] use github.actor 2024-02-23 17:05:26 +01:00
Armin Schrenk b3ce777a42 [ci skip] configure git in flathub job 2024-02-23 16:29:18 +01:00
Armin Schrenk 3085df3397 [ci skip] further fixes:
* remove yq after update
* set token for git
2024-02-23 16:14:21 +01:00
Armin Schrenk fb740b605f add missing quote char [ci skip] 2024-02-23 15:57:06 +01:00
Armin Schrenk 6a74d9f3b2 use same varaible in get-version job 2024-02-23 15:53:22 +01:00
Armin Schrenk 1c7dffb63f Add ci job to create flathub PR on release [ci skip] 2024-02-23 15:44:48 +01:00
Jan-Peter Klein a213f073b1 enhance screen selection by adding primary fallback 2024-02-23 10:51:23 +01:00
Armin Schrenk 1ab73be1f4 fixes #3344 2024-02-22 16:11:54 +01:00
Armin Schrenk 8412871090 apply proper formatting and state to error dialog 2024-02-22 12:23:43 +01:00
Armin Schrenk fa63f3ca67 Reset develop to SNAPSHOT version 2024-02-22 12:21:00 +01:00
Armin Schrenk dbc0f52481 fix not-uploading artifacts on release 2024-02-21 22:04:35 +01:00
Armin Schrenk b8cd1caeac also upload asc file as artifact for mac build 2024-02-21 13:09:14 +01:00
Armin Schrenk 43c25b6d97 fix ci
references 84732337ca
2024-02-21 12:53:01 +01:00
Armin Schrenk e44bc09074 Merge branch 'develop' into release/1.12.3 2024-02-21 12:20:36 +01:00
CryptobotandGitHub 7b02f78ef5 New Crowdin updates (#3342)
New translations strings.properties

Arabic; Bashkir; Belarusian; Bengali; Bosnian; Bulgarian; Catalan; Chinese Simplified; Chinese Traditional; Chinese Traditional, Hong Kong; Croatian; Czech; Danish; Dutch; Filipino; Finnish; French; Galician; German; Greek; Hebrew; Hindi; Hungarian; Indonesian; Italian; Japanese; Korean; Latvian; Macedonian; Marathi; Norwegian Bokmal; Norwegian Nynorsk; Persian; Polish; Portuguese; Portuguese, Brazilian; Punjabi; Romanian; Russian; Serbian (Cyrillic); Serbian (Latin); Sinhala; Slovak; Slovenian; Spanish; Swahili, Tanzania; Swedish; Tamil; Telugu; Thai; Turkish; Ukrainian; Vietnamese; 

[ci skip]
2024-02-21 12:13:24 +01:00
Armin Schrenk f7e8a4d1e6 prepare 1.12.3 2024-02-20 18:13:01 +01:00
Armin Schrenk 664375d692 fix wrong method name 2024-02-20 18:06:55 +01:00
Armin SchrenkandGitHub 2d968eac8c Merge pull request #3336 from cryptomator/feature/3272-vaultid-as-mountpoint
Feature: For FUSE-Ts default mountpoint use vault id as mountpoint
2024-02-20 17:34:09 +01:00
Armin Schrenk 542d2fcfe1 only create winget PR for stable versions [ci skip] 2024-02-19 16:42:42 +01:00
mindmonkandGitHub 144e929896 Merge pull request #3335 from cryptomator/feature/center-unlock-dialog-on-mainstage
Center Unlock Success Dialog on Main Application Window
2024-02-19 15:05:28 +01:00
Armin Schrenk 803748f78d update code-sign-action [ci skip] 2024-02-19 14:46:58 +01:00
Armin Schrenk 3410e7243a Update minimal required macOS version for dmg
due to javafx update in 7d281e2878
2024-02-19 13:02:05 +01:00
Armin Schrenk 84732337ca removed GTK-2 support
due to javafx update in 7d281e2878
2024-02-19 12:17:11 +01:00
dependabot[bot]andGitHub c527808710 Bump the java-production-dependencies group with 4 updates (#3340) 2024-02-19 09:35:25 +00:00
Armin Schrenk 99c89dbf39 fix possible null comparsion 2024-02-19 10:22:22 +01:00
Jan-Peter Klein 829b64cd3d dialog centers on main app screen if mainWindow is hidden 2024-02-19 08:55:16 +01:00
Jan-Peter Klein f4007267fb simplified the code and removed the function 2024-02-16 17:31:20 +01:00
Armin Schrenk c82a0bfaf3 cleanup 2024-02-16 17:09:05 +01:00
Armin SchrenkandGitHub 251ad65344 Merge pull request #3327 from cryptomator/feature/3233-load-presets-background
Feature: Load LocationPresets in background and show indicator in UI
2024-02-16 16:21:01 +01:00
Jan-Peter Klein 155ba4607b introduced functionality to center the unlock screen within the main application window 2024-02-16 15:24:52 +01:00
Armin Schrenk 62f6865d3e cleanup created directories after mount
fails silently
2024-02-14 10:30:51 +01:00
Armin Schrenk ffb3290248 Merge branch 'develop' into feature/3272-vaultid-as-mountpoint 2024-02-14 10:29:30 +01:00
Armin Schrenk a013ae3d91 [ci skip] change mountPointDir for macOS-Dev-run profile
aligns production build
2024-02-14 10:29:14 +01:00
Armin Schrenk 19a954e677 use correct mountProvider 2024-02-14 10:05:56 +01:00
Armin Schrenk f262980acc closes #3272 2024-02-13 16:37:46 +01:00
Armin Schrenk 3b3aa18c92 fixes #3233
this time with gc prevention of a binding
2024-02-13 00:55:07 +01:00
Armin Schrenk c7b8bc89c2 also don't bother upload to av scan, if not published 2024-02-12 13:18:17 +01:00
Armin Schrenk 5fc981abd3 prevent automatic overwrite of already released files 2024-02-12 13:16:45 +01:00
Armin Schrenk 36ec1a5ebc update windows update url [ci skip] 2024-02-09 18:37:19 +01:00
Armin Schrenk be4aad4168 set default value for Windows debug flag 2024-02-09 17:03:22 +01:00
Armin Schrenk fcb940e29c update release section of appstream metainfo file [ci skip] 2024-02-09 14:52:10 +01:00
Armin Schrenk 4f3ca2a6c4 fix appimage build script [ci skip] 2024-02-09 12:56:33 +01:00
Armin Schrenk 27cd34bee0 Merge branch 'main' into develop [ci skip] 2024-02-09 12:53:16 +01:00
76 changed files with 1315 additions and 575 deletions
+1 -6
View File
@@ -86,11 +86,6 @@ jobs:
--no-man-pages --no-man-pages
--strip-debug --strip-debug
--compress zip-0 --compress zip-0
- name: Prepare additional launcher
run: envsubst '${SEMVER_STR} ${REVISION_NUM}' < dist/linux/launcher-gtk2.properties > launcher-gtk2.properties
env:
SEMVER_STR: ${{ needs.get-version.outputs.semVerStr }}
REVISION_NUM: ${{ needs.get-version.outputs.revNum }}
- name: Run jpackage - name: Run jpackage
run: > run: >
${JAVA_HOME}/bin/jpackage ${JAVA_HOME}/bin/jpackage
@@ -173,7 +168,7 @@ jobs:
cryptomator-*.asc cryptomator-*.asc
if-no-files-found: error if-no-files-found: error
- name: Publish AppImage on GitHub Releases - name: Publish AppImage on GitHub Releases
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/') && github.event.action == 'published'
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
with: with:
fail_on_unmatched_files: true fail_on_unmatched_files: true
+40
View File
@@ -0,0 +1,40 @@
name: AntiVirus Whitelisting
on:
workflow_call:
inputs:
url:
description: "Url to the file to upload"
required: true
type: string
workflow_dispatch:
inputs:
url:
description: "Url to the file to upload"
required: true
type: string
jobs:
allowlist:
name: Anti Virus Allowlisting
runs-on: ubuntu-latest
steps:
- name: Download file
run: |
curl --remote-name ${{ inputs.url }} -L
- name: Upload to Kaspersky
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
protocol: ftps
server: allowlist.kaspersky-labs.com
port: 990
username: ${{ secrets.ALLOWLIST_KASPERSKY_USERNAME }}
password: ${{ secrets.ALLOWLIST_KASPERSKY_PASSWORD }}
- name: Upload to Avast
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
protocol: ftp
server: whitelisting.avast.com
port: 21
username: ${{ secrets.ALLOWLIST_AVAST_USERNAME }}
password: ${{ secrets.ALLOWLIST_AVAST_PASSWORD }}
+2 -3
View File
@@ -44,7 +44,7 @@ jobs:
run: | run: |
sudo add-apt-repository ppa:coffeelibs/openjdk sudo add-apt-repository ppa:coffeelibs/openjdk
sudo apt-get update sudo apt-get update
sudo apt-get install debhelper devscripts dput coffeelibs-jdk-${{ env.COFFEELIBS_JDK }}=${{ env.COFFEELIBS_JDK_VERSION }} libgtk2.0-0 sudo apt-get install debhelper devscripts dput coffeelibs-jdk-${{ env.COFFEELIBS_JDK }}=${{ env.COFFEELIBS_JDK_VERSION }}
- name: Setup Java - name: Setup Java
uses: actions/setup-java@v4 uses: actions/setup-java@v4
with: with:
@@ -142,10 +142,9 @@ jobs:
- name: Publish on PPA - name: Publish on PPA
if: inputs.dput if: inputs.dput
run: dput ppa:sebastian-stenzel/cryptomator-beta cryptomator_*_source.changes run: dput ppa:sebastian-stenzel/cryptomator-beta cryptomator_*_source.changes
# If ref is a tag, also upload to GitHub Releases: # If ref is a tag, also upload to GitHub Releases:
- name: Publish Debian package on GitHub Releases - name: Publish Debian package on GitHub Releases
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/') && inputs.dput
env: env:
GITHUB_TOKEN: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }} GITHUB_TOKEN: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }}
run: | run: |
+88
View File
@@ -0,0 +1,88 @@
name: Create PR for flathub
on:
release:
types: [published]
workflow_dispatch:
inputs:
tag:
description: 'Release tag'
required: true
jobs:
get-version:
uses: ./.github/workflows/get-version.yml
with:
version: ${{ inputs.tag }}
tarball:
name: Determines tarball url and compute checksum
runs-on: ubuntu-latest
needs: [get-version]
if: github.event_name == 'workflow_dispatch' || needs.get-version.outputs.versionType == 'stable'
outputs:
url: ${{ steps.url.outputs.url}}
sha512: ${{ steps.sha512.outputs.sha512}}
steps:
- name: Determine tarball url
id: url
run: |
URL="";
if [[ -n "${{ inputs.tag }}" ]]; then
URL="https://github.com/cryptomator/cryptomator/archive/refs/tags/${{ inputs.tag }}.tar.gz"
else
URL="https://github.com/cryptomator/cryptomator/archive/refs/tags/${{ github.event.release.tag_name }}.tar.gz"
fi
echo "url=${URL}" >> "$GITHUB_OUTPUT"
- name: Download source tarball and compute checksum
id: sha512
run: |
curl --silent --fail-with-body -L -H "Accept: application/vnd.github+json" ${{ steps.url.outputs.url }} --output cryptomator.tar.gz
TARBALL_SHA512=$(sha512sum cryptomator.tar.gz | cut -d ' ' -f1)
echo "sha512=${TARBALL_SHA512}" >> "$GITHUB_OUTPUT"
flathub:
name: Create PR for flathub
runs-on: ubuntu-latest
needs: [tarball, get-version]
env:
FLATHUB_PR_URL: tbd
steps:
- uses: actions/checkout@v4
with:
repository: 'flathub/org.cryptomator.Cryptomator'
token: ${{ secrets.CRYPTOBOT_WINGET_TOKEN }}
- name: Checkout release branch
run: |
git checkout -b release/${{ needs.get-version.outputs.semVerStr }}
- name: Update build file
run: |
sed -i -e 's/VERSION: [0-9]\+\.[0-9]\+\.[0-9]\+.*/VERSION: ${{ needs.get-version.outputs.semVerStr }}/g' org.cryptomator.Cryptomator.yaml
sed -i -e 's/sha512: [0-9A-Za-z_\+-]\{128\} #CRYPTOMATOR/sha512: ${{ needs.tarball.outputs.sha512 }} #CRYPTOMATOR/g' org.cryptomator.Cryptomator.yaml
sed -i -e 's;url: https://github.com/cryptomator/cryptomator/archive/refs/tags/[^[:blank:]]\+;url: ${{ needs.tarball.outputs.url }};g' org.cryptomator.Cryptomator.yaml
- name: Commit and push
run: |
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor_id }}+${{ github.actor }}@users.noreply.github.com"
git config push.autoSetupRemote true
git stage .
git commit -m "Prepare release ${{needs.get-version.outputs.semVerStr}}"
git push
- name: Create pull request
run: |
echo "> [!IMPORTANT]\n> Todos:\n> - [ ] Update maven dependencies\n> - [ ] Check for JDK update\n> - [ ] Check for JFX update" > pr_body.md
PR_URL=$(gh pr create --title "Release ${{ needs.get-version.outputs.semVerStr }}" --body-file pr_body.md)
echo "FLATHUB_PR_URL=$PR_URL" >> "$GITHUB_ENV"
env:
GH_TOKEN: ${{ secrets.CRYPTOBOT_WINGET_TOKEN }}
- name: Slack Notification
uses: rtCamp/action-slack-notify@v2
if: github.event_name == 'release'
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_USERNAME: 'Cryptobot'
SLACK_ICON: false
SLACK_ICON_EMOJI: ':bot:'
SLACK_CHANNEL: 'cryptomator-desktop'
SLACK_TITLE: "Flathub release PR created for ${{ github.event.repository.name }} ${{ github.event.release.tag_name }} created."
SLACK_MESSAGE: "See <${{ env.FLATHUB_PR_URL }}|PR> on how to proceed.>."
SLACK_FOOTER: false
MSG_MINIMAL: true
+2 -2
View File
@@ -50,7 +50,7 @@ jobs:
if [[ $GITHUB_REF =~ refs/tags/[0-9]+\.[0-9]+\.[0-9]+.* ]]; then if [[ $GITHUB_REF =~ refs/tags/[0-9]+\.[0-9]+\.[0-9]+.* ]]; then
SEM_VER_STR=${GITHUB_REF##*/} SEM_VER_STR=${GITHUB_REF##*/}
elif [[ "${{ inputs.version }}" =~ [0-9]+\.[0-9]+\.[0-9]+.* ]]; then elif [[ "${{ inputs.version }}" =~ [0-9]+\.[0-9]+\.[0-9]+.* ]]; then
SEM_VER_STR="${{ github.event.inputs.version }}" SEM_VER_STR="${{ inputs.version }}"
else else
SEM_VER_STR=`mvn help:evaluate -Dexpression=project.version -q -DforceStdout` SEM_VER_STR=`mvn help:evaluate -Dexpression=project.version -q -DforceStdout`
fi fi
@@ -73,4 +73,4 @@ jobs:
- name: Validate Version - name: Validate Version
uses: skymatic/semver-validation-action@v2 uses: skymatic/semver-validation-action@v2
with: with:
version: ${{ steps.versions.outputs.semVerStr }} version: ${{ steps.versions.outputs.semVerStr }}
+4 -2
View File
@@ -253,10 +253,12 @@ jobs:
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: dmg-${{ matrix.output-suffix }} name: dmg-${{ matrix.output-suffix }}
path: Cryptomator-*.dmg path: |
Cryptomator-*.dmg
Cryptomator-*.asc
if-no-files-found: error if-no-files-found: error
- name: Publish dmg on GitHub Releases - name: Publish dmg on GitHub Releases
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/') && github.event.action == 'published'
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
with: with:
fail_on_unmatched_files: true fail_on_unmatched_files: true
+1 -1
View File
@@ -44,7 +44,7 @@ jobs:
fi fi
- name: Validate release in org.cryptomator.Cryptomator.metainfo.xml file - name: Validate release in org.cryptomator.Cryptomator.metainfo.xml file
run: | run: |
if ! grep -q "<release date=\".*\" version=\"${{ steps.validate-pom-version.outputs.semVerStr }}\"/>" dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml; then if ! grep -q "<release date=\".*\" version=\"${{ steps.validate-pom-version.outputs.semVerStr }}\">" dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml; then
echo "Release not set in dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml" echo "Release not set in dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml"
exit 1 exit 1
fi fi
+39 -58
View File
@@ -11,6 +11,7 @@ on:
isDebug: isDebug:
description: 'Build debug version with console output' description: 'Build debug version with console output'
type: boolean type: boolean
default: false
env: env:
@@ -170,7 +171,7 @@ jobs:
& $env:JAVA_HOME\bin\jmod.exe extract --dir jpackage-jmod "${env:JAVA_HOME}\jmods\jdk.jpackage.jmod" & $env:JAVA_HOME\bin\jmod.exe extract --dir jpackage-jmod "${env:JAVA_HOME}\jmods\jdk.jpackage.jmod"
Get-ChildItem -Recurse -Path "jpackage-jmod" -File wixhelper.dll | Select-Object -Last 1 | Copy-Item -Destination "appdir" Get-ChildItem -Recurse -Path "jpackage-jmod" -File wixhelper.dll | Select-Object -Last 1 | Copy-Item -Destination "appdir"
- name: Codesign - name: Codesign
uses: skymatic/code-sign-action@v2 uses: skymatic/code-sign-action@v3
with: with:
certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }} certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }}
password: ${{ secrets.WIN_CODESIGN_P12_PW }} password: ${{ secrets.WIN_CODESIGN_P12_PW }}
@@ -219,7 +220,7 @@ jobs:
--win-menu --win-menu
--win-dir-chooser --win-dir-chooser
--win-shortcut-prompt --win-shortcut-prompt
--win-update-url "https:\\cryptomator.org" --win-update-url "https:\\cryptomator.org\downloads"
--win-menu-group Cryptomator --win-menu-group Cryptomator
--resource-dir dist/win/resources --resource-dir dist/win/resources
--license-file dist/win/resources/license.rtf --license-file dist/win/resources/license.rtf
@@ -228,7 +229,7 @@ jobs:
JP_WIXWIZARD_RESOURCES: ${{ github.workspace }}/dist/win/resources # requires abs path, used in resources/main.wxs JP_WIXWIZARD_RESOURCES: ${{ github.workspace }}/dist/win/resources # requires abs path, used in resources/main.wxs
JP_WIXHELPER_DIR: ${{ github.workspace }}\appdir JP_WIXHELPER_DIR: ${{ github.workspace }}\appdir
- name: Codesign MSI - name: Codesign MSI
uses: skymatic/code-sign-action@v2 uses: skymatic/code-sign-action@v3
with: with:
certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }} certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }}
password: ${{ secrets.WIN_CODESIGN_P12_PW }} password: ${{ secrets.WIN_CODESIGN_P12_PW }}
@@ -253,15 +254,6 @@ jobs:
Cryptomator-*.msi Cryptomator-*.msi
Cryptomator-*.asc Cryptomator-*.asc
if-no-files-found: error if-no-files-found: error
- name: Publish .msi on GitHub Releases
if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@v1
with:
fail_on_unmatched_files: true
token: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }}
files: |
*.msi
*.asc
build-exe: build-exe:
name: Build .exe installer name: Build .exe installer
@@ -325,7 +317,7 @@ jobs:
-ib installer/unsigned/Cryptomator-Installer.exe -ib installer/unsigned/Cryptomator-Installer.exe
-o tmp/engine.exe -o tmp/engine.exe
- name: Codesign burn engine - name: Codesign burn engine
uses: skymatic/code-sign-action@v2 uses: skymatic/code-sign-action@v3
with: with:
certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }} certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }}
password: ${{ secrets.WIN_CODESIGN_P12_PW }} password: ${{ secrets.WIN_CODESIGN_P12_PW }}
@@ -339,7 +331,7 @@ jobs:
-ab tmp/engine.exe installer/unsigned/Cryptomator-Installer.exe -ab tmp/engine.exe installer/unsigned/Cryptomator-Installer.exe
-o installer/Cryptomator-Installer.exe -o installer/Cryptomator-Installer.exe
- name: Codesign EXE - name: Codesign EXE
uses: skymatic/code-sign-action@v2 uses: skymatic/code-sign-action@v3
with: with:
certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }} certificate: ${{ secrets.WIN_CODESIGN_P12_BASE64 }}
password: ${{ secrets.WIN_CODESIGN_P12_PW }} password: ${{ secrets.WIN_CODESIGN_P12_PW }}
@@ -364,59 +356,48 @@ jobs:
Cryptomator-*.exe Cryptomator-*.exe
Cryptomator-*.asc Cryptomator-*.asc
if-no-files-found: error if-no-files-found: error
publish:
name: Publish installers to the github release
if: startsWith(github.ref, 'refs/tags/') && github.event.action == 'published'
runs-on: ubuntu-latest
needs: [build-msi, build-exe]
outputs:
download-url-msi: ${{ fromJSON(steps.publish.outputs.assets)[0].browser_download_url }}
download-url-exe: ${{ fromJSON(steps.publish.outputs.assets)[1].browser_download_url }}
steps:
- name: Download installers
uses: actions/download-artifact@v4
with:
merge-multiple: true
- name: Publish .msi on GitHub Releases - name: Publish .msi on GitHub Releases
if: startsWith(github.ref, 'refs/tags/') id: publish
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
with: with:
fail_on_unmatched_files: true fail_on_unmatched_files: true
token: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }} token: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }}
# do not change ordering of filelist, required for correct job output
files: | files: |
Cryptomator-*.exe *.msi
Cryptomator-*.asc *.exe
*.asc
allowlist-msi:
uses: ./.github/workflows/av-whitelist.yml
needs: [publish]
with:
url: ${{ needs.publish.outputs.download-url-msi }}
allowlist-exe:
uses: ./.github/workflows/av-whitelist.yml
needs: [publish]
with:
url: ${{ needs.publish.outputs.download-url-exe }}
allowlist:
name: Anti Virus Allowlisting
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
needs: [build-msi, build-exe]
steps:
- name: Download .msi
uses: actions/download-artifact@v4
with:
name: msi
path: msi
- name: Download .exe
uses: actions/download-artifact@v4
with:
name: exe
path: exe
- name: Collect files
run: |
mkdir files
cp msi/*.msi files
cp exe/*.exe files
- name: Upload to Kaspersky
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
protocol: ftps
server: allowlist.kaspersky-labs.com
port: 990
username: ${{ secrets.ALLOWLIST_KASPERSKY_USERNAME }}
password: ${{ secrets.ALLOWLIST_KASPERSKY_PASSWORD }}
local-dir: files/
- name: Upload to Avast
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
protocol: ftp
server: whitelisting.avast.com
port: 21
username: ${{ secrets.ALLOWLIST_AVAST_USERNAME }}
password: ${{ secrets.ALLOWLIST_AVAST_PASSWORD }}
local-dir: files/
notify-winget: notify-winget:
name: Notify for winget-release name: Notify for winget-release
if: startsWith(github.ref, 'refs/tags/') if: needs.get-version.outputs.versionType == 'stable'
needs: [build-msi] needs: [publish, get-version]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Slack Notification - name: Slack Notification
+1 -1
View File
@@ -5,7 +5,7 @@
</envs> </envs>
<option name="MAIN_CLASS_NAME" value="org.cryptomator.launcher.Cryptomator" /> <option name="MAIN_CLASS_NAME" value="org.cryptomator.launcher.Cryptomator" />
<module name="cryptomator" /> <module name="cryptomator" />
<option name="VM_PARAMETERS" value="-Dapple.awt.enableTemplateImages=true -Dcryptomator.settingsPath=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/settings.json&quot; -Dcryptomator.p12Path=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/key.p12&quot; -Dcryptomator.ipcSocketPath=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/ipc.socket&quot; -Dcryptomator.logDir=&quot;@{userhome}/Library/Logs/Cryptomator-Dev&quot; -Dcryptomator.pluginDir=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/Plugins&quot; -Dcryptomator.mountPointsDir=&quot;@{userhome}/Cryptomator&quot; -Dcryptomator.showTrayIcon=true -Dcryptomator.integrationsMac.keychainServiceName=Cryptomator -Xss2m -Xmx512m -ea --enable-preview --enable-native-access=org.cryptomator.jfuse.mac" /> <option name="VM_PARAMETERS" value="-Dapple.awt.enableTemplateImages=true -Dcryptomator.settingsPath=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/settings.json&quot; -Dcryptomator.p12Path=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/key.p12&quot; -Dcryptomator.ipcSocketPath=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/ipc.socket&quot; -Dcryptomator.logDir=&quot;@{userhome}/Library/Logs/Cryptomator-Dev&quot; -Dcryptomator.pluginDir=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/Plugins&quot; -Dcryptomator.mountPointsDir=&quot;@{userhome}/Library/Application Support/Cryptomator-Dev/mnt&quot; -Dcryptomator.showTrayIcon=true -Dcryptomator.integrationsMac.keychainServiceName=Cryptomator -Xss2m -Xmx512m -ea --enable-preview --enable-native-access=org.cryptomator.jfuse.mac" />
<method v="2"> <method v="2">
<option name="Make" enabled="true" /> <option name="Make" enabled="true" />
</method> </method>
+5 -7
View File
@@ -38,14 +38,14 @@ fi
curl -L ${OPENJFX_URL} -o openjfx-jmods.zip curl -L ${OPENJFX_URL} -o openjfx-jmods.zip
echo "${OPENJFX_SHA} openjfx-jmods.zip" | shasum -a256 --check echo "${OPENJFX_SHA} openjfx-jmods.zip" | shasum -a256 --check
mkdir -p openjfx-jmods mkdir -p openjfx-jmods
unzip -j openjfx-jmods.zip \*/javafx.base.jmod \*/javafx.controls.jmod \*/javafx.fxml.jmod \*/javafx.graphics.jmod -d openjfx-jmods unzip -o -j openjfx-jmods.zip \*/javafx.base.jmod \*/javafx.controls.jmod \*/javafx.fxml.jmod \*/javafx.graphics.jmod -d openjfx-jmods
JMOD_VERSION=$(jmod describe openjfx-jmods/javafx.base.jmod | head -1) JMOD_VERSION=$(jmod describe ./openjfx-jmods/javafx.base.jmod | head -1)
JMOD_VERSION=${JMOD_VERSION#*@} JMOD_VERSION=${JMOD_VERSION#*@}
JMOD_VERSION=${JMOD_VERSION%%.*} JMOD_VERSION=${JMOD_VERSION%%.*}
POM_JFX_VERSION=$(mvn help:evaluate "-Dexpression=javafx.version" -q -DforceStdout) POM_JFX_VERSION=$(mvn help:evaluate "-Dexpression=javafx.version" -q -DforceStdout -B -f ../../../pom.xml)
POM_JFX_VERSION=${POM_JFX_VERSION#*@} POM_JFX_VERSION=${POM_JFX_VERSION#*@}
POM_JFX_VERSION=${POM_JFX_VERSION%%.*} POM_JFX_VERSION=${POM_JFX_VERSION%%.*}
if [ $POM_JFX_VERSION -ne $JMOD_VERSION_AMD64 ]; then if [ $POM_JFX_VERSION -ne $JMOD_VERSION ]; then
>&2 echo "Major JavaFX version in pom.xml (${POM_JFX_VERSION}) != amd64 jmod version (${JMOD_VERSION})" >&2 echo "Major JavaFX version in pom.xml (${POM_JFX_VERSION}) != amd64 jmod version (${JMOD_VERSION})"
exit 1 exit 1
fi fi
@@ -64,7 +64,6 @@ ${JAVA_HOME}/bin/jlink \
--compress zip-0 --compress zip-0
# create app dir # create app dir
envsubst '${SEMVER_STR} ${REVISION_NUM}' < ../launcher-gtk2.properties > launcher-gtk2.properties
${JAVA_HOME}/bin/jpackage \ ${JAVA_HOME}/bin/jpackage \
--verbose \ --verbose \
--type app-image \ --type app-image \
@@ -92,7 +91,6 @@ ${JAVA_HOME}/bin/jpackage \
--java-options "-Dcryptomator.showTrayIcon=true" \ --java-options "-Dcryptomator.showTrayIcon=true" \
--java-options "-Dcryptomator.integrationsLinux.trayIconsDir=\"@{appdir}/usr/share/icons/hicolor/symbolic/apps\"" \ --java-options "-Dcryptomator.integrationsLinux.trayIconsDir=\"@{appdir}/usr/share/icons/hicolor/symbolic/apps\"" \
--java-options "-Dcryptomator.buildNumber=\"appimage-${REVISION_NO}\"" \ --java-options "-Dcryptomator.buildNumber=\"appimage-${REVISION_NO}\"" \
--add-launcher cryptomator-gtk2=launcher-gtk2.properties \
--resource-dir ../resources --resource-dir ../resources
# transform AppDir # transform AppDir
@@ -128,5 +126,5 @@ chmod +x /tmp/appimagetool.AppImage
echo "" echo ""
echo "Done. AppImage successfully created: cryptomator-${SEMVER_STR}-${MACHINE_TYPE}.AppImage" echo "Done. AppImage successfully created: cryptomator-${SEMVER_STR}-${MACHINE_TYPE}.AppImage"
echo "" echo ""
echo >&2 "To clean up, run: rm -rf Cryptomator.AppDir appdir runtime squashfs-root openjfx-jmods; rm launcher-gtk2.properties /tmp/appimagetool.AppImage openjfx-jmods.zip" echo >&2 "To clean up, run: rm -rf Cryptomator.AppDir appdir runtime squashfs-root openjfx-jmods; rm /tmp/appimagetool.AppImage openjfx-jmods.zip"
echo "" echo ""
+110 -45
View File
@@ -5,26 +5,27 @@
<metadata_license>FSFAP</metadata_license> <metadata_license>FSFAP</metadata_license>
<project_license>GPL-3.0-or-later</project_license> <project_license>GPL-3.0-or-later</project_license>
<name>Cryptomator</name> <name>Cryptomator</name>
<summary>Multi-platform client-side encryption tool optimized for cloud storages</summary> <summary>Encryption made easy and optimized for the cloud</summary>
<description> <description>
<p> <p>
Cryptomator provides transparent, client-side encryption for your cloud. Protect your documents from unauthorized Cryptomator provides easy-to-use, transparent, client-side encryption for your cloud.
access. Cryptomator is free and open source software, so you can rest assured there are no backdoors. It protects your documents from unauthorized access and prying eyes, while you will still be able to view and edit your documents locally.
By not requiring any registration or account and performing all encryption locally, it gives you back control over your data and ensures your privacy.
Cryptomator is offered for all major platforms (including Android and iOS).
</p> </p>
<p> <p>
Cryptomator encrypts file contents and names using AES. Your passphrase is protected against bruteforcing attempts Cryptomator encrypts file contents and names using the widespread industry standard AES.
using scrypt. Directory structures get obfuscated. The only thing which cannot be encrypted without breaking your Your passphrase is protected against brute forcing attempts using scrypt.
cloud synchronization is the modification date of your files. Additionally, directory structures get obfuscated.
For more info about the Cryptomator encryption scheme, check out the online documentation.
</p> </p>
<p> <p>
Cryptomator is a free and open source software licensed under the GPLv3. This allows anyone to check our code. It Cryptomator is a free and open-source software licensed under the GPLv3.
is impossible to introduce backdoors for third parties. Also we cannot hide vulnerabilities. And the best thing This allows anyone to check our code.
is: There is no need to trust us, as you can control us! Thus, it is impossible to introduce backdoors for third parties or to hide vulnerabilities, so you do not need to trust Cryptomator.
</p> Also, vendor lock-ins are impossible.
<p> Even if we decided to stop development: The source code is already cloned by hundreds of other developers and development can be picked up by others.
Vendor lock-ins are impossible. Even if we decided to stop development: The source code is already cloned by
hundreds of other developers. As you don't need an account, you will never stand in front of locked doors.
</p> </p>
</description> </description>
@@ -42,7 +43,7 @@
</provides> </provides>
<screenshots> <screenshots>
<screenshot> <screenshot type="default">
<caption>Light theme</caption> <caption>Light theme</caption>
<image>https://user-images.githubusercontent.com/11858409/156986109-6e58f59c-8b8c-4501-b33b-bb1e33007cea.png</image> <image>https://user-images.githubusercontent.com/11858409/156986109-6e58f59c-8b8c-4501-b33b-bb1e33007cea.png</image>
</screenshot> </screenshot>
@@ -56,44 +57,108 @@
<url type="bugtracker">https://github.com/cryptomator/cryptomator/issues/</url> <url type="bugtracker">https://github.com/cryptomator/cryptomator/issues/</url>
<url type="donation">https://cryptomator.org/donate</url> <url type="donation">https://cryptomator.org/donate</url>
<url type="faq">https://community.cryptomator.org/c/kb/faq</url> <url type="faq">https://community.cryptomator.org/c/kb/faq</url>
<url type="help">https://community.cryptomator.org/</url> <url type="help">https://docs.cryptomator.org/</url>
<url type="translate">https://translate.cryptomator.org</url> <url type="translate">https://translate.cryptomator.org</url>
<developer_name>Skymatic GmbH</developer_name> <developer id="de.skymatic">
<name>Skymatic GmbH</name>
</developer>
<content_rating type="oars-1.1"> <content_rating type="oars-1.1">
<content_attribute id="social-info">mild</content_attribute> <!-- update checker connects to https://api.cryptomator.org/updates/latestVersion.json --> <content_attribute id="social-info">mild</content_attribute> <!-- update checker connects to https://api.cryptomator.org/updates/latestVersion.json -->
</content_rating> </content_rating>
<releases> <releases>
<release date="2024-02-09" version="1.12.2"/> <release date="2024-02-27" version="1.12.3">
<release date="2024-02-07" version="1.12.1"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.12.3</url>
<release date="2024-02-06" version="1.12.0"/> </release>
<release date="2023-12-05" version="1.11.1"/> <release date="2024-02-09" version="1.12.2">
<release date="2023-11-08" version="1.11.0"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.12.2</url>
<release date="2023-09-20" version="1.10.1"/> </release>
<release date="2023-09-11" version="1.10.0"/> <release date="2024-02-07" version="1.12.1">
<release date="2023-08-11" version="1.9.4"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.12.1</url>
<release date="2023-08-07" version="1.9.3"/> </release>
<release date="2023-07-24" version="1.9.2"/> <release date="2024-02-06" version="1.12.0">
<release date="2023-06-07" version="1.9.1"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.12.0</url>
<release date="2023-05-30" version="1.9.0"/> </release>
<release date="2023-04-25" version="1.8.0"/> <release date="2023-12-05" version="1.11.1">
<release date="2023-04-07" version="1.7.5"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.11.1</url>
<release date="2023-04-05" version="1.7.4"/> </release>
<release date="2023-03-15" version="1.7.3"/> <release date="2023-11-08" version="1.11.0">
<release date="2023-03-07" version="1.7.2"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.11.0</url>
<release date="2023-03-03" version="1.7.1"/> </release>
<release date="2023-03-01" version="1.7.0"/> <release date="2023-09-20" version="1.10.1">
<release date="2022-12-14" version="1.6.17"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.10.1</url>
<release date="2022-12-06" version="1.6.16"/> </release>
<release date="2022-10-06" version="1.6.15"/> <release date="2023-09-11" version="1.10.0">
<release date="2022-08-31" version="1.6.14"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.10.0</url>
<release date="2022-07-27" version="1.6.12"/> </release>
<release date="2022-07-26" version="1.6.11"/> <release date="2023-08-11" version="1.9.4">
<release date="2022-05-03" version="1.6.10"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.9.4</url>
<release date="2022-04-27" version="1.6.9"/> </release>
<release date="2022-03-30" version="1.6.8"/> <release date="2023-08-07" version="1.9.3">
<release date="2021-12-16" version="1.6.5"/> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.9.3</url>
</release>
<release date="2023-07-24" version="1.9.2">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.9.2</url>
</release>
<release date="2023-06-07" version="1.9.1">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.9.1</url>
</release>
<release date="2023-05-30" version="1.9.0">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.9.0</url>
</release>
<release date="2023-04-25" version="1.8.0">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.8.0</url>
</release>
<release date="2023-04-07" version="1.7.5">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.5</url>
</release>
<release date="2023-04-05" version="1.7.4">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.4</url>
</release>
<release date="2023-03-15" version="1.7.3">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.3</url>
</release>
<release date="2023-03-07" version="1.7.2">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.2</url>
</release>
<release date="2023-03-03" version="1.7.1">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.1</url>
</release>
<release date="2023-03-01" version="1.7.0">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.7.0</url>
</release>
<release date="2022-12-14" version="1.6.17">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.17</url>
</release>
<release date="2022-12-06" version="1.6.16">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.16</url>
</release>
<release date="2022-10-06" version="1.6.15">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.15</url>
</release>
<release date="2022-08-31" version="1.6.14">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.14</url>
</release>
<release date="2022-07-27" version="1.6.12">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.12</url>
</release>
<release date="2022-07-26" version="1.6.11">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.11</url>
</release>
<release date="2022-05-03" version="1.6.10">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.10</url>
</release>
<release date="2022-04-27" version="1.6.9">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.9</url>
</release>
<release date="2022-03-30" version="1.6.8">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.8</url>
</release>
<release date="2021-12-16" version="1.6.5">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.6.5</url>
</release>
</releases> </releases>
</component> </component>
+1 -1
View File
@@ -2,7 +2,7 @@ Source: cryptomator
Maintainer: Cryptobot <releases@cryptomator.org> Maintainer: Cryptobot <releases@cryptomator.org>
Section: utils Section: utils
Priority: optional Priority: optional
Build-Depends: debhelper (>=10), coffeelibs-jdk-21 (>= 21.0.2+12-0ppa1), libgtk2.0-0, libgtk-3-0, libxxf86vm1, libgl1 Build-Depends: debhelper (>=10), coffeelibs-jdk-21 (>= 21.0.2+12-0ppa1), libgtk-3-0, libxxf86vm1, libgl1
Standards-Version: 4.5.0 Standards-Version: 4.5.0
Homepage: https://cryptomator.org Homepage: https://cryptomator.org
Vcs-Git: https://github.com/cryptomator/cryptomator.git Vcs-Git: https://github.com/cryptomator/cryptomator.git
-14
View File
@@ -1,14 +0,0 @@
java-options=-Xss5m \
-Xmx256m \
--enable-preview \
--enable-native-access=org.cryptomator.jfuse.linux.amd64,org.cryptomator.jfuse.linux.aarch64 \
-Dfile.encoding=\"utf-8\" \
-Dcryptomator.appVersion=\"${SEMVER_STR}\" \
-Dcryptomator.logDir=\"~/.local/share/Cryptomator/logs\" \
-Dcryptomator.pluginDir=\"~/.local/share/Cryptomator/plugins\" \
-Dcryptomator.settingsPath=\"~/.config/Cryptomator/settings.json:~/.Cryptomator/settings.json\" \
-Dcryptomator.ipcSocketPath=\"~/.config/Cryptomator/ipc.socket\" \
-Dcryptomator.mountPointsDir=\"~/.local/share/Cryptomator/mnt\" \
-Dcryptomator.showTrayIcon=false \
-Dcryptomator.buildNumber=\"appimage-${REVISION_NUM}\" \
-Djdk.gtk.version=2
+1 -1
View File
@@ -3,7 +3,7 @@
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>LSMinimumSystemVersion</key> <key>LSMinimumSystemVersion</key>
<string>10.13.0</string> <string>11</string>
<key>CFBundleDevelopmentRegion</key> <key>CFBundleDevelopmentRegion</key>
<string>English</string> <string>English</string>
<key>CFBundleAllowMixedLocalizations</key> <key>CFBundleAllowMixedLocalizations</key>
+3
View File
@@ -31,6 +31,7 @@
</BootstrapperApplicationRef> </BootstrapperApplicationRef>
<Chain> <Chain>
<!-- WixBundleActions are defined in the BOOTSTRAPPER_ACTION enum, see https://github.com/wixtoolset/wix3/blob/473562c0c3904216f2b6963c0ad244a8cc41e9ee/src/burn/inc/IBootstrapperEngine.h#L15 -->
<ExePackage Cache="yes" PerMachine="yes" Permanent="no" <ExePackage Cache="yes" PerMachine="yes" Permanent="no"
SourceFile="resources\winfsp-uninstaller.exe" SourceFile="resources\winfsp-uninstaller.exe"
DisplayName="Removing outdated WinFsp Driver" DisplayName="Removing outdated WinFsp Driver"
@@ -51,11 +52,13 @@ Do you want to continue?&quot;" RepairArgument="-q" UninstallArgument="-s" />
</ExePackage> </ExePackage>
<!-- see https://wixtoolset.org/documentation/manual/v3/xsd/wix/msipackage.html--> <!-- see https://wixtoolset.org/documentation/manual/v3/xsd/wix/msipackage.html-->
<MsiPackage <MsiPackage
Cache="yes"
SourceFile="resources\Cryptomator.msi" SourceFile="resources\Cryptomator.msi"
CacheId="cryptomator-bundle-cryptomator" CacheId="cryptomator-bundle-cryptomator"
DisplayInternalUI="no" DisplayInternalUI="no"
Visible="no"/> Visible="no"/>
<MsiPackage <MsiPackage
Cache="yes"
SourceFile="resources\winfsp.msi" SourceFile="resources\winfsp.msi"
CacheId="cryptomator-bundle-winfsp" CacheId="cryptomator-bundle-winfsp"
Visible="yes" Visible="yes"
+5 -5
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.cryptomator</groupId> <groupId>org.cryptomator</groupId>
<artifactId>cryptomator</artifactId> <artifactId>cryptomator</artifactId>
<version>1.12.2</version> <version>1.13.0-SNAPSHOT</version>
<name>Cryptomator Desktop App</name> <name>Cryptomator Desktop App</name>
<organization> <organization>
@@ -33,8 +33,8 @@
<nonModularGroupIds>org.ow2.asm,org.apache.jackrabbit,org.apache.httpcomponents</nonModularGroupIds> <nonModularGroupIds>org.ow2.asm,org.apache.jackrabbit,org.apache.httpcomponents</nonModularGroupIds>
<!-- cryptomator dependencies --> <!-- cryptomator dependencies -->
<cryptomator.cryptofs.version>2.6.8</cryptomator.cryptofs.version> <cryptomator.cryptofs.version>2.6.9</cryptomator.cryptofs.version>
<cryptomator.integrations.version>1.3.0</cryptomator.integrations.version> <cryptomator.integrations.version>1.3.1</cryptomator.integrations.version>
<cryptomator.integrations.win.version>1.2.5</cryptomator.integrations.win.version> <cryptomator.integrations.win.version>1.2.5</cryptomator.integrations.win.version>
<cryptomator.integrations.mac.version>1.2.3</cryptomator.integrations.mac.version> <cryptomator.integrations.mac.version>1.2.3</cryptomator.integrations.mac.version>
<cryptomator.integrations.linux.version>1.4.4</cryptomator.integrations.linux.version> <cryptomator.integrations.linux.version>1.4.4</cryptomator.integrations.linux.version>
@@ -51,8 +51,8 @@
<javafx.version>21.0.1</javafx.version> <javafx.version>21.0.1</javafx.version>
<jwt.version>4.4.0</jwt.version> <jwt.version>4.4.0</jwt.version>
<nimbus-jose.version>9.37.3</nimbus-jose.version> <nimbus-jose.version>9.37.3</nimbus-jose.version>
<logback.version>1.4.14</logback.version> <logback.version>1.5.0</logback.version>
<slf4j.version>2.0.11</slf4j.version> <slf4j.version>2.0.12</slf4j.version>
<tinyoauth2.version>0.8.0</tinyoauth2.version> <tinyoauth2.version>0.8.0</tinyoauth2.version>
<zxcvbn.version>1.8.2</zxcvbn.version> <zxcvbn.version>1.8.2</zxcvbn.version>
@@ -7,6 +7,8 @@ import org.cryptomator.integrations.mount.Mount;
import org.cryptomator.integrations.mount.MountBuilder; import org.cryptomator.integrations.mount.MountBuilder;
import org.cryptomator.integrations.mount.MountFailedException; import org.cryptomator.integrations.mount.MountFailedException;
import org.cryptomator.integrations.mount.MountService; import org.cryptomator.integrations.mount.MountService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.inject.Inject; import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
@@ -28,6 +30,8 @@ import static org.cryptomator.integrations.mount.MountCapability.UNMOUNT_FORCED;
@Singleton @Singleton
public class Mounter { public class Mounter {
private static final Logger LOG = LoggerFactory.getLogger(Mounter.class);
// mount providers (key) can not be used if any of the conflicting mount providers (values) are already in use // mount providers (key) can not be used if any of the conflicting mount providers (values) are already in use
private static final Map<String, Set<String>> CONFLICTING_MOUNT_SERVICES = Map.of( private static final Map<String, Set<String>> CONFLICTING_MOUNT_SERVICES = Map.of(
"org.cryptomator.frontend.fuse.mount.MacFuseMountProvider", Set.of("org.cryptomator.frontend.fuse.mount.FuseTMountProvider"), "org.cryptomator.frontend.fuse.mount.MacFuseMountProvider", Set.of("org.cryptomator.frontend.fuse.mount.FuseTMountProvider"),
@@ -127,9 +131,7 @@ public class Mounter {
} }
} else if (canMountToParent && !canMountToDir) { } else if (canMountToParent && !canMountToDir) {
MountWithinParentUtil.prepareParentNoMountPoint(userChosenMountPoint); MountWithinParentUtil.prepareParentNoMountPoint(userChosenMountPoint);
cleanup = () -> { cleanup = () -> MountWithinParentUtil.cleanup(userChosenMountPoint);
MountWithinParentUtil.cleanup(userChosenMountPoint);
};
} }
try { try {
builder.setMountpoint(userChosenMountPoint); builder.setMountpoint(userChosenMountPoint);
@@ -13,31 +13,37 @@ import org.slf4j.LoggerFactory;
import javax.inject.Inject; import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
import javafx.application.Platform;
import javafx.beans.binding.Bindings;
import javafx.beans.binding.BooleanBinding; import javafx.beans.binding.BooleanBinding;
import javafx.beans.property.BooleanProperty; import javafx.beans.property.BooleanProperty;
import javafx.beans.property.ObjectProperty; import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleBooleanProperty; import javafx.beans.property.SimpleBooleanProperty;
import javafx.beans.property.StringProperty; import javafx.beans.property.StringProperty;
import javafx.beans.value.ObservableValue; import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.Node;
import javafx.scene.Scene; import javafx.scene.Scene;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.control.RadioButton; import javafx.scene.control.RadioButton;
import javafx.scene.control.Toggle; import javafx.scene.control.Toggle;
import javafx.scene.control.ToggleGroup; import javafx.scene.control.ToggleGroup;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox; import javafx.scene.layout.VBox;
import javafx.stage.DirectoryChooser; import javafx.stage.DirectoryChooser;
import javafx.stage.Stage; import javafx.stage.Stage;
import javafx.stage.WindowEvent;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.nio.file.StandardOpenOption; import java.nio.file.StandardOpenOption;
import java.util.Comparator;
import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.ResourceBundle; import java.util.ResourceBundle;
import java.util.concurrent.ExecutorService;
@AddVaultWizardScoped @AddVaultWizardScoped
public class CreateNewVaultLocationController implements FxController { public class CreateNewVaultLocationController implements FxController {
@@ -49,19 +55,23 @@ public class CreateNewVaultLocationController implements FxController {
private final Stage window; private final Stage window;
private final Lazy<Scene> chooseNameScene; private final Lazy<Scene> chooseNameScene;
private final Lazy<Scene> chooseExpertSettingsScene; private final Lazy<Scene> chooseExpertSettingsScene;
private final List<RadioButton> locationPresetBtns;
private final ObjectProperty<Path> vaultPath; private final ObjectProperty<Path> vaultPath;
private final StringProperty vaultName; private final StringProperty vaultName;
private final ExecutorService backgroundExecutor;
private final ResourceBundle resourceBundle; private final ResourceBundle resourceBundle;
private final ObservableValue<VaultPathStatus> vaultPathStatus; private final ObservableValue<VaultPathStatus> vaultPathStatus;
private final ObservableValue<Boolean> validVaultPath; private final ObservableValue<Boolean> validVaultPath;
private final BooleanProperty usePresetPath; private final BooleanProperty usePresetPath;
private final BooleanProperty loadingPresetLocations = new SimpleBooleanProperty(false);
private final ObservableList<Node> radioButtons;
private final ObservableList<Node> sortedRadioButtons;
private Path customVaultPath = DEFAULT_CUSTOM_VAULT_PATH; private Path customVaultPath = DEFAULT_CUSTOM_VAULT_PATH;
//FXML //FXML
public ToggleGroup locationPresetsToggler; public ToggleGroup locationPresetsToggler;
public VBox radioButtonVBox; public VBox radioButtonVBox;
public HBox customLocationRadioBtn;
public RadioButton customRadioButton; public RadioButton customRadioButton;
public Label locationStatusLabel; public Label locationStatusLabel;
public FontAwesome5IconView goodLocation; public FontAwesome5IconView goodLocation;
@@ -73,25 +83,20 @@ public class CreateNewVaultLocationController implements FxController {
@FxmlScene(FxmlFile.ADDVAULT_NEW_EXPERT_SETTINGS) Lazy<Scene> chooseExpertSettingsScene, // @FxmlScene(FxmlFile.ADDVAULT_NEW_EXPERT_SETTINGS) Lazy<Scene> chooseExpertSettingsScene, //
ObjectProperty<Path> vaultPath, // ObjectProperty<Path> vaultPath, //
@Named("vaultName") StringProperty vaultName, // @Named("vaultName") StringProperty vaultName, //
ResourceBundle resourceBundle) { ExecutorService backgroundExecutor, ResourceBundle resourceBundle) {
this.window = window; this.window = window;
this.chooseNameScene = chooseNameScene; this.chooseNameScene = chooseNameScene;
this.chooseExpertSettingsScene = chooseExpertSettingsScene; this.chooseExpertSettingsScene = chooseExpertSettingsScene;
this.vaultPath = vaultPath; this.vaultPath = vaultPath;
this.vaultName = vaultName; this.vaultName = vaultName;
this.backgroundExecutor = backgroundExecutor;
this.resourceBundle = resourceBundle; this.resourceBundle = resourceBundle;
this.vaultPathStatus = ObservableUtil.mapWithDefault(vaultPath, this::validatePath, new VaultPathStatus(false, "error.message")); this.vaultPathStatus = ObservableUtil.mapWithDefault(vaultPath, this::validatePath, new VaultPathStatus(false, "error.message"));
this.validVaultPath = ObservableUtil.mapWithDefault(vaultPathStatus, VaultPathStatus::valid, false); this.validVaultPath = ObservableUtil.mapWithDefault(vaultPathStatus, VaultPathStatus::valid, false);
this.vaultPathStatus.addListener(this::updateStatusLabel); this.vaultPathStatus.addListener(this::updateStatusLabel);
this.usePresetPath = new SimpleBooleanProperty(); this.usePresetPath = new SimpleBooleanProperty();
this.locationPresetBtns = LocationPresetsProvider.loadAll(LocationPresetsProvider.class) // this.radioButtons = FXCollections.observableArrayList();
.flatMap(LocationPresetsProvider::getLocations) // this.sortedRadioButtons = radioButtons.sorted(this::compareLocationPresets);
.sorted(Comparator.comparing(LocationPreset::name)) //
.map(preset -> { //
var btn = new RadioButton(preset.name());
btn.setUserData(preset.path());
return btn;
}).toList();
} }
private VaultPathStatus validatePath(Path p) throws NullPointerException { private VaultPathStatus validatePath(Path p) throws NullPointerException {
@@ -137,12 +142,45 @@ public class CreateNewVaultLocationController implements FxController {
@FXML @FXML
public void initialize() { public void initialize() {
radioButtonVBox.getChildren().addAll(1, locationPresetBtns); //first item is the list header var task = backgroundExecutor.submit(this::loadLocationPresets);
locationPresetsToggler.getToggles().addAll(locationPresetBtns); window.addEventHandler(WindowEvent.WINDOW_HIDING, _ -> task.cancel(true));
locationPresetsToggler.selectedToggleProperty().addListener(this::togglePredefinedLocation); locationPresetsToggler.selectedToggleProperty().addListener(this::togglePredefinedLocation);
usePresetPath.bind(locationPresetsToggler.selectedToggleProperty().isNotEqualTo(customRadioButton)); usePresetPath.bind(locationPresetsToggler.selectedToggleProperty().isNotEqualTo(customRadioButton));
radioButtons.add(customLocationRadioBtn);
Bindings.bindContent(radioButtonVBox.getChildren(), sortedRadioButtons); //to prevent garbage collection of the binding, we bind explicitly to the sorted list
} }
private void loadLocationPresets() {
Platform.runLater(() -> loadingPresetLocations.set(true));
try {
LocationPresetsProvider.loadAll(LocationPresetsProvider.class) //
.flatMap(LocationPresetsProvider::getLocations) //we do not use sorted(), because it evaluates the stream elements, blocking until all elements are gathered
.forEach(this::createRadioButtonFor);
} finally {
Platform.runLater(() -> loadingPresetLocations.set(false));
}
}
private void createRadioButtonFor(LocationPreset preset) {
Platform.runLater(() -> {
var btn = new RadioButton(preset.name());
btn.setUserData(preset.path());
radioButtons.add(btn);
locationPresetsToggler.getToggles().add(btn);
});
}
private int compareLocationPresets(Node left, Node right) {
if (customLocationRadioBtn.getId().equals(left.getId())) {
return 1;
} else if (customLocationRadioBtn.getId().equals(right.getId())) {
return -1;
} else {
return ((RadioButton) left).getText().compareToIgnoreCase(((RadioButton) right).getText());
}
}
private void togglePredefinedLocation(@SuppressWarnings("unused") ObservableValue<? extends Toggle> observable, @SuppressWarnings("unused") Toggle oldValue, Toggle newValue) { private void togglePredefinedLocation(@SuppressWarnings("unused") ObservableValue<? extends Toggle> observable, @SuppressWarnings("unused") Toggle oldValue, Toggle newValue) {
var storagePath = Optional.ofNullable((Path) newValue.getUserData()).orElse(customVaultPath); var storagePath = Optional.ofNullable((Path) newValue.getUserData()).orElse(customVaultPath);
vaultPath.set(storagePath.resolve(vaultName.get())); vaultPath.set(storagePath.resolve(vaultName.get()));
@@ -197,7 +235,15 @@ public class CreateNewVaultLocationController implements FxController {
} }
public boolean isValidVaultPath() { public boolean isValidVaultPath() {
return validVaultPath.getValue(); return Boolean.TRUE.equals(validVaultPath.getValue());
}
public boolean isLoadingPresetLocations() {
return loadingPresetLocations.getValue();
}
public BooleanProperty loadingPresetLocationsProperty() {
return loadingPresetLocations;
} }
public BooleanProperty usePresetPathProperty() { public BooleanProperty usePresetPathProperty() {
@@ -75,6 +75,7 @@ public class ErrorController implements FxController {
private final BooleanExpression errorSolutionFound = matchingErrorDiscussion.isNotNull(); private final BooleanExpression errorSolutionFound = matchingErrorDiscussion.isNotNull();
private final BooleanProperty isLoadingHttpResponse = new SimpleBooleanProperty(); private final BooleanProperty isLoadingHttpResponse = new SimpleBooleanProperty();
private final BooleanProperty askedForLookupDatabasePermission = new SimpleBooleanProperty(); private final BooleanProperty askedForLookupDatabasePermission = new SimpleBooleanProperty();
private final boolean formerSceneWasResizable;
@Inject @Inject
ErrorController(Application application, @Named("stackTrace") String stackTrace, ErrorCode errorCode, @Nullable Scene previousScene, Stage window, Environment environment, ExecutorService executorService) { ErrorController(Application application, @Named("stackTrace") String stackTrace, ErrorCode errorCode, @Nullable Scene previousScene, Stage window, Environment environment, ExecutorService executorService) {
@@ -85,12 +86,14 @@ public class ErrorController implements FxController {
this.window = window; this.window = window;
this.environment = environment; this.environment = environment;
this.executorService = executorService; this.executorService = executorService;
this.formerSceneWasResizable = window.isResizable();
} }
@FXML @FXML
public void back() { public void back() {
if (previousScene != null) { if (previousScene != null) {
window.setScene(previousScene); window.setScene(previousScene);
window.setResizable(formerSceneWasResizable);
} }
} }
@@ -11,7 +11,7 @@ public class TrayMenuModule {
@Provides @Provides
@TrayMenuScoped @TrayMenuScoped
static Optional<TrayMenuController> provideSupportedKeychainAccessProviders() { static Optional<TrayMenuController> provideFirstSupportedTrayMenuController() {
return TrayMenuController.get(); return TrayMenuController.get();
} }
@@ -11,6 +11,7 @@ import org.cryptomator.ui.common.FxmlFile;
import org.cryptomator.ui.common.FxmlScene; import org.cryptomator.ui.common.FxmlScene;
import org.cryptomator.ui.common.VaultService; import org.cryptomator.ui.common.VaultService;
import org.cryptomator.ui.fxapp.FxApplicationWindows; import org.cryptomator.ui.fxapp.FxApplicationWindows;
import org.cryptomator.ui.fxapp.PrimaryStage;
import org.cryptomator.ui.keyloading.KeyLoadingStrategy; import org.cryptomator.ui.keyloading.KeyLoadingStrategy;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@@ -19,7 +20,9 @@ import javax.inject.Inject;
import javafx.application.Platform; import javafx.application.Platform;
import javafx.beans.property.ObjectProperty; import javafx.beans.property.ObjectProperty;
import javafx.concurrent.Task; import javafx.concurrent.Task;
import javafx.geometry.Rectangle2D;
import javafx.scene.Scene; import javafx.scene.Scene;
import javafx.stage.Screen;
import javafx.stage.Stage; import javafx.stage.Stage;
import java.io.IOException; import java.io.IOException;
@@ -33,6 +36,7 @@ public class UnlockWorkflow extends Task<Void> {
private static final Logger LOG = LoggerFactory.getLogger(UnlockWorkflow.class); private static final Logger LOG = LoggerFactory.getLogger(UnlockWorkflow.class);
private final Stage mainWindow;
private final Stage window; private final Stage window;
private final Vault vault; private final Vault vault;
private final VaultService vaultService; private final VaultService vaultService;
@@ -44,7 +48,8 @@ public class UnlockWorkflow extends Task<Void> {
private final ObjectProperty<IllegalMountPointException> illegalMountPointException; private final ObjectProperty<IllegalMountPointException> illegalMountPointException;
@Inject @Inject
UnlockWorkflow(@UnlockWindow Stage window, // UnlockWorkflow(@PrimaryStage Stage mainWindow, //
@UnlockWindow Stage window, //
@UnlockWindow Vault vault, // @UnlockWindow Vault vault, //
VaultService vaultService, // VaultService vaultService, //
@FxmlScene(FxmlFile.UNLOCK_SUCCESS) Lazy<Scene> successScene, // @FxmlScene(FxmlFile.UNLOCK_SUCCESS) Lazy<Scene> successScene, //
@@ -53,6 +58,7 @@ public class UnlockWorkflow extends Task<Void> {
FxApplicationWindows appWindows, // FxApplicationWindows appWindows, //
@UnlockWindow KeyLoadingStrategy keyLoadingStrategy, // @UnlockWindow KeyLoadingStrategy keyLoadingStrategy, //
@UnlockWindow ObjectProperty<IllegalMountPointException> illegalMountPointException) { @UnlockWindow ObjectProperty<IllegalMountPointException> illegalMountPointException) {
this.mainWindow = mainWindow;
this.window = window; this.window = window;
this.vault = vault; this.vault = vault;
this.vaultService = vaultService; this.vaultService = vaultService;
@@ -107,6 +113,19 @@ public class UnlockWorkflow extends Task<Void> {
case ASK -> Platform.runLater(() -> { case ASK -> Platform.runLater(() -> {
window.setScene(successScene.get()); window.setScene(successScene.get());
window.show(); window.show();
double x = mainWindow.getX() + (mainWindow.getWidth() - window.getWidth()) / 2;
double y = mainWindow.getY() + (mainWindow.getHeight() - window.getHeight()) / 2;
if(!mainWindow.isShowing()) {
Screen screen = Screen.getScreensForRectangle(mainWindow.getX(), mainWindow.getY(), mainWindow.getWidth(), mainWindow.getHeight())
.stream()
.findFirst()
.orElse(Screen.getPrimary());
Rectangle2D bounds = screen.getVisualBounds();
x = bounds.getMinX() + (bounds.getWidth() - window.getWidth()) / 2;
y = bounds.getMinY() + (bounds.getHeight() - window.getHeight()) / 2;
}
window.setX(x);
window.setY(y);
}); });
case REVEAL -> { case REVEAL -> {
Platform.runLater(window::close); Platform.runLater(window::close);
@@ -1,11 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?import org.cryptomator.ui.controls.FontAwesome5IconView?> <?import org.cryptomator.ui.controls.FontAwesome5IconView?>
<?import org.cryptomator.ui.controls.FontAwesome5Spinner?>
<?import javafx.geometry.Insets?> <?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?> <?import javafx.scene.control.Button?>
<?import javafx.scene.control.ButtonBar?> <?import javafx.scene.control.ButtonBar?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.Label?>
<?import javafx.scene.control.RadioButton?> <?import javafx.scene.control.RadioButton?>
<?import javafx.scene.control.ScrollPane?>
<?import javafx.scene.control.TextField?> <?import javafx.scene.control.TextField?>
<?import javafx.scene.control.ToggleGroup?> <?import javafx.scene.control.ToggleGroup?>
<?import javafx.scene.layout.HBox?> <?import javafx.scene.layout.HBox?>
@@ -29,18 +31,26 @@
<children> <children>
<Region VBox.vgrow="ALWAYS"/> <Region VBox.vgrow="ALWAYS"/>
<VBox fx:id="radioButtonVBox" spacing="6"> <Label wrapText="true" text="%addvaultwizard.new.locationInstruction"/>
<Label wrapText="true" text="%addvaultwizard.new.locationInstruction"/> <ScrollPane hbarPolicy="NEVER">
<!-- PLACEHOLDER, more radio buttons are added programmatically via controller --> <VBox fx:id="radioButtonVBox" spacing="6">
<HBox spacing="12" alignment="CENTER_LEFT"> <!-- PLACEHOLDER, more radio buttons are added programmatically via controller -->
<RadioButton fx:id="customRadioButton" toggleGroup="${locationPresetsToggler}" text="%addvaultwizard.new.directoryPickerLabel"/> <HBox fx:id="customLocationRadioBtn" spacing="12" alignment="CENTER_LEFT">
<Button contentDisplay="LEFT" text="%addvaultwizard.new.directoryPickerButton" onAction="#chooseCustomVaultPath" disable="${controller.usePresetPath}"> <RadioButton fx:id="customRadioButton" toggleGroup="${locationPresetsToggler}" text="%addvaultwizard.new.directoryPickerLabel"/>
<graphic> <Button contentDisplay="LEFT" text="%addvaultwizard.new.directoryPickerButton" onAction="#chooseCustomVaultPath" disable="${controller.usePresetPath}">
<FontAwesome5IconView glyph="FOLDER_OPEN"/> <graphic>
</graphic> <FontAwesome5IconView glyph="FOLDER_OPEN"/>
</Button> </graphic>
</HBox> </Button>
</VBox> </HBox>
</VBox>
</ScrollPane>
<Region prefHeight="2"/>
<Label wrapText="true" text="%addvaultwizard.new.locationLoading" visible="${controller.loadingPresetLocations}" managed="${controller.loadingPresetLocations}" graphicTextGap="8">
<graphic>
<FontAwesome5Spinner/>
</graphic>
</Label>
<Region prefHeight="12" VBox.vgrow="NEVER"/> <Region prefHeight="12" VBox.vgrow="NEVER"/>
+75 -64
View File
@@ -9,86 +9,97 @@
<?import javafx.scene.control.Hyperlink?> <?import javafx.scene.control.Hyperlink?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextArea?> <?import javafx.scene.control.TextArea?>
<?import javafx.scene.Group?>
<?import javafx.scene.layout.HBox?> <?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.Region?> <?import javafx.scene.layout.Region?>
<?import javafx.scene.layout.StackPane?> <?import javafx.scene.layout.StackPane?>
<?import javafx.scene.layout.VBox?> <?import javafx.scene.layout.VBox?>
<?import javafx.scene.shape.Circle?> <?import javafx.scene.shape.Circle?>
<VBox xmlns:fx="http://javafx.com/fxml" <HBox xmlns:fx="http://javafx.com/fxml"
xmlns="http://javafx.com/javafx" xmlns="http://javafx.com/javafx"
fx:controller="org.cryptomator.ui.error.ErrorController" fx:controller="org.cryptomator.ui.error.ErrorController"
minWidth="450"
minHeight="450"
prefWidth="450" prefWidth="450"
prefHeight="450" prefHeight="450"
spacing="18" spacing="12">
alignment="TOP_CENTER">
<padding> <padding>
<Insets topRightBottomLeft="24"/> <Insets topRightBottomLeft="24"/>
</padding> </padding>
<children> <Group>
<HBox spacing="12" VBox.vgrow="NEVER"> <StackPane>
<StackPane alignment="CENTER" HBox.hgrow="NEVER"> <padding>
<Circle styleClass="glyph-icon-primary" radius="24"/> <Insets topRightBottomLeft="6"/>
<FontAwesome5IconView styleClass="glyph-icon-white" glyph="EXCLAMATION" glyphSize="24"/> </padding>
</StackPane> <Circle styleClass="glyph-icon-primary" radius="24"/>
<VBox spacing="6" HBox.hgrow="ALWAYS"> <FontAwesome5IconView styleClass="glyph-icon-white" glyph="EXCLAMATION" glyphSize="24"/>
<FormattedLabel styleClass="label-extra-large" format="%error.message" arg1="${controller.errorCode}"/> </StackPane>
<VBox visible="${!controller.askedForLookupDatabasePermission}" managed="${!controller.askedForLookupDatabasePermission}"> </Group>
<Label text="%error.lookupPermissionMessage" wrapText="true"/> <VBox HBox.hgrow="ALWAYS">
<Region VBox.vgrow="ALWAYS" minHeight="18"/> <FormattedLabel styleClass="label-extra-large" format="%error.message" arg1="${controller.errorCode}">
<ButtonBar buttonMinWidth="120" buttonOrder="+NY"> <padding>
<buttons> <Insets bottom="6" top="6"/>
<Button text="%error.dismiss" ButtonBar.buttonData="NO" onAction="#dismiss"/> </padding>
<Button text="%error.lookUpSolution" ButtonBar.buttonData="YES" defaultButton="true" onAction="#lookUpSolution"/> </FormattedLabel>
</buttons>
</ButtonBar>
</VBox>
<VBox visible="${controller.askedForLookupDatabasePermission}" managed="${controller.askedForLookupDatabasePermission}">
<FontAwesome5Spinner glyphSize="24" visible="${controller.isLoadingHttpResponse}" managed="${controller.isLoadingHttpResponse}"/>
<VBox visible="${!controller.isLoadingHttpResponse}" managed="${!controller.isLoadingHttpResponse}">
<Label text="%error.existingSolutionDescription" wrapText="true" visible="${controller.errorSolutionFound}" managed="${controller.errorSolutionFound}"/>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.solution" onAction="#showSolution" contentDisplay="LEFT" visible="${controller.errorSolutionFound}" managed="${controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
<Label text="%error.description" wrapText="true" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}"/>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.lookup" onAction="#searchError" contentDisplay="LEFT" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.report" onAction="#reportError" contentDisplay="LEFT" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
</VBox>
</VBox>
</VBox>
</HBox>
<VBox spacing="6" VBox.vgrow="ALWAYS">
<HBox>
<Label text="%error.technicalDetails"/>
<Region HBox.hgrow="ALWAYS"/>
<Hyperlink styleClass="hyperlink-underline" text="%generic.button.copy" onAction="#copyDetails" contentDisplay="LEFT" visible="${!controller.copiedDetails}" managed="${!controller.copiedDetails}">
<graphic>
<FontAwesome5IconView glyph="CLIPBOARD" glyphSize="12"/>
</graphic>
</Hyperlink>
<Hyperlink styleClass="hyperlink-underline" text="%generic.button.copied" onAction="#copyDetails" contentDisplay="LEFT" visible="${controller.copiedDetails}" managed="${controller.copiedDetails}">
<graphic>
<FontAwesome5IconView glyph="CHECK" glyphSize="12"/>
</graphic>
</Hyperlink>
</HBox>
<TextArea VBox.vgrow="ALWAYS" text="${controller.detailText}" prefRowCount="5" editable="false"/>
</VBox>
<VBox visible="${!controller.askedForLookupDatabasePermission}" managed="${!controller.askedForLookupDatabasePermission}">
<Label text="%error.lookupPermissionMessage" wrapText="true"/>
<Region minHeight="12"/>
<ButtonBar buttonMinWidth="120" buttonOrder="+NY">
<buttons>
<Button text="%error.dismiss" ButtonBar.buttonData="NO" onAction="#dismiss"/>
<Button text="%error.lookUpSolution" ButtonBar.buttonData="YES" defaultButton="true" onAction="#lookUpSolution"/>
</buttons>
</ButtonBar>
</VBox>
<VBox visible="${controller.askedForLookupDatabasePermission}" managed="${controller.askedForLookupDatabasePermission}">
<FontAwesome5Spinner glyphSize="24" visible="${controller.isLoadingHttpResponse}" managed="${controller.isLoadingHttpResponse}"/>
<VBox visible="${!controller.isLoadingHttpResponse}" managed="${!controller.isLoadingHttpResponse}">
<Label text="%error.existingSolutionDescription" wrapText="true" visible="${controller.errorSolutionFound}" managed="${controller.errorSolutionFound}"/>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.solution" onAction="#showSolution" contentDisplay="LEFT" visible="${controller.errorSolutionFound}" managed="${controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
<Label text="%error.description" wrapText="true" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}"/>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.lookup" onAction="#searchError" contentDisplay="LEFT" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.report" onAction="#reportError" contentDisplay="LEFT" visible="${!controller.errorSolutionFound}" managed="${!controller.errorSolutionFound}">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
</VBox>
</VBox>
<Region minHeight="12"/>
<HBox>
<padding>
<Insets top="6" bottom="6"/>
</padding>
<Label text="%error.technicalDetails"/>
<Region HBox.hgrow="ALWAYS"/>
<Hyperlink styleClass="hyperlink-underline" text="%generic.button.copy" onAction="#copyDetails" contentDisplay="LEFT" visible="${!controller.copiedDetails}" managed="${!controller.copiedDetails}">
<graphic>
<FontAwesome5IconView glyph="CLIPBOARD" glyphSize="12"/>
</graphic>
</Hyperlink>
<Hyperlink styleClass="hyperlink-underline" text="%generic.button.copied" onAction="#copyDetails" contentDisplay="LEFT" visible="${controller.copiedDetails}" managed="${controller.copiedDetails}">
<graphic>
<FontAwesome5IconView glyph="CHECK" glyphSize="12"/>
</graphic>
</Hyperlink>
</HBox>
<TextArea VBox.vgrow="ALWAYS" text="${controller.detailText}" prefRowCount="5" editable="false"/>
<Region minHeight="18"/>
<ButtonBar buttonMinWidth="120" buttonOrder="B+C"> <ButtonBar buttonMinWidth="120" buttonOrder="B+C">
<buttons> <buttons>
<Button text="%generic.button.back" ButtonBar.buttonData="BACK_PREVIOUS" onAction="#back" visible="${controller.previousScenePresent}"/> <Button text="%generic.button.back" ButtonBar.buttonData="BACK_PREVIOUS" onAction="#back" visible="${controller.previousScenePresent}"/>
<Button text="%generic.button.cancel" ButtonBar.buttonData="CANCEL_CLOSE" onAction="#close"/> <Button text="%generic.button.cancel" ButtonBar.buttonData="CANCEL_CLOSE" onAction="#close"/>
</buttons> </buttons>
</ButtonBar> </ButtonBar>
</children> </VBox>
</VBox> </HBox>
+11 -7
View File
@@ -154,14 +154,10 @@ hub.receive.message=معالجة الاستجابة…
hub.receive.description=Cryptomator يتلقى ويعالج الاستجابة من المركز. الرجاء الانتظار. hub.receive.description=Cryptomator يتلقى ويعالج الاستجابة من المركز. الرجاء الانتظار.
### Register Device ### Register Device
hub.register.nameLabel=اسم الجهاز hub.register.nameLabel=اسم الجهاز
hub.register.occupiedMsg=الاسم مستخدم مسبقاً ### Register Device Legacy
hub.register.registerBtn=تأكيد
### Registration Success ### Registration Success
hub.registerSuccess.message=تم تسمية الجهاز hub.registerSuccess.unlockBtn=افتح
hub.registerSuccess.description=للدخول إلى الخزينة، يحتاج جهازك إلى إذن من مالك الخزينة.
### Registration Failed ### Registration Failed
hub.registerFailed.message=أخفق في تسمية الجهاز
hub.registerFailed.description=خطأ في عملية التسمية. لمزيد من التفاصيل، انظر إلى سجل التطبيق.
### Unauthorized ### Unauthorized
hub.unauthorized.message=تم رفض الوصول hub.unauthorized.message=تم رفض الوصول
hub.unauthorized.description=لم يتم بعد منح الإذن لجهازك بالوصول إلى هذا المخزن. اطلب من مالك المخزن أن يأذن بذلك. hub.unauthorized.description=لم يتم بعد منح الإذن لجهازك بالوصول إلى هذا المخزن. اطلب من مالك المخزن أن يأذن بذلك.
@@ -400,21 +396,27 @@ vaultOptions.mount.mountPoint=موقع التحميل الوهمي
vaultOptions.mount.mountPoint.auto=اختيار موقع مناسب تلقائياً vaultOptions.mount.mountPoint.auto=اختيار موقع مناسب تلقائياً
vaultOptions.mount.mountPoint.driveLetter=استخدام دالة قرص معين vaultOptions.mount.mountPoint.driveLetter=استخدام دالة قرص معين
vaultOptions.mount.mountPoint.directoryPickerButton=اختر… vaultOptions.mount.mountPoint.directoryPickerButton=اختر…
vaultOptions.mount.volumeType.default=الافتراضي (%s)
vaultOptions.mount.volume.tcp.port=منفذ TCP
## Master Key ## Master Key
vaultOptions.masterkey=كلمة المرور vaultOptions.masterkey=كلمة المرور
vaultOptions.masterkey.changePasswordBtn=تغيير كلمة المرور vaultOptions.masterkey.changePasswordBtn=تغيير كلمة المرور
vaultOptions.masterkey.forgetSavedPasswordBtn=نسيان كلمة المرور المحفوظة vaultOptions.masterkey.forgetSavedPasswordBtn=نسيان كلمة المرور المحفوظة
vaultOptions.masterkey.recoveryKeyExplanation=مفتاح الاسترداد هو وسيلتك الوحيدة لاستعادة الوصول إلى مخزنك إذا فقدت كلمة المرور. vaultOptions.masterkey.recoveryKeyExplanation=مفتاح الاسترداد هو وسيلتك الوحيدة لاستعادة الوصول إلى مخزنك إذا فقدت كلمة المرور.
vaultOptions.masterkey.showRecoveryKeyBtn=عرض مفتاح الاسترداد vaultOptions.masterkey.showRecoveryKeyBtn=عرض مفتاح الاسترداد
vaultOptions.masterkey.recoverPasswordBtn=إعادة تعيين كلمة المرور
## Hub ## Hub
vaultOptions.hub=الإسترداد
# Recovery Key # Recovery Key
## Display Recovery Key ## Display Recovery Key
recoveryKey.create.message=مطلوب كلمة المرور
recoveryKey.create.description=أدخل كلمة المرور الخاصة بك لإظهار مفتاح الاسترداد ل "%s": recoveryKey.create.description=أدخل كلمة المرور الخاصة بك لإظهار مفتاح الاسترداد ل "%s":
recoveryKey.display.description=يمكن استخدام مفتاح الاسترداد التالي لاستعادة الوصول إلى "%s": recoveryKey.display.description=يمكن استخدام مفتاح الاسترداد التالي لاستعادة الوصول إلى "%s":
recoveryKey.display.StorageHints=حافظ عليه في مكان ما آمن جداً، على سبيل المثال\n • تخزينه باستخدام مدير كلمات المرور\n • حفظه على محرك أقراص خارجي USB\n • كتابته أو طباعته على الورق recoveryKey.display.StorageHints=حافظ عليه في مكان ما آمن جداً، على سبيل المثال\n • تخزينه باستخدام مدير كلمات المرور\n • حفظه على محرك أقراص خارجي USB\n • كتابته أو طباعته على الورق
## Reset Password ## Reset Password
### Enter Recovery Key ### Enter Recovery Key
recoveryKey.recover.title=إعادة تعيين كلمة المرور
recoveryKey.recover.correctKey=هذا مفتاح استرداد صالح recoveryKey.recover.correctKey=هذا مفتاح استرداد صالح
recoveryKey.printout.heading=مفتاح استرداد Cryptomator\n"%s"\n recoveryKey.printout.heading=مفتاح استرداد Cryptomator\n"%s"\n
### Reset Password ### Reset Password
@@ -439,4 +441,6 @@ quit.lockAndQuitBtn=قفل و خروج
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+18 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=Асыу өсөн ҡулла
unlock.error.customPath.description.couldNotBeCleaned=Һаҡлағысығыҙ "%s" юлына тоташтырылманы. Тағы бер тапҡыр ҡабатлап ҡарағыҙ йәки икенсе юл һайлағыҙ. unlock.error.customPath.description.couldNotBeCleaned=Һаҡлағысығыҙ "%s" юлына тоташтырылманы. Тағы бер тапҡыр ҡабатлап ҡарағыҙ йәки икенсе юл һайлағыҙ.
unlock.error.customPath.description.notEmptyDir="%s" махсус тоташтырыу урыны буш каталог түгел. Зинһар, буш каталог һайлағыҙ һәм яңынан ҡабатлағыҙ. unlock.error.customPath.description.notEmptyDir="%s" махсус тоташтырыу урыны буш каталог түгел. Зинһар, буш каталог һайлағыҙ һәм яңынан ҡабатлағыҙ.
unlock.error.customPath.description.generic=Һеҙ был һаҡлағыс өсөн махсус тоташтырыу урыны һайланығыҙ, ләкин уны ҡулланыу киләһе хәбәр менән уңышһыҙ тамамланды: %2$s unlock.error.customPath.description.generic=Һеҙ был һаҡлағыс өсөн махсус тоташтырыу урыны һайланығыҙ, ләкин уны ҡулланыу киләһе хәбәр менән уңышһыҙ тамамланды: %2$s
unlock.error.fuseRestartRequired.message=Һаҡлағыс биген сисеп булманы
unlock.error.fuseRestartRequired.description=Һаҡлағыс параметрҙарында күләм төрөн үҙгәртеү йәки Cryptomator-ҙы яңынан башлатыу.
unlock.error.title="%s" биге асылманы unlock.error.title="%s" биге асылманы
## Hub ## Hub
hub.noKeychain.message=Йыһаз асҡысына инеү рөхсәте юҡ hub.noKeychain.message=Йыһаз асҡысына инеү рөхсәте юҡ
@@ -157,17 +155,13 @@ hub.receive.message=Яуапты эшкәртеү…
hub.receive.description=Cryptomator хабтан килгән яуапты ҡабул итә һәм эшкәртә. Зинһар, көтөгөҙ. hub.receive.description=Cryptomator хабтан килгән яуапты ҡабул итә һәм эшкәртә. Зинһар, көтөгөҙ.
### Register Device ### Register Device
hub.register.message=Яңы йыһаз hub.register.message=Яңы йыһаз
hub.register.description=Был йыһаздан хабҡа тәү тапҡыр инеү. Зинһар, иҫәп яҙмаһы асҡысы менән рөхсәт бирегеҙ.
hub.register.nameLabel=Йыһаз исеме hub.register.nameLabel=Йыһаз исеме
hub.register.invalidAccountKeyLabel=Хаталы иҫәп яҙмаһы асҡысы hub.register.invalidAccountKeyLabel=Хаталы иҫәп яҙмаһы асҡысы
hub.register.occupiedMsg=Исем ҡулланыла инде hub.register.registerBtn=Теркәл
hub.register.registerBtn=Раҫла ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Йыһаз исемләнде hub.registerSuccess.unlockBtn=Биген ас
hub.registerSuccess.description=Һаҡлағысҡа инеү өсөн һаҡлағыс хужаһы йыһазығыҙға инеү рөхсәте бирергә тейеш.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Йыһазға исем биреп булманы
hub.registerFailed.description=Исемләү процесында хата килеп сыҡты. Тулыраҡ мәғлүмәт өсөн ҡушымта журналын ҡарағыҙ.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Инеү кире ҡағылды hub.unauthorized.message=Инеү кире ҡағылды
hub.unauthorized.description=Һеҙҙең йыһаз әлегә был һаҡлағысҡа инеү хоҡуғына эйә түгел. Һаҡлағыс хужаһынан рөхсәт һорағыҙ. hub.unauthorized.description=Һеҙҙең йыһаз әлегә был һаҡлағысҡа инеү хоҡуғына эйә түгел. Һаҡлағыс хужаһынан рөхсәт һорағыҙ.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Һайланған каталог ҡулл
vaultOptions.mount.mountPoint.directoryPickerButton=Һайла… vaultOptions.mount.mountPoint.directoryPickerButton=Һайла…
vaultOptions.mount.mountPoint.directoryPickerTitle=Каталог һайлау vaultOptions.mount.mountPoint.directoryPickerTitle=Каталог һайлау
vaultOptions.mount.volumeType.default=Ғәҙәттәгеләр (%s) vaultOptions.mount.volumeType.default=Ғәҙәттәгеләр (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Был том төрөн ҡулланыу өсөн Cryptomator-ҙы яңынан асыу кәрәк.
vaultOptions.mount.volume.tcp.port=TCP порты vaultOptions.mount.volume.tcp.port=TCP порты
vaultOptions.mount.volume.type=Том төрө vaultOptions.mount.volume.type=Том төрө
## Master Key ## Master Key
@@ -498,17 +491,31 @@ convertVault.hubToPassword.success.description=Хәҙер һеҙ һайланғ
newPassword.promptText=Яңы серһүҙ яҙығыҙ newPassword.promptText=Яңы серһүҙ яҙығыҙ
newPassword.reenterPassword=Яңы серһүҙҙе раҫлағыҙ newPassword.reenterPassword=Яңы серһүҙҙе раҫлағыҙ
newPassword.passwordsMatch=Серһүҙҙәр тап килә! newPassword.passwordsMatch=Серһүҙҙәр тап килә!
newPassword.passwordsDoNotMatch=Серһүҙҙәр тап килмәй
passwordStrength.messageLabel.tooShort=Кәмендә %d билдә ҡулланығыҙ
passwordStrength.messageLabel.0=Бик көсһөҙ
passwordStrength.messageLabel.1=Көсһөҙ
passwordStrength.messageLabel.2=Уртаса
passwordStrength.messageLabel.3=Көслө
passwordStrength.messageLabel.4=Бик көслө
# Quit # Quit
quit.title=Ҡушымтанан сығыу quit.title=Ҡушымтанан сығыу
quit.message=Асыҡ һаҡлағыстар бар
quit.description=Сығырға теләүегеҙҙе раҫлағыҙ. Cryptomator мәғлүмәтте юғалтыуҙан һаҡлар өсөн бөтә һаҡлағыстарҙы бикләп ҡуя. quit.description=Сығырға теләүегеҙҙе раҫлағыҙ. Cryptomator мәғлүмәтте юғалтыуҙан һаҡлар өсөн бөтә һаҡлағыстарҙы бикләп ҡуя.
quit.lockAndQuitBtn=Биклә һәм сыҡ quit.lockAndQuitBtn=Биклә һәм сыҡ
# Forced Quit # Forced Quit
quit.forced.message=Ҡайһы бер һаҡлағыстарҙы бикләп булмай
quit.forced.description=Көтөп торған ғәмәлдәр йәки асыҡ файлдар һаҡлағыстарҙы бикләүҙе тотҡарланы. Был һаҡлағыстарҙы көсләп бикләп була, ләкин инеү-сығыуҙы өҙөү һаҡланмаған мәғлүмәттәрҙе юғалтыуға килтереүе ихтимал. quit.forced.description=Көтөп торған ғәмәлдәр йәки асыҡ файлдар һаҡлағыстарҙы бикләүҙе тотҡарланы. Был һаҡлағыстарҙы көсләп бикләп була, ләкин инеү-сығыуҙы өҙөү һаҡланмаған мәғлүмәттәрҙе юғалтыуға килтереүе ихтимал.
quit.forced.forceAndQuitBtn=Көсләп биклә һәм сыҡ
# Update Reminder # Update Reminder
updateReminder.title=Яңыртыуҙарҙы тикшереү
updateReminder.message=Яңыртыуҙарҙы тикшерергәме?
updateReminder.description=Яңы үҙенсәлектәр, хаталарҙы төҙәтеү, хәүефһеҙлекте яҡшыртыу менән яңыртылып торорға. Яңыртыуҙарҙы автоматик рәүештә тикшереүҙе кәңәш итәбеҙ. updateReminder.description=Яңы үҙенсәлектәр, хаталарҙы төҙәтеү, хәүефһеҙлекте яҡшыртыу менән яңыртылып торорға. Яңыртыуҙарҙы автоматик рәүештә тикшереүҙе кәңәш итәбеҙ.
updateReminder.notNow=Хәҙер түгел updateReminder.notNow=Хәҙер түгел
updateReminder.yesOnce=Эйе, бер тапҡыр updateReminder.yesOnce=Эйе, бер тапҡыр
updateReminder.yesAutomatically=Эйе, автоматик рәүештә updateReminder.yesAutomatically=Эйе, автоматик рәүештә
# Share Vault
@@ -151,14 +151,10 @@ hub.receive.description=Cryptomator атрымлівае ды апрацоўва
### Register Device ### Register Device
hub.register.message=Новая прылада hub.register.message=Новая прылада
hub.register.nameLabel=Назва прылады hub.register.nameLabel=Назва прылады
hub.register.occupiedMsg=Назва ўжо ўжытая ### Register Device Legacy
hub.register.registerBtn=Пацвердзіць
### Registration Success ### Registration Success
hub.registerSuccess.message=Прылада атрымала назву hub.registerSuccess.unlockBtn=Адамкнуць
hub.registerSuccess.description=Каб атрымаць доступ да скарбніцы, твая прылада мусіць быць спраўджанай уладальнікам скарбніцы.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Памылка пры называнні прылады
hub.registerFailed.description=Падчас прысваення імя адбылася памылка. Па дэтальную інфармацыю звярніся да пратаколу праграмы.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Адмова ў доступе hub.unauthorized.message=Адмова ў доступе
hub.unauthorized.description=Тваёй прыладзе ў дадзены момант не дазволена мець доступ да гэтай скрабніцы. Запытайся ўладальніка скрабніцы за дазволам. hub.unauthorized.description=Тваёй прыладзе ў дадзены момант не дазволена мець доступ да гэтай скрабніцы. Запытайся ўладальніка скрабніцы за дазволам.
@@ -500,4 +496,6 @@ updateReminder.title=Праверка абнаўленняў
updateReminder.message=Ці праверыць абнаўленні? updateReminder.message=Ці праверыць абнаўленні?
updateReminder.notNow=Не цяпер updateReminder.notNow=Не цяпер
updateReminder.yesOnce=Так, аднойчы updateReminder.yesOnce=Так, аднойчы
updateReminder.yesAutomatically=Так, аўтаматычна updateReminder.yesAutomatically=Так, аўтаматычна
# Share Vault
+6 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=Временният, скр
unlock.error.customPath.description.couldNotBeCleaned=Хранилището не може да бъде монтирано на „%s“. Опитайте отново или изберете друг път. unlock.error.customPath.description.couldNotBeCleaned=Хранилището не може да бъде монтирано на „%s“. Опитайте отново или изберете друг път.
unlock.error.customPath.description.notEmptyDir=Потребителският път на монтиране „%s“ не е празна папка. Изберете празна папка и опитайте отново. unlock.error.customPath.description.notEmptyDir=Потребителският път на монтиране „%s“ не е празна папка. Изберете празна папка и опитайте отново.
unlock.error.customPath.description.generic=Избрали сте потребителски път за монтиране на това хранилище, но при използването му възникна следната грешка: %2$s unlock.error.customPath.description.generic=Избрали сте потребителски път за монтиране на това хранилище, но при използването му възникна следната грешка: %2$s
unlock.error.fuseRestartRequired.message=Хранилището не може да бъде отключено
unlock.error.fuseRestartRequired.description=Променете вида на тома в настройките на хранилището или рестартирайте Криптоматор.
unlock.error.title=Неуспешно отключване на „%s“ unlock.error.title=Неуспешно отключване на „%s“
## Hub ## Hub
hub.noKeychain.message=Няма достъп до ключа на устройството hub.noKeychain.message=Няма достъп до ключа на устройството
@@ -157,17 +155,13 @@ hub.receive.message=Обработване на отговора…
hub.receive.description=Криптоматор получава и обработва отговора от Hub. Изчакайте. hub.receive.description=Криптоматор получава и обработва отговора от Hub. Изчакайте.
### Register Device ### Register Device
hub.register.message=Ново устройство hub.register.message=Ново устройство
hub.register.description=За пръв път посещавате Hub от това устройство. Удостоверете го, като използвате ключа на профила.
hub.register.nameLabel=Име на устройството hub.register.nameLabel=Име на устройството
hub.register.invalidAccountKeyLabel=Неприемлив ключ на профила hub.register.invalidAccountKeyLabel=Неприемлив ключ на профила
hub.register.occupiedMsg=Това име вече е заето hub.register.registerBtn=Регистриране
hub.register.registerBtn=Потвърждаване ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Устройството е именувано hub.registerSuccess.unlockBtn=Отключване
hub.registerSuccess.description=За да получи достъп до хранилището, устройството трябва да бъде упълномощено от собственика на хранилището.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Грешка при именуване на устройството
hub.registerFailed.description=В процеса на именуване е допусната грешка. За повече подробности разгледайте дневника на приложението.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Отказан достъп hub.unauthorized.message=Отказан достъп
hub.unauthorized.description=Устройството не е упълномощено за достъп до това хранилище. Поискайте достъп от собственика. hub.unauthorized.description=Устройството не е упълномощено за достъп до това хранилище. Поискайте достъп от собственика.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Използване на избрана п
vaultOptions.mount.mountPoint.directoryPickerButton=Избиране… vaultOptions.mount.mountPoint.directoryPickerButton=Избиране…
vaultOptions.mount.mountPoint.directoryPickerTitle=Избиране на папка vaultOptions.mount.mountPoint.directoryPickerTitle=Избиране на папка
vaultOptions.mount.volumeType.default=По подразбиране (%s) vaultOptions.mount.volumeType.default=По подразбиране (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=За да използвате този вид томове, трябва да рестартирате Криптоматор.
vaultOptions.mount.volume.tcp.port=Порт на TCP vaultOptions.mount.volume.tcp.port=Порт на TCP
vaultOptions.mount.volume.type=Вид на тома vaultOptions.mount.volume.type=Вид на тома
## Master Key ## Master Key
@@ -523,4 +516,6 @@ updateReminder.message=Проверяване за обновяване?
updateReminder.description=Получавайте нови възможности на приложението, поправки на дефекти и подобрения на сигурността. Препоръчваме ви автоматичното обновяване. updateReminder.description=Получавайте нови възможности на приложението, поправки на дефекти и подобрения на сигурността. Препоръчваме ви автоматичното обновяване.
updateReminder.notNow=Не сега updateReminder.notNow=Не сега
updateReminder.yesOnce=Да, веднъж updateReminder.yesOnce=Да, веднъж
updateReminder.yesAutomatically=Да, автоматично updateReminder.yesAutomatically=Да, автоматично
# Share Vault
@@ -89,8 +89,9 @@ unlock.unlockBtn=আনলক করুন
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=নিশ্চিত করুন ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=আনলক করুন
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -172,4 +173,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=নির্বাচন ক
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -105,8 +105,9 @@ unlock.success.revealBtn=Otkrij pogon
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=Potvrdi ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Otključaj
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -314,4 +315,6 @@ quit.lockAndQuitBtn=Zaključaj i zatvori
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -155,14 +155,10 @@ hub.receive.description=Cryptomator està rebent i processant la resposta del Hu
### Register Device ### Register Device
hub.register.message=Nou dispositiu hub.register.message=Nou dispositiu
hub.register.nameLabel=Nom del dispositiu hub.register.nameLabel=Nom del dispositiu
hub.register.occupiedMsg=El nom ja està en ús ### Register Device Legacy
hub.register.registerBtn=Confirma
### Registration Success ### Registration Success
hub.registerSuccess.message=Unitat anomenada hub.registerSuccess.unlockBtn=Desbloqueja
hub.registerSuccess.description=Per a accedir a la caixa forta, el vostre dispositiu ha de ser autoritzat pel propietari de la caixa.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Error al nombrar el dispositiu
hub.registerFailed.description=S'ha produït un error en el procés de nomenament. Per més detalls vegeu el registre de l'aplicació.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Accés denegat hub.unauthorized.message=Accés denegat
hub.unauthorized.description=El vostre dispositiu no ha estat encara autoritzat a accedir a aquesta caixa forta. Demaneu autorització al propietari. hub.unauthorized.description=El vostre dispositiu no ha estat encara autoritzat a accedir a aquesta caixa forta. Demaneu autorització al propietari.
@@ -507,4 +503,6 @@ updateReminder.message=Comprova si hi ha actualitzacions?
updateReminder.description=Per estar actualitzat amb funcions noves, correccions d'errors i millores de seguretat recomanem comprovar les actualitzacions automàticament. updateReminder.description=Per estar actualitzat amb funcions noves, correccions d'errors i millores de seguretat recomanem comprovar les actualitzacions automàticament.
updateReminder.notNow=Ara no updateReminder.notNow=Ara no
updateReminder.yesOnce=Sí, una vegada updateReminder.yesOnce=Sí, una vegada
updateReminder.yesAutomatically=Sí, automàticament updateReminder.yesAutomatically=Sí, automàticament
# Share Vault
+20 -6
View File
@@ -23,6 +23,7 @@ error.technicalDetails=Podrobnosti:
error.existingSolutionDescription=Cryptomator neočekával, že se tak stane. Našli jsme však existující řešení pro tuto chybu. Podívejte se prosím na následující odkaz. error.existingSolutionDescription=Cryptomator neočekával, že se tak stane. Našli jsme však existující řešení pro tuto chybu. Podívejte se prosím na následující odkaz.
error.hyperlink.solution=Podívejte se na řešení error.hyperlink.solution=Podívejte se na řešení
error.lookupPermissionMessage=Cryptomator může najít řešení tohoto problému online. To odešle žádost do naší databáze problémů z vaší IP adresy. error.lookupPermissionMessage=Cryptomator může najít řešení tohoto problému online. To odešle žádost do naší databáze problémů z vaší IP adresy.
error.dismiss=Zrušit
# Defaults # Defaults
defaults.vault.vaultName=Trezor defaults.vault.vaultName=Trezor
@@ -39,6 +40,7 @@ traymenu.vault.reveal=Zobrazit
# Add Vault Wizard # Add Vault Wizard
addvaultwizard.title=Přidat trezor addvaultwizard.title=Přidat trezor
## New ## New
addvaultwizard.new.title=Přidat nový trezor
### Name ### Name
addvaultwizard.new.nameInstruction=Zvolte jméno trezoru addvaultwizard.new.nameInstruction=Zvolte jméno trezoru
addvaultwizard.new.namePrompt=Název trezoru addvaultwizard.new.namePrompt=Název trezoru
@@ -88,6 +90,7 @@ addvault.new.readme.accessLocation.2=Toto je místo přístupu vašeho trezoru.
addvault.new.readme.accessLocation.3=Všechny soubory přidané do tohoto svazku budou šifrovány Cryptomatorem. Můžete na něm pracovat na jiném disku/složce. Toto je pouze dešifrovaný pohled na jeho obsah, vaše soubory zůstávají na pevném disku stále zašifrovány. addvault.new.readme.accessLocation.3=Všechny soubory přidané do tohoto svazku budou šifrovány Cryptomatorem. Můžete na něm pracovat na jiném disku/složce. Toto je pouze dešifrovaný pohled na jeho obsah, vaše soubory zůstávají na pevném disku stále zašifrovány.
addvault.new.readme.accessLocation.4=Tento soubor můžete odstranit. addvault.new.readme.accessLocation.4=Tento soubor můžete odstranit.
## Existing ## Existing
addvaultwizard.existing.title=Přidat existující trezor
addvaultwizard.existing.instruction=Vyberte soubor "vault.cryptomator" z existujícího trezoru. Pokud existuje pouze soubor s názvem "masterkey.cryptomator", vyberte jej. addvaultwizard.existing.instruction=Vyberte soubor "vault.cryptomator" z existujícího trezoru. Pokud existuje pouze soubor s názvem "masterkey.cryptomator", vyberte jej.
addvaultwizard.existing.chooseBtn=Vybrat... addvaultwizard.existing.chooseBtn=Vybrat...
addvaultwizard.existing.filePickerTitle=Vyberte soubor trezoru addvaultwizard.existing.filePickerTitle=Vyberte soubor trezoru
@@ -142,18 +145,18 @@ hub.auth.loginLink=Nebyli jste přesměrováni? Klikněte zde pro otevření.
### Receive Key ### Receive Key
hub.receive.message=Zpracovávání odezvy… hub.receive.message=Zpracovávání odezvy…
### Register Device ### Register Device
hub.register.message=Nové zařízení
hub.register.nameLabel=Název zařízení hub.register.nameLabel=Název zařízení
hub.register.occupiedMsg=Jméno je již používáno hub.register.registerBtn=Registrovat
hub.register.registerBtn=Potvrdit ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Jméno zařízení hub.registerSuccess.unlockBtn=Odemknout
hub.registerSuccess.description=Pro přístup k trezoru musí být vaše zařízení autorizováno majitelem trezoru.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Pojmenování zařízení se nezdařilo
### Unauthorized ### Unauthorized
hub.unauthorized.message=Přístup odepřen hub.unauthorized.message=Přístup odepřen
hub.unauthorized.description=Vaše zařízení dosud nebylo oprávněno k přístupu k tomuto trezoru. Požádejte vlastníka trezoru, aby jej autorizoval. hub.unauthorized.description=Vaše zařízení dosud nebylo oprávněno k přístupu k tomuto trezoru. Požádejte vlastníka trezoru, aby jej autorizoval.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Požadována akce
### License Exceeded ### License Exceeded
hub.invalidLicense.message=Licence Hubu je neplatná hub.invalidLicense.message=Licence Hubu je neplatná
@@ -268,6 +271,7 @@ preferences.interface.showMinimizeButton=Zobrazit tlačítko minimalizovat
preferences.interface.showTrayIcon=Zobrazit ikonu v liště (vyžaduje restart) preferences.interface.showTrayIcon=Zobrazit ikonu v liště (vyžaduje restart)
## Volume ## Volume
preferences.volume=Virtuální jednotky preferences.volume=Virtuální jednotky
preferences.volume.type=Výchozí typ jednotky
preferences.volume.type.automatic=Automatické preferences.volume.type.automatic=Automatické
preferences.volume.feature.mountFlags=Vlastní možnosti připojení disku preferences.volume.feature.mountFlags=Vlastní možnosti připojení disku
preferences.volume.feature.readOnly=Připojení disku pouze pro čtení preferences.volume.feature.readOnly=Připojení disku pouze pro čtení
@@ -338,6 +342,8 @@ main.vaultlist.contextMenu.unlockNow=Odemknout nyní
main.vaultlist.contextMenu.vaultoptions=Zobrazit možnosti trezoru main.vaultlist.contextMenu.vaultoptions=Zobrazit možnosti trezoru
main.vaultlist.contextMenu.reveal=Zobrazit jednotku main.vaultlist.contextMenu.reveal=Zobrazit jednotku
main.vaultlist.addVaultBtn=Přidat main.vaultlist.addVaultBtn=Přidat
main.vaultlist.addVaultBtn.menuItemNew=Nový trezor...
main.vaultlist.addVaultBtn.menuItemExisting=Existující trezor...
## Vault Detail ## Vault Detail
### Welcome ### Welcome
main.vaultDetail.welcomeOnboarding=Děkujeme, že jste si vybrali Cryptomator pro ochranu vašich souborů. Pokud potřebujete pomoc, podívejte se na naše návody: main.vaultDetail.welcomeOnboarding=Děkujeme, že jste si vybrali Cryptomator pro ochranu vašich souborů. Pokud potřebujete pomoc, podívejte se na naše návody:
@@ -407,6 +413,8 @@ vaultOptions.mount.mountPoint.auto=Automaticky vybrat vhodné místo
vaultOptions.mount.mountPoint.driveLetter=Použít zvolenou jednotku vaultOptions.mount.mountPoint.driveLetter=Použít zvolenou jednotku
vaultOptions.mount.mountPoint.directoryPickerButton=Vybrat... vaultOptions.mount.mountPoint.directoryPickerButton=Vybrat...
vaultOptions.mount.mountPoint.directoryPickerTitle=Vyberte složku vaultOptions.mount.mountPoint.directoryPickerTitle=Vyberte složku
vaultOptions.mount.volume.tcp.port=TCP port
vaultOptions.mount.volume.type=Typ jednotky
## Master Key ## Master Key
vaultOptions.masterkey=Heslo vaultOptions.masterkey=Heslo
vaultOptions.masterkey.changePasswordBtn=Změnit heslo vaultOptions.masterkey.changePasswordBtn=Změnit heslo
@@ -437,6 +445,10 @@ recoveryKey.recover.resetBtn=Resetovat
recoveryKey.recover.resetSuccess.message=Resetování hesla bylo úspěšné recoveryKey.recover.resetSuccess.message=Resetování hesla bylo úspěšné
# Convert Vault # Convert Vault
convertVault.title=Převést trezor
convertVault.convert.convertBtn.before=Převést
convertVault.convert.convertBtn.processing=Převádění…
convertVault.success.message=Konverze byla úspěšná
# New Password # New Password
newPassword.promptText=Zadejte nové heslo newPassword.promptText=Zadejte nové heslo
@@ -465,4 +477,6 @@ updateReminder.message=Zkontrolovat aktualizace?
updateReminder.description=Získejte aktuální informace o nových funkcích, opravách chyb a vylepšeních zabezpečení. Doporučujeme automaticky kontrolovat aktualizace. updateReminder.description=Získejte aktuální informace o nových funkcích, opravách chyb a vylepšeních zabezpečení. Doporučujeme automaticky kontrolovat aktualizace.
updateReminder.notNow=Nyní ne updateReminder.notNow=Nyní ne
updateReminder.yesOnce=Ano, jednou updateReminder.yesOnce=Ano, jednou
updateReminder.yesAutomatically=Ano, automaticky updateReminder.yesAutomatically=Ano, automaticky
# Share Vault
@@ -155,14 +155,10 @@ hub.receive.description=Cryptomator modtager og behandler svaret fra hubben. Ven
### Register Device ### Register Device
hub.register.message=Ny Enhed hub.register.message=Ny Enhed
hub.register.nameLabel=Enheds-navn hub.register.nameLabel=Enheds-navn
hub.register.occupiedMsg=Navnet er allerede i brug ### Register Device Legacy
hub.register.registerBtn=Bekræft
### Registration Success ### Registration Success
hub.registerSuccess.message=Enhed navngivet hub.registerSuccess.unlockBtn=Lås op
hub.registerSuccess.description=For at tilgå boksen, skal din enhed godkendes af boks-ejeren.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Navngivning af enhed mislykkedes
hub.registerFailed.description=Der opstod en fejl i navngivnings-processen. Kig i applikations-loggen for flere detaljer.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Adgang nægtet hub.unauthorized.message=Adgang nægtet
hub.unauthorized.description=Din enhed er endnu ikke blevet godkendt til at få adgang til denne boks. Spørg boks-ejeren om godkendelse. hub.unauthorized.description=Din enhed er endnu ikke blevet godkendt til at få adgang til denne boks. Spørg boks-ejeren om godkendelse.
@@ -507,4 +503,6 @@ updateReminder.message=Tjek for opdateringer?
updateReminder.description=Hold dig opdateret med nye funktioner, fejlrettelser og sikkerhedsforbedringer. Vi anbefaler automatisk at søge efter opdateringer. updateReminder.description=Hold dig opdateret med nye funktioner, fejlrettelser og sikkerhedsforbedringer. Vi anbefaler automatisk at søge efter opdateringer.
updateReminder.notNow=Ikke nu updateReminder.notNow=Ikke nu
updateReminder.yesOnce=Ja, én gang updateReminder.yesOnce=Ja, én gang
updateReminder.yesAutomatically=Ja, automatisk updateReminder.yesAutomatically=Ja, automatisk
# Share Vault
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Wähle einen Namen für den Tresor
addvaultwizard.new.namePrompt=Tresorname addvaultwizard.new.namePrompt=Tresorname
### Location ### Location
addvaultwizard.new.locationInstruction=Wo soll Cryptomator die verschlüsselten Dateien deines Tresors ablegen? addvaultwizard.new.locationInstruction=Wo soll Cryptomator die verschlüsselten Dateien deines Tresors ablegen?
addvaultwizard.new.locationLoading=Überprüfen des lokalen Dateisystems auf Standard-Cloud-Verzeichnisse…
addvaultwizard.new.locationLabel=Speicherort addvaultwizard.new.locationLabel=Speicherort
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Eigener Ort addvaultwizard.new.directoryPickerLabel=Eigener Ort
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Die temporäre, versteckte Da
unlock.error.customPath.description.couldNotBeCleaned=Dein Tresor konnte nicht in den Pfad „%s“ eingehängt werden. Bitte versuche es erneut oder wähle einen anderen Pfad aus. unlock.error.customPath.description.couldNotBeCleaned=Dein Tresor konnte nicht in den Pfad „%s“ eingehängt werden. Bitte versuche es erneut oder wähle einen anderen Pfad aus.
unlock.error.customPath.description.notEmptyDir=Der benutzerdefinierte Einhängepunkt „%s“ ist kein leerer Ordner. Bitte wähle einen leeren Ordner und versuche es erneut. unlock.error.customPath.description.notEmptyDir=Der benutzerdefinierte Einhängepunkt „%s“ ist kein leerer Ordner. Bitte wähle einen leeren Ordner und versuche es erneut.
unlock.error.customPath.description.generic=Du hast für diesen Tresor einen benutzerdefinierten Einhängepunkt ausgewählt, aber dessen Verwendung ist mit folgender Meldung fehlgeschlagen: %2$s unlock.error.customPath.description.generic=Du hast für diesen Tresor einen benutzerdefinierten Einhängepunkt ausgewählt, aber dessen Verwendung ist mit folgender Meldung fehlgeschlagen: %2$s
unlock.error.fuseRestartRequired.message=Tresor konnte nicht entsperrt werden unlock.error.restartRequired.message=Tresor konnte nicht entsperrt werden
unlock.error.fuseRestartRequired.description=Ändere den Laufwerkstyp in den Tresoroptionen oder starte Cryptomator neu. unlock.error.restartRequired.description=Ändere den Laufwerkstyp in den Tresoroptionen oder starte Cryptomator neu.
unlock.error.title=„%s“ konnte nicht entsperrt werden unlock.error.title=„%s“ konnte nicht entsperrt werden
## Hub ## Hub
hub.noKeychain.message=Zugriff auf Geräteschlüssel nicht möglich hub.noKeychain.message=Zugriff auf Geräteschlüssel nicht möglich
@@ -157,17 +158,22 @@ hub.receive.message=Antwort wird verarbeitet …
hub.receive.description=Cryptomator empfängt und verarbeitet gerade die Antwort vom Hub. Bitte warten. hub.receive.description=Cryptomator empfängt und verarbeitet gerade die Antwort vom Hub. Bitte warten.
### Register Device ### Register Device
hub.register.message=Neues Gerät hub.register.message=Neues Gerät
hub.register.description=Dies ist der erste Hub-Zugriff von diesem Gerät. Bitte autorisiere dich mit deinem Account Key. hub.register.description=Dies ist der erste Hub-Zugriff von diesem Gerät. Bitte registriere es mit deinem Account Key.
hub.register.nameLabel=Gerätename hub.register.nameLabel=Gerätename
hub.register.invalidAccountKeyLabel=Ungültiger Account Key hub.register.invalidAccountKeyLabel=Ungültiger Account Key
hub.register.occupiedMsg=Name bereits in Verwendung hub.register.registerBtn=Registrieren
hub.register.registerBtn=Bestätigen ### Register Device Legacy
hub.register.legacy.occupiedMsg=Name wird bereits verwendet
hub.register.legacy.description=Dies ist der erste Hub-Zugriff von diesem Gerät. Bitte registriere es.
### Registration Success ### Registration Success
hub.registerSuccess.message=Gerät wurde benannt hub.registerSuccess.message=Gerät registriert
hub.registerSuccess.description=Für Zugriff auf den Tresor muss dein Gerät vom Tresorbesitzer autorisiert werden. hub.registerSuccess.description=Dein Gerät ist erfolgreich registriert. Du kannst den Tresor jetzt entsperren.
hub.registerSuccess.unlockBtn=Entsperren
hub.registerSuccess.legacy.description=Um den Tresor zu öffnen muss dein Gerät zusätzlich vom Tresorbesitzer autorisiert werden.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Gerät konnte kein Name gegeben werden hub.registerFailed.message=Geräteregistrierung fehlgeschlagen
hub.registerFailed.description=Während der Namensvergabe wurde ein Fehler ausgelöst. Weitere Details findest du im Anwendungsprotokoll. hub.registerFailed.description.generic=Im Registrierungsprozess ist ein Fehler aufgetreten. Weitere Details findest du im Anwendungsprotokoll.
hub.registerFailed.description.deviceAlreadyExists=Dieses Gerät ist bereits für einen anderen Benutzer registriert. Ändere das Benutzerkonto oder verwende ein anderes Gerät.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Zugriff verweigert hub.unauthorized.message=Zugriff verweigert
hub.unauthorized.description=Dein Gerät wurde noch nicht für den Zugriff auf diesen Tresor autorisiert. Bitte den Tresorbesitzer, dein Gerät zu autorisieren. hub.unauthorized.description=Dein Gerät wurde noch nicht für den Zugriff auf diesen Tresor autorisiert. Bitte den Tresorbesitzer, dein Gerät zu autorisieren.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Entsperren …
main.vaultDetail.unlockNowBtn=Jetzt entsperren main.vaultDetail.unlockNowBtn=Jetzt entsperren
main.vaultDetail.optionsBtn=Tresoroptionen main.vaultDetail.optionsBtn=Tresoroptionen
main.vaultDetail.passwordSavedInKeychain=Passwort gespeichert main.vaultDetail.passwordSavedInKeychain=Passwort gespeichert
main.vaultDetail.share=Teilen…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=ENTSPERRT main.vaultDetail.unlockedStatus=ENTSPERRT
main.vaultDetail.accessLocation=Deine Tresorinhalte sind hier erreichbar: main.vaultDetail.accessLocation=Deine Tresorinhalte sind hier erreichbar:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Gewähltes Verzeichnis verwenden
vaultOptions.mount.mountPoint.directoryPickerButton=Durchsuchen … vaultOptions.mount.mountPoint.directoryPickerButton=Durchsuchen …
vaultOptions.mount.mountPoint.directoryPickerTitle=Wähle ein Verzeichnis vaultOptions.mount.mountPoint.directoryPickerTitle=Wähle ein Verzeichnis
vaultOptions.mount.volumeType.default=Standard (%s) vaultOptions.mount.volumeType.default=Standard (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Um diesen Laufwerkstyp verwenden zu können, muss Cryptomator neu gestartet werden. vaultOptions.mount.volumeType.restartRequired=Um diesen Laufwerkstyp verwenden zu können, muss Cryptomator neu gestartet werden.
vaultOptions.mount.volume.tcp.port=TCP-Port vaultOptions.mount.volume.tcp.port=TCP-Port
vaultOptions.mount.volume.type=Laufwerkstyp vaultOptions.mount.volume.type=Laufwerkstyp
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Nach Updates suchen?
updateReminder.description=Bleib auf dem Laufenden mit neuen Funktionen, Fehlerbehebungen und Sicherheitsverbesserungen. Wir empfehlen, automatisch nach Updates zu suchen. updateReminder.description=Bleib auf dem Laufenden mit neuen Funktionen, Fehlerbehebungen und Sicherheitsverbesserungen. Wir empfehlen, automatisch nach Updates zu suchen.
updateReminder.notNow=Nicht jetzt updateReminder.notNow=Nicht jetzt
updateReminder.yesOnce=Ja, einmalig updateReminder.yesOnce=Ja, einmalig
updateReminder.yesAutomatically=Ja, automatisch updateReminder.yesAutomatically=Ja, automatisch
# Share Vault
shareVault.title=Tresor teilen
shareVault.message=Möchtest du deinen Tresor mit anderen teilen?
shareVault.description=Seien immer vorsichtig, wenn du deinen Tresor mit anderen teilst. Um den Tresor zu teilen, muss du folgendes tun:
shareVault.instruction.1=1. Teile den Zugriff auf den verschlüsselten Tresorordner in deinem Cloud-Speicher.
shareVault.instruction.2=2. Teile das Tresorpasswort auf einem sicheren Weg.
shareVault.remarkBestPractices=Für mehr Informationen lies dir unsere Vorschläge für bewährte Praktiken in unserer Dokumentation durch.
shareVault.docsTooltip=Öffne die Dokumentation, um mehr über das Teilen von Tresoren zu erfahren.
shareVault.hubAd.description=Der sichere Weg in Teams zu arbeiten
shareVault.hubAd.keyManagement=• Zero-knowledge Schlüsselverwaltung
shareVault.hubAd.authentication=• Starke Authentifizierung
shareVault.hubAd.encryption=• Ende-zu-Ende-Verschlüsselung
shareVault.visitHub=Besuche Cryptomator Hub
shareVault.hub.message=Wie man einen Hub Tresor teilt
shareVault.hub.description=Um den Tresor mit einem anderen Teammitglied zu teilen, musst du zwei Schritte ausführen:
shareVault.hub.instruction.1=1. Teile den Zugriff auf den verschlüsselten Tresorordner in deinem Cloud-Speicher.
shareVault.hub.instruction.2=2. Füge das Teammitglied in Cryptomator Hub als Tresormitglied hinzu.
shareVault.hub.openHub=Cryptomator Hub öffnen
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Διαλέξτε ένα όνομα για τ
addvaultwizard.new.namePrompt=Όνομα Κρύπτης addvaultwizard.new.namePrompt=Όνομα Κρύπτης
### Location ### Location
addvaultwizard.new.locationInstruction=Που θα πρέπει να αποθηκεύσει το Cryptomator τα κωδικοποιημένα αρχεία της κρύπτης σου; addvaultwizard.new.locationInstruction=Που θα πρέπει να αποθηκεύσει το Cryptomator τα κωδικοποιημένα αρχεία της κρύπτης σου;
addvaultwizard.new.locationLoading=Έλεγχος τοπικού συστήματος αρχείων για προεπιλεγμένους καταλόγους αποθήκευσης cloud…
addvaultwizard.new.locationLabel=Θέση αποθήκευσης addvaultwizard.new.locationLabel=Θέση αποθήκευσης
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Προσαρμοσμένη τοποθεσία addvaultwizard.new.directoryPickerLabel=Προσαρμοσμένη τοποθεσία
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Το προσωρινό, κρ
unlock.error.customPath.description.couldNotBeCleaned=Η κρύπτη σας δεν μπορεί να τοποθετηθεί στη διαδρομή "%s". Παρακαλώ δοκιμάστε ξανά ή επιλέξτε διαφορετική διαδρομή. unlock.error.customPath.description.couldNotBeCleaned=Η κρύπτη σας δεν μπορεί να τοποθετηθεί στη διαδρομή "%s". Παρακαλώ δοκιμάστε ξανά ή επιλέξτε διαφορετική διαδρομή.
unlock.error.customPath.description.notEmptyDir=Η προσαρμοσμένη διαδρομή προσάρτησης "%s" δεν είναι ένας άδειος φάκελος. Παρακαλώ επιλέξτε έναν άδειο φάκελο και προσπαθήστε ξανά. unlock.error.customPath.description.notEmptyDir=Η προσαρμοσμένη διαδρομή προσάρτησης "%s" δεν είναι ένας άδειος φάκελος. Παρακαλώ επιλέξτε έναν άδειο φάκελο και προσπαθήστε ξανά.
unlock.error.customPath.description.generic=Έχετε επιλέξει μια προσαρμοσμένη διαδρομή προσάρτησης για αυτή την κρύπτη, αλλά η χρήση της απέτυχε με το μήνυμα: %2$s unlock.error.customPath.description.generic=Έχετε επιλέξει μια προσαρμοσμένη διαδρομή προσάρτησης για αυτή την κρύπτη, αλλά η χρήση της απέτυχε με το μήνυμα: %2$s
unlock.error.fuseRestartRequired.message=Αδυναμία ξεκλειδώματος κρύπτης unlock.error.restartRequired.message=Αδυναμία ξεκλειδώματος κρύπτης
unlock.error.fuseRestartRequired.description=Αλλάξτε τον τύπο τόμου στις επιλογές κρύπτης ή επανεκκινήστε το Cryptomator. unlock.error.restartRequired.description=Αλλάξτε τον τύπο τόμου στις επιλογές κρύπτης ή επανεκκινήστε το Cryptomator.
unlock.error.title=Ξεκλείδωμα "%s" απέτυχε unlock.error.title=Ξεκλείδωμα "%s" απέτυχε
## Hub ## Hub
hub.noKeychain.message=Δεν είναι δυνατή η πρόσβαση στο κλειδί της συσκευής hub.noKeychain.message=Δεν είναι δυνατή η πρόσβαση στο κλειδί της συσκευής
@@ -157,17 +158,22 @@ hub.receive.message=Επεξεργασία απάντησης…
hub.receive.description=Το Cryptomator λαμβάνει και επεξεργάζεται την απάντηση από το Hub. Παρακαλώ περιμένετε. hub.receive.description=Το Cryptomator λαμβάνει και επεξεργάζεται την απάντηση από το Hub. Παρακαλώ περιμένετε.
### Register Device ### Register Device
hub.register.message=Νέα Συσκευή hub.register.message=Νέα Συσκευή
hub.register.description=Αυτή είναι η πρώτη πρόσβαση Hub από αυτήν τη συσκευή. Παρακαλούμε εξουσιοδοτήστε την χρησιμοποιώντας το κλειδί του λογαριασμού σας. hub.register.description=Αυτή είναι η πρώτη πρόσβαση Hub από αυτήν τη συσκευή. Εγγραφείτε χρησιμοποιώντας το Κλειδί του Λογαριασμού σας.
hub.register.nameLabel=Όνομα Συσκευής hub.register.nameLabel=Όνομα Συσκευής
hub.register.invalidAccountKeyLabel=Μη Έγκυρο Κλειδί Λογαριασμού hub.register.invalidAccountKeyLabel=Μη Έγκυρο Κλειδί Λογαριασμού
hub.register.occupiedMsg=Το όνομα χρησιμοποιείται ήδη hub.register.registerBtn=Εγγραφή
hub.register.registerBtn=Επιβεβαίωση ### Register Device Legacy
hub.register.legacy.occupiedMsg=Το όνομα χρησιμοποιείται ήδη
hub.register.legacy.description=Αυτή είναι η πρώτη πρόσβαση Hub από αυτήν τη συσκευή. Παρακαλούμε καταχωρήστε τη.
### Registration Success ### Registration Success
hub.registerSuccess.message=Η συσκευή ονομάστηκε hub.registerSuccess.message=Η συσκευή καταχωρήθηκε
hub.registerSuccess.description=Για να αποκτήσετε πρόσβαση στην κρύπτη, η συσκευή σας πρέπει να είναι εξουσιοδοτημένη από τον κάτοχο της κρύπτης. hub.registerSuccess.description=Η συσκευή σας καταχωρήθηκε με επιτυχία. Τώρα μπορείτε να συνεχίσετε να ξεκλειδώσετε την κρύπτη.
hub.registerSuccess.unlockBtn=Ξεκλείδωμα
hub.registerSuccess.legacy.description=Για να αποκτήσετε πρόσβαση στην κρύπτη, η συσκευή σας πρέπει να έχει επιπλέον εξουσιοδότηση από τον κάτοχο της κρύπτης.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Η ονομασία της συσκευής απέτυχε hub.registerFailed.message=Η εγγραφή της συσκευής απέτυχε
hub.registerFailed.description=Παρουσιάστηκε σφάλμα στη διαδικασία ονομασίας. Για περισσότερες λεπτομέρειες, ανατρέξτε στο αρχείο καταγραφής της εφαρμογής. hub.registerFailed.description.generic=Παρουσιάστηκε σφάλμα στη διαδικασία εγγραφής. Για περισσότερες λεπτομέρειες, ανατρέξτε στο αρχείο καταγραφής της εφαρμογής.
hub.registerFailed.description.deviceAlreadyExists=Αυτή η συσκευή είναι ήδη εγγεγραμμένη για διαφορετικό χρήστη. Προσπαθήστε να αλλάξετε τον λογαριασμό χρήστη ή να χρησιμοποιήσετε διαφορετική συσκευή.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Δεν επιτρέπεται η πρόσβαση hub.unauthorized.message=Δεν επιτρέπεται η πρόσβαση
hub.unauthorized.description=Η συσκευή σας δεν έχει ακόμη εξουσιοδοτηθεί να έχει πρόσβαση σε αυτή την κρύπτη. Ζητήστε από τον κάτοχο της κρύπτης να την εξουσιοδοτήσει. hub.unauthorized.description=Η συσκευή σας δεν έχει ακόμη εξουσιοδοτηθεί να έχει πρόσβαση σε αυτή την κρύπτη. Ζητήστε από τον κάτοχο της κρύπτης να την εξουσιοδοτήσει.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Ξεκλείδωμα…
main.vaultDetail.unlockNowBtn=Ξεκλείδωμα τώρα main.vaultDetail.unlockNowBtn=Ξεκλείδωμα τώρα
main.vaultDetail.optionsBtn=Επιλογές vault main.vaultDetail.optionsBtn=Επιλογές vault
main.vaultDetail.passwordSavedInKeychain=Ο κωδικός αποθηκεύτηκε main.vaultDetail.passwordSavedInKeychain=Ο κωδικός αποθηκεύτηκε
main.vaultDetail.share=Κοινοποίηση…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=ΞΕΚΛΕΙΔΩΜΕΝΟ main.vaultDetail.unlockedStatus=ΞΕΚΛΕΙΔΩΜΕΝΟ
main.vaultDetail.accessLocation=Τα δεδομένα του vault σας είναι διαθέσιμα εδώ: main.vaultDetail.accessLocation=Τα δεδομένα του vault σας είναι διαθέσιμα εδώ:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Χρήση επιλεγμένου κατα
vaultOptions.mount.mountPoint.directoryPickerButton=Επιλογή… vaultOptions.mount.mountPoint.directoryPickerButton=Επιλογή…
vaultOptions.mount.mountPoint.directoryPickerTitle=Επιλέξτε έναν κατάλογο vaultOptions.mount.mountPoint.directoryPickerTitle=Επιλέξτε έναν κατάλογο
vaultOptions.mount.volumeType.default=Προεπιλογή (%s) vaultOptions.mount.volumeType.default=Προεπιλογή (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Για να χρησιμοποιήσετε αυτόν τον τύπο τόμου, πρέπει να γίνει επανεκκίνηση του Cryptomator. vaultOptions.mount.volumeType.restartRequired=Για να χρησιμοποιήσετε αυτόν τον τύπο τόμου, το Cryptomator πρέπει να επανεκκινηθεί.
vaultOptions.mount.volume.tcp.port=Θύρα TCP vaultOptions.mount.volume.tcp.port=Θύρα TCP
vaultOptions.mount.volume.type=Τύπος Τόμου vaultOptions.mount.volume.type=Τύπος Τόμου
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Έλεγχος για ενημερώσεις;
updateReminder.description=Μείνετε ενημερωμένοι με νέες δυνατότητες, διορθώσεις σφαλμάτων και βελτιώσεις ασφάλειας. Συνιστούμε τον αυτόματο έλεγχο για ενημερώσεις. updateReminder.description=Μείνετε ενημερωμένοι με νέες δυνατότητες, διορθώσεις σφαλμάτων και βελτιώσεις ασφάλειας. Συνιστούμε τον αυτόματο έλεγχο για ενημερώσεις.
updateReminder.notNow=Όχι Τώρα updateReminder.notNow=Όχι Τώρα
updateReminder.yesOnce=Ναι, Μία Φορά updateReminder.yesOnce=Ναι, Μία Φορά
updateReminder.yesAutomatically=Ναι, Αυτόματα updateReminder.yesAutomatically=Ναι, Αυτόματα
# Share Vault
shareVault.title=Κοινή χρήση Κρύπτης
shareVault.message=Θα θέλατε να μοιραστείτε την κρύπτη σας με άλλους;
shareVault.description=Να είστε πάντα προσεκτικοί όταν μοιράζεστε την κρύπτη σας με άλλα άτομα. Εν ολίγοις, ακολουθήστε τα παρακάτω βήματα:
shareVault.instruction.1=1. Μοιραστείτε την πρόσβαση στον κρυπτογραφημένο φάκελο κρύπτης μέσω του χώρου αποθήκευσης στο cloud.
shareVault.instruction.2=2. Μοιραστείτε τον κωδικό πρόσβασης της κρύπτης με ασφαλή τρόπο.
shareVault.remarkBestPractices=Για περισσότερες πληροφορίες, ανατρέξτε στις προτάσεις βέλτιστων πρακτικών στα έγγραφά μας.
shareVault.docsTooltip=Ανοίξτε τις οδηγίες για να μάθετε περισσότερα σχετικά με την κοινή χρήση κρυπτών.
shareVault.hubAd.description=Ο ασφαλής τρόπος εργασίας σε ομάδες
shareVault.hubAd.keyManagement=• Διαχείριση κλειδιών μηδενικής γνώσης
shareVault.hubAd.authentication=• Ισχυρός έλεγχος ταυτότητας
shareVault.hubAd.encryption=• Κρυπτογράφηση από άκρο σε άκρο
shareVault.visitHub=Επισκεφτείτε το Cryptomator Hub
shareVault.hub.message=Πώς να μοιραστείτε μια κρύπτη Hub
shareVault.hub.description=Για να μοιραστείτε το περιεχόμενο της κρύπτης με άλλο μέλος της ομάδας, πρέπει να εκτελέσετε δύο βήματα:
shareVault.hub.instruction.1=1. Μοιραστείτε την πρόσβαση στον κρυπτογραφημένο φάκελο κρύπτης μέσω του χώρου αποθήκευσης στο cloud.
shareVault.hub.instruction.2=2. Παραχωρήστε πρόσβαση σε μέλος της ομάδας στο Cryptomator Hub.
shareVault.hub.openHub=Ανοίξτε το Cryptomator Hub
+6 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=El archivo oculto temporal "%
unlock.error.customPath.description.couldNotBeCleaned=Su bóveda no se pudo montar en la ruta "%s". Intente de nuevo o elija una ruta diferente. unlock.error.customPath.description.couldNotBeCleaned=Su bóveda no se pudo montar en la ruta "%s". Intente de nuevo o elija una ruta diferente.
unlock.error.customPath.description.notEmptyDir=La ruta de montaje personalizada "%s" no es una carpeta vacía. Elija una carpeta vacía y vuelva a intentarlo. unlock.error.customPath.description.notEmptyDir=La ruta de montaje personalizada "%s" no es una carpeta vacía. Elija una carpeta vacía y vuelva a intentarlo.
unlock.error.customPath.description.generic=Seleccionó una ruta de montaje personalizada para esta bóveda, pero falló al usarla con el mensaje: %2$s unlock.error.customPath.description.generic=Seleccionó una ruta de montaje personalizada para esta bóveda, pero falló al usarla con el mensaje: %2$s
unlock.error.fuseRestartRequired.message=No se puede desbloquear la bóveda
unlock.error.fuseRestartRequired.description=Cambie el tipo de volumen en las opciones de la bóveda o reinicie Cryptomator.
unlock.error.title=Error al desbloquear "%s" unlock.error.title=Error al desbloquear "%s"
## Hub ## Hub
hub.noKeychain.message=No se puede acceder a la clave del dispositivo hub.noKeychain.message=No se puede acceder a la clave del dispositivo
@@ -157,17 +155,13 @@ hub.receive.message=Procesando la respuesta…
hub.receive.description=Cryptomator está recibiendo y procesando la respuesta del Hub. Por favor espere. hub.receive.description=Cryptomator está recibiendo y procesando la respuesta del Hub. Por favor espere.
### Register Device ### Register Device
hub.register.message=Nuevo dispositivo hub.register.message=Nuevo dispositivo
hub.register.description=Este es el primer acceso al Hub desde este dispositivo. Por favor, autorícelo usando su Account Key.
hub.register.nameLabel=Nombre del dispositivo hub.register.nameLabel=Nombre del dispositivo
hub.register.invalidAccountKeyLabel=Account Key no válida hub.register.invalidAccountKeyLabel=Account Key no válida
hub.register.occupiedMsg=Nombre ya en uso hub.register.registerBtn=Registrarse
hub.register.registerBtn=Confirmar ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Dispositivo nombrado hub.registerSuccess.unlockBtn=Desbloquear
hub.registerSuccess.description=Para acceder a la bóveda, su dispositivo debe ser autorizado por el propietario de la bóveda.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Error al nombrar el dispositivo
hub.registerFailed.description=Ocurrió un error en el nombramiento. Para más detalles consulte el registro de la aplicación.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acceso denegado hub.unauthorized.message=Acceso denegado
hub.unauthorized.description=Su dispositivo aún no ha sido autorizado para acceder a esta bóveda. Pídale al propietario de la bóveda que lo autorice. hub.unauthorized.description=Su dispositivo aún no ha sido autorizado para acceder a esta bóveda. Pídale al propietario de la bóveda que lo autorice.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Usar directorio seleccionado
vaultOptions.mount.mountPoint.directoryPickerButton=Elegir… vaultOptions.mount.mountPoint.directoryPickerButton=Elegir…
vaultOptions.mount.mountPoint.directoryPickerTitle=Seleccionar un directorio vaultOptions.mount.mountPoint.directoryPickerTitle=Seleccionar un directorio
vaultOptions.mount.volumeType.default=Predeterminado (%s) vaultOptions.mount.volumeType.default=Predeterminado (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Para utilizar este tipo de volumen, debe reiniciarse Criptomator.
vaultOptions.mount.volume.tcp.port=Puerto TCP vaultOptions.mount.volume.tcp.port=Puerto TCP
vaultOptions.mount.volume.type=Tipo de volumen vaultOptions.mount.volume.type=Tipo de volumen
## Master Key ## Master Key
@@ -523,4 +516,6 @@ updateReminder.message=¿Buscar actualizaciones?
updateReminder.description=Manténgase actualizado con funciones nuevas, correcciones de errores y mejoras de seguridad. Recomendamos comprobar actualizaciones automáticamente. updateReminder.description=Manténgase actualizado con funciones nuevas, correcciones de errores y mejoras de seguridad. Recomendamos comprobar actualizaciones automáticamente.
updateReminder.notNow=Ahora no updateReminder.notNow=Ahora no
updateReminder.yesOnce=Sí, una vez updateReminder.yesOnce=Sí, una vez
updateReminder.yesAutomatically=Sí, automáticamente updateReminder.yesAutomatically=Sí, automáticamente
# Share Vault
@@ -62,7 +62,9 @@ unlock.unlockBtn=بازکردن قفل
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=بازکردن قفل
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -145,4 +147,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=انتخاب کنید…
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -139,14 +139,10 @@ hub.receive.message=Odotetaan vastausta…
hub.receive.description=Cryptomator yhdistää Hub:iin. Ole hyvä ja odota. hub.receive.description=Cryptomator yhdistää Hub:iin. Ole hyvä ja odota.
### Register Device ### Register Device
hub.register.nameLabel=Laitteen Nimi hub.register.nameLabel=Laitteen Nimi
hub.register.occupiedMsg=Tämä nimi on jo käytössä ### Register Device Legacy
hub.register.registerBtn=Vahvista
### Registration Success ### Registration Success
hub.registerSuccess.message=Laite nimetty onnistuneesti hub.registerSuccess.unlockBtn=Avaa
hub.registerSuccess.description=Käyttääksesi holvia, holvin omistajan on valtuutettava laitteesi.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Laitteen nimeäminen epäonnistui
hub.registerFailed.description=Nimeämisprosessissa tapahtui virhe. Löydät lisää tietoja lokitiedostoista.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Pääsy estetty hub.unauthorized.message=Pääsy estetty
hub.unauthorized.description=Laitteellasi ei ole pääsyvaltuutusta tähän holviin. Pyydä holvin omistajaa lisäämän valtuutus laitteellesi. hub.unauthorized.description=Laitteellasi ei ole pääsyvaltuutusta tähän holviin. Pyydä holvin omistajaa lisäämän valtuutus laitteellesi.
@@ -269,4 +265,6 @@ vaultOptions.masterkey.changePasswordBtn=Vaihda salasana
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -141,6 +141,7 @@ unlock.error.customPath.description.hideawayNotDir=Ang pansamantalang nakatagong
unlock.error.customPath.description.couldNotBeCleaned=Hindi ma-mount ang iyong vault sa path na "%s". Pakisubukang muli o pumili ng ibang landas. unlock.error.customPath.description.couldNotBeCleaned=Hindi ma-mount ang iyong vault sa path na "%s". Pakisubukang muli o pumili ng ibang landas.
unlock.error.customPath.description.notEmptyDir=Ang custom na mount path na "%s" ay hindi isang walang laman na folder. Mangyaring pumili ng isang walang laman na folder at subukang muli. unlock.error.customPath.description.notEmptyDir=Ang custom na mount path na "%s" ay hindi isang walang laman na folder. Mangyaring pumili ng isang walang laman na folder at subukang muli.
unlock.error.customPath.description.generic=Pumili ka ng custom na mount path para sa vault na ito, ngunit nabigo ang paggamit nito sa mensaheng: %2$s unlock.error.customPath.description.generic=Pumili ka ng custom na mount path para sa vault na ito, ngunit nabigo ang paggamit nito sa mensaheng: %2$s
unlock.error.title=Hindi mabuksan ang "%s"
## Hub ## Hub
hub.noKeychain.message=Hindi ma-access ang key ng device hub.noKeychain.message=Hindi ma-access ang key ng device
hub.noKeychain.description=Para ma-unlock ang mga Hub vault, kailangan ng device key, na sini-secure gamit ang keychain. Upang magpatuloy, paganahin ang “%s” at pumili ng keychain sa mga kagustuhan. hub.noKeychain.description=Para ma-unlock ang mga Hub vault, kailangan ng device key, na sini-secure gamit ang keychain. Upang magpatuloy, paganahin ang “%s” at pumili ng keychain sa mga kagustuhan.
@@ -154,17 +155,12 @@ hub.receive.message=Pinoproseso ang tugon…
hub.receive.description=Ang Cryptomator ay tumatanggap at nagpoproseso ng tugon mula sa Hub. Mangyaring maghintay. hub.receive.description=Ang Cryptomator ay tumatanggap at nagpoproseso ng tugon mula sa Hub. Mangyaring maghintay.
### Register Device ### Register Device
hub.register.message=Bagong Device hub.register.message=Bagong Device
hub.register.description=Ito ang unang Hub access mula sa device na ito. Mangyaring pahintulutan ito gamit ang iyong Account Key.
hub.register.nameLabel=Pangalan ng device hub.register.nameLabel=Pangalan ng device
hub.register.invalidAccountKeyLabel=Di-wastong Account Key hub.register.invalidAccountKeyLabel=Di-wastong Account Key
hub.register.occupiedMsg=Ang pangalan ay nagamit na ### Register Device Legacy
hub.register.registerBtn=Kumpirmahin
### Registration Success ### Registration Success
hub.registerSuccess.message=Pinangalanan ang device hub.registerSuccess.unlockBtn=I-unlock
hub.registerSuccess.description=Para ma-access ang vault, kailangang pahintulutan ng may-ari ng vault ang iyong device.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Nabigo ang pagpapangalan ng device
hub.registerFailed.description=Nagkaroon ng error sa proseso ng pagbibigay ng pangalan. Para sa higit pang mga detalye, tingnan ang log ng aplikasyon.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Walang pahintulot hub.unauthorized.message=Walang pahintulot
hub.unauthorized.description=Hindi pa pinahihintulutan ang iyong device na i-access ang vault na ito. Hilingin sa may-ari ng vault na pahintulutan ito. hub.unauthorized.description=Hindi pa pinahihintulutan ang iyong device na i-access ang vault na ito. Hilingin sa may-ari ng vault na pahintulutan ito.
@@ -513,4 +509,6 @@ updateReminder.message=I-tsek kung may bagong update?
updateReminder.description=Manatiling updated sa mga bagong feature, pag-aayos ng bug, at pagpapahusay sa seguridad. Inirerekomenda naming awtomatikong suriin ang mga update. updateReminder.description=Manatiling updated sa mga bagong feature, pag-aayos ng bug, at pagpapahusay sa seguridad. Inirerekomenda naming awtomatikong suriin ang mga update.
updateReminder.notNow=Hindi ngayon updateReminder.notNow=Hindi ngayon
updateReminder.yesOnce=Oo, Minsan updateReminder.yesOnce=Oo, Minsan
updateReminder.yesAutomatically=Oo, Awtomatiko updateReminder.yesAutomatically=Oo, Awtomatiko
# Share Vault
+37 -10
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Choisir un nom pour le coffre
addvaultwizard.new.namePrompt=Nom du coffre addvaultwizard.new.namePrompt=Nom du coffre
### Location ### Location
addvaultwizard.new.locationInstruction=Où Cryptomator doit-il stocker les fichiers chiffrés de votre coffre ? addvaultwizard.new.locationInstruction=Où Cryptomator doit-il stocker les fichiers chiffrés de votre coffre ?
addvaultwizard.new.locationLoading=Vérification du système de fichiers local pour les répertoires de stockage par défaut du cloud…
addvaultwizard.new.locationLabel=Emplacement de stockage addvaultwizard.new.locationLabel=Emplacement de stockage
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Emplacement personnalisé addvaultwizard.new.directoryPickerLabel=Emplacement personnalisé
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Le fichier temporaire et cach
unlock.error.customPath.description.couldNotBeCleaned=Votre coffre n'a pas pu être monté au point "%s". Veuillez réessayer ou choisissez un autre point. unlock.error.customPath.description.couldNotBeCleaned=Votre coffre n'a pas pu être monté au point "%s". Veuillez réessayer ou choisissez un autre point.
unlock.error.customPath.description.notEmptyDir=Le chemin de montage personnalisé "%s" n'est pas un dossier vide. Veuillez choisir un dossier vide et réessayez. unlock.error.customPath.description.notEmptyDir=Le chemin de montage personnalisé "%s" n'est pas un dossier vide. Veuillez choisir un dossier vide et réessayez.
unlock.error.customPath.description.generic=Vous avez sélectionné un point de montage personnalisé pour ce coffre, mais son utilisation a échoué avec le message : %2$s unlock.error.customPath.description.generic=Vous avez sélectionné un point de montage personnalisé pour ce coffre, mais son utilisation a échoué avec le message : %2$s
unlock.error.fuseRestartRequired.message=Impossible de déverrouiller le coffre unlock.error.restartRequired.message=Impossible de déverrouiller le volume
unlock.error.fuseRestartRequired.description=Changez le type de volume dans les options du coffre ou redémarrez Cryptomator. unlock.error.restartRequired.description=Modifiez le type de volume dans les options du coffre ou redémarrez Cryptomator.
unlock.error.title=Échec du déverrouillage de "%s" unlock.error.title=Échec du déverrouillage de "%s"
## Hub ## Hub
hub.noKeychain.message=Impossible d'accéder à la clé du périphérique hub.noKeychain.message=Impossible d'accéder à la clé du périphérique
@@ -160,14 +161,19 @@ hub.register.message=Nouvel Appareil
hub.register.description=Il s'agit du premier accès de cet appareil au Hub. Veuillez l'autoriser à l'aide de votre clé de compte. hub.register.description=Il s'agit du premier accès de cet appareil au Hub. Veuillez l'autoriser à l'aide de votre clé de compte.
hub.register.nameLabel=Nom de l'appareil hub.register.nameLabel=Nom de l'appareil
hub.register.invalidAccountKeyLabel=Clé de compte invalide hub.register.invalidAccountKeyLabel=Clé de compte invalide
hub.register.occupiedMsg=Nom déjà utilisé hub.register.registerBtn=Inscription
hub.register.registerBtn=Confirmer ### Register Device Legacy
hub.register.legacy.occupiedMsg=Nom déjà utilisé
hub.register.legacy.description=Il s'agit du premier accès de cet appareil au Hub. Veuillez l'autoriser à l'aide de votre clé de compte.
### Registration Success ### Registration Success
hub.registerSuccess.message=Appareil nommé hub.registerSuccess.message=Appareil enregistré
hub.registerSuccess.description=Pour accéder au coffre, votre appareil doit être autorisé par le propriétaire du coffre. hub.registerSuccess.description=Votre appareil est enregistré avec succès. Vous pouvez maintenant continuer à déverrouiller le coffre.
hub.registerSuccess.unlockBtn=Déverrouiller
hub.registerSuccess.legacy.description=Pour accéder au coffre, votre appareil doit être autorisé par le propriétaire du coffre.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Échec du nommage de l'appareil hub.registerFailed.message=Echec de l'enregistrement de l'appareil
hub.registerFailed.description=Le processus de nommage a retourné une erreur. Pour plus de détails, regardez dans le journal de l'application. hub.registerFailed.description.generic=Le processus de nommage a retourné une erreur. Pour plus de détails, regardez dans le journal de l'application.
hub.registerFailed.description.deviceAlreadyExists=Cet appareil est déjà enregistré pour un autre utilisateur. Essayez de changer de compte ou utilisez un autre appareil.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Accès refusé hub.unauthorized.message=Accès refusé
hub.unauthorized.description=Votre appareil n'a pas encore été autorisé à accéder à ce coffre. Demandez au propriétaire du coffre de l'autoriser. hub.unauthorized.description=Votre appareil n'a pas encore été autorisé à accéder à ce coffre. Demandez au propriétaire du coffre de l'autoriser.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Déverrouiller…
main.vaultDetail.unlockNowBtn=Déverrouiller maintenant main.vaultDetail.unlockNowBtn=Déverrouiller maintenant
main.vaultDetail.optionsBtn=Options du volume chiffré main.vaultDetail.optionsBtn=Options du volume chiffré
main.vaultDetail.passwordSavedInKeychain=Mot de passe enregistré main.vaultDetail.passwordSavedInKeychain=Mot de passe enregistré
main.vaultDetail.share=Partager...
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=DÉVERROUILLÉ main.vaultDetail.unlockedStatus=DÉVERROUILLÉ
main.vaultDetail.accessLocation=Le contenu de votre coffre est accessible ici : main.vaultDetail.accessLocation=Le contenu de votre coffre est accessible ici :
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Utiliser le répertoire choisi
vaultOptions.mount.mountPoint.directoryPickerButton=Choisir... vaultOptions.mount.mountPoint.directoryPickerButton=Choisir...
vaultOptions.mount.mountPoint.directoryPickerTitle=Choisissez un répertoire vaultOptions.mount.mountPoint.directoryPickerTitle=Choisissez un répertoire
vaultOptions.mount.volumeType.default=Par défaut (%s) vaultOptions.mount.volumeType.default=Par défaut (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Pour utiliser ce type de volume, Cryptomator doit être redémarré. vaultOptions.mount.volumeType.restartRequired=Pour utiliser ce type de volume, Cryptomator doit être redémarré.
vaultOptions.mount.volume.tcp.port=Port TCP vaultOptions.mount.volume.tcp.port=Port TCP
vaultOptions.mount.volume.type=Type de volume vaultOptions.mount.volume.type=Type de volume
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Rechercher des mises à jour ?
updateReminder.description=Restez à jour avec de nouvelles fonctionnalités, des corrections de bugs et des améliorations de sécurité. La vérification automatique des mises à jour est recommandée. updateReminder.description=Restez à jour avec de nouvelles fonctionnalités, des corrections de bugs et des améliorations de sécurité. La vérification automatique des mises à jour est recommandée.
updateReminder.notNow=Plus tard updateReminder.notNow=Plus tard
updateReminder.yesOnce=Cette fois seulement updateReminder.yesOnce=Cette fois seulement
updateReminder.yesAutomatically=Oui, automatiquement updateReminder.yesAutomatically=Oui, automatiquement
# Share Vault
shareVault.title=Partager le coffre
shareVault.message=Vous aimeriez partager votre coffre avec d'autres personnes ?
shareVault.description=Soyez toujours prudent lorsque vous partagez votre coffre avec d'autres personnes. En bref, suivez ces étapes :
shareVault.instruction.1=1. Partagez l'accès du dossier de coffre chiffré via le stockage cloud.
shareVault.instruction.2=2. Partagez le mot de passe du coffre de manière sécurisée.
shareVault.remarkBestPractices=Pour plus d'informations, consultez les suggestions des meilleures pratiques de notre documentation.
shareVault.docsTooltip=Ouvrez la documentation pour en savoir plus sur le partage des coffres.
shareVault.hubAd.description=La façon sécurisée de travailler en équipe
shareVault.hubAd.keyManagement=• Gestion des clés sans connaissance
shareVault.hubAd.authentication=• Authentification forte
shareVault.hubAd.encryption=Chiffrement de bout en bout
shareVault.visitHub=Visiter le Hub Cryptomator
shareVault.hub.message=Comment partager un coffre central
shareVault.hub.description=Afin de partager le contenu du coffre avec un autre membre de l'équipe, vous devez effectuer deux étapes :
shareVault.hub.instruction.1=1. Partagez l'accès du dossier de coffre chiffré via le stockage cloud.
shareVault.hub.instruction.2=2. Accorder l'accès au membre de l'équipe dans Cryptomator Hub.
shareVault.hub.openHub=Ouvrir le Hub Cryptomator
@@ -45,6 +45,7 @@ error.message=Produciuse un erro
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
@@ -123,4 +124,6 @@ main.closeBtn.tooltip=Pechar
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -153,14 +153,10 @@ hub.receive.message=מעבד תשובה…
hub.receive.description=Cryptomator מקבל ומעבד את התשובה מה- האב. אנא המתן. hub.receive.description=Cryptomator מקבל ומעבד את התשובה מה- האב. אנא המתן.
### Register Device ### Register Device
hub.register.nameLabel=שם מכשיר hub.register.nameLabel=שם מכשיר
hub.register.occupiedMsg=שם זה נמצא כבר בשימוש ### Register Device Legacy
hub.register.registerBtn=אישור
### Registration Success ### Registration Success
hub.registerSuccess.message=שם המכשיר hub.registerSuccess.unlockBtn=בטל נעילה
hub.registerSuccess.description=כדי לגשת לכספת, המכשיר שלך צריך לקבל הרשאה על ידי בעלי הכספת.
### Registration Failed ### Registration Failed
hub.registerFailed.message=הגדרת שם למכשיר נכשלה
hub.registerFailed.description=ארעה שגיאה בתהליך עם השם. לפרטים נוספים הסתכל בלוג האפליקציה.
### Unauthorized ### Unauthorized
hub.unauthorized.message=הגישה נדחתה hub.unauthorized.message=הגישה נדחתה
hub.unauthorized.description=המכשיר שלך טרם אושר לגשת לכספת הזאת. יש לבקש אישור גישה מבעל הכספת. hub.unauthorized.description=המכשיר שלך טרם אושר לגשת לכספת הזאת. יש לבקש אישור גישה מבעל הכספת.
@@ -495,4 +491,6 @@ quit.forced.forceAndQuitBtn=נעילה בכח ויציאה
# Update Reminder # Update Reminder
updateReminder.title=בדיקת עדכון updateReminder.title=בדיקת עדכון
updateReminder.message=חפש עדכונים? updateReminder.message=חפש עדכונים?
updateReminder.notNow=לא עכשיו updateReminder.notNow=לא עכשיו
# Share Vault
+37 -3
View File
@@ -20,6 +20,9 @@ error.description=क्रिप्टोमेटर ने ऐसा हो
error.hyperlink.lookup=इस त्रुटि को ढूंढिए error.hyperlink.lookup=इस त्रुटि को ढूंढिए
error.hyperlink.report=त्रुटि रिपोर्ट करें error.hyperlink.report=त्रुटि रिपोर्ट करें
error.technicalDetails=अधिक जानकारी: error.technicalDetails=अधिक जानकारी:
error.hyperlink.solution=समाधान खोजें
error.dismiss=खारिज करें
error.lookUpSolution=समाधान खोजें
# Defaults # Defaults
defaults.vault.vaultName=वॉल्ट defaults.vault.vaultName=वॉल्ट
@@ -36,6 +39,7 @@ traymenu.vault.reveal=प्रत्यक्ष करें
# Add Vault Wizard # Add Vault Wizard
addvaultwizard.title=वाउल्ट डालें addvaultwizard.title=वाउल्ट डालें
## New ## New
addvaultwizard.new.title=नयी तिजोरी बनाये
### Name ### Name
addvaultwizard.new.nameInstruction=वाउल्ट के लिए नाम चुनें addvaultwizard.new.nameInstruction=वाउल्ट के लिए नाम चुनें
addvaultwizard.new.namePrompt=वॉल्ट का नाम addvaultwizard.new.namePrompt=वॉल्ट का नाम
@@ -53,8 +57,15 @@ addvaultwizard.new.locationIsOk=आपकी सुरक्षित तिज
addvaultwizard.new.invalidName=तिजोरी के लिए इस नाम का उपयोग नहीं किया जा सकता addvaultwizard.new.invalidName=तिजोरी के लिए इस नाम का उपयोग नहीं किया जा सकता
addvaultwizard.new.validName=आप इस नाम का उपयोग कर सकते हैं addvaultwizard.new.validName=आप इस नाम का उपयोग कर सकते हैं
addvaultwizard.new.validCharacters.message=नाम के लिए केवल इन वर्णों का उपयोग कर सकते हैं addvaultwizard.new.validCharacters.message=नाम के लिए केवल इन वर्णों का उपयोग कर सकते हैं
addvaultwizard.new.validCharacters.chars=शब्दो के अक्षर (अ. ब., e.g. a, ж और 수)
addvaultwizard.new.validCharacters.numbers=नंबर addvaultwizard.new.validCharacters.numbers=नंबर
addvaultwizard.new.validCharacters.dashes=हाइफ़न (%s) या अंडरस्कोर (%s)
### Expert Settings ### Expert Settings
addvaultwizard.new.expertSettings.enableExpertSettingsCheckbox=विशेषज्ञ सेटिंग सक्षम करें
addvaultwizard.new.expertSettings.shorteningThreshold.invalid=36 से 220 अक्षरोंका शब्द दर्ज करें (निर्धारित 220)
addvaultwizard.new.expertSettings.shorteningThreshold.tooltip=अधिक जानने के लिए दस्तावेज़ खोलें |
addvaultwizard.new.expertSettings.shorteningThreshold.title=एन्क्रिप्टेड फ़ाइल नामों की अधिकतम लंबाई
addvaultwizard.new.expertSettings.shorteningThreshold.valid=मान्य
### Password ### Password
addvaultwizard.new.createVaultBtn=वॉल्ट बनाएं addvaultwizard.new.createVaultBtn=वॉल्ट बनाएं
addvaultwizard.new.generateRecoveryKeyChoice=आप अपने पासवर्ड के बिना अपने डेटा तक नहीं पहुंच पाएंगे। क्या आप उस वक़्त के लिए एक पुनर्प्राप्ति कुंजी चाहते हैं जब आप अपना पासवर्ड खो देते हैं? addvaultwizard.new.generateRecoveryKeyChoice=आप अपने पासवर्ड के बिना अपने डेटा तक नहीं पहुंच पाएंगे। क्या आप उस वक़्त के लिए एक पुनर्प्राप्ति कुंजी चाहते हैं जब आप अपना पासवर्ड खो देते हैं?
@@ -77,6 +88,7 @@ addvault.new.readme.accessLocation.2=आप अपनी वॉल्ट यह
addvault.new.readme.accessLocation.3=इस वॉल्यूम में कोई नई फाइल डालने पर क्रिप्टोमैटोर उसे एन्क्रिप्ट करदेगा। आप इसे कोई भी सामान्य फोल्डर की तरह समझ के काम कर सकते हैं। यह सिर्फ डेक्रिप्टेड व्यू है, हार्ड डिस्क पर आपकी फाइल्स हर समय एन्क्रिप्टेड रहेंगी। addvault.new.readme.accessLocation.3=इस वॉल्यूम में कोई नई फाइल डालने पर क्रिप्टोमैटोर उसे एन्क्रिप्ट करदेगा। आप इसे कोई भी सामान्य फोल्डर की तरह समझ के काम कर सकते हैं। यह सिर्फ डेक्रिप्टेड व्यू है, हार्ड डिस्क पर आपकी फाइल्स हर समय एन्क्रिप्टेड रहेंगी।
addvault.new.readme.accessLocation.4=आप इस फाइल को बेझिझक डिलीट कर सकते हैं। addvault.new.readme.accessLocation.4=आप इस फाइल को बेझिझक डिलीट कर सकते हैं।
## Existing ## Existing
addvaultwizard.existing.title=मौजूदा तिजोरी को जोड़ें
addvaultwizard.existing.chooseBtn=चुनें… addvaultwizard.existing.chooseBtn=चुनें…
addvaultwizard.existing.filePickerTitle=तिजोरी फ़ाइल चुनें addvaultwizard.existing.filePickerTitle=तिजोरी फ़ाइल चुनें
addvaultwizard.existing.filePickerMimeDesc=क्रिप्टोमेटर वॉल्ट addvaultwizard.existing.filePickerMimeDesc=क्रिप्टोमेटर वॉल्ट
@@ -98,6 +110,7 @@ changepassword.finalConfirmation=मैं समझता/समझती ह
# Forget Password # Forget Password
forgetPassword.title=पासवर्ड भूल गए forgetPassword.title=पासवर्ड भूल गए
forgetPassword.message=पासवर्ड भूल गए? forgetPassword.message=पासवर्ड भूल गए?
forgetPassword.description=यह आपके तिजोरी का सहेजा गया पासवर्ड सिस्टम कीचेन से हटा देगा।
forgetPassword.confirmBtn=पासवर्ड भूल गए forgetPassword.confirmBtn=पासवर्ड भूल गए
# Unlock # Unlock
@@ -106,25 +119,43 @@ unlock.passwordPrompt="%s" का पासवर्ड दर्ज करे
unlock.savePassword=पासवर्ड याद रखें unlock.savePassword=पासवर्ड याद रखें
unlock.unlockBtn=अनलॉक करें unlock.unlockBtn=अनलॉक करें
## Select ## Select
unlock.chooseMasterkey.message=मास्टरकी फ़ाइल नहीं मिली
unlock.chooseMasterkey.description=क्रिप्टोमेटर "%s" की मास्टर-चाबी नहीं ढूंढ पाया। कृपया उस फाइल को हाथ से ढूंढे। unlock.chooseMasterkey.description=क्रिप्टोमेटर "%s" की मास्टर-चाबी नहीं ढूंढ पाया। कृपया उस फाइल को हाथ से ढूंढे।
unlock.chooseMasterkey.filePickerTitle=मास्टरकी फ़ाइल का चयन करें
unlock.chooseMasterkey.filePickerMimeDesc=क्रिप्टोमेटर मास्टरकी
## Success ## Success
unlock.success.message=अनलॉक सफल हुआ unlock.success.message=अनलॉक सफल हुआ
unlock.success.rememberChoice=विकल्प याद रखें, दोबारा ना दिखाएं unlock.success.rememberChoice=विकल्प याद रखें, दोबारा ना दिखाएं
unlock.success.revealBtn=फोल्डर खोलें unlock.success.revealBtn=फोल्डर खोलें
## Failure ## Failure
unlock.error.customPath.message=तिजोरी को विशिष्ट स्थान पर प्रस्थापित करने में असमर्थ
unlock.error.customPath.description.notSupported=यदि आप विशिष्ट स्थान का उपयोग जारी रखना चाहते हैं, तो कृपया प्राथमिकताओं पर जाएं और एक ग्रन्थ (वॉल्यूम) प्रकार चुनें जो इसका समर्थन करता हो। अन्यथा, तिजोरी के विकल्पों पर जाएं और एक समर्थित प्रस्थापित स्थान (माउंट पॉइंट) चुनें।
unlock.error.customPath.description.notExists=विशिष्ट प्रस्थापित स्थान (कस्टम माउंट पाथ) मौजूद नहीं है. या तो इसे अपने स्थानीय फ़ाइल प्रणाली में बनाएं या तिजोरी के विकल्पों को बदलें।
unlock.error.customPath.description.hideawayNotDir=तिजोरी खोलने के के लिए उपयोग की गई अस्थायी, छिपी हुई फ़ाइल "%3$s" को हटाया नहीं जा सका। कृपया फ़ाइल की जाँच करें और फिर इसे स्वतः हटा दें।
unlock.error.customPath.description.couldNotBeCleaned=आपका तिजोरी "%s" स्थान पर स्थापित नहीं किया जा सका। कृपया पुनः प्रयास करें या कोई अलग रास्ता चुनें।
unlock.error.title="%s" तिजोरी खोलना विफल रहा
## Hub ## Hub
hub.noKeychain.message=उपकरण के कुंजी तक पहुंचने में असमर्थ
hub.noKeychain.openBtn=प्राथमिकताएँ खोलें
### Waiting ### Waiting
hub.auth.message=प्रमाणन के लिए इंतज़ार कर रहे...
hub.auth.description=आपको स्वचालित रूप से लॉगिन पृष्ठ पर पुनः निर्देशित किया जाना चाहिए।
hub.auth.loginLink=पुनर्निर्देशित नहीं किया गया? इसे खोलने के लिए यहां क्लिक करें.
### Receive Key ### Receive Key
hub.receive.message=अभी संसाधित किया जा रहा है hub.receive.message=अभी संसाधित किया जा रहा है
### Register Device ### Register Device
hub.register.message=नया उपकरण
hub.register.nameLabel=डिवाइस का नाम hub.register.nameLabel=डिवाइस का नाम
hub.register.occupiedMsg=नाम पहले से प्रयोग में है ### Register Device Legacy
hub.register.registerBtn=पुष्टि करें
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=अनलॉक करें
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
hub.unauthorized.message=प्रवेश अस्वीकृत hub.unauthorized.message=प्रवेश अस्वीकृत
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=कार्रवाई आवश्यक है
hub.requireAccountInit.description.0=आगे बढ़ने के लिए, कृपया अपने आवश्यक चरणों को पूरा करें
hub.requireAccountInit.description.2=.
### License Exceeded ### License Exceeded
# Lock # Lock
@@ -210,6 +241,7 @@ main.vaultlist.contextMenu.unlock=अनलॉक करें...
main.vaultlist.contextMenu.unlockNow=अब अनलॉक करें main.vaultlist.contextMenu.unlockNow=अब अनलॉक करें
main.vaultlist.contextMenu.vaultoptions=वॉल्ट के विकल्प दिखाए main.vaultlist.contextMenu.vaultoptions=वॉल्ट के विकल्प दिखाए
main.vaultlist.contextMenu.reveal=फोल्डर खोलें main.vaultlist.contextMenu.reveal=फोल्डर खोलें
main.vaultlist.addVaultBtn=जोड़िये
## Vault Detail ## Vault Detail
### Welcome ### Welcome
main.vaultDetail.welcomeOnboarding=Cryptomator को अपनी फाइल्स सिराक्षित रखने को चुनने के लिए धन्यवाद। अगर आपको सहायता चाइये, तो हमारी गेटिंग स्टार्टेड गाइगाइड्स देखिये: main.vaultDetail.welcomeOnboarding=Cryptomator को अपनी फाइल्स सिराक्षित रखने को चुनने के लिए धन्यवाद। अगर आपको सहायता चाइये, तो हमारी गेटिंग स्टार्टेड गाइगाइड्स देखिये:
@@ -277,4 +309,6 @@ quit.title=एप्लीकेशन को बंद करें
# Forced Quit # Forced Quit
quit.forced.message=कुछ वॉल्ट्स लॉक नहीं हो पायी quit.forced.message=कुछ वॉल्ट्स लॉक नहीं हो पायी
# Update Reminder # Update Reminder
# Share Vault
@@ -115,8 +115,9 @@ unlock.success.revealBtn=Otkrij pogon
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=Potvrdi ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Otključaj
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -379,4 +380,6 @@ quit.lockAndQuitBtn=Zaključaj i napusti
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -154,17 +154,13 @@ hub.receive.message=Válasz feldolgozása…
hub.receive.description=Cryptomator fogadja és feldolgozza a Hub válaszát. Kérem, várjon. hub.receive.description=Cryptomator fogadja és feldolgozza a Hub válaszát. Kérem, várjon.
### Register Device ### Register Device
hub.register.message=Új eszköz hub.register.message=Új eszköz
hub.register.description=Ez az első Hub-hozzáférés erről az eszközről. Kérjük, engedélyezd a Fiókkulcsoddal.
hub.register.nameLabel=Készülék neve hub.register.nameLabel=Készülék neve
hub.register.invalidAccountKeyLabel=Érvénytelen fiókkulcs hub.register.invalidAccountKeyLabel=Érvénytelen fiókkulcs
hub.register.occupiedMsg=Ez a név már használatban van hub.register.registerBtn=Regisztráció
hub.register.registerBtn=Megerősítés ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Eszköz elnevezve hub.registerSuccess.unlockBtn=Feloldás
hub.registerSuccess.description=A széf hozzáféréséhez a széf tulajdonosának hitelesítenie kell az eszközét.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Az eszköz elnevezése sikertelen volt
hub.registerFailed.description=Hiba állt fel az elnevezési folyamatban. További részletekért tekintse meg az alkalmazásnaplót.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Hozzáférés megtagadva hub.unauthorized.message=Hozzáférés megtagadva
hub.unauthorized.description=Eszköze még nem kapott engedélyt ehhez a széfhez. Kérje a széf tulajdonosát, hogy engedélyezze a hozzáférést. hub.unauthorized.description=Eszköze még nem kapott engedélyt ehhez a széfhez. Kérje a széf tulajdonosát, hogy engedélyezze a hozzáférést.
@@ -511,4 +507,6 @@ updateReminder.message=Frissítések ellenőrzése?
updateReminder.description=Maradjon naprakész az új funkciókkal, hibajavításokkal és biztonsági fejlesztésekkel. Javasoljuk, hogy automatikusan ellenőrizze a frissítéseket. updateReminder.description=Maradjon naprakész az új funkciókkal, hibajavításokkal és biztonsági fejlesztésekkel. Javasoljuk, hogy automatikusan ellenőrizze a frissítéseket.
updateReminder.notNow=Most nem updateReminder.notNow=Most nem
updateReminder.yesOnce=Igen, egyszer updateReminder.yesOnce=Igen, egyszer
updateReminder.yesAutomatically=Igen, automatikusan updateReminder.yesAutomatically=Igen, automatikusan
# Share Vault
@@ -115,8 +115,9 @@ unlock.success.revealBtn=Tampilkan Drive
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=Konfirmasi ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Buka Kunci
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -378,4 +379,6 @@ quit.lockAndQuitBtn=Kunci dan Keluar
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+6 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=Impossibile rimuovere il file
unlock.error.customPath.description.couldNotBeCleaned=La tua cassaforte non può essere montata sul percorso "%s". Riprova o scegli un percorso diverso. unlock.error.customPath.description.couldNotBeCleaned=La tua cassaforte non può essere montata sul percorso "%s". Riprova o scegli un percorso diverso.
unlock.error.customPath.description.notEmptyDir=Il percorso di montaggio selezionato "%s" non è una cartella vuota. Scegli una cartella vuota e riprova. unlock.error.customPath.description.notEmptyDir=Il percorso di montaggio selezionato "%s" non è una cartella vuota. Scegli una cartella vuota e riprova.
unlock.error.customPath.description.generic=Hai selezionato un percorso di montaggio personalizzato per questa cassaforte, ma il suo utilizzo non è riuscito con il messaggio: %2$s unlock.error.customPath.description.generic=Hai selezionato un percorso di montaggio personalizzato per questa cassaforte, ma il suo utilizzo non è riuscito con il messaggio: %2$s
unlock.error.fuseRestartRequired.message=Impossibile sbloccare la cassaforte
unlock.error.fuseRestartRequired.description=Cambia il tipo di unità nelle opzioni della cassaforte o riavvia Cryptomator.
unlock.error.title=Sblocco "%s" non riuscito unlock.error.title=Sblocco "%s" non riuscito
## Hub ## Hub
hub.noKeychain.message=Impossibile accedere alla chiave del dispositivo hub.noKeychain.message=Impossibile accedere alla chiave del dispositivo
@@ -157,17 +155,13 @@ hub.receive.message=Elaborazione della risposta…
hub.receive.description=Cryptomator sta ricevendo ed elaborando la risposta da Hub. Attendere prego. hub.receive.description=Cryptomator sta ricevendo ed elaborando la risposta da Hub. Attendere prego.
### Register Device ### Register Device
hub.register.message=Nuovo dispositivo hub.register.message=Nuovo dispositivo
hub.register.description=Questo è il primo accesso all'Hub da questo dispositivo. Per favore autorizzalo utilizzando la tua chiave dell'account.
hub.register.nameLabel=Nome Del Dispositivo hub.register.nameLabel=Nome Del Dispositivo
hub.register.invalidAccountKeyLabel=Chiave dell'account non valida hub.register.invalidAccountKeyLabel=Chiave dell'account non valida
hub.register.occupiedMsg=Nome già in uso hub.register.registerBtn=Registrati
hub.register.registerBtn=Conferma ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Dispositivo nominato hub.registerSuccess.unlockBtn=Sblocca
hub.registerSuccess.description=Per accedere al vault, il tuo dispositivo deve essere autorizzato dal proprietario del vault.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Assegnazione del nome al dispositivo fallita
hub.registerFailed.description=Si è verificato un errore nel processo di nomina. Per maggiori dettagli, consultare il registro delle applicazioni.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Accesso negato hub.unauthorized.message=Accesso negato
hub.unauthorized.description=Il tuo dispositivo non è ancora stato autorizzato ad accedere a questa cassaforte. Chiedi al proprietario della cassaforte di autorizzarlo. hub.unauthorized.description=Il tuo dispositivo non è ancora stato autorizzato ad accedere a questa cassaforte. Chiedi al proprietario della cassaforte di autorizzarlo.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Usa la directory scelta
vaultOptions.mount.mountPoint.directoryPickerButton=Scegli… vaultOptions.mount.mountPoint.directoryPickerButton=Scegli…
vaultOptions.mount.mountPoint.directoryPickerTitle=Scegli una directory vaultOptions.mount.mountPoint.directoryPickerTitle=Scegli una directory
vaultOptions.mount.volumeType.default=Predefinito (%s) vaultOptions.mount.volumeType.default=Predefinito (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Per utilizzare questo tipo di unità, Cryptomator deve essere riavviato.
vaultOptions.mount.volume.tcp.port=Porta TCP vaultOptions.mount.volume.tcp.port=Porta TCP
vaultOptions.mount.volume.type=Tipo di Unità vaultOptions.mount.volume.type=Tipo di Unità
## Master Key ## Master Key
@@ -523,4 +516,6 @@ updateReminder.message=Controllo aggiornamenti?
updateReminder.description=Rimani aggiornato per nuove funzionalità, correzioni di bug e miglioramenti di sicurezza. Si consiglia di controllare automaticamente la presenza di aggiornamenti. updateReminder.description=Rimani aggiornato per nuove funzionalità, correzioni di bug e miglioramenti di sicurezza. Si consiglia di controllare automaticamente la presenza di aggiornamenti.
updateReminder.notNow=Non adesso updateReminder.notNow=Non adesso
updateReminder.yesOnce=Sì, una volta updateReminder.yesOnce=Sì, una volta
updateReminder.yesAutomatically=Sì, automaticamente updateReminder.yesAutomatically=Sì, automaticamente
# Share Vault
+17 -7
View File
@@ -141,6 +141,8 @@ unlock.error.customPath.description.hideawayNotDir=ロック解除に使用さ
unlock.error.customPath.description.couldNotBeCleaned=金庫を "%s" にマウントすることができませんでした。もう一度試すか、別のパスを選択してください。 unlock.error.customPath.description.couldNotBeCleaned=金庫を "%s" にマウントすることができませんでした。もう一度試すか、別のパスを選択してください。
unlock.error.customPath.description.notEmptyDir=カスタムマウントパス「%s」は空のフォルダではありません。空のフォルダを選択して再度お試し下さい。 unlock.error.customPath.description.notEmptyDir=カスタムマウントパス「%s」は空のフォルダではありません。空のフォルダを選択して再度お試し下さい。
unlock.error.customPath.description.generic=この金庫に対してカスタムマウントパスを選択しましたが、以下のメッセージとともに失敗しました:%2$s unlock.error.customPath.description.generic=この金庫に対してカスタムマウントパスを選択しましたが、以下のメッセージとともに失敗しました:%2$s
unlock.error.restartRequired.message=金庫を解錠できません
unlock.error.restartRequired.description=金庫のオプションからボリュームタイプを変更するか、Cryptomatorを再起動してください。
## Hub ## Hub
hub.noKeychain.message=デバイス キーにアクセスできません hub.noKeychain.message=デバイス キーにアクセスできません
hub.noKeychain.description=ハブ金庫を解錠するには、キーチェーンが保護するデバイス キーが必要です。続行するには、"%s" を有効にし環境設定からキーチェーンを選択します。 hub.noKeychain.description=ハブ金庫を解錠するには、キーチェーンが保護するデバイス キーが必要です。続行するには、"%s" を有効にし環境設定からキーチェーンを選択します。
@@ -154,15 +156,21 @@ hub.receive.message=応答を処理中…
hub.receive.description=Cryptomator が Hub からの応答を受信、処理中です。しばらくお待ちください。 hub.receive.description=Cryptomator が Hub からの応答を受信、処理中です。しばらくお待ちください。
### Register Device ### Register Device
hub.register.message=新しいデバイス hub.register.message=新しいデバイス
hub.register.description=このデバイスからの最初のハブアクセスです。アカウントキーを使用して登録してください。
hub.register.nameLabel=デバイス名 hub.register.nameLabel=デバイス名
hub.register.occupiedMsg=この名前は既に使われています hub.register.registerBtn=登録
hub.register.registerBtn=確認 ### Register Device Legacy
hub.register.legacy.occupiedMsg=この名前は既に使われています
hub.register.legacy.description=このデバイスからの最初のハブへのアクセスです。登録してください。
### Registration Success ### Registration Success
hub.registerSuccess.message=デバイス名の登録に成功しました hub.registerSuccess.message=デバイスが登録されました
hub.registerSuccess.description=金庫にアクセスするためには,金庫のオーナーが端末を認証する必要があります。 hub.registerSuccess.description=デバイスの登録が完了しました。続いて金庫のロックを解除することができます。
hub.registerSuccess.unlockBtn=解錠
hub.registerSuccess.legacy.description=金庫にアクセスするためには金庫のオーナーが端末を認証する必要があります。
### Registration Failed ### Registration Failed
hub.registerFailed.message=デバイスの登録に失敗しました hub.registerFailed.message=デバイスの登録に失敗しました
hub.registerFailed.description=デバイス名登録中にエラーが発生しました。エラーの詳細についてはアプリケーションログを参照してください。 hub.registerFailed.description.generic=登録中にエラーが発生しました。エラーの詳細についてはアプリケーションログを参照してください。
hub.registerFailed.description.deviceAlreadyExists=このデバイスは既に別のユーザーに登録されています。ユーザーアカウントを変更するか、別のデバイスを使用してください。
### Unauthorized ### Unauthorized
hub.unauthorized.message=アクセスが拒否されました hub.unauthorized.message=アクセスが拒否されました
hub.unauthorized.description=お使いのデバイスはまだこの金庫にアクセスする権限がありません。金庫のオーナーに権限を与えてもらってください。 hub.unauthorized.description=お使いのデバイスはまだこの金庫にアクセスする権限がありません。金庫のオーナーに権限を与えてもらってください。
@@ -511,4 +519,6 @@ updateReminder.message=更新を確認するか
updateReminder.description=自動的に更新をチェックして、新機能、バグ修正、セキュリティの改善などを入手するのをお勧めします。 updateReminder.description=自動的に更新をチェックして、新機能、バグ修正、セキュリティの改善などを入手するのをお勧めします。
updateReminder.notNow=また後で updateReminder.notNow=また後で
updateReminder.yesOnce=はい、一度だけ updateReminder.yesOnce=はい、一度だけ
updateReminder.yesAutomatically=自動的に行う updateReminder.yesAutomatically=自動的に行う
# Share Vault
@@ -131,14 +131,15 @@ hub.noKeychain.openBtn=설정 열기
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.nameLabel=기기 이름 hub.register.nameLabel=기기 이름
hub.register.occupiedMsg=이미 사용된 이름입니다 ### Register Device Legacy
hub.register.registerBtn=확인
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=잠금해제
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
hub.unauthorized.message=액세스 거부 hub.unauthorized.message=액세스 거부
hub.unauthorized.description=귀하의 기기는 아직 이 저장소에 액세스할 수 있는 권한이 없습니다. Vault 소유자에게 승인을 요청하세요. hub.unauthorized.description=귀하의 기기는 아직 이 저장소에 액세스할 수 있는 권한이 없습니다. Vault 소유자에게 승인을 요청하세요.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=조치가 필요함
### License Exceeded ### License Exceeded
hub.invalidLicense.message=Hub 라이선스가 잘못되었습니다. hub.invalidLicense.message=Hub 라이선스가 잘못되었습니다.
hub.invalidLicense.description=Cryptomator Hub 인스턴스에 잘못된 라이선스가 있습니다. 라이센스를 업그레이드하거나 갱신하려면 허브 관리자에게 알리십시오. hub.invalidLicense.description=Cryptomator Hub 인스턴스에 잘못된 라이선스가 있습니다. 라이센스를 업그레이드하거나 갱신하려면 허브 관리자에게 알리십시오.
@@ -441,4 +442,6 @@ quit.forced.forceAndQuitBtn=Vault 강제 잠금 후 종료하기
# Update Reminder # Update Reminder
updateReminder.title=업데이트 확인 updateReminder.title=업데이트 확인
updateReminder.notNow=나중에 updateReminder.notNow=나중에
# Share Vault
@@ -110,8 +110,9 @@ unlock.success.revealBtn=Atklāt disku
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.nameLabel=Ierīces nosaukums hub.register.nameLabel=Ierīces nosaukums
hub.register.registerBtn=Apstiprināt ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Atslēgt
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -276,4 +277,6 @@ quit.lockAndQuitBtn=Aizslēgt un aizvērt
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -73,8 +73,9 @@ unlock.unlockBtn=Отклучи
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=Потврди ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Отклучи
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -157,4 +158,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=Избор…
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -0,0 +1,115 @@
# Locale Specific CSS files such as CJK, RTL,...
# Generics
## Button
# Error
# Defaults
# Tray Menu
# Add Vault Wizard
## New
### Name
### Location
### Expert Settings
### Password
### Information
## Existing
## Success
# Remove Vault
# Change Password
# Forget Password
# Unlock
## Select
## Success
## Failure
## Hub
### Waiting
### Receive Key
### Register Device
### Register Device Legacy
### Registration Success
### Registration Failed
### Unauthorized
### Requires Account Initialization
### License Exceeded
# Lock
## Force
## Failure
# Migration
## Start
## Run
## Success
## Missing file system capabilities
## Impossible
# Health Check
## Start
## Start Failure
## Check Selection
## Detail view
## Result view
## Fix Application
# Preferences
## General
## Interface
## Volume
## Updates
## Contribution
#<-- Add entries for donations and code/translation/documentation contribution -->
## About
# Vault Statistics
## Read
## Write
## Accesses
# Main Window
## Vault List
## Vault Detail
### Welcome
### Locked
### Unlocked
### Missing
### Needs Migration
### Error
# Wrong File Alert
# Vault Options
## General
## Mount
## Master Key
## Hub
# Recovery Key
## Display Recovery Key
## Reset Password
### Enter Recovery Key
### Reset Password
### Recovery Key Password Reset Success
# Convert Vault
# New Password
# Quit
# Forced Quit
# Update Reminder
# Share Vault
+6 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=Den midlertidige, skjulte fil
unlock.error.customPath.description.couldNotBeCleaned=Hvelvet ditt kan ikke monteres i banen "%s". Prøv igjen eller velg en annen sti. unlock.error.customPath.description.couldNotBeCleaned=Hvelvet ditt kan ikke monteres i banen "%s". Prøv igjen eller velg en annen sti.
unlock.error.customPath.description.notEmptyDir=Tilpasset monterings sti "%s" er ikke en tom mappe. Velg en tom mappe og prøv igjen. unlock.error.customPath.description.notEmptyDir=Tilpasset monterings sti "%s" er ikke en tom mappe. Velg en tom mappe og prøv igjen.
unlock.error.customPath.description.generic=Du har valgt en egendefinert monterings sti for dette hvelvet, men bruk av den mislyktes med meldingen: %2$s unlock.error.customPath.description.generic=Du har valgt en egendefinert monterings sti for dette hvelvet, men bruk av den mislyktes med meldingen: %2$s
unlock.error.fuseRestartRequired.message=Kan ikke låse opp hvelvet
unlock.error.fuseRestartRequired.description=Endre volumtype i innstillinger for hvelvet eller start Cryptomator på nytt.
unlock.error.title=Lås opp "%s" mislyktes unlock.error.title=Lås opp "%s" mislyktes
## Hub ## Hub
hub.noKeychain.message=Får ikke tilgang til enhetsnøkkel hub.noKeychain.message=Får ikke tilgang til enhetsnøkkel
@@ -157,17 +155,13 @@ hub.receive.message=Prosesserer svar…
hub.receive.description=Cryptomator mottar og behandler svaret fra Hub. Vennligst vent. hub.receive.description=Cryptomator mottar og behandler svaret fra Hub. Vennligst vent.
### Register Device ### Register Device
hub.register.message=Ny Enhet hub.register.message=Ny Enhet
hub.register.description=Dette er den første Hub-tilgangen fra denne enheten. Vennligst autoriser den ved hjelp av kontonøkkelen.
hub.register.nameLabel=Enhetsnavn hub.register.nameLabel=Enhetsnavn
hub.register.invalidAccountKeyLabel=Ugyldig kontonøkkel hub.register.invalidAccountKeyLabel=Ugyldig kontonøkkel
hub.register.occupiedMsg=Navnet er allerede i bruk hub.register.registerBtn=Registrer
hub.register.registerBtn=Bekreft ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Enheten navngitt hub.registerSuccess.unlockBtn=Lås opp
hub.registerSuccess.description=For å få tilgang til hvelvet, så må enheten din bli autorisert av hvelvets eier.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Enhetsnavngiving mislyktes
hub.registerFailed.description=Under navngivingsprosessen oppsto det en feilmelding. For flere detaljer, studere applikasjonsloggen.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Ingen tilgang hub.unauthorized.message=Ingen tilgang
hub.unauthorized.description=Enheten din har ikke blitt autorisert til å få tilgang til dette hvelvet ennå. Spør hvelveieren om å tillate det. hub.unauthorized.description=Enheten din har ikke blitt autorisert til å få tilgang til dette hvelvet ennå. Spør hvelveieren om å tillate det.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Bruk valgt mappe
vaultOptions.mount.mountPoint.directoryPickerButton=Velg… vaultOptions.mount.mountPoint.directoryPickerButton=Velg…
vaultOptions.mount.mountPoint.directoryPickerTitle=Velg en mappe vaultOptions.mount.mountPoint.directoryPickerTitle=Velg en mappe
vaultOptions.mount.volumeType.default=Standard (%s) vaultOptions.mount.volumeType.default=Standard (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=For å bruke denne volumtypen må Cryptomator startes på nytt.
vaultOptions.mount.volume.tcp.port=TCP Port vaultOptions.mount.volume.tcp.port=TCP Port
vaultOptions.mount.volume.type=Volumtype vaultOptions.mount.volume.type=Volumtype
## Master Key ## Master Key
@@ -523,4 +516,6 @@ updateReminder.message=Se etter oppdateringer?
updateReminder.description=Hold deg oppdatert med nye funksjoner, feilrettinger og sikkerhetsforbedringer. Vi anbefaler å se etter oppdateringer automatisk. updateReminder.description=Hold deg oppdatert med nye funksjoner, feilrettinger og sikkerhetsforbedringer. Vi anbefaler å se etter oppdateringer automatisk.
updateReminder.notNow=Ikke nå updateReminder.notNow=Ikke nå
updateReminder.yesOnce=Ja, en gang updateReminder.yesOnce=Ja, en gang
updateReminder.yesAutomatically=Ja, automatisk updateReminder.yesAutomatically=Ja, automatisk
# Share Vault
+37 -10
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Kies een naam voor de kluis
addvaultwizard.new.namePrompt=Kluisnaam addvaultwizard.new.namePrompt=Kluisnaam
### Location ### Location
addvaultwizard.new.locationInstruction=Waar moet Cryptomator de versleutelde bestanden van je kluis opslaan? addvaultwizard.new.locationInstruction=Waar moet Cryptomator de versleutelde bestanden van je kluis opslaan?
addvaultwizard.new.locationLoading=Lokaal bestandssysteem controleren op standaard cloud opslag mappen…
addvaultwizard.new.locationLabel=Opslaglocatie addvaultwizard.new.locationLabel=Opslaglocatie
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Andere locatie addvaultwizard.new.directoryPickerLabel=Andere locatie
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Het tijdelijk verborgen besta
unlock.error.customPath.description.couldNotBeCleaned=Uw kluis kon niet worden gekoppeld aan het pad "%s". Probeer het opnieuw of kies een ander pad. unlock.error.customPath.description.couldNotBeCleaned=Uw kluis kon niet worden gekoppeld aan het pad "%s". Probeer het opnieuw of kies een ander pad.
unlock.error.customPath.description.notEmptyDir=Het aangepaste pad "%s" is geen lege map. Kies een lege map en probeer het opnieuw. unlock.error.customPath.description.notEmptyDir=Het aangepaste pad "%s" is geen lege map. Kies een lege map en probeer het opnieuw.
unlock.error.customPath.description.generic=Je hebt een aangepast koppelpad voor deze kluis geselecteerd, maar gebruik ervan is mislukt met het bericht: %2$s unlock.error.customPath.description.generic=Je hebt een aangepast koppelpad voor deze kluis geselecteerd, maar gebruik ervan is mislukt met het bericht: %2$s
unlock.error.fuseRestartRequired.message=Kan kluis niet ontgrendelen unlock.error.restartRequired.message=Kan kluis niet ontgrendelen
unlock.error.fuseRestartRequired.description=Wijzig het volumetype in kluisopties of start Cryptomator opnieuw. unlock.error.restartRequired.description=Wijzig het type volume in de opties voor de kluis of herstart Cryptomator.
unlock.error.title=Ontgrendelen "%s" mislukt unlock.error.title=Ontgrendelen "%s" mislukt
## Hub ## Hub
hub.noKeychain.message=Geen toegang tot de apparaatsleutel hub.noKeychain.message=Geen toegang tot de apparaatsleutel
@@ -160,14 +161,19 @@ hub.register.message=Nieuw apparaat
hub.register.description=Dit is de eerste Hub toegang vanaf dit apparaat. Bevestig deze toegang met behulp van uw Account Key. hub.register.description=Dit is de eerste Hub toegang vanaf dit apparaat. Bevestig deze toegang met behulp van uw Account Key.
hub.register.nameLabel=Apparaatnaam hub.register.nameLabel=Apparaatnaam
hub.register.invalidAccountKeyLabel=Ongeldige Account Key hub.register.invalidAccountKeyLabel=Ongeldige Account Key
hub.register.occupiedMsg=Naam al in gebruik hub.register.registerBtn=Registreren
hub.register.registerBtn=Bevestig ### Register Device Legacy
hub.register.legacy.occupiedMsg=Naam al in gebruik
hub.register.legacy.description=Dit is de eerste keer dat dit apparaat toegang heeft tot de Hub. Registreer dit aub.
### Registration Success ### Registration Success
hub.registerSuccess.message=Apparaat naam hub.registerSuccess.message=Apparaat geregistreerd
hub.registerSuccess.description=Om toegang te krijgen tot de kluis, moet je apparaat worden gemachtigd door de eigenaar van de kluis. hub.registerSuccess.description=Uw apparaat is met succes geregistreerd. Y kunt nu doorgaan met het ontgrendelen van de kluis.
hub.registerSuccess.unlockBtn=Ontgrendelen
hub.registerSuccess.legacy.description=Om toegang te krijgen tot de kluis, moet je toestel bovendien worden gemachtigd door de eigenaar van de kluis.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Apparaat naamgeving mislukt hub.registerFailed.message=Registratie van Apparaat mislukt
hub.registerFailed.description=Er is een fout in het naamproces geworpen. Kijk in het applicatielogboek. hub.registerFailed.description.generic=Er is een fout gemaakt in het registratieproces. Kijk voor meer details in het logbestand van de applicatie.
hub.registerFailed.description.deviceAlreadyExists=Dit apparaat is al geregistreerd voor een andere gebruiker. Probeer de account te wijzigen of gebruik een ander apparaat.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Toegang geweigerd hub.unauthorized.message=Toegang geweigerd
hub.unauthorized.description=Uw apparaat is nog niet gemachtigd om toegang te krijgen tot deze kluis. Vraag de eigenaar van de kluis om toestemming te geven. hub.unauthorized.description=Uw apparaat is nog niet gemachtigd om toegang te krijgen tot deze kluis. Vraag de eigenaar van de kluis om toestemming te geven.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Ontgrendelen…
main.vaultDetail.unlockNowBtn=Nu Ontgrendelen main.vaultDetail.unlockNowBtn=Nu Ontgrendelen
main.vaultDetail.optionsBtn=Kluis-instellingen main.vaultDetail.optionsBtn=Kluis-instellingen
main.vaultDetail.passwordSavedInKeychain=Wachtwoord opgeslagen main.vaultDetail.passwordSavedInKeychain=Wachtwoord opgeslagen
main.vaultDetail.share=Delen...
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=ONTGRENDELD main.vaultDetail.unlockedStatus=ONTGRENDELD
main.vaultDetail.accessLocation=De inhoud van uw kluis is hier toegankelijk: main.vaultDetail.accessLocation=De inhoud van uw kluis is hier toegankelijk:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Gebruik gekozen map
vaultOptions.mount.mountPoint.directoryPickerButton=Kies… vaultOptions.mount.mountPoint.directoryPickerButton=Kies…
vaultOptions.mount.mountPoint.directoryPickerTitle=Selecteer een map vaultOptions.mount.mountPoint.directoryPickerTitle=Selecteer een map
vaultOptions.mount.volumeType.default=Standaard (%s) vaultOptions.mount.volumeType.default=Standaard (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Om dit volumetype te kunnen gebruiken, moet Cryptomator opnieuw worden opgestart. vaultOptions.mount.volumeType.restartRequired=Om dit type volume te kunnen gebruiken, moet Cryptomator opnieuw worden opgestart.
vaultOptions.mount.volume.tcp.port=TCP-poort vaultOptions.mount.volume.tcp.port=TCP-poort
vaultOptions.mount.volume.type=Volumetype vaultOptions.mount.volume.type=Volumetype
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Controleren op updates?
updateReminder.description=Blijf op de hoogte met nieuwe functies, bugfixes en beveiligingsverbeteringen. We raden aan om automatisch te controleren op updates. updateReminder.description=Blijf op de hoogte met nieuwe functies, bugfixes en beveiligingsverbeteringen. We raden aan om automatisch te controleren op updates.
updateReminder.notNow=Niet nu updateReminder.notNow=Niet nu
updateReminder.yesOnce=Ja, Eenmaal updateReminder.yesOnce=Ja, Eenmaal
updateReminder.yesAutomatically=Ja, automatisch updateReminder.yesAutomatically=Ja, automatisch
# Share Vault
shareVault.title=Kluis delen
shareVault.message=Wilt u uw kluis met anderen delen?
shareVault.description=Wees altijd voorzichtig bij het delen van je kluis met andere mensen. Kortom, volg deze stappen:
shareVault.instruction.1=1. Deel toegang van de versleutelde kluis map via de cloud opslag.
shareVault.instruction.2=2. Deel het wachtwoord van de kluis op een veilige manier.
shareVault.remarkBestPractices=Kijk voor meer informatie naar de suggesties voor beste praktijken in onze documenten.
shareVault.docsTooltip=Open de documentatie om meer te leren over het delen van kluizen.
shareVault.hubAd.description=De veilige manier om in teams te werken
shareVault.hubAd.keyManagement=• Zero-knowledge sleutelbeheer
shareVault.hubAd.authentication=• Sterke authenticatie
shareVault.hubAd.encryption=• End-to-end versleuteling
shareVault.visitHub=Bezoek Cryptomator Hub
shareVault.hub.message=Hoe een Hub kluis delen
shareVault.hub.description=Om de inhoud van de kluis te delen met een ander teamlid, moet u twee stappen uitvoeren:
shareVault.hub.instruction.1=1. Deel toegang van de versleutelde kluismap via de cloud opslag.
shareVault.hub.instruction.2=2. Geef teamlid toegang in Cryptomator Hub.
shareVault.hub.openHub=Open Cryptomator Hub
@@ -97,7 +97,9 @@ unlock.success.revealBtn=Gjer eininga synleg
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Låse opp
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -273,4 +275,6 @@ quit.lockAndQuitBtn=Lås og avslutt
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -95,15 +95,14 @@ unlock.chooseMasterkey.filePickerTitle=ਮਾਸਟਰ-ਕੁੰਜੀ ਫਾਇ
unlock.success.rememberChoice=ਚੋਣਾਂ ਯਾਦ ਰੱਖੋ, ਇਹ ਮੁੜ ਕੇ ਨਾ ਵੇਖਾਓ unlock.success.rememberChoice=ਚੋਣਾਂ ਯਾਦ ਰੱਖੋ, ਇਹ ਮੁੜ ਕੇ ਨਾ ਵੇਖਾਓ
unlock.success.revealBtn=ਡਰਾਇਵ ਦਿਖਾਓ unlock.success.revealBtn=ਡਰਾਇਵ ਦਿਖਾਓ
## Failure ## Failure
unlock.error.fuseRestartRequired.message=ਵਾਲੇਟ ਅਣ-ਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ
unlock.error.fuseRestartRequired.description=ਵਾਲਟ ਚੋਣਾਂ ਵਿੱਚ ਵਾਲੀਅਮ ਦੀ ਕਿਸਮ ਨੂੰ ਬਦਲੋ ਜਾਂ Cryptomator ਨੂੰ ਮੁੜ-ਚਾਲੂ ਕਰੋ।
unlock.error.title="%s" ਨੂੰ ਅਣ-ਲਾਕ ਕਰਨ ਲਈ ਅਸਫ਼ਲ ਹੈ unlock.error.title="%s" ਨੂੰ ਅਣ-ਲਾਕ ਕਰਨ ਲਈ ਅਸਫ਼ਲ ਹੈ
## Hub ## Hub
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
hub.register.registerBtn=ਤਸਦੀਕ ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=ਅਣ-ਲਾਕ ਕਰੋ
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -274,7 +273,6 @@ vaultOptions.mount.mountPoint.auto=ਆਪਣੇ-ਆਪ ਢੁੱਕਵਾਂ ਟ
vaultOptions.mount.mountPoint.driveLetter=ਜਾਰੀ ਕੀਤਾ ਡਰਾਇਵ ਅੱਖਰ ਵਰਤੋਂ vaultOptions.mount.mountPoint.driveLetter=ਜਾਰੀ ਕੀਤਾ ਡਰਾਇਵ ਅੱਖਰ ਵਰਤੋਂ
vaultOptions.mount.mountPoint.directoryPickerButton=…ਚੁਣੋ vaultOptions.mount.mountPoint.directoryPickerButton=…ਚੁਣੋ
vaultOptions.mount.volumeType.default=ਮੂਲ (%s) vaultOptions.mount.volumeType.default=ਮੂਲ (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=ਇਸ ਵਾਲੀਅਮ ਕਿਸਮ ਨੂੰ ਵਰਤਣ ਲਈ Cryptomator ਨੂੰ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।
vaultOptions.mount.volume.tcp.port=TCP ਪੋਰਟ vaultOptions.mount.volume.tcp.port=TCP ਪੋਰਟ
vaultOptions.mount.volume.type=ਵਾਲੀਅਮ ਦੀ ਕਿਸਮ vaultOptions.mount.volume.type=ਵਾਲੀਅਮ ਦੀ ਕਿਸਮ
## Master Key ## Master Key
@@ -316,4 +314,6 @@ quit.lockAndQuitBtn=ਲਾਕ ਕਰੋ ਤੇ ਬਾਹਰ ਜਾਓ
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Wybierz nazwę sejfu
addvaultwizard.new.namePrompt=Nazwa sejfu addvaultwizard.new.namePrompt=Nazwa sejfu
### Location ### Location
addvaultwizard.new.locationInstruction=Gdzie Cryptomator powinien przechowywać zaszyfrowane pliki twojego sejfu? addvaultwizard.new.locationInstruction=Gdzie Cryptomator powinien przechowywać zaszyfrowane pliki twojego sejfu?
addvaultwizard.new.locationLoading=Sprawdzanie lokalnego systemu plików dla domyślnych katalogów pamięci w chmurze…
addvaultwizard.new.locationLabel=Miejsce zapisu addvaultwizard.new.locationLabel=Miejsce zapisu
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Własna lokalizacja addvaultwizard.new.directoryPickerLabel=Własna lokalizacja
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Nie można usunąć ukrytego
unlock.error.customPath.description.couldNotBeCleaned=Twój sejf nie mógł być zamontowany do ścieżki "%s". Spróbuj ponownie lub wybierz inną ścieżkę. unlock.error.customPath.description.couldNotBeCleaned=Twój sejf nie mógł być zamontowany do ścieżki "%s". Spróbuj ponownie lub wybierz inną ścieżkę.
unlock.error.customPath.description.notEmptyDir=Wybrana ścieżka montowania "%s" nie jest pustym katalogiem. Wybierz pusty katalog i spróbuj ponownie. unlock.error.customPath.description.notEmptyDir=Wybrana ścieżka montowania "%s" nie jest pustym katalogiem. Wybierz pusty katalog i spróbuj ponownie.
unlock.error.customPath.description.generic=Wybrałeś własną ścieżkę montowania dla tego sejfu, ale użycie jej nie powiodło się. Powód: %2$s unlock.error.customPath.description.generic=Wybrałeś własną ścieżkę montowania dla tego sejfu, ale użycie jej nie powiodło się. Powód: %2$s
unlock.error.fuseRestartRequired.message=Nie można odblokować sejfu unlock.error.restartRequired.message=Nie udało się odblokować sejfu
unlock.error.fuseRestartRequired.description=Zmień typ udziału w opcjach sejfu lub zrestartuj Cryptomator. unlock.error.restartRequired.description=Zmień typ woluminu w opcjach sejfu lub zrestartuj Cryptomator.
unlock.error.title=Błąd odblokowywania "%s" unlock.error.title=Błąd odblokowywania "%s"
## Hub ## Hub
hub.noKeychain.message=Brak dostępu do klucza urządzenia hub.noKeychain.message=Brak dostępu do klucza urządzenia
@@ -157,17 +158,22 @@ hub.receive.message=Przetwarzanie odpowiedzi…
hub.receive.description=Cryptomator odbiera i przetwarza odpowiedź z Huba, proszę czekać. hub.receive.description=Cryptomator odbiera i przetwarza odpowiedź z Huba, proszę czekać.
### Register Device ### Register Device
hub.register.message=Nowe Urządzenie hub.register.message=Nowe Urządzenie
hub.register.description=To jest pierwszy dostęp do Huba z tego urządzenia. Proszę autoryzować go za pomocą klucza konta. hub.register.description=To jest pierwszy dostęp do Huba z tego urządzenia. Proszę je zarejestrować za pomocą klucza konta.
hub.register.nameLabel=Nazwa urządzenia hub.register.nameLabel=Nazwa urządzenia
hub.register.invalidAccountKeyLabel=Błędny klucz konta hub.register.invalidAccountKeyLabel=Błędny klucz konta
hub.register.occupiedMsg=Nazwa jest już używana hub.register.registerBtn=Zarejestruj
hub.register.registerBtn=Zatwierdź ### Register Device Legacy
hub.register.legacy.occupiedMsg=Nazwa jest już używana
hub.register.legacy.description=To jest pierwszy dostęp do Huba z tego urządzenia. Proszę je zarejestrować.
### Registration Success ### Registration Success
hub.registerSuccess.message=Urządzenie nazwano hub.registerSuccess.message=Urządzenie zarejestrowane
hub.registerSuccess.description=Aby dostać się do sejfu, Twoje urządzenie musi być autoryzowane przez właściciela sejfu. hub.registerSuccess.description=Twoje urządzenie zostało pomyślnie zarejestrowane. Możesz teraz odblokować sejf.
hub.registerSuccess.unlockBtn=Odblokuj
hub.registerSuccess.legacy.description=Aby dostać się do sejfu, Twoje urządzenie musi zostać dodatkowo autoryzowane przez właściciela sejfu.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Nazwanie urządzenia nie powiodło się hub.registerFailed.message=Rejestracja urządzenia nie powiodła się
hub.registerFailed.description=Wystąpił błąd podczas ustawiania nazwy. Aby uzyskać więcej szczegółów, zobacz logi aplikacji. hub.registerFailed.description.generic=Wystąpił błąd w procesie rejestracji. Aby uzyskać więcej szczegółów, sprawdź dziennik aplikacji.
hub.registerFailed.description.deviceAlreadyExists=To urządzenie jest już zarejestrowane dla innego użytkownika. Spróbuj zmienić konto użytkownika lub użyć innego urządzenia.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Brak dostępu hub.unauthorized.message=Brak dostępu
hub.unauthorized.description=Twoje urządzenie nie zostało jeszcze upoważnione do dostępu do tego sejfu. Poproś właściciela sejfu o autoryzację. hub.unauthorized.description=Twoje urządzenie nie zostało jeszcze upoważnione do dostępu do tego sejfu. Poproś właściciela sejfu o autoryzację.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Odblokuj…
main.vaultDetail.unlockNowBtn=Odblokuj teraz main.vaultDetail.unlockNowBtn=Odblokuj teraz
main.vaultDetail.optionsBtn=Ustawienia sejfu main.vaultDetail.optionsBtn=Ustawienia sejfu
main.vaultDetail.passwordSavedInKeychain=Hasło zapisane main.vaultDetail.passwordSavedInKeychain=Hasło zapisane
main.vaultDetail.share=Udostępnij…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=ODBLOKOWANE main.vaultDetail.unlockedStatus=ODBLOKOWANE
main.vaultDetail.accessLocation=Zawartość Twojego sejfu dostępna jest tutaj: main.vaultDetail.accessLocation=Zawartość Twojego sejfu dostępna jest tutaj:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Użyj wybranego katalogu
vaultOptions.mount.mountPoint.directoryPickerButton=Wybierz… vaultOptions.mount.mountPoint.directoryPickerButton=Wybierz…
vaultOptions.mount.mountPoint.directoryPickerTitle=Wybierz katalog vaultOptions.mount.mountPoint.directoryPickerTitle=Wybierz katalog
vaultOptions.mount.volumeType.default=Domyślny (%s) vaultOptions.mount.volumeType.default=Domyślny (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Aby użyć tego typu udziału, należy zrestartować Cryptomator. vaultOptions.mount.volumeType.restartRequired=Aby użyć woluminu tego typu, należy zrestartować Cryptomator.
vaultOptions.mount.volume.tcp.port=Port TCP vaultOptions.mount.volume.tcp.port=Port TCP
vaultOptions.mount.volume.type=Typ udziału vaultOptions.mount.volume.type=Typ udziału
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Sprawdzić aktualizacje?
updateReminder.description=Bądź na bieżąco z nowymi funkcjami, poprawkami błędów i poprawkami bezpieczeństwa. Zalecamy automatyczne sprawdzanie aktualizacji. updateReminder.description=Bądź na bieżąco z nowymi funkcjami, poprawkami błędów i poprawkami bezpieczeństwa. Zalecamy automatyczne sprawdzanie aktualizacji.
updateReminder.notNow=Nie teraz updateReminder.notNow=Nie teraz
updateReminder.yesOnce=Tak, raz updateReminder.yesOnce=Tak, raz
updateReminder.yesAutomatically=Tak, automatycznie updateReminder.yesAutomatically=Tak, automatycznie
# Share Vault
shareVault.title=Udostępnij sejf
shareVault.message=Czy chcesz udostępnić swój sejf innym?
shareVault.description=Zawsze zachowuj ostrożność udostępniając swój sejf innym. W skrócie, wykonaj następujące kroki:
shareVault.instruction.1=1. Udziel dostępu do zaszyfrowanego sejfu przez chmurę.
shareVault.instruction.2=2. Udostępnij hasło sejfu w bezpieczny sposób.
shareVault.remarkBestPractices=Aby uzyskać więcej informacji, zapoznaj się z propozycjami najlepszych praktyk zawartymi w naszej dokumentacji.
shareVault.docsTooltip=Otwórz dokumentację, aby dowiedzieć się więcej o udostępnianiu sejfów.
shareVault.hubAd.description=Bezpieczny sposób pracy w zespołach
shareVault.hubAd.keyManagement=• Zero-knowledgeowe zarządzanie kluczami
shareVault.hubAd.authentication=• Silne uwierzytelnianie
shareVault.hubAd.encryption=Szyfrowanie end-to-end
shareVault.visitHub=Odwiedź Cryptomator Hub
shareVault.hub.message=Jak udostępnić sejf Hub
shareVault.hub.description=Aby udostępnić zawartość sejfu innemu członkowi zespołu, musisz wykonać dwa kroki:
shareVault.hub.instruction.1=1. Udziel dostępu do zaszyfrowanego sejfu przez miejsce w chmurze.
shareVault.hub.instruction.2=2. Udziel dostępu członkowi zespołu w Cryptomator Hub.
shareVault.hub.openHub=Otwórz Cryptomator Hub
+37 -10
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Escolha um nome para o cofre
addvaultwizard.new.namePrompt=Nome do Cofre addvaultwizard.new.namePrompt=Nome do Cofre
### Location ### Location
addvaultwizard.new.locationInstruction=Onde deve o Cryptomator armazenar os arquivos criptografados do cofre? addvaultwizard.new.locationInstruction=Onde deve o Cryptomator armazenar os arquivos criptografados do cofre?
addvaultwizard.new.locationLoading=Verificando o sistema de arquivos por diretórios padrão de armazenamento na nuvem…
addvaultwizard.new.locationLabel=Local de armazenamento addvaultwizard.new.locationLabel=Local de armazenamento
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Outro Local addvaultwizard.new.directoryPickerLabel=Outro Local
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=O arquivo oculto temporário
unlock.error.customPath.description.couldNotBeCleaned=Não foi possível montar o seu cofre no caminho "%s". Tente novamente ou escolha um caminho diferente. unlock.error.customPath.description.couldNotBeCleaned=Não foi possível montar o seu cofre no caminho "%s". Tente novamente ou escolha um caminho diferente.
unlock.error.customPath.description.notEmptyDir=O caminho de montagem personalizado "%s" não é uma pasta vazia. Escolha uma pasta vazia e tente novamente. unlock.error.customPath.description.notEmptyDir=O caminho de montagem personalizado "%s" não é uma pasta vazia. Escolha uma pasta vazia e tente novamente.
unlock.error.customPath.description.generic=Selecionou um caminho de montagem personalizado para este cofre, mas o seu uso falhou com a mensagem: %2$s unlock.error.customPath.description.generic=Selecionou um caminho de montagem personalizado para este cofre, mas o seu uso falhou com a mensagem: %2$s
unlock.error.fuseRestartRequired.message=Não é possível desbloquear o cofre unlock.error.restartRequired.message=Não foi possível desbloquear o cofre
unlock.error.fuseRestartRequired.description=Altere o tipo de volume nas opções do cofre ou reinicie o Cryptomator. unlock.error.restartRequired.description=Altere o tipo de volume nas opções do cofre ou reinicie o Cryptomator.
unlock.error.title=Desbloqueio "%s" falhou unlock.error.title=Desbloqueio "%s" falhou
## Hub ## Hub
hub.noKeychain.message=Não foi possível aceder à chave do dispositivo hub.noKeychain.message=Não foi possível aceder à chave do dispositivo
@@ -160,14 +161,19 @@ hub.register.message=Novo dispositivo
hub.register.description=Este é o primeiro acesso do Hub a partir deste dispositivo. Por favor, autorize-o usando a sua chave de conta. hub.register.description=Este é o primeiro acesso do Hub a partir deste dispositivo. Por favor, autorize-o usando a sua chave de conta.
hub.register.nameLabel=Nome do dispositivo hub.register.nameLabel=Nome do dispositivo
hub.register.invalidAccountKeyLabel=Chave da conta inválida hub.register.invalidAccountKeyLabel=Chave da conta inválida
hub.register.occupiedMsg=Nome já utilizado hub.register.registerBtn=Registo
hub.register.registerBtn=Confirmar ### Register Device Legacy
hub.register.legacy.occupiedMsg=Nome já em utilização
hub.register.legacy.description=Este é o primeiro acesso ao Hub a partir deste dispositivo. Por favor, registe-o.
### Registration Success ### Registration Success
hub.registerSuccess.message=Nome do dispositivo hub.registerSuccess.message=Dispositivo registado
hub.registerSuccess.description=Para aceder ao cofre, o seu dispositivo precisa de ser autorizado pelo proprietário do cofre. hub.registerSuccess.description=O seu dispositivo foi registado com sucesso. Pode continuar e desbloquear o cofre.
hub.registerSuccess.unlockBtn=Desbloquear
hub.registerSuccess.legacy.description=Para aceder ao cofre, o seu dispositivo precisa de ser autorizado pelo proprietário do cofre.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Falha ao nomear o dispositivo hub.registerFailed.message=Registo do dispositivo falhou
hub.registerFailed.description=Houve um erro no processo de nomear. Para mais detalhes, verifique o log da aplicação. hub.registerFailed.description.generic=Ocorreu um erro no processo de registo. Para mais informação, ver os registos da aplicação.
hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registado para um utilizador diferente. Tente alterar a conta de utilizador ou use um dispositivo diferente.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acesso negado hub.unauthorized.message=Acesso negado
hub.unauthorized.description=O seu dispositivo ainda não foi autorizado a aceder a este cofre. Peça ao proprietário do cofre para o autorizar. hub.unauthorized.description=O seu dispositivo ainda não foi autorizado a aceder a este cofre. Peça ao proprietário do cofre para o autorizar.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Desbloquear…
main.vaultDetail.unlockNowBtn=Desbloquear agora main.vaultDetail.unlockNowBtn=Desbloquear agora
main.vaultDetail.optionsBtn=Opções do Cofre main.vaultDetail.optionsBtn=Opções do Cofre
main.vaultDetail.passwordSavedInKeychain=Palavra-passe guardada main.vaultDetail.passwordSavedInKeychain=Palavra-passe guardada
main.vaultDetail.share=Partilhar…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=DESBLOQUEADO main.vaultDetail.unlockedStatus=DESBLOQUEADO
main.vaultDetail.accessLocation=O conteúdo do seu cofre está acessível aqui: main.vaultDetail.accessLocation=O conteúdo do seu cofre está acessível aqui:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Usar diretório escolhido
vaultOptions.mount.mountPoint.directoryPickerButton=Escolher… vaultOptions.mount.mountPoint.directoryPickerButton=Escolher…
vaultOptions.mount.mountPoint.directoryPickerTitle=Escolher um diretório vaultOptions.mount.mountPoint.directoryPickerTitle=Escolher um diretório
vaultOptions.mount.volumeType.default=Predefinição (%1$s) vaultOptions.mount.volumeType.default=Predefinição (%1$s)
vaultOptions.mount.volumeType.fuseRestartRequired=Para usar este tipo de volume, o Cryptomator precisa de ser reiniciado. vaultOptions.mount.volumeType.restartRequired=Para usar este tipo de volume, o Cryptomator precisa de ser reiniciado.
vaultOptions.mount.volume.tcp.port=Porta TCP vaultOptions.mount.volume.tcp.port=Porta TCP
vaultOptions.mount.volume.type=Tipo de Volume vaultOptions.mount.volume.type=Tipo de Volume
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Verificar atualizações?
updateReminder.description=Fique atualizado com novos recursos, correções de erros e melhorias de segurança. Recomendamos verificar automaticamente se há atualizações. updateReminder.description=Fique atualizado com novos recursos, correções de erros e melhorias de segurança. Recomendamos verificar automaticamente se há atualizações.
updateReminder.notNow=Agora não updateReminder.notNow=Agora não
updateReminder.yesOnce=Sim, Uma Vez updateReminder.yesOnce=Sim, Uma Vez
updateReminder.yesAutomatically=Sim, Automaticamente updateReminder.yesAutomatically=Sim, Automaticamente
# Share Vault
shareVault.title=Partilhar cofre
shareVault.message=Quer partilhar o seu cofre com outros?
shareVault.description=Tenha sempre cuidado ao partilhar o seu cofre com outras pessoas. Resumindo, siga esses passos:
shareVault.instruction.1=1. Partilhe o acesso à pasta encriptada do cofre via armazenamento na nuvem.
shareVault.instruction.2=2. Partilhe a palavra-passe do cofre de forma segura.
shareVault.remarkBestPractices=Para mais informações, verifique as sugestões de melhores práticas, nos nossos documentos.
shareVault.docsTooltip=Abra a documentação para saber mais sobre partilha de cofres.
shareVault.hubAd.description=A maneira segura de trabalhar em equipa
shareVault.hubAd.keyManagement=• Gestão de chaves de conhecimento-zero
shareVault.hubAd.authentication=• Autenticação forte
shareVault.hubAd.encryption=• Encriptação ponta-a-ponta
shareVault.visitHub=Visitar o Hub Cryptomator
shareVault.hub.message=Como partilhar um cofre do Hub
shareVault.hub.description=Para partilhar o conteúdo do cofre com outro membro da equipa, precisa executar duas etapas:
shareVault.hub.instruction.1=1. Partilhe o acesso à pasta encriptada do cofre via armazenamento na nuvem.
shareVault.hub.instruction.2=2. Conceder acesso ao membro da equipe no Hub Cryptomator.
shareVault.hub.openHub=Abrir Hub do Cryptomator
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Escolha um nome para o cofre
addvaultwizard.new.namePrompt=Nome do Cofre addvaultwizard.new.namePrompt=Nome do Cofre
### Location ### Location
addvaultwizard.new.locationInstruction=Onde o Cryptomator deve armazenar os arquivos criptografados do seu cofre? addvaultwizard.new.locationInstruction=Onde o Cryptomator deve armazenar os arquivos criptografados do seu cofre?
addvaultwizard.new.locationLoading=Verificando o sistema de arquivos local para diretórios de armazenamento na nuvem padrão…
addvaultwizard.new.locationLabel=Local de armazenamento addvaultwizard.new.locationLabel=Local de armazenamento
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Local Personalizado addvaultwizard.new.directoryPickerLabel=Local Personalizado
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=O arquivo oculto e temporári
unlock.error.customPath.description.couldNotBeCleaned=Seu cofre não pôde ser montado no caminho "%s". Tente novamente ou escolha um caminho diferente. unlock.error.customPath.description.couldNotBeCleaned=Seu cofre não pôde ser montado no caminho "%s". Tente novamente ou escolha um caminho diferente.
unlock.error.customPath.description.notEmptyDir=O caminho de montagem escolhido "%s" não é uma pasta vazia. Escolha uma pasta vazia e tente novamente. unlock.error.customPath.description.notEmptyDir=O caminho de montagem escolhido "%s" não é uma pasta vazia. Escolha uma pasta vazia e tente novamente.
unlock.error.customPath.description.generic=Você selecionou um caminho de montagem personalizado para este cofre, mas falhou com a mensagem: %2$s unlock.error.customPath.description.generic=Você selecionou um caminho de montagem personalizado para este cofre, mas falhou com a mensagem: %2$s
unlock.error.fuseRestartRequired.message=Não foi possível desbloquear o cofre unlock.error.restartRequired.message=Não foi possível desbloquear o cofre
unlock.error.fuseRestartRequired.description=Altere o tipo de volume nas opções do cofre ou reinicie o Cryptomator. unlock.error.restartRequired.description=Altere o tipo de volume nas opções do cofre ou reinicie o Cryptomator.
unlock.error.title=Desbloqueio "%s" falhou unlock.error.title=Desbloqueio "%s" falhou
## Hub ## Hub
hub.noKeychain.message=Não foi possível acessar a chave do dispositivo hub.noKeychain.message=Não foi possível acessar a chave do dispositivo
@@ -157,17 +158,22 @@ hub.receive.message=Processando resposta…
hub.receive.description=Cryptomator está recebendo e processando a resposta do Hub. Por favor, aguarde. hub.receive.description=Cryptomator está recebendo e processando a resposta do Hub. Por favor, aguarde.
### Register Device ### Register Device
hub.register.message=Novo Dispositivo hub.register.message=Novo Dispositivo
hub.register.description=Este é o primeiro acesso do Hub deste dispositivo. Por favor, autorize-o usando sua Chave de Conta. hub.register.description=Este é o primeiro acesso do Hub neste dispositivo. Por favor, registre-o usando sua Chave de Conta.
hub.register.nameLabel=Nome do dispositivo hub.register.nameLabel=Nome do dispositivo
hub.register.invalidAccountKeyLabel=Chave de Conta inválida hub.register.invalidAccountKeyLabel=Chave de Conta inválida
hub.register.occupiedMsg=Este nome já está em uso hub.register.registerBtn=Registrar
hub.register.registerBtn=Confirme ### Register Device Legacy
hub.register.legacy.occupiedMsg=Este nome já está em uso
hub.register.legacy.description=Este é o primeiro acesso do Hub neste dispositivo. Por favor, registre-o.
### Registration Success ### Registration Success
hub.registerSuccess.message=Dispositivo nomeado hub.registerSuccess.message=Dispositivo registrado
hub.registerSuccess.description=Para acessar o cofre, seu dispositivo precisa ser autorizado pelo proprietário do cofre. hub.registerSuccess.description=Seu dispositivo foi registrado com sucesso. Agora você pode continuar a desbloquear o cofre.
hub.registerSuccess.unlockBtn=Desbloquear
hub.registerSuccess.legacy.description=Para acessar o cofre, seu dispositivo precisa ser autorizado pelo proprietário do cofre.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Falha ao registrar o nome do dispositivo no Hub hub.registerFailed.message=Falha ao registrar o Dispositivo
hub.registerFailed.description=Ocorreu um erro no processo de nomeação do dispositivo junto ao Hub. Para obter mais detalhes, consulte os registros informativos — log's — do aplicativo. hub.registerFailed.description.generic=Um erro ocorreu no processo de registro. Para mais detalhes, verifique o log da aplicação.
hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registrado para um usuário diferente. Tente alterar a conta de usuário ou use um dispositivo diferente.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acesso negado hub.unauthorized.message=Acesso negado
hub.unauthorized.description=Seu dispositivo ainda não foi autorizado a acessar este cofre. Peça ao proprietário do cofre para autorizá-lo. hub.unauthorized.description=Seu dispositivo ainda não foi autorizado a acessar este cofre. Peça ao proprietário do cofre para autorizá-lo.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Desbloquear…
main.vaultDetail.unlockNowBtn=Desbloquear Agora main.vaultDetail.unlockNowBtn=Desbloquear Agora
main.vaultDetail.optionsBtn=Opções de Cofre main.vaultDetail.optionsBtn=Opções de Cofre
main.vaultDetail.passwordSavedInKeychain=Senha salva main.vaultDetail.passwordSavedInKeychain=Senha salva
main.vaultDetail.share=Compartilhar…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=DESBLOQUEADO main.vaultDetail.unlockedStatus=DESBLOQUEADO
main.vaultDetail.accessLocation=O conteúdo do seu cofre está disponível aqui: main.vaultDetail.accessLocation=O conteúdo do seu cofre está disponível aqui:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Usar diretório escolhido
vaultOptions.mount.mountPoint.directoryPickerButton=Escolher… vaultOptions.mount.mountPoint.directoryPickerButton=Escolher…
vaultOptions.mount.mountPoint.directoryPickerTitle=Escolha um diretório vaultOptions.mount.mountPoint.directoryPickerTitle=Escolha um diretório
vaultOptions.mount.volumeType.default=Padrão (%s) vaultOptions.mount.volumeType.default=Padrão (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Para usar esse tipo de volume, o Cryptomator precisa ser reiniciado. vaultOptions.mount.volumeType.restartRequired=Para usar esse tipo de volume, o Cryptomator precisa ser reiniciado.
vaultOptions.mount.volume.tcp.port=Porta TCP vaultOptions.mount.volume.tcp.port=Porta TCP
vaultOptions.mount.volume.type=Tipo de Volume vaultOptions.mount.volume.type=Tipo de Volume
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Verificar Atualizações?
updateReminder.description=Mantenha-se atualizado com novos recursos, correções de bugs e melhoramentos de segurança. Recomendamos verificar atualizações automaticamente. updateReminder.description=Mantenha-se atualizado com novos recursos, correções de bugs e melhoramentos de segurança. Recomendamos verificar atualizações automaticamente.
updateReminder.notNow=Agora Não updateReminder.notNow=Agora Não
updateReminder.yesOnce=Sim, Uma Vez updateReminder.yesOnce=Sim, Uma Vez
updateReminder.yesAutomatically=Sim, Automaticamente updateReminder.yesAutomatically=Sim, Automaticamente
# Share Vault
shareVault.title=Compartilhar Cofre
shareVault.message=Gostaria de compartilhar o seu cofre com outras pessoas?
shareVault.description=Sempre tenha cuidado ao compartilhar seu cofre com outras pessoas. Em resumo, siga esses passos:
shareVault.instruction.1=1. Compartilhe o acesso da pasta do cofre criptografado via armazenamento na nuvem.
shareVault.instruction.2=2. Compartilhe a senha do cofre de forma segura.
shareVault.remarkBestPractices=Para mais informações, confira as sugestões de melhores práticas em nossos documentos.
shareVault.docsTooltip=Abra a documentação para aprender mais sobre compartilhamento de cofres.
shareVault.hubAd.description=A maneira segura de trabalhar em equipes
shareVault.hubAd.keyManagement=• Gerenciamento de chaves de Zero-Conhecimento
shareVault.hubAd.authentication=• Autenticação forte
shareVault.hubAd.encryption=• Criptografia de ponta-a-ponta
shareVault.visitHub=Visite o Cryptomator Hub
shareVault.hub.message=Como compartilhar um cofre do Hub
shareVault.hub.description=Para compartilhar o conteúdo do cofre com outro membro da equipe, você precisa executar duas etapas:
shareVault.hub.instruction.1=1. Compartilhe o acesso da pasta do cofre criptografado via armazenamento na nuvem.
shareVault.hub.instruction.2=2. Conceda acesso ao membro da equipe no Cryptomator Hub.
shareVault.hub.openHub=Abrir o Cryptomator Hub
@@ -155,14 +155,10 @@ hub.receive.description=In acest moment Criptomatorul primește și procesează
### Register Device ### Register Device
hub.register.message=Dispozitiv nou hub.register.message=Dispozitiv nou
hub.register.nameLabel=Numele dispozitivului hub.register.nameLabel=Numele dispozitivului
hub.register.occupiedMsg=Acest nume este deja utilizat ### Register Device Legacy
hub.register.registerBtn=Confirmați
### Registration Success ### Registration Success
hub.registerSuccess.message=Dispozitiv numit hub.registerSuccess.unlockBtn=Deblocați
hub.registerSuccess.description=Pentru a accesa acest seif, dispozitivul dvs. trebuie să fie autorizat de proprietarul seifului.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Numirea dispozitivului a eșuat
hub.registerFailed.description=O eroare a fost întâmpinata în procesul de denumire. Pentru mai multe detalii, verificați jurnalul aplicației.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acces respins hub.unauthorized.message=Acces respins
hub.unauthorized.description=Dispozitivul dvs. nu a fost autorizat să acceseze acest seif. Solicitați proprietarului seifului să va autorizeze accesul. hub.unauthorized.description=Dispozitivul dvs. nu a fost autorizat să acceseze acest seif. Solicitați proprietarului seifului să va autorizeze accesul.
@@ -511,4 +507,6 @@ updateReminder.message=Verificați dacă există actualizări?
updateReminder.description=Rămâneți la curent cu noi caracteristici, remedieri ale erorilor și îmbunătățiri de securitate. Vă recomandăm să verificați automat actualizările. updateReminder.description=Rămâneți la curent cu noi caracteristici, remedieri ale erorilor și îmbunătățiri de securitate. Vă recomandăm să verificați automat actualizările.
updateReminder.notNow=Nu acum updateReminder.notNow=Nu acum
updateReminder.yesOnce=Da, o dată updateReminder.yesOnce=Da, o dată
updateReminder.yesAutomatically=Da, automat updateReminder.yesAutomatically=Da, automat
# Share Vault
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Выберите имя для хранили
addvaultwizard.new.namePrompt=Имя хранилища addvaultwizard.new.namePrompt=Имя хранилища
### Location ### Location
addvaultwizard.new.locationInstruction=Где Cryptomator должен хранить зашифрованные файлы хранилища? addvaultwizard.new.locationInstruction=Где Cryptomator должен хранить зашифрованные файлы хранилища?
addvaultwizard.new.locationLoading=Проверка локальной файловой системы на наличие облачных каталогов по умолчанию…
addvaultwizard.new.locationLabel=Место хранения addvaultwizard.new.locationLabel=Место хранения
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Другое место addvaultwizard.new.directoryPickerLabel=Другое место
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Временный скрыт
unlock.error.customPath.description.couldNotBeCleaned=Хранилище не может быть смонтировано к пути "%s". Попробуйте ещё раз или выберите другой путь. unlock.error.customPath.description.couldNotBeCleaned=Хранилище не может быть смонтировано к пути "%s". Попробуйте ещё раз или выберите другой путь.
unlock.error.customPath.description.notEmptyDir=Путь монтирования "%s" — не пустая папка. Выберите пустую папку и повторите попытку. unlock.error.customPath.description.notEmptyDir=Путь монтирования "%s" — не пустая папка. Выберите пустую папку и повторите попытку.
unlock.error.customPath.description.generic=Выбранный вами путь монтирования для хранилища не удалось использовать: %2$s unlock.error.customPath.description.generic=Выбранный вами путь монтирования для хранилища не удалось использовать: %2$s
unlock.error.fuseRestartRequired.message=Невозможно разблокировать хранилище unlock.error.restartRequired.message=Невозможно разблокировать хранилище
unlock.error.fuseRestartRequired.description=Измените тип тома в настройках хранилища или перезапустите Cryptomator. unlock.error.restartRequired.description=Измените тип тома в настройках хранилища или перезапустите Cryptomator.
unlock.error.title=Не удалось разблокировать "%s" unlock.error.title=Не удалось разблокировать "%s"
## Hub ## Hub
hub.noKeychain.message=Нет доступа к ключу устройства hub.noKeychain.message=Нет доступа к ключу устройства
@@ -157,17 +158,22 @@ hub.receive.message=Обработка ответа…
hub.receive.description=Cryptomator принимает и обрабатывает ответ от хаба. Подождите. hub.receive.description=Cryptomator принимает и обрабатывает ответ от хаба. Подождите.
### Register Device ### Register Device
hub.register.message=Новое устройство hub.register.message=Новое устройство
hub.register.description=Это первый доступ к Hub с этого устройства. Пожалуйста, авторизуйте его, используя ваш Account Key. hub.register.description=Это первый доступ к хабу с этого устройства. Авторизуйтесь, используя ваш ключ аккаунта.
hub.register.nameLabel=Имя устройства hub.register.nameLabel=Имя устройства
hub.register.invalidAccountKeyLabel=Неверный Account Key hub.register.invalidAccountKeyLabel=Неверный Account Key
hub.register.occupiedMsg=Имя уже используется hub.register.registerBtn=Регистрация
hub.register.registerBtn=Подтвердить ### Register Device Legacy
hub.register.legacy.occupiedMsg=Имя уже используется
hub.register.legacy.description=Это первый доступ к хабу с этого устройства. Зарегистрируйтесь.
### Registration Success ### Registration Success
hub.registerSuccess.message=Устройству присвоено имя hub.registerSuccess.message=Устройство зарегистрировано
hub.registerSuccess.description=Для доступа к хранилищу ваше устройство должно быть авторизовано владельцем хранилища. hub.registerSuccess.description=Устройство успешно зарегистрировано. Теперь вы можете разблокировать хранилище.
hub.registerSuccess.unlockBtn=Разблокировать
hub.registerSuccess.legacy.description=Для доступа к хранилищу устройство должно быть авторизовано владельцем хранилища.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Ошибка присвоения имени устройству hub.registerFailed.message=Ошибка регистрации устройства
hub.registerFailed.description=Ошибка присвоения имени. Более подробную информацию см. в журнале приложения. hub.registerFailed.description.generic=Ошибка регистрации. Подробную информацию см. в журнале приложения.
hub.registerFailed.description.deviceAlreadyExists=Это устройство уже зарегистрировано другим пользователем. Попробуйте изменить учётную запись или используйте другое устройство.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Доступ запрещен hub.unauthorized.message=Доступ запрещен
hub.unauthorized.description=Устройство ещё не авторизовано для доступа к этому хранилищу. Попросите владельца хранилища разрешить его. hub.unauthorized.description=Устройство ещё не авторизовано для доступа к этому хранилищу. Попросите владельца хранилища разрешить его.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Разблокировать…
main.vaultDetail.unlockNowBtn=Разблокировать main.vaultDetail.unlockNowBtn=Разблокировать
main.vaultDetail.optionsBtn=Параметры хранилища main.vaultDetail.optionsBtn=Параметры хранилища
main.vaultDetail.passwordSavedInKeychain=Пароль сохранён main.vaultDetail.passwordSavedInKeychain=Пароль сохранён
main.vaultDetail.share=Поделиться…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=РАЗБЛОКИРОВАНО main.vaultDetail.unlockedStatus=РАЗБЛОКИРОВАНО
main.vaultDetail.accessLocation=Содержимое хранилища доступно здесь: main.vaultDetail.accessLocation=Содержимое хранилища доступно здесь:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Использовать выбранную
vaultOptions.mount.mountPoint.directoryPickerButton=Выбрать… vaultOptions.mount.mountPoint.directoryPickerButton=Выбрать…
vaultOptions.mount.mountPoint.directoryPickerTitle=Выберите папку vaultOptions.mount.mountPoint.directoryPickerTitle=Выберите папку
vaultOptions.mount.volumeType.default=По умолчанию (%s) vaultOptions.mount.volumeType.default=По умолчанию (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Чтобы использовать том этого типа, необходимо перезапустить Cryptomator. vaultOptions.mount.volumeType.restartRequired=Чтобы использовать том этого типа, необходимо перезапустить Cryptomator.
vaultOptions.mount.volume.tcp.port=Порт TCP vaultOptions.mount.volume.tcp.port=Порт TCP
vaultOptions.mount.volume.type=Тип тома vaultOptions.mount.volume.type=Тип тома
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Проверить обновления?
updateReminder.description=Будьте в курсе новых возможностей, исправлений ошибок и улучшений безопасности. Мы рекомендуем автоматически проверять наличие обновлений. updateReminder.description=Будьте в курсе новых возможностей, исправлений ошибок и улучшений безопасности. Мы рекомендуем автоматически проверять наличие обновлений.
updateReminder.notNow=Не сейчас updateReminder.notNow=Не сейчас
updateReminder.yesOnce=Да, один раз updateReminder.yesOnce=Да, один раз
updateReminder.yesAutomatically=Да, автоматически updateReminder.yesAutomatically=Да, автоматически
# Share Vault
shareVault.title=Поделиться хранилищем
shareVault.message=Хотите поделиться хранилищем с другими?
shareVault.description=Будьте осторожны, давая доступ к хранилищу другим людям. Соблюдайте следующее:
shareVault.instruction.1=1. Делитесь доступом к зашифрованной папке хранилища через облако.
shareVault.instruction.2=2. Делитесь паролем к хранилищу безопасным способом.
shareVault.remarkBestPractices=Дополнительную информацию см. в нашей документации.
shareVault.docsTooltip=Откройте документацию, чтобы узнать о совместном использовании хранилищ.
shareVault.hubAd.description=Безопасный способ работы в командах
shareVault.hubAd.keyManagement=• Управление ключами без разглашения
shareVault.hubAd.authentication=• Надёжная аутентификация
shareVault.hubAd.encryption=• Сквозное шифрование
shareVault.visitHub=Посетить хаб Cryptomator
shareVault.hub.message=Как поделиться хранилищем в хабе
shareVault.hub.description=Чтобы поделиться содержимым хранилища с другим членом команды:
shareVault.hub.instruction.1=1. Делитесь доступом к зашифрованной папке хранилища через облако.
shareVault.hub.instruction.2=2. Предоставьте доступ члену команды в хабе Cryptomator.
shareVault.hub.openHub=Открыть хаб Cryptomator
@@ -49,7 +49,9 @@ unlock.unlockBtn=අගුළුහරින්න
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=අගුළුහරින්න
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -126,4 +128,6 @@ main.closeBtn.tooltip=වසන්න
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+14 -11
View File
@@ -141,8 +141,7 @@ unlock.error.customPath.description.hideawayNotDir=Dočasne, skrytý súbor "%3$
unlock.error.customPath.description.couldNotBeCleaned=Váš trezor sa nepodarilo pripojiť na cestu "%s". Skúste to prosím znova alebo vyberte inú cestu. unlock.error.customPath.description.couldNotBeCleaned=Váš trezor sa nepodarilo pripojiť na cestu "%s". Skúste to prosím znova alebo vyberte inú cestu.
unlock.error.customPath.description.notEmptyDir=Vlastná cesta pripojenia "%s" nie je prázdny priečinok. Vyberte prázdny priečinok a skúste to znova. unlock.error.customPath.description.notEmptyDir=Vlastná cesta pripojenia "%s" nie je prázdny priečinok. Vyberte prázdny priečinok a skúste to znova.
unlock.error.customPath.description.generic=Pre tento trezor ste vybrali vlastnú cestu pripojenia, ale jej použitie zlyhalo so správou: %2$s unlock.error.customPath.description.generic=Pre tento trezor ste vybrali vlastnú cestu pripojenia, ale jej použitie zlyhalo so správou: %2$s
unlock.error.fuseRestartRequired.message=Trezor nebolo možné odomknúť unlock.error.restartRequired.message=Nie je možné odomknúť trezor
unlock.error.fuseRestartRequired.description=Zmeňte typ disku v možnostiach trezora alebo reštartujte Cryptomator.
unlock.error.title=Odomknutie "%s" zlyhalo unlock.error.title=Odomknutie "%s" zlyhalo
## Hub ## Hub
hub.noKeychain.message=Nemôžem pristúpiť ku kľúču zariadenia hub.noKeychain.message=Nemôžem pristúpiť ku kľúču zariadenia
@@ -157,17 +156,16 @@ hub.receive.message=Spracovávanie odpovede…
hub.receive.description=Cryptomator prijíma a spracúva odpovede z Hub-u. Prosím počkajte. hub.receive.description=Cryptomator prijíma a spracúva odpovede z Hub-u. Prosím počkajte.
### Register Device ### Register Device
hub.register.message=Nové zariadenie hub.register.message=Nové zariadenie
hub.register.description=Toto je prvý prístup k Hub-u z tohto zariadenia. Prosím autorizujte ho použitím kódu účtu.
hub.register.nameLabel=Názov zariadenia hub.register.nameLabel=Názov zariadenia
hub.register.invalidAccountKeyLabel=Neplatný kľúč účtu hub.register.invalidAccountKeyLabel=Neplatný kľúč účtu
hub.register.occupiedMsg=Názov už existuje hub.register.registerBtn=Registrovať
hub.register.registerBtn=Potvrdiť ### Register Device Legacy
hub.register.legacy.occupiedMsg=Názov sa už používa
### Registration Success ### Registration Success
hub.registerSuccess.message=Pomenovanie zariadenia hub.registerSuccess.message=Zariadenie registrované
hub.registerSuccess.description=Sprístupniť trezor, Vaše zariadenie musí byť autorizované vlastníkom trezora. hub.registerSuccess.unlockBtn=Odomknúť
### Registration Failed ### Registration Failed
hub.registerFailed.message=Pomenovanie zariadenia zlyhalo hub.registerFailed.message=Registrácia zariadenia zlyhala
hub.registerFailed.description=Vznikla chyba počas pomenovávacieho procesu. Pre viac detailov, nazrite do aplikačného logu.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Prístup zamietnutý hub.unauthorized.message=Prístup zamietnutý
hub.unauthorized.description=Vaše zaradenie zatiaľ ešte nebolo autorizované pre pristúp tohto trezora. Požiadajte majiteľa trezora o autorizovanie. hub.unauthorized.description=Vaše zaradenie zatiaľ ešte nebolo autorizované pre pristúp tohto trezora. Požiadajte majiteľa trezora o autorizovanie.
@@ -386,6 +384,7 @@ main.vaultDetail.unlockBtn=Odomknúť…
main.vaultDetail.unlockNowBtn=Odomknúť teraz main.vaultDetail.unlockNowBtn=Odomknúť teraz
main.vaultDetail.optionsBtn=Nastavenia trezora main.vaultDetail.optionsBtn=Nastavenia trezora
main.vaultDetail.passwordSavedInKeychain=Heslo uložené main.vaultDetail.passwordSavedInKeychain=Heslo uložené
main.vaultDetail.share=Zdieľať…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=Odomknutý main.vaultDetail.unlockedStatus=Odomknutý
main.vaultDetail.accessLocation=Obsah Vášho trezora je dostupný tu: main.vaultDetail.accessLocation=Obsah Vášho trezora je dostupný tu:
@@ -451,7 +450,6 @@ vaultOptions.mount.mountPoint.custom=Použiť zvolený adresár
vaultOptions.mount.mountPoint.directoryPickerButton=Zvoliť… vaultOptions.mount.mountPoint.directoryPickerButton=Zvoliť…
vaultOptions.mount.mountPoint.directoryPickerTitle=Vyberte adresár vaultOptions.mount.mountPoint.directoryPickerTitle=Vyberte adresár
vaultOptions.mount.volumeType.default=Predvolené (%s) vaultOptions.mount.volumeType.default=Predvolené (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Pre aplikovanie zmien je potrebné reštartovať Cryptomator.
vaultOptions.mount.volume.tcp.port=TCP port vaultOptions.mount.volume.tcp.port=TCP port
vaultOptions.mount.volume.type=Typ disku vaultOptions.mount.volume.type=Typ disku
## Master Key ## Master Key
@@ -523,4 +521,9 @@ updateReminder.message=Skontrolovať aktualizácie?
updateReminder.description=Zostaňte aktualizovaný s novými vlastnosťami, opravami chýb a bezpečnostnými vylepšeniami. Odporúčame automatickú kontrolu aktualizácií. updateReminder.description=Zostaňte aktualizovaný s novými vlastnosťami, opravami chýb a bezpečnostnými vylepšeniami. Odporúčame automatickú kontrolu aktualizácií.
updateReminder.notNow=Teraz nie updateReminder.notNow=Teraz nie
updateReminder.yesOnce=Áno, raz updateReminder.yesOnce=Áno, raz
updateReminder.yesAutomatically=Áno, automaticky updateReminder.yesAutomatically=Áno, automaticky
# Share Vault
shareVault.title=Zdielať trezor
shareVault.hubAd.authentication=* Silná autentifikácia
shareVault.hubAd.encryption=* Šifrovanie end-to-end
+30 -1
View File
@@ -22,17 +22,35 @@ error.hyperlink.report=Prijavite to napako
error.technicalDetails=Podrobnosti: error.technicalDetails=Podrobnosti:
# Defaults # Defaults
defaults.vault.vaultName=Trezor
# Tray Menu # Tray Menu
traymenu.showMainWindow=Prikaži
traymenu.showPreferencesWindow=Nastavitve
traymenu.lockAllVaults=Zakleni vse
traymenu.quitApplication=Izhod
traymenu.vault.unlock=Odkleni
traymenu.vault.lock=Zakleni
traymenu.vault.reveal=Razkrij
# Add Vault Wizard # Add Vault Wizard
addvaultwizard.title=Dodaj trezor
## New ## New
addvaultwizard.new.title=Dodaj nov trezor
### Name ### Name
addvaultwizard.new.namePrompt=Ime trezorja
### Location ### Location
addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerButton=Izberi…
addvaultwizard.new.directoryPickerTitle=Izberi mapo
addvaultwizard.new.validCharacters.numbers=Številke
### Expert Settings ### Expert Settings
addvaultwizard.new.expertSettings.shorteningThreshold.valid=Veljavno
### Password ### Password
### Information ### Information
## Existing ## Existing
addvaultwizard.existing.title=Dodaj obstoječi trezor
addvaultwizard.existing.chooseBtn=Izberi…
## Success ## Success
# Remove Vault # Remove Vault
@@ -42,6 +60,7 @@ error.technicalDetails=Podrobnosti:
# Forget Password # Forget Password
# Unlock # Unlock
unlock.unlockBtn=Odkleni
## Select ## Select
## Success ## Success
## Failure ## Failure
@@ -49,7 +68,9 @@ error.technicalDetails=Podrobnosti:
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Odkleni
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -76,6 +97,7 @@ lock.forced.retryBtn=Poizkusi znova
## Fix Application ## Fix Application
# Preferences # Preferences
preferences.title=Nastavitve
## General ## General
## Interface ## Interface
## Volume ## Volume
@@ -95,12 +117,15 @@ preferences.volume.docsTooltip=Informacije o različnih podatkovnih nosilcih naj
# Main Window # Main Window
main.closeBtn.tooltip=Zapri main.closeBtn.tooltip=Zapri
main.preferencesBtn.tooltip=Nastavitve
## Vault List ## Vault List
main.vaultlist.contextMenu.lock=Zakleni
main.vaultlist.addVaultBtn=Dodaj main.vaultlist.addVaultBtn=Dodaj
## Vault Detail ## Vault Detail
### Welcome ### Welcome
### Locked ### Locked
### Unlocked ### Unlocked
main.vaultDetail.lockBtn=Zakleni
main.vaultDetail.locateEncryptedFileBtn=Poišči šifrirano datoteko main.vaultDetail.locateEncryptedFileBtn=Poišči šifrirano datoteko
### Missing ### Missing
### Needs Migration ### Needs Migration
@@ -110,8 +135,10 @@ main.vaultDetail.locateEncryptedFileBtn=Poišči šifrirano datoteko
# Vault Options # Vault Options
## General ## General
vaultOptions.general.vaultName=Ime trezorja
## Mount ## Mount
vaultOptions.mount.mountPoint.directoryPickerButton=Izberi…
## Master Key ## Master Key
## Hub ## Hub
@@ -133,4 +160,6 @@ recoveryKey.recover.invalidKey=Obnovitveni ključ ni pravilen
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -104,7 +104,9 @@ unlock.success.revealBtn=Otvori disk
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Otključaj
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -317,4 +319,6 @@ quit.lockAndQuitBtn=Zaključaj i Izađi
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -97,7 +97,9 @@ unlock.success.revealBtn=Otvori disk
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=Otključaj
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -234,4 +236,6 @@ vaultOptions.masterkey.changePasswordBtn=Promena lozinke
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=Ange namn för valvet
addvaultwizard.new.namePrompt=Valvnamn addvaultwizard.new.namePrompt=Valvnamn
### Location ### Location
addvaultwizard.new.locationInstruction=Var ska Cryptomator lagra de krypterade filerna för ditt valv? addvaultwizard.new.locationInstruction=Var ska Cryptomator lagra de krypterade filerna för ditt valv?
addvaultwizard.new.locationLoading=Kontrollerar lokalt filsystem efter molnlagringskataloger…
addvaultwizard.new.locationLabel=Lagringsplats addvaultwizard.new.locationLabel=Lagringsplats
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=Anpassad plats addvaultwizard.new.directoryPickerLabel=Anpassad plats
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=Den temporära, dolda filen "
unlock.error.customPath.description.couldNotBeCleaned=Ditt valv kunde inte monteras till sökvägen "%s". Försök igen eller välj en annan sökväg. unlock.error.customPath.description.couldNotBeCleaned=Ditt valv kunde inte monteras till sökvägen "%s". Försök igen eller välj en annan sökväg.
unlock.error.customPath.description.notEmptyDir=Den anpassade monteringssökvägen "%s" är inte en tom mapp. Välj en tom mapp och försök igen. unlock.error.customPath.description.notEmptyDir=Den anpassade monteringssökvägen "%s" är inte en tom mapp. Välj en tom mapp och försök igen.
unlock.error.customPath.description.generic=Den anpassade monteringssökvägen gick inte att använda. Felmeddelande: %2$s unlock.error.customPath.description.generic=Den anpassade monteringssökvägen gick inte att använda. Felmeddelande: %2$s
unlock.error.fuseRestartRequired.message=Kan inte låsa upp valvet unlock.error.restartRequired.message=Kan inte låsa upp valvet
unlock.error.fuseRestartRequired.description=Ändra volymtyp i valv inställningarna eller starta om Cryptomator. unlock.error.restartRequired.description=Ändra volymtyp i valv-inställningarna eller starta om Cryptomator.
unlock.error.title=Upplåsning av "%s" misslyckades unlock.error.title=Upplåsning av "%s" misslyckades
## Hub ## Hub
hub.noKeychain.message=Kan inte komma åt enhetsnyckeln hub.noKeychain.message=Kan inte komma åt enhetsnyckeln
@@ -157,17 +158,22 @@ hub.receive.message=Bearbetar svar…
hub.receive.description=Cryptomator tar emot och bearbetar svaret från Hub. Vänligen vänta. hub.receive.description=Cryptomator tar emot och bearbetar svaret från Hub. Vänligen vänta.
### Register Device ### Register Device
hub.register.message=Ny enhet hub.register.message=Ny enhet
hub.register.description=Detta är den första navåtkomsten från den här enheten. Vänligen auktorisera den med din kontonyckel. hub.register.description=Detta är den första navåtkomsten från den här enheten. Vänligen registrera enheten med hjälp av din kontonyckel.
hub.register.nameLabel=Enhetsnamn hub.register.nameLabel=Enhetsnamn
hub.register.invalidAccountKeyLabel=Ogiltig kontonyckel hub.register.invalidAccountKeyLabel=Ogiltig kontonyckel
hub.register.occupiedMsg=Namnet används redan hub.register.registerBtn=Skapa konto
hub.register.registerBtn=Bekräfta ### Register Device Legacy
hub.register.legacy.occupiedMsg=Namnet används redan
hub.register.legacy.description=Detta är första navåtkomsten från den här enheten. Vänligen registrera den.
### Registration Success ### Registration Success
hub.registerSuccess.message=Enhet namngiven hub.registerSuccess.message=Enhet registrerad
hub.registerSuccess.description=För att komma åt valvet måste din enhet godkännas av valvägaren. hub.registerSuccess.description=Din enhet är registrerad. Du kan nu fortsätta att låsa upp valvet.
hub.registerSuccess.unlockBtn=Lås upp
hub.registerSuccess.legacy.description=För att komma åt valvet måste din enhet godkännas av valvägaren.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Namngivning av enhet misslyckades hub.registerFailed.message=Enhetsregistrering misslyckades
hub.registerFailed.description=Ett fel uppstod i namngivningsprocessen. För mer information, titta i programloggen. hub.registerFailed.description.generic=Ett fel uppstod i registreringsprocessen. För mer information, titta in i programloggen.
hub.registerFailed.description.deviceAlreadyExists=Denna enhet är redan registrerad för en annan användare. Försök att ändra användarkontot eller använda en annan enhet.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Åtkomst nekad hub.unauthorized.message=Åtkomst nekad
hub.unauthorized.description=Din enhet har ännu inte behörighet att komma åt detta valv. Be valvägaren att godkänna det. hub.unauthorized.description=Din enhet har ännu inte behörighet att komma åt detta valv. Be valvägaren att godkänna det.
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=Lås upp…
main.vaultDetail.unlockNowBtn=Lås upp nu main.vaultDetail.unlockNowBtn=Lås upp nu
main.vaultDetail.optionsBtn=Valv-inställningar main.vaultDetail.optionsBtn=Valv-inställningar
main.vaultDetail.passwordSavedInKeychain=Lösenord sparat main.vaultDetail.passwordSavedInKeychain=Lösenord sparat
main.vaultDetail.share=Dela…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=UPPLÅST main.vaultDetail.unlockedStatus=UPPLÅST
main.vaultDetail.accessLocation=Valvets innehåll kan nås härifrån: main.vaultDetail.accessLocation=Valvets innehåll kan nås härifrån:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=Använd vald mapp
vaultOptions.mount.mountPoint.directoryPickerButton=Välj… vaultOptions.mount.mountPoint.directoryPickerButton=Välj…
vaultOptions.mount.mountPoint.directoryPickerTitle=Välj mapp vaultOptions.mount.mountPoint.directoryPickerTitle=Välj mapp
vaultOptions.mount.volumeType.default=Standard (%s) vaultOptions.mount.volumeType.default=Standard (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=För att använda denna volymtyp måste Cryptomator startas om. vaultOptions.mount.volumeType.restartRequired=För att använda denna volymtyp måste Cryptomator startas om.
vaultOptions.mount.volume.tcp.port=TCP-port vaultOptions.mount.volume.tcp.port=TCP-port
vaultOptions.mount.volume.type=Volymtyp vaultOptions.mount.volume.type=Volymtyp
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=Sök efter uppdateringar?
updateReminder.description=Håll dig uppdaterad med nya funktioner, buggfixar och säkerhetsförbättringar. Vi rekommenderar att automatiskt söka efter uppdateringar. updateReminder.description=Håll dig uppdaterad med nya funktioner, buggfixar och säkerhetsförbättringar. Vi rekommenderar att automatiskt söka efter uppdateringar.
updateReminder.notNow=Inte nu updateReminder.notNow=Inte nu
updateReminder.yesOnce=Ja, en gång updateReminder.yesOnce=Ja, en gång
updateReminder.yesAutomatically=Ja, automatiskt updateReminder.yesAutomatically=Ja, automatiskt
# Share Vault
shareVault.title=Dela valv
shareVault.message=Vill du dela ditt valv med andra?
shareVault.description=Var alltid försiktig när du delar ditt valv med andra människor. Kort sagt, följ dessa steg:
shareVault.instruction.1=1. Dela åtkomst till den krypterade valvmappen via molnlagring.
shareVault.instruction.2=2. Dela valvlösenordet på ett säkert sätt.
shareVault.remarkBestPractices=För mer information, kolla in förslag för god sed i våra dokument.
shareVault.docsTooltip=Öppna dokumentationen för att lära dig mer om att dela valv.
shareVault.hubAd.description=Det säkra sättet att arbeta i grupper
shareVault.hubAd.keyManagement=• Nyckelhantering med noll-kunskap
shareVault.hubAd.authentication=• Stark autentisering
shareVault.hubAd.encryption=• Slutpunktskryptering
shareVault.visitHub=Besök Cryptomatornavet
shareVault.hub.message=Hur man delar ett navvalv
shareVault.hub.description=För att kunna dela valvinnehållet med en annan gruppmedlem måste du utföra två steg:
shareVault.hub.instruction.1=1. Dela åtkomst till den krypterade valvmappen via molnlagring.
shareVault.hub.instruction.2=2. Ge åtkomst till gruppmedlemmen i Cryptomatornavet.
shareVault.hub.openHub=Öppna kryptomatornav
@@ -137,14 +137,10 @@ hub.receive.message=Inachakata jibu…
hub.receive.description=Cryptomator inapokea na kuchakata jibu kutoka kwenye Kitovu. Tafadhali subiri. hub.receive.description=Cryptomator inapokea na kuchakata jibu kutoka kwenye Kitovu. Tafadhali subiri.
### Register Device ### Register Device
hub.register.nameLabel=Jina la Kifaa hub.register.nameLabel=Jina la Kifaa
hub.register.occupiedMsg=Jina tayari linatumika ### Register Device Legacy
hub.register.registerBtn=Thibitisha
### Registration Success ### Registration Success
hub.registerSuccess.message=Kifaa kimepewa jina hub.registerSuccess.unlockBtn=Fungua
hub.registerSuccess.description=Ili kufikia kuba, kifaa chako kinahitaji kuidhinishwa na mmiliki wa kuba.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Imeshindwa kutaja kifaa
hub.registerFailed.description=Hitilafu imetupwa katika mchakato wa kumtaja. Kwa maelezo zaidi, angalia katika logi ya maombi.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Ufikiaji umekataliwa hub.unauthorized.message=Ufikiaji umekataliwa
hub.unauthorized.description=Kifaa chako bado hakijaidhinishwa kufikia kuba hii. Uliza mwenye kuba aidhinishe. hub.unauthorized.description=Kifaa chako bado hakijaidhinishwa kufikia kuba hii. Uliza mwenye kuba aidhinishe.
@@ -471,4 +467,6 @@ quit.forced.message=Baadhi ya kuba hazikuweza kufungwa
quit.forced.description=Kufunga kuba kulizuiwa na shughuli zinazosubiri au kufungua faili. Unaweza kulazimisha kufunga vyumba vilivyosalia, hata hivyo kukatiza I/O kunaweza kusababisha upotevu wa data ambayo haijahifadhiwa. quit.forced.description=Kufunga kuba kulizuiwa na shughuli zinazosubiri au kufungua faili. Unaweza kulazimisha kufunga vyumba vilivyosalia, hata hivyo kukatiza I/O kunaweza kusababisha upotevu wa data ambayo haijahifadhiwa.
quit.forced.forceAndQuitBtn=Lazimisha na Uache quit.forced.forceAndQuitBtn=Lazimisha na Uache
# Update Reminder # Update Reminder
# Share Vault
@@ -119,7 +119,9 @@ unlock.success.revealBtn=இயக்ககத்தை வெளிப்பட
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=பூட்டுநீக்கு
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -300,4 +302,6 @@ quit.forced.message=சில பெட்டகங்களை பூட்ட
quit.forced.description=நிலுவையில் உள்ள செயல்பாடுகள் அல்லது திறந்த கோப்புகளால் பெட்டகங்களைப் பூட்டுவது தடுக்கப்பட்டது. மீதமுள்ள பெட்டகங்களை நீங்கள் கட்டாயப்படுத்தலாம், இருப்பினும் I/O குறுக்கிடுவது சேமிக்கப்படாத தரவை இழக்க நேரிடும். quit.forced.description=நிலுவையில் உள்ள செயல்பாடுகள் அல்லது திறந்த கோப்புகளால் பெட்டகங்களைப் பூட்டுவது தடுக்கப்பட்டது. மீதமுள்ள பெட்டகங்களை நீங்கள் கட்டாயப்படுத்தலாம், இருப்பினும் I/O குறுக்கிடுவது சேமிக்கப்படாத தரவை இழக்க நேரிடும்.
quit.forced.forceAndQuitBtn=கட்டாயப்படுத்தி வெளியேறு quit.forced.forceAndQuitBtn=கட்டாயப்படுத்தி வெளியேறு
# Update Reminder # Update Reminder
# Share Vault
@@ -33,6 +33,7 @@
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
@@ -112,4 +113,6 @@ preferences.interface.theme.light=కాంతి
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -90,7 +90,9 @@ unlock.unlockBtn=ปลดล็อก
### Waiting ### Waiting
### Receive Key ### Receive Key
### Register Device ### Register Device
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.unlockBtn=ปลดล็อก
### Registration Failed ### Registration Failed
### Unauthorized ### Unauthorized
### Requires Account Initialization ### Requires Account Initialization
@@ -174,4 +176,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=เลือก...
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
+6 -11
View File
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=Kilidi açmak için kullanıl
unlock.error.customPath.description.couldNotBeCleaned=Kasanız "%s" yoluna monte edilemedi. Lütfen tekrar deneyin veya farklı bir montaj yolu seçin. unlock.error.customPath.description.couldNotBeCleaned=Kasanız "%s" yoluna monte edilemedi. Lütfen tekrar deneyin veya farklı bir montaj yolu seçin.
unlock.error.customPath.description.notEmptyDir=Özel montaj yolu "%s" boş bir klasör değil. Lütfen boş bir klasör seçip tekrar deneyin. unlock.error.customPath.description.notEmptyDir=Özel montaj yolu "%s" boş bir klasör değil. Lütfen boş bir klasör seçip tekrar deneyin.
unlock.error.customPath.description.generic=Bu kasa için özel bir montaj yolu seçtiniz ancak bu yolun kullanımı şu ileti ile başarısız oldu: %2$s unlock.error.customPath.description.generic=Bu kasa için özel bir montaj yolu seçtiniz ancak bu yolun kullanımı şu ileti ile başarısız oldu: %2$s
unlock.error.fuseRestartRequired.message=Kasanın kilidi açılamıyor
unlock.error.fuseRestartRequired.description=Kasa seçeneklerinde birim türünü değiştirin veya Cryptomator'ı yeniden başlatın.
unlock.error.title="%s" kilidini açma başarısız oldu unlock.error.title="%s" kilidini açma başarısız oldu
## Hub ## Hub
hub.noKeychain.message=Cihaz anahtarına erişilemiyor hub.noKeychain.message=Cihaz anahtarına erişilemiyor
@@ -157,17 +155,13 @@ hub.receive.message=Yanıt işleniyor…
hub.receive.description=Cryptomator, Hub'dan yanıtı alıyor ve işliyor. Lütfen bekleyin. hub.receive.description=Cryptomator, Hub'dan yanıtı alıyor ve işliyor. Lütfen bekleyin.
### Register Device ### Register Device
hub.register.message=Yeni Cihaz hub.register.message=Yeni Cihaz
hub.register.description=Bu işlem bu cihazdan yapılan ilk Hub erişimidir. Lütfen kurulum kodunuzu kullanarak yetkilendirin.
hub.register.nameLabel=Cihaz adı hub.register.nameLabel=Cihaz adı
hub.register.invalidAccountKeyLabel=Geçersiz Hesap Anahtarı hub.register.invalidAccountKeyLabel=Geçersiz Hesap Anahtarı
hub.register.occupiedMsg=Ad zaten kullanımda hub.register.registerBtn=Kaydol
hub.register.registerBtn=Onayla ### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=Cihaz isimlendirildi hub.registerSuccess.unlockBtn=Kilidi Aç
hub.registerSuccess.description=Kasaya erişmek için cihazınızın kasa sahibi tarafından yetkilendirilmesi gerekir.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Cihaz isimlendirilmesi başarısız
hub.registerFailed.description=İsimlendirme işleminde bir hata oluştu. Daha fazla bilgi için uygulama günlüğüne bakın.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Erişim engellendi hub.unauthorized.message=Erişim engellendi
hub.unauthorized.description=Cihazınıza henüz bu kasaya erişim yetkisi verilmedi. Kasa sahibinden yetkilendirmesini isteyin. hub.unauthorized.description=Cihazınıza henüz bu kasaya erişim yetkisi verilmedi. Kasa sahibinden yetkilendirmesini isteyin.
@@ -451,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=Seçilen dizini kullan
vaultOptions.mount.mountPoint.directoryPickerButton=Seç… vaultOptions.mount.mountPoint.directoryPickerButton=Seç…
vaultOptions.mount.mountPoint.directoryPickerTitle=Dizin seçin vaultOptions.mount.mountPoint.directoryPickerTitle=Dizin seçin
vaultOptions.mount.volumeType.default=Varsayılan (%s) vaultOptions.mount.volumeType.default=Varsayılan (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Bu birim türünü kullanmak için Cryptomator'ın yeniden başlatılması gerekir.
vaultOptions.mount.volume.tcp.port=TCP Bağlantı Noktası vaultOptions.mount.volume.tcp.port=TCP Bağlantı Noktası
vaultOptions.mount.volume.type=Birim Türü vaultOptions.mount.volume.type=Birim Türü
## Master Key ## Master Key
@@ -523,4 +516,6 @@ updateReminder.message=Güncellemeleri Denetle?
updateReminder.description=Yeni özellikler, hata düzeltmeleri ve güvenlik iyileştirmeleri ile güncel kalın. Güncellemelerin otomatik olarak kontrol edilmesini öneririz. updateReminder.description=Yeni özellikler, hata düzeltmeleri ve güvenlik iyileştirmeleri ile güncel kalın. Güncellemelerin otomatik olarak kontrol edilmesini öneririz.
updateReminder.notNow=Şimdi değil updateReminder.notNow=Şimdi değil
updateReminder.yesOnce=Evet, tek seferlik updateReminder.yesOnce=Evet, tek seferlik
updateReminder.yesAutomatically=Evet, otomatik olarak updateReminder.yesAutomatically=Evet, otomatik olarak
# Share Vault
@@ -142,14 +142,10 @@ hub.receive.message=Обробка відповіді…
hub.receive.description=Cryptomator отримує та обробляє відповідь від Hub. Будь ласка, зачекайте. hub.receive.description=Cryptomator отримує та обробляє відповідь від Hub. Будь ласка, зачекайте.
### Register Device ### Register Device
hub.register.nameLabel=Назва пристрою hub.register.nameLabel=Назва пристрою
hub.register.occupiedMsg=Ця назва вже використовується ### Register Device Legacy
hub.register.registerBtn=Підтвердити
### Registration Success ### Registration Success
hub.registerSuccess.message=Пристрій названо hub.registerSuccess.unlockBtn=Розблокувати
hub.registerSuccess.description=Щоб отримати доступ до vault, ваш пристрій повинен бути авторизований власником vault.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Не вдалося назвати пристрій
hub.registerFailed.description=Виникла помилка у процесі надання назви пристрою. Для більш докладної інформації, перегляньте журнал програми.
### Unauthorized ### Unauthorized
hub.unauthorized.message=У доступі відмовлено hub.unauthorized.message=У доступі відмовлено
hub.unauthorized.description=Ваш пристрій ще не має прав доступу до цього vault. Попросіть власника vault надати їх. hub.unauthorized.description=Ваш пристрій ще не має прав доступу до цього vault. Попросіть власника vault надати їх.
@@ -362,4 +358,6 @@ convertVault.hubToPassword.success.description=Тепер ви можете ро
# Forced Quit # Forced Quit
# Update Reminder # Update Reminder
# Share Vault
@@ -139,14 +139,10 @@ hub.receive.message=Đang xử lý phản hồi…
hub.receive.description=Cryptomator đang nhận và xử lý phản hồi từ Hub. Vui lòng chờ. hub.receive.description=Cryptomator đang nhận và xử lý phản hồi từ Hub. Vui lòng chờ.
### Register Device ### Register Device
hub.register.nameLabel=Tên thiết bị hub.register.nameLabel=Tên thiết bị
hub.register.occupiedMsg=Tên đã sử dụng ### Register Device Legacy
hub.register.registerBtn=Xác nhận
### Registration Success ### Registration Success
hub.registerSuccess.message=Thiết bị đã được đặt tên hub.registerSuccess.unlockBtn=Mở khoá
hub.registerSuccess.description=Để truy cập vault, thiết bị của bạn cần được chủ sở hữu cho phép.
### Registration Failed ### Registration Failed
hub.registerFailed.message=Đặt tên thiết bị thất bại
hub.registerFailed.description=Lỗi phát sinh trong quá trình đặt tên. Để biết thêm chi tiết, hãy nhìn vào nhật ký ứng dụng (application log).
### Unauthorized ### Unauthorized
hub.unauthorized.message=Truy cập bị từ chối hub.unauthorized.message=Truy cập bị từ chối
hub.unauthorized.description=Thiết bị của bạn chưa được phép truy cập vault này. Yêu cầu chủ sở hữu cấp phép. hub.unauthorized.description=Thiết bị của bạn chưa được phép truy cập vault này. Yêu cầu chủ sở hữu cấp phép.
@@ -483,4 +479,6 @@ quit.forced.message=Không thể khóa một số vault
quit.forced.description=Việc khoá vault đã bị chặn bởi các hoạt động đang chờ xử lý hoặc các tệp đang mở. Bạn có thể buộc khóa các vault còn lại, tuy nhiên việc làm gián đoạn đọc/ghi có thể dẫn đến mất dữ liệu chưa được lưu. quit.forced.description=Việc khoá vault đã bị chặn bởi các hoạt động đang chờ xử lý hoặc các tệp đang mở. Bạn có thể buộc khóa các vault còn lại, tuy nhiên việc làm gián đoạn đọc/ghi có thể dẫn đến mất dữ liệu chưa được lưu.
quit.forced.forceAndQuitBtn=Bắt buộc và Thoát quit.forced.forceAndQuitBtn=Bắt buộc và Thoát
# Update Reminder # Update Reminder
# Share Vault
+38 -11
View File
@@ -47,6 +47,7 @@ addvaultwizard.new.nameInstruction=为保险库创建一个名称
addvaultwizard.new.namePrompt=保险库名称 addvaultwizard.new.namePrompt=保险库名称
### Location ### Location
addvaultwizard.new.locationInstruction=Cryptomator 应该在哪里存储您保险库的加密文件? addvaultwizard.new.locationInstruction=Cryptomator 应该在哪里存储您保险库的加密文件?
addvaultwizard.new.locationLoading=正在检查本地文件系统默认云存储目录…
addvaultwizard.new.locationLabel=存储位置 addvaultwizard.new.locationLabel=存储位置
addvaultwizard.new.locationPrompt= addvaultwizard.new.locationPrompt=
addvaultwizard.new.directoryPickerLabel=自定义位置 addvaultwizard.new.directoryPickerLabel=自定义位置
@@ -141,8 +142,8 @@ unlock.error.customPath.description.hideawayNotDir=用于解锁的临时隐藏
unlock.error.customPath.description.couldNotBeCleaned=无法将您的保险库挂载到路径 "%s"。请重试或选择其他路径。 unlock.error.customPath.description.couldNotBeCleaned=无法将您的保险库挂载到路径 "%s"。请重试或选择其他路径。
unlock.error.customPath.description.notEmptyDir=自定义挂载路径 "%s" 不是一个空文件夹。请选择一个空文件夹并重试。 unlock.error.customPath.description.notEmptyDir=自定义挂载路径 "%s" 不是一个空文件夹。请选择一个空文件夹并重试。
unlock.error.customPath.description.generic=您为此保险库选择了自定义挂载路径,但使用它时出现了错误信息:%2$s。 unlock.error.customPath.description.generic=您为此保险库选择了自定义挂载路径,但使用它时出现了错误信息:%2$s。
unlock.error.fuseRestartRequired.message=无法解锁保险库 unlock.error.restartRequired.message=无法解锁保险库
unlock.error.fuseRestartRequired.description=更改保险库选项中的卷类型或重新启动 Cryptomator unlock.error.restartRequired.description=请在保险库选项内更改卷类型或重 Cryptomator
unlock.error.title=解锁“%s”失败 unlock.error.title=解锁“%s”失败
## Hub ## Hub
hub.noKeychain.message=无法访问设备密钥 hub.noKeychain.message=无法访问设备密钥
@@ -157,17 +158,22 @@ hub.receive.message=正在处理响应…
hub.receive.description=Cryptomator 正在接收和处理来自 Hub 的响应,请稍等 hub.receive.description=Cryptomator 正在接收和处理来自 Hub 的响应,请稍等
### Register Device ### Register Device
hub.register.message=新设备 hub.register.message=新设备
hub.register.description=这是通过此设备首次访问 Hub请使用您的账户密钥进行授权 hub.register.description=这是此设备首次访问 Hub请使用您的账户密钥进行注册。
hub.register.nameLabel=设备名称 hub.register.nameLabel=设备名称
hub.register.invalidAccountKeyLabel=无效的账户密钥 hub.register.invalidAccountKeyLabel=无效的账户密钥
hub.register.occupiedMsg=名称已被占用 hub.register.registerBtn=注册
hub.register.registerBtn=确定 ### Register Device Legacy
hub.register.legacy.occupiedMsg=名称已被使用
hub.register.legacy.description=这是此设备首次访问 Hub。请进行注册。
### Registration Success ### Registration Success
hub.registerSuccess.message=设备命名成功 hub.registerSuccess.message=设备已注册
hub.registerSuccess.description=要访问保险库,设备需得到保险库所有者的授权 hub.registerSuccess.description=您的设备已成功注册。现在您可以继续解锁保险库
hub.registerSuccess.unlockBtn=解锁
hub.registerSuccess.legacy.description=若要访问保险库,设备保险库所有者额外的授权。
### Registration Failed ### Registration Failed
hub.registerFailed.message=设备命名失败 hub.registerFailed.message=设备注册失败
hub.registerFailed.description=命名过程中出现错误详情请查看应用程序日志。 hub.registerFailed.description.generic=注册过程中出现错误详情请查看应用程序日志。
hub.registerFailed.description.deviceAlreadyExists=此设备已被注册给另一位用户。请尝试更改用户帐户或使用别的设备。
### Unauthorized ### Unauthorized
hub.unauthorized.message=拒绝访问 hub.unauthorized.message=拒绝访问
hub.unauthorized.description=您的设备尚未授权访问此保险库,请联系保险库所有者, hub.unauthorized.description=您的设备尚未授权访问此保险库,请联系保险库所有者,
@@ -386,6 +392,7 @@ main.vaultDetail.unlockBtn=解锁…
main.vaultDetail.unlockNowBtn=立即解锁 main.vaultDetail.unlockNowBtn=立即解锁
main.vaultDetail.optionsBtn=保险库选项 main.vaultDetail.optionsBtn=保险库选项
main.vaultDetail.passwordSavedInKeychain=密码已保存 main.vaultDetail.passwordSavedInKeychain=密码已保存
main.vaultDetail.share=共享…
### Unlocked ### Unlocked
main.vaultDetail.unlockedStatus=已解锁 main.vaultDetail.unlockedStatus=已解锁
main.vaultDetail.accessLocation=您的保险库内容在此处访问: main.vaultDetail.accessLocation=您的保险库内容在此处访问:
@@ -451,7 +458,7 @@ vaultOptions.mount.mountPoint.custom=使用选定的目录
vaultOptions.mount.mountPoint.directoryPickerButton=选择... vaultOptions.mount.mountPoint.directoryPickerButton=选择...
vaultOptions.mount.mountPoint.directoryPickerTitle=选择目录 vaultOptions.mount.mountPoint.directoryPickerTitle=选择目录
vaultOptions.mount.volumeType.default=默认 (%s) vaultOptions.mount.volumeType.default=默认 (%s)
vaultOptions.mount.volumeType.fuseRestartRequired=要使用此类型,需要重新启动 Cryptomator vaultOptions.mount.volumeType.restartRequired=要使用此类型的卷Cryptomator 需要重新启动。
vaultOptions.mount.volume.tcp.port=TCP 端口 vaultOptions.mount.volume.tcp.port=TCP 端口
vaultOptions.mount.volume.type=卷类型 vaultOptions.mount.volume.type=卷类型
## Master Key ## Master Key
@@ -523,4 +530,24 @@ updateReminder.message=检查软件更新?
updateReminder.description=随时跟进最新功能、错误修复和安全性能提升。我们建议自动检查更新 updateReminder.description=随时跟进最新功能、错误修复和安全性能提升。我们建议自动检查更新
updateReminder.notNow=暂不 updateReminder.notNow=暂不
updateReminder.yesOnce=是的,仅此次 updateReminder.yesOnce=是的,仅此次
updateReminder.yesAutomatically=是的,自动 updateReminder.yesAutomatically=是的,自动
# Share Vault
shareVault.title=共享保险库
shareVault.message=是否要与他人共享你的保险库?
shareVault.description=与他人共享保险库时请务必小心。简而言之,请遵循以下步骤:
shareVault.instruction.1=1:通过云存储共享加密保险库文件夹的访问权限。
shareVault.instruction.2=2:通过安全的方式共享保险库密码。
shareVault.remarkBestPractices=有关更多信息,请查看我们文档中的最佳实践建议。
shareVault.docsTooltip=打开文档以了解有关共享保险库的更多信息。
shareVault.hubAd.description=安全的团队合作方式
shareVault.hubAd.keyManagement=• 零知识密钥管理
shareVault.hubAd.authentication=• 强认证
shareVault.hubAd.encryption=• 端到端加密
shareVault.visitHub=访问 Cryptomator Hub
shareVault.hub.message=如何共享 Hub 保险库
shareVault.hub.description=为了与其他团队成员共享保险库内容,您必须执行以下两步:
shareVault.hub.instruction.1=1:通过云存储共享加密保险库文件夹的访问权限。
shareVault.hub.instruction.2=2:在 Cryptomator Hub 内授予团队成员访问权限。
shareVault.hub.openHub=打开 Cryptomator Hub
@@ -148,14 +148,10 @@ hub.receive.message=正在處理程式回應…
hub.receive.description=Cryptomator正在接收並處理來自Hub的回應。 請等待。 hub.receive.description=Cryptomator正在接收並處理來自Hub的回應。 請等待。
### Register Device ### Register Device
hub.register.nameLabel=設備名稱 hub.register.nameLabel=設備名稱
hub.register.occupiedMsg=名称已被占用 ### Register Device Legacy
hub.register.registerBtn=確認
### Registration Success ### Registration Success
hub.registerSuccess.message=設備命名成功 hub.registerSuccess.unlockBtn=解鎖
hub.registerSuccess.description=想讀取檔加密庫,你的設備需得到檔案庫擁有者的授權。
### Registration Failed ### Registration Failed
hub.registerFailed.message=設備命名失敗
hub.registerFailed.description=命名過程中引發錯誤。有關詳細信息,請查看應用程序日誌。
### Unauthorized ### Unauthorized
hub.unauthorized.message=拒絕存取 hub.unauthorized.message=拒絕存取
hub.unauthorized.description=您的設備權限尚未允許存取加密庫,請聯絡加密庫擁有者 hub.unauthorized.description=您的設備權限尚未允許存取加密庫,請聯絡加密庫擁有者
@@ -498,4 +494,6 @@ updateReminder.message=檢查更新?
updateReminder.description=保持最新功能、錯誤修復和安全改進。我們建議自動檢查更新。 updateReminder.description=保持最新功能、錯誤修復和安全改進。我們建議自動檢查更新。
updateReminder.notNow=暫不 updateReminder.notNow=暫不
updateReminder.yesOnce=是,僅一次 updateReminder.yesOnce=是,僅一次
updateReminder.yesAutomatically=是,自動 updateReminder.yesAutomatically=是,自動
# Share Vault
@@ -141,8 +141,6 @@ unlock.error.customPath.description.hideawayNotDir=無法移除用於解鎖的
unlock.error.customPath.description.couldNotBeCleaned=無法將您的保險庫掛載至路徑「%s」。請再試一次或選擇不同的路徑。 unlock.error.customPath.description.couldNotBeCleaned=無法將您的保險庫掛載至路徑「%s」。請再試一次或選擇不同的路徑。
unlock.error.customPath.description.notEmptyDir=自訂掛載路徑「%s」不是一個空資料夾。請選擇一個空資料夾並重試。 unlock.error.customPath.description.notEmptyDir=自訂掛載路徑「%s」不是一個空資料夾。請選擇一個空資料夾並重試。
unlock.error.customPath.description.generic=您為此保險庫選擇了自訂掛載路徑,但使用時出現了錯誤訊息:%2$s unlock.error.customPath.description.generic=您為此保險庫選擇了自訂掛載路徑,但使用時出現了錯誤訊息:%2$s
unlock.error.fuseRestartRequired.message=無法解鎖加密檔案庫
unlock.error.fuseRestartRequired.description=於加密檔案庫選項中更改磁碟區類型或是重啟Cryptomator
unlock.error.title=解鎖%s失敗 unlock.error.title=解鎖%s失敗
## Hub ## Hub
hub.noKeychain.message=無法讀取裝置金鑰 hub.noKeychain.message=無法讀取裝置金鑰
@@ -156,21 +154,22 @@ hub.auth.loginLink=未轉送?點擊這裡打開
hub.receive.message=處理著回應… hub.receive.message=處理著回應…
hub.receive.description=Cryptomator 正在接收並處理來自 Hub 的回應, 請等待。 hub.receive.description=Cryptomator 正在接收並處理來自 Hub 的回應, 請等待。
### Register Device ### Register Device
hub.register.message=新裝置
hub.register.nameLabel=設備名稱 hub.register.nameLabel=設備名稱
hub.register.occupiedMsg=名稱已被使用 hub.register.invalidAccountKeyLabel=無效的用戶金鑰
hub.register.registerBtn=確認 hub.register.registerBtn=註冊
### Register Device Legacy
### Registration Success ### Registration Success
hub.registerSuccess.message=設備命名成功 hub.registerSuccess.unlockBtn=解鎖
hub.registerSuccess.description=想讀取檔案庫,你的設備需得到檔案庫擁有者的授權。
### Registration Failed ### Registration Failed
hub.registerFailed.message=設備命名失敗
hub.registerFailed.description=命名過程中出現錯誤。更多詳情,請檢查應用程式記錄。
### Unauthorized ### Unauthorized
hub.unauthorized.message=拒絕存取 hub.unauthorized.message=拒絕存取
hub.unauthorized.description=您的設備權限尚未允許存取檔案庫,請聯絡檔案庫擁有者 hub.unauthorized.description=您的設備權限尚未允許存取檔案庫,請聯絡檔案庫擁有者
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=需進一步操作
hub.requireAccountInit.description.0=請完成您的 hub.requireAccountInit.description.0=請完成您的
hub.requireAccountInit.description.1=Hub使用者資料 hub.requireAccountInit.description.1=Hub使用者資料
hub.requireAccountInit.description.2=
### License Exceeded ### License Exceeded
hub.invalidLicense.message=Hub 憑證無效 hub.invalidLicense.message=Hub 憑證無效
hub.invalidLicense.description=此 Cryptomator Hub 實例授權無效,請聯繫管理員升級或續訂授權。 hub.invalidLicense.description=此 Cryptomator Hub 實例授權無效,請聯繫管理員升級或續訂授權。
@@ -446,7 +445,6 @@ vaultOptions.mount.mountPoint.custom=使用選擇的路徑
vaultOptions.mount.mountPoint.directoryPickerButton=選取 vaultOptions.mount.mountPoint.directoryPickerButton=選取
vaultOptions.mount.mountPoint.directoryPickerTitle=選擇一個路徑 vaultOptions.mount.mountPoint.directoryPickerTitle=選擇一個路徑
vaultOptions.mount.volumeType.default=預設(%s) vaultOptions.mount.volumeType.default=預設(%s)
vaultOptions.mount.volumeType.fuseRestartRequired=Cryptomator 必需重新啟動以使用此磁碟區類型。
vaultOptions.mount.volume.tcp.port=TCP 埠 vaultOptions.mount.volume.tcp.port=TCP 埠
vaultOptions.mount.volume.type=磁碟區類型 vaultOptions.mount.volume.type=磁碟區類型
## Master Key ## Master Key
@@ -518,4 +516,6 @@ updateReminder.message=檢查更新?
updateReminder.description=保持最新功能、錯誤修復和安全改進。我們建議自動檢查更新。 updateReminder.description=保持最新功能、錯誤修復和安全改進。我們建議自動檢查更新。
updateReminder.notNow=暫不 updateReminder.notNow=暫不
updateReminder.yesOnce=是,僅一次 updateReminder.yesOnce=是,僅一次
updateReminder.yesAutomatically=是,自動 updateReminder.yesAutomatically=是,自動
# Share Vault