Compare commits

..

No commits in common. "chore/add-linters" and "master" have entirely different histories.

33 changed files with 194 additions and 251 deletions

@ -1,26 +0,0 @@
run:
timeout: 5m
linters-settings:
goimports:
local-prefixes: "plemya-x.ru/alr"
gofmt:
simplify: true
gofumpt:
extra-rules: true
linters:
enable:
- gofmt
- gofumpt
- goimports
- gocritic
- govet
- staticcheck
- unused
- errcheck
- typecheck
# - forbidigo
issues:
fix: true

@ -11,8 +11,6 @@ ZSH_COMPLETION := $(COMPLETIONS_DIR)/zsh
INSTALLED_BASH_COMPLETION := $(DESTDIR)$(PREFIX)/share/bash-completion/completions/$(NAME) INSTALLED_BASH_COMPLETION := $(DESTDIR)$(PREFIX)/share/bash-completion/completions/$(NAME)
INSTALLED_ZSH_COMPLETION := $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_$(NAME) INSTALLED_ZSH_COMPLETION := $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_$(NAME)
GOLANGCI_LINT := go run github.com/golangci/golangci-lint/cmd/golangci-lint@v1.62.2
.PHONY: build install clean clear uninstall check-no-root .PHONY: build install clean clear uninstall check-no-root
build: check-no-root $(BIN) build: check-no-root $(BIN)
@ -27,10 +25,6 @@ check-no-root:
exit 1; \ exit 1; \
fi fi
# TODO: remove --tests=false
fmt:
$(GOLANGCI_LINT) run --fix --tests=false
install: \ install: \
$(INSTALED_BIN) \ $(INSTALED_BIN) \
$(INSTALLED_BASH_COMPLETION) \ $(INSTALLED_BASH_COMPLETION) \

