mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-08-29 18:31:33 +00:00
+4







![dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>](/assets/img/avatar_default.png)

Luke Gustafson
dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ZacharyZcR
kacperpietrzyk
Brennan Neoh
Claude Sonnet 5
T3rM1nAt0-R
Horziox
William Shi
Carl
Raw_Nuke
njz-cvm
Alexandre VARGAS
alexandre-vl
7ae1648c25
* feat: redesign host/credential sidebars with synced preferences and manual drag-to-reorder * chore: run format * chore(deps-dev): bump @types/pg in the dev-patch-updates group (#1162) Bumps the dev-patch-updates group with 1 update: [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg). Updates `@types/pg` from 8.20.0 to 8.20.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg) --- updated-dependencies: - dependency-name: "@types/pg" dependency-version: 8.20.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump the dev-minor-updates group with 4 updates (#1163) Bumps the dev-minor-updates group with 4 updates: [react-hook-form](https://github.com/react-hook-form/react-hook-form), [react-icons](https://github.com/react-icons/react-icons), [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Updates `react-hook-form` from 7.79.0 to 7.84.0 - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.79.0...v7.84.0) Updates `react-icons` from 5.6.0 to 5.7.0 - [Release notes](https://github.com/react-icons/react-icons/releases) - [Commits](https://github.com/react-icons/react-icons/compare/v5.6.0...v5.7.0) Updates `typescript-eslint` from 8.61.1 to 8.66.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.66.0/packages/typescript-eslint) Updates `vite` from 8.0.16 to 8.2.0 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/create-vite@8.2.0/packages/vite) --- updated-dependencies: - dependency-name: react-hook-form dependency-version: 7.84.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: react-icons dependency-version: 5.7.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: typescript-eslint dependency-version: 8.66.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: vite dependency-version: 8.2.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump the prod-patch-updates group with 3 updates (#1164) Bumps the prod-patch-updates group with 3 updates: [jose](https://github.com/panva/jose), [js-yaml](https://github.com/nodeca/js-yaml) and [nanoid](https://github.com/ai/nanoid). Updates `jose` from 6.2.7 to 6.2.8 - [Release notes](https://github.com/panva/jose/releases) - [Changelog](https://github.com/panva/jose/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/jose/compare/v6.2.7...v6.2.8) Updates `js-yaml` from 5.2.2 to 5.2.3 - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/5.2.2...5.2.3) Updates `nanoid` from 6.0.0 to 6.0.1 - [Release notes](https://github.com/ai/nanoid/releases) - [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md) - [Commits](https://github.com/ai/nanoid/compare/6.0.0...6.0.1) --- updated-dependencies: - dependency-name: jose dependency-version: 6.2.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: js-yaml dependency-version: 5.2.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: nanoid dependency-version: 6.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump undici in the prod-minor-updates group (#1165) Bumps the prod-minor-updates group with 1 update: [undici](https://github.com/nodejs/undici). Updates `undici` from 8.9.0 to 8.10.0 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v8.9.0...v8.10.0) --- updated-dependencies: - dependency-name: undici dependency-version: 8.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump the major-updates group with 2 updates (#1166) Bumps the major-updates group with 2 updates: [@types/better-sqlite3](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/better-sqlite3) and [jsdom](https://github.com/jsdom/jsdom). Updates `@types/better-sqlite3` from 7.6.13 to 9.6.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/better-sqlite3) Updates `jsdom` from 29.1.1 to 30.0.1 - [Release notes](https://github.com/jsdom/jsdom/releases) - [Commits](https://github.com/jsdom/jsdom/compare/v29.1.1...v30.0.1) --- updated-dependencies: - dependency-name: "@types/better-sqlite3" dependency-version: 9.6.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: major-updates - dependency-name: jsdom dependency-version: 30.0.1 dependency-type: direct:development update-type: version-update:semver-major dependency-group: major-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: stop resyncAutoIncrement failing on tables without an id column (#1173) The Postgres branch asked pg_get_serial_sequence(table, 'id') about every table a fixture had inserted into. That function raises 42703 when the column does not exist, rather than returning null, so any seed touching a table keyed on something else took down the fixture. host_sidebar_preferences is keyed on user_id and has no id at all, which is why the Postgres job on dev-2.7.0 fails for every pull request. Drive the lookup from information_schema so a missing id column yields no row instead of an error. A text primary key still returns a null sequence and is still skipped, as before. * chore: install the git hooks that were already configured (#1174) husky, lint-staged, commitlint and their config have been in the repo since v1.8.0 (#429): .husky/pre-commit runs lint-staged, .husky/commit-msg runs commitlint, the lint-staged globs are in package.json and the commitlint rules in .commitlintrc.json. None of it has ever run. husky only takes effect once it sets core.hooksPath, and that happens in the prepare lifecycle script, which the package did not define -- so every clone installed the tooling and left the hooks unwired. That is why formatting keeps failing in CI rather than locally: three of the four open pull requests fail lint-and-build on prettier alone, touching between one and five files each, and the check is the first place anyone finds out. prepare falls back to true so a checkout without a .git directory cannot break installation. The Docker build passes --ignore-scripts, so it never runs this at all. Also pin the Prettier extension to the repo's own copy via prettier.prettierPath, and let .vscode/settings.json out of .gitignore so it applies to everyone. The extension bundles its own prettier otherwise, which formats to a different version's rules than the one CI enforces. * fix: derive the ssh_credentials rebuild from the live schema (#1172) The startup rebuild that drops the old username NOT NULL constraint restated the table's columns as a literal and then copied rows with INSERT INTO temp SELECT <every live column>. The table has gained columns since that literal was written — cert_public_key, pin, sort_order and sync_id are all added by addColumnIfNotExists before the rebuild runs — so the destination was narrower than the source. SQLite rejected the INSERT on a column count mismatch, the error was swallowed as a warning, and the constraint survived every restart. Read the CREATE TABLE statement back from sqlite_master and rewrite just the table name and the username constraint, so the replacement table cannot fall behind the real one. Copy rows by explicit column name rather than positionally, and replay the table's indexes, which DROP TABLE would otherwise take with it along with the sync_id uniqueness. * fix: make audit_logs.user_id nullable on fresh SQLite installs (#1171) The audit trail is meant to outlive the account it belongs to: deleting a user nulls user_id and keeps username for attribution. schema.ts, the Drizzle migrations and AuditLogRepository.anonymizeByUserId were all written against that, but the runtime bootstrap still created user_id TEXT NOT NULL. A second CREATE TABLE IF NOT EXISTS further down migrateSchema() had the correct nullable column, but it can never run — the primary bootstrap has already created the table, so IF NOT EXISTS is a no-op. Every fresh install therefore got the old constraint, and user deletion failed with "NOT NULL constraint failed: audit_logs.user_id" for any account that had logged in at least once, via both the admin delete path and the OIDC account-link cleanup. Fix the primary bootstrap, and rebuild the table on existing databases using the same pattern already used for ssh_credentials.username, since SQLite cannot ALTER a column. * fix: key the sync upsert on the row it just looked up (#1175) A sync push locates the stored row twice -- once to decide insert vs update, once to write it -- and the two lookups were spelled out separately. Only the read knew about singleton entities; the write always keyed on table.id. userPreferences is the only singleton, and user_preferences is the one synced table with no id column: its primary key is user_id. table.id was therefore undefined, and drizzle emitted a comparison with nothing on its left: ( = ? and "user_preferences"."user_id" = ?) The insert branch was unaffected, so the first push of preferences succeeded and every push after it -- the steady state -- failed with SqliteError: near "=": syntax error. Preference sync never converged, and both sides ship the same handler, so the desktop's embedded backend failed identically. Extract the lookup into locateSyncRow() and use it for the read, the update and the tombstone delete, so the three cannot drift apart again. The tombstone path already handled singletons correctly; it now shares the one expression rather than keeping a third copy of it. * fix: refuse an SSH connection whose host id resolves elsewhere (#1176) A client identifies a host by the numeric row id of the database it is displaying. With the desktop connection origin set to "Remote server", that id is resolved against the sync server's ssh_data instead, and the two autoincrement sequences need not line up -- they diverge as soon as each side accumulates inserts and deletes in a different order. resolveHostById() then returns whichever row owns that id here, and the handler takes the address, the credentials, the jump hosts and the stored host key from it. The session opens on a machine the user did not pick, while the host list, host details and export all keep showing the right one. Commands run on the wrong server, a host key mismatch is reported for the wrong reason, and anything typed at the prompt goes to the wrong place. Compare the resolved address against the one the client sent, and refuse when they disagree. Checking at the point the row is loaded covers every use of it rather than each site separately. Addresses are compared with brackets stripped and casing folded, so an IPv6 literal or a hostname written differently is not treated as a different machine; when the server has no address stored, the client's own details are used as before. This stops the wrong-machine session. It does not make delegated connections work when the ids have drifted -- that needs the host to be addressed by syncId across the boundary, which the connection protocol does not currently carry. * fix: refuse SFTP and Docker console on a mismatched host id too (#1177) The wrong-machine guard added for SSH covered one of the paths that resolve a client-supplied host id against this server's ssh_data. The file manager and the Docker console take the same id from the same client and dial whatever row owns it here. The file manager then browses, edits and deletes files on that machine, and the Docker console attaches to its daemon -- both while the UI shows the host the user actually picked. Reuse hostAddressMismatch at each point the row is loaded. The two file manager sites sit inside "failed to resolve credentials, carry on" handlers, so the refusal is a distinct error type those catches rethrow; swallowing it would resume the connection this is meant to stop. The Docker console reports over its socket, as it does for every other refusal. The user-facing wording now lives next to the check instead of being written out at each site. Still uncovered, and not fixable this way: file-manager's transfer session, jump-host-chain and the proxmox routes resolve an id with no client-supplied address to compare it against. Those need the host to be addressed by syncId across the boundary. * feat: address hosts by syncId when a connection is delegated (#1178) A numeric host id belongs to the database that produced it. The desktop app lists hosts from its embedded database and names them by row id, so when a connection is delegated to a sync server that id is resolved against a different table, whose autoincrement sequence has no reason to agree. The row it lands on is a different machine, and it supplies the address, the credentials, the jump hosts and the stored host key. #1176 and #1177 made that refuse rather than connect. Refusing is right, but it leaves "Remote server" unusable once the ids have drifted, which is the state the reporter was in. syncId already names a host identically on both sides -- remote sync relies on it, ssh_data.sync_id is unique, and the API already returns it. It just never reached the backend: hostToSSHHost() builds its result field by field and dropped it. Carry it through, and resolve with it when it is present: resolveHostBySyncId(syncId, userId) // translate, then reuse -> findHostIdBySyncId(syncId) // this database's own row id -> resolveHostById(hostId, userId) // permissions, decryption, audit The translation is deliberately not scoped to a user -- sync_id is unique across the table and a shared host belongs to someone else -- so access stays with the permission check in the id-based path, which the new tests cover. An unknown syncId resolves to nothing rather than falling back to the numeric id: an unknown host is precisely where guessing picks the wrong machine. Clients that send no syncId are unchanged, address comparison included, so an older desktop keeps its safety net instead of breaking. * fix(homepage): make the System Overview update indicator able to fire (#1168) The widget's "Update available" row and orange version text were unreachable, for two independent reasons that each alone would have been enough. It called `getVersionInfo(false)`, and `checkRemote=false` makes /version return early with `{localVersion, status: "update_check_disabled"}` -- no GitHub fetch, no remote version, nothing to compare. It then read `info.updateAvailable`, a field the route does not return in either mode; the success response carries status, localVersion, version, remoteVersion, latest_release, cached and cache_age. `Boolean(undefined)` is false, always. The read type-checked only because `getVersionInfo()` is declared as `Record<string, unknown>`, so a property name that does not exist is indistinguishable from one that does. Let the endpoint do the comparison and read `status === "requires_update"`, which is what the dashboard stats bar and the profile panel badge already do. The row's label was `homepage.overviewUpdate`, whose English string is "Up to date" -- as the label of an update-available row it read "Up to date / Update available". Nobody has seen that, because the row has never rendered; fixing the indicator without the label would have shipped it. Give it its own key. That leaves `homepage.overviewUpdate` unused; it is left in place rather than removed, since it would be the natural value for an always-visible row and that is a product decision, not part of this fix. * fix: capture real client IP for SSH login alerts behind reverse proxy (#1169) * fix: capture real client IP for SSH login alerts behind reverse proxy The WebSocket terminal handler used req.socket.remoteAddress for the "user logged in" alert message, which is the immediate TCP peer (the reverse proxy) rather than the actual client IP forwarded via X-Forwarded-For. This made trust-proxy config on Traefik irrelevant since Termix never read the header for this code path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * test: cover getClientIp forwarded-header and socket fallback paths Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * fix: keep already-shared hosts sharing their SSH authentication (#1179) Sharing a host used to hand the owner's SSH authentication to the recipient unconditionally. 2.6.1 put that behind ssh_data.share_ssh_auth, added as NOT NULL DEFAULT 0. Existing rows took the default, so every host shared before the upgrade stopped supplying credentials the moment the column appeared. The snapshot in collectProtocolSnapshots() is guarded by host.shareSshAuth, so nothing was captured; resolveRecipientSharedHostAuthentication() then fell through to "required" and the recipient got "No valid authentication method provided" on a host that had worked the day before. Downgrading to 2.6.0 restored it, since that code has no such column to consult. Backfill the flag for hosts that already appear in host_access. That is where the previous behaviour was in effect and where the owner had already agreed to share; hosts nobody has shared keep the new default and stay off until their owner shares them. Guarded by a settings key so it runs once. Without that, an owner who turns sharing back off would have it turned on again by the next restart. * fix: let a single credential disable 2FA again (#1180) The disable dialog has one field, labelled "Enter TOTP code or password", and its caller passes that value as disableTOTP(input) -- so it arrives as `password` with `totp_code` undefined. That call has been unchanged since v2.3.0. 2.5.1 changed the route to require both: if (!totp_code || (!userRecord.isOidc && !password)) -> 400 replacing `const credential = password || totp_code`. The first check has rejected every attempt since, whatever the user typed, so nobody has been able to turn 2FA off -- the client reports the generic "Failed to disable 2FA", which hides which check failed. Take one credential again and try it as a TOTP code, a backup code, then the account password. verifyTotpReauth still refuses the password itself, so that comparison stays in the route; an OIDC user has no password hash and reaches neither. The backup-codes route has the same shape but no caller in the UI -- its codes are returned when TOTP is enabled -- so it is left alone rather than changed blind. * fix: attach user-managed CA certificates over SFTP too (#1181) opkssh-cert-auth.ts exports two helpers that end in the same _applyCertToConnection: setupOPKSSHCertAuth, and setupCACertAuth for user-managed CA-signed -cert.pub files. The file manager called the first one twice and the second one never. So a host whose key is paired with a CA-signed certificate authenticated in a terminal and failed over SFTP, while OPKSSH certificates -- going through the other helper -- worked in both. The file manager was not missing certificate support in general; it was missing one of the two paths into it. The connection also never carried the certificate to begin with: cert_public_key was not among the fields copied into resolvedCredentials, so both places that build an SFTP connection now read it and attach it where the private key is prepared -- the dedicated transfer session and the main connect route. An unusable certificate is logged and skipped rather than failing the connection. The key alone may still be accepted, which is what happened while this was not wired up at all, and turning that into a hard failure would break setups that currently work. Reported in #1160 with the call-site asymmetry already traced; the reporter noted they could not confirm the link to their failure, having moved off SSH CAs. The asymmetry is real either way and reproduces the symptom exactly. * fix: authenticate the desktop Docker console WebSocket (#1182) The console WS opted out of the query token: buildOriginWsUrl({ ..., includeLocalJwt: false }) leaving it with no credential at all on the desktop. The browser WebSocket API cannot set an Authorization header, and while Electron's main process injects a remembered JWT cookie, it requires an exact origin match -- the cookie belongs to the API origin (localhost:30001) while the console connects to 127.0.0.1:30009, so nothing is attached. The backend then closes the handshake with 1008 before it logs anything, which is why the log has no docker-console entries while stats and logs polling keep succeeding on the same host. The web build is unaffected: it connects same-origin and its cookie is sent normally. Drop the opt-out so the console carries the local JWT like the SSH terminal does -- the same token, the same query parameter, and the backend already reads it there. Guacamole passes includeLocalJwt: false too, but rdp/vnc/telnet always resolve to "remote", so that call never reaches the local branch. * fix: use getClientIp in getRequestMeta for correct audit-log IPs (#1183) * fix: capture real client IP for SSH login alerts behind reverse proxy The WebSocket terminal handler used req.socket.remoteAddress for the "user logged in" alert message, which is the immediate TCP peer (the reverse proxy) rather than the actual client IP forwarded via X-Forwarded-For. This made trust-proxy config on Traefik irrelevant since Termix never read the header for this code path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * test: cover getClientIp forwarded-header and socket fallback paths Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * fix: use getClientIp in getRequestMeta for correct audit-log IPs getRequestMeta had near-duplicate, strictly worse forwarded-header logic: the array branch didn't split/trim, there was no socket-peer fallback, and it returned "" instead of "unknown". Delegate to getClientIp so the audit trail gets the same correctness as the terminal login-alert path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * feat: add terminal image handoff (#1170) * chore: sync Crowdin translations * fix(homepage): make the System Overview update indicator able to fire (#1168) The widget's "Update available" row and orange version text were unreachable, for two independent reasons that each alone would have been enough. It called `getVersionInfo(false)`, and `checkRemote=false` makes /version return early with `{localVersion, status: "update_check_disabled"}` -- no GitHub fetch, no remote version, nothing to compare. It then read `info.updateAvailable`, a field the route does not return in either mode; the success response carries status, localVersion, version, remoteVersion, latest_release, cached and cache_age. `Boolean(undefined)` is false, always. The read type-checked only because `getVersionInfo()` is declared as `Record<string, unknown>`, so a property name that does not exist is indistinguishable from one that does. Let the endpoint do the comparison and read `status === "requires_update"`, which is what the dashboard stats bar and the profile panel badge already do. The row's label was `homepage.overviewUpdate`, whose English string is "Up to date" -- as the label of an update-available row it read "Up to date / Update available". Nobody has seen that, because the row has never rendered; fixing the indicator without the label would have shipped it. Give it its own key. That leaves `homepage.overviewUpdate` unused; it is left in place rather than removed, since it would be the natural value for an always-visible row and that is a product decision, not part of this fix. * fix: capture real client IP for SSH login alerts behind reverse proxy (#1169) * fix: capture real client IP for SSH login alerts behind reverse proxy The WebSocket terminal handler used req.socket.remoteAddress for the "user logged in" alert message, which is the immediate TCP peer (the reverse proxy) rather than the actual client IP forwarded via X-Forwarded-For. This made trust-proxy config on Traefik irrelevant since Termix never read the header for this code path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * test: cover getClientIp forwarded-header and socket fallback paths Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * feat: add terminal image handoff Add authenticated browser upload and clipboard image handoff for terminal agents. Normalize images through Sharp, enforce storage and request limits, preserve host-visible paths, and provide a stable three-button terminal toolbar. * docs: document terminal image handoff deployment --------- Co-authored-by: LukeGus <bugattiguy527@gmail.com> Co-authored-by: kacperpietrzyk <105545577+kacperpietrzyk@users.noreply.github.com> Co-authored-by: Brennan Neoh <497569+brennanneoh@users.noreply.github.com> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * fix(desktop): stop suppressing the update prompt, and make the version badge reachable (#1167) * fix(desktop): stop suppressing the update prompt for users who need it The startup update modal stored its dismissal under the local app version rather than the remote version being offered, and the up-to-date branch wrote that key with no user interaction at all. A user who launched while current had their own version recorded; once the next release shipped, `dismissedVersion === currentVersion` still held and the modal was skipped on every launch. It reappeared only after the user had already updated -- the inverse of what it is for. Present since v2.3.0. Key the dismissal on the offered remote version instead. The change is backward compatible: an existing key holding 2.6.0 compares unequal against a remote 2.6.1, so affected installs are prompted on their next launch. When the check itself fails there is no remote version, so nothing is recorded and no future prompt is suppressed. That left the version badge as the only remaining signal, and it was an inert span on both surfaces that render it -- the profile panel and the dashboard stats bar -- even though the `getVersionInfo()` response it is built from already carries `latest_release.html_url`. Extract the duplicated badge into `components/version-badge.tsx` and make the update case a link to the release, with an accessible name that says where it goes. The beta and stable cases stay inert. `getVersionInfo()` returned `Record<string, unknown>`, so the release URL was unreachable without a cast; give it a `VersionInfo` type that keeps an index signature, since `SystemOverviewWidget` reads `updateAvailable` off the same response. * test: cover the read that actually reaches the badge The extracted VersionBadge is unit-tested, but the line that decides whether it ever receives a URL -- pulling `latest_release.html_url` out of the version response -- was duplicated at both call sites and asserted nowhere. A wrong property there compiles (the response type keeps an index signature) and every existing test still passes. Give it a name, `releaseUrlFrom`, use it from both surfaces, and test it: the happy path, a response with no release, a release with no URL, and a missing response, since the caller's fetch can reject. Empty string is the contract the badge reads as "nothing to link to", so it stays an inert span rather than rendering a dead anchor. * docs: state the index signature's real reason The comment claimed the version endpoint carries fields beyond the typed ones, citing `updateAvailable`. It does not -- `GET /version` returns status, localVersion, version, remoteVersion, latest_release, cached and cache_age, and nothing else. SystemOverviewWidget reads `updateAvailable` off it regardless, which is why the permissive index signature has to stay, but that is a stale read rather than an undocumented field. Say so accurately. * Send alerts in Discord channels with Webhooks (#1158) * feat(utils): add discord webhook sender Add a utility to send alert embeds to Discord webhooks. * fix(utils): validate DNS and use global fetch for outbound requests Prevent private destination access and rely on global fetch after DNS validation. * chore(logger): include extra context in logs Show additional sanitized context entries for clearer diagnostics. * feat(alerts): support discord channel type in routes and engine Accept discord channels and route alerts to the Discord sender. * feat(ui): add Discord option to notification channel dialog Allow creating/editing Discord webhook channels with username/avatar. * fix(ui/api): accept structured config payload for notification channels Allow the client to pass structured config objects (or strings) when creating/updating channels. * chore: sync Crowdin translations * fix(homepage): make the System Overview update indicator able to fire (#1168) The widget's "Update available" row and orange version text were unreachable, for two independent reasons that each alone would have been enough. It called `getVersionInfo(false)`, and `checkRemote=false` makes /version return early with `{localVersion, status: "update_check_disabled"}` -- no GitHub fetch, no remote version, nothing to compare. It then read `info.updateAvailable`, a field the route does not return in either mode; the success response carries status, localVersion, version, remoteVersion, latest_release, cached and cache_age. `Boolean(undefined)` is false, always. The read type-checked only because `getVersionInfo()` is declared as `Record<string, unknown>`, so a property name that does not exist is indistinguishable from one that does. Let the endpoint do the comparison and read `status === "requires_update"`, which is what the dashboard stats bar and the profile panel badge already do. The row's label was `homepage.overviewUpdate`, whose English string is "Up to date" -- as the label of an update-available row it read "Up to date / Update available". Nobody has seen that, because the row has never rendered; fixing the indicator without the label would have shipped it. Give it its own key. That leaves `homepage.overviewUpdate` unused; it is left in place rather than removed, since it would be the natural value for an always-visible row and that is a product decision, not part of this fix. * fix: capture real client IP for SSH login alerts behind reverse proxy (#1169) * fix: capture real client IP for SSH login alerts behind reverse proxy The WebSocket terminal handler used req.socket.remoteAddress for the "user logged in" alert message, which is the immediate TCP peer (the reverse proxy) rather than the actual client IP forwarded via X-Forwarded-For. This made trust-proxy config on Traefik irrelevant since Termix never read the header for this code path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * test: cover getClientIp forwarded-header and socket fallback paths Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * chore: add url to SENSITIVE_FIELDS for discord url * fix: enforce SSRF protection on outbound fetches Use `undici.fetch` with the custom DNS lookup hook to ensure the validated DNS resolution is the one used for the connection. Fix DNS lookup/address validation bugs and add coverage for private, public and invalid addresses, including the resolution issue affecting Discord endpoints. * chore: prettier format * fix: validate all DNS addresses and close dispatcher * fix DNS lookup validation and callback handling * update safe outbound fetch tests * ensure created dispatcher is properly closed * chore: remode url from SENSITIVE_FIELDS for other logs --------- Co-authored-by: LukeGus <bugattiguy527@gmail.com> Co-authored-by: kacperpietrzyk <105545577+kacperpietrzyk@users.noreply.github.com> Co-authored-by: Brennan Neoh <497569+brennanneoh@users.noreply.github.com> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> * fix tmux UTF-8 path handling (#1157) Co-authored-by: Carl <scarlettme@qq.com> * chore: update package lock * chore: update gitnore * fix: [BUG] (#1049) https://github.com/Termix-SSH/Support/issues/1049 * fix: test commitlint path fix (#1021) * fix: SGR mouse-tracking escape codes printed as text (#1023) * fix: quote $1 in commit-msg hook so it works from git worktrees * fix: [BUG] could not connect to the database (#1057) https://github.com/Termix-SSH/Support/issues/1057 * fix: [BUG] VNC connect macOS screen sharing failed (#1063) https://github.com/Termix-SSH/Support/issues/1063 * fix: [BUG] Meta key (#1075) https://github.com/Termix-SSH/Support/issues/1075 * fix: [BUG] Remote sync doesn't work with Termix behind nginx proxy (#1085) https://github.com/Termix-SSH/Support/issues/1085 * fix: [BUG] webhook not working (#1080) https://github.com/Termix-SSH/Support/issues/1080 * fix: [BUG] First server sync doesn't refresh UI (#1084) https://github.com/Termix-SSH/Support/issues/1084 * fix: [BUG] How to enable SSL using custom certificate (#1083) https://github.com/Termix-SSH/Support/issues/1083 * fix: [BUG] Sudo Password Auto-fill Persistance (#1098) https://github.com/Termix-SSH/Support/issues/1098 * feat: [FEATURE] Expand Snippets Function (#1031) https://github.com/Termix-SSH/Support/issues/1031 * feat: [FEATURE] (#1055) https://github.com/Termix-SSH/Support/issues/1055 * feat: [FEATURE] Support for Headscale API Keys (hskey prefix) and Custom API Endpoints (#1013) https://github.com/Termix-SSH/Support/issues/1013 * feat: [FEATURE] Allow paste on non https (#1026) https://github.com/Termix-SSH/Support/issues/1026 * feat: be-azerty layout (#1073) https://github.com/Termix-SSH/Support/issues/1073 * feat: Keyboard shortcuts to move between open tabs (#1069) https://github.com/Termix-SSH/Support/issues/1069 * feat: Session Logs as a downloadable text file (#1058) https://github.com/Termix-SSH/Support/issues/1058 * fix: persist and auto-fill saved SSH and sudo passwords * fix: persist docker runtime selection and docker manager UI issues * feat: Allow excluding specific mounts from disk usage metrics (#1046) https://github.com/Termix-SSH/Support/issues/1046 * feat: Expand Snippets Function (#1031) https://github.com/Termix-SSH/Support/issues/1031 * chore: restore the prettier baseline on dev-2.7.0 (#1185) Five files on dev-2.7.0 do not match prettier, so `npx prettier --check .` fails and takes lint-and-build with it — on every pull request, whatever it changes. Formatting only, produced by `npx prettier --write` on exactly the files the check names. No logic touched: tsc passes for both configs, backend 148 files / 1106 tests and UI 71 files / 479 tests all pass. * test: keep the tmux escaping test runnable on Windows (#1184) The escaping check ran its command through /bin/sh. That binary does not exist on Windows, and Windows is a supported platform for the desktop app, so `npm test` fails there on a test about string quoting. CI is ubuntu-only and would never see it. Assert the escaped string directly, which covers the rule on every platform, and keep the round trip through a real shell as a separate case guarded by platform -- it is the stronger evidence where a shell exists. * chore: drop the unreachable table probes from migrateSchema (#1186) Eleven blocks in migrateSchema() guarded a CREATE TABLE IF NOT EXISTS behind SELECT id FROM <table> LIMIT 1, for tables the primary bootstrap had already created earlier in the same startup. The probe could not throw, so the catch never ran. Two of those unreachable copies had drifted from the definition actually in use. sessions had lost ON DELETE CASCADE, and session_recordings still carried user_id TEXT NOT NULL with ON DELETE CASCADE and no username -- the shape from before audit trails were made to outlive the account. They would have taken effect had anything ever reordered startup. Kept, because they are not the same thing: - blocks whose catch runs ALTER TABLE ADD COLUMN. CREATE TABLE IF NOT EXISTS is a no-op on a table that exists, so a database created before a column was added still needs the ALTER. Those probe a column, not a table. - blocks that are a table's only creation point. - the user_open_tabs block, which is a data migration; its SELECT is a precondition, not a probe. Deletion only, no behaviour change. * fix: repair the frontend type-check and clear the 299 errors behind it (#1189) * fix: repair frontend type-check configuration and the errors it exposed The root tsconfig.json is solution-style with "files": [], so the `npx tsc --noEmit` that CI runs compiles nothing at all. Frontend types have therefore never been checked, and 299 errors had accumulated behind that no-op. This clears just over half of them; nothing here changes runtime behaviour. Configuration: - "@/types" resolved through the "@/*" fallback to src/ui/types, which does not exist. Added an explicit mapping to src/types/index.ts. - src/vite-env.d.ts sits outside the include list, so import.meta.env and the ?url import suffix were unknown. Added. - src/ui/types/ held a single file, keybindings.ts, while every other shared type lives in src/types/. Six modules imported it as "@/types/keybindings" and silently resolved to nothing. Moved. Type definitions that had fallen behind the code: - guacamoleConfig and terminalConfig were Record<string, unknown> in ui-types while the editor read concrete fields off them. Both now use the real interfaces; GuacamoleConfig is extracted from its inline definition in guacamole-api.ts so the two cannot drift again. - customThemeColors and TerminalTheme["colors"] described the same object with different optionality. Aligned. - FileWindow declared its own SSHHost whose authType was "password" | "key", which no longer matches the eight the app supports. - connectSSH and listSSHFiles returned Record<string, unknown>, so every field the callers destructured arrived as unknown. - AxiosRequestConfig and AxiosResponse were used without being imported. Also adds asHttpError() for the handful of catch blocks that reached into an unknown binding, and narrows the Host | HostFolder comparator and the RailItem union at the points where the discriminant was not carrying. Note: dbHealthMonitor.reportDatabaseError was being called with a second argument it does not accept, so the authenticated-or-not flag was already being discarded at runtime. Dropped the argument to match the signature; whether that flag was meant to gate the report is worth a separate look. * fix: clear more of the frontend type-check baseline Continues the previous commit; 140 errors down to 70. Three of these were real defects rather than missing annotations. Defects: - DashboardTab counted active tunnels by comparing status to "CONNECTED", but CONNECTION_STATES.CONNECTED is "connected" and that is what the tunnel manager emits, so the count was always zero. Now compares against the constant. - QuickActionsCard requires isAdmin and gates a block of admin-only actions on it, but neither call site passed it — those actions never rendered. Both call sites also passed isAdmin to HostStatusCard, which does not accept it; the prop had evidently been moved and the call sites missed. - The host editor stores jump host ids as strings and sent them straight to an API typed for numbers. Backend host lookups compare against an integer column, which a string does not match on Postgres or MySQL. Converted. Types brought in line with the data: - Host and HostData were missing hasPassword, hasSudoPassword, sortOrder, instanceId, connectionOrigin, vaultProfileId, syncId, and the "vault" authType; TabContextTab was missing the "tunnel" tab, which TabContext already branched on. - statsConfig and terminalConfig used inline shapes that had drifted from StatsConfig and TerminalConfig. Both now reference the real interfaces; excludedMounts, which the editor reads, was added to StatsConfig. - downloadSSHFile, generateKeyPair and generatePublicKeyFromPrivate all returned Record<string, unknown> while callers read named fields. - The Guacamole declarations were missing Keyboard.reset, Client.onfile, InputStream.sendAck, Status.Code and BlobReader, all already in use. - NetworkTopologyNode/Edge could not be discriminated, though the graph code tells them apart by testing for source/target. ProxyNode.type is now 4 | 5 | "http" | "socks4" | "socks5". The editor writes the string spellings while proxy-helper.ts tests for "http" and casts everything else to 4|5 before handing it to the socks client, so a chained proxy reaches it as "socks5" rather than 5. Typed as what is actually stored; reconciling the two spellings needs a migration decision and is left alone here. * fix: continue clearing the frontend type-check baseline 70 errors down to 44. Dead configuration removed: - Terminal set terminal.options.bellStyle on xterm, which dropped the option in v5. The host editor still exposes the setting and stores it; it has simply had no effect on the terminal since that upgrade. Making the bell work again means handling the onBell event and is left alone. - CodeEditor passed scrollPastEnd to basicSetup, which has no such option. - FileManager passed an id to openWindow, which assigns its own and discards what it is given — the component was already being rendered under a different id than the one the caller held. Widgets that were registered but unreachable: - DockerActivityWidget and SshQuickConnectWidget register under "docker_activity" and "ssh_quick_connect", neither of which was in WidgetTypeId, and both referenced config interfaces that did not exist. Added the ids and the two interfaces, inferred from their edit forms and defaultConfig. More endpoints given their real return types: getRecentFiles, getPinnedFiles, getFolderShortcuts (arrays, not records), downloadSSHFile, copySSHItem, generateKeyPair, generatePublicKeyFromPrivate and getSnippets. parseGuacamoleConfig() handles the host row carrying guacamoleConfig either parsed or as raw JSON, which GuacamoleApp was reading fields off directly. TerminalHostConfig was missing name, which it reads for the activity log. * fix: continue clearing the frontend type-check baseline 44 errors down to 17. Host and AuditLog are now type aliases rather than interfaces. An interface has no implicit index signature, so neither could be assigned to the `[key: string]: unknown` shapes that TerminalHostConfig, HostMetricsTab's HostConfig and several helpers declare — eight errors came from that alone. More dead configuration: - i18n passed checkWhitelist to the language detector, which no longer has that option; supportedLngs already covers it. - SSHAuthDialog passed scrollPastEnd to basicSetup, same as CodeEditor. - AudioPreview's onLoadedMetadata never fired: react-h5-audio-player spells the prop onLoadedMetaData. - MarkdownRenderer destructured `inline` from code(), which react-markdown removed in v9, so the flag was always undefined and every inline span took the block branch when it happened to carry a language class. Now derived from whether a className is present at all. - SnippetsPanel put a title prop on a lucide icon, which does not forward it; changed to aria-label so the hint is actually reachable. updateHostConfig in TabContext replaced tab.hostConfig wholesale with the six-field literal it receives, dropping everything else the tab held about the host. It now merges onto the existing config. Also: getReleasesRSS, getUserAlerts and getVersionInfo have real return types (UpdateLog kept private copies of two of them, and VersionInfo was missing `version`, which the endpoint sends and the panel renders); wakeOnLan and vncCredentialId get the numeric ids they are typed for; and the tmux formatter takes i18next's TFunction instead of a hand-written signature it does not satisfy. * fix: clear the last frontend type errors and make CI actually run the check Baseline is now zero, so the check can be turned on. `npx tsc --noEmit` — what CI ran and what `npm run type-check` was — compiles nothing: the root tsconfig.json is solution-style with "files": [], and plain tsc does not follow project references. Both are now `tsc -b`, which builds tsconfig.app.json and tsconfig.node.json. Verified by planting a type error and watching the command fail. Last defects in this batch: - patchOpenTab could not carry hostId, so quick-connect's "save this host and attach the tab to it" call was passing a field excluded from the type all the way down. The column exists and updateForUser spreads whatever it receives, so the write worked; only the types disagreed. Widened front to back. - The file-comparison window opened without x, y, width or height — every other openWindow call passes them — and sent a `type` field WindowInstance does not have. - HostEditor gated a block on authType === "warpgate", which is not one of the eight authType values. Unreachable, and it held only a label and a description. Removed. - FileManager passed onLoadDirectory to a sidebar that neither declares nor reads it, and FileManagerApp passed embedded to a FileManager that has no such prop. - TunnelApp's minimal Host was missing three required flags. The remainder were assertions at boundaries that are genuinely loose: bulk host import takes rows assembled from untyped input and validates them server-side, and a vi.fn() whose body only throws infers never. * feat: add drive file browser and drag-and-drop upload for RDP (#1187) Drive redirection could already be enabled per host, but the redirected drive lived inside guacd with no way to reach it from the browser: the client never handled onfilesystem, so the mounted volume was writable from Windows and invisible from Termix. Add a file browser panel that lists the drive, downloads files, and uploads them, plus drag-and-drop onto the display which opens the panel and uploads into the directory currently shown. The disable-upload and disable-download connection settings are honoured by the UI, not just passed to guacd. A rejected upload stops the BlobWriter without firing onerror or oncomplete, so the error ack is watched explicitly; otherwise the transfer would hang forever. Directory reads carry a deadline for the same reason. Also declares Guacamole.Object, Client.onfilesystem, BlobReader and BlobWriter in the local type definitions, which previously omitted them. * fix: keep the mouse working on touch-capable devices in RDP/VNC (#1190) Reported as "mouse input broken, keyboard fine" after 2.5.1 (#1102). 2.5.1 bound Guacamole.Mouse unconditionally. 2.6.0 replaced that with a three-way branch on touchMode, and the touch branches replace the mouse binding instead of adding to it: if (touchMode === "touchscreen") new Guacamole.Mouse.Touchscreen(el) else if (touchMode === "touchpad") new Guacamole.Mouse.Touchpad(el) else new Guacamole.Mouse(el) The two do not overlap. Guacamole.Mouse listens for mousedown/mousemove/ mouseup; Touchscreen and Touchpad listen only for touchstart/touchmove/ touchend. So in a touch mode nothing is listening for the mouse at all. touchMode defaults to "touchscreen" whenever navigator.maxTouchPoints > 0, which is true of every laptop with a touchscreen — machines that are still driven by a mouse. Those users lost the pointer entirely while the keyboard kept working, because Guacamole.Keyboard is bound independently. The physical pointer is now always bound and a touch emulator is layered on top when one is selected. Extracted to bindPointerInput() so the binding is testable; the test fails against the old branch. Note the issue also carries a second, unrelated report where well-formed mouse frames do reach guacd and the VNC leg ignores them. That one is not this, and the guacd image is pinned to 1.6.0 in both 2.5.1 and 2.6.1, so it is not an upgrade either. * fix: deduplicate /api/folders requests to prevent intermittent folder disappearance (#1191) * chore: sync Crowdin translations * fix: deduplicate /api/folders requests to prevent intermittent folder disappearance getSSHFolders() had no request deduplication while getSSHHosts() used a TTL cache with in-flight dedupe. When loadHosts() fired multiple times during rapid navigation between Credentials and Hosts panels, the folder response could arrive after the hosts response, causing the sidebar tree to render without folder metadata. - Add foldersCache (10s TTL) in hosts-request-cache.ts - Wrap getSSHFolders() API call in getCachedSSHFolders() - Invalidate folders cache on renameFolder, updateFolderMetadata, deleteAllHostsInFolder, and renameCredentialFolder - Include foldersCache in invalidateHostsAndStatusCaches() Closes Termix-SSH/Support#1103 Signed-off-by: RawNuke <67506722+RawNuke@users.noreply.github.com> --------- Signed-off-by: RawNuke <67506722+RawNuke@users.noreply.github.com> Co-authored-by: LukeGus <bugattiguy527@gmail.com> * chore(deps): bump undici from 8.9.0 to 8.10.0 in the prod-minor-updates group (#1195) * chore: sync Crowdin translations * chore(deps): bump undici in the prod-minor-updates group Bumps the prod-minor-updates group with 1 update: [undici](https://github.com/nodejs/undici). Updates `undici` from 8.9.0 to 8.10.0 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v8.9.0...v8.10.0) --- updated-dependencies: - dependency-name: undici dependency-version: 8.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] <support@github.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: LukeGus <bugattiguy527@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat: proxmox metrics integration * feat: add folder select to the host multi select feature * feat: implement context aware terminal toolbar with quick links, host info, image pasting, etc * feat: made toolbar open file manager at path * fix: delete folder route not invalidating host list cache * fix: match host list icons with tab bar iconfix * fix: change sidebar reset button icon to seperate against fullscreen button * feat: unify connection system and add connection logs to guacd hosts * fix: make mobile terminal scrollback match xterm wheel behavior (#1198) * fix: route mobile terminal scrolling through xterm viewport * docs: document mobile terminal touch scrolling * chore: add a note to not place files in docs * chore: remove touch imput from docs * feat: improve snippet system with variable snippets and collapse settings * feat: new fleet system with snippet, packages, files, and inventory features * fix: command pallete not loading new activity and made enter load first item * feat: add subhost from parent host organization feature * feat: add workspaces feature to save tab layout * perf: greatly improved performance across metrics polling and host management for enterprise users * feat: add a onboarding system with a new interface simplicity system * feat: finalize the multi dialect database system * fix: bind trusted MFA devices to client installs (#1202) * fix: merge OIDC group claims across sources (#1203) * fix: allow disabling SSH keepalives (#1204) * fix: distinguish reachable and available hosts (#1206) * fix: throttle session activity persistence (#1207) * fix: preserve saved RDP connection settings (#1208) * fix: authenticate tunnel status stream (#1209) * fix: select quick-created credentials (#1210) * fix: stagger initial metrics collection (#1211) * fix: stagger initial metrics collection * fix: admit reachable hosts to initial metrics * fix: prevent long host names shifting dashboard metrics (#1205) * feat: add global touch input settings (#1201) Co-authored-by: ZacharyZcR <zacharyzcr1984@gmail.com> * fix: keep host list row sizing stable (#1213) * fix(guacamole): correct Windows key mapping (#1216) * fix: normalize OIDC discovery issuer URLs (#1218) * fix: prompt for RDP domain credentials (#1212) * fix: route status checks by connection origin (#1214) * fix: restore desktop Tailscale configuration (#1215) * fix(docker): restore Node 24 for ssh2 native crypto (#1217) * feat: added new automations feature with events, channels, and steps * feat: allowed some tabs in the app rail to be opened as its own tab or in a new right sidebar * feat: expand onboarding process with more customization/features * feat: initial implementation of the termix ai feature * chore: run linter * fix: issue #424 (#424) https://github.com/Termix-SSH/Support/issues/424 * fix: Not working without internet connection. Missing OPKSSH binary in pre-built image. (#1133) https://github.com/Termix-SSH/Support/issues/1133 * fix: SQLite forceSave on telemetry writes causes periodic SSH terminal stalls in 2.6.x (#1109) https://github.com/Termix-SSH/Support/issues/1109 * feat: How to enable SSL using custom certificate (#1083) https://github.com/Termix-SSH/Support/issues/1083 * fix: show profile API key after creation (#1221) * feat: add trusted proxy authentication (#1222) * fix: clarify SSH agent authentication (#1224) * feat: add first-class split screen tabs (#1226) * feat: add split tab data model * feat: make split screens top-level tabs * feat: persist and manage split layouts * feat: launch native RDP on Windows desktop (#1223) * feat: launch native RDP on Windows * style: format native RDP launcher * feat: enhance custom disk and network metrics (#1220) * feat: enhance host disk and network metrics * fix: align enhanced metrics types * fix: preserve Proxmox guest identity on edit (#1219) * fix: preserve Proxmox guest identity on edit * fix: type Proxmox guest source metadata * chore: dead-code cleanup and small refactors (#1225) * chore: remove dead code and unused exports * chore: remove unused api client functions * chore: remove unused backend helpers * refactor: extract getErrorMessage helper for repeated error extraction * refactor: unify error message extraction across backend with getErrorMessage * refactor: unify error message extraction in frontend with getErrorMessage * refactor: merge duplicate imports from the same module * refactor: use Array.includes in TabBar * chore: drop biome, keep prettier as the single formatter * style: apply prettier formatting to refactored files * fix: close active tab with Ctrl+W on Windows * fix: make tray Quit terminate the desktop app * feat: verify host transfer integrity * fix: reuse transfer sessions during verification * feat: select the fastest host transfer route * feat: tune host transfers adaptively * feat: adapt background polling to activity (#1233) * feat: adapt background polling to activity * feat: extend adaptive polling coverage * feat: make polling cost and network aware (#1234) * feat: make repeat navigation feel instant (#1235) * feat: make file operations feel immediate (#1236) * feat: preload likely user actions (#1237) * feat: preload likely file previews * feat: preload likely host tools * feat: preload likely file viewers * fix: replace stale terminal input listeners * feat: add links to docs for all new features * chore: update readme * fix: warn before discarding host changes (#1229) * feat: learn local host action preferences (#1238) * feat(terminal-toolbar): add bounded movable desktop toolbar (#1239) * feat: add local adaptive decision engine (#1240) * feat: adapt speculative resource usage (#1241) * feat: persist adaptive transfer profiles (#1242) * Fix .preferred_username when using LDAP login. (#1243) * chore: sync Crowdin translations * Fix .preferred_username when using LDAP login. Strips internal LDAP prefix from username. --------- Co-authored-by: LukeGus <bugattiguy527@gmail.com> * feat: learn direct transfer routes (#1244) * feat: learn speculative preload usefulness (#1245) * fix: - Adjusting the SSH Authentication from Vault to something else fails (#1152) https://github.com/Termix-SSH/Support/issues/1152 * fix: terminal graphical display, special characters inserted, distorted - `midnight comma... (#1145) https://github.com/Termix-SSH/Support/issues/1145 * feat: single click on host in list opens session - should be only on double click (#1146) https://github.com/Termix-SSH/Support/issues/1146 * feat: Terminal: custom font/ font selection/ how-to for adding a font - `MesloLGS NF` (#1140) https://github.com/Termix-SSH/Support/issues/1140 * fix: revert host single click to open session, make double click an option (#1146) Single click opens a session again by default. The old double click behavior can be turned on in Customize Sidebar. * chore: drop prettier check from beta release workflow, run formatter * chore: patch dependabot vulnerabilities via npm overrides * fix: reset adaptive resource state between tests to stop cross-test leaks * feat: replace terminal toolbar density popover with a native select * fix: pin hardwareConcurrency in adaptive budget tests so CI cores don't change the tier * fix: allow dylib files in mac universal arch rules so mas build packages sharp * feat: add file manager trash (#1250) * feat: add inheritable connection defaults (#1246) * feat: add desktop local terminal (#1247) * feat: add interactive terminal macros (#1248) * feat: add adaptive SSH local echo (#1249) * fix: sync desktop host changes immediately (#1252) * fix: route desktop sharing through synced server (#1253) * Fix terminal image uploads and add safe diagnostics (#1254) * feat: add configurable terminal image storage backends * feat: add admin image storage settings * fix: preserve native clipboard PNG uploads * fix: quote terminal image paths safely * docs: record image storage security remediation plan * fix: close remote image SFTP channels * fix: restrict remote image SFTP permissions * fix: bound remote image SFTP writes * fix: add best effort remote image retention * fix: cap normalized image output size * fix: bound concurrent image processing * fix: fail closed on local image inspection errors * test: cover fail closed image storage and atomic settings * fix: enforce remote image quota and upload admission * fix: serialize remote quota and verify existing paths * fix: use synchronous sqlite settings transaction * fix: keep settings transactions portable across dialects * fix: bound image processing admission queue * fix: serialize remote image quota across processes * fix: recover stale remote image locks safely * fix: preserve remote storage errors during unlock * fix: fail closed when stale lock removal fails * fix: harden image upload resource and storage cleanup * fix: bound SFTP operations and lock lifetime * fix: bound SFTP acquisition and cleanup callbacks * fix: close late SFTP channels and test cleanup stalls * fix: preserve SFTP inspection client context * feat: add image upload source metadata * fix: expose image upload metadata in logs * chore: exclude internal plan from pull request * style: apply prettier formatting --------- Co-authored-by: ZacharyZcR <zacharyzcr1984@gmail.com> * fix: batch of security hardening fixes (#1255) * fix: bind desktop auto-session loopback check to the TCP peer address * fix: escape HTML entities in Vault OIDC callback responses * fix: route homepage ping and rss through the SSRF-safe outbound fetch * fix: scope tunnel status endpoints to hosts the caller can access * chore: update release notes * chore: update release notes to write more about the ai integration * fix: unbreak windows and macos electron builds after node-pty Install Spectre-mitigated MSVC libs on the Windows runner and cover node-pty's spawn-helper in the macOS universal arch rules. * fix: rework connection defaults ui into a dialog and add missing i18n keys * fix: rework macros panel with i18n, plain text matching, and list layout * feat: add docs links for trash, connection defaults, and local echo * fix: make image storage and trash tests pass on windows * fix: stop docs links squeezing sidebar panel headers * fix: put automations docs link back on the tabs row * fix(desktop): keep Linux credential storage working on unrecognised desktops (#1261) Chromium resolves safeStorage's backend from XDG_CURRENT_DESKTOP and falls back to the basic_text store for any desktop it has no mapping for, which covers every wlroots-style compositor (Hyprland, sway, niri, river). isEncryptionAvailable() reports false for that store, so saveRemoteSyncJwt refused every write and the OIDC sign-in it was storing appeared to succeed. The sync engine then found no JWT and reported the session as expired, which sent users looking at their OIDC provider for a fault that was never there. Name the libsecret backend explicitly on those desktops. They run an ordinary Secret Service, so that is enough to make encryption available again. KWallet desktops keep their auto-detected backend, an explicit --password-store still wins, and no stored secret can be orphaned by the switch because isEncryptionAvailable() gated every write that would have created one. Also stop discarding the {success: false} the main process returns when it cannot store a credential: on a machine with no Secret Service at all, the sign-in now says so instead of silently completing. Co-authored-by: alexandre-vl <rafaelsenchais@gmail.com> * chore: update release notes * chore: update release notes * fix(file-manager): widen trash dialog so names and paths are not cut off * fix(sidebar): stop hover action tray overlapping the row below it * fix(hosts): make real status colors toggle actually apply * feat(local-terminal): add rail button and fix hardcoded tab label * chore: update release notes * fix(ai): hide assistant everywhere when admin disables it globally * fix(automations): fix concurrency race, wire docker and internal event triggers Claim the in-flight slot in the same tick it is checked, poll container state for docker_event triggers, emit the internal events, apply the schedule time zone, and expose the concurrency policy in the editor. * fix(sidebar): rework host and credential drag-to-reorder Adds a lock toggle in the sort menu and fixes reorder positioning, cross-folder drops, and the duplicate drop indicator. * chore(sidebar): drop unused sortKey prop from host and credential trees * fix(sidebar): fix row height in click tray mode so status stripes stop overlapping * fix(onboarding): remove add-first-host step that closed onboarding mid-flow * fix(release): upload release notes so Mac App Store review submission stops failing * chore: sync Crowdin translations for 2.7.0 --------- Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: RawNuke <67506722+RawNuke@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: ZacharyZcR <zacharyzcr1984@gmail.com> Co-authored-by: kacperpietrzyk <105545577+kacperpietrzyk@users.noreply.github.com> Co-authored-by: Brennan Neoh <497569+brennanneoh@users.noreply.github.com> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> Co-authored-by: T3rM1nAt0-R <niraj.sangani91@gmail.com> Co-authored-by: Horziox <horziox.dev@gmail.com> Co-authored-by: William Shi <184219650@qq.com> Co-authored-by: Carl <scarlettme@qq.com> Co-authored-by: Raw_Nuke <67506722+RawNuke@users.noreply.github.com> Co-authored-by: njz-cvm <njz@cvm.com> Co-authored-by: Alexandre VARGAS <alexandre.vargas.lopez@gmail.com> Co-authored-by: alexandre-vl <rafaelsenchais@gmail.com>
4650 lines
252 KiB
JSON
4650 lines
252 KiB
JSON
{
|
||
"connection": {
|
||
"retryingIn": "Opakování za {{seconds}}s ({{attempt}}/{{max}})",
|
||
"retryingNow": "Opakování pokusu... ({{attempt}}/{{max}})",
|
||
"disconnected": "Nelze se připojit",
|
||
"reconnect": "Znovu se připojte"
|
||
},
|
||
"termixId": {
|
||
"title": "ID Termixu",
|
||
"loadFailed": "Nepodařilo se načíst ID Termixu",
|
||
"claimTitle": "Získejte své Termix ID",
|
||
"claimIntro": "Vyberte jedinečný handle. Vaše veřejné klíče SSH budou zveřejněny na veřejné URL adrese, kterou můžete přidat do souboru authorized_keys libovolného serveru.",
|
||
"handleLabel": "Zacházet s",
|
||
"handlePlaceholder": "Alice",
|
||
"checking": "Kontrola…",
|
||
"available": "K dispozici",
|
||
"taken": "Již obsazeno",
|
||
"invalidHandle": "Pouze malá písmena, číslice, - a _",
|
||
"descriptionLabel": "Popis (volitelné)",
|
||
"descriptionPlaceholder": "Klíče k pracovnímu notebooku a telefonu",
|
||
"create": "Vytvořit ID Termixu",
|
||
"created": "ID Termixu vytvořeno",
|
||
"createFailed": "Nepodařilo se vytvořit ID Termixu",
|
||
"deleteConfirm": "Smazat své Termix ID a všechny publikované klíče? Servery, které jste zřídili, si klíče uchovají, dokud je ručně neodstraníte.",
|
||
"deleted": "ID Termixu smazáno",
|
||
"deleteFailed": "Nepodařilo se smazat ID Termixu",
|
||
"copyFailed": "Kopírování se nezdařilo",
|
||
"resolverUrlLabel": "URL veřejného resolveru",
|
||
"provisionLabel": "Zřízení serveru",
|
||
"publishTitle": "Publikovat veřejný klíč",
|
||
"generate": "Generovat",
|
||
"generateTooltip": "Generování páru klíčů Ed25519 – publikuje veřejný klíč a stáhne soukromý klíč do vašeho zařízení",
|
||
"saveToVault": "Uložit do přihlašovacích údajů",
|
||
"keyPlaceholder": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5... uživatel@hostitel",
|
||
"labelPlaceholder": "Štítek (volitelné)",
|
||
"add": "Přidat",
|
||
"importFromCredential": "Nebo importovat z uložených přihlašovacích údajů",
|
||
"keyPublished": "Klíč zveřejněn",
|
||
"addKeyFailed": "Přidání klíče se nezdařilo",
|
||
"generatedSaved": "Pár klíčů byl vygenerován a uložen do úložiště vašich přihlašovacích údajů. Soukromý klíč byl také stažen.",
|
||
"generatedOnly": "Vygenerovaný pár klíčů — stažený soukromý klíč (zobrazí se pouze jednou).",
|
||
"generateFailed": "Nepodařilo se vygenerovat klíč",
|
||
"imported": "Klíč importován z přihlašovacích údajů",
|
||
"importFailed": "Import klíče se nezdařilo",
|
||
"noKeys": "Zatím nebyly zveřejněny žádné veřejné klíče.",
|
||
"keysTitle": "Publikované klíče",
|
||
"published": "Publikováno",
|
||
"hidden": "Skrytý",
|
||
"keyRemoved": "Klíč vyjmut",
|
||
"removeKeyFailed": "Nepodařilo se vyjmout klíč",
|
||
"updateKeyFailed": "Nepodařilo se aktualizovat klíč",
|
||
"fromVault": "Z úložiště přihlašovacích údajů",
|
||
"linkedToTermixId": "Publikováno přes Termix ID",
|
||
"selectCredential": "Vyberte pověření...",
|
||
"import": "Importovat",
|
||
"caTitle": "Certifikační autorita",
|
||
"caIntro": "Důvěřujte této certifikační autoritě na serveru a ta přijme jakýkoli certifikát, který podepíšete. Otočením zrušíte vše najednou; certifikáty také samy vyprší.",
|
||
"caEnable": "Povolit certifikační autoritu (CA)",
|
||
"caEnabled": "CA povolena",
|
||
"caCreateFailed": "Nepodařilo se povolit certifikační autoritu (CA).",
|
||
"caPublicKeyLabel": "Veřejný klíč CA",
|
||
"caTrustLabel": "Důvěra na serveru (spuštěno jako root)",
|
||
"caRotate": "Střídat",
|
||
"caRotateConfirm": "Rotovat certifikační autoritu? Každý certifikát, který podepsala, přestane být akceptován a bude nutné jej znovu vydat.",
|
||
"caRotated": "CA rotována – předchozí certifikáty zrušeny",
|
||
"caRotateFailed": "Nepodařilo se otočit CA",
|
||
"caDelete": "Odebrat certifikační autoritu (CA)",
|
||
"caDeleteConfirm": "Odebrat certifikační autoritu?",
|
||
"caDeleted": "CA odstraněna",
|
||
"caDeleteFailed": "Nepodařilo se odebrat certifikační autoritu (CA).",
|
||
"caValidityLabel": "Platnost certifikátu (dny)",
|
||
"issueCert": "Osvědčení",
|
||
"issueCertTooltip": "Vystavte pro tento klíč SSH certifikát podepsaný vaší certifikační autoritou.",
|
||
"certIssued": "Certifikát vydán a stažen",
|
||
"certIssueFailed": "Vydání certifikátu se nezdařilo"
|
||
},
|
||
"credentials": {
|
||
"folders": "Složky",
|
||
"folder": "Složka",
|
||
"password": "Heslo",
|
||
"key": "Klíč",
|
||
"sshPrivateKey": "Soukromý klíč SSH",
|
||
"upload": "Nahrát",
|
||
"keyPassword": "Heslo klíče",
|
||
"sshKey": "SSH klíč",
|
||
"uploadPrivateKeyFile": "Nahrát soubor soukromého klíče",
|
||
"searchCredentials": "Vyhledat přihlašovací údaje...",
|
||
"addCredential": "Přidat přihlašovací údaje",
|
||
"caCertificate": "Certifikát certifikační autority (-cert.pub)",
|
||
"caCertificateDescription": "Volitelné: Nahrajte nebo vložte soubor certifikátu podepsaného certifikační autoritou (např. id_ed25519-cert.pub). Vyžadováno, pokud váš SSH server používá autorizaci založenou na certifikátech.",
|
||
"uploadCertFile": "Nahrát soubor -cert.pub",
|
||
"clearCert": "Jasný",
|
||
"certLoaded": "Certifikát načten",
|
||
"certPublicKeyLabel": "Certifikát certifikační autority",
|
||
"certTypeLabel": "Typ certifikátu",
|
||
"pasteOrUploadCert": "Vložit nebo nahrát certifikát -cert.pub...",
|
||
"hasCaCert": "Má certifikát CA",
|
||
"noCaCert": "Žádný certifikát CA",
|
||
"noPublicKeyAvailable": "Není k dispozici žádný veřejný klíč. Nejprve otevřete editor přihlašovacích údajů.",
|
||
"deployCommandCopied": "Příkaz nasazení zkopírován",
|
||
"sortCredentials": "Seřadit přihlašovací údaje",
|
||
"sortDefault": "Výchozí pořadí",
|
||
"sortNameAsc": "Jméno (A → Z)",
|
||
"sortNameDesc": "Jméno (Z → A)",
|
||
"sortUsernameAsc": "Uživatelské jméno (A → Z)",
|
||
"sortUsernameDesc": "Uživatelské jméno (Z → A)",
|
||
"filterCredentials": "Filtrovat přihlašovací údaje",
|
||
"filterClearAll": "Vymazat filtry",
|
||
"filterTypeGroup": "Typ",
|
||
"filterTypePassword": "Heslo",
|
||
"filterTypeKey": "SSH klíč",
|
||
"filterTagsGroup": "Štítky",
|
||
"copyDeployCommand": "Kopírovat příkaz nasazení",
|
||
"deleteCredentialAction": "Smazat přihlašovací údaje",
|
||
"editCredentialAction": "Upravit přihlašovací údaje",
|
||
"failedToDeleteCredential": "Nepodařilo se smazat přihlašovací údaje",
|
||
"idBadge": "Průkaz totožnosti",
|
||
"keyBadge": "KLÍČ",
|
||
"passwordBadge": "OSO",
|
||
"renameFolder": "Přejmenovat složku",
|
||
"deleteFolder": "Smazat složku",
|
||
"deleteCredentialConfirm": "Smazat přihlašovací údaje „{{name}}“?",
|
||
"deletedCredential": "Smazáno {{name}}",
|
||
"deploySSHKeyTitle": "Nasazení klíče na hostitele",
|
||
"loadingCredentials": "Načítání přihlašovacích údajů...",
|
||
"noCredentialsFound": "Nenalezeny žádné přihlašovací údaje",
|
||
"noCredentialsMatchSearch": "Vašemu vyhledávání neodpovídají žádné přihlašovací údaje",
|
||
"addCredentialBtn": "Přidat přihlašovací údaje",
|
||
"failedToReorder": "Nepodařilo se změnit pořadí přihlašovacích údajů",
|
||
"failedToMoveCredential": "Přesun přihlašovacích údajů se nezdařilo",
|
||
"sortManual": "Ručně (přetažením změníte pořadí)",
|
||
"customizeSidebar": "Přizpůsobit postranní panel",
|
||
"customizeSidebarDescription": "Vyberte, jak bude seznam přihlašovacích údajů vypadat a jak se bude chovat.",
|
||
"customizeDensityTitle": "Hustota",
|
||
"densityComfortableDesc": "Jeden doklad totožnosti na řádek s dalšími podrobnostmi.",
|
||
"densityCompactDesc": "Jeden řádek na přihlašovací údaje, pro delší seznamy.",
|
||
"displayDensityComfortable": "Komfortní",
|
||
"displayDensityCompact": "Kompaktní",
|
||
"customizeBehaviorTitle": "Chování",
|
||
"showCredentialTags": "Zobrazit štítky",
|
||
"showCredentialTagsDesc": "Zobrazit štítky v seznamu pověření",
|
||
"actionsVisibility": "Akce s pověřeními",
|
||
"actionsVisibilityDesc": "Když se u jednotlivých přihlašovacích údajů zobrazí tlačítka pro připojení a správu",
|
||
"actionsAlways": "Vždy viditelné",
|
||
"actionsOnly": "Pouze připojení, odpočinek po kliknutí",
|
||
"actionsHover": "Zobrazit při najetí myší",
|
||
"actionsClick": "Zobrazit po kliknutí",
|
||
"customizeSortHint": "Pořadí řazení se nachází v nabídce řazení na panelu nástrojů.",
|
||
"expandActions": "Rozbalit akce",
|
||
"collapseActions": "Akce sbalení",
|
||
"backToHosts": "Zpět k hostitelům",
|
||
"backToCredentials": "Zpět k pověřovacím dokumentům",
|
||
"searchCredentialsPlaceholder": "Vyhledávání přihlašovacích údajů…",
|
||
"deployDialogTitle": "Nasazení SSH klíče",
|
||
"deployDialogDesc": "Nasaďte {{name}} na authorized_keys hostitele.",
|
||
"targetHostLabel": "Cílový hostitel",
|
||
"selectHostOption": "Vyberte hostitele...",
|
||
"deployingBtn": "Nasazení...",
|
||
"deployBtn": "Nasadit",
|
||
"keyDeployedSuccess": "Klíč byl úspěšně nasazen",
|
||
"failedToDeployKey": "Nepodařilo se nasadit klíč",
|
||
"folderRenamedTo": "Složka přejmenována na „{{name}}“",
|
||
"failedToRenameFolder": "Nepodařilo se přejmenovat složku",
|
||
"arrangeUnlockedSwitchedToManual": "Přepnuto na ruční řazení, aby se vaše pořadí drželo",
|
||
"arrangeUnlocked": "Odemkněte přetažením pro změnu uspořádání"
|
||
},
|
||
"homepage": {
|
||
"title": "Domovská stránka",
|
||
"addWidget": "Přidat widget",
|
||
"editWidget": "Upravit widget",
|
||
"deleteWidget": "Vymazat",
|
||
"widgetTypes": "Typy widgetů",
|
||
"serviceLink": "Odkaz na službu",
|
||
"folder": "Složka",
|
||
"clock": "Hodiny",
|
||
"notes": "Poznámky",
|
||
"hostStatus": "Stav hostitele",
|
||
"bookmarkList": "Záložky",
|
||
"zoomIn": "Přiblížit",
|
||
"zoomOut": "Oddálit",
|
||
"resetView": "Obnovit zobrazení",
|
||
"lockLayout": "Rozložení zámku",
|
||
"unlockLayout": "Odemknout rozvržení",
|
||
"noWidgets": "Klikněte pravým tlačítkem myši nebo kliknutím na + přidejte svůj první widget",
|
||
"openFullView": "Otevřít celé zobrazení",
|
||
"previewTitle": "Náhled domovské stránky",
|
||
"cancel": "Zrušit",
|
||
"save": "Uložit",
|
||
"title_label": "Titul",
|
||
"widgetTitlePlaceholder": "Název widgetu (volitelné)",
|
||
"url": "URL",
|
||
"imageUrl": "URL vlastního obrázku",
|
||
"imageUrlHint": "Nechte pole prázdné, pokud chcete favicon webu používat automaticky.",
|
||
"showImage": "Zobrazit obrázek",
|
||
"description": "Popis",
|
||
"color": "Barva",
|
||
"icon": "Ikona",
|
||
"expanded": "Ve výchozím nastavení rozšířeno",
|
||
"timezone": "Časové pásmo",
|
||
"showSeconds": "Zobrazit sekundy",
|
||
"format12h": "12 hodin",
|
||
"format24h": "24 hodin denně",
|
||
"content": "Obsah",
|
||
"backgroundColor": "Barva pozadí",
|
||
"host": "Hostitel",
|
||
"showMetrics": "Zobrazit metriky",
|
||
"links": "Odkazy",
|
||
"addLink": "Přidat odkaz",
|
||
"linkLabel": "Označení",
|
||
"linkUrl": "URL",
|
||
"removeLink": "Odstranit",
|
||
"categoryLinks": "Odkazy",
|
||
"categoryInfo": "Informace",
|
||
"categorySystem": "Systém",
|
||
"widgetServiceLinkDesc": "Klikatelná dlaždice odkazující na URL adresu služby",
|
||
"widgetFolderDesc": "Kontejner pro seskupování souvisejících widgetů",
|
||
"widgetClockDesc": "Živé hodiny s konfigurovatelným časovým pásmem",
|
||
"widgetNotesDesc": "Widget Markdown Notes",
|
||
"widgetHostStatusDesc": "Zobrazuje aktuální stav CPU, paměti a disku pro hostitele SSH",
|
||
"widgetBookmarkListDesc": "Seznam rychlých odkazů",
|
||
"copyLink": "Kopírovat odkaz",
|
||
"linkCopied": "Odkaz zkopírován!",
|
||
"location": "Umístění",
|
||
"temperatureUnit": "Jednotka teploty",
|
||
"showForecast": "Zobrazit třídenní předpověď",
|
||
"scrolling": "Povolit rolování",
|
||
"feedUrl": "URL kanálu",
|
||
"maxItems": "Maximální počet položek",
|
||
"showDescription": "Zobrazit popis",
|
||
"widgetWeatherName": "Počasí",
|
||
"widgetWeatherDesc": "Živé počasí pro jakékoli místo",
|
||
"widgetIframeName": "Vložení iFrame",
|
||
"widgetIframeDesc": "Vložte libovolnou URL do prvku iframe",
|
||
"widgetRssName": "RSS kanál",
|
||
"widgetRssDesc": "Zobrazení položek z RSS nebo Atom kanálu",
|
||
"dragToFolder": "Přetáhněte widgety sem nebo je přidejte pomocí +",
|
||
"showDisk": "Zobrazit využití disku",
|
||
"addToFolder": "Přidat widget do složky",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"metricsNotAvailable": "Metriky nejsou k dispozici",
|
||
"selectHost": "Vyberte hostitele...",
|
||
"displayedMetrics": "Zobrazené metriky",
|
||
"metricCpu": "Procesor",
|
||
"metricMemory": "Paměť",
|
||
"metricDisk": "Disk",
|
||
"metricUptime": "Doba provozuschopnosti",
|
||
"metricSystem": "Systém",
|
||
"metricOs": "OS",
|
||
"metricKernel": "Jádro",
|
||
"metricHostname": "Název hostitele",
|
||
"metricNetwork": "Síť",
|
||
"metricProcesses": "Procesy",
|
||
"metricProcessesTotal": "celkový",
|
||
"metricProcessesRunning": "běh",
|
||
"categoryMonitoring": "Monitorování",
|
||
"loading": "Načítání...",
|
||
"noData": "Nejsou k dispozici žádná data",
|
||
"allClear": "Všechno čisté",
|
||
"acknowledgeAlert": "Potvrdit",
|
||
"noPingUrls": "Žádné adresy URL nejsou nakonfigurovány",
|
||
"pingLabel": "Označení",
|
||
"addPingUrl": "Přidat URL",
|
||
"showLatency": "Zobrazit latenci",
|
||
"refreshInterval": "Interval aktualizace",
|
||
"seconds": "sekundy",
|
||
"filterActivityTypes": "Typy filtrů",
|
||
"filterTypesHint": "Pro zobrazení všech ponechte prázdné",
|
||
"showTimestamp": "Zobrazit časové razítko",
|
||
"uptimeUnavailable": "Dostupnost není k dispozici",
|
||
"uptimeLabel": "Doba provozuschopnosti",
|
||
"overviewVersion": "Verze",
|
||
"overviewUpdate": "Aktuální",
|
||
"overviewUpdateLabel": "Aktualizovat",
|
||
"overviewUpdateAvailable": "Aktualizace k dispozici",
|
||
"overviewDatabase": "Databáze",
|
||
"overviewUptime": "Doba provozuschopnosti",
|
||
"noHosts": "Žádní hostitelé nakonfigurováni",
|
||
"hostGridHosts": "Hostitelé",
|
||
"hostGridAllHint": "Nechte prázdné pro zobrazení všech hostitelů",
|
||
"columns": "Sloupce",
|
||
"showIp": "Zobrazit IP adresu",
|
||
"connectionType": "Typ připojení",
|
||
"layout": "Rozvržení",
|
||
"showStatus": "Zobrazit stav",
|
||
"showHostName": "Zobrazit název hostitele",
|
||
"noDockerActivity": "Žádná aktivita Dockeru",
|
||
"noActivity": "Žádná aktivita",
|
||
"showAcknowledged": "Zobrazit potvrzeno",
|
||
"showCurrentValue": "Zobrazit aktuální hodnotu",
|
||
"chartMetric": "Metrický",
|
||
"metricRange": "Rozsah",
|
||
"widgetMetricsChartName": "Graf metrik",
|
||
"widgetMetricsChartDesc": "Historický graf CPU, paměti, disku nebo sítě pro hostitele",
|
||
"widgetHostGridName": "Hostitelská mřížka",
|
||
"widgetHostGridDesc": "Mřížkové zobrazení stavů hostitelů SSH",
|
||
"widgetAlertFeedName": "Zdroj upozornění",
|
||
"widgetAlertFeedDesc": "Živé výstrahy s podporou potvrzení",
|
||
"widgetPingStatusName": "Stav pingu",
|
||
"widgetPingStatusDesc": "Stav HTTP pingu pro jednu nebo více URL adres",
|
||
"widgetRecentActivityName": "Nedávná aktivita",
|
||
"widgetRecentActivityDesc": "Posouvatelný kanál nedávné aktivity Termixu",
|
||
"widgetTermixUptimeName": "Doba provozuschopnosti Termixu",
|
||
"widgetTermixUptimeDesc": "Čítač provozuschopnosti serveru Termix v reálném čase",
|
||
"widgetSystemOverviewName": "Přehled systému",
|
||
"widgetSystemOverviewDesc": "Verze Termixu, stav databáze a dostupnost v kostce",
|
||
"widgetSshQuickConnectName": "Rychlé připojení SSH",
|
||
"widgetSshQuickConnectDesc": "Otevření SSH relací jedním kliknutím",
|
||
"widgetDockerActivityName": "Aktivita Dockeru",
|
||
"widgetDockerActivityDesc": "Nedávné události kontejneru Docker napříč všemi hostiteli",
|
||
"widgetCalendarName": "Kalendář",
|
||
"widgetCalendarDesc": "Měsíční kalendář se zvýrazněným dnem",
|
||
"widgetCountdownName": "Odpočítávání",
|
||
"widgetCountdownDesc": "Odpočítávací časovač do cílového data",
|
||
"widgetSearchBarName": "Vyhledávací panel",
|
||
"widgetSearchBarDesc": "Widget pro rychlé vyhledávání na webu",
|
||
"widgetTextBannerName": "Textový banner",
|
||
"widgetTextBannerDesc": "Tučný popisek nebo záhlaví sekce pro plátno",
|
||
"widgetImageWidgetName": "Obraz",
|
||
"widgetImageWidgetDesc": "Zobrazit obrázek z URL adresy",
|
||
"widgetMarkdownNotesName": "Poznámky k Markdownu",
|
||
"widgetMarkdownNotesDesc": "Bohaté poznámky s inline vykreslováním markdownu",
|
||
"widgetCustomApiName": "Vlastní API",
|
||
"widgetCustomApiDesc": "Načítání a zobrazování dat z libovolného JSON API",
|
||
"widgetServiceGridName": "Servisní síť",
|
||
"widgetServiceGridDesc": "Konfigurovatelná mřížka odkazů na dlaždice služeb",
|
||
"widgetDashboardLinksName": "Odkazy na řídicí panel",
|
||
"widgetDashboardLinksDesc": "Zobrazte nakonfigurované odkazy na služby z řídicího panelu",
|
||
"widgetSearchLinksName": "Vyhledávací zkratky",
|
||
"widgetSearchLinksDesc": "Tlačítka zkratek pro rychlé vyhledávání s vloženým vstupem",
|
||
"widgetLinkTreeName": "Strom odkazů",
|
||
"widgetLinkTreeDesc": "Seskupené sekce odkazů s nadpisy",
|
||
"calMon": "Po",
|
||
"calTue": "Út",
|
||
"calWed": "My",
|
||
"calThu": "Čt",
|
||
"calFri": "Pá",
|
||
"calSat": "So",
|
||
"calSun": "Ne",
|
||
"startOnMonday": "Začátek týdne v pondělí",
|
||
"countdownNoDate": "Není stanoveno žádné cílové datum",
|
||
"countdownPast": "Událost proběhla",
|
||
"countdownDays": "dny",
|
||
"countdownHours": "hodin",
|
||
"countdownMinutes": "min.",
|
||
"countdownSeconds": "sekunda",
|
||
"countdownLabel": "Označení",
|
||
"countdownLabelPlaceholder": "např. den spuštění",
|
||
"countdownShowDays": "Dny výstav",
|
||
"countdownShowHours": "Otevírací doba",
|
||
"targetDate": "Cílové datum",
|
||
"searchEngine": "Vyhledávač",
|
||
"customSearchUrl": "URL pro vlastní vyhledávání",
|
||
"searchPlaceholder": "Vyhledávání...",
|
||
"searchGo": "Jít",
|
||
"searchPlaceholderLabel": "Zástupný text",
|
||
"searchPlaceholderHint": "Text zobrazený uvnitř vyhledávacího pole",
|
||
"openInNewTab": "Otevřít v nové kartě",
|
||
"searchQueryPlaceholder": "Zadejte dotaz...",
|
||
"noSearchShortcuts": "Žádné zkratky nakonfigurované",
|
||
"addSearchShortcut": "Přidat zkratku",
|
||
"fontSize": "Velikost písma",
|
||
"textAlign": "Zarovnání textu",
|
||
"fontWeight": "Tloušťka písma",
|
||
"clearColor": "Jasná barva",
|
||
"imageFit": "Přizpůsobení obrazu",
|
||
"imageLinkUrl": "URL odkazu",
|
||
"noImage": "Není nastavena adresa URL obrázku",
|
||
"altText": "Alternativní text",
|
||
"altTextPlaceholder": "Popište obrázek",
|
||
"renderMarkdown": "Renderování Markdownu",
|
||
"displayMode": "Režim zobrazení",
|
||
"displayField": "Pole zobrazení",
|
||
"jsonPath": "Cesta JSON",
|
||
"customApiLabel": "Označení",
|
||
"customApiLabelPlaceholder": "např. teplota",
|
||
"customApiUnit": "Jednotka",
|
||
"customApiNoUrl": "Není nakonfigurována žádná adresa URL API",
|
||
"customApiError": "Načtení se nezdařilo",
|
||
"customApiNotArray": "Odpověď není pole",
|
||
"addService": "Přidat službu",
|
||
"showLabels": "Zobrazit štítky",
|
||
"iconSize": "Velikost ikony",
|
||
"noDashboardLinks": "Nejsou nakonfigurovány žádné odkazy na řídicí panel",
|
||
"noLimit": "Bez omezení",
|
||
"sectionHeading": "Nadpis sekce",
|
||
"addSection": "Přidat sekci",
|
||
"compactMode": "Kompaktní režim",
|
||
"showDetailed": "Zobrazit podrobnosti",
|
||
"selectHosts": "Vyberte hostitele",
|
||
"allHosts": "Všichni hostitelé",
|
||
"listLayout": "Seznam",
|
||
"gridLayout": "Mřížka",
|
||
"terminal": "Terminál",
|
||
"files": "Soubory",
|
||
"docker": "Přístavní dělník",
|
||
"range15m": "15 minut",
|
||
"range1h": "1 hodina",
|
||
"range6h": "6 hodin",
|
||
"range24h": "24 hodin",
|
||
"metricNetRx": "Stažení ze sítě",
|
||
"metricNetTx": "Nahrávání do sítě",
|
||
"severityFilter": "Filtr závažnosti",
|
||
"filterAll": "Vše",
|
||
"accentColor": "Zvýrazňující barva",
|
||
"widgetSshTerminalName": "SSH terminál",
|
||
"widgetSshTerminalDesc": "Vložený SSH terminál připojený k nakonfigurovanému hostiteli",
|
||
"sshTerminalNoHost": "Žádný hostitel není nakonfigurován",
|
||
"sshTerminalConnect": "Připojit",
|
||
"sshTerminalAutoConnect": "Automatické připojení při načtení",
|
||
"widgetQuickConnectName": "Rychlé připojení",
|
||
"widgetQuickConnectDesc": "Tlačítka pro spuštění jedním kliknutím pro jakýkoli typ připojení napříč vašimi hostiteli",
|
||
"connectionTypes": "Typy připojení",
|
||
"connType_terminal": "Terminál",
|
||
"connType_files": "Správce souborů",
|
||
"connType_docker": "Přístavní dělník",
|
||
"connType_tunnel": "Tunel",
|
||
"connType_host-metrics": "Metriky hostitele",
|
||
"connType_rdp": "PRV",
|
||
"connType_vnc": "VNC",
|
||
"connType_telnet": "Telnet",
|
||
"widgetFileManagerName": "Správce souborů",
|
||
"widgetFileManagerDesc": "Vestavěný správce souborů SFTP pro nakonfigurovaný hostitel",
|
||
"widgetDockerName": "Správce Dockeru",
|
||
"widgetDockerDesc": "Vestavěný správce kontejnerů Docker pro nakonfigurovaný hostitel",
|
||
"widgetTunnelName": "Správce tunelu",
|
||
"widgetTunnelDesc": "Vestavěný správce tunelů SSH pro nakonfigurovaný hostitel",
|
||
"widgetNoHostSelected": "Žádný hostitel není nakonfigurován"
|
||
},
|
||
"serverConfig": {
|
||
"title": "Konfigurace serveru",
|
||
"description": "Nakonfigurujte URL adresu serveru Termix pro připojení k vašim backendovým službám",
|
||
"serverUrl": "URL serveru",
|
||
"enterServerUrl": "Zadejte prosím URL adresu serveru",
|
||
"saveFailed": "Nepodařilo se uložit konfiguraci",
|
||
"saveError": "Chyba při ukládání konfigurace",
|
||
"saving": "Ukládání...",
|
||
"saveConfig": "Uložit konfiguraci",
|
||
"helpText": "Zadejte URL adresu, na které běží váš server Termix (např. http://localhost:30001 nebo https://vas-server.com)",
|
||
"changeServer": "Změnit server",
|
||
"mustIncludeProtocol": "URL serveru musí začínat http:// nebo https://",
|
||
"allowInvalidCertificate": "Povolit neplatný certifikát",
|
||
"allowInvalidCertificateDesc": "Používejte pouze pro důvěryhodné servery s vlastním hostováním a certifikáty s vlastním podpisem nebo certifikáty IP adresy.",
|
||
"useEmbedded": "Použít lokální server",
|
||
"embeddedDesc": "Spusťte Termix s vestavěným lokálním serverem (není potřeba vzdálený server)",
|
||
"embeddedConnecting": "Připojování k lokálnímu serveru...",
|
||
"embeddedNotReady": "Místní server ještě není připraven. Počkejte chvíli a zkuste to znovu.",
|
||
"localServer": "Místní server",
|
||
"savedServers": "Uložené servery",
|
||
"noSavedServers": "Žádné uložené servery",
|
||
"removeServer": "Odstranit"
|
||
},
|
||
"migrationNotice": {
|
||
"title": "Termix Desktop nyní běží samostatně",
|
||
"body1": "Tato aplikace se dříve připojovala přímo k vašemu serveru Termix. Byla přepracována tak, aby běžela plně samostatně a lokálně ukládala hostitele a přihlašovací údaje, takže fungovala i offline. Obousměrná synchronizace se samostatně hostovaným serverem Termix je nyní volitelná.",
|
||
"body2": "Vaši stávající hostitelé a přihlašovací údaje jsou stále na {{url}}. Zapněte vzdálenou synchronizaci a znovu se připojte k danému serveru, abyste je obnovili a udrželi obojí synchronizované i v budoucnu.",
|
||
"dismiss": "Teď ne",
|
||
"setUpSync": "Nastavení vzdálené synchronizace"
|
||
},
|
||
"remoteSync": {
|
||
"title": "Vzdálená synchronizace",
|
||
"description": "Volitelně můžete tuto desktopovou aplikaci připojit k serveru Termix hostovanému na vlastním serveru a synchronizovat hostitele, přihlašovací údaje a úryvky kódu napříč zařízeními. Aplikace vždy funguje plně offline, ať už se připojíte, nebo ne.",
|
||
"notConnected": "Nepřipojeno",
|
||
"connected": "Připojeno",
|
||
"connectedTo": "Připojeno k {{url}}",
|
||
"lastSynced": "Naposledy synchronizováno {{time}}",
|
||
"neverSynced": "Nikdy nesynchronizováno",
|
||
"syncError": "Chyba synchronizace: {{message}}",
|
||
"needsReauth": "Platnost přihlášení vypršela",
|
||
"connectButton": "Připojení k serveru",
|
||
"disconnectButton": "Odpojit",
|
||
"syncNowButton": "Synchronizovat nyní",
|
||
"syncing": "Synchronizace...",
|
||
"serverUrl": "URL serveru",
|
||
"enterServerUrl": "Zadejte prosím URL adresu serveru",
|
||
"mustIncludeProtocol": "URL serveru musí začínat http:// nebo https://",
|
||
"connectionTestFailed": "Na dané URL adrese se nepodařilo spojit se se serverem Termix.",
|
||
"allowInvalidCertificate": "Povolit neplatný certifikát",
|
||
"allowInvalidCertificateDesc": "Používejte pouze pro důvěryhodné servery s vlastním hostováním a certifikáty s vlastním podpisem nebo certifikáty IP adresy.",
|
||
"savedServers": "Uložené servery",
|
||
"removeServer": "Odstranit",
|
||
"continueButton": "Pokračovat",
|
||
"cancelButton": "Zrušit",
|
||
"signInTitle": "Přihlaste se do {{url}}",
|
||
"originTitle": "Původ připojení",
|
||
"originDescription": "Ve výchozím nastavení vyberte, odkud SSH připojení pocházejí. Toto nastavení lze u jednotlivých hostitelů přepsat.",
|
||
"originLocal": "Toto zařízení (lokální síť)",
|
||
"originRemote": "Vzdálený server",
|
||
"bannerReconnect": "Znovu se připojte",
|
||
"bannerMessage": "Vzdálená synchronizace vyžaduje opětovné ověření"
|
||
},
|
||
"versionCheck": {
|
||
"error": "Chyba kontroly verze",
|
||
"checkFailed": "Nepodařilo se zkontrolovat aktualizace",
|
||
"upToDate": "Aplikace je aktuální",
|
||
"currentVersion": "Používáte verzi {{version}}",
|
||
"updateAvailable": "Aktualizace k dispozici",
|
||
"updateLinkLabel": "Aktualizace k dispozici – otevřete si poznámky k verzi na GitHubu",
|
||
"newVersionAvailable": "Je k dispozici nová verze! Používáte {{current}}, ale je k dispozici {{latest}}.",
|
||
"betaVersion": "Beta verze",
|
||
"betaVersionDesc": "Používáte verzi {{current}}, která je novější než nejnovější stabilní verze {{latest}}.",
|
||
"releasedOn": "Vydáno dne {{date}}",
|
||
"downloadUpdate": "Stáhnout aktualizaci",
|
||
"checking": "Kontrola aktualizací...",
|
||
"checkUpdates": "Zkontrolovat aktualizace",
|
||
"checkingUpdates": "Kontrola aktualizací...",
|
||
"updateRequired": "Vyžadována aktualizace"
|
||
},
|
||
"common": {
|
||
"close": "Blízko",
|
||
"minimize": "Minimalizovat",
|
||
"online": "Online",
|
||
"offline": "Offline",
|
||
"unknown": "Neznámý",
|
||
"continue": "Pokračovat",
|
||
"maintenance": "Údržba",
|
||
"degraded": "Degradovaný",
|
||
"error": "Chyba",
|
||
"warning": "Varování",
|
||
"unsavedChanges": "Neuložené změny",
|
||
"dismiss": "Propustit",
|
||
"more": "Více",
|
||
"loading": "Načítání...",
|
||
"optional": "Volitelný",
|
||
"connect": "Připojit",
|
||
"copied": "Zkopírováno",
|
||
"connecting": "Spojovací...",
|
||
"updateAvailable": "Aktualizace k dispozici",
|
||
"appName": "Termix",
|
||
"openInNewTab": "Otevřít v nové kartě",
|
||
"noReleases": "Žádná vydání",
|
||
"updatesAndReleases": "Aktualizace a vydání",
|
||
"newVersionAvailable": "Je k dispozici nová verze ({{version}}).",
|
||
"failedToFetchUpdateInfo": "Nepodařilo se načíst informace o aktualizaci",
|
||
"preRelease": "Předběžné vydání",
|
||
"noReleasesFound": "Nenalezena žádná vydání.",
|
||
"cancel": "Zrušit",
|
||
"username": "Uživatelské jméno",
|
||
"login": "Přihlášení",
|
||
"logout": "Odhlásit se",
|
||
"register": "Rejstřík",
|
||
"password": "Heslo",
|
||
"confirmPassword": "Potvrzení hesla",
|
||
"back": "Zadní",
|
||
"save": "Uložit",
|
||
"saving": "Ukládání...",
|
||
"delete": "Vymazat",
|
||
"rename": "Přejmenovat",
|
||
"edit": "Upravit",
|
||
"add": "Přidat",
|
||
"confirm": "Potvrdit",
|
||
"no": "Žádný",
|
||
"or": "NEBO",
|
||
"next": "Další",
|
||
"previous": "Předchozí",
|
||
"refresh": "Obnovit",
|
||
"language": "Jazyk",
|
||
"checking": "Kontrola...",
|
||
"checkingDatabase": "Kontrola připojení k databázi...",
|
||
"checkingAuthentication": "Kontrola ověření...",
|
||
"backendReconnected": "Připojení k serveru obnoveno",
|
||
"connectionDegraded": "Připojení k serveru přerušeno, obnova…",
|
||
"reload": "Znovu načíst",
|
||
"remove": "Odstranit",
|
||
"create": "Vytvořit",
|
||
"update": "Aktualizovat",
|
||
"copy": "Kopie",
|
||
"copyFailed": "Kopírování do schránky se nezdařilo",
|
||
"maximize": "Maximalizovat",
|
||
"restore": "Obnovit",
|
||
"of": "z",
|
||
"saved": "Uloženo",
|
||
"deleted": "Smazáno",
|
||
"deleteFailed": "Nepodařilo se smazat",
|
||
"saveFailed": "Uložení se nezdařilo",
|
||
"required": "Požadovaný"
|
||
},
|
||
"onboarding": {
|
||
"stepCounter": "Krok {{current}} z {{total}}",
|
||
"skip": "Přeskočit nastavení",
|
||
"next": "Další",
|
||
"finish": "Začít",
|
||
"welcomeTitle": "Vítejte v Termixu",
|
||
"welcomeIntro": "Termix spravuje vaše servery z jednoho místa. Toto nastavení trvá asi minutu a nic zde není trvalé.",
|
||
"welcome_hosts": "Zachraňte své servery",
|
||
"welcome_hosts_desc": "Uchovávejte všechny spravované stroje v jednom seznamu.",
|
||
"welcome_terminal": "Okamžité připojení",
|
||
"welcome_terminal_desc": "Otevřete terminál v záložce, žádný samostatný SSH klient.",
|
||
"welcome_files": "Procházení a úprava souborů",
|
||
"welcome_files_desc": "Nahrávání, stahování a úprava vzdálených souborů.",
|
||
"presetTitle": "Kolik toho chcete mít na obrazovce?",
|
||
"presetIntro": "Termix může být tak jednoduchý nebo tak podrobný, jak chcete. Vyberte si výchozí bod.",
|
||
"presetChangeLater": "Předvolby můžete přepínat nebo libovolné nastavení změnit později v Nastavení v části Rozhraní.",
|
||
"appearanceTitle": "Přizpůsobte si to",
|
||
"appearanceIntro": "Vyberte si téma, barvu zvýraznění a jazyk. Všechny tři možnosti lze později změnit v Nastavení.",
|
||
"featuresTitle": "Co dalšího Termix dělá",
|
||
"featuresIntro": "Každý server, který uložíte, lze otevřít ve více než jen terminálu. Zde je to, co čeká za ikonami vlevo.",
|
||
"feature_files": "Správce souborů",
|
||
"feature_files_desc": "Procházejte, nahrávejte, stahujte a upravujte soubory přes SFTP, aniž byste museli opustit aplikaci.",
|
||
"feature_desktop": "Vzdálená plocha",
|
||
"feature_desktop_desc": "Otevírejte relace RDP, VNC a Telnet na kartě, stejně jako SSH.",
|
||
"feature_tunnels": "Tunely",
|
||
"feature_tunnels_desc": "Přesměrování portů přes server pro přístup ke službám, které nejsou vystaveny.",
|
||
"feature_docker": "Přístavní dělník",
|
||
"feature_docker_desc": "Zobrazujte kontejnery, čtěte protokoly a sledujte statistiky na jakémkoli hostiteli s Dockerem.",
|
||
"feature_snippets": "Úryvky",
|
||
"feature_snippets_desc": "Uložte si často spouštíné příkazy a odešlete je do terminálu jedním kliknutím.",
|
||
"feature_automations": "Automatizace",
|
||
"feature_automations_desc": "Automaticky spouštět kroky, když se něco stane, a dostávat upozornění.",
|
||
"feature_metrics": "Metriky a upozornění",
|
||
"feature_metrics_desc": "Sledujte CPU, paměť a disk v průběhu času a nechte se upozornit, když se pokazí.",
|
||
"featuresRailHint": "Nepotřebujete jeden z nich? Skrýt libovolnou ikonu z postranního panelu v Nastavení v části Navigace.",
|
||
"workflowTitle": "Pohybujte se rychleji",
|
||
"workflowIntro": "Pár návyků, které vám ušetří nejvíce času, jakmile budete mít pár serverů.",
|
||
"workflow_palette": "Paleta příkazů",
|
||
"workflow_palette_desc": "Přejděte na libovolný server nebo akci psaním. Dvojitým klepnutím na Shift ji otevřete.",
|
||
"workflow_split": "Rozdělená obrazovka",
|
||
"workflow_split_desc": "Zobrazte až čtyři karty vedle sebe pro sledování protokolů během práce.",
|
||
"workflow_dock": "Boční panel",
|
||
"workflow_dock_desc": "Kliknutím prostředním tlačítkem myši nebo kliknutím pravým tlačítkem myši na ikonu postranního panelu ji otevřete jako kartu nebo ji připnete vpravo.",
|
||
"workflow_workspaces": "Pracovní prostory",
|
||
"workflow_workspaces_desc": "Uložte si sadu otevřených karet a celé rozvržení si znovu otevřete později.",
|
||
"securityTitle": "Bezpečné přihlašování",
|
||
"securityIntro": "Termix ukládá přihlašovací údaje, takže stojí za to se podívat, jak to funguje.",
|
||
"security_credentials": "Opakovaně použitelné přihlašovací údaje",
|
||
"security_credentials_desc": "Uložte si klíč nebo heslo jednou a připojte ho k libovolnému počtu serverů.",
|
||
"security_twofa": "Dvoufaktorový systém a přístupové klíče",
|
||
"security_twofa_desc": "Přidejte TOTP nebo přístupový klíč k účtu v Nastavení v části Zabezpečení.",
|
||
"security_identity": "ID Termixu",
|
||
"security_identity_desc": "Vydávejte krátkodobé SSH certifikáty namísto kopírování klíčů na každý server.",
|
||
"security_sharing": "Sdílení",
|
||
"security_sharing_desc": "Umožněte ostatním uživatelům přístup k serveru bez nutnosti předat heslo.",
|
||
"securityEncryptionNote": "Přihlašovací údaje jsou před uložením šifrovány a dešifrovány pouze tehdy, když je připojení potřebuje.",
|
||
"doneTitle": "Vše je připraveno",
|
||
"doneHeading": "Nastavení dokončeno",
|
||
"doneDesc": "Vyberte server z bočního panelu pro otevření terminálu, procházení jeho souborů nebo zobrazení jeho metrik.",
|
||
"done_settings": "Změnit cokoli později",
|
||
"done_settings_desc": "Témata, hustota rozvržení a zobrazené ikony – to vše se nachází v Nastavení.",
|
||
"done_rerun": "Chceš tohle znovu?",
|
||
"done_rerun_desc": "Otevřete Nastavení, přejděte do Rozhraní a vyberte Spustit instalaci, abyste si tyto kroky znovu prošli.",
|
||
"done_desktop": "Aplikace pro stolní počítače",
|
||
"done_desktop_desc": "Termix běží jako desktopová aplikace na Windows, macOS a Linuxu.",
|
||
"done_desktop_link": "Získejte desktopovou aplikaci",
|
||
"done_mobile": "Mobilní aplikace",
|
||
"done_mobile_desc": "Vezměte si své servery s sebou na iOS a Android.",
|
||
"done_mobile_link": "Stáhněte si mobilní aplikaci",
|
||
"done_docs": "Kompletní dokumentace",
|
||
"done_docs_desc": "Průvodci pro každou funkci, včetně těch, které zde nejsou uvedeny.",
|
||
"done_docs_link": "Otevřít dokumenty",
|
||
"done_cli": "Nástroj příkazového řádku",
|
||
"done_cli_desc": "Spravujte své servery z terminálu a používejte Termix ve vlastních skriptech.",
|
||
"done_cli_link": "Otevřete dokumentaci k rozhraní příkazového řádku",
|
||
"aiTitle": "Asistent s umělou inteligencí",
|
||
"aiIntro": "Termix může obsahovat volitelného asistenta s umělou inteligencí. Toto můžete později změnit v nastavení.",
|
||
"aiEnableTitle": "Zapněte to",
|
||
"aiEnableDesc": "Přidá asistenta, který si přečte vaše nastavení a navrhne změny, které schválíte. Vyžaduje poskytovatele, kterého dodáte, například místní Ollamu.",
|
||
"aiSkipTitle": "Nech to být",
|
||
"aiSkipDesc": "Termix funguje stejně jako teď. Asistent zůstává skrytý.",
|
||
"aiNote": "Nic se nikam neodesílá, dokud nepřidáte poskytovatele a neodešlete zprávu."
|
||
},
|
||
"nav": {
|
||
"home": "Domov",
|
||
"terminal": "Terminál",
|
||
"localTerminal": "Místní terminál",
|
||
"docker": "Přístavní dělník",
|
||
"tunnels": "Tunely",
|
||
"fileManager": "Správce souborů",
|
||
"serverStats": "Metriky hostitele",
|
||
"hostMetrics": "Metriky hostitele",
|
||
"admin": "Administrátor",
|
||
"termixId": "Průkaz totožnosti",
|
||
"userProfile": "Uživatelský profil",
|
||
"splitScreen": "Rozdělená obrazovka",
|
||
"confirmClose": "Zavřít tuto aktivní relaci?",
|
||
"close": "Blízko",
|
||
"cancel": "Zrušit",
|
||
"sshManager": "Správce SSH",
|
||
"cannotSplitTab": "Tuto záložku nelze rozdělit",
|
||
"hostTabTitle": "{{username}}@{{ip}}:{{port}}",
|
||
"copyPassword": "Kopírovat heslo",
|
||
"copySudoPassword": "Kopírovat heslo Sudo",
|
||
"passwordCopied": "Heslo zkopírováno do schránky",
|
||
"noPasswordAvailable": "Heslo není k dispozici",
|
||
"failedToCopyPassword": "Kopírování hesla se nezdařilo",
|
||
"refreshTab": "Obnovit připojení",
|
||
"renameTab": "Přejmenovat kartu",
|
||
"openFileManager": "Otevřít Správce souborů",
|
||
"dashboard": "Dashboard",
|
||
"networkGraph": "Síťový graf",
|
||
"tmuxMonitor": "Monitor Tmux",
|
||
"homepage": "Domovská stránka",
|
||
"quickConnect": "Rychlé připojení",
|
||
"sshTools": "SSH nástroje",
|
||
"history": "Dějiny",
|
||
"sessionLogs": "Protokoly relací",
|
||
"openAsTabHint": "Ctrl+kliknutí nebo prostřední kliknutí pro otevření jako záložky",
|
||
"openAsTab": "Otevřít jako kartu",
|
||
"openInRightDock": "Otevřít v pravém doku",
|
||
"closeRightDock": "Zavřít pravý dok",
|
||
"toggleRightDock": "Přepnout pravý dok",
|
||
"multiPanelHintTitle": "Práce s více než jedním panelem",
|
||
"multiPanelHintBody": "Nechte tento panel otevřený, i když se postranní panel používá k něčemu jinému. Dva způsoby, jak ho přesunout:",
|
||
"multiPanelHintTabHow": "Ctrl+klikněte na ikonu kolejnice nebo použijte tlačítko v této záhlaví.",
|
||
"multiPanelHintDockHow": "Klikněte pravým tlačítkem myši na ikonu kolejnice nebo použijte ikonu panelu v panelu záložek.",
|
||
"sidebarSettings": "Nastavení postranního panelu...",
|
||
"hosts": "Hostitelé",
|
||
"snippets": "Úryvky",
|
||
"macros": "Makra",
|
||
"fleets": "Flotily",
|
||
"automations": "Automatizace",
|
||
"workspaces": "Pracovní prostory",
|
||
"hostManager": "Hostitelský manažer",
|
||
"credentials": "Pověření",
|
||
"connections": "Připojení",
|
||
"alerts": "Upozornění",
|
||
"serial": "Seriál",
|
||
"roleAdministrator": "Správce",
|
||
"roleUser": "Uživatel",
|
||
"ai": "Umělá inteligence"
|
||
},
|
||
"hosts": {
|
||
"hosts": "Hostitelé",
|
||
"noHosts": "Žádní SSH hostitelé",
|
||
"retry": "Zkusit znovu",
|
||
"refresh": "Obnovit",
|
||
"optional": "Volitelný",
|
||
"downloadSample": "Stáhnout vzorek",
|
||
"failedToDeleteHost": "Nepodařilo se smazat {{name}}",
|
||
"importSkipExisting": "Importovat (přeskočit existující)",
|
||
"importSSHConfig": "Import z konfigurace SSH",
|
||
"connectionDetails": "Podrobnosti o připojení",
|
||
"ssh": "SSH",
|
||
"telnet": "Telnet",
|
||
"remoteDesktop": "Vzdálená plocha",
|
||
"port": "Přístav",
|
||
"username": "Uživatelské jméno",
|
||
"folder": "Složka",
|
||
"tags": "Štítky",
|
||
"pin": "Kolík",
|
||
"addHost": "Přidat hostitele",
|
||
"editHost": "Upravit hostitele",
|
||
"cloneHost": "Klonovat hostitele",
|
||
"enableTerminal": "Povolit terminál",
|
||
"enableTunnel": "Povolit tunel",
|
||
"enableFileManager": "Povolit Správce souborů",
|
||
"enableDocker": "Povolit Docker",
|
||
"defaultPath": "Výchozí cesta",
|
||
"connection": "Spojení",
|
||
"upload": "Nahrát",
|
||
"authentication": "Ověřování",
|
||
"password": "Heslo",
|
||
"passwordSaved": "Heslo uloženo, zadejte heslo pro změnu",
|
||
"key": "Klíč",
|
||
"credential": "Pověření",
|
||
"none": "Žádný",
|
||
"sshPrivateKey": "Soukromý klíč SSH",
|
||
"keyType": "Typ klíče",
|
||
"uploadFile": "Nahrát soubor",
|
||
"tabGeneral": "Generál",
|
||
"tabSsh": "SSH",
|
||
"tabTerminal": "Terminál",
|
||
"tabRdp": "PRV",
|
||
"tabVnc": "VNC",
|
||
"tabTunnels": "Tunely",
|
||
"tabDocker": "Přístavní dělník",
|
||
"tabFiles": "Soubory",
|
||
"tabStats": "Metriky hostitele",
|
||
"tabHostMetrics": "Metriky hostitele",
|
||
"tabTelnet": "Telnet",
|
||
"tabSharing": "Sdílení",
|
||
"tabAuthentication": "Ověřování",
|
||
"terminal": "Terminál",
|
||
"tunnel": "Tunel",
|
||
"fileManager": "Správce souborů",
|
||
"serverStats": "Metriky hostitele",
|
||
"status": "Postavení",
|
||
"folderRenamed": "Složka „{{oldName}}“ byla úspěšně přejmenována na „{{newName}}“",
|
||
"failedToRenameFolder": "Nepodařilo se přejmenovat složku",
|
||
"unsavedChangesDescription": "Změny hostitele nebyly uloženy. Chcete je zahodit?",
|
||
"keepEditing": "Pokračovat v úpravách",
|
||
"discardChanges": "Zahodit změny",
|
||
"movedToFolder": "Přesunuto {{count}} hostitelů do „{{folder}}“",
|
||
"editHostTooltip": "Upravit hostitele",
|
||
"statusChecks": "Kontroly stavu",
|
||
"metricsCollection": "Sbírka metrik",
|
||
"metricsInterval": "Interval sběru metrik",
|
||
"metricsIntervalDesc": "Jak často shromažďovat statistiky serveru (5 s - 1 h)",
|
||
"behavior": "Chování",
|
||
"themePreview": "Náhled motivu",
|
||
"theme": "Téma",
|
||
"fontFamily": "Rodina písem",
|
||
"fontSize": "Velikost písma",
|
||
"letterSpacing": "Rozteč písmen",
|
||
"lineHeight": "Výška řádku",
|
||
"cursorStyle": "Styl kurzoru",
|
||
"cursorBlink": "Blikání kurzoru",
|
||
"scrollbackBuffer": "Vyrovnávací paměť pro rolování zpět",
|
||
"bellStyle": "Styl zvonu",
|
||
"rightClickSelectsWord": "Kliknutí pravým tlačítkem myši vybere slovo",
|
||
"fastScrollModifier": "Modifikátor rychlého rolování",
|
||
"fastScrollSensitivity": "Citlivost rychlého rolování",
|
||
"sshAgentForwarding": "Přesměrování SSH agenta",
|
||
"backspaceMode": "Režim zpětného volání",
|
||
"startupSnippet": "Úryvek pro spuštění",
|
||
"selectSnippet": "Vyberte úryvek",
|
||
"forceKeyboardInteractive": "Vynutit interaktivní klávesnici",
|
||
"overrideCredentialUsername": "Přepsat uživatelské jméno pro přihlašovací údaje",
|
||
"overrideCredentialUsernameDesc": "Použijte výše uvedené uživatelské jméno místo uživatelského jména z přihlašovacích údajů.",
|
||
"oidcUsernameHint": "Použijte $oidc.preferred_username jako náhradu za vaše přihlašovací jméno OIDC.",
|
||
"tailscaleUsernameHint": "Musí se jednat o uživatele Unixu, kterému je vaše identita Tailscale udělena v SSH ACL tailnetu, nikoli nutně o uživatele root.",
|
||
"jumpHostChain": "Přejít k hostitelskému řetězci",
|
||
"portKnocking": "Klepnutí na přístav",
|
||
"addKnock": "Přidat port",
|
||
"addProxyNode": "Přidat uzel",
|
||
"proxyNode": "Proxy uzel",
|
||
"proxyType": "Typ proxy serveru",
|
||
"quickActions": "Rychlé akce",
|
||
"sudoPasswordAutoFill": "Automatické vyplňování hesla Sudo",
|
||
"sudoPassword": "Heslo Sudo",
|
||
"keepaliveInterval": "Interval udržování aktivity (ms)",
|
||
"moshCommand": "Příkaz MOSH",
|
||
"environmentVariables": "Proměnné prostředí",
|
||
"addVariable": "Přidat proměnnou",
|
||
"docker": "Přístavní dělník",
|
||
"copyTerminalUrl": "Kopírovat URL terminálu",
|
||
"copyFileManagerUrl": "Kopírovat URL Správce souborů",
|
||
"copyRemoteDesktopUrl": "Kopírovat URL adresu vzdálené plochy",
|
||
"failedToConnect": "Nepodařilo se připojit ke konzoli",
|
||
"connect": "Připojit",
|
||
"disconnect": "Odpojit",
|
||
"start": "Start",
|
||
"enableStatusCheck": "Povolit kontrolu stavu",
|
||
"enableMetrics": "Povolit metriky",
|
||
"bulkUpdateFailed": "Hromadná aktualizace selhala",
|
||
"selectAll": "Vybrat vše",
|
||
"deselectAll": "Zrušit výběr všeho",
|
||
"protocols": "Protokoly",
|
||
"secureShell": "Bezpečné prostředí",
|
||
"virtualNetwork": "Virtuální síť",
|
||
"unencryptedShell": "Nešifrovaný shell",
|
||
"addressIp": "Adresa / IP adresa",
|
||
"friendlyName": "Přátelský název",
|
||
"macAddress": "MAC adresa",
|
||
"wolBroadcastAddress": "Vysílací adresa WoL",
|
||
"wolBroadcastAddressDesc": "Volitelné směrované vysílání pro sítě Docker/směrované sítě (např. 192.168.1.255). Pro použití adresy 255.255.255.255 ponechte prázdné.",
|
||
"folderAndAdvanced": "Složka a pokročilé",
|
||
"showAdvancedSettings": "Zobrazit pokročilá nastavení",
|
||
"hideAdvancedSettings": "Skrýt pokročilá nastavení",
|
||
"privateNotes": "Soukromé poznámky",
|
||
"privateNotesPlaceholder": "Podrobnosti o tomto serveru...",
|
||
"pinToTop": "Připnout nahoru",
|
||
"pinToTopDesc": "Vždy zobrazovat tohoto hostitele na začátku seznamu",
|
||
"portKnockingSequence": "Sekvence klepání na port",
|
||
"addKnockBtn": "Přidat klepání",
|
||
"noPortKnocking": "Není nakonfigurováno žádné klepání portů.",
|
||
"knockPort": "Knock Port",
|
||
"protocol": "Protokol",
|
||
"delayAfterMs": "Zpoždění po (ms)",
|
||
"useSocks5Proxy": "Použít proxy SOCKS5",
|
||
"useSocks5ProxyDesc": "Směrování připojení přes proxy server",
|
||
"connectionOrigin": "Původ připojení",
|
||
"connectionOriginDesc": "Odkud pochází SSH připojení tohoto hostitele. Přepíše globální výchozí nastavení desktopové aplikace.",
|
||
"connectionOriginDefault": "Použít výchozí nastavení",
|
||
"connectionOriginLocal": "Toto zařízení (lokální síť)",
|
||
"connectionOriginRemote": "Vzdálený server",
|
||
"proxyHost": "Proxy hostitel",
|
||
"proxyPort": "Proxy port",
|
||
"proxyUsername": "Uživatelské jméno proxy serveru",
|
||
"proxyPassword": "Heslo proxy serveru",
|
||
"proxySingleMode": "Jeden proxy",
|
||
"proxyChainMode": "Řetězec proxy",
|
||
"you": "Vy",
|
||
"jumpHostChainLabel": "Přejít k hostitelskému řetězci",
|
||
"addJumpBtn": "Přidat skok",
|
||
"noJumpHosts": "Nejsou nakonfigurováni žádní hostitelé pro přechod.",
|
||
"selectAServer": "Vyberte server...",
|
||
"sshPort": "SSH port",
|
||
"authMethod": "Metoda ověřování",
|
||
"authenticationMethod": "Metoda ověřování",
|
||
"authenticationMethodDesc": "Vyberte jednu metodu, kterou Termix použije k ověření tohoto SSH připojení. Ostatní metody se nebudou automaticky zkoušet.",
|
||
"storedCredential": "Uložené přihlašovací údaje",
|
||
"selectACredential": "Vyberte pověření...",
|
||
"vaultProfile": "Profil podepisujícího trezoru",
|
||
"selectAVaultProfile": "Vyberte profil úložiště...",
|
||
"vaultProfileHint": "Nastavení pocházejí ze sdíleného profilu; po připojení se do úložiště přihlásíte přes OIDC. Žádné tajné kódy se neukládají.",
|
||
"vaultNewProfile": "Nový profil",
|
||
"vaultManageProfiles": "Správa profilů úložiště",
|
||
"vaultAddrLabel": "Adresa trezoru",
|
||
"vaultNamespaceLabel": "Jmenný prostor",
|
||
"vaultOidcMountLabel": "Připojení autorizace OIDC",
|
||
"vaultOidcRoleLabel": "Role OIDC",
|
||
"vaultSshMountLabel": "SSH tajemství Mount",
|
||
"vaultSshRoleLabel": "Role SSH podepisujícího",
|
||
"vaultValidPrincipalsLabel": "Platné principy",
|
||
"vaultKeyTypeLabel": "Typ dočasného klíče",
|
||
"vaultSharedLabel": "Sdílet se všemi uživateli",
|
||
"vaultCreateProfile": "Vytvořit profil",
|
||
"vaultProfileCreated": "Profil úložiště vytvořen",
|
||
"vaultProfileSaved": "Profil trezoru uložen",
|
||
"vaultProfileDeleted": "Profil trezoru smazán",
|
||
"vaultProfileSaveFailed": "Uložení profilu úložiště se nezdařilo.",
|
||
"vaultProfileDeleteFailed": "Profil v úložišti se nepodařilo smazat.",
|
||
"vaultSaveProfile": "Uložit profil",
|
||
"vaultProfileValidationError": "Jméno, adresa trezoru a role SSH signatáře jsou povinné.",
|
||
"vaultNoProfiles": "Zatím žádné profily v úložišti Vault.",
|
||
"vaultSharedBadge": "sdílené",
|
||
"keyTypeLabel": "Typ klíče",
|
||
"keyTypeAuto": "Automatická detekce",
|
||
"keyPasteTab": "Pasta",
|
||
"keyUploadTab": "Nahrát",
|
||
"keyFileLoaded": "Načten soubor s klíčem",
|
||
"keyUploadClick": "Kliknutím nahrajete soubory .pem / .key / .ppk",
|
||
"clearKey": "Klávesa Vymazat",
|
||
"keySaved": "SSH klíč uložen",
|
||
"keyReplaceNotice": "vložte níže nový klíč, kterým jej nahradíte",
|
||
"keyPassphraseSaved": "Heslo uloženo, zadejte heslo pro změnu.",
|
||
"replaceKey": "Vyměňte klíč",
|
||
"docsLink": "Zobrazit dokumenty",
|
||
"opksshLabel": "OPKSSH",
|
||
"opksshDesc": "Přihlaste se k tomuto hostiteli pomocí svého poskytovatele identity namísto hesla nebo klíče. Vyžaduje nastavení OPKSSH na serveru.",
|
||
"warpgateLabel": "Brána Warpgate",
|
||
"warpgateDesc": "Tento hostitel se připojuje přes proxy Warpgate SSH. Termix po ověření automaticky zpracuje proces schvalování v prohlížeči.",
|
||
"agentLabel": "SSH agent",
|
||
"agentDesc": "Ověřte se pomocí SSH agenta spuštěného na serveru Termix (Bitwarden, 1Password, gpg-agent, KeeAgent, ssh-agent). Agent musí běžet na počítači, kde je hostován Termix.",
|
||
"agentAuthenticationDesc": "K ověření tohoto připojení použijte klíče od SSH agenta. Pro použití SSH_AUTH_SOCK nechte cestu k socketu prázdnou.",
|
||
"agentSocketPathLabel": "Cesta soketu agenta",
|
||
"agentSocketPathPlaceholder": "Pro použití SSH_AUTH_SOCK ponechte prázdné.",
|
||
"agentSocketPathHint": "Nechte prázdné pro automatickou detekci z proměnné prostředí SSH_AUTH_SOCK nebo zadejte vlastní cestu k socketu (např. /run/user/1000/gnupg/S.gpg-agent.ssh).",
|
||
"shareSshAuthLabel": "Sdílení ověřování SSH",
|
||
"shareSshAuthDesc": "Poskytněte příjemcům šifrované kopie SSH ověření tohoto hostitele. Osobní přihlašovací údaje příjemce mají stále přednost.",
|
||
"tailscaleDeviceSelect": "Vyberte zařízení Tailscale",
|
||
"tailscaleDeviceSelectPlaceholder": "Vyberte zařízení...",
|
||
"tailscaleNoApiKey": "Není nakonfigurován žádný klíč Tailscale API. Přidejte jej v nastavení správce, abyste povolili vyhledávání zařízení.",
|
||
"tailscaleDocsLink": "Zobrazit dokumenty",
|
||
"tailscaleLoadingDevices": "Načítání zařízení...",
|
||
"tailscaleDeviceLoadFailed": "Nepodařilo se načíst zařízení Tailscale. Zkontrolujte URL API a síťové připojení.",
|
||
"tailscaleNoDevices": "Ve vaší koncové síti nebyla nalezena žádná zařízení.",
|
||
"tailscaleDeviceAutoFill": "Výběrem zařízení se automaticky vyplní IP adresa hostitele.",
|
||
"forceKeyboardInteractiveLabel": "Interaktivní klávesnice Force",
|
||
"forceKeyboardInteractiveShortDesc": "Vynucení ručního zadání hesla, i když jsou k dispozici klíče",
|
||
"allowLegacyAlgorithmsLabel": "Povolit starší algoritmy",
|
||
"allowLegacyAlgorithmsDesc": "Povolte zastaralé algoritmy SSH (ssh-dss, ssh-rsa, diffie-hellman-group1-sha1, hmac-md5, 3des-cbc) pro připojení ke starým zařízením, která nelze upgradovat.",
|
||
"insecure": "Nejistý/á",
|
||
"terminalAppearance": "Vzhled terminálu",
|
||
"colorTheme": "Barevný motiv",
|
||
"fontFamilyLabel": "Rodina písem",
|
||
"fontFamilyCustomOption": "Zvyk...",
|
||
"fontFamilyCustomPlaceholder": "Přesný název písma, např. MesloLGS NF",
|
||
"fontFamilyCustomHint": "Vyberte si dodané písmo nebo zvolte možnost Vlastní a zadejte přesný název písma, které je již ve vašem systému nainstalováno (např. MesloLGS NF, Noto Sans Mono). Termix písma za vás nainstalovat nemůže, nejprve si ho nainstalujte do svého operačního systému.",
|
||
"fontSizeLabel": "Velikost písma",
|
||
"cursorStyleLabel": "Styl kurzoru",
|
||
"letterSpacingPx": "Rozteč písmen (px)",
|
||
"lineHeightLabel": "Výška řádku",
|
||
"bellStyleLabel": "Styl zvonu",
|
||
"backspaceModeLabel": "Režim zpětného volání",
|
||
"cursorBlinking": "Kurzor bliká",
|
||
"cursorBlinkingDesc": "Povolit blikající animaci kurzoru terminálu",
|
||
"rightClickSelectsWordLabel": "Kliknutí pravým tlačítkem myši Vybere slovo",
|
||
"rightClickSelectsWordShortDesc": "Vyberte slovo pod kurzorem kliknutím pravým tlačítkem myši",
|
||
"macOptionIsMetaLabel": "Klávesa Option odesílá metadata",
|
||
"macOptionIsMetaShortDesc": "Zakázat psaní speciálních znaků (například @ nebo |) pomocí klávesy Option/Alt v systému macOS namísto odesílání Meta",
|
||
"backgroundImageLabel": "URL adresa obrázku na pozadí",
|
||
"backgroundImageDesc": "Volitelná URL adresa pro obrázek na pozadí terminálu",
|
||
"backgroundImageOpacityLabel": "Neprůhlednost obrázku na pozadí",
|
||
"customThemeColors": "Vlastní barvy",
|
||
"customThemeBackground": "Pozadí",
|
||
"customThemeForeground": "Popředí",
|
||
"customThemeCursor": "Kurzor",
|
||
"customThemeCursorAccent": "Akcent kurzoru",
|
||
"customThemeSelection": "Výběr",
|
||
"customThemeAnsiColors": "Barvy ANSI",
|
||
"customThemeBlack": "Černý",
|
||
"customThemeRed": "Červený",
|
||
"customThemeGreen": "Zelený",
|
||
"customThemeYellow": "Žluť",
|
||
"customThemeBlue": "Modrý",
|
||
"customThemeMagenta": "Purpurová",
|
||
"customThemeCyan": "Azurová",
|
||
"customThemeWhite": "Bílý",
|
||
"customThemeBrightBlack": "Jasně černá",
|
||
"customThemeBrightRed": "Jasně červená",
|
||
"customThemeBrightGreen": "Jasně zelená",
|
||
"customThemeBrightYellow": "Jasně žlutá",
|
||
"customThemeBrightBlue": "Jasně modrá",
|
||
"customThemeBrightMagenta": "Světle purpurová",
|
||
"customThemeBrightCyan": "Jasně azurová",
|
||
"customThemeBrightWhite": "Jasně bílá",
|
||
"customThemeResetTooltip": "Obnovit na výchozí nastavení",
|
||
"savedThemesLabel": "Uložená témata",
|
||
"saveAsGlobalTheme": "Uložit jako globální motiv",
|
||
"saveGlobalThemeNamePrompt": "Zadejte název tohoto motivu",
|
||
"saveGlobalThemeSuccess": "Téma uloženo",
|
||
"saveGlobalThemeError": "Uložení motivu se nezdařilo",
|
||
"applyGlobalThemeTooltip": "Použít toto téma",
|
||
"deleteGlobalThemeTooltip": "Smazat toto téma",
|
||
"noSavedThemes": "Zatím žádné uložené motivy",
|
||
"syntaxHighlightingLabel": "Zvýrazňování syntaxe",
|
||
"syntaxHighlightingDesc": "Obarvení výstupu terminálu (chyby, cesty, IP adresy, časová razítka)",
|
||
"syntaxHighlightingCategories": "Zvýraznit kategorie",
|
||
"syntaxHighlightingCategoriesDesc": "Vyberte, které typy obsahu chcete obarvit",
|
||
"syntaxCategoryLogLevels": "Úrovně protokolů",
|
||
"syntaxCategoryLogLevelsDesc": "chyba, varování, informace, ladění, fatální",
|
||
"syntaxCategoryPaths": "Cesty k souborům",
|
||
"syntaxCategoryPathsDesc": "/usr/share/doc, ~/soubor.txt",
|
||
"syntaxCategoryTimestamps": "Časová razítka",
|
||
"syntaxCategoryTimestampsDesc": "[12:34:56], 15. 1. 2024",
|
||
"syntaxCategoryIpAddresses": "IP adresy",
|
||
"syntaxCategoryIpAddressesDesc": "192.168.1.1, 10.0.0.1:8080",
|
||
"syntaxCategoryUrls": "URL adresy",
|
||
"syntaxCategoryUrlsDesc": "https://example.com",
|
||
"syntaxCategoryNumbers": "Označená čísla",
|
||
"syntaxCategoryNumbersDesc": "port 8080, výstup 1, stav 404",
|
||
"behaviorAndAdvanced": "Chování a pokročilé",
|
||
"scrollbackBufferLabel": "Vyrovnávací paměť pro rolování zpět",
|
||
"scrollbackMaxLines": "Maximální počet řádků uchovávaných v historii",
|
||
"sshAgentForwardingLabel": "Přesměrování SSH agenta",
|
||
"sshAgentForwardingShortDesc": "Povolte tomuto vzdálenému hostiteli používat vašeho lokálního SSH agenta pro další připojení. Toto není pro ověřování agenta vyžadováno.",
|
||
"useSSHTitleLabel": "Použít název okna SSH",
|
||
"useSSHTitleDesc": "Aktualizujte název karty z názvu okna shellu namísto názvu hostitele",
|
||
"enableAutoMosh": "Povolit Auto-Mosh",
|
||
"enableAutoMoshDesc": "Pokud je k dispozici, preferujte Mosh před SSH.",
|
||
"enableAutoTmux": "Povolit Auto-Tmux",
|
||
"enableAutoTmuxDesc": "Automatické spuštění nebo připojení k relaci tmux",
|
||
"enableSessionLogging": "Protokolování relací",
|
||
"enableSessionLoggingDesc": "Zaznamenejte výstup terminálové relace pro pozdější kontrolu",
|
||
"allowSessionSharing": "Povolit sdílení relace",
|
||
"allowSessionSharingDesc": "Umožnit sdílení živých relací na tomto hostiteli prostřednictvím odkazu nebo s ostatními uživateli",
|
||
"enableCommandHistory": "Historie příkazů",
|
||
"enableCommandHistoryDesc": "Zaznamenávejte příkazy spouštěné v tomto terminálu pro historii a automatické dokončování",
|
||
"localEchoLabel": "Místní ozvěna",
|
||
"localEchoDesc": "Předvídat bezpečně tisknutelné stisky kláves lokálně na pomalém připojení. Výzvy k zadání hesla a ovládací prvky se nikdy nezobrazují.",
|
||
"localEchoDefault": "Použít globální nastavení",
|
||
"localEchoOff": "Vypnuto",
|
||
"localEchoAuto": "Automatický",
|
||
"localEchoOn": "Vždy zapnuto",
|
||
"linkClickBehaviorLabel": "Chování při kliknutí na odkaz",
|
||
"linkClickBehaviorDesc": "Řídí, co se stane po kliknutí na odkaz v terminálu. Pro nastavení na úrovni aplikace použijte možnost „Výchozí“.",
|
||
"linkClickBehaviorDefault": "Výchozí (podle nastavení aplikace)",
|
||
"linkClickBehaviorConfirm": "Zobrazit vyskakovací okno pro otevření nebo kopírování",
|
||
"linkClickBehaviorDirect": "Otevřít přímo",
|
||
"sudoPasswordAutoFillLabel": "Automatické vyplňování hesla Sudo",
|
||
"sudoPasswordAutoFillShortDesc": "Automaticky zadejte heslo sudo po zobrazení výzvy",
|
||
"sudoPasswordAutoFillDesc": "Uložte heslo sudo, aby metriky hostitele, výzvy terminálu a další mohly automaticky spouštět privilegované příkazy.",
|
||
"sudoPasswordLabel": "Heslo Sudo",
|
||
"sudoPasswordSaved": "Heslo uloženo, zadejte heslo pro změnu",
|
||
"environmentVariablesLabel": "Proměnné prostředí",
|
||
"addVariableBtn": "Přidat proměnnou",
|
||
"noEnvVars": "Nejsou nakonfigurovány žádné proměnné prostředí.",
|
||
"fastScrollModifierLabel": "Modifikátor rychlého rolování",
|
||
"fastScrollSensitivityLabel": "Citlivost rychlého rolování",
|
||
"moshCommandLabel": "Mosh Command",
|
||
"startupSnippetLabel": "Úryvek pro spuštění",
|
||
"keepaliveIntervalLabel": "Interval udržování aktivity (sekundy)",
|
||
"maxKeepaliveMisses": "Max. chyb v Keepalive",
|
||
"tunnelSettings": "Nastavení tunelu",
|
||
"enableTunneling": "Povolit tunelování",
|
||
"enableTunnelingDesc": "Povolit funkci SSH tunelu pro tohoto hostitele",
|
||
"serverTunnelsSection": "Serverové tunely",
|
||
"addTunnelBtn": "Přidat tunel",
|
||
"noTunnelsConfigured": "Nejsou nakonfigurovány žádné tunely.",
|
||
"tunnelLabel": "Tunel {{number}}",
|
||
"tunnelType": "Typ tunelu",
|
||
"tunnelModeLocalDesc": "Přesměrování lokálního portu na port na vzdáleném serveru (nebo na hostitele, který je z něj dosažitelný).",
|
||
"tunnelModeRemoteDesc": "Přesměrujte port na vzdáleném serveru zpět na lokální port na vašem počítači.",
|
||
"tunnelModeDynamicDesc": "Vytvořte proxy SOCKS5 na lokálním portu pro dynamické přesměrování portů.",
|
||
"sameHost": "Tento hostitel (přímý tunel)",
|
||
"endpointHost": "Koncový hostitel",
|
||
"endpointHostPlaceholder": "Stejný hostitel, hostitel SSH nebo dostupný hostitel/IP adresa",
|
||
"endpointPort": "Koncový port",
|
||
"bindHost": "Vázat hostitele",
|
||
"sourcePort": "Zdrojový port",
|
||
"maxRetries": "Maximální počet opakování",
|
||
"retryIntervalS": "Interval opakování (s)",
|
||
"autoStartLabel": "Automatické spuštění",
|
||
"autoStartDesc": "Automaticky připojit tento tunel po načtení hostitele",
|
||
"tunnelConnecting": "Spojující tunel...",
|
||
"tunnelDisconnected": "Tunel odpojen",
|
||
"failedToConnectTunnel": "Připojení se nezdařilo",
|
||
"failedToDisconnectTunnel": "Odpojení se nezdařilo",
|
||
"dockerIntegration": "Integrace Dockeru",
|
||
"enableDockerMonitor": "Povolit Docker",
|
||
"enableDockerMonitorDesc": "Monitorování a správa kontejnerů na tomto hostiteli pomocí Dockeru",
|
||
"containerRuntime": "Běh kontejneru",
|
||
"containerRuntimeDesc": "Vyberte rozhraní CLI používané pro správu kontejnerů na tomto hostiteli",
|
||
"containerRuntimeDocker": "Přístavní dělník",
|
||
"containerRuntimePodman": "Podman",
|
||
"enableTmuxMonitor": "Povolit monitorování Tmux",
|
||
"enableTmuxMonitorDesc": "Zobrazit tohoto hostitele v Tmux Monitoru a přidat jeho tmux akce do postranního panelu",
|
||
"enableTerminalToolbar": "Povolit panel nástrojů terminálu",
|
||
"enableTerminalToolbarDesc": "Zobrazit panel nástrojů pro rychlý přístup ukotvený v aktivním terminálu pro nástroje a aktuální statistiky tohoto hostitele",
|
||
"tabProxmox": "Proxmox",
|
||
"proxmoxIntegration": "Integrace Proxmoxu",
|
||
"enableProxmox": "Povolit Proxmox",
|
||
"enableProxmoxDesc": "Označit tento hostitel jako uzel Proxmox. Umožňuje vyhledávání hostů a import přímo z tohoto hostitele.",
|
||
"proxmoxDefaultAuthType": "Výchozí typ ověření",
|
||
"proxmoxDefaultAuthTypeDesc": "Metoda ověřování použitá na importované hostující hostitele. Vyberte typ ověřování, který odpovídá způsobu, jakým se připojujete k hostům.",
|
||
"authTypePassword": "Heslo",
|
||
"authTypeKey": "SSH klíč",
|
||
"authTypeCredential": "Pověření",
|
||
"authTypeOpkssh": "OPKSSH",
|
||
"authTypeNone": "Žádný",
|
||
"proxmoxDefaultCredential": "Výchozí přihlašovací údaje",
|
||
"proxmoxDefaultCredentialDesc": "Přihlašovací údaje používané pro importované hostující hostitele, pokud je typ ověření nastaven na Přihlašovací údaje.",
|
||
"proxmoxWindowsDetection": "Detekce Windows / RDP",
|
||
"proxmoxWindowsDetectionDesc": "Vzory názvů oddělené čárkami, které spouštějí RDP místo SSH (bez rozlišení velkých a malých písmen)",
|
||
"proxmoxDockerDetection": "Detekce Dockeru",
|
||
"proxmoxDockerDetectionDesc": "Vzory názvů oddělených čárkami, které Dockeru umožňují vyhledávání hostů",
|
||
"proxmoxPreferredRanges": "Preferované rozsahy IP adres",
|
||
"proxmoxPreferredRangesDesc": "Prefixy oddělené čárkami v pořadí priority pro výběr IP adresy, když má host více rozhraní",
|
||
"proxmoxAutoSync": "Automatická synchronizace hostů",
|
||
"proxmoxAutoSyncDesc": "Pravidelně vyhledávejte tento uzel Proxmox a vytvářejte nebo aktualizujte importované hostující hostitele, zatímco je vaše relace odemčená.",
|
||
"proxmoxSyncInterval": "Interval synchronizace (minuty)",
|
||
"proxmoxSyncIntervalDesc": "Minimálně 5 minut. Plánovač přeskakuje uzamčené uživatelské relace.",
|
||
"proxmoxMarkMissing": "Označte chybějící hosty",
|
||
"proxmoxMarkMissingDesc": "Přidat tag proxmox-missing, když dříve importovaný host zmizí, místo aby byl smazán.",
|
||
"proxmoxLastSync": "Poslední synchronizace",
|
||
"proxmoxLastSyncNever": "Zatím nesynchronizováno",
|
||
"proxmoxLastSyncNoResult": "Žádné podrobnosti o výsledcích",
|
||
"proxmoxLastSyncSummary": "{{created}} vytvořeno, {{updated}} aktualizováno, {{markedMissing}} chybí, {{skipped}} přeskočeno",
|
||
"proxmoxLastSyncStatus": {
|
||
"success": "Úspěch",
|
||
"error": "Selhalo",
|
||
"pending": "Čeká na vyřízení"
|
||
},
|
||
"proxmoxDiscoverAction": "Objevte a importujte hosty Proxmoxu",
|
||
"proxmoxImportTitle": "Import z Proxmoxu",
|
||
"proxmoxSelectHost": "Vyberte hostitele Proxmox…",
|
||
"proxmoxDiscover": "Objevit",
|
||
"proxmoxDiscovering": "Objevování…",
|
||
"proxmoxDiscoverGuests": "Objevte hosty",
|
||
"proxmoxGuestsSelected_one": "{{count}} host — {{selected}} vybráno",
|
||
"proxmoxGuestsSelected_other": "{{count}} hosté — {{selected}} vybráno",
|
||
"proxmoxSelectAll": "Vybrat vše",
|
||
"proxmoxDeselectAll": "Zrušit výběr všeho",
|
||
"proxmoxNoGuests": "Na tomto uzlu Proxmox nebyli nalezeni žádní hosté.",
|
||
"proxmoxImportButton_one": "Importovat hostitele {{count}}",
|
||
"proxmoxImportButton_other": "Importovat hostitele {{count}}",
|
||
"proxmoxResultImported": "{{count}} importováno",
|
||
"proxmoxResultUpdated": "{{count}} aktualizováno",
|
||
"proxmoxResultFailed": "{{count}} selhalo",
|
||
"proxmoxResultSkippedNoIp": "{{count}} přeskočeno (nenalezena žádná IP adresa)",
|
||
"proxmoxImportComplete": "Import Proxmoxu dokončen: {{summary}}",
|
||
"proxmoxDiscoveryFailed": "Objev selhal",
|
||
"proxmoxImportFailed": "Import se nezdařil",
|
||
"enableProxmoxStats": "Povolit statistiky Proxmoxu",
|
||
"enableProxmoxStatsDesc": "Zobrazit kartu Statistiky Proxmoxu pro tohoto hostitele s aktivními statistikami uzlů, hostů, úložišť a clusterů shromážděnými přes SSH.",
|
||
"proxmoxStatsPollInterval": "Interval dotazování (sekundy)",
|
||
"proxmoxStatsPollIntervalDesc": "Minimálně 15 sekund. Jak často aktualizovat statistiky uzlu Proxmox.",
|
||
"proxmoxStatsNodeOverride": "Přepsání názvu uzlu",
|
||
"proxmoxStatsNodeOverrideDesc": "Přepsat automatickou detekci názvu uzlu Proxmox (ve výchozím nastavení detekováno pomocí názvu hostitele).",
|
||
"proxmoxStatsNodeOverridePlaceholder": "Automaticky detekováno z názvu hostitele",
|
||
"proxmoxStatsUrlCopied": "URL statistik Proxmoxu zkopírována do schránky",
|
||
"copyProxmoxStatsUrlAction": "Kopírovat URL statistik Proxmoxu",
|
||
"enableFileManagerMonitor": "Povolit Správce souborů",
|
||
"enableFileManagerMonitorDesc": "Procházení a správa souborů na tomto hostiteli přes SFTP",
|
||
"scpLegacyLabel": "Starší režim SCP",
|
||
"scpLegacyDesc": "Pro servery, které nepodporují subsystém SFTP (např. vestavěné nebo minimální SSH servery), použijte starší přenos souborů.",
|
||
"defaultPathLabel": "Výchozí cesta",
|
||
"fileManagerPathHint": "Adresář, který se má otevřít při spuštění správce souborů pro tento hostitel.",
|
||
"statusChecksLabel": "Kontroly stavu",
|
||
"enableStatusChecks": "Povolit kontroly stavu",
|
||
"enableStatusChecksDesc": "Pravidelně pingovat tento hostitel pro ověření dostupnosti",
|
||
"useGlobalInterval": "Použít globální interval",
|
||
"useGlobalIntervalDesc": "Přepsat intervalem kontroly stavu na úrovni celého serveru",
|
||
"checkIntervalS": "Kontrolní interval(y)",
|
||
"checkIntervalDesc": "Sekundy mezi jednotlivými pingy pro připojení",
|
||
"metricsCollectionLabel": "Sbírka metrik",
|
||
"enableMetricsLabel": "Povolit metriky",
|
||
"enableMetricsDesc": "Shromažďujte metriky CPU, RAM, disku a další z tohoto hostitele",
|
||
"useGlobalMetrics": "Použít globální interval",
|
||
"useGlobalMetricsDesc": "Přepsat intervalem metrik na úrovni celého serveru",
|
||
"metricsIntervalS": "Interval metrik (y)",
|
||
"metricsIntervalDesc2": "Sekundy mezi snímky metrik",
|
||
"excludedMountsLabel": "Vyloučené držáky",
|
||
"monitoredMountsLabel": "Vlastní monitorované cesty",
|
||
"monitoredMountsDesc": "Přidejte cesty, které nejsou zobrazeny jako samostatné připojení, včetně cest připojených k Home Assistant, jako je /config.",
|
||
"monitoredMountPathPlaceholder": "Cesta (/config, /mnt/data)",
|
||
"monitoredMountLabelPlaceholder": "Štítek (volitelné)",
|
||
"addMonitoredMount": "Přidat cestu",
|
||
"excludedMountsDesc": "Skrýt konkrétní body připojení nebo typy souborových systémů (např. nfs, cifs) před využitím disku a upozorněními pro tento hostitel.",
|
||
"excludedMountsPlaceholder": "Cesta připojení (/mnt/nas) nebo typ souborového systému (nfs, cifs)",
|
||
"excludedMountsEmpty": "Žádné připojení nejsou vyloučena. Zobrazí se všechny detekované souborové systémy.",
|
||
"addExcludedMount": "Přidat",
|
||
"visibleWidgets": "Viditelné widgety",
|
||
"widgetsMovedToHostMetrics": "Karty se nyní přidávají, uspořádávají a mění jejich velikost přímo na kartě Metriky hostitele. Otevřete Metriky hostitele pro tohoto hostitele a pomocí možnosti Přizpůsobit vyberte, které karty se zobrazí.",
|
||
"cpuUsageLabel": "Využití CPU",
|
||
"cpuUsageDesc": "Procento CPU, průměrné zatížení, graf sparkline",
|
||
"memoryLabel": "Využití paměti",
|
||
"memoryDesc": "Využití RAM, swap, mezipaměť",
|
||
"storageLabel": "Využití disku",
|
||
"storageDesc": "Využití disku na bod připojení",
|
||
"networkLabel": "Síťová rozhraní",
|
||
"networkDesc": "Seznam rozhraní a šířka pásma",
|
||
"uptimeLabel": "Doba provozuschopnosti",
|
||
"uptimeDesc": "Doba provozuschopnosti a doba spouštění systému",
|
||
"systemInfoLabel": "Informace o systému",
|
||
"systemInfoDesc": "OS, jádro, název hostitele, architektura",
|
||
"recentLoginsLabel": "Nedávná přihlášení",
|
||
"recentLoginsDesc": "Úspěšné a neúspěšné přihlášení",
|
||
"topProcessesLabel": "Nejdůležitější procesy",
|
||
"topProcessesDesc": "PID, CPU%, MEM%, příkaz",
|
||
"listeningPortsLabel": "Poslouchající porty",
|
||
"listeningPortsDesc": "Otevřené porty s procesem a stavem",
|
||
"firewallLabel": "Firewall",
|
||
"firewallDesc": "Stav firewallu, AppArmoru a SELinuxu",
|
||
"quickActionsLabel": "Rychlé akce",
|
||
"quickActionsToolbar": "Rychlé akce se zobrazují jako tlačítka v panelu nástrojů Metriky hostitele pro spuštění příkazů jedním kliknutím.",
|
||
"noQuickActions": "Zatím žádné rychlé akce.",
|
||
"buttonLabel": "Štítek tlačítka",
|
||
"selectSnippetPlaceholder": "Vybrat úryvek...",
|
||
"addActionBtn": "Přidat akci",
|
||
"hostSharedSuccessfully": "Hostitel byl úspěšně sdílen",
|
||
"failedToShareHost": "Sdílení hostitele se nezdařilo",
|
||
"accessRevoked": "Přístup zrušen",
|
||
"failedToRevokeAccess": "Zrušení přístupu se nezdařilo",
|
||
"cancelBtn": "Zrušit",
|
||
"savingBtn": "Ukládání...",
|
||
"addHostBtn": "Přidat hostitele",
|
||
"hostUpdated": "Hostitel aktualizován",
|
||
"hostCreated": "Hostitel vytvořen",
|
||
"failedToSave": "Uložení hostitele se nezdařilo",
|
||
"credentialUpdated": "Přihlašovací údaje aktualizovány",
|
||
"credentialCreated": "Přihlašovací údaje vytvořeny",
|
||
"failedToSaveCredential": "Uložení přihlašovacích údajů se nezdařilo",
|
||
"credentialNameRequired": "Zadejte prosím název pro přihlašovací údaje",
|
||
"credentialAuthRequired": "Přidejte heslo, SSH klíč nebo obojí",
|
||
"createCredentialFromHostBtn": "Vytvořit pověření",
|
||
"createCredentialFromHostTitle": "Vytvořit přihlašovací údaje od hostitele",
|
||
"createCredentialFromHostDesc": "Vytvořte opakovaně použitelný a sdílený záznam o přihlašovacích údajích, který bude předvyplněn aktuálním uživatelským jménem, heslem a/nebo SSH klíčem tohoto hostitele.",
|
||
"backToHosts": "Zpět k hostitelům",
|
||
"pinned": "Připnuto",
|
||
"noHostsFound": "Nenalezeny žádné hostitele",
|
||
"tryDifferentTerm": "Zkuste jiný termín",
|
||
"addFirstHost": "Přidejte svého prvního hostitele a začněte",
|
||
"noCredentialsFound": "Nenalezeny žádné přihlašovací údaje",
|
||
"addCredentialBtn": "Přidat přihlašovací údaje",
|
||
"updateCredentialBtn": "Aktualizovat přihlašovací údaje",
|
||
"features": "Funkce",
|
||
"noFolder": "(Žádná složka)",
|
||
"deleteSelected": "Vymazat",
|
||
"exitSelection": "Ukončit výběr",
|
||
"importSkip": "Importovat (přeskočit existující)",
|
||
"importOverwrite": "Importovat (přepsat)",
|
||
"collapseBtn": "Kolaps",
|
||
"importExportBtn": "Import / Export",
|
||
"hostStatusesRefreshed": "Stavy hostitelů byly obnoveny",
|
||
"failedToRefreshHosts": "Nepodařilo se aktualizovat hostitele",
|
||
"movedHostTo": "Přesunuto {{host}} do „{{folder}}“",
|
||
"failedToMoveHost": "Přesun hostitele se nezdařilo",
|
||
"deletedFolder": "Smazaná složka „{{name}}“",
|
||
"failedToDeleteFolder": "Složku se nepodařilo smazat",
|
||
"deleteAllInFolder": "Smazat všechny hostitele v „{{name}}“? Tuto akci nelze vrátit zpět.",
|
||
"folderPickerPlaceholder": "Žádná složka",
|
||
"folderPickerSearch": "Hledat nebo vytvářet (pro podsložky použijte /)...",
|
||
"folderPickerNone": "Žádná složka",
|
||
"folderPickerCreate": "Vytvořit „{{path}}“",
|
||
"folderPickerEmpty": "Žádné odpovídající složky",
|
||
"parentHost": "Nadřazený hostitel",
|
||
"useFolderInstead": "Použijte místo toho složku",
|
||
"useParentHostInstead": "Použijte místo toho nadřazeného hostitele",
|
||
"parentHostPickerPlaceholder": "Žádný rodičovský hostitel",
|
||
"parentHostPickerSearch": "Hledat hostitele...",
|
||
"parentHostPickerNone": "Žádný rodičovský hostitel",
|
||
"parentHostPickerEmpty": "Žádní odpovídající hostitelé",
|
||
"collapseSubHosts": "Sbalit subhostingy",
|
||
"expandSubHosts": "Rozbalit subhostingy",
|
||
"cannotNestUnderDescendant": "Nelze vnořit hostitele pod jeho vlastního subhostitele.",
|
||
"movedToParent": "Přesunuto {{count}} hostitelů pod „{{parent}}“",
|
||
"newFolder": "Nová složka",
|
||
"createFolderTitle": "Vytvořit složku",
|
||
"editFolderTitle": "Upravit složku",
|
||
"folderDialogDescription": "Vyberte název, barvu a ikonu. Pomocí kláves / můžete vnořovat složky.",
|
||
"folderNameLabel": "Název složky",
|
||
"folderNamePlaceholder": "např. Produkce/Web",
|
||
"folderNestingHint": "Pomocí kláves / oddělte úrovně a vytvořte vnořené složky.",
|
||
"folderNameDuplicate": "Složka s tímto názvem zde již existuje.",
|
||
"folderColor": "Barva",
|
||
"folderIcon": "Ikona",
|
||
"folderCredential": "Pověření",
|
||
"folderCredentialNone": "Nebyly přiřazeny žádné pověření",
|
||
"folderCredentialHint": "Hostitelé v této složce, kteří používají ověřování „Uložené přihlašovací údaje“, aniž by měli vybrány vlastní přihlašovací údaje, zdědí tento.",
|
||
"folderPreview": "Náhled",
|
||
"folderNameFallback": "Nepojmenovaná složka",
|
||
"createFolderButton": "Vytvořit složku",
|
||
"saveFolderButton": "Uložit složku",
|
||
"cancel": "Zrušit",
|
||
"iconSearchPlaceholder": "Vyhledávání ikon...",
|
||
"openAllSessions": "Otevřít všechny relace",
|
||
"editFolder": "Upravit složku",
|
||
"deleteFolder": "Smazat složku",
|
||
"selectFolder": "Vybrat všechny hostitele ve složce",
|
||
"deselectFolder": "Zrušte výběr všech hostitelů ve složce",
|
||
"folderSaved": "Složka uložena",
|
||
"failedToSaveFolder": "Uložení složky se nezdařilo",
|
||
"folderDeleted": "Smazaná složka „{{name}}“",
|
||
"deleteFolderConfirm": "Smazat „{{name}}“ a jeho hostitele {{count}} ? Tuto akci nelze vrátit zpět.",
|
||
"failedToMoveHosts": "Přesun hostitelů se nezdařilo",
|
||
"failedToReorder": "Znovuobjednání se nepodařilo",
|
||
"expandAll": "Rozbalit všechny složky",
|
||
"collapseAll": "Sbalit všechny složky",
|
||
"moreActions": "Více",
|
||
"groupBy": "Seskupit podle",
|
||
"GroupByFolder": "Složka",
|
||
"GroupByTag": "Štítek",
|
||
"GroupByStatus": "Postavení",
|
||
"GroupByProtocol": "Protokol",
|
||
"GroupByAuth": "Typ autorizace",
|
||
"groupUngrouped": "Neseskupené",
|
||
"customizeSidebar": "Přizpůsobit postranní panel",
|
||
"customizeSidebarDescription": "Vyberte, jak bude seznam hostitelů vypadat a chovat se.",
|
||
"customizeDensityTitle": "Hustota",
|
||
"customizeBehaviorTitle": "Chování",
|
||
"customizeSortHint": "Pořadí řazení a seskupování se nachází v nabídkách řazení a seskupování na panelu nástrojů.",
|
||
"densityComfortableDesc": "Více podrobností o jednotlivých hostitelích: adresa, tagy a využití zdrojů.",
|
||
"densityCompactDesc": "Jeden řádek na hostitele, pro delší seznamy.",
|
||
"display": "Zobrazit",
|
||
"displayDensity": "Hustota",
|
||
"displayDensityComfortable": "Komfortní",
|
||
"displayDensityCompact": "Kompaktní",
|
||
"displayShowTags": "Zobrazit štítky",
|
||
"displayTrayOnClick": "Otevírat akce po kliknutí (místo najetí myší)",
|
||
"actionsVisibility": "Akce hostitele",
|
||
"actionsVisibilityDesc": "Když se na každém hostiteli zobrazí tlačítka pro připojení a správu",
|
||
"actionsAlways": "Vždy viditelné",
|
||
"actionsOnly": "Pouze připojení, odpočinek po kliknutí",
|
||
"actionsHover": "Zobrazit při najetí myší",
|
||
"actionsClick": "Zobrazit po kliknutí",
|
||
"openOnDoubleClick": "Otevřít dvojitým kliknutím",
|
||
"openOnDoubleClickDesc": "Vyžadovat dvojité kliknutí pro otevření hostitelské relace místo jednoho kliknutí",
|
||
"deletedHost": "Smazáno {{name}}",
|
||
"copiedToClipboard": "Zkopírováno do schránky",
|
||
"terminalUrlCopied": "URL terminálu zkopírována",
|
||
"fileManagerUrlCopied": "URL adresa Správce souborů zkopírována",
|
||
"tunnelUrlCopied": "URL tunelu zkopírována",
|
||
"dockerUrlCopied": "URL adresa Dockeru zkopírována",
|
||
"hostMetricsUrlCopied": "URL adresa metrik hostitele zkopírována",
|
||
"tmuxMonitorUrlCopied": "URL adresa monitoru Tmux zkopírována",
|
||
"rdpUrlCopied": "URL adresa RDP zkopírována",
|
||
"openNativeRdp": "Otevřít ve Vzdálené ploše systému Windows",
|
||
"nativeRdpOpened": "Otevřeno ve Vzdálené ploše systému Windows",
|
||
"nativeRdpFailed": "Nepodařilo se otevřít Vzdálenou plochu systému Windows",
|
||
"vncUrlCopied": "URL adresa VNC zkopírována",
|
||
"telnetUrlCopied": "URL adresa Telnetu zkopírována",
|
||
"remoteDesktopUrlCopied": "URL adresa vzdálené plochy zkopírována",
|
||
"expandActions": "Rozbalit akce",
|
||
"collapseActions": "Akce sbalení",
|
||
"wakeOnLanAction": "Probuzení přes LAN",
|
||
"wakeOnLanSuccess": "Magický balíček odeslán na {{name}}",
|
||
"wakeOnLanError": "Nepodařilo se odeslat magický paket",
|
||
"cloneHostAction": "Klonovat hostitele",
|
||
"copyAddress": "Kopírovat adresu",
|
||
"copyLink": "Kopírovat odkaz",
|
||
"copyTerminalUrlAction": "Kopírovat URL terminálu",
|
||
"copyFileManagerUrlAction": "Kopírovat URL Správce souborů",
|
||
"copyTunnelUrlAction": "Kopírovat URL tunelu",
|
||
"copyDockerUrlAction": "Kopírovat URL Dockeru",
|
||
"copyHostMetricsUrlAction": "Kopírovat URL metrik hostitele",
|
||
"copyTmuxMonitorUrlAction": "Kopírovat URL adresu monitoru Tmux",
|
||
"copyRdpUrlAction": "Kopírovat URL adresu RDP",
|
||
"copyVncUrlAction": "Kopírovat URL VNC",
|
||
"copyTelnetUrlAction": "Kopírovat URL adresu Telnetu",
|
||
"copyRemoteDesktopUrlAction": "Kopírovat URL adresu vzdálené plochy",
|
||
"deleteCredentialConfirm": "Smazat přihlašovací údaje „{{name}}“?",
|
||
"deletedCredential": "Smazáno {{name}}",
|
||
"deleteHostsConfirm": "Smazat hostitel {{count}}{{plural}}? Tuto akci nelze vrátit zpět.",
|
||
"movedToRoot": "Přesunuto do kořenového adresáře",
|
||
"enableTerminalFeature": "Povolit terminál",
|
||
"disableTerminalFeature": "Zakázat terminál",
|
||
"enableFilesFeature": "Povolit soubory",
|
||
"disableFilesFeature": "Zakázat soubory",
|
||
"enableTunnelsFeature": "Povolit tunely",
|
||
"disableTunnelsFeature": "Zakázat tunely",
|
||
"enableDockerFeature": "Povolit Docker",
|
||
"disableDockerFeature": "Zakázat Docker",
|
||
"enableProxmoxFeature": "Povolit Proxmox",
|
||
"disableProxmoxFeature": "Zakázat Proxmox",
|
||
"addTagsPlaceholder": "Přidat štítky...",
|
||
"authDetails": "Podrobnosti o ověřování",
|
||
"credType": "Typ",
|
||
"generateKeyPairDesc": "Vygenerujte nový pár klíčů, soukromý i veřejný klíč budou automaticky vyplněny.",
|
||
"generatingKey": "Generování...",
|
||
"generateLabel": "Generovat {{label}}",
|
||
"uploadFileBtn": "Nahrát soubor",
|
||
"keyPassphraseOptional": "Heslo klíče (volitelné)",
|
||
"sshPublicKeyOptional": "Veřejný klíč SSH (volitelné)",
|
||
"publicKeyGenerated": "Vygenerovaný veřejný klíč",
|
||
"failedToGeneratePublicKey": "Nepodařilo se odvodit veřejný klíč",
|
||
"publicKeyCopied": "Veřejný klíč zkopírován",
|
||
"keyPairGenerated": "{{label}} vygenerovaný pár klíčů",
|
||
"failedToGenerateKeyPair": "Nepodařilo se vygenerovat pár klíčů",
|
||
"searchHostsPlaceholder": "Hledat hostitele, adresy, tagy…",
|
||
"refreshBtn": "Obnovit",
|
||
"addTag": "Přidat štítky...",
|
||
"deleteConfirmBtn": "Vymazat",
|
||
"tunnelRequirementsText": "SSH server musí mít v souboru /etc/ssh/sshd_config nastaveny hodnoty GatewayPorts – yes, AllowTcpForwarding – yes a PermitRootLogin – yes.",
|
||
"deleteHostConfirm": "Smazat „{{name}}“?",
|
||
"enableAtLeastOneProtocol": "Povolte alespoň jeden protokol výše pro konfiguraci nastavení ověřování a připojení.",
|
||
"keyPassphrase": "Klíčová hesla",
|
||
"connectBtn": "Připojit",
|
||
"disconnectBtn": "Odpojit",
|
||
"basicInformation": "Základní informace",
|
||
"authDetailsSection": "Podrobnosti o ověřování",
|
||
"credTypeLabel": "Typ",
|
||
"hostsTab": "Hostitelé",
|
||
"credentialsTab": "Pověření",
|
||
"selectMultiple": "Vyberte více",
|
||
"selectHosts": "Vyberte hostitele",
|
||
"connectionLabel": "Spojení",
|
||
"authenticationLabel": "Ověřování",
|
||
"generateKeyPairTitle": "Generovat pár klíčů",
|
||
"generateKeyPairDescription": "Vygenerujte nový pár klíčů, soukromý i veřejný klíč budou automaticky vyplněny.",
|
||
"generateFromPrivateKey": "Generovat ze soukromého klíče",
|
||
"refreshBtn2": "Obnovit",
|
||
"exitSelectionTitle": "Ukončit výběr",
|
||
"addHostBtn2": "Přidat hostitele",
|
||
"addCredentialBtn2": "Přidat přihlašovací údaje",
|
||
"checkingHostStatuses": "Kontrola stavů hostitelů...",
|
||
"pinnedSection": "Připnuto",
|
||
"hostsExported": "Hostitelé byli úspěšně exportováni",
|
||
"export": {
|
||
"menuItem": "Vývozní...",
|
||
"title": "Exportovat hostitele",
|
||
"scope": "Rozsah",
|
||
"scopeAll": "Vše",
|
||
"scopeSelected": "Vybraný",
|
||
"searchHosts": "Hledat hostitele...",
|
||
"include": "Zahrnout",
|
||
"groupConnection": "Spojení",
|
||
"groupCredentials": "Pověření",
|
||
"groupNotes": "Poznámky",
|
||
"groupTags": "Štítky a pin",
|
||
"groupTunnels": "Tunely",
|
||
"groupJumpHosts": "Hostitelé skoků",
|
||
"groupQuickActions": "Rychlé akce",
|
||
"groupFeatureFlags": "Vlajky funkcí",
|
||
"groupAdvanced": "Pokročilá konfigurace",
|
||
"preview": "Náhled",
|
||
"moreHosts": "... {{count}} více hostitelů",
|
||
"summary": "{{selected}} z {{total}} hostitelů",
|
||
"credentialsIncluded": "zahrnuty přihlašovací údaje",
|
||
"credentialsExcluded": "vyloučené přihlašovací údaje",
|
||
"noneSelected": "Žádní hostitelé nejsou vybráni",
|
||
"cancel": "Zrušit",
|
||
"confirm": "Vývozní",
|
||
"fetchFailed": "Nepodařilo se načíst hostitele pro export",
|
||
"bulkButton": "Vývozní"
|
||
},
|
||
"sampleDownloaded": "Ukázkový soubor stažen",
|
||
"failedToDeleteCredential2": "Nepodařilo se smazat přihlašovací údaje",
|
||
"noFolderOption": "(Žádná složka)",
|
||
"nSelected": "{{count}} vybráno",
|
||
"featuresMenu": "Funkce",
|
||
"moveMenu": "Pohyb",
|
||
"connectSelected": "Připojit",
|
||
"cancelSelection": "Zrušit",
|
||
"deletedCount": "Smazané hostitele {{count}}",
|
||
"failedToDeleteCount": "Nepodařilo se smazat {{count}} hostitelů",
|
||
"duplicatedHost": "Duplikováno „{{name}}“",
|
||
"failedToDuplicateHost": "Nepodařilo se duplikovat hostitele",
|
||
"updatedCount": "Aktualizovaní hostitelé {{count}}",
|
||
"friendlyNameLabel": "Přátelský název",
|
||
"descriptionLabel": "Popis",
|
||
"loadingHost": "Načítání hostitele...",
|
||
"loadingHosts": "Načítání hostitelů...",
|
||
"loadingCredentials": "Načítání přihlašovacích údajů...",
|
||
"noHostsYet": "Zatím žádní hostitelé",
|
||
"noHostsYetHint": "Přidejte server pro otevírání terminálů, procházení souborů a zobrazení metrik.",
|
||
"noHostsMatchSearch": "Vašemu vyhledávání neodpovídají žádní hostitelé",
|
||
"hostNotFound": "Hostitel nenalezen",
|
||
"searchHosts": "Hledat hostitele...",
|
||
"sortHosts": "Seřadit hostitele",
|
||
"sortDefault": "Výchozí pořadí",
|
||
"sortNameAsc": "Jméno (A → Z)",
|
||
"sortNameDesc": "Jméno (Z → A)",
|
||
"sortIpAsc": "IP adresa (vzestupně)",
|
||
"sortIpDesc": "IP adresa (popis)",
|
||
"sortOnlineFirst": "Online první",
|
||
"sortOfflineFirst": "Offline First",
|
||
"sortManual": "Ručně (přetažením změníte pořadí)",
|
||
"sortPinnedFirst": "Připnuto jako první",
|
||
"filterHosts": "Filtrovat hostitele",
|
||
"filterClearAll": "Vymazat filtry",
|
||
"filterStatusGroup": "Postavení",
|
||
"filterOnline": "Online",
|
||
"filterOffline": "Offline",
|
||
"filterPinned": "Připnuto",
|
||
"filterAuthGroup": "Typ autorizace",
|
||
"filterAuthPassword": "Heslo",
|
||
"filterAuthKey": "SSH klíč",
|
||
"filterAuthCredential": "Pověření",
|
||
"filterAuthNone": "Žádný",
|
||
"filterAuthOpkssh": "OPKSSH",
|
||
"filterProtocolGroup": "Protokol",
|
||
"filterProtocolSsh": "SSH",
|
||
"filterProtocolRdp": "PRV",
|
||
"filterProtocolVnc": "VNC",
|
||
"filterProtocolTelnet": "Telnet",
|
||
"filterFeaturesGroup": "Funkce",
|
||
"filterFeatureTerminal": "Terminál",
|
||
"filterFeatureFileManager": "Správce souborů",
|
||
"filterFeatureTunnel": "Tunel",
|
||
"filterFeatureDocker": "Přístavní dělník",
|
||
"filterTagsGroup": "Štítky",
|
||
"connectRdp": "PRV",
|
||
"connectVnc": "VNC",
|
||
"connectTelnet": "Telnet",
|
||
"editHostAction": "Upravit hostitele",
|
||
"moreOptions": "Více možností",
|
||
"shareHost": "Sdílení hostitele",
|
||
"shareHostTitle": "Sdílet: {{name}}",
|
||
"shareFolder": "Sdílet složku",
|
||
"shareFolderTitle": "Sdílená složka: {{name}}",
|
||
"folderSharedSuccessfully": "Sdílených {{count}} hostitelů ve složce",
|
||
"failedToShareFolder": "Sdílení složky se nezdařilo",
|
||
"sharing": {
|
||
"loadError": "Nepodařilo se načíst data sdílení. Zkuste to prosím znovu.",
|
||
"shareWithSection": "Sdílet s",
|
||
"usersTab": "Uživatelé",
|
||
"rolesTab": "Role",
|
||
"searchPlaceholder": "Hledat uživatele nebo role...",
|
||
"noMatches": "Nenalezeny žádné shody",
|
||
"permissionLevelLabel": "Úroveň oprávnění",
|
||
"levels": {
|
||
"connect": {
|
||
"label": "Připojit",
|
||
"description": "Pouze otevřené relace: terminál, vzdálená plocha, správce souborů, tunely a Docker. Bez přístupu ke konfiguraci hostitele."
|
||
},
|
||
"view": {
|
||
"label": "Pohled",
|
||
"description": "Připojte se a podívejte se na konfiguraci hostitele. Tajné kódy se nikdy nezobrazují."
|
||
},
|
||
"edit": {
|
||
"label": "Upravit",
|
||
"description": "Zobrazení a úprava nastavení hostitele bez ověřování. Ověřování vlastníka přes SSH zůstává soukromé a pouze pro vlastníka."
|
||
},
|
||
"manage": {
|
||
"label": "Spravovat",
|
||
"description": "Upravovat a sdílet hostitele s ostatními, měnit úrovně oprávnění a odebírat přístup."
|
||
}
|
||
},
|
||
"expiryLabel": "Vypršení přístupu",
|
||
"expiry": {
|
||
"never": "Nikdy",
|
||
"oneHour": "1 hodina",
|
||
"oneDay": "24 hodin",
|
||
"sevenDays": "7 dní",
|
||
"thirtyDays": "30 dní",
|
||
"custom": "Zvyk"
|
||
},
|
||
"customHoursPlaceholder": "Hodiny do vypršení přístupu",
|
||
"shareButton": "Podíl",
|
||
"shareWithCount": "Sdílet ({{count}})",
|
||
"currentAccess": "Aktuální přístup",
|
||
"noAccessEntries": "Tento hostitel ještě nebyl sdílen",
|
||
"folderShareSummary": "Sdílené {{shared}} z {{total}} hostitelů v této složce",
|
||
"grantedBy": "Uděleno",
|
||
"expires": "Platnost vyprší",
|
||
"expired": "Platnost vypršela",
|
||
"never": "Nikdy",
|
||
"revoke": "Zrušit",
|
||
"accessUpdated": "Přístup aktualizován",
|
||
"accessUpdateFailed": "Aktualizace přístupu se nezdařilo",
|
||
"sharedBadge": "Sdílené",
|
||
"sharedBadgeTooltip": "Sdíleno uživatelem {{owner}} ( přístup{{level}})",
|
||
"viewOnlyBanner": "Tento hostitel je s vámi sdílen uživatelem {{owner}} s oprávněním pro zobrazení. Konfigurace je pouze pro čtení.",
|
||
"sharedEditBanner": "Tento hostitel je s vámi sdílen uživatelem {{owner}} s oprávněním k úpravám. Změny se vztahují na skutečného hostitele; ověřovací reference může změnit pouze vlastník.",
|
||
"ownerOnlyControl": "Toto může změnit pouze majitel hostitele",
|
||
"ownerAuthPrivate": "Ověřování SSH vlastníka hostitele je soukromé. Pro výběr vlastních přihlašovacích údajů použijte v nabídce hostitele možnost „Nastavit osobní ověřování SSH“.",
|
||
"ownerAuthShared": "Vlastník hostitele sdílí SSH ověřování pro tohoto hostitele. Můžete ho použít nebo si vybrat vlastní přihlašovací údaje v části „Nastavit osobní SSH ověřování“.",
|
||
"authOverrideAction": "Nastavení osobního SSH ověřování",
|
||
"authOverrideTitle": "Osobní SSH autentizace",
|
||
"authOverrideDescriptionPrivate": "Přihlašovací údaje SSH vlastníka hostitele zůstanou soukromé. Vyberte si jedny z uložených přihlašovacích údajů pro připojení k {{host}}.",
|
||
"authOverrideDescriptionShared": "Pro připojení k {{host}} použijte ověřování sdílené vlastníkem hostitele nebo jej nahraďte jedním z vašich uložených přihlašovacích údajů.",
|
||
"authOverrideCredentialLabel": "Ověřovací údaje",
|
||
"useSharedAuthentication": "Použít ověřování sdíleného hostitele",
|
||
"noPersonalCredential": "Žádné osobní pověření",
|
||
"authOverrideNoCredentials": "Zatím nemáte žádné uložené přihlašovací údaje SSH. Vytvořte si je v části Přihlašovací údaje pro připojení k hostitelům, které vyžadují ověřování.",
|
||
"authOverrideRequired": "Tento hostitel vyžaduje před připojením jeden z vašich uložených přihlašovacích údajů.",
|
||
"authOverridePrivateHint": "Tyto přihlašovací údaje jsou soukromé. Vlastník hostitele ani ostatní příjemci je nemohou vidět ani používat.",
|
||
"authOverrideSaved": "Osobní SSH ověřování uloženo",
|
||
"authOverrideCleared": "Osobní SSH ověřování bylo odstraněno",
|
||
"authOverrideClearedToShared": "Používání ověřování sdíleného hostitele",
|
||
"authOverrideLoadError": "Nepodařilo se načíst vaše ověřování SSH. Zkuste to prosím znovu.",
|
||
"authOverrideSaveError": "Uložení ověřování SSH se nezdařilo"
|
||
},
|
||
"guac": {
|
||
"connection": "Spojení",
|
||
"authentication": "Ověřování",
|
||
"storedCredential": "Uložené přihlašovací údaje",
|
||
"noCredential": "Žádné pověření (přímé pověření níže)",
|
||
"authMethod": "Metoda ověřování",
|
||
"authTypeDirect": "Řídit",
|
||
"authTypeCredential": "Pověření",
|
||
"authTypeNone": "Žádný",
|
||
"authTypeNoneDesc": "Nejsou uloženy žádné přihlašovací údaje. Při každém připojení budete vyzváni k zadání uživatelského jména a hesla; tyto údaje se neukládají.",
|
||
"selectCredential": "Vyberte pověření...",
|
||
"connectionSettings": "Nastavení připojení",
|
||
"displaySettings": "Nastavení displeje",
|
||
"audioSettings": "Nastavení zvuku",
|
||
"rdpPerformance": "Výkon RDP",
|
||
"deviceRedirection": "Přesměrování zařízení",
|
||
"session": "Zasedání",
|
||
"gateway": "Brána",
|
||
"remoteApp": "Vzdálená aplikace",
|
||
"clipboard": "Schránka",
|
||
"sessionRecording": "Nahrávání relace",
|
||
"wakeOnLan": "Probuzení přes LAN",
|
||
"vncSettings": "Nastavení VNC",
|
||
"terminalSettings": "Nastavení terminálu",
|
||
"rdpPort": "RDP port",
|
||
"username": "Uživatelské jméno",
|
||
"password": "Heslo",
|
||
"passwordSaved": "Heslo uloženo, zadejte heslo pro změnu",
|
||
"domain": "Doména",
|
||
"securityMode": "Bezpečnostní režim",
|
||
"colorDepth": "Barevná hloubka",
|
||
"width": "Šířka",
|
||
"height": "Výška",
|
||
"dpi": "DPI",
|
||
"resizeMethod": "Metoda změny velikosti",
|
||
"clientName": "Jméno klienta",
|
||
"initialProgram": "Počáteční program",
|
||
"serverLayout": "Rozložení serveru",
|
||
"timezone": "Časové pásmo",
|
||
"loadBalanceInfo": "Informace o vyrovnávání zátěže / soubor cookie",
|
||
"loadBalanceInfoDesc": "Soubor cookie RD Connection Broker pro vyvažování zátěže farmy RDS (např. tsv://MS Terminal Services Plugin.1.CollectionName)",
|
||
"guacdProxy": "Proxy GUACD",
|
||
"guacdHostname": "Hostitel guacd",
|
||
"guacdHostnamePlaceholder": "Globální výchozí nastavení",
|
||
"guacdPort": "Port GUACD",
|
||
"guacdProxyDesc": "Pro toto připojení přepište globální instanci guacd. Pokud chcete použít globálně nakonfigurovaný guacd, ponechte pole prázdné.",
|
||
"gatewayHostname": "Název hostitele brány",
|
||
"gatewayPort": "Port brány",
|
||
"gatewayUsername": "Uživatelské jméno brány",
|
||
"gatewayPassword": "Heslo brány",
|
||
"gatewayDomain": "Doména brány",
|
||
"remoteAppProgram": "Program RemoteApp",
|
||
"workingDirectory": "Pracovní adresář",
|
||
"arguments": "Argumenty",
|
||
"normalizeLineEndings": "Normalizovat konce řádků",
|
||
"recordingPath": "Cesta záznamu",
|
||
"recordingName": "Název nahrávky",
|
||
"macAddress": "MAC adresa",
|
||
"broadcastAddress": "Vysílací adresa",
|
||
"udpPort": "UDP port",
|
||
"waitTimeS": "Čekací doba (s)",
|
||
"driveName": "Název disku",
|
||
"drivePath": "Cesta k jednotce",
|
||
"ignoreCertificate": "Ignorovat certifikát",
|
||
"ignoreCertificateDesc": "Povolit připojení k hostitelům s certifikáty podepsanými držitelem",
|
||
"forceLossless": "Vynutit bezztrátové",
|
||
"forceLosslessDesc": "Vynucení bezztrátového kódování obrazu (vyšší kvalita, větší šířka pásma)",
|
||
"disableAudio": "Zakázat zvuk",
|
||
"disableAudioDesc": "Ztlumit veškerý zvuk ze vzdálené relace",
|
||
"enableAudioInput": "Povolit zvukový vstup (mikrofon)",
|
||
"enableAudioInputDesc": "Přesměrování lokálního mikrofonu do vzdálené relace",
|
||
"wallpaper": "Tapeta",
|
||
"wallpaperDesc": "Zobrazit tapetu plochy (zakázání zlepšuje výkon)",
|
||
"theming": "Témata",
|
||
"themingDesc": "Povolit vizuální motivy a styly",
|
||
"fontSmoothing": "Vyhlazování písma",
|
||
"fontSmoothingDesc": "Povolit vykreslování písma ClearType",
|
||
"fullWindowDrag": "Přetažení celého okna",
|
||
"fullWindowDragDesc": "Zobrazit obsah okna při přetahování",
|
||
"desktopComposition": "Složení plochy",
|
||
"desktopCompositionDesc": "Povolit efekty Aero Glass",
|
||
"menuAnimations": "Animace v menu",
|
||
"menuAnimationsDesc": "Povolit animace prolínání a snímání nabídek",
|
||
"disableBitmapCaching": "Zakázat ukládání bitmap do mezipaměti",
|
||
"disableBitmapCachingDesc": "Vypnout mezipaměť bitmap (může pomoci s chybami)",
|
||
"disableOffscreenCaching": "Zakázat ukládání do mezipaměti mimo obrazovku",
|
||
"disableOffscreenCachingDesc": "Vypnout mezipaměť mimo obrazovku",
|
||
"disableGlyphCaching": "Zakázat ukládání glyfů do mezipaměti",
|
||
"disableGlyphCachingDesc": "Vypnout mezipaměť glyfů",
|
||
"enableGfx": "Povolit grafické efekty",
|
||
"enableGfxDesc": "Použití grafického kanálu RemoteFX",
|
||
"enablePrinting": "Povolit tisk",
|
||
"enablePrintingDesc": "Přesměrování lokálních tiskáren na vzdálenou relaci",
|
||
"enableDriveRedirection": "Povolit přesměrování disku",
|
||
"enableDriveRedirectionDesc": "Namapování lokální složky jako jednotky ve vzdálené relaci",
|
||
"createDrivePath": "Vytvořit cestu k disku",
|
||
"createDrivePathDesc": "Automaticky vytvořit složku, pokud neexistuje",
|
||
"disableDownload": "Zakázat stahování",
|
||
"disableDownloadDesc": "Zabránit stahování souborů ze vzdálené relace",
|
||
"disableUpload": "Zakázat nahrávání",
|
||
"disableUploadDesc": "Zabránit nahrávání souborů do vzdálené relace",
|
||
"enableTouch": "Povolit dotyk",
|
||
"enableTouchDesc": "Povolit přesměrování dotykového vstupu",
|
||
"consoleSession": "Relace konzole",
|
||
"consoleSessionDesc": "Připojení ke konzoli (relace 0) namísto nové relace",
|
||
"sendWolPacket": "Odeslat paket WOL",
|
||
"sendWolPacketDesc": "Odeslat magický paket pro probuzení tohoto hostitele před připojením",
|
||
"disableCopy": "Zakázat kopírování",
|
||
"disableCopyDesc": "Zabránit kopírování textu ze vzdálené relace",
|
||
"disablePaste": "Zakázat vkládání",
|
||
"disablePasteDesc": "Zabránit vkládání textu do vzdálené relace",
|
||
"createPathIfMissing": "Vytvořit cestu, pokud chybí",
|
||
"createPathIfMissingDesc": "Automaticky vytvořit adresář pro nahrávání",
|
||
"excludeOutput": "Vyloučit výstup",
|
||
"excludeOutputDesc": "Nezaznamenávat výstup obrazovky (pouze metadata)",
|
||
"excludeMouse": "Vyloučit myš",
|
||
"excludeMouseDesc": "Nezaznamenávat pohyby myši",
|
||
"includeKeystrokes": "Zahrnout klávesové zkratky",
|
||
"includeKeystrokesDesc": "Zaznamenávat nezpracované stisky kláves kromě výstupu na obrazovku",
|
||
"vncPort": "VNC port",
|
||
"vncPassword": "Heslo VNC",
|
||
"vncUsernameOptional": "Uživatelské jméno (volitelné)",
|
||
"vncLeaveBlank": "Pokud není vyžadováno, nechte prázdné.",
|
||
"cursorMode": "Režim kurzoru",
|
||
"swapRedBlue": "Prohodit červenou/modrou",
|
||
"swapRedBlueDesc": "Prohoďte červený a modrý barevný kanál (opravuje některé problémy s barvami)",
|
||
"readOnly": "Pouze pro čtení",
|
||
"readOnlyDesc": "Zobrazení vzdálené obrazovky bez odesílání jakýchkoli vstupních dat",
|
||
"telnetPort": "Telnetový port",
|
||
"terminalType": "Typ terminálu",
|
||
"fontName": "Název písma",
|
||
"fontSize": "Velikost písma",
|
||
"colorScheme": "Barevné schéma",
|
||
"backspaceKey": "Klávesa Backspace",
|
||
"saveHostFirst": "Nejprve uložte hostitele.",
|
||
"sharingOptionsAfterSave": "Možnosti sdílení jsou k dispozici po uložení hostitele.",
|
||
"permissionLevel": "Úroveň oprávnění",
|
||
"typeHeader": "Typ",
|
||
"targetHeader": "Cíl",
|
||
"permissionHeader": "Povolení",
|
||
"cancelBtn": "Zrušit",
|
||
"savingBtn": "Ukládání...",
|
||
"updateHostBtn": "Aktualizovat hostitele",
|
||
"addHostBtn": "Přidat hostitele"
|
||
},
|
||
"arrangeUnlockedSwitchedToManual": "Přepnuto na ruční řazení, aby se vaše pořadí drželo",
|
||
"dragToRearrange": "Přetažením uspořádáte",
|
||
"arrangeUnlocked": "Odemkněte přetažením pro změnu uspořádání"
|
||
},
|
||
"commandPalette": {
|
||
"searchPlaceholder": "Hledat hostitele, příkazy nebo nastavení...",
|
||
"quickActions": "Rychlé akce",
|
||
"navigation": "Navigace",
|
||
"orShortcut": "nebo",
|
||
"hostManager": "Hostitelský manažer",
|
||
"hostManagerDesc": "Správa, přidávání nebo úprava hostitelů",
|
||
"addNewHost": "Přidat nového hostitele",
|
||
"addNewHostDesc": "Registrace nového hostitele",
|
||
"adminSettings": "Nastavení administrátora",
|
||
"adminSettingsDesc": "Konfigurace systémových předvoleb a uživatelů",
|
||
"userProfile": "Uživatelský profil",
|
||
"userProfileDesc": "Spravujte svůj účet a předvolby",
|
||
"addCredential": "Přidat přihlašovací údaje",
|
||
"addCredentialDesc": "Ukládání SSH klíčů nebo hesel",
|
||
"tmuxMonitor": "Monitor Tmux",
|
||
"tmuxMonitorDesc": "Monitorujte relace tmux napříč vašimi hostiteli",
|
||
"snippets": "Úryvky",
|
||
"runSnippetDesc": "Spustit v aktivní kartě terminálu",
|
||
"noSnippetsFound": "Nebyly nalezeny žádné úryvky odpovídající „{{search}}“",
|
||
"recentActivity": "Nedávná aktivita",
|
||
"serversAndHosts": "Servery a hostitelé",
|
||
"noHostsFound": "Nenalezeny žádné hostitele odpovídající \"{{search}}\"",
|
||
"links": "Odkazy",
|
||
"navigate": "Navigovat",
|
||
"select": "Vybrat",
|
||
"toggleWith": "Přepnout pomocí",
|
||
"localTerminal": "Místní terminál",
|
||
"localTerminalDesc": "Otevřít shell na tomto počítači"
|
||
},
|
||
"splitScreen": {
|
||
"paneEmpty": "Podokno {{index}} – prázdné",
|
||
"noTabAssigned": "Žádná karta není přiřazena",
|
||
"focusedPane": "Aktivní panel"
|
||
},
|
||
"connections": {
|
||
"noConnections": "Žádné spojení",
|
||
"noConnectionsDesc": "Otevřete terminál, správce souborů nebo vzdálenou plochu a zobrazte zde připojení.",
|
||
"connectedFor": "Připojeno pro {{duration}}",
|
||
"connected": "Připojeno",
|
||
"disconnected": "Odpojeno",
|
||
"closeTab": "Zavřít kartu",
|
||
"closeConnection": "Zavřete spojení",
|
||
"forgetTab": "Zapomenout",
|
||
"removeBackground": "Odstranit",
|
||
"reconnect": "Znovu se připojte",
|
||
"reopenTab": "Znovu otevřít",
|
||
"sectionOpen": "OTEVŘENO",
|
||
"sectionBackground": "Pozadí",
|
||
"backgroundDesc": "Relace přetrvávají 30 minut po odpojení a lze je znovu připojit.",
|
||
"persisted": "Přetrvává v pozadí",
|
||
"expiresIn": "Platnost vyprší za {{duration}}",
|
||
"search": "Hledat spojení...",
|
||
"noSearchResults": "Vašemu vyhledávání neodpovídají žádná spojení",
|
||
"rename": "Přejmenovat relaci",
|
||
"sectionSharedWithMe": "Sdíleno se mnou",
|
||
"sharedBy": "Sdíleno uživatelem {{username}}",
|
||
"join": "Připojit se",
|
||
"sharedSessionLabel": "{{hostName}} (sdílené)"
|
||
},
|
||
"sessionSharing": {
|
||
"guestView": {
|
||
"loading": "Připojování ke sdílené relaci...",
|
||
"linkInvalid": "Tento odkaz pro sdílení je neplatný, jeho platnost vypršela nebo byl zrušen.",
|
||
"rateLimited": "Příliš mnoho pokusů, zkuste to prosím znovu brzy",
|
||
"sessionEnded": "Tato relace skončila",
|
||
"readOnlyBadge": "Pouze zobrazení"
|
||
},
|
||
"modalTitle": "Sdílení relace",
|
||
"shareButton": "Podíl",
|
||
"notReadyToShare": "Relace ještě není připravena ke sdílení",
|
||
"modeTab": {
|
||
"link": "Odkaz",
|
||
"user": "Uživatel"
|
||
},
|
||
"linkModeDescription": "Připojit se může kdokoli s tímto odkazem, účet není potřeba.",
|
||
"userModeDescription": "Sdílejte s konkrétním uživatelem, který již má k tomuto hostiteli přístup. Pokud ještě nemá přístup, nejprve s ním hostitele sdílejte nebo použijte odkaz. Po sdílení se relace zobrazí na jeho kartě Připojení.",
|
||
"permissionLevel": {
|
||
"label": "Úroveň oprávnění",
|
||
"readOnly": "Pouze pro čtení",
|
||
"readOnlyDescription": "Může sledovat relaci živě, ale nemůže psát ani interagovat.",
|
||
"readWrite": "Čtení a zápis",
|
||
"readWriteDescription": "Může psát a interagovat s relací stejně jako její vlastník."
|
||
},
|
||
"expiryLabel": "Platnost vypršení platnosti odkazu",
|
||
"createLinkButton": "Vytvořit odkaz",
|
||
"createShareButton": "Sdílet s uživatelem",
|
||
"searchUsersPlaceholder": "Hledat uživatele...",
|
||
"noUsersFound": "Nenaleženi žádní uživatelé",
|
||
"linkCreated": "Odkaz pro sdílení vytvořen",
|
||
"linkCopied": "Odkaz zkopírován do schránky",
|
||
"copyLink": "Kopírovat odkaz",
|
||
"shareCreated": "Relace sdílena. Zobrazí se na jejich kartě Připojení.",
|
||
"shareFailed": "Vytvoření sdílené položky se nezdařilo",
|
||
"userLacksHostAccess": "Tento uživatel zatím nemá přístup k tomuto hostiteli. Nejprve s ním hostitele sdílejte nebo použijte odkaz.",
|
||
"activeShares": "Aktivní akcie",
|
||
"noActiveShares": "Pro tuto relaci nejsou žádné aktivní sdílení",
|
||
"revoke": "Zrušit",
|
||
"revokeConfirmTitle": "Zrušit toto sdílení?",
|
||
"revokeConfirmDescription": "Každý, kdo tuto sdílenou složku používá, okamžitě ztratí přístup.",
|
||
"revoked": "Podíl zrušen",
|
||
"revokeFailed": "Zrušení sdílení se nezdařilo",
|
||
"joinCount": "{{count}} připojit se",
|
||
"joinCount_other": "{{count}} se připojí",
|
||
"expiresAt": "Platnost vyprší {{date}}",
|
||
"linkShareBadge": "Odkaz",
|
||
"userShareBadge": "Uživatel: {{username}}",
|
||
"loadSharesFailed": "Nepodařilo se načíst aktivní sdílení"
|
||
},
|
||
"guacamole": {
|
||
"connecting": "Připojování k relaci {{type}}...",
|
||
"connectionError": "Chyba připojení",
|
||
"connectionFailed": "Připojení se nezdařilo",
|
||
"failedToConnect": "Nepodařilo se získat token připojení",
|
||
"hostNotFound": "Hostitel nenalezen",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"reconnect": "Znovu se připojte",
|
||
"retry": "Zkusit znovu",
|
||
"guacdUnavailable": "Služba vzdálené plochy (guacd) není k dispozici. Ujistěte se prosím, že je guacd spuštěná, přístupná a správně nakonfigurovaná v nastavení administrátora.",
|
||
"credentialPromptTitle": "Zadejte přihlašovací údaje RDP",
|
||
"credentialPromptDescription": "Tento hostitel je nastaven tak, aby při připojení vyžadoval přihlašovací údaje. Tyto přihlašovací údaje se používají pouze pro tuto relaci a neukládají se.",
|
||
"connect": "Připojit",
|
||
"ctrlAltDel": "Ctrl+Alt+Del",
|
||
"files": {
|
||
"title": "Soubory na Disku",
|
||
"parent": "Nadřazený adresář",
|
||
"refresh": "Obnovit",
|
||
"empty": "Tato složka je prázdná",
|
||
"listFailed": "Tuto složku se nepodařilo přečíst.",
|
||
"download": "Stáhnout",
|
||
"downloadFailed": "Stažení se nezdařilo {{name}}",
|
||
"upload": "Nahrát soubory",
|
||
"uploading": "Nahrávání {{name}}...",
|
||
"uploaded": "Nahráno {{name}}",
|
||
"uploadFailed": "Nahrávání se nezdařilo {{name}}",
|
||
"uploadDisabled": "Nahrávání je pro toto připojení zakázáno.",
|
||
"dropToUpload": "Přetáhněte soubory k nahrání"
|
||
},
|
||
"toolbar": {
|
||
"ctrlAltDel": "Ctrl+Alt+Del",
|
||
"winL": "Win+L (Zamknout obrazovku)",
|
||
"winKey": "Klávesa Windows",
|
||
"ctrl": "Ctrl",
|
||
"alt": "Alternativní",
|
||
"shift": "Posun",
|
||
"win": "Vyhrát",
|
||
"stickyActive": "{{key}} (zajištěno - kliknutím uvolníte)",
|
||
"stickyInactive": "{{key}} (kliknutím zajistíte)",
|
||
"esc": "Uniknout",
|
||
"tab": "Záložka",
|
||
"home": "Domov",
|
||
"end": "Konec",
|
||
"pageUp": "Stránka nahoru",
|
||
"pageDown": "Stránka dolů",
|
||
"arrowUp": "Šipka nahoru",
|
||
"arrowDown": "Šipka dolů",
|
||
"arrowLeft": "Šipka vlevo",
|
||
"arrowRight": "Šipka vpravo",
|
||
"fnToggle": "Funkční klávesy",
|
||
"reconnect": "Znovu připojit relaci",
|
||
"collapse": "Sbalit panel nástrojů",
|
||
"expand": "Rozbalit panel nástrojů",
|
||
"dragHandle": "Přetažením změníte pozici",
|
||
"switchToTrackpad": "Přepnout do režimu trackpadu (tažením přesunete kurzor, klepnutím kliknete)",
|
||
"switchToTouch": "Přepnout do dotykového režimu (klepněte přímo na místo, kam chcete kliknout)"
|
||
}
|
||
},
|
||
"terminal": {
|
||
"connect": "Připojení k hostiteli",
|
||
"clear": "Jasný",
|
||
"paste": "Pasta",
|
||
"reconnect": "Znovu se připojte",
|
||
"connectionLost": "Spojení ztraceno",
|
||
"connected": "Připojeno",
|
||
"clipboardWriteFailed": "Kopírování do schránky se nezdařilo. Ujistěte se, že stránka je zobrazována přes HTTPS nebo localhost.",
|
||
"clipboardReadFailed": "Čtení ze schránky se nezdařilo. Ujistěte se, že máte povolena přístup ke schránce.",
|
||
"clipboardHttpWarning": "Nelze přečíst schránku. Některé prohlížeče omezují přístup ke schránce mimo HTTPS – zkuste Ctrl+V nebo přes HTTPS poskytněte Termix.",
|
||
"passwordPromptFillTitle": "Vyplňte uložené heslo do tohoto řádku?",
|
||
"unknownError": "Došlo k neznámé chybě",
|
||
"websocketError": "Chyba připojení k WebSocketu",
|
||
"connecting": "Spojovací...",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"reconnecting": "Znovu se připojuji... ({{attempt}}/{{max}})",
|
||
"reconnected": "Úspěšné opětovné připojení",
|
||
"tmuxSessionCreated": "Vytvořena relace tmux: {{name}}",
|
||
"tmuxSessionAttached": "připojena relace tmux: {{name}}",
|
||
"tmuxUnavailable": "tmux není nainstalován na vzdáleném hostiteli, vrací se ke standardnímu shellu.",
|
||
"tmuxSessionPickerTitle": "Sezení tmux",
|
||
"tmuxSessionPickerDesc": "Na tomto hostiteli byly nalezeny existující relace tmux. Vyberte jednu, kterou chcete znovu připojit, nebo vytvořte novou relaci.",
|
||
"tmuxWindows": "Okna",
|
||
"tmuxWindowCount": "{{count}} okno",
|
||
"tmuxAttached": "Připojení klienti",
|
||
"tmuxAttachedCount": "{{count}} připojen",
|
||
"tmuxLastActivity": "Poslední aktivita",
|
||
"tmuxTimeJustNow": "právě teď",
|
||
"tmuxTimeMinutes": "{{count}}před m",
|
||
"tmuxTimeHours": "{{count}}před hodinami",
|
||
"tmuxTimeDays": "Před {{count}}dny",
|
||
"tmuxCreateNew": "Zahájit novou relaci",
|
||
"tmuxCopyHint": "Upravte výběr a stiskněte Enter pro zkopírování do schránky",
|
||
"tmuxDetach": "Odpojit se od relace tmux",
|
||
"tmuxDetached": "Odpojeno od relace tmux",
|
||
"searchPlaceholder": "Nalézt",
|
||
"searchCaseSensitive": "Zápasová karta",
|
||
"searchWholeWord": "Shoda celého slova",
|
||
"searchRegex": "Použít regulární výraz",
|
||
"searchNoResults": "Žádné výsledky",
|
||
"searchResultCount": "{{index}} z {{count}}",
|
||
"searchNext": "Další zápas (Enter)",
|
||
"searchPrevious": "Předchozí shoda (Shift+Enter)",
|
||
"searchClose": "Zavřít (Escape)",
|
||
"maxReconnectAttemptsReached": "Dosažen maximální počet pokusů o opětovné připojení",
|
||
"closeTab": "Blízko",
|
||
"connectionTimeout": "Časový limit připojení",
|
||
"terminalTitle": "Terminál - {{host}}",
|
||
"terminalWithPath": "Terminál - {{host}}:{{path}}",
|
||
"runTitle": "Spuštěno {{command}} - {{host}}",
|
||
"totpRequired": "Vyžadováno dvoufaktorové ověřování",
|
||
"totpCodeLabel": "Ověřovací kód",
|
||
"totpVerify": "Ověřit",
|
||
"mfaPromptRequired": "Vyžadováno ověření",
|
||
"mfaPushRequired": "Vyžadováno ověřování push transakcí",
|
||
"mfaMenuPlaceholder": "Zadejte svou odpověď",
|
||
"mfaWaitingApproval": "Čekání na schválení na vašem zařízení...",
|
||
"mfaSendRequest": "Odeslat požadavek",
|
||
"warpgateAuthRequired": "Vyžadováno ověřování Warpgate",
|
||
"warpgateSecurityKey": "Bezpečnostní klíč",
|
||
"warpgateAuthUrl": "URL ověřování",
|
||
"warpgateOpenBrowser": "Otevřít v prohlížeči",
|
||
"warpgateContinue": "Dokončil(a) jsem ověřování",
|
||
"opksshAuthRequired": "Vyžadováno ověřování OPKSSH",
|
||
"opksshAuthDescription": "Pro pokračování dokončete ověření ve vašem prohlížeči. Tato relace bude platná 24 hodin.",
|
||
"opksshOpenBrowser": "Otevřít prohlížeč pro ověření",
|
||
"opksshWaitingForAuth": "Čekání na ověření v prohlížeči...",
|
||
"opksshAuthenticating": "Zpracování ověřování...",
|
||
"opksshTimeout": "Časový limit ověření vypršel. Zkuste to prosím znovu.",
|
||
"opksshAuthFailed": "Ověření se nezdařilo. Zkontrolujte prosím své přihlašovací údaje a zkuste to znovu.",
|
||
"opksshSignInWith": "Přihlásit se pomocí {{provider}}",
|
||
"tailscaleCheckRequired": "Vyžadováno ověřování Tailscale",
|
||
"tailscaleCheckDescription": "Tailscale SSH vyžaduje dodatečnou kontrolu. Pro pokračování se ověřte ve svém prohlížeči.",
|
||
"tailscaleCheckOpenBrowser": "Otevřít prohlížeč pro ověření",
|
||
"tailscaleCheckWaiting": "Čekání na ověření Tailscale...",
|
||
"tailscaleCheckTimeout": "Časový limit pro ověřování Tailscale vypršel. Zkuste to prosím znovu.",
|
||
"vaultAuthTitle": "Vyžaduje se přihlášení do trezoru",
|
||
"vaultAuthDescription": "Otevřelo se okno pro přihlášení do HashiCorp Vault. Dokončete přihlášení tam; toto připojení bude automaticky pokračovat.",
|
||
"vaultAuthFailed": "Ověření v trezoru se nezdařilo. Zkuste to prosím znovu.",
|
||
"vaultReopen": "Znovu otevřít přihlašovací okno",
|
||
"sudoPasswordPopupTitle": "Vložit heslo?",
|
||
"linkDialogTitle": "Otevřít odkaz",
|
||
"linkDialogOpen": "OTEVŘENO",
|
||
"linkDialogCopy": "Kopie",
|
||
"websocketAbnormalClose": "Spojení se neočekávaně ukončilo. Může to být způsobeno problémem s reverzní proxy nebo konfigurací SSL. Zkontrolujte prosím protokoly serveru.",
|
||
"connectionLogTitle": "Protokol připojení",
|
||
"connectionLogCopy": "Kopírování protokolů do schránky",
|
||
"connectionLogEmpty": "Zatím žádné protokoly připojení",
|
||
"connectionLogWaiting": "Čekání na protokoly připojení...",
|
||
"connectionLogCopied": "Protokoly připojení zkopírovány do schránky",
|
||
"connectionLogCopyFailed": "Nepodařilo se zkopírovat protokoly do schránky",
|
||
"connectionRejected": "Server odmítl připojení. Zkontrolujte prosím ověření a konfiguraci sítě.",
|
||
"hostKeyRejected": "Ověření klíče hostitele SSH odmítnuto. Připojení zrušeno.",
|
||
"sessionTakenOver": "Relace byla otevřena na jiné kartě. Znovu se připojuji...",
|
||
"split": {
|
||
"splitTab": "Rozdělit kartu",
|
||
"addToSplit": "Přidat do Splitu",
|
||
"removeFromSplit": "Odebrat ze Splitu"
|
||
}
|
||
},
|
||
"fileManager": {
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"initializingEditor": "Inicializace editoru...",
|
||
"file": "Soubor",
|
||
"folder": "Složka",
|
||
"uploadFile": "Nahrát soubor",
|
||
"downloadFile": "Stáhnout",
|
||
"extractArchive": "Extrahovat archiv",
|
||
"extractingArchive": "Extrahování {{name}}...",
|
||
"archiveExtractedSuccessfully": "{{name}} byl úspěšně extrahován",
|
||
"extractFailed": "Extrakce se nezdařila",
|
||
"compressFile": "Komprimovat soubor",
|
||
"compressFiles": "Komprimovat soubory",
|
||
"compressFilesDesc": "Komprimovat {{count}} položek do archivu",
|
||
"archiveName": "Název archivu",
|
||
"enterArchiveName": "Zadejte název archivu...",
|
||
"compressionFormat": "Kompresní formát",
|
||
"selectedFiles": "Vybrané soubory",
|
||
"andMoreFiles": "a {{count}} dalších...",
|
||
"compress": "Komprimovat",
|
||
"compressingFiles": "Komprimace {{count}} položek do {{name}}...",
|
||
"filesCompressedSuccessfully": "{{name}} úspěšně vytvořeno",
|
||
"compressFailed": "Komprese selhala",
|
||
"edit": "Upravit",
|
||
"preview": "Náhled",
|
||
"previous": "Předchozí",
|
||
"next": "Další",
|
||
"pageXOfY": "Strana {{current}} z {{total}}",
|
||
"zoomOut": "Oddálit",
|
||
"zoomIn": "Přiblížit",
|
||
"newFile": "Nový soubor",
|
||
"newFolder": "Nová složka",
|
||
"rename": "Přejmenovat",
|
||
"uploading": "Nahrávání...",
|
||
"uploadingFile": "Nahrávání {{name}}...",
|
||
"fileName": "Název souboru",
|
||
"folderName": "Název složky",
|
||
"fileUploadedSuccessfully": "Soubor „{{name}}“ byl úspěšně nahrán",
|
||
"failedToUploadFile": "Nahrávání souboru se nezdařilo",
|
||
"fileDownloadedSuccessfully": "Soubor „{{name}}“ byl úspěšně stažen",
|
||
"failedToDownloadFile": "Stažení souboru se nezdařilo",
|
||
"fileCreatedSuccessfully": "Soubor „{{name}}“ byl úspěšně vytvořen",
|
||
"folderCreatedSuccessfully": "Složka „{{name}}“ byla úspěšně vytvořena",
|
||
"failedToCreateItem": "Vytvoření položky se nezdařilo",
|
||
"operationFailed": "Operace {{operation}} se nezdařila pro {{name}}: {{error}}",
|
||
"failedToResolveSymlink": "Nepodařilo se vyřešit symbolický odkaz",
|
||
"itemsDeletedSuccessfully": "{{count}} položek bylo úspěšně smazáno",
|
||
"failedToDeleteItems": "Položky se nepodařilo smazat",
|
||
"sudoPasswordRequired": "Vyžadováno heslo správce",
|
||
"enterSudoPassword": "Pro pokračování v této operaci zadejte heslo sudo.",
|
||
"sudoPassword": "Heslo Sudo",
|
||
"sudoOperationFailed": "Operace Sudo selhala",
|
||
"sudoAuthFailed": "Ověření Sudo selhalo",
|
||
"dragFilesToUpload": "Přetáhněte sem soubory k nahrání",
|
||
"emptyFolder": "Tato složka je prázdná",
|
||
"searchFiles": "Hledat soubory...",
|
||
"upload": "Nahrát",
|
||
"selectHostToStart": "Vyberte hostitele pro spuštění správy souborů",
|
||
"sshRequiredForFileManager": "Správce souborů vyžaduje SSH. Tento hostitel nemá SSH povoleno.",
|
||
"failedToConnect": "Nepodařilo se připojit k SSH",
|
||
"failedToLoadDirectory": "Nepodařilo se načíst adresář",
|
||
"noSSHConnection": "Není k dispozici žádné SSH připojení",
|
||
"copy": "Kopie",
|
||
"cut": "Střih",
|
||
"paste": "Pasta",
|
||
"copyPath": "Kopírovat cestu",
|
||
"copyPaths": "Kopírovat cesty",
|
||
"delete": "Vymazat",
|
||
"properties": "Nemovitosti",
|
||
"refresh": "Obnovit",
|
||
"downloadFiles": "Stáhnout {{count}} souborů do prohlížeče",
|
||
"copyFiles": "Kopírovat {{count}} položek",
|
||
"cutFiles": "Vyjmout {{count}} položek",
|
||
"deleteFiles": "Smazat {{count}} položek",
|
||
"filesCopiedToClipboard": "{{count}} položek zkopírováno do schránky",
|
||
"filesCutToClipboard": "{{count}} položek vyjmutých do schránky",
|
||
"pathCopiedToClipboard": "Cesta zkopírována do schránky",
|
||
"pathsCopiedToClipboard": "{{count}} cest zkopírováno do schránky",
|
||
"failedToCopyPath": "Nepodařilo se zkopírovat cestu do schránky",
|
||
"copyFolderLink": "Kopírovat odkaz do složky",
|
||
"copyCurrentFolderLink": "Kopírovat odkaz do aktuální složky",
|
||
"folderLinkCopied": "Odkaz na složku byl zkopírován do schránky",
|
||
"failedToCopyFolderLink": "Nepodařilo se zkopírovat odkaz na složku",
|
||
"movedItems": "Přesunuto {{count}} položek",
|
||
"failedToDeleteItem": "Položku se nepodařilo smazat",
|
||
"itemRenamedSuccessfully": "{{type}} byl úspěšně přejmenován",
|
||
"failedToRenameItem": "Přejmenování položky se nezdařilo",
|
||
"download": "Stáhnout",
|
||
"openExternalEditor": "Otevřít externě",
|
||
"chooseExternalEditor": "Vyberte externího editora",
|
||
"externalEditorSelected": "Vybrán externí editor",
|
||
"externalEditorDesktopOnly": "Externí editor je k dispozici pouze v desktopové aplikaci",
|
||
"externalEditorOpened": "Otevřeno v externím editoru. Uložením tam se změny nahrají zpět na server.",
|
||
"failedToOpenExternalEditor": "Nepodařilo se otevřít externí editor",
|
||
"failedToSelectExternalEditor": "Nepodařilo se vybrat externí editor",
|
||
"permissions": "Oprávnění",
|
||
"size": "Velikost",
|
||
"modified": "Upraveno",
|
||
"path": "Cesta",
|
||
"confirmDelete": "Opravdu chcete smazat {{name}}?",
|
||
"permissionDenied": "Oprávnění zamítnuto",
|
||
"serverError": "Chyba serveru",
|
||
"fileSavedSuccessfully": "Soubor byl úspěšně uložen",
|
||
"failedToSaveFile": "Uložení souboru se nezdařilo",
|
||
"confirmDeleteSingleItem": "Opravdu chcete trvale smazat „{{name}}“?",
|
||
"confirmDeleteMultipleItems": "Opravdu chcete trvale smazat {{count}} položek?",
|
||
"confirmDeleteMultipleItemsWithFolders": "Opravdu chcete trvale smazat {{count}} položek? To zahrnuje i složky a jejich obsah.",
|
||
"confirmDeleteFolder": "Opravdu chcete trvale smazat složku „{{name}}“ a veškerý její obsah?",
|
||
"permanentDeleteWarning": "Tuto akci nelze vrátit zpět. Položka(y) bude(budou) trvale smazána(y) ze serveru.",
|
||
"moveToTrashWarning": "Položka(y) bude(budou) přesunuty(y) do koše Termix a bude(budou) možné je obnovit před uplynutím doby uchování.",
|
||
"itemsMovedToTrash": "{{count}} položek přesunutých do koše",
|
||
"trash": "Odpadky",
|
||
"trashDescription": "Smazané položky jsou na tomto hostiteli uchovávány po dobu {{days}} dní.",
|
||
"trashLoadFailed": "Načtení koše se nezdařilo",
|
||
"trashEmpty": "Koš je prázdný",
|
||
"trashRestore": "Obnovit",
|
||
"trashRestored": "Obnoveno {{name}}",
|
||
"trashRestoreFailed": "Obnovení položky se nezdařilo. Původní cesta již pravděpodobně existuje.",
|
||
"trashDeletePermanently": "Trvale smazat",
|
||
"trashDeleteConfirm": "Trvale smazat {{name}}? Tuto akci nelze vrátit zpět.",
|
||
"trashPermanentlyDeleted": "Trvale smazáno {{name}}",
|
||
"trashDeleteFailed": "Trvalé smazání položky se nezdařilo",
|
||
"trashEmptyAction": "Vysypat koš",
|
||
"trashEmptyConfirm": "Trvale smazat všechny položky v koši? Tuto akci nelze vrátit zpět.",
|
||
"trashEmptied": "Koš vyprázdněn",
|
||
"trashRetention": "Automatické čištění po (dnech)",
|
||
"trashRetentionSaved": "Uchovávání koše aktualizováno",
|
||
"trashRetentionFailed": "Aktualizace uchovávání v koši se nepodařilo",
|
||
"trashUnavailableConfirm": "Tuto položku nelze přesunout do koše, obvykle proto, že se nachází v jiném souborovém systému nebo vyžaduje zvýšená oprávnění. Chcete ji místo toho trvale smazat?",
|
||
"recent": "Nedávné",
|
||
"pinned": "Připnuto",
|
||
"folderShortcuts": "Zkratky složek",
|
||
"failedToReconnectSSH": "Nepodařilo se znovu připojit relaci SSH",
|
||
"openTerminalHere": "Otevřít terminál zde",
|
||
"run": "Běh",
|
||
"openTerminalInFolder": "Otevřít terminál v této složce",
|
||
"openTerminalInFileLocation": "Otevřít terminál v umístění souboru",
|
||
"runningFile": "Běh - {{file}}",
|
||
"onlyRunExecutableFiles": "Lze spustit pouze spustitelné soubory",
|
||
"directories": "Adresáře",
|
||
"removedFromRecentFiles": "Z posledních souborů odstraněno „{{name}}“",
|
||
"removeFailed": "Odebrání se nezdařilo",
|
||
"unpinnedSuccessfully": "Úspěšně odepnuto „{{name}}“",
|
||
"unpinFailed": "Odepnout se nepodařilo",
|
||
"removedShortcut": "Odstraněna zkratka „{{name}}“",
|
||
"removeShortcutFailed": "Odebrání zástupce se nezdařilo",
|
||
"clearedAllRecentFiles": "Vymazány všechny nedávné soubory",
|
||
"clearFailed": "Vymazání se nezdařilo",
|
||
"removeFromRecentFiles": "Odebrat z posledních souborů",
|
||
"clearAllRecentFiles": "Vymazat všechny nedávné soubory",
|
||
"unpinFile": "Odepnout soubor",
|
||
"removeShortcut": "Odebrat zkratku",
|
||
"pinFile": "Připnout soubor",
|
||
"addToShortcuts": "Přidat do zkratek",
|
||
"pasteFailed": "Vložení se nezdařilo",
|
||
"noUndoableActions": "Žádné akce, které lze vrátit zpět",
|
||
"undoCopySuccess": "Zrušená operace kopírování: Smazáno {{count}} zkopírovaných souborů",
|
||
"undoCopyFailedDelete": "Vrácení se nezdařilo: Nepodařilo se smazat žádné zkopírované soubory.",
|
||
"undoCopyFailedNoInfo": "Vrácení se nezdařilo: Nelze najít informace o zkopírovaném souboru.",
|
||
"undoMoveSuccess": "Zrušená operace přesunutí: {{count}} souborů bylo přesunuto zpět do původního umístění.",
|
||
"undoMoveFailedMove": "Vrácení se nezdařilo: Nepodařilo se přesunout žádné soubory zpět.",
|
||
"undoMoveFailedNoInfo": "Vrácení se nezdařilo: Nelze najít informace o přesunutém souboru.",
|
||
"undoDeleteNotSupported": "Operaci smazání nelze vrátit zpět: Soubory byly trvale smazány ze serveru.",
|
||
"undoTypeNotSupported": "Nepodporovaný typ operace vrácení zpět",
|
||
"undoOperationFailed": "Operace vrácení se nezdařila",
|
||
"unknownError": "Neznámá chyba",
|
||
"confirm": "Potvrdit",
|
||
"find": "Nalézt...",
|
||
"replace": "Nahradit",
|
||
"downloadInstead": "Stáhnout místo toho",
|
||
"keyboardShortcuts": "Klávesové zkratky",
|
||
"searchAndReplace": "Hledat a nahradit",
|
||
"editing": "Editace",
|
||
"search": "Vyhledávání",
|
||
"findNext": "Najít další",
|
||
"findPrevious": "Najít předchozí",
|
||
"save": "Uložit",
|
||
"selectAll": "Vybrat vše",
|
||
"undo": "Zpět",
|
||
"redo": "Předělat",
|
||
"moveLineUp": "Posunout seřadit nahoru",
|
||
"moveLineDown": "Posunout řádek dolů",
|
||
"toggleComment": "Přepnout komentář",
|
||
"autoComplete": "Automatické dokončení",
|
||
"imageLoadError": "Nepodařilo se načíst obrázek",
|
||
"startTyping": "Začněte psát...",
|
||
"unknownSize": "Neznámá velikost",
|
||
"fileIsEmpty": "Soubor je prázdný",
|
||
"largeFileWarning": "Varování před velkým souborem",
|
||
"largeFileWarningDesc": "Velikost tohoto souboru je {{size}} , což může při otevření jako text způsobit problémy s výkonem.",
|
||
"fileNotFoundAndRemoved": "Soubor „{{name}}“ nebyl nalezen a byl odstraněn z nedávných/připnutých souborů.",
|
||
"failedToLoadFile": "Nepodařilo se načíst soubor: {{error}}",
|
||
"serverErrorOccurred": "Došlo k chybě serveru. Zkuste to prosím znovu později.",
|
||
"autoSaveFailed": "Automatické ukládání se nezdařilo",
|
||
"fileAutoSaved": "Soubor se automaticky ukládá",
|
||
"moveFileFailed": "Přesun se nezdařilo {{name}}",
|
||
"moveOperationFailed": "Operace přesunu se nezdařila",
|
||
"canOnlyCompareFiles": "Lze porovnat pouze dva soubory",
|
||
"comparingFiles": "Porovnání souborů: {{file1}} a {{file2}}",
|
||
"dragFailed": "Operace přetažení se nezdařila",
|
||
"filePinnedSuccessfully": "Soubor „{{name}}“ byl úspěšně připnut",
|
||
"pinFileFailed": "Připnutí souboru se nezdařilo",
|
||
"fileUnpinnedSuccessfully": "Soubor „{{name}}“ byl úspěšně odepnut",
|
||
"unpinFileFailed": "Nepodařilo se odepnout soubor",
|
||
"shortcutAddedSuccessfully": "Zástupce složky „{{name}}“ byl úspěšně přidán",
|
||
"addShortcutFailed": "Přidání zástupce se nezdařilo",
|
||
"operationCompletedSuccessfully": "{{operation}} {{count}} položek úspěšně",
|
||
"operationCompleted": "{{operation}} {{count}} položek",
|
||
"downloadFileSuccess": "Soubor {{name}} byl úspěšně stažen",
|
||
"downloadFileFailed": "Stahování se nezdařilo",
|
||
"moveTo": "Přesunout na {{name}}",
|
||
"diffCompareWith": "Rozdíl ve srovnání s {{name}}",
|
||
"dragOutsideToDownload": "Přetáhněte mimo okno pro stažení ({{count}} souborů)",
|
||
"newFolderDefault": "Nová složka",
|
||
"newFileDefault": "NovýSoubor.txt",
|
||
"successfullyMovedItems": "Položky {{count}} byly úspěšně přesunuty do {{target}}",
|
||
"move": "Pohyb",
|
||
"searchInFile": "Hledat v souboru (Ctrl+F)",
|
||
"showKeyboardShortcuts": "Zobrazit klávesové zkratky",
|
||
"decreaseFontSize": "Zmenšit velikost písma",
|
||
"increaseFontSize": "Zvětšit velikost písma",
|
||
"startWritingMarkdown": "Začněte psát svůj obsah v Markdownu...",
|
||
"loadingFileComparison": "Načítání porovnání souborů...",
|
||
"reload": "Znovu načíst",
|
||
"compare": "Porovnat",
|
||
"sideBySide": "Bok po boku",
|
||
"inline": "Vložený",
|
||
"fileComparison": "Porovnání souborů: {{file1}} vs. {{file2}}",
|
||
"fileTooLarge": "Soubor je příliš velký: {{error}}",
|
||
"sshConnectionFailed": "SSH připojení selhalo. Zkontrolujte prosím připojení k {{name}} ({{ip}}:{{port}})",
|
||
"loadFileFailed": "Nepodařilo se načíst soubor: {{error}}",
|
||
"connecting": "Spojovací...",
|
||
"connectedSuccessfully": "Úspěšné připojení",
|
||
"totpVerificationFailed": "Ověření TOTP se nezdařilo",
|
||
"warpgateVerificationFailed": "Ověření Warpgate selhalo",
|
||
"authenticationFailed": "Ověření se nezdařilo",
|
||
"incorrectPassphrase": "Nesprávné heslo. Zkuste to prosím znovu.",
|
||
"verificationCodePrompt": "Ověřovací kód:",
|
||
"changePermissions": "Změnit oprávnění",
|
||
"currentPermissions": "Aktuální oprávnění",
|
||
"owner": "Majitel",
|
||
"group": "Skupina",
|
||
"others": "Ostatní",
|
||
"read": "Číst",
|
||
"write": "Napsat",
|
||
"execute": "Vykonat",
|
||
"permissionsChangedSuccessfully": "Oprávnění byla úspěšně změněna",
|
||
"failedToChangePermissions": "Nepodařilo se změnit oprávnění",
|
||
"name": "Jméno",
|
||
"sortByName": "Jméno",
|
||
"sortByDate": "Datum úpravy",
|
||
"sortBySize": "Velikost",
|
||
"ascending": "Vzestupně",
|
||
"descending": "Klesající",
|
||
"root": "Vykořenit",
|
||
"new": "Nový",
|
||
"sortBy": "Seřadit podle",
|
||
"items": "Položky",
|
||
"selected": "Vybraný",
|
||
"editor": "Editor",
|
||
"octal": "Osmičkové",
|
||
"storage": "Skladování",
|
||
"disk": "Disk",
|
||
"used": "Použitý",
|
||
"of": "z",
|
||
"toggleSidebar": "Přepnout postranní panel",
|
||
"cannotLoadPdf": "Nelze načíst PDF",
|
||
"pdfLoadError": "Při načítání tohoto PDF souboru došlo k chybě.",
|
||
"loadingPdf": "Načítání PDF...",
|
||
"loadingPage": "Načítání stránky..."
|
||
},
|
||
"transfer": {
|
||
"copyToHost": "Kopírovat na hostitele…",
|
||
"moveToHost": "Přesunout na hostitele…",
|
||
"copyItemsToHost": "Zkopírovat {{count}} položek pro hostování…",
|
||
"moveItemsToHost": "Přesunout {{count}} položek na hostitele…",
|
||
"noHostsConnected": "Žádní další hostitelé souborů nejsou k dispozici.",
|
||
"noHostsConnectedHint": "Přidejte dalšího hostitele SSH s povoleným Správcem souborů ve Správci hostitelů.",
|
||
"selectDestinationHost": "Vyberte cílového hostitele",
|
||
"destinationPath": "Cílová cesta",
|
||
"recentDestinations": "Nedávné destinace",
|
||
"collapseRecentDestinations": "Sbalit nedávné cíle",
|
||
"expandRecentDestinations": "Rozbalit nedávné destinace",
|
||
"browseFolders": "Procházet cílové složky",
|
||
"browseDestination": "Procházet nebo zadat cestu",
|
||
"confirmCopy": "Kopie",
|
||
"confirmMove": "Pohyb",
|
||
"transferring": "Přenos…",
|
||
"progressVerifying": "Ověřování integrity souboru…",
|
||
"progressBenchmarking": "Výběr nejrychlejší trasy přestupu…",
|
||
"compressing": "Komprese…",
|
||
"extracting": "Extrahování…",
|
||
"transferringItems": "Přenos {{current}} z {{total}} položek…",
|
||
"transferSuccess": "Převod dokončen",
|
||
"transferError": "Přenos se nezdařil",
|
||
"transferPartial": "Přenos dokončen s {{count}} chybami",
|
||
"transferPartialHint": "Nepodařilo se přenést: {{paths}}",
|
||
"itemsSummary": "{{count}} položek",
|
||
"destMustBeDirectory": "Cíl musí být adresář pro přenosy více položek.",
|
||
"selectThisFolder": "Vyberte tuto složku",
|
||
"browsePathWillBeCreated": "Tato složka zatím neexistuje. Bude vytvořena po zahájení přenosu.",
|
||
"browsePathError": "Tuto cestu se nepodařilo otevřít na cílovém hostiteli.",
|
||
"goUp": "Jdi nahoru",
|
||
"copyFolderToHost": "Zkopírovat složku na hostitele…",
|
||
"moveFolderToHost": "Přesunout složku na hostitele…",
|
||
"hostReady": "Připraveno",
|
||
"hostConnecting": "Připojování…",
|
||
"hostDisconnected": "Nepřipojeno",
|
||
"hostAuthRequired": "Vyžadováno ověření – nejprve otevřete Správce souborů na tomto hostiteli.",
|
||
"hostConnectionFailed": "Připojení se nezdařilo",
|
||
"metricsTitle": "Časy přestupů",
|
||
"metricsPrepare": "Připravit cíl: {{duration}}",
|
||
"metricsCompress": "Komprimovat u zdroje: {{duration}}",
|
||
"metricsHopSourceRead": "Zdroj → server: {{throughput}}",
|
||
"metricsHopDestSftpWrite": "Server → cíl (SFTP): {{throughput}}",
|
||
"metricsHopDestLocalWrite": "Server → cíl (lokální): {{throughput}}",
|
||
"metricsTransfer": "Konec od konce: {{throughput}} ({{duration}})",
|
||
"metricsExtract": "Extrahovat v cíli: {{duration}}",
|
||
"metricsVerify": "SHA-256 ověřeno: {{duration}}",
|
||
"metricsRouteBenchmark": "Sonda trasy — přímá: {{direct}}, relé: {{relay}}",
|
||
"metricsSourceDelete": "Odebrat ze zdroje: {{duration}}",
|
||
"metricsTotal": "Celkem: {{duration}}",
|
||
"progressCompressing": "Komprese na zdrojovém hostiteli…",
|
||
"progressExtracting": "Extrahování v cíli…",
|
||
"progressTransferring": "Přenos dat…",
|
||
"progressReconnecting": "Opětovné připojení…",
|
||
"parallelSegmentsLabel": "Paralelní přestupní pruhy",
|
||
"parallelSegmentsOption": "{{count}} jízdních pruhů",
|
||
"parallelSegmentsHint": "Velké soubory jsou rozděleny na bloky o velikosti 256 MB. Více linek používá samostatná připojení (například spuštění několika přenosů) pro vyšší celkovou propustnost.",
|
||
"progressTotalSpeed": "{{speed}} celkem ({{lanes}} pruhů)",
|
||
"progressTransferringItems": "Přenos souborů ({{current}} z {{total}})…",
|
||
"progressBytes": "{{transferred}} / {{total}}",
|
||
"progressItems": "{{current}} / {{total}} souborů",
|
||
"sourceNotDeletedPartial": "Zdrojové soubory zachovány (částečný přenos)",
|
||
"jumpHostLimitation": "Oba hostitelé musí být dosažitelné ze serveru Termix. Přímé směrování mezi hostiteli není podporováno.",
|
||
"cancel": "Zrušit",
|
||
"methodLabel": "Způsob přenosu",
|
||
"methodAuto": "Auto",
|
||
"methodTar": "Archiv Tar",
|
||
"methodItemSftp": "SFTP pro jednotlivé soubory",
|
||
"methodAutoHint": "Vybírá tar nebo SFTP pro jednotlivé soubory na základě počtu souborů, velikosti a komprimovatelnosti. Jednotlivé soubory vždy používají streamovaný SFTP.",
|
||
"methodTarHint": "Komprimace ve zdroji, přenos jednoho archivu, extrakce v cíli. Vyžaduje tar na obou unixových hostitelích.",
|
||
"methodItemSftpHint": "Přeneste každý soubor jednotlivě přes SFTP. Funguje na všech hostitelích včetně Windows.",
|
||
"methodPreviewLoading": "Výpočet metody převodu…",
|
||
"methodPreviewError": "Nepodařilo se zobrazit náhled metody přenosu. Server si metodu vybere i po spuštění.",
|
||
"methodPreviewWillUseTar": "Použiji: archiv Tar",
|
||
"methodPreviewWillUseItemSftp": "Použije se: SFTP pro jednotlivé soubory",
|
||
"methodPreviewScanSummary": "{{fileCount}} souborů, {{totalSize}} celkem (naskenováno na zdrojovém hostiteli).",
|
||
"methodItemSftpLimitation": "Každý soubor používá stejný SFTP stream jako kopie jednoho souboru, jeden po druhém. Průběh je sloučen napříč všemi soubory, takže se ukazatel u velkých souborů pohybuje pomalu.",
|
||
"methodReason": {
|
||
"user_item_sftp": "Zvolili jste SFTP pro jednotlivé soubory.",
|
||
"user_tar": "Zvolili jste archiv tar.",
|
||
"tar_unavailable": "Tar není k dispozici na jednom nebo obou hostitelích — místo toho bude použit protokol SFTP pro jednotlivé soubory.",
|
||
"windows_host": "Je zapojen hostitelský systém Windows – tar se nepoužívá.",
|
||
"auto_multi_large": "Automaticky: více souborů včetně velkého souboru ({{largestSize}}) s komprimovatelnými daty — tar se sbalí do jednoho přenosu.",
|
||
"auto_single_large_in_archive": "Automaticky: jeden velký soubor ({{largestSize}}) v této sadě – SFTP pro každý soubor.",
|
||
"auto_many_incompressible": "Auto: většinou nekomprimovatelná data – SFTP pro jednotlivé soubory.",
|
||
"auto_many_files": "Automaticky: mnoho souborů ({{fileCount}}) – tar snižuje režii pro každý soubor.",
|
||
"auto_default": "Automaticky: SFTP pro jednotlivé soubory pro tuto sadu."
|
||
},
|
||
"progressCancel": "Zrušit",
|
||
"progressCancelling": "Zrušení…",
|
||
"progressStalled": "Zastaveno",
|
||
"resumedHint": "Znovu připojeno k aktivnímu přenosu zahájenému v jiném okně.",
|
||
"transferCancelled": "Převod zrušen",
|
||
"transferCancelledCopyHint": "V cílovém úložišti mohou zůstat jen částečné soubory.",
|
||
"transferCancelledMoveHint": "V cílovém umístění mohou zůstat jen některé soubory. Zdrojové soubory nebyly odstraněny.",
|
||
"cleanupDestFiles": "Vyčistit cíl",
|
||
"cleanupDestFilesSuccess": "Z cílového umístění byly odstraněny částečné soubory.",
|
||
"cleanupDestFilesPartial": "Některé částečné soubory se nepodařilo odstranit.",
|
||
"cleanupDestFilesNothing": "Na cílové destinaci není co uklízet",
|
||
"cleanupDestFilesError": "Vyčištění se nezdařilo",
|
||
"retryTransfer": "Zkusit znovu",
|
||
"retryTransferError": "Opakovaný pokus se nezdařil",
|
||
"transferFailedRetryHint": "V cíli byla uložena částečná data. Po obnovení připojení bude pokus pokračovat."
|
||
},
|
||
"tunnels": {
|
||
"noSshTunnels": "Žádné SSH tunely",
|
||
"createFirstTunnelMessage": "Zatím jste nevytvořili žádné SSH tunely. Chcete-li začít, nakonfigurujte tunelová připojení ve Správci hostitele.",
|
||
"connected": "Připojeno",
|
||
"disconnected": "Odpojeno",
|
||
"connecting": "Spojovací...",
|
||
"error": "Chyba",
|
||
"canceling": "Rušení...",
|
||
"connect": "Připojit",
|
||
"disconnect": "Odpojit",
|
||
"cancel": "Zrušit",
|
||
"port": "Přístav",
|
||
"localPort": "Místní port",
|
||
"remotePort": "Vzdálený port",
|
||
"currentHostPort": "Aktuální hostitelský port",
|
||
"endpointPort": "Koncový port",
|
||
"bindIp": "Místní IP adresa",
|
||
"endpointSshConfig": "Konfigurace SSH koncového bodu",
|
||
"endpointSshHost": "Koncový SSH hostitel",
|
||
"endpointSshHostPlaceholder": "Vyberte nakonfigurovaného hostitele",
|
||
"endpointSshHostRequired": "Pro každý klientský tunel vyberte koncový bod SSH hostitele.",
|
||
"attempt": "Pokus {{current}} z {{max}}",
|
||
"nextRetryIn": "Další pokus za {{seconds}} sekund",
|
||
"clientTunnels": "Klientské tunely",
|
||
"clientTunnel": "Klientský tunel",
|
||
"addClientTunnel": "Přidat klientský tunel",
|
||
"noClientTunnels": "Na této ploše nejsou nakonfigurovány žádné klientské tunely.",
|
||
"tunnelName": "Název tunelu",
|
||
"remoteHost": "Vzdálený hostitel",
|
||
"autoStart": "Automatický start",
|
||
"clientAutoStartDesc": "Spustí se při otevření tohoto desktopového klienta a zůstane připojen.",
|
||
"clientManualStartDesc": "Použijte Start a Stop z tohoto řádku. Termix jej neotevře automaticky.",
|
||
"clientRemoteServerNote": "Vzdálené přesměrování může vyžadovat AllowTcpForwarding a GatewayPorts na SSH serveru koncového bodu. Vzdálený port se zavře, když se tato plocha odpojí.",
|
||
"clientTunnelStarted": "Tunel klienta spuštěn",
|
||
"clientTunnelStopped": "Tunel klienta zastaven",
|
||
"tunnelTestSucceeded": "Test tunelu byl úspěšný",
|
||
"tunnelTestFailed": "Test tunelu selhal",
|
||
"localSaved": "Tunely klientů uloženy",
|
||
"localSaveError": "Nepodařilo se uložit tunely lokálních klientů.",
|
||
"invalidBindIp": "Lokální IP adresa musí být platná IPv4 adresa.",
|
||
"invalidLocalTargetIp": "Lokální cílová IP adresa musí být platná IPv4 adresa.",
|
||
"invalidLocalPort": "Místní port musí být v rozsahu od 1 do 65535.",
|
||
"invalidRemotePort": "Vzdálený port musí být v rozsahu od 1 do 65535.",
|
||
"invalidLocalTargetPort": "Lokální cílový port musí být v rozmezí od 1 do 65535.",
|
||
"invalidEndpointPort": "Koncový port musí být v rozsahu od 1 do 65535.",
|
||
"duplicateAutoStartBind": "Pouze jeden automaticky spouštěný klientský tunel může používat {{bind}}.",
|
||
"manualControlError": "Nepodařilo se aktualizovat stav tunelu.",
|
||
"active": "Aktivní",
|
||
"start": "Start",
|
||
"stop": "Zastávka",
|
||
"test": "Test",
|
||
"type": "Typ tunelu",
|
||
"typeLocal": "Místní (-L)",
|
||
"typeRemote": "Vzdálené (-R)",
|
||
"typeDynamic": "Dynamický (-D)",
|
||
"typeServerLocalDesc": "Aktuální hostitel ke koncovému bodu.",
|
||
"typeServerRemoteDesc": "Koncový bod zpět k aktuálnímu hostiteli.",
|
||
"typeClientLocalDesc": "Místní počítač ke koncovému bodu.",
|
||
"typeClientRemoteDesc": "Koncový bod zpět k místnímu počítači.",
|
||
"typeClientDynamicDesc": "SOCKS na lokálním počítači.",
|
||
"typeDynamicDesc": "Přeposílání provozu SOCKS5 CONNECT přes SSH",
|
||
"forwardDescriptionServerLocal": "Aktuální hostitel {{sourcePort}} → koncový bod {{endpointPort}}.",
|
||
"forwardDescriptionServerRemote": "Koncový bod {{endpointPort}} → aktuální hostitel {{sourcePort}}.",
|
||
"forwardDescriptionServerDynamic": "SOCKS na aktuálním hostiteli {{sourcePort}}.",
|
||
"forwardDescriptionClientLocal": "Místní {{sourcePort}} → vzdálený {{endpointPort}}.",
|
||
"forwardDescriptionClientRemote": "Vzdálené {{sourcePort}} → místní {{endpointPort}}.",
|
||
"forwardDescriptionClientDynamic": "SOCKS na lokálním portu {{sourcePort}}.",
|
||
"summaryClientLocal": "{{localHost}}:{{localPort}} → {{endpoint}}:{{remotePort}}",
|
||
"summaryClientRemote": "{{endpoint}}:{{remotePort}} → {{localHost}}:{{localPort}}",
|
||
"summaryClientDynamic": "{{localHost}}:{{localPort}} → PONOŽKY přes {{endpoint}}",
|
||
"autoNameClientLocal": "Místní {{localPort}} → {{endpoint}} {{remotePort}}",
|
||
"autoNameClientRemote": "{{endpoint}} {{remotePort}} → místní {{localPort}}",
|
||
"autoNameClientDynamic": "PONOŽKY {{localPort}} přes {{endpoint}}",
|
||
"route": "Trasa:",
|
||
"lastStarted": "Naposledy spuštěno",
|
||
"lastTested": "Naposledy testováno",
|
||
"lastError": "Poslední chyba",
|
||
"maxRetries": "Maximální počet opakování",
|
||
"maxRetriesDescription": "Maximální počet pokusů o opakování.",
|
||
"retryInterval": "Interval opakování (sekundy)",
|
||
"retryIntervalDescription": "Doba čekání mezi opakovanými pokusy.",
|
||
"local": "Místní",
|
||
"remote": "Vzdálený",
|
||
"destination": "Cíl",
|
||
"host": "Hostitel",
|
||
"mode": "Režim",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"working": "Pracovní..."
|
||
},
|
||
"cardGrid": {
|
||
"dragToMove": "Přetažením přesunete",
|
||
"dragToResize": "Přetažením změníte velikost",
|
||
"changeWidth": "Změnit šířku",
|
||
"removeCard": "Odebrat {{label}}",
|
||
"addCard": "Přidat",
|
||
"columns": "Sloupce",
|
||
"empty": "Žádné karty. Pro umístění karet použijte tlačítko Přidat níže."
|
||
},
|
||
"hostMetrics": {
|
||
"cpu": "Procesor",
|
||
"memory": "Paměť",
|
||
"disk": "Disk",
|
||
"network": "Síť",
|
||
"uptime": "Doba provozuschopnosti",
|
||
"processes": "Procesy",
|
||
"available": "K dispozici",
|
||
"free": "Uvolnit",
|
||
"connecting": "Spojovací...",
|
||
"connectionFailed": "Nepodařilo se připojit k serveru",
|
||
"naCpus": "CPU (procesory)",
|
||
"cpuCores_one": "{{count}} Jádro",
|
||
"cpuCores_other": "{{count}} Jádra",
|
||
"cpuUsage": "Využití CPU",
|
||
"memoryUsage": "Využití paměti",
|
||
"diskUsage": "Využití disku",
|
||
"selectFilesystem": "Vyberte souborový systém",
|
||
"temperature": "Teplota",
|
||
"highestTemperature": "Nejvyšší teplota",
|
||
"failedToFetchHostConfig": "Nepodařilo se načíst konfiguraci hostitele",
|
||
"serverOffline": "Server offline",
|
||
"cannotFetchMetrics": "Nelze načíst metriky z offline serveru",
|
||
"totpFailed": "Ověření TOTP se nezdařilo",
|
||
"noneAuthNotSupported": "Metriky hostitele nepodporují typ ověřování „žádné“.",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"load": "Zatížení",
|
||
"systemInfo": "Informace o systému",
|
||
"hostname": "Název hostitele",
|
||
"operatingSystem": "Operační systém",
|
||
"kernel": "Jádro",
|
||
"seconds": "sekundy",
|
||
"networkInterfaces": "Síťová rozhraní",
|
||
"noInterfacesFound": "Nenalezena žádná síťová rozhraní",
|
||
"noProcessesFound": "Nenalezeny žádné procesy",
|
||
"processesTotal": "celkový",
|
||
"processesRunning": "běh",
|
||
"loginStats": "Statistiky přihlášení SSH",
|
||
"noRecentLoginData": "Žádné nedávné přihlašovací údaje",
|
||
"executingQuickAction": "Spouštění {{name}}...",
|
||
"quickActionSuccess": "{{name}} úspěšně dokončeno",
|
||
"quickActionFailed": "{{name}} selhalo",
|
||
"quickActionError": "Nepodařilo se spustit {{name}}",
|
||
"ports": {
|
||
"title": "Poslouchající porty",
|
||
"protocol": "Protokol",
|
||
"port": "Přístav",
|
||
"address": "Adresa",
|
||
"process": "Proces",
|
||
"search": "Hledat porty...",
|
||
"allProtocols": "Vše",
|
||
"noData": "Žádná data naslouchajících portů"
|
||
},
|
||
"firewall": {
|
||
"title": "Firewall",
|
||
"inactive": "Neaktivní",
|
||
"policy": "Politika",
|
||
"rules": "pravidla",
|
||
"noRules": "V tomto řetězci nejsou žádná pravidla",
|
||
"noData": "Nejsou k dispozici žádná data firewallu",
|
||
"action": "Akce",
|
||
"protocol": "Proto",
|
||
"port": "Přístav",
|
||
"source": "Zdroj",
|
||
"anywhere": "Kdekoli",
|
||
"chains": "řetězy"
|
||
},
|
||
"loadAvg": "Průměrné zatížení",
|
||
"swap": "Výměna",
|
||
"architecture": "Architektura",
|
||
"refresh": "Obnovit",
|
||
"retry": "Zkusit znovu",
|
||
"customize": "Přizpůsobit rozvržení",
|
||
"reset": "Obnovit",
|
||
"tabLive": "Žít",
|
||
"editModeInstructions": "Přetažením karet změníte jejich uspořádání, přetažením spodního okraje změníte jejich velikost a pomocí tlačítka šířky změníte jejich rozpětí. Karty můžete přidávat nebo odebírat níže.",
|
||
"managers": {
|
||
"services": "Služby",
|
||
"processInspector": "Inspektor procesů",
|
||
"logViewer": "Prohlížeč protokolů",
|
||
"cron": "Cron úlohy",
|
||
"packages": "Balíčky",
|
||
"ssl": "SSL certifikáty",
|
||
"firewall": "Firewall",
|
||
"users": "Uživatelé a oprávnění",
|
||
"healthCheck": "Kontroly stavu",
|
||
"diskBreakdown": "Rozpad disku",
|
||
"systemdTimers": "Časovače",
|
||
"topMemory": "Nejlépe podle paměti",
|
||
"noData": "Žádná data",
|
||
"sudoHint": "V editoru hostitelů nastavte pro tento hostitel heslo sudo, abyste povolili privilegované akce.",
|
||
"filter": "Filtr...",
|
||
"start": "Start",
|
||
"stop": "Zastávka",
|
||
"restart": "Restartovat",
|
||
"actionDone": "{{name}} aktualizováno",
|
||
"actionFailed": "Akce se nezdařila",
|
||
"signalSent": "Signál odeslaný do PID {{pid}}",
|
||
"killHint": "Kliknutí: ukončení (SIGTERM). Kliknutí pravým tlačítkem: vynucené ukončení (SIGKILL).",
|
||
"working": "Pracovní...",
|
||
"update": "Aktualizovat",
|
||
"upgradeAll": "Upgradovat vše",
|
||
"allUpToDate": "Všechno je aktuální",
|
||
"save": "Uložit",
|
||
"command": "Příkaz",
|
||
"enabled": "Povoleno",
|
||
"cronSaved": "Crontab aktualizován",
|
||
"clients": "Klienti",
|
||
"dryRun": "Zkušební provoz",
|
||
"renew": "Obnovit",
|
||
"noAcmeClient": "Na tomto hostiteli nebyl nalezen žádný klient ACME (certbot ani acme.sh).",
|
||
"addInputRule": "Přidat pravidlo INPUT",
|
||
"firewallWarning": "Změny jsou platné pouze za běhu, dokud nejsou trvalé. Dávejte pozor, abyste se k nim nezablokovali.",
|
||
"ruleApplied": "Pravidlo bylo použito",
|
||
"invalidPort": "Zadejte platný port (1-65535)",
|
||
"newUsername": "Nové uživatelské jméno",
|
||
"addUser": "Přidat",
|
||
"deleteUser": "Smazat uživatele",
|
||
"noHealthChecks": "Zatím nejsou nakonfigurovány žádné kontroly stavu.",
|
||
"follow": "Následovat",
|
||
"noLogData": "Žádný výstup protokolu.",
|
||
"tree": "Strom",
|
||
"enableDisable": "Povolit/zakázat při spuštění",
|
||
"grantSudo": "Udělit sudo",
|
||
"revokeSudo": "Zrušit sudo",
|
||
"sslIssueCert": "Vydat certifikát",
|
||
"sslExpired": "Platnost vypršela",
|
||
"sslInDays": "v {{days}}d",
|
||
"sslNeedDomain": "Zadejte alespoň jednu doménu",
|
||
"sslIssued": "Vydaný certifikát",
|
||
"sslDomainsPlaceholder": "example.com, www.example.com",
|
||
"sslHttpStandalone": "HTTP (samostatný)",
|
||
"sslHttpWebroot": "HTTP (webroot)",
|
||
"sslDns": "DNS",
|
||
"sslDnsProvider": "Poskytovatel DNS (např. cloudflare)",
|
||
"sslIssueHint": "Přihlašovací údaje poskytovatele DNS musí být již na hostiteli nakonfigurovány.",
|
||
"sslRevoke": "Zrušit certifikát",
|
||
"sslRevoked": "Certifikát zrušen",
|
||
"sslRevokeConfirm": "Zrušit a odstranit certifikát „{{name}}“? Tuto akci nelze vrátit zpět.",
|
||
"healthRun": "Běh",
|
||
"healthName": "Jméno",
|
||
"healthTarget": "Hostitel / adresa",
|
||
"healthAddCheck": "Přidat šek",
|
||
"healthSaved": "Kontroly stavu uloženy",
|
||
"healthMissingFields": "Každá kontrola potřebuje název a cíl.",
|
||
"logFile": "Soubor",
|
||
"logUnit": "Jednotka",
|
||
"logCustomPath": "Vlastní cesta v /var/log (volitelné)",
|
||
"logGrep": "Filtrační potrubí...",
|
||
"firewallPersist": "Pravidla pro trvalé uložení",
|
||
"firewallPersisted": "Pravidla firewallu přetrvávala",
|
||
"wireguard": "WireGuard",
|
||
"tailscale": "Koncová stupnice",
|
||
"wgNotInstalled": "WireGuard není na tomto hostiteli nainstalován",
|
||
"wgNoInterfaces": "Žádná nakonfigurovaná rozhraní WireGuard",
|
||
"wgInterfaceUp": "Vychovat",
|
||
"wgInterfaceDown": "Snížit",
|
||
"wgBringingUp": "Vyvolávám {{name}}...",
|
||
"wgBringingDown": "Snižování {{name}}...",
|
||
"wgInterfaceUpDone": "{{name}} je aktivní",
|
||
"wgInterfaceDownDone": "{{name}} je nefunkční",
|
||
"wgListenPort": "Přístav",
|
||
"wgPublicKey": "Veřejný klíč",
|
||
"wgEndpoint": "Koncový bod",
|
||
"wgAllowedIPs": "Povolené IP adresy",
|
||
"wgLastHandshake": "Poslední podání ruky",
|
||
"wgHandshakeNever": "Nikdy",
|
||
"wgTransfer": "Převod",
|
||
"tsNotInstalled": "Tailscale není na tomto hostiteli nainstalován",
|
||
"tsRunning": "Běh",
|
||
"tsStopped": "Zastaveno",
|
||
"tsEnable": "Připojit",
|
||
"tsDisable": "Odpojit",
|
||
"tsEnabling": "Připojování k Tailscale...",
|
||
"tsDisabling": "Odpojování od Tailscale...",
|
||
"tsEnabled": "Koncová váha připojena",
|
||
"tsDisabled": "Tailscale odpojeno",
|
||
"tsIPs": "IP adresy Tailscale",
|
||
"tsPeers": "Vrstevníci",
|
||
"tsOnline": "Online",
|
||
"tsOffline": "Offline",
|
||
"tsExitNode": "Východový uzel",
|
||
"tsExitNodeActive": "Výstupní uzel je aktivní",
|
||
"tsHostname": "Název hostitele"
|
||
}
|
||
},
|
||
"proxmoxStats": {
|
||
"tabTitle": "Statistiky Proxmoxu",
|
||
"cpuUsage": "Využití CPU",
|
||
"memoryUsage": "Využití paměti",
|
||
"diskUsage": "Využití disku",
|
||
"networkInterfaces": "Síťová rozhraní",
|
||
"uptime": "Doba provozuschopnosti",
|
||
"systemInfo": "Informace o systému",
|
||
"guestsSummary": "Hosté",
|
||
"storagePools": "Úložné fondy",
|
||
"clusterHealth": "Zdraví klastru",
|
||
"cpuCores_one": "{{count}} Jádro",
|
||
"cpuCores_other": "{{count}} Jádra",
|
||
"used": "Použitý",
|
||
"total": "Celkový",
|
||
"hostname": "Název hostitele",
|
||
"kernel": "Jádro",
|
||
"pveVersion": "PVE verze",
|
||
"name": "Jméno",
|
||
"status": "Postavení",
|
||
"type": "Typ",
|
||
"cpu": "Procesor",
|
||
"mem": "Paměť",
|
||
"disk": "Disk",
|
||
"running": "Běh",
|
||
"stopped": "Zastaveno",
|
||
"guestCounts": "{{running}}/{{total}} běží",
|
||
"inactive": "Neaktivní",
|
||
"notClustered": "Samostatný uzel (není součástí clusteru)",
|
||
"quorate": "Kvorát",
|
||
"notQuorate": "Není usnášeníschopný",
|
||
"nodeOnline": "Online",
|
||
"nodeOffline": "Offline",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"pveshNotFound": "pvesh nenalezen - je to uzel Proxmox?",
|
||
"nodeDetectionFailed": "Nelze určit platný název uzlu Proxmox.",
|
||
"connecting": "Spojovací...",
|
||
"connectionFailed": "Nepodařilo se připojit k uzlu Proxmox",
|
||
"refresh": "Obnovit",
|
||
"searchGuests": "Hledat hosty...",
|
||
"filterAll": "Vše",
|
||
"filterVm": "virtuální počítač",
|
||
"filterLxc": "LXC",
|
||
"noGuests": "Na tomto uzlu nebyly nalezeny žádné virtuální počítače ani kontejnery LXC.",
|
||
"noGuestsMatch": "Aktuálním filtrům neodpovídají žádní hosté."
|
||
},
|
||
"auth": {
|
||
"tagline": "Samostatně hostované SSH a správa vzdálené plochy",
|
||
"loginTitle": "Vítej zpět",
|
||
"registerTitle": "Vytvořit účet",
|
||
"forgotPassword": "Zapomněli jste heslo?",
|
||
"rememberMe": "Zapamatovat si zařízení po dobu 30 dnů (včetně TOTP)",
|
||
"noAccount": "Nemáte účet?",
|
||
"hasAccount": "Už máte účet?",
|
||
"twoFactorAuth": "Dvoufaktorové ověřování",
|
||
"enterCode": "Zadejte ověřovací kód",
|
||
"backupCode": "Nebo použijte záložní kód",
|
||
"verifyCode": "Ověřte kód",
|
||
"redirectingToApp": "Přesměrování do aplikace...",
|
||
"sshAuthenticationRequired": "Vyžadováno ověřování SSH",
|
||
"sshNoKeyboardInteractive": "Interaktivní ověřování pomocí klávesnice není k dispozici",
|
||
"sshAuthenticationFailed": "Ověření se nezdařilo",
|
||
"sshAuthenticationTimeout": "Časový limit ověřování",
|
||
"sshNoKeyboardInteractiveDescription": "Server nepodporuje interaktivní ověřování pomocí klávesnice. Zadejte prosím své heslo nebo klíč SSH.",
|
||
"sshAuthFailedDescription": "Zadané přihlašovací údaje byly nesprávné. Zkuste to prosím znovu s platnými přihlašovacími údaji.",
|
||
"sshTimeoutDescription": "Časový limit pokusu o ověření vypršel. Zkuste to prosím znovu.",
|
||
"sshProvideCredentialsDescription": "Pro připojení k tomuto serveru prosím zadejte své SSH přihlašovací údaje.",
|
||
"sshPasswordDescription": "Zadejte heslo pro toto SSH připojení.",
|
||
"sshKeyPasswordDescription": "Pokud je váš SSH klíč šifrovaný, zadejte zde heslo.",
|
||
"passphraseRequired": "Vyžadováno heslo",
|
||
"passphraseRequiredDescription": "Klíč SSH je šifrovaný. Zadejte prosím heslo pro jeho odemčení.",
|
||
"back": "Zadní",
|
||
"firstUser": "První uživatel",
|
||
"firstUserMessage": "Jste prvním uživatelem a budete jmenováni administrátorem. Nastavení administrátora si můžete zobrazit v rozbalovací nabídce uživatelů na bočním panelu. Pokud si myslíte, že se jedná o chybu, zkontrolujte protokoly Dockeru nebo vytvořte problém na GitHubu.",
|
||
"external": "Externí",
|
||
"loginWithExternal": "Přihlášení u externího poskytovatele",
|
||
"loginWithExternalDesc": "Přihlaste se pomocí nakonfigurovaného externího poskytovatele identity",
|
||
"externalNotSupportedInElectron": "Externí ověřování zatím není v aplikaci Electron podporováno. Pro přihlášení k OIDC použijte prosím webovou verzi.",
|
||
"loginWithProvider": "Přihlaste se pomocí {{name}}",
|
||
"orContinueWith": "nebo pokračujte s",
|
||
"ldapUsername": "Uživatelské jméno LDAP",
|
||
"ldapPassword": "Heslo LDAP",
|
||
"ldapSignIn": "Přihlásit se",
|
||
"ldapLoginFailed": "Přihlášení k LDAP se nezdařilo",
|
||
"resetPasswordButton": "Obnovit heslo",
|
||
"sendResetCode": "Odeslat resetovací kód",
|
||
"resetCodeDesc": "Zadejte své uživatelské jméno a obdržíte kód pro resetování hesla. Kód bude zaznamenán do protokolů kontejneru Docker.",
|
||
"resetCode": "Resetovací kód",
|
||
"verifyCodeButton": "Ověřte kód",
|
||
"enterResetCode": "Zadejte 6místný kód z protokolů kontejneru Docker pro uživatele:",
|
||
"newPassword": "Nové heslo",
|
||
"confirmNewPassword": "Potvrzení hesla",
|
||
"enterNewPassword": "Zadejte své nové heslo pro uživatele:",
|
||
"signUp": "Registrovat se",
|
||
"desktopApp": "Aplikace pro stolní počítače",
|
||
"loggingInToDesktopApp": "Přihlášení do desktopové aplikace",
|
||
"loadingServer": "Načítání serveru...",
|
||
"dataLossWarning": "Obnovením hesla tímto způsobem smažete všechny uložené hostitele SSH, přihlašovací údaje a další šifrovaná data. Tuto akci nelze vrátit zpět. Použijte ji pouze v případě, že jste zapomněli heslo a nejste přihlášeni.",
|
||
"authenticationDisabled": "Ověřování zakázáno",
|
||
"authenticationDisabledDesc": "Všechny metody ověřování jsou momentálně zakázány. Kontaktujte prosím svého administrátora.",
|
||
"passwordLoginDisabledDesc": "Přihlášení heslem je zakázáno. Použijte přístupový klíč nebo externího poskytovatele ověřování.",
|
||
"signInWithPasskey": "Přihlásit se pomocí hesla",
|
||
"passkeyLoginFailed": "Přihlášení k heslu se nezdařilo",
|
||
"attemptsRemaining": "Zbývá {{count}} pokusů",
|
||
"confirmResetDataWipe": "Tento účet se od aktualizace šifrování nepřihlásil, takže jeho uložená data nelze obnovit bez starého hesla. Resetováním se trvale smažou jeho hostitelé, přihlašovací údaje a úryvky. Pokračovat?"
|
||
},
|
||
"hostKey": {
|
||
"verifyNewHost": "Ověření klíče hostitele SSH",
|
||
"keyChangedWarning": "Změněn klíč hostitele SSH",
|
||
"firstConnectionTitle": "První připojení k tomuto hostiteli",
|
||
"firstConnectionDescription": "Pravost tohoto hostitele nelze ověřit. Ověřte, zda otisk prstu odpovídá vašim očekáváním.",
|
||
"keyChangedDescription": "Klíč hostitele pro tento server se od vašeho posledního připojení změnil. To by mohlo znamenat bezpečnostní problém.",
|
||
"previousKey": "Předchozí klíč",
|
||
"newFingerprint": "Nový otisk prstu",
|
||
"fingerprint": "Otisk prstu",
|
||
"verifyInstructions": "Pokud tomuto hostiteli důvěřujete, klikněte na Přijmout pro pokračování a uložení tohoto otisku prstu pro budoucí připojení.",
|
||
"securityWarning": "Bezpečnostní varování",
|
||
"acceptAndContinue": "Přijmout a pokračovat",
|
||
"acceptNewKey": "Přijmout nový klíč a pokračovat"
|
||
},
|
||
"errors": {
|
||
"databaseConnection": "Nepodařilo se připojit k databázi",
|
||
"unknownError": "Neznámá chyba",
|
||
"loginFailed": "Přihlášení se nezdařilo",
|
||
"failedPasswordReset": "Nepodařilo se zahájit resetování hesla",
|
||
"failedVerifyCode": "Nepodařilo se ověřit resetovací kód",
|
||
"failedCompleteReset": "Obnovení hesla se nepodařilo dokončit",
|
||
"invalidTotpCode": "Neplatný kód TOTP",
|
||
"failedOidcLogin": "Nepodařilo se spustit přihlášení k OIDC",
|
||
"silentSigninOidcUnavailable": "Bylo požadováno tiché přihlášení, ale přihlášení OIDC není k dispozici.",
|
||
"failedUserInfo": "Po přihlášení se nepodařilo získat informace o uživateli",
|
||
"oidcAuthFailed": "Ověření OIDC selhalo",
|
||
"invalidAuthUrl": "Z backendu byla přijata neplatná autorizační URL.",
|
||
"requiredField": "Toto pole je povinné",
|
||
"minLength": "Minimální délka je {{min}}",
|
||
"passwordMismatch": "Hesla se neshodují",
|
||
"passwordLoginDisabled": "Přihlášení pomocí uživatelského jména/hesla je momentálně zakázáno",
|
||
"sessionExpired": "Platnost relace vypršela - přihlaste se prosím znovu.",
|
||
"totpRateLimited": "Omezená rychlost: Příliš mnoho pokusů o ověření TOTP. Zkuste to prosím znovu později.",
|
||
"totpRateLimitedWithTime": "Omezená rychlost: Příliš mnoho pokusů o ověření TOTP. Před dalším pokusem prosím počkejte {{time}} sekund.",
|
||
"resetCodeRateLimited": "Omezená rychlost: Příliš mnoho pokusů o ověření. Zkuste to prosím znovu později.",
|
||
"resetCodeRateLimitedWithTime": "Omezená rychlost: Příliš mnoho pokusů o ověření. Před dalším pokusem prosím počkejte {{time}} sekund.",
|
||
"authTokenSaveFailed": "Uložení ověřovacího tokenu se nezdařilo",
|
||
"keyringUnavailable": "Přihlášen/a jsem, ale relaci se nepodařilo uložit: tento systém nemá k dispozici žádný svazek klíčů pro její zašifrování. Spusťte tajnou službu (například gnome-keyring nebo KWallet) a znovu se přihlaste.",
|
||
"failedToLoadServer": "Nepodařilo se načíst server",
|
||
"remoteServerRequired": "Je vyžadován vzdálený server. Pro použití tohoto typu připojení se připojte ke vzdálenému serveru v Nastavení."
|
||
},
|
||
"messages": {
|
||
"registrationDisabled": "Registrace nového účtu je momentálně zakázána administrátorem. Přihlaste se prosím nebo kontaktujte administrátora.",
|
||
"userNotAllowed": "Váš účet není autorizován k registraci. Kontaktujte prosím administrátora.",
|
||
"databaseConnectionFailed": "Nepodařilo se připojit k databázovému serveru",
|
||
"resetCodeSent": "Obnovení kódu odeslaného do protokolů Dockeru",
|
||
"codeVerified": "Kód byl úspěšně ověřen",
|
||
"passwordResetSuccess": "Úspěšné obnovení hesla",
|
||
"loginSuccess": "Přihlášení úspěšné",
|
||
"registrationSuccess": "Registrace úspěšná"
|
||
},
|
||
"profile": {
|
||
"c2sTunnelConfigDesc": "Lokální tunely pro počítače cílené na nakonfigurované hostitele SSH.",
|
||
"c2sTunnelPresets": "Přednastavení klientského tunelu",
|
||
"c2sTunnelPresetsDesc": "Uložte seznam lokálních tunelů tohoto desktopového klienta jako pojmenovanou předvolbu serveru nebo načtěte předvolbu zpět do tohoto klienta.",
|
||
"c2sTunnelPresetsUnavailable": "Přednastavení tunelů klienta jsou k dispozici pouze v klientské verzi pro stolní počítače.",
|
||
"c2sPresetName": "Název předvolby",
|
||
"c2sPresetNamePlaceholder": "Název předvolby klienta",
|
||
"c2sPresetToLoad": "Předvolba k načtení",
|
||
"c2sNoPresetSelected": "Není vybrána žádná předvolba",
|
||
"c2sNoPresets": "Žádné předvolby nejsou uloženy",
|
||
"c2sLoadPreset": "Zatížení",
|
||
"c2sCurrentLocalConfig": "{{count}} lokálních klientských tunelů nakonfigurovaných na této ploše.",
|
||
"c2sPresetSyncNote": "Předvolby jsou explicitní snímky; načtením jedné z nich se nahradí seznam tunelů lokálních klientů tohoto desktopového klienta.",
|
||
"c2sPresetSaved": "Přednastavení klientského tunelu uloženo",
|
||
"c2sPresetLoaded": "Přednastavení klientského tunelu načteno lokálně",
|
||
"c2sPresetRenamed": "Přednastavení klientského tunelu přejmenováno",
|
||
"c2sPresetDeleted": "Předvolba klientského tunelu smazána",
|
||
"c2sPresetLoadError": "Nepodařilo se načíst předvolby tunelu klienta"
|
||
},
|
||
"placeholders": {
|
||
"maxRetries": "3",
|
||
"retryInterval": "10",
|
||
"language": "Jazyk",
|
||
"keyPassword": "klíčové heslo",
|
||
"pastePrivateKey": "Vložte sem svůj soukromý klíč...",
|
||
"localListenerHost": "127.0.0.1 (poslouchat lokálně)",
|
||
"localTargetHost": "127.0.0.1 (cíl na tomto počítači)",
|
||
"socksListenerHost": "127.0.0.1 (posluchač SOCKS)",
|
||
"enterPassword": "Zadejte své heslo",
|
||
"defaultPort": "22",
|
||
"defaultEndpointPort": "224"
|
||
},
|
||
"dashboard": {
|
||
"title": "Dashboard",
|
||
"loading": "Načítání řídicího panelu...",
|
||
"github": "GitHub",
|
||
"support": "Podpora",
|
||
"discord": "Svár",
|
||
"docs": "Dokumenty",
|
||
"donate": "Darovat",
|
||
"serverOverview": "Přehled serveru",
|
||
"version": "Verze",
|
||
"upToDate": "Aktuální",
|
||
"updateAvailable": "Aktualizace k dispozici",
|
||
"beta": "Beta",
|
||
"uptime": "Doba provozuschopnosti",
|
||
"database": "Databáze",
|
||
"healthy": "Zdravý",
|
||
"error": "Chyba",
|
||
"totalHosts": "Celkový počet hostitelů",
|
||
"totalTunnels": "Celkový počet tunelů",
|
||
"totalCredentials": "Celkový počet pověření",
|
||
"recentActivity": "Nedávná aktivita",
|
||
"reset": "Obnovit",
|
||
"loadingRecentActivity": "Načítání nedávné aktivity...",
|
||
"noRecentActivity": "Žádná nedávná aktivita",
|
||
"quickActions": "Rychlé akce",
|
||
"addHost": "Přidat hostitele",
|
||
"addCredential": "Přidat přihlašovací údaje",
|
||
"adminSettings": "Nastavení administrátora",
|
||
"userProfile": "Uživatelský profil",
|
||
"serverStats": "Statistiky serveru",
|
||
"loadingServerStats": "Načítání statistik serveru...",
|
||
"noServerData": "Nejsou k dispozici žádná data serveru",
|
||
"cpu": "Procesor",
|
||
"ram": "BERAN",
|
||
"customizeLayout": "Přizpůsobit řídicí panel",
|
||
"dashboardSettings": "Nastavení řídicího panelu",
|
||
"enableDisableCards": "Povolit/Zakázat karty",
|
||
"resetLayout": "Obnovit výchozí nastavení",
|
||
"serverOverviewCard": "Přehled serveru",
|
||
"recentActivityCard": "Nedávná aktivita",
|
||
"networkGraphCard": "Síťový graf",
|
||
"networkGraph": "Síťový graf",
|
||
"quickActionsCard": "Rychlé akce",
|
||
"serverStatsCard": "Statistiky serveru",
|
||
"panelMain": "Hlavní",
|
||
"panelSide": "Strana",
|
||
"justNow": "právě teď",
|
||
"serviceLinks": "Odkazy na služby",
|
||
"homepagePreview": "Náhled domovské stránky"
|
||
},
|
||
"donation": {
|
||
"title": "Líbí se vám Termix?",
|
||
"body": "Termix je bezplatný a open source nástroj, který vytváří a spravuje dvoučlenný tým ve svém volném čase. Pokud nahradí komerční nástroj, za který byste jinak platili, dar pomůže pokrýt náklady na hosting a udrží vývoj v chodu. V současné době jsou dary pouze v kryptoměnách.",
|
||
"milestones": "Dary také pomáhají financovat čas na výzkum a zjištění, co je potřeba k vytvoření funkcí, jako je podpora SAML a Kubernetes. Sledujte průběh na stránce pro darování.",
|
||
"cta": "Darovat",
|
||
"dismiss": "Možná později"
|
||
},
|
||
"dashboardTab": {
|
||
"stable": "STABILNÍ",
|
||
"hostsOnline": "Hostitelé online",
|
||
"activeTunnels": "Aktivní tunely",
|
||
"registerNewServer": "Zaregistrovat nový server",
|
||
"storeSshKeysOrPasswords": "Ukládání SSH klíčů nebo hesel",
|
||
"manageUsersAndRoles": "Správa uživatelů a rolí",
|
||
"manageYourAccount": "Spravujte svůj účet",
|
||
"hostStatus": "Stav hostitele",
|
||
"noHostsConfigured": "Žádní hostitelé nakonfigurováni",
|
||
"online": "ONLINE",
|
||
"offline": "OFFLINE",
|
||
"checking": "KONTROLA",
|
||
"onlineLower": "Online",
|
||
"nodes": "{{count}} uzlů",
|
||
"add": "Přidat:",
|
||
"commandPalette": "Paleta příkazů",
|
||
"done": "Hotovo",
|
||
"editModeInstructions": "Přetažením karet změníte pořadí · Přetažením děliče sloupců změníte velikost sloupců · Přetažením spodního okraje karty změníte její výšku · Odebráním z koše",
|
||
"empty": "Prázdný",
|
||
"clear": "Jasný",
|
||
"serviceLinksTitle": "Odkazy na služby",
|
||
"serviceLinksEmpty": "Zatím žádné odkazy na služby",
|
||
"serviceLinksAddLabel": "Označení",
|
||
"serviceLinksAddUrl": "URL",
|
||
"serviceLinksAdd": "Přidat",
|
||
"serviceLinksLabelPlaceholder": "Moje služba",
|
||
"serviceLinksUrlPlaceholder": "http://192.168.1.10:8080",
|
||
"serviceLinksInvalidUrl": "Zadejte platnou webovou adresu",
|
||
"serviceLinksAddFailed": "Nepodařilo se přidat odkaz na službu",
|
||
"disk": "Disk",
|
||
"viewServerDetails": "Zobrazit podrobnosti o serveru"
|
||
},
|
||
"sessionLogs": {
|
||
"title": "Protokoly relací",
|
||
"noLogs": "Zatím žádné protokoly relací",
|
||
"noLogsDesc": "Povolte protokolování relace na hostiteli pro zahájení nahrávání",
|
||
"duration": "Trvání",
|
||
"viewLog": "Zobrazit protokol",
|
||
"downloadLog": "Stáhnout",
|
||
"downloadAsText": "Stáhnout jako text",
|
||
"deleteLog": "Vymazat",
|
||
"confirmDelete": "Smazat tento protokol relace?",
|
||
"confirmDeleteDesc": "Tuto akci nelze vrátit zpět.",
|
||
"copyContent": "Kopie",
|
||
"copied": "Zkopírováno!",
|
||
"loadError": "Nepodařilo se načíst protokoly relací",
|
||
"deleteError": "Nepodařilo se smazat protokol relace",
|
||
"filterByHost": "Filtrovat podle hostitele..."
|
||
},
|
||
"networkGraph": {
|
||
"addHost": "Přidat hostitele",
|
||
"addGroup": "Přidat skupinu",
|
||
"addLink": "Přidat odkaz",
|
||
"zoomIn": "Přiblížit",
|
||
"zoomOut": "Oddálit",
|
||
"resetView": "Obnovit zobrazení",
|
||
"selectHost": "Vyberte hostitele",
|
||
"chooseHost": "Vyberte si hostitele...",
|
||
"parentGroup": "Nadřazená skupina",
|
||
"noGroup": "Žádná skupina",
|
||
"groupName": "Název skupiny",
|
||
"color": "Barva",
|
||
"source": "Zdroj",
|
||
"target": "Cíl",
|
||
"moveToGroup": "Přesunout do skupiny",
|
||
"selectGroup": "Vyberte skupinu...",
|
||
"addConnection": "Přidat připojení",
|
||
"hostDetails": "Podrobnosti o hostiteli",
|
||
"removeFromGroup": "Odebrat ze skupiny",
|
||
"addHostHere": "Přidat hostitele zde",
|
||
"editGroup": "Upravit skupinu",
|
||
"delete": "Vymazat",
|
||
"add": "Přidat",
|
||
"create": "Vytvořit",
|
||
"move": "Pohyb",
|
||
"connect": "Připojit",
|
||
"createGroup": "Vytvořit skupinu",
|
||
"selectSourcePlaceholder": "Vyberte zdroj...",
|
||
"selectTargetPlaceholder": "Vyberte cíl...",
|
||
"invalidFile": "Neplatný soubor",
|
||
"hostAlreadyExists": "Hostitel je již v topologii",
|
||
"connectionExists": "Připojení již existuje",
|
||
"unknown": "Neznámý",
|
||
"name": "Jméno",
|
||
"ip": "IP adresa",
|
||
"status": "Postavení",
|
||
"failedToAddNode": "Nepodařilo se přidat uzel",
|
||
"sourceDifferentFromTarget": "Zdroj a cíl se musí lišit",
|
||
"exportJSON": "Exportovat JSON",
|
||
"importJSON": "Importovat JSON",
|
||
"terminal": "Terminál",
|
||
"fileManager": "Správce souborů",
|
||
"tunnel": "Tunel",
|
||
"docker": "Přístavní dělník",
|
||
"serverStats": "Metriky hostitele",
|
||
"hostMetrics": "Metriky hostitele",
|
||
"noNodes": "Zatím žádné uzly"
|
||
},
|
||
"docker": {
|
||
"notEnabled": "Docker není pro tohoto hostitele povolen.",
|
||
"validating": "Ověřování Dockeru...",
|
||
"connecting": "Spojovací...",
|
||
"error": "Chyba",
|
||
"version": "{{runtime}} {{version}}",
|
||
"connectionFailed": "Nepodařilo se připojit k Dockeru",
|
||
"containerStarted": "Kontejner {{name}} spuštěn",
|
||
"failedToStartContainer": "Nepodařilo se spustit kontejner {{name}}",
|
||
"containerStopped": "Kontejner {{name}} zastaven",
|
||
"failedToStopContainer": "Nepodařilo se zastavit kontejner {{name}}",
|
||
"containerRestarted": "Kontejner {{name}} restartován",
|
||
"failedToRestartContainer": "Nepodařilo se restartovat kontejner {{name}}",
|
||
"containerPaused": "Kontejner {{name}} pozastaven",
|
||
"containerUnpaused": "Kontejner {{name}} pozastaven",
|
||
"failedToTogglePauseContainer": "Nepodařilo se přepnout stav pozastavení pro kontejner {{name}}",
|
||
"containerRemoved": "Kontejner {{name}} byl odstraněn",
|
||
"failedToRemoveContainer": "Nepodařilo se odstranit kontejner {{name}}",
|
||
"image": "Obraz",
|
||
"ports": "Porty",
|
||
"noPorts": "Žádné porty",
|
||
"start": "Start",
|
||
"confirmRemoveContainer": "Opravdu chcete odstranit kontejner '{{name}}'? Tuto akci nelze vrátit zpět.",
|
||
"runningContainerWarning": "Varování: Tento kontejner je aktuálně spuštěný. Jeho odstraněním se nejprve zastaví.",
|
||
"loadingContainers": "Nakládání kontejnerů...",
|
||
"manager": "Správce Dockeru",
|
||
"autoRefresh": "Automatické obnovení",
|
||
"timestamps": "Časová razítka",
|
||
"lines": "Čáry",
|
||
"filterLogs": "Filtrovat protokoly...",
|
||
"refresh": "Obnovit",
|
||
"download": "Stáhnout",
|
||
"clear": "Jasný",
|
||
"logsDownloaded": "Protokoly byly úspěšně staženy",
|
||
"last50": "Posledních 50",
|
||
"last100": "Posledních 100",
|
||
"last500": "Posledních 500",
|
||
"last1000": "Posledních 1000",
|
||
"allLogs": "Všechny protokoly",
|
||
"noLogsMatching": "Žádné protokoly neodpovídají „{{query}}“",
|
||
"noLogsAvailable": "Žádné protokoly nejsou k dispozici",
|
||
"noContainersFound": "Nenalezeny žádné kontejnery",
|
||
"noContainersFoundHint": "Na tomto hostiteli nejsou k dispozici žádné kontejnery Docker.",
|
||
"searchPlaceholder": "Hledat kontejnery...",
|
||
"allStatuses": "Všechny stavy",
|
||
"stateRunning": "Běh",
|
||
"statePaused": "Pozastaveno",
|
||
"stateExited": "Ukončeno",
|
||
"stateRestarting": "Restartování",
|
||
"noContainersMatchFilters": "Žádné kontejnery neodpovídají vašim filtrům",
|
||
"noContainersMatchFiltersHint": "Zkuste upravit kritéria vyhledávání nebo filtru",
|
||
"failedToFetchStats": "Nepodařilo se načíst statistiky kontejneru",
|
||
"containerNotRunning": "Kontejner neběží",
|
||
"startContainerToViewStats": "Spusťte kontejner pro zobrazení statistik",
|
||
"loadingStats": "Načítání statistik...",
|
||
"errorLoadingStats": "Chyba při načítání statistik",
|
||
"noStatsAvailable": "Žádné statistiky nejsou k dispozici",
|
||
"cpuUsage": "Využití CPU",
|
||
"current": "Proud",
|
||
"memoryUsage": "Využití paměti",
|
||
"networkIo": "Síťové I/O",
|
||
"input": "Vstup",
|
||
"output": "Výstup",
|
||
"blockIo": "Blok I/O",
|
||
"read": "Číst",
|
||
"write": "Napsat",
|
||
"pids": "PIDy",
|
||
"containerInformation": "Informace o kontejneru",
|
||
"name": "Jméno",
|
||
"id": "Průkaz totožnosti",
|
||
"state": "Stát",
|
||
"containerMustBeRunning": "Pro přístup ke konzoli musí být kontejner spuštěný.",
|
||
"verificationCodePrompt": "Zadejte ověřovací kód",
|
||
"totpVerificationFailed": "Ověření TOTP se nezdařilo. Zkuste to prosím znovu.",
|
||
"warpgateVerificationFailed": "Ověření Warpgate se nezdařilo. Zkuste to prosím znovu.",
|
||
"connectedTo": "Připojeno k {{containerName}}",
|
||
"disconnected": "Odpojeno",
|
||
"consoleError": "Chyba konzole",
|
||
"errorMessage": "Chyba: {{message}}",
|
||
"failedToConnect": "Nepodařilo se připojit ke kontejneru",
|
||
"console": "Utěšit",
|
||
"selectShell": "Vyberte skořápku",
|
||
"bash": "Bash",
|
||
"sh": "sh",
|
||
"ash": "popel",
|
||
"connect": "Připojit",
|
||
"disconnect": "Odpojit",
|
||
"notConnected": "Nepřipojeno",
|
||
"clickToConnect": "Kliknutím na tlačítko Připojit spusťte relaci shellu.",
|
||
"connectingTo": "Připojování k {{containerName}}...",
|
||
"containerNotFound": "Kontejner nenalezen",
|
||
"backToList": "Zpět na seznam",
|
||
"logs": "Protokoly",
|
||
"stats": "Statistiky",
|
||
"consoleTab": "Utěšit",
|
||
"startContainerToAccess": "Spusťte kontejner pro přístup ke konzoli"
|
||
},
|
||
"admin": {
|
||
"sectionGeneral": "Generál",
|
||
"sectionOidc": "OIDC",
|
||
"sectionSso": "Poskytovatelé jednotného přihlašování (SSO)",
|
||
"ssoAddProvider": "Přidat poskytovatele",
|
||
"ssoDocsLink": "Zobrazit dokumenty",
|
||
"ssoProviderDocsLink": "Zobrazit dokumenty",
|
||
"ssoNoProviders": "Nejsou nakonfigurováni žádní poskytovatelé jednotného přihlašování (SSO).",
|
||
"ssoProviderName": "Zobrazovaný název",
|
||
"ssoProviderType": "Typ poskytovatele",
|
||
"ssoDeleteProvider": "Smazat poskytovatele",
|
||
"ssoDeleteConfirm": "Smazat tohoto poskytovatele? Přidružení uživatelé se nebudou moci přihlásit.",
|
||
"ssoTypeOidc": "OIDC",
|
||
"ssoTypeLdap": "LDAP",
|
||
"ssoTypeGithub": "GitHub",
|
||
"ssoTypeGoogle": "Google",
|
||
"ssoEnabled": "Povoleno",
|
||
"ssoDisabled": "Zakázáno",
|
||
"ssoSaveProvider": "Uložit poskytovatele",
|
||
"ssoTestConnection": "Testovací připojení",
|
||
"ssoEditProvider": "Upravit poskytovatele",
|
||
"ldapHost": "Hostitel LDAP",
|
||
"ldapPort": "Přístav",
|
||
"ldapUseTls": "Používejte TLS (LDAPS)",
|
||
"ldapBindDn": "Vázat DN",
|
||
"ldapBindPassword": "Vázat heslo",
|
||
"ldapUserSearchBase": "Vyhledávací báze uživatelů",
|
||
"ldapUserSearchFilter": "Filtr vyhledávání uživatelů",
|
||
"ldapUsernameAttr": "Atribut uživatelského jména",
|
||
"ldapDisplayNameAttr": "Atribut zobrazovaného názvu",
|
||
"ldapGroupSearchBase": "Základna pro vyhledávání skupin",
|
||
"ldapAdminGroup": "Skupina administrátorů",
|
||
"ldapAllowedUsers": "Povolení uživatelé",
|
||
"sectionUsers": "Uživatelé",
|
||
"sectionSessions": "Relace",
|
||
"sectionRoles": "Role",
|
||
"sectionDatabase": "Databáze",
|
||
"sectionApiKeys": "Klíče API",
|
||
"sectionAuditLog": "Protokol auditu",
|
||
"sectionSsl": "SSL / Pojďme šifrovat",
|
||
"sectionTouchInput": "Dotykový vstup",
|
||
"touchEnabled": "Povolit dotykový vstup",
|
||
"touchEnabledDesc": "Povolit posouvání jedním prstem v terminálech",
|
||
"touchMomentumEnabled": "Povolit hybnost",
|
||
"touchMomentumEnabledDesc": "Po přejetí prstem krátce pokračujte v rolování",
|
||
"touchAdvanced": "Moderní",
|
||
"touchDragThreshold": "Práh přetažení",
|
||
"touchMaxWheelDelta": "Maximální delta kola",
|
||
"touchMomentumSampleWindow": "Okno vzorku hybnosti",
|
||
"touchReleaseGracePeriod": "Dodatečná lhůta",
|
||
"touchMinimumVelocity": "Minimální rychlost",
|
||
"touchMaximumVelocity": "Maximální rychlost",
|
||
"touchMaximumDuration": "Maximální doba trvání",
|
||
"touchMaximumTravel": "Maximální zdvih",
|
||
"touchDecayTime": "Doba rozpadu",
|
||
"touchPixelsPerTick": "Pixely na tik",
|
||
"touchMaximumFrameInterval": "Maximální interval snímků",
|
||
"touchMaximumTicksPerFrame": "Maximální počet tiků na snímek",
|
||
"touchResetDefaults": "Obnovit na výchozí nastavení",
|
||
"touchSaved": "Nastavení dotykového vstupu uloženo",
|
||
"touchSaveFailed": "Nepodařilo se uložit nastavení dotykového vstupu",
|
||
"sectionImageStorage": "Ukládání obrázků",
|
||
"imageStorageMode": "Režim úložiště",
|
||
"imageStorageModeDesc": "Kam se zapisují vložené a nahrané obrazy terminálu. Automatické výběry podle připojení, lokální a vzdálené (SFTP) jsou opraveny.",
|
||
"imageStorageModeAuto": "Auto",
|
||
"imageStorageModeLocal": "Místní",
|
||
"imageStorageModeRemoteSftp": "Vzdálené (SFTP)",
|
||
"imageStorageLocalDir": "Místní adresář",
|
||
"imageStorageLocalDirDesc": "Absolutní cesta na serveru Termix. Po uložení se z bezpečnostních důvodů nezobrazuje.",
|
||
"imageStorageLocalDirPlaceholder": "Pro zachování aktuálního stavu ponechte prázdné",
|
||
"imageStorageHostPath": "Cesta hostitele",
|
||
"imageStorageHostPathDesc": "Pohled na lokální adresář, který termináloví agenti přijímají, na straně hostitele.",
|
||
"imageStorageTtl": "Doba trvání (ms)",
|
||
"imageStorageMaxCount": "Maximální počet obrázků",
|
||
"imageStorageMaxBytes": "Maximální počet bajtů úložiště",
|
||
"imageStorageSaved": "Nastavení ukládání obrázků uloženo",
|
||
"imageStorageSaveFailed": "Nepodařilo se uložit nastavení úložiště obrázků",
|
||
"imageStorageInstanceId": "ID instance terminálové relace",
|
||
"imageStorageInstanceIdDesc": "ID instance jedné z vašich připojených karet terminálu, používané k testování viditelnosti.",
|
||
"imageStorageInstanceIdRequired": "Nejprve zadejte ID instance terminálové relace",
|
||
"imageStorageTest": "Test",
|
||
"imageStorageTesting": "Testování...",
|
||
"imageStorageTestFailed": "Nepodařilo se otestovat úložiště obrázků",
|
||
"imageStorageTestConnected": "Terminálová relace je připojena.",
|
||
"imageStorageTestNotConnected": "S tímto ID instance není připojena žádná terminálová relace.",
|
||
"imageStorageTestSelectedMode": "Nahrávání by použilo: {{mode}}",
|
||
"imageStorageSelectedModeUnavailable": "Nedostupné",
|
||
"imageStorageTestLocalVisible": "Lokální adresář je viditelný z připojeného hostitele.",
|
||
"imageStorageTestLocalNotVisible": "Lokální adresář NENÍ viditelný z připojeného hostitele.",
|
||
"sslDescription": "Automaticky vydá a obnoví důvěryhodný SSL certifikát od Let's Encrypt. Vyžaduje veřejnou doménu a port 80 nebo přístup k DNS.",
|
||
"sslDocsLink": "Zobrazit dokumentaci k SSL",
|
||
"sslDomain": "Doména",
|
||
"sslDomainPlaceholder": "termix.example.com",
|
||
"sslDomainDesc": "Název veřejné domény pro certifikát.",
|
||
"sslEmail": "E-mail",
|
||
"sslEmailPlaceholder": "admin@example.com",
|
||
"sslEmailDesc": "Kontaktní e-mail pro oznámení a účet Let's Encrypt.",
|
||
"sslChallengeType": "Typ výzvy",
|
||
"sslChallengeTypeDesc": "Jak prokázat vlastnictví domény službě Let's Encrypt.",
|
||
"sslChallengeHttp": "HTTP (webroot) – vyžaduje port 80 přístupný z internetu",
|
||
"sslChallengeDns": "DNS (Cloudflare) – vyžaduje token Cloudflare API",
|
||
"sslCloudflareToken": "Token API Cloudflare",
|
||
"sslCloudflareTokenPlaceholder": "Zadejte token...",
|
||
"sslCloudflareTokenDesc": "Token s vymezeným rozsahem a oprávněním Zóna:DNS:Úpravy pro vaši doménu.",
|
||
"sslCertStatus": "Stav certifikátu",
|
||
"sslCertStatusNone": "Žádný certifikát",
|
||
"sslCertStatusValid": "Platný",
|
||
"sslCertStatusExpiring": "Platnost brzy vyprší",
|
||
"sslCertStatusExpired": "Platnost vypršela",
|
||
"sslCertExpiresAt": "Platnost vyprší {{date}}",
|
||
"sslLastIssued": "Naposledy vydáno {{date}}",
|
||
"sslRequestCert": "Vydání / Obnova certifikátu",
|
||
"sslRequestCertLoading": "Žádost o certifikát...",
|
||
"sslRequestCertSuccess": "Certifikát byl úspěšně vydán a nainstalován.",
|
||
"sslRequestCertFailed": "Žádost o certifikát selhala",
|
||
"sslSave": "Uložit nastavení",
|
||
"sslSaved": "Nastavení SSL uloženo",
|
||
"sslSaveFailed": "Nepodařilo se uložit nastavení SSL",
|
||
"sslRequiresDomain": "Doména a e-mail jsou povinné",
|
||
"sslInfoNote": "Po vydání nebo nahrání certifikátu Termix automaticky povolí HTTPS na SSL_PORT (výchozí 8443) a to vedle stávajícího HTTP portu. Ujistěte se, že je tento port publikován/mapován na tento kontejner, aby byl dostupný.",
|
||
"sslManualOption": "Manuál (nahrání certifikátu)",
|
||
"sslManualCert": "Certifikát (PEM)",
|
||
"sslManualCertPlaceholder": "-----ZAČÁTEK CERTIFIKÁTU-----",
|
||
"sslManualKey": "Soukromý klíč (PEM)",
|
||
"sslManualKeyPlaceholder": "-----ZAČÁTEK SOUKROMÉHO KLÍČE-----",
|
||
"sslManualDesc": "Vložte svůj stávající certifikát a soukromý klíč, včetně celého řetězce, pokud to vaše certifikační autorita vyžaduje.",
|
||
"sslManualUpload": "Nahrát a nainstalovat certifikát",
|
||
"sslManualUploadLoading": "Nahrávání certifikátu...",
|
||
"sslManualUploadSuccess": "Certifikát byl úspěšně nahrán a nainstalován.",
|
||
"sslManualUploadFailed": "Nahrávání certifikátu se nezdařilo",
|
||
"sslManualRequiresFields": "Je vyžadován certifikát a soukromý klíč",
|
||
"auditLogTotal": "{{total}} celkem záznamů",
|
||
"auditLogEmpty": "Nenalezeny žádné položky protokolu auditu",
|
||
"auditLogSuccess": "Úspěch",
|
||
"auditLogFailed": "Selhalo",
|
||
"auditLogClearFilters": "Vymazat filtry",
|
||
"auditLogPage": "Strana {{page}} z {{totalPages}} ( celkem{{total}})",
|
||
"auditLogIp": "IP adresa",
|
||
"auditLogResourceId": "ID zdroje",
|
||
"auditLogFilterUser": "Uživatel",
|
||
"auditLogFilterAction": "Akce",
|
||
"auditLogFilterResourceType": "Typ zdroje",
|
||
"auditLogFilterStatus": "Postavení",
|
||
"auditLogFilterFrom": "Z",
|
||
"auditLogFilterTo": "Na",
|
||
"auditLogFilterAll": "Vše",
|
||
"allowRegistration": "Povolit registraci uživatele",
|
||
"allowRegistrationDesc": "Umožnit novým uživatelům samoregistraci pomocí uživatelského jména a hesla",
|
||
"allowPasswordLogin": "Povolit přihlášení heslem",
|
||
"allowPasswordLoginDesc": "Přihlášení pomocí uživatelského jména/hesla",
|
||
"oidcAutoProvision": "Automatické zřizování OIDC",
|
||
"oidcAutoProvisionDesc": "Automatické vytváření účtů pro uživatele OIDC/SSO při prvním přihlášení (nezávisle na přepínači registrace)",
|
||
"oidcSilentLoginDefault": "Tiché přihlášení OIDC ve výchozím nastavení",
|
||
"oidcSilentLoginDefaultDesc": "Automatické přesměrování na přihlášení k OIDC při každé návštěvě, úplné přeskakování přihlašovacího formuláře",
|
||
"allowPasswordReset": "Povolit resetování hesla",
|
||
"allowPasswordResetDesc": "Reset kódu pomocí protokolů Dockeru",
|
||
"commandHistoryEnabled": "Historie příkazů",
|
||
"commandHistoryEnabledDesc": "Povolit záznam historie příkazů. Pokud je tato možnost zakázána, historie se neukládá bez ohledu na nastavení pro jednotlivé hostitele.",
|
||
"updateCommandHistoryFailed": "Nepodařilo se aktualizovat nastavení historie příkazů.",
|
||
"analyticsEnabled": "Sdílení anonymních statistik používání",
|
||
"analyticsEnabledDesc": "Odesílá anonymní denní počet uživatelů, hostitelů a využití funkcí, aby pomohl vylepšit Termix. Nikdy neobsahuje žádné osobní údaje ani podrobnosti o připojení.",
|
||
"analyticsEnabledLockedDesc": "Toto nastavení je uzamčeno proměnnou prostředí ENABLE_TELEMETRY a nelze jej zde změnit.",
|
||
"updateAnalyticsFailed": "Nepodařilo se aktualizovat nastavení analytických nástrojů",
|
||
"sessionSharingGloballyEnabled": "Povolit sdílení relace",
|
||
"sessionSharingGloballyEnabledDesc": "Povolit sdílení relací živého terminálu, RDP, VNC a Telnet v rámci celé instance. Pokud je tato možnost zakázána, přepíše všechny přepínače sdílení pro jednotlivé hostitele.",
|
||
"updateSessionSharingFailed": "Nepodařilo se aktualizovat nastavení sdílení relace",
|
||
"sessionTimeout": "Časový limit relace",
|
||
"hours": "hodiny",
|
||
"sessionTimeoutRange": "Min. 1h · Max. 720h",
|
||
"monitoringDefaults": "Výchozí nastavení monitorování",
|
||
"statusCheck": "Kontrola stavu",
|
||
"metrics": "Metriky",
|
||
"sec": "sekunda",
|
||
"logLevel": "Úroveň protokolu",
|
||
"enableGuacamole": "Povolit guacamole",
|
||
"enableGuacamoleDesc": "Vzdálená plocha RDP/VNC",
|
||
"enableGuacamoleDocsLink": "Zobrazit dokumenty",
|
||
"guacdUrl": "URL GUACD",
|
||
"tailscaleApiKey": "Klíč API Tailscale",
|
||
"tailscaleApiKeyDescription": "Používá se pro vyhledávání zařízení v editoru hostitele. Podporuje klíče Tailscale (tkey-) a Headscale (hskey-). Klíč si můžete vygenerovat na adrese tailscale.com/admin/settings/keys nebo z vaší instance Headscale.",
|
||
"tailscaleApiKeyDocsLink": "Zobrazit dokumenty",
|
||
"tailscaleApiBaseUrl": "Základní URL API",
|
||
"tailscaleApiBaseUrlDescription": "Volitelné. Místo api.tailscale.com odkazujte na samoobslužnou instanci Headscale. Pro použití výchozí hodnoty Tailscale ponechte pole prázdné.",
|
||
"oidcDescription": "Nakonfigurujte OpenID Connect pro SSO. Pole označená * jsou povinná.",
|
||
"oidcDocsLink": "Zobrazit dokumenty",
|
||
"oidcClientId": "ID klienta",
|
||
"oidcClientSecret": "Tajemství klienta",
|
||
"oidcAuthUrl": "Autorizační URL",
|
||
"oidcIssuerUrl": "URL vydavatele",
|
||
"oidcTokenUrl": "URL tokenu",
|
||
"oidcUserIdentifier": "Cesta k identifikátoru uživatele",
|
||
"oidcDisplayName": "Cesta k zobrazovanému názvu",
|
||
"oidcScopes": "Rozsahy",
|
||
"oidcUserinfoUrl": "Přepsat URL s uživatelskými informacemi",
|
||
"oidcAllowedUsers": "Povolení uživatelé",
|
||
"oidcAllowedUsersDesc": "Jeden e-mail na řádek. Pro povolení všech ponechte prázdné.",
|
||
"oidcAdminGroup": "Skupina administrátorů",
|
||
"oidcAdminGroupDesc": "Uživatelé v této skupině mají oprávnění k administraci. Pro deaktivaci synchronizace skupiny ponechte pole prázdné.",
|
||
"oidcGroupClaim": "Skupinový nárok",
|
||
"oidcGroupClaimDesc": "Volitelné. Cesta k deklaraci identity, která obsahuje skupiny uživatele. Výchozí nastavení je skupiny, role a poté skupina. Použijte pro poskytovatele s vlastní deklarací identity (např. Zitadel).",
|
||
"oidcCaCert": "Vlastní certifikát certifikační autority",
|
||
"oidcCaCertDesc": "Volitelné. Certifikát certifikační autority s kódováním PEM pro poskytovatele OIDC používající soukromou nebo samopodepsanou certifikační autoritu. Pro použití systémového úložiště důvěryhodných certifikátů ponechte pole prázdné.",
|
||
"removeOidc": "Odstranit",
|
||
"usersCount": "{{count}} uživatelů",
|
||
"searchUsers": "Hledat uživatele...",
|
||
"noUsers": "Žádní uživatelé",
|
||
"noUsersMatch": "Vašemu vyhledávání neodpovídají žádní uživatelé",
|
||
"pageOf": "Strana {{page}} z {{total}}",
|
||
"createUser": "Vytvořit",
|
||
"newRole": "Nová role",
|
||
"roleName": "Jméno",
|
||
"roleDisplayName": "Zobrazovaný název",
|
||
"roleDescription": "Popis",
|
||
"rolesCount": "{{count}} rolí",
|
||
"createRole": "Vytvořit",
|
||
"creating": "Vytváření...",
|
||
"exportDatabase": "Exportovat databázi",
|
||
"exportDatabaseDesc": "Stáhněte si zálohu všech hostitelů, přihlašovacích údajů a nastavení",
|
||
"export": "Vývozní",
|
||
"exporting": "Export...",
|
||
"importDatabase": "Importovat databázi",
|
||
"importDatabaseDesc": "Obnovení ze záložního souboru .sqlite",
|
||
"importDatabaseSelected": "Vybráno: {{name}}",
|
||
"selectFile": "Vybrat soubor",
|
||
"changeFile": "Přeměna",
|
||
"import": "Importovat",
|
||
"importing": "Import...",
|
||
"apiKeysCount": "{{count}} kláves",
|
||
"apiKeysDocsLink": "Zobrazit dokumenty",
|
||
"apiKeysCliHint": "Pro správu serverů z terminálu použijte klíč API s rozhraním Termix CLI.",
|
||
"apiKeysCliLink": "Zobrazit dokumentaci k rozhraní příkazového řádku",
|
||
"newApiKey": "Nový klíč API",
|
||
"apiKeyCreatedWarning": "Klíč vytvořen – zkopírujte ho nyní, už se nezobrazí.",
|
||
"apiKeyName": "Jméno",
|
||
"apiKeyUser": "Uživatel",
|
||
"apiKeySelectUser": "Vyberte uživatele...",
|
||
"apiKeyExpiresAt": "Platnost vyprší v",
|
||
"createKey": "Vytvořit klíč",
|
||
"apiKeyNoExpiry": "Bez expirace",
|
||
"revokedBadge": "ZRUŠENO",
|
||
"authTypeDual": "Duální ověřování",
|
||
"authTypeOidc": "OIDC",
|
||
"authTypeLocal": "Místní",
|
||
"adminStatusAdministrator": "Správce",
|
||
"adminStatusRegularUser": "Běžný uživatel",
|
||
"adminBadge": "ADMINISTRATIVA",
|
||
"systemBadge": "SYS",
|
||
"customBadge": "ZVYK",
|
||
"youBadge": "VY",
|
||
"sessionsActive": "{{count}} aktivní",
|
||
"sessionActive": "Aktivní: {{time}}",
|
||
"sessionExpires": "Platnost: {{time}}",
|
||
"revokeAll": "Vše",
|
||
"revokeAllSessionsSuccess": "Všechny relace pro uživatele zrušeny",
|
||
"revokeAllSessionsFailed": "Nepodařilo se zrušit relace",
|
||
"revokeSessionFailed": "Nepodařilo se zrušit relaci",
|
||
"addRole": "Přidat roli",
|
||
"noCustomRoles": "Žádné vlastní role nejsou definovány",
|
||
"removeRoleFailed": "Nepodařilo se odstranit roli",
|
||
"assignRoleFailed": "Přiřazení role se nezdařilo",
|
||
"deleteRoleFailed": "Nepodařilo se smazat roli",
|
||
"userAdminAccess": "Správce",
|
||
"userAdminAccessDesc": "Plný přístup ke všem nastavením administrátora",
|
||
"userRoles": "Role",
|
||
"revokeAllUserSessions": "Zrušit všechny relace",
|
||
"revokeAllUserSessionsDesc": "Vynutit opětovné přihlášení na všech zařízeních",
|
||
"revoke": "Zrušit",
|
||
"deleteUserWarning": "Smazání tohoto uživatele je trvalé.",
|
||
"deleteUser": "Smazat {{username}}",
|
||
"deleting": "Mazání...",
|
||
"deleteUserFailed": "Nepodařilo se smazat uživatele",
|
||
"deleteUserSuccess": "Uživatel „{{username}}“ byl smazán",
|
||
"deleteRoleSuccess": "Role „{{name}}“ smazána",
|
||
"revokeKeySuccess": "Klíč „{{name}}“ zrušen",
|
||
"revokeKeyFailed": "Zrušení klíče se nezdařilo",
|
||
"copiedToClipboard": "Zkopírováno do schránky",
|
||
"done": "Hotovo",
|
||
"createUserTitle": "Vytvořit uživatele",
|
||
"createUserDesc": "Vytvořte nový lokální účet.",
|
||
"createUserUsername": "Uživatelské jméno",
|
||
"createUserPassword": "Heslo",
|
||
"createUserPasswordHint": "Minimálně 6 znaků.",
|
||
"createUserEnterUsername": "Zadejte uživatelské jméno",
|
||
"createUserEnterPassword": "Zadejte heslo",
|
||
"createUserSubmit": "Vytvořit uživatele",
|
||
"editUserTitle": "Spravovat uživatele: {{username}}",
|
||
"editUserDesc": "Upravte role, stav administrátora, relace a nastavení účtu.",
|
||
"editUserUsername": "Uživatelské jméno",
|
||
"editUserAuthType": "Typ autorizace",
|
||
"editUserAdminStatus": "Stav administrátora",
|
||
"editUserUserId": "ID uživatele",
|
||
"linkAccountTitle": "Propojit účty",
|
||
"linkAccountDesc": "Sloučit účet OIDC {{username}} s existujícím lokálním účtem.",
|
||
"linkAccountDescLocal": "Propojte lokální účet {{username}} s existujícím účtem pouze pro OIDC.",
|
||
"linkAccountWarningTitle": "Toto bude:",
|
||
"linkAccountEffect1": "Smazat účet pouze pro OIDC",
|
||
"linkAccountEffect2": "Přidat přihlašovací údaje OIDC k cílovému účtu",
|
||
"linkAccountEffect3": "Povolit přihlášení OIDC i heslem",
|
||
"linkAccountTargetUsername": "Uživatelské jméno lokálního účtu",
|
||
"linkAccountTargetPlaceholder": "Zadejte uživatelské jméno místního účtu, ke kterému chcete připojit",
|
||
"linkAccountOidcUsername": "Uživatelské jméno účtu OIDC",
|
||
"linkAccountOidcPlaceholder": "Zadejte uživatelské jméno účtu pouze pro OIDC, který chcete sloučit",
|
||
"linkAccountOidcNotFound": "S tímto uživatelským jménem nebyl nalezen žádný účet pouze pro OIDC.",
|
||
"linkAccounts": "Propojit účty",
|
||
"linkAccountSuccess": "Účty byly úspěšně propojeny",
|
||
"linkAccountFailed": "Propojení účtů se nezdařilo",
|
||
"linkAccountInProgress": "Propojování...",
|
||
"unlinkAccountTitle": "Odpojit OIDC",
|
||
"unlinkAccountDesc": "Odeberte ověřování OIDC z {{username}}. Budou se moci přihlásit pouze pomocí svého hesla.",
|
||
"unlinkAccountWarning": "Tímto se z tohoto účtu odstraní přihlášení OIDC. Pro pokračování v přihlašování musí mít uživatel nastavené heslo.",
|
||
"unlinkAccount": "Odpojit OIDC",
|
||
"unlinkAccountInProgress": "Odpojení...",
|
||
"unlinkAccountSuccess": "Propojení OIDC bylo úspěšně odpojeno",
|
||
"unlinkAccountFailed": "Nepodařilo se odpojit OIDC",
|
||
"saving": "Ukládání...",
|
||
"updateRegistrationFailed": "Nepodařilo se aktualizovat nastavení registrace",
|
||
"updatePasswordLoginFailed": "Nepodařilo se aktualizovat nastavení přihlašovacího hesla",
|
||
"cannotDisablePasswordLoginWithTotp": "Nelze zakázat přihlašování heslem, pokud je pro jednoho nebo více uživatelů povoleno 2FA. Nejprve 2FA zakažte.",
|
||
"updateOidcAutoProvisionFailed": "Nepodařilo se aktualizovat nastavení automatického zřizování OIDC.",
|
||
"updateOidcSilentLoginDefaultFailed": "Nepodařilo se aktualizovat nastavení tichého přihlášení OIDC.",
|
||
"updatePasswordResetFailed": "Nastavení resetování hesla se nepodařilo aktualizovat",
|
||
"sessionTimeoutRange2": "Časový limit relace musí být mezi 1 a 720 hodinami.",
|
||
"sessionTimeoutSaved": "Časový limit relace uložen",
|
||
"sessionTimeoutSaveFailed": "Nepodařilo se uložit časový limit relace",
|
||
"monitoringIntervalInvalid": "Neplatné hodnoty intervalu",
|
||
"monitoringSaved": "Nastavení monitorování uloženo",
|
||
"monitoringSaveFailed": "Nepodařilo se uložit nastavení monitorování",
|
||
"metricsHistoryRetention": "Uchovávání historie metrik",
|
||
"metricsHistoryRetentionRange": "1 až 90 dní",
|
||
"days": "dny",
|
||
"guacamoleSaved": "Nastavení guacamole uloženo",
|
||
"guacamoleSaveFailed": "Uložení nastavení guacamole se nezdařilo",
|
||
"guacamoleUpdateFailed": "Nastavení guacamole se nepodařilo aktualizovat",
|
||
"tailscaleSettingsSaved": "Nastavení koncové stupnice uloženo",
|
||
"tailscaleSettingsSaveFailed": "Nepodařilo se uložit nastavení Tailscale",
|
||
"logLevelUpdateFailed": "Nepodařilo se aktualizovat úroveň protokolu",
|
||
"oidcSaved": "Konfigurace OIDC uložena",
|
||
"oidcSaveFailed": "Nepodařilo se uložit konfiguraci OIDC",
|
||
"oidcRemoved": "Konfigurace OIDC odstraněna",
|
||
"oidcRemoveFailed": "Nepodařilo se odebrat konfiguraci OIDC",
|
||
"createUserRequired": "Uživatelské jméno a heslo jsou vyžadovány",
|
||
"createUserPasswordTooShort": "Heslo musí mít alespoň 6 znaků",
|
||
"createUserSuccess": "Uživatel „{{username}}“ vytvořil",
|
||
"createUserFailed": "Vytvoření uživatele se nezdařilo",
|
||
"updateAdminStatusFailed": "Nepodařilo se aktualizovat stav administrátora",
|
||
"allSessionsRevoked": "Všechny relace zrušeny",
|
||
"revokeSessionsFailed": "Nepodařilo se zrušit relace",
|
||
"manageUserData": "Správa uživatelských dat",
|
||
"backToUsers": "Zpět k uživatelům",
|
||
"manageTabAccount": "Účet",
|
||
"manageTabHosts": "Hostitelé",
|
||
"manageTabCredentials": "Pověření",
|
||
"manageTabSnippets": "Úryvky",
|
||
"manageTabSessions": "Relace",
|
||
"manageTabDanger": "Nebezpečí",
|
||
"manageEditorBack": "Zpět k datům uživatele {{username}}",
|
||
"dataLockedBadge": "ZAMČENO",
|
||
"dataLockedNotice": "Data uživatele {{username}}zůstanou uzamčena až do jeho dalšího přihlášení. Do té doby nelze jeho hostitele, přihlašovací údaje a úryvky zobrazit ani upravovat.",
|
||
"resetPasswordTitle": "Obnovit heslo",
|
||
"resetPasswordOidcOnly": "Tento uživatel se přihlašuje přes externího poskytovatele a nemá heslo.",
|
||
"resetPasswordPlaceholder": "Nové heslo",
|
||
"resetPasswordBtn": "Obnovit",
|
||
"resetPasswordWorking": "Resetování...",
|
||
"resetPasswordSuccess": "Obnovení hesla",
|
||
"resetPasswordSuccessWiped": "Reset hesla. Šifrovaná data uživatele byla vymazána.",
|
||
"resetPasswordFailed": "Obnovení hesla se nezdařilo",
|
||
"resetPasswordConfirmWipe": "{{username}} se od aktualizace šifrování nepřihlásil, takže jeho data nelze obnovit. Resetováním nyní smažete jeho hostitele, přihlašovací údaje a úryvky. Pokračovat?",
|
||
"totpSectionTitle": "Dvoufaktorové ověřování",
|
||
"totpStatusEnabled": "TOTP je pro tohoto uživatele povolen",
|
||
"totpStatusDisabled": "TOTP není pro tohoto uživatele povoleno",
|
||
"disableTotp": "Zakázat",
|
||
"disableTotpConfirm": "Zakázat dvoufaktorové ověřování pro {{username}}? Budou se moci přihlásit pouze pomocí hesla.",
|
||
"totpDisabledSuccess": "TOTP zakázán",
|
||
"totpDisableFailed": "Nepodařilo se zakázat TOTP",
|
||
"manageApiKeys": "Klíče API",
|
||
"apiKeyNamePlaceholder": "Název klíče",
|
||
"apiKeyCopyNotice": "Zkopírujte tento klíč nyní, už se vám nezobrazí.",
|
||
"noApiKeysForUser": "Žádné API klíče",
|
||
"apiKeyDeleteFailed": "Nepodařilo se smazat klíč API",
|
||
"exportUserData": "Export dat",
|
||
"exportUserDataDesc": "Stáhnout hostitele, přihlašovací údaje a data správce souborů tohoto uživatele ve formátu JSON. Tajné kódy jsou dešifrovány.",
|
||
"exportUserDataSuccess": "Exportovaná uživatelská data",
|
||
"exportUserDataFailed": "Nepodařilo se exportovat uživatelská data",
|
||
"hostsCount": "{{count}} hostitelé",
|
||
"addHostForUser": "Přidat hostitele",
|
||
"noHostsForUser": "Tento uživatel nemá žádné hostitele",
|
||
"connectToHost": "Připojit",
|
||
"deleteHostConfirm": "Smazat hostitele „{{name}}“ patřícího do {{username}}?",
|
||
"hostDeletedSuccess": "Hostitel smazán",
|
||
"hostDeleteFailed": "Nepodařilo se smazat hostitele",
|
||
"credentialsCount": "{{count}} pověření",
|
||
"addCredentialForUser": "Přidat přihlašovací údaje",
|
||
"noCredentialsForUser": "Tento uživatel nemá žádné přihlašovací údaje",
|
||
"deleteCredentialConfirm": "Smazat přihlašovací údaje „{{name}}“ patřící uživateli {{username}}?",
|
||
"credentialDeletedSuccess": "Přihlašovací údaje smazány",
|
||
"credentialDeleteFailed": "Nepodařilo se smazat přihlašovací údaje",
|
||
"snippetsCount": "úryvky {{count}}",
|
||
"addSnippetForUser": "Přidat úryvek",
|
||
"noSnippetsForUser": "Tento uživatel nemá žádné úryvky",
|
||
"snippetRequiredFields": "Název a obsah úryvku jsou povinné",
|
||
"snippetNamePlaceholder": "Název úryvku",
|
||
"snippetContentPlaceholder": "Obsah příkazu",
|
||
"snippetFolderPlaceholder": "Složka (volitelné)",
|
||
"snippetSaved": "Úryvek uložen",
|
||
"snippetSaveFailed": "Uložení úryvku se nezdařilo",
|
||
"deleteSnippetConfirm": "Smazat úryvek „{{name}}“ patřící do {{username}}?",
|
||
"snippetDeletedSuccess": "Úryvek smazán",
|
||
"snippetDeleteFailed": "Nepodařilo se smazat úryvek",
|
||
"noSessionsForUser": "Žádné aktivní relace",
|
||
"deleteUserDangerDesc": "Trvale smazat {{username}} a všechna jeho data (hostitele, přihlašovací údaje, úryvky, historii). Tuto akci nelze vrátit zpět.",
|
||
"deleteUserConfirm": "Trvale smazat {{username}} a všechna jeho data?",
|
||
"deleteUserAdminBlocked": "Před smazáním tohoto uživatele odeberte status administrátora.",
|
||
"createRoleRequired": "Jméno a zobrazované jméno jsou povinné",
|
||
"createRoleSuccess": "Role „{{name}}“ byla vytvořena",
|
||
"createRoleFailed": "Vytvoření role se nezdařilo",
|
||
"apiKeyNameRequired": "Název klíče je povinný",
|
||
"apiKeyUserRequired": "Je vyžadováno ID uživatele",
|
||
"apiKeyCreatedSuccess": "Klíč API „{{name}}“ byl vytvořen",
|
||
"apiKeyCreateFailed": "Nepodařilo se vytvořit klíč API",
|
||
"exportSuccess": "Databáze byla úspěšně exportována",
|
||
"exportFailed": "Export databáze se nezdařil",
|
||
"importSelectFile": "Nejprve prosím vyberte soubor",
|
||
"importCompleted": "Import dokončen: {{total}} položek importováno, {{skipped}} přeskočeno",
|
||
"importFailed": "Import se nezdařil: {{error}}",
|
||
"importError": "Import databáze selhal",
|
||
"sectionHostDefaults": "Výchozí nastavení hostitele",
|
||
"hostDefaultsDesc": "Nastavení se automaticky použijí při vytváření nového hostitele. Jednotliví hostitelé je mohou i nadále přepsat.",
|
||
"hostDefaultsSocks5": "Proxy SOCKS5",
|
||
"hostDefaultsUseSocks5": "Povolit proxy SOCKS5",
|
||
"hostDefaultsUseSocks5Desc": "Předvyplňte proxy SOCKS5 na všech nových hostitelích",
|
||
"hostDefaultsSocks5Host": "Proxy hostitel / port",
|
||
"hostDefaultsSocks5Username": "Uživatelské jméno proxy serveru",
|
||
"hostDefaultsSocks5Password": "Heslo proxy serveru",
|
||
"hostDefaultsMetrics": "Metriky hostitele",
|
||
"hostDefaultsMetricsEnabled": "Povolit metriky",
|
||
"hostDefaultsMetricsEnabledDesc": "Ve výchozím nastavení shromažďovat statistiky CPU, paměti a další statistiky na nových hostitelích",
|
||
"hostDefaultsStatusCheckEnabled": "Povolit kontrolu stavu",
|
||
"hostDefaultsStatusCheckEnabledDesc": "Ve výchozím nastavení zobrazovat stav online/offline na nových hostitelích",
|
||
"hostDefaultsTerminal": "Terminál",
|
||
"hostDefaultsSessionLogging": "Protokolování relací",
|
||
"hostDefaultsSessionLoggingDesc": "Ve výchozím nastavení zaznamenává terminálové relace na nových hostitelích",
|
||
"hostDefaultsCommandHistory": "Historie příkazů",
|
||
"hostDefaultsCommandHistoryDesc": "Sledování historie příkazů na nových hostitelích ve výchozím nastavení",
|
||
"hostDefaultsSaved": "Výchozí nastavení hostitele uloženo",
|
||
"hostDefaultsSaveFailed": "Nepodařilo se uložit výchozí nastavení hostitele",
|
||
"rolePermissions": {
|
||
"count": "{{count}} oprávnění",
|
||
"editAction": "Upravit oprávnění",
|
||
"loadError": "Nepodařilo se načíst katalog oprávnění",
|
||
"saved": "Oprávnění role uložena",
|
||
"saveError": "Uložení oprávnění role se nezdařilo",
|
||
"save": "Uložit",
|
||
"saving": "Ukládání..."
|
||
},
|
||
"aiGloballyEnabled": "Asistent s umělou inteligencí",
|
||
"aiGloballyEnabledDesc": "Umožněte uživatelům zapnout asistenta s umělou inteligencí. Pokud je tato funkce vypnutá, asistent je skrytý a blokovaný pro všechny.",
|
||
"aiPrivateEndpoints": "Povolení soukromí hostitelé s umělou inteligencí",
|
||
"aiPrivateEndpointsDesc": "Hostitelé ve vaší privátní síti, na které mohou uživatelé odkazovat poskytovatele, například samostatně hostovaný Ollama. Oddělte je čárkami.",
|
||
"updateAiEnabledFailed": "Nepodařilo se aktualizovat nastavení umělé inteligence",
|
||
"updateAiEndpointsFailed": "Nepodařilo se aktualizovat povolené hostitele"
|
||
},
|
||
"newUi": {
|
||
"sidebar": {
|
||
"quickConnect": {
|
||
"hostLabel": "Hostitel",
|
||
"hostPlaceholder": "192.168.1.1 nebo example.com",
|
||
"portLabel": "Přístav",
|
||
"portPlaceholder": "22",
|
||
"usernameLabel": "Uživatelské jméno",
|
||
"usernamePlaceholder": "uživatelské jméno",
|
||
"authLabel": "Autorizace",
|
||
"passwordLabel": "Heslo",
|
||
"passwordPlaceholder": "heslo",
|
||
"privateKeyLabel": "Soukromý klíč",
|
||
"privateKeyPlaceholder": "Vložit soukromý klíč...",
|
||
"credentialLabel": "Pověření",
|
||
"credentialPlaceholder": "Vyberte uložené přihlašovací údaje",
|
||
"connectToTerminal": "Připojení k terminálu",
|
||
"connectToFiles": "Připojení k souborům"
|
||
},
|
||
"history": {
|
||
"noTerminalSelected": "Není vybrán žádný terminál",
|
||
"noTerminalSelectedHint": "Otevření karty terminálu SSH pro zobrazení historie jejích příkazů",
|
||
"searchPlaceholder": "Historie vyhledávání...",
|
||
"clearAll": "Vymazat vše",
|
||
"noHistoryEntries": "Žádné záznamy v historii",
|
||
"trackingDisabled": "Sledování historie je zakázáno",
|
||
"trackingDisabledHint": "Povolte to v nastavení terminálu hostitele."
|
||
},
|
||
"sshTools": {
|
||
"keyRecordingTitle": "Nahrávání klíčů",
|
||
"recordToTerminals": "Záznam do terminálů",
|
||
"selectAll": "Vše",
|
||
"selectNone": "Žádný",
|
||
"noTerminalTabsOpen": "Žádné otevřené karty terminálu",
|
||
"selectTerminalsAbove": "Vyberte terminály výše",
|
||
"broadcastInputPlaceholder": "Zde napište pro vysílání stisknutí kláves...",
|
||
"fillPassword": "Vyplňte heslo",
|
||
"fillPasswordSuccess": "Heslo vyplněno do terminálu(ů) {{count}}",
|
||
"fillPasswordMissing": "Pro {{count}} vybraných terminálů není uloženo žádné heslo.",
|
||
"stopRecording": "Zastavit nahrávání",
|
||
"startRecording": "Spustit nahrávání",
|
||
"settingsTitle": "Nastavení",
|
||
"enableRightClickCopyPaste": "Povolit kopírování/vkládání kliknutím pravým tlačítkem myši"
|
||
},
|
||
"splitScreen": {
|
||
"layoutTitle": "Rozvržení",
|
||
"selectLayoutAbove": "Vyberte rozvržení výše",
|
||
"selectLayoutHint": "Vyberte, kolik panelů se má zobrazit",
|
||
"panesTitle": "Panely",
|
||
"openTabsTitle": "Otevřené karty",
|
||
"dragTabsHint": "Přetáhněte záložky do panelů výše nebo použijte Rychlé přiřazení",
|
||
"dropHere": "Zde umístěte",
|
||
"emptyPane": "Prázdný",
|
||
"dashboard": "Dashboard",
|
||
"clearSplitScreen": "Vymazat rozdělenou obrazovku",
|
||
"quickAssign": "Rychlé přiřazení",
|
||
"alreadyAssigned": "Podokno {{index}}",
|
||
"splitTab": "Rozdělit kartu",
|
||
"addToSplit": "Přidat do Splitu",
|
||
"removeFromSplit": "Odebrat ze Splitu",
|
||
"assignToPane": "Přiřadit k podoknu",
|
||
"hotkeysTitle": "Klávesové zkratky",
|
||
"hotkeysSplitRight": "Přepnout 2cestné rozdělení",
|
||
"hotkeysSplitBelow": "Přepnout třícestné rozdělení",
|
||
"hotkeysNavigatePane": "Navigace v panelech",
|
||
"hotkeysNextTab": "Další záložka",
|
||
"hotkeysPrevTab": "Předchozí karta",
|
||
"hotkeysJumpTab": "Přejít na kartu"
|
||
},
|
||
"snippets": {
|
||
"title": "Úryvky",
|
||
"createSnippetTitle": "Vytvořit úryvek",
|
||
"createSnippetDescription": "Vytvořte nový úryvek příkazu pro rychlé spuštění",
|
||
"nameLabel": "Jméno",
|
||
"namePlaceholder": "např. restartujte Nginx",
|
||
"descriptionLabel": "Popis",
|
||
"descriptionPlaceholder": "Volitelný popis",
|
||
"optional": "Volitelný",
|
||
"folderLabel": "Složka",
|
||
"noFolder": "Žádná složka (Nezařazené)",
|
||
"commandLabel": "Příkaz",
|
||
"commandPlaceholder": "např. sudo systemctl restart nginx",
|
||
"typeLabel": "Typ",
|
||
"typeCommand": "Příkaz",
|
||
"typeNote": "Poznámka",
|
||
"noteLabel": "Poznámka",
|
||
"notePlaceholder": "např. opakovaně použitelný text s výzvou nebo připomínkou",
|
||
"cancel": "Zrušit",
|
||
"createSnippetButton": "Vytvořit úryvek",
|
||
"createFolderTitle": "Vytvořit složku",
|
||
"createFolderDescription": "Uspořádejte si úryvky do složek",
|
||
"folderNameLabel": "Název složky",
|
||
"folderNamePlaceholder": "např. systémové příkazy, Docker skripty",
|
||
"folderColorLabel": "Barva složky",
|
||
"folderIconLabel": "Ikona složky",
|
||
"previewLabel": "Náhled",
|
||
"folderNameFallback": "Název složky",
|
||
"createFolderButton": "Vytvořit složku",
|
||
"targetTerminals": "Cílové terminály",
|
||
"selectAll": "Vše",
|
||
"selectNone": "Žádný",
|
||
"noTerminalTabsOpen": "Žádné otevřené karty terminálu",
|
||
"searchPlaceholder": "Vyhledat úryvky...",
|
||
"newSnippet": "Nový úryvek",
|
||
"newFolder": "Nová složka",
|
||
"run": "Běh",
|
||
"noSnippetsInFolder": "V této složce nejsou žádné úryvky",
|
||
"uncategorized": "Nezařazené",
|
||
"editSnippetTitle": "Upravit úryvek",
|
||
"editSnippetDescription": "Aktualizujte tento úryvek příkazu",
|
||
"saveSnippetButton": "Uložit změny",
|
||
"createSuccess": "Úryvek byl úspěšně vytvořen",
|
||
"createFailed": "Nepodařilo se vytvořit úryvek",
|
||
"updateSuccess": "Úryvek byl úspěšně aktualizován",
|
||
"updateFailed": "Nepodařilo se aktualizovat úryvek",
|
||
"deleteFailed": "Nepodařilo se smazat úryvek",
|
||
"folderCreateSuccess": "Složka byla úspěšně vytvořena",
|
||
"folderCreateFailed": "Nepodařilo se vytvořit složku",
|
||
"editFolderTitle": "Upravit složku",
|
||
"editFolderDescription": "Přejmenovat nebo změnit vzhled této složky",
|
||
"saveFolderButton": "Uložit změny",
|
||
"editFolder": "Upravit složku",
|
||
"deleteFolder": "Smazat složku",
|
||
"folderDeleteSuccess": "Složka „{{name}}“ smazána",
|
||
"folderDeleteFailed": "Složku se nepodařilo smazat",
|
||
"folderEditSuccess": "Složka byla úspěšně aktualizována",
|
||
"folderEditFailed": "Nepodařilo se aktualizovat složku",
|
||
"confirmRunMessage": "Spustit „{{name}}“?",
|
||
"confirmRunButton": "Běh",
|
||
"runSuccess": "Spustil „{{name}}“ v {{count}} terminálu(ů)",
|
||
"pasteSuccess": "Vloženo „{{name}}“ do terminálu(ů) {{count}}",
|
||
"pasteToTerminal": "Pasta",
|
||
"copySuccess": "Zkopírováno „{{name}}“ do schránky",
|
||
"shareTitle": "Sdílet úryvek",
|
||
"shareUser": "Uživatel",
|
||
"shareRole": "Role",
|
||
"selectUser": "Vyberte uživatele...",
|
||
"selectRole": "Vyberte roli...",
|
||
"shareSuccess": "Úryvek byl úspěšně sdílen",
|
||
"shareFailed": "Sdílení úryvku se nezdařilo",
|
||
"revokeSuccess": "Přístup zrušen",
|
||
"revokeFailed": "Zrušení přístupu se nezdařilo",
|
||
"currentAccess": "Aktuální přístup",
|
||
"shareLoadError": "Nepodařilo se načíst data sdílení",
|
||
"loading": "Načítání...",
|
||
"close": "Blízko",
|
||
"reorderFailed": "Nepodařilo se uložit pořadí úryvků",
|
||
"importExport": "Import / Export",
|
||
"exportBtn": "Exportovat JSON",
|
||
"importBtn": "Importovat JSON",
|
||
"exportSuccess": "Úryvky byly úspěšně exportovány",
|
||
"exportFailed": "Export úryvků se nezdařilo",
|
||
"importTitle": "Importovat úryvky",
|
||
"importDescription": "Import úryvků a složek ze souboru JSON exportovaného aplikací Termix",
|
||
"importDropOrClick": "Vložte sem soubor JSON nebo klikněte pro procházení",
|
||
"importSelectedFile": "Vybráno: {{name}}",
|
||
"importOverwrite": "Přepsat existující úryvky stejným názvem a složkou",
|
||
"importStartBtn": "Importovat",
|
||
"importSuccess": "Import dokončen: {{snippets}} přidán(y), {{updated}} aktualizováno, {{skipped}} přeskočeno, {{folders}} přidáno(y) složek",
|
||
"importFailed": "Import úryvků se nezdařilo",
|
||
"importInvalidFile": "Neplatný soubor: očekával se objekt JSON s úryvky kódu nebo poli složek.",
|
||
"targetHostsLabel": "Cílové hostitele",
|
||
"targetHostsHint": "Přiřaďte hostitele, aby spustili tento úryvek přímo bez otevřeného terminálu.",
|
||
"noHostsAvailable": "Žádní hostitelé nakonfigurováni",
|
||
"clearTargetHosts": "Vymazat vše",
|
||
"hasTargetHosts": "Má cílové hostitele",
|
||
"runOnTargets": "Běh na cíle",
|
||
"directRunSuccess": "Spuštěno „{{name}}“ na hostiteli {{count}}",
|
||
"directRunPartialFail": "„{{name}}“ selhalo na jednom nebo více hostitelích",
|
||
"executionResultTitle": "Výsledky provedení: {{name}}",
|
||
"executionResultDescription": "Výstup ze spuštění úryvku kódu na každém cílovém hostiteli.",
|
||
"executionSuccess": "Úspěch",
|
||
"executionFailed": "Selhalo",
|
||
"expandAll": "Rozbalit všechny složky",
|
||
"collapseAll": "Sbalit všechny složky",
|
||
"settings": "Nastavení úryvků",
|
||
"variablesHint": "Proměnné: $HOST, $USER, $PORT, $NAME, ${INPUT_1:Popis}",
|
||
"variablesDialogTitle": "Spustit „{{name}}“",
|
||
"variablesDialogDescription": "Před spuštěním úryvku kódu vyplňte jeho potřebné hodnoty.",
|
||
"variablesPreviewLabel": "Náhled",
|
||
"variablesConfirmButton": "Běh"
|
||
},
|
||
"automations": {
|
||
"title": "Automatizace",
|
||
"tabAutomations": "Automatizace",
|
||
"tabRuns": "Běhy",
|
||
"tabChannels": "Kanály",
|
||
"createAutomation": "Nová automatizace",
|
||
"backToAutomations": "Zpět k automatizaci",
|
||
"createTitle": "Nová automatizace",
|
||
"editTitle": "Upravit automatizaci",
|
||
"empty": "Zatím žádné automatizace. Vytvořte si automatizaci, která bude reagovat na metriku, plán nebo událost.",
|
||
"emptyRuns": "Zatím žádné běhy.",
|
||
"emptyChannels": "Zatím žádné kanály. Přidejte jeden, abyste někam mohli odesílat oznámení.",
|
||
"noChannelsHint": "Zatím nejsou nastaveny žádné kanály. Přidejte jeden na kartě Kanály.",
|
||
"addChannel": "Přidat kanál",
|
||
"testChannel": "Test",
|
||
"channelTestSent": "Testovací oznámení odesláno",
|
||
"channelTestFailed": "Testovací oznámení selhalo",
|
||
"channelDeleted": "Kanál smazán",
|
||
"deleteChannelConfirm": "Smazat tento kanál? Automatizace, které ho používají, přestanou zasílat upozornění.",
|
||
"nameLabel": "Jméno",
|
||
"namePlaceholder": "např. Vyčistit /data, když se zaplní",
|
||
"nameRequired": "Jméno je povinné",
|
||
"descriptionLabel": "Popis",
|
||
"descriptionPlaceholder": "Volitelný popis",
|
||
"enabledLabel": "Povoleno",
|
||
"concurrencyLabel": "Pokud již běží",
|
||
"concurrencyHint": "Co dělat, když se to spustí znovu před dokončením posledního běhu.",
|
||
"concurrency": {
|
||
"skip": "Přeskočit nový běh",
|
||
"queue": "Čekej a běž za ním",
|
||
"allow": "Spustit obojí najednou"
|
||
},
|
||
"save": "Uložit",
|
||
"created": "Automatizace vytvořena",
|
||
"updated": "Automatizace uložena",
|
||
"deleted": "Automatizace smazána",
|
||
"deleteConfirm": "Smazat tuto automatizaci? Její historie spuštění bude také smazána.",
|
||
"runNow": "Běhej hned",
|
||
"testRun": "Zkušební provoz",
|
||
"testRunHint": "Provádí každý krok, ale nedotýká se ničeho mimo Termix.",
|
||
"runStarted": "Běh byl zahájen",
|
||
"runFinished": "Běh dokončen: {{status}}",
|
||
"trigger": "Spoušť",
|
||
"steps": "Kroky",
|
||
"addStep": "Přidat krok",
|
||
"removeStep": "Odebrat krok",
|
||
"moveUp": "Posunout nahoru",
|
||
"moveDown": "Přesunout dolů",
|
||
"noSteps": "Zatím žádné kroky. Přidejte jeden, který popisuje, co by se mělo stát.",
|
||
"webhookTokenTitle": "URL webhooku",
|
||
"webhookTokenDescription": "Toto se zobrazí jednou. Uložte si to nyní, později to nelze načíst.",
|
||
"copy": "Kopie",
|
||
"copied": "Zkopírováno",
|
||
"viewJson": "JSON",
|
||
"viewBuilder": "Stavitel",
|
||
"viewGraph": "Graf",
|
||
"lastRun": "Poslední běh",
|
||
"never": "Nikdy",
|
||
"duration": "{{seconds}}s",
|
||
"stepOutput": "Výstup",
|
||
"stepError": "Chyba",
|
||
"dryRunBadge": "Zkušební provoz",
|
||
"hostSelector": {
|
||
"trigger": "Spouštěcí hostitel",
|
||
"host": "Specifický hostitel",
|
||
"fleet": "Loďstvo",
|
||
"all": "Všichni hostitelé"
|
||
},
|
||
"triggerKinds": {
|
||
"metric_threshold": "Prahová hodnota metriky",
|
||
"host_status": "Hostitel jde nahoru nebo dolů",
|
||
"health_check": "Změny v kontrolách stavu",
|
||
"schedule": "Podle plánu",
|
||
"docker_event": "Událost kontejneru",
|
||
"internal_event": "Událost Termix",
|
||
"webhook": "Příchozí webhook"
|
||
},
|
||
"stepTypes": {
|
||
"notify": "Odeslat oznámení",
|
||
"http": "Zavolat URL",
|
||
"run_snippet": "Spustit úryvek",
|
||
"run_command": "Spusťte příkaz",
|
||
"docker": "Ovládání kontejneru",
|
||
"tunnel": "Ovládejte tunel",
|
||
"wol": "Probuďte hostitele",
|
||
"wait": "Počkejte",
|
||
"set_var": "Nastavení proměnné",
|
||
"if": "Pokud / jinak",
|
||
"run_automation": "Spusťte další automatizaci",
|
||
"stop": "Zastávka"
|
||
},
|
||
"statuses": {
|
||
"running": "Běh",
|
||
"success": "Úspěch",
|
||
"failed": "Selhalo",
|
||
"timeout": "Časový limit vypršel",
|
||
"skipped": "Přeskočeno",
|
||
"cancelled": "Zrušeno"
|
||
},
|
||
"fields": {
|
||
"host": "Hostitel",
|
||
"metric": "Metrický",
|
||
"mount": "Bod připojení",
|
||
"operator": "Je",
|
||
"value": "Hodnota",
|
||
"forSeconds": "Trvalé po dobu (sekund)",
|
||
"cooldown": "Doba ochlazování (minuty)",
|
||
"cron": "Cron výraz",
|
||
"intervalSeconds": "Každých (sekund)",
|
||
"timezone": "Časové pásmo",
|
||
"timezoneServer": "Čas serveru",
|
||
"timezoneHint": "V této zóně se odečítají časy Cron. Nevztahuje se na intervalové plány.",
|
||
"container": "Kontejner",
|
||
"command": "Příkaz",
|
||
"url": "URL",
|
||
"method": "Metoda",
|
||
"body": "Tělo",
|
||
"channels": "Kanály",
|
||
"title": "Titul",
|
||
"message": "Zpráva",
|
||
"snippet": "Úryvek",
|
||
"seconds": "Sekundy",
|
||
"conditionLeftPlaceholder": "Hodnota ke kontrole",
|
||
"conditionRightPlaceholder": "Porovnat s",
|
||
"variableName": "Název proměnné",
|
||
"variableValue": "Hodnota",
|
||
"elevated": "Spusťte pomocí sudo",
|
||
"onError": "Pokud se to nepodaří",
|
||
"allowPrivateNetwork": "Povolit lokální síťové adresy",
|
||
"allowPrivateNetworkHint": "Vyžadováno pro službu hostovanou na vašem lokálním serveru (LAN). Ve výchozím nastavení vypnuto, aby se zabránilo požadavkům na interní adresy."
|
||
},
|
||
"onError": {
|
||
"stop": "Zastav běh",
|
||
"continue": "Pokračovat"
|
||
}
|
||
},
|
||
"fleets": {
|
||
"title": "Flotily",
|
||
"createFleet": "Vytvořit flotilu",
|
||
"createFleetTitle": "Vytvořit flotilu",
|
||
"editFleetTitle": "Upravit flotilu",
|
||
"createFleetDescription": "Flotila je pojmenovaná skupina hostitelů, proti kterým můžete jako jednotce spouštět akce.",
|
||
"nameLabel": "Jméno",
|
||
"namePlaceholder": "např. webové servery",
|
||
"nameRequired": "Název flotily je povinný",
|
||
"descriptionLabel": "Popis",
|
||
"descriptionPlaceholder": "Volitelný popis",
|
||
"colorLabel": "Barva",
|
||
"tagRulesLabel": "Pravidla pro tagy",
|
||
"tagRulesPlaceholder": "prod-web, okraj",
|
||
"tagRulesHint": "Hostitelé s některým z těchto tagů jsou zahrnuti automaticky, kromě hostitelů přidaných ručně.",
|
||
"fleetCreated": "Vytvořená flotila",
|
||
"fleetUpdated": "Aktualizace vozového parku",
|
||
"fleetDeleted": "Flotila smazána",
|
||
"saveFailed": "Uložení flotily se nezdařilo",
|
||
"deleteFailed": "Nepodařilo se smazat flotilu",
|
||
"loadFailed": "Načtení flotil se nezdařilo",
|
||
"deleteFleetTitle": "Smazat flotilu",
|
||
"deleteFleetDescription": "Opravdu chcete smazat „{{name}}“? Tímto se neodstraní samotní hostitelé členů.",
|
||
"searchFleets": "Hledat flotily...",
|
||
"noFleets": "Zatím žádné flotily. Vytvořte si jednu a začněte.",
|
||
"memberCount": "{{count}} hostitel",
|
||
"memberCount_other": "{{count}} hostitelé",
|
||
"manageMembers": "Spravovat členy",
|
||
"manageMembersTitle": "Správa členů vozového parku",
|
||
"manageMembersDescription": "Přepíná hostitele do statického členství této flotily nebo z něj. Hostitelé odpovídající pravidlům tagů jsou vždy zahrnuti.",
|
||
"searchHosts": "Hledat hostitele...",
|
||
"noHostsFound": "Nenalezeny žádné hostitele",
|
||
"noMembers": "Tato flotila zatím nemá žádné členy. Přidejte hostitele nebo nastavte pravidlo pro tagy.",
|
||
"membersLoadFailed": "Nepodařilo se načíst členy flotily",
|
||
"memberUpdateFailed": "Nepodařilo se aktualizovat členství ve flotile",
|
||
"tabRun": "Spustit příkaz",
|
||
"tabTransfer": "Přenos souborů",
|
||
"tabInventory": "Inventář",
|
||
"openInventoryTab": "Otevřít na celou kartu",
|
||
"tabPackages": "Balíčky",
|
||
"runOnFleet": "Běh na flotile",
|
||
"commandPlaceholder": "doba provozuschopnosti && df -h",
|
||
"commandRequired": "Je vyžadován příkaz",
|
||
"commandInputsLabel": "Vstupy příkazů",
|
||
"commandSucceeded": "Příkaz byl úspěšný na všech hostitelích",
|
||
"commandPartialFailure": "{{failed}} z {{total}} hostitelů selhalo",
|
||
"commandFailed": "Nepodařilo se spustit příkaz",
|
||
"resultSuccess": "Úspěch",
|
||
"resultFailed": "Selhalo",
|
||
"push": "TAM",
|
||
"pull": "SEM",
|
||
"remotePathLabel": "Vzdálená cesta",
|
||
"remotePathRequired": "Je vyžadována vzdálená cesta.",
|
||
"fileLabel": "Soubor",
|
||
"fileRequired": "Je vyžadován soubor",
|
||
"pushHint": "Vybraný soubor se zapíše do této přesné cesty na každém hostiteli ve flotile.",
|
||
"pullHint": "Soubor v této cestě je načten z každého hostitele a stažen jako jeden zip soubor, jedna složka na hostitele.",
|
||
"transferComplete": "Převod dokončen",
|
||
"transferFailed": "Přenos se nezdařil",
|
||
"refreshInventory": "Obnovit inventář",
|
||
"inventoryLoadFailed": "Nepodařilo se načíst inventář",
|
||
"inventoryRefreshed": "Obnovení zásob",
|
||
"inventoryRefreshFailed": "Nepodařilo se aktualizovat inventář",
|
||
"inventoryNoData": "Zatím nejsou k dispozici žádná data o zásobách – obnovte stránku pro jejich shromažďování.",
|
||
"inventoryHost": "Hostitel",
|
||
"inventoryCollectedCount": "{{count}}/{{total}} shromážděno",
|
||
"inventoryOs": "OS",
|
||
"inventoryKernel": "Jádro",
|
||
"inventoryArch": "Oblouk",
|
||
"inventoryUptime": "Doba provozuschopnosti",
|
||
"inventoryPackageManager": "Správce balíčků",
|
||
"inventoryCollectedAt": "Sebrané",
|
||
"packageActionLabel": "Akce",
|
||
"packageInstall": "Instalovat",
|
||
"packageRemove": "Odstranit",
|
||
"packageUpgradeAll": "Aktualizujte všechny balíčky",
|
||
"packageNameLabel": "Název balíčku",
|
||
"packageNameRequired": "Je vyžadován název balíčku.",
|
||
"packageHint": "Vyžaduje přístup na úrovni správy pro každého hostitele a zvyšuje oprávnění pomocí uloženého hesla sudo hostitele."
|
||
},
|
||
"workspaces": {
|
||
"title": "Pracovní prostory",
|
||
"saveCurrent": "Uložit aktuální",
|
||
"saveCurrentTitle": "Uložit aktuální pracovní prostor",
|
||
"saveCurrentDescription": "Uložte každou otevřenou kartu, rozdělené rozvržení a uspořádání panelů jako nový pojmenovaný pracovní prostor.",
|
||
"nameLabel": "Jméno",
|
||
"namePlaceholder": "např. ladění produktu",
|
||
"nameRequired": "Název pracovního prostoru je povinný",
|
||
"colorLabel": "Barva",
|
||
"workspaceCreated": "Pracovní prostor uložen",
|
||
"workspaceUpdated": "Pracovní prostor aktualizován",
|
||
"workspaceDeleted": "Pracovní prostor smazán",
|
||
"workspaceDuplicated": "Pracovní prostor byl duplikován",
|
||
"saveFailed": "Uložení pracovního prostoru se nezdařilo",
|
||
"updateFailed": "Aktualizace pracovního prostoru se nezdařilo",
|
||
"deleteFailed": "Nepodařilo se smazat pracovní prostor",
|
||
"duplicateFailed": "Nepodařilo se duplikovat pracovní prostor",
|
||
"loadFailed": "Nepodařilo se načíst pracovní prostory",
|
||
"applyFailed": "Použití pracovního prostoru se nezdařilo",
|
||
"deleteWorkspaceTitle": "Smazat pracovní prostor",
|
||
"deleteWorkspaceDescription": "Opravdu chcete smazat „{{name}}“? Tuto akci nelze vrátit zpět.",
|
||
"noWorkspaces": "Zatím nejsou uložené žádné pracovní prostory. Chcete-li začít, uložte si aktuální uspořádání karet.",
|
||
"tabCount": "{{count}} záložka",
|
||
"tabCount_other": "{{count}} záložek",
|
||
"apply": "Použít",
|
||
"applyConfirmTitle": "Použít pracovní prostor",
|
||
"applyConfirmDescription": "Použitím „{{name}}“ zavřete aktuální karty a nahradí je uloženým uspořádáním tohoto pracovního prostoru. Neuložené změny aktuálního rozvržení budou ztraceny.",
|
||
"applyConfirmButton": "Použít pracovní prostor",
|
||
"updateWithCurrent": "Aktualizovat s aktuálním",
|
||
"updateWithCurrentConfirm": "Přepsat „{{name}}“ aktuálním uspořádáním tabulací?",
|
||
"rename": "Přejmenovat",
|
||
"duplicate": "Duplikát",
|
||
"duplicateNameSuffix": "{{name}} (kopie)",
|
||
"setDefault": "Nastavit jako výchozí",
|
||
"unsetDefault": "Odebrat jako výchozí",
|
||
"defaultBadge": "Výchozí",
|
||
"lastSession": "Poslední sezení",
|
||
"lastSessionDescription": "Automaticky aktualizováno s vaším posledním uspořádáním karet. Použijte tuto funkci k obnovení toho, co jste měli otevřené.",
|
||
"lastUsed": "Naposledy použité {{time}}",
|
||
"neverUsed": "Nikdy nepoužíváno",
|
||
"tabsSkipped": "Použitý pracovní prostor — {{count}} přeskočeno (hostitel již neexistuje): {{names}}"
|
||
},
|
||
"keybindings": {
|
||
"title": "Klávesové zkratky",
|
||
"description": "Přizpůsobte si klávesové zkratky pro kopírování, vkládání a ovládání v terminálu nebo propojte klávesy pro odeslání textu nebo spuštění úryvku kódu.",
|
||
"defaultsHeading": "Vestavěné zkratky",
|
||
"customHeading": "Vlastní zkratky",
|
||
"addBinding": "Přidat zkratku",
|
||
"addBindingTitle": "Přidat zkratku",
|
||
"editBindingTitle": "Upravit zkratku",
|
||
"loading": "Načítání...",
|
||
"noCustomBindings": "Zatím žádné vlastní zkratky",
|
||
"defaultBadge": "Výchozí",
|
||
"customizedBadge": "Přizpůsobeno",
|
||
"customize": "Přizpůsobit",
|
||
"resetToDefault": "Obnovit výchozí nastavení",
|
||
"resetAllToDefaults": "Obnovit vše na výchozí nastavení",
|
||
"close": "Blízko",
|
||
"cancel": "Zrušit",
|
||
"saveBinding": "Uložit zástupce",
|
||
"saveError": "Uložení klávesových zkratek se nezdařilo",
|
||
"pressKeysToRecord": "Kombinace kláves",
|
||
"pressKeysPlaceholder": "Klikněte a stiskněte klávesy",
|
||
"recording": "Stiskněte klávesy...",
|
||
"comboRequiredError": "Nejprve stiskněte kombinaci kláves",
|
||
"textRequiredError": "Zadejte text k odeslání",
|
||
"controlCodeRequiredError": "Zadejte jedno písmeno pro kontrolní kód",
|
||
"snippetRequiredError": "Vyberte úryvek",
|
||
"conflictWarning": "Tato kombinace je již vázána na {{combo}}. Uložením se obě spustí.",
|
||
"actionLabel": "Akce",
|
||
"actionCopy": "Kopírovat výběr",
|
||
"actionPaste": "Pasta",
|
||
"actionSendControlCode": "Odeslat signál Ctrl+písmeno",
|
||
"actionSendText": "Odeslat text",
|
||
"actionRunSnippet": "Spustit existující úryvek kódu",
|
||
"controlCodeLabel": "Dopis",
|
||
"textLabel": "Text k odeslání",
|
||
"appendEnterLabel": "Po odeslání stiskněte Enter",
|
||
"snippetLabel": "Úryvek",
|
||
"selectSnippetPlaceholder": "Vyberte úryvek",
|
||
"orphanedSnippetWarning": "úryvek nenalezen",
|
||
"clipboardPermissionNote": "V některých prohlížečích se může při prvním použití zobrazit výzva k zadání povolení ke schránce."
|
||
},
|
||
"connectionDefaults": {
|
||
"title": "Výchozí nastavení připojení",
|
||
"description": "Nastavte hodnoty, které zdědí každý hostitel, pokud je nepřepíše.",
|
||
"manage": "Spravovat",
|
||
"dialogDescription": "Toto platí pro hostitele, kteří nechají nastavení nenastavené. Cokoli, co je na hostiteli nastaveno, vyhrává.",
|
||
"tabTerminal": "Terminál",
|
||
"tabRemoteDesktop": "Vzdálená plocha",
|
||
"inherit": "Zdědit",
|
||
"on": "Na",
|
||
"off": "Vypnuto",
|
||
"resizeDisplayUpdate": "Aktualizace displeje",
|
||
"resizeReconnect": "Znovu se připojte",
|
||
"clearAll": "Vymazat vše",
|
||
"saved": "Výchozí nastavení připojení uloženo",
|
||
"saveFailed": "Nepodařilo se uložit výchozí nastavení připojení"
|
||
},
|
||
"userProfile": {
|
||
"donateTitle": "Udrž Termixe naživu",
|
||
"donateDescription": "Termix je zdarma, hostovaný na vlastních platformách a vyvíjí ho jen několik lidí ve svém volném čase. Pokud vám to ušetřilo čas nebo peníze, dar kryptoměn vám pomůže udržet ho v chodu.",
|
||
"donateMilestones": "Dary pomáhají financovat čas na výzkum a zjištění, co je potřeba k vytvoření podpory SAML, Kubernetes a Agentů. Sledujte pokrok a darujte.",
|
||
"donateButton": "Darujte kryptoměny",
|
||
"storageModeLocal": "Prohlížeč",
|
||
"storageModeCloud": "Databáze",
|
||
"storageModeDescription": "Prohlížeč ukládá nastavení pouze v tomto prohlížeči. Databáze se synchronizuje se serverem a načítá se na jakémkoli zařízení.",
|
||
"resetToDefaults": "Obnovit na výchozí nastavení",
|
||
"resetToDefaultsSuccess": "Nastavení se resetovala na výchozí hodnoty.",
|
||
"storageModeSwitch": "Úložiště preferencí",
|
||
"sectionAccount": "Účet",
|
||
"desktopProfileTitle": "Automatický profil lokální plochy",
|
||
"desktopProfileDescription": "Tento profil je omezen na integrovaný backend a přihlašuje se automaticky. Nemá žádné přihlašovací heslo; Vzdálená synchronizace níže používá samostatný serverový účet.",
|
||
"sectionInterface": "Rozhraní",
|
||
"interfacePresetDesc": "Kolik detailů Termix zobrazuje. Každá funkce zůstává k dispozici.",
|
||
"preset_simple": "Jednoduchý",
|
||
"preset_simple_desc": "Pouze to nejnutnější.",
|
||
"preset_balanced": "Vyrovnaný",
|
||
"preset_balanced_desc": "Standardní rozložení.",
|
||
"preset_advanced": "Moderní",
|
||
"preset_advanced_desc": "Všechno zapnuté, hustě namačkané.",
|
||
"presetClearOverrides": "Obnovit vše",
|
||
"presetOverridesTitle": "Přizpůsobeno",
|
||
"presetRevertArea": "Vrátit zpět",
|
||
"presetConfirmTitle": "Přepnout na {{preset}}?",
|
||
"presetConfirmDesc": "Tím se resetuje postranní panel, navigace, rozvržení řídicího panelu, panel nástrojů terminálu a zobrazení správce souborů. Vaše hostingy, přihlašovací údaje a domovská stránka zůstanou nedotčeny.",
|
||
"presetConfirmApply": "Použít přednastavení",
|
||
"runSetupAgainDesc": "Znovu si projděte nastavení prvního spuštění.",
|
||
"runSetupAgainButton": "Spusťte nastavení",
|
||
"uiArea_chrome": "Aplikace Chrome",
|
||
"uiArea_hostList": "Seznam hostitelů",
|
||
"uiArea_credentialList": "Seznam pověření",
|
||
"uiArea_rail": "Navigace",
|
||
"uiArea_dashboard": "Dashboard",
|
||
"uiArea_terminal": "Terminál",
|
||
"uiArea_fileManager": "Správce souborů",
|
||
"uiArea_docker": "Přístavní dělník",
|
||
"uiArea_hostMetrics": "Metriky hostitele",
|
||
"uiArea_hostEditor": "Hostitelský editor",
|
||
"uiArea_homepage": "Domovská stránka",
|
||
"sectionAppearance": "Vzhled",
|
||
"sectionSecurity": "Zabezpečení",
|
||
"sectionApiKeys": "Klíče API",
|
||
"sectionData": "Data",
|
||
"sectionC2sTunnels": "Tunely C2S",
|
||
"usernameLabel": "Uživatelské jméno",
|
||
"roleLabel": "Role",
|
||
"roleAdministrator": "Správce",
|
||
"authMethodLabel": "Metoda ověřování",
|
||
"authMethodLocal": "Místní",
|
||
"twoFaLabel": "2FA",
|
||
"twoFaOn": "Na",
|
||
"twoFaOff": "Vypnuto",
|
||
"versionLabel": "Verze",
|
||
"betaProgramTitle": "Beta program",
|
||
"betaProgramDescription": "Vyzkoušejte připravované funkce včas s týdenním aktualizačním tagem :beta v Dockeru. Nestabilní, není určeno pro produkční prostředí.",
|
||
"betaProgramFeedback": "Našli jste chybu? Nahlaste ji zde.",
|
||
"betaProgramLearnMore": "Zjistěte více",
|
||
"cliTitle": "CLI Termixu",
|
||
"cliDescription": "Otevírejte terminály, spusťte příkazy a přesouvejte soubory z vlastního shellu.",
|
||
"cliLearnMore": "Zjistěte více",
|
||
"deleteAccount": "Smazat účet",
|
||
"deleteAccountDescription": "Trvale smazat váš účet",
|
||
"changeServerDescription": "Přepněte na jiný backendový server Termix",
|
||
"deleteButton": "Vymazat",
|
||
"deleteAccountPermanent": "Tato akce je trvalá a nelze ji vrátit zpět.",
|
||
"deleteAccountWarning": "Všechny relace, hostitelé, přihlašovací údaje a nastavení budou trvale smazány.",
|
||
"confirmPasswordDeletePlaceholder": "Zadejte heslo pro potvrzení",
|
||
"languageLabel": "Jazyk",
|
||
"themeLabel": "Téma",
|
||
"fontSizeLabel": "Velikost písma",
|
||
"accentColorLabel": "Zvýrazňující barva",
|
||
"settingsTerminal": "Terminál",
|
||
"commandAutocomplete": "Automatické dokončování příkazů",
|
||
"commandAutocompleteDesc": "Zobrazit automatické dokončování při psaní po stisknutí klávesy Tab",
|
||
"localEcho": "Místní ozvěna",
|
||
"localEchoDesc": "Snižte vnímanou latenci vstupu pomocí bezpečné lokální predikce stisků kláves",
|
||
"keyboardShortcuts": "Klávesové zkratky",
|
||
"keyboardShortcutsDescription": "Přizpůsobení zkratek pro kopírování, vkládání a příkazy v terminálu",
|
||
"manageShortcuts": "Spravovat",
|
||
"terminalLinkBehavior": "Kliknutí na odkaz terminálu",
|
||
"terminalLinkBehaviorDesc": "Výchozí chování při kliknutí na odkazy v terminálu",
|
||
"historyTracking": "Sledování historie",
|
||
"historyTrackingDesc": "Sledování příkazů terminálu",
|
||
"commandPalette": "Paleta příkazů",
|
||
"commandPaletteDesc": "Povolit klávesovou zkratku",
|
||
"reopenTabsOnLogin": "Znovu otevřít karty po přihlášení",
|
||
"reopenTabsOnLoginDesc": "Obnovte otevřené karty po přihlášení nebo obnovení stránky, a to i z jiného zařízení",
|
||
"confirmTabClose": "Potvrdit zavření karty",
|
||
"confirmTabCloseDesc": "Zeptat se před zavřením karet terminálu",
|
||
"settingsAppRail": "Aplikační kolejnice",
|
||
"sidebarSettingsMoved": "Nastavení zobrazení postranního panelu Hostitel se přesunulo do panelu Přizpůsobit postranní panel, který se otevírá z panelu nástrojů Hostitel.",
|
||
"showHostTags": "Zobrazit štítky hostitele",
|
||
"showHostTagsDesc": "Zobrazit tagy v seznamu hostitelů",
|
||
"hostTrayOnClick": "Kliknutím rozbalíte Akce hostitele",
|
||
"hostTrayOnClickDesc": "Vždy zobrazovat tlačítka pro připojení; kliknutím rozbalíte možnosti správy, místo abyste na něj nasadili myš.",
|
||
"compactHostView": "Kompaktní zobrazení hostitele",
|
||
"compactHostViewDesc": "Sbalit každého hostitele na jeden řádek zobrazující pouze jeho název a adresu",
|
||
"statusColors": "Barvy skutečného stavu",
|
||
"statusColorsDesc": "Pro stav online/offline použijte zelenou/červenou místo zvýrazňující barvy.",
|
||
"pinAppRail": "Pin App Rail",
|
||
"pinAppRailDesc": "Udržovat levý postranní panel aplikace vždy rozbalený, místo aby se rozbaloval při najetí myší",
|
||
"openFullscreenSettings": "Otevřít nastavení na celou obrazovku",
|
||
"exitFullscreenSettings": "Ukončit nastavení celoobrazovkového režimu",
|
||
"expandAppRailOnHover": "Rozbalit lištu aplikací při najetí myší",
|
||
"expandAppRailOnHoverDesc": "Povolit rozbalení lišty aplikace v levém postranním panelu, když se nad ní přesune kurzor",
|
||
"settingsNavigation": "Navigace",
|
||
"navigationTabsDesc": "Vyberte, které karty se zobrazí v liště aplikací",
|
||
"foldersCollapsed": "Sbalené složky",
|
||
"foldersCollapsedDesc": "Sbalit složky ve výchozím nastavení",
|
||
"confirmExecution": "Potvrdit provedení",
|
||
"confirmExecutionDesc": "Potvrďte před spuštěním úryvků",
|
||
"settingsUpdates": "Aktualizace",
|
||
"disableUpdateChecks": "Zakázat kontroly aktualizací",
|
||
"disableUpdateChecksDesc": "Zastavit kontrolu aktualizací",
|
||
"totpAuthenticator": "Ověřovač TOTP",
|
||
"totpEnabled": "2FA je povoleno",
|
||
"totpDisabled": "Přidejte další zabezpečení přihlášení",
|
||
"disable": "Zakázat",
|
||
"enable": "Umožnit",
|
||
"setupTotp": "Nastavení TOTP",
|
||
"qrCode": "QR kód",
|
||
"totpInstructions": "Naskenujte QR kód nebo zadejte tajný kód do ověřovací aplikace a poté zadejte 6místný kód.",
|
||
"totpCodePlaceholder": "000000",
|
||
"verify": "Ověřit",
|
||
"changePassword": "Změnit heslo",
|
||
"currentPasswordLabel": "Aktuální heslo",
|
||
"currentPasswordPlaceholder": "Aktuální heslo",
|
||
"newPasswordLabel": "Nové heslo",
|
||
"newPasswordPlaceholder": "Nové heslo",
|
||
"confirmPasswordLabel": "Potvrdit nové heslo",
|
||
"confirmPasswordPlaceholder": "Potvrdit nové heslo",
|
||
"updatePassword": "Aktualizovat heslo",
|
||
"createApiKeyTitle": "Vytvořit klíč API",
|
||
"createApiKeyDescription": "Vygenerujte nový klíč API pro programový přístup.",
|
||
"apiKeyNameLabel": "Jméno",
|
||
"apiKeyNamePlaceholder": "např. CI Pipeline",
|
||
"expiryDateLabel": "Datum expirace",
|
||
"optional": "volitelný",
|
||
"cancel": "Zrušit",
|
||
"createKey": "Vytvořit klíč",
|
||
"apiKeyCreatedWarning": "Klíč vytvořen – zkopírujte ho nyní, už se nezobrazí.",
|
||
"copyApiKey": "Kopírovat klíč API",
|
||
"copiedToClipboard": "Zkopírováno do schránky",
|
||
"apiKeyCount": "{{count}} kláves",
|
||
"newKey": "Nový klíč",
|
||
"noApiKeys": "Zatím žádné klíče API.",
|
||
"apiKeyActive": "Aktivní",
|
||
"apiKeyUsageHint": "Vložte svůj klíč do",
|
||
"apiKeyUsageHintHeader": "záhlaví.",
|
||
"apiKeyPermissionsHint": "Klíče dědí oprávnění uživatele, který je vytvořil.",
|
||
"exportData": "Exportovat má data",
|
||
"exportDataDesc": "Stáhněte si zálohu svých hostitelů, přihlašovacích údajů a nastavení pro přenos do jiného zařízení",
|
||
"export": "Vývozní",
|
||
"exporting": "Export...",
|
||
"importData": "Importovat má data",
|
||
"importDataDesc": "Obnovte své hostitele, přihlašovací údaje a nastavení ze záložního souboru .sqlite",
|
||
"importDataSelected": "Vybráno: {{name}}",
|
||
"selectFile": "Vybrat soubor",
|
||
"changeFile": "Přeměna",
|
||
"import": "Importovat",
|
||
"importing": "Import...",
|
||
"exportSuccess": "Data byla úspěšně exportována",
|
||
"exportFailed": "Export dat se nezdařil",
|
||
"importSelectFile": "Nejprve prosím vyberte soubor",
|
||
"importCompleted": "Import dokončen: {{total}} položek importováno, {{skipped}} přeskočeno",
|
||
"importFailed": "Import se nezdařil: {{error}}",
|
||
"roleUser": "Uživatel",
|
||
"authMethodDual": "Duální ověřování",
|
||
"authMethodOidc": "OIDC",
|
||
"totpSetupFailed": "Nepodařilo se spustit nastavení TOTP",
|
||
"totpEnter6Digits": "Zadejte 6místný kód",
|
||
"totpEnabledSuccess": "Dvoufázové ověřování povoleno",
|
||
"totpInvalidCode": "Neplatný kód, zkuste to prosím znovu.",
|
||
"totpDisableInputRequired": "Zadejte svůj kód TOTP nebo heslo",
|
||
"totpDisabledSuccess": "Dvoufázové ověřování zakázáno",
|
||
"totpDisableFailed": "Nepodařilo se zakázat 2FA",
|
||
"totpDisableTitle": "Zakázat 2FA",
|
||
"totpDisablePlaceholder": "Zadejte kód TOTP nebo heslo",
|
||
"totpDisableConfirm": "Zakázat 2FA",
|
||
"totpContinueVerify": "Pokračovat k ověřování",
|
||
"totpVerifyTitle": "Ověřte kód",
|
||
"totpBackupTitle": "Záložní kódy",
|
||
"totpDownloadBackup": "Stáhnout záložní kódy",
|
||
"passkeys": "Přístupové klíče",
|
||
"passkeysDesc": "Pro přihlášení bez hesla použijte přihlašovací údaje WebAuthn/FIDO2",
|
||
"passkeyName": "Název přístupového klíče",
|
||
"passkeyUvPreferred": "Preferované",
|
||
"passkeyUvRequired": "Požadovaný",
|
||
"passkeyUvDiscouraged": "Odradit",
|
||
"addPasskey": "Přidat přístupový klíč",
|
||
"noPasskeys": "Nejsou registrovány žádné přístupové klíče.",
|
||
"passkeyAdded": "Přístupový klíč byl přidán",
|
||
"passkeyAddFailed": "Nepodařilo se přidat přístupový klíč",
|
||
"passkeyDeleted": "Přístupový klíč smazán",
|
||
"passkeyDeleteFailed": "Nepodařilo se smazat přístupový klíč",
|
||
"done": "Hotovo",
|
||
"secretCopied": "Tajný kód zkopírován do schránky",
|
||
"apiKeyNameRequired": "Název klíče je povinný",
|
||
"apiKeyCreated": "Klíč API „{{name}}“ byl vytvořen",
|
||
"apiKeyCreateFailed": "Nepodařilo se vytvořit klíč API",
|
||
"apiKeyUser": "Uživatel",
|
||
"apiKeyExpires": "Platnost vyprší",
|
||
"apiKeyRevoked": "Klíč API „{{name}}“ byl zrušen",
|
||
"apiKeyRevokeFailed": "Nepodařilo se zrušit klíč API",
|
||
"passwordFieldsRequired": "Je vyžadováno aktuální a nové heslo",
|
||
"passwordMismatch": "Hesla se neshodují",
|
||
"passwordTooShort": "Heslo musí mít alespoň 6 znaků",
|
||
"passwordUpdated": "Heslo bylo úspěšně aktualizováno",
|
||
"passwordUpdateFailed": "Heslo se nepodařilo aktualizovat",
|
||
"deletePasswordRequired": "Pro smazání účtu je vyžadováno heslo",
|
||
"deleteFailed": "Nepodařilo se smazat účet",
|
||
"deleting": "Mazání...",
|
||
"colorPickerTooltip": "Otevřít výběr barev",
|
||
"themeSystem": "Systém",
|
||
"themeLight": "Světlo",
|
||
"themeDark": "Tmavý",
|
||
"themeDracula": "Drákula",
|
||
"themeCatppuccin": "Catppuccin",
|
||
"themeNord": "Sever",
|
||
"themeSolarized": "Solarizované",
|
||
"themeTokyoNight": "Tokijská noc",
|
||
"themeOneDark": "Jedna tma",
|
||
"themeGruvbox": "Gruvbox"
|
||
}
|
||
}
|
||
},
|
||
"terminalToolbar": {
|
||
"title": "Panel nástrojů terminálu",
|
||
"showActions": "Zobrazit panel nástrojů",
|
||
"hideToolbar": "Skrýt panel nástrojů",
|
||
"showToolbar": "Rozbalit panel nástrojů",
|
||
"moveToolbar": "Přesunout panel nástrojů",
|
||
"moveToolbarHint": "Přetažením změňte umístění panelu nástrojů",
|
||
"layout": "Režim zobrazení panelu nástrojů",
|
||
"layoutIcon": "Pouze ikona",
|
||
"layoutLabeled": "Ikony a popisky",
|
||
"layoutExpanded": "Rozšířeno o metriky",
|
||
"image": "Akce s obrázky (pouze obrázky)",
|
||
"upload": "Nahrát obrázek",
|
||
"paste": "Vložit obrázek",
|
||
"detachTmux": "Odpojit tmux",
|
||
"detachTmuxDescription": "Odpojení relace tmux",
|
||
"imageActionFailed": "Akce s obrázkem se nezdařila",
|
||
"retry": "Zkusit znovu",
|
||
"dismissError": "Chyba při zavírání obrázku",
|
||
"cpu": "Procesor",
|
||
"memory": "Paměť",
|
||
"disk": "Disk",
|
||
"statsUnavailable": "Živé statistiky nejsou k dispozici",
|
||
"tmuxDetach": "Odpojit relaci tmux",
|
||
"uploadImage": "Nahrajte obrázek na hostitele",
|
||
"uploadingImage": "Nahrávání...",
|
||
"pasteImage": "Vložit obrázek ze schránky (pouze obrázky)",
|
||
"openFiles": "Otevřít soubory",
|
||
"openDocker": "Otevřít Docker",
|
||
"openTunnel": "Otevřený tunel",
|
||
"openHostMetrics": "Otevřít metriky hostitele",
|
||
"openProxmoxStats": "Otevřít statistiky Proxmoxu",
|
||
"openTmuxMonitor": "Otevřít monitor Tmux"
|
||
},
|
||
"tmuxMonitor": {
|
||
"title": "Monitor Tmux",
|
||
"failedToLoadHosts": "Nepodařilo se načíst hostitele",
|
||
"failedToLoad": "Nepodařilo se načíst relace tmux",
|
||
"tmuxUnavailable": "tmux není na tomto hostiteli nainstalován",
|
||
"noSessions": "Na tomto hostiteli nejsou žádné relace tmux.",
|
||
"noHostSelected": "Nebyl vybrán žádný hostitel",
|
||
"attached": "Připojeno",
|
||
"detached": "Samostatně stojící",
|
||
"attach": "Připojit",
|
||
"editTags": "Upravit štítky",
|
||
"tagsHint": "Štítky oddělené čárkami (např. YOLO, lab, training)",
|
||
"tagsSaved": "Štítky uloženy",
|
||
"tagsSaveFailed": "Uložení štítků se nezdařilo",
|
||
"searchPlaceholder": "Vyhledávání výstupu napříč relacemi...",
|
||
"searchResults": "{{count}} shod",
|
||
"searchFailed": "Hledání se nezdařilo",
|
||
"selectPaneHint": "Vyberte podokno pro náhled jeho výstupu",
|
||
"closePreview": "Zavřít náhled",
|
||
"newSession": "Nová relace",
|
||
"newSessionHint": "Název relace (písmena, číslice, _ @ % + = -)",
|
||
"newSessionPlaceholder": "moje relace",
|
||
"create": "Vytvořit",
|
||
"sessionCreated": "Relace „{{name}}“ byla vytvořena",
|
||
"sessionCreateFailed": "Nepodařilo se vytvořit relaci",
|
||
"splitRight": "Rozdělit vpravo",
|
||
"splitDown": "Rozdělit",
|
||
"splitFailed": "Rozdělení panelu se nezdařilo",
|
||
"newWindow": "Nové okno",
|
||
"windowCreateFailed": "Nepodařilo se vytvořit okno",
|
||
"attachSessionTooltip": "Připojit k {{session}}",
|
||
"refresh": "Obnovit",
|
||
"refreshFailed": "Nepodařilo se obnovit relace",
|
||
"collapseAll": "Sbalit vše",
|
||
"expandAll": "Rozbalit vše",
|
||
"moreActions": "Další akce",
|
||
"sessionStats": "Statistiky relací",
|
||
"renameSessionTitle": "Přejmenovat relaci „{{name}}“",
|
||
"rename": "Přejmenovat",
|
||
"sessionRenamed": "Relace přejmenována na „{{name}}“",
|
||
"sessionRenameFailed": "Přejmenování relace se nezdařilo",
|
||
"editTagsTitle": "Upravit štítky pro „{{name}}“",
|
||
"killPane": "Zavřete panel",
|
||
"resizeTree": "Přetažením změníte velikost – dvojitým kliknutím resetujete",
|
||
"reattach": "Znovu připevnit (opravuje zkreslený obraz)",
|
||
"killWindow": "Okno pro ukončení",
|
||
"killWindowTitle": "Zavřít okno {{index}} z \"{{session}}\"?",
|
||
"killWindowBody": "Každé podokno a proces v tomto okně bude ukončeno. Zavřením posledního okna se relace ukončí.",
|
||
"windowKillFailed": "Nepodařilo se ukončit okno",
|
||
"statusActivity": "Aktivita",
|
||
"statusWindows": "Okna",
|
||
"statusPanes": "tabule",
|
||
"statusTags": "Štítky",
|
||
"killPaneTitle": "Zavřít panel {{id}}?",
|
||
"killPaneBody": "Proces spuštěný v tomto panelu bude ukončen. Ukončením posledního panelu se zavře jeho okno.",
|
||
"paneKillFailed": "Nepodařilo se ukončit podokno",
|
||
"killSessionTitle": "Ukončit relaci „{{name}}“?",
|
||
"killSessionBody": "Všechna okna a spuštěné procesy v této relaci budou ukončeny. Tuto akci nelze vrátit zpět.",
|
||
"kill": "Zabít",
|
||
"sessionKilled": "Relace „{{name}}“ byla ukončena",
|
||
"sessionKillFailed": "Nepodařilo se ukončit relaci",
|
||
"hostUnreachable": "Nepodařilo se připojit k hostiteli. Zkontrolujte, zda je online a dostupný.",
|
||
"noServer": "Na tomto hostiteli neběží žádný tmux server.",
|
||
"searchTruncated": "Částečné výsledky – vyhledávání pokrývá posledních {{lines}} řádků každého panelu a maximálně {{panes}} panelů.",
|
||
"closeSearchResults": "Zavřít výsledky vyhledávání",
|
||
"retry": "Zkusit znovu",
|
||
"noHosts": "Žádní SSH hostitelé nejsou k dispozici",
|
||
"noHostsHint": "Povolte možnost Monitor Tmux na hostiteli SSH (Správce hostitelů → záložka Terminál) pro sledování jeho relací tmux.",
|
||
"tmuxInstallHint": "Nainstalujte jej na hostitele pomocí:",
|
||
"attachTooltip": "Otevřete terminál pro {{host}}",
|
||
"attachTooltipPane": "Otevřete terminál pro {{host}} — relace tmux {{session}}",
|
||
"timeJustNow": "právě teď",
|
||
"timeMinutes": "{{count}}před m",
|
||
"timeHours": "{{count}}před hodinami",
|
||
"timeDays": "Před {{count}}dny"
|
||
},
|
||
"mobileKeyboard": {
|
||
"shift": "Posun",
|
||
"ctrl": "Ctrl",
|
||
"esc": "Esc",
|
||
"tab": "Záložka",
|
||
"backTab": "⇥",
|
||
"arrowUp": "Šipka nahoru",
|
||
"arrowDown": "Šipka dolů",
|
||
"arrowLeft": "Šipka vlevo",
|
||
"arrowRight": "Šipka vpravo",
|
||
"home": "Domov",
|
||
"end": "Konec",
|
||
"pageUp": "PgUp",
|
||
"pageDown": "PgDn",
|
||
"delete": "Del",
|
||
"paste": "Pasta",
|
||
"editQuickKeys": "Upravit rychlé klávesy",
|
||
"quickKeysTitle": "Rychlé klávesy",
|
||
"quickKeysDesc": "Klepnutím na × odstraníte. Podporuje až 8 znaků.",
|
||
"quickKeyPlaceholder": "např. sudo ",
|
||
"addQuickKey": "Přidat",
|
||
"removeQuickKey": "Odstranit",
|
||
"resetDefaults": "Obnovit na výchozí nastavení",
|
||
"done": "Hotovo"
|
||
},
|
||
"serial": {
|
||
"title": "Seriál",
|
||
"portLabel": "Přístav",
|
||
"portPlaceholder": "/dev/ttyUSB0 nebo COM3",
|
||
"baudRateLabel": "Přenosová rychlost",
|
||
"dataBitsLabel": "Data",
|
||
"stopBitsLabel": "Zastávka",
|
||
"parityLabel": "Parita",
|
||
"parityNone": "Žádný",
|
||
"parityEven": "Dokonce",
|
||
"parityOdd": "Zvláštní",
|
||
"connect": "Připojení k sériovému",
|
||
"disconnect": "Odpojit",
|
||
"refreshPorts": "Obnovit porty",
|
||
"connected": "Připojeno k {{path}} rychlostí {{baud}} baudu",
|
||
"disconnected": "Sériový port odpojen",
|
||
"connectionError": "Nepodařilo se otevřít sériový port",
|
||
"wsError": "Chyba WebSocketu",
|
||
"errorNoServerUrl": "Není nakonfigurována žádná adresa URL serveru",
|
||
"notSupportedTitle": "Sériové číslo není podporováno",
|
||
"notSupported": "Sériová připojení vyžadují prohlížeč s podporou webového sériového API (Chrome, Edge nebo Firefox 151+) nebo desktopovou aplikaci Termix.",
|
||
"hideHint": "Kartu Sériové číslo můžete skrýt v části Profil uživatele > Vzhled > Postranní panel > Navigace.",
|
||
"browserPickerHint": "Klikněte na tlačítko Připojit a prohlížeč otevře výběr portu pro výběr zařízení."
|
||
},
|
||
"metricsHistory": {
|
||
"title": "Historie metrik",
|
||
"historySuffix": "Dějiny",
|
||
"cpuMemoryDisk": "CPU / Paměť / Disk",
|
||
"network": "Síť",
|
||
"download": "RX",
|
||
"upload": "Texas",
|
||
"noData": "Pro toto časové období nejsou k dispozici žádná historická data.",
|
||
"custom": "Zvyk",
|
||
"to": "na",
|
||
"apply": "Použít",
|
||
"viewHistory": "Zobrazit historii"
|
||
},
|
||
"alerts": {
|
||
"tabFirings": "Upozornění",
|
||
"tabRules": "Pravidla",
|
||
"tabChannels": "Kanály",
|
||
"noFirings": "Žádná nepotvrzená upozornění",
|
||
"noRules": "Nejsou nakonfigurována žádná pravidla upozornění",
|
||
"noChannels": "Žádné nakonfigurované kanály oznámení",
|
||
"rulesDesc": "Pravidla upozornění spouštějí oznámení",
|
||
"channelsDesc": "Kam se odesílají upozornění",
|
||
"acknowledge": "Potvrdit",
|
||
"ackAll": "Potvrzení všeho",
|
||
"allAcknowledged": "Všechna upozornění potvrzena",
|
||
"ackFailed": "Nepodařilo se potvrdit upozornění",
|
||
"ackAllFailed": "Nepodařilo se potvrdit všechna upozornění",
|
||
"showAcknowledged": "Zobrazit vše",
|
||
"hideAcknowledged": "Skrýt potvrzeno",
|
||
"addChannel": "Přidat kanál",
|
||
"editChannel": "Upravit kanál",
|
||
"channelName": "Jméno",
|
||
"channelType": "Typ",
|
||
"channelNameRequired": "Jméno je povinné",
|
||
"webhookUrl": "URL",
|
||
"webhookUrlRequired": "URL adresa webhooku je povinná.",
|
||
"webhookDesc": "POST JSON datová část na tuto URL adresu při každém spuštění upozornění",
|
||
"ntfyServer": "URL serveru",
|
||
"ntfyTopic": "Téma",
|
||
"ntfyTopicRequired": "Téma je povinné",
|
||
"ntfyToken": "Přístupový token (volitelné)",
|
||
"channelSaveFailed": "Uložení kanálu se nezdařilo",
|
||
"test": "Test",
|
||
"testSent": "Testovací oznámení odesláno",
|
||
"testFailed": "Testovací oznámení selhalo",
|
||
"testFailedWithReason": "Testovací oznámení selhalo: {{reason}}",
|
||
"addRule": "Přidat pravidlo upozornění",
|
||
"editRule": "Upravit pravidlo upozornění",
|
||
"ruleName": "Název pravidla",
|
||
"ruleNameRequired": "Jméno je povinné",
|
||
"triggerType": "Spoušť",
|
||
"thresholdValue": "Prahová hodnota (%)",
|
||
"durationSeconds": "Trvání (sekundy, 0 = okamžitá výstřel)",
|
||
"cooldownMinutes": "Doba ochlazování (minuty)",
|
||
"channels": "Oznamovací kanály",
|
||
"noChannelsHint": "Nejprve přidejte kanály na kartě Kanály",
|
||
"ruleSaveFailed": "Uložení pravidla se nezdařilo"
|
||
},
|
||
"ai": {
|
||
"title": "Asistent",
|
||
"send": "Poslat",
|
||
"stop": "Zastávka",
|
||
"save": "Uložit",
|
||
"cancel": "Zrušit",
|
||
"running": "běh",
|
||
"approve": "Schvalovat",
|
||
"reject": "Odmítnout",
|
||
"inputPlaceholder": "Zeptejte se na své servery nebo popište změnu, kterou chcete navrhnout",
|
||
"selectProvider": "Vyberte poskytovatele",
|
||
"providerSettings": "Nastavení poskytovatele",
|
||
"addProvider": "Přidat poskytovatele",
|
||
"removeProvider": "Odebrat poskytovatele",
|
||
"providerType": "Poskytovatel",
|
||
"providerLabel": "Jméno",
|
||
"providerLabelPlaceholder": "Například: Místní Ollama",
|
||
"baseUrl": "Adresa serveru",
|
||
"apiKey": "Klíč API",
|
||
"defaultModel": "Výchozí model",
|
||
"defaultModelPlaceholder": "Například: llama3.1 nebo claude-opus-5",
|
||
"labelRequired": "Zadejte tomuto poskytovateli název",
|
||
"providerSaveFailed": "Nepodařilo se uložit poskytovatele",
|
||
"providerDeleteFailed": "Nepodařilo se odebrat poskytovatele",
|
||
"privateEndpointHint": "Adresy ve vaší privátní síti vyžadují, aby je správce nejprve povolil hostiteli.",
|
||
"providerOllama": "Ollama",
|
||
"providerAnthropic": "Antropický",
|
||
"providerOpenai": "OpenAI",
|
||
"providerGemini": "Google Gemini",
|
||
"providerOpenaiCompatible": "Kompatibilní s OpenAI",
|
||
"toolArguments": "Vstup",
|
||
"toolResult": "Výsledek",
|
||
"statusApplied": "Aplikovaný",
|
||
"statusRejected": "Zamítnuto",
|
||
"proposalApplied": "Změna použita",
|
||
"proposalApplyFailed": "Změnu se nepodařilo použít",
|
||
"proposalRejectFailed": "Změnu se nepodařilo odmítnout",
|
||
"enableTitle": "Povolte asistenta s umělou inteligencí",
|
||
"enableDescription": "Nechte asistenta přečíst si vaše nastavení a navrhnout změny ke schválení.",
|
||
"readOnlyCommands": "Povolit diagnostické příkazy pouze pro čtení",
|
||
"readOnlyCommandsDescription": "Asistent může spustit krátký seznam bezpečných příkazů, jako například df a uptime, aniž by se pokaždé ptal. Vše, co mění server, je vždy navrženo jako první.",
|
||
"modelDetectFailed": "Nepodařilo se mi spojit s poskytovatelem, toto je obecný seznam. Můžete zadat libovolný název modelu.",
|
||
"modelCustom": "Zadejte název modelu",
|
||
"modelRefresh": "Obnovit seznam",
|
||
"modelPlaceholder": "Vyberte nebo zadejte model",
|
||
"attachHint": "Zadejte @ pro odkaz na hostitele, úryvek kódu nebo automatizaci. Změny jsou navrženy ke schválení.",
|
||
"runCommandTitle": "Spustit příkaz"
|
||
},
|
||
"macros": {
|
||
"title": "Makra",
|
||
"description": "Spusťte v terminálu uloženou sérii příkazů a reagujte na to, co server odešle zpět.",
|
||
"target": "Cíl",
|
||
"noTerminal": "Žádný otevřený terminál",
|
||
"empty": "Zatím žádná makra",
|
||
"emptyHint": "Vytvořte makro pro automatizaci procesů v terminálu, jako je přihlašování, restartování služby nebo odpovídání na výzvy.",
|
||
"create": "Nové makro",
|
||
"back": "Zpět k makrům",
|
||
"name": "Jméno",
|
||
"namePlaceholder": "Restartujte webový server",
|
||
"nameRequired": "Před uložením zadejte makro název",
|
||
"descriptionLabel": "Popis",
|
||
"descriptionPlaceholder": "Co toto makro dělá (volitelné)",
|
||
"unsaved": "Neuložené změny",
|
||
"save": "Uložit",
|
||
"saved": "Makro uloženo",
|
||
"saveFailed": "Makro se nepodařilo uložit.",
|
||
"delete": "Vymazat",
|
||
"deleteTitle": "Smazat toto makro?",
|
||
"deleteBody": "Soubor „{{name}}“ bude trvale smazán. Tuto akci nelze vrátit zpět.",
|
||
"deleted": "Makro smazáno",
|
||
"cancel": "Zrušit",
|
||
"run": "Běh",
|
||
"stop": "Zastávka",
|
||
"running": "Běh...",
|
||
"completed": "Makro dokončeno",
|
||
"failed": "Makro selhalo",
|
||
"loadFailed": "Nepodařilo se načíst makra",
|
||
"needTerminal": "Nejprve otevřete a připojte terminál",
|
||
"noSteps": "Toto makro zatím nemá žádné kroky. Přidejte jeden níže.",
|
||
"addStep": "Přidat krok",
|
||
"stepNumber": "Krok {{number}}",
|
||
"removeStep": "Odebrat krok",
|
||
"confirmRunTitle": "Spustit toto makro?",
|
||
"confirmRunBody": "„{{name}}“ odešle příkazy pro {{host}}.",
|
||
"confirmRunAction": "Spustit makro",
|
||
"stepTypes": {
|
||
"send": {
|
||
"label": "Odeslat příkaz",
|
||
"help": "Zadá text do terminálu, stejně jako byste ho napsali."
|
||
},
|
||
"wait": {
|
||
"label": "Počkejte na výstup",
|
||
"help": "Pozastaví se, dokud server nevypíše text, který pojmenujete, například výzvu k zadání hesla."
|
||
},
|
||
"delay": {
|
||
"label": "Pauza",
|
||
"help": "Čeká pevně stanovenou dobu před dalším krokem."
|
||
},
|
||
"if": {
|
||
"label": "Pokud výstup obsahuje",
|
||
"help": "Zkontroluje vše, co server dosud vytiskl, a poté spustí jednu ze dvou větví."
|
||
},
|
||
"repeat": {
|
||
"label": "Opakovat",
|
||
"help": "Spustí kroky uvnitř něj tolikrát, kolikrát je nastaveno."
|
||
}
|
||
},
|
||
"send": {
|
||
"text": "Příkaz nebo text",
|
||
"textPlaceholder": "restartování systemctl v Nginxu",
|
||
"pressEnter": "Po odeslání stiskněte Enter",
|
||
"pressEnterHelp": "Vypněte tuto funkci, chcete-li psát text bez jeho odesílání."
|
||
},
|
||
"wait": {
|
||
"pattern": "Počkejte, dokud výstup neobsahuje",
|
||
"patternPlaceholder": "heslo:",
|
||
"timeout": "Vzdej se po",
|
||
"onTimeout": "Pokud se to nikdy neobjeví",
|
||
"stop": "Zastavit makro",
|
||
"continue": "Stejně pokračuj"
|
||
},
|
||
"delay": {
|
||
"duration": "Čekat na"
|
||
},
|
||
"ifStep": {
|
||
"pattern": "Pokud výstup obsahuje",
|
||
"patternPlaceholder": "Aktivní: aktivní (běží)",
|
||
"then": "Pak udělej tohle",
|
||
"else": "Jinak to udělej",
|
||
"emptyBranch": "Žádné schody"
|
||
},
|
||
"repeat": {
|
||
"count": "Počet opakování",
|
||
"times": "krát"
|
||
},
|
||
"match": {
|
||
"useRegex": "Porovnání s regulárním výrazem",
|
||
"useRegexHelp": "Nechte toto vypnuté, aby text přesně odpovídal napsanému textu.",
|
||
"invalidRegex": "Není to platný regulární výraz, bude nalezen jako prostý text."
|
||
},
|
||
"seconds": "sekundy",
|
||
"secondsShort": "{{count}}s"
|
||
}
|
||
}
|