fireshare: added some more vars

This commit is contained in:
tremor021
2026-03-30 10:47:03 +02:00
parent 634e89a762
commit c91d4a43c8
3 changed files with 68 additions and 5 deletions

View File

@@ -7,10 +7,10 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
# Source: https://github.com/ShaneIsrael/fireshare # Source: https://github.com/ShaneIsrael/fireshare
APP="Fireshare" APP="Fireshare"
var_tags="${var_tags:-}" var_tags="${var_tags:-sharing;video}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"

View File

@@ -12,6 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
setup_hwaccel
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt install -y \
@@ -88,6 +89,8 @@ $STD ldconfig
msg_ok "Compiled ffmpeg" msg_ok "Compiled ffmpeg"
msg_info "Configuring Fireshare (Patience)" msg_info "Configuring Fireshare (Patience)"
ADMIN_PASSWORD=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
SECRET=$(openssl rand -base64 48)
mkdir -p /opt/fireshare-{data,videos,processed} mkdir -p /opt/fireshare-{data,videos,processed}
cd /opt cd /opt
$STD git clone https://github.com/ShaneIsrael/fireshare.git $STD git clone https://github.com/ShaneIsrael/fireshare.git
@@ -112,17 +115,22 @@ export VIDEO_DIRECTORY=/opt/fireshare-videos
export PROCESSED_DIRECTORY=/opt/fireshare-processed export PROCESSED_DIRECTORY=/opt/fireshare-processed
$STD uv run flask db upgrade $STD uv run flask db upgrade
cat <<'EOF' >/opt/fireshare/fireshare.env cat <<EOF >/opt/fireshare/fireshare.env
FLASK_APP="/opt/fireshare/app/server/fireshare:create_app()" FLASK_APP="/opt/fireshare/app/server/fireshare:create_app()"
DOMAIN=
ENVIRONMENT=production ENVIRONMENT=production
DATA_DIRECTORY=/opt/fireshare-data DATA_DIRECTORY=/opt/fireshare-data
VIDEO_DIRECTORY=/opt/fireshare-videos VIDEO_DIRECTORY=/opt/fireshare-videos
PROCESSED_DIRECTORY=/opt/fireshare-processed PROCESSED_DIRECTORY=/opt/fireshare-processed
TEMPLATE_PATH=/opt/fireshare/app/server/fireshare/templates TEMPLATE_PATH=/opt/fireshare/app/server/fireshare/templates
ADMIN_PASSWORD=admin SECRET_KEY=${SECRET}
ADMIN_PASSWORD=${ADMIN_PASSWORD}
TZ=UTC TZ=UTC
LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64:/usr/local/lib:/usr/local/cuda/lib64:$LD_LIBRARY_PATH LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64:/usr/local/lib:/usr/local/cuda/lib64:\$LD_LIBRARY_PATH
PATH=/usr/local/bin:$PATH PATH=/usr/local/bin:$PATH
ENABLE_TRANSCODING=
TRANSCODE_GPU=
NVIDIA_DRIVER_CAPABILITIES=
EOF EOF
cd /opt/fireshare/app/client cd /opt/fireshare/app/client
@@ -134,6 +142,13 @@ sed -i 's|root /processed/|root /opt/fireshare-processed|g' /etc/nginx/nginx.con
sed -i 's/^user[[:space:]]\+nginx;/user root;/' /etc/nginx/nginx.conf sed -i 's/^user[[:space:]]\+nginx;/user root;/' /etc/nginx/nginx.conf
sed -i 's|root[[:space:]]\+/app/build;|root /opt/fireshare/app/client/build;|' /etc/nginx/nginx.conf sed -i 's|root[[:space:]]\+/app/build;|root /opt/fireshare/app/client/build;|' /etc/nginx/nginx.conf
systemctl start nginx systemctl start nginx
cat <<EOF >~/fireshare.creds
Fireshare Admin Credentials
========================
Username: admin
Password: ${ADMIN_PASSWORD}
EOF
msg_ok "Configured Fireshare" msg_ok "Configured Fireshare"
msg_info "Creating services" msg_info "Creating services"

48
json/fireshare.json Normal file
View File

@@ -0,0 +1,48 @@
{
"name": "fireshare",
"slug": "fireshare",
"categories": [
6
],
"date_created": "2026-02-21",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 9000,
"documentation": "https://github.com/ShaneIsrael/fireshare/blob/develop/README.md",
"website": "https://github.com/ShaneIsrael/fireshare",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/fireshare.webp",
"config_path": "/opt/fireshare/fireshare.env",
"description": "Fireshare is a self-hosted app that lets you share videos — particularly gaming clips — via unique links. You upload videos to a folder, and the app generates shareable URLs for each one. It's designed as a lightweight alternative to services like Medal or YouTube for people who want full control over their content without relying on third-party platforms.",
"install_methods": [
{
"type": "default",
"script": "ct/fireshare.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 10,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Type `cat ~/fireshare.creds` to get admin username and password.",
"type": "info"
},
{
"text": "To enable GPU transcoding, you need to set proper variable in `/opt/fireshare/fireshare.env`.",
"type": "info"
},
{
"text": "The installation is compiling `ffmpeg`, `SVT-AV1` and NVIDIA headers from source, this may take a while, depending on your host speed. If possible, increase CPU cores allocated to the LXC container.",
"type": "warning"
}
]
}