@ -23,7 +23,6 @@ import (
"path/filepath" "path/filepath"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/osutils" "plemya-x.ru/alr/internal/osutils"
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"

1
fix.go

@ -22,7 +22,6 @@ import (
"os" "os"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"

1
gen.go

@ -4,7 +4,6 @@ import (
"os" "os"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"plemya-x.ru/alr/pkg/gen" "plemya-x.ru/alr/pkg/gen"
) )

@ -6,13 +6,12 @@ import (
"strings" "strings"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp"
"plemya-x.ru/alr/internal/cpu" "plemya-x.ru/alr/internal/cpu"
"plemya-x.ru/alr/internal/shutils/helpers" "plemya-x.ru/alr/internal/shutils/helpers"
"plemya-x.ru/alr/pkg/distro" "plemya-x.ru/alr/pkg/distro"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp"
) )
var helperCmd = &cli.Command{ var helperCmd = &cli.Command{

@ -23,14 +23,13 @@ import (
"os" "os"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"gopkg.in/yaml.v3"
"plemya-x.ru/alr/internal/cliutils" "plemya-x.ru/alr/internal/cliutils"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/overrides" "plemya-x.ru/alr/internal/overrides"
"plemya-x.ru/alr/pkg/distro" "plemya-x.ru/alr/pkg/distro"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"plemya-x.ru/alr/pkg/repos" "plemya-x.ru/alr/pkg/repos"
"gopkg.in/yaml.v3"
) )
var infoCmd = &cli.Command{ var infoCmd = &cli.Command{

@ -22,7 +22,6 @@ import (
"fmt" "fmt"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"plemya-x.ru/alr/internal/cliutils" "plemya-x.ru/alr/internal/cliutils"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"

@ -24,7 +24,6 @@ import (
"strings" "strings"
"github.com/AlecAivazis/survey/v2" "github.com/AlecAivazis/survey/v2"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/internal/pager" "plemya-x.ru/alr/internal/pager"

@ -24,7 +24,6 @@ import (
"sync" "sync"
"github.com/pelletier/go-toml/v2" "github.com/pelletier/go-toml/v2"
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
) )

@ -24,9 +24,8 @@ import (
"strings" "strings"
"sync" "sync"
"golang.org/x/text/language"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"golang.org/x/text/language"
) )
var ( var (

@ -25,7 +25,6 @@ import (
"sync" "sync"
"github.com/pelletier/go-toml/v2" "github.com/pelletier/go-toml/v2"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
) )

@ -28,11 +28,10 @@ import (
"sync" "sync"
"github.com/jmoiron/sqlx" "github.com/jmoiron/sqlx"
"golang.org/x/exp/slices"
"modernc.org/sqlite"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"golang.org/x/exp/slices"
"modernc.org/sqlite"
) )
// CurrentVersion is the current version of the database. // CurrentVersion is the current version of the database.

@ -14,7 +14,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/>.
*/ */
// Пакет dl содержит абстракции для загрузки файлов и каталогов // Пакет dl содержит абстракции для загрузки файлов и каталогов
// из различных источников. // из различных источников.
@ -39,7 +39,6 @@ import (
"golang.org/x/crypto/blake2b" "golang.org/x/crypto/blake2b"
"golang.org/x/crypto/blake2s" "golang.org/x/crypto/blake2s"
"golang.org/x/exp/slices" "golang.org/x/exp/slices"
"plemya-x.ru/alr/internal/dlcache" "plemya-x.ru/alr/internal/dlcache"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
) )
@ -300,6 +299,8 @@ func linkDir(src, dest string) error {
return nil return nil
} }
rel, err := filepath.Rel(src, path) rel, err := filepath.Rel(src, path)
if err != nil { if err != nil {
return err return err

@ -33,7 +33,6 @@ import (
"github.com/mholt/archiver/v4" "github.com/mholt/archiver/v4"
"github.com/schollz/progressbar/v3" "github.com/schollz/progressbar/v3"
"plemya-x.ru/alr/internal/shutils/handlers" "plemya-x.ru/alr/internal/shutils/handlers"
) )

@ -22,12 +22,11 @@ import (
"reflect" "reflect"
"strings" "strings"
"golang.org/x/exp/slices"
"golang.org/x/text/language"
"plemya-x.ru/alr/internal/cpu" "plemya-x.ru/alr/internal/cpu"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/pkg/distro" "plemya-x.ru/alr/pkg/distro"
"golang.org/x/exp/slices"
"golang.org/x/text/language"
) )
type Opts struct { type Opts struct {

@ -25,13 +25,12 @@ import (
"strings" "strings"
"github.com/mitchellh/mapstructure" "github.com/mitchellh/mapstructure"
"plemya-x.ru/alr/internal/overrides"
"plemya-x.ru/alr/pkg/distro"
"golang.org/x/exp/slices" "golang.org/x/exp/slices"
"mvdan.cc/sh/v3/expand" "mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp" "mvdan.cc/sh/v3/interp"
"mvdan.cc/sh/v3/syntax" "mvdan.cc/sh/v3/syntax"
"plemya-x.ru/alr/internal/overrides"
"plemya-x.ru/alr/pkg/distro"
) )
var ErrNotPointerToStruct = errors.New("val must be a pointer to a struct") var ErrNotPointerToStruct = errors.New("val must be a pointer to a struct")

@ -10,9 +10,9 @@ import (
"syscall" "syscall"
"time" "time"
"plemya-x.ru/fakeroot"
"mvdan.cc/sh/v3/expand" "mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp" "mvdan.cc/sh/v3/interp"
"plemya-x.ru/fakeroot"
) )
// FakerootExecHandler was extracted from github.com/mvdan/sh/interp/handler.go // FakerootExecHandler was extracted from github.com/mvdan/sh/interp/handler.go

@ -31,9 +31,8 @@ import (
"github.com/go-git/go-git/v5" "github.com/go-git/go-git/v5"
"github.com/go-git/go-git/v5/plumbing/object" "github.com/go-git/go-git/v5/plumbing/object"
"golang.org/x/exp/slices" "golang.org/x/exp/slices"
"mvdan.cc/sh/v3/interp"
"plemya-x.ru/alr/internal/shutils/handlers" "plemya-x.ru/alr/internal/shutils/handlers"
"mvdan.cc/sh/v3/interp"
) )
var ( var (

@ -24,10 +24,9 @@ import (
"sync" "sync"
"go.elara.ws/logger" "go.elara.ws/logger"
"plemya-x.ru/alr/pkg/loggerctx"
"go.elara.ws/translate" "go.elara.ws/translate"
"golang.org/x/text/language" "golang.org/x/text/language"
"plemya-x.ru/alr/pkg/loggerctx"
) )
//go:embed files //go:embed files

@ -22,13 +22,12 @@ import (
"fmt" "fmt"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"golang.org/x/exp/slices"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"plemya-x.ru/alr/pkg/manager" "plemya-x.ru/alr/pkg/manager"
"plemya-x.ru/alr/pkg/repos" "plemya-x.ru/alr/pkg/repos"
"golang.org/x/exp/slices"
) )
var listCmd = &cli.Command{ var listCmd = &cli.Command{

@ -28,7 +28,6 @@ import (
"github.com/mattn/go-isatty" "github.com/mattn/go-isatty"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"go.elara.ws/logger" "go.elara.ws/logger"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/internal/translations" "plemya-x.ru/alr/internal/translations"

@ -52,7 +52,6 @@ import (
"github.com/goreleaser/nfpm/v2" "github.com/goreleaser/nfpm/v2"
"github.com/goreleaser/nfpm/v2/files" "github.com/goreleaser/nfpm/v2/files"
"plemya-x.ru/alr/internal/cliutils" "plemya-x.ru/alr/internal/cliutils"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/cpu" "plemya-x.ru/alr/internal/cpu"

@ -8,7 +8,6 @@ import (
"strings" "strings"
"github.com/goreleaser/nfpm/v2" "github.com/goreleaser/nfpm/v2"
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
) )

@ -23,11 +23,10 @@ import (
"os" "os"
"strings" "strings"
"plemya-x.ru/alr/internal/shutils/handlers"
"mvdan.cc/sh/v3/expand" "mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp" "mvdan.cc/sh/v3/interp"
"mvdan.cc/sh/v3/syntax" "mvdan.cc/sh/v3/syntax"
"plemya-x.ru/alr/internal/shutils/handlers"
) )
// OSRelease contains information from an os-release file // OSRelease contains information from an os-release file

@ -12,7 +12,6 @@ import (
// Используем директиву //go:embed для встраивания содержимого файла шаблона в строку pipTmpl // Используем директиву //go:embed для встраивания содержимого файла шаблона в строку pipTmpl
// Встраивание файла tmpls/pip.tmpl.sh // Встраивание файла tmpls/pip.tmpl.sh
//
//go:embed tmpls/pip.tmpl.sh //go:embed tmpls/pip.tmpl.sh
var pipTmpl string var pipTmpl string

@ -107,7 +107,6 @@ func (a *APTRpm) UpgradeAll(opts *Opts) error {
} }
return nil return nil
} }
func (y *APTRpm) ListInstalled(opts *Opts) (map[string]string, error) { func (y *APTRpm) ListInstalled(opts *Opts) (map[string]string, error) {
out := map[string]string{} out := map[string]string{}
cmd := exec.Command("rpm", "-qa", "--queryformat", "%{NAME}\u200b%|EPOCH?{%{EPOCH}:}:{}|%{VERSION}-%{RELEASE}\\n") cmd := exec.Command("rpm", "-qa", "--queryformat", "%{NAME}\u200b%|EPOCH?{%{EPOCH}:}:{}|%{VERSION}-%{RELEASE}\\n")

@ -35,10 +35,6 @@ import (
"github.com/go-git/go-git/v5/plumbing/format/diff" "github.com/go-git/go-git/v5/plumbing/format/diff"
"github.com/pelletier/go-toml/v2" "github.com/pelletier/go-toml/v2"
"go.elara.ws/vercmp" "go.elara.ws/vercmp"
"mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp"
"mvdan.cc/sh/v3/syntax"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/internal/shutils/decoder" "plemya-x.ru/alr/internal/shutils/decoder"
@ -46,6 +42,9 @@ import (
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"
"plemya-x.ru/alr/pkg/distro" "plemya-x.ru/alr/pkg/distro"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"mvdan.cc/sh/v3/expand"
"mvdan.cc/sh/v3/interp"
"mvdan.cc/sh/v3/syntax"
) )
// Pull pulls the provided repositories. If a repo doesn't exist, it will be cloned // Pull pulls the provided repositories. If a repo doesn't exist, it will be cloned

@ -24,13 +24,12 @@ import (
"github.com/pelletier/go-toml/v2" "github.com/pelletier/go-toml/v2"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"golang.org/x/exp/slices"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"plemya-x.ru/alr/pkg/repos" "plemya-x.ru/alr/pkg/repos"
"golang.org/x/exp/slices"
) )
var addrepoCmd = &cli.Command{ var addrepoCmd = &cli.Command{

@ -23,10 +23,6 @@ import (
"fmt" "fmt"
"github.com/urfave/cli/v2" "github.com/urfave/cli/v2"
"go.elara.ws/vercmp"
"golang.org/x/exp/maps"
"golang.org/x/exp/slices"
"plemya-x.ru/alr/internal/config" "plemya-x.ru/alr/internal/config"
"plemya-x.ru/alr/internal/db" "plemya-x.ru/alr/internal/db"
"plemya-x.ru/alr/internal/types" "plemya-x.ru/alr/internal/types"
@ -35,6 +31,9 @@ import (
"plemya-x.ru/alr/pkg/loggerctx" "plemya-x.ru/alr/pkg/loggerctx"
"plemya-x.ru/alr/pkg/manager" "plemya-x.ru/alr/pkg/manager"
"plemya-x.ru/alr/pkg/repos" "plemya-x.ru/alr/pkg/repos"
"go.elara.ws/vercmp"
"golang.org/x/exp/maps"
"golang.org/x/exp/slices"
) )
var upgradeCmd = &cli.Command{ var upgradeCmd = &cli.Command{