Skip to content

Commit 498bf14

Browse files
authored
add alpine bitmagnet
1 parent 32df248 commit 498bf14

File tree

1 file changed

+85
-0
lines changed

1 file changed

+85
-0
lines changed
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright (c) 2021-2025 community-scripts ORG
4+
# Author: Slaviša Arežina (tremor021)
5+
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
6+
# Source: https://github.com/bitmagnet-io/bitmagnet
7+
8+
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
9+
color
10+
verb_ip6
11+
catch_errors
12+
setting_up_container
13+
network_check
14+
update_os
15+
16+
msg_info "Installing dependencies"
17+
$STD apk add --no-cache \
18+
gcc \
19+
musl-dev \
20+
git \
21+
iproute2-ss \
22+
sudo
23+
$STD apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community go
24+
msg_ok "Installed dependencies"
25+
26+
msg_info "Installing PostgreSQL"
27+
$STD apk add --no-cache \
28+
postgresql16 \
29+
postgresql16-contrib \
30+
postgresql16-openrc
31+
$STD rc-update add postgresql
32+
$STD rc-service postgresql start
33+
msg_ok "Installed PostreSQL"
34+
35+
RELEASE=$(curl -s https://api.github.com/repos/bitmagnet-io/bitmagnet/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
36+
37+
msg_info "Installing bitmagnet v${RELEASE}"
38+
mkdir -p /opt/bitmagnet
39+
temp_file=$(mktemp)
40+
curl -fsSL "https://github.com/bitmagnet-io/bitmagnet/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
41+
tar zxf "$temp_file" --strip-components=1 -C /opt/bitmagnet
42+
cd /opt/bitmagnet
43+
VREL=v$RELEASE
44+
$STD go build -ldflags "-s -w -X github.com/bitmagnet-io/bitmagnet/internal/version.GitTag=$VREL"
45+
chmod +x bitmagnet
46+
$STD su - postgres -c "psql -c 'CREATE DATABASE bitmagnet;'"
47+
echo "${RELEASE}" >/opt/bitmagnet_version.txt
48+
msg_ok "Installed bitmagnet v${RELEASE}"
49+
50+
read -rp "${TAB3}Enter your TMDB API key if you have one: " tmdbapikey
51+
52+
msg_info "Enabling bitmagnet Service"
53+
cat <<EOF >/etc/init.d/bitmagnet
54+
#!/sbin/openrc-run
55+
description="bitmagnet Service"
56+
directory="/opt/bitmagnet"
57+
command="/opt/bitmagnet/bitmagnet"
58+
command_args="worker run --all"
59+
command_background="true"
60+
command_user="root"
61+
pidfile="/var/run/bitmagnet.pid"
62+
63+
depend() {
64+
use net
65+
}
66+
67+
start_pre() {
68+
export TMDB_API_KEY="$tmdbapikey"
69+
}
70+
EOF
71+
chmod +x /etc/init.d/bitmagnet
72+
$STD rc-update add bitmagnet default
73+
msg_ok "Enabled bitmagnet Service"
74+
75+
msg_info "Starting bitmagnet"
76+
$STD service bitmagnet start
77+
msg_ok "Started bitmagnet"
78+
79+
motd_ssh
80+
customize
81+
82+
msg_info "Cleaning up"
83+
rm -f "$temp_file"
84+
$STD apk cache clean
85+
msg_ok "Cleaned"

0 commit comments

Comments
 (0)