freedombox Debian release 22.5

-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmILC9wACgkQd8DHXntl
 CAiklRAAh71nlzDOSZAg1dmQPgLWIKU+EW2pGNKdDJO5KBZ53g+NYZX3gS4K4lU/
 pLyUCfD1q05qWcC0QJ8yybJcufzSj0IUQ/c9lDEHAcdgeNP+RJtAMiYFn//C1Sk9
 dGuK22q7ATw7QSgSH8fXnXPvT1lCr98yAsXM1vLbIbkObdHcWu8LH9td4guuq18f
 h70SlfcENjfCcXE6FeN0ug/x/HI9Q7Gshb+8JJFD7DOVzjZuKmP/3u7JfY64GVbL
 IC3P7/lGRjaqMkQJBQKbGJpdsnD2CAUtyOtV1W2pyBIU0CTorj8r26sOl+5JZL41
 Yp3hbC54SxB6ZdkGIV0TXtU9fzoIBcUIcd0lJDq2avN3KVq7r1Xeelu3zwbBaalh
 wvqCDiVNQ5rEB25jaLc0EQOGp9MH4UzfHnRlH+8bSxkaBdBdSE1ffDtqluPKSi9w
 Scgatr0Li2hgIrHT5QmxQ2pvBh2bG4xTqH9BfofIb4UV+PhVbxxCGZOclVUthKRS
 s9rgcZz9NeTm4Z7FZ11hrQ5M8VJTjOmIkJU3/Ux174FYEPsmwv504ZSALFms9r0x
 ADwDp9Cfb1dXzNdnsrLvW6+WuMs7nh839/uBMjXA6cS7jpnW6S8oUUUq2yykqDL8
 A+EwazlWHONvHWEQe4n8de4gn59IhiicudyS36cGIpvX2lDnrCY=
 =cmBD
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmIQPEwACgkQd8DHXntl
 CAgVDhAAiLpKBntzfxtWlLZAa2ZQ8Md+eyUch3Oqq4TafFJjzXWe2LeMz8Kq2Ybj
 eunaoz/PzgKG0vPUpsnwikeNw6PSuEnfFAsNLHtwnBHboOBaxMbPIHkgIiKvkdV0
 N1N+HwdSG9Im7N65WpwYhewbzMuE3PfOfGtaFwXsKOEdpPVGUX3Z2Z0ijPK2WDYN
 2jgzhW4ZOU9NBYafoghpCEuZzQ6uVy2RJiHxjHps9rDxPS2oDZC1/JR00aHgIhnP
 9TIi/6ieJak3k5lfKpf961Z3MfIlwT6mqi0qYiGm6iLYosW0LgLLuFXeGFIxpCWZ
 5q7yXq4a0uCSPuiEKPJt1MXHnR9YZL4AkTexgCFtrvMlrE6Vk3rO8x+twlWLMOoP
 9HEkYEOb2CMIqfHLqKJpWEuilkzW2tbpINJUW3IgsPp8aAIGEM1wpoiZDELhyW4z
 qj9/bC3gGYbHQG3ZNNh74Ay8gSxkm9VpbeY5zcpV0C7Tynk/UDcTrcyoluhm43WS
 a6sHamnabonFDWM03LEPjO8A1V+aDSaeF85ktP2CEz6XmF3THD6pCyR0Shqc08P/
 A+nUeIp5nyyZb9ewT8RWOQE+tVw2YL8FGFdJHcwO/6+flUFRPq2omcbS9dx5PAbp
 OQvaxRG0WxLgf7/H0fV6fgG5tGrhpHWUzyX6LQDtLgkoEFWMfyA=
 =gt4N
 -----END PGP SIGNATURE-----

Merge tag 'v22.5' into debian/bullseye-backports

freedombox Debian release 22.5

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
James Valleroy 2022-02-18 19:39:38 -05:00
commit f00174cd86
71 changed files with 7936 additions and 7463 deletions

View File

@ -8,6 +8,8 @@ Wrapper to handle backups using borg-backups.
import argparse
import json
import os
import pathlib
import re
import subprocess
import sys
import tarfile
@ -16,6 +18,7 @@ from plinth.modules.backups import MANIFESTS_FOLDER
from plinth.utils import Version
TIMEOUT = 30
BACKUPS_DATA_PATH = pathlib.Path('/var/lib/plinth/backups-data/')
def parse_arguments():
@ -78,6 +81,16 @@ def parse_arguments():
restore_exported_archive.add_argument('--path', help='Tarball file path',
required=True)
dump_settings = subparsers.add_parser('dump-settings',
help='Dump JSON settings to a file')
dump_settings.add_argument('--app-id',
help='ID of the app to dump settings for')
load_settings = subparsers.add_parser(
'load-settings', help='Load JSON settings from a file')
load_settings.add_argument('--app-id',
help='ID of the app to load settings for')
subparsers.required = True
return parser.parse_args()
@ -267,6 +280,32 @@ def subcommand_restore_exported_archive(arguments):
break
def _assert_app_id(app_id):
"""Check that app ID is correct."""
if not re.fullmatch(r'[a-z0-9_]+', app_id):
raise Exception('Invalid App ID')
def subcommand_dump_settings(arguments):
"""Dump an app's settings to a JSON file."""
app_id = arguments.app_id
_assert_app_id(app_id)
BACKUPS_DATA_PATH.mkdir(exist_ok=True)
settings_path = BACKUPS_DATA_PATH / f'{app_id}-settings.json'
settings_path.write_text(arguments.stdin)
def subcommand_load_settings(arguments):
"""Load an app's settings from a JSON file."""
app_id = arguments.app_id
_assert_app_id(app_id)
settings_path = BACKUPS_DATA_PATH / f'{app_id}-settings.json'
try:
print(settings_path.read_text())
except FileNotFoundError:
print('{}')
def _read_encryption_passphrase(arguments):
"""Read encryption passphrase from stdin."""
if arguments.stdin:

View File

@ -1,471 +1,156 @@
#!/bin/bash
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Configuration helper for Dynamic DNS.
"""
############################################################################
# #
# This script is a wrapper around ez-ipupdate and/or wget #
# to update a Dynamic DNS account. The script is used as an #
# interface between plinth and ez-ipupdate #
# the script will store configuration, return configuration #
# to plinth UI and do a dynamic DNS update. The script will #
# also determe if we are behind a NAT device, if we can use #
# ez-ipupdate tool or if we need to do some wget magic #
# #
# Todo: IPv6 #
# Todo: GET WAN IP from Router via UPnP if supported #
# Todo: licence string? #
# author: Daniel Steglich <steglich@datasystems24.de> #
# #
############################################################################
import argparse
import json
import pathlib
import urllib
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
_conf_dir = pathlib.Path('/etc/ez-ipupdate/')
_active_config = _conf_dir / 'ez-ipupdate.conf'
_inactive_config = _conf_dir / 'ez-ipupdate.inactive'
_helper_config = _conf_dir / 'ez-ipupdate-plinth.cfg'
_cron_job = pathlib.Path('/etc/cron.d/ez-ipupdate')
# static values
WGET=$(which wget)
WGETOPTIONS="-o /dev/null -t 3 -T 3"
EMPTYSTRING="none"
NOIP="0.0.0.0"
# how often do we poll for IP changes if we are behind a NAT?
UPDATEMINUTES=5
# if we do not have a URL to look up public IP, how often should we do
# a "blind" update
UPDATEMINUTESUNKNOWN=3600
TOOLNAME=ez-ipupdate
UPDATE_TOOL=$(which ${TOOLNAME})
DISABLED_STRING='disabled'
ENABLED_STRING='enabled'
# Dirs and filenames
CFGDIR="/etc/${TOOLNAME}/"
CFG="${CFGDIR}${TOOLNAME}.conf"
CFG_disabled="${CFGDIR}${TOOLNAME}.inactive"
IPFILE="${CFGDIR}${TOOLNAME}.currentIP"
STATUSFILE="${CFGDIR}${TOOLNAME}.status"
LASTUPDATE="${CFGDIR}/last-update"
HELPERCFG="${CFGDIR}${TOOLNAME}-plinth.cfg"
CRONJOB="/etc/cron.d/${TOOLNAME}"
PIDFILE="/var/run/ez-ipupdate.pid"
def parse_arguments():
""" Return parsed command line arguments as dictionary. """
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(dest='subcommand', help='Sub command')
# this function will parse commandline options
doGetOpt()
{
basicauth=0
ignoreCertError=0
useIPv6=0
subparsers.add_parser('export-config',
help='Print configuration in JSON format')
subparsers.add_parser('clean', help='Remove all old configuration files')
while getopts ":s:d:u:P:I:U:c:b:6:p" opt; do
case ${opt} in
s)
if [ "${OPTARG}" != "${EMPTYSTRING}" ];then
server=${OPTARG}
else
server=""
fi
;;
d)
host=${OPTARG}
;;
u)
user=${OPTARG}
;;
P)
pass=${OPTARG}
;;
p)
if read -t 0; then
IFS= read -r pass
fi
;;
I)
if [ "${OPTARG}" != "${EMPTYSTRING}" ];then
ipurl=${OPTARG}
else
ipurl=""
fi
;;
U)
if [ "${OPTARG}" != "${EMPTYSTRING}" ];then
updateurl=${OPTARG}
else
updateurl=""
fi
;;
b)
basicauth=${OPTARG}
;;
c)
ignoreCertError=${OPTARG}
;;
6)
useIPv6=${OPTARG}
;;
\?)
echo "Invalid option: -${OPTARG}" >&2
exit 1
;;
esac
done
}
subparsers.add_parser('update', help='For backwards compatibility')
subparser = subparsers.add_parser('success',
help='For backwards compatibility')
subparser.add_argument('wan_ip_address')
# this function will write a persistent config file to disk
doWriteCFG()
{
mkdir ${CFGDIR} 2> /dev/null
# always write to the inactive config - needs to be enabled via "start" command later
local out_file=${CFG_disabled}
subparsers.required = True
return parser.parse_args()
# reset the last update time
echo 0 > ${LASTUPDATE}
# reset the last updated IP
echo "0.0.0.0" > ${IPFILE}
def _read_configuration(path, separator='='):
"""Read ez-ipupdate configuration."""
config = {}
for line in path.read_text().splitlines():
if line.startswith('#'):
continue
# reset last update (if there is one)
rm ${STATUSFILE} 2> /dev/null
parts = line.partition(separator)
if parts[1]:
config[parts[0].strip()] = parts[2].strip()
else:
config[parts[0].strip()] = True
# find the interface (always the default gateway interface)
default_interface=$(ip route |grep default |awk '{print $5}')
return config
# store the given options in ez-ipupdate compatible config file
{
echo "host=${host}"
echo "server=${server}"
echo "user=${user}:${pass}"
echo "service-type=gnudip"
echo "retrys=3"
echo "wildcard"
} > ${out_file}
# store UPDATE URL params
{
echo "POSTURL ${updateurl}"
echo "POSTAUTH ${basicauth}"
echo "POSTSSLIGNORE ${ignoreCertError}"
echo "POSTUSEIPV6 ${useIPv6}"
} > ${HELPERCFG}
# check if we are behind a NAT Router
echo "IPURL ${ipurl}" >> ${HELPERCFG}
if [ -z ${ipurl} ];then
echo "NAT unknown" >> ${HELPERCFG}
else
doGetWANIP
ISGLOBAL=$(ip addr ls "${default_interface}" | grep "${wanip}")
if [ -z "${ISGLOBAL}" ];then
# we are behind NAT
echo "NAT yes" >> ${HELPERCFG}
else
# we are directly connected
echo "NAT no" >> ${HELPERCFG}
# if this file is added ez-ipupdate will take ip form this interface
{
echo "interface=${default_interface}"
# if this line is added to config file, ez-ipupdate will be launched on startup via init.d
echo "daemon"
echo "execute=${0} success"
} >> ${out_file}
fi
fi
}
# this function will read the config file from disk
# special treatment for empty strings is done here:
# plinth will give empty strings like: ''
# but we don't want this single quotes to be used
doReadCFG()
{
host=""
server=""
user=""
pass=""
ipurl=""
def subcommand_export_config(_):
"""Print the old ez-ipupdate configuration in JSON format."""
input_config = {}
if _active_config.exists():
input_config = _read_configuration(_active_config)
elif _inactive_config.exists():
input_config = _read_configuration(_inactive_config)
if [ ! -z "${cfgfile}" ];then
host=$(grep ^host= "${cfgfile}" 2> /dev/null | cut -d = -f 2-)
server=$(grep ^server= "${cfgfile}" 2> /dev/null | cut -d = -f 2- | grep -v ^\'\')
user=$(grep ^user= "${cfgfile}" 2> /dev/null | cut -d = -f 2- | cut -d : -f 1 )
pass=$(grep ^user= "${cfgfile}" 2> /dev/null | cut -d = -f 2- | cut -d : -f 2-)
fi
helper = {}
if _helper_config.exists():
helper.update(_read_configuration(_helper_config, separator=' '))
if [ ! -z ${HELPERCFG} ];then
ipurl=$(grep ^IPURL "${HELPERCFG}" 2> /dev/null |awk '{print $2}' |grep -v ^\'\')
updateurl=$(grep POSTURL "${HELPERCFG}" 2> /dev/null |awk '{print $2}' |grep -v ^\'\')
basicauth=$(grep POSTAUTH "${HELPERCFG}" 2> /dev/null |awk '{print $2}' |grep -v ^\'\')
ignoreCertError=$(grep POSTSSLIGNORE "${HELPERCFG}" 2> /dev/null |awk '{print $2}' |grep -v ^\'\')
useIPv6=$(grep POSTUSEIPV6 "${HELPERCFG}" 2> /dev/null |awk '{print $2}' |grep -v ^\'\')
fi
}
def _clean(value):
value_map = {'enabled': True, 'disabled': False, '': None}
return value_map.get(value, value)
# replace vars from url: i.e.:
# https://example.com/update.php?domain=<Domain>&User=<User>&Pass=<Pass>
# also this function will remove the surounding single quotes from the URL string
# as plinth will add them
doReplaceVars()
{
local url=$(echo "${updateurl}" | sed "s/<Ip>/${wanip}/g")
url=$(echo "${url}" | sed "s/<Domain>/${host}/g")
url=$(echo "${url}" | sed "s/<User>/${user}/g")
url=$(echo "${url}" | sed "s/<Pass>/${pass}/g")
url=$(echo "${url}" | sed "s/'//g")
updateurl=${url}
logger "expanded update URL as ${url}"
}
domain = {
'service_type': 'gnudip',
'domain': input_config.get('host'),
'server': input_config.get('server'),
'username': input_config.get('user', '').split(':')[0] or None,
'password': input_config.get('user', '').split(':')[-1] or None,
'ip_lookup_url': helper.get('IPURL'),
'update_url': _clean(helper.get('POSTURL')) or None,
'use_http_basic_auth': _clean(helper.get('POSTAUTH')),
'disable_ssl_cert_check': _clean(helper.get('POSTSSLIGNORE')),
'use_ipv6': _clean(helper.get('POSTUSEIPV6')),
}
# doReadCFG() needs to be run before this
# this function will return all configured parameters in a way that
# plinth will understand (plinth know the order of
# parameters this function will return)
doStatus()
{
PROC=$(pgrep ${TOOLNAME})
if [ -f "${CRONJOB}" ];then
echo "${ENABLED_STRING}"
elif [ ! -z "${PROC}" ];then
echo "${ENABLED_STRING}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${server}" ];then
echo "${server}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${host}" ];then
echo "${host}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${user}" ];then
echo "${user}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${pass}" ];then
echo "${pass}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${ipurl}" ];then
echo "${ipurl}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${updateurl}" ];then
echo "${updateurl}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${ignoreCertError}" ];then
echo "${ignoreCertError}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${basicauth}" ];then
echo "${basicauth}"
else
echo "${DISABLED_STRING}"
fi
if [ ! -z "${useIPv6}" ];then
echo "${useIPv6}"
else
echo "${DISABLED_STRING}"
fi
}
if isinstance(domain['update_url'], bool):
# 'POSTURL ' is a line found in the configuration file
domain['update_url'] = None
# ask a public WEB Server for the WAN IP we are comming from
# and store this ip within $wanip
doGetWANIP()
{
if [ ! -z "${ipurl}" ];then
local wgetoptions="${WGETOPTIONS}"
if [ "${useIPv6}" = "enabled" ];then
wgetoptions="${wgetoptions} -6"
else
wgetoptions="${wgetoptions} -4"
fi
local cmd="${WGET} ${wgetoptions} -O - ${ipurl}"
if [ "${useIPv6}" = "enabled" ];then
wanip=$($cmd | tr A-F a-f | sed s/[^0-9a-f:]//g)
else
wanip=$($cmd | sed s/[^0-9.]//g)
fi
[ -z "${wanip}" ] && wanip=${NOIP}
else
# no WAN IP found because of missing check URL
wanip=${NOIP}
fi
}
if not domain['server']:
domain['service_type'] = 'other'
update_url = domain['update_url']
try:
server = urllib.parse.urlparse(update_url).netloc
service_types = {
'dynupdate.noip.com': 'noip.com',
'dynupdate.no-ip.com': 'noip.com',
'freedns.afraid.org': 'freedns.afraid.org'
}
domain['service_type'] = service_types.get(server, 'other')
except ValueError:
pass
# actualy do the update (using wget or ez-ipupdate or even both)
# this function is called via cronjob
doUpdate()
{
if [ "${useIPv6}" = "enabled" ];then
local dnsentry="$(host -t AAAA "${host}" | sed 's/.*address\s*//')"
else
local dnsentry="$(host -t A "${host}" | sed 's/.*address\s*//')"
fi
if [ "${dnsentry}" = "${wanip}" ];then
return
fi
if [ ! -z "${server}" ];then
start-stop-daemon -S -x "${UPDATE_TOOL}" -m -p "${PIDFILE}" -- -c "${cfgfile}"
fi
if [ ! -z "${updateurl}" ];then
doReplaceVars
if [ "${basicauth}" = "enabled" ];then
WGETOPTIONS="${WGETOPTIONS} --user ${user} --password ${pass} "
fi
if [ "${ignoreCertError}" = "enabled" ];then
WGETOPTIONS="${WGETOPTIONS} --no-check-certificate "
fi
if [ "${useIPv6}" = "enabled" ];then
WGETOPTIONS="${WGETOPTIONS} -6"
else
WGETOPTIONS="${WGETOPTIONS} -4"
fi
local cmd="${WGET} -O /dev/null ${WGETOPTIONS} ${updateurl}"
$cmd
# ToDo: check the returning text from WEB Server. User need to give expected string.
if [ ${?} -eq 0 ];then
${0} success ${wanip}
else
${0} failed
fi
fi
}
# Old logic for 'enabling' the app is as follows: If behind NAT, add
# cronjob. If not behind NAT and type is update URL, add cronjob. If not
# behind NAT and type is GnuDIP, move inactive configuration to active
# configuration and start the ez-ipupdate daemon.
enabled = False
if _cron_job.exists() or (domain['service_type'] == 'gnudip'
and _active_config.exists()):
enabled = True
umask u=rw,g=,o=
cmd=${1}
shift
# decide which config to use
cfgfile="/tmp/none"
[ -f ${CFG_disabled} ] && cfgfile=${CFG_disabled}
[ -f ${CFG} ] && cfgfile=${CFG}
output_config = {'enabled': enabled, 'domains': {domain['domain']: domain}}
print(json.dumps(output_config))
# check what action is requested
case ${cmd} in
configure)
doGetOpt "${@}"
doWriteCFG
;;
start)
doGetWANIP
if [ "$(grep ^NAT ${HELPERCFG} | awk '{print $2}')" = "no" ];then
#if we are not behind a NAT device and we use gnudip, start the daemon tool
gnudipServer=$(grep ^server= ${cfgfile} 2> /dev/null | cut -d = -f 2- |grep -v ^\'\')
if [ ! -f ${CFG} -a ! -z "${gnudipServer}" ];then
mv ${CFG_disabled} ${CFG}
/etc/init.d/${TOOLNAME} start
fi
# if we are not behind a NAT device and we use update-URL, add a cronjob
# (daemon tool does not support update-URL feature)
if [ ! -z "$(grep ^POSTURL $HELPERCFG | awk '{print $2}')" ];then
echo "*/${UPDATEMINUTES} * * * * root ${0} update" > ${CRONJOB}
$0 update
fi
else
# if we are behind a NAT device, add a cronjob (daemon tool cannot monitor WAN IP changes)
echo "*/${UPDATEMINUTES} * * * * root ${0} update" > $CRONJOB
$0 update
fi
;;
get-nat)
NAT=$(grep ^NAT $HELPERCFG 2> /dev/null | awk '{print $2}')
[ -z "${NAT}" ] && NAT="unknown"
echo ${NAT}
;;
update)
doReadCFG
dnsentry=$(nslookup "${host}"|tail -n2|grep A|sed s/[^0-9.]//g)
doGetWANIP
echo ${wanip} > ${IPFILE}
grep -v execute ${cfgfile} > ${cfgfile}.tmp
mv ${cfgfile}.tmp ${cfgfile}
echo "execute=${0} success ${wanip}" >> ${cfgfile}
# if we know our WAN IP, only update if IP changes
if [ "${dnsentry}" != "${wanip}" -a "${wanip}" != ${NOIP} ];then
doUpdate
else
# If nothing has changed, nothing needs to be done but we
# need to write the success status (if no success was
# recorded yet because maybe DNS record was up to date
# when script is executed for the first time)
${0} success ${wanip}
fi
# if we don't know our WAN IP do a blind update once a hour
if [ "${wanip}" = ${NOIP} ];then
currenttime=$(date +%s)
LAST=0
[ -f ${LASTUPDATE} ] && LAST=$(cat ${LASTUPDATE})
diff=$((currenttime - LAST))
if [ ${diff} -gt ${UPDATEMINUTESUNKNOWN} ];then
doUpdate
fi
fi
;;
stop)
rm ${CRONJOB} 2> /dev/null
/etc/init.d/${TOOLNAME} stop
kill "$(cat ${PIDFILE})" 2> /dev/null
mv ${CFG} ${CFG_disabled}
;;
success)
date=$(date)
echo "DNS record is up to date (${date})" > ${STATUSFILE}
date +%s > ${LASTUPDATE}
# if called from cronjob, the current IP is given as parameter
if [ $# -eq 1 ];then
echo "${1}" > ${IPFILE}
else
# if called from ez-ipupdate daemon, no WAN IP is given as parameter
doGetWANIP
echo ${wanip} > ${IPFILE}
fi
;;
failed)
date=$(date)
echo "last update failed (${date})" > ${STATUSFILE}
;;
get-last-success)
if [ -f ${STATUSFILE} ];then
cat ${STATUSFILE}
else
echo "no successful update recorded since last config change"
fi
;;
status)
doReadCFG
doStatus
;;
get-timer)
echo ${UPDATEMINUTES}
;;
clean)
rm ${CFGDIR}/*
rm ${CRONJOB}
;;
*)
echo "usage: status|configure <options>|start|stop|update|get-nat|clean|success [updated IP]|failed|get-last-success"
echo ""
echo "options are:"
echo "-s <server> Gnudip Server address"
echo "-d <domain> Domain to be updated"
echo "-u <user> Account username"
echo "-P <password> Account password"
echo "-p Read Account Password from stdin"
echo "-I <URL to look up public IP> A URL which returns the IP of the client who is requesting"
echo "-U <update URL> The update URL (a HTTP GET on this URL will be done)"
echo "-c <1|0> disable SSL check on Update URL"
echo "-b <1|0> use HTTP basic auth on Update URL"
echo "-6 use IPv6 type address"
echo ""
echo "update do a one time update"
echo "clean delete configuration"
echo "success store update success and optional the updated IP"
echo "failed store update failure"
echo "get-nat return the detected nat type"
echo "get-last-success return date of last successful update"
;;
esac
exit 0
def subcommand_clean(_):
"""Remove all old configuration files."""
last_update = _conf_dir / 'last-update'
status = _conf_dir / 'ez-ipupdate.status'
current_ip = _conf_dir / 'ez-ipupdate.currentIP'
cleanup_files = [
_active_config, _inactive_config, last_update, _helper_config, status,
current_ip
]
for cleanup_file in cleanup_files:
try:
cleanup_file.rename(cleanup_file.with_suffix('.bak'))
except FileNotFoundError:
pass
_cron_job.unlink(missing_ok=True)
def subcommand_update(_):
"""Empty subcommand kept only for backwards compatibility.
Drop after stable release.
"""
def subcommand_success(_):
"""Empty subcommand kept only for backwards compatibility.
Drop after stable release.
"""
def main():
"""Parse arguments and perform all duties."""
arguments = parse_arguments()
subcommand = arguments.subcommand.replace('-', '_')
subcommand_method = globals()['subcommand_' + subcommand]
subcommand_method(arguments)
if __name__ == '__main__':
main()

61
debian/changelog vendored
View File

@ -1,3 +1,64 @@
freedombox (22.5) unstable; urgency=medium
[ ikmaak ]
* Translated using Weblate (German)
* Translated using Weblate (Dutch)
[ Burak Yavuz ]
* Translated using Weblate (Turkish)
[ Eric ]
* Translated using Weblate (Chinese (Simplified))
[ Joseph Nuthalapati ]
* tests: functional: Add plugin for HTML reports
[ Besnik Bleta ]
* Translated using Weblate (Albanian)
* Translated using Weblate (Albanian)
* Translated using Weblate (Albanian)
[ Jaime Marquínez Ferrándiz ]
* Translated using Weblate (Spanish)
[ Michael Breidenbach ]
* Translated using Weblate (Swedish)
[ Nikita Epifanov ]
* Translated using Weblate (Russian)
[ Jiří Podhorecký ]
* Translated using Weblate (Czech)
[ Andrij Mizyk ]
* Translated using Weblate (Ukrainian)
[ Benedek Nagy ]
* Translated using Weblate (Hungarian)
* Translated using Weblate (Hungarian)
* tt-rss: Restrict access to `feed-reader` group in "/tt-rss-app"
[ James Valleroy ]
* dynamicdns: Replace ez-ipupdate
* locale: Update translation strings
* doc: Fetch latest manual
[ Sunil Mohan Adapa ]
* dynamicdns: Drop about page and merge into description
* dynamicdns: Drop tabs and use single page
* dynamicdns: Drop NAT detection as it is no longer used
* app: Add component to store enabled state of an app in kvstore
* backups: Implement backup/restore of key/value settings
* dynamicdns: Rewrite configuration handling and update using URL
* users: Fix typo in description
* minetest: Reduce the number of configuration update messages
[ 109247019824 ]
* Translated using Weblate (Bulgarian)
* Translated using Weblate (Bulgarian)
-- James Valleroy <jvalleroy@mailbox.org> Mon, 14 Feb 2022 20:41:06 -0500
freedombox (22.4~bpo11+1) bullseye-backports; urgency=medium
* Rebuild for bullseye-backports.

View File

@ -1,7 +1,7 @@
#language en
##TAG:TRANSLATION-HEADER-START
~- [[de/FreedomBox/Manual/GitWeb|Deutsch]] - [[FreedomBox/Manual/GitWeb|English]] - [[es/FreedomBox/Manual/GitWeb|Español]] - [[DebianWiki/EditorGuide#translation|(+)]] -~
~- [[de/FreedomBox/Manual/GitWeb|Deutsch]] - [[FreedomBox/Manual/GitWeb|English]] - [[es/FreedomBox/Manual/GitWeb|Español]] - [[hu/FreedomBox/Manual/GitWeb|Magyar]] - [[DebianWiki/EditorGuide#translation|(+)]] -~
##TAG:TRANSLATION-HEADER-END
<<TableOfContents()>>
@ -13,6 +13,8 @@
'''Available since''': version 19.19
=== What is Git ===
Git is a distributed version-control system for tracking changes in source code during software development. !GitWeb provides a web interface to Git repositories. You can browse history and content of source code, use search to find relevant commits and code. You can also clone repositories and upload code changes with a command-line Git client or with multiple available graphical clients. And you can share your code with people around the world.
To learn more on how to use Git visit [[https://git-scm.com/docs/gittutorial|Git tutorial]].

View File

@ -8,6 +8,26 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
The following are the release notes for each !FreedomBox version.
== FreedomBox 22.5 (2022-02-14) ==
=== Highlights ===
* dynamicdns: Replace ez-ipupdate
* Drop NAT detection as it is no longer used
* Drop about page and merge into description
* Drop tabs and use single page
* Rewrite configuration handling and update using URL
=== Other Changes ===
* app: Add component to store enabled state of an app in kvstore
* backups: Implement backup/restore of key/value settings
* locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Czech, Dutch, German, Hungarian, Russian, Spanish, Swedish, Turkish, Ukrainian
* minetest: Reduce the number of configuration update messages
* tests: functional: Add plugin for HTML reports
* tt-rss: Restrict access to `feed-reader` group in "/tt-rss-app"
* users: Fix typo in description
== FreedomBox 22.4 (2022-01-31) ==
=== Highlights ===

View File

@ -15,6 +15,10 @@
'''Available since''': version 0.3
=== What is ejabberd? ===
Ejabberd is a chat server which uses the Extensible Messaging and Presence Protocol (XMPP).
=== What is XMPP? ===
XMPP is a federated server-client protocol for Instant Messaging. This means that users who have accounts on one server, can talk to users that are on another server.

View File

@ -8,6 +8,26 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
The following are the release notes for each !FreedomBox version.
== FreedomBox 22.5 (2022-02-14) ==
=== Highlights ===
* dynamicdns: Replace ez-ipupdate
* Drop NAT detection as it is no longer used
* Drop about page and merge into description
* Drop tabs and use single page
* Rewrite configuration handling and update using URL
=== Other Changes ===
* app: Add component to store enabled state of an app in kvstore
* backups: Implement backup/restore of key/value settings
* locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Czech, Dutch, German, Hungarian, Russian, Spanish, Swedish, Turkish, Ukrainian
* minetest: Reduce the number of configuration update messages
* tests: functional: Add plugin for HTML reports
* tt-rss: Restrict access to `feed-reader` group in "/tt-rss-app"
* users: Fix typo in description
== FreedomBox 22.4 (2022-01-31) ==
=== Highlights ===

View File

@ -12,6 +12,10 @@
'''Disponble desde''': versión 0.3
=== ¿Qué es ejabberd? ===
Ejabberd es un servidor de conversaciones (''chat'') que usa el protocolo ''Extensible Messaging and Presence Protocol'' (XMPP).
=== ¿Qué es XMPP? ===
''XMPP'' es un protocolo cliente-servidor federado para Mensajería Instantánea. Esto significa que los usuarios que tengan cuenta en un servidor XMPP pueden conversar con los usuarios que estén en el mismo u otros servidores XMPP.

View File

@ -3,4 +3,4 @@
Package init file.
"""
__version__ = '22.4'
__version__ = '22.5'

View File

@ -463,6 +463,33 @@ class Info(FollowerComponent):
clients_module.validate(clients)
class EnableState(LeaderComponent):
"""A component to hold the enable state of an app using a simple flag."""
@property
def key(self):
"""Return the storage key."""
if not self.app_id:
raise KeyError('Component must be added to an app before use.')
return f'{self.app_id}_enable'
def is_enabled(self):
"""Return whether the app/component is enabled."""
from plinth import kvstore
return kvstore.get_default(self.key, False)
def enable(self):
"""Store that the app/component is enabled."""
from plinth import kvstore
kvstore.set(self.key, True)
def disable(self):
"""Store that the app/component is disabled."""
from plinth import kvstore
kvstore.set(self.key, False)
def apps_init():
"""Create apps by constructing them with components."""
from . import module_loader # noqa # Avoid circular import

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2020-06-10 15:41+0000\n"
"Last-Translator: aiman an <an1f3@hotmail.com>\n"
"Language-Team: Arabic (Saudi Arabia) <https://hosted.weblate.org/projects/"
@ -795,7 +795,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -935,9 +935,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1105,7 +1106,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1113,13 +1114,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1429,6 +1430,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1436,7 +1438,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1444,7 +1446,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1455,54 +1457,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1511,142 +1521,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1660,12 +1592,45 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2196,6 +2161,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2543,6 +2513,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2668,10 +2645,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3038,22 +3011,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6218,7 +6175,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-22 21:55+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-14 05:55+0000\n"
"Last-Translator: 109247019824 <stoyan@gmx.com>\n"
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/bg/>\n"
@ -82,7 +82,7 @@ msgstr "Език"
#: plinth/forms.py:65
msgid "Language to use for presenting this web interface"
msgstr "Език, на който да се показва този интерфейс"
msgstr "Език, на който да се показва интерфейса"
#: plinth/forms.py:72
msgid "Use the language preference set in the browser"
@ -135,12 +135,12 @@ msgid ""
"disabled to improve security especially when connecting to a hostile local "
"network."
msgstr ""
"Откриването на услуги позволява на други устройства в мрежата да откриват "
"вашия {box_name} и услугите, които се предоставят от него. Също така "
"позволява на {box_name} да открива други устройства и услуги, работещи в "
"локалната мрежа. Откриването на услуги не е от съществено значение и работи "
"само във вътрешни мрежи. То може да бъде спряно, за да се подобри "
"сигурността, особено когато се свързвате към враждебна локална мрежа."
"Откриването на услуги позволява на другите устройства в мрежата да откриват "
"сървъра {box_name} и услугите, които той предоставя. Също така позволява на "
"{box_name} да открива други устройства и услуги, работещи в местната мрежа. "
"Откриването на услуги не е от съществено значение и работи само във вътрешни "
"мрежи. То може да бъде спряно и така да бъде подобрена сигурността, особено "
"когато се свързвате към враждебна местна мрежа."
#: plinth/modules/avahi/__init__.py:51
msgid "Service Discovery"
@ -152,7 +152,7 @@ msgstr "Домейн в местната мрежа"
#: plinth/modules/backups/__init__.py:27
msgid "Backups allows creating and managing backup archives."
msgstr "Създаване и управление на архиви с резервни копия."
msgstr "Създаване и управление на архивни копия."
#: plinth/modules/backups/__init__.py:50 plinth/modules/backups/__init__.py:202
#: plinth/modules/backups/__init__.py:247
@ -281,7 +281,7 @@ msgstr "Наименование"
#: plinth/modules/backups/forms.py:101
msgid "(Optional) Set a name for this backup archive"
msgstr "(по избор) Задайте име на архива с резервното копие"
msgstr "(по избор) Задайте име на архивното копие"
#: plinth/modules/backups/forms.py:121
msgid "Select the apps you want to restore"
@ -384,14 +384,14 @@ msgstr ""
#: plinth/modules/backups/forms.py:247
msgid "SSH server password"
msgstr "Парола за сървъра през SSH"
msgstr "Парола за сървъра на SSH"
#: plinth/modules/backups/forms.py:248
msgid ""
"Password of the SSH Server.<br />SSH key-based authentication is not yet "
"possible."
msgstr ""
"Парола за сървъра през SSH.<br>Удостоверяване на SSH с ключове все още не е "
"Парола за сървъра на SSH.<br>Удостоверяване на SSH с ключове все още не е "
"възможно."
#: plinth/modules/backups/forms.py:267
@ -429,7 +429,7 @@ msgstr "Достъпът през SSH е отказан"
#: plinth/modules/backups/repository.py:64
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
"Папката на хранилището не е празна, а и не е съществуващо хранилище за "
"Папката на хранилището не е празна, но не е и съществуващо хранилище за "
"резервни копия."
#: plinth/modules/backups/repository.py:143
@ -452,7 +452,7 @@ msgstr "Създаване на резервно копие"
#: plinth/modules/backups/templates/backups.html:24
msgid "Upload and restore a backup archive"
msgstr "Качване и възстановяване на архив с резервно копие"
msgstr "Качване и възстановяване на архивно копие"
#: plinth/modules/backups/templates/backups.html:28
msgid "Upload and Restore"
@ -500,16 +500,16 @@ msgstr "Създаване на хранилище"
#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr ""
msgstr "Да бъде ли архива безвъзвратно премахнат?"
#: plinth/modules/backups/templates/backups_delete.html:18
msgid "Time"
msgstr ""
msgstr "Време"
#: plinth/modules/backups/templates/backups_delete.html:34
#, python-format
msgid "Delete Archive %(name)s"
msgstr ""
msgstr "Премахване на архива %(name)s"
#: plinth/modules/backups/templates/backups_form.html:20
#: plinth/modules/backups/templates/backups_schedule.html:19
@ -548,30 +548,30 @@ msgstr ""
#: plinth/modules/backups/templates/backups_repository.html:83
msgid "Download"
msgstr ""
msgstr "Изтегляне"
#: plinth/modules/backups/templates/backups_repository.html:87
#: plinth/modules/backups/templates/backups_restore.html:27
#: plinth/modules/backups/views.py:206
msgid "Restore"
msgstr ""
msgstr "Възстановяване"
#: plinth/modules/backups/templates/backups_repository.html:109
msgid "No archives currently exist."
msgstr ""
msgstr "В момента липсват архиви."
#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "Сигурни ли сте, че желаете да премахнете хранилището?"
msgstr "Сигурни ли сте, че желаете хранилището да бъде премахнато?"
#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
"Отдалеченото хранилище не е премахнато. Това действие го премахва само от "
"списъка на страницата за резервни копия, така че по-късно можете да го "
"добавите отново."
"Отдалеченото хранилище няма да бъде премахнато. Това действие го премахва "
"само от списъка на страницата за резервни копия, така че по-късно да можете "
а го добавите отново."
#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
@ -579,7 +579,7 @@ msgstr "Премахване на хранилище"
#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr ""
msgstr "Възстановяване на данни от"
#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
@ -592,12 +592,16 @@ msgid ""
" backup file.\n"
" "
msgstr ""
"\n"
" Качете резервно копие от %(box_name)s, за да го възстановите. Ще "
"можете да изберете приложенията, които да бъдат възстановени.\n"
" "
#: plinth/modules/backups/templates/backups_upload.html:27
#: plinth/modules/help/templates/statuslog.html:23
#: plinth/modules/networks/templates/connection_show.html:23
msgid "Caution:"
msgstr ""
msgstr "Внимание:"
#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
@ -605,10 +609,13 @@ msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
"За възстановяване на резервно копие имате на разположение %(max_filesize)s. "
"Превишаването на това ограничение може да доведе до неизползваемост на "
"%(box_name)s."
#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr ""
msgstr "Качване на файл"
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
@ -626,7 +633,7 @@ msgstr ""
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
msgstr "Как да проверя?"
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
@ -637,7 +644,7 @@ msgstr ""
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
msgstr "Проверяване на хоста"
#: plinth/modules/backups/views.py:55
msgid "Backup schedule updated."
@ -649,31 +656,31 @@ msgstr "Резервни копия по график"
#: plinth/modules/backups/views.py:106
msgid "Archive created."
msgstr ""
msgstr "Архивът е създаден."
#: plinth/modules/backups/views.py:134
msgid "Delete Archive"
msgstr ""
msgstr "Премахване на архив"
#: plinth/modules/backups/views.py:146
msgid "Archive deleted."
msgstr ""
msgstr "Архивът е премахнат."
#: plinth/modules/backups/views.py:159
msgid "Upload and restore a backup"
msgstr ""
msgstr "Качване и възстановяване от резервно копие"
#: plinth/modules/backups/views.py:194
msgid "Restored files from backup."
msgstr ""
msgstr "Файловете от резервното копие са възстановени."
#: plinth/modules/backups/views.py:222
msgid "No backup file found."
msgstr ""
msgstr "Не е намерено резервно копие."
#: plinth/modules/backups/views.py:230
msgid "Restore from uploaded file"
msgstr ""
msgstr "Възстановяване от качения файл"
#: plinth/modules/backups/views.py:289
msgid "No additional disks available to add a repository."
@ -837,7 +844,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -977,9 +984,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1147,7 +1155,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1155,13 +1163,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1471,6 +1479,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1478,7 +1487,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1486,7 +1495,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1497,54 +1506,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1553,142 +1570,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1702,12 +1641,47 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Връзката е отказана"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2236,6 +2210,11 @@ msgstr "Подаване на обратна връзка"
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2585,6 +2564,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2710,10 +2696,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3078,22 +3060,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6260,7 +6226,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7247,7 +7213,7 @@ msgstr ""
#: plinth/templates/setup.html:50
msgid "Check again"
msgstr ""
msgstr "Повторна проверка"
#: plinth/templates/setup.html:55
msgid ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-06-16 07:33+0000\n"
"Last-Translator: Oymate <dhruboadittya96@gmail.com>\n"
"Language-Team: Bengali <https://hosted.weblate.org/projects/freedombox/"
@ -794,7 +794,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "পাসওয়ার্ড"
@ -934,9 +934,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1104,7 +1105,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1112,13 +1113,13 @@ msgid "Configure"
msgstr "কনফিগার"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1428,6 +1429,7 @@ msgid "Test"
msgstr "পরীক্ষা"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
#, fuzzy
msgid "Result"
msgstr "ফলাফল"
@ -1436,7 +1438,7 @@ msgstr "ফলাফল"
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1444,7 +1446,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1455,54 +1457,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1511,142 +1521,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "নাম"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "সম্পর্কে"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1660,12 +1592,45 @@ msgstr "সম্পর্কে"
msgid "Status"
msgstr "অবস্থা"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "ডোমেন"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2206,6 +2171,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "সম্পর্কে"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2553,6 +2523,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2678,10 +2655,6 @@ msgstr "অনুমতিপত্র"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "ডোমেন"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3046,22 +3019,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6228,7 +6185,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-15 16:56+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-07 23:55+0000\n"
"Last-Translator: Jiří Podhorecký <j.podhorecky@volny.cz>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/freedombox/"
"freedombox/cs/>\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 4.10.1\n"
"X-Generator: Weblate 4.11-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@ -858,7 +858,7 @@ msgid "No passwords currently configured."
msgstr "V současné době nejsou nakonfigurována žádná hesla."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Heslo"
@ -1004,9 +1004,10 @@ msgid "Refresh IP address and domains"
msgstr "Obnovení IP adresy a domén"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1202,7 +1203,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Obecná nastavení"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1210,13 +1211,13 @@ msgid "Configure"
msgstr "Nastavit"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Doménový název"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Neplatný doménový název"
@ -1563,6 +1564,7 @@ msgid "Test"
msgstr "Vyzkoušet"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Výsledek"
@ -1570,7 +1572,7 @@ msgstr "Výsledek"
msgid "Diagnostic Test"
msgstr "Diagnostické testy"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1581,7 +1583,7 @@ msgstr ""
"každých 24 hodin), může být pro ostatní obtížné vás na internetu najít. To "
"ostatním znemožní najít služby, které jsou poskytovány tímto {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1598,15 +1600,35 @@ msgstr ""
"váš název DNS k nové IP adrese, a pokud se někdo z Internetu zeptá na váš "
"název DNS, dostane odpověď s vaší aktuální IP adresou."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Pokud hledáte bezplatný dynamický účet DNS, můžete najít bezplatnou službu "
"GnuDIP na adrese <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a> nebo můžete najít bezplatné služby založené na "
"aktualizaci URL na adrese <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Klient dynamické DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Název dynamické domény"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1617,7 +1639,7 @@ msgstr ""
"podrobnosti naleznete v šablonách aktualizačních URL adres některých "
"poskytovatelů, poskytovaných pro ukázku."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1627,7 +1649,7 @@ msgstr ""
"Pokud nepodporuje GnuDIP nebo není na seznamu, můžete použít URL adresu, "
"poskytnutou vaším poskytovatelem."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1635,20 +1657,20 @@ msgstr ""
"Nezadávejte sem URL adresu (jako třeba „https://example.com/“) ale pouze "
"doménu, mířící na GnuDIP server (jako například „example.com“)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Veřejný doménový název který chcete používat pro dosažitelnost svého "
"{box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Tuto předvolbu použijte pokud váš poskytovatel používá samy sebou podepsané "
"certifikáty."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1656,11 +1678,11 @@ msgstr ""
"Pokud je vybrána tato předvolba, pro základní HTTP ověření bude použito vaše "
"uživatelské jméno a heslo ."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Pokud chcete zachovat stávající heslo, tuto kolonku nevyplňujte."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1673,161 +1695,68 @@ msgstr ""
"skutečné IP adresy. Adresa URL by měla jednoduše vrátit IP adresu, ze které "
"klient přichází (příklad: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Uživatelské jméno které bylo použito pro vytvoření účtu."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "další aktualizace URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Zapnout dynamické DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Typ služby"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Adresa GnuDIP serveru"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Neplatný název serveru"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL adresa aktualizace"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Přijímat veškeré SSL certifikáty"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Použít základní HTTP ověřování"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Uživatelské jméno"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Zobrazit heslo"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL adresa na které hledat veřejnou IP adresu"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Použijte IPv6 místo IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Zadejte URL adresu aktualizace nebo GNUDIP serveru"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "požadovaná tajemství"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Zadejte GnuDIP uživatelské jméno"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Zadejte doménový název GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Zadejte heslo"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Pokud hledáte bezplatný dynamický účet DNS, můžete najít bezplatnou službu "
"GnuDIP na adrese <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a> nebo můžete najít bezplatné služby založené na "
"aktualizaci URL na adrese <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Pokud je váš %(box_name)s připojený za NAT směrovačem, nezapomeňte v něm "
"nastavit předávání standardních portů, jako třeba TCP port 80 (HTTP) a TCP "
"port 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Váš webový prohlížeč má vypnutý JavaScript. Dynamický režim formuláře je "
"vypnutý a některé pomocné funkce nemusí fungovat (ale hlavní funkčnost by "
"měla být zachována)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aktualizovat nastavení"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Typ NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Doposud se nepodařilo zjistit typ NAT překladu. Dokud nezadáte „URL adresu "
"kontroly IP“, typ NAT překladu nebude možné zjistit."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Přímé připojení do Internetu."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Za NAT. To znamená, že služba dynamického DNS bude změny veřejné IP adresy "
"zjišťovat dotazováním na „URL adresu pro zjišťování veřejné IP "
"adresy“ (zadání „URL adresy pro zjišťování veřejné IP adresy“ je pro to "
"potřebné, v opačném případě změny IP adresy nebudou zjištěny). V případě "
"změn WAN IP adresy, může trvat až %(timer)s minut než bude DNS záznam "
"zaktualizován."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Minulá aktualizace"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "O projektu"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1841,13 +1770,60 @@ msgstr "O projektu"
msgid "Status"
msgstr "Stav"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Nastavit dynamický DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Doména"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Stav dynamického DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Minulá aktualizace"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP adresa"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Přístup"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "selhalo"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Nejsou k dispozici žádné knihovny."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Název připojení"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Smazat připojení"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Automatická aktualizace"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2435,6 +2411,11 @@ msgstr "Odeslat zpětnou vazbu"
msgid "Contribute"
msgstr "Zapojit se"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "O projektu"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2869,6 +2850,13 @@ msgstr "Přejít na stránku %(site)s"
msgid "Delete site %(site)s"
msgstr "Smazat stránku %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aktualizovat nastavení"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3013,10 +3001,6 @@ msgstr "Certifikáty"
msgid "Cannot test: No domains are configured."
msgstr "Nelze testovat: Nejsou nakonfigurovány žádné domény."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Doména"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Stav certifikátu"
@ -3176,7 +3160,7 @@ msgstr "Prvek"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3451,22 +3435,6 @@ msgstr "Adresa"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Nastavení nejvyššího umožněného počtu hráčů aktualizováno"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Nastavení tvořivého režimu aktualizována"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Nastavení PVP aktualizováno"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Nastavení poškozování aktualizováno"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5439,7 +5407,7 @@ msgstr "E-mailový klient"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Používat pouze místní poštovní server"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5447,6 +5415,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Pokud je povoleno, textové pole pro zadávání serveru je z přihlašovací "
"stránky odstraněno a uživatelé mohou číst a odesílat e-maily pouze z tohoto "
"{box_name}."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5841,10 +5812,8 @@ msgid "Bookmarks"
msgstr "Záložky"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6088,14 +6057,12 @@ msgid "Software Installation Snapshots"
msgstr "Zachycené stavy instalace software"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Zapnout nebo vypnout pořizování zachycených stavů před a po instalaci "
"software"
"Povolení nebo zakázání zachycených stavů před a po každé instalaci a "
"aktualizaci softwaru."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6331,10 +6298,8 @@ msgid "Login"
msgstr "Přihlášení"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Heslo úspěšně změněno."
msgstr "Odhlášení proběhlo úspěšně."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7118,8 +7083,13 @@ msgid "Frequent feature updates activated."
msgstr "Aktivovány časté aktualizace funkcí."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7173,11 +7143,10 @@ msgid "Authorization Password"
msgstr "Autorizační heslo"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Zadejte své aktuální heslo a autorizujte změny účtu."
msgstr "Zadejte heslo uživatele \"{user}\" pro autorizaci změn účtu."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8272,6 +8241,85 @@ msgstr "%(percentage)s%% dokončeno"
msgid "Gujarati"
msgstr "gudžarátština"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Zapnout dynamické DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Zadejte URL adresu aktualizace nebo GNUDIP serveru"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Zadejte GnuDIP uživatelské jméno"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Zadejte doménový název GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Zadejte heslo"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Pokud je váš %(box_name)s připojený za NAT směrovačem, nezapomeňte v něm "
#~ "nastavit předávání standardních portů, jako třeba TCP port 80 (HTTP) a "
#~ "TCP port 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Váš webový prohlížeč má vypnutý JavaScript. Dynamický režim formuláře je "
#~ "vypnutý a některé pomocné funkce nemusí fungovat (ale hlavní funkčnost by "
#~ "měla být zachována)."
#~ msgid "NAT type"
#~ msgstr "Typ NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Doposud se nepodařilo zjistit typ NAT překladu. Dokud nezadáte „URL "
#~ "adresu kontroly IP“, typ NAT překladu nebude možné zjistit."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Přímé připojení do Internetu."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Za NAT. To znamená, že služba dynamického DNS bude změny veřejné IP "
#~ "adresy zjišťovat dotazováním na „URL adresu pro zjišťování veřejné IP "
#~ "adresy“ (zadání „URL adresy pro zjišťování veřejné IP adresy“ je pro to "
#~ "potřebné, v opačném případě změny IP adresy nebudou zjištěny). V případě "
#~ "změn WAN IP adresy, může trvat až %(timer)s minut než bude DNS záznam "
#~ "zaktualizován."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Nastavit dynamický DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Stav dynamického DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Nastavení nejvyššího umožněného počtu hráčů aktualizováno"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Nastavení tvořivého režimu aktualizována"
#~ msgid "PVP configuration updated"
#~ msgstr "Nastavení PVP aktualizováno"
#~ msgid "Damage configuration updated"
#~ msgstr "Nastavení poškozování aktualizováno"
#~ msgid "RoundCube availability"
#~ msgstr "Dostupnost RoundCube"
@ -9240,9 +9288,6 @@ msgstr "gudžarátština"
#~ msgid "Vulnerabilities Reported"
#~ msgstr "Nahlášené zranitelnosti"
#~ msgid "Auto-update"
#~ msgstr "Automatická aktualizace"
#~ msgid "Add Remote Location"
#~ msgstr "Přidat umístění na protějšku"

View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Danish <https://hosted.weblate.org/projects/freedombox/"
@ -868,7 +868,7 @@ msgid "No passwords currently configured."
msgstr "Endnu ingen kodeord konfigureret."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Kodeord"
@ -1017,9 +1017,10 @@ msgid "Refresh IP address and domains"
msgstr "Opfrisk IP-adresse og domæner"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1214,7 +1215,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Generel Konfiguration"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1222,13 +1223,13 @@ msgid "Configure"
msgstr "Konfigurer"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domænenavn"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Ugyldigt domænenavn"
@ -1577,6 +1578,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Resultat"
@ -1584,7 +1586,7 @@ msgstr "Resultat"
msgid "Diagnostic Test"
msgstr "Diagnostisk Test"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1595,7 +1597,7 @@ msgstr ""
"døgnet), kan det være svært for andre at finde dig på internettet. Dette vil "
"forhindre andre i at finde de tjenester denne {box_name} udbyder."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1612,15 +1614,34 @@ msgstr ""
"opdatere dit DNS-navn med den nye IP-adresse, således at hvis nogen på "
"internettet spørger til adressen vil de få din aktuelle IP-adresse."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Leder du efter en gratis dynamisk DNS-konto kan du få en gratis GnuDIP-"
"tjeneste på <a href='http://gnudip.datasystems24.net' target='_blank'>gnudip."
"datasystems24.net</a> eller du kan få en gratis URL-baseret tjeneste på <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Dynamisk DNS Klient"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamisk domænenavn"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1630,7 +1651,7 @@ msgstr ""
"bruges i URL'en. For flere detaljer se skabelonerne for opdaterings-URL'er i "
"eksemplernes tjenester."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1640,7 +1661,7 @@ msgstr ""
"udbyderen ikke understøtter GnuDIP-protokollen eller ikke er prædefineret, "
"kan en opdaterings-URL fra din udbyder angives direkte."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1648,16 +1669,16 @@ msgstr ""
"Her skal ikke angives en URL (såsom \"https://example.com/\"), men blot "
"værtsnavnet for GnuDIP-serveren (såsom \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "Det offentlige domænenavn du vil bruge til at nå din {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "Aktiver dette hvis din udbyder bruger selvunderskrevne certifikater."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1665,11 +1686,11 @@ msgstr ""
"Hvis denne option er aktiveret vil dit brugernavn og kodeord blive anvendt "
"til basal (\"basic\") HTTP-autentifikation."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Lad dette felt stå tomt hvis du vil beholde dit nuværende kodeord."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1688,165 +1709,66 @@ msgstr ""
"hvorfra klientens forespørgsel kommer (eksempelvis: http://myip."
"datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Brugernavnet der blev brugt ved kontooprettelse."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "anden opdaterings-URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Aktiver Dynamisk DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Servicetype"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP Serveradresse"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Ugyldigt servernavn"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Opdaterings-URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Accepter alle SSL-certifikater"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Brug basal (\"basic\") HTTP-autentifikation"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Brugernavn"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Vis kodeord"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL til at slå den offentlige IP-addresse op"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Angiv venligst opdaterings-URL eller GnuDIP serveradresse"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Angiv venligst et brugernavn til GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Angiv venligst et domæne til GnuDIP-server"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Angiv venligst et kodeord"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Leder du efter en gratis dynamisk DNS-konto kan du få en gratis GnuDIP-"
"tjeneste på <a href='http://gnudip.datasystems24.net' target='_blank'>gnudip."
"datasystems24.net</a> eller du kan få en gratis URL-baseret tjeneste på <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Hvis din %(box_name)s er tilsluttet bag en NAT-router, så glem ikke at "
"viderestille standardporte såsom TCP-port 80 (HTTP) og TCP-port 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Din browser har ikke aktiveret JavaScript. Dynamiske indtastningsfelter og "
"hjælpefunktionalitet virker formentlig ikke (men grundfunktionaliteten burde "
"fungere)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Opdater indstillinger"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-type"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT-typen er endnu ikke detekteret. Hvis du ikke har indtastet en \"URL for "
"IP-kontrol\" kan den ikke detekteres."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direkte forbindelse til internettet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Bag NAT. Dette betyder at Dynamisk DNS-tjenesten ved brug af \"URL for IP-"
"kontrol\" vil tjekke din IP-adresse for ændringer (URL'en er nødvendig af "
"denne grund, ellers kan ændringer i IP ikke detekteres). Hvis din offentlige "
"(WAN) IP-adresse ændres, kan det tage op til %(timer)s minutter inden din "
"registrering i DNS opdateres."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Seneste opdatering"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1860,13 +1782,60 @@ msgstr "Om"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfigurer Dynamisk DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domæne"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamisk DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Seneste opdatering"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-adresse"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Adgang"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "mislykkedes"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Ingen samlinger tilgængelige."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Forbindelsesnavn"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Slet forbindelse"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "Seneste opdatering"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2496,6 +2465,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, fuzzy, python-format
@ -2917,6 +2891,13 @@ msgstr "Gå til sitet %(site)s"
msgid "Delete site %(site)s"
msgstr "Slet sitet %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Opdater indstillinger"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3077,10 +3058,6 @@ msgstr "Certifikat Status"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domæne"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Certifikat Status"
@ -3504,30 +3481,6 @@ msgstr "Adresse"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "Konfiguration opdateret"
#: plinth/modules/minetest/views.py:55
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "Konfiguration opdateret"
#: plinth/modules/minetest/views.py:61
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "Konfiguration opdateret"
#: plinth/modules/minetest/views.py:67
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "Konfiguration opdateret"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7206,7 +7159,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8369,6 +8322,92 @@ msgstr "%(percentage)s%% færdig"
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Aktiver Dynamisk DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Angiv venligst opdaterings-URL eller GnuDIP serveradresse"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Angiv venligst et brugernavn til GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Angiv venligst et domæne til GnuDIP-server"
#~ msgid "Please provide a password"
#~ msgstr "Angiv venligst et kodeord"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Hvis din %(box_name)s er tilsluttet bag en NAT-router, så glem ikke at "
#~ "viderestille standardporte såsom TCP-port 80 (HTTP) og TCP-port 443 "
#~ "(HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Din browser har ikke aktiveret JavaScript. Dynamiske indtastningsfelter "
#~ "og hjælpefunktionalitet virker formentlig ikke (men grundfunktionaliteten "
#~ "burde fungere)."
#~ msgid "NAT type"
#~ msgstr "NAT-type"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT-typen er endnu ikke detekteret. Hvis du ikke har indtastet en \"URL "
#~ "for IP-kontrol\" kan den ikke detekteres."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Direkte forbindelse til internettet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Bag NAT. Dette betyder at Dynamisk DNS-tjenesten ved brug af \"URL for IP-"
#~ "kontrol\" vil tjekke din IP-adresse for ændringer (URL'en er nødvendig af "
#~ "denne grund, ellers kan ændringer i IP ikke detekteres). Hvis din "
#~ "offentlige (WAN) IP-adresse ændres, kan det tage op til %(timer)s "
#~ "minutter inden din registrering i DNS opdateres."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Konfigurer Dynamisk DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Dynamisk DNS Status"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Konfiguration opdateret"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Konfiguration opdateret"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "PVP configuration updated"
#~ msgstr "Konfiguration opdateret"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Damage configuration updated"
#~ msgstr "Konfiguration opdateret"
#, fuzzy
#~| msgid "Available Domains"
#~ msgid "RoundCube availability"
@ -9158,11 +9197,6 @@ msgstr ""
#~ "Konfiguration af PageKite er færdig. Servicerne for HTTP og HTTPS er "
#~ "blevet aktiveret."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "Seneste opdatering"
#, fuzzy
#~| msgid "Create User"
#~ msgid "Add Remote Location"

View File

@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-19 09:56+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-02 08:55+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: German <https://hosted.weblate.org/projects/freedombox/"
"freedombox/de/>\n"
@ -882,7 +882,7 @@ msgid "No passwords currently configured."
msgstr "Derzeit sind keine Passwörter konfiguriert."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Passwort"
@ -1030,9 +1030,10 @@ msgid "Refresh IP address and domains"
msgstr "IP-Adresse und Domänen aktualisieren"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1233,7 +1234,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Allgemeine Konfiguration"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1241,13 +1242,13 @@ msgid "Configure"
msgstr "Konfigurieren"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domain-Name"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Ungültiger Domain-Name"
@ -1599,6 +1600,7 @@ msgid "Test"
msgstr "Testen"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Ergebnis"
@ -1606,7 +1608,7 @@ msgstr "Ergebnis"
msgid "Diagnostic Test"
msgstr "Diagnose"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1618,7 +1620,7 @@ msgstr ""
"zu finden. Dadurch werden andere daran gehindert, jene Dienste zu finden, "
"die von Ihrer {box_name} angeboten werden."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1636,15 +1638,35 @@ msgstr ""
"neuen IP zuweisen, und wenn jemand aus dem Internet nach Ihrem DNS-Namen "
"fragt, erhält er eine Antwort mit Ihrer aktuellen IP-Adresse."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Ein kostenloser Anbieter für Dynamisches DNS mittels GnuDIP ist "
"beispielsweise <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a>. Auch andere Anbieter wie <a href=\"http://"
"freedns.afraid.org/\" target=\"_blank\">freedns.afraid.org</a> können "
"mittels Update-URL genutzt werden."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Dynamischer DNS-Client"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamischer Domain-Name"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1654,7 +1676,7 @@ msgstr ""
"können in der URL verwendet werden. Details finden Sie in den Update-URL-"
"Vorlagen der Beispielanbieter."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1664,7 +1686,7 @@ msgstr ""
"Anbieter GnuDIP nicht unterstützt oder der Anbieter nicht aufgeführt ist, "
"kann die Aktualisierungs-URL Ihres Anbieters verwendet werden."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1672,20 +1694,20 @@ msgstr ""
"Bitte hier keine URL (wie „https://example.com/“) eingeben, sondern nur den "
"Hostnamen des GnuDIP-Servers (wie „example.com“)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Der öffentliche Domainname, den Sie verwenden möchten, um Ihre FredomBox "
"{box_name} zu erreichen."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Verwenden Sie diese Option, wenn Ihr Anbieter eigensignierte Zertifikate "
"verwendet."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1693,12 +1715,12 @@ msgstr ""
"Ist diese Option ausgewählt, werden der Benutzername und das Passwort des "
"Dynamic-DNS-Kontos auch zur HTTP-Authentifizierung verwendet."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"Dieses Feld leerlassen, wenn Sie das Passwort unverändert lassen möchten."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1711,160 +1733,68 @@ msgstr ""
"URL verwendet, um die wahre IP-Adresse zu bestimmen. Die URL sollte nur die "
"IP-Adresse des Clients liefern (Beispiel: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Benutzername, der beim Erstellen des Kontos gewählt wurde."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "andere Update-URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Dynamisches DNS einschalten"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Typ des Dienstes"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP-Server-Adresse"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Ungültiger Servername"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL aktualisieren"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Alle SSL-Zertifikate akzeptieren"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "HTTP-Basisauthentifizierung verwenden"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Benutzername"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Passwort anzeigen"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "Auf die öffentliche IP-Adresse verweisende URL"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Verwenden Sie IPv6 statt IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Bitte eine Update-URL oder eine GnuDIP-Serveradresse angeben"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "Secrets erforderlich"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Bitte einen GnuDIP-Benutzernamen angeben"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Bitte einen GnuDIP-Domainnamen angeben"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Bitte ein Passwort angeben"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Ein kostenloser Anbieter für Dynamisches DNS mittels GnuDIP ist "
"beispielsweise <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a>. Auch andere Anbieter wie <a href=\"http://"
"freedns.afraid.org/\" target=\"_blank\">freedns.afraid.org</a> können "
"mittels Update-URL genutzt werden."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Wenn Ihre %(box_name)s hinter einem NAT-Router angeschlossen ist, muss "
"zusätzlich im Router das Portforwarding für Standardports, einschließlich "
"TCP-Port 80 (HTTP) und TCP-Port 443 (HTTPS), eingerichtet werden."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Javasript ist deaktiviert. Der dynamische Formularmodus ist damit nicht "
"möglich und einige Hilfsfunktionen werden möglicherweise nicht funktionieren "
"(aber die Hauptfunktionalität sollte gegeben sein)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Übernehmen der Änderungen"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-Typ"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Der NAT-Typ konnte noch nicht erkannt werden. Wenn keine „IP-Check-URL“ "
"angegeben wurde, kann der NAT-Typ nicht erkannt werden."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direkte Verbindung zum Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Hinter einem NAT. Dies bedeutet, dass der Dynamische DNS-Dienst für "
"Änderungen die „URL zur Abfrage der öffentlichen IP-Adresse“ aufrufen wird "
"(diese URL ist erforderlich, um Änderungen der IP-Adresse zu erkennen). Im "
"Falle einer Änderung Ihrer WAN-IP-Adresse kann es möglicherweise bis zu "
"%(timer)s Minuten dauern bis der DNS-Eintrag aktualisiert ist."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Letztes Update"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Info"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1878,13 +1808,60 @@ msgstr "Info"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Dynamisches DNS konfigurieren"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Status Dynamisches DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Letztes Update"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-Adresse"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Zugriff"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "gescheitert"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Keine Bibliotheken verfügbar."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Verbindungsname"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Verbindung löschen"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Automatisches Update"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2484,6 +2461,11 @@ msgstr "Feedback geben"
msgid "Contribute"
msgstr "Mitwirken"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Info"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2928,6 +2910,13 @@ msgstr "Gehe zu Seite %(site)s"
msgid "Delete site %(site)s"
msgstr "Seite %(site)s löschen"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Übernehmen der Änderungen"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3074,10 +3063,6 @@ msgstr "Zertifikate"
msgid "Cannot test: No domains are configured."
msgstr "Kann nicht testen: Es sind keine Domains konfiguriert."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Zertifikatstatus"
@ -3239,7 +3224,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3520,22 +3505,6 @@ msgstr "Adresse"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Einstellung für Maximale Spielerzahl aktualisiert"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Kreativ-Modus-Konfiguration aktualisiert"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Spieler-gegen-Spieler-Konfiguration aktualisiert"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Schaden-Konfiguration aktualisiert"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5541,7 +5510,7 @@ msgstr "E-Mail-Client"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Nur den lokalen Mailserver verwenden"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5549,6 +5518,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Wenn diese Option aktiviert ist, wird das Textfeld für die Servereingabe von "
"der Anmeldeseite entfernt und Benutzer können nur E-Mails von diesem "
"{box_name} lesen und senden."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5947,10 +5919,8 @@ msgid "Bookmarks"
msgstr "Lesezeichen"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6199,13 +6169,12 @@ msgid "Software Installation Snapshots"
msgstr "Softwareinstallation-Schnappschüsse"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Schnappschüsse vor und nach Softwareinstallationen ein- oder auschalten"
"Schnappschüsse vor und nach jeder Softwareinstallationen und -Aktualisierung "
"ein- oder auschalten."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6444,10 +6413,8 @@ msgid "Login"
msgstr "Anmelden"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Passwort erfolgreich geändert."
msgstr "Erfolgreich abgemeldet."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7256,8 +7223,13 @@ msgid "Frequent feature updates activated."
msgstr "Häufige Funktions-Updates aktiviert."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7311,12 +7283,12 @@ msgid "Authorization Password"
msgstr "Autorisierungs-Passwort"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr ""
"Geben Sie Ihr aktuelles Kennwort ein, um Kontoänderungen zu autorisieren."
"Geben Sie das Passwort für den Benutzer „{user}“ ein, um Kontoänderungen zu "
"autorisieren."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8438,6 +8410,85 @@ msgstr "%(percentage)s %% abgeschlossen"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Dynamisches DNS einschalten"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Bitte eine Update-URL oder eine GnuDIP-Serveradresse angeben"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Bitte einen GnuDIP-Benutzernamen angeben"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Bitte einen GnuDIP-Domainnamen angeben"
#~ msgid "Please provide a password"
#~ msgstr "Bitte ein Passwort angeben"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Wenn Ihre %(box_name)s hinter einem NAT-Router angeschlossen ist, muss "
#~ "zusätzlich im Router das Portforwarding für Standardports, einschließlich "
#~ "TCP-Port 80 (HTTP) und TCP-Port 443 (HTTPS), eingerichtet werden."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Javasript ist deaktiviert. Der dynamische Formularmodus ist damit nicht "
#~ "möglich und einige Hilfsfunktionen werden möglicherweise nicht "
#~ "funktionieren (aber die Hauptfunktionalität sollte gegeben sein)."
#~ msgid "NAT type"
#~ msgstr "NAT-Typ"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Der NAT-Typ konnte noch nicht erkannt werden. Wenn keine „IP-Check-URL“ "
#~ "angegeben wurde, kann der NAT-Typ nicht erkannt werden."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Direkte Verbindung zum Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Hinter einem NAT. Dies bedeutet, dass der Dynamische DNS-Dienst für "
#~ "Änderungen die „URL zur Abfrage der öffentlichen IP-Adresse“ aufrufen "
#~ "wird (diese URL ist erforderlich, um Änderungen der IP-Adresse zu "
#~ "erkennen). Im Falle einer Änderung Ihrer WAN-IP-Adresse kann es "
#~ "möglicherweise bis zu %(timer)s Minuten dauern bis der DNS-Eintrag "
#~ "aktualisiert ist."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Dynamisches DNS konfigurieren"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Status Dynamisches DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Einstellung für Maximale Spielerzahl aktualisiert"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Kreativ-Modus-Konfiguration aktualisiert"
#~ msgid "PVP configuration updated"
#~ msgstr "Spieler-gegen-Spieler-Konfiguration aktualisiert"
#~ msgid "Damage configuration updated"
#~ msgstr "Schaden-Konfiguration aktualisiert"
#~ msgid "RoundCube availability"
#~ msgstr "Verfügbarkeit von RoundCube"
@ -9418,9 +9469,6 @@ msgstr "Gujarati"
#~ msgid "Vulnerabilities Reported"
#~ msgstr "Gemeldete Sicherheitslücken"
#~ msgid "Auto-update"
#~ msgstr "Automatisches Update"
#, fuzzy
#~| msgid "Add Remote Repository"
#~ msgid "Add Remote Location"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -792,7 +792,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -932,9 +932,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1102,7 +1103,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1110,13 +1111,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1426,6 +1427,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1433,7 +1435,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1441,7 +1443,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1452,54 +1454,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1508,142 +1518,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1657,12 +1589,45 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2191,6 +2156,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2538,6 +2508,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2663,10 +2640,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3031,22 +3004,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6211,7 +6168,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-04-14 04:27+0000\n"
"Last-Translator: Michalis <michalisntovas@yahoo.gr>\n"
"Language-Team: Greek <https://hosted.weblate.org/projects/freedombox/"
@ -892,7 +892,7 @@ msgid "No passwords currently configured."
msgstr "Δεν έχουν ρυθμιστεί μερίσματα."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Κωδικός"
@ -1058,9 +1058,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1259,7 +1260,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Γενικές ρυθμίσεις"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1267,13 +1268,13 @@ msgid "Configure"
msgstr "Ρυθμίσετε"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Όνομα διαδικτύου"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Μη έγκυρο όνομα διαδικτύου"
@ -1627,6 +1628,7 @@ msgid "Test"
msgstr "Τεστ"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Αποτέλεσμα"
@ -1634,7 +1636,7 @@ msgstr "Αποτέλεσμα"
msgid "Diagnostic Test"
msgstr "Διαγνωστικός έλεγχος"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1646,7 +1648,7 @@ msgstr ""
"Αυτό θα εμποδίσει άλλους να βρουν υπηρεσίες που παρέχονται από αυτό το "
"{box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1664,15 +1666,35 @@ msgstr ""
"αντιστοιχίσει το όνομα DNS σας στη νέα IP και αν κάποιος από το Internet "
"ζητήσει το όνομα DNS, θα λάβει απάντηση με την τρέχουσα διεύθυνση IP."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Εάν ψάχνετε για ένα δωρεάν λογαριασμό δυναμικού DNS, μπορείτε να βρείτε μια "
"δωρεάν GnuDIP υπηρεσια στο <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> ή μια δωρεάν υπηρεσία URL "
"ανανέωσης στο <a href='http://freedns.afraid.org/' target='_blank'> freedns."
"afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Πελάτης δυναμικού DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Δυναμικό όνομα διαδικτύου"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1682,7 +1704,7 @@ msgstr ""
"διαδικτύου &gt; μπορούν να χρησιμοποιηθούν μέσα στη διεύθυνση URL. Για "
"λεπτομέρειες, ανατρέξτε στα παραδείγματα URL των παρόχων."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1693,7 +1715,7 @@ msgstr ""
"υπηρεσία παροχής σας δεν παρατίθεται, μπορείτε να χρησιμοποιήσετε τη "
"διεύθυνση URL που δίνει ο παροχέας σας για την ανανέωση."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1701,19 +1723,19 @@ msgstr ""
"Παρακαλώ μην εισάγετε μια διεύθυνση URL εδώ (όπως \"https://example.com/\"), "
"αλλά μόνο το όνομα του διακομιστή GnuDIP (όπως \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Το δημόσιο όνομα διαδικτύου που θέλετε να χρησιμοποιήσετε για το {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Χρησιμοποιήστε αυτήν την επιλογή εάν ο παροχέας σας χρησιμοποιεί SSL "
"πιστοποιητικά που δεν είναι εγγεκριμένο από αρχή πιστοποιητικών."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1721,13 +1743,13 @@ msgstr ""
"Εάν αυτή η επιλογή είναι ενεργοποιημένη, το όνομα χρήστη και ο κωδικός "
"πρόσβασής σας θα χρησιμοποιηθούν για τον βασικό έλεγχο ταυτότητας HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"Αφήστε αυτό το πεδίο κενό αν θέλετε να διατηρήσετε τον τρέχοντα κωδικό "
"πρόσβασής σας."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1746,169 +1768,67 @@ msgstr ""
"διεύθυνση URL θα πρέπει απλά να επιστρέψει την IP από την οποία προέρχεται ο "
"πελάτης (παράδειγμα: http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
"Το όνομα χρήστη που χρησιμοποιήθηκε κατά τη δημιουργία του λογαριασμού."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "Διεύθυνση URL ενημέρωσης"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Ενεργοποιήστε το Δυναμικό DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Τύπος υπηρεσίας"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Διεύθυνση διακομιστή GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Μη έγκυρο όνομα διακομιστή"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Διεύθυνση URL ενημέρωσης"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Αποδοχή όλων των πιστοποιητικών SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Χρήση βασικού ελέγχου ταυτότητας HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Όνομα χρήστη"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Εμφάνιση κωδικού"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "Διεύθυνση URL για να αναζητήσετε δημόσια IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Δώστε μια διεύθυνση URL ανανέωσης ή ένα διακομιστή GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Παρακαλώ δώστε ένα όνομα χρήστη GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Δώστε ένα όνομα διαδικτύου για το GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Δώστε έναν κωδικό πρόσβασης"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Εάν ψάχνετε για ένα δωρεάν λογαριασμό δυναμικού DNS, μπορείτε να βρείτε μια "
"δωρεάν GnuDIP υπηρεσια στο <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> ή μια δωρεάν υπηρεσία URL "
"ανανέωσης στο <a href='http://freedns.afraid.org/' target='_blank'> freedns."
"afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Εάν τo %(box_name)s είναι συνδεδεμένο πίσω από ένα δρομολογητή NAT, μην "
"ξεχάσετε να προσθέσετε προώθηση θυρών για τυπικές θύρες, συμπεριλαμβανομένης "
"της θύρας TCP 80 (HTTP) και της θύρας TCP 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Έχετε απενεργοποιήσει την JavaScript. Η λειτουργία δυναμικής φόρμας είναι "
"απενεργοποιημένη και ορισμένες βοηθητικές λειτουργίες ενδέχεται να μην "
"λειτουργούν (βασικές λειτουρίες θα είναι εντάξει παραυτά)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Ενημέρωση ρυθμίσεων"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Τύπος NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Ο τύπος NAT δεν εντοπίστηκε ακόμα. Εάν δεν παρέχετε μια \"διεύθυνση URL "
"ελέγχου IP\", δεν θα ανιχνεύσουμε έναν τύπο NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Άμεση σύνδεση στο Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Πίσω από δίκτυο ΝΑΤ. Αυτό σημαίνει ότι το δυναμικό DNS θα αναζητήσει την "
"δημόσια διεύθυνση ΙΡ στην υπηρεσία του URL ανανέωσης (η υπηρεσία του URL "
"ανανέωσης χρειάζεται σε αυτή την περίπτωση). Στην περίπτωση που η δημόσια IP "
"σας αλλάξει μπορεί να χρεαστουν %(timer)s λεπτά για να ανανεωθεί το DNS."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Τελευταία ενημέρωση"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Σχετικά με"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1922,13 +1842,60 @@ msgstr "Σχετικά με"
msgid "Status"
msgstr "Κατάσταση"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Ρύθμιση παραμέτρων δυναμικού DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Όνομα διαδικτύου"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Κατάσταση δυναμικού DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Τελευταία ενημέρωση"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "Διεύθυνση IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Πρόσβαση"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "Setup failed."
msgid "Failed"
msgstr "Η εγκατάσταση απέτυχε."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No repositories available."
msgid "No status available."
msgstr "Δεν υπάρχουν διαθέσιμα αποθετήρια."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Όνομα σύνδεσης"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Διαγραφή σύνδεσης"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Enable auto-update"
msgid "Already up-to-date"
msgstr "Ενεργοποίηση αυτόματων ενημερώσεων"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2540,6 +2507,11 @@ msgstr "Υποβάλετε σχόλια"
msgid "Contribute"
msgstr "Συνεισφέρετε"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Σχετικά με"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -3006,6 +2978,13 @@ msgstr "Μεταβείτε στην τοποθεσία %(site)s"
msgid "Delete site %(site)s"
msgstr "Διαγραφή ιστότοπου %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Ενημέρωση ρυθμίσεων"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3156,10 +3135,6 @@ msgstr "Πιστοποιητικά"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Όνομα διαδικτύου"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Κατάσταση πιστοποιητικού"
@ -3604,22 +3579,6 @@ msgstr "Διεύθυνση"
msgid "Port"
msgstr "Θύρα"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Η ρύθμιση μέγιστου αριθμού παικτών πραγματοποιήθηκε"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Η ρυθμιση δημιουργικής λειτουργίας πραγματοποιήθηκε"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Η ρύθμιση PVP ενημερώθηκε"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Η ρύθμιση ζημιών ενημερώθηκε"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7368,8 +7327,13 @@ msgid "Frequent feature updates activated."
msgstr ""
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8574,6 +8538,84 @@ msgstr "ολοκληρώθηκε το %(percentage)s%%"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Ενεργοποιήστε το Δυναμικό DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Δώστε μια διεύθυνση URL ανανέωσης ή ένα διακομιστή GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Παρακαλώ δώστε ένα όνομα χρήστη GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Δώστε ένα όνομα διαδικτύου για το GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Δώστε έναν κωδικό πρόσβασης"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Εάν τo %(box_name)s είναι συνδεδεμένο πίσω από ένα δρομολογητή NAT, μην "
#~ "ξεχάσετε να προσθέσετε προώθηση θυρών για τυπικές θύρες, "
#~ "συμπεριλαμβανομένης της θύρας TCP 80 (HTTP) και της θύρας TCP 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Έχετε απενεργοποιήσει την JavaScript. Η λειτουργία δυναμικής φόρμας είναι "
#~ "απενεργοποιημένη και ορισμένες βοηθητικές λειτουργίες ενδέχεται να μην "
#~ "λειτουργούν (βασικές λειτουρίες θα είναι εντάξει παραυτά)."
#~ msgid "NAT type"
#~ msgstr "Τύπος NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Ο τύπος NAT δεν εντοπίστηκε ακόμα. Εάν δεν παρέχετε μια \"διεύθυνση URL "
#~ "ελέγχου IP\", δεν θα ανιχνεύσουμε έναν τύπο NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Άμεση σύνδεση στο Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Πίσω από δίκτυο ΝΑΤ. Αυτό σημαίνει ότι το δυναμικό DNS θα αναζητήσει την "
#~ "δημόσια διεύθυνση ΙΡ στην υπηρεσία του URL ανανέωσης (η υπηρεσία του URL "
#~ "ανανέωσης χρειάζεται σε αυτή την περίπτωση). Στην περίπτωση που η δημόσια "
#~ "IP σας αλλάξει μπορεί να χρεαστουν %(timer)s λεπτά για να ανανεωθεί το "
#~ "DNS."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Ρύθμιση παραμέτρων δυναμικού DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Κατάσταση δυναμικού DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Η ρύθμιση μέγιστου αριθμού παικτών πραγματοποιήθηκε"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Η ρυθμιση δημιουργικής λειτουργίας πραγματοποιήθηκε"
#~ msgid "PVP configuration updated"
#~ msgstr "Η ρύθμιση PVP ενημερώθηκε"
#~ msgid "Damage configuration updated"
#~ msgstr "Η ρύθμιση ζημιών ενημερώθηκε"
#, fuzzy
#~| msgid "Unavailable Shares"
#~ msgid "RoundCube availability"

View File

@ -7,9 +7,10 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2021-12-31 18:51+0000\n"
"Last-Translator: Fioddor Superconcentrado <fioddor@gmail.com>\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-07 23:55+0000\n"
"Last-Translator: Jaime Marquínez Ferrándiz <weblate@jregistros.fastmail."
"net>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/freedombox/"
"freedombox/es/>\n"
"Language: es\n"
@ -17,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.10.1\n"
"X-Generator: Weblate 4.11-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@ -880,10 +881,10 @@ msgid "No passwords currently configured."
msgstr "Actualmente no hay contraseñas configuradas."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Clave de acceso"
msgstr "Contraseña"
#: plinth/modules/bepasty/views.py:22
msgid "admin"
@ -1028,9 +1029,10 @@ msgid "Refresh IP address and domains"
msgstr "Actualizar direcciones IP y dominios"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1225,7 +1227,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Configuración general"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1233,13 +1235,13 @@ msgid "Configure"
msgstr "Configurar"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nombre de dominio"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Nombre de dominio no válido"
@ -1591,6 +1593,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Resultado"
@ -1598,7 +1601,7 @@ msgstr "Resultado"
msgid "Diagnostic Test"
msgstr "Test de diagnóstico"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1609,7 +1612,7 @@ msgstr ""
"24h) será muy difícil para los demás encontrarle en Internet. Este servicio "
"permitirá a otros encontrar los servicios que ofrece {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1626,15 +1629,35 @@ msgstr ""
"asigna su nombre DNS a esta nueva IP de forma que cualquiera que pida su "
"nombre DNS obtendrá la dirección IP actualizada."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Si necesita una cuenta libre de DNS dinámico, puede encontrar un servicio "
"GnuDIP gratuito en <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> o un servicio basado en URL de "
"actualización en <a href='http://freedns.afraid.org/' "
"target='_blank'>freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Cliente de DNS dinámico"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Nombre de dominio dinámico"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1644,7 +1667,7 @@ msgstr ""
"pueden usar en la URL. Para más información consulte las plantillas para "
"actualizar URL de los ejemplos incluidos."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1654,7 +1677,7 @@ msgstr ""
"el protocolo GnuDIP o no aparece en el listado deberá usar la URL de "
"actualización de su proveedor."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1662,17 +1685,17 @@ msgstr ""
"Por favor no introduzca una URL (\"https://ejemplo.com/\"), solo el nombre "
"de su servidor GnuDIP (\"ejemplo.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Nombre de dominio público que quiere usar para identificar su {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "Elija esta opción si su proveedor usa certificados autofirmados."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1680,11 +1703,11 @@ msgstr ""
"Si selecciona esta opción su nombre de usuaria/o y clave se emplearán en la "
"autenticación básica de HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Deje vacío este campo si quiere conservar su clave actual."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1702,169 +1725,68 @@ msgstr ""
"número IP real. La URL debería devolver simplemente el número IP del cliente "
"(p.e. http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "El nombre de usuaria/o que empleó al crear la cuenta."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "Otra URL de actualización"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Activar DNS dinámico"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Tipo de servicio"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Dirección del servidor GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Nombre de servidor no válido"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL de actualización"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Aceptar todos los certificados SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Usar autenticación básica de HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Nombre de usuaria/o"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Mostrar clave de acceso"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL para consultar la IP pública"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Use IPv6 en vez de IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
"Por favor indique una URL de actualización o la dirección de un servidor "
"GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Por favor indique un nombre de usuaria/o GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Por favor indique un nombre de dominio GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Por favor indique una clave de acceso"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Si necesita una cuenta libre de DNS dinámico, puede encontrar un servicio "
"GnuDIP gratuito en <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> o un servicio basado en URL de "
"actualización en <a href='http://freedns.afraid.org/' "
"target='_blank'>freedns.afraid.org</a>."
#| msgid "secrets required"
msgid "This field is required."
msgstr "se requieren secretos"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Si su %(box_name)s está conectada a través de un router NAT, no olvide "
"configurar el redireccionamiento para los puertos estándar, incluyendo el "
"puerto 80 TCP (HTTP) y el puerto 443 TCP (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Ha desactivado Javascript. El modo de formulario dinámico está desactivado y "
"algunas funciones de ayuda podrían no funcionar (pero la funcionalidad "
"principal sí debería responder)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Actualizar configuración"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Tipo NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Tipo de NAT no detectado aún. Si no ha facilitado una \"URL para "
"comprobación de IP\" no se detectará el tipo de NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Acceso directo a Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Detrás del NAT. El servicio de DNS dinámico consultará los cambios a través "
"de la \"URL para consulta de IP pública\" (se necesita el valor de la \"URL "
"para consulta de IP pública\", de otro modo no se detectarán los cambios de "
"IP). En caso de que cambie la IP WAN, se necesitarán %(timer)s minutos para "
"actualizar su DNS."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Última actualización"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1878,13 +1800,60 @@ msgstr "Acerca de"
msgid "Status"
msgstr "Estado"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Configurar DNS dinámico"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Dominio"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Estado del DNS dinámico"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Última actualización"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "Dirección IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Acceso"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "Falló"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "No hay bibliotecas disponibles."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Nombre de conexión"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Eliminar conexión"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Actualización automática"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2498,6 +2467,11 @@ msgstr "Enviar Comentarios"
msgid "Contribute"
msgstr "Contribuír"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2943,6 +2917,13 @@ msgstr "Ir al sitio %(site)s"
msgid "Delete site %(site)s"
msgstr "Eliminar sitio %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Actualizar configuración"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3088,10 +3069,6 @@ msgstr "Certificados"
msgid "Cannot test: No domains are configured."
msgstr "No puedo probar: No hay dominios configurados."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Dominio"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Estado del certificado"
@ -3530,22 +3507,6 @@ msgstr "Dirección"
msgid "Port"
msgstr "Puerto"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Configuración de número máximo de jugadoras/es actualizada"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Configuración del modo creativo actualizada"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Configuración PVP actualizada"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Configuración de daño actualizada"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7221,8 +7182,13 @@ msgid "Frequent feature updates activated."
msgstr "Las actualizaciones funcionales frecuentes están activadas."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8386,6 +8352,86 @@ msgstr "%(percentage)s%% completado"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Activar DNS dinámico"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr ""
#~ "Por favor indique una URL de actualización o la dirección de un servidor "
#~ "GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Por favor indique un nombre de usuaria/o GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Por favor indique un nombre de dominio GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Por favor indique una clave de acceso"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Si su %(box_name)s está conectada a través de un router NAT, no olvide "
#~ "configurar el redireccionamiento para los puertos estándar, incluyendo el "
#~ "puerto 80 TCP (HTTP) y el puerto 443 TCP (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Ha desactivado Javascript. El modo de formulario dinámico está "
#~ "desactivado y algunas funciones de ayuda podrían no funcionar (pero la "
#~ "funcionalidad principal sí debería responder)."
#~ msgid "NAT type"
#~ msgstr "Tipo NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Tipo de NAT no detectado aún. Si no ha facilitado una \"URL para "
#~ "comprobación de IP\" no se detectará el tipo de NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Acceso directo a Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Detrás del NAT. El servicio de DNS dinámico consultará los cambios a "
#~ "través de la \"URL para consulta de IP pública\" (se necesita el valor de "
#~ "la \"URL para consulta de IP pública\", de otro modo no se detectarán los "
#~ "cambios de IP). En caso de que cambie la IP WAN, se necesitarán %(timer)s "
#~ "minutos para actualizar su DNS."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Configurar DNS dinámico"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Estado del DNS dinámico"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Configuración de número máximo de jugadoras/es actualizada"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Configuración del modo creativo actualizada"
#~ msgid "PVP configuration updated"
#~ msgstr "Configuración PVP actualizada"
#~ msgid "Damage configuration updated"
#~ msgstr "Configuración de daño actualizada"
#, fuzzy
#~| msgid "unavailable"
#~ msgid "RoundCube availability"
@ -9351,9 +9397,6 @@ msgstr "Gujarati"
#~ msgid "Vulnerabilities Reported"
#~ msgstr "Vulnerabilidades informadas"
#~ msgid "Auto-update"
#~ msgstr "Actualización automática"
#, fuzzy
#~| msgid "Add Remote Repository"
#~ msgid "Add Remote Location"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-09-07 11:34+0000\n"
"Last-Translator: Seyed mohammad ali Hosseinifard <ali_hosseine@yahoo.com>\n"
"Language-Team: Persian <https://hosted.weblate.org/projects/freedombox/"
@ -869,7 +869,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "رمز"
@ -1029,9 +1029,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1215,7 +1216,7 @@ msgstr ""
msgid "General Configuration"
msgstr "پیکربندی عمومی"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1224,13 +1225,13 @@ msgid "Configure"
msgstr "پیکربندی"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "نام دامنه"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "نام دامنه معتبر نیست"
@ -1583,6 +1584,7 @@ msgid "Test"
msgstr "آزمون"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "نتیجه‌ها"
@ -1590,7 +1592,7 @@ msgstr "نتیجه‌ها"
msgid "Diagnostic Test"
msgstr "آزمون عیب‌یابی"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1601,7 +1603,7 @@ msgstr ""
"می‌دهد، دیگران نمی‌توانند شما را به راحتی در اینترنت پیدا کنند. این باعث می‌شود "
"که دیگران نتوانند سرویس‌هایی را که {box_name} شما ارائه می‌دهد پیدا کنند."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1618,18 +1620,37 @@ msgstr ""
"نام DNS شما را به نشانی IP شما مرتبط می‌کند، و اگر کسی در اینترنت نام DNS شما "
"را جستجو کرد، نشانی IP شما را در پاسخ خواهد گرفت."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"اگر به دنبال یک حساب رایگان DNS متغیر هستید، می‌توانید سرویس رایگان GnuDIP "
"را در <a href='http://gnudip.datasystems24.net' target='_blank'>gnudip."
"datasystems24.net</a> یا سرویس رایگان به‌روزرسانی نشانی را در <a href='http://"
"freedns.afraid.org/' target='_blank'> freedns.afraid.org</a> به کار ببرید."
#: plinth/modules/dynamicdns/__init__.py:64
#, fuzzy
msgid "Dynamic DNS Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "نام دامنه"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
#, fuzzy
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
@ -1640,7 +1661,7 @@ msgstr ""
"نشانی URL به کار بروند. برای جزئیات بیشتر الگوهای نشانی‌های به‌روزرسانی را از "
"خدمات‌دهنده‌های نمونه ببینید."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1650,7 +1671,7 @@ msgstr ""
"خدمات‌دهندهٔ شما از GnuDIP پشتیبانی نمی‌کند یا در فهرست نیست، می‌توانید نشانی "
"به‌روزرسانی (update URL) خدمات‌دهنده‌تان را به‌کار ببرید."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1658,18 +1679,18 @@ msgstr ""
"لطفاً یک نشانی URL (مانند \"https://example.com/\") را این‌جا ننویسید، بلکه "
"تنها نام میزبان سرور GnuDIP را بنویسید (مانند \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "نام دامنهٔ عمومی که با آن می‌خواهید به {box_name} خود وصل شوید."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"اگر خدمات‌دهندهٔ شما گواهی‌نامه‌های خودامضاشده را به‌کار می‌برد این گزینه را "
"انتخاب کنید."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
#, fuzzy
msgid ""
"If this option is selected, your username and password will be used for HTTP "
@ -1678,11 +1699,11 @@ msgstr ""
"اگر این گزینه انتخاب شود، نام کاربری و رمز شما برای تأیید هویت سادهٔ تحت وب "
"(HTTP basic authentication) به کار خواهد رفت."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "اگر نمی‌خواهید رمزتان را عوض کنید، این‌جا را خالی بگذارید."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1699,168 +1720,66 @@ msgstr ""
"روتر NAT وصل باشد) این نشانی برای تعیین IP واقعی به‌کار می‌رود. این نشانی باید "
"صرفاً IP را برگرداند (مثال: http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "نام کاربری که هنگام ساختن حساب به‌کار برده شد."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "نشانی به‌روزرسانی"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "فعال‌سازی DNS متغیر"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "نوع سرویس"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "نشانی سرور GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "نام کاربری معتبر نیست"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "نشانی به‌روزرسانی"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "همهٔ گواهی‌نامه‌های SSL را بپذیر"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "به‌کاربردن تأیید هویت سادهٔ تحت وب"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "نام کاربری"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "رمز را نشان بده"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "نشانی برای دیدن آی‌پی عمومی"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"لطفاً یک نشانی به‌روزرسانی (update URL) یا نشانی سرور GnuDIP را وارد کنید"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "لطفاً یک نام کاربری GnuDIP وارد کنید"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "لطفاً یک نام دامنهٔ GnuDIP وارد کنید"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "لطفاً یک رمز وارد کنید"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"اگر به دنبال یک حساب رایگان DNS متغیر هستید، می‌توانید سرویس رایگان GnuDIP "
"را در <a href='http://gnudip.datasystems24.net' target='_blank'>gnudip."
"datasystems24.net</a> یا سرویس رایگان به‌روزرسانی نشانی را در <a href='http://"
"freedns.afraid.org/' target='_blank'> freedns.afraid.org</a> به کار ببرید."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"اگر %(box_name)s شما از راه یک روتر NAT به اینترنت وصل شده، فراموش نکنید که "
"پورت‌های استاندارد را در تنظیمات روتر خود به درستی روی %(box_name)s تنظیم "
"کنید، از جمله پورت 80 TCP (برای HTTP) و پورت 443 TCP (برای HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
#, fuzzy
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"جاوااسکریپت شما خاموش است. فرم‌های پویا غیرفعال می‌شوند و برخی از تابع‌های کمکی "
"کار نخواهند کرد (البته عملکرد اصلی برنامه همچنان کار می‌کند)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "به‌روزرسانی وضعیت"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "نوع NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"نوع NAT هنوز شناخته نیست. اگر یک نشانی URL برای فهمیدن IP وارد نکنید، "
"نمی‌توانیم نوع NAT را بشناسیم."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "اتصال مستقیم به اینترنت."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, fuzzy, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"اتصال از راه NAT. این یعنی سرویس DNS متغیر نشانی واردشده را برای دیدن "
"تغییرات IP رصد می‌کند (چنین نشانی‌ای برای فهمیدن تغییرات IP لازم است، وگرنه "
"تغییرات IP کشف نمی‌شوند). اگر WAN IP تغییر کند، ممکن است %(timer)s دقیقه طول "
"بکشد تا دادهٔ DNS شما به‌روز شود."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "آخرین به‌روزرسانی"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "درباره"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1875,13 +1794,58 @@ msgstr "درباره"
msgid "Status"
msgstr "وضعیت"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "پیکربندی DNS متغیر"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "دامنه"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "وضعیت DNS متغیر"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "آخرین به‌روزرسانی"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "نشانی آی‌پی"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access Point"
msgid "Success"
msgstr "نقطهٔ دسترسی"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No wikis or blogs available."
msgid "No status available."
msgstr "ویکی یا وبلاگی موجود نیست."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "نام اتصال"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "پاک‌کردن اتصال"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "آخرین به‌روزرسانی"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2472,6 +2436,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "درباره"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, fuzzy, python-format
@ -2878,6 +2847,13 @@ msgstr "به سایت %(site)s بروید"
msgid "Delete site %(site)s"
msgstr "سایت %(site)s را پاک کنید"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "به‌روزرسانی وضعیت"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3036,10 +3012,6 @@ msgstr "وضعیت گواهی دیجیتال"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "دامنه"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "وضعیت گواهی دیجیتال"
@ -3439,30 +3411,6 @@ msgstr "نشانی"
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "پیکربندی به‌روز شد"
#: plinth/modules/minetest/views.py:55
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "پیکربندی به‌روز شد"
#: plinth/modules/minetest/views.py:61
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "پیکربندی به‌روز شد"
#: plinth/modules/minetest/views.py:67
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "پیکربندی به‌روز شد"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6871,7 +6819,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7974,6 +7922,92 @@ msgstr ""
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "فعال‌سازی DNS متغیر"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr ""
#~ "لطفاً یک نشانی به‌روزرسانی (update URL) یا نشانی سرور GnuDIP را وارد کنید"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "لطفاً یک نام کاربری GnuDIP وارد کنید"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "لطفاً یک نام دامنهٔ GnuDIP وارد کنید"
#~ msgid "Please provide a password"
#~ msgstr "لطفاً یک رمز وارد کنید"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "اگر %(box_name)s شما از راه یک روتر NAT به اینترنت وصل شده، فراموش نکنید "
#~ "که پورت‌های استاندارد را در تنظیمات روتر خود به درستی روی %(box_name)s "
#~ "تنظیم کنید، از جمله پورت 80 TCP (برای HTTP) و پورت 443 TCP (برای HTTPS)."
#, fuzzy
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "جاوااسکریپت شما خاموش است. فرم‌های پویا غیرفعال می‌شوند و برخی از تابع‌های "
#~ "کمکی کار نخواهند کرد (البته عملکرد اصلی برنامه همچنان کار می‌کند)."
#~ msgid "NAT type"
#~ msgstr "نوع NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "نوع NAT هنوز شناخته نیست. اگر یک نشانی URL برای فهمیدن IP وارد نکنید، "
#~ "نمی‌توانیم نوع NAT را بشناسیم."
#~ msgid "Direct connection to the Internet."
#~ msgstr "اتصال مستقیم به اینترنت."
#, fuzzy, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "اتصال از راه NAT. این یعنی سرویس DNS متغیر نشانی واردشده را برای دیدن "
#~ "تغییرات IP رصد می‌کند (چنین نشانی‌ای برای فهمیدن تغییرات IP لازم است، وگرنه "
#~ "تغییرات IP کشف نمی‌شوند). اگر WAN IP تغییر کند، ممکن است %(timer)s دقیقه "
#~ "طول بکشد تا دادهٔ DNS شما به‌روز شود."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "پیکربندی DNS متغیر"
#~ msgid "Dynamic DNS Status"
#~ msgstr "وضعیت DNS متغیر"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Maximum players configuration updated"
#~ msgstr "پیکربندی به‌روز شد"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Creative mode configuration updated"
#~ msgstr "پیکربندی به‌روز شد"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "PVP configuration updated"
#~ msgstr "پیکربندی به‌روز شد"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Damage configuration updated"
#~ msgstr "پیکربندی به‌روز شد"
#, fuzzy
#~| msgid "Available Domains"
#~ msgid "RoundCube availability"
@ -8415,11 +8449,6 @@ msgstr ""
#~ "Pagekite setup finished. The HTTP and HTTPS services are activated now."
#~ msgstr "راه‌اندازی Pagekite پایان یافت. سرویس‌های HTTP و HTTPS فعال هستند."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "آخرین به‌روزرسانی"
#, fuzzy
#~| msgid "{box_name} Manual"
#~ msgid "Download Manual"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Plinth 0.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2016-01-31 22:24+0530\n"
"Last-Translator: Sunil Mohan Adapa <sunil@medhas.org>\n"
"Language-Team: Plinth Developers <freedombox-discuss@lists.alioth.debian."
@ -909,7 +909,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "PASSWORD"
@ -1073,9 +1073,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1266,7 +1267,7 @@ msgstr ""
msgid "General Configuration"
msgstr "GENERAL CONFIGURATION"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1274,13 +1275,13 @@ msgid "Configure"
msgstr "CONFIGURE"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "DOMAIN NAME"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "INVALID DOMAIN NAME"
@ -1639,6 +1640,7 @@ msgid "Test"
msgstr "TEST"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "RESULT"
@ -1646,7 +1648,7 @@ msgstr "RESULT"
msgid "Diagnostic Test"
msgstr "DIAGNOSTIC TEST"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, fuzzy, python-brace-format
#| msgid ""
#| "If your internet provider changes your IP address periodic (i.e. every "
@ -1662,7 +1664,7 @@ msgstr ""
"IT MAY BE HARD FOR OTHERS TO FIND YOU IN THE WEB. AND FOR THIS REASON NOBODY "
"MAY FIND THE SERVICES WHICH ARE PROVIDED BY %(box_name)s, SUCH AS OWNCLOUD."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
#, fuzzy
#| msgid ""
#| "The solution is to assign a DNS name to your IP address and update the "
@ -1688,17 +1690,37 @@ msgstr ""
"THE SERVER WILL ASSIGN YOUR DNS NAME WITH THE NEW IP AND IF SOMEONE FROM THE "
"INTERNET ASKS FOR YOUR DNS NAME HE WILL GET YOUR CURRENT IP ANSWERED."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services on <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"IF YOU ARE LOOKING FOR A FREE DYNAMIC DNS ACCOUNT, YOU MAY FIND A FREE "
"GNUDIP SERVICE AT <a href='http://gnudip.datasystems24.net' "
"target='_blank'>GNUDIP.DATASYSTEMS24.NET</a> OR YOU MAY FIND FREE UPDATE URL "
"BASED SERVICES ON <a href='http://freedns.afraid.org/' target='_blank'> "
"FREEDNS.AFRAID.ORG</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "DYNAMIC DNS CLIENT"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "DOMAIN NAME"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1708,7 +1730,7 @@ msgstr ""
"USED WITHIN THE URL. FOR DETAILS SEE THE UPDATE URL TEMPLATES OF THE EXAMPLE "
"PROVIDERS."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
#, fuzzy
#| msgid ""
#| "Please choose an update protocol according to your provider. If your "
@ -1723,7 +1745,7 @@ msgstr ""
"PROVIDER DOES NOT SUPPORT THE GNUDIP PROTOCOL OR YOUR PROVIDER IS NOT LISTED "
"YOU MAY USE THE UPDATE URL OF YOUR PROVIDER."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1731,17 +1753,17 @@ msgstr ""
"PLEASE DO NOT ENTER A URL HERE (LIKE \"HTTPS://EXAMPLE.COM/\") BUT ONLY THE "
"HOSTNAME OF THE GNUDIP SERVER (LIKE \"EXAMPLE.COM\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, fuzzy, python-brace-format
#| msgid "The public domain name you want use to reach your {box_name}."
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "THE PUBLIC DOMAIN NAME YOU WANT USE TO REACH YOUR {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "USE THIS OPTION IF YOUR PROVIDER USES SELF SIGNED CERTIFICATES."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1749,7 +1771,7 @@ msgstr ""
"IF THIS OPTION IS SELECTED, YOUR USERNAME AND PASSWORD WILL BE USED FOR HTTP "
"BASIC AUTHENTICATION."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
#, fuzzy
#| msgid ""
#| "Leave this field empty if you want to keep your previous configured "
@ -1758,7 +1780,7 @@ msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"LEAVE THIS FIELD EMPTY IF YOU WANT TO KEEP YOUR PREVIOUS CONFIGURED PASSWORD."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1776,189 +1798,70 @@ msgstr ""
"INTERNET IP. THE URL SHOULD SIMPLY RETURN THE IP WHERE THE CLIENT COMES FROM "
"(EXAMPLE: HTTP://MYIP.DATASYSTEMS24.DE)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "UPDATE URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "ENABLE DYNAMIC DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
#, fuzzy
#| msgid "Service type"
msgid "Service Type"
msgstr "SERVICE TYPE"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
#, fuzzy
#| msgid "GnudIP Server Address"
msgid "GnuDIP Server Address"
msgstr "GNUDIP SERVER ADDRESS"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "INVALID SERVER NAME"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "UPDATE URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "ACCEPT ALL SSL CERTIFICATES"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "USE HTTP BASIC AUTHENTICATION"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "USERNAME"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "SHOW PASSWORD"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
#, fuzzy
#| msgid "Please provide update URL or a GnuDIP Server"
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "PLEASE PROVIDE UPDATE URL OR A GNUDIP SERVER"
#: plinth/modules/dynamicdns/forms.py:146
#, fuzzy
#| msgid "Please provide GnuDIP username"
msgid "Please provide a GnuDIP username"
msgstr "PLEASE PROVIDE GNUDIP USERNAME"
#: plinth/modules/dynamicdns/forms.py:150
#, fuzzy
#| msgid "Please provide GnuDIP domain"
msgid "Please provide a GnuDIP domain name"
msgstr "PLEASE PROVIDE GNUDIP DOMAIN"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "PLEASE PROVIDE A PASSWORD"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services on <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"IF YOU ARE LOOKING FOR A FREE DYNAMIC DNS ACCOUNT, YOU MAY FIND A FREE "
"GNUDIP SERVICE AT <a href='http://gnudip.datasystems24.net' "
"target='_blank'>GNUDIP.DATASYSTEMS24.NET</a> OR YOU MAY FIND FREE UPDATE URL "
"BASED SERVICES ON <a href='http://freedns.afraid.org/' target='_blank'> "
"FREEDNS.AFRAID.ORG</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, fuzzy, python-format
#| msgid ""
#| "If your %(box_name)s is connected behind some NAT router, don't forget to "
#| "add port forwarding (i.e. forward some standard ports like 80 and 443)."
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"IF YOUR %(box_name)s IS CONNECTED BEHIND SOME NAT ROUTER, DON'T FORGET TO "
"ADD PORT FORWARDING (I.E. FORWARD SOME STANDARD PORTS LIKE 80 AND 443) TO "
"YOUR %(box_name)s DEVICE."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"YOU HAVE DISABLED JAVASCRIPT. DYNAMIC FORM MODE IS DISABLED AND SOME HELPER "
"FUNCTIONS MAY NOT WORK (BUT THE MAIN FUNCTIONALITY SHOULD WORK)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "UPDATE SETUP"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT TYPE"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
#, fuzzy
#| msgid ""
#| "NAT type not detected yet, if you do not provide a \"IP check URL\" we "
#| "will not detect a NAT type."
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT TYPE NOT DETECTED YET, IF YOU DO NOT PROVIDE A \"IP CHECK URL\" WE WILL "
"NOT DETECT A NAT TYPE."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "DIRECT CONNECTION TO THE INTERNET."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, fuzzy, python-format
#| msgid ""
#| "Behind NAT. This means that Dynamic DNS service will poll the \"IP check "
#| "URL\" for changes (the \"IP check URL\" entry is needed for this - "
#| "otherwise IP changes will not be detected). In case the WAN IP changes, "
#| "it may take up to %(timer)s minutes until your DNS entry is updated."
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"BEHIND NAT. THIS MEANS THAT DYNAMIC DNS SERVICE WILL POLL THE \"IP CHECK URL"
"\" FOR CHANGES (THE \"IP CHECK URL\" ENTRY IS NEEDED FOR THIS - OTHERWISE IP "
"CHANGES WILL NOT BE DETECTED). IN CASE THE WAN IP CHANGES, IT MAY TAKE UP "
"TO %(timer)s MINUTES UNTIL YOUR DNS ENTRY IS UPDATED."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "LAST UPDATE"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "ABOUT"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1972,15 +1875,60 @@ msgstr "ABOUT"
msgid "Status"
msgstr "STATUS"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "CONFIGURE DYNAMIC DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "DOMAIN"
#: plinth/modules/dynamicdns/views.py:86
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "LAST UPDATE"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "Dynamic DNS"
msgid "Dynamic DNS Status"
msgstr "DYNAMIC DNS"
#| msgid "IP address"
msgid "IP Address"
msgstr "IP ADDRESS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Publish Key"
msgid "Success"
msgstr "PUBLISH KEY"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "Setup failed."
msgid "Failed"
msgstr "SETUP FAILED."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "Tor relay port available"
msgid "No status available."
msgstr "TOR RELAY PORT AVAILABLE"
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "CONNECTION NAME"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "DELETE CONNECTION"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "LAST UPDATE"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2601,6 +2549,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "ABOUT"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, fuzzy, python-format
@ -3011,6 +2964,13 @@ msgstr "GO TO SITE %(site)s"
msgid "Delete site %(site)s"
msgstr "DELETE SITE %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "UPDATE SETUP"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3170,10 +3130,6 @@ msgstr "CERTIFICATE STATUS"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "DOMAIN"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "CERTIFICATE STATUS"
@ -3592,30 +3548,6 @@ msgstr "ADDRESS"
msgid "Port"
msgstr "PORT"
#: plinth/modules/minetest/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "CONFIGURATION UPDATED"
#: plinth/modules/minetest/views.py:55
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "CONFIGURATION UPDATED"
#: plinth/modules/minetest/views.py:61
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "CONFIGURATION UPDATED"
#: plinth/modules/minetest/views.py:67
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "CONFIGURATION UPDATED"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7311,7 +7243,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8485,6 +8417,111 @@ msgstr "%(percentage)s%% COMPLETE"
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "ENABLE DYNAMIC DNS"
#, fuzzy
#~| msgid "Please provide update URL or a GnuDIP Server"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "PLEASE PROVIDE UPDATE URL OR A GNUDIP SERVER"
#, fuzzy
#~| msgid "Please provide GnuDIP username"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "PLEASE PROVIDE GNUDIP USERNAME"
#, fuzzy
#~| msgid "Please provide GnuDIP domain"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "PLEASE PROVIDE GNUDIP DOMAIN"
#~ msgid "Please provide a password"
#~ msgstr "PLEASE PROVIDE A PASSWORD"
#, fuzzy, python-format
#~| msgid ""
#~| "If your %(box_name)s is connected behind some NAT router, don't forget "
#~| "to add port forwarding (i.e. forward some standard ports like 80 and "
#~| "443)."
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "IF YOUR %(box_name)s IS CONNECTED BEHIND SOME NAT ROUTER, DON'T FORGET TO "
#~ "ADD PORT FORWARDING (I.E. FORWARD SOME STANDARD PORTS LIKE 80 AND 443) TO "
#~ "YOUR %(box_name)s DEVICE."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "YOU HAVE DISABLED JAVASCRIPT. DYNAMIC FORM MODE IS DISABLED AND SOME "
#~ "HELPER FUNCTIONS MAY NOT WORK (BUT THE MAIN FUNCTIONALITY SHOULD WORK)."
#~ msgid "NAT type"
#~ msgstr "NAT TYPE"
#, fuzzy
#~| msgid ""
#~| "NAT type not detected yet, if you do not provide a \"IP check URL\" we "
#~| "will not detect a NAT type."
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT TYPE NOT DETECTED YET, IF YOU DO NOT PROVIDE A \"IP CHECK URL\" WE "
#~ "WILL NOT DETECT A NAT TYPE."
#~ msgid "Direct connection to the Internet."
#~ msgstr "DIRECT CONNECTION TO THE INTERNET."
#, fuzzy, python-format
#~| msgid ""
#~| "Behind NAT. This means that Dynamic DNS service will poll the \"IP check "
#~| "URL\" for changes (the \"IP check URL\" entry is needed for this - "
#~| "otherwise IP changes will not be detected). In case the WAN IP changes, "
#~| "it may take up to %(timer)s minutes until your DNS entry is updated."
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "BEHIND NAT. THIS MEANS THAT DYNAMIC DNS SERVICE WILL POLL THE \"IP CHECK "
#~ "URL\" FOR CHANGES (THE \"IP CHECK URL\" ENTRY IS NEEDED FOR THIS - "
#~ "OTHERWISE IP CHANGES WILL NOT BE DETECTED). IN CASE THE WAN IP CHANGES, "
#~ "IT MAY TAKE UP TO %(timer)s MINUTES UNTIL YOUR DNS ENTRY IS UPDATED."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "CONFIGURE DYNAMIC DNS"
#, fuzzy
#~| msgid "Dynamic DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "DYNAMIC DNS"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Maximum players configuration updated"
#~ msgstr "CONFIGURATION UPDATED"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Creative mode configuration updated"
#~ msgstr "CONFIGURATION UPDATED"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "PVP configuration updated"
#~ msgstr "CONFIGURATION UPDATED"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Damage configuration updated"
#~ msgstr "CONFIGURATION UPDATED"
#, fuzzy
#~| msgid "Enable Subdomains"
#~ msgid "RoundCube availability"
@ -9134,11 +9171,6 @@ msgstr ""
#~ msgid "This code is not valid"
#~ msgstr "THIS CONNECTION IS NOT ACTIVE."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "LAST UPDATE"
#, fuzzy
#~| msgid "Create User"
#~ msgid "Add Remote Location"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-01-22 21:55+0000\n"
"Last-Translator: Coucouf <coucouf@coucouf.fr>\n"
"Language-Team: French <https://hosted.weblate.org/projects/freedombox/"
@ -880,7 +880,7 @@ msgid "No passwords currently configured."
msgstr "Aucun mot de passe actuellement configuré."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Mot de passe"
@ -1028,9 +1028,10 @@ msgid "Refresh IP address and domains"
msgstr "Actualiser ladresse IP et les domaines"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1232,7 +1233,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Configuration générale"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1240,13 +1241,13 @@ msgid "Configure"
msgstr "Configurer"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nom de domaine"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Nom de domaine invalide"
@ -1606,6 +1607,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Résultat"
@ -1613,7 +1615,7 @@ msgstr "Résultat"
msgid "Diagnostic Test"
msgstr "Test de diagnostic"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1625,7 +1627,7 @@ msgstr ""
"Et ceci empêchera dautres utilisateurs de découvrir les services proposés "
"par cette {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1643,15 +1645,35 @@ msgstr ""
"dassigner votre nom DNS à la nouvelle IP, de sorte que si quelquun sur "
"Internet demande votre nom DNS, il obtiendra bien votre adresse IP courante."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Si vous cherchez un compte DNS dynamique gratuit, vous pourrez sans doute "
"trouver un service compatible GnuDIP sur <a href=\"https://ddns.freedombox."
"org\" target=\"_blank\">ddns.freedombox.org</a> ou un service à base dURL "
"dactualisation sur <a href=\"http://freedns.afraid.org/\" target=\"_blank"
"\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Client DNS dynamique"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Nom de domaine dynamique"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1661,7 +1683,7 @@ msgstr ""
"être utilisées dans lURL. Pour plus de détails, consultez les modèles dURL "
"dactualisation pour les fournisseurs donnés en exemple."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1672,7 +1694,7 @@ msgstr ""
"pas dans la liste, vous pouvez utiliser lURL dactualitation quil vous "
"aura communiquée."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1680,20 +1702,20 @@ msgstr ""
"Veuillez ne pas saisir une URL (comme « https://example.com/ »), mais "
"seulement le nom de machine du serveur GnuDIP (comme « example.com »)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Le nom de domaine public que vous désirez utiliser pour joindre votre "
"{box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Activez cette option si votre fournisseur utilise des certificats auto-"
"signés."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1701,11 +1723,11 @@ msgstr ""
"Si ce choix est sélectionné, votre nom dutilisateur et votre mot de passe "
"seront utilisés pour une authentification HTTP de base."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Laissez ce champ vide pour conserver le mot de passe précédent."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1720,166 +1742,69 @@ msgstr ""
"lorsquelle est connectée à un routeur à translation dadresse réseau « NAT "
"»)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
"Le nom dutilisateur choisi lors de la création du compte DNS dynamique."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "autre URL dactualisation"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Activer le DNS dynamique"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Type de service"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Adresse du serveur GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Nom de serveur invalide"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL dactualisation"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Accepter tous les certificats SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Utiliser lauthentification HTTP basique"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Nom dutilisateur"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Afficher le mot de passe"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL pour rechercher lIP publique"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Utiliser IPv6 au lieu d'IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
"Veuillez saisir une URL dactualisation ou une adresse de serveur GnuDIP"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "secrets exigés"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Veuillez saisir un nom dutilisateur GnuDIP (« Username/Hostname »)"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Veuillez saisir un nom de domaine GnuDIP (« Domain Name »)"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Veuillez saisir un mot de passe"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Si vous cherchez un compte DNS dynamique gratuit, vous pourrez sans doute "
"trouver un service compatible GnuDIP sur <a href=\"https://ddns.freedombox."
"org\" target=\"_blank\">ddns.freedombox.org</a> ou un service à base dURL "
"dactualisation sur <a href=\"http://freedns.afraid.org/\" target=\"_blank"
"\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Si votre %(box_name)s est connectée derrière un routeur à translation "
"dadresse réseau (NAT), noubliez pas dajouter une redirection pour les "
"ports 80 (serveur http) et 443 (serveur sécurisé https) vers lIP de votre "
"%(box_name)s. La redirection se configure sur linterface web de votre "
"routeur."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Vous avez désactivé Javascript. Le mode formulaire dynamique est désactivé, "
"quelques fonctions daide pourraient ne pas marcher (mais la fonctionnalité "
"principale devrait fonctionner)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Appliquer les changements"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Type de NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Le type de translation dadresse réseau (NAT) na pas encore été déterminé. "
"Si vous ne fournissez pas d« URL pour rechercher lIP publique », nous ne "
"pourrons pas détecter le type de NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Connexion directe à Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Derrière un NAT. Cela signifie que votre fournisseur dURL pour DNS "
"dynamique sondera « lURL pour rechercher lIP publique » afin de détecter "
"déventuels changements (cest pour cela que « lURL pour rechercher lIP "
"publique » est nécessaire, sinon les changements dadresse IP ne seront pas "
"détectés). La mise à jour de votre entrée DNS peut prendre jusquà %(timer)s "
"minutes en cas de modification de lIP publique."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Dernière mise à jour"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "À propos"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1893,13 +1818,60 @@ msgstr "À propos"
msgid "Status"
msgstr "État"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Configurer le DNS Dynamique"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domaine"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Etat du DNS Dynamique"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Dernière mise à jour"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "Adresse IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Accès"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "échoué"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Vous navez actuellement aucune collection."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Nom Connexion"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Supprimer la connexion"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Enable auto-update"
msgid "Already up-to-date"
msgstr "Activer les mises à jour automatiques"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2494,6 +2466,11 @@ msgstr "Partager vos impressions"
msgid "Contribute"
msgstr "Participer"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "À propos"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2951,6 +2928,13 @@ msgstr "Aller au site %(site)s"
msgid "Delete site %(site)s"
msgstr "Supprimer le site %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Appliquer les changements"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3097,10 +3081,6 @@ msgstr "Certificats"
msgid "Cannot test: No domains are configured."
msgstr "Test impossible : aucun domaine nest configuré."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domaine"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "État du certificat"
@ -3546,22 +3526,6 @@ msgstr "Adresse"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Configuration du nombre maximum de joueurs mise à jour"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Configuration du mode créatif mise à jour"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Configuration PVP mise à jour"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Configuration des blessures mise à jour"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7310,8 +7274,13 @@ msgid "Frequent feature updates activated."
msgstr "Mise à jour régulière des fonctionnalités activée."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8492,6 +8461,90 @@ msgstr "%(percentage)s%% effectué"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Activer le DNS dynamique"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr ""
#~ "Veuillez saisir une URL dactualisation ou une adresse de serveur GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Veuillez saisir un nom dutilisateur GnuDIP (« Username/Hostname »)"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Veuillez saisir un nom de domaine GnuDIP (« Domain Name »)"
#~ msgid "Please provide a password"
#~ msgstr "Veuillez saisir un mot de passe"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Si votre %(box_name)s est connectée derrière un routeur à translation "
#~ "dadresse réseau (NAT), noubliez pas dajouter une redirection pour les "
#~ "ports 80 (serveur http) et 443 (serveur sécurisé https) vers lIP de "
#~ "votre %(box_name)s. La redirection se configure sur linterface web de "
#~ "votre routeur."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Vous avez désactivé Javascript. Le mode formulaire dynamique est "
#~ "désactivé, quelques fonctions daide pourraient ne pas marcher (mais la "
#~ "fonctionnalité principale devrait fonctionner)."
#~ msgid "NAT type"
#~ msgstr "Type de NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Le type de translation dadresse réseau (NAT) na pas encore été "
#~ "déterminé. Si vous ne fournissez pas d« URL pour rechercher lIP "
#~ "publique », nous ne pourrons pas détecter le type de NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Connexion directe à Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Derrière un NAT. Cela signifie que votre fournisseur dURL pour DNS "
#~ "dynamique sondera « lURL pour rechercher lIP publique » afin de "
#~ "détecter déventuels changements (cest pour cela que « lURL pour "
#~ "rechercher lIP publique » est nécessaire, sinon les changements "
#~ "dadresse IP ne seront pas détectés). La mise à jour de votre entrée DNS "
#~ "peut prendre jusquà %(timer)s minutes en cas de modification de lIP "
#~ "publique."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Configurer le DNS Dynamique"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Etat du DNS Dynamique"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Configuration du nombre maximum de joueurs mise à jour"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Configuration du mode créatif mise à jour"
#~ msgid "PVP configuration updated"
#~ msgstr "Configuration PVP mise à jour"
#~ msgid "Damage configuration updated"
#~ msgstr "Configuration des blessures mise à jour"
#~ msgid "RoundCube availability"
#~ msgstr "Disponibilité de RoundCube"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Galician <https://hosted.weblate.org/projects/freedombox/"
@ -798,7 +798,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -938,9 +938,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1108,7 +1109,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1116,13 +1117,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1432,6 +1433,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1439,7 +1441,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1447,7 +1449,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1458,54 +1460,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1514,142 +1524,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1663,12 +1595,45 @@ msgstr "Acerca de"
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2201,6 +2166,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2548,6 +2518,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2673,10 +2650,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3043,22 +3016,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6239,7 +6196,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Gujarati <https://hosted.weblate.org/projects/freedombox/"
@ -835,7 +835,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "પાસવર્ડ"
@ -990,9 +990,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1173,7 +1174,7 @@ msgstr ""
msgid "General Configuration"
msgstr "સામાન્ય ગોઠવણી"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1181,13 +1182,13 @@ msgid "Configure"
msgstr "ગોઠવો"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "ક્ષેત્રનું નામ"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "અમાન્ય ક્ષેત્રીય નામ"
@ -1525,6 +1526,7 @@ msgid "Test"
msgstr "પરીક્ષણ"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "પરિણામ"
@ -1532,7 +1534,7 @@ msgstr "પરિણામ"
msgid "Diagnostic Test"
msgstr "તપાસકીય પરિક્ષણ"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, fuzzy, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1543,7 +1545,7 @@ msgstr ""
"અન્ય લોકો માટે તમને ઇન્ટરનેટ પર શોધવા માટે મુશ્કેલ હોઈ શકે છે. આ અન્ય લોકો જે આ દ્વારા "
"પ્રદાન કરવામાં આવે છે તે સેવાઓ શોધવાનું અટકાવશે {box_name}"
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1560,17 +1562,36 @@ msgstr ""
"પર સોંપી દેશે, અને જો ઇન્ટરનેટમાંથી કોઈ વ્યક્તિ તમારા DNS નામ માટે પૂછે, તેઓને તમારા "
"વર્તમાન IP સરનામા સાથે પ્રતિસાદ મળશે."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"જો તમે મફત ગતિશીલ DNS એકાઉન્ટ શોધી રહ્યા છો, તમને અહીં મફત GnuDIP સેવા મળી શકે છે <a "
"href='http://gnudip.datasystems24.net' target='_blank'>gnudip.datasystems24."
"net</a> અથવા તમે મફત અપડેટ URL આધારિત સેવાઓને અહીંથી શોધી શકો છો <a href='http://"
"freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "ડાયનેમિક DNS ક્લાયન્ટ"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "ક્ષેત્રનું નામ"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1579,7 +1600,7 @@ msgstr ""
"ચલો &lt;વપરાશકર્તા&gt;,Pass&gt;, &lt;lp&gt;, &lt;ડોમેન&gt; URL ની અંદર ઉપયોગ "
"કરી શકાય છે. વિગતો માટે ઉદાહરણ પ્રદાતાઓના અપડેટ URL નમૂનાઓ જુઓ."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1589,7 +1610,7 @@ msgstr ""
"પ્રોટોકોલને આધારભૂત નથી અથવા તમારા પ્રદાતા સૂચિબદ્ધ નથી તો તમે તમારા પ્રદાતાના અપડેટ "
"URL નો ઉપયોગ કરી શકો છો."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1597,16 +1618,16 @@ msgstr ""
"અહીં આવુ URL દાખલ કરશો નહીં (જેમ કે \"https://example.com/\") પરંતુ ફક્ત GnuDIP "
"સર્વરનું હોસ્ટનામ (જેમ કે \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "તમારા સુધી પહોંચવા માટે ઉપયોગમાં લેવાતું પબ્લિક ડોમેન નામ {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "આ વિકલ્પનો ઉપયોગ કરો જો તમારા પ્રદાતા સ્વ સહી કરેલ પ્રમાણપત્રોનો ઉપયોગ કરે છે."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1614,11 +1635,11 @@ msgstr ""
"જો આ વિકલ્પ પસંદ કરેલ હોય, તો તમારું વપરાશકર્તા નામ અને પાસવર્ડ HTTP મૂળભૂત પ્રમાણીકરણ "
"માટે ઉપયોગમાં લેવાશે."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "જો તમે તમારા વર્તમાન પાસવર્ડને રાખવા માંગતા હો તો આ ક્ષેત્ર ખાલી રાખો."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1635,166 +1656,66 @@ msgstr ""
"સાથે જોડાયેલું છે) તો આ URL વાસ્તવિક IP એડ્રેસને નક્કી કરવા માટે વપરાય છે. URL IP ને જ્યાં "
"ક્લાઈન્ટમાંથી આવે છે ત્યાં જ પાછો મોકલવો જોઈએ (દા.ત http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "વપરાશકર્તાનામ જેનો ઉપયોગ એકાઉન્ટ બનાવવામાં આવ્યો હતો ત્યારે થયો હતો."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "URL અપડેટ કરો"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "ડાયનેમિક DNS સક્ષમ કરો"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "સેવા પ્રકાર"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP સર્વર સરનામું"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "અમાન્ય સર્વર નામ"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL અપડેટ કરો"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "બધા SSL પ્રમાણપત્રો સ્વીકારો"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "HTTP મૂળભૂત પ્રમાણીકરણનો ઉપયોગ કરો"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "વપરાશકર્તા નામ"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "પાસવર્ડ બતાવો"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "જાહેર IP જોવા URL"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "કૃપા કરીને અપડેટ URL અથવા GnuDIP સર્વર સરનામું પ્રદાન કરો"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "કૃપા કરીને GnuDIP વપરાશકર્તાનામ આપો"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "કૃપા કરીને GnuDIP ડોમેન નામ પ્રદાન કરો"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "કૃપા કરીને પાસવર્ડ આપો"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"જો તમે મફત ગતિશીલ DNS એકાઉન્ટ શોધી રહ્યા છો, તમને અહીં મફત GnuDIP સેવા મળી શકે છે <a "
"href='http://gnudip.datasystems24.net' target='_blank'>gnudip.datasystems24."
"net</a> અથવા તમે મફત અપડેટ URL આધારિત સેવાઓને અહીંથી શોધી શકો છો <a href='http://"
"freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"જો તમારી %(box_name)s NRT રાઉટરની પાછળ જોડાયેલ છે, પ્રમાણભૂત પોર્ટ્સ માટે પોર્ટ "
"ફોરવર્ડિંગ ઉમેરવાનું ભૂલશો નહીં, TCP પોર્ટ 80 (HTTP) અને TCP પોર્ટ 443 (HTTPS) નો "
"સમાવેશ થાય છે."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"તમે Javascript ને અક્ષમ કર્યું છે. ગતિશીલ સ્વરૂપ મોડ અક્ષમ છે અને કેટલાક સહાયક કાર્યો કાર્ય "
"કરી શકશે નહીં (પરંતુ મુખ્ય કાર્યક્ષમતાએ કામ કરવું જોઈએ)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "સેટઅપ અપડેટ કરો"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT પ્રકાર"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT પ્રકાર હજુ સુધી મળી નથી. જો તમે \"IP તપાસ URL\" આપશો નહીં, તો અમે NAT પ્રકારને "
"શોધી શકશો નહીં."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "ઇન્ટરનેટ સાથે સીધો જોડાણ."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"NAT પાછળ. આનો અર્થ એ છે કે ડાયનેમિક DNS સેવા ફેરફારો માટે \"જાહેર IP જોવા URL\" "
"મતદાન કરશે (\"જાહેર IP જોવા માટેની URL\" આ માટે આવશ્યક છે, નહીં તો IP ફેરફારો શોધી "
"શકાશે નહીં) જો WAN IP બદલાય, તે તમારા DNS નોંધણીને અપડેટ થાય ત્યાં સુધી %(timer)s "
"મિનિટ સુધી લાગી શકે છે."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "છેલ્લો સુધારો"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "વિશે"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1808,13 +1729,52 @@ msgstr "વિશે"
msgid "Status"
msgstr "સ્થિતિ"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "ડાયનેમિક DNS રૂપરેખાંકિત કરો"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "ડાયનેમિક DNS સ્થિતિ"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "છેલ્લો સુધારો"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "GnuDIP Server Address"
msgid "IP Address"
msgstr "GnuDIP સર્વર સરનામું"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Conversations"
msgid "Connection timed out"
msgstr "વાતચીત"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "છેલ્લો સુધારો"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2412,6 +2372,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "વિશે"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2763,6 +2728,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "સેટઅપ અપડેટ કરો"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2888,10 +2860,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3272,22 +3240,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6517,7 +6469,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7588,6 +7540,70 @@ msgstr ""
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "ડાયનેમિક DNS સક્ષમ કરો"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "કૃપા કરીને અપડેટ URL અથવા GnuDIP સર્વર સરનામું પ્રદાન કરો"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "કૃપા કરીને GnuDIP વપરાશકર્તાનામ આપો"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "કૃપા કરીને GnuDIP ડોમેન નામ પ્રદાન કરો"
#~ msgid "Please provide a password"
#~ msgstr "કૃપા કરીને પાસવર્ડ આપો"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "જો તમારી %(box_name)s NRT રાઉટરની પાછળ જોડાયેલ છે, પ્રમાણભૂત પોર્ટ્સ માટે પોર્ટ "
#~ "ફોરવર્ડિંગ ઉમેરવાનું ભૂલશો નહીં, TCP પોર્ટ 80 (HTTP) અને TCP પોર્ટ 443 (HTTPS) નો "
#~ "સમાવેશ થાય છે."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "તમે Javascript ને અક્ષમ કર્યું છે. ગતિશીલ સ્વરૂપ મોડ અક્ષમ છે અને કેટલાક સહાયક કાર્યો "
#~ "કાર્ય કરી શકશે નહીં (પરંતુ મુખ્ય કાર્યક્ષમતાએ કામ કરવું જોઈએ)."
#~ msgid "NAT type"
#~ msgstr "NAT પ્રકાર"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT પ્રકાર હજુ સુધી મળી નથી. જો તમે \"IP તપાસ URL\" આપશો નહીં, તો અમે NAT "
#~ "પ્રકારને શોધી શકશો નહીં."
#~ msgid "Direct connection to the Internet."
#~ msgstr "ઇન્ટરનેટ સાથે સીધો જોડાણ."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "NAT પાછળ. આનો અર્થ એ છે કે ડાયનેમિક DNS સેવા ફેરફારો માટે \"જાહેર IP જોવા URL\" "
#~ "મતદાન કરશે (\"જાહેર IP જોવા માટેની URL\" આ માટે આવશ્યક છે, નહીં તો IP ફેરફારો "
#~ "શોધી શકાશે નહીં) જો WAN IP બદલાય, તે તમારા DNS નોંધણીને અપડેટ થાય ત્યાં સુધી "
#~ "%(timer)s મિનિટ સુધી લાગી શકે છે."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "ડાયનેમિક DNS રૂપરેખાંકિત કરો"
#~ msgid "Dynamic DNS Status"
#~ msgstr "ડાયનેમિક DNS સ્થિતિ"
#, fuzzy
#~| msgid "Invalid server name"
#~ msgid "Enter a valid domain"
@ -7772,11 +7788,6 @@ msgstr ""
#~ msgid "Module: %(module_name)s"
#~ msgstr "વિભાગ: %(module_name)s"
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "છેલ્લો સુધારો"
#~ msgid "Download Manual"
#~ msgstr "માર્ગદર્શિકા ડાઉનલોડ"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Hindi <https://hosted.weblate.org/projects/freedombox/"
@ -889,7 +889,7 @@ msgid "No passwords currently configured."
msgstr "वर्तमान में कोई शेयर कॉन्फ़िगर नहीं किया गया है."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "पासवर्ड"
@ -1050,9 +1050,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1250,7 +1251,7 @@ msgstr ""
msgid "General Configuration"
msgstr "सामान्य कॉन्फ़िगरेशन"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1258,13 +1259,13 @@ msgid "Configure"
msgstr "कॉन्फ़िगर करें"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "डोमेन नाम"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "अमान्य डोमेन नाम"
@ -1620,6 +1621,7 @@ msgid "Test"
msgstr "परीक्षा"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "परिणाम"
@ -1627,7 +1629,7 @@ msgstr "परिणाम"
msgid "Diagnostic Test"
msgstr "निदान परिक्षा"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1637,7 +1639,7 @@ msgstr ""
"अगर अापका इंटरनेट प्रदाता अक्सर अपना आईपी एड्रसॅ बदलता है (i.e. हर चौबीस) दूसरे लोग "
"अपसे मिलकर मुश्किल हेगा. यह दूसरे को यह {box_name} से प्रदान वाले सेवाएं खोजने से रोक देगे."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1654,17 +1656,37 @@ msgstr ""
"डिएनएस नाम नया आईपी पर आवंटित करेगा और अगर इंटरनेट से कोई अपना डिएनएस नाम पूछता "
"है, अपना वर्तमान एड्रसॅ से जवाब मिलेगा."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"अबर आप एक मुक्त डायनेमिक डिएनएस अकाउंट के ढूंढ़ रहे है, शायद आपको एक मुक्त जीएनयूडीआईपी "
"सर्विस यहाँ मिलें <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> या मुक्त अपडेट यूआरएल के जैसे सर्विस "
"यहाँ मिलें <a href='http://freedns.afraid.org/' target='_blank'> freedns.afraid."
"org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "डायनेमिक डिएनएस ग्राहक"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "डोमेन नाम"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1673,7 +1695,7 @@ msgstr ""
"यह चर &lt; यूसर&gt;, &lt; पॉस&gt;, &lt; आईपि&gt;, &lt;डोमेन&gt; यूआरएल के अंदर "
"उपयोग किया जा सकते है. विवरण पर, उदाहरण प्रदाताअों से अपडेट यूआरएल टेम्पलेट देखें."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1683,7 +1705,7 @@ msgstr ""
"नहीं समर्थन करता है या अाप आपना प्रदाता यहाँ नहीं देखतें हैं, आपना प्रदाता का अपडेट यूआरएल "
"उपयोग कर सकते हैं."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1691,17 +1713,17 @@ msgstr ""
"यहाँ एक यूआरएल दर्ज ने करे, (\"https://example.com/\" के तकह) लेकिन सिर्फ गिएनयुडिपॅ "
"सर्वर का होस्टनाम (\"example.com\" कि तरह)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "सार्वजनिक डोमेन नाम कि आपको आपना {box_name} पहुंचने के लिये उपयोग करना चहते हैं."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"अगर आपका प्रदाता स्व-हस्ताक्षर सिटिफ़िकट उपयोग कर सकता हा, यह विकल्प उपयोग करें."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1709,11 +1731,11 @@ msgstr ""
"अगर यह विकल्प चुना होगा, आपका युसरनाम और पासवर्ड एचटीटीपी बेसिकॅ प्रमाणीकरण के लिये "
"उपयोग कर सकता है."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "अगर आपको आपना वर्तमान पासवर्ड रखना चाहिये, यह खाली छोडिये."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1730,166 +1752,66 @@ msgstr ""
"कनेक्टईडॅ है) यह यूआरएल असली आईपी एड्रसॅ चुनने के लिये उपयोग करता है. यह यूआरएल ग्राहक आने "
"से जगह को वापस जाना चाहिये ( उदाहरण:http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "जाब अकाउंट बनाया गया था, वो यूसरनाम."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "यूआरएल अपडेट करें"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "डायनेमिक डिएनएस सक्षम करें"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "सेवा टाइप"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "गिएनयुडिपॅ सर्वर एड्रसॅ"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "सर्वर नाम अमान्य है"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "यूआरएल अपडेट करें"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "सब एसएसएल सिटिफ़िकट स्वीकर करें"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "एचटिटिपि बेसिकॅ प्रमाणीकरण उपयोग करें"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "युसरनाम"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "शो पासवर्ड"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "सार्वजनिक आईपी देखने के लियो यूआरएल"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "अपडेट यूआरएल या एक जीएनयूडीआईपी सर्वर एड्रसॅ प्रदान करें"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "जीएनयूडीआईपी युसरनाम दें"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "एक जीएनयूडीआईपी डोमेन नाम प्रदान करें"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "एक पासवर्ड दें"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"अबर आप एक मुक्त डायनेमिक डिएनएस अकाउंट के ढूंढ़ रहे है, शायद आपको एक मुक्त जीएनयूडीआईपी "
"सर्विस यहाँ मिलें <a href='http://gnudip.datasystems24.net' "
"target='_blank'>gnudip.datasystems24.net</a> या मुक्त अपडेट यूआरएल के जैसे सर्विस "
"यहाँ मिलें <a href='http://freedns.afraid.org/' target='_blank'> freedns.afraid."
"org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"अगर आपका %(box_name)s एक एसएटी रूटर के पीछे कनेक्टेड है, टिसिपि पोर्ट ८० (एचटिटिपि) "
"और टिसिपि पोर्ट ४४३ (एचटिटिपिएस) के लिये पोर्ट अग्रेषण जोड़ना ने भूलिये."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"आपका जावास्क्रिप्ट अक्षम है. डायनेमिक फ़ोर्म मोड अक्षम किया गया है और कुछ सहायक फ़ंक्शन "
"नहीं चल सकता है (लेकिन मुख्य फ़ंक्शनालिटप को चलना चाहिए)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "सेटअप अपडेट"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "एनएटी टआईपॅ"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"एनएटी टआईपॅ अभी तक नहीं पहचया गया है. अगर आप एक \"आईपही चेक यूआरएल\" नहीं प्रदान "
"करते हैं, हम एक एनएटी टआईपॅ नहीं पहचेगें."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "इंटरनेट से सीधा कनेक्शन."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"बिहैन्द एनएटी. इसका मतलब है कि डायनेमिक डीएनएस सेवा \"सार्वजनिक आईपी देखने के लिये "
"यूआरएल\" को पेल करेगा बदलाव को लिये (\"सार्वजनिक आईपी देखने के लिये यूआरएल\" इसके ज़रुरत "
"है या आईपी बदलाव नहीं पता लगता). अगर वान आईपी बदल जाया गया, आपना डीएनएस "
"प्रविष्टि अपडेट होने में %(timer)s मिनट हो सकता."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "अंतिम अपडेट"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "के बारे में"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1903,13 +1825,60 @@ msgstr "के बारे में"
msgid "Status"
msgstr "स्थिति"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "डायनामिक DNS कॉन्फ़िगर करें"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "डोमेन"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "डायनामिक DNS स्थिति"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "अंतिम अपडेट"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "आइपी एेड्रैस"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access Point"
msgid "Success"
msgstr "अभिगम केंद्र"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "Setup failed."
msgid "Failed"
msgstr "सेटअप विफल."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "Tor relay port available"
msgid "No status available."
msgstr "टोर रीले पोर्ट उपलब्ध है"
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "कनेक्शन का नाम"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "कनेक्शन हटाएँ"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "अंतिम अपडेट"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2532,6 +2501,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "के बारे में"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2941,6 +2915,13 @@ msgstr "साइट पर जाएं %(site)s"
msgid "Delete site %(site)s"
msgstr "साइट हटाएं %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "सेटअप अपडेट"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3083,10 +3064,6 @@ msgstr "प्रमाण पत्र"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "डोमेन"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "प्रमाणपत्र स्थिति"
@ -3505,22 +3482,6 @@ msgstr "ऍड्रेस"
msgid "Port"
msgstr "पोर्ट"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "अधिकतम खिलाड़ी कॉन्फ़िगरेशन अपडेट किया गया"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "क्रिएटिव मोड कॉन्फ़िगरेशन अपडेट किया गया"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "पिवीपि कॉन्फ़िगरेशन अपडेट किया गया"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "क्षति कॉन्फ़िगरेशन अपडेट किया गया"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7178,7 +7139,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8347,6 +8308,81 @@ msgstr "%(percentage)s%% पूर्ण"
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "डायनेमिक डिएनएस सक्षम करें"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "अपडेट यूआरएल या एक जीएनयूडीआईपी सर्वर एड्रसॅ प्रदान करें"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "जीएनयूडीआईपी युसरनाम दें"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "एक जीएनयूडीआईपी डोमेन नाम प्रदान करें"
#~ msgid "Please provide a password"
#~ msgstr "एक पासवर्ड दें"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "अगर आपका %(box_name)s एक एसएटी रूटर के पीछे कनेक्टेड है, टिसिपि पोर्ट ८० "
#~ "(एचटिटिपि) और टिसिपि पोर्ट ४४३ (एचटिटिपिएस) के लिये पोर्ट अग्रेषण जोड़ना ने भूलिये."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "आपका जावास्क्रिप्ट अक्षम है. डायनेमिक फ़ोर्म मोड अक्षम किया गया है और कुछ सहायक फ़ंक्शन "
#~ "नहीं चल सकता है (लेकिन मुख्य फ़ंक्शनालिटप को चलना चाहिए)."
#~ msgid "NAT type"
#~ msgstr "एनएटी टआईपॅ"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "एनएटी टआईपॅ अभी तक नहीं पहचया गया है. अगर आप एक \"आईपही चेक यूआरएल\" नहीं प्रदान "
#~ "करते हैं, हम एक एनएटी टआईपॅ नहीं पहचेगें."
#~ msgid "Direct connection to the Internet."
#~ msgstr "इंटरनेट से सीधा कनेक्शन."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "बिहैन्द एनएटी. इसका मतलब है कि डायनेमिक डीएनएस सेवा \"सार्वजनिक आईपी देखने के लिये "
#~ "यूआरएल\" को पेल करेगा बदलाव को लिये (\"सार्वजनिक आईपी देखने के लिये यूआरएल\" इसके "
#~ "ज़रुरत है या आईपी बदलाव नहीं पता लगता). अगर वान आईपी बदल जाया गया, आपना "
#~ "डीएनएस प्रविष्टि अपडेट होने में %(timer)s मिनट हो सकता."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "डायनामिक DNS कॉन्फ़िगर करें"
#~ msgid "Dynamic DNS Status"
#~ msgstr "डायनामिक DNS स्थिति"
#~ msgid "Maximum players configuration updated"
#~ msgstr "अधिकतम खिलाड़ी कॉन्फ़िगरेशन अपडेट किया गया"
#~ msgid "Creative mode configuration updated"
#~ msgstr "क्रिएटिव मोड कॉन्फ़िगरेशन अपडेट किया गया"
#~ msgid "PVP configuration updated"
#~ msgstr "पिवीपि कॉन्फ़िगरेशन अपडेट किया गया"
#~ msgid "Damage configuration updated"
#~ msgstr "क्षति कॉन्फ़िगरेशन अपडेट किया गया"
#, fuzzy
#~| msgid "Available Domains"
#~ msgid "RoundCube availability"
@ -9227,11 +9263,6 @@ msgstr ""
#~ "Pagekite setup finished. The HTTP and HTTPS services are activated now."
#~ msgstr "पेजकइट सेटअप समाप्त हो गया. HTTP और HTTPS सर्विसस अभी सक्रिय हैं ."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "अंतिम अपडेट"
#, fuzzy
#~| msgid "Create User"
#~ msgid "Add Remote Location"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-29 13:55+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-09 20:04+0000\n"
"Last-Translator: Benedek Nagy <benedek@bndk.club>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/hu/>\n"
@ -159,9 +159,7 @@ msgstr "Lehetővé teszi a biztonsági mentés létrehozását és kezelését."
#: plinth/modules/backups/__init__.py:50 plinth/modules/backups/__init__.py:202
#: plinth/modules/backups/__init__.py:247
msgid "Backups"
msgstr ""
"Biztonsági\n"
"mentések"
msgstr "Biztonsági mentések"
#: plinth/modules/backups/__init__.py:199
msgid ""
@ -872,7 +870,7 @@ msgid "No passwords currently configured."
msgstr "Jelenleg nincs beállítva jelszó."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Jelszó"
@ -1020,9 +1018,10 @@ msgid "Refresh IP address and domains"
msgstr "IP-címek és tartományok frissítése"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1220,7 +1219,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Általános beállítások"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1228,13 +1227,13 @@ msgid "Configure"
msgstr "Beállítások"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domainnév"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Érvénytelen domainnév"
@ -1583,6 +1582,7 @@ msgid "Test"
msgstr "Teszt"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Eredmény"
@ -1590,7 +1590,7 @@ msgstr "Eredmény"
msgid "Diagnostic Test"
msgstr "Ellenőrző teszt"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1602,7 +1602,7 @@ msgstr ""
"Ez megakadályozza, hogy mások megtalálják a {box_name} által biztosított "
"szolgáltatásokat."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1620,15 +1620,35 @@ msgstr ""
"DNS-neved az új IP-címedhez, és ha valaki az Interneten lekérdezi a DNS-"
"neved, válaszként az aktuális IP-címedet fogja megkapni."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Ha ingyenes dinamikus DNS fiókot keresel, használhatod az ingyenes GnuDIP "
"szolgáltatást a <a href=\"https://ddns.freedombox.org).\" target=\"_blank"
"\">ddns.freedombox.org</a> címen vagy az ingyenes frissítési URL alapú "
"szolgáltatást a <a href=\"http://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org</a> címen."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Dinamikus DNS ügyfél"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dinamikus domainnév"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1638,7 +1658,7 @@ msgstr ""
"használhatók az URL-ben. Részletekért tekintsd meg a példa szolgáltatók "
"frissítési URL-sablonjait."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1648,7 +1668,7 @@ msgstr ""
"protokollt. Ha nem támogatja a GnuDIP-et, vagy nem található a listán, akkor "
"használhatod a szolgáltató frissítési URL-jét."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1656,19 +1676,19 @@ msgstr ""
"Kérlek, ide ne írj be URL-t (mint pl. „https://pelda.com/”), csak a GnuDIP-"
"szerver állomásnevét (mint pl. „pelda.com”)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"A nyilvános domainnév, amellyel el szeretnéd érni a {box_name} eszközödet."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Használd ezt az opciót, ha a szolgáltatód saját aláírású (self signed) "
"tanúsítványokat használ."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1676,12 +1696,12 @@ msgstr ""
"Ha ez az opció ki van választva, a te felhasználóneved és jelszavad lesz "
"használva HTTP alap hitelesítéshez."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"Hagyd ezt a mezőt üresen, ha szeretnéd megtartani a jelenlegi jelszavad."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1695,161 +1715,68 @@ msgstr ""
"egyszerűen visszaadja a kliens IP-címét (pl.: https://ddns.freedombox.org/"
"ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "A felhasználónév, amely a fiók létrehozása során lett megadva."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "egyéb frissítési URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Dynamic DNS engedélyezése"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Szolgáltatás típusa"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP-szerver címe"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Érvénytelen szervernév"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Frissítési URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Minden SSL-tanúsítvány elfogadása"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "HTTP alap hitelesítés használata"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Felhasználónév"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Jelszó mutatása"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL a nyilvános IP-cím felderítéséhez"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "IPv6 használata IPv4 helyett"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Kérlek, adj meg egy frissítési URL-t vagy egy GnuDIP-szerver címet"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "titkosítás szükséges"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Kérlek, add meg a GnuDIP-felhasználónevet"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Kérlek, add meg a GnuDIP-domainnevet"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Kérlek, add meg a jelszót"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Ha ingyenes dinamikus DNS fiókot keresel, használhatod az ingyenes GnuDIP "
"szolgáltatást a <a href=\"https://ddns.freedombox.org).\" target=\"_blank"
"\">ddns.freedombox.org</a> címen vagy az ingyenes frissítési URL alapú "
"szolgáltatást a <a href=\"http://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org</a> címen."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Ha a %(box_name)s eszközöd NAT-routeren keresztül kapcsolódik az "
"internethez, akkor ne felejtsd el a port továbbításokhoz hozzáadni a "
"szabványos portokat, beleértve a TCP 80-as portot (HTTP-hez) és a TCP 443-as "
"portot (HTTPS-hez)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Letiltottad a Javascriptet. A dinamikus űrlap mód le van tiltva és néhány "
"segéd funkció nem fog működni (de a fő funkcióknak működniük kell)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Beállítások frissítése"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT típusa"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"A NAT típusa még nem lett megállapítva. Ha nem adsz meg egy „IP ellenőrzési "
"URL”-t, nem lehet megállapítani a NAT típusát."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Közvetlen kapcsolat az internetre."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"NAT mögött. Ez azt jelenti hogy a Dynamic DNS szolgáltatás rendszeresen "
"megtekinti az „URL a nyilvános IP-cím megállapításához” címet a változások "
"érzékeléséhez (az „URL a nyilvános IP-cím megállapításához” bejegyzés "
"szükséges ehhez, máskülönben az IP-cím megváltozása nem lesz érzékelve). Az "
"IP-címváltozások esetében eltarthat egészen %(timer)s percig amíg a DNS-"
"bejegyzésed frissítve lesz."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Legutolsó frissítés"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Névjegy"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1863,13 +1790,60 @@ msgstr "Névjegy"
msgid "Status"
msgstr "Állapot"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Dynamic DNS beállítása"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamic DNS állapot"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Legutolsó frissítés"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-cím"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Hozzáférés"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "sikertelen"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Nincs elérhető könyvtár."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Kapcsolat neve"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Kapcsolat törlése"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Automatikus frissítés"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2464,6 +2438,11 @@ msgstr "Visszajelzés küldése"
msgid "Contribute"
msgstr "Hozzájárulás"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Névjegy"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2906,6 +2885,13 @@ msgstr "Ugrás ide: %(site)s"
msgid "Delete site %(site)s"
msgstr "%(site)s webhely törlése"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Beállítások frissítése"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3053,10 +3039,6 @@ msgstr "Tanúsítványok"
msgid "Cannot test: No domains are configured."
msgstr "Sikertelen tesztelés: Nincsenek konfigurált domainek."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Tanúsítvány állapot"
@ -3216,7 +3198,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3493,22 +3475,6 @@ msgstr "Cím"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Maximális játékosszám beállítás frissítve"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Kreatív mód beállítás frissítve"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "PVP beállítás frissítve"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Sérülés beállítás frissítve"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5498,7 +5464,7 @@ msgstr "E-mail kliens"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Kizárólag a helyi levelezőszerver használata"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5506,6 +5472,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Ha engedélyezve van, a szerverhez tartozó beviteli szövegdoboz eltávolítódik "
"a bejelentkezési oldalról, és a felhasználók csak erről a {box_name}ról "
"olvashatnak és küldhetnek leveleket."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5906,10 +5875,8 @@ msgid "Bookmarks"
msgstr "Könyvjelzők"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6156,14 +6123,12 @@ msgid "Software Installation Snapshots"
msgstr "Szoftvertelepítési pillanatképek"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Pillanatképek készítésének engedélyezése vagy letiltása szoftver telepítése "
"előtt és után"
"Pillanatképek készítésének engedélyezése vagy letiltása minden egyes "
"szoftver és frissítés telepítése előtt és után."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6400,10 +6365,8 @@ msgid "Login"
msgstr "Bejelentkezés"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "A jelszó módosítása sikeres."
msgstr "Sikeres kijelentkezés."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7205,8 +7168,13 @@ msgid "Frequent feature updates activated."
msgstr "Gyakori funkciófrissítések aktiválva."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7259,11 +7227,11 @@ msgid "Authorization Password"
msgstr "Hitelesítési jelszó"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "A fiókmódosítások engedélyezéséhez add meg az aktuális jelszavadat."
msgstr ""
"A fiókmódosítások engedélyezéséhez add meg \"{user}\" felhasználó jelszavát."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8369,6 +8337,85 @@ msgstr "befejezettségi szint: %(percentage)s%%"
msgid "Gujarati"
msgstr "Gudzsaráti"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Dynamic DNS engedélyezése"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Kérlek, adj meg egy frissítési URL-t vagy egy GnuDIP-szerver címet"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Kérlek, add meg a GnuDIP-felhasználónevet"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Kérlek, add meg a GnuDIP-domainnevet"
#~ msgid "Please provide a password"
#~ msgstr "Kérlek, add meg a jelszót"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Ha a %(box_name)s eszközöd NAT-routeren keresztül kapcsolódik az "
#~ "internethez, akkor ne felejtsd el a port továbbításokhoz hozzáadni a "
#~ "szabványos portokat, beleértve a TCP 80-as portot (HTTP-hez) és a TCP 443-"
#~ "as portot (HTTPS-hez)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Letiltottad a Javascriptet. A dinamikus űrlap mód le van tiltva és néhány "
#~ "segéd funkció nem fog működni (de a fő funkcióknak működniük kell)."
#~ msgid "NAT type"
#~ msgstr "NAT típusa"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "A NAT típusa még nem lett megállapítva. Ha nem adsz meg egy „IP "
#~ "ellenőrzési URL”-t, nem lehet megállapítani a NAT típusát."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Közvetlen kapcsolat az internetre."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "NAT mögött. Ez azt jelenti hogy a Dynamic DNS szolgáltatás rendszeresen "
#~ "megtekinti az „URL a nyilvános IP-cím megállapításához” címet a "
#~ "változások érzékeléséhez (az „URL a nyilvános IP-cím megállapításához” "
#~ "bejegyzés szükséges ehhez, máskülönben az IP-cím megváltozása nem lesz "
#~ "érzékelve). Az IP-címváltozások esetében eltarthat egészen %(timer)s "
#~ "percig amíg a DNS-bejegyzésed frissítve lesz."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Dynamic DNS beállítása"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Dynamic DNS állapot"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Maximális játékosszám beállítás frissítve"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Kreatív mód beállítás frissítve"
#~ msgid "PVP configuration updated"
#~ msgstr "PVP beállítás frissítve"
#~ msgid "Damage configuration updated"
#~ msgstr "Sérülés beállítás frissítve"
#~ msgid "RoundCube availability"
#~ msgstr "A RoundCube rendelkezésre állása"
@ -9349,9 +9396,6 @@ msgstr "Gudzsaráti"
#~ msgid "Vulnerabilities Reported"
#~ msgstr "Bejelentett biztonsági rések"
#~ msgid "Auto-update"
#~ msgstr "Automatikus frissítés"
#~ msgid "Add Remote Location"
#~ msgstr "Távoli hely hozzáadása"

View File

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Indonesian (FreedomBox)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-06-24 00:42+0000\n"
"Last-Translator: Reza Almanda <rezaalmanda27@gmail.com>\n"
"Language-Team: Indonesian <https://hosted.weblate.org/projects/freedombox/"
@ -858,7 +858,7 @@ msgid "No passwords currently configured."
msgstr "Tidak ada kata sandi yang saat ini dikonfigurasi."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Kata sandi"
@ -1005,9 +1005,10 @@ msgid "Refresh IP address and domains"
msgstr "Refresh Alamat IP dan Domain"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1203,7 +1204,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Konfigurasi Umum"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1211,13 +1212,13 @@ msgid "Configure"
msgstr "Konfigurasi"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nama domain"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Nama Domain Tidak Valid"
@ -1568,6 +1569,7 @@ msgid "Test"
msgstr "Pengujian"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Hasil"
@ -1575,7 +1577,7 @@ msgstr "Hasil"
msgid "Diagnostic Test"
msgstr "Tes Diagnostik"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1587,7 +1589,7 @@ msgstr ""
"internet. Ini akan mencegah orang lain menemukan layanan yang disediakan "
"oleh {box_name} ini."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1605,15 +1607,35 @@ msgstr ""
"jika seseorang dari Internet meminta nama DNS Anda, mereka akan mendapatkan "
"Tanggapan dengan alamat IP Anda saat ini."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Jika Anda mencari akun DNS dinamis gratis, Anda dapat menemukan layanan "
"GnuDIP gratis di <a href=\"http://gnudip.datasystems24.net\" target=\"_blank"
"\">gnudip.datasystems24.net</a> atau Anda dapat menemukan layanan berbasis "
"URL pembaruan gratis di <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Klien DNS Dinamis"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Nama Domain Dinamis"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1623,7 +1645,7 @@ msgstr ""
"&amp; gt ;, &amp; lt; domain &amp; gt; dapat digunakan dalam url. Untuk "
"detail lihat Templat URL pembaruan dari penyedia URL."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1633,7 +1655,7 @@ msgstr ""
"Anda tidak mendukung protokol Gnudip atau penyedia Anda tidak tercantum, "
"Anda dapat menggunakan URL pembaruan penyedia Anda."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1641,19 +1663,19 @@ msgstr ""
"Tolong jangan masukkan URL di sini (seperti \"https://example.com/\") tetapi "
"hanya nama host dari server GnuDIP (seperti \"contoh.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Nama domain publik yang ingin Anda gunakan untuk mencapai {box_name} Anda."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Gunakan opsi ini jika penyedia Anda menggunakan sertifikat yang "
"ditandatangani sendiri."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1661,12 +1683,12 @@ msgstr ""
"Jika opsi ini dipilih, nama pengguna dan kata sandi Anda akan digunakan "
"untuk otentikasi Basic HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"Biarkan bidang ini kosong jika Anda ingin menyimpan kata sandi Anda saat ini."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1684,167 +1706,66 @@ msgstr ""
"asli. URL harus mengembalikan IP di mana klien berasal (Contoh: http://myip."
"datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Nama pengguna yang digunakan ketika akun diciptakan."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnudiP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "URL pembaruan lainnya"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Aktifkan Dynamic DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Tipe Layanan"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Alamat Server Gnudip"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Nama server tidak valid"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Perbaharui URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Terima semua sertifikat SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Gunakan autentikasi dasar HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Nama Pengguna"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Tampilkan kata sandi"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL untuk mencari IP publik"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Gunakan IPv6 bukan IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Harap berikan URL pembaruan atau alamat server GnudDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Harap berikan nama pengguna GnudiP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Harap berikan nama domain Gnudul"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Harap berikan kata sandi"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Jika Anda mencari akun DNS dinamis gratis, Anda dapat menemukan layanan "
"GnuDIP gratis di <a href=\"http://gnudip.datasystems24.net\" target=\"_blank"
"\">gnudip.datasystems24.net</a> atau Anda dapat menemukan layanan berbasis "
"URL pembaruan gratis di <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Jika %(box_name)s terhubung di belakang router NAT, jangan lupa untuk "
"menambahkan port forwarding untuk port standar, termasuk port TCP 80 (http) "
"dan tcp port 443 (https)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Anda telah menonaktifkan javascript. Mode formulir dinamis dinonaktifkan dan "
"beberapa fungsi pembantu mungkin tidak berfungsi (tetapi fungsionalitas "
"utama harus bekerja)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Perbarui Pengaturan"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "tipe NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Tipe NAT belum terdeteksi. Jika Anda tidak menyediakan \"URL Pemeriksaan IP"
"\", kami tidak akan mendeteksi tipe NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Koneksi langsung ke Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Di belakang NAT. Ini berarti bahwa layanan DNS dinamis akan melakukan "
"polling \"URL untuk mencari ip publik\" untuk perubahan (\"URL untuk mencari "
"ip \"\"\" Diperlukan untuk ini, jika tidak perubahan IP tidak akan "
"terdeteksi. ). Dalam hal perubahan IP WAN, mungkin memakan waktu hingga "
"%(timer)s menit hingga entri DNS Anda diperbarui."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Pembaharuan Terakhir"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Tentang"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1858,13 +1779,60 @@ msgstr "Tentang"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfigurasikan DNS Dinamis"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Status Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Pembaharuan Terakhir"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "Alamat IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Mengakses"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "gagal"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Tidak ada perpustakaan yang tersedia."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Nama Koneksi"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Hapus koneksi"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Automatic"
msgid "Already up-to-date"
msgstr "Automatic"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2461,6 +2429,11 @@ msgstr "Berikan umpan balik"
msgid "Contribute"
msgstr "Kontribusi"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Tentang"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2903,6 +2876,13 @@ msgstr "Pergi ke situs %(site)s"
msgid "Delete site %(site)s"
msgstr "Hapus situs %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Perbarui Pengaturan"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3048,10 +3028,6 @@ msgstr "Sertifikat"
msgid "Cannot test: No domains are configured."
msgstr "Tidak dapat menguji: Tidak ada domain yang dikonfigurasi."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domain"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Status Sertifikat"
@ -3436,22 +3412,6 @@ msgstr "Address"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6671,7 +6631,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7736,6 +7696,72 @@ msgstr "%(percentage)s %% selesai"
msgid "Gujarati"
msgstr "Bahasa Gujarat"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Aktifkan Dynamic DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Harap berikan URL pembaruan atau alamat server GnudDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Harap berikan nama pengguna GnudiP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Harap berikan nama domain Gnudul"
#~ msgid "Please provide a password"
#~ msgstr "Harap berikan kata sandi"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Jika %(box_name)s terhubung di belakang router NAT, jangan lupa untuk "
#~ "menambahkan port forwarding untuk port standar, termasuk port TCP 80 "
#~ "(http) dan tcp port 443 (https)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Anda telah menonaktifkan javascript. Mode formulir dinamis dinonaktifkan "
#~ "dan beberapa fungsi pembantu mungkin tidak berfungsi (tetapi "
#~ "fungsionalitas utama harus bekerja)."
#~ msgid "NAT type"
#~ msgstr "tipe NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Tipe NAT belum terdeteksi. Jika Anda tidak menyediakan \"URL Pemeriksaan "
#~ "IP\", kami tidak akan mendeteksi tipe NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Koneksi langsung ke Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Di belakang NAT. Ini berarti bahwa layanan DNS dinamis akan melakukan "
#~ "polling \"URL untuk mencari ip publik\" untuk perubahan (\"URL untuk "
#~ "mencari ip \"\"\" Diperlukan untuk ini, jika tidak perubahan IP tidak "
#~ "akan terdeteksi. ). Dalam hal perubahan IP WAN, mungkin memakan waktu "
#~ "hingga %(timer)s menit hingga entri DNS Anda diperbarui."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Konfigurasikan DNS Dinamis"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Status Dynamic DNS"
#, fuzzy
#~| msgid "unavailable"
#~ msgid "RoundCube availability"
@ -8119,11 +8145,6 @@ msgstr "Bahasa Gujarat"
#~ msgid "Domain registration failed: {response}."
#~ msgstr "Pendaftaran domain gagal: {response}."
#, fuzzy
#~| msgid "Automatic"
#~ msgid "Auto-update"
#~ msgstr "Automatic"
#, fuzzy
#~| msgid "{box_name} Manual"
#~ msgid "Download Manual"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-01-06 22:41+0000\n"
"Last-Translator: Dietmar <sagen@permondes.de>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/freedombox/"
@ -855,7 +855,7 @@ msgid "No passwords currently configured."
msgstr "Nessuna password attualmente configurata."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Password"
@ -1005,9 +1005,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1186,7 +1187,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Configurazione Generale"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1194,13 +1195,13 @@ msgid "Configure"
msgstr "Configura"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nome dominio"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Nome dominio non valido"
@ -1550,6 +1551,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Risultato"
@ -1557,7 +1559,7 @@ msgstr "Risultato"
msgid "Diagnostic Test"
msgstr "Test Diagnostica"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1568,7 +1570,7 @@ msgstr ""
"24 ore), può essere difficile per gli altri trovarti in Internet. Questo "
"impedirà altri di raggiungere i servizi forniti da questo {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1585,15 +1587,35 @@ msgstr ""
"tuo nome DNS al nuovo IP, e se qualcuno cercherà il tuo nome DNS in "
"Internet, riceverà come risposta l'indirizzo IP corrente."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Se stai cercando un profilo DNS dinamico gratuito, puoi trovare un servizio "
"GnuDIP gratuito su <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a> oppure puoi trovare un servizio gratuito basato "
"su URL d'aggiornamento su <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Client DNS Dinamico"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Nome Dominio Dinamico"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1603,7 +1625,7 @@ msgstr ""
"essere usati all'interno dell'URL. Per maggiori dettagli vedi i modelli di "
"URL del provider d'esempio."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1613,7 +1635,7 @@ msgstr ""
"tuo provider non supporta il protocollo GnuDIP o il tuo provider non è "
"presente nella lista puoi usare l'URL di aggiornamento del tuo provider."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1621,17 +1643,17 @@ msgstr ""
"Prego, non inserire un URL qui (come \"https://esempio.com/\") ma solo "
"l'hostname del server GnuDIP (come \"esempio.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"il nome di dominio pubblico che vuoi usare per raggiungere il tuo {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "Usa quest'opzione se il tuo provider usa dei certificati auto-firmati."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1639,11 +1661,11 @@ msgstr ""
"Se quest'opzione è selezionata, il tuo nome utente e la tua password saranno "
"usati per l'autenticazione basilare HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Lascia vuoto questo campo se vuoi mantenere la password corrente."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1656,168 +1678,68 @@ msgstr ""
"determinare l'indirizzo IP reale. L'URL dovrebbe semplicemente restituire "
"l'IP da cui proviene il client (esempio: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Il nome utente usato quando è stato creato il profilo."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "URL aggiornamento alternativo"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Abilita DNS Dinamico"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Tipo Servizio"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Indirizzo Server GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Nome Server Invalido"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Aggiorna URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Accetta tutti i certificati SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
#, fuzzy
msgid "Use HTTP basic authentication"
msgstr "Usa l'autenticazione HTTP base"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Nome utente"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Mostra password"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
#, fuzzy
msgid "URL to look up public IP"
msgstr "URL di cui cercare l'IP pubblico"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
#, fuzzy
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Per favore inserisci un URL d'aggiornamento o un indirizzo di un server "
"GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
#, fuzzy
msgid "Please provide a GnuDIP username"
msgstr "Per favore inserisci un nome utente GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
#, fuzzy
msgid "Please provide a GnuDIP domain name"
msgstr "Per favore inserisci un nome di dominio GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
#, fuzzy
msgid "Please provide a password"
msgstr "Inserisci una password per favore"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Se stai cercando un profilo DNS dinamico gratuito, puoi trovare un servizio "
"GnuDIP gratuito su <a href=\"https://ddns.freedombox.org\" target=\"_blank"
"\">ddns.freedombox.org</a> oppure puoi trovare un servizio gratuito basato "
"su URL d'aggiornamento su <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Se il tuo %(box_name)s è connesso tramite un router NAT, non dimenticarti di "
"impostare l'inoltro delle porte standard, inclusa la porta TCP 80 (HTTP) e "
"la porta TCP 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Hai disabilitato JavaScript. La modalità Dynamic forma e altre funzionalità "
"d'aiuto potrebbero non essere disponibili (le funzionalità principali "
"dovrebbero essere disponibili)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aggiorna impostazioni"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Tipo NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Il tipo di NAT non è stato rilevato. Se non indichi un \"IP Check URL\", non "
"sarà possibile rilevare il tipo di NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Connessione diretta a Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"A valle del NAT. Significa che il servizio di DNS Dinamico interrogherà "
"l'URL di ricerca IP per eventuali cambiamenti (per questo è richiesto l'URL "
"di ricerca IP, altrimenti non i cambiamenti non saranno rilevati). Nel caso "
"cambi l'IP WAN, potrebbero essere richiesti fino a %(timer)s minuti prima "
"che il DNS sia aggiornato."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Ultimo aggiornamento"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Su"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1831,13 +1753,61 @@ msgstr "Su"
msgid "Status"
msgstr "Stato"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Configura Server DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
#, fuzzy
msgid "Domain"
msgstr "Dominio"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Stato DNS Dinamico"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Ultimo aggiornamento"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "Indirizso IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Accesso"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "fallito"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Non ci sono librerie disponibile."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Nome Connessione"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Cancella connessione"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Enable auto-update"
msgid "Already up-to-date"
msgstr "Abilita l'aggiornamento automatico"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2422,6 +2392,11 @@ msgstr "Invia feedback"
msgid "Contribute"
msgstr "Contribuire"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Su"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2874,6 +2849,13 @@ msgstr "Vai nel sito %(site)s"
msgid "Delete site %(site)s"
msgstr "Cancella sito %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aggiorna impostazioni"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, fuzzy, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3019,11 +3001,6 @@ msgstr "Certificati"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
#, fuzzy
msgid "Domain"
msgstr "Dominio"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Stato Certificato"
@ -3455,23 +3432,6 @@ msgstr "Indirizzo"
msgid "Port"
msgstr "Porta"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Configurazione \"numero massimo giocatori\" aggiornata"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Configurazione \"Modalità creativa\" aggiornata"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Configurazione PVP aggiornata"
#: plinth/modules/minetest/views.py:67
#, fuzzy
msgid "Damage configuration updated"
msgstr "Configurazione \"danni\" abilitata"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6771,7 +6731,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7804,6 +7764,91 @@ msgstr "%(percentage)s%% completata"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Abilita DNS Dinamico"
#, fuzzy
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr ""
#~ "Per favore inserisci un URL d'aggiornamento o un indirizzo di un server "
#~ "GnuDIP"
#, fuzzy
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Per favore inserisci un nome utente GnuDIP"
#, fuzzy
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Per favore inserisci un nome di dominio GnuDIP"
#, fuzzy
#~ msgid "Please provide a password"
#~ msgstr "Inserisci una password per favore"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Se il tuo %(box_name)s è connesso tramite un router NAT, non dimenticarti "
#~ "di impostare l'inoltro delle porte standard, inclusa la porta TCP 80 "
#~ "(HTTP) e la porta TCP 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Hai disabilitato JavaScript. La modalità Dynamic forma e altre "
#~ "funzionalità d'aiuto potrebbero non essere disponibili (le funzionalità "
#~ "principali dovrebbero essere disponibili)."
#~ msgid "NAT type"
#~ msgstr "Tipo NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Il tipo di NAT non è stato rilevato. Se non indichi un \"IP Check URL\", "
#~ "non sarà possibile rilevare il tipo di NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Connessione diretta a Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "A valle del NAT. Significa che il servizio di DNS Dinamico interrogherà "
#~ "l'URL di ricerca IP per eventuali cambiamenti (per questo è richiesto "
#~ "l'URL di ricerca IP, altrimenti non i cambiamenti non saranno rilevati). "
#~ "Nel caso cambi l'IP WAN, potrebbero essere richiesti fino a %(timer)s "
#~ "minuti prima che il DNS sia aggiornato."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Configura Server DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Stato DNS Dinamico"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Configurazione \"numero massimo giocatori\" aggiornata"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Configurazione \"Modalità creativa\" aggiornata"
#~ msgid "PVP configuration updated"
#~ msgstr "Configurazione PVP aggiornata"
#, fuzzy
#~ msgid "Damage configuration updated"
#~ msgstr "Configurazione \"danni\" abilitata"
#~ msgid "Enter a valid domain"
#~ msgstr "Inserisci un dominio valido"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-05-20 12:32+0000\n"
"Last-Translator: Jacque Fresco <aidter@use.startmail.com>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/freedombox/"
@ -794,7 +794,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -934,9 +934,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1104,7 +1105,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1112,13 +1113,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1428,6 +1429,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1435,7 +1437,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1443,7 +1445,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1454,54 +1456,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1510,142 +1520,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1659,12 +1591,45 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2193,6 +2158,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2540,6 +2510,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2665,10 +2642,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3033,22 +3006,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6213,7 +6170,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2020-07-16 16:41+0000\n"
"Last-Translator: Yogesh <yogesh@karnatakaeducation.org.in>\n"
"Language-Team: Kannada <https://hosted.weblate.org/projects/freedombox/"
@ -794,7 +794,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -934,9 +934,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1104,7 +1105,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1112,13 +1113,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1428,6 +1429,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1435,7 +1437,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1443,7 +1445,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1454,54 +1456,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1510,142 +1520,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "ಬಗ್ಗೆ"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1659,12 +1591,45 @@ msgstr "ಬಗ್ಗೆ"
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2193,6 +2158,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "ಬಗ್ಗೆ"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2540,6 +2510,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2665,10 +2642,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3033,22 +3006,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6215,7 +6172,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-02-22 10:50+0000\n"
"Last-Translator: Kornelijus Tvarijanavičius <kornelitvari@protonmail.com>\n"
"Language-Team: Lithuanian <https://hosted.weblate.org/projects/freedombox/"
@ -795,7 +795,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -935,9 +935,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1105,7 +1106,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1113,13 +1114,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1429,6 +1430,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1436,7 +1438,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1444,7 +1446,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1455,54 +1457,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1511,142 +1521,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Apie"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1660,12 +1592,45 @@ msgstr "Apie"
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2194,6 +2159,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Apie"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2541,6 +2511,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2666,10 +2643,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3034,22 +3007,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6214,7 +6171,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -15,7 +15,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-12-27 05:53+0000\n"
"Last-Translator: Petter Reinholdtsen <pere-weblate@hungry.com>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/"
@ -877,7 +877,7 @@ msgid "No passwords currently configured."
msgstr "Ingen passord er foreløpig satt opp."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Passord"
@ -1027,9 +1027,10 @@ msgid "Refresh IP address and domains"
msgstr "Oppdater IP-adresse og domener"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1227,7 +1228,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Generelt oppsett"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1235,13 +1236,13 @@ msgid "Configure"
msgstr "Oppsett"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domenenavn"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Ugyldig domenenavn"
@ -1592,6 +1593,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Resultat"
@ -1599,7 +1601,7 @@ msgstr "Resultat"
msgid "Diagnostic Test"
msgstr "Diagnostikktest"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1610,7 +1612,7 @@ msgstr ""
"eks. hver 24 t), kan det være vanskelig for andre å finne deg på Internett. "
"Dette vil hindre andre i å finne tjenester som tilbys av dette {box_name}et."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1627,15 +1629,35 @@ msgstr ""
"tjeneren tildele DNS-navnet ditt til den nye IP-en. Hvis noen fra Internett "
"ber om ditt DNS-navn, vil de da få svar med din gjeldende IP-adresse."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Hvis du ser etter en gratis dynamisk DNS-konto, kan du finne en gratis "
"GnuDIP-tjeneste på <a href=\"http://gnudip.datasystems24.net\" target="
"\"_blank\">gnudip.datasystems24.net </a>, eller du kan finne gratis URL-"
"baserte oppdateringstjenester her <a href=\"http://freedns.afraid.org/\" "
"target=\"_blank\"> freedns.afraid.org </a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Dynamisk DNS-klient"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamisk domenenavn"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1645,7 +1667,7 @@ msgstr ""
"i nettadressen. For detaljer, se de oppdaterte nettadressemalene fra "
"eksempel leverandørene."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1655,7 +1677,7 @@ msgstr ""
"leverandøren ikke støtter GnuDIP-protokollen, eller din leverandør ikke er "
"oppført, kan du bruke leverandørens URL for oppdatering."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1663,19 +1685,19 @@ msgstr ""
"Ikke bruk en nettadresse her (som f.eks. \"https://example.com/\"), men kun "
"vertsnavnet til GnuDIP-tjeneren (som \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Det offentlige domenenavnet du ønsker å bruke for å få tilgang til ditt "
"{box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Bruk dette alternativet hvis leverandøren bruker selvsignerte sertifikater."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1683,11 +1705,11 @@ msgstr ""
"Hvis dette alternativet velges, vil ditt brukernavn og passord brukes for "
"enkel godkjenning i HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "La dette feltet stå tomt hvis du vil beholde ditt nåværende passord."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1705,168 +1727,66 @@ msgstr ""
"den virkelige Internett-IP-en. Nettadressen skal bare returnere IP-en som "
"tjeneren kommer fra (eksempelvis: http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Brukernavnet som ble benyttet da kontoen ble opprettet."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "Oppdater URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Aktiver dynamisk DNS (Dynamic DNS)"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Type tjeneste"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP-tjeneradresse"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Ugyldig tjenernavn"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Oppdater URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Godta alle SSL-sertifikater"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Bruk HTTP-basisgodkjenning"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Brukernavn"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Vis passord"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL for å slå opp offentlig IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Bruk IPv6 istedenfor IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Vennligst oppgi en oppdatert nettadresse eller en GnuDIP-tjeneradresse"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Vennligst oppgi et GnuDIP-brukernavn"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Vennligst oppgi et GnuDIP-domenenavn"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Vennligst oppgi et passord"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Hvis du ser etter en gratis dynamisk DNS-konto, kan du finne en gratis "
"GnuDIP-tjeneste på <a href=\"http://gnudip.datasystems24.net\" target="
"\"_blank\">gnudip.datasystems24.net </a>, eller du kan finne gratis URL-"
"baserte oppdateringstjenester her <a href=\"http://freedns.afraid.org/\" "
"target=\"_blank\"> freedns.afraid.org </a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Hvis din %(box_name)s er tilkoblet bak en NAT-ruter, ikke glem å legge til "
"port for videresending til standard porter, inkludert TCP-port 80 (HTTP) og "
"TCP-port 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Du har skrudd av JavaScript. Dynamisk formmodus er avskrudd, og noen "
"helpefunksjoner vil ikke virke (men hovedfunksjonaliteten skal virke)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Oppdater oppsett"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-type"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT-type ble ikke oppdaget ennå. Hvis du ikke gir en «IP Check URL», vil vi "
"ikke oppdage en NAT-type."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direkte forbindelse til Internettet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Bak NAT. Dette betyr at Dynamic DNS-tjenesten vil kontakte «URL for å slå "
"opp offentlig IP» for å oppdage endringer («URL for å slå opp offentlig IP»-"
"oppføringen er nødvendig - ellers vil ikke IP-endringene bli oppdaget). I "
"tilfelle WAN IP-adressen endrer seg, kan det ta opp til %(timer)s minutter "
"før DNS-adgangen er oppdatert."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Siste oppdatering"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1880,13 +1800,60 @@ msgstr "Om"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfigurer dynamisk DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domene"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamisk DNS-status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Siste oppdatering"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-adresse"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access Point"
msgid "Success"
msgstr "Aksesspunkt"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "feilet"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Intet bibliotek tilgjengelig."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Oppkoblingsnavn"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Slett tilkobling"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Auto-oppdatering"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2502,6 +2469,11 @@ msgstr "Send inn tilbakemeldinger"
msgid "Contribute"
msgstr "Bidra"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2951,6 +2923,13 @@ msgstr "Gå til siden %(site)s"
msgid "Delete site %(site)s"
msgstr "Slett nettstedet %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Oppdater oppsett"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3094,10 +3073,6 @@ msgstr "Sertifikater"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domene"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Sertifikatsstatus"
@ -3524,22 +3499,6 @@ msgstr "Adresse"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Oppsett av maks spillere oppdatert"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Oppsett av kreativ modus oppdatert"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "PVP-oppsett oppdatert"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Skadeoppsett oppdatert"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7241,7 +7200,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
#, fuzzy
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8403,6 +8362,84 @@ msgstr "%(percentage)s%% fullført"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Aktiver dynamisk DNS (Dynamic DNS)"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr ""
#~ "Vennligst oppgi en oppdatert nettadresse eller en GnuDIP-tjeneradresse"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Vennligst oppgi et GnuDIP-brukernavn"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Vennligst oppgi et GnuDIP-domenenavn"
#~ msgid "Please provide a password"
#~ msgstr "Vennligst oppgi et passord"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Hvis din %(box_name)s er tilkoblet bak en NAT-ruter, ikke glem å legge "
#~ "til port for videresending til standard porter, inkludert TCP-port 80 "
#~ "(HTTP) og TCP-port 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Du har skrudd av JavaScript. Dynamisk formmodus er avskrudd, og noen "
#~ "helpefunksjoner vil ikke virke (men hovedfunksjonaliteten skal virke)."
#~ msgid "NAT type"
#~ msgstr "NAT-type"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT-type ble ikke oppdaget ennå. Hvis du ikke gir en «IP Check URL», vil "
#~ "vi ikke oppdage en NAT-type."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Direkte forbindelse til Internettet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Bak NAT. Dette betyr at Dynamic DNS-tjenesten vil kontakte «URL for å slå "
#~ "opp offentlig IP» for å oppdage endringer («URL for å slå opp offentlig "
#~ "IP»-oppføringen er nødvendig - ellers vil ikke IP-endringene bli "
#~ "oppdaget). I tilfelle WAN IP-adressen endrer seg, kan det ta opp til "
#~ "%(timer)s minutter før DNS-adgangen er oppdatert."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Konfigurer dynamisk DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Dynamisk DNS-status"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Oppsett av maks spillere oppdatert"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Oppsett av kreativ modus oppdatert"
#~ msgid "PVP configuration updated"
#~ msgstr "PVP-oppsett oppdatert"
#~ msgid "Damage configuration updated"
#~ msgstr "Skadeoppsett oppdatert"
#, fuzzy
#~| msgid "Available Domains"
#~ msgid "RoundCube availability"
@ -9371,9 +9408,6 @@ msgstr "Gujarati"
#~ msgid "Vulnerabilities Reported"
#~ msgstr "Rapporterte sårbarheter"
#~ msgid "Auto-update"
#~ msgstr "Auto-oppdatering"
#, fuzzy
#~| msgid "Add Remote Repository"
#~ msgid "Add Remote Location"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-19 09:56+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-02 08:55+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/freedombox/"
"freedombox/nl/>\n"
@ -872,7 +872,7 @@ msgid "No passwords currently configured."
msgstr "Er zijn momenteel geen wachwoorden ingesteld."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Wachtwoord"
@ -1019,9 +1019,10 @@ msgid "Refresh IP address and domains"
msgstr "IP adressen en domeinen verversen"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1217,7 +1218,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Algemene Instellingen"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1225,13 +1226,13 @@ msgid "Configure"
msgstr "Configureer"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domeinnaam"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Foutieve domeinnaam"
@ -1581,6 +1582,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Resultaat"
@ -1588,7 +1590,7 @@ msgstr "Resultaat"
msgid "Diagnostic Test"
msgstr "Diagnostische test"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1600,7 +1602,7 @@ msgstr ""
"internet. Daardoor is het gebruik van de diensten van {box_name} vaak "
"onmogelijk van buiten het lokale netwerk."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1618,15 +1620,35 @@ msgstr ""
"naamswijziging doorvoeren, en als iemand op het internet om deze DNS naam "
"vraagt wordt dit beantwoord met het juiste IP adres."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Wie op zoek is naar een gratis dynamic DNS account, kan misschien een gratis "
"GnuDIP service vinden bij <a href=\"https://ddns.freedombox.org\" target="
"\"_blank\">ddns.freedombox.org</a> of gratis free update URL gebaseerde "
"diensten van <a href=\"https://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Dynamic DNS Cliënt"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamische domeinnaam"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1636,7 +1658,7 @@ msgstr ""
"worden gebruikt in de URL. Zie voor details de update URL voorbeelden van de "
"voorbeeld providers."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1646,7 +1668,7 @@ msgstr ""
"GnuDIP protocol gebruikt of de provider staat niet in de lijst, gebruik dan "
"de update URL van de provider."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1654,19 +1676,19 @@ msgstr ""
"Voer hier geen complete URL in (zoals \"https://example.com/\") maar alleen "
"de hostnaam van de GnuDIP server (zoals \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"De openbare domeinnaam die gebruikt wordt om {box_name} aan te spreken."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Gebruik deze functie indien de provider gebruik maakt van self-signed "
"certificaten."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1674,11 +1696,11 @@ msgstr ""
"Als deze optie is geselecteerd wordt de gebruikersnaam en wachtwoord "
"gebruikt voor HTTP basic authentificatie."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Laat dit veld leeg om het huidige wachtwoord te behouden."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1691,159 +1713,68 @@ msgstr ""
"Internet IP adres te bepalen. Het antwoord op het aanroepen van deze URL zou "
"het IP adres moeten zijn (Voorbeeld: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "De gebruikersnaam die werd gebruikt toen de account werd gemaakt."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "Andere update-URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Dynamic DNS Inschakelen"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Dienst Type"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP Serveradres"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Foute servernaam"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL bijwerken"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Accepteer alle SSL certificaten"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Gebruik HTTP-basisverificatie"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Gebruikersnaam"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Toon wachtwoord"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL voor controle van het IP-adres"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Gebruik IPv6 in plaats van IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Voer een update URL of GnuDIP Serveradres in"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "geheim vereist"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Voer een GnuDIP gebruikersnaam in"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Voer een GnuDIP domeinnaam in"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Voer een wachtwoord in"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Wie op zoek is naar een gratis dynamic DNS account, kan misschien een gratis "
"GnuDIP service vinden bij <a href=\"https://ddns.freedombox.org\" target="
"\"_blank\">ddns.freedombox.org</a> of gratis free update URL gebaseerde "
"diensten van <a href=\"https://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Als deze %(box_name)s is verbonden door middel van NAT-routing, vergeet dan "
"niet om port-forwarding te gebruiken om standaardpoorten met inbegrip van "
"TCP-poort 80 (HTTP) en TCP-poort 443 (HTTPS) naar %(box_name)s te leiden."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Javascript schijnt uitgeschakeld te zijn, Dynamische formulieren en sommige "
"helpfuncties werken niet, maar de basisfunctionaliteit zou moeten werken."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Instelling bijwerken"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT type"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT type nog niet gedetecteerd. Als er geen \"IP check URL\" wordt ingesteld "
"is het niet mogelijk om het type te herkennen."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Directe verbinding met Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Achter NAT, dit betekent dat de Dynamic DNS dienst regelmatig de \"URL voor "
"controle van het IP-adres\" controleert op wijzigingen (hiervoor is de \"URL "
"voor controle van het IP-adres\" nodig, anders kunnen veranderingen niet "
"worden ontdekt). Het kan tot %(timer)s minuten duren tot de DNS wordt "
"bijgewerkt."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Laatste bijwerking"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Over ons"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1857,13 +1788,60 @@ msgstr "Over ons"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Instellen Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domein"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamische DNS-Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Laatste bijwerking"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP adres"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Toegang"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "mislukt"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Geen bibliotheken beschikbaar."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Verbindingsnaam"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Verwijder verbinding"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "Laatste bijwerking"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2457,6 +2435,11 @@ msgstr "Feedback indienen"
msgid "Contribute"
msgstr "Bijdragen"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Over ons"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2901,6 +2884,13 @@ msgstr "Ga naar site %(site)s"
msgid "Delete site %(site)s"
msgstr "Verwijder site %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Instelling bijwerken"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3048,10 +3038,6 @@ msgstr "Certificaten"
msgid "Cannot test: No domains are configured."
msgstr "Kan niet testen: Er zijn geen domeinen ingesteld."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domein"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Certificaatstatus"
@ -3211,7 +3197,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3491,22 +3477,6 @@ msgstr "Adres"
msgid "Port"
msgstr "Poort"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Instelling maximum aantal spelers bijgewerkt"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Instelling Creatieve modus bijgewerkt"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Instelling PVP bijgewerkt"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Instelling schade bijgewerkt"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5492,7 +5462,7 @@ msgstr "Email Cliënt"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Gebruik alleen de lokale mailserver"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5500,6 +5470,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Indien ingeschakeld, wordt het tekstvak voor serverinvoer verwijderd van de "
"inlogpagina en kunnen gebruikers alleen e-mails lezen en verzenden vanaf "
"deze {box_name}."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5896,10 +5869,8 @@ msgid "Bookmarks"
msgstr "Bladwijzers"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6140,13 +6111,12 @@ msgid "Software Installation Snapshots"
msgstr "Software-installatie Snapshots"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Snapshots voor en na de installatie van de software in- of uitschakelen"
"Snapshots voor en na de installatie en update van de software in- of "
"uitschakelen."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6382,10 +6352,8 @@ msgid "Login"
msgstr "Aanmelding"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Wachtwoord succesvol gewijzigd."
msgstr "Succesvol uitgelogd."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7186,8 +7154,13 @@ msgid "Frequent feature updates activated."
msgstr "Tussentijdse Software Updates zijn ingeschakeld."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7239,11 +7212,12 @@ msgid "Authorization Password"
msgstr "Authorisatie-wachtwoord"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Voer je huidige wachtwoord in om accountwijzigingen toe te staan."
msgstr ""
"Voer het wachtwoord voor gebruiker \"{user}\" in om accountwijzigingen toe "
"te staan."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8348,6 +8322,85 @@ msgstr "%(percentage)s%% voltooid"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Dynamic DNS Inschakelen"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Voer een update URL of GnuDIP Serveradres in"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Voer een GnuDIP gebruikersnaam in"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Voer een GnuDIP domeinnaam in"
#~ msgid "Please provide a password"
#~ msgstr "Voer een wachtwoord in"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Als deze %(box_name)s is verbonden door middel van NAT-routing, vergeet "
#~ "dan niet om port-forwarding te gebruiken om standaardpoorten met inbegrip "
#~ "van TCP-poort 80 (HTTP) en TCP-poort 443 (HTTPS) naar %(box_name)s te "
#~ "leiden."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Javascript schijnt uitgeschakeld te zijn, Dynamische formulieren en "
#~ "sommige helpfuncties werken niet, maar de basisfunctionaliteit zou moeten "
#~ "werken."
#~ msgid "NAT type"
#~ msgstr "NAT type"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT type nog niet gedetecteerd. Als er geen \"IP check URL\" wordt "
#~ "ingesteld is het niet mogelijk om het type te herkennen."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Directe verbinding met Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Achter NAT, dit betekent dat de Dynamic DNS dienst regelmatig de \"URL "
#~ "voor controle van het IP-adres\" controleert op wijzigingen (hiervoor is "
#~ "de \"URL voor controle van het IP-adres\" nodig, anders kunnen "
#~ "veranderingen niet worden ontdekt). Het kan tot %(timer)s minuten duren "
#~ "tot de DNS wordt bijgewerkt."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Instellen Dynamic DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Dynamische DNS-Status"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Instelling maximum aantal spelers bijgewerkt"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Instelling Creatieve modus bijgewerkt"
#~ msgid "PVP configuration updated"
#~ msgstr "Instelling PVP bijgewerkt"
#~ msgid "Damage configuration updated"
#~ msgstr "Instelling schade bijgewerkt"
#~ msgid "RoundCube availability"
#~ msgstr "RoundCube-beschikbaarheid"
@ -9296,11 +9349,6 @@ msgstr "Gujarati"
#~ msgstr ""
#~ "Pagekite setup voltooid. De HTTP- en HTTPS-services zijn nu geactiveerd."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "Laatste bijwerking"
#, fuzzy
#~| msgid "Create User"
#~ msgid "Add Remote Location"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-03-03 16:50+0000\n"
"Last-Translator: Karol Werner <karol@ppkt.eu>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/freedombox/"
@ -861,7 +861,7 @@ msgid "No passwords currently configured."
msgstr "Obecnie nie ma ustawionych żadnych haseł."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Hasło"
@ -1011,9 +1011,10 @@ msgid "Refresh IP address and domains"
msgstr "Odśwież adres IP i domeny"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1209,7 +1210,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Ustawienia główne"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1217,13 +1218,13 @@ msgid "Configure"
msgstr "Konfiguruj"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nazwa domeny"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Niewłaściwa nazwa domeny"
@ -1563,6 +1564,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Wynik"
@ -1570,7 +1572,7 @@ msgstr "Wynik"
msgid "Diagnostic Test"
msgstr "Test diagnostyczny"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1581,7 +1583,7 @@ msgstr ""
"twój numer IP, innym użytkownikom może być trudno cię odnaleźć. Uniemożliwia "
"to znajdowanie usług świadczonych przez {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1599,15 +1601,35 @@ msgstr ""
"nowego adresu IP i gdy ktoś zapyta o twoją nazwę DNS, otrzyma w odpowiedzi "
"twój aktualny adres IP."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Jeśli szukasz darmowego konta Dynamic DNS, to pod adresem <a href='http://"
"gnudip.datasystems24.net' target='_blank'>gnudip.datasystems24.net</a> "
"możesz znaleźć darmowy serwer GnuDIP albo darmową usługę uaktualniania URL "
"pod adresem<a href='http://freedns.afraid.org/' target='_blank'> freedns."
"afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Klient Dynamic DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamiczna nazwa domeny"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1617,7 +1639,7 @@ msgstr ""
"mogą być używanie w adresie URL. Po szczegóły zobacz uaktualnianie URL dla "
"przykładowego prowicera."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1627,7 +1649,7 @@ msgstr ""
"twój prowider nie wspiera protokołu GnuDIP albo nie jest na liście wtedy "
"możesz użyć URL uaktualnienia twojego prowidera."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1635,17 +1657,17 @@ msgstr ""
"Proszę nie wpisuj adresu URL tutaj (np. \"https://example.com/\") tylko "
"nazwę hosta serwera GnuDIP (np. \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "Domena pod którą chcesz używać aby zobaczyć twój {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Zaznacz jeśli twój prowider używa certyfikatów podpisanych przez siebie."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1653,11 +1675,11 @@ msgstr ""
"Jeśli ta opcja jest zaznaczona to twoja nazwa użytkownika i hasło będą "
"używane do podstawowej autentyfikacji HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Zostaw puste jeśli chcesz używać aktualnego hasła."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1675,168 +1697,66 @@ msgstr ""
"określenia twojego prawdziwego adresu IP. URL powinien zwrócić IP z którego "
"klient pochodzi. (przykład: http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Użytkownik który był używany podczas zakladania konta."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "Uaktualnij URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Zezwól na Dynamic DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Typ usługi"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Adres serwera GnuGIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Niewłaściwa nazwa użytkownika"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Uaktualnij URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Akceptuj wszystkie certyfikaty SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Użyj podstawowej autentyfikacji HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Nazwa użytkownika"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Pokaż hasło"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "Adres URL do wyszukiwania publicznego IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Proszę wskaż adres do uaktualniania URL lub serwera GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Nazwa użytkowniika GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Domena GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Hasło"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"Jeśli szukasz darmowego konta Dynamic DNS, to pod adresem <a href='http://"
"gnudip.datasystems24.net' target='_blank'>gnudip.datasystems24.net</a> "
"możesz znaleźć darmowy serwer GnuDIP albo darmową usługę uaktualniania URL "
"pod adresem<a href='http://freedns.afraid.org/' target='_blank'> freedns."
"afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Jeśli twój %(box_name)s jest za NATem, nie zapomnij dodać przekazywanie "
"portów: TCP port 80 (HTTP) and TCP port 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Masz wyłączony Javascript. Dynamiczny formularz jest wyłączony a niektóre "
"funkcje pomocnicze mogą nie działać (ale podstawowa funkcjonalnośc powinna "
"być dostępna)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aktualizuj ustawienia"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Typ NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Typ NAT nie został zidentyfikowaniy. Jeśli nie wpiszesz \"Adresu URL "
"sprawdzania IP\", nie będzie możliwa detekcja typu NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Bezpośrednie połłączenie z internetem."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Za NAT. Oznacza to że usługa dynamicznego DNS będzie okresowo sprawdzać "
"\"Adres URL sprawdzania IP\" w poszukiwaniu zmian (\"Adres URL sprawdzania IP"
"\" jest wymagany, w przeciwnym razie, zmiany nie będą wykrywane). W razie "
"zmiany adresu IP WAN, może minąć do %(timer)s minut zanim wpis DNS zostanie "
"zaktualizowany."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Ostatnie uaktualnienie"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "O FreedomBox"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1850,13 +1770,56 @@ msgstr "O FreedomBox"
msgid "Status"
msgstr "Stan"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfiguruj Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domena"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Status Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Ostatnie uaktualnienie"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP addresses"
msgid "IP Address"
msgstr "Adresy IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Dostęp"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "nie udało się"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Odmowa dostępu"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "Ostatnie uaktualnienie"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2465,6 +2428,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "O FreedomBox"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2839,6 +2807,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Aktualizuj ustawienia"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2968,10 +2943,6 @@ msgstr "Certyfikaty"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domena"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Status certyfikatu"
@ -3364,22 +3335,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Zaktualizowano maksymalną ilość graczy"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Zaktualizowano ustawienia trybu kreatywnego"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Zaktualizowano ustawienia PVP"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Zaktualizowano ustawienia zniszczeń"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6671,7 +6626,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7811,6 +7766,83 @@ msgstr ""
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Zezwól na Dynamic DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Proszę wskaż adres do uaktualniania URL lub serwera GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Nazwa użytkowniika GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Domena GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Hasło"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Jeśli twój %(box_name)s jest za NATem, nie zapomnij dodać przekazywanie "
#~ "portów: TCP port 80 (HTTP) and TCP port 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Masz wyłączony Javascript. Dynamiczny formularz jest wyłączony a niektóre "
#~ "funkcje pomocnicze mogą nie działać (ale podstawowa funkcjonalnośc "
#~ "powinna być dostępna)."
#~ msgid "NAT type"
#~ msgstr "Typ NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Typ NAT nie został zidentyfikowaniy. Jeśli nie wpiszesz \"Adresu URL "
#~ "sprawdzania IP\", nie będzie możliwa detekcja typu NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Bezpośrednie połłączenie z internetem."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Za NAT. Oznacza to że usługa dynamicznego DNS będzie okresowo sprawdzać "
#~ "\"Adres URL sprawdzania IP\" w poszukiwaniu zmian (\"Adres URL "
#~ "sprawdzania IP\" jest wymagany, w przeciwnym razie, zmiany nie będą "
#~ "wykrywane). W razie zmiany adresu IP WAN, może minąć do %(timer)s minut "
#~ "zanim wpis DNS zostanie zaktualizowany."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Konfiguruj Dynamic DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Status Dynamic DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Zaktualizowano maksymalną ilość graczy"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Zaktualizowano ustawienia trybu kreatywnego"
#~ msgid "PVP configuration updated"
#~ msgstr "Zaktualizowano ustawienia PVP"
#~ msgid "Damage configuration updated"
#~ msgstr "Zaktualizowano ustawienia zniszczeń"
#, fuzzy
#~| msgid "Invalid server name"
#~ msgid "Enter a valid domain"
@ -8173,11 +8205,6 @@ msgstr "Gujarati"
#~ msgstr ""
#~ "Ustawiania Pagekite zostało zakończone. Usługi HTTP i HTTPS są aktywne."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "Ostatnie uaktualnienie"
#~ msgid "Add Remote Location"
#~ msgstr "Dodaj zdalną lokalizację"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-05-08 22:33+0000\n"
"Last-Translator: ssantos <ssantos@web.de>\n"
"Language-Team: Portuguese <https://hosted.weblate.org/projects/freedombox/"
@ -852,7 +852,7 @@ msgid "No passwords currently configured."
msgstr "Atualmente, não existe nenhum arquivo."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -1005,9 +1005,10 @@ msgid "Refresh IP address and domains"
msgstr "Atualizar endereço de IP e domínios"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1184,7 +1185,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Configuração Geral"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1192,13 +1193,13 @@ msgid "Configure"
msgstr "Configurar"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Nome de Domínio"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Nome de domínio inválido"
@ -1519,6 +1520,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1526,7 +1528,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1534,7 +1536,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1545,56 +1547,64 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "Nome de Domínio"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1603,144 +1613,66 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
#, fuzzy
#| msgid "Service Discovery"
msgid "Service Type"
msgstr "Descoberta do Serviço"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1754,14 +1686,57 @@ msgstr ""
msgid "Status"
msgstr "Estado"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
#, fuzzy
#| msgid "Domain Name"
msgid "Domain"
msgstr "Nome de Domínio"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP addresses"
msgid "IP Address"
msgstr "Endereços de IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Aceder"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Conexão recusada"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Applications"
msgid "Already up-to-date"
msgstr "Aplicações"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
@ -2335,6 +2310,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2702,6 +2682,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2828,12 +2815,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
#, fuzzy
#| msgid "Domain Name"
msgid "Domain"
msgstr "Nome de Domínio"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3223,30 +3204,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "Configuração atualizada"
#: plinth/modules/minetest/views.py:55
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "Configuração atualizada"
#: plinth/modules/minetest/views.py:61
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "Configuração atualizada"
#: plinth/modules/minetest/views.py:67
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "Configuração atualizada"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6511,7 +6468,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7587,6 +7544,26 @@ msgstr "%(percentage)s%% concluída"
msgid "Gujarati"
msgstr "Gujarati"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Configuração atualizada"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Configuração atualizada"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "PVP configuration updated"
#~ msgstr "Configuração atualizada"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Damage configuration updated"
#~ msgstr "Configuração atualizada"
#, fuzzy
#~| msgid "Invalid domain name"
#~ msgid "Enter a valid domain"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-29 13:55+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-07 23:55+0000\n"
"Last-Translator: Nikita Epifanov <nikgreens@protonmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/ru/>\n"
@ -870,7 +870,7 @@ msgid "No passwords currently configured."
msgstr "В настоящее время пароли не настроены."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Пароль"
@ -1016,9 +1016,10 @@ msgid "Refresh IP address and domains"
msgstr "Обновите IP-адреса и домены"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1215,7 +1216,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Общие настройки"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1223,13 +1224,13 @@ msgid "Configure"
msgstr "Настроить"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Доменное имя"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Недопустимое имя домена"
@ -1579,6 +1580,7 @@ msgid "Test"
msgstr "Тест"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Результат"
@ -1586,7 +1588,7 @@ msgstr "Результат"
msgid "Diagnostic Test"
msgstr "Диагностический тест"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1597,7 +1599,7 @@ msgstr ""
"в 24 часа) это может стать препятствиям, чтобы найти вас в Интернете. Это "
"так-же может сделать недоступными предоставляемые {box_name} услуги."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1614,15 +1616,35 @@ msgstr ""
"сервер будет назначать DNS-имя на новый IP-адрес, и если кто-то из Интернета "
"запрашивает DNS-имя, они будут получать ответ ваш текущий IP-адрес."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Если вы ищете бесплатный сервер динамического DNS, вы можете найти "
"бесплатный сервис GnuDIP на <a href=\"https://ddns.freedombox.org\" target="
"\"_blank\">ddns.freedombox.org</a> или вы можете найти беслатную службу "
"обновления URL-адреса на <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Клиент динамического DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Динамическое доменное имя"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1632,7 +1654,7 @@ msgstr ""
"использоваться в URL-адресе. Для получения дополнительной информации "
"смотрите примеры обновления URL."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1642,7 +1664,7 @@ msgstr ""
"ваш провайдер не поддерживает протокол GnudIP или поставщик не указан, вы "
"можете использовать URL-адрес обновления вашего провайдера."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1650,18 +1672,18 @@ msgstr ""
"Пожалуйста, не вводите URL здесь (как «https://example.com/»), только имя "
"хоста сервера GnuDIP (как \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "Общее доменное имя для подключения к вашему {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Используйте этот параметр, если ваш провайдер использует самостоятельно "
"подписанные сертификаты."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1669,11 +1691,11 @@ msgstr ""
"Если выбран этот параметр, будет использоваться имя пользователя и пароль "
"для обычной проверки подлинности HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Оставьте это поле пустым, если вы хотите сохранить ваш текущий пароль."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1686,160 +1708,68 @@ msgstr ""
"для определения настоящего IP адреса. URL-адрес должен просто вернуть IP "
"(пример: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Имя пользователя, которое использовалось при создании учетной записи."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "другой URL-адрес обновления"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Включение динамического DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Тип службы"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Адрес сервера GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Недопустимое имя сервера"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Обновление URL-адреса"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Принимать все SSL-сертификаты"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Использовать базовую аутентификацию HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Имя пользователя"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Показать пароль"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL-адрес для поиска публичного IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Использовать IPv6 вместо IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Просьба предоставьте URL-адрес или адрес сервера GnuDIP"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "требуются секреты"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Просьба представить имя пользователя GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Просьба предоставить имя домена GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Введите пароль"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Если вы ищете бесплатный сервер динамического DNS, вы можете найти "
"бесплатный сервис GnuDIP на <a href=\"https://ddns.freedombox.org\" target="
"\"_blank\">ddns.freedombox.org</a> или вы можете найти беслатную службу "
"обновления URL-адреса на <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Если ваш %(box_name)s) подключен за NAT-маршрутизатором, не забудьте "
"добавить перенаправление портов, включая TCP-порт 80 (HTTP) и TCP-порт 443 "
"(HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Вы отключили Javascript. Динамические элементы отключены и некоторые "
"вспомогательные функции могут не работать (но основные функции должны "
"работать)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Обновить настройки"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Тип NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Тип NAT не обнаружен, если вы не предоставляете «IP проверка URL» мы не "
"можем определить тип NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Прямое подключение к Интернету."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Behind NAT. Это означает, что служба динамического DNS будет опрашивать "
"«Публичный IP URL-адреса» для изменения (для этого необходима запись "
"«Публичный IP URL-адреса» - в противном случае не будет обнаружено изменение "
"IP). В случае, если WAN IP меняется, это может занять до %(timer)s минут до "
"тех пор, пока ваша DNS-запись обновляется."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Последнее обновление"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "О проекте"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1853,13 +1783,60 @@ msgstr "О проекте"
msgid "Status"
msgstr "Статус"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Настройка динамического DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Домен"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Состояние динамического DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Последнее обновление"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-адрес"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Доступ"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "сбой"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Нет доступных библиотек."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Имя подключения"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Удаление подключения"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Auto-update"
msgid "Already up-to-date"
msgstr "Автообновление"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2449,6 +2426,11 @@ msgstr "Отправить отзыв"
msgid "Contribute"
msgstr "Помощь проекту"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "О проекте"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2886,6 +2868,13 @@ msgstr "Перейти к %(site)s"
msgid "Delete site %(site)s"
msgstr "Удаление узла %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Обновить настройки"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3029,10 +3018,6 @@ msgstr "Сертификаты"
msgid "Cannot test: No domains are configured."
msgstr "Невозможно провести тестирование: Не настроены домены."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Домен"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Статус сертификата"
@ -3192,7 +3177,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3472,22 +3457,6 @@ msgstr "Адрес"
msgid "Port"
msgstr "Порт"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Максимум игроков обновлен"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Конфигурация творческого режима обновлена"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Конфигурация PVP обновлена"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Конфигурация урона обновлена"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -4717,8 +4686,6 @@ msgid "selected IP method is not supported"
msgstr "выбранный метод IP не поддерживается"
#: plinth/modules/networks/views.py:101
#, fuzzy
#| msgid "Generic"
msgid "generic"
msgstr "универсальный"
@ -5468,7 +5435,7 @@ msgstr "Почтовый клиент"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Использовать только локальный почтовый сервер"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5476,6 +5443,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Если эта функция включена, текстовое поле для ввода данных с сервера "
"удаляется со страницы входа, и пользователи могут читать и отправлять письма "
"только из {box_name}."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5873,10 +5843,8 @@ msgid "Bookmarks"
msgstr "Закладки"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shаarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6115,13 +6083,12 @@ msgid "Software Installation Snapshots"
msgstr "Снапшоты при установке ПО"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Включить или отключить снапшоты до и после установки программного обеспечения"
"Включить или отключить снапшоты до и после каждой установки и обновления "
"программ."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6354,10 +6321,8 @@ msgid "Login"
msgstr "Логин"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Пароль успешно изменён."
msgstr "Выход выполнен успешно."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7150,8 +7115,13 @@ msgid "Frequent feature updates activated."
msgstr "Активированы частые обновления функций."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7205,11 +7175,12 @@ msgid "Authorization Password"
msgstr "Пароль авторизации"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Введите свой текущий пароль, чтобы разрешить изменение учетной записи."
msgstr ""
"Введите пароль пользователя \"{user}\" для авторизации изменений учетной "
"записи."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8312,6 +8283,84 @@ msgstr "%(percentage)s%% завершено"
msgid "Gujarati"
msgstr "Гуджарати"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Включение динамического DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Просьба предоставьте URL-адрес или адрес сервера GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Просьба представить имя пользователя GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Просьба предоставить имя домена GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Введите пароль"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Если ваш %(box_name)s) подключен за NAT-маршрутизатором, не забудьте "
#~ "добавить перенаправление портов, включая TCP-порт 80 (HTTP) и TCP-порт "
#~ "443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Вы отключили Javascript. Динамические элементы отключены и некоторые "
#~ "вспомогательные функции могут не работать (но основные функции должны "
#~ "работать)."
#~ msgid "NAT type"
#~ msgstr "Тип NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Тип NAT не обнаружен, если вы не предоставляете «IP проверка URL» мы не "
#~ "можем определить тип NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Прямое подключение к Интернету."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Behind NAT. Это означает, что служба динамического DNS будет опрашивать "
#~ "«Публичный IP URL-адреса» для изменения (для этого необходима запись "
#~ "«Публичный IP URL-адреса» - в противном случае не будет обнаружено "
#~ "изменение IP). В случае, если WAN IP меняется, это может занять до "
#~ "%(timer)s минут до тех пор, пока ваша DNS-запись обновляется."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Настройка динамического DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Состояние динамического DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Максимум игроков обновлен"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Конфигурация творческого режима обновлена"
#~ msgid "PVP configuration updated"
#~ msgstr "Конфигурация PVP обновлена"
#~ msgid "Damage configuration updated"
#~ msgstr "Конфигурация урона обновлена"
#~ msgid "RoundCube availability"
#~ msgstr "Доступность RoundCube"
@ -9229,9 +9278,6 @@ msgstr "Гуджарати"
#~ "Pagekite setup finished. The HTTP and HTTPS services are activated now."
#~ msgstr "Установка Pagekite завершена. Службы HTTP И HTTPS запущены."
#~ msgid "Auto-update"
#~ msgstr "Автообновление"
#, fuzzy
#~| msgid "Add Remote Repository"
#~ msgid "Add Remote Location"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-04-27 13:32+0000\n"
"Last-Translator: HelaBasa <R45XvezA@protonmail.ch>\n"
"Language-Team: Sinhala <https://hosted.weblate.org/projects/freedombox/"
@ -794,7 +794,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -934,9 +934,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1104,7 +1105,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1112,13 +1113,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1428,6 +1429,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1435,7 +1437,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1443,7 +1445,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1454,54 +1456,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1510,142 +1520,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "පිළිබඳව"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1659,12 +1591,45 @@ msgstr "පිළිබඳව"
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2193,6 +2158,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "පිළිබඳව"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2540,6 +2510,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2665,10 +2642,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3033,22 +3006,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6213,7 +6170,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Slovenian <https://hosted.weblate.org/projects/freedombox/"
@ -895,7 +895,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -1048,9 +1048,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1241,7 +1242,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1249,13 +1250,13 @@ msgid "Configure"
msgstr "Nastavitve"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Ime domene"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Neveljavno ime domene"
@ -1578,6 +1579,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1585,7 +1587,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1593,7 +1595,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1604,56 +1606,64 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "Ime domene"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1662,142 +1672,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1811,12 +1743,47 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Povezava je zavrnjena"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2382,6 +2349,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2729,6 +2701,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2855,10 +2834,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3225,22 +3200,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6451,7 +6410,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak <info@ikmaak.nl>\n"
"Language-Team: Serbian <https://hosted.weblate.org/projects/freedombox/"
@ -851,7 +851,7 @@ msgid "No passwords currently configured."
msgstr "Trenutno nema arhiva."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -1003,9 +1003,10 @@ msgid "Refresh IP address and domains"
msgstr "Osveži listu IP adresa i domena"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1185,7 +1186,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1193,13 +1194,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1509,6 +1510,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1516,7 +1518,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1524,7 +1526,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1535,54 +1537,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1591,142 +1601,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1740,12 +1672,51 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP addresses"
msgid "IP Address"
msgstr "IP adrese"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Pristup"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Veza odbijena"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2280,6 +2251,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2627,6 +2603,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2752,10 +2735,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3122,22 +3101,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6318,7 +6281,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-24 12:53+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-07 23:55+0000\n"
"Last-Translator: Michael Breidenbach <leahc@tutanota.com>\n"
"Language-Team: Swedish <https://hosted.weblate.org/projects/freedombox/"
"freedombox/sv/>\n"
@ -477,11 +477,7 @@ msgid "Existing Backups"
msgstr "Befintliga säkerhetskopior"
#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, fuzzy, python-format
#| msgid ""
#| "The credentials for this repository are stored on your %(box_name)s. <br /"
#| "> To restore a backup on a new %(box_name)s you need the ssh credentials "
#| "and, if chosen, the encryption passphrase."
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s. <br /> "
"To restore a backup on a new %(box_name)s you need the SSH credentials and, "
@ -643,19 +639,14 @@ msgid "How to verify?"
msgstr "Hur man verifierar?"
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
#, fuzzy
#| msgid ""
#| "Run the following command on the SSH host machine. The output should "
#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 "
#| "etc. instead of rsa, by choosing the corresponding file."
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. "
"instead of RSA, by choosing the corresponding file."
msgstr ""
"Kör följande kommando på SSH hostdatorn. Utgången ska matcha ett av de "
"följande alternativen. Du kan också använda dsa, ecdsa, ed25519 etc. "
"istället för rsa, genom att välja motsvarande fil."
"följande alternativen. Du kan också använda DSA, ECDSA, Ed25519 etc. "
"istället för RSA, genom att välja motsvarande fil."
#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
@ -878,7 +869,7 @@ msgid "No passwords currently configured."
msgstr "Inga lösenord har för närvarande konfigurerats."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Lösenord"
@ -1025,9 +1016,10 @@ msgid "Refresh IP address and domains"
msgstr "Uppdatera IP-adress och domäner"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1221,7 +1213,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Allmän Konfiguration"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1229,13 +1221,13 @@ msgid "Configure"
msgstr "Konfigurera"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Domännamn"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Ogiltigt domännamn"
@ -1583,6 +1575,7 @@ msgid "Test"
msgstr "Test"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Resultat"
@ -1590,7 +1583,7 @@ msgstr "Resultat"
msgid "Diagnostic Test"
msgstr "Diagnostiktest"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1601,7 +1594,7 @@ msgstr ""
"kan det vara svårt för andra att hitta dig på nätet. Detta förhindrar andra "
"att nå de tjänster som tillhandahålls av denna {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1618,15 +1611,34 @@ msgstr ""
"servern ditt DNS-namn till din nya IP, och om någon från Internet ber om "
"ditt DNS-namn, kommer hen att få din aktuella IP som svar."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Om du letar efter ett gratis dynamiskt DNS-konto kan du hitta en gratis "
"GnuDIP-tjänst på <a target=\"_blank\">ddns.freedombox.org</a> eller så kan "
"du hitta gratis uppdaterings-URL-baserade tjänster på <a href=\"http://"
"freedns.afraid.org/\" target=\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Klient för Dynamisk DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Dynamiskt Domännamn"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1636,7 +1648,7 @@ msgstr ""
"användas i webbadressen. Se mallar från de olika tjänsteleverantörerna för "
"information om uppdateringsadress."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1646,7 +1658,7 @@ msgstr ""
"stöder protokollet GnuDIP, eller din leverantör saknas i listan, använd din "
"leverantörs uppdateringsadress."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1654,18 +1666,18 @@ msgstr ""
"Skriv inte en full webbadress här (t.ex.: \"https://exempel.com/\"), utan "
"endast värdnamnet för GnuDIP servern (t.ex.: \"exempel.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "Det public domännamnet du vill använda för att nå ditt {box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Använd denna funktion om din tjänsteleverantör använder självsignerade "
"certifikat."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1673,11 +1685,11 @@ msgstr ""
"Om detta alternativ är markerat, kommer ditt användarnamn och lösenord "
"användas för grundläggande HTTP autentisering."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Lämna fältet tomt om du vill behålla ditt nuvarande lösenord."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1690,159 +1702,68 @@ msgstr ""
"verkliga IP. Webbadressen ska helt enkelt returnera det IP som klienten "
"kommer från. (example: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Användarnamnet som användes när konton skapades."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "annan uppdaterings-URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Aktivera Dynamisk DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Servicetype"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP-serveradress"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Du har angett ett ogiltigt servernamn"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Adress för uppdateringar"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Acceptera alla SSL-certifikat"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Använd grundläggande HTTP-autentisering"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Användarnamn"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Visa lösenord"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL för att hitta publik IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Använda IPv6 i stället för IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Ange en uppdateringsadress eller GnuDIP-serveradress"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "hemligheter krävs"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Ange ett användarnamn för GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Ange ett GnuDIP-domän"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Ange ett lösenord"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Om du letar efter ett gratis dynamiskt DNS-konto kan du hitta en gratis "
"GnuDIP-tjänst på <a target=\"_blank\">ddns.freedombox.org</a> eller så kan "
"du hitta gratis uppdaterings-URL-baserade tjänster på <a href=\"http://"
"freedns.afraid.org/\" target=\"_blank\"> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Om din %(box_name)s är ansluten bakom en NAT-router, så glöm inte att lägga "
"till port forwarding för standardportar, såsom TCP port 80 (HTTP) och TCP "
"port 443(HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Du har inaktiverat Javascript. Funktionen dynamiskt formulär är inaktiverat "
"och vissa hjälpfunktioner fungerar inte (men alla huvudfunktioner bör "
"fungera)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Uppdatera inställningar"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-typ"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT-typen har ännu inte upptäckts. Om du inte anger en \"IP-kontrolladress\" "
"kommer vi inte att kunna upptäcka NAT-typen."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direktanslutning till Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"Bakom NAT. Detta betyder att dynamisk DNS-tjänsten kommer att fråga \"URL en "
"upptäckning av publik IP\" om ändringar skett (\"URL för publik IP "
"upptäckning\" behöver därför anges, annars kan inte ändringar av IP adressen "
"upptäckas). Det kan ta upp till %(timer)s minuter tills din DNS-inställning "
"uppdateras."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Senaste uppdatering"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1856,13 +1777,60 @@ msgstr "Om"
msgid "Status"
msgstr "Status"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfigurera Dynamisk DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domän"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamisk DNS (Domän Namns Server) status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Senaste uppdatering"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-adress"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Tillgång"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "misslyckades"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Inga bibliotek tillgängliga."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Anslutningens namn"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Ta bort anslutning"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "Senaste uppdatering"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2448,6 +2416,11 @@ msgstr "Skicka feedback"
msgid "Contribute"
msgstr "Bidrar"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2792,11 +2765,6 @@ msgid "Anonymous Torrents"
msgstr "Anonyma torrenter"
#: plinth/modules/i2p/views.py:16
#, fuzzy
#| msgid ""
#| "I2P lets you browse the Internet and hidden services (eepsites) "
#| "anonymously. For this, your browser, preferably a Tor Browser, needs to "
#| "be configured for a proxy."
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably the Tor Browser, needs to be configured "
@ -2891,6 +2859,13 @@ msgstr "Gå till webbsidan %(site)s"
msgid "Delete site %(site)s"
msgstr "Ta bort webbsida %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Uppdatera inställningar"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3034,10 +3009,6 @@ msgstr "Certifikaterna"
msgid "Cannot test: No domains are configured."
msgstr "Kan inte testa: Inga domäner är konfigurerade."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Domän"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Certifikatets status"
@ -3196,7 +3167,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3470,22 +3441,6 @@ msgstr "Adress"
msgid "Port"
msgstr "Port"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Maximal spelarkonfiguration uppdaterad"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Kreativ-modus konfiguration uppdaterad"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "PVP-konfiguration uppdaterad"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Skadekonfiguration uppdaterad"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -3565,11 +3520,6 @@ msgstr ""
"kryptering och hög ljudkvalitet."
#: plinth/modules/mumble/__init__.py:28
#, fuzzy
#| msgid ""
#| "You can connect to your Mumble server on the regular Mumble port 64738. "
#| "<a href=\"http://mumble.info\">Clients</a> to connect to Mumble from your "
#| "desktop and Android devices are available."
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. <a "
"href=\"http://mumble.info\">Clients</a> to connect to Mumble from your "
@ -4531,20 +4481,16 @@ msgstr ""
"tjänsterna."
#: plinth/modules/networks/templates/router_configuration_content.html:32
#, fuzzy
#| msgid ""
#| "If you don't have control over your router, choose not to configure it. "
#| "To see options to overcome this limitation, choose 'no public address' "
#| "option in Internet connection type selection."
msgid ""
"If you don't have control over your router, choose not to configure it. To "
"see options to overcome this limitation, choose 'I dont have a public IP "
"address' option in <a href=\"/plinth/sys/networks/internet-connection-type/"
"\">Internet connection type selection</a>."
msgstr ""
"Om du inte har kontroll över routern väljer du att inte konfigurera den. Om "
"du vill se alternativ för att övervinna denna begränsning väljer du "
"alternativet \"ingen offentlig adress\" i valet av internetanslutningstyp."
"Om du inte har kontroll över routern kan du välja att inte konfigurera den. "
"Om du vill se alternativ för att övervinna denna begränsning väljer du 'Jag "
"har ingen offentlig IP-adress' i <a href=\"/plinth/sys/networks/internet-"
"connection-type/\">Val av typ av internetanslutning</a>."
#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
@ -5471,7 +5417,7 @@ msgstr "E-postklient"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Använd endast den lokala e-postservern"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5479,6 +5425,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"När det är aktiverad tas textrutan för serverinmatning bort från "
"inloggningssidan och användarna kan endast läsa och skicka e-postmeddelanden "
"från denna {box_name}."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5870,8 +5819,6 @@ msgid "Bookmarks"
msgstr "Bokmärken"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
@ -6112,14 +6059,12 @@ msgid "Software Installation Snapshots"
msgstr "Ögonblicksbilder av programvaru installation"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Aktivera eller inaktivera ögonblicksbilder före och efter "
"programvaruinstallationen"
"programvaruinstallationen."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6354,10 +6299,8 @@ msgid "Login"
msgstr "Logga in"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Lösenordet har ändrats."
msgstr "Du har loggat ut framgångsrikt."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -6857,10 +6800,8 @@ msgstr ""
"BitTorrent inte är anonym."
#: plinth/modules/transmission/__init__.py:27
#, fuzzy
#| msgid "Please do not change the default port of the transmission daemon."
msgid "Please do not change the default port of the Transmission daemon."
msgstr "Vänligen ändra inte standardporten för transmissionsdemonen."
msgstr "Vänligen ändra inte standardporten för Transmission demonen."
#: plinth/modules/transmission/__init__.py:53
#: plinth/modules/transmission/manifest.py:6
@ -6933,10 +6874,8 @@ msgstr ""
#: plinth/modules/upgrades/__init__.py:129
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
#| msgid "Server URL updated"
msgid "Software Update"
msgstr "Serverns URL har uppdaterats"
msgstr "Mjukvaruuppdatering"
#: plinth/modules/upgrades/__init__.py:132
msgid "FreedomBox Updated"
@ -7040,8 +6979,7 @@ msgstr ""
" "
#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Updated"
#, python-format
msgid "%(box_name)s updated"
msgstr "%(box_name)s uppdaterat"
@ -7155,8 +7093,13 @@ msgid "Frequent feature updates activated."
msgstr "Frekventa funktionsuppdateringar aktiverade."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7209,11 +7152,12 @@ msgid "Authorization Password"
msgstr "Auktoriseringslösenord"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Ange ditt nuvarande lösenord för att auktorisera kontomodifieringar."
msgstr ""
"Ange lösenordet för användaren \"{user}\" för att godkänna "
"kontomodifieringar."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -7550,11 +7494,9 @@ msgid "Use this connection to send all outgoing traffic"
msgstr "Använd den här anslutningen för att skicka all utgående trafik"
#: plinth/modules/wireguard/forms.py:107
#, fuzzy
#| msgid ""
#| "Typically checked for a VPN service though which all traffic is sent."
msgid "Typically checked for a VPN service through which all traffic is sent."
msgstr "Vanligtvis kontrolleras för en VPN-tjänst men som all trafik skickas."
msgstr ""
"Vanligtvis kontrolleras för en VPN-tjänst genom vilken all trafik skickas."
#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
@ -8316,6 +8258,84 @@ msgstr "%(percentage)s %% färdigt"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Aktivera Dynamisk DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Ange en uppdateringsadress eller GnuDIP-serveradress"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Ange ett användarnamn för GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Ange ett GnuDIP-domän"
#~ msgid "Please provide a password"
#~ msgstr "Ange ett lösenord"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Om din %(box_name)s är ansluten bakom en NAT-router, så glöm inte att "
#~ "lägga till port forwarding för standardportar, såsom TCP port 80 (HTTP) "
#~ "och TCP port 443(HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Du har inaktiverat Javascript. Funktionen dynamiskt formulär är "
#~ "inaktiverat och vissa hjälpfunktioner fungerar inte (men alla "
#~ "huvudfunktioner bör fungera)."
#~ msgid "NAT type"
#~ msgstr "NAT-typ"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT-typen har ännu inte upptäckts. Om du inte anger en \"IP-kontrolladress"
#~ "\" kommer vi inte att kunna upptäcka NAT-typen."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Direktanslutning till Internet."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "Bakom NAT. Detta betyder att dynamisk DNS-tjänsten kommer att fråga \"URL "
#~ "en upptäckning av publik IP\" om ändringar skett (\"URL för publik IP "
#~ "upptäckning\" behöver därför anges, annars kan inte ändringar av IP "
#~ "adressen upptäckas). Det kan ta upp till %(timer)s minuter tills din DNS-"
#~ "inställning uppdateras."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Konfigurera Dynamisk DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Dynamisk DNS (Domän Namns Server) status"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Maximal spelarkonfiguration uppdaterad"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Kreativ-modus konfiguration uppdaterad"
#~ msgid "PVP configuration updated"
#~ msgstr "PVP-konfiguration uppdaterad"
#~ msgid "Damage configuration updated"
#~ msgstr "Skadekonfiguration uppdaterad"
#~ msgid "RoundCube availability"
#~ msgstr "RoundCube tillgänglighet"
@ -9244,11 +9264,6 @@ msgstr "Gujarati"
#~ msgid "Create a Wiki or Blog"
#~ msgstr "Skapa en wiki eller blogg"
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "Senaste uppdatering"
#, fuzzy
#~| msgid "{box_name} Manual"
#~ msgid "Download Manual"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -793,7 +793,7 @@ msgid "No passwords currently configured."
msgstr ""
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
@ -933,9 +933,10 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1103,7 +1104,7 @@ msgstr ""
msgid "General Configuration"
msgstr ""
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1111,13 +1112,13 @@ msgid "Configure"
msgstr ""
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr ""
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr ""
@ -1427,6 +1428,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1434,7 +1436,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1442,7 +1444,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1453,54 +1455,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1509,142 +1519,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1658,12 +1590,45 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
msgid "IP Address"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
msgid "Success"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
msgid "No status available."
msgstr ""
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
msgid "Connection timed out"
msgstr ""
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2192,6 +2157,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2539,6 +2509,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2664,10 +2641,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3032,22 +3005,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6212,7 +6169,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-05-17 18:31+0000\n"
"Last-Translator: chilumula vamshi krishna <kannakrishna1625@gmail.com>\n"
"Language-Team: Telugu <https://hosted.weblate.org/projects/freedombox/"
@ -851,7 +851,7 @@ msgid "No passwords currently configured."
msgstr "ప్రస్తుతం ఏ షేర్లు ఏర్పాటు చేయబడలేదు."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "రహస్యపదం"
@ -1010,9 +1010,10 @@ msgid "Refresh IP address and domains"
msgstr "IP చిరునామా మరియు డొమైన్‌లను రిఫ్రెష్ చేయండి"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1210,7 +1211,7 @@ msgstr ""
msgid "General Configuration"
msgstr "సాధారణ ఆకృతీకరణ"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1218,13 +1219,13 @@ msgid "Configure"
msgstr "ఆకృతీకరణ"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "డొమైను పేరు"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "డొమైన్ పేరు చెల్లదు"
@ -1569,6 +1570,7 @@ msgid "Test"
msgstr "పరీక్ష"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "ఫలితం"
@ -1576,7 +1578,7 @@ msgstr "ఫలితం"
msgid "Diagnostic Test"
msgstr "లక్షణాల పరీక్ష"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1587,7 +1589,7 @@ msgstr ""
"అప్పుడు ఇతరులు అంతర్జాలంలో మిమల్ని కనుగొనడానికి కష్టం ఆవతుంది. అప్పుడు వారు ఈ {box_name} "
"అందించే సేవలను కనుగోనలేరు."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1603,17 +1605,37 @@ msgstr ""
"అనుమతిస్తుంది. తరువాత, సర్వర్ కొత్త IP మీ DNS పేరు కేటాయిస్తుంది, మరియు ఇంటర్నెట్ నుండి ఎవరైనా మీ "
"DNS పేరు అడుగుతాడు ఉంటే, వారు మీ ప్రస్తుత ఐ.పీ. చిరునామాతో సమాధానం పొందుతారు."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"మీరు ఒక ఉచిత డైనమిక్ DNS ఖాతా కోసం చూస్తున్న ఉంటే, మీరు <a href='http://gnudip."
"datasystems24.net' target='_blank'> 1gnudip.datasystems24.net </a> 2 వద్ద ఉచిత "
"GnuDIP సేవ కనుగొనేందుకు ఉండవచ్చు లేదా మీరు <a href='http://freedns.afraid.org/' "
"target='_blank'> 3 freedns.afraid.org </a> 4 ఉచిత నవీకరణ URL ఆధారిత సేవలు "
"కనుగొనవచ్చు."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "గతిక DNS కక్షిదారు"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "డొమైను పేరు"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1622,7 +1644,7 @@ msgstr ""
"&lt;వాడుకరి&gt;, &lt;పాస్&gt;, &lt;ఎల్.పి&gt;, &lt;డోమైన్&gt; అనే వేరియబల్స్ మీ యూ.ఆర్.ఎల్ తో "
"వాడవచ్చును. వివరాల కోసం మీ యూ.ఆర్.ఎల్ నవీనికరణ టెంప్లేట్ ను చూడండి."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1631,7 +1653,7 @@ msgstr ""
"దయ చేసి మీ నవీకరణ ప్రోటొకాల్ ను ఎంచుకోండి. మీ ప్రదాత గ్నూడిప్ ప్రోటొకాల్ కు సహకరించకపోయిన లేదా మీ ప్రదాత "
"కింద జాబితా లో లేకపోయినా మీ ప్రదాత యొక్క నవీకరణ యూ.ఆర్.ఎల్ ను వాడగలరు."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1639,16 +1661,16 @@ msgstr ""
"దయ చేసి యూ.ఆర్.ఎల్ (ఉ.దా \"ఏచ్.టి.టి.పి.ఎస్://ఎగ్స్యాంపల్.కామ్\") ను తెలుపవద్దు కానీ కేవలం అతిధ్య "
"పేరును (ఉ.దా \"ఎగ్స్యాంపల్.కామ్\") మాత్రమే తెలుపండి."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "మీ {box_name} ను చేరుకోవడానికి మీరు ఉపయోగించాలని కోరుకుంటున్న మీ పబ్లిక్ డొమైన్ పేరు."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "మీ అంతర్జాల సేవ ప్రదాత ఒకవేళ స్వీయ సంతక సర్టిఫికేట్లు ఉపయోగిస్తుంటే ఈ ఎంపికను ఉపయోగించండి."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1656,11 +1678,11 @@ msgstr ""
"ఈ ఎంపికను ఎంపిక చేస్తే, మీ వాడుకరి పేరు మరియు పాస్‌వర్డ్ హెచ్.టి.టి.పి ప్రాథమిక ప్రమాణీకరణ కోసం "
"ఉపయోగించబడుతుంది."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "మీరు మీ ప్రస్తుత పాస్‌వర్డ్ ను ఉంచుకోవాలనుకుంటే ఈ ఫీల్డ్ ఖాళీగా వదిలివేయండి."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1678,167 +1700,66 @@ msgstr ""
"ఎక్కడ నుండి వస్తుంది అనే ఐపీ మాత్రమే ఈ యూ.ఆర్.ఎల్ తిరిగివ్వాలి (ఉ.దా: ఏచ్.టి.టి.పి.://మైఐపి."
"డాటాసిస్టమ్స్24.దే)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "మీరు మీ ఖాతాను సృష్టించినప్పుడు వాడిన వాడుకరి పేరు ."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "Update URL"
msgid "other update URL"
msgid "Other update URL"
msgstr "URL నవీకరణ"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "చురుకైన DNS అమలుచెయ్యి"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "సేవా రకం"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnudIP సేవకం చిరునామా"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "సేవిక పేరు చెలదు"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL నవీకరణ"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "అన్ని ఎస్.ఎస్.ఎల్ సర్టిఫికెట్లు అంగీకరించు"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "HTTP ప్రాథమిక ప్రమాణీకరణ ఉపయోగించు"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "వినియోగి పేరు"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "రహస్యపదం కనబర్చు"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "పబ్లిక్ IP చూసేందుకు URL"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "దయచేసి నవీకరణ యూ.ఆర్.ఎల్ ను లేక ఒక GnuDIP సేవిక ఐ.పీ చిరునామాను అందించండి"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "దయచేసి గ్నూ.డిప్ వాడుకరిపేరుని అందించండి"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "గ్నూ.డిప్ డోమైన్ పేరును దయచేసి అందించండి"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "ఒక రహస్యపదం అందించండి దయచేసి"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"మీరు ఒక ఉచిత డైనమిక్ DNS ఖాతా కోసం చూస్తున్న ఉంటే, మీరు <a href='http://gnudip."
"datasystems24.net' target='_blank'> 1gnudip.datasystems24.net </a> 2 వద్ద ఉచిత "
"GnuDIP సేవ కనుగొనేందుకు ఉండవచ్చు లేదా మీరు <a href='http://freedns.afraid.org/' "
"target='_blank'> 3 freedns.afraid.org </a> 4 ఉచిత నవీకరణ URL ఆధారిత సేవలు "
"కనుగొనవచ్చు."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"మీ %(box_name)s కనుక ఎన్.ఏ.టి రూటర్ కి అనుసంధానం చేయబడి ఉంటే, టిసి.పి పోర్టు ౮౦ (హెచ్.టి.టి."
"పి) మరియి టిసి.పి పోర్టు ౪౪౩ (హెచ్.టి.టి.పి.ఎస్) ప్రామాణిక పోర్ట్‌లకు పోర్ట్ ఫార్వర్డింగ్ను జోడించడం "
"మర్చిపోకండి."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"మీరు జావాస్క్రిప్ట్ ను పని చేయకుండా చేశారు. చలనశిల ఫొరము స్థితి మరియు కొన్ని సహాయక కార్యక్రమాలు పని "
"చేయవు (కానీ ప్రధాన కార్యాచరణ పని చేయాలి)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "అమరికను నవీకరించు"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT రకం"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"ఎన్.ఏ.టి రకము ఇంకా గుర్తింపబడలేదు. మీరు ఐ.పి తనిఖీ యూ.ఆర్.ఎల్ ఇవ్వకపోతే మేము ఎన్.ఏ.టి రకమును "
"గుర్తింపము."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "అంతర్జాలానికి నేరు బంధం."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, fuzzy, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"NAT వెనుక. ఈ డైనమిక్ DNS సేవ మార్పులకు అనుగుణంగా \"పబ్లిక్ IP చూసేందుకు ను"
"\" ( \"చూసేందుకు URL పబ్లిక్ IP\" ఎంట్రీ ఈ అవసరమవుతుంది, లేకపోతే ఐపీ మార్పులు కనుగొనబడింది "
"కాదు) ఎన్నిక చేస్తాము. కేసు పాలిపోయిన ఐపీ మార్పులు, మీ DNS ఎంట్రీ నవీకరించబడింది వరకు% వరకు "
"ఉండవచ్చు %(టైమర్)s 1 నిమిషాల."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "చివరి నవీకరణ"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "గురించి"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1852,13 +1773,60 @@ msgstr "గురించి"
msgid "Status"
msgstr "స్థితి"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "చురుకైనDNS ఆకృతీకరించు"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "డొమైన్"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "చలనశీల డి.ఎన్.ఎస్ స్థితి"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "చివరి నవీకరణ"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP చిరునామా"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access Point"
msgid "Success"
msgstr "ప్రాప్తి సూచి"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "Setup failed."
msgid "Failed"
msgstr "అమరక విఫలమైంది."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "Tor relay port available"
msgid "No status available."
msgstr "టార్ రిలే పోర్ట్ అందుబాటులో ఉంది"
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "అనుసంధానం పేరు"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "అనుసంధానం తొలగించండి"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "చివరి నవీకరణ"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2472,6 +2440,11 @@ msgstr "అభిప్రాయాన్ని సమర్పించండ
msgid "Contribute"
msgstr "దోహదం చేయండి"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "గురించి"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2893,6 +2866,13 @@ msgstr "ప్రదేశం కు వెళ్ళండి %(site)s"
msgid "Delete site %(site)s"
msgstr "ప్రదేశం తొలగించు %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "అమరికను నవీకరించు"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3036,10 +3016,6 @@ msgstr "యోగ్యతాపత్రాలు"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "డొమైన్"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "యోగ్యతాపత్రం స్థితి"
@ -3452,30 +3428,6 @@ msgstr "చిరునామా"
msgid "Port"
msgstr "పోర్టు"
#: plinth/modules/minetest/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
#: plinth/modules/minetest/views.py:55
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
#: plinth/modules/minetest/views.py:61
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
#: plinth/modules/minetest/views.py:67
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -7087,7 +7039,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -8230,6 +8182,90 @@ msgstr "%(percentage)s %% పూర్తి"
msgid "Gujarati"
msgstr "గుజరాతీ"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "చురుకైన DNS అమలుచెయ్యి"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "దయచేసి నవీకరణ యూ.ఆర్.ఎల్ ను లేక ఒక GnuDIP సేవిక ఐ.పీ చిరునామాను అందించండి"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "దయచేసి గ్నూ.డిప్ వాడుకరిపేరుని అందించండి"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "గ్నూ.డిప్ డోమైన్ పేరును దయచేసి అందించండి"
#~ msgid "Please provide a password"
#~ msgstr "ఒక రహస్యపదం అందించండి దయచేసి"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "మీ %(box_name)s కనుక ఎన్.ఏ.టి రూటర్ కి అనుసంధానం చేయబడి ఉంటే, టిసి.పి పోర్టు ౮౦ (హెచ్.టి."
#~ "టి.పి) మరియి టిసి.పి పోర్టు ౪౪౩ (హెచ్.టి.టి.పి.ఎస్) ప్రామాణిక పోర్ట్‌లకు పోర్ట్ ఫార్వర్డింగ్ను జోడించడం "
#~ "మర్చిపోకండి."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "మీరు జావాస్క్రిప్ట్ ను పని చేయకుండా చేశారు. చలనశిల ఫొరము స్థితి మరియు కొన్ని సహాయక కార్యక్రమాలు పని "
#~ "చేయవు (కానీ ప్రధాన కార్యాచరణ పని చేయాలి)."
#~ msgid "NAT type"
#~ msgstr "NAT రకం"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "ఎన్.ఏ.టి రకము ఇంకా గుర్తింపబడలేదు. మీరు ఐ.పి తనిఖీ యూ.ఆర్.ఎల్ ఇవ్వకపోతే మేము ఎన్.ఏ.టి "
#~ "రకమును గుర్తింపము."
#~ msgid "Direct connection to the Internet."
#~ msgstr "అంతర్జాలానికి నేరు బంధం."
#, fuzzy, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "NAT వెనుక. ఈ డైనమిక్ DNS సేవ మార్పులకు అనుగుణంగా \"పబ్లిక్ IP చూసేందుకు ను"
#~ "\" ( \"చూసేందుకు URL పబ్లిక్ IP\" ఎంట్రీ ఈ అవసరమవుతుంది, లేకపోతే ఐపీ మార్పులు "
#~ "కనుగొనబడింది కాదు) ఎన్నిక చేస్తాము. కేసు పాలిపోయిన ఐపీ మార్పులు, మీ DNS ఎంట్రీ నవీకరించబడింది వరకు"
#~ "% వరకు ఉండవచ్చు %(టైమర్)s 1 నిమిషాల."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "చురుకైనDNS ఆకృతీకరించు"
#~ msgid "Dynamic DNS Status"
#~ msgstr "చలనశీల డి.ఎన్.ఎస్ స్థితి"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Maximum players configuration updated"
#~ msgstr "ఆకృతీకరణ నవీకరించబడింది"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Creative mode configuration updated"
#~ msgstr "ఆకృతీకరణ నవీకరించబడింది"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "PVP configuration updated"
#~ msgstr "ఆకృతీకరణ నవీకరించబడింది"
#, fuzzy
#~| msgid "Configuration updated"
#~ msgid "Damage configuration updated"
#~ msgstr "ఆకృతీకరణ నవీకరించబడింది"
#, fuzzy
#~| msgid "Available Domains"
#~ msgid "RoundCube availability"
@ -9089,11 +9125,6 @@ msgstr "గుజరాతీ"
#~ msgstr ""
#~ "పేజెకైట్ ఏర్పాటు పూర్తి అయినది. ఏచ్.టి.టి.పి మరియు ఏచ్.టి.టి.పి.ఎస్ సేవలు క్రియాశీలకంగా చేయబడ్డాయి."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "చివరి నవీకరణ"
#, fuzzy
#~| msgid "Create User"
#~ msgid "Add Remote Location"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-13 18:58+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-02 08:55+0000\n"
"Last-Translator: Burak Yavuz <hitowerdigit@hotmail.com>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/freedombox/"
"freedombox/tr/>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.10.1\n"
"X-Generator: Weblate 4.11-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@ -859,7 +859,7 @@ msgid "No passwords currently configured."
msgstr "Şu anda yapılandırılmış parolalar yok."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Parola"
@ -1006,9 +1006,10 @@ msgid "Refresh IP address and domains"
msgstr "IP adresi ve etki alanlarını yenile"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1205,7 +1206,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Genel Yapılandırma"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1213,13 +1214,13 @@ msgid "Configure"
msgstr "Yapılandır"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Etki Alanı Adı"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Geçersiz etki alanı adı"
@ -1567,6 +1568,7 @@ msgid "Test"
msgstr "Deneme"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Sonuç"
@ -1574,7 +1576,7 @@ msgstr "Sonuç"
msgid "Diagnostic Test"
msgstr "Tanı Denemesi"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1586,7 +1588,7 @@ msgstr ""
"başkalarının bu {box_name} tarafından sağlanan hizmetleri bulmasını "
"engelleyecektir."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1603,15 +1605,35 @@ msgstr ""
"sunucu DNS adınızı yeni IP'ye atayacaktır ve İnternet'ten birisi sizin DNS "
"adınızı sorarsa, şu anki IP adresinizle bir yanıt alacaktır."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Eğer ücretsiz bir değişken DNS hesabı arıyorsanız, ücretsiz bir GnuDIP "
"hizmetini <a href=\"https://ddns.freedombox.org\" target=\"_blank\">ddns."
"freedombox.org</a> adresinde veya ücretsiz URL güncelleme tabanlı hizmetleri "
"<a href=\"https://freedns.afraid.org/\" target=\"_blank\">freedns.afraid."
"org</a> adresinde bulabilirsiniz."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Değişken DNS İstemcisi"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Değişken Etki Alanı Adı"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1621,7 +1643,7 @@ msgstr ""
"içinde kullanılabilir. Ayrıntılar için örnek sağlayıcıların URL güncelleme "
"şablonlarına bakın."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1631,7 +1653,7 @@ msgstr ""
"GnuDIP protokolünü desteklemiyorsa veya sağlayıcınız listede yoksa, "
"sağlayıcınızın güncelleme URL'sini kullanabilirsiniz."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1639,19 +1661,19 @@ msgstr ""
"Lütfen buraya bir URL (\"https://ornek.com/\" gibi) girmeyin, sadece GnuDIP "
"sunucusunun anamakine adını (\"ornek.com\" gibi) girin."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"{box_name} cihazınıza ulaşmak için kullanmak istediğiniz herkese açık etki "
"alanı adı."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Sağlayıcınız kendinden imzalı sertifikalar kullanıyorsa bu seçeneği kullanın."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1659,11 +1681,11 @@ msgstr ""
"Eğer bu seçenek seçilirse, kullanıcı adınız ve parolanız HTTP temel kimlik "
"doğrulaması için kullanılacaktır."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Şu anki parolanızı korumak istiyorsanız bu alanı boş bırakın."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1676,160 +1698,68 @@ msgstr ""
"belirlemek için kullanılır. URL, istemcinin geldiği IP'yi döndürmelidir "
"(örnek: https://ddns.freedombox.org/ip/)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Hesap oluşturulduğunda kullanılan kullanıcı adı."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "diğer güncelleme URL'si"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Değişken DNS'i etkinleştir"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Hizmet Türü"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP Sunucu Adresi"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Geçersiz sunucu adı"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Güncelleme URL'si"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Tüm SSL sertifikalarını kabul et"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "HTTP temel kimlik doğrulamasını kullan"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Kullanıcı adı"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Parolayı göster"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "Dış IP'yi aramak için URL"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "IPv4 yerine IPv6 kullan"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Lütfen bir güncelleme URL'si ya da bir GnuDIP sunucu adresi girin"
#: plinth/modules/dynamicdns/forms.py:123
#, fuzzy
#| msgid "secrets required"
msgid "This field is required."
msgstr "gizli anahtarlar gerekli"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Lütfen bir GnuDIP kullanıcı adı girin"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Lütfen bir GnuDIP etki alanı adı girin"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Lütfen bir parola girin"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Eğer ücretsiz bir değişken DNS hesabı arıyorsanız, ücretsiz bir GnuDIP "
"hizmetini <a href=\"https://ddns.freedombox.org\" target=\"_blank\">ddns."
"freedombox.org</a> adresinde veya ücretsiz URL güncelleme tabanlı hizmetleri "
"<a href=\"https://freedns.afraid.org/\" target=\"_blank\">freedns.afraid."
"org</a> adresinde bulabilirsiniz."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Eğer %(box_name)s cihazınız bir NAT yönlendiricisinin arkasına bağlıysa, TCP "
"bağlantı noktası 80 (HTTP) ve TCP bağlantı noktası 443 (HTTPS) dahil olmak "
"üzere standart bağlantı noktaları için bağlantı noktası yönlendirme eklemeyi "
"unutmayın."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Javascript'i etkisizleştirdiniz. Değişken biçim kipi etkisizleştirildi ve "
"bazı yardımcı işlevler çalışmayabilir (ancak ana işlevsellik çalışmalıdır)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Ayarlamayı güncelle"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT türü"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"NAT türü henüz algılanmadı. Eğer bir \"IP Denetim URL'si\" girmezseniz, bir "
"NAT türü saptayamayacağız."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "İnternet'e doğrudan bağlantı."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"NAT arkasında. Bu, Değişken DNS hizmetinin değişiklikler için \"Dış IP'yi "
"aramak için URL\"yi yoklayacağı anlamına gelir (bunun için \"Dış IP'yi "
"aramak için URL\" girişi gereklidir, aksi takdirde IP değişiklikleri "
"algılanmayacaktır). WAN IP'sinin değişmesi durumunda, DNS girişinizin "
"güncellenmesi %(timer)s dakika kadar sürebilir."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Son güncelleme"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Hakkında"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1843,13 +1773,60 @@ msgstr "Hakkında"
msgid "Status"
msgstr "Durum"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Değişken DNS'i Yapılandır"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Etki Alanı"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Değişken DNS Durumu"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Son güncelleme"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP adresi"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Erişim"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "başarısız"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Kullanılabilir kütüphane yok."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Bağlantı Adı"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Bağlantıyı sil"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "Son güncelleme"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2445,6 +2422,11 @@ msgstr "Geri Bildirim Gönder"
msgid "Contribute"
msgstr "Katkıda Bulun"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Hakkında"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2882,6 +2864,13 @@ msgstr "%(site)s sitesine git"
msgid "Delete site %(site)s"
msgstr "%(site)s sitesini sil"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Ayarlamayı güncelle"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -3028,10 +3017,6 @@ msgstr "Sertifikalar"
msgid "Cannot test: No domains are configured."
msgstr "Denenemiyor: Hiçbir etki alanı yapılandırılmamış."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Etki Alanı"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Sertifika Durumu"
@ -3191,7 +3176,7 @@ msgstr "Element"
#: plinth/modules/matrixsynapse/manifest.py:48
msgid "FluffyChat"
msgstr ""
msgstr "FluffyChat"
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
#: plinth/modules/snapshot/templates/snapshot.html:12
@ -3471,22 +3456,6 @@ msgstr "Adres"
msgid "Port"
msgstr "Bağlantı noktası"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "En fazla oyuncu yapılandırması güncellendi"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Yaratıcı kipi yapılandırması güncellendi"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "PVP yapılandırması güncellendi"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Hasar yapılandırması güncellendi"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5460,7 +5429,7 @@ msgstr "E-posta İstemcisi"
#: plinth/modules/roundcube/forms.py:16
msgid "Use only the local mail server"
msgstr ""
msgstr "Sadece yerel posta sunucusunu kullan"
#: plinth/modules/roundcube/forms.py:17
#, python-brace-format
@ -5468,6 +5437,9 @@ msgid ""
"When enabled, text box for server input is removed from login page and users "
"can only read and send mails from this {box_name}."
msgstr ""
"Etkinleştirildiğinde, sunucu girişi için metin kutusu oturum açma "
"sayfasından kaldırılır ve kullanıcılar postaları sadece bu {box_name} "
"cihazından okuyabilir ve gönderebilir."
#: plinth/modules/samba/__init__.py:27
msgid ""
@ -5863,10 +5835,8 @@ msgid "Bookmarks"
msgstr "Yer İşaretleri"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -6109,14 +6079,12 @@ msgid "Software Installation Snapshots"
msgstr "Yazılım Kurulum Anlık Görüntüleri"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr ""
"Yazılım kurulumundan önce ve sonra anlık görüntüleri etkinleştirin veya "
"etkisizleştirin."
"Her yazılım kurulumundan ve güncellemesinden önce ve sonra anlık görüntüleri "
"etkinleştirin veya etkisizleştirin."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -6352,10 +6320,8 @@ msgid "Login"
msgstr "Oturum aç"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Parola başarılı olarak değiştirildi."
msgstr "Başarılı olarak oturumu kapatıldı."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -7151,8 +7117,13 @@ msgid "Frequent feature updates activated."
msgstr "Sık yapılan özellik güncellemeleri etkinleştirildi."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7206,11 +7177,12 @@ msgid "Authorization Password"
msgstr "Yetkilendirme Parolası"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Hesap değişikliklerini yetkilendirmek için şu anki parolanızı girin."
msgstr ""
"Hesap değişikliklerini yetkilendirmek için \"{user}\" kullanıcısının "
"parolasını girin."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -8306,6 +8278,85 @@ msgstr "%%%(percentage)s tamamlandı"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Değişken DNS'i etkinleştir"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Lütfen bir güncelleme URL'si ya da bir GnuDIP sunucu adresi girin"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Lütfen bir GnuDIP kullanıcı adı girin"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Lütfen bir GnuDIP etki alanı adı girin"
#~ msgid "Please provide a password"
#~ msgstr "Lütfen bir parola girin"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Eğer %(box_name)s cihazınız bir NAT yönlendiricisinin arkasına bağlıysa, "
#~ "TCP bağlantı noktası 80 (HTTP) ve TCP bağlantı noktası 443 (HTTPS) dahil "
#~ "olmak üzere standart bağlantı noktaları için bağlantı noktası yönlendirme "
#~ "eklemeyi unutmayın."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Javascript'i etkisizleştirdiniz. Değişken biçim kipi etkisizleştirildi ve "
#~ "bazı yardımcı işlevler çalışmayabilir (ancak ana işlevsellik "
#~ "çalışmalıdır)."
#~ msgid "NAT type"
#~ msgstr "NAT türü"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "NAT türü henüz algılanmadı. Eğer bir \"IP Denetim URL'si\" girmezseniz, "
#~ "bir NAT türü saptayamayacağız."
#~ msgid "Direct connection to the Internet."
#~ msgstr "İnternet'e doğrudan bağlantı."
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "NAT arkasında. Bu, Değişken DNS hizmetinin değişiklikler için \"Dış IP'yi "
#~ "aramak için URL\"yi yoklayacağı anlamına gelir (bunun için \"Dış IP'yi "
#~ "aramak için URL\" girişi gereklidir, aksi takdirde IP değişiklikleri "
#~ "algılanmayacaktır). WAN IP'sinin değişmesi durumunda, DNS girişinizin "
#~ "güncellenmesi %(timer)s dakika kadar sürebilir."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Değişken DNS'i Yapılandır"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Değişken DNS Durumu"
#~ msgid "Maximum players configuration updated"
#~ msgstr "En fazla oyuncu yapılandırması güncellendi"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Yaratıcı kipi yapılandırması güncellendi"
#~ msgid "PVP configuration updated"
#~ msgstr "PVP yapılandırması güncellendi"
#~ msgid "Damage configuration updated"
#~ msgstr "Hasar yapılandırması güncellendi"
#~ msgid "RoundCube availability"
#~ msgstr "RoundCube kullanılabilirliği"
@ -9236,11 +9287,6 @@ msgstr "Gujarati"
#~ "Pagekite kurulumu tamamlanmıştır. HTTP ve HTTPS servisleri artık "
#~ "etkinleştirilmiştir."
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "Son güncelleme"
#~ msgid "Add Remote Location"
#~ msgstr "Uzak Konum Ekle"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-29 13:55+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-07 23:55+0000\n"
"Last-Translator: Andrij Mizyk <andmizyk@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/uk/>\n"
@ -864,7 +864,7 @@ msgid "No passwords currently configured."
msgstr "Не налаштовано жодного пароля."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Пароль"
@ -1010,9 +1010,10 @@ msgid "Refresh IP address and domains"
msgstr "Оновити IP-адреси і домени"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1209,7 +1210,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Загальні налаштування"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1217,13 +1218,13 @@ msgid "Configure"
msgstr "Налаштування"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Доменна назва"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Неправильна доменна назва"
@ -1568,6 +1569,7 @@ msgid "Test"
msgstr "Тест"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Результат"
@ -1575,7 +1577,7 @@ msgstr "Результат"
msgid "Diagnostic Test"
msgstr "Тест діагностики"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1586,7 +1588,7 @@ msgstr ""
"кожних 24год.), то іншим може бути важко знайти Вас в Інтернеті. Це "
"перешкоджатиме іншим пошук сервісів, що надаються цим {box_name}."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1597,29 +1599,37 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Клієнт динамічної DNS"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Динамічна доменна назва"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1627,19 +1637,19 @@ msgstr ""
"Будь ласка, не вводьте тут URL-адресу (як «https://example.com/»), а лише "
"назву компʼютера для сервера GnuDIP (як-от «example.com»)."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Публічна назва домену, яку Ви бажаєте використовувати для входу на свій "
"{box_name}."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Використовуйте цю опцію, якщо Ваш провайдер використовує власні сертифікати."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1647,11 +1657,11 @@ msgstr ""
"Якщо вибрано цю опцію, Ваше імʼя користувача і пароль використовуватиметься "
"для основної автентифікації HTTP."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Залишіть це поле порожнім, якщо хочете зберегти поточний пароль."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1660,149 +1670,66 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Імʼя користувача, яке використовуватиметься після створення обліківки."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "інша URL оновлення"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Дозволити динамічну DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Тип сервісу"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Адреса сервера GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Невірна назва сервера"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "Оновити URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Приймати всі SSL-сертифікати"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Використовувати основну автентифікацію HTTP"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Ім’я користувача"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Показати пароль"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL для пошуку публічної IP"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Використовувати IPv6 замість IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Надайте URL оновлення або адресу сервера GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Надайте імʼя користувача GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Надайте назву домену GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Надайте пароль"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Якщо Ваш %(box_name)s підʼєднано до маршрутизатора NAT, то не забудьте "
"додати перенаправлення для стандартних портів, включаючи TCP-порт 80 (HTTP) "
"і TCP-порт 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"У Вас вимкнено Javascript. Режим динамічної форми вимкнено і деякі допоміжні "
"функції можуть не працювати (але основна функціональність повинна працювати)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Оновити налаштування"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Тип NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Тип NAT поки що не виявлено. Якщо Ви не надали «URL перевірки IP», ми не "
"виявлятимемо тип NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Пряме підʼєднання до Інтернету."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Востаннє оновлено"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Про FreedomBox"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1816,13 +1743,60 @@ msgstr "Про FreedomBox"
msgid "Status"
msgstr "Стан"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Налаштувати динамічну DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Домен"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Стан динамічної DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "Востаннє оновлено"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP-адреса"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Доступ"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "невдало"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Нема доступних бібліотек."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "Назва зʼєднання"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "Видалити зʼєднання"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Enable auto-update"
msgid "Already up-to-date"
msgstr "Дозволити автооновлення"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2386,6 +2360,11 @@ msgstr "Надіслати відгук"
msgid "Contribute"
msgstr "Співпрацювати"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Про FreedomBox"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2769,6 +2748,13 @@ msgstr "Перейти на сайт %(site)s"
msgid "Delete site %(site)s"
msgstr "Видалити сайт %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Оновити налаштування"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2901,10 +2887,6 @@ msgstr "Сертифікати"
msgid "Cannot test: No domains are configured."
msgstr "Тестування не можливе: Нема налаштованих доменів."
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "Домен"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "Стан сертифікату"
@ -3276,22 +3258,6 @@ msgstr "Адреса"
msgid "Port"
msgstr "Порт"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "Конфіґурацію кількості гравців оновлено"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "Конфіґурацію креативного режиму оновлено"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "Конфіґурацію PVP оновлено"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "Конфіґурацію пошкоджень оновлено"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5446,10 +5412,8 @@ msgid "Bookmarks"
msgstr "Закладки"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -5677,12 +5641,12 @@ msgid "Software Installation Snapshots"
msgstr "Зрізи встановлення ПЗ"
#: plinth/modules/snapshot/forms.py:27
#, fuzzy
#| msgid "Enable or disable snapshots before and after software installation"
msgid ""
"Enable or disable snapshots before and after each software installation and "
"update."
msgstr "Дозволити або заборонити зрізи перед і після встановлення програм"
msgstr ""
"Дозволити або заборонити зрізи перед і після кожного встановлення програм і "
"оновлень."
#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
@ -5902,10 +5866,8 @@ msgid "Login"
msgstr "Вхід"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "Пароль змінено успішно."
msgstr "Вийшли успішно."
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -6630,8 +6592,13 @@ msgid "Frequent feature updates activated."
msgstr "Оновлення частих можливостей активовано."
#: plinth/modules/users/__init__.py:29
#, fuzzy
#| msgid ""
#| "Create and managed user accounts. These accounts serve as centralized "
#| "authentication mechanism for most apps. Some apps further require a user "
#| "account to be part of a group to authorize the user to access the app."
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -6684,11 +6651,11 @@ msgid "Authorization Password"
msgstr "Пароль для авторизації"
#: plinth/modules/users/forms.py:84
#, fuzzy, python-brace-format
#| msgid "Enter your current password to authorize account modifications."
#, python-brace-format
msgid ""
"Enter the password for user \"{user}\" to authorize account modifications."
msgstr "Уведіть свій поточний пароль для авторизування змін обліківки."
msgstr ""
"Уведіть пароль для користувача \"{user}\", щоб авторизувати зміни обліківки."
#: plinth/modules/users/forms.py:93
msgid "Invalid password."
@ -7712,6 +7679,70 @@ msgstr "%(percentage)s%% завершено"
msgid "Gujarati"
msgstr "Gujarati"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Дозволити динамічну DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Надайте URL оновлення або адресу сервера GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Надайте імʼя користувача GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Надайте назву домену GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Надайте пароль"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Якщо Ваш %(box_name)s підʼєднано до маршрутизатора NAT, то не забудьте "
#~ "додати перенаправлення для стандартних портів, включаючи TCP-порт 80 "
#~ "(HTTP) і TCP-порт 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "У Вас вимкнено Javascript. Режим динамічної форми вимкнено і деякі "
#~ "допоміжні функції можуть не працювати (але основна функціональність "
#~ "повинна працювати)."
#~ msgid "NAT type"
#~ msgstr "Тип NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Тип NAT поки що не виявлено. Якщо Ви не надали «URL перевірки IP», ми не "
#~ "виявлятимемо тип NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Пряме підʼєднання до Інтернету."
#~ msgid "Configure Dynamic DNS"
#~ msgstr "Налаштувати динамічну DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "Стан динамічної DNS"
#~ msgid "Maximum players configuration updated"
#~ msgstr "Конфіґурацію кількості гравців оновлено"
#~ msgid "Creative mode configuration updated"
#~ msgstr "Конфіґурацію креативного режиму оновлено"
#~ msgid "PVP configuration updated"
#~ msgstr "Конфіґурацію PVP оновлено"
#~ msgid "Damage configuration updated"
#~ msgstr "Конфіґурацію пошкоджень оновлено"
#~ msgid "RoundCube availability"
#~ msgstr "Доступність RoundCube"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-07-28 08:34+0000\n"
"Last-Translator: bruh <quangtrung02hn16@gmail.com>\n"
"Language-Team: Vietnamese <https://hosted.weblate.org/projects/freedombox/"
@ -873,7 +873,7 @@ msgid "No passwords currently configured."
msgstr "Không có mật khẩu nào hiện được thiết lập."
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Mật khẩu"
@ -1021,9 +1021,10 @@ msgid "Refresh IP address and domains"
msgstr "Làm mới địa chỉ IP và các miền"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1220,7 +1221,7 @@ msgstr ""
msgid "General Configuration"
msgstr "Thiết lập chung"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1228,13 +1229,13 @@ msgid "Configure"
msgstr "Thiết lập"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "Tên miền"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "Tên miền không hợp lệ"
@ -1581,6 +1582,7 @@ msgid "Test"
msgstr "Kiểm tra"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "Kết quả"
@ -1588,7 +1590,7 @@ msgstr "Kết quả"
msgid "Diagnostic Test"
msgstr "Kiểm tra chẩn đoán"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1599,7 +1601,7 @@ msgstr ""
"24h), những người khác có thể khó tìm bạn trên Internet. Việc này sẽ ngăn "
"những người khác tìm các dịch vụ được {box_name} này cung cấp."
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1616,15 +1618,35 @@ msgstr ""
"phân tên DNS của bạn cho IP mới, và nếu ai đó từ Internet hỏi tên DNS của "
"bạn, họ sẽ nhận một phản hồi với địa chỉ IP hiện tại của bạn."
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"Nếu bạn đang tìm một tài khoản DNS động miễn phí, bạn có thể tìm một dịch vụ "
"GnuDIP miễn phí tại <a href=\"http://gnudip.datasystems24.net\" target="
"\"_blank\">gnudip.datasystems24.net</a> hoặc bạn có thể tìm các dịch vụ miễn "
"phí dựa trên URL cập nhật tại <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "Ứng dụng khách DNS động"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "Tên miền động"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1634,7 +1656,7 @@ msgstr ""
"được sử dụng trong URL. Để biết thêm chi tiết, hãy xem các mẫu URL cập nhật "
"của những nhà cung cấp trong ví dụ."
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1644,7 +1666,7 @@ msgstr ""
"cung cấp không hỗ trợ giao thức GnuDIP hoặc nhà cung cấp không được liệt kê, "
"bạn có thể sử dụng URL cập nhật của nhà cung cấp."
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1652,17 +1674,17 @@ msgstr ""
"Vui lòng đừng nhập một URL ở đây (như \"https://example.com/\") mà chỉ nhập "
"tên miền của máy chủ GnuDIP (như \"example.com\")."
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "Tên miền công khai bạn muốn sử dụng để kết nối đến {box_name} của bạn."
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Sử dụng tuỳ chọn này nếu nhà cung cấp của bạn sử dụng các chứng chỉ tự ký."
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@ -1670,11 +1692,11 @@ msgstr ""
"Nếu tuỳ chọn này được chọn, tên người dùng và mật khẩu của bạn sẽ được sử "
"dụng để xác thực HTTP cơ bản."
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "Bỏ trống ô này nếu bạn muốn giữ mật khẩu hiện tại."
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, fuzzy, python-brace-format
#| msgid ""
#| "Optional Value. If your {box_name} is not connected directly to the "
@ -1692,162 +1714,66 @@ msgstr ""
"xác định địa chỉ IP thật. URL này nên chỉ đơn giản là trả về địa chỉ IP nơi "
"mà máy khách đến từ đó (vd: http://myip.datasystems24.de)."
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "Tên người dùng được sử dụng khi tài khoản được tạo."
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "URL cập nhật khác"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "Bật DNS động"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "Loại dịch vụ"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "Địa chỉ máy chủ GnuDIP"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "Tên máy chủ không hợp lệ"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "URL cập nhật"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "Chấp nhận tất cả chứng chỉ SSL"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "Sử dụng xác thực HTTP cơ bản"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "Tên người dùng"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "Hiện mật khẩu"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "URL để tra cứu IP công khai"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "Sử dụng IPv6 thay vì IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Vui lòng cung cấp một URL cập nhật hoặc một địa chỉ máy chủ GnuDIP"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "Vui lòng cung cấp một tên người dùng GnuDIP"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "Vui lòng cung cấp một tên miền GnuDIP"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "Vui lòng cung cấp một mật khẩu"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='http://gnudip.datasystems24.net' "
#| "target='_blank'>gnudip.datasystems24.net</a> or you may find free update "
#| "URL based services at <a href='http://freedns.afraid.org/' "
#| "target='_blank'> freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
"Nếu bạn đang tìm một tài khoản DNS động miễn phí, bạn có thể tìm một dịch vụ "
"GnuDIP miễn phí tại <a href=\"http://gnudip.datasystems24.net\" target="
"\"_blank\">gnudip.datasystems24.net</a> hoặc bạn có thể tìm các dịch vụ miễn "
"phí dựa trên URL cập nhật tại <a href=\"http://freedns.afraid.org/\" target="
"\"_blank\">freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"Nếu %(box_name)s của bạn được kết nối đằng sau một router NAT, đừng quên "
"thêm chuyển tiếp cổng cho các cổng tiêu chuẩn, bao gồm cổng TCP 80 (HTTP) và "
"cổng TCP 443 (HTTPS)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"Bạn đã tắt Javascript. Chế độ form động bị tắt và một số chức năng trợ giúp "
"có thể không hoạt động (nhưng chức năng chính có khả năng cao là sẽ hoạt "
"động)."
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Cập nhật thiết lập"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Loại NAT"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
"Loại NAT chưa được phát hiện. Nếu bạn không cung cấp một \"URL kiểm tra IP"
"\", chúng tôi sẽ không phát hiện loại NAT."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Kết nối trực tiếp đến Internet."
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1861,12 +1787,55 @@ msgstr ""
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP addresses"
msgid "IP Address"
msgstr "Địa chỉ IP"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "Truy cập"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "đã trượt"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "Không có thư viện nào có sẵn."
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "Kết nối bị từ chối"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2409,6 +2378,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2756,6 +2730,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "Cập nhật thiết lập"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2881,10 +2862,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3249,22 +3226,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6432,7 +6393,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7458,6 +7419,52 @@ msgstr ""
msgid "Gujarati"
msgstr ""
#~ msgid "Enable Dynamic DNS"
#~ msgstr "Bật DNS động"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "Vui lòng cung cấp một URL cập nhật hoặc một địa chỉ máy chủ GnuDIP"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "Vui lòng cung cấp một tên người dùng GnuDIP"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "Vui lòng cung cấp một tên miền GnuDIP"
#~ msgid "Please provide a password"
#~ msgstr "Vui lòng cung cấp một mật khẩu"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "Nếu %(box_name)s của bạn được kết nối đằng sau một router NAT, đừng quên "
#~ "thêm chuyển tiếp cổng cho các cổng tiêu chuẩn, bao gồm cổng TCP 80 (HTTP) "
#~ "và cổng TCP 443 (HTTPS)."
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "Bạn đã tắt Javascript. Chế độ form động bị tắt và một số chức năng trợ "
#~ "giúp có thể không hoạt động (nhưng chức năng chính có khả năng cao là sẽ "
#~ "hoạt động)."
#~ msgid "NAT type"
#~ msgstr "Loại NAT"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "Loại NAT chưa được phát hiện. Nếu bạn không cung cấp một \"URL kiểm tra IP"
#~ "\", chúng tôi sẽ không phát hiện loại NAT."
#~ msgid "Direct connection to the Internet."
#~ msgstr "Kết nối trực tiếp đến Internet."
#, fuzzy
#~| msgid "Invalid domain name"
#~ msgid "Enter a valid domain"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Plinth\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"PO-Revision-Date: 2022-01-13 18:58+0000\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2022-02-02 08:55+0000\n"
"Last-Translator: Eric <alchemillatruth@purelymail.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"freedombox/freedombox/zh_Hans/>\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.10.1\n"
"X-Generator: Weblate 4.11-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@ -827,7 +827,7 @@ msgid "No passwords currently configured."
msgstr "目前没有配置密码。"
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "密码"
@ -971,9 +971,10 @@ msgid "Refresh IP address and domains"
msgstr "刷新 IP 地址和域"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1157,7 +1158,7 @@ msgstr "在这里你可以设置一些一般的配置选项,如主机名、域
msgid "General Configuration"
msgstr "常规配置"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1165,13 +1166,13 @@ msgid "Configure"
msgstr "配置"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "域名"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "无效的域名"
@ -1502,6 +1503,7 @@ msgid "Test"
msgstr "测试"
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr "结果"
@ -1509,7 +1511,7 @@ msgstr "结果"
msgid "Diagnostic Test"
msgstr "诊断测试"
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1519,7 +1521,7 @@ msgstr ""
"如果您的互联网提供商定期例如每24小时更改您的IP地址其他人可能很难在互联"
"网上找到您。这会阻止其他人找到由此 {box_name} 提供的服务。"
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1535,15 +1537,34 @@ msgstr ""
"器会将您的 DNS 名称分配给新的 IP如果互联网上的某人要求您的 DNS 名称,他们将"
"从您当前 IP 地址收到响应。"
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
#, fuzzy
#| msgid ""
#| "If you are looking for a free dynamic DNS account, you may find a free "
#| "GnuDIP service at <a href='https://ddns.freedombox.org' "
#| "target='_blank'>ddns.freedombox.org</a> or you may find free update URL "
#| "based services at <a href='http://freedns.afraid.org/' target='_blank'> "
#| "freedns.afraid.org</a>."
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
"如果您正在寻找一个免费的动态 DNS 帐户,您可以在<a href=\"https://ddns."
"freedombox.org\" target=\"_blank\">ddns.freedombox.org </a>找到免费的 GnuDIP "
"服务,或您可以在<a href=\"http://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org </a>找到免费更新网址服务。"
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr "动态 DNS 客户端"
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr "动态域名"
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
@ -1552,7 +1573,7 @@ msgstr ""
"变量 &lt; 用户 &gt; &lt; 传递 &gt; &lt; Ip &gt; &lt; 域 &gt; 可能在 URL 内使"
"用。详细信息请参见更新 URL 模板的示例提供程序。"
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
@ -1561,7 +1582,7 @@ msgstr ""
"请选择您的提供商更新协议。如果您的提供商不支持 GnuDIP 协议或未列出您的提供商"
"可能会使用您的提供商的更新 URL。"
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@ -1569,26 +1590,26 @@ msgstr ""
"请不要在此输入 URL如\"https://example.com/\"),只输入 GnuDIP 服务器的主机"
"名例如“example.com”。"
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "你访问你的 {box_name} 时想使用的公开域名。"
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr "如果您的提供商使用自签名的证书,请使用此选项。"
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr "如果选择了此选项,您的用户名和密码将用于 HTTP 基本身份验证。"
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr "如果你想保持你的当前密码,请将此字段留空。"
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1600,153 +1621,66 @@ msgstr ""
"此 URL 用于确定真实的IP地址。URL应该简单地返回客户端来自的 IP (例如:"
"https://ddns.freedombox.org/ip/)。"
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr "创建账户时使用的用户名。"
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr "GnuDIP"
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
#, fuzzy
#| msgid "other update URL"
msgid "Other update URL"
msgstr "其他更新 URL"
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr "启用动态 DNS"
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr "服务类型"
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr "GnuDIP 服务器地址"
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr "服务器名称无效"
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr "更新 URL"
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr "接受所有 SSL 证书"
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr "使用 HTTP 基本身份验证"
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr "用户名"
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr "显示密码"
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr "查寻公开 IP 的 URL"
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr "使用IPv6而不是IPv4"
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "请提供一个更新 URL 或者 GnuDIP 服务器地址"
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr "请提供一个 GnuDIP 用户名"
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr "请提供一个 GnuDIP 域名"
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr "请提供一个密码"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
"如果您正在寻找一个免费的动态 DNS 帐户,您可以在<a href=\"https://ddns."
"freedombox.org\" target=\"_blank\">ddns.freedombox.org </a>找到免费的 GnuDIP "
"服务,或您可以在<a href=\"http://freedns.afraid.org/\" target=\"_blank\"> "
"freedns.afraid.org </a>找到免费更新网址服务。"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
"如果您的 %(box_name)s 经过 NAT 方式的路由连接,别忘了添加标准端口的转发,包"
"括 TCP 端口 80 (HTTP) 和 TCP 端口 443 (HTTPS)。"
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
"您已禁用 Javascript。禁用动态表单模式和一些 helper 函数可能无法工作(但主要功"
"能应该工作)。"
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "更新安装程序"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT 类型"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr "不能检测 NAT 类型。如果你不提供”IP 检查 URL“我们将不检测 NAT 类型。"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "直接连接到互联网。"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
"如果在 NAT 后面。这意味着动态 DNS 服务将轮询“URL 查找公共 IP”的更改需要输"
"入“查找公共 IP 的 URL”否则将不会检测到 IP 更改)。 如果 WAN IP 更改,可能"
"需要最多 %(timer)s 分钟直到您的DNS条目更新。"
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "最后一次更新"
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "关于"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1760,13 +1694,60 @@ msgstr "关于"
msgid "Status"
msgstr "状态"
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "配置动态 DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "域名"
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "动态 DNS 状态"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr "最后一次更新"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP address"
msgid "IP Address"
msgstr "IP 地址"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "访问"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
#, fuzzy
#| msgid "failed"
msgid "Failed"
msgstr "失败"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "没有可用的库。"
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection Name"
msgid "Connection timed out"
msgstr "连接名称"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
#, fuzzy
#| msgid "Delete connection"
msgid "Server refused connection"
msgstr "删除连接"
#: plinth/modules/dynamicdns/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "Already up-to-date"
msgstr "最后一次更新"
#: plinth/modules/ejabberd/__init__.py:31
msgid ""
@ -2318,6 +2299,11 @@ msgstr ""
msgid "Contribute"
msgstr "贡献"
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "关于"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2695,6 +2681,13 @@ msgstr "转到站点 %(site)s"
msgid "Delete site %(site)s"
msgstr "删除站点 %(site)s"
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr "更新安装程序"
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2829,10 +2822,6 @@ msgstr "证书"
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr "域名"
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr "证书状态"
@ -3204,22 +3193,6 @@ msgstr "地址"
msgid "Port"
msgstr "端口"
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr "最大玩家配置已更新"
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr "创意模式配置已更新"
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr "玩家对战PVP配置已更新"
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr "伤害配置已更新"
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -5328,10 +5301,8 @@ msgid "Bookmarks"
msgstr "书签"
#: plinth/modules/shaarli/manifest.py:12
#, fuzzy
#| msgid "Shaarli"
msgid "Shaarlier"
msgstr "Shaarli"
msgstr "Shaarlier"
#: plinth/modules/shadowsocks/__init__.py:21
msgid ""
@ -5764,10 +5735,8 @@ msgid "Login"
msgstr "登录"
#: plinth/modules/sso/views.py:101
#, fuzzy
#| msgid "Password changed successfully."
msgid "Logged out successfully."
msgstr "已成功更改密码。"
msgstr "已成功退出登录。"
#: plinth/modules/storage/__init__.py:26
#, python-brace-format
@ -6488,7 +6457,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
@ -7535,6 +7504,79 @@ msgstr "已完成 %(percentage)s%%"
msgid "Gujarati"
msgstr "古吉拉特语"
#~ msgid "Enable Dynamic DNS"
#~ msgstr "启用动态 DNS"
#~ msgid "Please provide an update URL or a GnuDIP server address"
#~ msgstr "请提供一个更新 URL 或者 GnuDIP 服务器地址"
#~ msgid "Please provide a GnuDIP username"
#~ msgstr "请提供一个 GnuDIP 用户名"
#~ msgid "Please provide a GnuDIP domain name"
#~ msgstr "请提供一个 GnuDIP 域名"
#~ msgid "Please provide a password"
#~ msgstr "请提供一个密码"
#, python-format
#~ msgid ""
#~ "If your %(box_name)s is connected behind a NAT router, don't forget to "
#~ "add port forwarding for standard ports, including TCP port 80 (HTTP) and "
#~ "TCP port 443 (HTTPS)."
#~ msgstr ""
#~ "如果您的 %(box_name)s 经过 NAT 方式的路由连接,别忘了添加标准端口的转发,"
#~ "包括 TCP 端口 80 (HTTP) 和 TCP 端口 443 (HTTPS)。"
#~ msgid ""
#~ "You have disabled Javascript. Dynamic form mode is disabled and some "
#~ "helper functions may not work (but the main functionality should work)."
#~ msgstr ""
#~ "您已禁用 Javascript。禁用动态表单模式和一些 helper 函数可能无法工作(但主"
#~ "要功能应该工作)。"
#~ msgid "NAT type"
#~ msgstr "NAT 类型"
#~ msgid ""
#~ "NAT type was not detected yet. If you do not provide an \"IP Check URL\", "
#~ "we will not detect a NAT type."
#~ msgstr ""
#~ "不能检测 NAT 类型。如果你不提供”IP 检查 URL“我们将不检测 NAT 类型。"
#~ msgid "Direct connection to the Internet."
#~ msgstr "直接连接到互联网。"
#, python-format
#~ msgid ""
#~ "Behind NAT. This means that Dynamic DNS service will poll the \"URL to "
#~ "look up public IP\" for changes (the \"URL to look up public IP\" entry "
#~ "is needed for this, otherwise IP changes will not be detected). In case "
#~ "the WAN IP changes, it may take up to %(timer)s minutes until your DNS "
#~ "entry is updated."
#~ msgstr ""
#~ "如果在 NAT 后面。这意味着动态 DNS 服务将轮询“URL 查找公共 IP”的更改需要"
#~ "输入“查找公共 IP 的 URL”否则将不会检测到 IP 更改)。 如果 WAN IP 更"
#~ "改,可能需要最多 %(timer)s 分钟直到您的DNS条目更新。"
#~ msgid "Configure Dynamic DNS"
#~ msgstr "配置动态 DNS"
#~ msgid "Dynamic DNS Status"
#~ msgstr "动态 DNS 状态"
#~ msgid "Maximum players configuration updated"
#~ msgstr "最大玩家配置已更新"
#~ msgid "Creative mode configuration updated"
#~ msgstr "创意模式配置已更新"
#~ msgid "PVP configuration updated"
#~ msgstr "玩家对战PVP配置已更新"
#~ msgid "Damage configuration updated"
#~ msgstr "伤害配置已更新"
#~ msgid "RoundCube availability"
#~ msgstr "RoundCube 可用性"
@ -8237,11 +8279,6 @@ msgstr "古吉拉特语"
#~ "Pagekite setup finished. The HTTP and HTTPS services are activated now."
#~ msgstr "Pagekite 安装完成。HTTP 和 HTTPS 服务现已启用。"
#, fuzzy
#~| msgid "Last update"
#~ msgid "Auto-update"
#~ msgstr "最后一次更新"
#~ msgid "Add Remote Location"
#~ msgstr "添加远程位置"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-01-31 19:23-0500\n"
"POT-Creation-Date: 2022-02-14 20:10-0500\n"
"PO-Revision-Date: 2021-12-23 12:50+0000\n"
"Last-Translator: pesder <j_h_liau@yahoo.com.tw>\n"
"Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/"
@ -836,7 +836,7 @@ msgid "No passwords currently configured."
msgstr "目前沒有設定密碼。"
#: plinth/modules/bepasty/templates/bepasty.html:29
#: plinth/modules/dynamicdns/forms.py:106 plinth/modules/networks/forms.py:213
#: plinth/modules/dynamicdns/forms.py:91 plinth/modules/networks/forms.py:213
#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "密碼"
@ -980,9 +980,10 @@ msgid "Refresh IP address and domains"
msgstr "更新 IP 位址與網域名稱"
#: plinth/modules/bind/views.py:71 plinth/modules/coturn/views.py:39
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:169
#: plinth/modules/deluge/views.py:42 plinth/modules/dynamicdns/views.py:78
#: plinth/modules/ejabberd/views.py:85 plinth/modules/email_server/views.py:38
#: plinth/modules/matrixsynapse/views.py:124 plinth/modules/mumble/views.py:28
#: plinth/modules/matrixsynapse/views.py:124
#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:28
#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:47 plinth/modules/ttrss/views.py:26
@ -1168,7 +1169,7 @@ msgstr ""
msgid "General Configuration"
msgstr "一般配置"
#: plinth/modules/config/__init__.py:58 plinth/modules/dynamicdns/views.py:29
#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:46
@ -1176,13 +1177,13 @@ msgid "Configure"
msgstr "配置"
#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:97
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
msgstr "網域名稱"
#: plinth/modules/config/forms.py:30 plinth/modules/config/forms.py:80
#: plinth/modules/dynamicdns/forms.py:100
#: plinth/modules/dynamicdns/forms.py:85
msgid "Invalid domain name"
msgstr "無效的網域名稱"
@ -1507,6 +1508,7 @@ msgid "Test"
msgstr ""
#: plinth/modules/diagnostics/templates/diagnostics_results.html:12
#: plinth/modules/dynamicdns/templates/dynamicdns.html:20
msgid "Result"
msgstr ""
@ -1514,7 +1516,7 @@ msgstr ""
msgid "Diagnostic Test"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:22
#: plinth/modules/dynamicdns/__init__.py:29
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@ -1522,7 +1524,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:26
#: plinth/modules/dynamicdns/__init__.py:33
msgid ""
"The solution is to assign a DNS name to your IP address and update the DNS "
"name every time your IP is changed by your Internet provider. Dynamic DNS "
@ -1533,54 +1535,62 @@ msgid ""
"IP address."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:52
#: plinth/modules/dynamicdns/__init__.py:41
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:64
msgid "Dynamic DNS Client"
msgstr ""
#: plinth/modules/dynamicdns/__init__.py:65
#: plinth/modules/dynamicdns/__init__.py:77
msgid "Dynamic Domain Name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:29
#: plinth/modules/dynamicdns/forms.py:18
msgid ""
"The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, &lt;Domain&gt; may be "
"used within the URL. For details see the update URL templates of the example "
"providers."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:33
#: plinth/modules/dynamicdns/forms.py:22
msgid ""
"Please choose an update protocol according to your provider. If your "
"provider does not support the GnuDIP protocol or your provider is not listed "
"you may use the update URL of your provider."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:38
#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:42
#: plinth/modules/dynamicdns/forms.py:31
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:45
#: plinth/modules/dynamicdns/forms.py:34
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:48
#: plinth/modules/dynamicdns/forms.py:37
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:51
#: plinth/modules/dynamicdns/forms.py:40
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:54
#: plinth/modules/dynamicdns/forms.py:43
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@ -1589,142 +1599,64 @@ msgid ""
"(example: https://ddns.freedombox.org/ip/)."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:62
#: plinth/modules/dynamicdns/forms.py:51
msgid "The username that was used when the account was created."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:65
#: plinth/modules/dynamicdns/forms.py:54
msgid "GnuDIP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:68
msgid "other update URL"
#: plinth/modules/dynamicdns/forms.py:57
msgid "Other update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:70
msgid "Enable Dynamic DNS"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:73
#: plinth/modules/dynamicdns/forms.py:59
msgid "Service Type"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:78
#: plinth/modules/dynamicdns/forms.py:64
msgid "GnuDIP Server Address"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:81
#: plinth/modules/dynamicdns/forms.py:67
msgid "Invalid server name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:84
#: plinth/modules/dynamicdns/forms.py:70
msgid "Update URL"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:89
#: plinth/modules/dynamicdns/forms.py:74
msgid "Accept all SSL certificates"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:93
#: plinth/modules/dynamicdns/forms.py:78
msgid "Use HTTP basic authentication"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:103 plinth/modules/networks/forms.py:212
#: plinth/modules/dynamicdns/forms.py:88 plinth/modules/networks/forms.py:212
#: plinth/modules/users/forms.py:68
msgid "Username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:110 plinth/modules/networks/forms.py:215
#: plinth/modules/dynamicdns/forms.py:95 plinth/modules/networks/forms.py:215
msgid "Show password"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:114
#: plinth/modules/dynamicdns/forms.py:99
msgid "URL to look up public IP"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:119
#: plinth/modules/dynamicdns/forms.py:104
msgid "Use IPv6 instead of IPv4"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide an update URL or a GnuDIP server address"
#: plinth/modules/dynamicdns/forms.py:123
msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/forms.py:146
msgid "Please provide a GnuDIP username"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a GnuDIP domain name"
msgstr ""
#: plinth/modules/dynamicdns/forms.py:155
msgid "Please provide a password"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at <a href='https://ddns.freedombox.org' target='_blank'>ddns."
"freedombox.org</a> or you may find free update URL based services at <a "
"href='http://freedns.afraid.org/' target='_blank'> freedns.afraid.org</a>."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
"port forwarding for standard ports, including TCP port 80 (HTTP) and TCP "
"port 443 (HTTPS)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
"up public IP\" for changes (the \"URL to look up public IP\" entry is needed "
"for this, otherwise IP changes will not be detected). In case the WAN IP "
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:55
#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "關於"
#: plinth/modules/dynamicdns/views.py:32
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
@ -1738,12 +1670,53 @@ msgstr "關於"
msgid "Status"
msgstr ""
#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:18
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:19
msgid "Last update"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:21
#, fuzzy
#| msgid "IP addresses"
msgid "IP Address"
msgstr "IP 地址"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:32
#, fuzzy
#| msgid "Access"
msgid "Success"
msgstr "存取"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:36
msgid "Failed"
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:52
#, fuzzy
#| msgid "No libraries available."
msgid "No status available."
msgstr "無可用的圖書館。"
#: plinth/modules/dynamicdns/views.py:24 plinth/modules/dynamicdns/views.py:26
#, fuzzy
#| msgid "Connection refused"
msgid "Connection timed out"
msgstr "連線被拒絕"
#: plinth/modules/dynamicdns/views.py:25
msgid "Could not find server"
msgstr ""
#: plinth/modules/dynamicdns/views.py:27
msgid "Server refused connection"
msgstr ""
#: plinth/modules/dynamicdns/views.py:28
msgid "Already up-to-date"
msgstr ""
#: plinth/modules/ejabberd/__init__.py:31
@ -2284,6 +2257,11 @@ msgstr ""
msgid "Contribute"
msgstr ""
#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "關於"
#: plinth/modules/help/templates/help_about.html:17
#: plinth/modules/upgrades/templates/upgrades_configure.html:26
#, python-format
@ -2631,6 +2609,13 @@ msgstr ""
msgid "Delete site %(site)s"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
#: plinth/modules/snapshot/templates/snapshot.html:15
#: plinth/templates/app.html:54
msgid "Update setup"
msgstr ""
#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog <em>%(name)s</em>"
@ -2756,10 +2741,6 @@ msgstr ""
msgid "Cannot test: No domains are configured."
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:24
msgid "Domain"
msgstr ""
#: plinth/modules/letsencrypt/templates/letsencrypt.html:25
msgid "Certificate Status"
msgstr ""
@ -3124,22 +3105,6 @@ msgstr ""
msgid "Port"
msgstr ""
#: plinth/modules/minetest/views.py:48
msgid "Maximum players configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:55
msgid "Creative mode configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:61
msgid "PVP configuration updated"
msgstr ""
#: plinth/modules/minetest/views.py:67
msgid "Damage configuration updated"
msgstr ""
#: plinth/modules/minidlna/__init__.py:20
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
@ -6304,7 +6269,7 @@ msgstr ""
#: plinth/modules/users/__init__.py:29
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"Create and manage user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""

View File

@ -3,7 +3,10 @@
App component for other apps to use backup/restore functionality.
"""
from plinth import app
import copy
import json
from plinth import actions, app
def _validate_directories_and_files(section):
@ -45,29 +48,52 @@ def _validate_service(service):
assert service['kind'] in ('config', 'site', 'module')
def _validate_settings(settings):
"""Validate settings stored by an in kvstore."""
if not settings:
return
assert isinstance(settings, list)
for setting in settings:
assert isinstance(setting, str)
class BackupRestore(app.FollowerComponent):
"""Component to backup/restore an app."""
def __init__(self, component_id, config=None, data=None, secrets=None,
services=None):
services=None, settings=None):
"""Initialize the backup/restore component."""
super().__init__(component_id)
_validate_directories_and_files(config)
self.config = config or {}
_validate_directories_and_files(data)
self.data = data or {}
self._data = data or {}
_validate_directories_and_files(secrets)
self.secrets = secrets or {}
_validate_services(services)
self.services = services or []
_validate_settings(settings)
self.settings = settings or []
self.has_data = bool(config) or bool(data) or bool(secrets)
self.has_data = (bool(config) or bool(data) or bool(secrets)
or bool(settings))
def __eq__(self, other):
"""Check if this component is same as another."""
return self.component_id == other.component_id
@property
def data(self):
"""Add additional files to data files list."""
data = copy.deepcopy(self._data)
settings_file = self._get_settings_file()
if settings_file:
data.setdefault('files', []).append(settings_file)
return data
@property
def manifest(self):
"""Return the backup details as a dictionary."""
@ -84,10 +110,14 @@ class BackupRestore(app.FollowerComponent):
if self.services:
manifest['services'] = self.services
if self.settings:
manifest['settings'] = self.settings
return manifest
def backup_pre(self, packet):
"""Perform any special operations before backup."""
self._settings_backup_pre()
def backup_post(self, packet):
"""Perform any special operations after backup."""
@ -97,3 +127,43 @@ class BackupRestore(app.FollowerComponent):
def restore_post(self, packet):
"""Perform any special operations after restore."""
self._settings_restore_post()
def _get_settings_file(self):
"""Return the settings file path to list of files to backup."""
if not self.settings or not self.app_id:
return None
data_path = '/var/lib/plinth/backups-data/'
return data_path + f'{self.app_id}-settings.json'
def _settings_backup_pre(self):
"""Read keys from kvstore and store them in a file to backup."""
if not self.settings:
return
from plinth import kvstore
data = {}
for key in self.settings:
try:
data[key] = kvstore.get(key)
except Exception:
pass
input_ = json.dumps(data).encode()
actions.superuser_run('backups',
['dump-settings', '--app-id', self.app_id],
input=input_)
def _settings_restore_post(self):
"""Read from a file and restore keys to kvstore."""
if not self.settings:
return
output = actions.superuser_run(
'backups', ['load-settings', '--app-id', self.app_id])
data = json.loads(output)
from plinth import kvstore
for key, value in data.items():
kvstore.set(key, value)

View File

@ -3,8 +3,13 @@
Test the App components provides by backups app.
"""
import json
from unittest.mock import call, patch
import pytest
from plinth import kvstore
from .. import components
from ..components import BackupRestore
@ -16,8 +21,9 @@ def fixture_backup_restore():
"""Fixture to create a domain type after clearing all existing ones."""
value = {'files': ['a', 'b'], 'directories': ['a', 'b']}
services = ['service-1', {'type': 'system', 'name': 'service-2'}]
settings = ['setting-1', 'setting-2']
return BackupRestore('test-backup-restore', config=value, data=value,
secrets=value, services=services)
secrets=value, services=services, settings=settings)
@pytest.mark.parametrize('section', [
@ -159,6 +165,7 @@ def test_backup_restore_init_default_arguments():
assert component.data == {}
assert component.secrets == {}
assert component.services == []
assert component.settings == []
assert not component.has_data
@ -185,6 +192,22 @@ def test_backup_restore_init_services():
assert not component.has_data
def test_backup_restore_init_settings():
"""Test initialization of the backup restore object."""
with pytest.raises(AssertionError):
BackupRestore('test-backup-restore', settings='invalid-value')
settings = ['setting1', 'setting2']
component = BackupRestore('test-backup-restore', settings=settings)
assert component.settings == settings
assert component.has_data
assert component.data == {}
component.app_id = 'testapp'
settings_file = '/var/lib/plinth/backups-data/testapp-settings.json'
assert component.data == {'files': [settings_file]}
def test_backup_restore_equal(backup_restore):
"""Test equality operator on the backup restore object."""
assert backup_restore == BackupRestore('test-backup-restore')
@ -199,6 +222,7 @@ def test_backup_restore_manifest(backup_restore):
assert manifest['data'] == backup_restore.data
assert manifest['secrets'] == backup_restore.secrets
assert manifest['services'] == backup_restore.services
assert manifest['settings'] == backup_restore.settings
assert BackupRestore('test-backup-restore').manifest == {}
@ -206,7 +230,47 @@ def test_backup_restore_manifest(backup_restore):
def test_backup_restore_hooks(backup_restore):
"""Test running hooks on backup restore object."""
packet = None
backup_restore.backup_pre(packet)
backup_restore.backup_post(packet)
backup_restore.restore_pre(packet)
@pytest.mark.django_db
@patch('plinth.actions.superuser_run')
def test_backup_restore_backup_pre(run, backup_restore):
"""Test running backup-pre hook."""
packet = None
kvstore.set('setting-1', 'value-1')
backup_restore.app_id = 'testapp'
component = BackupRestore('test-backup-restore')
component.backup_pre(packet)
run.assert_has_calls([])
backup_restore.backup_pre(packet)
input_ = {'setting-1': 'value-1'}
run.assert_has_calls([
call('backups', ['dump-settings', '--app-id', 'testapp'],
input=json.dumps(input_).encode())
])
@pytest.mark.django_db
@patch('plinth.actions.superuser_run')
def test_backup_restore_restore_post(run, backup_restore):
"""Test running restore-post hook."""
packet = None
backup_restore.app_id = 'testapp'
component = BackupRestore('test-backup-restore')
component.restore_post(packet)
run.assert_has_calls([])
output = {'setting-1': 'value-1'}
run.return_value = json.dumps(output)
backup_restore.restore_post(packet)
run.assert_has_calls(
[call('backups', ['load-settings', '--app-id', 'testapp'])])
assert kvstore.get('setting-1') == 'value-1'
with pytest.raises(Exception):
kvstore.get('setting-2')

View File

@ -3,19 +3,26 @@
FreedomBox app to configure ez-ipupdate client.
"""
import json
import logging
import subprocess
import time
import urllib
from django.utils.translation import gettext_lazy as _
from plinth import actions
from plinth import app as app_module
from plinth import cfg, menu
from plinth import cfg, glib, kvstore, menu
from plinth.modules.backups.components import BackupRestore
from plinth.modules.names.components import DomainType
from plinth.modules.users.components import UsersAndGroups
from plinth.package import Packages
from plinth.signals import domain_added
from plinth.signals import domain_added, domain_removed
from plinth.utils import format_lazy
from . import manifest
from . import gnudip, manifest
logger = logging.getLogger(__name__)
_description = [
format_lazy(
@ -30,7 +37,12 @@ _description = [
'<a href=\'http://gnudip2.sourceforge.net/\' target=\'_blank\'> '
'GnuDIP</a> server. Afterwards, the server will assign your DNS name '
'to the new IP, and if someone from the Internet asks for your DNS '
'name, they will get a response with your current IP address.')
'name, they will get a response with your current IP address.'),
_('If you are looking for a free dynamic DNS account, you may find a free '
'GnuDIP service at <a href=\'https://ddns.freedombox.org\' '
'target=\'_blank\'>ddns.freedombox.org</a> or you may find free update '
'URL based services at <a href=\'http://freedns.afraid.org/\' '
'target=\'_blank\'>freedns.afraid.org</a>.'),
]
app = None
@ -41,7 +53,7 @@ class DynamicDNSApp(app_module.App):
app_id = 'dynamicdns'
_version = 1
_version = 2
def __init__(self):
"""Create components for the app."""
@ -58,8 +70,8 @@ class DynamicDNSApp(app_module.App):
'dynamicdns:index', parent_url_name='system')
self.add(menu_item)
packages = Packages('packages-dynamicdns', ['ez-ipupdate'])
self.add(packages)
enable_state = app_module.EnableState('enable-state-dynamicdns')
self.add(enable_state)
domain_type = DomainType('domain-type-dynamic',
_('Dynamic Domain Name'), 'dynamicdns:index',
@ -74,106 +86,195 @@ class DynamicDNSApp(app_module.App):
**manifest.backup)
self.add(backup_restore)
@staticmethod
def post_init():
def post_init(self):
"""Perform post initialization operations."""
current_status = get_status()
if current_status['enabled']:
domain_added.send_robust(sender='dynamicdns',
domain_type='domain-type-dynamic',
name=current_status['dynamicdns_domain'],
services='__all__')
config = get_config()
if self.is_enabled():
for domain_name in config['domains']:
notify_domain_added(domain_name)
def is_enabled(self):
"""Return whether all the leader components are enabled.
Return True when there are no leader components and DynamicDNS setup
is done.
"""
return super().is_enabled() and get_status()['enabled']
# Check every 5 minutes (every 3 minutes in debug mode) to perform
# dynamic DNS updates.
interval = 180 if cfg.develop else 300
glib.schedule(interval, update_dns)
def setup(helper, old_version=None):
"""Install and configure the module."""
app.setup(old_version)
if not old_version:
helper.call('post', app.enable)
if old_version == 1:
config = actions.superuser_run('dynamicdns', ['export-config'])
config = json.loads(config)
if config['enabled']:
app.enable()
else:
app.disable()
del config['enabled']
set_config(config)
actions.superuser_run('dynamicdns', ['clean'])
def _query_external_address(domain):
"""Return the IP address by querying an external server."""
if not domain['ip_lookup_url']:
return None
ip_option = '-6' if domain['use_ipv6'] else '-4'
try:
ip_address = subprocess.check_output([
'wget', ip_option, '-o', '/dev/null', '-t', '3', '-T', '3', '-O',
'-', domain['ip_lookup_url']
])
return ip_address.decode().strip().lower()
except subprocess.CalledProcessError as exception:
logger.warning('Unable to lookup external IP with URL %s: %s',
domain['ip_lookup_url'], exception)
return None
def _query_dns_address(domain):
"""Return the IP address in the DNS records."""
ip_option = 'AAAA' if domain['use_ipv6'] else 'A'
try:
output = subprocess.check_output(
['host', '-t', ip_option, domain['domain']])
return output.decode().split(' ')[-1].strip().lower()
except subprocess.CalledProcessError as exception:
logger.warning('Unable to lookup DNS for host %s: %s',
domain['domain'], exception)
return None
def _update_using_url(domain, external_address):
"""Update DNS entry using an update URL."""
update_url = domain['update_url']
quote = urllib.parse.quote
if external_address:
update_url = update_url.replace('<Ip>', quote(external_address))
if domain['domain']:
update_url = update_url.replace('<Domain>', quote(domain['domain']))
if domain['username']:
update_url = update_url.replace('<User>', quote(domain['username']))
if domain['password']:
update_url = update_url.replace('<Pass>', quote(domain['password']))
options = ['-o', '/dev/null', '-t', '3', '-T', '3']
if domain['use_http_basic_auth']:
options += [
'--user', domain['username'], '--password', domain['password']
]
if domain['disable_ssl_cert_check']:
options += ['--no-check-certificate']
if domain['use_ipv6']:
options += ['-6']
else:
options += ['-4']
command = ['wget', '-O', '/dev/null'] + options + [update_url]
process = subprocess.run(command, check=False)
return process.returncode == 0, external_address
def _update_dns_for_domain(domain):
"""Update DNS records for a single domain."""
result = False
ip_address = None
error = None
try:
dns_address = _query_dns_address(domain)
external_address = _query_external_address(domain)
if dns_address == external_address and dns_address is not None:
logger.info('Dynamic domain %s is up-to-date: %s',
domain['domain'], dns_address)
result = True
ip_address = dns_address
error = ValueError('up-to-date')
else:
logger.info(
'Updating dynamic domain %s, DNS address %s, looked up '
'external address %s', domain['domain'], dns_address,
external_address)
if domain['service_type'] == 'gnudip':
result, ip_address = gnudip.update(domain['server'],
domain['domain'],
domain['username'],
domain['password'])
else:
result, ip_address = _update_using_url(domain,
external_address)
except Exception as exception:
logger.exception('Failed to be update Dynamic DNS - %s', exception)
error = exception
set_status(domain, result, ip_address, error)
def update_dns(_data):
"""For all configured domains, check and up to date DNS records."""
config = get_config()
if not app.is_enabled():
return
# Update for each domain
for domain in config['domains'].values():
_update_dns_for_domain(domain)
def get_status():
"""Return the current status."""
# TODO: use key/value instead of hard coded value list
status = {}
output = actions.superuser_run('dynamicdns', ['status'])
details = output.split()
status['enabled'] = (output.split()[0] == 'enabled')
if len(details) > 1:
if details[1] == 'disabled':
status['dynamicdns_server'] = ''
else:
status['dynamicdns_server'] = details[1].replace("'", "")
else:
status['dynamicdns_server'] = ''
if len(details) > 2:
if details[2] == 'disabled':
status['dynamicdns_domain'] = ''
else:
status['dynamicdns_domain'] = details[2].replace("'", "")
else:
status['dynamicdns_domain'] = ''
if len(details) > 3:
if details[3] == 'disabled':
status['dynamicdns_user'] = ''
else:
status['dynamicdns_user'] = details[3].replace("'", "")
else:
status['dynamicdns_user'] = ''
if len(details) > 4:
if details[4] == 'disabled':
status['dynamicdns_secret'] = ''
else:
status['dynamicdns_secret'] = details[4].replace("'", "")
else:
status['dynamicdns_secret'] = ''
if len(details) > 5:
if details[5] == 'disabled':
status['dynamicdns_ipurl'] = ''
else:
status['dynamicdns_ipurl'] = details[5].replace("'", "")
else:
status['dynamicdns_ipurl'] = ''
if len(details) > 6:
if details[6] == 'disabled':
status['dynamicdns_update_url'] = ''
else:
status['dynamicdns_update_url'] = details[6].replace("'", "")
else:
status['dynamicdns_update_url'] = ''
if len(details) > 7:
status['disable_SSL_cert_check'] = (output.split()[7] == 'enabled')
else:
status['disable_SSL_cert_check'] = False
if len(details) > 8:
status['use_http_basic_auth'] = (output.split()[8] == 'enabled')
else:
status['use_http_basic_auth'] = False
if len(details) > 9:
status['use_ipv6'] = (output.split()[9] == 'enabled')
else:
status['use_ipv6'] = False
if not status['dynamicdns_server'] and not status['dynamicdns_update_url']:
status['service_type'] = 'GnuDIP'
elif not status['dynamicdns_server'] and status['dynamicdns_update_url']:
status['service_type'] = 'other'
else:
status['service_type'] = 'GnuDIP'
"""Return the status of recent update for each domain."""
status = kvstore.get_default('dynamicdns_status', '{}')
status = json.loads(status)
status.setdefault('domains', {})
return status
def set_status(domain, result, ip_address, error=None):
"""Set the status of most recent update."""
status = kvstore.get_default('dynamicdns_status', '{}')
status = json.loads(status)
domains = status.setdefault('domains', {})
domains[domain['domain']] = {
'domain': domain['domain'],
'result': result,
'ip_address': ip_address,
'error_code': error.__class__.__name__ if error else None,
'error_message': error.args[0] if error and error.args else None,
'timestamp': int(time.time()),
}
kvstore.set('dynamicdns_status', json.dumps(status))
def get_config():
"""Return the current configuration."""
default_config = {'domains': {}}
config = kvstore.get_default('dynamicdns_config', '{}')
return json.loads(config) or default_config
def set_config(config):
"""Set a new configuration."""
kvstore.set('dynamicdns_config', json.dumps(config))
def notify_domain_added(domain_name):
"""Send a signal that domain has been added."""
domain_added.send_robust(sender='dynamicdns',
domain_type='domain-type-dynamic',
name=domain_name, services='__all__')
def notify_domain_removed(domain_name):
"""Send a signal that domain has been removed."""
domain_removed.send_robust(sender='dynamicdns',
domain_type='domain-type-dynamic',
name=domain_name)

View File

@ -12,24 +12,13 @@ from plinth import cfg
from plinth.utils import format_lazy
class TrimmedCharField(forms.CharField):
"""Trim the contents of a CharField."""
def clean(self, value):
"""Clean and validate the field value"""
if value:
value = value.strip()
return super(TrimmedCharField, self).clean(value)
class ConfigureForm(forms.Form):
"""Form to configure the Dynamic DNS client."""
help_update_url = \
gettext_lazy('The Variables &lt;User&gt;, &lt;Pass&gt;, &lt;Ip&gt;, '
'&lt;Domain&gt; may be used within the URL. For details '
'see the update URL templates of the example providers.')
help_services = \
help_service_type = \
gettext_lazy('Please choose an update protocol according to your '
'provider. If your provider does not support the GnuDIP '
'protocol or your provider is not listed you may use '
@ -41,16 +30,16 @@ class ConfigureForm(forms.Form):
help_domain = format_lazy(
gettext_lazy('The public domain name you want to use to reach your '
'{box_name}.'), box_name=gettext_lazy(cfg.box_name))
help_disable_ssl = \
help_disable_ssl_cert_check = \
gettext_lazy('Use this option if your provider uses self signed '
'certificates.')
help_http_auth = \
help_use_http_basic_auth = \
gettext_lazy('If this option is selected, your username and password '
'will be used for HTTP basic authentication.')
help_secret = \
help_password = \
gettext_lazy('Leave this field empty if you want to keep your '
'current password.')
help_ip_url = format_lazy(
help_ip_lookup_url = format_lazy(
gettext_lazy('Optional Value. If your {box_name} is not connected '
'directly to the Internet (i.e. connected to a NAT '
'router) this URL is used to determine the real '
@ -58,98 +47,99 @@ class ConfigureForm(forms.Form):
'the client comes from (example: '
'https://ddns.freedombox.org/ip/).'),
box_name=gettext_lazy(cfg.box_name))
help_user = \
help_username = \
gettext_lazy('The username that was used when the account was '
'created.')
provider_choices = (('GnuDIP', gettext_lazy('GnuDIP')),
('noip', 'noip.com'), ('selfhost', 'selfhost.bz'),
('freedns', 'freedns.afraid.org'),
('other', gettext_lazy('other update URL')))
enabled = forms.BooleanField(label=gettext_lazy('Enable Dynamic DNS'),
required=False)
provider_choices = (('gnudip', gettext_lazy('GnuDIP')),
('noip.com', 'noip.com'), ('freedns.afraid.org',
'freedns.afraid.org'),
('other', gettext_lazy('Other update URL')))
service_type = forms.ChoiceField(label=gettext_lazy('Service Type'),
help_text=help_services,
help_text=help_service_type,
choices=provider_choices)
dynamicdns_server = TrimmedCharField(
server = forms.CharField(
label=gettext_lazy('GnuDIP Server Address'), required=False,
help_text=help_server, validators=[
validators.RegexValidator(r'^[\w-]{1,63}(\.[\w-]{1,63})*$',
gettext_lazy('Invalid server name'))
])
dynamicdns_update_url = TrimmedCharField(label=gettext_lazy('Update URL'),
required=False,
help_text=help_update_url)
update_url = forms.CharField(label=gettext_lazy('Update URL'),
required=False, help_text=help_update_url)
disable_SSL_cert_check = forms.BooleanField(
disable_ssl_cert_check = forms.BooleanField(
label=gettext_lazy('Accept all SSL certificates'),
help_text=help_disable_ssl, required=False)
help_text=help_disable_ssl_cert_check, required=False)
use_http_basic_auth = forms.BooleanField(
label=gettext_lazy('Use HTTP basic authentication'),
help_text=help_http_auth, required=False)
help_text=help_use_http_basic_auth, required=False)
dynamicdns_domain = TrimmedCharField(
domain = forms.CharField(
label=gettext_lazy('Domain Name'), help_text=help_domain,
required=False, validators=[
required=True, validators=[
validators.RegexValidator(r'^[\w-]{1,63}(\.[\w-]{1,63})*$',
gettext_lazy('Invalid domain name'))
])
dynamicdns_user = TrimmedCharField(label=gettext_lazy('Username'),
required=False, help_text=help_user)
username = forms.CharField(label=gettext_lazy('Username'), required=False,
help_text=help_username)
dynamicdns_secret = TrimmedCharField(label=gettext_lazy('Password'),
widget=forms.PasswordInput(),
required=False, help_text=help_secret)
password = forms.CharField(label=gettext_lazy('Password'),
widget=forms.PasswordInput(), required=False,
help_text=help_password)
showpw = forms.BooleanField(label=gettext_lazy('Show password'),
required=False)
show_password = forms.BooleanField(label=gettext_lazy('Show password'),
required=False)
dynamicdns_ipurl = TrimmedCharField(
ip_lookup_url = forms.CharField(
label=gettext_lazy('URL to look up public IP'), required=False,
help_text=help_ip_url,
validators=[validators.URLValidator(schemes=['http', 'https', 'ftp'])])
help_text=help_ip_lookup_url,
validators=[validators.URLValidator(schemes=['http', 'https'])])
use_ipv6 = forms.BooleanField(
label=gettext_lazy('Use IPv6 instead of IPv4'), required=False)
def clean(self):
cleaned_data = super(ConfigureForm, self).clean()
dynamicdns_secret = cleaned_data.get('dynamicdns_secret')
dynamicdns_update_url = cleaned_data.get('dynamicdns_update_url')
dynamicdns_user = cleaned_data.get('dynamicdns_user')
dynamicdns_domain = cleaned_data.get('dynamicdns_domain')
dynamicdns_server = cleaned_data.get('dynamicdns_server')
"""Further validate and transform field data."""
cleaned_data = super().clean()
# Domain name is not case sensitive, but Let's Encrypt
# certificate paths use lower-case domain name.
cleaned_data['domain'] = cleaned_data['domain'].lower()
update_url = cleaned_data.get('update_url')
password = cleaned_data.get('password')
service_type = cleaned_data.get('service_type')
old_dynamicdns_secret = self.initial['dynamicdns_secret']
old_password = self.initial.get('password')
# Clear the fields which are not in use
if service_type == 'GnuDIP':
dynamicdns_update_url = ''
if not password:
# If password is not set, use old password
cleaned_data['password'] = old_password
message = _('This field is required.')
if service_type == 'gnudip':
for field_name in ['server', 'username', 'password']:
if not cleaned_data.get(field_name):
self.add_error(field_name, message)
else:
dynamicdns_server = ''
if not update_url:
self.add_error('update_url', message)
if cleaned_data.get('enabled'):
# Check if gnudip server or update URL is filled
if not dynamicdns_update_url and not dynamicdns_server:
raise forms.ValidationError(
_('Please provide an update URL or a GnuDIP server '
'address'))
param_map = (('username', '<User>'), ('password', '<Pass>'),
('ip_lookup_url', '<Ip>'))
for field_name, param in param_map:
if (update_url and param in update_url
and not cleaned_data.get(field_name)):
self.add_error(field_name, message)
if dynamicdns_server and not dynamicdns_user:
raise forms.ValidationError(
_('Please provide a GnuDIP username'))
if cleaned_data.get('use_http_basic_auth'):
for field_name in ('username', 'password'):
if not cleaned_data.get(field_name):
self.add_error(field_name, message)
if dynamicdns_server and not dynamicdns_domain:
raise forms.ValidationError(
_('Please provide a GnuDIP domain name'))
# Check if a password was set before or a password is set now
if dynamicdns_server and \
not dynamicdns_secret and not old_dynamicdns_secret:
raise forms.ValidationError(_('Please provide a password'))
del cleaned_data['show_password']
return cleaned_data

View File

@ -0,0 +1,40 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
GnuDIP client for updating Dynamic DNS records.
"""
import hashlib
import logging
import socket as socket_module
BUF_SIZE = 128
GNUDIP_PORT = 3495
TIMEOUT = 10
logger = logging.getLogger(__name__)
def update(server, domain, username, password):
"""Update Dynamic DNS record."""
domain = domain.removeprefix(username + '.')
password_digest = hashlib.md5(password.encode()).hexdigest()
with socket_module.socket(socket_module.AF_INET,
socket_module.SOCK_STREAM) as socket:
logger.debug('Connecting to %s:%d, timeout %ss', server, GNUDIP_PORT,
TIMEOUT)
socket.settimeout(TIMEOUT)
socket.connect((server, GNUDIP_PORT))
salt = socket.recv(BUF_SIZE).decode().strip()
salted_digest = password_digest + '.' + salt
final_digest = hashlib.md5(salted_digest.encode()).hexdigest()
update_request = username + ':' + final_digest + ':' + domain + ':2\n'
socket.sendall(update_request.encode())
response = socket.recv(BUF_SIZE).decode().strip()
result, _, new_ip = response.partition(':')
result = (int(result) == 0)
new_ip = new_ip if result else None
return result, new_ip

View File

@ -1,3 +1,10 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
backup = {'config': {'directories': ['/etc/ez-ipupdate/']}}
backup = {
'config': {
'directories': ['/etc/ez-ipupdate/']
},
'settings': [
'dynamicdns_enable', 'dynamicdns_config', 'dynamicdns_status'
],
}

View File

@ -23,123 +23,57 @@
*/
(function($) {
var SELFHOST = 'https://carol.selfhost.de/update?username=<User>&' +
'password=<Pass>&myip=<Ip>';
var NOIP = 'http://dynupdate.no-ip.com/nic/update?hostname=' +
'<Domain>&myip=<Ip>';
var NOIP = 'https://<User>:<Pass>@dynupdate.no-ip.com/nic/update?' +
'hostname=<Domain>';
var FREEDNS = 'https://freedns.afraid.org/dynamic/update.php?' +
'_YOURAPIKEYHERE_';
// Hide all form fields
$('.form-group').hide();
// Show the enable checkbox
$('#id_enabled').closest('.form-group').show();
if ($('#id_enabled').prop('checked')) {
// Show all form fields
show_all();
// Set the selectbox to the last configured value
select_service();
}
$('#id_enabled').change(function() {
if ($('#id_enabled').prop('checked')) {
show_all();
if ($("#id_service_type option:selected").text() == "GnuDIP") {
set_gnudip_mode();
} else {
set_update_url_mode();
}
} else {
$('.form-group').hide();
$('#id_enabled').closest('.form-group').show();
}
});
$('#id_service_type').change(function() {
var service_type = $("#id_service_type option:selected").text();
if (service_type == "GnuDIP") {
set_gnudip_mode();
} else {
set_update_url_mode();
if (service_type == "noip.com") {
$('#id_dynamicdns_update_url').val(NOIP);
$('#id_use_http_basic_auth').prop('checked', true);
} else {
$('#id_use_http_basic_auth').prop('checked', false);
}
if (service_type == "selfhost.bz") {
$('#id_dynamicdns_update_url').val(SELFHOST);
}
if (service_type == "freedns.afraid.org") {
$('#id_dynamicdns_update_url').val(FREEDNS);
}
if (service_type == "other update URL") {
$('#id_dynamicdns_update_url').val('');
}
set_mode();
var service_type = $("#id_service_type").val();
if (service_type == "noip.com") {
$('#id_update_url').val(NOIP);
} else if (service_type == "freedns.afraid.org") {
$('#id_update_url').val(FREEDNS);
} else { // GnuDIP and other
$('#id_update_url').val('');
}
});
$('#id_showpw').change(function() {
// Changing type attribute from password to text is prevented by most
// browsers make a new form field works for me
if ($('#id_showpw').prop('checked')) {
$('#id_dynamicdns_secret').replaceWith(
$('#id_dynamicdns_secret').clone().attr(
'type', 'text'));
$('#id_show_password').change(function() {
if ($('#id_show_password').prop('checked')) {
$('#id_password').prop('type', 'text');
} else {
$('#id_dynamicdns_secret').replaceWith(
$('#id_dynamicdns_secret').clone().attr(
'type', 'password'));
$('#id_password').prop('type', 'password');
}
});
function select_service() {
var update_url = $("#id_dynamicdns_update_url").val();
if ($("#id_dynamicdns_server").val().length == 0) {
set_update_url_mode();
if (update_url == NOIP) {
$("#id_service_type").val("noip");
} else if (update_url == SELFHOST) {
$("#id_service_type").val("selfhost");
} else if (update_url == FREEDNS) {
$("#id_service_type").val("freedns");
} else {
$("#id_service_type").val("other");
}
} else {
$("#id_service_type").val("GnuDIP");
function set_mode() {
var service_type = $("#id_service_type").val();
if (service_type == "gnudip") {
set_gnudip_mode();
} else {
set_update_url_mode();
}
}
function set_gnudip_mode() {
$('#id_dynamicdns_update_url').closest('.form-group').hide();
$('#id_disable_SSL_cert_check').closest('.form-group').hide();
$('.form-group').show();
$('#id_update_url').closest('.form-group').hide();
$('#id_disable_ssl_cert_check').closest('.form-group').hide();
$('#id_use_http_basic_auth').closest('.form-group').hide();
$('#id_use_ipv6').closest('.form-group').hide();
$('#id_dynamicdns_server').closest('.form-group').show();
$('#id_server').closest('.form-group').show();
}
function set_update_url_mode() {
$('#id_dynamicdns_update_url').closest('.form-group').show();
$('#id_disable_SSL_cert_check').closest('.form-group').show();
$('#id_update_url').closest('.form-group').show();
$('#id_disable_ssl_cert_check').closest('.form-group').show();
$('#id_use_http_basic_auth').closest('.form-group').show();
$('#id_use_ipv6').closest('.form-group').show();
$('#id_dynamicdns_server').closest('.form-group').hide();
$('#id_server').closest('.form-group').hide();
}
function show_all() {
$('#id_enabled').closest('.form-group').show();
$('#id_service_type').closest('.form-group').show();
$('#id_dynamicdns_server').closest('.form-group').show();
$('#id_dynamicdns_update_url').closest('.form-group').show();
$('#id_disable_SSL_cert_check').closest('.form-group').show();
$('#id_use_http_basic_auth').closest('.form-group').show();
$('#id_dynamicdns_domain').closest('.form-group').show();
$('#id_dynamicdns_user').closest('.form-group').show();
$('#id_dynamicdns_secret').closest('.form-group').show();
$('#id_showpw').closest('.form-group').show();
$('#id_dynamicdns_ipurl').closest('.form-group').show();
$('#id_use_ipv6').closest('.form-group').show();
}
set_mode();
})(jQuery);

View File

@ -3,28 +3,56 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
{% endcomment %}
{% load bootstrap %}
{% load i18n %}
{% load plinth_extras %}
{% load static %}
{% block configuration %}
<p>
{% blocktrans trimmed %}
If you are looking for a free dynamic DNS account, you may find
a free GnuDIP service at <a href='https://ddns.freedombox.org'
target='_blank'>ddns.freedombox.org</a> or you may find
free update URL based services at
<a href='http://freedns.afraid.org/' target='_blank'>
freedns.afraid.org</a>.
{% endblocktrans %}
</p>
<p>
{% blocktrans trimmed %}
If your {{ box_name }} is connected behind a NAT router, don't forget
to add port forwarding for standard ports, including TCP port 80 (HTTP)
and TCP port 443 (HTTPS).
{% endblocktrans %}
</p>
{% block extra_content %}
<h3>{% trans "Status" %}</h3>
{% if domains_status %}
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th>{% trans "Domain" %}</th>
<th>{% trans "Last update" %}</th>
<th>{% trans "Result" %}</th>
<th>{% trans "IP Address" %}</th>
</tr>
</thead>
<tbody>
{% for domain in domains_status.values %}
<tr>
<td>{{ domain.domain }}</td>
<td>{{ domain.timestamp|timesince }}</td>
<td>
{% if domain.result %}
<span class="badge badge-success">
{% trans "Success" %}
</span>
{% else %}
<span class="badge badge-warning">
{% trans "Failed" %}
</span>
{% endif %}
{% if domain.error_message %}
({{ domain.error_message }})
{% elif domain.error_code %}
({{ domain.error_code }})
{% endif %}
</td>
<td>{{ domain.ip_address|default_if_none:'-' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% else %}
{% trans "No status available." %}
{% endif %}
{% endblock %}
{% block page_js %}
<script type="text/javascript" src="{% static 'dynamicdns/dynamicdns.js' %}"></script>
{% endblock %}

View File

@ -1,31 +0,0 @@
{% extends "app.html" %}
{% comment %}
# SPDX-License-Identifier: AGPL-3.0-or-later
{% endcomment %}
{% load bootstrap %}
{% load i18n %}
{% load static %}
{% block configuration %}
<form class="form" method="post">
{% csrf_token %}
<noscript>
{% blocktrans trimmed %}
You have disabled Javascript. Dynamic form mode is disabled
and some helper functions may not work (but the main
functionality should work).
{% endblocktrans %}
</noscript>
{{ form|bootstrap }}
<input type="submit" class="btn btn-primary"
value="{% trans "Update setup" %}"/>
</form>
{% endblock %}
{% block page_js %}
<script type="text/javascript" src="{% static 'dynamicdns/dynamicdns.js' %}"></script>
{% endblock %}

View File

@ -1,37 +0,0 @@
{% extends "app.html" %}
{% comment %}
# SPDX-License-Identifier: AGPL-3.0-or-later
{% endcomment %}
{% load i18n %}
{% block configuration %}
<h3>{% trans "NAT type" %}</h3>
<p>
{% if nat_unchecked %}
{% blocktrans trimmed %}
NAT type was not detected yet. If you do not provide an "IP Check
URL", we will not detect a NAT type.
{% endblocktrans %}
{% else %}
{% if no_nat %}
{% trans "Direct connection to the Internet." %}
{% else %}
{% blocktrans trimmed %}
Behind NAT. This means that Dynamic DNS service will poll
the "URL to look up public IP" for changes (the "URL to look
up public IP" entry is needed for this, otherwise IP changes
will not be detected). In case the WAN IP changes, it may
take up to {{ timer }} minutes until your DNS entry is
updated.
{% endblocktrans %}
{% endif %}
{% endif %}
</p>
<h3>{% trans "Last update" %}</h3>
<p>{{ last_update }}</p>
{% endblock %}

View File

@ -3,8 +3,6 @@
Functional, browser based tests for dynamicdns app.
"""
import time
import pytest
from plinth.tests import functional
@ -14,6 +12,58 @@ pytestmark = [
pytest.mark.dynamicdns
]
_configs = {
'gnudip1': {
'service_type': 'gnudip',
'server': 'localhost',
'domain': 'freedombox.example.com',
'username': 'tester',
'password': 'testingtesting',
'ip_lookup_url': 'https://ddns.freedombox.org/ip/',
},
'gnudip2': {
'service_type': 'gnudip',
'server': '127.0.0.1',
'domain': 'freedombox2.example.com',
'username': 'tester2',
'password': 'testingtesting2',
'ip_lookup_url': 'https://ddns2.freedombox.org/ip/',
},
'noip.com': {
'service_type': 'noip.com',
'update_url': 'https://localhost/update3/',
'disable_ssl_cert_check': True,
'use_http_basic_auth': True,
'domain': 'freedombox3.example.com',
'username': 'tester3',
'password': 'testingtesting3',
'ip_lookup_url': 'https://ddns3.freedombox.org/ip/',
'use_ipv6': True,
},
'freedns.afraid.org': {
'service_type': 'freedns.afraid.org',
'update_url': 'https://localhost/update5/',
'disable_ssl_cert_check': False,
'use_http_basic_auth': False,
'domain': 'freedombox5.example.com',
'username': '',
'password': '',
'ip_lookup_url': '',
'use_ipv6': False,
},
'other': {
'service_type': 'other',
'update_url': 'https://localhost/update6/',
'disable_ssl_cert_check': False,
'use_http_basic_auth': False,
'domain': 'freedombox6.example.com',
'username': 'tester6',
'password': 'testingtesting6',
'ip_lookup_url': 'https://ddns6.freedombox.org/ip/',
'use_ipv6': False,
},
}
@pytest.fixture(scope='module', autouse=True)
def fixture_background(session_browser):
@ -21,104 +71,70 @@ def fixture_background(session_browser):
functional.login(session_browser)
def test_capitalized_domain_name(session_browser):
"""Test handling of capitalized domain name."""
_configure(session_browser)
_configure_domain(session_browser, 'FreedomBox.example.com')
assert _get_domain(session_browser) == 'freedombox.example.com'
class TestDynamicDNSApp(functional.BaseAppTests):
app_name = 'dynamicdns'
has_service = False
has_web = False
check_diagnostics = False
@staticmethod
def test_capitalized_domain_name(session_browser):
"""Test handling of capitalized domain name."""
_configure(session_browser, _configs['gnudip1'])
_configure(session_browser, {'domain': 'FreedomBox.example.com'})
_assert_has_config(session_browser,
{'domain': 'freedombox.example.com'})
@staticmethod
@pytest.mark.parametrize('config_name', list(_configs.keys()))
def test_various_form_values(session_browser, config_name):
"""Test feeding various values and check that they are saved."""
_configure(session_browser, _configs[config_name])
_assert_has_config(session_browser, _configs[config_name])
@staticmethod
@pytest.mark.backups
def test_backup_restore(session_browser):
"""Test backup and restore of configuration."""
_configure(session_browser, _configs['gnudip1'])
functional.backup_create(session_browser, 'dynamicdns',
'test_dynamicdns')
_configure(session_browser, _configs['gnudip2'])
functional.backup_restore(session_browser, 'dynamicdns',
'test_dynamicdns')
_assert_has_config(session_browser, _configs['gnudip1'])
def test_backup_and_restore(session_browser):
"""Test backup and restore of configuration."""
_configure(session_browser)
functional.backup_create(session_browser, 'dynamicdns', 'test_dynamicdns')
_change_config(session_browser)
functional.backup_restore(session_browser, 'dynamicdns', 'test_dynamicdns')
assert _has_original_config(session_browser)
# TODO Scenario: Configure GnuDIP service
# TODO Scenario: Configure noip.com service
# TODO Scenario: Configure selfhost.bz service
# TODO Scenario: Configure freedns.afraid.org service
# TODO Scenario: Configure other update URL service
def _configure(browser):
def _configure(browser, config):
functional.nav_to_module(browser, 'dynamicdns')
browser.links.find_by_href(
'/plinth/sys/dynamicdns/configure/').first.click()
browser.find_by_id('id_enabled').check()
browser.find_by_id('id_service_type').select('GnuDIP')
browser.find_by_id('id_dynamicdns_server').fill('example.com')
browser.find_by_id('id_dynamicdns_domain').fill('freedombox.example.com')
browser.find_by_id('id_dynamicdns_user').fill('tester')
browser.find_by_id('id_dynamicdns_secret').fill('testingtesting')
browser.find_by_id('id_dynamicdns_ipurl').fill(
'https://ddns.freedombox.org/ip/')
functional.submit(browser)
for key, value in config.items():
if key == 'service_type':
browser.find_by_id(f'id_{key}').select(value)
elif isinstance(value, bool):
if value:
browser.find_by_id(f'id_{key}').check()
else:
browser.find_by_id(f'id_{key}').uncheck()
else:
browser.find_by_id(f'id_{key}').fill(value)
# After a domain name change, Let's Encrypt will restart the web
# server and could cause a connection failure.
time.sleep(1)
functional.eventually(functional.nav_to_module, [browser, 'dynamicdns'])
functional.submit(browser, form_class='form-configuration')
def _has_original_config(browser):
def _assert_has_config(browser, config):
functional.nav_to_module(browser, 'dynamicdns')
browser.links.find_by_href(
'/plinth/sys/dynamicdns/configure/').first.click()
enabled = browser.find_by_id('id_enabled').value
service_type = browser.find_by_id('id_service_type').value
server = browser.find_by_id('id_dynamicdns_server').value
domain = browser.find_by_id('id_dynamicdns_domain').value
user = browser.find_by_id('id_dynamicdns_user').value
ipurl = browser.find_by_id('id_dynamicdns_ipurl').value
if enabled and service_type == 'GnuDIP' and server == 'example.com' \
and domain == 'freedombox.example.com' and user == 'tester' \
and ipurl == 'https://ddns.freedombox.org/ip/':
return True
else:
return False
for key, value in config.items():
if key == 'password':
continue
def _change_config(browser):
functional.nav_to_module(browser, 'dynamicdns')
browser.links.find_by_href(
'/plinth/sys/dynamicdns/configure/').first.click()
browser.find_by_id('id_enabled').check()
browser.find_by_id('id_service_type').select('GnuDIP')
browser.find_by_id('id_dynamicdns_server').fill('2.example.com')
browser.find_by_id('id_dynamicdns_domain').fill('freedombox2.example.com')
browser.find_by_id('id_dynamicdns_user').fill('tester2')
browser.find_by_id('id_dynamicdns_secret').fill('testingtesting2')
browser.find_by_id('id_dynamicdns_ipurl').fill(
'https://ddns2.freedombox.org/ip/')
functional.submit(browser)
# After a domain name change, Let's Encrypt will restart the web
# server and could cause a connection failure.
time.sleep(1)
functional.eventually(functional.nav_to_module, [browser, 'dynamicdns'])
def _configure_domain(browser, domain):
functional.nav_to_module(browser, 'dynamicdns')
browser.links.find_by_href(
'/plinth/sys/dynamicdns/configure/').first.click()
browser.find_by_id('id_dynamicdns_domain').fill(domain)
functional.submit(browser)
# After a domain name change, Let's Encrypt will restart the web
# server and could cause a connection failure.
time.sleep(1)
functional.eventually(functional.nav_to_module, [browser, 'dynamicdns'])
if isinstance(value, bool):
assert browser.find_by_id(f'id_{key}').checked == value
else:
assert value == browser.find_by_id(f'id_{key}').value
def _get_domain(browser):
functional.nav_to_module(browser, 'dynamicdns')
browser.links.find_by_href(
'/plinth/sys/dynamicdns/configure/').first.click()
return browser.find_by_id('id_dynamicdns_domain').value
return browser.find_by_id('id_domain').value

View File

@ -8,8 +8,6 @@ from django.urls import re_path
from . import views
urlpatterns = [
re_path(r'^sys/dynamicdns/$', views.index, name='index'),
re_path(r'^sys/dynamicdns/configure/$', views.configure, name='configure'),
re_path(r'^sys/dynamicdns/statuspage/$', views.statuspage,
name='statuspage'),
re_path(r'^sys/dynamicdns/$', views.DynamicDNSAppView.as_view(),
name='index'),
]

View File

@ -3,174 +3,81 @@
Views for the dynamicsdns module.
"""
import logging
import datetime
from django.contrib import messages
from django.template.response import TemplateResponse
from django.urls import reverse_lazy
from django.utils.translation import gettext as _
from django.utils.translation import gettext_lazy
from django.utils.translation import gettext_lazy as _
from plinth import actions
from plinth import views
from plinth.modules import dynamicdns
from plinth.signals import domain_added, domain_removed
from .forms import ConfigureForm
logger = logging.getLogger(__name__)
EMPTYSTRING = 'none'
class DynamicDNSAppView(views.AppView):
"""Serve configuration page."""
app_id = 'dynamicdns'
template_name = 'dynamicdns.html'
form_class = ConfigureForm
subsubmenu = [{
'url': reverse_lazy('dynamicdns:index'),
'text': gettext_lazy('About')
}, {
'url': reverse_lazy('dynamicdns:configure'),
'text': gettext_lazy('Configure')
}, {
'url': reverse_lazy('dynamicdns:statuspage'),
'text': gettext_lazy('Status')
}]
_error_messages = {
'timeout': _('Connection timed out'),
'gaierror': _('Could not find server'),
'TimeoutError': _('Connection timed out'),
'ConnectionRefusedError': _('Server refused connection'),
'ValueError': _('Already up-to-date')
}
def get_context_data(self, **kwargs):
"""Return the context data for rendering the template view."""
context = super().get_context_data(**kwargs)
status = dynamicdns.get_status()
config = dynamicdns.get_config()
domains_status = {}
for domain_name, domain in status['domains'].items():
if domain_name not in config['domains']:
continue
def index(request):
"""Serve Dynamic DNS page."""
return TemplateResponse(
request, 'dynamicdns.html', {
'app_info': dynamicdns.app.info,
'title': dynamicdns.app.info.name,
'subsubmenu': subsubmenu
})
# Create naive datetime object in local timezone
domain['timestamp'] = datetime.datetime.fromtimestamp(
domain['timestamp'])
domains_status[domain_name] = domain
if domain['error_code'] in self._error_messages:
domain['error_message'] = self._error_messages[
domain['error_code']]
context['domains_status'] = domains_status
return context
def configure(request):
"""Serve the configuration form."""
status = dynamicdns.get_status()
form = None
def get_initial(self):
"""Get the current values for the form."""
initial = super().get_initial()
domains = dynamicdns.get_config()['domains']
domain = list(domains.values())[0] if domains else {}
initial.update(domain)
return domain
if request.method == 'POST':
form = ConfigureForm(request.POST, initial=status)
if form.is_valid():
_apply_changes(request, status, form.cleaned_data)
status = dynamicdns.get_status()
form = ConfigureForm(initial=status)
else:
form = ConfigureForm(initial=status)
def form_valid(self, form):
"""Apply the changes submitted in the form."""
old_status = form.initial
new_status = form.cleaned_data
return TemplateResponse(
request, 'dynamicdns_configure.html', {
'title': _('Configure Dynamic DNS'),
'app_info': dynamicdns.app.info,
'form': form,
'subsubmenu': subsubmenu
})
if old_status != new_status:
config = dynamicdns.get_config()
try:
del config['domains'][old_status['domain']]
except KeyError:
pass
config['domains'][new_status['domain']] = new_status
dynamicdns.set_config(config)
if old_status.get('domain'):
dynamicdns.notify_domain_removed(old_status['domain'])
def statuspage(request):
"""Serve the status page."""
check_nat = _run(['get-nat'])
last_update = _run(['get-last-success'])
dynamicdns.notify_domain_added(new_status['domain'])
messages.success(self.request, _('Configuration updated'))
no_nat = check_nat.strip() == 'no'
nat_unchecked = check_nat.strip() == 'unknown'
timer = _run(['get-timer'])
# Perform an immediate update, even when configuration is not changed.
dynamicdns.update_dns(None)
if no_nat:
logger.info('Not behind a NAT')
if nat_unchecked:
logger.info('Did not check if behind a NAT')
return TemplateResponse(
request, 'dynamicdns_status.html', {
'title': _('Dynamic DNS Status'),
'app_info': dynamicdns.app.info,
'no_nat': no_nat,
'nat_unchecked': nat_unchecked,
'timer': timer,
'last_update': last_update,
'subsubmenu': subsubmenu
})
def _apply_changes(request, old_status, new_status):
"""Apply the changes to Dynamic DNS client."""
logger.info('New status is - %s', new_status)
logger.info('Old status was - %s', old_status)
if new_status['dynamicdns_secret'] == '':
new_status['dynamicdns_secret'] = old_status['dynamicdns_secret']
if new_status['dynamicdns_ipurl'] == '':
new_status['dynamicdns_ipurl'] = EMPTYSTRING
if new_status['dynamicdns_update_url'] == '':
new_status['dynamicdns_update_url'] = EMPTYSTRING
if new_status['dynamicdns_server'] == '':
new_status['dynamicdns_server'] = EMPTYSTRING
if new_status['service_type'] == 'GnuDIP':
new_status['dynamicdns_update_url'] = EMPTYSTRING
else:
new_status['dynamicdns_server'] = EMPTYSTRING
if old_status != new_status:
disable_ssl_check = "disabled"
use_http_basic_auth = "disabled"
use_ipv6 = "disabled"
if new_status['disable_SSL_cert_check']:
disable_ssl_check = "enabled"
if new_status['use_http_basic_auth']:
use_http_basic_auth = "enabled"
if new_status.get('use_ipv6'):
use_ipv6 = "enabled"
# Domain name is not case sensitive, but Let's Encrypt
# certificate paths use lower-case domain name.
new_domain_name = new_status['dynamicdns_domain'].lower()
_run([
'configure',
'-s',
new_status['dynamicdns_server'],
'-d',
new_domain_name,
'-u',
new_status['dynamicdns_user'],
'-p',
'-I',
new_status['dynamicdns_ipurl'],
'-U',
new_status['dynamicdns_update_url'],
'-c',
disable_ssl_check,
'-b',
use_http_basic_auth,
'-6',
use_ipv6,
], input=new_status['dynamicdns_secret'].encode())
if old_status['enabled']:
domain_removed.send_robust(sender='dynamicdns',
domain_type='domain-type-dynamic',
name=old_status['dynamicdns_domain'])
_run(['stop'])
if new_status['enabled']:
domain_added.send_robust(sender='dynamicdns',
domain_type='domain-type-dynamic',
name=new_domain_name, services='__all__')
_run(['start'])
messages.success(request, _('Configuration updated'))
else:
logger.info('Nothing changed')
def _run(arguments, input=None):
"""Run a given command and raise exception if there was an error."""
return actions.superuser_run('dynamicdns', arguments, input=input)
return super().form_valid(form)

View File

@ -153,6 +153,7 @@ class GitwebBackupRestore(BackupRestore):
def restore_post(self, packet):
"""Update access after restoration of backups."""
super().restore_post(packet)
app.update_service_access()

View File

@ -37,6 +37,7 @@ class MinetestAppView(AppView): # pylint: disable=too-many-ancestors
"""Change the configurations of Minetest service."""
data = form.cleaned_data
old_config = get_configuration()
updated = False
if old_config['max_players'] != data['max_players'] \
and data['max_players'] is not None:
@ -44,26 +45,27 @@ class MinetestAppView(AppView): # pylint: disable=too-many-ancestors
'minetest',
['configure', '--max_players',
str(data['max_players'])])
messages.success(self.request,
_('Maximum players configuration updated'))
updated = True
if old_config['creative_mode'] != data['creative_mode']:
value = 'true' if data['creative_mode'] else 'false'
actions.superuser_run('minetest',
['configure', '--creative_mode', value])
messages.success(self.request,
_('Creative mode configuration updated'))
updated = True
if old_config['enable_pvp'] != data['enable_pvp']:
value = 'true' if data['enable_pvp'] else 'false'
actions.superuser_run('minetest',
['configure', '--enable_pvp', value])
messages.success(self.request, _('PVP configuration updated'))
updated = True
if old_config['enable_damage'] != data['enable_damage']:
value = 'true' if data['enable_damage'] else 'false'
actions.superuser_run('minetest',
['configure', '--enable_damage', value])
messages.success(self.request, _('Damage configuration updated'))
updated = True
if updated:
messages.success(self.request, _('Configuration updated'))
return super().form_valid(form)

View File

@ -107,10 +107,12 @@ class SambaBackupRestore(BackupRestore):
def backup_pre(self, packet):
"""Save registry share configuration."""
super().backup_pre(packet)
actions.superuser_run('samba', ['dump-shares'])
def restore_post(self, packet):
"""Restore configuration."""
super().restore_post(packet)
actions.superuser_run('samba', ['setup'])
actions.superuser_run('samba', ['restore-shares'])

View File

@ -112,10 +112,12 @@ class TTRSSBackupRestore(BackupRestore):
def backup_pre(self, packet):
"""Save database contents."""
super().backup_pre(packet)
actions.superuser_run('ttrss', ['dump-database'])
def restore_post(self, packet):
"""Restore database contents."""
super().restore_post(packet)
actions.superuser_run('ttrss', ['restore-database'])

View File

@ -21,6 +21,6 @@ Alias /tt-rss-app /usr/share/tt-rss/www
<Location /tt-rss-app>
Include includes/freedombox-auth-ldap.conf
Require valid-user
# TODO Restrict access to `feed-reader` group
Require ldap-group cn=admin,ou=groups,dc=thisbox
Require ldap-group cn=feed-reader,ou=groups,dc=thisbox
</Location>

View File

@ -26,7 +26,7 @@ first_boot_steps = [
]
_description = [
_('Create and managed user accounts. These accounts serve as centralized '
_('Create and manage user accounts. These accounts serve as centralized '
'authentication mechanism for most apps. Some apps further require a '
'user account to be part of a group to authorize the user to access the '
'app.'),

View File

@ -113,10 +113,12 @@ class WordPressBackupRestore(BackupRestore):
def backup_pre(self, packet):
"""Save database contents."""
super().backup_pre(packet)
actions.superuser_run('wordpress', ['dump-database'])
def restore_post(self, packet):
"""Restore database contents."""
super().restore_post(packet)
actions.superuser_run('wordpress', ['restore-database'])

View File

@ -126,8 +126,10 @@ class ZophBackupRestore(BackupRestore):
def backup_pre(self, packet):
"""Save database contents."""
super().backup_pre(packet)
actions.superuser_run('zoph', ['dump-database'])
def restore_post(self, packet):
"""Restore database contents."""
super().restore_post(packet)
actions.superuser_run('zoph', ['restore-database'])

View File

@ -8,7 +8,7 @@ sudo apt-get install -yq --no-install-recommends \
python3-pip python3-wheel firefox-esr git smbclient\
xvfb
pip3 install splinter pytest-splinter pytest-xvfb
pip3 install splinter pytest-splinter pytest-xvfb pytest-reporter-html1
echo "Installing geckodriver"
(

View File

@ -9,7 +9,7 @@ from unittest.mock import Mock, call, patch
import pytest
from plinth.app import (App, Component, FollowerComponent, Info,
from plinth.app import (App, Component, EnableState, FollowerComponent, Info,
LeaderComponent, apps_init)
# pylint: disable=protected-access
@ -427,6 +427,28 @@ def test_info_clients_validation():
Info('test-app', 3, clients=clients)
def test_enable_state_key(app_with_components):
"""Test getting the storage key for enable state component."""
component = EnableState('enable-state-1')
with pytest.raises(KeyError):
assert component.key
app_with_components.add(component)
assert component.key == app_with_components.app_id + '_enable'
@pytest.mark.django_db
def test_enable_state_enable_disable(app_with_components):
"""Test enabling/disabling enable state component."""
component = EnableState('enable-state-1')
app_with_components.add(component)
assert not component.is_enabled()
component.enable()
assert component.is_enabled()
component.disable()
assert not component.is_enabled()
class ModuleTest1:
"""A test module with an app."""