diff --git a/ct/ipfs.sh b/ct/ipfs.sh index 7a1270f2..26fe051f 100644 --- a/ct/ipfs.sh +++ b/ct/ipfs.sh @@ -21,7 +21,7 @@ echo -e "Loading..." APP="IPFS" var_disk="4" var_cpu="2" -var_ram="6144" +var_ram="4096" var_os="debian" var_version="12" variables @@ -55,14 +55,20 @@ function default_settings() { function update_script() { header_info if [[ ! -f /usr/local/kubo ]]; then msg_error "No ${APP} Installation Found!"; exit; fi -msg_info "Updating $APP LXC" -apt-get update &>/dev/null -apt-get -y upgrade &>/dev/null -wget -q "$(curl -s "https://api.github.com/repos/ipfs/kubo/releases/latest" | grep "linux-amd64.tar.gz" | grep "browser_download_url" | head -n 1 | cut -d\" -f4)" -tar -xzf kubo*linux-amd64.tar.gz -C /usr/local -rm -rf kubo*linux-amd64.tar.gz -systemctl restart ipfs.service -msg_ok "Updated $APP LXC" +RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) +if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then + msg_info "Updating $APP LXC" + apt-get update &>/dev/null + apt-get -y upgrade &>/dev/null + wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" + tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local + systemctl restart ipfs.service + echo "${RELEASE}" >/opt/${APP}_version.txt + rm "kubo_${RELEASE}_linux-amd64.tar.gz" + msg_ok "Updated $APP LXC" +else + msg_ok "No update required. ${APP} is already at ${RELEASE}" +fi exit } diff --git a/install/ipfs-install.sh b/install/ipfs-install.sh index b91c49ae..390674c1 100644 --- a/install/ipfs-install.sh +++ b/install/ipfs-install.sh @@ -22,15 +22,18 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing IPFS" -wget -q "$(curl -s "https://api.github.com/repos/ipfs/kubo/releases/latest" | grep "linux-amd64.tar.gz" | grep "browser_download_url" | head -n 1 | cut -d\" -f4)" -tar -xzf kubo*linux-amd64.tar.gz -C /usr/local +RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) +$STD wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" +tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local $STD ln -s /usr/local/kubo/ipfs /usr/local/bin/ipfs -ipfs init &>/dev/null +$STD ipfs init ipfs config Addresses.API /ip4/0.0.0.0/tcp/5001 ipfs config Addresses.Gateway /ip4/0.0.0.0/tcp/8080 LXCIP=$(hostname -I | awk '{print $1}') ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin "[\"http://${LXCIP}:5001\", \"http://localhost:3000\", \"http://127.0.0.1:5001\", \"https://webui.ipfs.io\", \"http://0.0.0.0:5001\"]" ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT", "POST"]' +echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" +$STD rm "kubo_${RELEASE}_linux-amd64.tar.gz" msg_ok "Installed IPFS" msg_info "Creating Service" @@ -46,7 +49,6 @@ Restart=on-failure [Install] WantedBy=multi-user.target EOF -systemctl -q daemon-reload systemctl enable --now -q ipfs.service msg_ok "Created Service" @@ -54,7 +56,6 @@ motd_ssh customize msg_info "Cleaning up" -rm -rf kubo*linux-amd64.tar.gz $STD apt-get -y autoremove $STD apt-get -y autoclean msg_ok "Cleaned"