From 2293db1039874583c4b8fe3f5c37af7b339efbd1 Mon Sep 17 00:00:00 2001 From: Katy248 Date: Wed, 10 Jul 2024 14:34:35 +0300 Subject: [PATCH 1/5] Updated Makefile --- Makefile | 51 +++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index ff9d46e..d4709c9 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,47 @@ -PREFIX ?= /usr/local +NAME := alr GIT_VERSION = $(shell git describe --tags ) -alr: - CGO_ENABLED=0 go build -ldflags="-X 'gitverse.ru/Xpamych/ALR/internal/config.Version=$(GIT_VERSION)'" +DESTDIR ?= +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: - rm -f alr +.PHONY: install clean clear uninstall check-no-root -install: alr installmisc - install -Dm755 alr $(DESTDIR)$(PREFIX)/bin/alr +export CGO_ENABLED := 0 +$(BIN): check-no-root + go build \ + -ldflags="-X 'gitverse.ru/Xpamych/ALR/internal/config.Version=$(GIT_VERSION)'" \ + -o $@ -installmisc: - install -Dm755 scripts/completion/bash $(DESTDIR)$(PREFIX)/share/bash-completion/completions/alr - install -Dm755 scripts/completion/zsh $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_alr +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: - rm -f /usr/local/bin/alr + rm -f \ + $(INSTALED_BIN) \ + $(INSTALLED_BASH_COMPLETION) \ + $(INSTALLED_ZSH_COMPLETION) -.PHONY: install clean uninstall installmisc alr \ No newline at end of file +clean clear: + rm -f $(BIN) From 65a5926b77a5da09296f2feceafb371881583fb0 Mon Sep 17 00:00:00 2001 From: Katy248 Date: Wed, 10 Jul 2024 14:39:52 +0300 Subject: [PATCH 2/5] Updated Readme --- README.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 9bec0cd..9986612 100644 --- a/README.md +++ b/README.md @@ -18,13 +18,14 @@ ALR написан на чистом Go и после сборки не имее curl -fsSL plemya-x.ru/alr/install.sh | bash ``` -**ВАЖНО**: При этом скрипт будет загружен и запущен с https://gitverse.ru/Xpamych/ALR/install. Пожалуйста, просматривайте любые скрипты, которые вы скачиваете из Интернета (включая этот), прежде чем запускать их. +**ВАЖНО**: При этом скрипт будет загружен и запущен с . Пожалуйста, просматривайте любые скрипты, которые вы скачиваете из Интернета (включая этот), прежде чем запускать их. ### Сборка из исходного кода Чтобы собрать ALR из исходного кода, вам понадобится версия Go 1.18 или новее. Как только Go будет установлен, клонируйте это репозиторий и запустите: ```shell +make alr sudo make install ``` @@ -52,9 +53,9 @@ ALR был создан потому, что упаковка программн Благодарим следующие проекты за то, что они сделали все возможное: -- https://github.com/mvdan/sh -- https://github.com/go-git/go-git -- https://github.com/mholt/archiver -- https://github.com/goreleaser/nfpm -- https://github.com/charmbracelet/bubbletea -- https://gitlab.com/cznic/sqlite \ No newline at end of file +- +- +- +- +- +- From 0d3363bcaf012432aca19af8d29b10d492949890 Mon Sep 17 00:00:00 2001 From: Katy248 Date: Wed, 10 Jul 2024 14:42:59 +0300 Subject: [PATCH 3/5] Fixed Readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9986612..0df4b26 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ ALR был создан потому, что упаковка программн ## Репозитории -Репозитории alr - это git-хранилища, которые содержат каталог для каждого пакета с файлом "alr.sh` внутри. Файл `alr.sh" содержит все инструкции по сборке пакета и информацию о нем. Скрипты "alr.sh` аналогичны скриптам Aur PKGBUILD. +Репозитории alr - это git-хранилища, которые содержат каталог для каждого пакета с файлом `alr.sh` внутри. Файл `alr.sh` содержит все инструкции по сборке пакета и информацию о нем. Скрипты `alr.sh` аналогичны скриптам Aur PKGBUILD. --- From 7825a4da9b1538ad1c78411c5e92dc29f9b2309c Mon Sep 17 00:00:00 2001 From: Katy248 Date: Wed, 10 Jul 2024 14:46:11 +0300 Subject: [PATCH 4/5] Fixed Makefile --- Makefile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index d4709c9..0b41c1c 100644 --- a/Makefile +++ b/Makefile @@ -4,17 +4,19 @@ GIT_VERSION = $(shell git describe --tags ) DESTDIR ?= PREFIX ?= /usr/local BIN := ./$(NAME) -INSTALED_BIN := $(DESTDIR)$(PREFIX)/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) -.PHONY: install clean clear uninstall check-no-root +.PHONY: build install clean clear uninstall check-no-root + +build: check-no-root $(BIN) export CGO_ENABLED := 0 -$(BIN): check-no-root +$(BIN): go build \ -ldflags="-X 'gitverse.ru/Xpamych/ALR/internal/config.Version=$(GIT_VERSION)'" \ -o $@ @@ -25,7 +27,10 @@ check-no-root: exit 1; \ fi -install: $(INSTALED_BIN) $(INSTALLED_BASH_COMPLETION) $(INSTALLED_ZSH_COMPLETION) +install: \ + $(INSTALED_BIN) \ + $(INSTALLED_BASH_COMPLETION) \ + $(INSTALLED_ZSH_COMPLETION) @echo "Installation done!" $(INSTALED_BIN): $(BIN) From 117985ca1d791025e581c5ed73d4e650eba3024d Mon Sep 17 00:00:00 2001 From: Katy248 Date: Wed, 10 Jul 2024 14:48:28 +0300 Subject: [PATCH 5/5] Another Readme fix --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0df4b26..338db8e 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ curl -fsSL plemya-x.ru/alr/install.sh | bash Чтобы собрать ALR из исходного кода, вам понадобится версия Go 1.18 или новее. Как только Go будет установлен, клонируйте это репозиторий и запустите: ```shell -make alr +make build sudo make install ```