forked from FoundKeyGang/FoundKey
Compare commits
97 commits
75113b3d4f
...
680afafe01
Author | SHA1 | Date | |
---|---|---|---|
680afafe01 | |||
5b046381e7 | |||
|
afd6076c1f | ||
386d1bbf74 | |||
e6c7f4b693 | |||
ac81acfe9d | |||
2e32715d36 | |||
5a4e300552 | |||
d8c2cc2ef0 | |||
3d4df807b0 | |||
352851f23f | |||
eecff514c2 | |||
605a55e1d4 | |||
683584fe8f | |||
0df36490c7 | |||
7e1ea09458 | |||
a10b8875d9 | |||
642c8bcca9 | |||
8c377b6a1a | |||
0ad0ab7589 | |||
|
7972540e3a | ||
34d55e2dda | |||
|
1d99657a45 | ||
|
bd598cd9ba | ||
|
3ef304c6ff | ||
df40f29a65 | |||
69e5bc4e99 | |||
3787f3650e | |||
9b8438cdfc | |||
688deda218 | |||
3a73f2c3de | |||
4fbbfff145 | |||
5f4aab6d46 | |||
75fd42b070 | |||
f7bd210316 | |||
ba2b7ef43c | |||
9a085e9d42 | |||
b14f3e8cdc | |||
71dfd229b0 | |||
7b8333a21f | |||
ae703cfe4b | |||
8c47f376dc | |||
|
101b3334dd | ||
|
2f33f3409c | ||
06fb9c0a75 | |||
|
7c83cfcaa9 | ||
|
95a9698286 | ||
9c4d37a0f5 | |||
|
84e8069f36 | ||
e9586e6307 | |||
|
92d6550e19 | ||
808ad2a505 | |||
95ecdeabff | |||
340874c252 | |||
aa4475ab33 | |||
8db49f2624 | |||
c265bffab6 | |||
6d63a5321f | |||
8c690622a1 | |||
83fec649ea | |||
24db102679 | |||
079a9e29ce | |||
7914fcfef2 | |||
1472c21cb6 | |||
7a0c2acdf6 | |||
e9f68e65b7 | |||
48405fba3b | |||
1171567db2 | |||
6179b2e5f0 | |||
3747d7ecb1 | |||
e4932085a7 | |||
6722ccfc64 | |||
134c3b43e6 | |||
aac6a93bae | |||
7401a0b400 | |||
68f9e3e0dd | |||
94d1cf75aa | |||
701054b86e | |||
77602203b2 | |||
9b7dcb4262 | |||
bc51450fea | |||
0ef05427c8 | |||
aa428bd1a4 | |||
c1f7ad0c14 | |||
e78069d904 | |||
72b8489ae7 | |||
5ad18c8626 | |||
910976a55b | |||
3c2092935c | |||
3311bd866b | |||
c8a07e58f8 | |||
da246ce419 | |||
5662635d45 | |||
5ffcb9f235 | |||
b046718d1d | |||
ecbe984315 | |||
139ccd2580 |
156 changed files with 2302 additions and 1315 deletions
|
@ -8,15 +8,15 @@ clone:
|
|||
pipeline:
|
||||
install:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
build:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn build
|
||||
|
|
|
@ -8,15 +8,15 @@ clone:
|
|||
pipeline:
|
||||
install:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
lint:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn workspace backend run lint
|
||||
|
|
|
@ -8,15 +8,15 @@ clone:
|
|||
pipeline:
|
||||
install:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
lint:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn workspace client run lint
|
||||
|
|
|
@ -8,15 +8,15 @@ clone:
|
|||
pipeline:
|
||||
install:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
lint:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn workspace foundkey-js run lint
|
||||
|
|
|
@ -8,15 +8,15 @@ clone:
|
|||
pipeline:
|
||||
install:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
lint:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn workspace sw run lint
|
||||
|
|
|
@ -5,11 +5,14 @@ clone:
|
|||
depth: 1 # CI does not need commit history
|
||||
recursive: true
|
||||
|
||||
depends_on:
|
||||
- build
|
||||
|
||||
pipeline:
|
||||
build:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn install
|
||||
|
@ -18,15 +21,15 @@ pipeline:
|
|||
- yarn build
|
||||
mocha:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: node:18.6.0
|
||||
commands:
|
||||
- yarn mocha
|
||||
e2e:
|
||||
when:
|
||||
event:
|
||||
- pull_request
|
||||
branch: main
|
||||
event: push
|
||||
image: cypress/included:10.3.0
|
||||
commands:
|
||||
- npm run start:test &
|
||||
|
|
|
@ -1,46 +1,134 @@
|
|||
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, caste, color, religion, or sexual
|
||||
identity and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the overall
|
||||
community
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* The use of sexualized language or imagery, and sexual attention or advances of
|
||||
any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
* Publishing others' private information, such as a physical or email address,
|
||||
without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at syuilotan@yahoo.co.jp. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement via email at
|
||||
johann<EFBFBD>qwertqwefsday.eu and/or toast<73>bunkerlabs.net .
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series of
|
||||
actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or permanent
|
||||
ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within the
|
||||
community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.1, available at
|
||||
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
|
||||
|
||||
Community Impact Guidelines were inspired by
|
||||
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
|
||||
[https://www.contributor-covenant.org/translations][translations].
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
|
||||
[Mozilla CoC]: https://github.com/mozilla/diversity
|
||||
[FAQ]: https://www.contributor-covenant.org/faq
|
||||
[translations]: https://www.contributor-covenant.org/translations
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
||||
|
|
84
docs/install-docker.md
Normal file
84
docs/install-docker.md
Normal file
|
@ -0,0 +1,84 @@
|
|||
# Create FoundKey instance with Docker Compose
|
||||
|
||||
This guide describes how to install and setup FoundKey with Docker Compose.
|
||||
|
||||
**WARNING:**
|
||||
Never change the domain name (hostname) of an instance once you start using it!
|
||||
|
||||
|
||||
## Requirements
|
||||
- Docker or Podman
|
||||
- Docker Compose plugin (or podman-compose)
|
||||
|
||||
If using Podman, replace `docker` with `podman`. Commands using `docker compose` should be replaced with `podman-compose`.
|
||||
|
||||
You may need to prefix `docker` commands with `sudo` unless your user is in the `docker` group or you are running Docker in rootless mode.
|
||||
|
||||
## Get the repository
|
||||
```sh
|
||||
git clone https://akkoma.dev/FoundKeyGang/FoundKey.git
|
||||
cd FoundKey
|
||||
```
|
||||
|
||||
To make it easier to perform your own changes on top, we suggest making a branch based on the latest tag.
|
||||
In this example, we'll use `v13.0.0-preview1` as the tag to check out and `my-branch` as the branch name.
|
||||
```sh
|
||||
git checkout tags/v13.0.0-preview1 -b my-branch
|
||||
```
|
||||
|
||||
## Configure
|
||||
|
||||
Copy example configuration files with following:
|
||||
|
||||
```sh
|
||||
cp .config/docker_example.yml .config/default.yml
|
||||
cp .config/docker_example.env .config/docker.env
|
||||
```
|
||||
|
||||
Edit `default.yml` and `docker.env` according to the instructions in the files.
|
||||
You will need to set the database host to `db` and Redis host to `redis` in order to use the internal container network for these services.
|
||||
|
||||
|
||||
Edit `docker-compose.yml` if necessary. (e.g. if you want to change the port).
|
||||
If you are using SELinux (eg. you're on Fedora or a RHEL derivative), you'll want to add the `Z` mount flag to the volume mounts to allow the containers to access the contents of those volumes.
|
||||
|
||||
## Build and initialize
|
||||
The following command will build FoundKey and initialize the database.
|
||||
This will take some time.
|
||||
|
||||
``` shell
|
||||
docker compose build
|
||||
docker compose run --rm web yarn run init
|
||||
```
|
||||
|
||||
## Launch
|
||||
You can start FoundKey with the following command:
|
||||
|
||||
```sh
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
In case you are encountering issues, you can run `docker compose logs -f` to get the log output of the running containers.
|
||||
|
||||
## How to update your FoundKey server
|
||||
When updating, be sure to check the [release notes](https://akkoma.dev/FoundKeyGang/FoundKey/src/branch/main/CHANGELOG.md) to know in advance the changes and whether or not additional work is required (in most cases, it is not).
|
||||
|
||||
To update your branch to the latest tag (in this example `v13.0.0-preview2`), you can do the following:
|
||||
```sh
|
||||
git fetch -t
|
||||
|
||||
# Use --squash if you want to merge all of the changes in the tag into a single commit.
|
||||
# Useful if you have made additional changes.
|
||||
git merge tags/v13.0.0-preview2
|
||||
|
||||
# Rebuild and restart the docker container.
|
||||
docker compose build
|
||||
docker compose down && docker compose up -d
|
||||
```
|
||||
|
||||
It may take some time depending on the contents of the update and the size of the database.
|
||||
|
||||
## How to execute CLI commands
|
||||
```sh
|
||||
docker compose run --rm web node packages/backend/built/tools/foo bar
|
||||
```
|
|
@ -38,22 +38,29 @@ Create a separate non-root user to run FoundKey:
|
|||
adduser --disabled-password --disabled-login foundkey
|
||||
```
|
||||
|
||||
The following steps will require logging into the `foundkey` user, so do that now.
|
||||
```sh
|
||||
su - foundkey
|
||||
```
|
||||
|
||||
## Install FoundKey
|
||||
1. Login to the `foundkey` user
|
||||
We recommend using a local branch and merging in upstream releases as they get tagged. This allows for easy local customization of your install.
|
||||
|
||||
`su - foundkey`
|
||||
First, clone the FoundKey repo:
|
||||
```sh
|
||||
git clone https://akkoma.dev/FoundKeyGang/FoundKey
|
||||
cd FoundKey
|
||||
```
|
||||
|
||||
2. Clone the FoundKey repository
|
||||
Now create your local branch. In this example, we'll be using `toast.cafe` as the local branch name and release `v13.0.0-preview1` as the tag to track. To create that branch:
|
||||
```sh
|
||||
git checkout tags/v13.0.0-preview1 -b toast.cafe
|
||||
```
|
||||
|
||||
`git clone --recursive https://akkoma.dev/FoundKeyGang/FoundKey foundkey`
|
||||
|
||||
3. Navigate to the repository
|
||||
|
||||
`cd foundkey`
|
||||
|
||||
4. Install FoundKey's dependencies
|
||||
|
||||
`yarn install`
|
||||
Updating will be covered in a later section. For now you'll want to install the dependencies using Yarn:
|
||||
```sh
|
||||
yarn install
|
||||
```
|
||||
|
||||
## Configure FoundKey
|
||||
1. Copy `.config/example.yml` to `.config/default.yml`.
|
||||
|
@ -185,14 +192,22 @@ rc-service foundkey start
|
|||
You can check if the service is running with `rc-service foundkey status`.
|
||||
|
||||
### Updating FoundKey
|
||||
Use git to pull in the latest changes and rerun the build and migration commands:
|
||||
|
||||
When a new release comes out, simply fetch and merge in the new tag. If you plan on making additional changes on top of that tag, we suggest using the `--squash` option with `git merge`.
|
||||
```sh
|
||||
git fetch -t
|
||||
git merge tags/v13.0.0-preview2
|
||||
# you are now on the "next" release
|
||||
```
|
||||
|
||||
Now you'll want to update your dependencies and rebuild:
|
||||
```sh
|
||||
git pull
|
||||
git submodule update --init
|
||||
yarn install
|
||||
# Use build-parallel if your system has 4GB or more RAM and want faster builds
|
||||
NODE_ENV=production yarn build
|
||||
```
|
||||
|
||||
Next, run the database migrations:
|
||||
```sh
|
||||
yarn migrate
|
||||
```
|
||||
|
||||
|
|
|
@ -258,8 +258,6 @@ createFolder: "أنشئ مجلدًا"
|
|||
renameFolder: "إعادة تسمية المجلد"
|
||||
deleteFolder: "احذف هذا المجلد"
|
||||
addFile: "إضافة ملف"
|
||||
emptyDrive: "قرص التخزين فارغ"
|
||||
emptyFolder: "هذا المجلد فارغ"
|
||||
unableToDelete: "لا يمكن حذفه"
|
||||
inputNewFileName: "ادخل الإسم الجديد للملف"
|
||||
inputNewDescription: "أدخل تعليقًا توضيحيًا"
|
||||
|
|
|
@ -273,8 +273,6 @@ createFolder: "ফোল্ডার তৈরি করুন"
|
|||
renameFolder: "ফোল্ডার পুনঃনামকরন"
|
||||
deleteFolder: "ফোল্ডার মুছুন"
|
||||
addFile: "ফাইল যোগ করুন"
|
||||
emptyDrive: "আপনার ড্রাইভ খালি"
|
||||
emptyFolder: "এই ফোল্ডার খালি"
|
||||
unableToDelete: "মুছে ফেলা যায়নি"
|
||||
inputNewFileName: "ফাইলের নতুন নাম লিখুন"
|
||||
inputNewDescription: "নতুন ক্যাপশন লিখুন"
|
||||
|
|
|
@ -249,7 +249,6 @@ createFolder: "Vytvořit složku"
|
|||
renameFolder: "Přejmenovat složku"
|
||||
deleteFolder: "Odstranit složku"
|
||||
addFile: "Přidat soubor"
|
||||
emptyFolder: "Tato složka je prázdná"
|
||||
unableToDelete: "Nelze smazat"
|
||||
inputNewFileName: "Zadejte nový název"
|
||||
copyUrl: "Kopírovat URL"
|
||||
|
|
|
@ -284,8 +284,6 @@ createFolder: "Ordner erstellen"
|
|||
renameFolder: "Ordner umbenennen"
|
||||
deleteFolder: "Ordner löschen"
|
||||
addFile: "Datei hinzufügen"
|
||||
emptyDrive: "Deine Drive ist leer"
|
||||
emptyFolder: "Dieser Ordner ist leer"
|
||||
unableToDelete: "Nicht löschbar"
|
||||
inputNewFileName: "Gib einen neuen Dateinamen ein"
|
||||
inputNewDescription: "Gib eine neue Beschreibung ein"
|
||||
|
@ -1313,6 +1311,7 @@ _notification:
|
|||
followRequestAccepted: "Akzeptierte Follow-Anfragen"
|
||||
groupInvited: "Erhaltene Gruppeneinladungen"
|
||||
app: "Benachrichtigungen von Apps"
|
||||
move: Account-Umzüge
|
||||
_actions:
|
||||
followBack: "folgt dir nun auch"
|
||||
reply: "Antworten"
|
||||
|
@ -1401,3 +1400,15 @@ oauthErrorGoBack: Bei der Authentifizierung einer Drittanbieter-Anwendung ist ei
|
|||
Fehler aufgetreten. Bitte geh zurück und versuche es erneut.
|
||||
appAuthorization: Anwendungs-Authorisierung
|
||||
noPermissionsRequested: (Keine Berechtigungen angefordert.)
|
||||
_remoteInteract:
|
||||
title: Es tut mir leid, aber das kann ich nicht tun.
|
||||
description: Diese Aktion kann gerade nicht ausgeführt werden. Vermutlich musst
|
||||
du diese Aktion auf deiner eigenen Instanz ausführen, oder dich anmelden.
|
||||
urlInstructions: Kopiere diese URL. Wenn du sie auf deiner Instanz in das Suchfeld
|
||||
einfügst, solltest du zum richtigen Ort gelangen.
|
||||
movedTo: Diese Person ist umgezogen zu {handle}.
|
||||
attachedToNotes: Notizen mit dieser Datei
|
||||
showAttachedNotes: Zeige Notizen mit dieser Datei
|
||||
uploadFailed: Hochladen fehlgeschlagen
|
||||
uploadFailedDescription: Die Datei konnte nicht hochgeladen werden.
|
||||
uploadFailedSize: Die Datei ist zu groß.
|
||||
|
|
|
@ -233,6 +233,9 @@ resetAreYouSure: "Really reset?"
|
|||
saved: "Saved"
|
||||
messaging: "Chat"
|
||||
upload: "Upload"
|
||||
uploadFailed: "Upload failed"
|
||||
uploadFailedDescription: "The file could not be uploaded."
|
||||
uploadFailedSize: "The file is too large to be uploaded."
|
||||
keepOriginalUploading: "Keep original image"
|
||||
keepOriginalUploadingDescription: "Saves the originally uploaded image as-is. If turned\
|
||||
\ off, a version to display on the web will be generated on upload."
|
||||
|
@ -278,8 +281,6 @@ createFolder: "Create a folder"
|
|||
renameFolder: "Rename this folder"
|
||||
deleteFolder: "Delete this folder"
|
||||
addFile: "Add a file"
|
||||
emptyDrive: "Your Drive is empty"
|
||||
emptyFolder: "This folder is empty"
|
||||
unableToDelete: "Unable to delete"
|
||||
inputNewFileName: "Enter a new filename"
|
||||
inputNewDescription: "Enter new caption"
|
||||
|
@ -349,6 +350,8 @@ withReplies: "Include replies"
|
|||
connectedTo: "Following account(s) are connected"
|
||||
notesAndReplies: "Notes and replies"
|
||||
withFiles: "Including files"
|
||||
attachedToNotes: "Notes with this file"
|
||||
showAttachedNotes: "Show notes with this file"
|
||||
silence: "Silence"
|
||||
silenceConfirm: "Are you sure that you want to silence this user?"
|
||||
unsilence: "Undo silencing"
|
||||
|
@ -829,6 +832,7 @@ oauthErrorGoBack: "An error happened while trying to authenticate a 3rd party ap
|
|||
\ Please go back and try again."
|
||||
appAuthorization: "App authorization"
|
||||
noPermissionsRequested: "(No permissions requested.)"
|
||||
movedTo: "This user has moved to {handle}."
|
||||
_emailUnavailable:
|
||||
used: "This email address is already being used"
|
||||
format: "The format of this email address is invalid"
|
||||
|
@ -1306,6 +1310,7 @@ _notification:
|
|||
receiveFollowRequest: "Received follow requests"
|
||||
followRequestAccepted: "Accepted follow requests"
|
||||
groupInvited: "Group invitations"
|
||||
move: "Others moving accounts"
|
||||
app: "Notifications from linked apps"
|
||||
_actions:
|
||||
followBack: "followed you back"
|
||||
|
|
|
@ -185,16 +185,17 @@ clearQueueConfirmText: "Las notas aún no entregadas no se federarán. Normalmen
|
|||
clearCachedFiles: "Limpiar caché"
|
||||
clearCachedFilesConfirm: "¿Desea borrar todos los archivos remotos cacheados?"
|
||||
blockedInstances: "Instancias bloqueadas"
|
||||
blockedInstancesDescription: "Seleccione los hosts de las instancias que desea bloquear,\
|
||||
\ separadas por una linea nueva. Las instancias bloqueadas no podrán comunicarse\
|
||||
\ con esta instancia."
|
||||
blockedInstancesDescription: "Seleccione los hosts de las instancias que desea bloquear.\
|
||||
\ Las instancias listadas no podrán comunicarse con esta instancia. Los nombres\
|
||||
\ de dominios Non-ASCII deben ser codificados con punycode.\nLos sub dominios de\
|
||||
\ la lista de instancias serán bloqueados también."
|
||||
muteAndBlock: "Silenciar y bloquear"
|
||||
mutedUsers: "Usuarios silenciados"
|
||||
blockedUsers: "Usuarios bloqueados"
|
||||
noUsers: "No hay usuarios"
|
||||
editProfile: "Editar perfil"
|
||||
noteDeleteConfirm: "¿Desea borrar esta nota?"
|
||||
pinLimitExceeded: "Ya no se pueden fijar más posts"
|
||||
pinLimitExceeded: "Ya no se pueden fijar más notas."
|
||||
intro: "¡La instalación de FoundKey ha terminado! Crea el usuario administrador."
|
||||
done: "Terminado"
|
||||
processing: "Procesando"
|
||||
|
@ -275,8 +276,6 @@ createFolder: "Crear carpeta"
|
|||
renameFolder: "Renombrar carpeta"
|
||||
deleteFolder: "Borrar carpeta"
|
||||
addFile: "Agregar archivo"
|
||||
emptyDrive: "El drive está vacío"
|
||||
emptyFolder: "La carpeta está vacía"
|
||||
unableToDelete: "No se puede borrar"
|
||||
inputNewFileName: "Ingrese un nuevo nombre de archivo"
|
||||
inputNewDescription: "Ingrese nueva descripción"
|
||||
|
@ -558,7 +557,7 @@ smtpPass: "Contraseña"
|
|||
emptyToDisableSmtpAuth: "Deje el nombre del usuario y la contraseña en blanco para\
|
||||
\ deshabilitar la autenticación SMTP"
|
||||
smtpSecure: "Usar SSL/TLS implícito en la conexión SMTP"
|
||||
smtpSecureInfo: "Apagar cuando se use STARTTLS"
|
||||
smtpSecureInfo: "Apagar cuando se use STARTTLS."
|
||||
testEmail: "Prueba de envío"
|
||||
wordMute: "Silenciar palabras"
|
||||
instanceMute: "Instancias silenciadas"
|
||||
|
@ -599,7 +598,7 @@ openInNewTab: "Abrir en una Nueva Pestaña"
|
|||
defaultNavigationBehaviour: "Navegación por defecto"
|
||||
instanceTicker: "Información de notas de la instancia"
|
||||
system: "Sistema"
|
||||
switchUi: "Cambiar interfaz de usuario"
|
||||
switchUi: "Cambiar interfaz"
|
||||
desktop: "Escritorio"
|
||||
clip: "Clip"
|
||||
createNew: "Crear"
|
||||
|
@ -691,7 +690,7 @@ notSpecifiedMentionWarning: "Algunas menciones no están incluidas en el destino
|
|||
info: "Información"
|
||||
userInfo: "Información del usuario"
|
||||
unknown: "Desconocido"
|
||||
hideOnlineStatus: "mostrarse como desconectado"
|
||||
hideOnlineStatus: "Mostrarse como desconectado"
|
||||
hideOnlineStatusDescription: "Ocultar su estado en línea puede reducir la eficacia\
|
||||
\ de algunas funciones, como la búsqueda"
|
||||
online: "En línea"
|
||||
|
@ -730,7 +729,7 @@ misskeyUpdated: "¡FoundKey ha sido actualizado!"
|
|||
whatIsNew: "Mostrar cambios"
|
||||
translate: "Traducir"
|
||||
translatedFrom: "Traducido de {x}"
|
||||
accountDeletionInProgress: "La eliminación de la cuenta está en curso"
|
||||
accountDeletionInProgress: "La eliminación de la cuenta está en curso."
|
||||
usernameInfo: "Un nombre que identifique su cuenta de otras en este servidor. Puede\
|
||||
\ utilizar el alfabeto (a~z, A~Z), dígitos (0~9) o guiones bajos (_). Los nombres\
|
||||
\ de usuario no se pueden cambiar posteriormente."
|
||||
|
@ -757,30 +756,43 @@ ffVisibility: "Visibilidad de seguidores y seguidos"
|
|||
hide: "Ocultar"
|
||||
indefinitely: "Sin límite de tiempo"
|
||||
_ffVisibility:
|
||||
public: "Publicar"
|
||||
public: "Público"
|
||||
private: Privado
|
||||
followers: Visible solo a seguidores
|
||||
_accountDelete:
|
||||
accountDelete: "Eliminar Cuenta"
|
||||
started: La eliminación ha iniciado.
|
||||
sendEmail: Cuando se complete la eliminación de la cuenta, un correo será enviado
|
||||
a la dirección registrada de la cuenta.
|
||||
requestAccountDelete: Solicitar eliminación de cuenta
|
||||
inProgress: Eliminación en progreso
|
||||
mayTakeTime: Como la eliminación de la cuenta es un proceso que consume muchos recursos,
|
||||
puede llevar algún tiempo según la cantidad de contenido que se haya creado y
|
||||
la cantidad de archivos que cargados.
|
||||
_forgotPassword:
|
||||
contactAdmin: "Esta instancia no admite el uso de direcciones de correo electrónico,\
|
||||
\ póngase en contacto con el administrador de la instancia para restablecer su\
|
||||
\ contraseña"
|
||||
\ contraseña."
|
||||
enterEmail: Ingrese el correo que se uso para el registro. Se enviará un link para
|
||||
que resetear la contraseña.
|
||||
ifNoEmail: Si no se utilizó un correo durante el registro, por favor contacte con
|
||||
el administrador de la instancia.
|
||||
_email:
|
||||
_follow:
|
||||
title: "te ha seguido"
|
||||
title: "Tienes un nuevo seguidor"
|
||||
_receiveFollowRequest:
|
||||
title: "Has recibido una solicitud de seguimiento"
|
||||
_plugin:
|
||||
install: "Instalar plugins"
|
||||
installWarn: "Por favor no instale plugins que no son de confianza"
|
||||
installWarn: "Por favor no instale plugins que no son de confianza."
|
||||
_registry:
|
||||
scope: "Alcance"
|
||||
key: "Clave"
|
||||
keys: "Clave"
|
||||
keys: "Claves"
|
||||
domain: "Dominio"
|
||||
createKey: "Crear una llave"
|
||||
_aboutMisskey:
|
||||
about: "FoundKey es un software de código abierto, desarrollado por syuilo desde\
|
||||
\ el 2014"
|
||||
about: "FoundKey es una bifurcación de Misskey desarrollada desde Julio de 2022."
|
||||
allContributors: "Todos los colaboradores"
|
||||
source: "Código fuente"
|
||||
_nsfw:
|
||||
|
@ -791,13 +803,13 @@ _mfm:
|
|||
cheatSheet: "Hoja de referencia de MFM"
|
||||
intro: "MFM es un lenguaje de marcado dedicado que se puede usar en varios lugares\
|
||||
\ dentro de FoundKey. Aquí puede ver una lista de sintaxis disponibles en MFM."
|
||||
dummy: "FoundKey expande el mundo de la Fediverso"
|
||||
dummy: "FoundKey expande el mundo del Fediverso"
|
||||
mention: "Menciones"
|
||||
mentionDescription: "El signo @ seguido de un nombre de usuario se puede utilizar\
|
||||
\ para notificar a un usuario en particular."
|
||||
hashtag: "Hashtag"
|
||||
hashtag: "Hashtag #"
|
||||
url: "URL"
|
||||
urlDescription: "Se pueden mostrar las URL"
|
||||
urlDescription: "Se pueden mostrar las URL."
|
||||
link: "Vínculo"
|
||||
bold: "Negrita"
|
||||
center: "Centrar"
|
||||
|
@ -812,6 +824,48 @@ _mfm:
|
|||
\ / derecha."
|
||||
font: "Fuente"
|
||||
rotate: "Rotar"
|
||||
jump: Animación (Salto)
|
||||
jumpDescription: Da al contenido un salto animado.
|
||||
bounce: Animación (Bounce)
|
||||
centerDescription: Muestra el contenido de manera centrada.
|
||||
inlineCode: Código (Inline)
|
||||
blockMath: 'Función matemática (Block)'
|
||||
blockMathDescription: Muestra líneas múltiples de fórmulas matemáticas (KaTeX) en
|
||||
un bloque.
|
||||
inlineCodeDescription: Muestra resaltado de sintaxis en línea para el código (program).
|
||||
quoteDescription: Muestra el contenido en una cita.
|
||||
searchDescription: Muestra un cuadro de búsqueda con texto pre introducido.
|
||||
jellyDescription: Le da al contenido una animación del tipo Jelly.
|
||||
tada: Animación (Tada)
|
||||
shake: Animación (Shake)
|
||||
hashtagDescription: Puedes especificar un hashtag usando un número, signo y texto.
|
||||
linkDescription: Partes especificas del texto pueden ser mostradas como URL.
|
||||
boldDescription: Resalta las letras haciéndolas más gruesas.
|
||||
small: Pequeño
|
||||
smallDescription: Muestra el contenido de manera pequeña y delgada.
|
||||
inlineMathDescription: Muestra fórmulas matemáticas (KaTeX) en linea.
|
||||
tadaDescription: Da al contenido un "Tada!" del tipo animación.
|
||||
bounceDescription: Brinda al contenido una animación de rebote.
|
||||
emojiDescription: Al colocar dos puntos en un emoji personalizado, se puede mostrar
|
||||
un emoji personalizado.
|
||||
jelly: Animación (Jelly)
|
||||
twitchDescription: Da al contenido una animación fuertemente temblorosa.
|
||||
twitch: Animación (Twitch)
|
||||
spin: Animación (Spin)
|
||||
shakeDescription: Brinda al contenido una animación temblorosa.
|
||||
inlineMath: Función matemática (Inline)
|
||||
rainbow: Arcoíris
|
||||
x4Description: Muestra el contenido de la manera más grandemente posible.
|
||||
blurDescription: Muestra borroso el contenido. Se mostrará con claridad cuando se
|
||||
cubra.
|
||||
spinDescription: Da al contenido una animación de girar.
|
||||
x2: Grande
|
||||
x2Description: Muestra en grande el contenido.
|
||||
x3Description: Muestra más grande el contenido.
|
||||
x4: Increíblemente grande
|
||||
blur: Borroso
|
||||
fontDescription: Agrega la fuente para mostrar contenido.
|
||||
x3: Muy grande
|
||||
_instanceTicker:
|
||||
none: "No mostrar"
|
||||
remote: "Mostrar a usuarios remotos"
|
||||
|
@ -1134,7 +1188,7 @@ _notification:
|
|||
youWereFollowed: "te ha seguido"
|
||||
youReceivedFollowRequest: "Has mandado una solicitud de seguimiento"
|
||||
yourFollowRequestAccepted: "Tu solicitud de seguimiento fue aceptada"
|
||||
youWereInvitedToGroup: "Invitado al grupo"
|
||||
youWereInvitedToGroup: "{userName} invitado al grupo"
|
||||
_types:
|
||||
follow: "Siguiendo"
|
||||
mention: "Menciones"
|
||||
|
@ -1169,3 +1223,116 @@ _deck:
|
|||
mentions: "Menciones"
|
||||
direct: "Mensaje directo"
|
||||
_services: {}
|
||||
translationService: Servicio de traducción
|
||||
translationSettings: Ajustes de traducción
|
||||
selectAll: Seleccionar todo
|
||||
setCategory: Establecer categoría
|
||||
unlimited: Ilimitado
|
||||
setTag: Establecer tag
|
||||
recentNHours: Últimas {n} horas
|
||||
check: Verificar
|
||||
unrenoteAll: Quitar todas las renotas
|
||||
unclip: Desenganchar
|
||||
deleteAllFiles: Borrar todos los archivos.
|
||||
voteConfirm: ¿Confirmas tu voto para "{choice}"?
|
||||
tenMinutes: 10 minutos
|
||||
oneHour: Una hora
|
||||
failedToFetchAccountInformation: No se pudo obtener la información de la cuenta
|
||||
rateLimitExceeded: Límite de velocidad excedido
|
||||
cropImage: Cortar imagen
|
||||
recentNDays: Últimos {n} días
|
||||
typeToConfirm: Por favor ingrese {x} para confirmar
|
||||
cropImageAsk: ¿Desea cortar esta imagen?
|
||||
cannotAttachFileWhenAccountSwitched: No puedes adjuntar un archivo mientras cambias
|
||||
de cuenta.
|
||||
cannotSwitchAccountWhenFileAttached: No puedes cambiar de cuenta mientras se adjuntan
|
||||
archivos.
|
||||
threadMuteNotificationsDesc: Selecciona las notificaciones que deseas ver de este
|
||||
hilo. Los ajustes globales de notificación también se aplicarán. La desactivación
|
||||
tiene prioridad.
|
||||
ffVisibilityDescription: Permite configurar quien puede ver a quienes sigues y quienes
|
||||
te siguen.
|
||||
deleteAccountConfirm: Esto borrará se manera irreversible tu cuenta {handle}. ¿Quieres
|
||||
proceder?
|
||||
incorrectPassword: Contraseña incorrecta.
|
||||
leaveGroup: Dejar grupo
|
||||
overridedDeviceKind: Tipo de dispositivo
|
||||
smartphone: Smartphone
|
||||
auto: Automático
|
||||
themeColor: Color de teletipo de instancia
|
||||
size: Tamaño
|
||||
numberOfColumn: Número de columnas
|
||||
instanceDefaultLightTheme: Tema claro predeterminado para la instancia
|
||||
oneDay: Un día
|
||||
oneWeek: Una semana
|
||||
numberOfPageCache: Número de páginas en caché
|
||||
confirmToUnclipAlreadyClippedNote: Esta nota ya forma parte del clip "{name}". ¿Quieres
|
||||
eliminarlo de este clip en su lugar?
|
||||
noEmailServerWarning: Correo del servidor no configurado.
|
||||
thereIsUnresolvedAbuseReportWarning: Hay reportes sin resolver.
|
||||
recommended: Recomendado
|
||||
addTag: Agregar tag
|
||||
removeTag: Quitar tag
|
||||
_emailUnavailable:
|
||||
used: El correo ya se encuentra en uso
|
||||
format: El formato del correo es invalido
|
||||
disposable: No se puede utilizar direcciones de correo electrónico desechables
|
||||
mx: El servidor del correo es inválido
|
||||
smtp: El servido del correo no responde
|
||||
exportAll: Exportar todo
|
||||
exportSelected: Exportar seleccionados
|
||||
botFollowRequiresApproval: Solicitudes de seguimiento de cuentas marcadas como "bots"
|
||||
necesitan aprobación
|
||||
unrenoteAllConfirm: ¿Estas seguro de querer quitar todas las renotas de esta nota?
|
||||
signinHistoryExpires: Los datos de los intentos de sesión serán borrados automáticamente
|
||||
luego de 60 días, debido a regulaciones de privacidad.
|
||||
tablet: Tableta
|
||||
mutePeriod: Duración de mute
|
||||
reflectMayTakeTime: Puede tomar cierto tiempo en que se reflejen los cambios.
|
||||
isSystemAccount: Una cuenta creada y operada automáticamente por el sistema.
|
||||
deleteAccount: Eliminar cuenta
|
||||
numberOfPageCacheDescription: Aumentar este número mejorará la comodidad para los
|
||||
usuarios, pero provocará una mayor carga del servidor y más memoria se utilizará.
|
||||
externalCssSnippets: Algunos fragmentos de CSS para inspirar (no administrados por
|
||||
FoundKey)
|
||||
_signup:
|
||||
emailSent: Se envió un correo de confirmación a ({email}). Por favor haz click en
|
||||
link adjunto para completar la creación de cuenta.
|
||||
almostThere: Ya casi
|
||||
emailAddressInfo: Por favor ingresa tu correo electrónico. No sera público.
|
||||
instanceDefaultThemeDescription: Ingrese el código de tema en el formato del objeto
|
||||
stopActivityDeliveryDescription: Las actividades locales no serán enviadas a esta
|
||||
instancia. Las actividades recibidas de recepción funcionan como antes.
|
||||
documentation: Documentación
|
||||
file: Archivo
|
||||
federateBlocks: Bloques Federados
|
||||
federateBlocksDescription: Si esta deshabilitado, las actividades bloqueadas no serán
|
||||
enviadas.
|
||||
useDrawerReactionPickerForMobile: Mostrar selección de reacción como cajón en móvil
|
||||
leaveGroupConfirm: ¿Estas seguro de salir "{name}"?
|
||||
clickToFinishEmailVerification: Por favor presiona [{ok}] para completar la verificación
|
||||
email.
|
||||
oauthErrorGoBack: Ocurrió un error al tratar de autenticar una app de terceros. Por
|
||||
favor regresa e intenta de nuevo.
|
||||
appAuthorization: Autorización de app
|
||||
noPermissionsRequested: (No hay permisos solicitados).
|
||||
selectMode: Selección múltiple
|
||||
renoteMute: Ocultar renotas
|
||||
renoteUnmute: Mostrar renotas
|
||||
< |