mirror of
https://gitea.plemya-x.ru/Plemya-x/ALR.git
synced 2025-01-10 17:26:45 +00:00
Запрос на слияние 'dev' (#2) из dev в master
This commit is contained in:
commit
cd389501d6
2 changed files with 53 additions and 20 deletions
56
Makefile
56
Makefile
|
@ -1,20 +1,52 @@
|
||||||
PREFIX ?= /usr/local
|
NAME := alr
|
||||||
GIT_VERSION = $(shell git describe --tags )
|
GIT_VERSION = $(shell git describe --tags )
|
||||||
|
|
||||||
alr:
|
DESTDIR ?=
|
||||||
CGO_ENABLED=0 go build -ldflags="-X 'gitverse.ru/Xpamych/ALR/internal/config.Version=$(GIT_VERSION)'"
|
PREFIX ?= /usr/local
|
||||||
|
BIN := ./$(NAME)
|
||||||
|
INSTALED_BIN := $(DESTDIR)/$(PREFIX)/bin/$(NAME)
|
||||||
|
COMPLETIONS_DIR := ./scripts/completion
|
||||||
|
BASH_COMPLETION := $(COMPLETIONS_DIR)/bash
|
||||||
|
ZSH_COMPLETION := $(COMPLETIONS_DIR)/zsh
|
||||||
|
INSTALLED_BASH_COMPLETION := $(DESTDIR)$(PREFIX)/share/bash-completion/completions/$(NAME)
|
||||||
|
INSTALLED_ZSH_COMPLETION := $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_$(NAME)
|
||||||
|
|
||||||
clean:
|
.PHONY: build install clean clear uninstall check-no-root
|
||||||
rm -f alr
|
|
||||||
|
|
||||||
install: alr installmisc
|
build: check-no-root $(BIN)
|
||||||
install -Dm755 alr $(DESTDIR)$(PREFIX)/bin/alr
|
|
||||||
|
|
||||||
installmisc:
|
export CGO_ENABLED := 0
|
||||||
install -Dm755 scripts/completion/bash $(DESTDIR)$(PREFIX)/share/bash-completion/completions/alr
|
$(BIN):
|
||||||
install -Dm755 scripts/completion/zsh $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_alr
|
go build \
|
||||||
|
-ldflags="-X 'gitverse.ru/Xpamych/ALR/internal/config.Version=$(GIT_VERSION)'" \
|
||||||
|
-o $@
|
||||||
|
|
||||||
|
check-no-root:
|
||||||
|
@if [[ "$$(whoami)" == 'root' ]]; then \
|
||||||
|
echo "This target shouldn't run as root" 1>&2; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
install: \
|
||||||
|
$(INSTALED_BIN) \
|
||||||
|
$(INSTALLED_BASH_COMPLETION) \
|
||||||
|
$(INSTALLED_ZSH_COMPLETION)
|
||||||
|
@echo "Installation done!"
|
||||||
|
|
||||||
|
$(INSTALED_BIN): $(BIN)
|
||||||
|
install -Dm755 $< $@
|
||||||
|
|
||||||
|
$(INSTALLED_BASH_COMPLETION): $(BASH_COMPLETION)
|
||||||
|
install -Dm755 $< $@
|
||||||
|
|
||||||
|
$(INSTALLED_ZSH_COMPLETION): $(ZSH_COMPLETION)
|
||||||
|
install -Dm755 $< $@
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
rm -f /usr/local/bin/alr
|
rm -f \
|
||||||
|
$(INSTALED_BIN) \
|
||||||
|
$(INSTALLED_BASH_COMPLETION) \
|
||||||
|
$(INSTALLED_ZSH_COMPLETION)
|
||||||
|
|
||||||
.PHONY: install clean uninstall installmisc alr
|
clean clear:
|
||||||
|
rm -f $(BIN)
|
||||||
|
|
17
README.md
17
README.md
|
@ -18,13 +18,14 @@ ALR написан на чистом Go и после сборки не имее
|
||||||
curl -fsSL plemya-x.ru/alr/install.sh | bash
|
curl -fsSL plemya-x.ru/alr/install.sh | bash
|
||||||
```
|
```
|
||||||
|
|
||||||
**ВАЖНО**: При этом скрипт будет загружен и запущен с https://gitverse.ru/Xpamych/ALR/install. Пожалуйста, просматривайте любые скрипты, которые вы скачиваете из Интернета (включая этот), прежде чем запускать их.
|
**ВАЖНО**: При этом скрипт будет загружен и запущен с <https://gitverse.ru/Xpamych/ALR/install>. Пожалуйста, просматривайте любые скрипты, которые вы скачиваете из Интернета (включая этот), прежде чем запускать их.
|
||||||
|
|
||||||
### Сборка из исходного кода
|
### Сборка из исходного кода
|
||||||
|
|
||||||
Чтобы собрать ALR из исходного кода, вам понадобится версия Go 1.18 или новее. Как только Go будет установлен, клонируйте это репозиторий и запустите:
|
Чтобы собрать ALR из исходного кода, вам понадобится версия Go 1.18 или новее. Как только Go будет установлен, клонируйте это репозиторий и запустите:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
|
make build
|
||||||
sudo make install
|
sudo make install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -44,7 +45,7 @@ ALR был создан потому, что упаковка программн
|
||||||
|
|
||||||
## Репозитории
|
## Репозитории
|
||||||
|
|
||||||
Репозитории alr - это git-хранилища, которые содержат каталог для каждого пакета с файлом "alr.sh` внутри. Файл `alr.sh" содержит все инструкции по сборке пакета и информацию о нем. Скрипты "alr.sh` аналогичны скриптам Aur PKGBUILD.
|
Репозитории alr - это git-хранилища, которые содержат каталог для каждого пакета с файлом `alr.sh` внутри. Файл `alr.sh` содержит все инструкции по сборке пакета и информацию о нем. Скрипты `alr.sh` аналогичны скриптам Aur PKGBUILD.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
@ -52,9 +53,9 @@ ALR был создан потому, что упаковка программн
|
||||||
|
|
||||||
Благодарим следующие проекты за то, что они сделали все возможное:
|
Благодарим следующие проекты за то, что они сделали все возможное:
|
||||||
|
|
||||||
- https://github.com/mvdan/sh
|
- <https://github.com/mvdan/sh>
|
||||||
- https://github.com/go-git/go-git
|
- <https://github.com/go-git/go-git>
|
||||||
- https://github.com/mholt/archiver
|
- <https://github.com/mholt/archiver>
|
||||||
- https://github.com/goreleaser/nfpm
|
- <https://github.com/goreleaser/nfpm>
|
||||||
- https://github.com/charmbracelet/bubbletea
|
- <https://github.com/charmbracelet/bubbletea>
|
||||||
- https://gitlab.com/cznic/sqlite
|
- <https://gitlab.com/cznic/sqlite>
|
||||||
|
|
Loading…
Reference in a new issue