Some checks failed
		
		
	
	Update alr-git / changelog (push) Failing after 25s
				
			
		
			
				
	
	
		
			133 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # 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 the ALR Authors.
 | |
| #
 | |
| # ALR - Any Linux Repository
 | |
| # Copyright (C) 2025 The ALR Authors
 | |
| #
 | |
| # 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/>.
 | |
| 
 | |
| # Generated from AUR package: {{.Name}}
 | |
| # Package type: {{.PackageType}}
 | |
| # AUR votes: {{.NumVotes}} | Popularity: {{printf "%.2f" .Popularity}}
 | |
| # Original maintainer: {{.Maintainer}}
 | |
| # Adapted for ALR by automation
 | |
| 
 | |
| name='{{.Name}}'
 | |
| version='{{.Version}}'
 | |
| release='1'
 | |
| desc='{{.Description}}'
 | |
| {{if ne .Description ""}}desc_ru='{{.Description}}'{{end}}
 | |
| homepage='{{.URL}}'
 | |
| maintainer="Евгений Храмов <xpamych@yandex.ru> (imported from AUR)"
 | |
| {{if ne .Description ""}}maintainer_ru="Евгений Храмов <xpamych@yandex.ru> (импортирован из AUR)"{{end}}
 | |
| architectures=({{.ArchitecturesString}})
 | |
| license=({{.LicenseString}})
 | |
| {{if .Provides}}provides=({{range .Provides}}'{{.}}' {{end}}){{end}}
 | |
| {{if .Conflicts}}conflicts=({{range .Conflicts}}'{{.}}' {{end}}){{end}}
 | |
| {{if .Replaces}}replaces=({{range .Replaces}}'{{.}}' {{end}}){{end}}
 | |
| 
 | |
| # Базовые зависимости
 | |
| {{if .DependsString}}deps=({{.DependsString}}){{else}}deps=(){{end}}
 | |
| {{if .MakeDependsString}}build_deps=({{.MakeDependsString}}){{else}}build_deps=(){{end}}
 | |
| 
 | |
| # Зависимости для конкретных дистрибутивов (адаптируйте под нужды пакета)
 | |
| {{if .DependsString}}deps_arch=({{.DependsString}})
 | |
| deps_debian=({{.DependsString}})
 | |
| deps_altlinux=({{.DependsString}})
 | |
| deps_alpine=({{.DependsString}}){{end}}
 | |
| 
 | |
| {{if and .MakeDependsString (ne .PackageType "bin")}}# Зависимости сборки для конкретных дистрибутивов
 | |
| build_deps_arch=({{.MakeDependsString}})
 | |
| build_deps_debian=({{.MakeDependsString}})
 | |
| build_deps_altlinux=({{.MakeDependsString}})
 | |
| build_deps_alpine=({{.MakeDependsString}}){{end}}
 | |
| 
 | |
| {{if .OptDependsString}}# Опциональные зависимости
 | |
| opt_deps=(
 | |
| 	{{.OptDependsString}}
 | |
| ){{end}}
 | |
| 
 | |
| # Источники из PKGBUILD
 | |
| sources=({{range .Sources}}"{{.}}" {{end}})
 | |
| checksums=({{range .Checksums}}'{{.}}' {{end}})
 | |
| 
 | |
| {{if .HasVersion}}# Функция версии для Git-пакетов
 | |
| version() {
 | |
| 	cd "$srcdir/{{.Name}}"
 | |
| 	git-version
 | |
| }
 | |
| {{end}}
 | |
| 
 | |
| {{if .ScriptsString}}# Дополнительные скрипты
 | |
| scripts=(
 | |
| 	{{.ScriptsString}}
 | |
| ){{end}}
 | |
| 
 | |
| {{if or .PrepareFunc .HasPatches}}prepare() {
 | |
| 	cd "$srcdir"{{if .PrepareFunc}}
 | |
| 	# Из PKGBUILD:
 | |
| 	{{.PrepareFunc}}{{else}}
 | |
| 	# Применение патчей и подготовка исходников
 | |
| 	# Раскомментируйте и адаптируйте при необходимости:
 | |
| 	# patch -p1 < "${scriptdir}/fix.patch"{{end}}
 | |
| }{{else}}# prepare() {
 | |
| # 	cd "$srcdir"
 | |
| # 	# Применение патчей и подготовка исходников при необходимости
 | |
| # 	# patch -p1 < "${scriptdir}/fix.patch"
 | |
| # }{{end}}
 | |
| 
 | |
| {{if ne .PackageType "bin"}}build() {
 | |
| 	cd "$srcdir"{{if .BuildFunc}}
 | |
| 	# Из PKGBUILD:
 | |
| 	{{.BuildFunc}}{{else}}
 | |
| 	
 | |
| 	# TODO: Адаптируйте команды сборки под конкретный проект ({{.PackageType}})
 | |
| 	{{if eq .PackageType "meson"}}# Для Meson проектов:
 | |
| 	meson setup build --prefix=/usr --buildtype=release
 | |
| 	ninja -C build -j $(nproc){{else if eq .PackageType "cpp"}}# Для C/C++ проектов:
 | |
| 	mkdir -p build && cd build
 | |
| 	cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
 | |
| 	make -j$(nproc){{else if eq .PackageType "go"}}# Для Go проектов:
 | |
| 	go build -buildmode=pie -trimpath -ldflags "-s -w" -o {{.Name}}{{else if eq .PackageType "python"}}# Для Python проектов:
 | |
| 	python -m build --wheel --no-isolation{{else if eq .PackageType "nodejs"}}# Для Node.js проектов:
 | |
| 	npm ci --production
 | |
| 	npm run build{{else if eq .PackageType "rust"}}# Для Rust проектов:
 | |
| 	cargo build --release --locked{{else if eq .PackageType "git"}}# Для Git проектов (обычно исходный код):
 | |
| 	make -j$(nproc){{else}}# Стандартная сборка:
 | |
| 	make -j$(nproc){{end}}{{end}}
 | |
| }{{else}}# Бинарный пакет - сборка не требуется{{end}}
 | |
| 
 | |
| package() {
 | |
| 	cd "$srcdir"{{if .PackageFunc}}
 | |
| 	# Из PKGBUILD (адаптировано для ALR):
 | |
| 	{{.PackageFunc}}
 | |
| 	
 | |
| 	# Автоматически сгенерированные команды установки:
 | |
| {{.GenerateInstallCommands}}{{else}}
 | |
| 	
 | |
| 	# TODO: Адаптируйте установку файлов под конкретный проект {{.Name}}
 | |
| 	{{if eq .PackageType "meson"}}# Для Meson проектов:
 | |
| 	meson install -C build --destdir="$pkgdir"{{else if eq .PackageType "cpp"}}# Для C/C++ проектов:
 | |
| 	cd build
 | |
| 	make DESTDIR="$pkgdir" install{{else if eq .PackageType "go"}}# Для Go проектов:
 | |
| 	# Исполняемый файл уже собран в корне{{else if eq .PackageType "python"}}# Для Python проектов:
 | |
| 	pip install --root="$pkgdir/" . --no-deps --disable-pip-version-check{{else if eq .PackageType "nodejs"}}# Для Node.js проектов:
 | |
| 	npm install -g --prefix="$pkgdir/usr" .{{else if eq .PackageType "rust"}}# Для Rust проектов:
 | |
| 	# Исполняемый файл в target/release/{{else if eq .PackageType "bin"}}# Бинарный пакет:
 | |
| 	# Файлы уже распакованы{{else}}# Стандартная установка:
 | |
| 	make DESTDIR="$pkgdir" install{{end}}
 | |
| 	
 | |
| 	# Автоматически сгенерированные команды установки:
 | |
| {{.GenerateInstallCommands}}{{end}}
 | |
| } |