mirror of
https://github.com/webinstall/webi-installers.git
synced 2026-02-14 17:49:53 +00:00
76 lines
2.2 KiB
Bash
76 lines
2.2 KiB
Bash
#!/bin/sh
|
|
|
|
__init_serviceman() {
|
|
set -e
|
|
set -u
|
|
|
|
######################
|
|
# Install serviceman #
|
|
######################
|
|
|
|
# Every package should define these 6 variables
|
|
pkg_cmd_name="serviceman"
|
|
|
|
pkg_dst_cmd="$HOME/.local/bin/serviceman"
|
|
# shellcheck disable=SC2034
|
|
pkg_dst="$pkg_dst_cmd"
|
|
|
|
pkg_src_cmd="$HOME/.local/opt/serviceman-v$WEBI_VERSION/bin/serviceman"
|
|
pkg_src_bin="$HOME/.local/opt/serviceman-v$WEBI_VERSION/bin"
|
|
pkg_src_dir="$HOME/.local/opt/serviceman-v$WEBI_VERSION"
|
|
# shellcheck disable=SC2034
|
|
pkg_src="$pkg_src_cmd"
|
|
|
|
pkg_install() {
|
|
if test -e ./*"$pkg_cmd_name"*/share; then
|
|
rm -rf "${pkg_src_dir}"
|
|
# mv ./bnnanet-serviceman-* "$HOME/.local/opt/serviceman-v0.9.1"
|
|
mv ./*"$pkg_cmd_name"*/ "${pkg_src_dir}"
|
|
else
|
|
# $HOME/.local/opt/serviceman-v0.8.0/bin
|
|
mkdir -p "$pkg_src_bin"
|
|
|
|
# mv ./serviceman* "$HOME/.local/opt/serviceman-v0.8.0/bin/serviceman"
|
|
mv ./"$pkg_cmd_name"* "$pkg_src_cmd"
|
|
|
|
# chmod a+x "$HOME/.local/opt/serviceman-v0.8.0/bin/serviceman"
|
|
chmod a+x "$pkg_src_cmd"
|
|
fi
|
|
}
|
|
|
|
pkg_link() {
|
|
(
|
|
cd ~/.local/opt/ || return 1
|
|
rm -rf ./serviceman
|
|
ln -s "serviceman-v$WEBI_VERSION" 'serviceman'
|
|
)
|
|
|
|
(
|
|
mkdir -p ~/.local/share/
|
|
cd ~/.local/share/ || return 1
|
|
rm -rf ./serviceman
|
|
ln -s "../opt/serviceman-v$WEBI_VERSION/share/serviceman" 'serviceman'
|
|
)
|
|
|
|
(
|
|
mkdir -p ~/.local/bin/
|
|
cd ~/.local/bin/ || return 1
|
|
rm -rf ./serviceman
|
|
ln -s "../opt/serviceman-v$WEBI_VERSION/bin/serviceman" 'serviceman'
|
|
)
|
|
}
|
|
|
|
pkg_get_current_version() {
|
|
# 'serviceman version' has output in this format:
|
|
# serviceman v0.9.1 (2024-12-11 14:29 -0500)
|
|
# Copyright 2024 AJ ONeal
|
|
# Licensed under the MPL-2.0
|
|
# This trims it down to just the version number:
|
|
# 0.9.1
|
|
serviceman --version 2> /dev/null | head -n 1 | cut -d' ' -f2 | sed 's:^v::'
|
|
}
|
|
|
|
}
|
|
|
|
__init_serviceman
|