forked from Plemya-x/ALR
wip: refactor
This commit is contained in:
parent
e773e3ee12
commit
87cae79655
@ -343,35 +343,35 @@ msgstr ""
|
|||||||
msgid "Installing build dependencies"
|
msgid "Installing build dependencies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:468
|
#: pkg/build/build.go:498
|
||||||
msgid "Installing dependencies"
|
msgid "Installing dependencies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:521
|
#: pkg/build/build.go:533
|
||||||
msgid "The checksums array must be the same length as sources"
|
msgid "The checksums array must be the same length as sources"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:572
|
#: pkg/build/build.go:584
|
||||||
msgid "Would you like to remove the build dependencies?"
|
msgid "Would you like to remove the build dependencies?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:635
|
#: pkg/build/build.go:647
|
||||||
msgid "Executing prepare()"
|
msgid "Executing prepare()"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:645
|
#: pkg/build/build.go:657
|
||||||
msgid "Executing build()"
|
msgid "Executing build()"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:675 pkg/build/build.go:695
|
#: pkg/build/build.go:687 pkg/build/build.go:707
|
||||||
msgid "Executing %s()"
|
msgid "Executing %s()"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:754
|
#: pkg/build/build.go:766
|
||||||
msgid "Error installing native packages"
|
msgid "Error installing native packages"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pkg/build/build.go:795
|
#: pkg/build/build.go:790
|
||||||
msgid "Error installing package"
|
msgid "Error installing package"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -360,36 +360,36 @@ msgstr "Этот пакет уже установлен"
|
|||||||
msgid "Installing build dependencies"
|
msgid "Installing build dependencies"
|
||||||
msgstr "Установка зависимостей сборки"
|
msgstr "Установка зависимостей сборки"
|
||||||
|
|
||||||
#: pkg/build/build.go:468
|
#: pkg/build/build.go:498
|
||||||
msgid "Installing dependencies"
|
msgid "Installing dependencies"
|
||||||
msgstr "Установка зависимостей"
|
msgstr "Установка зависимостей"
|
||||||
|
|
||||||
#: pkg/build/build.go:521
|
#: pkg/build/build.go:533
|
||||||
msgid "The checksums array must be the same length as sources"
|
msgid "The checksums array must be the same length as sources"
|
||||||
msgstr "Массив контрольных сумм должен быть той же длины, что и источники"
|
msgstr "Массив контрольных сумм должен быть той же длины, что и источники"
|
||||||
|
|
||||||
#: pkg/build/build.go:572
|
#: pkg/build/build.go:584
|
||||||
msgid "Would you like to remove the build dependencies?"
|
msgid "Would you like to remove the build dependencies?"
|
||||||
msgstr "Хотели бы вы удалить зависимости сборки?"
|
msgstr "Хотели бы вы удалить зависимости сборки?"
|
||||||
|
|
||||||
#: pkg/build/build.go:635
|
#: pkg/build/build.go:647
|
||||||
msgid "Executing prepare()"
|
msgid "Executing prepare()"
|
||||||
msgstr "Исполнение prepare()"
|
msgstr "Исполнение prepare()"
|
||||||
|
|
||||||
#: pkg/build/build.go:645
|
#: pkg/build/build.go:657
|
||||||
msgid "Executing build()"
|
msgid "Executing build()"
|
||||||
msgstr "Исполнение build()"
|
msgstr "Исполнение build()"
|
||||||
|
|
||||||
#: pkg/build/build.go:675 pkg/build/build.go:695
|
#: pkg/build/build.go:687 pkg/build/build.go:707
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Executing %s()"
|
msgid "Executing %s()"
|
||||||
msgstr "Исполнение files()"
|
msgstr "Исполнение files()"
|
||||||
|
|
||||||
#: pkg/build/build.go:754
|
#: pkg/build/build.go:766
|
||||||
msgid "Error installing native packages"
|
msgid "Error installing native packages"
|
||||||
msgstr "Ошибка при установке нативных пакетов"
|
msgstr "Ошибка при установке нативных пакетов"
|
||||||
|
|
||||||
#: pkg/build/build.go:795
|
#: pkg/build/build.go:790
|
||||||
msgid "Error installing package"
|
msgid "Error installing package"
|
||||||
msgstr "Ошибка при установке пакета"
|
msgstr "Ошибка при установке пакета"
|
||||||
|
|
||||||
|
@ -463,6 +463,36 @@ func (b *Builder) installBuildDeps(ctx context.Context, buildDepends []string) (
|
|||||||
return buildDeps, nil
|
return buildDeps, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (b *Builder) getBuildersForPackages(pkgs []db.Package) []*Builder {
|
||||||
|
type item struct {
|
||||||
|
pkg *db.Package
|
||||||
|
packages []string
|
||||||
|
}
|
||||||
|
pkgsMap := make(map[string]*item)
|
||||||
|
for _, pkg := range pkgs {
|
||||||
|
if pkgsMap[pkg.BasePkgName] == nil {
|
||||||
|
pkgsMap[pkg.BasePkgName] = &item{
|
||||||
|
pkg: &pkg,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pkgsMap[pkg.BasePkgName].packages = append(
|
||||||
|
pkgsMap[pkg.BasePkgName].packages,
|
||||||
|
pkg.Name,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
builders := []*Builder{}
|
||||||
|
|
||||||
|
for basePkgName := range pkgsMap {
|
||||||
|
pkg := pkgsMap[basePkgName].pkg
|
||||||
|
builder := *b
|
||||||
|
builder.UpdateOptsFromPkg(pkg, pkgsMap[basePkgName].packages)
|
||||||
|
builders = append(builders, &builder)
|
||||||
|
}
|
||||||
|
|
||||||
|
return builders
|
||||||
|
}
|
||||||
|
|
||||||
func (b *Builder) buildALRDeps(ctx context.Context, depends []string) (builtPaths, builtNames, repoDeps []string, err error) {
|
func (b *Builder) buildALRDeps(ctx context.Context, depends []string) (builtPaths, builtNames, repoDeps []string, err error) {
|
||||||
if len(depends) > 0 {
|
if len(depends) > 0 {
|
||||||
slog.Info(gotext.Get("Installing dependencies"))
|
slog.Info(gotext.Get("Installing dependencies"))
|
||||||
@ -475,28 +505,10 @@ func (b *Builder) buildALRDeps(ctx context.Context, depends []string) (builtPath
|
|||||||
|
|
||||||
// Если для некоторых пакетов есть несколько опций, упрощаем их все в один срез
|
// Если для некоторых пакетов есть несколько опций, упрощаем их все в один срез
|
||||||
pkgs := cliutils.FlattenPkgs(ctx, found, "install", b.opts.Interactive)
|
pkgs := cliutils.FlattenPkgs(ctx, found, "install", b.opts.Interactive)
|
||||||
|
builders := b.getBuildersForPackages(pkgs)
|
||||||
type x struct {
|
for _, builder := range builders {
|
||||||
pkg *db.Package
|
|
||||||
packages []string
|
|
||||||
}
|
|
||||||
xx := make(map[string]*x)
|
|
||||||
for _, pkg := range pkgs {
|
|
||||||
if xx[pkg.BasePkgName] == nil {
|
|
||||||
xx[pkg.BasePkgName] = &x{
|
|
||||||
pkg: &pkg,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
xx[pkg.BasePkgName].packages = append(xx[pkg.BasePkgName].packages, pkg.Name)
|
|
||||||
}
|
|
||||||
|
|
||||||
for basePkgName := range xx {
|
|
||||||
pkg := xx[basePkgName].pkg
|
|
||||||
newB := *b
|
|
||||||
newB.UpdateOptsFromPkg(pkg, xx[basePkgName].packages)
|
|
||||||
|
|
||||||
// Собираем зависимости
|
// Собираем зависимости
|
||||||
pkgPaths, pkgNames, err := newB.BuildPackage(ctx)
|
pkgPaths, pkgNames, err := builder.BuildPackage(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, err
|
return nil, nil, nil, err
|
||||||
}
|
}
|
||||||
@ -762,25 +774,8 @@ func (b *Builder) InstallPkgs(
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (b *Builder) InstallALRPackages(ctx context.Context, pkgs []db.Package, opts types.BuildOpts) {
|
func (b *Builder) InstallALRPackages(ctx context.Context, pkgs []db.Package, opts types.BuildOpts) {
|
||||||
type x struct {
|
builders := b.getBuildersForPackages(pkgs)
|
||||||
pkg *db.Package
|
for _, builder := range builders {
|
||||||
packages []string
|
|
||||||
}
|
|
||||||
xx := make(map[string]*x)
|
|
||||||
for _, pkg := range pkgs {
|
|
||||||
if xx[pkg.BasePkgName] == nil {
|
|
||||||
xx[pkg.BasePkgName] = &x{
|
|
||||||
pkg: &pkg,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
xx[pkg.BasePkgName].packages = append(xx[pkg.BasePkgName].packages, pkg.Name)
|
|
||||||
}
|
|
||||||
|
|
||||||
for basePkgName := range xx {
|
|
||||||
pkg := xx[basePkgName].pkg
|
|
||||||
builder := *b
|
|
||||||
builder.UpdateOptsFromPkg(pkg, xx[basePkgName].packages)
|
|
||||||
|
|
||||||
builtPkgs, _, err := builder.BuildPackage(ctx)
|
builtPkgs, _, err := builder.BuildPackage(ctx)
|
||||||
// Выполняем сборку пакета
|
// Выполняем сборку пакета
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user