mirror of
https://github.com/f-droid/fdroidserver.git
synced 2025-09-13 14:32:28 +03:00
Compare commits
44 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
57244dec63 | ||
![]() |
2eb3986ecf | ||
![]() |
d4ad523dd2 | ||
![]() |
6fff73b678 | ||
![]() |
fbf8fc54db | ||
![]() |
f5f79ac1ea | ||
![]() |
97e9784d5d | ||
![]() |
d20a6a5dcf | ||
![]() |
058f0b7f6a | ||
![]() |
e07cdf5f0c | ||
![]() |
f9d111c8c1 | ||
![]() |
8b54e2b4cf | ||
![]() |
d594a683ab | ||
![]() |
7a98650ed3 | ||
![]() |
b19b8050db | ||
![]() |
6a3758d3c4 | ||
![]() |
546821fc3d | ||
![]() |
120a1655b4 | ||
![]() |
19d709edcd | ||
![]() |
5049645003 | ||
![]() |
e4b54c9768 | ||
![]() |
7988c54d00 | ||
![]() |
05c4bf2483 | ||
![]() |
7e219561b7 | ||
![]() |
6ad3c74bb4 | ||
![]() |
96c0d928da | ||
![]() |
ba5c78d45f | ||
![]() |
8f1411607a | ||
![]() |
97b0b0eaf8 | ||
![]() |
c6c4764b33 | ||
![]() |
7946acd52a | ||
![]() |
0a91b98aee | ||
![]() |
09a51a429b | ||
![]() |
47b5ecdc8c | ||
![]() |
909864a8c7 | ||
![]() |
47b9b24aef | ||
![]() |
f4f1c003a6 | ||
![]() |
51b55963a5 | ||
![]() |
52c1bcca70 | ||
![]() |
8a36e264b4 | ||
![]() |
d5d65cfabd | ||
![]() |
dcb804f70d | ||
![]() |
a0cae97155 | ||
![]() |
956cb11f91 |
142 changed files with 4080 additions and 997 deletions
|
@ -98,6 +98,14 @@ metadata_v0:
|
|||
# Ubuntu and other distros often lack https:// support
|
||||
- grep Debian /etc/issue.net
|
||||
&& { find /etc/apt/sources.list* -type f | xargs sed -i s,http:,https:, ; }
|
||||
# The official Debian docker images ship without ca-certificates,
|
||||
# TLS certificates cannot be verified until that is installed. The
|
||||
# following code turns off TLS verification, and enables HTTPS, so
|
||||
# at least unverified TLS is used for apt-get instead of plain
|
||||
# HTTP. Once ca-certificates is installed, the CA verification is
|
||||
# enabled by removing this config. This set up makes the initial
|
||||
# `apt-get update` and `apt-get install` look the same as verified
|
||||
# TLS to the network observer and hides the metadata.
|
||||
- echo 'Acquire::https::Verify-Peer "false";' > /etc/apt/apt.conf.d/99nocacertificates
|
||||
- apt-get update
|
||||
- apt-get install ca-certificates
|
||||
|
@ -212,21 +220,6 @@ ubuntu_jammy_pip:
|
|||
- LANGUAGE='de' fdroid --help | grep 'Gültige Befehle sind'
|
||||
|
||||
|
||||
# The gradlew-fdroid tests are isolated from the rest of the test
|
||||
# suite, so they run as their own job.
|
||||
gradlew-fdroid:
|
||||
image: debian:bookworm-slim
|
||||
<<: *apt-template
|
||||
rules:
|
||||
- changes:
|
||||
- .gitlab-ci.yml
|
||||
- gradlew-fdroid
|
||||
- tests/test_gradlew-fdroid
|
||||
script:
|
||||
- apt-get install ca-certificates curl default-jdk-headless unzip
|
||||
- ./tests/test_gradlew-fdroid
|
||||
|
||||
|
||||
# Run all the various linters and static analysis tools.
|
||||
hooks/pre-commit:
|
||||
stage: lint
|
||||
|
@ -286,11 +279,9 @@ shellcheck:
|
|||
rules:
|
||||
- changes:
|
||||
- .gitlab-ci.yml
|
||||
- gradlew-fdroid
|
||||
- hooks/install-hooks.sh
|
||||
- hooks/pre-commit
|
||||
- tests/run-tests
|
||||
- tests/test_gradlew-fdroid
|
||||
<<: *apt-template
|
||||
script:
|
||||
- apt-get install shellcheck
|
||||
|
@ -299,10 +290,6 @@ shellcheck:
|
|||
hooks/install-hooks.sh
|
||||
hooks/pre-commit
|
||||
tests/run-tests
|
||||
# TODO make the gradlew things pass the standard above
|
||||
- shellcheck --severity=error --color
|
||||
gradlew-fdroid
|
||||
tests/test_gradlew-fdroid
|
||||
|
||||
# Check all the dependencies in Debian to mirror production. CVEs are
|
||||
# generally fixed in the latest versions in pip/pypi.org, so it isn't
|
||||
|
@ -443,7 +430,7 @@ macOS:
|
|||
- brew install --cask android-commandlinetools temurin # temurin is a JDK
|
||||
|
||||
# test suite dependencies
|
||||
- brew install dash bash coreutils gnu-sed
|
||||
- brew install bash coreutils gnu-sed
|
||||
# TODO port tests/run-tests to POSIX and gsed, it has a couple GNU-isms like du --bytes
|
||||
- export PATH="$(brew --prefix fdroidserver)/libexec/bin:$(brew --prefix coreutils)/libexec/gnubin:$PATH"
|
||||
|
||||
|
@ -460,42 +447,26 @@ macOS:
|
|||
|
||||
- echo "macOS sticks with bash 3.x because of licenses, so avoid new bash syntax"
|
||||
- /bin/bash --version
|
||||
- /bin/bash -n gradlew-fdroid tests/run-tests
|
||||
- /bin/bash -n tests/run-tests
|
||||
|
||||
# test fdroidserver from git with current package's dependencies
|
||||
- fdroid="$(brew --prefix fdroidserver)/libexec/bin/python3 $PWD/fdroid" ./tests/run-tests
|
||||
|
||||
|
||||
gradle:
|
||||
image: debian:bookworm-slim
|
||||
rules:
|
||||
- if: "$PERSONAL_ACCESS_TOKEN"
|
||||
image: debian:trixie-slim
|
||||
<<: *apt-template
|
||||
variables:
|
||||
GIT_DEPTH: 1000
|
||||
rules:
|
||||
- changes:
|
||||
- .gitlab-ci.yml
|
||||
- makebuildserver
|
||||
script:
|
||||
- apt-get install
|
||||
ca-certificates
|
||||
git
|
||||
openssh-client
|
||||
python3-bs4
|
||||
python3-colorama
|
||||
python3-git
|
||||
python3-gitlab
|
||||
python3-packaging
|
||||
python3-requests
|
||||
# if this is a merge request fork, then only check if relevant files changed
|
||||
- if [ "$CI_PROJECT_NAMESPACE" != "fdroid" ]; then
|
||||
set -x;
|
||||
git fetch https://gitlab.com/fdroid/fdroidserver.git;
|
||||
for f in `git diff --name-only --diff-filter=d FETCH_HEAD...HEAD`; do
|
||||
test "$f" == "makebuildserver" && export CHANGED="$f $CHANGED";
|
||||
test "$f" == "gradlew-fdroid" && export CHANGED="$f $CHANGED";
|
||||
done;
|
||||
test -z "$CHANGED" && exit;
|
||||
echo $CHANGED;
|
||||
set +x;
|
||||
fi
|
||||
- ./tests/gradle-release-checksums.py
|
||||
|
||||
|
||||
|
@ -550,6 +521,8 @@ fdroid build:
|
|||
env HOME=$home_vagrant
|
||||
fdroid"
|
||||
|
||||
- git -C $home_vagrant/gradlew-fdroid pull
|
||||
|
||||
- chown -R vagrant $home_vagrant
|
||||
- chown -R vagrant $fdroidserver/.git
|
||||
- chown vagrant $fdroidserver/
|
||||
|
@ -734,7 +707,9 @@ pages:
|
|||
artifacts:
|
||||
paths:
|
||||
- public
|
||||
needs: ["Build documentation"]
|
||||
needs:
|
||||
- job: "Build documentation"
|
||||
optional: true
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' # only publish pages on default (master) branch
|
||||
|
||||
|
@ -778,12 +753,12 @@ docker:
|
|||
|
||||
# PUBLISH is the signing server. It has a very minimal manual setup.
|
||||
PUBLISH:
|
||||
image: debian:bullseye-backports
|
||||
image: debian:bookworm-backports
|
||||
<<: *python-rules-changes
|
||||
script:
|
||||
- apt-get update
|
||||
- apt-get -qy upgrade
|
||||
- apt-get -qy install --no-install-recommends -t bullseye-backports
|
||||
- apt-get -qy install --no-install-recommends -t bookworm-backports
|
||||
androguard
|
||||
apksigner
|
||||
curl
|
||||
|
|
|
@ -20,6 +20,7 @@ include examples/template.yml
|
|||
include examples/Vagrantfile.yaml
|
||||
include gradlew-fdroid
|
||||
include LICENSE
|
||||
include locale/ba/LC_MESSAGES/fdroidserver.po
|
||||
include locale/bo/LC_MESSAGES/fdroidserver.po
|
||||
include locale/ca/LC_MESSAGES/fdroidserver.po
|
||||
include locale/cs/LC_MESSAGES/fdroidserver.po
|
||||
|
|
|
@ -37,11 +37,22 @@ RUN useradd --create-home -s /bin/bash vagrant && echo -n 'vagrant:vagrant' | ch
|
|||
#
|
||||
# Ensure fdroidserver's dependencies are marked manual before purging
|
||||
# unneeded packages, otherwise, all its dependencies get purged.
|
||||
#
|
||||
# The official Debian docker images ship without ca-certificates, so
|
||||
# TLS certificates cannot be verified until that is installed. The
|
||||
# following code temporarily turns off TLS verification, and enables
|
||||
# HTTPS, so at least unverified TLS is used for apt-get instead of
|
||||
# plain HTTP. Once ca-certificates is installed, the CA verification
|
||||
# is enabled by removing the newly created config file. This set up
|
||||
# makes the initial `apt-get update` and `apt-get install` look the
|
||||
# same as verified TLS to the network observer and hides the metadata.
|
||||
RUN printf "path-exclude=/usr/share/locale/*\npath-exclude=/usr/share/man/*\npath-exclude=/usr/share/doc/*\npath-include=/usr/share/doc/*/copyright\n" >/etc/dpkg/dpkg.cfg.d/01_nodoc \
|
||||
&& mkdir -p /usr/share/man/man1 \
|
||||
&& echo 'Acquire::https::Verify-Peer "false";' > /etc/apt/apt.conf.d/99nocacertificates \
|
||||
&& find /etc/apt/sources.list* -type f -exec sed -i s,http:,https:, {} \; \
|
||||
&& apt-get update \
|
||||
&& apt-get install ca-certificates \
|
||||
&& sed -i 's,http:,https:,' /etc/apt/sources.list.d/debian.sources \
|
||||
&& rm /etc/apt/apt.conf.d/99nocacertificates \
|
||||
&& apt-get upgrade \
|
||||
&& apt-get dist-upgrade \
|
||||
&& apt-get install openssh-client iproute2 python3 openssh-server sudo \
|
||||
|
|
|
@ -25,7 +25,12 @@ fi
|
|||
chmod -R a+rX /opt/gradle
|
||||
|
||||
test -e /opt/gradle/bin || mkdir -p /opt/gradle/bin
|
||||
ln -fs /home/vagrant/fdroidserver/gradlew-fdroid /opt/gradle/bin/gradle
|
||||
git clone --depth 1 https://gitlab.com/fdroid/gradlew-fdroid.git /home/vagrant/gradlew-fdroid/
|
||||
chmod 0755 /home/vagrant/gradlew-fdroid/gradlew-fdroid
|
||||
chmod -R u+rwX,a+rX,go-w /home/vagrant/gradlew-fdroid/
|
||||
ln -fs /home/vagrant/gradlew-fdroid/gradlew-fdroid /opt/gradle/bin/gradle
|
||||
ln -fs /home/vagrant/gradlew-fdroid/gradlew-fdroid /usr/local/bin/
|
||||
|
||||
chown -h vagrant:vagrant /opt/gradle/bin/gradle
|
||||
chown vagrant:vagrant /opt/gradle/versions
|
||||
chmod 0755 /opt/gradle/versions
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#
|
||||
import os
|
||||
import sys
|
||||
|
||||
sys.path.insert(0, os.path.abspath('../../fdroidserver'))
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
|
|
@ -6,7 +6,6 @@ import argparse
|
|||
import logging
|
||||
|
||||
from fdroidserver import _, common, metadata
|
||||
|
||||
from fdroidserver.exception import VCSException
|
||||
|
||||
fdroid_summary = 'reset app VCSs to the latest version'
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
import os
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from fdroidserver import common
|
||||
from fdroidserver.common import FDroidPopen
|
||||
from fdroidserver.exception import BuildException
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
import os
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from fdroidserver import common
|
||||
from fdroidserver.common import FDroidPopen
|
||||
from fdroidserver.exception import BuildException
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#
|
||||
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from fdroidserver import common, index
|
||||
|
||||
fdroid_summary = 'export the keystore in standard PEM format'
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
import argparse
|
||||
import os
|
||||
import pprint
|
||||
|
||||
from fdroidserver import _, common, metadata
|
||||
|
||||
fdroid_summary = 'prepare the srclibs for `fdroid build --on-server`'
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from fdroidserver import common
|
||||
from fdroidserver.common import FDroidPopen
|
||||
from fdroidserver.exception import BuildException
|
||||
|
|
|
@ -3,7 +3,6 @@ import glob
|
|||
import os
|
||||
import sys
|
||||
|
||||
|
||||
# support running straight from git and standard installs
|
||||
rootpaths = [
|
||||
os.path.realpath(os.path.join(os.path.dirname(__file__), '..')),
|
||||
|
@ -15,7 +14,10 @@ rootpaths = [
|
|||
|
||||
localedir = None
|
||||
for rootpath in rootpaths:
|
||||
if len(glob.glob(os.path.join(rootpath, 'locale', '*', 'LC_MESSAGES', 'fdroidserver.mo'))) > 0:
|
||||
found_mo = glob.glob(
|
||||
os.path.join(rootpath, 'locale', '*', 'LC_MESSAGES', 'fdroidserver.mo')
|
||||
)
|
||||
if len(found_mo) > 0:
|
||||
localedir = os.path.join(rootpath, 'locale')
|
||||
break
|
||||
|
||||
|
@ -24,39 +26,52 @@ gettext.textdomain('fdroidserver')
|
|||
_ = gettext.gettext
|
||||
|
||||
|
||||
from fdroidserver.exception import (FDroidException,
|
||||
MetaDataException,
|
||||
VerificationException) # NOQA: E402
|
||||
from fdroidserver.exception import (
|
||||
FDroidException,
|
||||
MetaDataException,
|
||||
VerificationException, # NOQA: E402
|
||||
)
|
||||
|
||||
FDroidException # NOQA: B101
|
||||
MetaDataException # NOQA: B101
|
||||
VerificationException # NOQA: B101
|
||||
|
||||
from fdroidserver.common import (verify_apk_signature,
|
||||
genkeystore as generate_keystore) # NOQA: E402
|
||||
from fdroidserver.common import genkeystore as generate_keystore # NOQA: E402
|
||||
from fdroidserver.common import verify_apk_signature
|
||||
|
||||
verify_apk_signature # NOQA: B101
|
||||
generate_keystore # NOQA: B101
|
||||
from fdroidserver.index import (download_repo_index,
|
||||
download_repo_index_v1,
|
||||
download_repo_index_v2,
|
||||
get_mirror_service_urls,
|
||||
make as make_index) # NOQA: E402
|
||||
from fdroidserver.index import (
|
||||
download_repo_index,
|
||||
download_repo_index_v1,
|
||||
download_repo_index_v2,
|
||||
get_mirror_service_urls,
|
||||
)
|
||||
from fdroidserver.index import make as make_index # NOQA: E402
|
||||
|
||||
download_repo_index # NOQA: B101
|
||||
download_repo_index_v1 # NOQA: B101
|
||||
download_repo_index_v2 # NOQA: B101
|
||||
get_mirror_service_urls # NOQA: B101
|
||||
make_index # NOQA: B101
|
||||
from fdroidserver.update import (process_apk,
|
||||
process_apks,
|
||||
scan_apk,
|
||||
scan_repo_files) # NOQA: E402
|
||||
from fdroidserver.update import (
|
||||
process_apk,
|
||||
process_apks,
|
||||
scan_apk,
|
||||
scan_repo_files, # NOQA: E402
|
||||
)
|
||||
|
||||
process_apk # NOQA: B101
|
||||
process_apks # NOQA: B101
|
||||
scan_apk # NOQA: B101
|
||||
scan_repo_files # NOQA: B101
|
||||
from fdroidserver.deploy import (update_awsbucket,
|
||||
update_servergitmirrors,
|
||||
update_serverwebroots,
|
||||
update_serverwebroot) # NOQA: E402
|
||||
from fdroidserver.deploy import (
|
||||
update_awsbucket,
|
||||
update_servergitmirrors,
|
||||
update_serverwebroot, # NOQA: E402
|
||||
update_serverwebroots,
|
||||
)
|
||||
|
||||
update_awsbucket # NOQA: B101
|
||||
update_servergitmirrors # NOQA: B101
|
||||
update_serverwebroots # NOQA: B101
|
||||
|
|
|
@ -18,20 +18,20 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import re
|
||||
import sys
|
||||
import importlib.metadata
|
||||
import logging
|
||||
import os
|
||||
import pkgutil
|
||||
import logging
|
||||
import importlib.metadata
|
||||
|
||||
import git
|
||||
import fdroidserver.common
|
||||
import fdroidserver.metadata
|
||||
from fdroidserver import _
|
||||
import re
|
||||
import sys
|
||||
from argparse import ArgumentError
|
||||
from collections import OrderedDict
|
||||
|
||||
import git
|
||||
|
||||
import fdroidserver.common
|
||||
import fdroidserver.metadata
|
||||
from fdroidserver import _
|
||||
|
||||
COMMANDS = OrderedDict([
|
||||
("build", _("Build a package from source")),
|
||||
|
|
|
@ -68,9 +68,18 @@ import struct
|
|||
import sys
|
||||
import zipfile
|
||||
import zlib
|
||||
|
||||
from collections import namedtuple
|
||||
from typing import Any, BinaryIO, Callable, Dict, Iterable, Iterator, Optional, Tuple, Union
|
||||
from typing import (
|
||||
Any,
|
||||
BinaryIO,
|
||||
Callable,
|
||||
Dict,
|
||||
Iterable,
|
||||
Iterator,
|
||||
Optional,
|
||||
Tuple,
|
||||
Union,
|
||||
)
|
||||
|
||||
__version__ = "1.1.1"
|
||||
NAME = "apksigcopier"
|
||||
|
|
|
@ -28,22 +28,21 @@
|
|||
# the F-Droid client.
|
||||
|
||||
import collections
|
||||
import defusedxml.minidom
|
||||
import git
|
||||
import glob
|
||||
import os
|
||||
import json
|
||||
import logging
|
||||
import requests
|
||||
import os
|
||||
import shutil
|
||||
import tempfile
|
||||
import zipfile
|
||||
from argparse import ArgumentParser
|
||||
from typing import Optional
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import deploy
|
||||
import defusedxml.minidom
|
||||
import git
|
||||
import requests
|
||||
|
||||
from . import _, common, deploy
|
||||
from .exception import FDroidException
|
||||
|
||||
|
||||
|
|
|
@ -18,31 +18,27 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
import shutil
|
||||
import argparse
|
||||
import glob
|
||||
import subprocess
|
||||
import logging
|
||||
import os
|
||||
import posixpath
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
import tarfile
|
||||
import threading
|
||||
import traceback
|
||||
import time
|
||||
import requests
|
||||
import tempfile
|
||||
import argparse
|
||||
import logging
|
||||
import threading
|
||||
import time
|
||||
import traceback
|
||||
from gettext import ngettext
|
||||
from pathlib import Path
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import net
|
||||
from . import metadata
|
||||
from . import scanner
|
||||
from . import vmtools
|
||||
import requests
|
||||
|
||||
from . import _, common, metadata, net, scanner, vmtools
|
||||
from .common import FDroidPopen
|
||||
from .exception import FDroidException, BuildException, VCSException
|
||||
from .exception import BuildException, FDroidException, VCSException
|
||||
|
||||
try:
|
||||
import paramiko
|
||||
|
@ -155,9 +151,7 @@ def build_server(app, build, vcs, build_dir, output_dir, log_dir, force):
|
|||
ftp.mkdir('fdroidserver')
|
||||
ftp.chdir('fdroidserver')
|
||||
ftp.put(os.path.join(serverpath, '..', 'fdroid'), 'fdroid')
|
||||
ftp.put(os.path.join(serverpath, '..', 'gradlew-fdroid'), 'gradlew-fdroid')
|
||||
ftp.chmod('fdroid', 0o755) # nosec B103 permissions are appropriate
|
||||
ftp.chmod('gradlew-fdroid', 0o755) # nosec B103 permissions are appropriate
|
||||
send_dir(os.path.join(serverpath))
|
||||
ftp.chdir(homedir)
|
||||
|
||||
|
|
|
@ -19,28 +19,30 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import configparser
|
||||
import git
|
||||
import copy
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import urllib.request
|
||||
import urllib.error
|
||||
import time
|
||||
import subprocess
|
||||
import sys
|
||||
from argparse import ArgumentParser
|
||||
import time
|
||||
import traceback
|
||||
import logging
|
||||
import copy
|
||||
import urllib.error
|
||||
import urllib.parse
|
||||
import urllib.request
|
||||
from argparse import ArgumentParser
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from . import net
|
||||
from .exception import VCSException, NoSubmodulesException, FDroidException, MetaDataException
|
||||
import git
|
||||
|
||||
from . import _, common, metadata, net
|
||||
from .exception import (
|
||||
FDroidException,
|
||||
MetaDataException,
|
||||
NoSubmodulesException,
|
||||
VCSException,
|
||||
)
|
||||
|
||||
# https://gitlab.com/fdroid/checkupdates-runner/-/blob/1861899262a62a4ed08fa24e5449c0368dfb7617/.gitlab-ci.yml#L36
|
||||
BOT_EMAIL = 'fdroidci@bubu1.eu'
|
||||
|
|
|
@ -52,53 +52,58 @@ environment variable to include.
|
|||
|
||||
"""
|
||||
|
||||
import ast
|
||||
import base64
|
||||
import copy
|
||||
import difflib
|
||||
from typing import List
|
||||
import git
|
||||
import filecmp
|
||||
import glob
|
||||
import gzip
|
||||
import hashlib
|
||||
import io
|
||||
import itertools
|
||||
import json
|
||||
import logging
|
||||
import operator
|
||||
import os
|
||||
import sys
|
||||
import re
|
||||
import ast
|
||||
import gzip
|
||||
import shutil
|
||||
import socket
|
||||
import stat
|
||||
import subprocess
|
||||
import time
|
||||
import operator
|
||||
import logging
|
||||
import hashlib
|
||||
import socket
|
||||
import base64
|
||||
import zipfile
|
||||
import sys
|
||||
import tempfile
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
import defusedxml.ElementTree as XMLElementTree
|
||||
|
||||
import time
|
||||
import zipfile
|
||||
from argparse import BooleanOptionalAction
|
||||
from asn1crypto import cms
|
||||
from base64 import urlsafe_b64encode
|
||||
from binascii import hexlify
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from pathlib import Path
|
||||
from queue import Queue
|
||||
from typing import List
|
||||
from urllib.parse import urlparse, urlsplit, urlunparse
|
||||
from zipfile import ZipFile
|
||||
|
||||
import defusedxml.ElementTree as XMLElementTree
|
||||
import git
|
||||
from asn1crypto import cms
|
||||
|
||||
import fdroidserver.metadata
|
||||
from fdroidserver import _
|
||||
from fdroidserver._yaml import yaml, config_dump
|
||||
from fdroidserver.exception import FDroidException, VCSException, NoSubmodulesException, \
|
||||
BuildException, VerificationException, MetaDataException
|
||||
from .asynchronousfilereader import AsynchronousFileReader
|
||||
from .looseversion import LooseVersion
|
||||
from fdroidserver._yaml import config_dump, yaml
|
||||
from fdroidserver.exception import (
|
||||
BuildException,
|
||||
FDroidException,
|
||||
MetaDataException,
|
||||
NoSubmodulesException,
|
||||
VCSException,
|
||||
VerificationException,
|
||||
)
|
||||
|
||||
from . import apksigcopier, common
|
||||
|
||||
from .asynchronousfilereader import AsynchronousFileReader
|
||||
from .looseversion import LooseVersion
|
||||
|
||||
# The path to this fdroidserver distribution
|
||||
FDROID_PATH = os.path.realpath(os.path.join(os.path.dirname(__file__), '..'))
|
||||
|
@ -183,7 +188,7 @@ default_config = {
|
|||
'scan_binary': False,
|
||||
'ant': "ant",
|
||||
'mvn3': "mvn",
|
||||
'gradle': os.path.join(FDROID_PATH, 'gradlew-fdroid'),
|
||||
'gradle': shutil.which('gradlew-fdroid'),
|
||||
'sync_from_local_copy_dir': False,
|
||||
'allow_disabled_algorithms': False,
|
||||
'keep_when_not_allowed': False,
|
||||
|
@ -812,7 +817,10 @@ def load_localized_config(name, repodir):
|
|||
icons_dir = os.path.join(repodir, 'icons')
|
||||
if not os.path.exists(icons_dir):
|
||||
os.makedirs(icons_dir, exist_ok=True)
|
||||
shutil.copy(os.path.join("config", value), icons_dir)
|
||||
src = os.path.join("config", value)
|
||||
dest = os.path.join(icons_dir, os.path.basename(src))
|
||||
if not os.path.exists(dest) or not filecmp.cmp(src, dest):
|
||||
shutil.copy2(src, dest)
|
||||
ret[afname][key][locale] = file_entry(
|
||||
os.path.join(icons_dir, value)
|
||||
)
|
||||
|
@ -2729,17 +2737,17 @@ def getpaths_map(build_dir, globpaths):
|
|||
paths[p] = [r[len(str(build_dir)) + 1:] for r in glob.glob(full_path)]
|
||||
if not paths[p]:
|
||||
not_found_paths.append(p)
|
||||
return paths, not_found_paths
|
||||
|
||||
|
||||
def getpaths(build_dir, globpaths):
|
||||
"""Extend via globbing the paths from a field and return them as a set."""
|
||||
paths_map, not_found_paths = getpaths_map(build_dir, globpaths)
|
||||
if not_found_paths:
|
||||
raise FDroidException(
|
||||
"Some glob paths did not match any files/dirs:\n"
|
||||
+ "\n".join(not_found_paths)
|
||||
)
|
||||
return paths
|
||||
|
||||
|
||||
def getpaths(build_dir, globpaths):
|
||||
"""Extend via globbing the paths from a field and return them as a set."""
|
||||
paths_map = getpaths_map(build_dir, globpaths)
|
||||
paths = set()
|
||||
for k, v in paths_map.items():
|
||||
for p in v:
|
||||
|
@ -2900,9 +2908,9 @@ def is_debuggable_or_testOnly(apkfile):
|
|||
return False
|
||||
try:
|
||||
# these were moved in androguard 4.0
|
||||
from androguard.core.axml import AXMLParser, format_value, START_TAG
|
||||
from androguard.core.axml import START_TAG, AXMLParser, format_value
|
||||
except ImportError:
|
||||
from androguard.core.bytecodes.axml import AXMLParser, format_value, START_TAG
|
||||
from androguard.core.bytecodes.axml import START_TAG, AXMLParser, format_value
|
||||
_androguard_logging_level()
|
||||
|
||||
with ZipFile(apkfile) as apk:
|
||||
|
@ -2974,9 +2982,23 @@ def get_apk_id_androguard(apkfile):
|
|||
|
||||
try:
|
||||
# these were moved in androguard 4.0
|
||||
from androguard.core.axml import AXMLParser, format_value, START_TAG, END_TAG, TEXT, END_DOCUMENT
|
||||
from androguard.core.axml import (
|
||||
END_DOCUMENT,
|
||||
END_TAG,
|
||||
START_TAG,
|
||||
TEXT,
|
||||
AXMLParser,
|
||||
format_value,
|
||||
)
|
||||
except ImportError:
|
||||
from androguard.core.bytecodes.axml import AXMLParser, format_value, START_TAG, END_TAG, TEXT, END_DOCUMENT
|
||||
from androguard.core.bytecodes.axml import (
|
||||
END_DOCUMENT,
|
||||
END_TAG,
|
||||
START_TAG,
|
||||
TEXT,
|
||||
AXMLParser,
|
||||
format_value,
|
||||
)
|
||||
_androguard_logging_level()
|
||||
|
||||
appid = None
|
||||
|
|
|
@ -16,28 +16,28 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import sys
|
||||
import glob
|
||||
import hashlib
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import pathlib
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
import urllib
|
||||
from typing import Dict, List
|
||||
from git import Repo
|
||||
import yaml
|
||||
from argparse import ArgumentParser
|
||||
import logging
|
||||
import pathlib
|
||||
import shutil
|
||||
from typing import Dict, List
|
||||
|
||||
import git
|
||||
import yaml
|
||||
from git import Repo
|
||||
|
||||
import fdroidserver.github
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import index
|
||||
from . import _, common, index
|
||||
from .exception import FDroidException
|
||||
|
||||
config = None
|
||||
|
@ -349,8 +349,8 @@ def update_awsbucket_libcloud(repo_section, is_index_only=False):
|
|||
import libcloud.security
|
||||
|
||||
libcloud.security.VERIFY_SSL_CERT = True
|
||||
from libcloud.storage.types import Provider, ContainerDoesNotExistError
|
||||
from libcloud.storage.providers import get_driver
|
||||
from libcloud.storage.types import ContainerDoesNotExistError, Provider
|
||||
|
||||
if not config.get('awsaccesskeyid') or not config.get('awssecretkey'):
|
||||
raise FDroidException(
|
||||
|
@ -854,9 +854,10 @@ def upload_to_android_observatory(repo_section):
|
|||
def upload_apk_to_android_observatory(path):
|
||||
# depend on requests and lxml only if users enable AO
|
||||
import requests
|
||||
from . import net
|
||||
from lxml.html import fromstring
|
||||
|
||||
from . import net
|
||||
|
||||
apkfilename = os.path.basename(path)
|
||||
r = requests.post(
|
||||
'https://androidobservatory.org/',
|
||||
|
|
|
@ -35,6 +35,10 @@ class VCSException(FDroidException):
|
|||
pass
|
||||
|
||||
|
||||
class NoVersionCodeException(FDroidException):
|
||||
pass
|
||||
|
||||
|
||||
class NoSubmodulesException(VCSException):
|
||||
pass
|
||||
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
|
||||
import json
|
||||
import pathlib
|
||||
import urllib.request
|
||||
import urllib.parse
|
||||
import urllib.request
|
||||
|
||||
|
||||
class GithubApi:
|
||||
|
|
|
@ -16,14 +16,13 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
import glob
|
||||
from argparse import ArgumentParser
|
||||
import logging
|
||||
import os
|
||||
import time
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import _, common
|
||||
from .common import FDroidPopen
|
||||
from .exception import FDroidException
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ these installed on the signing server.
|
|||
|
||||
"""
|
||||
|
||||
import calendar
|
||||
import collections
|
||||
import hashlib
|
||||
import json
|
||||
|
@ -41,20 +42,27 @@ import sys
|
|||
import tempfile
|
||||
import urllib.parse
|
||||
import zipfile
|
||||
import calendar
|
||||
from binascii import hexlify, unhexlify
|
||||
from datetime import datetime, timezone
|
||||
from pathlib import Path
|
||||
from xml.dom.minidom import Document
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from . import signindex
|
||||
from fdroidserver.common import ANTIFEATURES_CONFIG_NAME, CATEGORIES_CONFIG_NAME, CONFIG_CONFIG_NAME, MIRRORS_CONFIG_NAME, RELEASECHANNELS_CONFIG_NAME, DEFAULT_LOCALE, FDroidPopen, FDroidPopenBytes, load_publish_signer_fingerprints
|
||||
from fdroidserver._yaml import yaml
|
||||
from fdroidserver.common import (
|
||||
ANTIFEATURES_CONFIG_NAME,
|
||||
CATEGORIES_CONFIG_NAME,
|
||||
CONFIG_CONFIG_NAME,
|
||||
DEFAULT_LOCALE,
|
||||
MIRRORS_CONFIG_NAME,
|
||||
RELEASECHANNELS_CONFIG_NAME,
|
||||
FDroidPopen,
|
||||
FDroidPopenBytes,
|
||||
load_publish_signer_fingerprints,
|
||||
)
|
||||
from fdroidserver.exception import FDroidException, VerificationException
|
||||
|
||||
from . import _, common, metadata, signindex
|
||||
|
||||
|
||||
def make(apps, apks, repodir, archive):
|
||||
"""Generate the repo index files.
|
||||
|
@ -587,7 +595,10 @@ def convert_version(version, app, repodir):
|
|||
ver["file"]["ipfsCIDv1"] = ipfsCIDv1
|
||||
|
||||
if "srcname" in version:
|
||||
ver["src"] = common.file_entry(os.path.join(repodir, version["srcname"]))
|
||||
ver["src"] = common.file_entry(
|
||||
os.path.join(repodir, version["srcname"]),
|
||||
version["srcnameSha256"],
|
||||
)
|
||||
|
||||
if "obbMainFile" in version:
|
||||
ver["obbMainFile"] = common.file_entry(
|
||||
|
@ -956,7 +967,7 @@ def make_v1(apps, packages, repodir, repodict, requestsdict, signer_fingerprints
|
|||
for k, v in sorted(package.items()):
|
||||
if not v:
|
||||
continue
|
||||
if k in ('icon', 'icons', 'icons_src', 'ipfsCIDv1', 'name'):
|
||||
if k in ('icon', 'icons', 'icons_src', 'ipfsCIDv1', 'name', 'srcnameSha256'):
|
||||
continue
|
||||
if k == 'antiFeatures':
|
||||
d[k] = sorted(v.keys())
|
||||
|
|
|
@ -19,16 +19,15 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import glob
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import socket
|
||||
import sys
|
||||
from argparse import ArgumentParser
|
||||
import logging
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import _, common
|
||||
from .exception import FDroidException
|
||||
|
||||
config = {}
|
||||
|
|
|
@ -17,24 +17,21 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import sys
|
||||
import os
|
||||
import glob
|
||||
import locale
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
import termios
|
||||
import tty
|
||||
|
||||
import defusedxml.ElementTree as XMLElementTree
|
||||
|
||||
from argparse import ArgumentParser, BooleanOptionalAction
|
||||
from pathlib import Path
|
||||
from urllib.parse import urlencode, urlparse, urlunparse
|
||||
|
||||
from . import _
|
||||
from . import common, github, index, net
|
||||
from .exception import FDroidException
|
||||
import defusedxml.ElementTree as XMLElementTree
|
||||
|
||||
from . import _, common, github, index, net
|
||||
from .exception import FDroidException
|
||||
|
||||
DEFAULT_IPFS_GATEWAYS = ("https://gateway.ipfs.io/ipfs/",)
|
||||
MAVEN_CENTRAL_MIRRORS = [
|
||||
|
|
|
@ -24,9 +24,10 @@ import urllib.parse
|
|||
from argparse import ArgumentParser
|
||||
from pathlib import Path
|
||||
|
||||
from . import _, common, metadata, rewritemeta
|
||||
from fdroidserver._yaml import yaml
|
||||
|
||||
from . import _, common, metadata, rewritemeta
|
||||
|
||||
config = None
|
||||
|
||||
|
||||
|
|
|
@ -18,19 +18,19 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from pathlib import Path
|
||||
import math
|
||||
import platform
|
||||
import os
|
||||
import re
|
||||
import logging
|
||||
import ruamel.yaml
|
||||
import math
|
||||
import os
|
||||
import platform
|
||||
import re
|
||||
from collections import OrderedDict
|
||||
from pathlib import Path
|
||||
|
||||
from . import common
|
||||
from . import _
|
||||
from .exception import MetaDataException
|
||||
import ruamel.yaml
|
||||
|
||||
from . import _, common
|
||||
from ._yaml import yaml
|
||||
from .exception import MetaDataException
|
||||
|
||||
srclibs = None
|
||||
warnings_action = None
|
||||
|
|
|
@ -7,13 +7,10 @@ import posixpath
|
|||
import socket
|
||||
import subprocess
|
||||
import sys
|
||||
from argparse import ArgumentParser
|
||||
import urllib.parse
|
||||
from argparse import ArgumentParser
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import index
|
||||
from . import update
|
||||
from . import _, common, index, update
|
||||
|
||||
|
||||
def _run_wget(path, urls, verbose=False):
|
||||
|
@ -133,6 +130,7 @@ def main():
|
|||
import io
|
||||
import json
|
||||
import zipfile
|
||||
|
||||
from . import net
|
||||
|
||||
url = _append_to_url_path(section, 'index-v1.jar')
|
||||
|
|
|
@ -21,10 +21,11 @@ import copy
|
|||
import logging
|
||||
import os
|
||||
import random
|
||||
import requests
|
||||
import tempfile
|
||||
import time
|
||||
import urllib
|
||||
|
||||
import requests
|
||||
import urllib3
|
||||
from requests.adapters import HTTPAdapter, Retry
|
||||
|
||||
|
|
|
@ -19,25 +19,25 @@
|
|||
|
||||
import base64
|
||||
import datetime
|
||||
import git
|
||||
import hashlib
|
||||
import inspect
|
||||
import logging
|
||||
import os
|
||||
import paramiko
|
||||
import platform
|
||||
import shutil
|
||||
import ssl
|
||||
import subprocess
|
||||
import sys
|
||||
import tempfile
|
||||
import yaml
|
||||
from urllib.parse import urlparse
|
||||
from argparse import ArgumentParser
|
||||
from typing import Optional
|
||||
from urllib.parse import urlparse
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
import git
|
||||
import paramiko
|
||||
import yaml
|
||||
|
||||
from . import _, common
|
||||
from .exception import VCSException
|
||||
|
||||
# hard coded defaults for Android ~/.android/debug.keystore files
|
||||
|
|
|
@ -28,23 +28,21 @@ mostly reports success by moving an APK from unsigned/ to repo/
|
|||
|
||||
"""
|
||||
|
||||
import sys
|
||||
import glob
|
||||
import hashlib
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import glob
|
||||
import hashlib
|
||||
from argparse import ArgumentParser
|
||||
from collections import OrderedDict
|
||||
import logging
|
||||
from gettext import ngettext
|
||||
import json
|
||||
import sys
|
||||
import time
|
||||
import zipfile
|
||||
from argparse import ArgumentParser
|
||||
from collections import OrderedDict
|
||||
from gettext import ngettext
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from . import _, common, metadata
|
||||
from .common import FDroidPopen
|
||||
from .exception import BuildException, FDroidException
|
||||
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from argparse import ArgumentParser
|
||||
from . import common
|
||||
from . import metadata
|
||||
|
||||
from . import common, metadata
|
||||
|
||||
|
||||
def main():
|
||||
|
|
|
@ -17,16 +17,14 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from argparse import ArgumentParser
|
||||
import logging
|
||||
import io
|
||||
import tempfile
|
||||
import logging
|
||||
import shutil
|
||||
import tempfile
|
||||
from argparse import ArgumentParser
|
||||
from pathlib import Path
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from . import _, common, metadata
|
||||
|
||||
config = None
|
||||
|
||||
|
|
|
@ -729,6 +729,7 @@ def scan_source(build_dir, build=metadata.Build(), json_per_build=None):
|
|||
'www.jitpack.io',
|
||||
'repo.maven.apache.org/maven2',
|
||||
'oss.jfrog.org/artifactory/oss-snapshot-local',
|
||||
'central.sonatype.com/repository/maven-snapshots/',
|
||||
'oss.sonatype.org/content/repositories/snapshots',
|
||||
'oss.sonatype.org/content/repositories/releases',
|
||||
'oss.sonatype.org/content/groups/public',
|
||||
|
@ -750,8 +751,12 @@ def scan_source(build_dir, build=metadata.Build(), json_per_build=None):
|
|||
]
|
||||
]
|
||||
|
||||
scanignore = common.getpaths_map(build_dir, build.scanignore)
|
||||
scandelete = common.getpaths_map(build_dir, build.scandelete)
|
||||
scanignore, scanignore_not_found_paths = common.getpaths_map(
|
||||
build_dir, build.scanignore
|
||||
)
|
||||
scandelete, scandelete_not_found_paths = common.getpaths_map(
|
||||
build_dir, build.scandelete
|
||||
)
|
||||
|
||||
scanignore_worked = set()
|
||||
scandelete_worked = set()
|
||||
|
@ -1109,11 +1114,19 @@ def scan_source(build_dir, build=metadata.Build(), json_per_build=None):
|
|||
json_per_build,
|
||||
)
|
||||
|
||||
for p in scanignore_not_found_paths:
|
||||
logging.error(_("Non-exist scanignore path: %s") % p)
|
||||
count += 1
|
||||
|
||||
for p in scanignore:
|
||||
if p not in scanignore_worked:
|
||||
logging.error(_('Unused scanignore path: %s') % p)
|
||||
count += 1
|
||||
|
||||
for p in scandelete_not_found_paths:
|
||||
logging.error(_("Non-exist scandelete path: %s") % p)
|
||||
count += 1
|
||||
|
||||
for p in scandelete:
|
||||
if p not in scandelete_worked:
|
||||
logging.error(_('Unused scandelete path: %s') % p)
|
||||
|
|
|
@ -15,15 +15,13 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
from argparse import ArgumentParser
|
||||
|
||||
import re
|
||||
import os
|
||||
import sys
|
||||
import logging
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import _, common
|
||||
from .exception import FDroidException
|
||||
|
||||
|
||||
|
|
|
@ -17,15 +17,13 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import time
|
||||
import zipfile
|
||||
from argparse import ArgumentParser
|
||||
import logging
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from . import _, common, metadata
|
||||
from .exception import FDroidException
|
||||
|
||||
config = None
|
||||
|
|
|
@ -28,8 +28,8 @@ Example
|
|||
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
import threading
|
||||
import time
|
||||
|
||||
|
||||
class Tail(object):
|
||||
|
|
|
@ -20,25 +20,27 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import argparse
|
||||
import sys
|
||||
import os
|
||||
import shutil
|
||||
import copy
|
||||
import filecmp
|
||||
import glob
|
||||
import logging
|
||||
import re
|
||||
import socket
|
||||
import warnings
|
||||
import zipfile
|
||||
import hashlib
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import socket
|
||||
import sys
|
||||
import time
|
||||
import yaml
|
||||
import copy
|
||||
import warnings
|
||||
import zipfile
|
||||
from argparse import ArgumentParser
|
||||
from datetime import datetime, timezone
|
||||
from pathlib import Path
|
||||
|
||||
import asn1crypto.cms
|
||||
import defusedxml.ElementTree as ElementTree
|
||||
from datetime import datetime, timezone
|
||||
from argparse import ArgumentParser
|
||||
from pathlib import Path
|
||||
import yaml
|
||||
|
||||
try:
|
||||
from yaml import CSafeLoader as SafeLoader
|
||||
|
@ -48,14 +50,13 @@ except ImportError:
|
|||
import collections
|
||||
from binascii import hexlify
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import metadata
|
||||
from .common import DEFAULT_LOCALE
|
||||
from .exception import BuildException, FDroidException, VerificationException
|
||||
from PIL import Image, PngImagePlugin
|
||||
|
||||
import fdroidserver.index
|
||||
|
||||
from PIL import Image, PngImagePlugin
|
||||
from . import _, common, metadata
|
||||
from .common import DEFAULT_LOCALE
|
||||
from .exception import BuildException, FDroidException, NoVersionCodeException, VerificationException
|
||||
|
||||
if hasattr(Image, 'DecompressionBombWarning'):
|
||||
warnings.simplefilter('error', Image.DecompressionBombWarning)
|
||||
|
@ -369,6 +370,12 @@ def get_cache():
|
|||
v['antiFeatures'] = {k: {} for k in sorted(v['antiFeatures'])}
|
||||
if 'added' in v:
|
||||
v['added'] = datetime.fromtimestamp(v['added'], tz=timezone.utc)
|
||||
if v.get('srcname') and not v.get('srcnameSha256'):
|
||||
f = f'archive/{v["srcname"]}'
|
||||
if not os.path.exists(f):
|
||||
f = f'repo/{v["srcname"]}'
|
||||
if os.path.exists(f):
|
||||
v['srcnameSha256'] = common.sha256sum(f)
|
||||
|
||||
return apkcache
|
||||
|
||||
|
@ -1147,6 +1154,7 @@ def insert_localized_app_metadata(apps):
|
|||
|
||||
metadata/<locale>/
|
||||
fastlane/metadata/android/<locale>/
|
||||
<subdir>/fastlane/metadata/android/<locale>/
|
||||
src/<buildFlavor>/fastlane/metadata/android/<locale>/
|
||||
|
||||
...as well as the /metadata/<packageName>/<locale> directory.
|
||||
|
@ -1166,7 +1174,7 @@ def insert_localized_app_metadata(apps):
|
|||
https://f-droid.org/en/docs/All_About_Descriptions_Graphics_and_Screenshots/#in-the-apps-build-metadata-in-an-fdroiddata-collection
|
||||
"""
|
||||
sourcedirs = glob.glob(os.path.join('build', '[A-Za-z]*', 'src', '[A-Za-z]*', 'fastlane', 'metadata', 'android', '[a-z][a-z]*'))
|
||||
sourcedirs += glob.glob(os.path.join('build', '[A-Za-z]*', 'fastlane', 'metadata', 'android', '[a-z][a-z]*'))
|
||||
sourcedirs += glob.glob(os.path.join('build', '[A-Za-z]*', '**', 'fastlane', 'metadata', 'android', '[a-z][a-z]*'), recursive=True)
|
||||
sourcedirs += glob.glob(os.path.join('build', '[A-Za-z]*', 'metadata', '[a-z][a-z]*'))
|
||||
sourcedirs += glob.glob(os.path.join('metadata', '[A-Za-z]*', '[a-z][a-z]*'))
|
||||
|
||||
|
@ -1182,20 +1190,40 @@ def insert_localized_app_metadata(apps):
|
|||
locale = segments[-1]
|
||||
destdir = os.path.join('repo', packageName, locale)
|
||||
|
||||
builds = apps.get(packageName, {}).get('Builds', [])
|
||||
found_in_subdir = (
|
||||
builds
|
||||
and len(segments) > 6
|
||||
and segments[-4] == "fastlane"
|
||||
and segments[-3] == "metadata"
|
||||
and segments[-2] == "android"
|
||||
and '/'.join(segments[2:-4]) == builds[-1].get('subdir')
|
||||
)
|
||||
|
||||
# flavors specified in build receipt
|
||||
build_flavors = []
|
||||
if (
|
||||
apps[packageName]
|
||||
and len(apps[packageName].get('Builds', [])) > 0
|
||||
and 'gradle' in apps[packageName]['Builds'][-1]
|
||||
and apps[packageName]['Builds'][-1]['gradle'] != ['yes']
|
||||
):
|
||||
if builds and 'gradle' in builds[-1] and builds[-1]['gradle'] != ['yes']:
|
||||
build_flavors = common.calculate_gradle_flavor_combination(
|
||||
apps[packageName]['Builds'][-1]['gradle']
|
||||
builds[-1]['gradle']
|
||||
)
|
||||
found_in_flavor = (
|
||||
len(segments) > 7
|
||||
and segments[2] == 'src'
|
||||
and segments[4] == "fastlane"
|
||||
and segments[3] in build_flavors
|
||||
)
|
||||
|
||||
if len(segments) >= 5 and segments[4] == "fastlane" and segments[3] not in build_flavors:
|
||||
logging.debug("ignoring due to wrong flavor")
|
||||
if (
|
||||
not found_in_subdir
|
||||
and not found_in_flavor
|
||||
and segments[0] == 'build'
|
||||
and segments[2] not in ('metadata', 'fastlane')
|
||||
):
|
||||
logging.debug(
|
||||
'Not scanning "{dir}" with unknown subdir or gradle flavor "{value}"'.format(
|
||||
dir=os.path.relpath(root), value=segments[3]
|
||||
)
|
||||
)
|
||||
continue
|
||||
|
||||
for f in files:
|
||||
|
@ -1233,9 +1261,7 @@ def insert_localized_app_metadata(apps):
|
|||
try:
|
||||
versionCode = int(base)
|
||||
locale = segments[-2]
|
||||
if versionCode in [
|
||||
a["versionCode"] for a in apps[packageName]["Builds"]
|
||||
]:
|
||||
if versionCode in [b["versionCode"] for b in builds]:
|
||||
_set_localized_text_entry(
|
||||
apps[packageName],
|
||||
locale,
|
||||
|
@ -1460,19 +1486,18 @@ def insert_localized_ios_app_metadata(apps_with_packages):
|
|||
fdroidserver.update.copy_ios_screenshots_to_repo(screenshots, package_name)
|
||||
|
||||
# lookup icons, copy them and put them into app
|
||||
icon_path = _get_ipa_icon(Path('build') / package_name)
|
||||
icon_src = _get_ipa_icon(Path('build') / package_name)
|
||||
icon_dest = Path('repo') / package_name / 'icon.png' # for now just assume png
|
||||
icon_stat = os.stat(icon_path)
|
||||
app['iconv2'] = {
|
||||
DEFAULT_LOCALE: {
|
||||
'name': str(icon_dest).lstrip('repo'),
|
||||
'sha256': common.sha256sum(icon_dest),
|
||||
'size': icon_stat.st_size,
|
||||
'size': os.path.getsize(icon_src),
|
||||
}
|
||||
}
|
||||
if not icon_dest.exists():
|
||||
if not icon_dest.exists() or not filecmp.cmp(icon_src, icon_dest):
|
||||
icon_dest.parent.mkdir(parents=True, exist_ok=True)
|
||||
shutil.copy(icon_path, icon_dest)
|
||||
shutil.copy2(icon_src, icon_dest)
|
||||
|
||||
|
||||
def scan_repo_files(apkcache, repodir, knownapks, use_date_from_file=False):
|
||||
|
@ -1551,8 +1576,10 @@ def scan_repo_files(apkcache, repodir, knownapks, use_date_from_file=False):
|
|||
repo_file['packageName'] = m.group(1)
|
||||
repo_file['versionCode'] = int(m.group(2))
|
||||
srcfilename = name + b'_src.tar.gz'
|
||||
if os.path.exists(os.path.join(repodir, srcfilename)):
|
||||
srcpath = os.path.join(repodir, srcfilename)
|
||||
if os.path.exists(srcpath):
|
||||
repo_file['srcname'] = srcfilename.decode()
|
||||
repo_file['srcnameSha256'] = common.sha256sum(srcpath.decode())
|
||||
repo_file['size'] = stat.st_size
|
||||
|
||||
apkcache[name_utf8] = repo_file
|
||||
|
@ -1774,6 +1801,7 @@ def scan_apk_androguard(apk, apkfile):
|
|||
|
||||
xml = apkobject.get_android_manifest_xml()
|
||||
androidmanifest_xml = apkobject.xml['AndroidManifest.xml']
|
||||
|
||||
if len(xml.nsmap) > 0:
|
||||
# one of them surely will be the Android one, or its corrupt
|
||||
xmlns = common.XMLNS_ANDROID
|
||||
|
@ -1783,8 +1811,12 @@ def scan_apk_androguard(apk, apkfile):
|
|||
xmlns = '{}'
|
||||
|
||||
vcstr = androidmanifest_xml.get(xmlns + 'versionCode')
|
||||
logging.debug("Version Code: %r (%s)" % (vcstr, apkfile))
|
||||
|
||||
if vcstr.startswith('0x'):
|
||||
if not vcstr:
|
||||
raise NoVersionCodeException(_("APK file {path} does not have a version code "
|
||||
"in its manifest").format(path=apkfile))
|
||||
elif vcstr.startswith('0x'):
|
||||
apk['versionCode'] = int(vcstr, 16)
|
||||
else:
|
||||
apk['versionCode'] = int(vcstr)
|
||||
|
@ -1932,6 +1964,10 @@ def process_apk(apkcache, apkfilename, repodir, knownapks, use_date_from_apk=Fal
|
|||
logging.warning(_("Skipping '{apkfilename}' with invalid signature!")
|
||||
.format(apkfilename=apkfilename))
|
||||
return True, None, False
|
||||
except NoVersionCodeException:
|
||||
logging.warning(_("Skipping '{apkfilename}' without versionCode!")
|
||||
.format(apkfilename=apkfilename))
|
||||
return True, None, False
|
||||
|
||||
if apps:
|
||||
if apk['packageName'] in apps:
|
||||
|
@ -1970,8 +2006,10 @@ def process_apk(apkcache, apkfilename, repodir, knownapks, use_date_from_apk=Fal
|
|||
|
||||
apk['apkName'] = apkfilename
|
||||
srcfilename = apkfilename[:-4] + "_src.tar.gz"
|
||||
if os.path.exists(os.path.join(repodir, srcfilename)):
|
||||
srcpath = os.path.join(repodir, srcfilename)
|
||||
if os.path.exists(srcpath):
|
||||
apk['srcname'] = srcfilename
|
||||
apk['srcnameSha256'] = common.sha256sum(srcpath)
|
||||
|
||||
# verify the jar signature is correct, allow deprecated
|
||||
# algorithms only if the APK is in the archive.
|
||||
|
|
|
@ -16,18 +16,17 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import sys
|
||||
import os
|
||||
import glob
|
||||
import json
|
||||
import logging
|
||||
import requests
|
||||
import os
|
||||
import sys
|
||||
from argparse import ArgumentParser
|
||||
from collections import OrderedDict
|
||||
|
||||
from . import _
|
||||
from . import common
|
||||
from . import net
|
||||
import requests
|
||||
|
||||
from . import _, common, net
|
||||
from .exception import FDroidException
|
||||
|
||||
config = None
|
||||
|
@ -58,8 +57,8 @@ def _add_diffoscope_info(d):
|
|||
]
|
||||
d['diffoscope']['External-Tools-Required'] = external_tools
|
||||
|
||||
from diffoscope.tools import OS_NAMES, get_current_os
|
||||
from diffoscope.external_tools import EXTERNAL_TOOLS
|
||||
from diffoscope.tools import OS_NAMES, get_current_os
|
||||
|
||||
current_os = get_current_os()
|
||||
os_list = [current_os] if (current_os in OS_NAMES) else iter(OS_NAMES)
|
||||
|
|
|
@ -16,16 +16,16 @@
|
|||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from os.path import isdir, isfile, basename, abspath, expanduser
|
||||
import os
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import shutil
|
||||
import subprocess
|
||||
import textwrap
|
||||
import logging
|
||||
from .common import FDroidException
|
||||
|
||||
import threading
|
||||
from os.path import abspath, basename, expanduser, isdir, isfile
|
||||
|
||||
from .common import FDroidException
|
||||
|
||||
lock = threading.Lock()
|
||||
|
||||
|
|
312
gradlew-fdroid
312
gradlew-fdroid
|
@ -1,312 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
bindir="$(dirname $0)"
|
||||
basedir="$(dirname $bindir)"
|
||||
# Check if GRADLE_VERSION_DIR/CACHEDIR is set from environment
|
||||
if [ -z "$GRADLE_VERSION_DIR" ]; then
|
||||
gradle_version_dir="${basedir}/versions"
|
||||
else
|
||||
gradle_version_dir="$GRADLE_VERSION_DIR"
|
||||
fi
|
||||
BUILDSERVER_CACHEDIR=/vagrant/cache
|
||||
if [ -n "$CACHEDIR" ]; then
|
||||
cachedir="$CACHEDIR"
|
||||
elif [ -d $BUILDSERVER_CACHEDIR ]; then
|
||||
cachedir=$BUILDSERVER_CACHEDIR
|
||||
fi
|
||||
args=("$@")
|
||||
|
||||
run_gradle() {
|
||||
if [ ! -d "${gradle_version_dir}/${v_found}" ]; then
|
||||
download_gradle ${v_found}
|
||||
fi
|
||||
# shellcheck disable=SC2145
|
||||
echo "Running ${gradle_version_dir}/${v_found}/bin/gradle ${args[@]}"
|
||||
"${gradle_version_dir}/${v_found}/bin/gradle" "${args[@]}"
|
||||
exit $?
|
||||
}
|
||||
|
||||
download_gradle() {
|
||||
URL="https://downloads.gradle.org/distributions/gradle-${1}-bin.zip"
|
||||
shasum=$(get_sha $1)
|
||||
if [ $? != 0 ]; then
|
||||
echo "No hash for gradle version $1! Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
if [ -n "${cachedir}" ] && [ -e "${cachedir}/gradle-$1-bin.zip" ]; then
|
||||
echo "Using cached ${cachedir}/gradle-$1-bin.zip ..."
|
||||
gradle_zip="${cachedir}/gradle-$1-bin.zip"
|
||||
else
|
||||
echo "Downloading missing gradle version $1"
|
||||
echo cachedir $cachedir
|
||||
if [[ -n "${cachedir}" && ! -d "${cachedir}" ]]; then
|
||||
mkdir -p "${cachedir}"
|
||||
fi
|
||||
if [[ -n "${cachedir}" && -d "${cachedir}" && -w "${cachedir}" ]]; then
|
||||
tmpdir="${cachedir}"
|
||||
else
|
||||
tmpdir=$(mktemp -d)
|
||||
fi
|
||||
curl -o "${tmpdir}/gradle-$1-bin.zip" --silent --fail --show-error --location --retry 3 --retry-all-errors "${URL}"
|
||||
gradle_zip="${tmpdir}/gradle-$1-bin.zip"
|
||||
fi
|
||||
echo "${shasum} ${gradle_zip}" | sha256sum -c -
|
||||
if [ $? != 0 ]; then
|
||||
echo "gradle download checksum mismatch! Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
mkdir -p "${gradle_version_dir}/"
|
||||
unzip -q -d "${gradle_version_dir}" "${gradle_zip}"
|
||||
mv "${gradle_version_dir}/gradle-$1" "${gradle_version_dir}/${v_found}"
|
||||
}
|
||||
|
||||
get_sha() {
|
||||
case $1 in
|
||||
'0.7') echo '4e354fcb0d5c0b0e7789cd6ee900456edaf993f6dd890c4a1c217d90d2a6a6ad' ;;
|
||||
'0.8') echo '940e623ea98e40ea9ad398770a6ebb91a61c0869d394dda81aa86b0f4f0025e7' ;;
|
||||
'0.9') echo '994e46d4b467254a0f25ce92b602618331b9b3ac8b32a094fd84ff0e0ceec135' ;;
|
||||
'0.9.1') echo '5d48cba95db031ec109ae9ab60561e960b6507046036e8191aa78572ec27e2a5' ;;
|
||||
'0.9.2') echo 'f94d7642348c558fc05ab5fd6fb947fb1ed8fed5931ddb73dd04fb0de22d669b' ;;
|
||||
'1.0') echo '894bca0360a7e2040815096788f118a2dd106ff6694221b274efb9c32bce0384' ;;
|
||||
'1.1') echo '552c1fc9f3a1b9668b79cc447370f0263e664ffb6d5c6e1c21e77ce0c8a20d4c' ;;
|
||||
'1.2') echo 'eb53da3704d24cabb7565f34a3bf16bcd863c4b0c139917606fb15d4f27c7bdf' ;;
|
||||
'1.3') echo 'ada68561efbb9f1cae0f9063974cbde15c180351a2f92bc2f1106e39ddcae5ba' ;;
|
||||
'1.4') echo 'cd99e85fbcd0ae8b99e81c9992a2f10cceb7b5f009c3720ef3a0078f4f92e94e' ;;
|
||||
'1.5') echo 'a5511a0659caa47d9d74fd2844c9da43157d2f78e63a0223c6289d88f5aaecbe' ;;
|
||||
'1.6') echo 'de3e89d2113923dcc2e0def62d69be0947ceac910abd38b75ec333230183fac4' ;;
|
||||
'1.7') echo '360c97d51621b5a1ecf66748c718594e5f790ae4fbc1499543e0c006033c9d30' ;;
|
||||
'1.8') echo 'a342bbfa15fd18e2482287da4959588f45a41b60910970a16e6d97959aea5703' ;;
|
||||
'1.9') echo '097ddc2bcbc9da2bb08cbf6bf8079585e35ad088bafd42e8716bc96405db98e9' ;;
|
||||
'1.10') echo '6e6db4fc595f27ceda059d23693b6f6848583950606112b37dfd0e97a0a0a4fe' ;;
|
||||
'1.11') echo '07e235df824964f0e19e73ea2327ce345c44bcd06d44a0123d29ab287fc34091' ;;
|
||||
'1.12') echo '8734b13a401f4311ee418173ed6ca8662d2b0a535be8ff2a43ecb1c13cd406ea' ;;
|
||||
'2.0') echo 'a1eb880c8755333c4d33c4351b269bebe517002532d3142c0b6164c9e8c081c3' ;;
|
||||
'2.1') echo '3eee4f9ea2ab0221b89f8e4747a96d4554d00ae46d8d633f11cfda60988bf878' ;;
|
||||
'2.2') echo '91e5655fe11ef414449f218c4fa2985b3a49b7903c57556da109c84fa26e1dfb' ;;
|
||||
'2.2.1') echo '420aa50738299327b611c10b8304b749e8d3a579407ee9e755b15921d95ff418' ;;
|
||||
'2.3') echo '010dd9f31849abc3d5644e282943b1c1c355f8e2635c5789833979ce590a3774' ;;
|
||||
'2.4') echo 'c4eaecc621a81f567ded1aede4a5ddb281cc02a03a6a87c4f5502add8fc2f16f' ;;
|
||||
'2.5') echo '3f953e0cb14bb3f9ebbe11946e84071547bf5dfd575d90cfe9cc4e788da38555' ;;
|
||||
'2.6') echo '18a98c560af231dfa0d3f8e0802c20103ae986f12428bb0a6f5396e8f14e9c83' ;;
|
||||
'2.7') echo 'cde43b90945b5304c43ee36e58aab4cc6fb3a3d5f9bd9449bb1709a68371cb06' ;;
|
||||
'2.8') echo 'a88db9c2f104defdaa8011c58cf6cda6c114298ae3695ecfb8beb30da3a903cb' ;;
|
||||
'2.9') echo 'c9159ec4362284c0a38d73237e224deae6139cbde0db4f0f44e1c7691dd3de2f' ;;
|
||||
'2.10') echo '66406247f745fc6f05ab382d3f8d3e120c339f34ef54b86f6dc5f6efc18fbb13' ;;
|
||||
'2.11') echo '8d7437082356c9fd6309a4479c8db307673965546daea445c6c72759cd6b1ed6' ;;
|
||||
'2.12') echo 'e77064981906cd0476ff1e0de3e6fef747bd18e140960f1915cca8ff6c33ab5c' ;;
|
||||
'2.13') echo '0f665ec6a5a67865faf7ba0d825afb19c26705ea0597cec80dd191b0f2cbb664' ;;
|
||||
'2.14') echo '993b4f33b652c689e9721917d8e021cab6bbd3eae81b39ab2fd46fdb19a928d5' ;;
|
||||
'2.14.1') echo 'cfc61eda71f2d12a572822644ce13d2919407595c2aec3e3566d2aab6f97ef39' ;;
|
||||
'3.0') echo '39c906941a474444afbddc38144ed44166825acb0a57b0551dddb04bbf157f80' ;;
|
||||
'3.1') echo 'c7de3442432253525902f7e8d7eac8b5fd6ce1623f96d76916af6d0e383010fc' ;;
|
||||
'3.2') echo '5321b36837226dc0377047a328f12010f42c7bf88ee4a3b1cee0c11040082935' ;;
|
||||
'3.2.1') echo '9843a3654d3e57dce54db06d05f18b664b95c22bf90c6becccb61fc63ce60689' ;;
|
||||
'3.3') echo 'c58650c278d8cf0696cab65108ae3c8d95eea9c1938e0eb8b997095d5ca9a292' ;;
|
||||
'3.4') echo '72d0cd4dcdd5e3be165eb7cd7bbd25cf8968baf400323d9ab1bba622c3f72205' ;;
|
||||
'3.4.1') echo 'db1db193d479cc1202be843f17e4526660cfb0b21b57d62f3a87f88c878af9b2' ;;
|
||||
'3.5') echo '0b7450798c190ff76b9f9a3d02e18b33d94553f708ebc08ebe09bdf99111d110' ;;
|
||||
'3.5.1') echo '8dce35f52d4c7b4a4946df73aa2830e76ba7148850753d8b5e94c5dc325ceef8' ;;
|
||||
'4.0') echo '56bd2dde29ba2a93903c557da1745cafd72cdd8b6b0b83c05a40ed7896b79dfe' ;;
|
||||
'4.0.1') echo 'd717e46200d1359893f891dab047fdab98784143ac76861b53c50dbd03b44fd4' ;;
|
||||
'4.0.2') echo '79ac421342bd11f6a4f404e0988baa9c1f5fabf07e3c6fa65b0c15c1c31dda22' ;;
|
||||
'4.1') echo 'd55dfa9cfb5a3da86a1c9e75bb0b9507f9a8c8c100793ccec7beb6e259f9ed43' ;;
|
||||
'4.2') echo '515dd63d32e55a9c05667809c5e40a947529de3054444ad274b3b75af5582eae' ;;
|
||||
'4.2.1') echo 'b551cc04f2ca51c78dd14edb060621f0e5439bdfafa6fd167032a09ac708fbc0' ;;
|
||||
'4.3') echo '8dcbf44eef92575b475dcb1ce12b5f19d38dc79e84c662670248dc8b8247654c' ;;
|
||||
'4.3.1') echo '15ebe098ce0392a2d06d252bff24143cc88c4e963346582c8d88814758d93ac7' ;;
|
||||
'4.4') echo 'fa4873ae2c7f5e8c02ec6948ba95848cedced6134772a0169718eadcb39e0a2f' ;;
|
||||
'4.4.1') echo 'e7cf7d1853dfc30c1c44f571d3919eeeedef002823b66b6a988d27e919686389' ;;
|
||||
'4.5') echo '03f2a43a314ff0fb843a85ef68078e06d181c4549c1e5fb983f289382b59b5e3' ;;
|
||||
'4.5.1') echo '3e2ea0d8b96605b7c528768f646e0975bd9822f06df1f04a64fd279b1a17805e' ;;
|
||||
'4.6') echo '98bd5fd2b30e070517e03c51cbb32beee3e2ee1a84003a5a5d748996d4b1b915' ;;
|
||||
'4.7') echo 'fca5087dc8b50c64655c000989635664a73b11b9bd3703c7d6cabd31b7dcdb04' ;;
|
||||
'4.8') echo 'f3e29692a8faa94eb0b02ebf36fa263a642b3ae8694ef806c45c345b8683f1ba' ;;
|
||||
'4.8.1') echo 'af334d994b5e69e439ab55b5d2b7d086da5ea6763d78054f49f147b06370ed71' ;;
|
||||
'4.9') echo 'e66e69dce8173dd2004b39ba93586a184628bc6c28461bc771d6835f7f9b0d28' ;;
|
||||
'4.10') echo '248cfd92104ce12c5431ddb8309cf713fe58de8e330c63176543320022f59f18' ;;
|
||||
'4.10.1') echo 'e53ce3a01cf016b5d294eef20977ad4e3c13e761ac1e475f1ffad4c6141a92bd' ;;
|
||||
'4.10.2') echo 'b49c6da1b2cb67a0caf6c7480630b51c70a11ca2016ff2f555eaeda863143a29' ;;
|
||||
'4.10.3') echo '8626cbf206b4e201ade7b87779090690447054bc93f052954c78480fa6ed186e' ;;
|
||||
'5.0') echo '6157ac9f3410bc63644625b3b3e9e96c963afd7910ae0697792db57813ee79a6' ;;
|
||||
'5.1') echo '7506638a380092a0406364c79d6c87d03d23017fc25a5770379d1ce23c3fcd4d' ;;
|
||||
'5.1.1') echo '4953323605c5d7b89e97d0dc7779e275bccedefcdac090aec123375eae0cc798' ;;
|
||||
'5.2') echo 'ff322863250159595e93b5a4d17a6f0d21c59a1a0497c1e1cf1d53826485503f' ;;
|
||||
'5.2.1') echo '748c33ff8d216736723be4037085b8dc342c6a0f309081acf682c9803e407357' ;;
|
||||
'5.3') echo 'bed2bdd3955be5a09ca7e0201e9d131f194f7f6c466e1795a733733ccfb09f25' ;;
|
||||
'5.3.1') echo '1c59a17a054e9c82f0dd881871c9646e943ec4c71dd52ebc6137d17f82337436' ;;
|
||||
'5.4') echo 'c8c17574245ecee9ed7fe4f6b593b696d1692d1adbfef425bef9b333e3a0e8de' ;;
|
||||
'5.4.1') echo '7bdbad1e4f54f13c8a78abc00c26d44dd8709d4aedb704d913fb1bb78ac025dc' ;;
|
||||
'5.5') echo '8d78b2ed63e7f07ad169c1186d119761c4773e681f332cfe1901045b1b0141bc' ;;
|
||||
'5.5.1') echo '222a03fcf2fcaf3691767ce9549f78ebd4a77e73f9e23a396899fb70b420cd00' ;;
|
||||
'5.6') echo '15c02ef5dd3631ec02ac52e8725703e0285d9a7eecbf4e5939aa9e924604d01d' ;;
|
||||
'5.6.1') echo '0986244820e4a35d32d91df2ec4b768b5ba5d6c8246753794f85159f9963ec12' ;;
|
||||
'5.6.2') echo '32fce6628848f799b0ad3205ae8db67d0d828c10ffe62b748a7c0d9f4a5d9ee0' ;;
|
||||
'5.6.3') echo '60a6d8f687e3e7a4bc901cc6bc3db190efae0f02f0cc697e323e0f9336f224a3' ;;
|
||||
'5.6.4') echo '1f3067073041bc44554d0efe5d402a33bc3d3c93cc39ab684f308586d732a80d' ;;
|
||||
'6.0') echo '5a3578b9f0bb162f5e08cf119f447dfb8fa950cedebb4d2a977e912a11a74b91' ;;
|
||||
'6.0.1') echo 'd364b7098b9f2e58579a3603dc0a12a1991353ac58ed339316e6762b21efba44' ;;
|
||||
'6.1') echo 'd0c43d14e1c70a48b82442f435d06186351a2d290d72afd5b8866f15e6d7038a' ;;
|
||||
'6.1.1') echo '9d94e6e4a28ad328072ef6e56bce79a810494ae756751fdcedffdeaf27c093b1' ;;
|
||||
'6.2') echo 'b93a5f30d01195ec201e240f029c8b42d59c24086b8d1864112c83558e23cf8a' ;;
|
||||
'6.2.1') echo 'a68ca7ba57f3404c3f6fc1f70a02d3a7d78652e6b46bbfaff83fc9a17168c279' ;;
|
||||
'6.2.2') echo '0f6ba231b986276d8221d7a870b4d98e0df76e6daf1f42e7c0baec5032fb7d17' ;;
|
||||
'6.3') echo '038794feef1f4745c6347107b6726279d1c824f3fc634b60f86ace1e9fbd1768' ;;
|
||||
'6.4') echo 'b888659f637887e759749f6226ddfcb1cb04f828c58c41279de73c463fdbacc9' ;;
|
||||
'6.4.1') echo 'e58cdff0cee6d9b422dcd08ebeb3177bc44eaa09bd9a2e838ff74c408fe1cbcd' ;;
|
||||
'6.5') echo '23e7d37e9bb4f8dabb8a3ea7fdee9dd0428b9b1a71d298aefd65b11dccea220f' ;;
|
||||
'6.5.1') echo '50a7d30529fa939721fe9268a0205142f3f2302bcac5fb45b27a3902e58db54a' ;;
|
||||
'6.6') echo 'e6f83508f0970452f56197f610d13c5f593baaf43c0e3c6a571e5967be754025' ;;
|
||||
'6.6.1') echo '7873ed5287f47ca03549ab8dcb6dc877ac7f0e3d7b1eb12685161d10080910ac' ;;
|
||||
'6.7') echo '8ad57759019a9233dc7dc4d1a530cefe109dc122000d57f7e623f8cf4ba9dfc4' ;;
|
||||
'6.7.1') echo '3239b5ed86c3838a37d983ac100573f64c1f3fd8e1eb6c89fa5f9529b5ec091d' ;;
|
||||
'6.8') echo 'e2774e6fb77c43657decde25542dea710aafd78c4022d19b196e7e78d79d8c6c' ;;
|
||||
'6.8.1') echo 'fd591a34af7385730970399f473afabdb8b28d57fd97d6625c388d090039d6fd' ;;
|
||||
'6.8.2') echo '8de6efc274ab52332a9c820366dd5cf5fc9d35ec7078fd70c8ec6913431ee610' ;;
|
||||
'6.8.3') echo '7faa7198769f872826c8ef4f1450f839ec27f0b4d5d1e51bade63667cbccd205' ;;
|
||||
'6.9') echo '765442b8069c6bee2ea70713861c027587591c6b1df2c857a23361512560894e' ;;
|
||||
'6.9.1') echo '8c12154228a502b784f451179846e518733cf856efc7d45b2e6691012977b2fe' ;;
|
||||
'6.9.2') echo '8b356fd8702d5ffa2e066ed0be45a023a779bba4dd1a68fd11bc2a6bdc981e8f' ;;
|
||||
'6.9.3') echo 'dcf350b8ae1aa192fc299aed6efc77b43825d4fedb224c94118ae7faf5fb035d' ;;
|
||||
'6.9.4') echo '3e240228538de9f18772a574e99a0ba959e83d6ef351014381acd9631781389a' ;;
|
||||
'7.0') echo 'eb8b89184261025b0430f5b2233701ff1377f96da1ef5e278af6ae8bac5cc305' ;;
|
||||
'7.0.1') echo 'dccda8aa069563c8ba2f6cdfd0777df0e34a5b4d15138ca8b9757e94f4e8a8cb' ;;
|
||||
'7.0.2') echo '0e46229820205440b48a5501122002842b82886e76af35f0f3a069243dca4b3c' ;;
|
||||
'7.1') echo '2debee19271e1b82c6e41137d78e44e6e841035230a1a169ca47fd3fb09ed87b' ;;
|
||||
'7.1.1') echo 'bf8b869948901d422e9bb7d1fa61da6a6e19411baa7ad6ee929073df85d6365d' ;;
|
||||
'7.2') echo 'f581709a9c35e9cb92e16f585d2c4bc99b2b1a5f85d2badbd3dc6bff59e1e6dd' ;;
|
||||
'7.3') echo 'de8f52ad49bdc759164f72439a3bf56ddb1589c4cde802d3cec7d6ad0e0ee410' ;;
|
||||
'7.3.1') echo '9afb3ca688fc12c761a0e9e4321e4d24e977a4a8916c8a768b1fe05ddb4d6b66' ;;
|
||||
'7.3.2') echo '23b89f8eac363f5f4b8336e0530c7295c55b728a9caa5268fdd4a532610d5392' ;;
|
||||
'7.3.3') echo 'b586e04868a22fd817c8971330fec37e298f3242eb85c374181b12d637f80302' ;;
|
||||
'7.4') echo '8cc27038d5dbd815759851ba53e70cf62e481b87494cc97cfd97982ada5ba634' ;;
|
||||
'7.4.1') echo 'e5444a57cda4a95f90b0c9446a9e1b47d3d7f69057765bfb54bd4f482542d548' ;;
|
||||
'7.4.2') echo '29e49b10984e585d8118b7d0bc452f944e386458df27371b49b4ac1dec4b7fda' ;;
|
||||
'7.5') echo 'cb87f222c5585bd46838ad4db78463a5c5f3d336e5e2b98dc7c0c586527351c2' ;;
|
||||
'7.5.1') echo 'f6b8596b10cce501591e92f229816aa4046424f3b24d771751b06779d58c8ec4' ;;
|
||||
'7.6') echo '7ba68c54029790ab444b39d7e293d3236b2632631fb5f2e012bb28b4ff669e4b' ;;
|
||||
'7.6.1') echo '6147605a23b4eff6c334927a86ff3508cb5d6722cd624c97ded4c2e8640f1f87' ;;
|
||||
'7.6.2') echo 'a01b6587e15fe7ed120a0ee299c25982a1eee045abd6a9dd5e216b2f628ef9ac' ;;
|
||||
'7.6.3') echo '740c2e472ee4326c33bf75a5c9f5cd1e69ecf3f9b580f6e236c86d1f3d98cfac' ;;
|
||||
'7.6.4') echo 'bed1da33cca0f557ab13691c77f38bb67388119e4794d113e051039b80af9bb1' ;;
|
||||
'7.6.5') echo 'b812fec0edb7d27e0ae35955887bb2954536fa3e44edaf481150da058e154d9a' ;;
|
||||
'8.0') echo '4159b938ec734a8388ce03f52aa8f3c7ed0d31f5438622545de4f83a89b79788' ;;
|
||||
'8.0.1') echo '1b6b558be93f29438d3df94b7dfee02e794b94d9aca4611a92cdb79b6b88e909' ;;
|
||||
'8.0.2') echo 'ff7bf6a86f09b9b2c40bb8f48b25fc19cf2b2664fd1d220cd7ab833ec758d0d7' ;;
|
||||
'8.1') echo 'a62c5f99585dd9e1f95dab7b9415a0e698fa9dd1e6c38537faa81ac078f4d23e' ;;
|
||||
'8.1.1') echo 'e111cb9948407e26351227dabce49822fb88c37ee72f1d1582a69c68af2e702f' ;;
|
||||
'8.2') echo '38f66cd6eef217b4c35855bb11ea4e9fbc53594ccccb5fb82dfd317ef8c2c5a3' ;;
|
||||
'8.2.1') echo '03ec176d388f2aa99defcadc3ac6adf8dd2bce5145a129659537c0874dea5ad1' ;;
|
||||
'8.3') echo '591855b517fc635b9e04de1d05d5e76ada3f89f5fc76f87978d1b245b4f69225' ;;
|
||||
'8.4') echo '3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae' ;;
|
||||
'8.5') echo '9d926787066a081739e8200858338b4a69e837c3a821a33aca9db09dd4a41026' ;;
|
||||
'8.6') echo '9631d53cf3e74bfa726893aee1f8994fee4e060c401335946dba2156f440f24c' ;;
|
||||
'8.7') echo '544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d' ;;
|
||||
'8.8') echo 'a4b4158601f8636cdeeab09bd76afb640030bb5b144aafe261a5e8af027dc612' ;;
|
||||
'8.9') echo 'd725d707bfabd4dfdc958c624003b3c80accc03f7037b5122c4b1d0ef15cecab' ;;
|
||||
'8.10') echo '5b9c5eb3f9fc2c94abaea57d90bd78747ca117ddbbf96c859d3741181a12bf2a' ;;
|
||||
'8.10.1') echo '1541fa36599e12857140465f3c91a97409b4512501c26f9631fb113e392c5bd1' ;;
|
||||
'8.10.2') echo '31c55713e40233a8303827ceb42ca48a47267a0ad4bab9177123121e71524c26' ;;
|
||||
'8.11') echo '57dafb5c2622c6cc08b993c85b7c06956a2f53536432a30ead46166dbca0f1e9' ;;
|
||||
'8.11.1') echo 'f397b287023acdba1e9f6fc5ea72d22dd63669d59ed4a289a29b1a76eee151c6' ;;
|
||||
'8.12') echo '7a00d51fb93147819aab76024feece20b6b84e420694101f276be952e08bef03' ;;
|
||||
'8.12.1') echo '8d97a97984f6cbd2b85fe4c60a743440a347544bf18818048e611f5288d46c94' ;;
|
||||
'8.13') echo '20f1b1176237254a6fc204d8434196fa11a4cfb387567519c61556e8710aed78' ;;
|
||||
'8.14') echo '61ad310d3c7d3e5da131b76bbf22b5a4c0786e9d892dae8c1658d4b484de3caa' ;;
|
||||
'8.14.1') echo '845952a9d6afa783db70bb3b0effaae45ae5542ca2bb7929619e8af49cb634cf' ;;
|
||||
'8.14.2') echo '7197a12f450794931532469d4ff21a59ea2c1cd59a3ec3f89c035c3c420a6999' ;;
|
||||
*) exit 1
|
||||
esac
|
||||
}
|
||||
|
||||
contains() {
|
||||
local e
|
||||
for e in $2; do
|
||||
[[ $e == $1 ]] && return 0;
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
# key-value pairs of what gradle version (value) each gradle plugin version
|
||||
# (key) should accept. plugin versions are actually prefixes and catch sub-
|
||||
# versions as well. Pairs are taken from:
|
||||
# https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
|
||||
d_gradle_plugin_ver_k=(8.9 8.8 8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 7.4 7.3 7.2 7.1 7.0 4.2 4.1 4.0 3.6 3.5 3.4 3.3 3.2 3.1 3.0 2.3 2.2 2.1.3 2.1 2.0)
|
||||
d_plugin_min_gradle_v=(8.11.1 8.10.2 8.9 8.7 8.7 8.6 8.4 8.2 8.0 8.0 7.5 7.4 7.3.3 7.2 7.0.2 6.7.1 6.5 6.1.1 5.6.4 5.4.1 5.1.1 4.10.1 4.6 4.4 4.1 3.3 2.14.1 2.14.1 2.12 2.12)
|
||||
|
||||
# All gradle versions we know about
|
||||
plugin_v=(8.14.2 8.14.1 8.14 8.13 8.12.1 8.12 8.11.1 8.11 8.10.2 8.10.1 8.10 8.9 8.8 8.7 8.6 8.5 8.4 8.3 8.2.1 8.2 8.1.1 8.1 8.0.2 8.0.1 8.0 7.6.5 7.6.4 7.6.3 7.6.2 7.6.1 7.6 7.5.1 7.5 7.4.2 7.4.1 7.4 7.3.3 7.3.2 7.3.1 7.3 7.2 7.1.1 7.1 7.0.2 7.0.1 7.0 6.9.4 6.9.3 6.9.2 6.9.1 6.9 6.8.3 6.8.2 6.8.1 6.8 6.7.1 6.7 6.6.1 6.6 6.5.1 6.5 6.4.1 6.4 6.3 6.2.2 6.2.1 6.2 6.1.1 6.1 6.0.1 6.0 5.6.4 5.6.3 5.6.2 5.6.1 5.6 5.5.1 5.5 5.4.1 5.4 5.3.1 5.3 5.2.1 5.2 5.1.1 5.1 5.0 4.10.3 4.10.2 4.10.1 4.10 4.9 4.8.1 4.8 4.7 4.6 4.5.1 4.5 4.4.1 4.4 4.3.1 4.3 4.2.1 4.2 4.1 4.0.2 4.0.1 4.0 3.5.1 3.5 3.4.1 3.4 3.3 3.2.1 3.2 3.1 3.0 2.14.1 2.14 2.13 2.12 2.11 2.10 2.9 2.8 2.7 2.6 2.5 2.4 2.3 2.2.1 2.2 2.1 2.0 1.12 1.11 1.10 1.9 1.8 1.7 1.6 1.5 1.4 1.3 1.2 1.1 1.0 0.9.2 0.9.1 0.9 0.8 0.7)
|
||||
|
||||
v_all=${plugin_v[@]}
|
||||
|
||||
# Earliest file takes priority
|
||||
# Last key takes priority if there are duplicates (matching java.util.Properties)
|
||||
for f in {.,..,../..}/gradle/wrapper/gradle-wrapper.properties; do
|
||||
[[ -f $f ]] || continue
|
||||
while IFS='' read -r line || [ -n "$line" ]; do
|
||||
line=$(printf "$line" | tr -d '\r') # strip Windows linefeeds
|
||||
if [[ $line == 'distributionUrl='* ]]; then
|
||||
wrapper_ver=${line#*/gradle-}
|
||||
wrapper_ver=${wrapper_ver%-*.zip}
|
||||
fi
|
||||
done < $f
|
||||
[[ -n $wrapper_ver ]] && break
|
||||
done
|
||||
|
||||
if [[ -n $wrapper_ver ]]; then
|
||||
v_found=$wrapper_ver
|
||||
echo "Found $v_found via distributionUrl"
|
||||
run_gradle
|
||||
fi
|
||||
|
||||
# Earliest takes priority
|
||||
for f in {.,..}/build.gradle{,.kts}; do
|
||||
[[ -f $f ]] || continue
|
||||
while IFS='' read -r line || [ -n "$line" ]; do
|
||||
line=$(printf "$line" | tr -d '\r') # strip Windows linefeeds
|
||||
if [[ -z "$plugin_pver" && $line == *'com.android.tools.build:gradle:'* ]]; then
|
||||
plugin_pver=${line#*[\'\"]com.android.tools.build:gradle:}
|
||||
plugin_pver=${plugin_pver%[\'\"]*}
|
||||
elif [[ -z "$wrapper_ver" && $line == *'gradleVersion = '* ]]; then
|
||||
wrapper_ver=${line#*gradleVersion*=*[\'\"]}
|
||||
wrapper_ver=${wrapper_ver%[\'\"]*}
|
||||
fi
|
||||
done < $f
|
||||
done
|
||||
|
||||
if [[ -n $wrapper_ver ]]; then
|
||||
v_found=$wrapper_ver
|
||||
echo "Found $v_found via gradleVersion"
|
||||
run_gradle
|
||||
fi
|
||||
|
||||
if [[ -n $plugin_pver ]]; then
|
||||
i=0
|
||||
match=false
|
||||
for k in "${d_gradle_plugin_ver_k[@]}"; do
|
||||
if [[ $plugin_pver == ${k}* ]]; then
|
||||
plugin_ver=${d_plugin_min_gradle_v[$i]}
|
||||
match=true
|
||||
break
|
||||
fi
|
||||
let i++
|
||||
done
|
||||
if $match; then
|
||||
v_found=$plugin_ver
|
||||
echo "Found $v_found via gradle plugin version $k"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Find the highest version available
|
||||
for v in ${plugin_v[*]}; do
|
||||
if contains $v "${v_all[*]}"; then
|
||||
v_def=$v
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -z $v_found ]]; then
|
||||
echo "No suitable gradle version found - defaulting to $v_def"
|
||||
v_found=$v_def
|
||||
fi
|
||||
|
||||
run_gradle
|
|
@ -11,7 +11,7 @@ if [ -z "$files" ]; then
|
|||
PY_FILES="fdroid makebuildserver setup.py fdroidserver/*.py examples/*.py tests/*-release-checksums.py"
|
||||
PY_TEST_FILES="tests/test_*.py"
|
||||
SH_FILES="hooks/pre-commit"
|
||||
BASH_FILES="gradlew-fdroid jenkins-build-all jenkins-setup-build-environment jenkins-test completion/bash-completion buildserver/provision-*"
|
||||
BASH_FILES="jenkins-build-all jenkins-setup-build-environment jenkins-test completion/bash-completion buildserver/provision-*"
|
||||
RB_FILES="buildserver/Vagrantfile"
|
||||
YML_FILES=".*.yml .yamllint */*.yml */*.yaml"
|
||||
else
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.2.1-143-g1a5ee449\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2023-05-26 19:39+0000\n"
|
||||
"Last-Translator: Mehrab Poladov <thepoladov@protonmail.com>\n"
|
||||
"Language-Team: Azerbaijani <https://hosted.weblate.org/projects/f-droid/fdroidserver/az/>\n"
|
||||
|
@ -353,6 +353,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1991,6 +2001,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
2695
locale/ba/LC_MESSAGES/fdroidserver.po
Normal file
2695
locale/ba/LC_MESSAGES/fdroidserver.po
Normal file
File diff suppressed because it is too large
Load diff
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.2.1-143-g1a5ee449\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-01-21 00:08+0000\n"
|
||||
"Last-Translator: flac <flac_twin@keemail.me>\n"
|
||||
"Language-Team: Belarusian <https://hosted.weblate.org/projects/f-droid/fdroidserver/be/>\n"
|
||||
|
@ -358,6 +358,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1483,6 +1488,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Перайменуйце файлы APK, якія не адпавядаюць package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1996,6 +2006,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Папярэджваць аб магчымых памылках метададзеных"
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.1b0\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-07-19 10:21+0000\n"
|
||||
"Last-Translator: 109247019824 <stoyan@gmx.com>\n"
|
||||
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/f-droid/fdroidserver/bg/>\n"
|
||||
|
@ -354,6 +354,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1479,6 +1484,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1992,6 +2002,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-70-g54bc858\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2021-02-12 09:48+0000\n"
|
||||
"Last-Translator: Oymate <dhruboadittya96@gmail.com>\n"
|
||||
"Language-Team: Bengali <https://hosted.weblate.org/projects/f-droid/fdroidserver/bn/>\n"
|
||||
|
@ -353,6 +353,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1991,6 +2001,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-04-10 13:33+0000\n"
|
||||
"Last-Translator: Hans-Christoph Steiner <hans@guardianproject.info>\n"
|
||||
"Language-Team: Tibetan <https://hosted.weblate.org/projects/f-droid/fdroidserver/bo/>\n"
|
||||
|
@ -358,6 +358,11 @@ msgid "Can't build due to {} error while scanning"
|
|||
msgid_plural "Can't build due to {} errors while scanning"
|
||||
msgstr[0] "ཚགས་རྒྱབ་པའི་སྐབས་སུ་ནོར་སྐྱོན་ {} ཤོར་བས་བཟོ་སྐྲུན་བྱེད་ཐུབ་མེད།"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "ཀློག་མི་ཐུབ།{path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1499,6 +1504,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "package.name_123.apk དང་མི་འདྲ་བའི་APK ཡིག་ཆ་དེ་ཚོར་མིང་སྐྱར་ཏུ་བཏགས།"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2015,6 +2025,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "ཡིག་ཚགས་ཀྱི་རྒྱབ་ལྗོངས་ལོ་རྒྱུས་སྐྱོན་སྲིད་པ་རྣམས་པ་ཉེན་བརྡ་གཏོང་།"
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.1-273-g54e84d87\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-05-16 16:36+0000\n"
|
||||
"Last-Translator: Ecron <ecron_89@hotmail.com>\n"
|
||||
"Language-Team: Catalan <https://hosted.weblate.org/projects/f-droid/fdroidserver/ca/>\n"
|
||||
|
@ -363,6 +363,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "No es pot construir a causa d'un error {} en escanejar"
|
||||
msgstr[1] "No es pot construir a causa d'errors {} en escanejar"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "No s'ha pogut llegir {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1490,6 +1495,11 @@ msgstr "S'està suprimint {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Canvia el nom dels fitxers APK que no coincideixin amb package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2010,6 +2020,10 @@ msgstr "S'està verificant el paquet {path} l'apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "La clau de l'API VirusTotal no pot pujar fitxers més grans de 32 MB, utilitzeu {url} per pujar {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avisa de possibles errors a les metadades"
|
||||
|
|
|
@ -13,7 +13,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.0-95-gd7af22b\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-26 10:00+0000\n"
|
||||
"Last-Translator: Fjuro <fjuro@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Czech <https://hosted.weblate.org/projects/f-droid/fdroidserver/cs/>\n"
|
||||
|
@ -366,6 +366,11 @@ msgstr[0] "Nelze sestavit kvůli {} chybě při skenování"
|
|||
msgstr[1] "Nelze sestavit kvůli {} chybám při skenování"
|
||||
msgstr[2] "Nelze sestavit kvůli {} chybám při skenování"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Chyba při čtení {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1493,6 +1498,11 @@ msgstr "Odebírání {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Přejmenovat soubory APK, které se neshodují s package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2014,6 +2024,10 @@ msgstr "Ověřování balíčku {path} pomocí apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Klíč API VirusTotal neumožňuje nahrávání souborů větších než 32 MB, k nahrání {path} použijte {url}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Varovat ohledně možných chyb metadat"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a5-27-gf24eae0f\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2021-01-16 21:23+0000\n"
|
||||
"Last-Translator: Aled Powell <aled@aledpowell.cymru>\n"
|
||||
"Language-Team: Welsh <https://hosted.weblate.org/projects/f-droid/fdroidserver/cy/>\n"
|
||||
|
@ -357,6 +357,11 @@ msgstr[3] ""
|
|||
msgstr[4] ""
|
||||
msgstr[5] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1482,6 +1487,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Ailenwi ffeiliau APK na sy'n dilyn y ffurf package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2006,6 +2016,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Rhybuddio am wallau metaddata posib"
|
||||
|
|
|
@ -26,7 +26,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-04-29 10:16+0000\n"
|
||||
"Last-Translator: VfBFan <drop0815@posteo.de>\n"
|
||||
"Language-Team: German <https://hosted.weblate.org/projects/f-droid/fdroidserver/de/>\n"
|
||||
|
@ -378,6 +378,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Kann nicht erstellt werden, da {} Fehler beim Prüfen aufgetreten ist"
|
||||
msgstr[1] "Kann nicht erstellt werden, da {} Fehler beim Prüfen aufgetreten sind"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Lesen von {path} fehlgeschlagen: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1505,6 +1510,11 @@ msgstr "Entferne {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "APK-Dateien umbenennen, die nicht dem Muster „package.name_123.apk“ entsprechen"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2025,6 +2035,10 @@ msgstr "Überprüfen des Pakets {path} mit apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal-API-Schlüssel kann nicht Dateien größer 32MB hochladen, verwende {url} um {path} hochzuladen."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Vor möglichen Metadaten-Fehlern warnen"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a0-62-gc63c4b3d\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-05-10 13:24+0000\n"
|
||||
"Last-Translator: ΣΤΑΥΡΟΣ ΔΑΛΙΑΚΟΠΟΥΛΟΣ <stavros.daliakopoulos@gmail.com>\n"
|
||||
"Language-Team: Greek <https://hosted.weblate.org/projects/f-droid/fdroidserver/el/>\n"
|
||||
|
@ -360,6 +360,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1485,6 +1490,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Μετονομασία αρχείων APK που δεν αντιστοιχούν με «όνομα.πακέτου_123.apk»"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1998,6 +2008,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Προειδοποίηση για πιθανά σφάλματα μετα-δεδομένων"
|
||||
|
|
|
@ -19,7 +19,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-06-24 11:02+0000\n"
|
||||
"Last-Translator: Swyter <swyterzone@gmail.com>\n"
|
||||
"Language-Team: Spanish <https://hosted.weblate.org/projects/f-droid/fdroidserver/es/>\n"
|
||||
|
@ -371,6 +371,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "No se puede construir debido al error {} mientras se comprobaba"
|
||||
msgstr[1] "No se puede construir debido a los errores {} mientras se comprobaba"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Fallo al leer {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1498,6 +1503,11 @@ msgstr "Eliminando {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Cambiar el nombre de archivos APK que no coinciden con el formato package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2018,6 +2028,10 @@ msgstr "Verificando el paquete {path} con apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "La clave de API de VirusTotal no puede subir archivos mayores de 32MB. Use {url} para subir {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Alertar sobre posibles errores de metadatos"
|
||||
|
|
|
@ -10,7 +10,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2021-04-10 21:26+0000\n"
|
||||
"Last-Translator: Germe the fur star <FOSSgerme.deb@tuta.io>\n"
|
||||
"Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/f-droid/fdroidserver/es_AR/>\n"
|
||||
|
@ -361,6 +361,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "No se pudo empaquetar debido al {} error mientras se escaneaba"
|
||||
msgstr[1] "No se pudo empaquetar debido a los {} errores mientras se escaneaba"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "No se puede reescribir \"{path}\""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1495,6 +1500,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Renombrar archivos APK que no corresponden a package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2008,6 +2018,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Advertir sobre posibles errores en los metadatos"
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-349-g907c04ea\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2020-04-29 12:49+0000\n"
|
||||
"Last-Translator: Hans-Christoph Steiner <hans@guardianproject.info>\n"
|
||||
"Language-Team: Spanish (Mexico) <https://hosted.weblate.org/projects/f-droid/fdroidserver/es_MX/>\n"
|
||||
|
@ -354,6 +354,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1483,6 +1488,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1996,6 +2006,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a0-62-gc63c4b3d\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
|
@ -352,6 +352,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1477,6 +1482,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1990,6 +2000,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-11-26 15:16+0000\n"
|
||||
"Last-Translator: Danial Behzadi <dani.behzi@ubuntu.com>\n"
|
||||
"Language-Team: Persian <https://hosted.weblate.org/projects/f-droid/fdroidserver/fa/>\n"
|
||||
|
@ -356,6 +356,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "{path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1481,6 +1486,11 @@ msgstr "برداشتن {path}"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1994,6 +2004,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.4.0\n"
|
||||
"Project-Id-Version: fdroidserver 2.4.2-3-gdcb804f7\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -354,6 +354,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1479,6 +1484,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1992,6 +2002,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a0-62-gc63c4b3d\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-01-31 14:19+0000\n"
|
||||
"Last-Translator: Ricky Tigg <ricky.tigg@gmail.com>\n"
|
||||
"Language-Team: Finnish <https://hosted.weblate.org/projects/f-droid/fdroidserver/fi/>\n"
|
||||
|
@ -355,6 +355,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1480,6 +1485,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1993,6 +2003,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -47,7 +47,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-04-11 17:20+0000\n"
|
||||
"Last-Translator: Laurent FAVOLE <laurentfavole03@gmail.com>\n"
|
||||
"Language-Team: French <https://hosted.weblate.org/projects/f-droid/fdroidserver/fr/>\n"
|
||||
|
@ -399,6 +399,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Build impossible à cause de l'erreur lors de l'analyse"
|
||||
msgstr[1] "Build impossible à cause des {} erreurs lors de l'analyse"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Erreur de lecture {path} : {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1526,6 +1531,11 @@ msgstr "Suppression de {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Renomme les fichiers APK dont le nom ne ressemble pas à nom.paquet_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2048,6 +2058,10 @@ msgstr "Vérification du paquet {path} avec apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "L’API de VirusTotal ne permet pas d’envoyer des fichiers plus grands que 32Mo, utilisez {url} pour envoyer {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avertir de possibles erreurs dans les métadonnées"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2021-07-01 15:29+0000\n"
|
||||
"Last-Translator: Vancha March <tjipkevdh@gmail.com>\n"
|
||||
"Language-Team: Frisian <https://hosted.weblate.org/projects/f-droid/fdroidserver/fy/>\n"
|
||||
|
@ -353,6 +353,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1991,6 +2001,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.3a1-162-gfbb3cc59\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-27 19:35+0000\n"
|
||||
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@gmail.com>\n"
|
||||
"Language-Team: Irish <https://hosted.weblate.org/projects/f-droid/fdroidserver/ga/>\n"
|
||||
|
@ -360,6 +360,11 @@ msgstr[2] "Ní féidir tógáil de bharr {} earráidí agus an scanadh"
|
|||
msgstr[3] "Ní féidir tógáil de bharr {} earráidí agus an scanadh"
|
||||
msgstr[4] "Ní féidir tógáil de bharr {} earráidí agus an scanadh"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Theip ar léamh {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1487,6 +1492,11 @@ msgstr "Ag baint {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Athainmnigh comhaid APK nach bhfuil comhoiriúnach package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2010,6 +2020,10 @@ msgstr "Pacáiste {path} á fhíorú le apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Ní féidir le heochair API VirusTotal comhaid níos mó ná 32MB a uaslódáil, úsáid {url} chun {path} a uaslódáil."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Tabhair rabhadh faoi earráidí meiteashonraí a d'fhéadfadh a bheith ann"
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a5-27-gf24eae0f\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2023-02-22 11:24+0000\n"
|
||||
"Last-Translator: Saurmandal <saurmandal@protonmail.com>\n"
|
||||
"Language-Team: Hindi <https://hosted.weblate.org/projects/f-droid/fdroidserver/hi/>\n"
|
||||
|
@ -354,6 +354,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1479,6 +1484,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1992,6 +2002,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-70-g54bc858\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-04-10 13:33+0000\n"
|
||||
"Last-Translator: Hans-Christoph Steiner <hans@guardianproject.info>\n"
|
||||
"Language-Team: Hungarian <https://hosted.weblate.org/projects/f-droid/fdroidserver/hu/>\n"
|
||||
|
@ -359,6 +359,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Nem lehet összeállítani, mert {} hiba történt az átvizsgáláskor"
|
||||
msgstr[1] "Nem lehet összeállítani, mert {} hiba történt az átvizsgáláskor"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "A(z) {path} olvasása sikertelen: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1494,6 +1499,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Azon APK fájlok átnevezése, melyek nem illeszkednek a csomag.név_123.apk mintára"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2011,6 +2021,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Figyelmeztetés a lehetséges metaadat-hibákról"
|
||||
|
|
|
@ -22,7 +22,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-20 16:21+0000\n"
|
||||
"Last-Translator: Champ0999 <champ0999@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Italian <https://hosted.weblate.org/projects/f-droid/fdroidserver/it/>\n"
|
||||
|
@ -375,6 +375,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Impossibile costruire a causa di un errore con {} durante la scansione"
|
||||
msgstr[1] "Impossibile costruire a causa di errori con {} durante la scansione"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Impossibile leggere {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1504,6 +1509,11 @@ msgstr "Rimozione di {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Rinomina i file APK che non corrispondono a package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2028,6 +2038,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "La chiave API di VirusTotal non può caricare file più grandi di 32MB, usa {url} per caricare {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avvisa riguardo possibili errori nei metadati"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.8-224-g4b0ade7\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-04-30 04:07+0000\n"
|
||||
"Last-Translator: Liner Seven <linour7gmekiblo@gmail.com>\n"
|
||||
"Language-Team: Japanese <https://hosted.weblate.org/projects/f-droid/fdroidserver/ja/>\n"
|
||||
|
@ -359,6 +359,11 @@ msgid "Can't build due to {} error while scanning"
|
|||
msgid_plural "Can't build due to {} errors while scanning"
|
||||
msgstr[0] "スキャン時に{}個のエラーが発生したためビルドできません"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "{path}を読み込めませんでした:{error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1486,6 +1491,11 @@ msgstr "{path} を削除"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "package.name_123.apkに合致しないAPKファイルの名前を変更"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2005,6 +2015,10 @@ msgstr "apksignerを使用してパッケージ{path}を検証しています。
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotalのAPI鍵は32メガバイトより大きいファイルをアップロードできません。{url}から{path}をアップロードしてください。"
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "潜在的なメタデータのエラーに関して警告"
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2021-01-15 13:25+0000\n"
|
||||
"Last-Translator: R_SACI <rgebbid@gmail.com>\n"
|
||||
"Language-Team: Kabyle <https://hosted.weblate.org/projects/f-droid/fdroidserver/kab/>\n"
|
||||
|
@ -355,6 +355,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1482,6 +1487,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1995,6 +2005,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.8-135-g16dd6d28\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-09-06 14:57+0000\n"
|
||||
"Last-Translator: Cxnfl1ct <wind0wso2o2@naver.com>\n"
|
||||
"Language-Team: Korean <https://hosted.weblate.org/projects/f-droid/fdroidserver/ko/>\n"
|
||||
|
@ -358,6 +358,11 @@ msgid "Can't build due to {} error while scanning"
|
|||
msgid_plural "Can't build due to {} errors while scanning"
|
||||
msgstr[0] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1485,6 +1490,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "package.name_123.apk와 일치하지 않는 APK 파일의 이름을 바꿉니다"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1997,6 +2007,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "가능한 메타데이터 오류에 대해 경고합니다"
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-70-g54bc858\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2023-06-23 14:52+0000\n"
|
||||
"Last-Translator: abe1242 <abmdn1242@gmail.com>\n"
|
||||
"Language-Team: Malayalam <https://hosted.weblate.org/projects/f-droid/fdroidserver/ml/>\n"
|
||||
|
@ -358,6 +358,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1483,6 +1488,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1999,6 +2009,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.8-74-ga380b9f\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2022-09-06 14:30+0000\n"
|
||||
"Last-Translator: Hans-Christoph Steiner <hans@guardianproject.info>\n"
|
||||
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/f-droid/fdroidserver/nb_NO/>\n"
|
||||
|
@ -366,6 +366,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Kan ikke bygge som følge av {} feil under skanning"
|
||||
msgstr[1] "Kan ikke bygge som følge av {} feiler under skanning"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Klarte ikke å lese {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1537,6 +1542,11 @@ msgstr "Fjerner {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Gi nytt navn til APK-filer som ikke samsvarer med package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2070,6 +2080,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal API-nøkkel kan ikke laste opp filer større enn 32 MB, bruk {url} for å laste opp {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Advar om mulige metadata-feil"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.1-680-ge1d3de71\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-01-03 09:07+0000\n"
|
||||
"Last-Translator: Issa1553 <fairfull.playing@gmail.com>\n"
|
||||
"Language-Team: Dutch <https://hosted.weblate.org/projects/f-droid/fdroidserver/nl/>\n"
|
||||
|
@ -361,6 +361,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1486,6 +1491,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Hernoem APK-bestanden die niet overeenkomen met pakket.naam_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1999,6 +2009,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Waarschuwen voor mogelijke metadata fouten"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.3.0-3-g4ba7b5c9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-11-26 10:54+0000\n"
|
||||
"Last-Translator: Bård Sigurd Møller <git@bsmoller.no>\n"
|
||||
"Language-Team: Norwegian Nynorsk <https://hosted.weblate.org/projects/f-droid/fdroidserver/nn/>\n"
|
||||
|
@ -353,6 +353,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1991,6 +2001,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.3.3\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
|
@ -352,6 +352,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1477,6 +1482,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1990,6 +2000,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
#
|
||||
# add completed translations from weblate to MANIFEST.in
|
||||
|
||||
import git
|
||||
import json
|
||||
import os
|
||||
import re
|
||||
import requests
|
||||
import subprocess
|
||||
|
||||
import git
|
||||
import requests
|
||||
|
||||
projectbasedir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
localedir = os.path.join(projectbasedir, 'locale')
|
||||
|
|
|
@ -10,7 +10,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.0-95-gd7af22b\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-06-24 12:05+0000\n"
|
||||
"Last-Translator: WaldiS <sto@tutanota.de>\n"
|
||||
"Language-Team: Polish <https://hosted.weblate.org/projects/f-droid/fdroidserver/pl/>\n"
|
||||
|
@ -363,6 +363,11 @@ msgstr[0] "Nie można zbudować z powodu błędu {} podczas skanowania"
|
|||
msgstr[1] "Nie można zbudować z powodu błędów {} podczas skanowania"
|
||||
msgstr[2] "Nie można zbudować z powodu błędów {} podczas skanowania"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Błąd odczytu {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1490,6 +1495,11 @@ msgstr "Usuwanie „{path}”"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Zmień nazwy plików APK, które nie pasują do pliku package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2011,6 +2021,10 @@ msgstr "Weryfikacja pakietu {path} za pomocą apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Klucz VirusTotal API nie może przesyłać plików większych niż 32 MB, użyj {url}, aby przesłać {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Ostrzegaj o możliwych błędach metadanych"
|
||||
|
|
|
@ -9,7 +9,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.1-680-ge1d3de71\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-04-06 16:45+0000\n"
|
||||
"Last-Translator: ssantos <ssantos@web.de>\n"
|
||||
"Language-Team: Portuguese <https://hosted.weblate.org/projects/f-droid/fdroidserver/pt/>\n"
|
||||
|
@ -361,6 +361,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Não é possível construir devido a erro {} durante a digitalização"
|
||||
msgstr[1] "Não é possível construir devido a erros {} durante a digitalização"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Falha de leitura {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1488,6 +1493,11 @@ msgstr "A remover {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Renomear todos os ficheiros APKs que não correspondem com package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2008,6 +2018,10 @@ msgstr "A verificar o pacote {path} com apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "A chave VirusTotal API não pode enviar ficheiros maiores que 32MB, use {url} para enviar {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avisar sobre possíveis erros de metadados"
|
||||
|
|
|
@ -19,7 +19,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-26 10:00+0000\n"
|
||||
"Last-Translator: Igor Rückert <igorruckert@yahoo.com.br>\n"
|
||||
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/f-droid/fdroidserver/pt_BR/>\n"
|
||||
|
@ -371,6 +371,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Não é possível criar devido a {} erro durante a digitalização"
|
||||
msgstr[1] "Não é possível criar devido a {} erros durante a digitalização"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Falha ao ler {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1498,6 +1503,11 @@ msgstr "Removendo {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Renomeia arquivos APK que não correspondem a pacote.nome_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2018,6 +2028,10 @@ msgstr "Verificando o pacote {path} com apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "A chave API do VirusTotal não pode carregar arquivos maiores que 32MB, utilize {url} para enviar para {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avisa sobre possíveis erros de metadados"
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-05-30 07:19+0000\n"
|
||||
"Last-Translator: ssantos <ssantos@web.de>\n"
|
||||
"Language-Team: Portuguese (Portugal) <https://hosted.weblate.org/projects/f-droid/fdroidserver/pt_PT/>\n"
|
||||
|
@ -363,6 +363,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Não é possível construir devido a erro {} durante a digitalização"
|
||||
msgstr[1] "Não é possível construir devido a erros {} durante a digitalização"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Falha de leitura {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1490,6 +1495,11 @@ msgstr "A remover {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Renomear todos os ficheiros APKs que não correspondem com package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2010,6 +2020,10 @@ msgstr "A verificar o pacote {path} com apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "A chave VirusTotal API não pode enviar ficheiros maiores que 32MB, use {url} para enviar {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avisar sobre possíveis erros de metadados"
|
||||
|
|
|
@ -9,7 +9,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.0a5-27-gf24eae0f\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-12-02 17:00+0000\n"
|
||||
"Last-Translator: Licaon Kter <licaon.kter@protonmail.com>\n"
|
||||
"Language-Team: Romanian <https://hosted.weblate.org/projects/f-droid/fdroidserver/ro/>\n"
|
||||
|
@ -362,6 +362,11 @@ msgstr[0] "Nu se poate construi din cauza unei erori {} în timpul scanării"
|
|||
msgstr[1] "Nu se poate construi din cauza erorilor {} în timpul scanării"
|
||||
msgstr[2] "Nu se poate construi din cauza erorilor {} în timpul scanării"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "A eșuat citirea {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1489,6 +1494,11 @@ msgstr "Eliminarea lui {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Redenumiți fișierele APK care nu se potrivesc cu package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2011,6 +2021,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal API key nu poate încărca fișiere mai mari de 32MB, utilizați {url} pentru a încărca {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Avertizează cu privire la posibile erori de metadate"
|
||||
|
|
|
@ -21,7 +21,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.0-95-gd7af22b\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-06-24 10:15+0000\n"
|
||||
"Last-Translator: Artyom Rybakov <rib.artem@gmail.com>\n"
|
||||
"Language-Team: Russian <https://hosted.weblate.org/projects/f-droid/fdroidserver/ru/>\n"
|
||||
|
@ -374,6 +374,11 @@ msgstr[0] "Запустить сборку невозможно из-за {} о
|
|||
msgstr[1] "Запустить сборку невозможно из-за {} ошибок во время сканирования данных"
|
||||
msgstr[2] "Запустить сборку невозможно из-за {} ошибок во время сканирования данных"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Не удалось распознать {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1501,6 +1506,11 @@ msgstr "Удаление {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Переименовать все APK файлы, не соответствующие шаблону \"название.пакета_123.apk\""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2022,6 +2032,10 @@ msgstr "Проверка пакета {path} с помощью apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Через API VirusTotal нельзя загрузить файлы больше 32MB, загрузите {path} на {url} самостоятельно."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Предупреждать о возможных ошибках в метаданных"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-349-g907c04ea\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
|
@ -353,6 +353,11 @@ msgstr[0] ""
|
|||
msgstr[1] ""
|
||||
msgstr[2] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1992,6 +2002,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.6-349-g907c04ea\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-26 21:33+0000\n"
|
||||
"Last-Translator: Besnik Bleta <besnik@programeshqip.org>\n"
|
||||
"Language-Team: Albanian <https://hosted.weblate.org/projects/f-droid/fdroidserver/sq/>\n"
|
||||
|
@ -358,6 +358,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "S’montohet dot, për shkak të {} gabimi teksa skanohej"
|
||||
msgstr[1] "S’montohet dot, për shkak të {} gabimeve teksa skanohej"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "S’u arrit të lexohej {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1485,6 +1490,11 @@ msgstr "Po hiqet {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Riemërtoni kartelat APK që nuk përputhen me package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2006,6 +2016,10 @@ msgstr "Po verifikohet paketë {path} me apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Kyçi API VirusTotal s’mund të ngarkojë kartela më të mëdha se 2MB, përdorni {url} që të ngarkoni {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Sinjalizo rreth gabimesh të mundshëm tejtëdhënash"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.1b0\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-12-30 22:00+0000\n"
|
||||
"Last-Translator: Reno Tx <renotx@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Serbian <https://hosted.weblate.org/projects/f-droid/fdroidserver/sr/>\n"
|
||||
|
@ -361,6 +361,11 @@ msgstr[0] "Не може се изградити због {} грешке при
|
|||
msgstr[1] "Не може се изградити због {} грешке приликом скенирања"
|
||||
msgstr[2] "Не може се изградити због {} грешака приликом скенирања"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Није успело читање {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1488,6 +1493,11 @@ msgstr "Уклањање {path}"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Преименујте APK фајлове који не одговарају package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2009,6 +2019,10 @@ msgstr "Провера пакета {path} са apksigner."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal API кључ не може отпремити датотеке веће од 32MB, користи {url} за отпремање {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Упозорење о могућим грешкама у метаподацима"
|
||||
|
|
|
@ -10,7 +10,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.0-95-gd7af22b\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-17 21:44+0000\n"
|
||||
"Last-Translator: Kristoffer Grundström <swedishsailfishosuser@tutanota.com>\n"
|
||||
"Language-Team: Swedish <https://hosted.weblate.org/projects/f-droid/fdroidserver/sv/>\n"
|
||||
|
@ -362,6 +362,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "{path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1487,6 +1492,11 @@ msgstr "Tar bort {path}''"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Byt namn på APK-filer som inte matchar paket.namn_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2000,6 +2010,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Visa varningar vid möjliga metadatafel"
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.3a1\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-09-08 11:09+0000\n"
|
||||
"Last-Translator: abelbiwott-dev <abelbiwott@outlook.com>\n"
|
||||
"Language-Team: Swahili <https://hosted.weblate.org/projects/f-droid/fdroidserver/sw/>\n"
|
||||
|
@ -359,6 +359,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Haiwezi kujenga kutokana na kosa la {} wakati wa uchanganuzi"
|
||||
msgstr[1] "Haiwezi kujenga kutokana na makosa ya {} wakati wa uchanganuzi"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Imeshindwa kusoma {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1486,6 +1491,11 @@ msgstr "Kuondoa {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Badilisha jina la faili za APK ambazo hazilingani na package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2007,6 +2017,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Ufunguo wa API ya VirusTotal haiwezi kupakia faili zaidi ya 32MB, tumia {url} kupakia {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Onya kuhusu hitilafu ya metadata yanayoweza kutokea"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 2.1-273-g54e84d87\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-01-20 14:04+0000\n"
|
||||
"Last-Translator: Hans-Christoph Steiner <hans@guardianproject.info>\n"
|
||||
"Language-Team: Tamil <https://hosted.weblate.org/projects/f-droid/fdroidserver/ta/>\n"
|
||||
|
@ -360,6 +360,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "ச்கேன் செய்யும் போது {} பிழை காரணமாக உருவாக்க முடியாது"
|
||||
msgstr[1] "ச்கேன் செய்யும் போது {} பிழைகள் காரணமாக உருவாக்க முடியாது"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "தோல்வியுற்ற வாசிப்பு {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1487,6 +1492,11 @@ msgstr "{path} \"ஐ நீக்குதல்"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "தொகுப்புடன் பொருந்தாத APK கோப்புகளை மறுபெயரிடுங்கள். NAME_123.APK"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2007,6 +2017,10 @@ msgstr "Apksigner உடன் தொகுப்பு {path} ஐ சரிப
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "வைரச்டோட்டல் பநிஇ விசையை 32MB ஐ விட பெரிய கோப்புகளை பதிவேற்ற முடியாது, {path} பதிவேற்ற {url} ஐப் பயன்படுத்தவும்."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "சாத்தியமான மேனிலை தரவு பிழைகள் குறித்து எச்சரிக்கவும்"
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-05-26 22:01+0000\n"
|
||||
"Last-Translator: Bora Atıcı <boratici.acc@gmail.com>\n"
|
||||
"Language-Team: Turkish <https://hosted.weblate.org/projects/f-droid/fdroidserver/tr/>\n"
|
||||
|
@ -363,6 +363,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] "Tarama sırasında {} hata nedeniyle inşa edilemiyor"
|
||||
msgstr[1] "Tarama sırasında {} hata nedeniyle inşa edilemiyor"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "{path} okunamadı: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1490,6 +1495,11 @@ msgstr "\"{path}\" kaldırılıyor"
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "paket.adı_123.apk örüntüsüyle eşleşmeyen tüm APK dosyalarını yeniden adlandır"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2010,6 +2020,10 @@ msgstr "{path} paketi apksigner ile doğrulanıyor."
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal API anahtarı 32MB'den büyük dosyaları yükleyemiyor, {path} yüklemek için {url} kullanın."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Olası üst veri hataları hakkında uyar"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.1-681-gc19e8952\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2020-10-29 08:32+0000\n"
|
||||
"Last-Translator: Hakim Oubouali <hakim.oubouali.skr@gmail.com>\n"
|
||||
"Language-Team: Central Atlas Tamazight <https://hosted.weblate.org/projects/f-droid/fdroidserver/tzm/>\n"
|
||||
|
@ -353,6 +353,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1478,6 +1483,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1991,6 +2001,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 1.0.0-95-gd7af22b\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2018-06-08 03:44+0000\n"
|
||||
"Last-Translator: ۋولقان <nureliosman@gmail.com>\n"
|
||||
"Language-Team: Uyghur <https://hosted.weblate.org/projects/f-droid/fdroidserver/ug/>\n"
|
||||
|
@ -354,6 +354,11 @@ msgid_plural "Can't build due to {} errors while scanning"
|
|||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1480,6 +1485,11 @@ msgstr ""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -1993,6 +2003,10 @@ msgstr ""
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr ""
|
||||
|
|
|
@ -17,7 +17,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-27 19:35+0000\n"
|
||||
"Last-Translator: Ihor Hordiichuk <igor_ck@outlook.com>\n"
|
||||
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/f-droid/fdroidserver/uk/>\n"
|
||||
|
@ -370,6 +370,11 @@ msgstr[0] "Неможливо створити через {} помилку пі
|
|||
msgstr[1] "Неможливо створити через {} помилки під час сканування"
|
||||
msgstr[2] "Неможливо створити через {} помилок під час сканування"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "Не вдалося розпізнати {path}: {error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1497,6 +1502,11 @@ msgstr "Вилучення {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "Перейменування файлів APK, які не відповідають package.name_123.apk"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2018,6 +2028,10 @@ msgstr "Перевірка пакета {path} за допомогою apksigner
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "Ключ API VirusTotal не може завантажити файли, розмір яких понад 32 МБ, використовуйте {url} для завантаження {path}."
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "Попереджати про можливі помилки метаданих"
|
||||
|
|
|
@ -39,7 +39,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2025-03-26 10:00+0000\n"
|
||||
"Last-Translator: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Chinese (Simplified Han script) <https://hosted.weblate.org/projects/f-droid/fdroidserver/zh_Hans/>\n"
|
||||
|
@ -390,6 +390,11 @@ msgid "Can't build due to {} error while scanning"
|
|||
msgid_plural "Can't build due to {} errors while scanning"
|
||||
msgstr[0] "因扫描时的{}错误而无法构建"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "读取 {path} 失败:{error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1517,6 +1522,11 @@ msgstr "删除 {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "重命名文件名不符合 package.name_123.apk 的 APK 文件"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2036,6 +2046,10 @@ msgstr "使用 apksigner 验证包 {path}。"
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal 的 API 密钥无法用于上传大于 32MB 的文件,请使用 {url} 上传 {path}。"
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "警告元数据中可能存在的错误"
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: fdroidserver 0.9\n"
|
||||
"Report-Msgid-Bugs-To: https://gitlab.com/fdroid/fdroidserver/issues\n"
|
||||
"POT-Creation-Date: 2025-03-25 11:36+0100\n"
|
||||
"POT-Creation-Date: 2025-06-25 09:52+0200\n"
|
||||
"PO-Revision-Date: 2024-11-26 15:16+0000\n"
|
||||
"Last-Translator: Peter Dave Hello <hsu@peterdavehello.org>\n"
|
||||
"Language-Team: Chinese (Traditional Han script) <https://hosted.weblate.org/projects/f-droid/fdroidserver/zh_Hant/>\n"
|
||||
|
@ -362,6 +362,11 @@ msgid "Can't build due to {} error while scanning"
|
|||
msgid_plural "Can't build due to {} errors while scanning"
|
||||
msgstr[0] "掃描時由於 {} 出錯,無法進行編譯"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, fuzzy, python-brace-format
|
||||
msgid "Cannot read {path}: {error}"
|
||||
msgstr "讀取 {path} 失敗:錯誤訊息{error}"
|
||||
|
||||
#: ../fdroidserver/rewritemeta.py
|
||||
#, python-brace-format
|
||||
msgid "Cannot rewrite \"{path}\""
|
||||
|
@ -1509,6 +1514,11 @@ msgstr "正在移除 {path}\""
|
|||
msgid "Rename APK files that do not match package.name_123.apk"
|
||||
msgstr "為不符合 package.name_123.apk 格式的 APK 檔案更名"
|
||||
|
||||
#: ../fdroidserver/common.py
|
||||
#, python-brace-format
|
||||
msgid "RepoType {type} is deprecated, please switch to git."
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
#, python-brace-format
|
||||
msgid "Resigning {apkfilename} with provided debug.keystore"
|
||||
|
@ -2045,6 +2055,10 @@ msgstr "正在使用 apksigner 驗證套件 {path}。"
|
|||
msgid "VirusTotal API key cannot upload files larger than 32MB, use {url} to upload {path}."
|
||||
msgstr "VirusTotal API key 無法上傳大於 32MB 的檔案, 選擇使用 {url} 來上傳檔案 {path} 。"
|
||||
|
||||
#: ../fdroidserver/nightly.py
|
||||
msgid "WARNING: only public git repos are supported!"
|
||||
msgstr ""
|
||||
|
||||
#: ../fdroidserver/__main__.py
|
||||
msgid "Warn about possible metadata errors"
|
||||
msgstr "關於中介資料可能錯誤的警告"
|
||||
|
|
|
@ -30,7 +30,6 @@ force-exclude = '''(
|
|||
| examples/fdroid_exportkeystore\.py
|
||||
| examples/fdroid_fetchsrclibs\.py
|
||||
| examples/fdroid_nitrokeyimport\.py
|
||||
| fdroidserver/__init__\.py
|
||||
| fdroidserver/__main__\.py
|
||||
| fdroidserver/apksigcopier\.py
|
||||
| fdroidserver/looseversion\.py
|
||||
|
|
|
@ -39,7 +39,3 @@ Tracking:
|
|||
description: This app tracks and reports your activity
|
||||
icon: ic_antifeature_tracking.xml
|
||||
name: Tracking
|
||||
UpstreamNonFree:
|
||||
description: The upstream source code is not entirely Free
|
||||
icon: ic_antifeature_upstreamnonfree.xml
|
||||
name: Upstream Non-Free
|
||||
|
|
|
@ -38,7 +38,3 @@ Tracking:
|
|||
description: Diese App verfolgt und versendet Ihre Aktivitäten
|
||||
icon: ic_antifeature_tracking.xml
|
||||
name: Tracking
|
||||
UpstreamNonFree:
|
||||
description: Der Originalcode ist nicht völlig quelloffen
|
||||
icon: ic_antifeature_upstreamnonfree.xml
|
||||
name: Originalcode nicht-quelloffen
|
||||
|
|
|
@ -37,7 +37,3 @@ Tracking:
|
|||
description: این کاره، فعّالیتتان را ردیابی و گزارش میکند
|
||||
icon: ic_antifeature_tracking.xml
|
||||
name: ردیابی
|
||||
UpstreamNonFree:
|
||||
description: کد مبدأ بالادستی کاملاً آزاد نیست
|
||||
icon: ic_antifeature_upstreamnonfree.xml
|
||||
name: بالادست ناآزاد
|
||||
|
|
|
@ -38,7 +38,3 @@ Tracking:
|
|||
description: Aplicația îți înregistrează și raportează activitatea undeva
|
||||
icon: ic_antifeature_tracking.xml
|
||||
name: Urmărire
|
||||
UpstreamNonFree:
|
||||
description: Codul sursa originar nu este în totalitatea lui software liber
|
||||
icon: ic_antifeature_upstreamnonfree.xml
|
||||
name: Surse ne-libere
|
||||
|
|
|
@ -37,7 +37,3 @@ Tracking:
|
|||
description: 此应用会记录并报告你的活动
|
||||
icon: ic_antifeature_tracking.xml
|
||||
name: 跟踪用户
|
||||
UpstreamNonFree:
|
||||
description: 上游源代码不是完全自由的
|
||||
icon: ic_antifeature_upstreamnonfree.xml
|
||||
name: 上游代码非自由
|
||||
|
|
|
@ -25,7 +25,6 @@ import sys
|
|||
from argparse import ArgumentParser
|
||||
|
||||
import git
|
||||
|
||||
import yaml
|
||||
|
||||
localmodule = os.path.realpath(
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue