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/AlecAivazis/survey/v2" | ||||||
| 	"github.com/leonelquinteros/gotext" | 	"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/db" | ||||||
| 	"gitea.plemya-x.ru/Plemya-x/ALR/internal/pager" | 	"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 | // 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 | 		var answer bool | ||||||
| 		err := survey.AskOne( | 		err := survey.AskOne( | ||||||
| 			&survey.Confirm{ | 			&survey.Confirm{ | ||||||
| 				Message: translations.Translator(ctx).TranslateTo(msg, config.Language(ctx)), | 				Message: msg, | ||||||
| 				Default: def, | 				Default: def, | ||||||
| 			}, | 			}, | ||||||
| 			&answer, | 			&answer, | ||||||
| @@ -59,8 +57,7 @@ func PromptViewScript(ctx context.Context, script, name, style string, interacti | |||||||
| 		return nil | 		return nil | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	scriptPrompt := translations.Translator(ctx).TranslateTo("Would you like to view the build script for", config.Language(ctx)) + " " + name | 	view, err := YesNoPrompt(ctx, gotext.Get("Would you like to view the build script for %s", name), interactive, false) | ||||||
| 	view, err := YesNoPrompt(ctx, scriptPrompt, interactive, false) |  | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return err | 		return err | ||||||
| 	} | 	} | ||||||
| @@ -71,7 +68,7 @@ func PromptViewScript(ctx context.Context, script, name, style string, interacti | |||||||
| 			return err | 			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 { | 		if err != nil { | ||||||
| 			return err | 			return err | ||||||
| 		} | 		} | ||||||
| @@ -135,7 +132,7 @@ func PkgPrompt(ctx context.Context, options []db.Package, verb string, interacti | |||||||
|  |  | ||||||
| 	prompt := &survey.Select{ | 	prompt := &survey.Select{ | ||||||
| 		Options: names, | 		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 | 	var choice int | ||||||
| @@ -156,7 +153,7 @@ func ChooseOptDepends(ctx context.Context, options []string, verb string, intera | |||||||
|  |  | ||||||
| 	prompt := &survey.MultiSelect{ | 	prompt := &survey.MultiSelect{ | ||||||
| 		Options: options, | 		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 | 	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) | 	cacheDir, err = dc.New(ctx, opts.URL) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
|   | |||||||
| @@ -105,14 +105,30 @@ msgstr "" | |||||||
| msgid "Error removing packages" | msgid "Error removing packages" | ||||||
| msgstr "" | 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" | msgid "User chose not to continue after reading script" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: internal/cliutils/prompt.go:114 | #: internal/cliutils/prompt.go:111 | ||||||
| msgid "Error prompting for choice of package" | msgid "Error prompting for choice of package" | ||||||
| msgstr "" | 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 | #: internal/config/config.go:63 | ||||||
| msgid "Error opening config file, using defaults" | msgid "Error opening config file, using defaults" | ||||||
| msgstr "" | msgstr "" | ||||||
| @@ -178,12 +194,12 @@ msgstr "" | |||||||
| msgid "Source updated and linked to destination" | msgid "Source updated and linked to destination" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: internal/logger/log.go:44 | #: internal/dl/dl.go:222 | ||||||
| msgid "ERROR" | msgid "Downloading source" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: internal/translations/translations.go:52 | #: internal/logger/log.go:44 | ||||||
| msgid "Error creating new translator" | msgid "ERROR" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: list.go:53 | #: list.go:53 | ||||||
| @@ -224,6 +240,12 @@ msgstr "" | |||||||
| msgid "Compressing package" | msgid "Compressing package" | ||||||
| msgstr "" | 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 | #: pkg/build/build.go:323 | ||||||
| msgid "This package is already installed" | msgid "This package is already installed" | ||||||
| msgstr "" | msgstr "" | ||||||
| @@ -260,6 +282,10 @@ msgstr "" | |||||||
| msgid "AutoReq is not implemented for this package format, so it's skiped" | msgid "AutoReq is not implemented for this package format, so it's skiped" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
|  | #: pkg/build/build.go:653 | ||||||
|  | msgid "Would you like to remove the build dependencies?" | ||||||
|  | msgstr "" | ||||||
|  |  | ||||||
| #: pkg/build/build.go:759 | #: pkg/build/build.go:759 | ||||||
| msgid "The checksums array must be the same length as sources" | msgid "The checksums array must be the same length as sources" | ||||||
| msgstr "" | 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 "" | msgid "" | ||||||
| msgstr "" | msgstr "" | ||||||
| "Project-Id-Version: \n" | "Project-Id-Version: unnamed project\n" | ||||||
| "PO-Revision-Date: 2025-01-22 14:23+0300\n" | "PO-Revision-Date: 2025-01-22 16:50+0300\n" | ||||||
| "Last-Translator: Maxim Slipenko <maks1ms@alt-gnome.ru>\n" | "Last-Translator: Maxim Slipenko <maks1ms@alt-gnome.ru>\n" | ||||||
| "Language-Team: Russian\n" | "Language-Team: Russian\n" | ||||||
| "Language: ru\n" | "Language: ru\n" | ||||||
| "MIME-Version: 1.0\n" | "MIME-Version: 1.0\n" | ||||||
| "Content-Type: text/plain; charset=UTF-8\n" | "Content-Type: text/plain; charset=UTF-8\n" | ||||||
| "Content-Transfer-Encoding: 8bit\n" | "Content-Transfer-Encoding: 8bit\n" | ||||||
| "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" | "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " | ||||||
| "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" | "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" | ||||||
| "X-Generator: Gtranslator 47.1\n" | "X-Generator: Gtranslator 47.1\n" | ||||||
|  |  | ||||||
| #: build.go:69 | #: build.go:69 | ||||||
| @@ -25,7 +25,7 @@ msgstr "" | |||||||
|  |  | ||||||
| #: build.go:86 | #: build.go:86 | ||||||
| msgid "Error building package" | msgid "Error building package" | ||||||
| msgstr "" | msgstr "Ошибка при сборке пакета" | ||||||
|  |  | ||||||
| #: build.go:92 | #: build.go:92 | ||||||
| msgid "Error getting working directory" | msgid "Error getting working directory" | ||||||
| @@ -111,12 +111,28 @@ msgstr "" | |||||||
| msgid "Error removing packages" | msgid "Error removing packages" | ||||||
| msgstr "" | 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" | msgid "User chose not to continue after reading script" | ||||||
|  | msgstr "Пользователь решил не продолжать после просмотра скрипта" | ||||||
|  |  | ||||||
|  | #: internal/cliutils/prompt.go:111 | ||||||
|  | msgid "Error prompting for choice of package" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: internal/cliutils/prompt.go:114 | #: internal/cliutils/prompt.go:135 | ||||||
| msgid "Error prompting for choice of package" | msgid "Choose which package to %s" | ||||||
|  | msgstr "" | ||||||
|  |  | ||||||
|  | #: internal/cliutils/prompt.go:156 | ||||||
|  | msgid "Choose which optional package(s) to install" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
| #: internal/config/config.go:63 | #: internal/config/config.go:63 | ||||||
| @@ -184,14 +200,14 @@ msgstr "" | |||||||
| msgid "Source updated and linked to destination" | msgid "Source updated and linked to destination" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
|  | #: internal/dl/dl.go:222 | ||||||
|  | msgid "Downloading source" | ||||||
|  | msgstr "Скачивание источника" | ||||||
|  |  | ||||||
| #: internal/logger/log.go:44 | #: internal/logger/log.go:44 | ||||||
| msgid "ERROR" | msgid "ERROR" | ||||||
| msgstr "ОШИБКА" | msgstr "ОШИБКА" | ||||||
|  |  | ||||||
| #: internal/translations/translations.go:52 |  | ||||||
| msgid "Error creating new translator" |  | ||||||
| msgstr "" |  | ||||||
|  |  | ||||||
| #: list.go:53 | #: list.go:53 | ||||||
| msgid "Error initialization database" | msgid "Error initialization database" | ||||||
| msgstr "" | msgstr "" | ||||||
| @@ -212,15 +228,15 @@ msgstr "" | |||||||
|  |  | ||||||
| #: pkg/build/build.go:104 | #: pkg/build/build.go:104 | ||||||
| msgid "Failed to prompt user to view build script" | msgid "Failed to prompt user to view build script" | ||||||
| msgstr "" | msgstr "Не удалось предложить просмотреть скрипт" | ||||||
|  |  | ||||||
| #: pkg/build/build.go:108 | #: pkg/build/build.go:108 | ||||||
| msgid "Building package" | msgid "Building package" | ||||||
| msgstr "" | msgstr "Сборка пакета" | ||||||
|  |  | ||||||
| #: pkg/build/build.go:152 | #: pkg/build/build.go:152 | ||||||
| msgid "Downloading sources" | msgid "Downloading sources" | ||||||
| msgstr "" | msgstr "Скачивание файлов" | ||||||
|  |  | ||||||
| #: pkg/build/build.go:164 | #: pkg/build/build.go:164 | ||||||
| msgid "Building package metadata" | msgid "Building package metadata" | ||||||
| @@ -230,6 +246,12 @@ msgstr "" | |||||||
| msgid "Compressing package" | msgid "Compressing package" | ||||||
| msgstr "" | 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 | #: pkg/build/build.go:323 | ||||||
| msgid "This package is already installed" | msgid "This package is already installed" | ||||||
| msgstr "" | msgstr "" | ||||||
| @@ -266,6 +288,10 @@ msgstr "" | |||||||
| msgid "AutoReq is not implemented for this package format, so it's skiped" | msgid "AutoReq is not implemented for this package format, so it's skiped" | ||||||
| msgstr "" | msgstr "" | ||||||
|  |  | ||||||
|  | #: pkg/build/build.go:653 | ||||||
|  | msgid "Would you like to remove the build dependencies?" | ||||||
|  | msgstr "" | ||||||
|  |  | ||||||
| #: pkg/build/build.go:759 | #: pkg/build/build.go:759 | ||||||
| msgid "The checksums array must be the same length as sources" | msgid "The checksums array must be the same length as sources" | ||||||
| msgstr "" | msgstr "" | ||||||
| @@ -292,11 +318,11 @@ msgstr "" | |||||||
|  |  | ||||||
| #: pkg/repos/pull.go:75 | #: pkg/repos/pull.go:75 | ||||||
| msgid "Pulling repository" | msgid "Pulling repository" | ||||||
| msgstr "" | msgstr "Скачивание репозитория" | ||||||
|  |  | ||||||
| #: pkg/repos/pull.go:99 | #: pkg/repos/pull.go:99 | ||||||
| msgid "Repository up to date" | msgid "Repository up to date" | ||||||
| msgstr "" | msgstr "Репозиторий уже обновлен" | ||||||
|  |  | ||||||
| #: pkg/repos/pull.go:156 | #: pkg/repos/pull.go:156 | ||||||
| msgid "Git repository does not appear to be a valid ALR repo" | msgid "Git repository does not appear to be a valid ALR repo" | ||||||
|   | |||||||
| @@ -20,47 +20,15 @@ | |||||||
| package translations | package translations | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
| 	"context" |  | ||||||
| 	"embed" | 	"embed" | ||||||
| 	"io/fs" | 	"io/fs" | ||||||
| 	"log/slog" |  | ||||||
| 	"os" | 	"os" | ||||||
| 	"path" | 	"path" | ||||||
| 	"sync" |  | ||||||
|  |  | ||||||
| 	"github.com/jeandeaual/go-locale" | 	"github.com/jeandeaual/go-locale" | ||||||
| 	"github.com/leonelquinteros/gotext" | 	"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 | //go:embed po | ||||||
| var poFS embed.FS | var poFS embed.FS | ||||||
|  |  | ||||||
|   | |||||||
| @@ -309,7 +309,7 @@ func prepareDirs(dirs types.Directories) error { | |||||||
| // Функция performChecks проверяет различные аспекты в системе, чтобы убедиться, что пакет может быть установлен. | // Функция performChecks проверяет различные аспекты в системе, чтобы убедиться, что пакет может быть установлен. | ||||||
| func performChecks(ctx context.Context, vars *types.BuildVars, interactive bool, installed map[string]string) (bool, error) { | func performChecks(ctx context.Context, vars *types.BuildVars, interactive bool, installed map[string]string) (bool, error) { | ||||||
| 	if !cpu.IsCompatibleWith(cpu.Arch(), vars.Architectures) { // Проверяем совместимость архитектуры | 	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 { | 		if err != nil { | ||||||
| 			return false, err | 			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 { | func removeBuildDeps(ctx context.Context, buildDeps []string, opts types.BuildOpts) error { | ||||||
| 	if len(buildDeps) > 0 { | 	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 { | 		if err != nil { | ||||||
| 			return err | 			return err | ||||||
| 		} | 		} | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user