forked from Plemya-x/ALR
		
	Initial commit
This commit is contained in:
		
							
								
								
									
										155
									
								
								internal/translations/files/lure.en.toml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										155
									
								
								internal/translations/files/lure.en.toml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,155 @@
 | 
			
		||||
[[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 LURE 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'
 | 
			
		||||
							
								
								
									
										151
									
								
								internal/translations/files/lure.ru.toml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										151
									
								
								internal/translations/files/lure.ru.toml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,151 @@
 | 
			
		||||
[[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 = 'Запуск LURE от имени 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 = 'протокол-скачивание'
 | 
			
		||||
							
								
								
									
										56
									
								
								internal/translations/translations.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								internal/translations/translations.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,56 @@
 | 
			
		||||
/*
 | 
			
		||||
 * LURE - Linux User REpository
 | 
			
		||||
 * Copyright (C) 2023 Elara Musayelyan
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
package translations
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"embed"
 | 
			
		||||
	"sync"
 | 
			
		||||
 | 
			
		||||
	"go.elara.ws/logger"
 | 
			
		||||
	"lure.sh/lure/pkg/loggerctx"
 | 
			
		||||
	"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()
 | 
			
		||||
	log := loggerctx.From(ctx)
 | 
			
		||||
	if translator == nil {
 | 
			
		||||
		t, err := translate.NewFromFS(translationFS)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			log.Fatal("Error creating new translator").Err(err).Send()
 | 
			
		||||
		}
 | 
			
		||||
		translator = &t
 | 
			
		||||
	}
 | 
			
		||||
	return translator
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func NewLogger(ctx context.Context, l logger.Logger, lang language.Tag) *translate.TranslatedLogger {
 | 
			
		||||
	return translate.NewLogger(l, *Translator(ctx), lang)
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user