0
0
Fork 0
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:
Xpamych 2024-07-10 15:04:44 +00:00
commit cd389501d6
2 changed files with 53 additions and 20 deletions

View file

@ -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)

View file

@ -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>