4 Commits

Author SHA1 Message Date
a9d0258784 security: update vulnerable packages
Vulnerabilities detected by Trivy scan:
- github.com/go-git/go-git/v5 (CVE-2025-21613)
- github.com/go-git/go-git/v5 (CVE-2025-21614)
- golang.org/x/crypto (CVE-2025-22869)
- golang.org/x/net (CVE-2025-22870)
- golang.org/x/net (CVE-2025-22872)
2025-04-20 08:56:20 +03:00
fedd67ab95 add group and summary fields 2025-04-20 08:41:36 +03:00
ab3a20f779 fix tests 2025-04-20 08:28:49 +03:00
d2fdbba852 use fakertoo from gitea.plemya-x.ru/Plemya-x/fakeroot 2025-04-19 18:05:01 +03:00
127 changed files with 454 additions and 560 deletions

View File

@@ -1,5 +1,5 @@
# ALR - Any Linux Repository # ALR - Any Linux Repository
# Copyright (C) 2025 The ALR Authors # Copyright (C) 2025 Евгений Храмов
# #
# This program is free software: you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by

118
.goreleaser.yaml Normal file
View File

@@ -0,0 +1,118 @@
# 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/>.
before:
hooks:
- go mod tidy
builds:
- id: alr
env:
- CGO_ENABLED=0
binary: alr
ldflags:
- -X gitea.plemya-x.ru/xpamych/ALR/src/branch/master/internal/config.Version={{.Version}}
goos:
- linux
goarch:
- amd64
- 386
- arm64
- arm
- riscv64
archives:
- name_template: >-
{{- .ProjectName}}-
{{- .Version}}-
{{- .Os}}-
{{- if .Arch | eq "amd64"}}x86_64
{{- else if .Arch | eq "386"}}i386
{{- else if .Arch | eq "arm64"}}aarch64
{{- else }}{{ .Arch }}{{ end -}}
files:
- scripts/completion/*
nfpms:
- id: alr
package_name: linux-user-repository
file_name_template: >-
{{- .PackageName}}-
{{- .Version}}-
{{- .Os}}-
{{- if .Arch | eq "amd64"}}x86_64
{{- else if .Arch | eq "386"}}i386
{{- else if .Arch | eq "arm64"}}aarch64
{{- else }}{{ .Arch }}{{ end -}}
description: "Any Linux Repository"
homepage: 'https://gitea.plemya-x.ru/xpamych/ALR'
maintainer: 'Евгений Храмов <xpamych@yandex.ru>'
license: GPLv3
formats:
- apk
- deb
- rpm
- archlinux
provides:
- linux-user-repository
conflicts:
- linux-user-repository
recommends:
- aria2
contents:
- src: scripts/completion/bash
dst: /usr/share/bash-completion/completions/alr
- src: scripts/completion/zsh
dst: /usr/share/zsh/site-functions/_alr
aurs:
- name: linux-user-repository-bin
homepage: 'https://gitea.plemya-x.ru/xpamych/ALR'
description: "Any Linux Repository"
maintainers:
- 'Евгений Храмов <xpamych@yandex.ru>'
license: GPLv3
private_key: '{{ .Env.AUR_KEY }}'
git_url: 'ssh://aur@aur.archlinux.org/linux-user-repository-bin.git'
provides:
- alr
conflicts:
- alr
depends:
- sudo
- pacman
optdepends:
- 'aria2: for downloading torrent sources'
package: |-
# binaries
install -Dm755 ./alr "${pkgdir}/usr/bin/alr"
# completions
install -Dm755 ./scripts/completion/bash ${pkgdir}/usr/share/bash-completion/completions/alr
install -Dm755 ./scripts/completion/zsh ${pkgdir}/usr/share/zsh/site-functions/_alr
release:
gitea:
owner: alr
name: alr
gitea_urls:
api: 'https://gitea.elara.ws/api/v1/'
download: 'https://gitea.elara.ws'
skip_tls_verify: false
checksum:
name_template: 'checksums.txt'
snapshot:
name_template: "{{ incpatch .Version }}-next"
changelog:
sort: asc

View File

@@ -1,5 +1,5 @@
# ALR - Any Linux Repository # ALR - Any Linux Repository
# Copyright (C) 2025 The ALR Authors # Copyright (C) 2025 Евгений Храмов
# #
# This program is free software: you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by

28
.woodpecker.yml Normal file
View File

@@ -0,0 +1,28 @@
# 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/>.
platform: linux/amd64
pipeline:
release:
image: goreleaser/goreleaser
commands:
- goreleaser release
secrets: [ gitea_token, aur_key ]
when:
event: tag

View File

@@ -1,2 +0,0 @@
Евгений Храмов
Maxim Slipenko

View File

@@ -11,7 +11,7 @@
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"> <g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="33.5" y="15" fill="#010101" fill-opacity=".3">coverage</text> <text x="33.5" y="15" fill="#010101" fill-opacity=".3">coverage</text>
<text x="33.5" y="14">coverage</text> <text x="33.5" y="14">coverage</text>
<text x="86" y="15" fill="#010101" fill-opacity=".3">17.0%</text> <text x="86" y="15" fill="#010101" fill-opacity=".3">16.4%</text>
<text x="86" y="14">17.0%</text> <text x="86" y="14">16.4%</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 926 B

After

Width:  |  Height:  |  Size: 926 B

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,51 +0,0 @@
// 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/>.
//go:build e2e
package e2etests_test
import (
"testing"
"github.com/alecthomas/assert/v2"
"github.com/efficientgo/e2e"
)
func TestE2EIssue72InstallWithDeps(t *testing.T) {
dockerMultipleRun(
t,
"issue-72-install-with-deps",
COMMON_SYSTEMS,
func(t *testing.T, r e2e.Runnable) {
err := r.Exec(e2e.NewCommand(
"sudo",
"alr",
"addrepo",
"--name",
"alr-repo",
"--url",
"https://gitea.plemya-x.ru/Maks1mS/repo-for-tests.git",
))
assert.NoError(t, err)
err = r.Exec(e2e.NewCommand(
"sudo", "alr", "in", "test-app-with-lib",
))
assert.NoError(t, err)
},
)
}

View File

@@ -1,62 +0,0 @@
// 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/>.
//go:build e2e
package e2etests_test
import (
"testing"
"github.com/alecthomas/assert/v2"
"github.com/efficientgo/e2e"
)
func TestE2EIssue75InstallWithDeps(t *testing.T) {
dockerMultipleRun(
t,
"issue-75-ref-specify",
COMMON_SYSTEMS,
func(t *testing.T, r e2e.Runnable) {
err := r.Exec(e2e.NewCommand(
"sudo",
"alr",
"addrepo",
"--name",
"alr-repo",
"--url",
"https://gitea.plemya-x.ru/Maks1mS/repo-for-tests.git",
))
assert.NoError(t, err)
err = r.Exec(e2e.NewCommand(
"sudo", "alr", "ref",
))
assert.NoError(t, err)
// TODO: replace with alr command when it be added
err = r.Exec(e2e.NewCommand(
"sudo", "sh", "-c", "sed -i 's/ref = .*/ref = \"bd26236cd7\"/' /etc/alr/alr.toml",
))
assert.NoError(t, err)
err = r.Exec(e2e.NewCommand(
"sh", "-c", "test $(alr list | wc -l) -eq 2 || exit 1",
))
assert.NoError(t, err)
},
)
}

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

