forked from Plemya-x/ALR
		
	chore: remove legacy translation system
This commit is contained in:
		| @@ -28,10 +28,8 @@ import ( | ||||
| 	"github.com/AlecAivazis/survey/v2" | ||||
| 	"github.com/leonelquinteros/gotext" | ||||
|  | ||||
| 	"gitea.plemya-x.ru/Plemya-x/ALR/internal/config" | ||||
| 	"gitea.plemya-x.ru/Plemya-x/ALR/internal/db" | ||||
| 	"gitea.plemya-x.ru/Plemya-x/ALR/internal/pager" | ||||
| 	"gitea.plemya-x.ru/Plemya-x/ALR/internal/translations" | ||||
| ) | ||||
|  | ||||
| // YesNoPrompt asks the user a yes or no question, using def as the default answer | ||||
| @@ -40,7 +38,7 @@ func YesNoPrompt(ctx context.Context, msg string, interactive, def bool) (bool, | ||||
| 		var answer bool | ||||
| 		err := survey.AskOne( | ||||
| 			&survey.Confirm{ | ||||
| 				Message: translations.Translator(ctx).TranslateTo(msg, config.Language(ctx)), | ||||
| 				Message: msg, | ||||
| 				Default: def, | ||||
| 			}, | ||||
| 			&answer, | ||||
| @@ -59,8 +57,7 @@ func PromptViewScript(ctx context.Context, script, name, style string, interacti | ||||
| 		return nil | ||||
| 	} | ||||
|  | ||||
| 	scriptPrompt := translations.Translator(ctx).TranslateTo("Would you like to view the build script for", config.Language(ctx)) + " " + name | ||||
| 	view, err := YesNoPrompt(ctx, scriptPrompt, interactive, false) | ||||
| 	view, err := YesNoPrompt(ctx, gotext.Get("Would you like to view the build script for %s", name), interactive, false) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| @@ -71,7 +68,7 @@ func PromptViewScript(ctx context.Context, script, name, style string, interacti | ||||
| 			return err | ||||
| 		} | ||||
|  | ||||
| 		cont, err := YesNoPrompt(ctx, "Would you still like to continue?", interactive, false) | ||||
| 		cont, err := YesNoPrompt(ctx, gotext.Get("Would you still like to continue?"), interactive, false) | ||||
| 		if err != nil { | ||||
| 			return err | ||||
| 		} | ||||
| @@ -135,7 +132,7 @@ func PkgPrompt(ctx context.Context, options []db.Package, verb string, interacti | ||||
|  | ||||
| 	prompt := &survey.Select{ | ||||
| 		Options: names, | ||||
| 		Message: translations.Translator(ctx).TranslateTo("Choose which package to "+verb, config.Language(ctx)), | ||||
| 		Message: gotext.Get("Choose which package to %s", verb), | ||||
| 	} | ||||
|  | ||||
| 	var choice int | ||||
| @@ -156,7 +153,7 @@ func ChooseOptDepends(ctx context.Context, options []string, verb string, intera | ||||
|  | ||||
| 	prompt := &survey.MultiSelect{ | ||||
| 		Options: options, | ||||
| 		Message: translations.Translator(ctx).TranslateTo("Choose which optional package(s) to install", config.Language(ctx)), | ||||
| 		Message: gotext.Get("Choose which optional package(s) to install"), | ||||
| 	} | ||||
|  | ||||
| 	var choices []int | ||||
|   | ||||
| @@ -219,7 +219,7 @@ func Download(ctx context.Context, opts Options) (err error) { | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	slog.Info("Downloading source", "source", opts.Name, "downloader", d.Name()) | ||||
| 	slog.Info(gotext.Get("Downloading source"), "source", opts.Name, "downloader", d.Name()) | ||||
|  | ||||
| 	cacheDir, err = dc.New(ctx, opts.URL) | ||||
| 	if err != nil { | ||||
|   | ||||
| @@ -105,14 +105,30 @@ msgstr "" | ||||
| msgid "Error removing packages" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:80 | ||||
| #: internal/cliutils/prompt.go:60 | ||||
| msgid "Would you like to view the build script for %s" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:71 | ||||
| msgid "Would you still like to continue?" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:77 | ||||
| msgid "User chose not to continue after reading script" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:114 | ||||
| #: internal/cliutils/prompt.go:111 | ||||
| msgid "Error prompting for choice of package" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:135 | ||||
| msgid "Choose which package to %s" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:156 | ||||
| msgid "Choose which optional package(s) to install" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/config/config.go:63 | ||||
| msgid "Error opening config file, using defaults" | ||||
| msgstr "" | ||||
| @@ -178,12 +194,12 @@ msgstr "" | ||||
| msgid "Source updated and linked to destination" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/logger/log.go:44 | ||||
| msgid "ERROR" | ||||
| #: internal/dl/dl.go:222 | ||||
| msgid "Downloading source" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/translations/translations.go:52 | ||||
| msgid "Error creating new translator" | ||||
| #: internal/logger/log.go:44 | ||||
| msgid "ERROR" | ||||
| msgstr "" | ||||
|  | ||||
| #: list.go:53 | ||||
| @@ -224,6 +240,12 @@ msgstr "" | ||||
| msgid "Compressing package" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:312 | ||||
| msgid "" | ||||
| "Your system's CPU architecture doesn't match this package. Do you want to " | ||||
| "build anyway?" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:323 | ||||
| msgid "This package is already installed" | ||||
| msgstr "" | ||||
| @@ -260,6 +282,10 @@ msgstr "" | ||||
| msgid "AutoReq is not implemented for this package format, so it's skiped" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:653 | ||||
| msgid "Would you like to remove the build dependencies?" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:759 | ||||
| msgid "The checksums array must be the same length as sources" | ||||
| msgstr "" | ||||
|   | ||||
| @@ -1,174 +0,0 @@ | ||||
| # This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. | ||||
| # It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов. | ||||
| # | ||||
| # ALR - Any Linux Repository | ||||
| # Copyright (C) 2025 Евгений Храмов | ||||
| # | ||||
| # This program is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
|  | ||||
| [[translation]] | ||||
| id = 1228660974 | ||||
| value = 'Pulling repository' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2779805870 | ||||
| value = 'Repository up to date' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1433222829 | ||||
| value = 'Would you like to view the build script for' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2470847050 | ||||
| value = 'Failed to prompt user to view build script' | ||||
|  | ||||
| [[translation]] | ||||
| id = 855659503 | ||||
| value = 'Would you still like to continue?' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1997041569 | ||||
| value = 'User chose not to continue after reading script' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2347700990 | ||||
| value = 'Building package' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2105058868 | ||||
| value = 'Downloading sources' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1884485082 | ||||
| value = 'Downloading source' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1519177982 | ||||
| value = 'Error building package' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2125220917 | ||||
| value = 'Choose which package(s) to install' | ||||
|  | ||||
| [[translation]] | ||||
| id = 812531604 | ||||
| value = 'Error prompting for choice of package' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1040982801 | ||||
| value = 'Updating version' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1014897988 | ||||
| value = 'Remove build dependencies?' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2205430948 | ||||
| value = 'Installing build dependencies' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2522710805 | ||||
| value = 'Installing dependencies' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3602138206 | ||||
| value = 'Error installing package' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2235794125 | ||||
| value = 'Would you like to remove build dependencies?' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2562049386 | ||||
| value = "Your system's CPU architecture doesn't match this package. Do you want to build anyway?" | ||||
|  | ||||
| [[translation]] | ||||
| id = 4006393493 | ||||
| value = 'The checksums array must be the same length as sources' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3759891273 | ||||
| value = 'The package() function is required' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1057080231 | ||||
| value = 'Executing package()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2687735200 | ||||
| value = 'Executing prepare()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 535572372 | ||||
| value = 'Executing version()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 436644691 | ||||
| value = 'Executing build()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1393316459 | ||||
| value = 'This package is already installed' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1267660189 | ||||
| value = 'Source can be updated, updating if required' | ||||
|  | ||||
| [[translation]] | ||||
| id = 21753247 | ||||
| value = 'Source found in cache, linked to destination' | ||||
|  | ||||
| [[translation]] | ||||
| id = 257354570 | ||||
| value = 'Compressing package' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2952487371 | ||||
| value = 'Building package metadata' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3121791194 | ||||
| value = 'Running ALR as root is forbidden as it may cause catastrophic damage to your system' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1256604213 | ||||
| value = 'Waiting for torrent metadata' | ||||
|  | ||||
| [[translation]] | ||||
| id = 432261354 | ||||
| value = 'Downloading torrent file' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1579384326 | ||||
| value = 'name' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3206337475 | ||||
| value = 'version' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1810056261 | ||||
| value = 'new' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1602912115 | ||||
| value = 'source' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2363381545 | ||||
| value = 'type' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3419504365 | ||||
| value = 'downloader' | ||||
| @@ -1,170 +0,0 @@ | ||||
| # This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. | ||||
| # It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов. | ||||
| # | ||||
| # ALR - Any Linux Repository | ||||
| # Copyright (C) 2025 Евгений Храмов | ||||
| # | ||||
| # This program is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
|  | ||||
| [[translation]] | ||||
| id = 1228660974 | ||||
| value = 'Скачивание репозитория' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2779805870 | ||||
| value = 'Репозиторий уже обновлен' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1433222829 | ||||
| value = 'Показать скрипт для пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2470847050 | ||||
| value = 'Не удалось предложить просмотреть скрипт' | ||||
|  | ||||
| [[translation]] | ||||
| id = 855659503 | ||||
| value = 'Продолжить?' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1997041569 | ||||
| value = 'Пользователь решил не продолжать после просмотра скрипта' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2347700990 | ||||
| value = 'Сборка пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2105058868 | ||||
| value = 'Скачивание файлов' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1884485082 | ||||
| value = 'Скачивание источника' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1519177982 | ||||
| value = 'Ошибка при сборке пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2125220917 | ||||
| value = 'Выберите, какие пакеты установить' | ||||
|  | ||||
| [[translation]] | ||||
| id = 812531604 | ||||
| value = 'Ошибка при запросе выбора пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1040982801 | ||||
| value = 'Обновление версии' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2235794125 | ||||
| value = 'Удалить зависимости сборки?' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2205430948 | ||||
| value = 'Установка зависимостей сборки' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2522710805 | ||||
| value = 'Установка зависимостей' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3602138206 | ||||
| value = 'Ошибка при установке пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1057080231 | ||||
| value = 'Вызов функции package()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2687735200 | ||||
| value = 'Вызов функции prepare()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 535572372 | ||||
| value = 'Вызов функции version()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 436644691 | ||||
| value = 'Вызов функции build()' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2562049386 | ||||
| value = "Архитектура процессора вашей системы не соответствует этому пакету. Продолжать несмотря на это?" | ||||
|  | ||||
| [[translation]] | ||||
| id = 3759891273 | ||||
| value = 'Функция package() необходима' | ||||
|  | ||||
| [[translation]] | ||||
| id = 4006393493 | ||||
| value = 'Массив checksums должен быть той же длины, что и sources' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1393316459 | ||||
| value = 'Этот пакет уже установлен' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1267660189 | ||||
| value = 'Источник может быть обновлен, если требуется, обновляем' | ||||
|  | ||||
| [[translation]] | ||||
| id = 21753247 | ||||
| value = 'Источник найден в кэше' | ||||
|  | ||||
| [[translation]] | ||||
| id = 257354570 | ||||
| value = 'Сжатие пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2952487371 | ||||
| value = 'Создание метаданных пакета' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3121791194 | ||||
| value = 'Запуск ALR от имени root запрещен, так как это может привести к катастрофическому повреждению вашей системы' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1256604213 | ||||
| value = 'Ожидание метаданных торрента' | ||||
|  | ||||
| [[translation]] | ||||
| id = 432261354 | ||||
| value = 'Скачивание торрент-файла' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1579384326 | ||||
| value = 'название' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3206337475 | ||||
| value = 'версия' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1810056261 | ||||
| value = 'новая' | ||||
|  | ||||
| [[translation]] | ||||
| id = 1602912115 | ||||
| value = 'источник' | ||||
|  | ||||
| [[translation]] | ||||
| id = 2363381545 | ||||
| value = 'вид' | ||||
|  | ||||
| [[translation]] | ||||
| id = 3419504365 | ||||
| value = 'протокол-скачивание' | ||||
| @@ -3,16 +3,16 @@ | ||||
| # | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: \n" | ||||
| "PO-Revision-Date: 2025-01-22 14:23+0300\n" | ||||
| "Project-Id-Version: unnamed project\n" | ||||
| "PO-Revision-Date: 2025-01-22 16:50+0300\n" | ||||
| "Last-Translator: Maxim Slipenko <maks1ms@alt-gnome.ru>\n" | ||||
| "Language-Team: Russian\n" | ||||
| "Language: ru\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" | ||||
| "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" | ||||
| "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " | ||||
| "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" | ||||
| "X-Generator: Gtranslator 47.1\n" | ||||
|  | ||||
| #: build.go:69 | ||||
| @@ -25,7 +25,7 @@ msgstr "" | ||||
|  | ||||
| #: build.go:86 | ||||
| msgid "Error building package" | ||||
| msgstr "" | ||||
| msgstr "Ошибка при сборке пакета" | ||||
|  | ||||
| #: build.go:92 | ||||
| msgid "Error getting working directory" | ||||
| @@ -111,12 +111,28 @@ msgstr "" | ||||
| msgid "Error removing packages" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:80 | ||||
| #: internal/cliutils/prompt.go:60 | ||||
| msgid "Would you like to view the build script for %s" | ||||
| msgstr "Показать скрипт для пакета %s" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:71 | ||||
| msgid "Would you still like to continue?" | ||||
| msgstr "Продолжить?" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:77 | ||||
| msgid "User chose not to continue after reading script" | ||||
| msgstr "Пользователь решил не продолжать после просмотра скрипта" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:111 | ||||
| msgid "Error prompting for choice of package" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:114 | ||||
| msgid "Error prompting for choice of package" | ||||
| #: internal/cliutils/prompt.go:135 | ||||
| msgid "Choose which package to %s" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/cliutils/prompt.go:156 | ||||
| msgid "Choose which optional package(s) to install" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/config/config.go:63 | ||||
| @@ -184,14 +200,14 @@ msgstr "" | ||||
| msgid "Source updated and linked to destination" | ||||
| msgstr "" | ||||
|  | ||||
| #: internal/dl/dl.go:222 | ||||
| msgid "Downloading source" | ||||
| msgstr "Скачивание источника" | ||||
|  | ||||
| #: internal/logger/log.go:44 | ||||
| msgid "ERROR" | ||||
| msgstr "ОШИБКА" | ||||
|  | ||||
| #: internal/translations/translations.go:52 | ||||
| msgid "Error creating new translator" | ||||
| msgstr "" | ||||
|  | ||||
| #: list.go:53 | ||||
| msgid "Error initialization database" | ||||
| msgstr "" | ||||
| @@ -212,15 +228,15 @@ msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:104 | ||||
| msgid "Failed to prompt user to view build script" | ||||
| msgstr "" | ||||
| msgstr "Не удалось предложить просмотреть скрипт" | ||||
|  | ||||
| #: pkg/build/build.go:108 | ||||
| msgid "Building package" | ||||
| msgstr "" | ||||
| msgstr "Сборка пакета" | ||||
|  | ||||
| #: pkg/build/build.go:152 | ||||
| msgid "Downloading sources" | ||||
| msgstr "" | ||||
| msgstr "Скачивание файлов" | ||||
|  | ||||
| #: pkg/build/build.go:164 | ||||
| msgid "Building package metadata" | ||||
| @@ -230,6 +246,12 @@ msgstr "" | ||||
| msgid "Compressing package" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:312 | ||||
| msgid "" | ||||
| "Your system's CPU architecture doesn't match this package. Do you want to " | ||||
| "build anyway?" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:323 | ||||
| msgid "This package is already installed" | ||||
| msgstr "" | ||||
| @@ -266,6 +288,10 @@ msgstr "" | ||||
| msgid "AutoReq is not implemented for this package format, so it's skiped" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:653 | ||||
| msgid "Would you like to remove the build dependencies?" | ||||
| msgstr "" | ||||
|  | ||||
| #: pkg/build/build.go:759 | ||||
| msgid "The checksums array must be the same length as sources" | ||||
| msgstr "" | ||||
| @@ -292,11 +318,11 @@ msgstr "" | ||||
|  | ||||
| #: pkg/repos/pull.go:75 | ||||
| msgid "Pulling repository" | ||||
| msgstr "" | ||||
| msgstr "Скачивание репозитория" | ||||
|  | ||||
| #: pkg/repos/pull.go:99 | ||||
| msgid "Repository up to date" | ||||
| msgstr "" | ||||
| msgstr "Репозиторий уже обновлен" | ||||
|  | ||||
| #: pkg/repos/pull.go:156 | ||||
| msgid "Git repository does not appear to be a valid ALR repo" | ||||
|   | ||||
| @@ -20,47 +20,15 @@ | ||||
| package translations | ||||
|  | ||||
| import ( | ||||
| 	"context" | ||||
| 	"embed" | ||||
| 	"io/fs" | ||||
| 	"log/slog" | ||||
| 	"os" | ||||
| 	"path" | ||||
| 	"sync" | ||||
|  | ||||
| 	"github.com/jeandeaual/go-locale" | ||||
| 	"github.com/leonelquinteros/gotext" | ||||
| 	"go.elara.ws/logger" | ||||
| 	"go.elara.ws/translate" | ||||
| 	"golang.org/x/text/language" | ||||
| ) | ||||
|  | ||||
| //go:embed files | ||||
| var translationFS embed.FS | ||||
|  | ||||
| var ( | ||||
| 	mu         sync.Mutex | ||||
| 	translator *translate.Translator | ||||
| ) | ||||
|  | ||||
| func Translator(ctx context.Context) *translate.Translator { | ||||
| 	mu.Lock() | ||||
| 	defer mu.Unlock() | ||||
| 	if translator == nil { | ||||
| 		t, err := translate.NewFromFS(translationFS) | ||||
| 		if err != nil { | ||||
| 			slog.Error(gotext.Get("Error creating new translator"), "err", err) | ||||
| 			os.Exit(1) | ||||
| 		} | ||||
| 		translator = &t | ||||
| 	} | ||||
| 	return translator | ||||
| } | ||||
|  | ||||
| func NewLogger(ctx context.Context, l logger.Logger, lang language.Tag) *translate.TranslatedLogger { | ||||
| 	return translate.NewLogger(l, *Translator(ctx), lang) | ||||
| } | ||||
|  | ||||
| //go:embed po | ||||
| var poFS embed.FS | ||||
|  | ||||
|   | ||||
| @@ -309,7 +309,7 @@ func prepareDirs(dirs types.Directories) error { | ||||
| // Функция performChecks проверяет различные аспекты в системе, чтобы убедиться, что пакет может быть установлен. | ||||
| func performChecks(ctx context.Context, vars *types.BuildVars, interactive bool, installed map[string]string) (bool, error) { | ||||
| 	if !cpu.IsCompatibleWith(cpu.Arch(), vars.Architectures) { // Проверяем совместимость архитектуры | ||||
| 		cont, err := cliutils.YesNoPrompt(ctx, "Your system's CPU architecture doesn't match this package. Do you want to build anyway?", interactive, true) | ||||
| 		cont, err := cliutils.YesNoPrompt(ctx, gotext.Get("Your system's CPU architecture doesn't match this package. Do you want to build anyway?"), interactive, true) | ||||
| 		if err != nil { | ||||
| 			return false, err | ||||
| 		} | ||||
| @@ -650,7 +650,7 @@ func buildContents(vars *types.BuildVars, dirs types.Directories) ([]*files.Cont | ||||
| // установленные для сборки. Если да, использует менеджер пакетов для их удаления. | ||||
| func removeBuildDeps(ctx context.Context, buildDeps []string, opts types.BuildOpts) error { | ||||
| 	if len(buildDeps) > 0 { | ||||
| 		remove, err := cliutils.YesNoPrompt(ctx, "Would you like to remove the build dependencies?", opts.Interactive, false) | ||||
| 		remove, err := cliutils.YesNoPrompt(ctx, gotext.Get("Would you like to remove the build dependencies?"), opts.Interactive, false) | ||||
| 		if err != nil { | ||||
| 			return err | ||||
| 		} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user