From b49e59b45c1587e3f884359208915ad649447bdd Mon Sep 17 00:00:00 2001
From: Riceneeder <845541909@qq.com>
Date: Tue, 31 Jan 2023 16:53:01 +0800
Subject: [PATCH] =?UTF-8?q?update=EF=BC=9Ai18n?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
yoyo-getfastmirror/config.config | 165 ------------------
yoyo-getfastmirror/coverage_badge.svg | 20 ---
yoyo-getfastmirror/lib/i18n.dart | 40 +++++
yoyo-getfastmirror/lib/i18n/lang.i18n.dart | 23 +++
.../lib/i18n/lang_zh-CN.i18n.dart | 19 ++
.../lib/src/command_runner.dart | 17 +-
.../src/commands/getfastmirror_command.dart | 17 +-
.../Ubuntu/ubuntu_get_mirro_list.dart | 0
.../Yoyo/yoyo_get_mirro_list.dart | 0
.../Yoyo/yoyo_is_exist.dart | 0
.../getfastmirror.dart | 19 +-
.../utils/apt_fast_config_template.dart | 0
.../utils/generate_apt_fast_config_file.dart | 2 +-
.../utils/network_test.dart | 0
.../utils/test_mirro_speed.dart | 5 +-
.../utils/write_mirror_into_file.dart | 5 +-
yoyo-getfastmirror/lib/src/version.dart | 2 +-
yoyo-getfastmirror/pubspec.yaml | 2 +-
18 files changed, 117 insertions(+), 219 deletions(-)
delete mode 100644 yoyo-getfastmirror/config.config
delete mode 100644 yoyo-getfastmirror/coverage_badge.svg
create mode 100644 yoyo-getfastmirror/lib/i18n.dart
create mode 100644 yoyo-getfastmirror/lib/i18n/lang.i18n.dart
create mode 100644 yoyo-getfastmirror/lib/i18n/lang_zh-CN.i18n.dart
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/Ubuntu/ubuntu_get_mirro_list.dart (100%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/Yoyo/yoyo_get_mirro_list.dart (100%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/Yoyo/yoyo_is_exist.dart (100%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/getfastmirror.dart (85%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/utils/apt_fast_config_template.dart (100%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/utils/generate_apt_fast_config_file.dart (96%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/utils/network_test.dart (100%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/utils/test_mirro_speed.dart (87%)
rename yoyo-getfastmirror/lib/src/commands/modules/{getfastmirro => getfastmirror}/utils/write_mirror_into_file.dart (78%)
diff --git a/yoyo-getfastmirror/config.config b/yoyo-getfastmirror/config.config
deleted file mode 100644
index 0007cd1..0000000
--- a/yoyo-getfastmirror/config.config
+++ /dev/null
@@ -1,165 +0,0 @@
-###################################################################
-# CONFIGURATION OPTIONS
-###################################################################
-# Every item has a default value besides MIRRORS (which is unset).
-
-# Use aptitude, apt-get, or apt?
-# Note that apt-get is used as a fallback for outputting the
-# package URI list for e.g. aptitude, which can't do this
-# Optionally add the FULLPATH to apt-get or apt-rpm or aptitude
-# e.g. /usr/bin/aptitude
-#
-# Default: apt-get
-#
-_APTMGR=apt
-
-if grep -Eqi "linuxmint" /etc/os-release;then
-_APTMGR=apt-get
-fi
-
-if [ -x "$(command -v oyo)" ]; then
-_APTMGR=apt-get
-fi
-
-####
-#
-# UOS sources auth config
-#
-#
-if grep -Eqi "UnionTech" /etc/issue || grep -Eq "UnionTech" /etc/*-release;then
-AUTH_UOS_USER="uos-https://license.chinauos.com-apt"
-AUTH_UOS_PASSWD="`cat /etc/apt/auth.conf.d/uos.conf | grep home-packages.chinauos.com`"
-AUTH_UOS_PASSWD=`echo ${AUTH_UOS_PASSWD#*password }`
-
-fi
-##### UOS自动读取账号密码以实现使用aptss来加速下载
-
-# Enable DOWNLOADBEFORE to suppress apt-fast confirmation dialog and download
-# packages directly.
-#
-# Default: dialog enabled
-#
-DOWNLOADBEFORE=true
-
-
-# Choose mirror list to speed up downloads from same archive. To select some
-# mirrors take a look at your distribution's archive mirror lists.
-# Debian: http://www.debian.org/mirror/list
-# Ubuntu: https://launchpad.net/ubuntu/+archivemirrors
-#
-# It is required to add mirrors in the sources.list to this array as well, so
-# apt-fast can destinguish between different distributions.
-#
-# Examples:
-#
-# Different distributions (as in operating systems):
-#
-# sources.list:
-# deb http://deb.debian.org/debian/ unstable main non-free contrib
-# deb http://de.archive.ubuntu.com/ubuntu/ bionic main universe
-#
-# apt-fast.conf:
-# MIRRORS=( 'http://deb.debian.org/debian','http://ftp.debian.org/debian,http://ftp2.de.debian.org/debian,http://ftp.de.debian.org/debian,ftp://ftp.uni-kl.de/debian'
-# 'http://archive.ubuntu.com/ubuntu,http://de.archive.ubuntu.com/ubuntu,http://ftp.halifax.rwth-aachen.de/ubuntu,http://ftp.uni-kl.de/pub/linux/ubuntu,http://mirror.informatik.uni-mannheim.de/pub/linux/distributions/ubuntu/' )
-#
-#
-# Single distribution:
-#
-# sources.list:
-# deb http://fr.archive.ubuntu.com/ubuntu/ bionic main
-# deb http://fr.archive.ubuntu.com/ubuntu/ artful main
-#
-# apt-fast.conf:
-# MIRRORS=( 'http://fr.archive.ubuntu.com/ubuntu,http://bouyguestelecom.ubuntu.lafibre.info/ubuntu,http://mirror.ovh.net/ubuntu,http://ubuntu-archive.mirrors.proxad.net/ubuntu' )
-#
-# Default: disabled
-#
-MIRRORS=( 'https://code.gitlink.org.cn/yoyo-os/packages/raw/branch/master, https://packages.yzzi.icu/, http://mirror2.inuyasha.love/yoyo, https://yoyo-os.github.io/packages' )
-
-
-# Maximum number of connections
-# You can use this value in _DOWNLOADER command. Escape with ${}: ${_MAXNUM}
-#
-# Default: 5
-#
-_MAXNUM=16
-
-
-# Maximum number of connections per server
-# Default: 10
-#
-_MAXCONPERSRV=1
-
-
-
-
-
-# Split size i.e. size of each piece
-# Possible Values: 1M-1024M
-#
-_MINSPLITSZ=1M
-
-
-# Piece selection algorithm to use
-# Available values are: default, inorder, geom
-# default: selects piece so that it reduces the number of establishing connection, reasonable for most cases
-# inorder: selects pieces in sequential order starting from first piece
-# geom: selects piece which has minimum index like inorder, but it exponentially increasingly keeps space from previously selected pieces
-#
-_PIECEALGO=default
-
-
-
-# Downloadmanager listfile
-# You can use this value in _DOWNLOADER command. Escape with ${}: ${DLLIST}
-#
-# Default: /tmp/apt-fast.list
-#
-DLLIST='/tmp/apt-fast.list'
-
-
-# Download command to use. Temporary download list is designed for aria2. But
-# you can choose another download command or download manager. It has to
-# support following input file syntax (\t is tab character):
-#
-# # Comment
-# MIRROR1\tMIRROR2\tMIRROR3...
-# out=FILENAME1
-# MIRROR1\tMIRROR2\tMIRROR3...
-# out=FILENAME2
-# ...
-#
-# Examples:
-# aria2c with a proxy (set username, proxy, ip and password!)
-# _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} --http-proxy=http://username:password@proxy_ip:proxy_port -i ${DLLIST}'
-#
-# Default: _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0'
-#
-_DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0 --http-user ${AUTH_UOS_USER} --http-passwd ${AUTH_UOS_PASSWD}'
-
-
-# Download temp folder for Downloadmanager
-# example /tmp/apt-fast. Standard is /var/cache/apt-fast
-#
-# Default: /var/cache/apt/apt-fast
-#
-DLDIR='/var/cache/apt/apt-fast'
-
-
-# APT archives cache directory
-#
-# Default /var/cache/apt/archives
-# (APT configuration items Dir::Cache and Dir::Cache::archives)
-#
-APTCACHE='/var/cache/apt/archives'
-
-
-# apt-fast colors
-# Colors are disabled when not using a terminal.
-#
-# Default colors are:
-# cGreen='\e[0;32m'
-# cRed='\e[0;31m'
-# cBlue='\e[0;34m'
-# endColor='\e[0m'
-
diff --git a/yoyo-getfastmirror/coverage_badge.svg b/yoyo-getfastmirror/coverage_badge.svg
deleted file mode 100644
index 88bfadf..0000000
--- a/yoyo-getfastmirror/coverage_badge.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-
\ No newline at end of file
diff --git a/yoyo-getfastmirror/lib/i18n.dart b/yoyo-getfastmirror/lib/i18n.dart
new file mode 100644
index 0000000..8980bc5
--- /dev/null
+++ b/yoyo-getfastmirror/lib/i18n.dart
@@ -0,0 +1,40 @@
+// ignore_for_file: avoid_dynamic_calls
+
+import 'dart:io';
+import 'package:yoyo_get_fast_mirror/i18n/lang.i18n.dart';
+import 'package:yoyo_get_fast_mirror/i18n/lang_zh-CN.i18n.dart';
+
+final local = Platform.environment['LANG'] == 'zh_CN.utf8';
+final lang = local ? zhCN : enUS;
+
+class Error {
+ static String network =
+ lang['GetfastmirroCommand']['Error']['NetWork'] as String;
+ static String generateConfig =
+ lang['GetfastmirroCommand']['Error']['GenerateConfig'] as String;
+}
+
+class GetfastmirroCommand {
+ static String description =
+ lang['GetfastmirroCommand']['Description'] as String;
+ static String flagOnlyTestHlep =
+ lang['GetfastmirroCommand']['FlagOnlyTestHlep'] as String;
+ static String runOutPut = lang['GetfastmirroCommand']['RunOutPut'] as String;
+ static String writting = lang['GetfastmirroCommand']['Writting'] as String;
+ static String done = lang['GetfastmirroCommand']['Done'] as String;
+ static String speedTest = lang['GetfastmirroCommand']['SpeedTest'] as String;
+ static String speedResult =
+ lang['GetfastmirroCommand']['SpeedResult'] as String;
+ static Error error = Error();
+}
+
+class Lang {
+ static String description = lang['Description'] as String;
+ static String flagVersionHlep =lang['FlagVersionHlep'] as String;
+ static String flagVerboseHlep =lang['FlagVerboseHlep'] as String;
+ static String argumentinformation =lang['Argumentinformation'] as String;
+ static String topLevelOptions =lang['TopLevelOptions'] as String;
+ static String command =lang['Command'] as String;
+ static String commandOptions =lang['CommandOptions'] as String;
+ static GetfastmirroCommand getfastmirroCommand = GetfastmirroCommand();
+}
diff --git a/yoyo-getfastmirror/lib/i18n/lang.i18n.dart b/yoyo-getfastmirror/lib/i18n/lang.i18n.dart
new file mode 100644
index 0000000..5823321
--- /dev/null
+++ b/yoyo-getfastmirror/lib/i18n/lang.i18n.dart
@@ -0,0 +1,23 @@
+Map enUS = {
+ 'Description': 'A Very Good aptss created by Yoyo.',
+ 'FlagVersionHlep': 'Print the current version.',
+ 'FlagVerboseHlep': 'Noisy logging, including all shell commands executed.',
+ 'Argumentinformation': 'Argument information:',
+ 'TopLevelOptions': ' Top level options:',
+ 'Command': ' Command:',
+ 'CommandOptions': ' Command options:',
+ 'GetfastmirroCommand': {
+ 'Description': 'Get fastest mirror and generate config file for oyo',
+ 'FlagOnlyTestHlep': "Only test mirrors' speed",
+ 'RunOutPut':
+ 'Get the fastest mirror which will be write into source file\nAnd generate a config file for oyo',
+ 'Error': {
+ 'NetWork': 'NetWork Error',
+ 'GenerateConfig': 'Generate Config File Error'
+ },
+ 'Writting': 'Writting',
+ 'Done': 'Done',
+ 'SpeedTest': 'Speed Test......',
+ 'SpeedResult': 'Speed Result:'
+ }
+};
diff --git a/yoyo-getfastmirror/lib/i18n/lang_zh-CN.i18n.dart b/yoyo-getfastmirror/lib/i18n/lang_zh-CN.i18n.dart
new file mode 100644
index 0000000..9c0c093
--- /dev/null
+++ b/yoyo-getfastmirror/lib/i18n/lang_zh-CN.i18n.dart
@@ -0,0 +1,19 @@
+Map zhCN = {
+ 'Description': '一个Yoyo OS定制版aptss配置器',
+ 'FlagVersionHlep': '打印当前cli的版本',
+ 'FlagVerboseHlep': '啰嗦模式',
+ 'Argumentinformation': '参数信息:',
+ 'TopLevelOptions': ' 顶级选项:',
+ 'Command': ' 命令:',
+ 'CommandOptions': ' 命令选项:',
+ 'GetfastmirroCommand': {
+ 'Description': '切换最快的镜像源并为oyo生成配置文件',
+ 'FlagOnlyTestHlep': '只测试镜像源速度,不生成配置',
+ 'RunOutPut': '切换最快的镜像源并为oyo生成配置文件',
+ 'Error': {'NetWork': '网络错误', 'GenerateConfig': '生成文件失败'},
+ 'Writting': '写入中',
+ 'Done': '完成',
+ 'SpeedTest': '速度测试中......',
+ 'SpeedResult': '测速结果:'
+ }
+};
diff --git a/yoyo-getfastmirror/lib/src/command_runner.dart b/yoyo-getfastmirror/lib/src/command_runner.dart
index dcf533c..e2b62b9 100644
--- a/yoyo-getfastmirror/lib/src/command_runner.dart
+++ b/yoyo-getfastmirror/lib/src/command_runner.dart
@@ -1,12 +1,13 @@
import 'package:args/args.dart';
import 'package:args/command_runner.dart';
import 'package:mason_logger/mason_logger.dart';
+import 'package:yoyo_get_fast_mirror/i18n.dart';
import 'package:yoyo_get_fast_mirror/src/commands/commands.dart';
import 'package:yoyo_get_fast_mirror/src/version.dart';
const executableName = 'yoyo-getfastmirror';
const packageName = 'yoyo_get_fast_mirror';
-const description = 'A Very Good aptss created by Yoyo.';
+final description = Lang.description;
class YoyoGetFastMirrorCommandRunner extends CommandRunner {
/// {@macro yoyo_get_fast_mirror_command_runner}
@@ -20,15 +21,15 @@ class YoyoGetFastMirrorCommandRunner extends CommandRunner {
'version',
abbr: 'v',
negatable: false,
- help: 'Print the current version.',
+ help: Lang.flagVersionHlep,
)
..addFlag(
'verbose',
- help: 'Noisy logging, including all shell commands executed.',
+ help: Lang.flagVerboseHlep,
);
// Add sub commands
- addCommand(GetfastmirroCommand(logger: _logger));
+ addCommand(GetfastmirrorCommand(logger: _logger));
}
@override
@@ -67,8 +68,8 @@ class YoyoGetFastMirrorCommandRunner extends CommandRunner {
@override
Future runCommand(ArgResults topLevelResults) async {
_logger
- ..detail('Argument information:')
- ..detail(' Top level options:');
+ ..detail(Lang.argumentinformation)
+ ..detail(Lang.topLevelOptions);
for (final option in topLevelResults.options) {
if (topLevelResults.wasParsed(option)) {
_logger.detail(' - $option: ${topLevelResults[option]}');
@@ -77,8 +78,8 @@ class YoyoGetFastMirrorCommandRunner extends CommandRunner {
if (topLevelResults.command != null) {
final commandResult = topLevelResults.command!;
_logger
- ..detail(' Command: ${commandResult.name}')
- ..detail(' Command options:');
+ ..detail('${Lang.command} ${commandResult.name}')
+ ..detail(Lang.commandOptions);
for (final option in commandResult.options) {
if (commandResult.wasParsed(option)) {
_logger.detail(' - $option: ${commandResult[option]}');
diff --git a/yoyo-getfastmirror/lib/src/commands/getfastmirror_command.dart b/yoyo-getfastmirror/lib/src/commands/getfastmirror_command.dart
index f19ee9b..de406e3 100644
--- a/yoyo-getfastmirror/lib/src/commands/getfastmirror_command.dart
+++ b/yoyo-getfastmirror/lib/src/commands/getfastmirror_command.dart
@@ -1,22 +1,22 @@
import 'package:args/command_runner.dart';
import 'package:mason_logger/mason_logger.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/getfastmirror.dart';
+import 'package:yoyo_get_fast_mirror/i18n.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/getfastmirror.dart';
-class GetfastmirroCommand extends Command {
- GetfastmirroCommand({
+class GetfastmirrorCommand extends Command {
+ GetfastmirrorCommand({
required Logger logger,
}) : _logger = logger {
argParser.addFlag(
'only-test',
abbr: 'o',
- help: "Only test mirrors' speed",
+ help: GetfastmirroCommand.flagOnlyTestHlep,
negatable: false,
);
}
@override
- String get description =>
- 'Get fastest mirror and generate config file for oyo';
+ String get description => GetfastmirroCommand.description;
@override
String get name => 'getfastmirror';
@@ -25,10 +25,7 @@ class GetfastmirroCommand extends Command {
@override
Future run() async {
- final output = lightBlue.wrap('''
-Get the fastest mirror which will be write into source file
-And generate a config file for oyo
-''');
+ final output = lightBlue.wrap(GetfastmirroCommand.runOutPut);
_logger.info(output);
final onlyTest = argResults?['only-test'] == true;
final commandResult = await getFastMirror(onlyTest: onlyTest);
diff --git a/yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Ubuntu/ubuntu_get_mirro_list.dart b/yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Ubuntu/ubuntu_get_mirro_list.dart
similarity index 100%
rename from yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Ubuntu/ubuntu_get_mirro_list.dart
rename to yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Ubuntu/ubuntu_get_mirro_list.dart
diff --git a/yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Yoyo/yoyo_get_mirro_list.dart b/yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Yoyo/yoyo_get_mirro_list.dart
similarity index 100%
rename from yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Yoyo/yoyo_get_mirro_list.dart
rename to yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Yoyo/yoyo_get_mirro_list.dart
diff --git a/yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Yoyo/yoyo_is_exist.dart b/yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Yoyo/yoyo_is_exist.dart
similarity index 100%
rename from yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/Yoyo/yoyo_is_exist.dart
rename to yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/Yoyo/yoyo_is_exist.dart
diff --git a/yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/getfastmirror.dart b/yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/getfastmirror.dart
similarity index 85%
rename from yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/getfastmirror.dart
rename to yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/getfastmirror.dart
index 6e459e6..710d7a4 100644
--- a/yoyo-getfastmirror/lib/src/commands/modules/getfastmirro/getfastmirror.dart
+++ b/yoyo-getfastmirror/lib/src/commands/modules/getfastmirror/getfastmirror.dart
@@ -1,11 +1,12 @@
import 'package:mason_logger/mason_logger.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/Ubuntu/ubuntu_get_mirro_list.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/Yoyo/yoyo_get_mirro_list.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/Yoyo/yoyo_is_exist.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/utils/generate_apt_fast_config_file.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/utils/network_test.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/utils/test_mirro_speed.dart';
-import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirro/utils/write_mirror_into_file.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/Ubuntu/ubuntu_get_mirro_list.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/Yoyo/yoyo_get_mirro_list.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/Yoyo/yoyo_is_exist.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/utils/generate_apt_fast_config_file.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/utils/network_test.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/utils/test_mirro_speed.dart';
+import 'package:yoyo_get_fast_mirror/src/commands/modules/getfastmirror/utils/write_mirror_into_file.dart';
+import 'package:yoyo_get_fast_mirror/i18n.dart';
final Map status = {};
final Logger _logger = Logger();
@@ -17,7 +18,7 @@ Future