4
fix.go
View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

4
gen.go
View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -46,7 +46,11 @@ func InstallCmd() *cli.Command {
Usage: gotext.Get("Build package from scratch even if there's an already built package available"), Usage: gotext.Get("Build package from scratch even if there's an already built package available"),
}, },
}, },
Action: utils.RootNeededAction(func(c *cli.Context) error { Action: func(c *cli.Context) error {
if err := utils.ExitIfNotRoot(); err != nil {
return err
}
args := c.Args() args := c.Args()
if args.Len() < 1 { if args.Len() < 1 {
return cliutils.FormatCliExit(gotext.Get("Command install expected at least 1 argument, got %d", args.Len()), nil) return cliutils.FormatCliExit(gotext.Get("Command install expected at least 1 argument, got %d", args.Len()), nil)
@@ -111,11 +115,11 @@ func InstallCmd() *cli.Command {
args.Slice(), args.Slice(),
) )
if err != nil { if err != nil {
return cliutils.FormatCliExit(gotext.Get("Error when installing the package"), err) return cliutils.FormatCliExit(gotext.Get("Error parsing os release"), err)
} }
return nil return nil
}), },
BashComplete: cliutils.BashCompleteWithError(func(c *cli.Context) error { BashComplete: cliutils.BashCompleteWithError(func(c *cli.Context) error {
if err := utils.ExitIfCantDropCapsToAlrUser(); err != nil { if err := utils.ExitIfCantDropCapsToAlrUser(); err != nil {
return err return err
@@ -209,7 +213,11 @@ func RemoveCmd() *cli.Command {
return nil return nil
}), }),
Action: utils.RootNeededAction(func(c *cli.Context) error { Action: func(c *cli.Context) error {
if err := utils.ExitIfNotRoot(); err != nil {
return err
}
args := c.Args() args := c.Args()
if args.Len() < 1 { if args.Len() < 1 {
return cliutils.FormatCliExit(gotext.Get("Command remove expected at least 1 argument, got %d", args.Len()), nil) return cliutils.FormatCliExit(gotext.Get("Command remove expected at least 1 argument, got %d", args.Len()), nil)
@@ -231,6 +239,6 @@ func RemoveCmd() *cli.Command {
} }
return nil return nil
}), },
} }
} }

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -39,7 +39,6 @@ type ALRConfig struct {
var defaultConfig = &types.Config{ var defaultConfig = &types.Config{
RootCmd: "sudo", RootCmd: "sudo",
UseRootCmd: true,
PagerStyle: "native", PagerStyle: "native",
IgnorePkgUpdates: []string{}, IgnorePkgUpdates: []string{},
AutoPull: true, AutoPull: true,
@@ -143,10 +142,6 @@ func (c *ALRConfig) LogLevel() string {
return c.cfg.LogLevel return c.cfg.LogLevel
} }
func (c *ALRConfig) UseRootCmd() bool {
return c.cfg.UseRootCmd
}
func (c *ALRConfig) GetPaths() *Paths { func (c *ALRConfig) GetPaths() *Paths {
return c.paths return c.paths
} }

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -154,27 +154,27 @@ msgstr ""
msgid "Install a new package" msgid "Install a new package"
msgstr "" msgstr ""
#: install.go:52 #: install.go:56
msgid "Command install expected at least 1 argument, got %d" msgid "Command install expected at least 1 argument, got %d"
msgstr "" msgstr ""
#: install.go:114 #: install.go:118
msgid "Error when installing the package" msgid "Error parsing os release"
msgstr "" msgstr ""
#: install.go:159 #: install.go:163
msgid "Remove an installed package" msgid "Remove an installed package"
msgstr "" msgstr ""
#: install.go:178 #: install.go:182
msgid "Error listing installed packages" msgid "Error listing installed packages"
msgstr "" msgstr ""
#: install.go:215 #: install.go:223
msgid "Command remove expected at least 1 argument, got %d" msgid "Command remove expected at least 1 argument, got %d"
msgstr "" msgstr ""
#: install.go:230 #: install.go:238
msgid "Error removing packages" msgid "Error removing packages"
msgstr "" msgstr ""
@@ -190,10 +190,6 @@ msgstr ""
msgid "Error pulling repositories" msgid "Error pulling repositories"
msgstr "" msgstr ""
#: internal/cliutils/app_builder/builder.go:152
msgid "Error parsing os release"
msgstr ""
#: internal/cliutils/app_builder/builder.go:165 #: internal/cliutils/app_builder/builder.go:165
msgid "Unable to detect a supported package manager on the system" msgid "Unable to detect a supported package manager on the system"
msgstr "" msgstr ""
@@ -315,16 +311,16 @@ msgstr ""
msgid "ERROR" msgid "ERROR"
msgstr "" msgstr ""
#: internal/utils/cmd.go:97 #: internal/utils/cmd.go:95
msgid "Error on dropping capabilities" msgid "Error on dropping capabilities"
msgstr "" msgstr ""
#: internal/utils/cmd.go:164 #: internal/utils/cmd.go:123
msgid "You need to be a %s member to perform this action" msgid "You need to be root to perform this action"
msgstr "" msgstr ""
#: internal/utils/cmd.go:200 #: internal/utils/cmd.go:165
msgid "You need to be root to perform this action" msgid "You need to be a %s member to perform this action"
msgstr "" msgstr ""
#: list.go:41 #: list.go:41
@@ -413,19 +409,19 @@ msgstr ""
msgid "Executing %s()" msgid "Executing %s()"
msgstr "" msgstr ""
#: pkg/repos/pull.go:80 #: pkg/repos/pull.go:79
msgid "Pulling repository" msgid "Pulling repository"
msgstr "" msgstr ""
#: pkg/repos/pull.go:116 #: pkg/repos/pull.go:103
msgid "Repository up to date" msgid "Repository up to date"
msgstr "" msgstr ""
#: pkg/repos/pull.go:207 #: pkg/repos/pull.go:160
msgid "Git repository does not appear to be a valid ALR repo" msgid "Git repository does not appear to be a valid ALR repo"
msgstr "" msgstr ""
#: pkg/repos/pull.go:223 #: pkg/repos/pull.go:176
msgid "" msgid ""
"ALR repo's minimum ALR version is greater than the current version. Try " "ALR repo's minimum ALR version is greater than the current version. Try "
"updating ALR if something doesn't work." "updating ALR if something doesn't work."
@@ -443,35 +439,35 @@ msgstr ""
msgid "URL of the new repo" msgid "URL of the new repo"
msgstr "" msgstr ""
#: repo.go:75 #: repo.go:79
msgid "Repo \"%s\" already exists" msgid "Repo \"%s\" already exists"
msgstr "" msgstr ""
#: repo.go:86 repo.go:159 #: repo.go:90 repo.go:167
msgid "Error saving config" msgid "Error saving config"
msgstr "" msgstr ""
#: repo.go:112 #: repo.go:116
msgid "Remove an existing repository" msgid "Remove an existing repository"
msgstr "" msgstr ""
#: repo.go:119 #: repo.go:123
msgid "Name of the repo to be deleted" msgid "Name of the repo to be deleted"
msgstr "" msgstr ""
#: repo.go:148 #: repo.go:156
msgid "Repo \"%s\" does not exist" msgid "Repo \"%s\" does not exist"
msgstr "" msgstr ""
#: repo.go:155 #: repo.go:163
msgid "Error removing repo directory" msgid "Error removing repo directory"
msgstr "" msgstr ""
#: repo.go:178 #: repo.go:186
msgid "Error removing packages from database" msgid "Error removing packages from database"
msgstr "" msgstr ""
#: repo.go:189 #: repo.go:197
msgid "Pull all repositories that have changed" msgid "Pull all repositories that have changed"
msgstr "" msgstr ""
@@ -515,10 +511,10 @@ msgstr ""
msgid "Upgrade all installed packages" msgid "Upgrade all installed packages"
msgstr "" msgstr ""
#: upgrade.go:105 upgrade.go:122 #: upgrade.go:109 upgrade.go:126
msgid "Error checking for updates" msgid "Error checking for updates"
msgstr "" msgstr ""
#: upgrade.go:125 #: upgrade.go:129
msgid "There is nothing to do." msgid "There is nothing to do."
msgstr "" msgstr ""

View File

@@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: unnamed project\n" "Project-Id-Version: unnamed project\n"
"PO-Revision-Date: 2025-04-27 18:27+0300\n" "PO-Revision-Date: 2025-04-18 07:38+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"
@@ -161,27 +161,27 @@ msgstr "Ошибка кодирования переменных скрита"
msgid "Install a new package" msgid "Install a new package"
msgstr "Установить новый пакет" msgstr "Установить новый пакет"
#: install.go:52 #: install.go:56
msgid "Command install expected at least 1 argument, got %d" msgid "Command install expected at least 1 argument, got %d"
msgstr "Для команды install ожидался хотя бы 1 аргумент, получено %d" msgstr "Для команды install ожидался хотя бы 1 аргумент, получено %d"
#: install.go:114 #: install.go:118
msgid "Error when installing the package" msgid "Error parsing os release"
msgstr "Ошибка при установке пакета" msgstr "Ошибка при разборе файла выпуска операционной системы"
#: install.go:159 #: install.go:163
msgid "Remove an installed package" msgid "Remove an installed package"
msgstr "Удалить установленный пакет" msgstr "Удалить установленный пакет"
#: install.go:178 #: install.go:182
msgid "Error listing installed packages" msgid "Error listing installed packages"
msgstr "Ошибка при составлении списка установленных пакетов" msgstr "Ошибка при составлении списка установленных пакетов"
#: install.go:215 #: install.go:223
msgid "Command remove expected at least 1 argument, got %d" msgid "Command remove expected at least 1 argument, got %d"
msgstr "Для команды remove ожидался хотя бы 1 аргумент, получено %d" msgstr "Для команды remove ожидался хотя бы 1 аргумент, получено %d"
#: install.go:230 #: install.go:238
msgid "Error removing packages" msgid "Error removing packages"
msgstr "Ошибка при удалении пакетов" msgstr "Ошибка при удалении пакетов"
@@ -197,10 +197,6 @@ msgstr "Ошибка инициализации базы данных"
msgid "Error pulling repositories" msgid "Error pulling repositories"
msgstr "Ошибка при извлечении репозиториев" msgstr "Ошибка при извлечении репозиториев"
#: internal/cliutils/app_builder/builder.go:152
msgid "Error parsing os release"
msgstr "Ошибка при разборе файла выпуска операционной системы"
#: internal/cliutils/app_builder/builder.go:165 #: internal/cliutils/app_builder/builder.go:165
msgid "Unable to detect a supported package manager on the system" msgid "Unable to detect a supported package manager on the system"
msgstr "Не удалось обнаружить поддерживаемый менеджер пакетов в системе" msgstr "Не удалось обнаружить поддерживаемый менеджер пакетов в системе"
@@ -323,18 +319,18 @@ msgstr "%s %s загружается — %s/с\n"
msgid "ERROR" msgid "ERROR"
msgstr "ОШИБКА" msgstr "ОШИБКА"
#: internal/utils/cmd.go:97 #: internal/utils/cmd.go:95
msgid "Error on dropping capabilities" msgid "Error on dropping capabilities"
msgstr "Ошибка при понижении привилегий" msgstr "Ошибка при понижении привилегий"
#: internal/utils/cmd.go:164 #: internal/utils/cmd.go:123
msgid "You need to be a %s member to perform this action"
msgstr "Вы должны быть членом %s чтобы выполнить это"
#: internal/utils/cmd.go:200
msgid "You need to be root to perform this action" msgid "You need to be root to perform this action"
msgstr "Вы должны быть root чтобы выполнить это" msgstr "Вы должны быть root чтобы выполнить это"
#: internal/utils/cmd.go:165
msgid "You need to be a %s member to perform this action"
msgstr "Вы должны быть членом %s чтобы выполнить это"
#: list.go:41 #: list.go:41
msgid "List ALR repo packages" msgid "List ALR repo packages"
msgstr "Список пакетов репозитория ALR" msgstr "Список пакетов репозитория ALR"
@@ -425,19 +421,19 @@ msgstr "Выполнение build()"
msgid "Executing %s()" msgid "Executing %s()"
msgstr "Выполнение %s()" msgstr "Выполнение %s()"
#: pkg/repos/pull.go:80 #: pkg/repos/pull.go:79
msgid "Pulling repository" msgid "Pulling repository"
msgstr "Скачивание репозитория" msgstr "Скачивание репозитория"
#: pkg/repos/pull.go:116 #: pkg/repos/pull.go:103
msgid "Repository up to date" msgid "Repository up to date"
msgstr "Репозиторий уже обновлён" msgstr "Репозиторий уже обновлён"
#: pkg/repos/pull.go:207 #: pkg/repos/pull.go:160
msgid "Git repository does not appear to be a valid ALR repo" msgid "Git repository does not appear to be a valid ALR repo"
msgstr "Репозиторий Git не поддерживается репозиторием ALR" msgstr "Репозиторий Git не поддерживается репозиторием ALR"
#: pkg/repos/pull.go:223 #: pkg/repos/pull.go:176
msgid "" msgid ""
"ALR repo's minimum ALR version is greater than the current version. Try " "ALR repo's minimum ALR version is greater than the current version. Try "
"updating ALR if something doesn't work." "updating ALR if something doesn't work."
@@ -457,35 +453,35 @@ msgstr "Название нового репозитория"
msgid "URL of the new repo" msgid "URL of the new repo"
msgstr "URL-адрес нового репозитория" msgstr "URL-адрес нового репозитория"
#: repo.go:75 #: repo.go:79
msgid "Repo \"%s\" already exists" msgid "Repo \"%s\" already exists"
msgstr "Репозиторий \"%s\" уже существует" msgstr "Репозиторий \"%s\" уже существует"
#: repo.go:86 repo.go:159 #: repo.go:90 repo.go:167
msgid "Error saving config" msgid "Error saving config"
msgstr "Ошибка при сохранении конфигурации" msgstr "Ошибка при сохранении конфигурации"
#: repo.go:112 #: repo.go:116
msgid "Remove an existing repository" msgid "Remove an existing repository"
msgstr "Удалить существующий репозиторий" msgstr "Удалить существующий репозиторий"
#: repo.go:119 #: repo.go:123
msgid "Name of the repo to be deleted" msgid "Name of the repo to be deleted"
msgstr "Название репозитория удалён" msgstr "Название репозитория удалён"
#: repo.go:148 #: repo.go:156
msgid "Repo \"%s\" does not exist" msgid "Repo \"%s\" does not exist"
msgstr "Репозитория \"%s\" не существует" msgstr "Репозитория \"%s\" не существует"
#: repo.go:155 #: repo.go:163
msgid "Error removing repo directory" msgid "Error removing repo directory"
msgstr "Ошибка при удалении каталога репозитория" msgstr "Ошибка при удалении каталога репозитория"
#: repo.go:178 #: repo.go:186
msgid "Error removing packages from database" msgid "Error removing packages from database"
msgstr "Ошибка при удалении пакетов из базы данных" msgstr "Ошибка при удалении пакетов из базы данных"
#: repo.go:189 #: repo.go:197
msgid "Pull all repositories that have changed" msgid "Pull all repositories that have changed"
msgstr "Скачать все изменённые репозитории" msgstr "Скачать все изменённые репозитории"
@@ -529,11 +525,11 @@ msgstr "Ошибка при выполнении шаблона"
msgid "Upgrade all installed packages" msgid "Upgrade all installed packages"
msgstr "Обновить все установленные пакеты" msgstr "Обновить все установленные пакеты"
#: upgrade.go:105 upgrade.go:122 #: upgrade.go:109 upgrade.go:126
msgid "Error checking for updates" msgid "Error checking for updates"
msgstr "Ошибка при проверке обновлений" msgstr "Ошибка при проверке обновлений"
#: upgrade.go:125 #: upgrade.go:129
msgid "There is nothing to do." msgid "There is nothing to do."
msgstr "Здесь нечего делать." msgstr "Здесь нечего делать."
@@ -580,6 +576,9 @@ msgstr "Здесь нечего делать."
#~ msgid "Error installing native packages" #~ msgid "Error installing native packages"
#~ msgstr "Ошибка при установке нативных пакетов" #~ msgstr "Ошибка при установке нативных пакетов"
#~ msgid "Error installing package"
#~ msgstr "Ошибка при установке пакета"
#~ msgid "Error opening config file, using defaults" #~ msgid "Error opening config file, using defaults"
#~ msgstr "" #~ msgstr ""
#~ "Ошибка при открытии конфигурационного файла, используются значения по " #~ "Ошибка при открытии конфигурационного файла, используются значения по "

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -22,7 +22,6 @@ package types
// Config represents the ALR configuration file // Config represents the ALR configuration file
type Config struct { type Config struct {
RootCmd string `toml:"rootCmd" env:"ALR_ROOT_CMD"` RootCmd string `toml:"rootCmd" env:"ALR_ROOT_CMD"`
UseRootCmd bool `toml:"useRootCmd"`
PagerStyle string `toml:"pagerStyle" env:"ALR_PAGER_STYLE"` PagerStyle string `toml:"pagerStyle" env:"ALR_PAGER_STYLE"`
IgnorePkgUpdates []string `toml:"ignorePkgUpdates"` IgnorePkgUpdates []string `toml:"ignorePkgUpdates"`
Repos []Repo `toml:"repo"` Repos []Repo `toml:"repo"`
@@ -34,5 +33,4 @@ type Config struct {
type Repo struct { type Repo struct {
Name string `toml:"name"` Name string `toml:"name"`
URL string `toml:"url"` URL string `toml:"url"`
Ref string `toml:"ref"`
} }

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -19,7 +19,6 @@ package utils
import ( import (
"errors" "errors"
"os" "os"
"os/exec"
"os/user" "os/user"
"strconv" "strconv"
"syscall" "syscall"
@@ -28,7 +27,6 @@ import (
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"gitea.plemya-x.ru/Plemya-x/ALR/internal/cliutils" "gitea.plemya-x.ru/Plemya-x/ALR/internal/cliutils"
appbuilder "gitea.plemya-x.ru/Plemya-x/ALR/internal/cliutils/app_builder"
"gitea.plemya-x.ru/Plemya-x/ALR/internal/constants" "gitea.plemya-x.ru/Plemya-x/ALR/internal/constants"
) )
@@ -120,8 +118,11 @@ func ExitIfCantDropCapsToAlrUserNoPrivs() cli.ExitCoder {
return nil return nil
} }
func IsNotRoot() bool { func ExitIfNotRoot() error {
return os.Getuid() != 0 if os.Getuid() != 0 {
return cli.Exit(gotext.Get("You need to be root to perform this action"), 1)
}
return nil
} }
func EnsureIsAlrUser() error { func EnsureIsAlrUser() error {
@@ -183,33 +184,3 @@ func EscalateToRoot() error {
} }
return nil return nil
} }
func RootNeededAction(f cli.ActionFunc) cli.ActionFunc {
return func(ctx *cli.Context) error {
deps, err := appbuilder.
New(ctx.Context).
WithConfig().
Build()
if err != nil {
return err
}
defer deps.Defer()
if IsNotRoot() {
if !deps.Cfg.UseRootCmd() {
return cli.Exit(gotext.Get("You need to be root to perform this action"), 1)
}
executable, err := os.Executable()
if err != nil {
return cliutils.FormatCliExit("failed to get executable path", err)
}
args := append([]string{executable}, os.Args[1:]...)
cmd := exec.Command(deps.Cfg.RootCmd(), args...)
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
return cmd.Run()
}
return f(ctx)
}
}

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. 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. It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
ALR - Any Linux Repository ALR - Any Linux Repository
Copyright (C) {{ .Year }} The ALR Authors Copyright (C) {{ .Year }} Евгений Храмов
This program is free software: you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -439,7 +439,7 @@ func (b *Builder) BuildPackage(
} }
slog.Debug("BuildALRDeps") slog.Debug("BuildALRDeps")
builtPaths, builtNames, repoDeps, err := b.BuildALRDeps(ctx, input, depends) _, builtNames, repoDeps, err := b.BuildALRDeps(ctx, input, depends)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@@ -481,8 +481,8 @@ func (b *Builder) BuildPackage(
return nil, err return nil, err
} }
pkgPaths := removeDuplicates(append(builtPaths, res.BuiltPaths...)) pkgPaths := removeDuplicates(res.BuiltPaths)
pkgNames := removeDuplicates(append(builtNames, res.BuiltNames...)) pkgNames := removeDuplicates(res.BuiltNames)
return &BuildResult{ return &BuildResult{
PackagePaths: pkgPaths, PackagePaths: pkgPaths,

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -237,7 +237,6 @@ func GetSafeScriptExecutor() (ScriptExecutor, func(), error) {
UnixSocketConfig: &plugin.UnixSocketConfig{ UnixSocketConfig: &plugin.UnixSocketConfig{
Group: "alr", Group: "alr",
}, },
SyncStderr: os.Stderr,
}) })
rpcClient, err := client.Client() rpcClient, err := client.Client()
if err != nil { if err != nil {

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by
@@ -73,7 +73,7 @@ func (e *LocalScriptExecutor) ExecuteFirstPass(ctx context.Context, input *Build
runner, err := interp.New( runner, err := interp.New(
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
interp.StdIO(os.Stdin, os.Stderr, os.Stderr), // Устанавливаем стандартный ввод-вывод interp.StdIO(os.Stdin, os.Stdout, os.Stderr), // Устанавливаем стандартный ввод-вывод
interp.ExecHandler(helpers.Restricted.ExecHandler(handlers.NopExec)), // Ограничиваем выполнение interp.ExecHandler(helpers.Restricted.ExecHandler(handlers.NopExec)), // Ограничиваем выполнение
interp.ReadDirHandler2(handlers.RestrictedReadDir(scriptDir)), // Ограничиваем чтение директорий interp.ReadDirHandler2(handlers.RestrictedReadDir(scriptDir)), // Ограничиваем чтение директорий
interp.StatHandler(handlers.RestrictedStat(scriptDir)), // Ограничиваем доступ к статистике файлов interp.StatHandler(handlers.RestrictedStat(scriptDir)), // Ограничиваем доступ к статистике файлов
@@ -193,7 +193,7 @@ func (e *LocalScriptExecutor) ExecuteSecondPass(
fakeroot := handlers.FakerootExecHandler(2 * time.Second) fakeroot := handlers.FakerootExecHandler(2 * time.Second)
runner, err := interp.New( runner, err := interp.New(
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
interp.StdIO(os.Stdin, os.Stderr, os.Stderr), // Устанавливаем стандартный ввод-вывод interp.StdIO(os.Stdin, os.Stdout, os.Stderr), // Устанавливаем стандартный ввод-вывод
interp.ExecHandlers(func(next interp.ExecHandlerFunc) interp.ExecHandlerFunc { interp.ExecHandlers(func(next interp.ExecHandlerFunc) interp.ExecHandlerFunc {
return helpers.Helpers.ExecHandler(fakeroot) return helpers.Helpers.ExecHandler(fakeroot)
}), // Обрабатываем выполнение через fakeroot }), // Обрабатываем выполнение через fakeroot

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,5 +1,5 @@
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
// This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. // 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. // It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
// //
// ALR - Any Linux Repository // ALR - Any Linux Repository
// Copyright (C) 2025 The ALR Authors // Copyright (C) 2025 Евгений Храмов
// //
// This program is free software: you can redistribute it and/or modify // 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 // it under the terms of the GNU General Public License as published by

View File

@@ -1,8 +1,8 @@
# This file was originally part of the project "LURE - Linux User REpository", created by Elara Musayelyan. # 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. # It has been modified as part of "ALR - Any Linux Repository" by Евгений Храмов.
# #
# ALR - Any Linux Repository # ALR - Any Linux Repository
# Copyright (C) 2025 The ALR Authors # Copyright (C) 2025 Евгений Храмов
# #
# This program is free software: you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
name='python3-{{.Info.Name | tolower}}' name='{{.Info.Name | tolower}}'
version='{{.Info.Version}}' version='{{.Info.Version}}'
release='1' release='1'
desc='{{.Info.Summary}}' desc='{{.Info.Summary}}'
@@ -48,8 +48,3 @@ package() {
cd "$srcdir/{{.Info.Name}}-${version}" cd "$srcdir/{{.Info.Name}}-${version}"
pip install --root="${pkgdir}/" . --no-deps --ignore-installed --disable-pip-version-check pip install --root="${pkgdir}/" . --no-deps --ignore-installed --disable-pip-version-check
} }
files() {
printf '"%s" ' ./usr/local/lib/python3.*/site-packages/{{.Info.Name | tolower}}/*
printf '"%s" ' ./usr/local/lib/python3.*/site-packages/{{.Info.Name | tolower}}-${version}.dist-info/*
}

Some files were not shown because too many files have changed in this diff Show More