Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
25fa10a368 | ||
|
|
b4bd102b17 | ||
|
|
7cad7a32dd | ||
|
|
d408edea98 | ||
|
|
5b2210a8a7 | ||
|
|
8c079e43c9 | ||
|
|
84a86743b2 | ||
|
|
ad33779356 | ||
|
|
f41e1e178f | ||
|
|
0c722c21d4 | ||
|
|
e112c1dc1e | ||
|
|
10a85e6bc5 | ||
|
|
cafa40decf | ||
|
|
e3ee2be685 | ||
|
|
57052a6011 |
No files matched your search
@@ -1,88 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
version=$1
|
||||
here=$(pwd)
|
||||
root=${PACKAGES_ROOT:-/var/www/packages.arasaka.software}
|
||||
keep=${FDROID_KEEP:-3}
|
||||
url=https://packages.arasaka.software/fdroid/repo
|
||||
fingerprint=5F52CFF4F52F4E0B6DA6CD044BFCEAF78D1D42DB24F2470602DB7F19CBFDF846
|
||||
id=software.arasaka.meweb
|
||||
apk=$here/releases/$version/MeWeb-$version-android.apk
|
||||
test -f "$apk"
|
||||
if [ -z "${MEWEB_KEYSTORE_B64:-}" ] || [ -z "${MEWEB_KEYSTORE_PASS:-}" ]; then
|
||||
echo "::error::the repository secrets MEWEB_KEYSTORE_B64 and MEWEB_KEYSTORE_PASS are not set"
|
||||
exit 1
|
||||
fi
|
||||
major=$(echo "$version" | cut -d. -f1)
|
||||
minor=$(echo "$version" | cut -d. -f2)
|
||||
patch=$(echo "$version" | cut -d. -f3)
|
||||
code=$((major * 10000 + minor * 100 + patch))
|
||||
|
||||
tools/setup.sh --group fdroid
|
||||
tools=$here/tools/fdroid/linux-x64
|
||||
pinned=$(sed -n 's/^fdroidserver==\([^ ]*\).*/\1/p' packaging/fdroid/requirements.txt)
|
||||
venv=$tools/fdroidserver-$pinned
|
||||
if [ ! -x "$venv/bin/fdroid" ]; then
|
||||
rm -rf "$venv"
|
||||
UV_CACHE_DIR=$tools/cache UV_PYTHON_INSTALL_DIR=$tools/python "$tools/uv-x86_64-unknown-linux-gnu/uv" venv -q --python 3.12 "$venv"
|
||||
UV_CACHE_DIR=$tools/cache "$tools/uv-x86_64-unknown-linux-gnu/uv" pip install -q --python "$venv/bin/python" --require-hashes -r packaging/fdroid/requirements.txt
|
||||
fi
|
||||
JAVA_HOME=$(ls -d "$here"/tools/jdk/linux-x64/*/ | head -n 1)
|
||||
ANDROID_HOME=$here/tools/android-sdk
|
||||
PATH=$JAVA_HOME/bin:$PATH
|
||||
export JAVA_HOME ANDROID_HOME PATH
|
||||
|
||||
exec 9>>"$root/.lock"
|
||||
flock -w 2700 9
|
||||
|
||||
keys=$(mktemp -d)
|
||||
trap 'rm -rf "$keys"' EXIT
|
||||
(umask 077 && printf '%s' "$MEWEB_KEYSTORE_B64" | base64 -d > "$keys/meweb.keystore")
|
||||
MEWEB_KEYSTORE=$keys/meweb.keystore
|
||||
export MEWEB_KEYSTORE MEWEB_KEYSTORE_PASS
|
||||
unset MEWEB_KEYSTORE_B64
|
||||
held=$(keytool -J-Duser.language=en -list -v -keystore "$MEWEB_KEYSTORE" -storepass:env MEWEB_KEYSTORE_PASS -alias meweb | sed -n 's/^.*SHA256: *//p' | tr -d ':')
|
||||
test "$held" = "$fingerprint"
|
||||
|
||||
state=$root/.fdroid
|
||||
snap=$state/$(date -u +%Y%m%d%H%M%S)-$version
|
||||
mkdir -p "$snap/repo" "$snap/metadata" "$snap/tmp"
|
||||
if [ -e "$root/fdroid/repo" ]; then
|
||||
prior=$(readlink -f "$root/fdroid/repo")/..
|
||||
for file in "$prior"/repo/*.apk; do
|
||||
[ -e "$file" ] && ln "$file" "$snap/repo/"
|
||||
done
|
||||
cp -a "$prior/metadata/." "$snap/metadata/"
|
||||
cp "$prior/repo/index-v2.json" "$snap/repo/"
|
||||
if [ -f "$prior/tmp/apkcache.json" ]; then cp "$prior/tmp/apkcache.json" "$snap/tmp/"; fi
|
||||
fi
|
||||
cp packaging/fdroid/config.yml "$snap/config.yml"
|
||||
chmod 600 "$snap/config.yml"
|
||||
cp packaging/fdroid/icon.png "$snap/icon.png"
|
||||
cp -r packaging/fdroid/metadata/. "$snap/metadata/"
|
||||
rm -f "$snap/repo/${id}_$code.apk"
|
||||
cp "$apk" "$snap/repo/${id}_$code.apk"
|
||||
(cd "$snap/repo" && ls "$id"_*.apk | sed 's/.*_\([0-9]*\)\.apk$/\1/' | sort -n | head -n "-$keep" | while read -r old; do
|
||||
rm -f "${id}_$old.apk"
|
||||
done)
|
||||
|
||||
(cd "$snap" && "$venv/bin/fdroid" update)
|
||||
rm -rf "$snap/repo/status"
|
||||
chmod -R u=rwX,go=rX "$snap/repo"
|
||||
|
||||
mkdir -p "$root/fdroid"
|
||||
ln -sfn "../.fdroid/$(basename "$snap")/repo" "$root/fdroid/repo.new"
|
||||
mv -T -f "$root/fdroid/repo.new" "$root/fdroid/repo"
|
||||
ls -1d "$state"/*/ | sort | head -n -3 | while read -r old; do
|
||||
find "$old" -maxdepth 0 -mmin +1440 -exec rm -rf {} +
|
||||
done
|
||||
echo "published ${id}_$code.apk in $root/fdroid/repo"
|
||||
|
||||
if [ "$root" = /var/www/packages.arasaka.software ]; then
|
||||
curl -fsS "$url/entry.jar" -o "$keys/entry.jar"
|
||||
signed=$(keytool -J-Duser.language=en -printcert -jarfile "$keys/entry.jar" | sed -n 's/^.*SHA256: *//p' | head -n 1 | tr -d ':')
|
||||
test "$signed" = "$fingerprint"
|
||||
curl -fsS "$url/index-v2.json" | grep -Eq "\"versionCode\": ?$code\b"
|
||||
curl -fsSI "$url/${id}_$code.apk" > /dev/null
|
||||
echo "live at $url: $id $version ($code)"
|
||||
fi
|
||||
@@ -1,99 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
version=$1
|
||||
releases=$(pwd)/releases/$version
|
||||
root=${PACKAGES_ROOT:-/var/www/packages.arasaka.software}
|
||||
keep=${PACKAGES_KEEP:-5}
|
||||
url=https://packages.arasaka.software
|
||||
fingerprint=F92C166E9B1C13EDD1629E76888DCF969D133FB2
|
||||
deb=$releases/MeWeb-$version-linux-x64.deb
|
||||
rpm=$releases/MeWeb-$version-linux-x64.rpm
|
||||
test -f "$deb"
|
||||
test -f "$rpm"
|
||||
|
||||
exec 9>>"$root/.lock"
|
||||
flock -w 2700 9
|
||||
|
||||
keys=$(mktemp -d)
|
||||
trap 'rm -rf "$keys"' EXIT
|
||||
export GNUPGHOME="$keys"
|
||||
printf '%s\n' "$PACKAGES_SIGNING_KEY" | gpg --batch --quiet --import
|
||||
gpg --batch --with-colons --list-secret-keys | grep -q "^fpr:::::::::$fingerprint:$"
|
||||
gpg --batch --armor --export "$fingerprint" > "$keys/public.asc"
|
||||
|
||||
rpmsign --define "__gpg /usr/bin/gpg" --define "_gpg_name $fingerprint" --define "_gpg_path $keys" --addsign "$rpm" >/dev/null
|
||||
rpmkeys --dbpath "$keys/rpmdb" --import "$keys/public.asc"
|
||||
rpmkeys --dbpath "$keys/rpmdb" -K "$rpm" | grep -q 'digests signatures OK'
|
||||
|
||||
full=$(dpkg-deb -f "$deb" Version)
|
||||
test "$(dpkg-deb -f "$deb" Package)" = meweb
|
||||
test "${full%-*}" = "$version"
|
||||
debname=meweb_${full}_$(dpkg-deb -f "$deb" Architecture).deb
|
||||
rpmname=$(rpm -qp --nosignature --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm' "$rpm")
|
||||
test "$(rpm -qp --nosignature --qf '%{NAME} %{VERSION}' "$rpm")" = "meweb $version"
|
||||
|
||||
snap=$root/.snap/$(date -u +%Y%m%d%H%M%S)-$version
|
||||
mkdir -p "$snap/apt/pool/main" "$snap/rpm"
|
||||
if [ -d "$root/apt/pool/main" ]; then cp -al "$root/apt/pool/main/." "$snap/apt/pool/main/"; fi
|
||||
if [ -d "$root/rpm" ]; then
|
||||
for folder in "$root"/rpm/*/; do
|
||||
[ "$(basename "$folder")" = repodata ] || cp -al "$folder" "$snap/rpm/"
|
||||
done
|
||||
fi
|
||||
mkdir -p "$snap/apt/pool/main/m/meweb" "$snap/rpm/meweb"
|
||||
rm -f "$snap/apt/pool/main/m/meweb/$debname" "$snap/rpm/meweb/$rpmname"
|
||||
cp "$deb" "$snap/apt/pool/main/m/meweb/$debname"
|
||||
cp "$rpm" "$snap/rpm/meweb/$rpmname"
|
||||
for folder in "$snap/apt/pool/main/m/meweb" "$snap/rpm/meweb"; do
|
||||
ls "$folder" | sed -E 's/^meweb[_-]([0-9.]+)-.*/\1/' | sort -uV | head -n "-$keep" | while read -r old; do
|
||||
rm -f "$folder/meweb_$old-"* "$folder/meweb-$old-"*
|
||||
done
|
||||
done
|
||||
|
||||
binary=$snap/apt/dists/stable/main/binary-amd64
|
||||
mkdir -p "$binary"
|
||||
(cd "$snap/apt" && apt-ftparchive packages pool) > "$binary/Packages"
|
||||
gzip -9nc "$binary/Packages" > "$binary/Packages.gz"
|
||||
(cd "$snap/apt/dists/stable" && apt-ftparchive \
|
||||
-o APT::FTPArchive::Release::Origin=Arasaka -o APT::FTPArchive::Release::Label=Arasaka \
|
||||
-o APT::FTPArchive::Release::Suite=stable -o APT::FTPArchive::Release::Codename=stable \
|
||||
-o APT::FTPArchive::Release::Architectures=amd64 -o APT::FTPArchive::Release::Components=main \
|
||||
-o APT::FTPArchive::Release::NotAutomatic=yes -o APT::FTPArchive::Release::ButAutomaticUpgrades=yes \
|
||||
-o "APT::FTPArchive::Release::Description=Arasaka packages" release .) > "$keys/Release"
|
||||
mv "$keys/Release" "$snap/apt/dists/stable/Release"
|
||||
gpg --batch --yes --local-user "$fingerprint" --clearsign -o "$snap/apt/dists/stable/InRelease" "$snap/apt/dists/stable/Release"
|
||||
gpg --batch --yes --local-user "$fingerprint" --armor --detach-sign -o "$snap/apt/dists/stable/Release.gpg" "$snap/apt/dists/stable/Release"
|
||||
|
||||
createrepo_c --quiet "$snap/rpm"
|
||||
repodata=$snap/rpm/repodata
|
||||
gpg --batch --yes --local-user "$fingerprint" --armor --detach-sign -o "$repodata/repomd.xml.asc" "$repodata/repomd.xml"
|
||||
cp "$keys/public.asc" "$repodata/repomd.xml.key"
|
||||
if [ -f "$root/rpm/repodata/repomd.xml" ]; then
|
||||
grep -o 'repodata/[^"]*' "$root/rpm/repodata/repomd.xml" | while read -r href; do
|
||||
[ -e "$snap/rpm/$href" ] || cp "$root/rpm/$href" "$snap/rpm/$href"
|
||||
done
|
||||
fi
|
||||
chmod -R u=rwX,go=rX "$snap"
|
||||
|
||||
for part in apt rpm; do
|
||||
ln -sfn ".snap/$(basename "$snap")/$part" "$root/$part.new"
|
||||
mv -T -f "$root/$part.new" "$root/$part"
|
||||
done
|
||||
ls -1d "$root"/.snap/* | sort | head -n -3 | while read -r old; do
|
||||
find "$old" -maxdepth 0 -mmin +1440 -exec rm -rf {} +
|
||||
done
|
||||
echo "published $debname and $rpmname in $root"
|
||||
|
||||
(cd "$releases" && for file in $(ls | LC_ALL=C sort); do [ "$file" = SHA256SUMS.txt ] || sha256sum "$file"; done) > "$keys/sums"
|
||||
mv "$keys/sums" "$releases/SHA256SUMS.txt"
|
||||
|
||||
if [ "$root" = /var/www/packages.arasaka.software ]; then
|
||||
curl -fsS "$url/apt/dists/stable/main/binary-amd64/Packages" | grep -qx "Version: $full"
|
||||
curl -fsS "$url/apt/dists/stable/InRelease" > "$keys/InRelease"
|
||||
gpg --batch --quiet --verify "$keys/InRelease"
|
||||
curl -fsS "$url/rpm/repodata/repomd.xml" > "$keys/repomd.xml"
|
||||
curl -fsS "$url/rpm/repodata/repomd.xml.asc" > "$keys/repomd.xml.asc"
|
||||
gpg --batch --quiet --verify "$keys/repomd.xml.asc" "$keys/repomd.xml"
|
||||
curl -fsSI "$url/rpm/meweb/$rpmname" > /dev/null
|
||||
echo "live at $url: meweb $version"
|
||||
fi
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
echo "VERSION=$version" >> "$GITHUB_ENV"
|
||||
echo "COMMIT=$(echo "$GITHUB_SHA" | cut -c1-8)" >> "$GITHUB_ENV"
|
||||
keep="$HOME/.cache/meweb"
|
||||
for dir in tools/cache tools/jdk tools/packaging tools/android-sdk tools/fdroid; do
|
||||
for dir in tools/cache tools/jdk tools/packaging tools/android-sdk; do
|
||||
mkdir -p "$keep/$dir"
|
||||
rm -rf "$dir"
|
||||
ln -s "$keep/$dir" "$dir"
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
version=$1
|
||||
releases=$(pwd)/releases/$version
|
||||
rpm=$releases/MeWeb-$version-linux-x64.rpm
|
||||
fingerprint=F92C166E9B1C13EDD1629E76888DCF969D133FB2
|
||||
test -f "$rpm"
|
||||
keys=$(mktemp -d)
|
||||
trap 'rm -rf "$keys"' EXIT
|
||||
export GNUPGHOME="$keys"
|
||||
printf '%s\n' "$PACKAGES_SIGNING_KEY" | gpg --batch --quiet --import
|
||||
gpg --batch --with-colons --list-secret-keys | grep -q "^fpr:::::::::$fingerprint:$"
|
||||
gpg --batch --armor --export "$fingerprint" > "$keys/public.asc"
|
||||
rpmsign --define "__gpg /usr/bin/gpg" --define "_gpg_name $fingerprint" --define "_gpg_path $keys" --addsign "$rpm" > /dev/null
|
||||
rpmkeys --dbpath "$keys/rpmdb" --import "$keys/public.asc"
|
||||
rpmkeys --dbpath "$keys/rpmdb" -K "$rpm" | grep -q 'digests signatures OK'
|
||||
(cd "$releases" && for file in $(ls | LC_ALL=C sort); do [ "$file" = SHA256SUMS.txt ] || sha256sum "$file"; done) > "$keys/sums"
|
||||
mv "$keys/sums" "$releases/SHA256SUMS.txt"
|
||||
echo "signed $(basename "$rpm") with $fingerprint"
|
||||
@@ -22,6 +22,15 @@ jobs:
|
||||
- name: Prepare
|
||||
run: .gitea/scripts/prepare.sh
|
||||
|
||||
- name: Release notes from the commit messages since the previous tag
|
||||
uses: https://git.thepra.dev/Arasaka/app-stores/changelog@v1
|
||||
with:
|
||||
prefix: v
|
||||
name: me-web?
|
||||
strip: '^["“]?me-web\?["”]? [\d.]+:\s*'
|
||||
packager: Arasaka di Hvozdikov Yevheniy <https://arasaka.software/contact>
|
||||
output: artifacts/notes
|
||||
|
||||
- name: The server
|
||||
run: tools/release.sh server --commit "$COMMIT"
|
||||
|
||||
@@ -43,21 +52,17 @@ jobs:
|
||||
MEWEB_KEYSTORE_PASS: ${{ secrets.MEWEB_KEYSTORE_PASS }}
|
||||
run: .gitea/scripts/android.sh
|
||||
|
||||
- name: The deb and rpm on packages.arasaka.software, the rpm signed
|
||||
- name: The changelog beside the files
|
||||
run: cp artifacts/notes/CHANGELOG.md "releases/$VERSION/"
|
||||
|
||||
- name: The rpm signed with the Arasaka packages key
|
||||
if: ${{ github.ref_type == 'tag' }}
|
||||
env:
|
||||
PACKAGES_SIGNING_KEY: ${{ secrets.PACKAGES_SIGNING_KEY }}
|
||||
run: .gitea/scripts/packages.sh "$VERSION"
|
||||
run: .gitea/scripts/sign-rpm.sh "$VERSION"
|
||||
|
||||
- name: Publish the release
|
||||
if: ${{ github.ref_type == 'tag' || inputs.publish == 'true' }}
|
||||
env:
|
||||
RELEASE_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
||||
run: .gitea/scripts/release.sh "v$VERSION" releases/"$VERSION"/*
|
||||
|
||||
- name: The APK in the F-Droid repository on packages.arasaka.software
|
||||
if: ${{ github.ref_type == 'tag' }}
|
||||
env:
|
||||
MEWEB_KEYSTORE_B64: ${{ secrets.MEWEB_KEYSTORE_B64 }}
|
||||
MEWEB_KEYSTORE_PASS: ${{ secrets.MEWEB_KEYSTORE_PASS }}
|
||||
run: .gitea/scripts/fdroid.sh "$VERSION"
|
||||
@@ -17,7 +17,6 @@ appsettings.*.local.json
|
||||
/tools/packaging/
|
||||
/tools/android-sdk/
|
||||
/tools/cache/
|
||||
/tools/fdroid/
|
||||
/tools/logs/
|
||||
/.claude/settings.local.json
|
||||
/artifacts/
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Read this first. **`PATTERNS.md` is canonical for how code is written** (cite "PATTERNS #n"); **`CLAUDE.md` is the
|
||||
quick reference** (commands, map, pitfalls). When a tool in the repo enforces a rule (the compiler, `.editorconfig`,
|
||||
`tools/lint.cs`), the tool is the source of truth.
|
||||
the house-rules analyzer), the tool is the source of truth.
|
||||
|
||||
## What MeWeb is
|
||||
|
||||
@@ -19,7 +19,7 @@ Free software under AGPL-3.0, published by Arasaka di Hvozdikov Yevheniy.
|
||||
- **No comments in source** — none, of any kind (#42).
|
||||
- **No `private`**, no `_` prefixes, **`Nullable` disabled**, **2-space indent**, **`var` everywhere** (#92).
|
||||
- **Primary constructors**, `IOptionsMonitor<T>`, `CancellationToken` last and forwarded (#1, #87, #88).
|
||||
- **Routes only in `src/MeWeb.Shared/Endpoints.cs`** (#9); DTOs are classes named `View*`, `Upsert*`, `*Form` (#34).
|
||||
- **Routes only in `src/MeWeb.Shared/Endpoints.cs`** (#9); DTOs are classes named `View*`, `*Request`, `*Form` (#34).
|
||||
- **UI text:** resx keys only, sentence case, every language present, drafts labelled (#39, #50, #125).
|
||||
- **Every outbound host is declared** in the app's "What this app contacts" screen (#120).
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ dotnet run tools/setup.cs -- --group packaging # pinned nfpm into to
|
||||
dotnet build src/MeWeb.Android/MeWeb.Android.csproj \
|
||||
-p:JavaSdkDirectory=$PWD/tools/jdk/linux-x64/jdk-21.0.12+8 -p:AndroidSdkDirectory=$HOME/Android/Sdk
|
||||
dotnet run --project tools/Screenshots -- dist/screenshots [en,it,...]
|
||||
dotnet run --project tools/Screenshots -- --store # store set: fastlane/metadata/android/{en-US,it-IT}/images/phoneScreenshots
|
||||
tools/release.sh notes # artifacts/release-notes.md alone, nothing built
|
||||
dotnet run tools/strings.cs -- check # every language against English
|
||||
dotnet run tools/strings.cs -- set Key values.json # one key, every language at once
|
||||
@@ -44,7 +45,8 @@ is root-owned, so CI uses the runner user's own `~/.dotnet` (passolo's `tools/re
|
||||
| `MEWEB_KEYSTORE` | release step | a temporary file in `$RUNNER_TEMP` decoded by `.gitea/scripts/android.sh`, removed on exit |
|
||||
|
||||
`build.yml` runs on every push to `master`; `release.yml` on a `v*` tag (publishes the Gitea release) or by hand
|
||||
(`publish: false` builds every platform and deploys the server only). Both run on the Arasaka org runner `nuvola`,
|
||||
(`publish: false` builds every platform and deploys the server only). Both run on `nuvola`, the instance-wide runner
|
||||
on the box (since 1 Nov 2026 it also takes the jobs labelled `build`),
|
||||
user `gitea-runner`, home `/var/lib/gitea-runner`: `tools/sdk.sh` installs the SDK from `global.json` into its
|
||||
`~/.dotnet` (the system SDK in `/opt/dotnet` is older and root-owned), and the JDK, nfpm and the Android SDK are
|
||||
cached in `~/.cache/meweb`. There is deliberately no `pull_request` trigger: the runner is the production box.
|
||||
@@ -75,7 +77,7 @@ The Android release key: alias `meweb`, certificate SHA-256
|
||||
| `src/MeWeb.Server/KnowledgeFeeder.cs` | refreshes the open network data under `/var/lib/meweb/knowledge` every six hours (iptoasn daily, DB-IP monthly, eight RouteViews RIBs weekly through `bzcat` (one or two collectors per continent, `Collectors`; each counts once per network in `UpstreamTally`, and a path's first AS, the collector's own neighbour, is never taken for an upstream), the AOSP carrier list weekly, the address registries' block files weekly (`Registries`: RIPE's and APNIC's `inetnum` and `inet6num` split files, AFRINIC's whole dump, LACNIC's `lacnic.db`)), builds `ip2asn.bin`, `networks.bin`, `carriers.json`, `registry.bin` (every block of the four, `RegistryBuilder`) and `SOURCES.txt` with `MeWeb.Core/Knowledge/Sources.cs`, and serves them at `/api/knowledge` |
|
||||
| `tools/knowledge.cs` | takes the server's knowledge files (`MEWEB_KNOWLEDGE_URL`, default the public server; the release sets `http://127.0.0.1:5480` after deploying the server first) into `artifacts/knowledge/`, checking each SHA-256, and falls back to building `ip2asn.bin` alone from iptoasn (`--local` forces that); `MeWeb.Core` embeds whatever is there; `tools/release.cs` runs it before every app build |
|
||||
| `tools/setup.cs` + `setup.json` | pinned build tools |
|
||||
| `tools/Screenshots` | headless renders of every view in every language |
|
||||
| `tools/Screenshots` | headless renders of every view in every language; it runs a real check, in a throwaway app folder (`AppServices.Folder`), so the developer's own history and settings stay untouched. `--store` runs no check: it replays the invented run in `StoreRun.cs` (a phone on home Wi-Fi behind CGNAT with its own IPv6, documentation addresses, "Example Net" on AS64500, findings computed by `Verdicts`) on a fake `android` platform and writes the six 1080×1920 store screenshots per language, laid out at 405×720 and rendered at 1080/405. Headless rounds a window's logical size up to whole units before scaling, so a store size must be a whole number of units (411.4×731.4 at 2.625 came out 1082×1922) |
|
||||
| `branding/` | the icon (SVG source, PNG, ICO) |
|
||||
|
||||
## Pitfalls
|
||||
@@ -159,34 +161,29 @@ The Android release key: alias `meweb`, certificate SHA-256
|
||||
the network and the block without the publisher's server. A change to any knowledge file's format bumps
|
||||
`KnowledgeFeeder.Format` and the `"format":N` that `wait-knowledge.sh` waits for: the feeder rebuilds only when a
|
||||
source changes or the format differs, and a release must not embed the previous build.
|
||||
- **The deb and rpm reach packages.arasaka.software from this repository's own release job.** On tags,
|
||||
`.gitea/scripts/packages.sh` runs on the `nuvola` runner (host mode, user `gitea-runner`, which owns
|
||||
`/var/www/packages.arasaka.software`). It imports the org secret `PACKAGES_SIGNING_KEY` into a throwaway
|
||||
`GNUPGHOME`, refuses any key but `F92C166E…3FB2`, signs the rpm in place, hard-links the current pool into a new
|
||||
`.snap/` folder, adds this version, keeps the newest five, rebuilds and signs the apt (`InRelease`, `Release.gpg`)
|
||||
and rpm (`repomd.xml.asc`) metadata, carries over the files the previous `repomd.xml` named so a client mid-refresh
|
||||
still finds them, swaps the `apt` and `rpm` links, rewrites `SHA256SUMS.txt` for the signed rpm, and checks the live
|
||||
site. Never copy a package over a pool file: the pools are hard links into older snapshots, so it is `rm` then `cp`.
|
||||
`PACKAGES_ROOT` and `PACKAGES_KEEP` exist for a test against a copy. YoloCICD, which used to do this, was erased on
|
||||
23 Oct 2026. `packaging/arasaka-repository.sh` is written into both maintainer scripts by `tools/release.cs`; it is
|
||||
now maintained here by hand, and any change to a file it writes needs the old content's SHA-256 kept in
|
||||
- **packages.arasaka.software is fed from outside this repository** (since 1 Nov 2026). The private repository
|
||||
`thepra/packages.arasaka.software` lists this app in `apps/meweb.yml`, reads every `v*` release from the Releases
|
||||
tab every 15 minutes, and publishes the newest five debs and rpms, the newest three APKs in the F-Droid repository
|
||||
and the newest Windows and macOS files under `/download/meweb/`, all signed with keys that live as `thepra`'s own
|
||||
secrets. Its README is the reference. What this repository still owes it:
|
||||
- **The release must carry every file named in that entry and list each in `SHA256SUMS.txt`**, or the publisher
|
||||
leaves the version out and keeps serving the previous one. Renaming a release file means changing `apps/meweb.yml`
|
||||
in the same hour.
|
||||
- **The rpm is signed here, before the release is published**, by `.gitea/scripts/sign-rpm.sh` with the Arasaka org
|
||||
secret `PACKAGES_SIGNING_KEY` (it refuses any key but `F92C166E…3FB2`), which then rewrites `SHA256SUMS.txt`, so
|
||||
the README's promise holds for the file on the release page too; the publisher sees the signature and keeps it.
|
||||
- **The store listing is `fastlane/metadata/android/`** (`en-US` and `it-IT`: name, short and full description,
|
||||
icon, banner, the six screenshots from `tools/Screenshots --store`), in Google Play's layout. The publisher reads
|
||||
it from `master`, not from a release tag, so F-Droid shows a change within a quarter of an hour. The banner is
|
||||
drawn by `Arasaka/app-stores`' `listing/banner.py meweb`. The F-Droid repository's own settings and icon live in
|
||||
the publisher's repository.
|
||||
- **The APK's signing key also signs the F-Droid index**, so `MEWEB_KEYSTORE_B64` exists twice: here, to sign the
|
||||
APK, and as `thepra`'s `FDROID_KEYSTORE_B64`. The publisher refuses an APK signed by anything but `5f52cff4…f846`.
|
||||
- `packaging/arasaka-repository.sh` is written into both maintainer scripts by `tools/release.cs`; it is
|
||||
maintained here by hand, and any change to a file it writes needs the old content's SHA-256 kept in
|
||||
`arasaka_repository_known`, or installed copies are treated as edited by hand and left alone. The package owns
|
||||
`/usr/share/arasaka-repository/meweb`, the marker that keeps the repository configured while any Arasaka package
|
||||
is installed. The signing key's only copies are that secret and the owner's Nextcloud backup.
|
||||
- **The APK reaches an F-Droid repository on packages.arasaka.software from the same job** (31 Oct 2026), after the
|
||||
release is published, so the repository can lag the release page but never lead it. `.gitea/scripts/fdroid.sh`
|
||||
installs fdroidserver into `tools/fdroid` (cached like the JDK) with uv from `setup.json` and the hash-locked
|
||||
`packaging/fdroid/requirements.txt`, because the box has no `ensurepip` and the apt package would bring 242 others.
|
||||
It signs the repository with the APK's own key (`MEWEB_KEYSTORE_B64` and `MEWEB_KEYSTORE_PASS`, alias `meweb`), so
|
||||
the F-Droid fingerprint is the certificate's `5F52CFF4…FDF846` and there is no second key to lose; it refuses any
|
||||
other. It builds a new snapshot in
|
||||
`/var/www/packages.arasaka.software/.fdroid/` from the live one (the APKs as hard links, so `rm` then `cp` as above;
|
||||
the metadata, `apkcache.json` and the previous `index-v2.json`, which is where fdroidserver reads each APK's first
|
||||
date), adds this version, keeps the newest three, runs `fdroid update`, deletes `repo/status/` (it names the
|
||||
build machine's paths and `/etc/issue.net`), swaps the `fdroid/repo` link and checks the live signature. The key
|
||||
was already never to be regenerated; now everyone who added the repository trusts only its fingerprint too. `packaging/fdroid/` holds the
|
||||
repository's settings, its icon (the Arasaka emblem) and the app's listing in English and Italian; the download
|
||||
page links to it and to Obtainium (`Endpoints.FDroid`, source `FDroidRepo`).
|
||||
is installed. The portal app (`arasaka.software`, `arasaka-portal`) carries a byte-identical copy; change both.
|
||||
- **The server cannot ping**: `NoNewPrivileges` drops `ping`'s file capability and `ping_group_range` is closed, so
|
||||
the trace back to a caller uses `tracepath` (UDP, unprivileged) and keeps only public hops outside `Probe:Refuse`,
|
||||
so the box's own network never reaches an app.
|
||||
@@ -206,6 +203,9 @@ The Android release key: alias `meweb`, certificate SHA-256
|
||||
phone with several): `AndroidPlatform` reads `ActivityManager.MemoryInfo.TotalMem`, Linux `/proc/meminfo`.
|
||||
- **`DriveInfo` on Unix takes any path** (it calls `statvfs`): pass the app's folder, not `/`, or Android reads the
|
||||
read-only root and reports no free disk at all.
|
||||
- **A wireless mouse is a battery to Linux.** `/sys/class/power_supply` lists the batteries of mice, keyboards, headsets
|
||||
and game controllers too (`type` Battery, `scope` Device); only one without `scope` Device makes a laptop. Until
|
||||
0.15.4 the owner's desktop read as a laptop because of an MX Master 4 (MW-VRST-EK5A).
|
||||
- **An IPv6 address only wraps at a colon if it is allowed to**: the path's detail lines put U+200B after each colon;
|
||||
they are plain `TextBlock`s for that reason, so a copy never carries the invisible character (the cards' values,
|
||||
which are selectable, stay untouched).
|
||||
@@ -222,10 +222,13 @@ The Android release key: alias `meweb`, certificate SHA-256
|
||||
themed icons), and the splash uses the same foreground. Both vectors hold `branding/meweb.svg`'s drawing scaled into
|
||||
the central 66 of 108 units around its smallest enclosing circle; a change to the drawing goes into all three files.
|
||||
The plain `mipmap-xxxhdpi/icon.png` is only for Android 7.x.
|
||||
- **Release notes are the commits since the previous tag.** `tools/release.cs` writes "What's new" from each
|
||||
commit's subject (without the `me-web? x.y:` prefix, quoted or not) and body, dropping trailers and any line that mentions Claude;
|
||||
the release step needs `fetch-depth: 0` for the tags. So a commit body is written for the people who download the
|
||||
release: plain words, one bullet per change they would notice.
|
||||
- **Release notes are the commits since the previous tag** (since 1 November 2026 written by the shared
|
||||
`Arasaka/app-stores` `changelog@v1` action in `release.yml`, into `artifacts/notes/`; `tools/release.cs` reads its
|
||||
`notes.md` for the release text and hands its `changelog.yml` to nfpm). Each commit's subject (without the
|
||||
`me-web? x.y:` prefix, quoted or not) and its whole body, with the attribution trailers dropped, go to the Releases tab,
|
||||
`CHANGELOG.md` beside the files, the deb's and rpm's own changelog, and on packages.arasaka.software to the page,
|
||||
F-Droid's What's new, `apt changelog` and dnf's advisories. So a commit body is written for the people who download
|
||||
the release: plain words, one bullet per change they would notice.
|
||||
- **The name is quoted inside a sentence, in each language's own marks, and bare where it stands alone.** “me-web?”
|
||||
in English, «me-web?» in Italian, „me-web?“ in German, « me-web? » (no-break spaces) in French, 「me-web?」 in
|
||||
Japanese: unquoted in a sentence, the question mark reads as its end ("What me-web? found"). Alone, as a title or a
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<Version>0.15.1</Version>
|
||||
<Version>0.16.0</Version>
|
||||
<Product>me-web?</Product>
|
||||
<Company>Arasaka di Hvozdikov Yevheniy</Company>
|
||||
<Copyright>© 2026 Arasaka di Hvozdikov Yevheniy</Copyright>
|
||||
@@ -13,5 +13,8 @@
|
||||
<GenerateDocumentationFile>false</GenerateDocumentationFile>
|
||||
<InvariantGlobalization>false</InvariantGlobalization>
|
||||
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
|
||||
<HouseRulesDtoNamespaces>MeWeb.Shared</HouseRulesDtoNamespaces>
|
||||
<HouseRulesFormatHelpers>NumbersExtensions,Texts</HouseRulesFormatHelpers>
|
||||
<WarningsAsErrors>$(WarningsAsErrors);HR0001;HR0002;HR0003;HR0004;HR0005;HR0006;HR0007;HR0008;HR0009;HR0010;HR0011;HR0012;HR0013;HR0101;HR0102;HR0103;HR0104;HR0105;HR0106;HR0107;HR0108;HR0201</WarningsAsErrors>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -1,7 +1,7 @@
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
||||
<AvaloniaVersion>12.1.4</AvaloniaVersion>
|
||||
<AvaloniaVersion>12.1.6</AvaloniaVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageVersion Include="Avalonia" Version="$(AvaloniaVersion)" />
|
||||
@@ -14,9 +14,16 @@
|
||||
<PackageVersion Include="Avalonia.HarfBuzz" Version="$(AvaloniaVersion)" />
|
||||
<PackageVersion Include="AvaloniaUI.DiagnosticsSupport" Version="2.2.3" />
|
||||
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.2" />
|
||||
<PackageVersion Include="QRCoder" Version="1.8.0" />
|
||||
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.13" />
|
||||
<PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.13" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Core.SplashScreen" Version="1.0.1.15" />
|
||||
<PackageVersion Include="QRCoder" Version="1.8.1" />
|
||||
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.14" />
|
||||
<PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.14" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Core.SplashScreen" Version="1.2.0.3" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Lifecycle.LiveData.Core" Version="2.11.0.1" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Lifecycle.Process" Version="2.11.0.1" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Lifecycle.ViewModelSavedState" Version="2.11.0.1" />
|
||||
<PackageVersion Include="Xamarin.AndroidX.Lifecycle.ViewModelSavedState.Android" Version="2.11.0.1" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<GlobalPackageReference Include="Arasaka.HouseRules.Analyzers" Version="1.1.0" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -1,7 +1,7 @@
|
||||
# PATTERNS.md — MeWeb house rulings
|
||||
|
||||
The canonical standards doc. **On any conflict about how to write code, a ruling here wins**; cite it in review as
|
||||
"PATTERNS #n". `AGENT.md` is the operational contract, `CLAUDE.md` the quick reference and pitfalls.
|
||||
The canonical standards doc. **On any conflict about how to write code, a ruling here wins**, except over the owner's
|
||||
house rules (next section), which win over everything; cite a ruling in review as "PATTERNS #n". `AGENT.md` is the operational contract, `CLAUDE.md` the quick reference and pitfalls.
|
||||
|
||||
Numbering is shared with the house lineage (SimpleSchool, passolo, odysseus, zigzag.academy): **#42, #51, #86–#93
|
||||
mean the same thing in every repo**, and the text below follows passolo's wording wherever the subject is the same.
|
||||
@@ -10,6 +10,54 @@ only MeWeb needs start at **#120**.
|
||||
|
||||
Scope: `src/`, `tools/`. Out of scope: generated files (`obj/`, `*.g.cs`), third-party trees, the licence text.
|
||||
|
||||
## House rules
|
||||
|
||||
The owner's rules for every .NET project (`~/RiderProjects/HouseRules/RULES.md`, repo `Arasaka/HouseRules`) apply
|
||||
here. `Arasaka.HouseRules.Analyzers` (a `GlobalPackageReference` in `Directory.Packages.props`) reports the checkable
|
||||
ones as `HRxxxx` warnings, they are listed in `WarningsAsErrors`, and `tools/ci.sh` builds with `-warnaserror` too.
|
||||
MeWeb builds with none and carries no suppression. Applied to MeWeb:
|
||||
|
||||
- **Coding style:**
|
||||
- `var` for every local, `var x = default(T)` when there is no value yet (HR0001, #92).
|
||||
- `IOptionsMonitor<T>.CurrentValue` (HR0002, #87).
|
||||
- Primary constructors, using the parameters directly (HR0004, #1).
|
||||
- Work a constructor used to do becomes a field initializer through a static helper (`RegistryWriter.Reserve`).
|
||||
- A collection built from instance methods is a `field ??=` property (`MainViewModel.Cards`, `Shared`).
|
||||
- A `CancellationToken` last on every method that returns a task, passed down (HR0003, #88).
|
||||
- Relay commands take one.
|
||||
- Where an API takes none, the wait takes it (`SetTextAsync(link).WaitAsync(ct)`).
|
||||
- Best-effort and fire-and-forget work passes `CancellationToken.None` on purpose.
|
||||
- **DTOs:**
|
||||
- `View*` responses, `*Request` create/update requests, `*Form` other input (HR0010 over `MeWeb.Shared`, #34).
|
||||
- `Show*` booleans and `*Formatted` strings for display (#44).
|
||||
- Lists are `= []` (HR0006, #75), and strings have no `= string.Empty` default (HR0005, #89).
|
||||
- **Server:**
|
||||
- Routes live only in `Endpoints` (#9).
|
||||
- A service that can refuse returns `WebResult<T>` (`MeWeb.Shared`). `Invalidate(reason)` answers 400; 403 and
|
||||
404 are passed explicitly. The endpoint answers through `Answer(context, result, type)`: the data on success,
|
||||
otherwise a `ViewRefusal` with its `Reason`, plus `Retry-After` when `RetryAfterSeconds` is set.
|
||||
- Services take the caller's address from the endpoint, never `IHttpContextAccessor` (HR0008, #86).
|
||||
- **Status codes** (owner, 2026-11-10):
|
||||
- 400 for every refusal: bad ports, shape, size, busy, too many.
|
||||
- 403 for a caller the probe will not serve (`not-public`, `other-address`) and a delete token that does not match.
|
||||
- 404 for an unknown ticket or submission.
|
||||
- Nothing answers 409, 413, 429 or any 5XX (HR0007), and MeWeb has no exception.
|
||||
- Clients read `ViewRefusal.Reason`, never the status. Installed apps up to 0.15.4 read 429 on the speed download,
|
||||
so until they update a limited speed test shows as "couldn't measure" rather than "limited".
|
||||
- **Client:** `ServerProbe` returns the same `WebResult<T>` and never throws (#27). A transport failure is the refusal
|
||||
`unreachable`, and a failure without a body is `http-<status>`.
|
||||
- **Numbers:** formatted only by `NumbersExtensions` (`MeWeb.Shared`) and `Texts` (`MeWeb.App`) (HR0011).
|
||||
- `NumbersExtensions` holds the invariant values that fill a localized template: `ToOneDecimal`, `ToWholeMegabytes`.
|
||||
- `Texts` holds what the App formats in the reader's culture: money and dates.
|
||||
- **JSON:** one source-generated context per assembly (#84).
|
||||
- **Error codes** (HR0012, HR0013) are not turned on: a refusal already carries a stable machine code,
|
||||
`ViewRefusal.Reason` (`too-many`, `busy`, `bad-ports`…), which installed apps read and translate. A numbered prefix
|
||||
would change what they receive.
|
||||
- **Spreadsheets** (HR0319): none; findings are shown in the app and shared as the submission JSON the person reads.
|
||||
- **Not applicable:** passwords (HR0311), since there are no accounts.
|
||||
- **Not applicable:** the `.razor` rules (HR0101–HR0108, HR0201), since the App is Avalonia. Their counterparts are
|
||||
#27, #43, #44 and #93. `Localizer.Instance[key]` already returns a string (#91).
|
||||
|
||||
---
|
||||
|
||||
## A. Dependency injection and services
|
||||
@@ -26,7 +74,8 @@ Scope: `src/`, `tools/`. Out of scope: generated files (`obj/`, `*.g.cs`), third
|
||||
|
||||
## B. Web boundary
|
||||
|
||||
5. **`WebResult` envelope + early return** on every server endpoint that can refuse; the happy path stays flat.
|
||||
5. **`WebResult<T>` + early return** in every server service that can refuse, answered through `Answer`; the happy
|
||||
path stays flat (see House rules).
|
||||
6. **Pure or internal code may return tuples** (`(value, error)`), never across the web boundary.
|
||||
7. **`try/catch` placement: few at the top, few at the bottom, none in the middle.** Top: host startup, background
|
||||
loops. Bottom: sockets, DNS, UPnP/PCP, file IO, platform APIs — the IO edges where a check meets the network.
|
||||
@@ -53,7 +102,7 @@ Scope: `src/`, `tools/`. Out of scope: generated files (`obj/`, `*.g.cs`), third
|
||||
55. n/a — no model output.
|
||||
63. **An inventory that lives in a check rots; keep one map and assert it against reality.**
|
||||
64. **A sweep asserts what must hold and records what is a judgement call.**
|
||||
65. **Prefer a source lint to a runtime check when the bug is visible in the source** (`tools/lint.cs`).
|
||||
65. **Prefer a source lint to a runtime check when the bug is visible in the source** (the house-rules analyzer).
|
||||
66. **A check that has always failed is a decision nobody made** — fix it or delete it.
|
||||
67. **Two paths that resolve the same thing must degrade the same way** (the v4 and v6 echo, the system resolver and
|
||||
the server-side blocklist fallback).
|
||||
@@ -117,7 +166,7 @@ Scope: `src/`, `tools/`. Out of scope: generated files (`obj/`, `*.g.cs`), third
|
||||
32. **Subscription discipline:** every `+=` has its `-=` in the matching unload/dispose; timers are `PeriodicTimer`
|
||||
with a cancellation source cancelled on leave.
|
||||
33. n/a.
|
||||
34. **DTO naming by direction:** `View*` (response), `Upsert*` (create/update), `*Form` (any other input). Contracts
|
||||
34. **DTO naming by direction:** `View*` (response), `*Request` (create/update), `*Form` (any other input). Contracts
|
||||
grouped by area in `MeWeb.Shared/<Area>Contracts.cs`.
|
||||
35. n/a. 36. **Path safety** for anything served from disk by name. 37. **Layered gating: the UI hides; the server
|
||||
refuses.** 57. n/a.
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
Your photos, your files, a website or a game server, kept at home instead of on someone else's computer. Whether that can work depends on your connection, and “me-web?” tells you, in plain words.
|
||||
|
||||
It checks your connection and your device one step at a time, from this phone to your router, your provider and the internet, and then says what you could host at home, what stands in the way, and what would fix it:
|
||||
|
||||
• a website, reaching home from outside, family photos and files, a game or voice server, a fediverse or blog server, a mail server: possible, possible with a workaround (and which one), or can't tell;
|
||||
• whether your provider shares your public address with other customers (CGNAT), or a second router is in the way;
|
||||
• whether your router opens ports for the apps that ask it to (UPnP, NAT-PMP, PCP);
|
||||
• on mobile data, the operator and the type of network (5G, 4G);
|
||||
• only if you agree: whether the outside world can really reach this device, with ports opened for ten minutes and closed afterwards;
|
||||
• whether this connection could send mail directly;
|
||||
• how your public address has changed across your earlier checks.
|
||||
|
||||
What it knows about providers is inside the app, not fetched from a server. Your findings stay on your phone unless you choose to share them, after reading exactly what is sent, and you can delete them at any time.
|
||||
|
||||
Free software (AGPL-3.0), no ads, no telemetry, no account.
|
||||
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 558 KiB |
|
After Width: | Height: | Size: 224 KiB |
|
After Width: | Height: | Size: 301 KiB |
|
After Width: | Height: | Size: 262 KiB |
|
After Width: | Height: | Size: 209 KiB |
|
After Width: | Height: | Size: 235 KiB |
@@ -0,0 +1,15 @@
|
||||
Le sue foto, i suoi file, un sito o un server per giocare, tenuti a casa invece che sul computer di qualcun altro. Se si può dipende dalla sua connessione, e «me-web?» glielo dice in parole semplici.
|
||||
|
||||
Controlla la connessione e il dispositivo un passo alla volta, da questo telefono al router, al suo operatore e a internet, e poi le dice che cosa potrebbe ospitare a casa, che cosa lo impedisce e che cosa lo risolverebbe:
|
||||
|
||||
• un sito, raggiungere casa da fuori, foto e file di famiglia, un server per giochi o per chiamate vocali, un server del fediverso o un blog, un server di posta: si può, si può con un accorgimento (e quale), oppure non si può dire;
|
||||
• se l'operatore condivide il suo indirizzo pubblico con altri clienti (CGNAT), o se c'è un secondo router di mezzo;
|
||||
• se il router apre le porte alle app che glielo chiedono (UPnP, NAT-PMP, PCP);
|
||||
• con i dati mobili, l'operatore e il tipo di rete (5G, 4G);
|
||||
• solo se lei è d'accordo: se dall'esterno si raggiunge davvero questo dispositivo, con le porte aperte per dieci minuti e richiuse subito dopo;
|
||||
• se questa connessione può inviare posta direttamente;
|
||||
• come è cambiato il suo indirizzo pubblico nei controlli precedenti.
|
||||
|
||||
Quello che sa degli operatori è dentro l'app, non scaricato da un server. I risultati restano sul suo telefono, a meno che non scelga di condividerli dopo aver letto esattamente che cosa viene inviato, e può cancellarli quando vuole.
|
||||
|
||||
Software libero (AGPL-3.0), niente pubblicità, niente telemetria, nessun account.
|
||||
|
After Width: | Height: | Size: 631 KiB |
|
After Width: | Height: | Size: 231 KiB |
|
After Width: | Height: | Size: 318 KiB |
|
After Width: | Height: | Size: 257 KiB |
|
After Width: | Height: | Size: 216 KiB |
|
After Width: | Height: | Size: 229 KiB |
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "10.0.401",
|
||||
"version": "10.0.403",
|
||||
"rollForward": "latestFeature"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<packageSources>
|
||||
<clear />
|
||||
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
|
||||
<add key="nget" value="https://nget.thepra.dev/v3/index.json" protocolVersion="3" />
|
||||
</packageSources>
|
||||
<packageSourceMapping>
|
||||
<packageSource key="nget">
|
||||
<package pattern="Arasaka.*" />
|
||||
</packageSource>
|
||||
<packageSource key="nuget.org">
|
||||
<package pattern="*" />
|
||||
</packageSource>
|
||||
</packageSourceMapping>
|
||||
</configuration>
|
||||
@@ -1,5 +1,5 @@
|
||||
arasaka_repository_url='https://packages.arasaka.software'
|
||||
arasaka_repository_known=' 39c1037ea150a946870135d45c7e0a150b6cf07612961ab7d4ebf7356e3d6206 8e98c23290cd1afa016eed46b6bc6643a44f07d1d398b4c74221891a3dee0ef1 f8a29b044c4b538af072041b201e31cbcc6328f709c3b960fbfccef819cb2572 fe762297efbcb217cbfa51ac28dce057695205bd46f59bc69369d92765edebfc '
|
||||
arasaka_repository_known=' 311daabcddefad7fe495155f328d1c5e14ef1abf0d3d65312468ddb2bc3b33a2 39c1037ea150a946870135d45c7e0a150b6cf07612961ab7d4ebf7356e3d6206 8e98c23290cd1afa016eed46b6bc6643a44f07d1d398b4c74221891a3dee0ef1 f8a29b044c4b538af072041b201e31cbcc6328f709c3b960fbfccef819cb2572 fe762297efbcb217cbfa51ac28dce057695205bd46f59bc69369d92765edebfc '
|
||||
arasaka_repository_sources='Types: deb
|
||||
URIs: https://packages.arasaka.software/apt
|
||||
Suites: stable
|
||||
@@ -75,7 +75,7 @@ gpgcheck=1
|
||||
repo_gpgcheck=1
|
||||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-arasaka
|
||||
priority=150
|
||||
metadata_expire=6h
|
||||
metadata_expire=15m
|
||||
'
|
||||
arasaka_repository_zypp='[arasaka]
|
||||
name=Arasaka
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
repo_url: https://packages.arasaka.software/fdroid/repo
|
||||
repo_name: Arasaka
|
||||
repo_description: >-
|
||||
Apps published by Arasaka di Hvozdikov Yevheniy, Busto Arsizio, Italy, such as “me-web?”.
|
||||
Each app here is the same signed file as on its release page.
|
||||
repo_icon: icon.png
|
||||
archive_older: 0
|
||||
repo_keyalias: meweb
|
||||
keystore: {env: MEWEB_KEYSTORE}
|
||||
keystorepass: {env: MEWEB_KEYSTORE_PASS}
|
||||
keypass: {env: MEWEB_KEYSTORE_PASS}
|
||||
|
Before Width: | Height: | Size: 62 KiB |
@@ -1,10 +0,0 @@
|
||||
Categories:
|
||||
- Connectivity
|
||||
- Internet
|
||||
License: AGPL-3.0-only
|
||||
AuthorName: Arasaka di Hvozdikov Yevheniy
|
||||
WebSite: https://meweb.arasaka.software
|
||||
SourceCode: https://git.thepra.dev/Arasaka/MeWeb
|
||||
IssueTracker: https://git.thepra.dev/Arasaka/MeWeb/issues
|
||||
Changelog: https://git.thepra.dev/Arasaka/MeWeb/releases
|
||||
AutoName: me-web?
|
||||
@@ -1 +0,0 @@
|
||||
“me-web?” checks your connection and your device and tells you, in plain words, what you could host at home, what stands in the way, and what would fix it. Free software, no telemetry, no account.
|
||||
@@ -1 +0,0 @@
|
||||
«me-web?» controlla la sua connessione e il suo dispositivo e le dice, in parole semplici, che cosa potrebbe ospitare a casa, che cosa lo impedisce e che cosa lo risolverebbe. Software libero, niente telemetria, nessun account.
|
||||
@@ -118,7 +118,7 @@ public class AndroidPlatform : SystemPlatform
|
||||
if (activity is null) return false;
|
||||
try
|
||||
{
|
||||
return await activity.Ask(permission).WaitAsync(TimeSpan.FromMinutes(2), ct);
|
||||
return await activity.Ask(permission, ct).WaitAsync(TimeSpan.FromMinutes(2), ct);
|
||||
}
|
||||
catch (TimeoutException)
|
||||
{
|
||||
|
||||
@@ -32,23 +32,23 @@ public class MainActivity : AvaloniaMainActivity
|
||||
base.OnDestroy();
|
||||
}
|
||||
|
||||
public Task<bool> Ask(string permission)
|
||||
public Task<bool> Ask(string permission, CancellationToken ct)
|
||||
{
|
||||
var answer = new TaskCompletionSource<bool>(TaskCreationOptions.RunContinuationsAsynchronously);
|
||||
int code;
|
||||
var code = default(int);
|
||||
lock (Waiting)
|
||||
{
|
||||
code = nextRequest++;
|
||||
Waiting[code] = answer;
|
||||
}
|
||||
RunOnUiThread(() => RequestPermissions([permission], code));
|
||||
return answer.Task;
|
||||
return answer.Task.WaitAsync(ct);
|
||||
}
|
||||
|
||||
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Permission[] grantResults)
|
||||
{
|
||||
base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
||||
TaskCompletionSource<bool> answer;
|
||||
var answer = default(TaskCompletionSource<bool>);
|
||||
lock (Waiting)
|
||||
{
|
||||
if (!Waiting.Remove(requestCode, out answer)) return;
|
||||
|
||||
@@ -20,6 +20,10 @@
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Avalonia.Android" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Core.SplashScreen" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData.Core" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.Process" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.ViewModelSavedState" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.ViewModelSavedState.Android" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@@ -15,6 +15,8 @@ public static class AppServices
|
||||
public const string Secure = "secure";
|
||||
public const string Plain = "plain";
|
||||
|
||||
public static string Folder { get; set; } = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "MeWeb");
|
||||
|
||||
public static IServiceCollection AddMeWebApp(this IServiceCollection services, IPlatform platform)
|
||||
{
|
||||
var agent = $"me-web/{BuildInfo.Version}";
|
||||
@@ -28,7 +30,7 @@ public static class AppServices
|
||||
return new ServerProbe(factory.CreateClient(Secure), factory.CreateClient(Plain));
|
||||
});
|
||||
services.AddSingleton<KnowledgeBase>();
|
||||
var folder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "MeWeb");
|
||||
var folder = Folder;
|
||||
services.AddSingleton(new HistoryStore(folder));
|
||||
services.AddSingleton(new Leftovers(folder));
|
||||
services.AddSingleton(new Submissions(folder));
|
||||
|
||||
@@ -11,8 +11,7 @@ public class StoredSettings
|
||||
|
||||
public static class AppSettings
|
||||
{
|
||||
static readonly string Folder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "MeWeb");
|
||||
static readonly string FilePath = Path.Combine(Folder, "settings.json");
|
||||
static string FilePath => Path.Combine(AppServices.Folder, "settings.json");
|
||||
|
||||
public static StoredSettings Read()
|
||||
{
|
||||
@@ -32,7 +31,7 @@ public static class AppSettings
|
||||
{
|
||||
try
|
||||
{
|
||||
Directory.CreateDirectory(Folder);
|
||||
Directory.CreateDirectory(AppServices.Folder);
|
||||
var temporary = FilePath + ".tmp";
|
||||
using (var stream = File.Create(temporary))
|
||||
JsonSerializer.Serialize(stream, settings, AppJsonContext.Default.StoredSettings);
|
||||
|
||||
@@ -7,7 +7,7 @@ namespace MeWeb.App.Services;
|
||||
public static class ErrorLog
|
||||
{
|
||||
const long MaxBytes = 256 * 1024;
|
||||
static readonly string FilePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "MeWeb", "errors.log");
|
||||
static string FilePath => Path.Combine(AppServices.Folder, "errors.log");
|
||||
static readonly Lock Gate = new();
|
||||
|
||||
public static void Watch()
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "እነዚህን ውጤቶች ያጋሩ",
|
||||
"ShareTooMany": "ዛሬ ከዚህ አድራሻ በጣም ብዙ ጊዜ ተልኳል። ነገ እንደገና ይሞክሩ።",
|
||||
"ShareWho": "የሚቀበላቸው፦ የ«me-web?» አሳታሚ Arasaka di Hvozdikov Yevheniy፣ በጣሊያን በሚገኘው የራሱ አገልጋይ ላይ (meweb.arasaka.software)።",
|
||||
"ShareWhy": "ለምን፦ በቀጣዮቹ ስሪቶች ውስጥ ስለ አቅራቢዎች ያሉትን ማስታወሻዎች ለማሻሻል። የሚታተሙት አድራሻ የሌላቸው ድምር አኃዞች ብቻ ናቸው፣ ያውም አንድ ሰው ከገመገማቸው በኋላ። ሕጋዊ መሠረቱ የእርስዎ ፈቃድ ነው።",
|
||||
"ShareWhy": "ለምን፦ በቀጣዮቹ ስሪቶች ውስጥ ስለ አቅራቢዎች ያሉትን ማስታወሻዎች ለማሻሻል። የሚታተሙት አድራሻ የሌላቸው ድምር አኃዞች ብቻ ናቸው፣ ያውም አንድ ሰው ከገመገማቸው በኋላ። የላኩትን ውጤት ኮድ እርስዎ ራስዎ ለአሳታሚው ከሰጡ፣ ለምሳሌ ስለ ግንኙነትዎ እርዳታ ሲጠይቁ፣ አሳታሚው በጠየቁበት ቦታ ሊመልስልዎ እነዚህን ውጤቶችም ያነባል፤ እዚያም አድራሻዎችዎን ፈጽሞ አይደግምም። ሕጋዊ መሠረቱ የእርስዎ ፈቃድ ነው።",
|
||||
"SharedTitle": "ያጋሯቸው ውጤቶች",
|
||||
"SourceCode": "የምንጭ ኮድ",
|
||||
"SpeedFailed": "የፍጥነት ሙከራው አልተጠናቀቀም።",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "شارك هذه النتائج",
|
||||
"ShareTooMany": "إرسالات كثيرة جدًا من هذا العنوان اليوم. حاول مرة أخرى غدًا.",
|
||||
"ShareWho": "من يستلمها: Arasaka di Hvozdikov Yevheniy، ناشر ”me-web?“، على خادمه الخاص في إيطاليا (meweb.arasaka.software).",
|
||||
"ShareWhy": "لماذا: لتحسين الملاحظات عن مزوّدي الإنترنت في الإصدارات القادمة. لا يُنشر إلا مجاميع بلا عناوين، وبعد أن يراجعها شخص. الأساس القانوني هو موافقتك.",
|
||||
"ShareWhy": "لماذا: لتحسين الملاحظات عن مزوّدي الإنترنت في الإصدارات القادمة. لا يُنشر إلا مجاميع بلا عناوين، وبعد أن يراجعها شخص. وإذا أعطيت رمز الإرسال للناشر بنفسك، مثلًا حين تطلب المساعدة بشأن اتصالك، فإن الناشر يقرأ هذه النتائج أيضًا ليجيبك حيث سألت، ولا يكرر عناوينك هناك أبدًا. الأساس القانوني هو موافقتك.",
|
||||
"SharedTitle": "النتائج التي شاركتها",
|
||||
"SourceCode": "الشيفرة المصدرية",
|
||||
"SpeedFailed": "لم يكتمل اختبار السرعة.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Jikxatawinak jaljaña",
|
||||
"ShareTooMany": "Jichhürux aka direccionat walja apayawinakaw utji. Qharürux wasitat yant'am.",
|
||||
"ShareWho": "Khitis katuqi: Arasaka di Hvozdikov Yevheniy, «me-web?» uñstayiripa, Italian pachpa servidorapana (meweb.arasaka.software).",
|
||||
"ShareWhy": "Kunatsa: qhipa versionanakan internet empresanakat yatiyawinak askichañataki. Jan direccionanakan taqpach jakhüwinakakiw uñstayasi, mä jaqix uñakipxi ukhakiw. Kamachir arkir chiqapax juman iyawsäwimawa.",
|
||||
"ShareWhy": "Kunatsa: qhipa versionanakan internet empresanakat yatiyawinak askichañataki. Jan direccionanakan taqpach jakhüwinakakiw uñstayasi, mä jaqix uñakipxi ukhakiw. Juma pachpaw apayawiman códigopa uñstayiriru churasma ukhaxa, sañäni, conexionamat yanapa mayisma ukhaxa, uñstayirix aka yatiyawinak liyiraki, kawkinsa jiskt'asma ukan jaysañataki, ukanx janipuniw direccionanakam wasitat qillqkiti. Kamachir arkir chiqapax juman iyawsäwimawa.",
|
||||
"SharedTitle": "Jaljat jikxatawinakama",
|
||||
"SourceCode": "Código fuente",
|
||||
"SpeedFailed": "Jank'aki yant'äwix janiw tukuskänti.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Бу нәтиҹәләри пајлаш",
|
||||
"ShareTooMany": "Бу ҝүн бу үнвандан һәддиндән чох ҝөндәриш олуб. Сабаһ јенидән ҹәһд един.",
|
||||
"ShareWho": "Онлары ким алыр: «me-web?» тәтбигинин нашири Arasaka di Hvozdikov Yevheniy, Италијадакы өз сервериндә (meweb.arasaka.software).",
|
||||
"ShareWhy": "Нә үчүн: сонракы бурахылышларда провајдерләр һаггында гејдләри јахшылашдырмаг үчүн. Јалныз үнвансыз үмуми рәгәмләр, һәм дә јалныз бир инсан онлары јохладыгдан сонра дәрҹ олунур. Һүгуги әсас сизин разылығыныздыр.",
|
||||
"ShareWhy": "Нә үчүн: сонракы бурахылышларда провајдерләр һаггында гејдләри јахшылашдырмаг үчүн. Јалныз үнвансыз үмуми рәгәмләр, һәм дә јалныз бир инсан онлары јохладыгдан сонра дәрҹ олунур. Ҝөндәришинизин кодуну наширә өзүнүз версәниз, мәсәлән, бағлантынызла бағлы көмәк истәјәндә, нашир сизә сорушдуғунуз јердә ҹаваб вермәк үчүн бу нәтиҹәләри дә охујур вә орада үнванларынызы һеч вахт тәкрарламыр. Һүгуги әсас сизин разылығыныздыр.",
|
||||
"SharedTitle": "Пајлашдығыныз нәтиҹәләр",
|
||||
"SourceCode": "Мәнбә коду",
|
||||
"SpeedFailed": "Сүрәт тести баша чатмады.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Bu nəticələri paylaş",
|
||||
"ShareTooMany": "Bu gün bu ünvandan həddindən çox göndəriş olub. Sabah yenidən cəhd edin.",
|
||||
"ShareWho": "Onları kim alır: “me-web?” tətbiqinin naşiri Arasaka di Hvozdikov Yevheniy, İtaliyadakı öz serverində (meweb.arasaka.software).",
|
||||
"ShareWhy": "Nə üçün: sonrakı buraxılışlarda provayderlər haqqında qeydləri yaxşılaşdırmaq üçün. Yalnız ünvansız ümumi rəqəmlər, həm də yalnız bir insan onları yoxladıqdan sonra dərc olunur. Hüquqi əsas sizin razılığınızdır.",
|
||||
"ShareWhy": "Nə üçün: sonrakı buraxılışlarda provayderlər haqqında qeydləri yaxşılaşdırmaq üçün. Yalnız ünvansız ümumi rəqəmlər, həm də yalnız bir insan onları yoxladıqdan sonra dərc olunur. Göndərişinizin kodunu naşirə özünüz versəniz, məsələn, bağlantınızla bağlı kömək istəyəndə, naşir sizə soruşduğunuz yerdə cavab vermək üçün bu nəticələri də oxuyur və orada ünvanlarınızı heç vaxt təkrarlamır. Hüquqi əsas sizin razılığınızdır.",
|
||||
"SharedTitle": "Paylaşdığınız nəticələr",
|
||||
"SourceCode": "Mənbə kodu",
|
||||
"SpeedFailed": "Sürət testi başa çatmadı.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Падзяліцца вынікамі",
|
||||
"ShareTooMany": "Сёння з гэтага адраса было занадта шмат адправак. Паспрабуйце заўтра.",
|
||||
"ShareWho": "Хто іх атрымлівае: Arasaka di Hvozdikov Yevheniy, выдавец «me-web?», на ўласным серверы ў Італіі (meweb.arasaka.software).",
|
||||
"ShareWhy": "Навошта: каб палепшыць нататкі пра правайдараў у наступных версіях. Публікуюцца толькі агульныя лічбы без адрасоў і толькі пасля таго, як іх праверыць чалавек. Прававая падстава — ваша згода.",
|
||||
"ShareWhy": "Навошта: каб палепшыць нататкі пра правайдараў у наступных версіях. Публікуюцца толькі агульныя лічбы без адрасоў і толькі пасля таго, як іх праверыць чалавек. Калі вы самі дасце выдаўцу код адпраўкі, напрыклад калі просіце дапамогі з вашым падключэннем, выдавец таксама чытае гэтыя вынікі, каб адказаць вам там, дзе вы спыталі, і ніколі не паўтарае там вашы адрасы. Прававая падстава — ваша згода.",
|
||||
"SharedTitle": "Вынікі, якімі вы падзяліліся",
|
||||
"SourceCode": "Зыходны код",
|
||||
"SpeedFailed": "Тэст хуткасці не завяршыўся.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Сподели резултатите",
|
||||
"ShareTooMany": "Твърде много изпращания от този адрес днес. Опитайте утре.",
|
||||
"ShareWho": "Кой ги получава: Arasaka di Hvozdikov Yevheniy, издателят на „me-web?“, на собствения си сървър в Италия (meweb.arasaka.software).",
|
||||
"ShareWhy": "Защо: за да се подобрят бележките за доставчиците в следващите версии. Публикуват се само общи бройки без адреси, след като човек ги е прегледал. Правното основание е вашето съгласие.",
|
||||
"ShareWhy": "Защо: за да се подобрят бележките за доставчиците в следващите версии. Публикуват се само общи бройки без адреси, след като човек ги е прегледал. Ако сами дадете кода на изпращането на издателя, например когато молите за помощ с връзката си, издателят чете и тези резултати, за да ви отговори там, където сте попитали, и никога не повтаря адресите ви там. Правното основание е вашето съгласие.",
|
||||
"SharedTitle": "Споделените ви резултати",
|
||||
"SourceCode": "Изходен код",
|
||||
"SpeedFailed": "Тестът на скоростта не завърши.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Serem ol risal ia",
|
||||
"ShareTooMany": "Tumas samting oli sendem long adres ia tede. Traem bakegen tumora.",
|
||||
"ShareWho": "Hu i kasem: Arasaka di Hvozdikov Yevheniy, pablisa blong “me-web?”, long seva blong hem wan long Itali (meweb.arasaka.software).",
|
||||
"ShareWhy": "From wanem: blong mekem ol not long ol kampani blong intanet i kam gud moa long ol vesen we i kam biaen. Mifala i pablisim ol total nomo we i no gat adres, afta we wan man i jekem olgeta. Loa i letem from yu agri (consent).",
|
||||
"ShareWhy": "From wanem: blong mekem ol not long ol kampani blong intanet i kam gud moa long ol vesen we i kam biaen. Mifala i pablisim ol total nomo we i no gat adres, afta we wan man i jekem olgeta. Sapos yu nomo i givim kod blong samting we yu sendem i go long pablisa, olsem taem yu askem help long konekson blong yu, pablisa i ridim ol risal ia tu blong ansa long yu long ples we yu askem, mo hem i neva raetem bakegen ol adres blong yu long ples ia. Loa i letem from yu agri (consent).",
|
||||
"SharedTitle": "Ol risal we yu serem",
|
||||
"SourceCode": "Sos kod",
|
||||
"SpeedFailed": "Tes blong spid i no finis.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "এই ফলাফল শেয়ার করুন",
|
||||
"ShareTooMany": "আজ এই ঠিকানা থেকে অনেকবার ফলাফল পাঠানো হয়েছে। কাল আবার চেষ্টা করুন।",
|
||||
"ShareWho": "কে পায়: Arasaka di Hvozdikov Yevheniy, “me-web?”-এর প্রকাশক, ইতালিতে নিজের সার্ভারে (meweb.arasaka.software)।",
|
||||
"ShareWhy": "কেন: পরের সংস্করণগুলোতে ইন্টারনেট কোম্পানিগুলোর তথ্য আরও ভালো করতে। শুধু ঠিকানা ছাড়া মোট হিসাবই প্রকাশ করা হয়, তাও একজন মানুষ দেখে নেওয়ার পরে। আইনগত ভিত্তি হলো আপনার সম্মতি।",
|
||||
"ShareWhy": "কেন: পরের সংস্করণগুলোতে ইন্টারনেট কোম্পানিগুলোর তথ্য আরও ভালো করতে। শুধু ঠিকানা ছাড়া মোট হিসাবই প্রকাশ করা হয়, তাও একজন মানুষ দেখে নেওয়ার পরে। আপনি নিজে যদি পাঠানো ফলাফলের কোড প্রকাশককে দেন, যেমন আপনার সংযোগ নিয়ে সাহায্য চাওয়ার সময়, তাহলে প্রকাশক আপনি যেখানে জিজ্ঞেস করেছেন সেখানে উত্তর দিতে এই ফলাফলগুলোও পড়েন, আর সেখানে কখনো আপনার ঠিকানা উল্লেখ করেন না। আইনগত ভিত্তি হলো আপনার সম্মতি।",
|
||||
"SharedTitle": "আপনার শেয়ার করা ফলাফল",
|
||||
"SourceCode": "সোর্স কোড",
|
||||
"SpeedFailed": "স্পিড টেস্ট শেষ হয়নি।",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Подијели ове резултате",
|
||||
"ShareTooMany": "Данас је с ове адресе послано превише резултата. Покушајте поново сутра.",
|
||||
"ShareWho": "Ко их прима: Arasaka di Hvozdikov Yevheniy, издавач „me-web?“, на властитом серверу у Италији (meweb.arasaka.software).",
|
||||
"ShareWhy": "Зашто: да би се у наредним издањима побољшале биљешке о провајдерима. Објављују се само збирни бројеви без адреса, и то тек након што их прегледа човјек. Правни основ је ваш пристанак.",
|
||||
"ShareWhy": "Зашто: да би се у наредним издањима побољшале биљешке о провајдерима. Објављују се само збирни бројеви без адреса, и то тек након што их прегледа човјек. Ако сами дате издавачу код ваших посланих резултата, напримјер када тражите помоћ око своје везе, издавач чита и ове резултате да вам одговори тамо гдје сте питали, и тамо никада не понавља ваше адресе. Правни основ је ваш пристанак.",
|
||||
"SharedTitle": "Резултати које сте подијелили",
|
||||
"SourceCode": "Изворни код",
|
||||
"SpeedFailed": "Тест брзине није завршен.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Podijeli ove rezultate",
|
||||
"ShareTooMany": "Danas je s ove adrese poslano previše rezultata. Pokušajte ponovo sutra.",
|
||||
"ShareWho": "Ko ih prima: Arasaka di Hvozdikov Yevheniy, izdavač „me-web?”, na vlastitom serveru u Italiji (meweb.arasaka.software).",
|
||||
"ShareWhy": "Zašto: da bi se u narednim izdanjima poboljšale bilješke o provajderima. Objavljuju se samo zbirni brojevi bez adresa, i to tek nakon što ih pregleda čovjek. Pravni osnov je vaš pristanak.",
|
||||
"ShareWhy": "Zašto: da bi se u narednim izdanjima poboljšale bilješke o provajderima. Objavljuju se samo zbirni brojevi bez adresa, i to tek nakon što ih pregleda čovjek. Ako sami date izdavaču kod vaših poslanih rezultata, naprimjer kada tražite pomoć oko svoje veze, izdavač čita i ove rezultate da vam odgovori tamo gdje ste pitali, i tamo nikada ne ponavlja vaše adrese. Pravni osnov je vaš pristanak.",
|
||||
"SharedTitle": "Rezultati koje ste podijelili",
|
||||
"SourceCode": "Izvorni kod",
|
||||
"SpeedFailed": "Test brzine nije završen.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Comparteix aquests resultats",
|
||||
"ShareTooMany": "Massa enviaments des d'aquesta adreça avui. Torneu-ho a provar demà.",
|
||||
"ShareWho": "Qui els rep: Arasaka di Hvozdikov Yevheniy, l'editor de «me-web?», al seu propi servidor a Itàlia (meweb.arasaka.software).",
|
||||
"ShareWhy": "Per a què: per millorar les notes sobre operadors en versions futures. Només es publiquen totals sense adreces, i sempre després que una persona els hagi revisat. La base legal és el vostre consentiment.",
|
||||
"ShareWhy": "Per a què: per millorar les notes sobre operadors en versions futures. Només es publiquen totals sense adreces, i sempre després que una persona els hagi revisat. Si sou vosaltres qui doneu a l'editor el codi del vostre enviament, per exemple quan demaneu ajuda amb la vostra connexió, l'editor també llegeix aquests resultats per respondre-us allà on ho heu preguntat, i allà no repeteix mai les vostres adreces. La base legal és el vostre consentiment.",
|
||||
"SharedTitle": "Els vostres resultats compartits",
|
||||
"SourceCode": "Codi font",
|
||||
"SpeedFailed": "La prova de velocitat no s'ha completat.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Sdílet tyto výsledky",
|
||||
"ShareTooMany": "Z této adresy dnes přišlo příliš mnoho příspěvků. Zkuste to znovu zítra.",
|
||||
"ShareWho": "Kdo je obdrží: Arasaka di Hvozdikov Yevheniy, vydavatel „me-web?“, na vlastním serveru v Itálii (meweb.arasaka.software).",
|
||||
"ShareWhy": "Proč: aby se v dalších vydáních zlepšily poznámky o poskytovatelích. Zveřejňují se jen souhrnná čísla bez adres, a to až poté, co je zkontroluje člověk. Právním základem je váš souhlas.",
|
||||
"ShareWhy": "Proč: aby se v dalších vydáních zlepšily poznámky o poskytovatelích. Zveřejňují se jen souhrnná čísla bez adres, a to až poté, co je zkontroluje člověk. Pokud sami dáte kód svého příspěvku vydavateli, například když žádáte o pomoc s připojením, vydavatel si přečte i tyto výsledky, aby vám odpověděl tam, kde jste se ptali, a vaše adresy tam nikdy neuvede. Právním základem je váš souhlas.",
|
||||
"SharedTitle": "Vaše sdílené výsledky",
|
||||
"SourceCode": "Zdrojový kód",
|
||||
"SpeedFailed": "Test rychlosti se nedokončil.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Del disse resultater",
|
||||
"ShareTooMany": "For mange indsendelser fra denne adresse i dag. Prøv igen i morgen.",
|
||||
"ShareWho": "Hvem modtager dem: Arasaka di Hvozdikov Yevheniy, udgiveren af “me-web?”, på sin egen server i Italien (meweb.arasaka.software).",
|
||||
"ShareWhy": "Hvorfor: for at forbedre noterne om udbydere i senere versioner. Der offentliggøres kun samlede tal uden adresser, efter at et menneske har gennemgået dem. Retsgrundlaget er dit samtykke.",
|
||||
"ShareWhy": "Hvorfor: for at forbedre noterne om udbydere i senere versioner. Der offentliggøres kun samlede tal uden adresser, efter at et menneske har gennemgået dem. Hvis du selv giver udgiveren koden for din indsendelse, for eksempel når du beder om hjælp med din forbindelse, læser udgiveren også disse resultater for at svare dig der, hvor du spurgte, og gentager aldrig dine adresser der. Retsgrundlaget er dit samtykke.",
|
||||
"SharedTitle": "Dine delte resultater",
|
||||
"SourceCode": "Kildekode",
|
||||
"SpeedFailed": "Hastighedstesten blev ikke færdig.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Diese Ergebnisse teilen",
|
||||
"ShareTooMany": "Heute zu viele Einsendungen von dieser Adresse. Bitte versuchen Sie es morgen erneut.",
|
||||
"ShareWho": "Wer sie erhält: Arasaka di Hvozdikov Yevheniy, der Herausgeber von „me-web?“, auf seinem eigenen Server in Italien (meweb.arasaka.software).",
|
||||
"ShareWhy": "Wozu: um die Hinweise zu Anbietern in späteren Versionen zu verbessern. Veröffentlicht werden nur Summen ohne Adressen, und erst nachdem ein Mensch sie geprüft hat. Die Rechtsgrundlage ist Ihre Einwilligung.",
|
||||
"ShareWhy": "Wozu: um die Hinweise zu Anbietern in späteren Versionen zu verbessern. Veröffentlicht werden nur Summen ohne Adressen, und erst nachdem ein Mensch sie geprüft hat. Wenn Sie den Code Ihrer Einsendung selbst dem Herausgeber geben, etwa wenn Sie um Hilfe mit Ihrer Verbindung bitten, liest der Herausgeber auch diese Ergebnisse, um Ihnen dort zu antworten, wo Sie gefragt haben, und nennt dort nie Ihre Adressen. Die Rechtsgrundlage ist Ihre Einwilligung.",
|
||||
"SharedTitle": "Ihre geteilten Ergebnisse",
|
||||
"SourceCode": "Quellcode",
|
||||
"SpeedFailed": "Der Geschwindigkeitstest wurde nicht abgeschlossen.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "މި ނަތީޖާތައް ހިއްސާކުރާ",
|
||||
"ShareTooMany": "މިއަދު މި އެޑްރެހުން ވަރަށް ގިނައިން ފޮނުވިއްޖެ. މާދަމާ އަލުން މަސައްކަތްކޮށްލައްވާ.",
|
||||
"ShareWho": "ލިބޭނީ ކާކަށް: ”me-web?“ ޝާއިޢުކުރާ ފަރާތް، Arasaka di Hvozdikov Yevheniy އަށް، އިޓަލީގައިވާ އޭގެ އަމިއްލަ ސަރވަރުގައި (meweb.arasaka.software).",
|
||||
"ShareWhy": "ސަބަބު: ފަހުން ނެރޭ ވަރޝަންތަކުގައި އިންޓަނެޓް ކުންފުނިތަކާ ބެހޭ ނޯޓުތައް ރަނގަޅުކުރުމަށް. ޝާއިޢުކުރެވޭނީ އެޑްރެސް ނުހިމެނޭ ޖުމްލަ އަދަދުތައް އެކަނި، އަދި އެވެސް މީހަކު ރިވިއުކުރުމަށްފަހު. ޤާނޫނީ އަސާސަކީ ތިބާގެ ރުހުން.",
|
||||
"ShareWhy": "ސަބަބު: ފަހުން ނެރޭ ވަރޝަންތަކުގައި އިންޓަނެޓް ކުންފުނިތަކާ ބެހޭ ނޯޓުތައް ރަނގަޅުކުރުމަށް. ޝާއިޢުކުރެވޭނީ އެޑްރެސް ނުހިމެނޭ ޖުމްލަ އަދަދުތައް އެކަނި، އަދި އެވެސް މީހަކު ރިވިއުކުރުމަށްފަހު. ތިބާގެ ކަނެކްޝަނާ ބެހޭގޮތުން އެހީއަށް އެދޭއިރު ފަދައިން، ފޮނުވުމުގެ ކޯޑް ތިބާ އަމިއްލައަށް ޝާއިޢުކުރާ ފަރާތަށް ދީފިނަމަ، ތިބާ ސުވާލުކުރި ތަނުގައި ޖަވާބުދިނުމަށް ޝާއިޢުކުރާ ފަރާތުން މި ނަތީޖާތައްވެސް ކިޔާނެ، އަދި އެތަނުގައި ތިބާގެ އެޑްރެސްތައް ދުވަހަކުވެސް ތަކުރާރެއް ނުކުރާނެ. ޤާނޫނީ އަސާސަކީ ތިބާގެ ރުހުން.",
|
||||
"SharedTitle": "ތިބާ ހިއްސާކުރި ނަތީޖާތައް",
|
||||
"SourceCode": "ސޯސް ކޯޑް",
|
||||
"SpeedFailed": "ސްޕީޑް ޓެސްޓް ނިމިއެއް ނުދިޔަ.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "འཚོལ་ཐོབ་འདི་ཚུ་ བགོ་བཤའ་རྐྱབ",
|
||||
"ShareTooMany": "ད་རིས་ ཁ་བྱང་འདི་ལས་ ལེ་ཤ་བཏང་ཡི། ནངས་པ་ ལོག་སྟེ་ འབད་རྩོལ་བསྐྱེད་གནང་།",
|
||||
"ShareWho": "ག་གིས་ལེནམ་ཨིན་ན། “me-web?” གི་དཔར་བསྐྲུན་པ་ Arasaka di Hvozdikov Yevheniy གིས་ ཨི་ཊ་ལི་ནང་ཡོད་པའི་ རང་གི་སར་བར་ (meweb.arasaka.software) གུ་ ལེནམ་ཨིན།",
|
||||
"ShareWhy": "ག་ཅིའི་དོན་ལུ། ཤུལ་མའི་ཐོན་རིམ་ཚུ་ནང་ ཞབས་ཏོག་བྱིན་མི་ཚུ་གི་སྐོར་ལས་ དྲན་ཐོ་ཚུ་ ལེགས་བཅོས་འབད་ནིའི་དོན་ལུ། མི་ཅིག་གིས་ ཞིབ་དཔྱད་འབད་ཞིནམ་ལས་ ཁ་བྱང་མེད་པའི་ བསྡོམས་ཚུ་རྐྱངམ་ཅིག་ དཔར་བསྐྲུན་འབདཝ་ཨིན། ཁྲིམས་ཀྱི་གཞི་རྟེན་འདི་ ཁྱེད་ཀྱི་ཆོག་ཐམ་ཨིན།",
|
||||
"ShareWhy": "ག་ཅིའི་དོན་ལུ། ཤུལ་མའི་ཐོན་རིམ་ཚུ་ནང་ ཞབས་ཏོག་བྱིན་མི་ཚུ་གི་སྐོར་ལས་ དྲན་ཐོ་ཚུ་ ལེགས་བཅོས་འབད་ནིའི་དོན་ལུ། མི་ཅིག་གིས་ ཞིབ་དཔྱད་འབད་ཞིནམ་ལས་ ཁ་བྱང་མེད་པའི་ བསྡོམས་ཚུ་རྐྱངམ་ཅིག་ དཔར་བསྐྲུན་འབདཝ་ཨིན། ཁྱེད་ཀྱི་མཐུད་ལམ་གྱི་སྐོར་ལས་ གྲོགས་རམ་ཞུ་བའི་སྐབས་བཟུམ་ ཁྱེད་ཀྱིས་ བཏང་མི་གི་ཀོཌ་འདི་ དཔར་བསྐྲུན་པ་ལུ་ ཁྱེད་རང་གིས་བྱིན་པ་ཅིན་ དཔར་བསྐྲུན་པ་གིས་ ཁྱེད་ཀྱིས་དྲི་བ་བཀོད་སའི་ས་ཁོངས་ལུ་ ལན་སློག་ནིའི་དོན་ལུ་ གྲུབ་འབྲས་འདི་ཚུ་ཡང་ ལྷགཔ་དང་ དེ་ཁར་ ཁྱེད་ཀྱི་ཁ་བྱང་ཚུ་ ནམ་ཡང་ ལོག་སྟེ་མི་བཀོདཔ་ཨིན། ཁྲིམས་ཀྱི་གཞི་རྟེན་འདི་ ཁྱེད་ཀྱི་ཆོག་ཐམ་ཨིན།",
|
||||
"SharedTitle": "ཁྱེད་ཀྱིས་ བགོ་བཤའ་རྐྱབ་མི་ འཚོལ་ཐོབ་ཚུ",
|
||||
"SourceCode": "འབྱུང་ཁུངས་ཀོཌ",
|
||||
"SpeedFailed": "མགྱོགས་ཚད་ཚོད་ལྟ་ མཇུག་མ་བསྡུ།",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Κοινοποίηση αποτελεσμάτων",
|
||||
"ShareTooMany": "Πάρα πολλές υποβολές από αυτή τη διεύθυνση σήμερα. Δοκιμάστε ξανά αύριο.",
|
||||
"ShareWho": "Ποιος τα λαμβάνει: η Arasaka di Hvozdikov Yevheniy, εκδότης του «me-web?», στον δικό της διακομιστή στην Ιταλία (meweb.arasaka.software).",
|
||||
"ShareWhy": "Γιατί: για να βελτιωθούν οι σημειώσεις για τους παρόχους σε επόμενες εκδόσεις. Δημοσιεύονται μόνο σύνολα χωρίς διευθύνσεις, αφού τα ελέγξει ένας άνθρωπος. Η νομική βάση είναι η συγκατάθεσή σας.",
|
||||
"ShareWhy": "Γιατί: για να βελτιωθούν οι σημειώσεις για τους παρόχους σε επόμενες εκδόσεις. Δημοσιεύονται μόνο σύνολα χωρίς διευθύνσεις, αφού τα ελέγξει ένας άνθρωπος. Αν δώσετε εσείς στον εκδότη τον κωδικό της υποβολής σας, για παράδειγμα όταν ζητάτε βοήθεια για τη σύνδεσή σας, ο εκδότης διαβάζει και αυτά τα αποτελέσματα για να σας απαντήσει εκεί όπου ρωτήσατε, και δεν επαναλαμβάνει ποτέ εκεί τις διευθύνσεις σας. Η νομική βάση είναι η συγκατάθεσή σας.",
|
||||
"SharedTitle": "Τα αποτελέσματα που μοιραστήκατε",
|
||||
"SourceCode": "Πηγαίος κώδικας",
|
||||
"SpeedFailed": "Η δοκιμή ταχύτητας δεν ολοκληρώθηκε.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Share these findings",
|
||||
"ShareTooMany": "Too many submissions from this address today. Try again tomorrow.",
|
||||
"ShareWho": "Who receives them: Arasaka di Hvozdikov Yevheniy, the publisher of “me-web?”, on its own server in Italy (meweb.arasaka.software).",
|
||||
"ShareWhy": "Why: to improve the notes on providers in later releases. Only totals without addresses are ever published, after a person has reviewed them. The legal basis is your consent.",
|
||||
"ShareWhy": "Why: to improve the notes on providers in later releases. Only totals without addresses are ever published, after a person has reviewed them. If you give the code of your submission to the publisher yourself, for example when you ask for help with your connection, the publisher also reads these findings to answer you where you asked, and never repeats your addresses there. The legal basis is your consent.",
|
||||
"SharedTitle": "Your shared findings",
|
||||
"SourceCode": "Source code",
|
||||
"SpeedFailed": "The speed test didn't complete.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Compartir estos resultados",
|
||||
"ShareTooMany": "Demasiados envíos desde esta dirección hoy. Inténtelo mañana.",
|
||||
"ShareWho": "Quién los recibe: Arasaka di Hvozdikov Yevheniy, el editor de “me-web?”, en su propio servidor en Italia (meweb.arasaka.software).",
|
||||
"ShareWhy": "Para qué: para mejorar las notas sobre proveedores en próximas versiones. Solo se publican totales sin direcciones, y siempre después de que una persona los revise. La base legal es su consentimiento.",
|
||||
"ShareWhy": "Para qué: para mejorar las notas sobre proveedores en próximas versiones. Solo se publican totales sin direcciones, y siempre después de que una persona los revise. Si es usted quien da al editor el código de su envío, por ejemplo cuando pide ayuda con su conexión, el editor también lee estos resultados para responderle donde lo preguntó, y allí nunca repite sus direcciones. La base legal es su consentimiento.",
|
||||
"SharedTitle": "Sus resultados compartidos",
|
||||
"SourceCode": "Código fuente",
|
||||
"SpeedFailed": "La prueba de velocidad no terminó.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Jaga neid tulemusi",
|
||||
"ShareTooMany": "Sellelt aadressilt on täna saadetud liiga palju tulemusi. Proovige homme uuesti.",
|
||||
"ShareWho": "Kes need saab: Arasaka di Hvozdikov Yevheniy, rakenduse „me-web?“ väljaandja, oma serveris Itaalias (meweb.arasaka.software).",
|
||||
"ShareWhy": "Miks: et parandada teenusepakkujate kohta käivaid märkusi järgmistes versioonides. Avaldatakse ainult aadressideta koondandmeid ja ainult pärast seda, kui inimene on need üle vaadanud. Õiguslik alus on teie nõusolek.",
|
||||
"ShareWhy": "Miks: et parandada teenusepakkujate kohta käivaid märkusi järgmistes versioonides. Avaldatakse ainult aadressideta koondandmeid ja ainult pärast seda, kui inimene on need üle vaadanud. Kui annate saadetud tulemuste koodi ise väljaandjale, näiteks kui palute abi oma ühendusega, loeb väljaandja ka neid tulemusi, et vastata teile seal, kus te küsisite, ega korda seal kunagi teie aadresse. Õiguslik alus on teie nõusolek.",
|
||||
"SharedTitle": "Teie jagatud tulemused",
|
||||
"SourceCode": "Lähtekood",
|
||||
"SpeedFailed": "Kiirustest ei lõppenud.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "اشتراکگذاری این نتایج",
|
||||
"ShareTooMany": "امروز ارسالهای زیادی از این نشانی انجام شده است. فردا دوباره امتحان کنید.",
|
||||
"ShareWho": "چه کسی آنها را دریافت میکند: Arasaka di Hvozdikov Yevheniy، ناشر «me-web?»، روی سرور خودش در ایتالیا (meweb.arasaka.software).",
|
||||
"ShareWhy": "چرا: برای بهتر کردن یادداشتهای مربوط به ارائهدهندگان اینترنت در نسخههای بعدی. فقط آمار کلی بدون نشانیها منتشر میشود، آن هم پس از آنکه یک انسان آن را بازبینی کرده باشد. مبنای قانونی این کار، رضایت شماست.",
|
||||
"ShareWhy": "چرا: برای بهتر کردن یادداشتهای مربوط به ارائهدهندگان اینترنت در نسخههای بعدی. فقط آمار کلی بدون نشانیها منتشر میشود، آن هم پس از آنکه یک انسان آن را بازبینی کرده باشد. اگر خودتان کد ارسال را به ناشر بدهید، مثلاً وقتی برای اتصالتان کمک میخواهید، ناشر این نتایج را هم میخواند تا همان جایی که پرسیدهاید به شما پاسخ دهد، و هرگز نشانیهایتان را آنجا تکرار نمیکند. مبنای قانونی این کار، رضایت شماست.",
|
||||
"SharedTitle": "نتایجی که به اشتراک گذاشتهاید",
|
||||
"SourceCode": "کد منبع",
|
||||
"SpeedFailed": "آزمایش سرعت کامل نشد.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Jaa nämä tulokset",
|
||||
"ShareTooMany": "Liian monta lähetystä tästä osoitteesta tänään. Yritä uudelleen huomenna.",
|
||||
"ShareWho": "Kuka ne saa: Arasaka di Hvozdikov Yevheniy, ”me-web?”:n julkaisija, omalla palvelimellaan Italiassa (meweb.arasaka.software).",
|
||||
"ShareWhy": "Miksi: jotta operaattoreita koskevia tietoja voidaan parantaa tulevissa versioissa. Julkaistaan vain kokonaismääriä ilman osoitteita, ja vasta kun ihminen on tarkistanut ne. Käsittelyn oikeusperuste on suostumuksesi.",
|
||||
"ShareWhy": "Miksi: jotta operaattoreita koskevia tietoja voidaan parantaa tulevissa versioissa. Julkaistaan vain kokonaismääriä ilman osoitteita, ja vasta kun ihminen on tarkistanut ne. Jos annat lähetyksesi koodin itse julkaisijalle, esimerkiksi pyytäessäsi apua yhteytesi kanssa, julkaisija lukee myös nämä tulokset vastatakseen sinulle siellä, missä kysyit, eikä koskaan toista osoitteitasi siellä. Käsittelyn oikeusperuste on suostumuksesi.",
|
||||
"SharedTitle": "Jakamasi tulokset",
|
||||
"SourceCode": "Lähdekoodi",
|
||||
"SpeedFailed": "Nopeustesti ei valmistunut.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Ibahagi ang mga resultang ito",
|
||||
"ShareTooMany": "Masyadong maraming ipinadala mula sa address na ito ngayong araw. Subukan muli bukas.",
|
||||
"ShareWho": "Sino ang tatanggap: ang Arasaka di Hvozdikov Yevheniy, ang publisher ng “me-web?”, sa sarili nitong server sa Italya (meweb.arasaka.software).",
|
||||
"ShareWhy": "Bakit: para pahusayin ang mga tala tungkol sa mga provider sa mga susunod na bersyon. Mga kabuuang bilang lang na walang address ang inilalathala, pagkatapos suriin ng isang tao. Ang legal na batayan ay ang iyong pahintulot.",
|
||||
"ShareWhy": "Bakit: para pahusayin ang mga tala tungkol sa mga provider sa mga susunod na bersyon. Mga kabuuang bilang lang na walang address ang inilalathala, pagkatapos suriin ng isang tao. Kung ikaw mismo ang magbibigay sa publisher ng code ng iyong ipinadala, halimbawa kapag humihingi ka ng tulong tungkol sa iyong koneksyon, babasahin din ng publisher ang mga resultang ito para sagutin ka kung saan ka nagtanong, at hindi nito kailanman uulitin doon ang iyong mga address. Ang legal na batayan ay ang iyong pahintulot.",
|
||||
"SharedTitle": "Ang mga resultang ibinahagi mo",
|
||||
"SourceCode": "Source code",
|
||||
"SpeedFailed": "Hindi natapos ang speed test.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Wasea na ka e kunei",
|
||||
"ShareTooMany": "Vuqa vakalevu na vakau mai na itikotiko oqo ena siga nikua. Ni saga tale nimataka.",
|
||||
"ShareWho": "O cei e ciqoma: Arasaka di Hvozdikov Yevheniy, na dauvakatabaki ni “me-web?”, ena nona kompiuta ni veiqaravi mai Itali (meweb.arasaka.software).",
|
||||
"ShareWhy": "Na vuna: me vakavinakataki na ivakamacala me baleta na kabani ni internet ena vakarau e na qai tarava. E vakatabaki ga na iwiliwili taucoko ka sega kina na itikotiko, ni oti ga na nona vakadikeva e dua na tamata. Na yavu vakalawa na nomuni vakadonu.",
|
||||
"ShareWhy": "Na vuna: me vakavinakataki na ivakamacala me baleta na kabani ni internet ena vakarau e na qai tarava. E vakatabaki ga na iwiliwili taucoko ka sega kina na itikotiko, ni oti ga na nona vakadikeva e dua na tamata. Kevaka ko ni solia vakataki kemuni vua na dauvakatabaki na kodi ni ka ni a vakauta, me vaka ni ko ni kerea na veivuke me baleta na nomuni sema ki na internet, ena wilika talega na dauvakatabaki na ka oqo me sauma na nomuni taro ena vanua ko ni a taro kina, ka sega vakadua ni na tukuna tale kina na nomuni itikotiko. Na yavu vakalawa na nomuni vakadonu.",
|
||||
"SharedTitle": "Na ka ni a wasea",
|
||||
"SourceCode": "Kodi ni porokaramu",
|
||||
"SpeedFailed": "E sega ni oti na vakatovotovo ni totolo.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Partager ces résultats",
|
||||
"ShareTooMany": "Trop d'envois depuis cette adresse aujourd'hui. Réessayez demain.",
|
||||
"ShareWho": "Qui les reçoit\u00A0: Arasaka di Hvozdikov Yevheniy, l'éditeur de «\u00A0me-web?\u00A0», sur son propre serveur en Italie (meweb.arasaka.software).",
|
||||
"ShareWhy": "Pourquoi\u00A0: pour améliorer les notes sur les opérateurs dans les prochaines versions. Seuls des totaux sans adresses sont publiés, et seulement après vérification par une personne. La base légale est votre consentement.",
|
||||
"ShareWhy": "Pourquoi\u00A0: pour améliorer les notes sur les opérateurs dans les prochaines versions. Seuls des totaux sans adresses sont publiés, et seulement après vérification par une personne. Si vous donnez vous-même le code de votre envoi à l'éditeur, par exemple quand vous demandez de l'aide pour votre connexion, l'éditeur lit aussi ces résultats pour vous répondre là où vous avez demandé, et n'y reprend jamais vos adresses. La base légale est votre consentement.",
|
||||
"SharedTitle": "Vos résultats partagés",
|
||||
"SourceCode": "Code source",
|
||||
"SpeedFailed": "Le test de vitesse n'a pas abouti.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Comhroinn na torthaí seo",
|
||||
"ShareTooMany": "An iomarca aighneachtaí ón seoladh seo inniu. Bain triail eile as amárach.",
|
||||
"ShareWho": "Cé a fhaigheann iad: Arasaka di Hvozdikov Yevheniy, foilsitheoir “me-web?”, ar a fhreastalaí féin san Iodáil (meweb.arasaka.software).",
|
||||
"ShareWhy": "Cén fáth: chun na nótaí ar sholáthraithe a fheabhsú i leaganacha níos déanaí. Ní fhoilsítear riamh ach iomláin gan seoltaí, tar éis do dhuine iad a athbhreithniú. Is é do thoiliú an bunús dlí.",
|
||||
"ShareWhy": "Cén fáth: chun na nótaí ar sholáthraithe a fheabhsú i leaganacha níos déanaí. Ní fhoilsítear riamh ach iomláin gan seoltaí, tar éis do dhuine iad a athbhreithniú. Má thugann tú féin cód d'aighneachta don fhoilsitheoir, mar shampla nuair a iarrann tú cabhair le do nasc, léann an foilsitheoir na torthaí seo freisin chun freagra a thabhairt ort san áit ar chuir tú an cheist, agus ní athluann sé do sheoltaí ansin riamh. Is é do thoiliú an bunús dlí.",
|
||||
"SharedTitle": "Na torthaí a chomhroinn tú",
|
||||
"SourceCode": "Cód foinseach",
|
||||
"SpeedFailed": "Níor críochnaíodh an tástáil luais.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Tibwaa bwaai aika kuneaki",
|
||||
"ShareTooMany": "A rangi n bati kanako mai n te atureti aei n te bong aei. Manga kataia ningaabong.",
|
||||
"ShareWho": "Antai ae butimwaeia: Arasaka di Hvozdikov Yevheniy, te tia kaotioti ae te “me-web?”, n ana server i Itari (meweb.arasaka.software).",
|
||||
"ShareWhy": "Bukina: ibukin kaetakin rongorongo ibukiia taian kambwana n internet n taian katei aika imwina. Tii warebwai ni kabane aika akea atureti iai aika a na kaotaki, imwin tuoaia iroun te aomata. Tabon te tua ibukin aei bon am kariaia.",
|
||||
"ShareWhy": "Bukina: ibukin kaetakin rongorongo ibukiia taian kambwana n internet n taian katei aika imwina. Tii warebwai ni kabane aika akea atureti iai aika a na kaotaki, imwin tuoaia iroun te aomata. Ngkana ko anganna te tia kaotioti ana kooti am kanako n arom, n aron are ko butiia te ibuobuoki ibukin am kaitiboo n internet, ao e na warekii naba te tia kaotioti aikai bwa e na kaekko n te tabo are ko titiraki iai, ao e aki manga kaotii iai am atureti. Tabon te tua ibukin aei bon am kariaia.",
|
||||
"SharedTitle": "Bwaai ake ko a tibwaa",
|
||||
"SourceCode": "Ana kooti te app",
|
||||
"SpeedFailed": "E aki tia te kataneiai n te waekoa.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Emoja'o mba'e ojejuhúva",
|
||||
"ShareTooMany": "Hetaiterei ñemondo ko kundaharapégui ko árape. Eha'ã jey ko'ẽrõ.",
|
||||
"ShareWho": "Máva ohupyty: Arasaka di Hvozdikov Yevheniy, «me-web?» omyasãiva, iservidor teépe Itáliape (meweb.arasaka.software).",
|
||||
"ShareWhy": "Mba'ére: oñemyatyrõ hag̃ua haipyre internet empresakuéra rehegua versión upe rire oúvape. Oñemyasãi añoite papapy pahaguéva kundaharape'ỹre, peteĩ yvypóra ohesa'ỹijo rire. Pe léi pyenda ha'e nde ñemoneĩ.",
|
||||
"ShareWhy": "Mba'ére: oñemyatyrõ hag̃ua haipyre internet empresakuéra rehegua versión upe rire oúvape. Oñemyasãi añoite papapy pahaguéva kundaharape'ỹre, peteĩ yvypóra ohesa'ỹijo rire. Nde voi reme'ẽ omyasãivape nde ñemondo código, techapyrãrõ rejerure jave pytyvõ nde conexión rehe, omyasãiva omoñe'ẽ avei ko'ã mba'e ombohovái hag̃ua ndéve reporandu haguépe, ha upépe ndohai jeýi araka'eve nde kundaharape. Pe léi pyenda ha'e nde ñemoneĩ.",
|
||||
"SharedTitle": "Mba'e ojejuhúva remoja'ova'ekue",
|
||||
"SourceCode": "Código ypykue",
|
||||
"SpeedFailed": "Pya'ekue ñeha'ã ndopáiri.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Die Resultat teile",
|
||||
"ShareTooMany": "Hüt z vill Iisendige vo dere Adrässe. Bitte probiered Si's morn nomal.",
|
||||
"ShareWho": "Wer sie überchunnt: Arasaka di Hvozdikov Yevheniy, de Herusgäber vo «me-web?», uf sim eigete Server in Italie (meweb.arasaka.software).",
|
||||
"ShareWhy": "Wozue: zum d Hiwiis zu de Aabieter i spötere Versione z verbessere. Veröffentlicht wärded nur Summe ohni Adrässe, und erscht nachdem en Mänsch sie prüeft het. D Rächtsgrundlag isch Ihri Iiwilligung.",
|
||||
"ShareWhy": "Wozue: zum d Hiwiis zu de Aabieter i spötere Versione z verbessere. Veröffentlicht wärded nur Summe ohni Adrässe, und erscht nachdem en Mänsch sie prüeft het. Wenn Sie de Code vo Ihrere Iisendig sälber em Herusgäber gäbed, zum Bischpil wenn Sie um Hilf mit Ihrere Verbindig bitted, liest de Herusgäber au die Ergäbnis, zum Ihne det z antworte, wo Sie gfrogt händ, und nennt det nie Ihri Adrässe. D Rächtsgrundlag isch Ihri Iiwilligung.",
|
||||
"SharedTitle": "Ihri teilte Resultat",
|
||||
"SourceCode": "Quellcode",
|
||||
"SpeedFailed": "De Gschwindigkeitstest isch nöd fertig worde.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "שיתוף הממצאים",
|
||||
"ShareTooMany": "יותר מדי שליחות מהכתובת הזו היום. נסו שוב מחר.",
|
||||
"ShareWho": "מי מקבל אותם: Arasaka di Hvozdikov Yevheniy, המפיץ של ”me-web?”, בשרת שלו באיטליה (meweb.arasaka.software).",
|
||||
"ShareWhy": "למה: כדי לשפר את ההערות על ספקי האינטרנט בגרסאות הבאות. מתפרסמים רק סיכומים בלי כתובות, אחרי שאדם בדק אותם. הבסיס החוקי הוא ההסכמה שלכם.",
|
||||
"ShareWhy": "למה: כדי לשפר את ההערות על ספקי האינטרנט בגרסאות הבאות. מתפרסמים רק סיכומים בלי כתובות, אחרי שאדם בדק אותם. אם תמסרו בעצמכם למפיץ את קוד השליחה, למשל כשאתם מבקשים עזרה עם החיבור שלכם, המפיץ קורא גם את התוצאות האלה כדי לענות לכם במקום שבו שאלתם, ולעולם לא חוזר שם על הכתובות שלכם. הבסיס החוקי הוא ההסכמה שלכם.",
|
||||
"SharedTitle": "הממצאים ששיתפתם",
|
||||
"SourceCode": "קוד מקור",
|
||||
"SpeedFailed": "מבחן המהירות לא הושלם.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "ये नतीजे साझा करें",
|
||||
"ShareTooMany": "आज इस पते से बहुत बार नतीजे भेजे जा चुके हैं। कल फिर कोशिश करें।",
|
||||
"ShareWho": "इन्हें कौन पाता है: Arasaka di Hvozdikov Yevheniy, “me-web?” का प्रकाशक, इटली में अपने ही सर्वर पर (meweb.arasaka.software)।",
|
||||
"ShareWhy": "क्यों: आगे के संस्करणों में इंटरनेट कंपनियों के बारे में जानकारी बेहतर करने के लिए। सिर्फ़ बिना पतों वाले कुल आँकड़े ही प्रकाशित होते हैं, और वह भी किसी व्यक्ति के जाँचने के बाद। इसका क़ानूनी आधार आपकी सहमति है।",
|
||||
"ShareWhy": "क्यों: आगे के संस्करणों में इंटरनेट कंपनियों के बारे में जानकारी बेहतर करने के लिए। सिर्फ़ बिना पतों वाले कुल आँकड़े ही प्रकाशित होते हैं, और वह भी किसी व्यक्ति के जाँचने के बाद। अगर आप ख़ुद भेजे गए नतीजों का कोड प्रकाशक को देते हैं, जैसे अपने कनेक्शन के लिए मदद माँगते समय, तो प्रकाशक आपको वहीं जवाब देने के लिए जहाँ आपने पूछा था, ये नतीजे भी पढ़ता है, और वहाँ आपके पते कभी नहीं दोहराता। इसका क़ानूनी आधार आपकी सहमति है।",
|
||||
"SharedTitle": "आपके साझा किए गए नतीजे",
|
||||
"SourceCode": "सोर्स कोड",
|
||||
"SpeedFailed": "स्पीड टेस्ट पूरा नहीं हुआ।",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Ii result share karo",
|
||||
"ShareTooMany": "Aaj ii address se bahut dafe result bheja gais. Kal phir koshish karo.",
|
||||
"ShareWho": "Kaun paawe hai: Arasaka di Hvozdikov Yevheniy, “me-web?” ke publisher, Italy me apna server pe (meweb.arasaka.software).",
|
||||
"ShareWhy": "Kaahe: aage ke version me internet company ke baare me jaankari behtar kare ke khatir. Khaali bina address waala total ginti publish hoe hai, aur uu bhi ek aadmi ke check kare ke baad. Iske kaanooni aadhaar aap ke manzoori hai.",
|
||||
"ShareWhy": "Kaahe: aage ke version me internet company ke baare me jaankari behtar kare ke khatir. Khaali bina address waala total ginti publish hoe hai, aur uu bhi ek aadmi ke check kare ke baad. Agar aap khud bheja gaya result ke code publisher ke deo, jaise apna connection ke baare me madad maange ke time, to publisher ii result bhi padhe hai taki aap ke wahin jawaab de jahan aap pucchis, aur huwan aap ke address kabhi nahi dohraawe hai. Iske kaanooni aadhaar aap ke manzoori hai.",
|
||||
"SharedTitle": "Aap ke share kara gaya result",
|
||||
"SourceCode": "Source code",
|
||||
"SpeedFailed": "Speed test pura nahi hua.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Inai davaria gaudia harihari",
|
||||
"ShareTooMany": "Hari dina inai adres amo siaia momo herea. Kerukeru oi tahua lou.",
|
||||
"ShareWho": "Daika ese idia abia: Arasaka di Hvozdikov Yevheniy, “me-web?” ena karaia tauna, ena seva sibona ai, Italia ai (meweb.arasaka.software).",
|
||||
"ShareWhy": "Dahaka dainai: vesen gabeai idia ai intanet kampani edia note idia hanamoa totona. Adres lasi namba hegogo sibona idia halasia, tau ta ese idia itaia namonamo murinai. Taravatu ena badina be oi gwau namo.",
|
||||
"ShareWhy": "Dahaka dainai: vesen gabeai idia ai intanet kampani edia note idia hanamoa totona. Adres lasi namba hegogo sibona idia halasia, tau ta ese idia itaia namonamo murinai. Bema oi sibona ese oi siaia gaudia edia kod be karaia tauna dekenai oi henia, hegeregere oi ena intanet konekson totona durua oi noia neganai, karaia tauna ese inai gaudia danu do ia duahia, oi nanadai gabuna dekenai ia haere totona, bona unuseniai oiemu adres ia gwauraia lou lasi ela bona. Taravatu ena badina be oi gwau namo.",
|
||||
"SharedTitle": "Oi harihari davaria gaudia",
|
||||
"SourceCode": "Sos kod",
|
||||
"SpeedFailed": "Haraga tes ia ore lasi.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Podijeli ove rezultate",
|
||||
"ShareTooMany": "Danas je s ove adrese poslano previše rezultata. Pokušajte ponovno sutra.",
|
||||
"ShareWho": "Tko ih prima: Arasaka di Hvozdikov Yevheniy, izdavač „me-web?“, na vlastitom serveru u Italiji (meweb.arasaka.software).",
|
||||
"ShareWhy": "Zašto: kako bi se u sljedećim izdanjima poboljšale bilješke o operaterima. Objavljuju se samo zbrojevi bez adresa, i to tek nakon što ih pregleda čovjek. Pravna osnova je vaš pristanak.",
|
||||
"ShareWhy": "Zašto: kako bi se u sljedećim izdanjima poboljšale bilješke o operaterima. Objavljuju se samo zbrojevi bez adresa, i to tek nakon što ih pregleda čovjek. Ako sami date izdavaču kôd svojih poslanih rezultata, na primjer kada tražite pomoć oko svoje veze, izdavač čita i ove rezultate kako bi vam odgovorio ondje gdje ste pitali, i ondje nikada ne ponavlja vaše adrese. Pravna osnova je vaš pristanak.",
|
||||
"SharedTitle": "Rezultati koje ste podijelili",
|
||||
"SourceCode": "Izvorni kôd",
|
||||
"SpeedFailed": "Test brzine nije dovršen.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Pataje rezilta sa yo",
|
||||
"ShareTooMany": "Twòp rezilta voye soti nan adrès sa a jodi a. Eseye ankò demen.",
|
||||
"ShareWho": "Kiyès ki resevwa yo: Arasaka di Hvozdikov Yevheniy, piblikatè «\u00A0me-web?\u00A0», sou pwòp sèvè li ann Itali (meweb.arasaka.software).",
|
||||
"ShareWhy": "Poukisa: pou amelyore nòt sou konpayi entènèt yo nan vèsyon ki pral vini yo. Yo pibliye sèlman total san adrès, apre yon moun fin revize yo. Baz legal la se konsantman ou.",
|
||||
"ShareWhy": "Poukisa: pou amelyore nòt sou konpayi entènèt yo nan vèsyon ki pral vini yo. Yo pibliye sèlman total san adrès, apre yon moun fin revize yo. Si se ou menm ki bay piblikatè a kòd sa ou voye a, pa egzanp lè w ap mande èd pou koneksyon ou, piblikatè a li rezilta sa yo tou pou l reponn ou kote ou te poze kesyon an, epi li pa janm repete adrès ou yo la. Baz legal la se konsantman ou.",
|
||||
"SharedTitle": "Rezilta ou pataje yo",
|
||||
"SourceCode": "Kòd sous",
|
||||
"SpeedFailed": "Tès vitès la pa fini.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Eredmények megosztása",
|
||||
"ShareTooMany": "Ma túl sok beküldés érkezett erről a címről. Próbálja újra holnap.",
|
||||
"ShareWho": "Ki kapja meg: Arasaka di Hvozdikov Yevheniy, a „me-web?” kiadója, a saját szerverén Olaszországban (meweb.arasaka.software).",
|
||||
"ShareWhy": "Miért: hogy a későbbi kiadásokban pontosabbak legyenek a szolgáltatókról szóló megjegyzések. Csak címek nélküli összesítések kerülnek nyilvánosságra, és csak miután egy ember átnézte őket. A jogalap az Ön hozzájárulása.",
|
||||
"ShareWhy": "Miért: hogy a későbbi kiadásokban pontosabbak legyenek a szolgáltatókról szóló megjegyzések. Csak címek nélküli összesítések kerülnek nyilvánosságra, és csak miután egy ember átnézte őket. Ha a beküldés kódját Ön maga adja meg a kiadónak, például amikor segítséget kér a kapcsolatához, a kiadó ezeket az eredményeket is elolvassa, hogy ott válaszoljon Önnek, ahol kérdezett, és ott soha nem ismétli meg a címeit. A jogalap az Ön hozzájárulása.",
|
||||
"SharedTitle": "Megosztott eredményei",
|
||||
"SourceCode": "Forráskód",
|
||||
"SpeedFailed": "A sebességteszt nem fejeződött be.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Կիսվել այս արդյունքներով",
|
||||
"ShareTooMany": "Այսօր այս հասցեից չափազանց շատ ուղարկումներ են եղել։ Փորձեք վաղը։",
|
||||
"ShareWho": "Ով է ստանում․ Arasaka di Hvozdikov Yevheniy, «me-web?»-ի հրատարակիչը, իր սեփական սերվերում Իտալիայում (meweb.arasaka.software)։",
|
||||
"ShareWhy": "Ինչու․ հետագա տարբերակներում մատակարարների մասին նշումները բարելավելու համար։ Հրապարակվում են միայն ընդհանուր թվեր՝ առանց հասցեների, և միայն այն բանից հետո, երբ մարդը դրանք ստուգել է։ Իրավական հիմքը ձեր համաձայնությունն է։",
|
||||
"ShareWhy": "Ինչու․ հետագա տարբերակներում մատակարարների մասին նշումները բարելավելու համար։ Հրապարակվում են միայն ընդհանուր թվեր՝ առանց հասցեների, և միայն այն բանից հետո, երբ մարդը դրանք ստուգել է։ Եթե ուղարկման կոդը դուք ինքներդ տաք հրատարակչին, օրինակ՝ երբ օգնություն եք խնդրում ձեր կապի հարցով, հրատարակիչը կարդում է նաև այս արդյունքները՝ ձեզ պատասխանելու այնտեղ, որտեղ հարցրել եք, և այնտեղ երբեք չի կրկնում ձեր հասցեները։ Իրավական հիմքը ձեր համաձայնությունն է։",
|
||||
"SharedTitle": "Ձեր կիսված արդյունքները",
|
||||
"SourceCode": "Ելակետային կոդ",
|
||||
"SpeedFailed": "Արագության թեստը չավարտվեց։",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Bagikan temuan ini",
|
||||
"ShareTooMany": "Terlalu banyak kiriman dari alamat ini hari ini. Coba lagi besok.",
|
||||
"ShareWho": "Siapa yang menerimanya: Arasaka di Hvozdikov Yevheniy, penerbit “me-web?”, di servernya sendiri di Italia (meweb.arasaka.software).",
|
||||
"ShareWhy": "Mengapa: untuk memperbaiki catatan tentang penyedia internet di versi berikutnya. Yang dipublikasikan hanya angka total tanpa alamat, setelah diperiksa oleh seseorang. Dasar hukumnya adalah persetujuan Anda.",
|
||||
"ShareWhy": "Mengapa: untuk memperbaiki catatan tentang penyedia internet di versi berikutnya. Yang dipublikasikan hanya angka total tanpa alamat, setelah diperiksa oleh seseorang. Jika Anda sendiri memberikan kode kiriman Anda kepada penerbit, misalnya saat meminta bantuan soal koneksi Anda, penerbit juga membaca hasil ini untuk menjawab Anda di tempat Anda bertanya, dan tidak pernah mengulang alamat Anda di sana. Dasar hukumnya adalah persetujuan Anda.",
|
||||
"SharedTitle": "Temuan yang Anda bagikan",
|
||||
"SourceCode": "Kode sumber",
|
||||
"SpeedFailed": "Tes kecepatan tidak selesai.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Deila þessum niðurstöðum",
|
||||
"ShareTooMany": "Of margar sendingar frá þessari IP-tölu í dag. Reyndu aftur á morgun.",
|
||||
"ShareWho": "Hver tekur við þeim: Arasaka di Hvozdikov Yevheniy, útgefandi „me-web?“, á eigin netþjóni á Ítalíu (meweb.arasaka.software).",
|
||||
"ShareWhy": "Til hvers: til að bæta athugasemdirnar um þjónustuaðila í síðari útgáfum. Aðeins samtölur án IP-talna eru nokkurn tíma birtar, eftir að manneskja hefur farið yfir þær. Lagagrundvöllurinn er samþykki þitt.",
|
||||
"ShareWhy": "Til hvers: til að bæta athugasemdirnar um þjónustuaðila í síðari útgáfum. Aðeins samtölur án IP-talna eru nokkurn tíma birtar, eftir að manneskja hefur farið yfir þær. Ef þú gefur útgefandanum kóða sendingarinnar, til dæmis þegar þú biður um hjálp með tenginguna þína, les útgefandinn einnig þessar niðurstöður til að svara þér þar sem þú spurðir, og endurtekur aldrei IP-tölurnar þínar þar. Lagagrundvöllurinn er samþykki þitt.",
|
||||
"SharedTitle": "Niðurstöðurnar sem þú deildir",
|
||||
"SourceCode": "Frumkóði",
|
||||
"SpeedFailed": "Hraðamælingunni lauk ekki.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Condividi questi risultati",
|
||||
"ShareTooMany": "Troppi invii da questo indirizzo oggi. Riprovi domani.",
|
||||
"ShareWho": "Chi li riceve: Arasaka di Hvozdikov Yevheniy, l'editore di «me-web?», sul proprio server in Italia (meweb.arasaka.software).",
|
||||
"ShareWhy": "Perché: per migliorare le note sugli operatori nelle prossime versioni. Si pubblicano solo totali senza indirizzi, dopo la revisione di una persona. La base giuridica è il suo consenso.",
|
||||
"ShareWhy": "Perché: per migliorare le note sugli operatori nelle prossime versioni. Si pubblicano solo totali senza indirizzi, dopo la revisione di una persona. Se è lei a dare all'editore il codice del suo invio, per esempio quando chiede aiuto per la sua connessione, l'editore legge anche questi risultati per risponderle dove ha chiesto, e lì non riporta mai i suoi indirizzi. La base giuridica è il suo consenso.",
|
||||
"SharedTitle": "I risultati che ha condiviso",
|
||||
"SourceCode": "Codice sorgente",
|
||||
"SpeedFailed": "La prova di velocità non si è conclusa.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "このチェック結果を共有",
|
||||
"ShareTooMany": "今日はこのアドレスからの送信が多すぎます。明日もう一度お試しください。",
|
||||
"ShareWho": "受け取る人:「me-web?」の提供元である Arasaka di Hvozdikov Yevheniy。イタリアにある自社のサーバー(meweb.arasaka.software)で受け取ります。",
|
||||
"ShareWhy": "目的:今後のバージョンでプロバイダーのメモを改善するためです。公開するのは、人が確認したうえで、アドレスを含まない集計だけです。法的な根拠は、ご本人の同意です。",
|
||||
"ShareWhy": "目的:今後のバージョンでプロバイダーのメモを改善するためです。公開するのは、人が確認したうえで、アドレスを含まない集計だけです。接続について助けを求めるときなどに、ご本人が送信の受付番号を提供元に伝えた場合は、提供元が質問のあった場所で回答するためにこの結果も読みます。その場でアドレスを繰り返すことはありません。法的な根拠は、ご本人の同意です。",
|
||||
"SharedTitle": "共有したチェック結果",
|
||||
"SourceCode": "ソースコード",
|
||||
"SpeedFailed": "速度テストが最後まで終わりませんでした。",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "ამ შედეგების გაზიარება",
|
||||
"ShareTooMany": "დღეს ამ მისამართიდან ძალიან ბევრი რამ გაიგზავნა. სცადეთ ხვალ.",
|
||||
"ShareWho": "ვინ იღებს: Arasaka di Hvozdikov Yevheniy, „me-web?“-ის გამომცემელი, საკუთარ სერვერზე იტალიაში (meweb.arasaka.software).",
|
||||
"ShareWhy": "რატომ: შემდეგ ვერსიებში პროვაიდერების შესახებ შენიშვნების გასაუმჯობესებლად. ქვეყნდება მხოლოდ ჯამური მონაცემები, მისამართების გარეშე, და მხოლოდ მას შემდეგ, რაც მათ ადამიანი გადახედავს. სამართლებრივი საფუძველი თქვენი თანხმობაა.",
|
||||
"ShareWhy": "რატომ: შემდეგ ვერსიებში პროვაიდერების შესახებ შენიშვნების გასაუმჯობესებლად. ქვეყნდება მხოლოდ ჯამური მონაცემები, მისამართების გარეშე, და მხოლოდ მას შემდეგ, რაც მათ ადამიანი გადახედავს. თუ გაგზავნის კოდს თავად მისცემთ გამომცემელს, მაგალითად, როცა თქვენი კავშირის შესახებ დახმარებას ითხოვთ, გამომცემელი ამ შედეგებსაც წაიკითხავს, რომ გიპასუხოთ იქ, სადაც იკითხეთ, და იქ თქვენს მისამართებს არასოდეს გაიმეორებს. სამართლებრივი საფუძველი თქვენი თანხმობაა.",
|
||||
"SharedTitle": "თქვენ მიერ გაზიარებული შედეგები",
|
||||
"SourceCode": "საწყისი კოდი",
|
||||
"SpeedFailed": "სიჩქარის ტესტი ბოლომდე ვერ დასრულდა.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Нәтижелермен бөлісу",
|
||||
"ShareTooMany": "Бүгін бұл мекенжайдан жіберу тым көп болды. Ертең қайталаңыз.",
|
||||
"ShareWho": "Кім алады: «me-web?» қолданбасын шығарушы Arasaka di Hvozdikov Yevheniy, Италиядағы өз серверінде (meweb.arasaka.software).",
|
||||
"ShareWhy": "Не үшін: келесі нұсқалардағы провайдерлер туралы ескертпелерді жақсарту үшін. Адам тексергеннен кейін тек мекенжайсыз жалпы сандар ғана жарияланады. Құқықтық негіз — сіздің келісіміңіз.",
|
||||
"ShareWhy": "Не үшін: келесі нұсқалардағы провайдерлер туралы ескертпелерді жақсарту үшін. Адам тексергеннен кейін тек мекенжайсыз жалпы сандар ғана жарияланады. Егер жіберілген нәтижелер кодын шығарушыға өзіңіз берсеңіз, мысалы, байланысыңыз бойынша көмек сұрағанда, шығарушы сізге сұраған жеріңізде жауап беру үшін осы нәтижелерді де оқиды және ол жерде мекенжайларыңызды ешқашан қайталамайды. Құқықтық негіз — сіздің келісіміңіз.",
|
||||
"SharedTitle": "Сіз бөліскен нәтижелер",
|
||||
"SourceCode": "Бастапқы код",
|
||||
"SpeedFailed": "Жылдамдық тесті аяқталмады.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "ចែករំលែកលទ្ធផលទាំងនេះ",
|
||||
"ShareTooMany": "មានការផ្ញើច្រើនពេកពីអាសយដ្ឋាននេះនៅថ្ងៃនេះ។ សូមព្យាយាមម្ដងទៀតនៅថ្ងៃស្អែក។",
|
||||
"ShareWho": "អ្នកទទួល៖ Arasaka di Hvozdikov Yevheniy អ្នកបោះពុម្ពផ្សាយកម្មវិធី “me-web?” នៅលើម៉ាស៊ីនមេរបស់ខ្លួនផ្ទាល់នៅប្រទេសអ៊ីតាលី (meweb.arasaka.software)។",
|
||||
"ShareWhy": "មូលហេតុ៖ ដើម្បីកែលម្អកំណត់ចំណាំអំពីក្រុមហ៊ុនអ៊ីនធឺណិតក្នុងកំណែក្រោយៗ។ មានតែចំនួនសរុបដែលគ្មានអាសយដ្ឋានប៉ុណ្ណោះដែលត្រូវបានផ្សព្វផ្សាយ ក្រោយពេលមនុស្សម្នាក់បានពិនិត្យមើលរួច។ មូលដ្ឋានច្បាប់គឺការយល់ព្រមរបស់លោកអ្នក។",
|
||||
"ShareWhy": "មូលហេតុ៖ ដើម្បីកែលម្អកំណត់ចំណាំអំពីក្រុមហ៊ុនអ៊ីនធឺណិតក្នុងកំណែក្រោយៗ។ មានតែចំនួនសរុបដែលគ្មានអាសយដ្ឋានប៉ុណ្ណោះដែលត្រូវបានផ្សព្វផ្សាយ ក្រោយពេលមនុស្សម្នាក់បានពិនិត្យមើលរួច។ ប្រសិនបើលោកអ្នកផ្ទាល់ផ្តល់កូដនៃលទ្ធផលដែលបានផ្ញើទៅអ្នកបោះពុម្ពផ្សាយ ឧទាហរណ៍ ពេលលោកអ្នកសុំជំនួយអំពីការតភ្ជាប់របស់លោកអ្នក អ្នកបោះពុម្ពផ្សាយក៏អានលទ្ធផលទាំងនេះដែរ ដើម្បីឆ្លើយតបលោកអ្នកនៅកន្លែងដែលលោកអ្នកបានសួរ ហើយមិនដែលនិយាយឡើងវិញពីអាសយដ្ឋានរបស់លោកអ្នកនៅទីនោះទេ។ មូលដ្ឋានច្បាប់គឺការយល់ព្រមរបស់លោកអ្នក។",
|
||||
"SharedTitle": "លទ្ធផលដែលលោកអ្នកបានចែករំលែក",
|
||||
"SourceCode": "កូដប្រភព",
|
||||
"SpeedFailed": "ការសាកល្បងល្បឿនមិនបានបញ្ចប់ទេ។",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "이 결과 공유하기",
|
||||
"ShareTooMany": "오늘 이 주소에서 너무 많이 보냈습니다. 내일 다시 해 보세요.",
|
||||
"ShareWho": "받는 곳: “me-web?”의 배포자인 Arasaka di Hvozdikov Yevheniy가 이탈리아에 있는 자체 서버(meweb.arasaka.software)에서 받습니다.",
|
||||
"ShareWhy": "목적: 다음 버전들에서 통신사 메모를 개선하기 위해서입니다. 공개되는 것은 사람이 검토한 뒤의, 주소가 빠진 합계뿐입니다. 법적 근거는 사용자의 동의입니다.",
|
||||
"ShareWhy": "목적: 다음 버전들에서 통신사 메모를 개선하기 위해서입니다. 공개되는 것은 사람이 검토한 뒤의, 주소가 빠진 합계뿐입니다. 연결 문제로 도움을 요청할 때처럼 사용자가 직접 제출 코드를 배포자에게 알려 주면, 배포자는 질문한 곳에서 답하기 위해 이 결과도 읽으며, 그곳에 주소를 다시 적지 않습니다. 법적 근거는 사용자의 동의입니다.",
|
||||
"SharedTitle": "내가 공유한 결과",
|
||||
"SourceCode": "소스 코드",
|
||||
"SpeedFailed": "속도 테스트를 마치지 못했습니다.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Жыйынтыктар менен бөлүшүү",
|
||||
"ShareTooMany": "Бүгүн бул даректен жөнөтүүлөр өтө көп болду. Эртең кайталаңыз.",
|
||||
"ShareWho": "Ким алат: «me-web?» колдонмосун чыгаруучу Arasaka di Hvozdikov Yevheniy, Италиядагы өз серверинде (meweb.arasaka.software).",
|
||||
"ShareWhy": "Эмне үчүн: кийинки версиялардагы провайдерлер тууралуу эскертүүлөрдү жакшыртуу үчүн. Адам текшергенден кийин даректерсиз жалпы сандар гана жарыяланат. Укуктук негиз — сиздин макулдугуңуз.",
|
||||
"ShareWhy": "Эмне үчүн: кийинки версиялардагы провайдерлер тууралуу эскертүүлөрдү жакшыртуу үчүн. Адам текшергенден кийин даректерсиз жалпы сандар гана жарыяланат. Эгер жөнөтүлгөн жыйынтыктардын кодун чыгаруучуга өзүңүз берсеңиз, мисалы, байланышыңыз боюнча жардам сураганда, чыгаруучу сизге сураган жериңизде жооп берүү үчүн бул жыйынтыктарды да окуйт жана ал жерде даректериңизди эч качан кайталабайт. Укуктук негиз — сиздин макулдугуңуз.",
|
||||
"SharedTitle": "Сиз бөлүшкөн жыйынтыктар",
|
||||
"SourceCode": "Баштапкы код",
|
||||
"SpeedFailed": "Ылдамдык тести аягына чыккан жок.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Dës Resultater deelen",
|
||||
"ShareTooMany": "Haut ze vill Asendungen vun dëser Adress. Probéiert w.e.g. muer nach eng Kéier.",
|
||||
"ShareWho": "Wien se kritt: Arasaka di Hvozdikov Yevheniy, den Erausgeber vu „me-web?“, op sengem eegene Server an Italien (meweb.arasaka.software).",
|
||||
"ShareWhy": "Firwat: fir d'Hiweiser iwwer d'Ubidder a spéidere Versiounen ze verbesseren. Verëffentlecht ginn nëmme Summen ouni Adressen, an eréischt nodeems e Mënsch se nogekuckt huet. D'Rechtsgrondlag ass Är Awëllegung.",
|
||||
"ShareWhy": "Firwat: fir d'Hiweiser iwwer d'Ubidder a spéidere Versiounen ze verbesseren. Verëffentlecht ginn nëmme Summen ouni Adressen, an eréischt nodeems e Mënsch se nogekuckt huet. Wann Dir de Code vun Ärer Asendung selwer dem Erausgeber gitt, zum Beispill wann Dir ëm Hëllef mat Ärer Verbindung frot, liest den Erausgeber och dës Resultater, fir Iech do ze äntweren, wou Dir gefrot hutt, an nennt do ni Är Adressen. D'Rechtsgrondlag ass Är Awëllegung.",
|
||||
"SharedTitle": "Är gedeelt Resultater",
|
||||
"SourceCode": "Quellcode",
|
||||
"SpeedFailed": "Den Test vun der Vitess gouf net ofgeschloss.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "ແບ່ງປັນຜົນການກວດສອບນີ້",
|
||||
"ShareTooMany": "ມື້ນີ້ມີການສົ່ງຈາກທີ່ຢູ່ນີ້ຫຼາຍເກີນໄປ. ກະລຸນາລອງໃໝ່ມື້ອື່ນ.",
|
||||
"ShareWho": "ຜູ້ຮັບ: Arasaka di Hvozdikov Yevheniy, ຜູ້ເຜີຍແຜ່ “me-web?”, ໃນເຊີເວີຂອງຕົນເອງຢູ່ປະເທດອີຕາລີ (meweb.arasaka.software).",
|
||||
"ShareWhy": "ເຫດຜົນ: ເພື່ອປັບປຸງໝາຍເຫດກ່ຽວກັບຜູ້ໃຫ້ບໍລິການໃນເວີຊັນຕໍ່ໆໄປ. ຈະເຜີຍແຜ່ສະເພາະຕົວເລກລວມທີ່ບໍ່ມີທີ່ຢູ່ ແລະ ຕ້ອງມີຄົນກວດທານກ່ອນສະເໝີ. ພື້ນຖານທາງກົດໝາຍແມ່ນການຍິນຍອມຂອງທ່ານ.",
|
||||
"ShareWhy": "ເຫດຜົນ: ເພື່ອປັບປຸງໝາຍເຫດກ່ຽວກັບຜູ້ໃຫ້ບໍລິການໃນເວີຊັນຕໍ່ໆໄປ. ຈະເຜີຍແຜ່ສະເພາະຕົວເລກລວມທີ່ບໍ່ມີທີ່ຢູ່ ແລະ ຕ້ອງມີຄົນກວດທານກ່ອນສະເໝີ. ຖ້າທ່ານມອບລະຫັດຂອງຂໍ້ມູນທີ່ທ່ານສົ່ງໃຫ້ຜູ້ເຜີຍແຜ່ດ້ວຍຕົນເອງ ເຊັ່ນ ເມື່ອທ່ານຂໍຄວາມຊ່ວຍເຫຼືອກ່ຽວກັບການເຊື່ອມຕໍ່ຂອງທ່ານ ຜູ້ເຜີຍແຜ່ກໍຈະອ່ານຜົນເຫຼົ່ານີ້ນຳ ເພື່ອຕອບທ່ານຢູ່ບ່ອນທີ່ທ່ານຖາມ ແລະ ຈະບໍ່ກ່າວທີ່ຢູ່ຂອງທ່ານຊ້ຳອີກຢູ່ບ່ອນນັ້ນເລີຍ. ພື້ນຖານທາງກົດໝາຍແມ່ນການຍິນຍອມຂອງທ່ານ.",
|
||||
"SharedTitle": "ຜົນການກວດສອບທີ່ທ່ານແບ່ງປັນ",
|
||||
"SourceCode": "ຊອດໂຄດ",
|
||||
"SpeedFailed": "ການທົດສອບຄວາມໄວບໍ່ສຳເລັດ.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Pasidalyti šiais rezultatais",
|
||||
"ShareTooMany": "Šiandien iš šio adreso gauta per daug pateikimų. Bandykite rytoj.",
|
||||
"ShareWho": "Kas juos gauna: Arasaka di Hvozdikov Yevheniy, „me-web?“ leidėjas, savo serveryje Italijoje (meweb.arasaka.software).",
|
||||
"ShareWhy": "Kodėl: kad vėlesnėse versijose būtų patobulintos pastabos apie teikėjus. Skelbiamos tik bendros sumos be adresų ir tik po to, kai jas peržiūri žmogus. Teisinis pagrindas – jūsų sutikimas.",
|
||||
"ShareWhy": "Kodėl: kad vėlesnėse versijose būtų patobulintos pastabos apie teikėjus. Skelbiamos tik bendros sumos be adresų ir tik po to, kai jas peržiūri žmogus. Jei pateikimo kodą leidėjui duodate patys, pavyzdžiui, prašydami pagalbos dėl savo ryšio, leidėjas perskaito ir šiuos rezultatus, kad atsakytų jums ten, kur klausėte, ir ten niekada nekartoja jūsų adresų. Teisinis pagrindas – jūsų sutikimas.",
|
||||
"SharedTitle": "Jūsų pasidalyti rezultatai",
|
||||
"SourceCode": "Pirminis kodas",
|
||||
"SpeedFailed": "Greičio testas nebaigtas.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Kopīgot šos rezultātus",
|
||||
"ShareTooMany": "Šodien no šīs adreses ir pārāk daudz iesniegumu. Mēģiniet rīt.",
|
||||
"ShareWho": "Kas tos saņem: Arasaka di Hvozdikov Yevheniy, “me-web?” izdevējs, savā serverī Itālijā (meweb.arasaka.software).",
|
||||
"ShareWhy": "Kāpēc: lai nākamajās versijās uzlabotu piezīmes par operatoriem. Publicē tikai kopsummas bez adresēm un tikai pēc tam, kad tās ir pārskatījis cilvēks. Juridiskais pamats ir jūsu piekrišana.",
|
||||
"ShareWhy": "Kāpēc: lai nākamajās versijās uzlabotu piezīmes par operatoriem. Publicē tikai kopsummas bez adresēm un tikai pēc tam, kad tās ir pārskatījis cilvēks. Ja iesnieguma kodu izdevējam dodat paši, piemēram, lūdzot palīdzību ar savu savienojumu, izdevējs izlasa arī šos rezultātus, lai atbildētu jums tur, kur jautājāt, un tur nekad neatkārto jūsu adreses. Juridiskais pamats ir jūsu piekrišana.",
|
||||
"SharedTitle": "Jūsu kopīgotie rezultāti",
|
||||
"SourceCode": "Pirmkods",
|
||||
"SpeedFailed": "Ātruma tests netika pabeigts.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Zarao ireo vokatra ireo",
|
||||
"ShareTooMany": "Be loatra ny fandefasana avy amin'ity adiresy ity anio. Andramo indray rahampitso.",
|
||||
"ShareWho": "Iza no mahazo azy: Arasaka di Hvozdikov Yevheniy, mpamoaka ny «me-web?», ao amin'ny mpizara azy manokana any Italia (meweb.arasaka.software).",
|
||||
"ShareWhy": "Antony: hanatsarana ny fanamarihana momba ny mpamatsy ao amin'ireo dika manaraka. Tontaliny tsy misy adiresy ihany no avoaka, rehefa avy nodinihin'olona iray. Ny fanekenao no fototra ara-dalàna.",
|
||||
"ShareWhy": "Antony: hanatsarana ny fanamarihana momba ny mpamatsy ao amin'ireo dika manaraka. Tontaliny tsy misy adiresy ihany no avoaka, rehefa avy nodinihin'olona iray. Raha ianao ihany no manome ny mpamoaka ny kaodin'ny vokatra nalefanao, ohatra rehefa mangataka fanampiana momba ny fifandraisanao ianao, dia vakian'ny mpamoaka koa ireo vokatra ireo mba hamaliana anao any amin'ny toerana nanontanianao, ary tsy averiny mihitsy any ny adiresinao. Ny fanekenao no fototra ara-dalàna.",
|
||||
"SharedTitle": "Ireo vokatra nozarainao",
|
||||
"SourceCode": "Kaody loharano",
|
||||
"SpeedFailed": "Tsy vita ny fitsapana hafainganana.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Ajej men ko ear loe",
|
||||
"ShareTooMany": "Eļap an lōn̄ men ko rej jilkinļo̧k jān address in rainin. Bar kajjieon̄ ilju.",
|
||||
"ShareWho": "Wōn eo ej bōk: Arasaka di Hvozdikov Yevheniy, ri-kwaļo̧k eo an “me-web?”, ilo server eo an make ilo Itali (meweb.arasaka.software).",
|
||||
"ShareWhy": "Etke: n̄an kōm̧m̧an bwe en em̧m̧an lok melele ko kōn kampeni in internet ko ilo version ko tokālik. Wōt aolepen oran ko ejjeļo̧k address ie renaaj kwaļo̧k, ālikin an juon armej etale er. Kakobaba eo ilo kien ej am kōtļo̧k.",
|
||||
"ShareWhy": "Etke: n̄an kōm̧m̧an bwe en em̧m̧an lok melele ko kōn kampeni in internet ko ilo version ko tokālik. Wōt aolepen oran ko ejjeļo̧k address ie renaaj kwaļo̧k, ālikin an juon armej etale er. Ñe kwe make kwōj leļo̧k code in men ko kwaar jilkinļo̧k ñan ri-kwaļo̧k eo, āinwōt ñe kwōj kajjitōk jipañ kōn connection eo am, ri-kwaļo̧k eo enaaj bar riiti men kein bwe en uwaak eok ilo jikin eo kwaar kajjitōk ie, im ejjeļo̧k iien enaaj bar kwaļo̧k address ko am ijo. Kakobaba eo ilo kien ej am kōtļo̧k.",
|
||||
"SharedTitle": "Men ko kwaar ajej",
|
||||
"SourceCode": "Code eo an app in",
|
||||
"SpeedFailed": "Kōmmālmel in ttōr eo ear jab dedelo̧k.",
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
"ShareTitle": "Tiria ēnei kitenga",
|
||||
"ShareTooMany": "He nui rawa ngā tukunga mai i tēnei wāhitau i tēnei rā. Whakamātau anō āpōpō.",
|
||||
"ShareWho": "Ko wai ka whiwhi: Arasaka di Hvozdikov Yevheniy, te kaiwhakaputa o “me-web?”, i tōna ake tūmau i Itāria (meweb.arasaka.software).",
|
||||
"ShareWhy": "He aha ai: hei whakapai ake i ngā kōrero mō ngā kaiwhakarato i ngā putanga ā muri. Ko ngā tapeke anake, kāore he wāhitau, ka whakaputaina, i muri i tā tētahi tangata arotake. Ko te tūāpapa ā-ture ko tō whakaaetanga.",
|
||||
"ShareWhy": "He aha ai: hei whakapai ake i ngā kōrero mō ngā kaiwhakarato i ngā putanga ā muri. Ko ngā tapeke anake, kāore he wāhitau, ka whakaputaina, i muri i tā tētahi tangata arotake. Ki te hoatu e koe ake te waehere o tō tukunga ki te kaiwhakaputa, hei tauira ina tono āwhina koe mō tō hononga, ka pānui anō te kaiwhakaputa i ēnei hua hei whakautu i a koe ki te wāhi i pātai ai koe, ā, kore rawa ia e whakahua anō i ō wāhitau ki reira. Ko te tūāpapa ā-ture ko tō whakaaetanga.",
|
||||
"SharedTitle": "Ō kitenga kua tiria",
|
||||
"SourceCode": "Waehere pūtake",
|
||||
"SpeedFailed": "Kāore i oti te whakamātautau tere.",
|
||||
|
||||