Toon posts:

SpotWeb - Webbased Spotnet - deel 2 Vorige deel Overzicht

Pagina: 1 ... 50 51 Laatste
Acties:

Onderwerpen


  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
alesandro_46 schreef op dinsdag 2 december 2025 @ 13:05:
[...]

Bedoel je de template?
Die kan je instellen bij Config --> change preferences --> General.

Daar zijn vervolgens drie opties:
Template for non-mobile devices, mobiles, tablets
Weirdo was volgens mij de standaard, recent is de optie modern erbij gekomen.
Dat lijkt te werken..... Tnx.

Ook voor de tablet op we1rdo gezet - super oplossing! Al die plaatjes nemen veel te veel ruimte in beslag.

[ Voor 10% gewijzigd door DjoeC op 02-12-2025 14:27 ]


  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
#!/usr/bin/env bash

# Spotweb Proxmox LXC Installer - All-in-One Version
# Copyright (c) 2025 VenimK
# License: MIT
# Creates LXC container and installs Spotweb automatically

source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color

function header_info {
clear
cat <<"EOF"
   _____             __                __  
  / ___/____  ____  / /__      _____  / /_ 
  \__ \/ __ \/ __ \/ __/ | /| / / _ \/ __ \
 ___/ / /_/ / /_/ / /_ | |/ |/ /  __/ /_/ /
/____/ .___/\____/\__/ |__/|__/\___/_.___/ 
    /_/                                     
    
    Automated Debian LXC + Spotweb Installer
EOF
echo ""
}

header_info

# Start timer
START_TIME=$(date +%s)

# Configuration
CTID=""
HOSTNAME="spotweb"
DISK_SIZE="20"
CORES="2"
MEMORY="2048"
BRIDGE="vmbr0"
OSTYPE="debian"
OSVERSION="12"
WEBSERVER="apache"  # or nginx

# Get next available CTID
NEXTID=$(pvesh get /cluster/nextid)

# Detect available storage for containers
echo -e "${BLUE}Detecting available storage...${NC}"

# Prefer storages that explicitly support rootdir (containers)
mapfile -t STORAGE_OPTIONS < <(pvesm status -content rootdir 2>/dev/null | awk 'NR>1 {print $1}')

# Fallback: any storage entry if none reported with rootdir
if [ ${#STORAGE_OPTIONS[@]} -eq 0 ]; then
    mapfile -t STORAGE_OPTIONS < <(pvesm status 2>/dev/null | awk 'NR>1 {print $1}')
fi

if [ ${#STORAGE_OPTIONS[@]} -eq 0 ]; then
    echo -e "${RED}Error: No storage found on this Proxmox host${NC}"
    echo -e "${YELLOW}pvesm status output:${NC}"
    pvesm status || true
    exit 1
fi

echo -e "${CYAN}Available storage options:${NC}"
idx=1
for store in "${STORAGE_OPTIONS[@]}"; do
    echo -e "  ${idx}) ${store}"
    idx=$((idx+1))
done

echo ""
read -p "Select storage [1-${#STORAGE_OPTIONS[@]}] (default 1): " STORAGE_CHOICE

if [ -z "${STORAGE_CHOICE}" ]; then
    STORAGE_CHOICE=1
fi

if ! [[ "${STORAGE_CHOICE}" =~ ^[0-9]+$ ]] || [ "${STORAGE_CHOICE}" -lt 1 ] || [ "${STORAGE_CHOICE}" -gt ${#STORAGE_OPTIONS[@]} ]; then
    echo -e "${RED}Invalid selection. Aborting.${NC}"
    exit 1
fi

STORAGE=${STORAGE_OPTIONS[$((STORAGE_CHOICE-1))]}

echo -e "${GREEN}✓ Using storage: ${STORAGE}${NC}"

echo -e "${CYAN}Spotweb LXC Container Setup${NC}"
echo ""
echo -e "${YELLOW}This will create a Debian 12 LXC container and install Spotweb${NC}"
echo ""
echo -e "${GREEN}Default settings:${NC}"
echo -e "  Container ID: ${NEXTID}"
echo -e "  Hostname: ${HOSTNAME}"
echo -e "  CPU Cores: ${CORES}"
echo -e "  RAM: ${MEMORY}MB"
echo -e "  Disk: ${DISK_SIZE}GB"
echo -e "  Storage: ${STORAGE}"
echo -e "  OS: Debian ${OSVERSION}"
echo -e "  Web Server: ${WEBSERVER}"
echo ""

read -p "Container hostname [${HOSTNAME}]: " INPUT_HOST
if [[ -n "${INPUT_HOST}" ]]; then
  HOSTNAME="${INPUT_HOST}"
fi

read -p "Disk size in GB [${DISK_SIZE}]: " INPUT_DISK
if [[ -n "${INPUT_DISK}" && "${INPUT_DISK}" =~ ^[0-9]+$ && "${INPUT_DISK}" -gt 0 ]]; then
  DISK_SIZE="${INPUT_DISK}"
fi

read -p "CPU cores [${CORES}]: " INPUT_CORES
if [[ -n "${INPUT_CORES}" && "${INPUT_CORES}" =~ ^[0-9]+$ && "${INPUT_CORES}" -gt 0 ]]; then
  CORES="${INPUT_CORES}"
fi

read -p "RAM in MB [${MEMORY}]: " INPUT_MEM
if [[ -n "${INPUT_MEM}" && "${INPUT_MEM}" =~ ^[0-9]+$ && "${INPUT_MEM}" -gt 0 ]]; then
  MEMORY="${INPUT_MEM}"
fi

read -p "Web server (apache/nginx) [${WEBSERVER}]: " INPUT_WEB
if [[ -n "${INPUT_WEB}" && ("${INPUT_WEB}" == "apache" || "${INPUT_WEB}" == "nginx") ]]; then
  WEBSERVER="${INPUT_WEB}"
fi

echo ""
echo -e "${CYAN}Final settings:${NC}"
echo -e "  Container ID: ${NEXTID}"
echo -e "  Hostname: ${HOSTNAME}"
echo -e "  CPU Cores: ${CORES}"
echo -e "  RAM: ${MEMORY}MB"
echo -e "  Disk: ${DISK_SIZE}GB"
echo -e "  Storage: ${STORAGE}"
echo -e "  OS: Debian ${OSVERSION}"
echo -e "  Web Server: ${WEBSERVER}"
echo ""

read -p "Press Enter to create the container and install Spotweb, or Ctrl+C to cancel: "

CTID=$NEXTID

echo ""
echo -e "${BLUE}Creating LXC container...${NC}"

# Find the latest Debian 12 template
echo -e "${YELLOW}Finding Debian ${OSVERSION} template...${NC}"
pveam update

# Get the latest Debian 12 template name
TEMPLATE=$(pveam available | grep "debian-${OSVERSION}" | grep "standard" | tail -n1 | awk '{print $2}')

if [ -z "$TEMPLATE" ]; then
    echo -e "${RED}Error: Could not find Debian ${OSVERSION} template${NC}"
    echo -e "${YELLOW}Available templates:${NC}"
    pveam available | grep debian
    exit 1
fi

echo -e "${GREEN}✓ Found template: ${TEMPLATE}${NC}"

TEMPLATE_PATH="/var/lib/vz/template/cache/${TEMPLATE}"

if [ ! -f "$TEMPLATE_PATH" ]; then
    echo -e "${YELLOW}Downloading template...${NC}"
    pveam download local "$TEMPLATE"
fi

# Create container (unprivileged for better security)
pct create $CTID $TEMPLATE_PATH \
    --hostname $HOSTNAME \
    --cores $CORES \
    --memory $MEMORY \
    --rootfs ${STORAGE}:${DISK_SIZE} \
    --net0 name=eth0,bridge=${BRIDGE},ip=dhcp \
    --unprivileged 1 \
    --features nesting=1 \
    --onboot 1 \
    --start 1

echo -e "${GREEN}✓ Container created (ID: $CTID)${NC}"

# Wait for container to start
echo -e "${BLUE}Waiting for container to start...${NC}"
sleep 5

# Wait for network
echo -e "${BLUE}Waiting for network...${NC}"
for i in {1..30}; do
    if pct exec $CTID -- ping -c 1 8.8.8.8 >/dev/null 2>&1; then
        echo -e "${GREEN}✓ Network is ready${NC}"
        break
    fi
    sleep 2
done

# Get container IP
IP=$(pct exec $CTID -- hostname -I | awk '{print $1}')
echo -e "${GREEN}✓ Container IP: $IP${NC}"
echo ""

# Run installation inside container
echo -e "${BLUE}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${BLUE}║  Starting Spotweb installation inside container...        ║${NC}"
echo -e "${BLUE}║  This will take 5-15 minutes                              ║${NC}"
echo -e "${BLUE}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""

# Create installation script inside container
pct exec $CTID -- bash <<'INSTALLER_SCRIPT'
#!/bin/bash
set -e

# Error trap to show what failed
trap 'echo -e "\n\033[0;31m✗ Installation failed at line $LINENO\033[0m\n"; exit 1' ERR

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'

print_success() { echo -e "${GREEN}✓ $1${NC}"; }
print_info() { echo -e "${BLUE}ℹ $1${NC}"; }
print_warning() { echo -e "${YELLOW}⚠ $1${NC}"; }

SPOTWEB_DIR="/var/www/html/spotweb"
DB_NAME="spotweb"
DB_USER="spotweb"

generate_password() {
    tr -dc 'A-Za-z0-9!@#$%^&*()_+=' < /dev/urandom 2>/dev/null | head -c 20
}

DB_PASS=$(generate_password)

# Update system
print_info "Updating system packages..."
apt-get update -qq
apt-get upgrade -y -qq
print_success "System updated"

# Fix locale warnings
print_info "Configuring locales..."
apt-get install -y locales
sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
locale-gen en_US.UTF-8 > /dev/null 2>&1
update-locale LANG=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
print_success "Locales configured"

# Install basic tools
print_info "Installing basic tools (curl, wget, git, unzip)..."
apt-get install -y curl wget git unzip ca-certificates gnupg2
print_success "Basic tools installed"

# Detect Debian version and set PHP version
DEBIAN_VERSION=$(cat /etc/debian_version | cut -d. -f1)
if [ "$DEBIAN_VERSION" -ge 12 ]; then
    PHP_VERSION="8.2"
else
    PHP_VERSION="7.4"
fi

print_info "Using PHP $PHP_VERSION"

# Install PHP
print_info "Installing PHP ${PHP_VERSION} and extensions..."
echo "  → Installing: php, curl, gd, mbstring, xml, zip, mysql, dom, intl, opcache"
apt-get install -y \
    php${PHP_VERSION} \
    php${PHP_VERSION}-cli \
    php${PHP_VERSION}-common \
    php${PHP_VERSION}-curl \
    php${PHP_VERSION}-gd \
    php${PHP_VERSION}-mbstring \
    php${PHP_VERSION}-xml \
    php${PHP_VERSION}-zip \
    php${PHP_VERSION}-mysql \
    php${PHP_VERSION}-dom \
    php${PHP_VERSION}-intl \
    php${PHP_VERSION}-opcache

WEBSERVER="WEBSERVER_PLACEHOLDER"

if [ "$WEBSERVER" == "nginx" ]; then
    echo "  → Installing PHP-FPM for Nginx"
    apt-get install -y php${PHP_VERSION}-fpm
else
    echo "  → Installing Apache PHP module"
    apt-get install -y libapache2-mod-php${PHP_VERSION}
fi

print_success "PHP installed"

# Install MariaDB
print_info "Installing MariaDB server..."
echo "  → Installing mariadb-server and mariadb-client"
apt-get install -y mariadb-server mariadb-client
echo "  → Enabling and starting MariaDB service"
systemctl enable mariadb
systemctl start mariadb
print_success "MariaDB installed"

# Configure database
print_info "Creating database and user..."
echo "  → Creating database: ${DB_NAME}"
mysql -e "CREATE DATABASE IF NOT EXISTS ${DB_NAME} CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"

echo "  → Creating user: ${DB_USER}"
# Drop and recreate user to ensure password matches
mysql -e "DROP USER IF EXISTS '${DB_USER}'@'localhost';" 2>/dev/null || true
mysql -e "CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';"
mysql -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';"
mysql -e "FLUSH PRIVILEGES;"
print_success "Database configured"

# Install web server
if [ "$WEBSERVER" == "nginx" ]; then
    print_info "Installing Nginx web server..."
    apt-get install -y nginx
    
    # Configure Nginx
    cat > /etc/nginx/sites-available/spotweb <<EOF
server {
    listen 80 default_server;
    listen [::]:80 default_server;
    
    root /var/www/html/spotweb;
    index index.php index.html;
    
    server_name _;
    
    location / {
        try_files \$uri \$uri/ /index.php?\$query_string;
    }
    
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php${PHP_VERSION}-fpm.sock;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
        include fastcgi_params;
    }
    
    location ~ /\.ht {
        deny all;
    }
}
EOF
    
    ln -sf /etc/nginx/sites-available/spotweb /etc/nginx/sites-enabled/spotweb
    rm -f /etc/nginx/sites-enabled/default
    
    systemctl enable nginx > /dev/null 2>&1
    systemctl enable php${PHP_VERSION}-fpm > /dev/null 2>&1
    systemctl restart php${PHP_VERSION}-fpm
    systemctl restart nginx
    
    print_success "Nginx configured"
else
    print_info "Installing Apache web server..."
    apt-get install -y apache2
    
    # Configure Apache
    echo "  → Enabling Apache modules: rewrite, php"
    a2enmod rewrite
    a2enmod php${PHP_VERSION}
    
    cat > /etc/apache2/sites-available/spotweb.conf <<'EOF'
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/spotweb
    
    <Directory /var/www/html/spotweb>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/spotweb_error.log
    CustomLog ${APACHE_LOG_DIR}/spotweb_access.log combined
</VirtualHost>
EOF
    
    a2dissite 000-default.conf > /dev/null 2>&1
    a2ensite spotweb.conf > /dev/null 2>&1
    
    systemctl enable apache2 > /dev/null 2>&1
    systemctl restart apache2
    
    print_success "Apache configured"
fi

# Download Spotweb
print_info "Downloading Spotweb from GitHub..."
echo "  → Cloning repository (master branch)"
rm -rf "$SPOTWEB_DIR"
if git clone -b master --depth 1 https://github.com/spotweb/spotweb.git "$SPOTWEB_DIR"; then
    print_success "Spotweb downloaded"
else
    echo -e "${RED}✗ Failed to download Spotweb${NC}"
    echo "Please check your internet connection and try again"
    exit 1
fi

# Set permissions
print_info "Setting file permissions..."
echo "  → Setting owner to www-data"
chown -R www-data:www-data "$SPOTWEB_DIR"
echo "  → Setting directory permissions (755)"
find "$SPOTWEB_DIR" -type d -exec chmod 755 {} \;
echo "  → Setting file permissions (644)"
find "$SPOTWEB_DIR" -type f -exec chmod 644 {} \;
echo "  → Creating cache directory"
mkdir -p "${SPOTWEB_DIR}/cache"
chmod 777 "${SPOTWEB_DIR}/cache"
print_success "Permissions set"

# Create database config
print_info "Creating configuration files..."
echo "  → Creating dbsettings.inc.php"
cat > "${SPOTWEB_DIR}/dbsettings.inc.php" <<EOF
<?php
\$dbsettings['engine'] = 'mysql';
\$dbsettings['host'] = 'localhost';
\$dbsettings['dbname'] = '${DB_NAME}';
\$dbsettings['user'] = '${DB_USER}';
\$dbsettings['pass'] = '${DB_PASS}';
?>
EOF

chown www-data:www-data "${SPOTWEB_DIR}/dbsettings.inc.php"
chmod 640 "${SPOTWEB_DIR}/dbsettings.inc.php"

# Create basic ownsettings.php
echo "  → Creating ownsettings.php"
cat > "${SPOTWEB_DIR}/ownsettings.php" <<'EOF'
<?php
error_reporting(E_ALL);
$settings['custom_stylesheet'] = '';
?>
EOF

chown www-data:www-data "${SPOTWEB_DIR}/ownsettings.php"
chmod 644 "${SPOTWEB_DIR}/ownsettings.php"
print_success "Configuration files created"

# Note: vendor/ directory is included in Spotweb git repo, so no Composer needed
cd "$SPOTWEB_DIR"

# Initialize Spotweb database
print_info "Initializing Spotweb database schema..."
echo "  → Creating tables and structure"
php ${SPOTWEB_DIR}/bin/upgrade-db.php
print_success "Database initialized"

# Reset admin password to default
print_info "Setting admin password..."
echo "  → Resetting admin user password to default"
php ${SPOTWEB_DIR}/bin/upgrade-db.php --reset-password admin
print_success "Admin password set to: spotweb"

# Setup systemd timer
print_info "Configuring automatic spot retrieval..."
echo "  → Creating systemd service"
cat > /etc/systemd/system/spotweb-retrieve.service <<EOF
[Unit]
Description=Spotweb Spot Retrieval
After=network.target mysql.service

[Service]
Type=oneshot
User=www-data
WorkingDirectory=${SPOTWEB_DIR}
ExecStart=/usr/bin/php ${SPOTWEB_DIR}/retrieve.php
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

echo "  → Creating systemd timer (hourly execution)"
cat > /etc/systemd/system/spotweb-retrieve.timer <<'EOF'
[Unit]
Description=Run Spotweb Retrieval Hourly

[Timer]
OnBootSec=5min
OnUnitActiveSec=1h
Persistent=true

[Install]
WantedBy=timers.target
EOF

echo "  → Enabling and starting timer"
systemctl daemon-reload
systemctl enable spotweb-retrieve.timer
systemctl start spotweb-retrieve.timer

print_success "Automatic retrieval configured (runs every hour)"

# Save credentials to file for easy access
print_info "Saving credentials..."
cat > /root/spotweb-credentials.txt <<EOF
Spotweb Installation Credentials
================================

Database Name:     ${DB_NAME}
Database User:     ${DB_USER}
Database Password: ${DB_PASS}

Web Interface: http://$(hostname -I | awk '{print $1}')/

Admin Login:
  Username: admin
  Password: spotweb

Installation Date: $(date)
EOF

chmod 600 /root/spotweb-credentials.txt

echo ""
echo -e "${GREEN}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${GREEN}║              Installation Complete!                        ║${NC}"
echo -e "${GREEN}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""
echo -e "${YELLOW}Database Credentials (SAVE THESE):${NC}"
echo ""
echo "  Database: ${DB_NAME}"
echo "  Username: ${DB_USER}"
echo "  Password: ${DB_PASS}"
echo ""
echo -e "${BLUE}Credentials saved to: /root/spotweb-credentials.txt${NC}"
echo ""

INSTALLER_SCRIPT

# Replace webserver placeholder in the script
pct exec $CTID -- sed -i "s/WEBSERVER_PLACEHOLDER/${WEBSERVER}/g" /tmp/installer.sh 2>/dev/null || true

# Get the credentials
echo ""
echo -e "${GREEN}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${GREEN}║         Spotweb Installation Complete!                    ║${NC}"
echo -e "${GREEN}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""
echo -e "${CYAN}Container Information:${NC}"
echo -e "  Container ID:  ${CTID}"
echo -e "  Hostname:      ${HOSTNAME}"
echo -e "  IP Address:    ${IP}"
echo -e "  Web Server:    ${WEBSERVER}"
echo ""

# Get credentials from container
CREDS=$(pct exec $CTID -- cat /root/spotweb-credentials.txt 2>/dev/null)

echo -e "${YELLOW}Database Credentials:${NC}"
echo ""
pct exec $CTID -- grep -E "Database Name|Database User|Database Password" /root/spotweb-credentials.txt 2>/dev/null
echo ""

echo -e "${YELLOW}Admin Login Credentials:${NC}"
echo ""
echo -e "  Username: ${GREEN}admin${NC}"
echo -e "  Password: ${GREEN}spotweb${NC}"
echo ""

echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo -e "${GREEN}Access Spotweb:${NC}"
echo ""
echo -e "  ${BLUE}→ http://${IP}/${NC}"
echo ""
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""

echo -e "${CYAN}Next Steps:${NC}"
echo "  1. Open the URL above in your browser"
echo "  2. Login with default admin credentials (admin/spotweb)"
echo "  3. Configure your Usenet server in Settings"
echo "  4. Start retrieving spots!"
echo ""

echo -e "${CYAN}Container Management:${NC}"
echo "  Enter container:    pct enter ${CTID}"
echo "  View credentials:   pct exec ${CTID} -- cat /root/spotweb-credentials.txt"
echo "  Stop container:     pct stop ${CTID}"
echo "  Start container:    pct start ${CTID}"
echo "  Check retrieval:    pct exec ${CTID} -- systemctl status spotweb-retrieve.timer"
echo ""

# Calculate elapsed time
END_TIME=$(date +%s)
ELAPSED=$((END_TIME - START_TIME))
MINUTES=$((ELAPSED / 60))
SECONDS=$((ELAPSED % 60))

echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo -e "${GREEN}✓ Installation completed in ${MINUTES}m ${SECONDS}s${NC}"
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""


dit maakt de CT aan, installeerd spotweb en al het nodige... bij mij duurt het 1 minuut :)

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Venimk1 schreef op maandag 8 december 2025 @ 05:43:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
#!/usr/bin/env bash

# Spotweb Proxmox LXC Installer - All-in-One Version
# Copyright (c) 2025 VenimK
# License: MIT
# Creates LXC container and installs Spotweb automatically

source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color

function header_info {
clear
cat <<"EOF"
   _____             __                __  
  / ___/____  ____  / /__      _____  / /_ 
  \__ \/ __ \/ __ \/ __/ | /| / / _ \/ __ \
 ___/ / /_/ / /_/ / /_ | |/ |/ /  __/ /_/ /
/____/ .___/\____/\__/ |__/|__/\___/_.___/ 
    /_/                                     
    
    Automated Debian LXC + Spotweb Installer
EOF
echo ""
}

header_info

# Start timer
START_TIME=$(date +%s)

# Configuration
CTID=""
HOSTNAME="spotweb"
DISK_SIZE="20"
CORES="2"
MEMORY="2048"
BRIDGE="vmbr0"
OSTYPE="debian"
OSVERSION="12"
WEBSERVER="apache"  # or nginx

# Get next available CTID
NEXTID=$(pvesh get /cluster/nextid)

# Detect available storage for containers
echo -e "${BLUE}Detecting available storage...${NC}"

# Prefer storages that explicitly support rootdir (containers)
mapfile -t STORAGE_OPTIONS < <(pvesm status -content rootdir 2>/dev/null | awk 'NR>1 {print $1}')

# Fallback: any storage entry if none reported with rootdir
if [ ${#STORAGE_OPTIONS[@]} -eq 0 ]; then
    mapfile -t STORAGE_OPTIONS < <(pvesm status 2>/dev/null | awk 'NR>1 {print $1}')
fi

if [ ${#STORAGE_OPTIONS[@]} -eq 0 ]; then
    echo -e "${RED}Error: No storage found on this Proxmox host${NC}"
    echo -e "${YELLOW}pvesm status output:${NC}"
    pvesm status || true
    exit 1
fi

echo -e "${CYAN}Available storage options:${NC}"
idx=1
for store in "${STORAGE_OPTIONS[@]}"; do
    echo -e "  ${idx}) ${store}"
    idx=$((idx+1))
done

echo ""
read -p "Select storage [1-${#STORAGE_OPTIONS[@]}] (default 1): " STORAGE_CHOICE

if [ -z "${STORAGE_CHOICE}" ]; then
    STORAGE_CHOICE=1
fi

if ! [[ "${STORAGE_CHOICE}" =~ ^[0-9]+$ ]] || [ "${STORAGE_CHOICE}" -lt 1 ] || [ "${STORAGE_CHOICE}" -gt ${#STORAGE_OPTIONS[@]} ]; then
    echo -e "${RED}Invalid selection. Aborting.${NC}"
    exit 1
fi

STORAGE=${STORAGE_OPTIONS[$((STORAGE_CHOICE-1))]}

echo -e "${GREEN}✓ Using storage: ${STORAGE}${NC}"

echo -e "${CYAN}Spotweb LXC Container Setup${NC}"
echo ""
echo -e "${YELLOW}This will create a Debian 12 LXC container and install Spotweb${NC}"
echo ""
echo -e "${GREEN}Default settings:${NC}"
echo -e "  Container ID: ${NEXTID}"
echo -e "  Hostname: ${HOSTNAME}"
echo -e "  CPU Cores: ${CORES}"
echo -e "  RAM: ${MEMORY}MB"
echo -e "  Disk: ${DISK_SIZE}GB"
echo -e "  Storage: ${STORAGE}"
echo -e "  OS: Debian ${OSVERSION}"
echo -e "  Web Server: ${WEBSERVER}"
echo ""

read -p "Container hostname [${HOSTNAME}]: " INPUT_HOST
if [[ -n "${INPUT_HOST}" ]]; then
  HOSTNAME="${INPUT_HOST}"
fi

read -p "Disk size in GB [${DISK_SIZE}]: " INPUT_DISK
if [[ -n "${INPUT_DISK}" && "${INPUT_DISK}" =~ ^[0-9]+$ && "${INPUT_DISK}" -gt 0 ]]; then
  DISK_SIZE="${INPUT_DISK}"
fi

read -p "CPU cores [${CORES}]: " INPUT_CORES
if [[ -n "${INPUT_CORES}" && "${INPUT_CORES}" =~ ^[0-9]+$ && "${INPUT_CORES}" -gt 0 ]]; then
  CORES="${INPUT_CORES}"
fi

read -p "RAM in MB [${MEMORY}]: " INPUT_MEM
if [[ -n "${INPUT_MEM}" && "${INPUT_MEM}" =~ ^[0-9]+$ && "${INPUT_MEM}" -gt 0 ]]; then
  MEMORY="${INPUT_MEM}"
fi

read -p "Web server (apache/nginx) [${WEBSERVER}]: " INPUT_WEB
if [[ -n "${INPUT_WEB}" && ("${INPUT_WEB}" == "apache" || "${INPUT_WEB}" == "nginx") ]]; then
  WEBSERVER="${INPUT_WEB}"
fi

echo ""
echo -e "${CYAN}Final settings:${NC}"
echo -e "  Container ID: ${NEXTID}"
echo -e "  Hostname: ${HOSTNAME}"
echo -e "  CPU Cores: ${CORES}"
echo -e "  RAM: ${MEMORY}MB"
echo -e "  Disk: ${DISK_SIZE}GB"
echo -e "  Storage: ${STORAGE}"
echo -e "  OS: Debian ${OSVERSION}"
echo -e "  Web Server: ${WEBSERVER}"
echo ""

read -p "Press Enter to create the container and install Spotweb, or Ctrl+C to cancel: "

CTID=$NEXTID

echo ""
echo -e "${BLUE}Creating LXC container...${NC}"

# Find the latest Debian 12 template
echo -e "${YELLOW}Finding Debian ${OSVERSION} template...${NC}"
pveam update

# Get the latest Debian 12 template name
TEMPLATE=$(pveam available | grep "debian-${OSVERSION}" | grep "standard" | tail -n1 | awk '{print $2}')

if [ -z "$TEMPLATE" ]; then
    echo -e "${RED}Error: Could not find Debian ${OSVERSION} template${NC}"
    echo -e "${YELLOW}Available templates:${NC}"
    pveam available | grep debian
    exit 1
fi

echo -e "${GREEN}✓ Found template: ${TEMPLATE}${NC}"

TEMPLATE_PATH="/var/lib/vz/template/cache/${TEMPLATE}"

if [ ! -f "$TEMPLATE_PATH" ]; then
    echo -e "${YELLOW}Downloading template...${NC}"
    pveam download local "$TEMPLATE"
fi

# Create container (unprivileged for better security)
pct create $CTID $TEMPLATE_PATH \
    --hostname $HOSTNAME \
    --cores $CORES \
    --memory $MEMORY \
    --rootfs ${STORAGE}:${DISK_SIZE} \
    --net0 name=eth0,bridge=${BRIDGE},ip=dhcp \
    --unprivileged 1 \
    --features nesting=1 \
    --onboot 1 \
    --start 1

echo -e "${GREEN}✓ Container created (ID: $CTID)${NC}"

# Wait for container to start
echo -e "${BLUE}Waiting for container to start...${NC}"
sleep 5

# Wait for network
echo -e "${BLUE}Waiting for network...${NC}"
for i in {1..30}; do
    if pct exec $CTID -- ping -c 1 8.8.8.8 >/dev/null 2>&1; then
        echo -e "${GREEN}✓ Network is ready${NC}"
        break
    fi
    sleep 2
done

# Get container IP
IP=$(pct exec $CTID -- hostname -I | awk '{print $1}')
echo -e "${GREEN}✓ Container IP: $IP${NC}"
echo ""

# Run installation inside container
echo -e "${BLUE}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${BLUE}║  Starting Spotweb installation inside container...        ║${NC}"
echo -e "${BLUE}║  This will take 5-15 minutes                              ║${NC}"
echo -e "${BLUE}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""

# Create installation script inside container
pct exec $CTID -- bash <<'INSTALLER_SCRIPT'
#!/bin/bash
set -e

# Error trap to show what failed
trap 'echo -e "\n\033[0;31m✗ Installation failed at line $LINENO\033[0m\n"; exit 1' ERR

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'

print_success() { echo -e "${GREEN}✓ $1${NC}"; }
print_info() { echo -e "${BLUE}ℹ $1${NC}"; }
print_warning() { echo -e "${YELLOW}⚠ $1${NC}"; }

SPOTWEB_DIR="/var/www/html/spotweb"
DB_NAME="spotweb"
DB_USER="spotweb"

generate_password() {
    tr -dc 'A-Za-z0-9!@#$%^&*()_+=' < /dev/urandom 2>/dev/null | head -c 20
}

DB_PASS=$(generate_password)

# Update system
print_info "Updating system packages..."
apt-get update -qq
apt-get upgrade -y -qq
print_success "System updated"

# Fix locale warnings
print_info "Configuring locales..."
apt-get install -y locales
sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
locale-gen en_US.UTF-8 > /dev/null 2>&1
update-locale LANG=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
print_success "Locales configured"

# Install basic tools
print_info "Installing basic tools (curl, wget, git, unzip)..."
apt-get install -y curl wget git unzip ca-certificates gnupg2
print_success "Basic tools installed"

# Detect Debian version and set PHP version
DEBIAN_VERSION=$(cat /etc/debian_version | cut -d. -f1)
if [ "$DEBIAN_VERSION" -ge 12 ]; then
    PHP_VERSION="8.2"
else
    PHP_VERSION="7.4"
fi

print_info "Using PHP $PHP_VERSION"

# Install PHP
print_info "Installing PHP ${PHP_VERSION} and extensions..."
echo "  → Installing: php, curl, gd, mbstring, xml, zip, mysql, dom, intl, opcache"
apt-get install -y \
    php${PHP_VERSION} \
    php${PHP_VERSION}-cli \
    php${PHP_VERSION}-common \
    php${PHP_VERSION}-curl \
    php${PHP_VERSION}-gd \
    php${PHP_VERSION}-mbstring \
    php${PHP_VERSION}-xml \
    php${PHP_VERSION}-zip \
    php${PHP_VERSION}-mysql \
    php${PHP_VERSION}-dom \
    php${PHP_VERSION}-intl \
    php${PHP_VERSION}-opcache

WEBSERVER="WEBSERVER_PLACEHOLDER"

if [ "$WEBSERVER" == "nginx" ]; then
    echo "  → Installing PHP-FPM for Nginx"
    apt-get install -y php${PHP_VERSION}-fpm
else
    echo "  → Installing Apache PHP module"
    apt-get install -y libapache2-mod-php${PHP_VERSION}
fi

print_success "PHP installed"

# Install MariaDB
print_info "Installing MariaDB server..."
echo "  → Installing mariadb-server and mariadb-client"
apt-get install -y mariadb-server mariadb-client
echo "  → Enabling and starting MariaDB service"
systemctl enable mariadb
systemctl start mariadb
print_success "MariaDB installed"

# Configure database
print_info "Creating database and user..."
echo "  → Creating database: ${DB_NAME}"
mysql -e "CREATE DATABASE IF NOT EXISTS ${DB_NAME} CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"

echo "  → Creating user: ${DB_USER}"
# Drop and recreate user to ensure password matches
mysql -e "DROP USER IF EXISTS '${DB_USER}'@'localhost';" 2>/dev/null || true
mysql -e "CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';"
mysql -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';"
mysql -e "FLUSH PRIVILEGES;"
print_success "Database configured"

# Install web server
if [ "$WEBSERVER" == "nginx" ]; then
    print_info "Installing Nginx web server..."
    apt-get install -y nginx
    
    # Configure Nginx
    cat > /etc/nginx/sites-available/spotweb <<EOF
server {
    listen 80 default_server;
    listen [::]:80 default_server;
    
    root /var/www/html/spotweb;
    index index.php index.html;
    
    server_name _;
    
    location / {
        try_files \$uri \$uri/ /index.php?\$query_string;
    }
    
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php${PHP_VERSION}-fpm.sock;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
        include fastcgi_params;
    }
    
    location ~ /\.ht {
        deny all;
    }
}
EOF
    
    ln -sf /etc/nginx/sites-available/spotweb /etc/nginx/sites-enabled/spotweb
    rm -f /etc/nginx/sites-enabled/default
    
    systemctl enable nginx > /dev/null 2>&1
    systemctl enable php${PHP_VERSION}-fpm > /dev/null 2>&1
    systemctl restart php${PHP_VERSION}-fpm
    systemctl restart nginx
    
    print_success "Nginx configured"
else
    print_info "Installing Apache web server..."
    apt-get install -y apache2
    
    # Configure Apache
    echo "  → Enabling Apache modules: rewrite, php"
    a2enmod rewrite
    a2enmod php${PHP_VERSION}
    
    cat > /etc/apache2/sites-available/spotweb.conf <<'EOF'
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/spotweb
    
    <Directory /var/www/html/spotweb>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/spotweb_error.log
    CustomLog ${APACHE_LOG_DIR}/spotweb_access.log combined
</VirtualHost>
EOF
    
    a2dissite 000-default.conf > /dev/null 2>&1
    a2ensite spotweb.conf > /dev/null 2>&1
    
    systemctl enable apache2 > /dev/null 2>&1
    systemctl restart apache2
    
    print_success "Apache configured"
fi

# Download Spotweb
print_info "Downloading Spotweb from GitHub..."
echo "  → Cloning repository (master branch)"
rm -rf "$SPOTWEB_DIR"
if git clone -b master --depth 1 https://github.com/spotweb/spotweb.git "$SPOTWEB_DIR"; then
    print_success "Spotweb downloaded"
else
    echo -e "${RED}✗ Failed to download Spotweb${NC}"
    echo "Please check your internet connection and try again"
    exit 1
fi

# Set permissions
print_info "Setting file permissions..."
echo "  → Setting owner to www-data"
chown -R www-data:www-data "$SPOTWEB_DIR"
echo "  → Setting directory permissions (755)"
find "$SPOTWEB_DIR" -type d -exec chmod 755 {} \;
echo "  → Setting file permissions (644)"
find "$SPOTWEB_DIR" -type f -exec chmod 644 {} \;
echo "  → Creating cache directory"
mkdir -p "${SPOTWEB_DIR}/cache"
chmod 777 "${SPOTWEB_DIR}/cache"
print_success "Permissions set"

# Create database config
print_info "Creating configuration files..."
echo "  → Creating dbsettings.inc.php"
cat > "${SPOTWEB_DIR}/dbsettings.inc.php" <<EOF
<?php
\$dbsettings['engine'] = 'mysql';
\$dbsettings['host'] = 'localhost';
\$dbsettings['dbname'] = '${DB_NAME}';
\$dbsettings['user'] = '${DB_USER}';
\$dbsettings['pass'] = '${DB_PASS}';
?>
EOF

chown www-data:www-data "${SPOTWEB_DIR}/dbsettings.inc.php"
chmod 640 "${SPOTWEB_DIR}/dbsettings.inc.php"

# Create basic ownsettings.php
echo "  → Creating ownsettings.php"
cat > "${SPOTWEB_DIR}/ownsettings.php" <<'EOF'
<?php
error_reporting(E_ALL);
$settings['custom_stylesheet'] = '';
?>
EOF

chown www-data:www-data "${SPOTWEB_DIR}/ownsettings.php"
chmod 644 "${SPOTWEB_DIR}/ownsettings.php"
print_success "Configuration files created"

# Note: vendor/ directory is included in Spotweb git repo, so no Composer needed
cd "$SPOTWEB_DIR"

# Initialize Spotweb database
print_info "Initializing Spotweb database schema..."
echo "  → Creating tables and structure"
php ${SPOTWEB_DIR}/bin/upgrade-db.php
print_success "Database initialized"

# Reset admin password to default
print_info "Setting admin password..."
echo "  → Resetting admin user password to default"
php ${SPOTWEB_DIR}/bin/upgrade-db.php --reset-password admin
print_success "Admin password set to: spotweb"

# Setup systemd timer
print_info "Configuring automatic spot retrieval..."
echo "  → Creating systemd service"
cat > /etc/systemd/system/spotweb-retrieve.service <<EOF
[Unit]
Description=Spotweb Spot Retrieval
After=network.target mysql.service

[Service]
Type=oneshot
User=www-data
WorkingDirectory=${SPOTWEB_DIR}
ExecStart=/usr/bin/php ${SPOTWEB_DIR}/retrieve.php
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

echo "  → Creating systemd timer (hourly execution)"
cat > /etc/systemd/system/spotweb-retrieve.timer <<'EOF'
[Unit]
Description=Run Spotweb Retrieval Hourly

[Timer]
OnBootSec=5min
OnUnitActiveSec=1h
Persistent=true

[Install]
WantedBy=timers.target
EOF

echo "  → Enabling and starting timer"
systemctl daemon-reload
systemctl enable spotweb-retrieve.timer
systemctl start spotweb-retrieve.timer

print_success "Automatic retrieval configured (runs every hour)"

# Save credentials to file for easy access
print_info "Saving credentials..."
cat > /root/spotweb-credentials.txt <<EOF
Spotweb Installation Credentials
================================

Database Name:     ${DB_NAME}
Database User:     ${DB_USER}
Database Password: ${DB_PASS}

Web Interface: http://$(hostname -I | awk '{print $1}')/

Admin Login:
  Username: admin
  Password: spotweb

Installation Date: $(date)
EOF

chmod 600 /root/spotweb-credentials.txt

echo ""
echo -e "${GREEN}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${GREEN}║              Installation Complete!                        ║${NC}"
echo -e "${GREEN}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""
echo -e "${YELLOW}Database Credentials (SAVE THESE):${NC}"
echo ""
echo "  Database: ${DB_NAME}"
echo "  Username: ${DB_USER}"
echo "  Password: ${DB_PASS}"
echo ""
echo -e "${BLUE}Credentials saved to: /root/spotweb-credentials.txt${NC}"
echo ""

INSTALLER_SCRIPT

# Replace webserver placeholder in the script
pct exec $CTID -- sed -i "s/WEBSERVER_PLACEHOLDER/${WEBSERVER}/g" /tmp/installer.sh 2>/dev/null || true

# Get the credentials
echo ""
echo -e "${GREEN}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${GREEN}║         Spotweb Installation Complete!                    ║${NC}"
echo -e "${GREEN}╚════════════════════════════════════════════════════════════╝${NC}"
echo ""
echo -e "${CYAN}Container Information:${NC}"
echo -e "  Container ID:  ${CTID}"
echo -e "  Hostname:      ${HOSTNAME}"
echo -e "  IP Address:    ${IP}"
echo -e "  Web Server:    ${WEBSERVER}"
echo ""

# Get credentials from container
CREDS=$(pct exec $CTID -- cat /root/spotweb-credentials.txt 2>/dev/null)

echo -e "${YELLOW}Database Credentials:${NC}"
echo ""
pct exec $CTID -- grep -E "Database Name|Database User|Database Password" /root/spotweb-credentials.txt 2>/dev/null
echo ""

echo -e "${YELLOW}Admin Login Credentials:${NC}"
echo ""
echo -e "  Username: ${GREEN}admin${NC}"
echo -e "  Password: ${GREEN}spotweb${NC}"
echo ""

echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo -e "${GREEN}Access Spotweb:${NC}"
echo ""
echo -e "  ${BLUE}→ http://${IP}/${NC}"
echo ""
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""

echo -e "${CYAN}Next Steps:${NC}"
echo "  1. Open the URL above in your browser"
echo "  2. Login with default admin credentials (admin/spotweb)"
echo "  3. Configure your Usenet server in Settings"
echo "  4. Start retrieving spots!"
echo ""

echo -e "${CYAN}Container Management:${NC}"
echo "  Enter container:    pct enter ${CTID}"
echo "  View credentials:   pct exec ${CTID} -- cat /root/spotweb-credentials.txt"
echo "  Stop container:     pct stop ${CTID}"
echo "  Start container:    pct start ${CTID}"
echo "  Check retrieval:    pct exec ${CTID} -- systemctl status spotweb-retrieve.timer"
echo ""

# Calculate elapsed time
END_TIME=$(date +%s)
ELAPSED=$((END_TIME - START_TIME))
MINUTES=$((ELAPSED / 60))
SECONDS=$((ELAPSED % 60))

echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo -e "${GREEN}✓ Installation completed in ${MINUTES}m ${SECONDS}s${NC}"
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""


dit maakt de CT aan, installeerd spotweb en al het nodige... bij mij duurt het 1 minuut :)
Een vraag: hoe voer ik dit script uit in Proxmox?

  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Geen matches
kan je deze in de repo van helper scripts plaatsen? dan hebben duizenden mensen er wat aan :)
Super! ik heb hem nu als home assistant addon maar een lxc lijkt mij beter!

Gadget-freakz.com. Feedback en tips zijn welkom.


  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
internetsmurf schreef op maandag 8 december 2025 @ 17:30:
[...]

Een vraag: hoe voer ik dit script uit in Proxmox?
voorlopig kan het al zo

in je proxmox host
downloading the file
wget https://raw.githubusercon...te-and-install-spotweb.sh

installeren van spotweb , met aanmaken van LXc container etc ....
bash proxmox-create-and-install-spotweb.sh

dan voor de themes
downloading file
wget https://raw.githubusercon...oy-themes-to-container.sh
installeren van themes in je spotweb LXC
bash deploy-themes-to-container.sh

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Venimk1 schreef op maandag 8 december 2025 @ 19:28:
[...]

voorlopig kan het al zo

in je proxmox host
downloading the file
wget https://raw.githubusercon...te-and-install-spotweb.sh

installeren van spotweb , met aanmaken van LXc container etc ....
bash proxmox-create-and-install-spotweb.sh

dan voor de themes
downloading file
wget https://raw.githubusercon...oy-themes-to-container.sh
installeren van themes in je spotweb LXC
bash deploy-themes-to-container.sh
Dankjewel, ga ik proberen 😉

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Geen matches
remcoXP schreef op maandag 8 december 2025 @ 17:52:
kan je deze in de repo van helper scripts plaatsen? dan hebben duizenden mensen er wat aan :)
Super! ik heb hem nu als home assistant addon maar een lxc lijkt mij beter!
dat zal ik later ff bezien....

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
the LXC setup installer + spotweb

🚀 Installation
Option 1: Fresh Spotweb Installation (Recommended)
Install Spotweb + themes in one command:

# Download installer
code:
1
2
curl -fsSL https://raw.githubusercontent.com/VenimK/spotweb/themes-only/proxmox-create-and-install-spotweb.sh -o install-spotweb.sh
chmod +x install-spotweb.sh


# Run installer
code:
1
./install-spotweb.sh

During installation, choose:

Option 2: Dark mode only (simple dark theme)
Option 3: Complete theme pack (8 themes + switcher + tools) ⭐ Recommended

[ Voor 63% gewijzigd door Venimk1 op 10-12-2025 13:28 ]


  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Matched: spotweb
even tussen code blocks zetten als wordt je url ongeldig ;)

hartelijk dank!!
Venimk1 schreef op dinsdag 9 december 2025 @ 08:08:
the LXC setup installer + spotweb

wget https://raw.githubusercon...te-and-install-spotweb.sh
chmod +x proxmox-create-and-install-spotweb.sh
./proxmox-create-and-install-spotweb.sh

Option 3 Theme Pack
= spotweb install met 8 preinstalled themes

Theme Editor
wget https://raw.githubusercon...nly/deploy-theme-tools.sh
chmod +x deploy-theme-tools.sh
./deploy-theme-tools.sh

Access your theme tools:

🎨 Theme Customizer:
http://YOUR_IP/tools/theme-customizer.html

📤 Theme Upload:
http://YOUR_IP/tools/theme-upload.php
(Default password: spotweb123)

💡 Workflow:
1. Create theme in Customizer
2. Download CSS file
3. Upload via Upload Tool
4. Theme appears in Spotweb instantly!

🔒 Security Note:
Change upload password in: theme-upload.php (line 8)

Gadget-freakz.com. Feedback en tips zijn welkom.


  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Geen matches
weet iemand toevallig of het mogelijk is thumbnails te zien in het overzicht zoals bijvoorbeeld de android app?
nu moet je of hoveren, of de post open klikken.

Gadget-freakz.com. Feedback en tips zijn welkom.


  • Kroonkurk
  • Registratie: December 2015
  • Laatst online: 20:23
Geen matches
Bedoel je bij Configuratie --> Voorkeuren wijzigen --> Template voor niet mobiele apparaten --> Modern ?

  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Geen matches
Kroonkurk schreef op donderdag 11 december 2025 @ 21:56:
Bedoel je bij Configuratie --> Voorkeuren wijzigen --> Template voor niet mobiele apparaten --> Modern ?
dat zie ik niet > modern
op de android app is dat ook handig.

op die manier hoef je niet te hoveren of een post open te klikken. weet iemand of dit mogelijk is?

Gadget-freakz.com. Feedback en tips zijn welkom.


  • Kroonkurk
  • Registratie: December 2015
  • Laatst online: 20:23
Matched: spotweb
Dan heb je schijnbaar niet de laatste versie ?

https://github.com/ProGoogleNederland/Spotweb-We1rdo-2.0

  • mesa57
  • Registratie: Juni 2006
  • Laatst online: 26-07 12:45
Matched: spotweb
Aan de develop branch van spotweb is het 'modern' theme toegevoegd.
Als je die geselecteerd hebt kun je kiezen uit cards of list en light of dark mode.
Het oude we1rdo theme blijft behouden en is ook nog selecteerbaar.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
Als anonieme grebruiker krijg ik nooit het we1rdo thema te zijn (in Docker) ook al is dat onder Admin als standaard gezet. Trouwens, ook als domme gebruiker (niet admin, wel ingelogd) pakt ie dat thema niet op.... Kan ik het "ergens" default maken want ik wil eigenlijk altijd de tabel ipv de plaatjeslijst..... 60 regels op mijn scherm heb ik liever dan 8 plaatjes.....

  • Kroonkurk
  • Registratie: December 2015
  • Laatst online: 20:23
Geen matches
Moet je de docker versie van jgeusebroek gebruiken. Kan je uit de 3 thema kiezen.
Ik ben wel als admin ingelogd, dan kan je het thema wijzigen.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
Kroonkurk schreef op zaterdag 13 december 2025 @ 14:10:
Moet je de docker versie van jgeusebroek gebruiken. Kan je uit de 3 thema kiezen.
Ik ben wel als admin ingelogd, dan kan je het thema wijzigen.
Tnx, ik gebruik nu erikdevries, zal die andere eens bekijken. Wat ik NIET wil is standaard inloggen als admin, sterker, als ik 's avonds op de bank zit en ff wil kijken wil ik helemaal niet inloggen en dus anoniempje zijn.

Ik kan nu trouwens ook uit 3 thema's kiezen: mobile, modern en we1rdo - maar voor anoniem (niet ingelgd) heeft de keuze geen effect.

[ Voor 12% gewijzigd door DjoeC op 13-12-2025 14:16 ]


  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Geen matches
Venimk1 top voor je werk. heb de container draaien maar omdat ik naar development branche wil schakelen zou ik graag willen inloggen op de container.
maar ik kom met geen mogelijkheid op de container zelf ingelogd? wel via pve enter.
is dit bewust?

Gadget-freakz.com. Feedback en tips zijn welkom.


  • mesa57
  • Registratie: Juni 2006
  • Laatst online: 26-07 12:45
Geen matches
DjoeC schreef op zaterdag 13 december 2025 @ 13:54:
Als anonieme grebruiker krijg ik nooit het we1rdo thema te zijn (in Docker) ook al is dat onder Admin als standaard gezet. Trouwens, ook als domme gebruiker (niet admin, wel ingelogd) pakt ie dat thema niet op.... Kan ik het "ergens" default maken want ik wil eigenlijk altijd de tabel ipv de plaatjeslijst..... 60 regels op mijn scherm heb ik liever dan 8 plaatjes.....
Met view table krijg je gewoon weer een lijst.
Afbeeldingslocatie: https://tweakers.net/i/LIo6-yq-pTfg08Qi1JZ9p8TAVfY=/800x/filters:strip_exif()/f/image/PTrWHId6ZaPdRgvH41j3wcfh.png?f=fotoalbum_large

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
mesa57 schreef op zondag 14 december 2025 @ 11:46:
[...]

Met view table krijg je gewoon weer een lijst.
[Afbeelding]
Tja, ik krijg geen keuzemenu in mijn erikdevries docker versie, dan kan ik niet kiezen en moet ik inloggen zodat de gebruikers configuratie wordt opgepakt. Configuratie is dus gekoppeld aan user. De generieke configuratie voor anonymous lijkt niet (eenvoudig) aanpasbaar

Trouwens heb ik gister jgeusebroek uitgerold, daar krijg ik wel de menuregel voor keuzen. Maar helass, ook hier weer de niet aanpasbare systeem default voor anonymous. Dat geldt ook voor het aantal regels per scherm dat ik standaard op 250 heb staan ipv 25.

Ofwel: De laatste (interface) versie van Spotweb onder docker is voor mij "minder geslaagd".

NB: Ik werk - ook op het interne netwerk - altijd in Firefox anoniem en alle cookies worden (met cookie-autodelete) 15 seconden na het sluiten van een website gepoetst.

Ik vraag me trouwens af of er alternatieven voor Spotweb zijn?

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
Hmm, da's gek: Ik kom er nu achter dat ik de de default wel naar we1rdo kan aanpassen als anoniem, maar dat ik de configuration menu keus alleen krijg vanaf de tablet. Zal wel iets met mijn Firefox te maken hebben dan. Probleem opgelost dus.

  • Bakkertje_01
  • Registratie: November 2010
  • Laatst online: 22:00
Matched: spotweb
Venimk1 schreef op dinsdag 9 december 2025 @ 08:08:
the LXC setup installer + spotweb

🚀 Installation
Option 1: Fresh Spotweb Installation (Recommended)
Install Spotweb + themes in one command:

# Download installer
code:
1
2
curl -fsSL https://raw.githubusercontent.com/VenimK/spotweb/themes-only/proxmox-create-and-install-spotweb.sh -o install-spotweb.sh
chmod +x install-spotweb.sh


# Run installer
code:
1
./install-spotweb.sh

During installation, choose:

Option 2: Dark mode only (simple dark theme)
Option 3: Complete theme pack (8 themes + switcher + tools) ⭐ Recommended
Dit werkt perfect, dankjewel! _/-\o_ _/-\o_ _/-\o_ _/-\o_ _/-\o_

p.s.

Voor de mensen die dit lezen, direct uitvoeren en denken wat moet ik hierna nog doen:

1. De spotweb url openen
2. Rechtsboven inloggen als admin
3. Rechtsboven op Config klikken en dan Settings
4. Onder tabblad Newsservers je newsserver invoeren (Change == Save)
5. Onder tabblad retrieve kun je bepalen hoever je terug wilt gaan met de spots. Zet hier iets neer naar jouw eigen voorkeur. Ikzelf download alleen muziek en heb hem op 31 gezet en de datum aangepast naar 1-12-2025. -> Change
6. Nu kun je wachten totdat de Retrieve actie is uigevoerd. Maar je kunt in Proxmox dit ook forceren door naar de shell te gaan van je proxmox instance -> type: "pct enter [3 cijferig container uid]" -> vervolgens naar de map "cd /var/www/html/spotweb" -> en vervolgens het commando: /usr/bin/php retrieve.php uit te voeren. (dit kan vast korter)

Hierna worden spots geladen.

[ Voor 36% gewijzigd door Bakkertje_01 op 15-12-2025 12:27 ]


  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Geen matches
Heb hier wat aanpassing gedaan van het bestaande voor dit te laten werken onder Mac OS.

https://github.com/VenimK...mes-only/install-macos.sh

Had hier graag paar testers, of reviews van gehad ook, wat beter zou kunnen eventueel..

@Bakkertje_01 Alvast bedankt

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
remcoXP schreef op zondag 14 december 2025 @ 10:53:
Venimk1 top voor je werk. heb de container draaien maar omdat ik naar development branche wil schakelen zou ik graag willen inloggen op de container.
maar ik kom met geen mogelijkheid op de container zelf ingelogd? wel via pve enter.
is dit bewust?
je kan
pct enter jeconainerID
doen
dan
passwd
zal gevraagd worden voor wachtwoord
Daarna kan je effictief in the spotweb container

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Geen matches
remcoXP schreef op zondag 14 december 2025 @ 10:53:
Venimk1 top voor je werk. heb de container draaien maar omdat ik naar development branche wil schakelen zou ik graag willen inloggen op de container.
maar ik kom met geen mogelijkheid op de container zelf ingelogd? wel via pve enter.
is dit bewust?
aan het bezien voor keuze mogelijkheid :)

Afbeeldingslocatie: https://tweakers.net/i/EBsu_3UgT5oMVSxT0L3-H72L_n0=/800x/filters:strip_exif()/f/image/5O8ln0oQxW99LCIJO3gEl2cx.png?f=fotoalbum_large

[ Voor 28% gewijzigd door Venimk1 op 19-12-2025 09:04 ]


  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
laatste nieuwe aanpassingen

Keuze
Bestaande container / nieuwe container
Vlan or not
master of develop versie (spotweb)

https://github.com/VenimK/spotweb/tree/themes-only

https://cloud.nas86.eu/s/KMise7XTRRobF3n

[ Voor 13% gewijzigd door Venimk1 op 20-12-2025 05:33 ]


  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
Geen matches
De nieuwe interface is wel even wennen. Benieuwd hoe het werkt.

  • Bubble-BE
  • Registratie: November 2018
  • Laatst online: 19:22
Matched: spotweb
Als ik wil reageren op een post lukt me dat niet, maar ik zie niet meteen waarom?
Spotweb docker erikdevries + Eweka met posten toegestaan en toch krijg ik steeds "posting not allowed"

  • alesandro_46
  • Registratie: Januari 2012
  • Laatst online: 21:53
Matched: spotweb
Bubble-BE schreef op maandag 22 december 2025 @ 13:50:
Als ik wil reageren op een post lukt me dat niet, maar ik zie niet meteen waarom?
Spotweb docker erikdevries + Eweka met posten toegestaan en toch krijg ik steeds "posting not allowed"
Shot in the dark; ben je aan het downloaden terwijl je wil posten? Dan kan het zijn dat je connecties vol zijn.

Deze ruimte is bewust leeg gelaten


  • Bubble-BE
  • Registratie: November 2018
  • Laatst online: 19:22
Geen matches
alesandro_46 schreef op maandag 22 december 2025 @ 14:00:
[...]

Shot in the dark; ben je aan het downloaden terwijl je wil posten? Dan kan het zijn dat je connecties vol zijn.
Ik heb het net nagekeken en heb sowiezo maar 20 connecties van de 50 ingesteld om te downloaden. Ik vermoed dat het bij Eweka zal liggen.

Edit: gevonden! Geen idee of het nieuw is, maar je moet nu een andere server ingeven als je wil posten.
Gebruik om te posten als server post.eweka.nl via poort 119. U kunt hierop inloggen met uw huidige aanmeldgegevens.
Nu kan ik weer bedankjes achterlaten. :)

[ Voor 27% gewijzigd door Bubble-BE op 22-12-2025 15:39 ]


  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
Geen matches
Bubble-BE schreef op maandag 22 december 2025 @ 15:34:
[...]


Ik heb het net nagekeken en heb sowiezo maar 20 connecties van de 50 ingesteld om te downloaden. Ik vermoed dat het bij Eweka zal liggen.

Edit: gevonden! Geen idee of het nieuw is, maar je moet nu een andere server ingeven als je wil posten.


[...]


Nu kan ik weer bedankjes achterlaten. :)
Dit is hopelijk wel over https? 119 is naar mijn weten unencrypted. Ik gebruik alleen nog maar TLS, ook al is dat mogelijk langzamer.

  • Bubble-BE
  • Registratie: November 2018
  • Laatst online: 19:22
Geen matches
HollowGamer schreef op dinsdag 23 december 2025 @ 23:15:
[...]

Dit is hopelijk wel over https? 119 is naar mijn weten unencrypted. Ik gebruik alleen nog maar TLS, ook al is dat mogelijk langzamer.
Klopt, als je het vakje "Use different server for posting?" aanklikt, neemt die de waardes over van je standaard nieuwsserver, die in mijn geval wel via 443 gaat. Ik had er eerst niet op gelet.

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
Beke geupdate ondertussen

Afbeeldingslocatie: https://tweakers.net/i/yuJEyoktE_umJNT4AlJAhm5SOww=/800x/filters:strip_exif()/f/image/WVXALZHGlFVBESZyt4CKCpsy.png?f=fotoalbum_large

In je map
/var/www/html/spotweb/custom
code:
1
git fetch origin themes-only:refs/remotes/origin/themes-only

code:
1
./update-themes.sh


Bij nieuwe installaties, gebeurd dit automatisch tuurlijk


https://github.com/VenimK/spotweb/tree/themes-only

  • Webjunkie
  • Registratie: Mei 2004
  • Laatst online: 23-08 13:40
Matched: spotweb
Ik heb 'm 15 jaar oude spotweb maar 's verfrist en draai nu de docker versie.
Moet zeggen dat ik wel blij verrast ben met hoe makkelijk de overgang ging :)

Ik heb wel een klein irritatiepuntje. Hoe krijg ik de mobile template op dark mode?

edit: ik draai de erikdevries edition

[ Voor 9% gewijzigd door Webjunkie op 06-01-2026 19:45 ]

HTPC, Speeldoos | PVoutput


  • rsvmark
  • Registratie: Juli 2007
  • Laatst online: 05-06 11:06
Matched: spotweb
Iemand hier toevallig ervaring met het laten draaien van spotweb onder unraid?

  • Yar2002
  • Registratie: Juni 2013
  • Laatst online: 15-10 10:03
Geen matches
Hoe kan ik Spotnet gebruiken op mijn Mac (mini pro)? Waar staat een versie die ik kan installeren (op een simpele manier) of een webversie?

  • Room42
  • Registratie: September 2001
  • Niet online
Matched: spotweb
Yar2002 schreef op vrijdag 9 januari 2026 @ 11:09:
Hoe kan ik Spotnet gebruiken op mijn Mac (mini pro)? Waar staat een versie die ik kan installeren (op een simpele manier) of een webversie?
Daar draait toch ook gewoon docker op? Gewoon de container gebruiken dan.
Je schrijft trouwens Spotnet, maar dit topic gaat over SpotWeb. Die bedoel ik dus ook. :)

De vakantie heeft alweer heimwee naar mij


  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
Yar2002 schreef op vrijdag 9 januari 2026 @ 11:09:
Hoe kan ik Spotnet gebruiken op mijn Mac (mini pro)? Waar staat een versie die ik kan installeren (op een simpele manier) of een webversie?
https://github.com/VenimK/spotweb/tree/themes-only

Option 2: Native macOS (Homebrew)
You can also install Spotweb + the theme system locally on macOS using Homebrew (PHP + MariaDB).

# Download macOS installer
curl -fsSL https://raw.githubusercon...mes-only/install-macos.sh -o install-macos.sh
chmod +x install-macos.sh

# Run installer
./install-macos.sh

  • Marve79
  • Registratie: Juni 2021
  • Laatst online: 00:42
Matched: spotweb
Blijkbaar bestaat er ook een Spotarr, deze werkt prima via Sonarr en Radarr. En nu download hij alles netjes. Spotweb zelf kreeg ik niet werkend als newznab client, dan heb je schijnbaar Prowlarr nodig.

https://github.com/Spottarr/Spottarr

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Ik probeer op proxmox 9.1 Spotweb te installeren volgens de volgende handleiding:
https://github.com/spotwe...buntu-24.04-LTS-(english)

Alles gaat goed totdat ik deze opmerking tegen kom:
Please use the root password for mysql in install.php

Ik maak dan de mysql spotweb datbase aan en aan het eind vraagt hij om een wachtwoord.
Waar haal ik dat root wachtwoord vandaan?

Heb al op Google/Ai/dit forum gezocht maar kom er niet uit.
De ubuntu 24.04 server draait perfect dus daar ligt het niet aan.

Hebben jullie een idee?

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
internetsmurf schreef op zaterdag 17 januari 2026 @ 14:43:
Ik probeer op proxmox 9.1 Spotweb te installeren volgens de volgende handleiding:
https://github.com/spotwe...buntu-24.04-LTS-(english)

Alles gaat goed totdat ik deze opmerking tegen kom:
Please use the root password for mysql in install.php

Ik maak dan de mysql spotweb datbase aan en aan het eind vraagt hij om een wachtwoord.
Waar haal ik dat root wachtwoord vandaan?

Heb al op Google/Ai/dit forum gezocht maar kom er niet uit.
De ubuntu 24.04 server draait perfect dus daar ligt het niet aan.

Hebben jullie een idee?
Maak in MySQL/MariaDB een nieuwe user spotweb oid met een wachtwoord aan en bijbehorende database. Verder GEEN rechten voor die user. Dan spotweb opzetten met die user en database, je wilt m zeker NIET met root (of equivalent) opstarten....

Voor dat opzetten gebruik ik een container met phpMyAdmin. De root user is geblokkeerd nadat ik een alternatieve root-userid met Global privileges heb aangemaakt. Ik houd niet zo van "standaard users en wachtwoorden die je van internet kunt plukken.

  • Room42
  • Registratie: September 2001
  • Niet online
Matched: spotweb
internetsmurf schreef op zaterdag 17 januari 2026 @ 14:43:
Ik probeer op proxmox 9.1 Spotweb te installeren volgens de volgende handleiding:
https://github.com/spotwe...buntu-24.04-LTS-(english)

Alles gaat goed totdat ik deze opmerking tegen kom:
Please use the root password for mysql in install.php

[...]
Je hebt deze stap gedaan? Dan is je db user én wachtwoord 'spotweb'.

De vakantie heeft alweer heimwee naar mij


  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Room42 schreef op zaterdag 17 januari 2026 @ 15:10:
[...]

Je hebt deze stap gedaan? Dan is je db user én wachtwoord 'spotweb'.
Ja, dat klopt.
Als ik dan spotweb invoer bij wachtwoord dan krijg ik de volgende output:
mysql -u root -p
CREATE DATABASE spotweb;
CREATE USER 'spotweb'@'localhost' IDENTIFIED BY 'spotweb';
GRANT ALL PRIVILEGES ON spotweb.* TO 'spotweb'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
CREATE: command not found
CREATE: command not found
GRANT: command not found
FLUSH: command not found
logout

  • Room42
  • Registratie: September 2001
  • Niet online
Matched: spotweb
internetsmurf schreef op zaterdag 17 januari 2026 @ 15:34:
[...]

Ja, dat klopt.
Als ik dan spotweb invoer bij wachtwoord dan krijg ik de volgende output:
mysql -u root -p
CREATE DATABASE spotweb;
CREATE USER 'spotweb'@'localhost' IDENTIFIED BY 'spotweb';
GRANT ALL PRIVILEGES ON spotweb.* TO 'spotweb'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
CREATE: command not found
CREATE: command not found
GRANT: command not found
FLUSH: command not found
logout
Dan heb je blijkbaar al een wachtwoord op je MySQL ingesteld. Je kunt nog even proberen met 'sudo mysql ...', anders moet je even je installatie checken, of zoeken naar 'mysql reset root password' op internet. ;)

De vakantie heeft alweer heimwee naar mij


  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Room42 schreef op zaterdag 17 januari 2026 @ 16:32:
[...]

Dan heb je blijkbaar al een wachtwoord op je MySQL ingesteld. Je kunt nog even proberen met 'sudo mysql ...', anders moet je even je installatie checken, of zoeken naar 'mysql reset root password' op internet. ;)
Dankjewel, sudo mysql heeft het probleem opgelost. Spotweb draait nu prima bij mij. _/-\o_

  • alesandro_46
  • Registratie: Januari 2012
  • Laatst online: 21:53
Geen matches
Glamdring schreef op zaterdag 15 februari 2025 @ 18:42:
@alesandro_46

Probeer dit eens:
code:
1
2
3
.greyButton.erasedownloads {
  display: none;
}
Na een update is de 'Erase downloads' knop weer terug :|

De knop heet blijkbaar erasedls. Ik heb de custom.css tekst aangepast, maar dat mocht niet baten. Heb je toevallig een idee hoe ik de knop weer weg krijg?

Deze ruimte is bewust leeg gelaten


  • Glamdring
  • Registratie: September 2004
  • Laatst online: 17:45
Geen matches
@alesandro_46 Ik kan je even niet helpen, want ik zit nog op de master branche i.p.v. develop en daarom heb ik die nieuwe updates nog niet.

  • Glamdring
  • Registratie: September 2004
  • Laatst online: 17:45
Geen matches
alesandro_46 schreef op dinsdag 24 maart 2026 @ 22:11:
[...]

Na een update is de 'Erase downloads' knop weer terug :|

De knop heet blijkbaar erasedls. Ik heb de custom.css tekst aangepast, maar dat mocht niet baten. Heb je toevallig een idee hoe ik de knop weer weg krijg?
Hi @alesandro_46,

Probeer dit eens:
code:
1
2
3
4
5
.greyButton.erasedownloads {
  position: absolute;
  visibility: hidden;
  display: none;
}

  • alesandro_46
  • Registratie: Januari 2012
  • Laatst online: 21:53
Geen matches
Glamdring schreef op zondag 12 april 2026 @ 18:55:
[...]


Hi @alesandro_46,

Probeer dit eens:
code:
1
2
3
4
5
.greyButton.erasedownloads {
  position: absolute;
  visibility: hidden;
  display: none;
}
_/-\o_ Yes!
De erase downloads knop is (voor mij) gelukkig weer verdwenen, super bedankt!

Deze ruimte is bewust leeg gelaten


  • smv
  • Registratie: Februari 2004
  • Laatst online: 30-10 12:07

smv

Matched: spotweb
Goedendag,

Ik ben nu 3 dagen aan het pielen om een spotweb filter aan de praat te krijgen. Via de gui en zoeken, werkt hij. Zodra ik hem opsla met naam aangeven, dan vind ik alles wat los en vast zit. Nu ik heb op het woord filter gezocht in dit topic en de 10 bladzijdes door gelezen. Daar kwam de tool spotweb filter creator naar voren. Deze werkt top!

Echter wat ik niet wist, zodra ik mijn ene test filter saved en impoteer, dat hij mijn huidige filters volledig overshreef. Ik dacht dat hij mijn nieuwe filter toevoegde.

Kan iemand mij aub de filter file geven, waar alle standaard filters in staan? Deze heb ik eerder gezien, dat iemand deze gegeven heeft, maar die url werkt niet meer.

Met mijn AI vriend online, kan ik niet vinden hoe ik dit makkelijk kan terug zetten. Vandaar mijn vraag hier of iemand de .xml zou willen uploaden, zodat ik hem kan downloaden.

  • Glamdring
  • Registratie: September 2004
  • Laatst online: 17:45
Geen matches
@smv

Ik was ook een keer wat filters kwijt, maar heb deze toen op mijn linux bak hersteld met:
code:
1
php upgrade-db.php --reset-filters
Waarschijnlijk moet je in dit commando nog het pad naar upgrade-db.php toevoegen.

  • smv
  • Registratie: Februari 2004
  • Laatst online: 30-10 12:07

smv

Geen matches
Glamdring schreef op donderdag 23 april 2026 @ 16:05:
@smv

Ik was ook een keer wat filters kwijt, maar heb deze toen op mijn linux bak hersteld met:
code:
1
php upgrade-db.php --reset-filters
Waarschijnlijk moet je in dit commando nog het pad naar upgrade-db.php toevoegen.
Heel erg bedankt, ik heb ze weer terug.

  • sciurius
  • Registratie: Januari 2014
  • Laatst online: 31-10 10:01
Matched: spotweb
Ik draai Spotweb al vele jaren in een docker (jgeusebroek versie) met een PostgreSQL database.

Sinds enkele dagen krijgt de retrieve een crash:
Last retrieve: 2026-08-13 16:16:06
Retrieving new Spots from server...
Appr. Message count:    4431086
First message number:   2
Last message number:    4431088
Current article number: 4430006
Retrieving 4430006 till 4431089 (parsed: 1064, in DB: 19, signed: 1, invalid: 3, rtntn.skip: 0, mod: 96, full: 964, total: 1083)
SpotWeb v0.69.41.35 on PHP v8.5.4 crashed

Fatal error SqlErrorException occured during retrieve:
  22001: 7: ERROR:  value too long for type character varying(255)
Enig idee wat te doen?

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
sciurius schreef op dinsdag 18 augustus 2026 @ 11:58:
Ik draai Spotweb al vele jaren in een docker (jgeusebroek versie) met een PostgreSQL database.

Sinds enkele dagen krijgt de retrieve een crash:
Last retrieve: 2026-08-13 16:16:06
Retrieving new Spots from server...
Appr. Message count:    4431086
First message number:   2
Last message number:    4431088
Current article number: 4430006
Retrieving 4430006 till 4431089 (parsed: 1064, in DB: 19, signed: 1, invalid: 3, rtntn.skip: 0, mod: 96, full: 964, total: 1083)
SpotWeb v0.69.41.35 on PHP v8.5.4 crashed

Fatal error SqlErrorException occured during retrieve:
  22001: 7: ERROR:  value too long for type character varying(255)
Enig idee wat te doen?
Je hebt ergens een kolom die "te kort is". Ik heb t in MariaDB ook gehad - weet zo alleen niet meer welke.....

Als ik mijn creates bekijk:
CREATE TABLE `commentsfull` (
`userkey` varchar(512) DEFAULT NULL,

CREATE TABLE `spotsfull` (
`userkey` varchar(512) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,

zijn deze 2 kolommen vermoedelijk de boosdoener. Je kunt ze online oprekken, dat zal ook in Postgress wel kunnen. Het alternatief is dan je de database "even" opnieuw opbouwt. Dat heb ik ook al meermaals gedaan, dan maakt ie de tabellen op basis van "de meest recente" definities aan.

  • sciurius
  • Registratie: Januari 2014
  • Laatst online: 31-10 10:01
Geen matches
Ik ga hier eens mee stoeien, bedankt alvast.

  • Arjan A
  • Registratie: November 2000
  • Laatst online: 22:10

Arjan A

Cenosillicafoob

Geen matches
Ik zag recentelijk dat er langere xmlsignatures verstuurd worden. In mijn geval was het zaak om het veld xmlsignature in de tabel spotsfull naar 512 te vergroten en de foutmeldingen verdwenen weer.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
Arjan A schreef op dinsdag 18 augustus 2026 @ 14:09:
Ik zag recentelijk dat er langere xmlsignatures verstuurd worden. In mijn geval was het zaak om het veld xmlsignature in de tabel spotsfull naar 512 te vergroten en de foutmeldingen verdwenen weer.
Hmm, ik heb daar (nog) geen fouten over opgemerkt (Eweka als leverancier), dat veld staat mij mij nog op 255, zal m meteen maar ophogen om problemen voor te zijn ;)

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Geen matches
Arjan A schreef op dinsdag 18 augustus 2026 @ 14:09:
Ik zag recentelijk dat er langere xmlsignatures verstuurd worden. In mijn geval was het zaak om het veld xmlsignature in de tabel spotsfull naar 512 te vergroten en de foutmeldingen verdwenen weer.
Hoe en waar pas ik dat aan?

  • Arjan A
  • Registratie: November 2000
  • Laatst online: 22:10

Arjan A

Cenosillicafoob

Geen matches
Als je MySQL of MariaDB hebt, kan dat met phpMyAdmin of via de cmdline. Als je PostgreSQL als backend hebt, kan het ook via de cmdline. Of je gebruikt een tool als HeidiSQL of DBeaver (die kunnen met zowel Mysql/MariaDB als Postgres verbinden).

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
In de database. Voor MariaDB gebruik ik phpmyadmin, definitie van de tabel, edit de kolom. Voor Postgres is er een soortgelijk tooltje (maar dat ken ik verder niet. Onder Windows kun je het via Navicat ook wel regelen.

  • sciurius
  • Registratie: Januari 2014
  • Laatst online: 31-10 10:01
Matched: spotweb
Als ik de table column aanpas, dan zet de eerstvolgende retrieve dit weer terug en crasht dus weer.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
% pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(255),
% psql spotweb -c 'alter table spotsfull alter column xmlsignature type character varying(512);'
ALTER TABLE
% pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(512),
% ~/wrk/Spotweb/Docker/retrieve.sh 
Last retrieve: 2026-08-13 16:16:06
Retrieving new Spots from server...
Appr. Message count:    4431159
First message number:   2
Last message number:    4431161
Current article number: 4430006

Retrieving 4430006 till 4431162 (parsed: 1137, in DB: 19, signed: 0, invalid: 3, rtntn.skip: 0, mod: 111, full: 1022, total: 1156)

SpotWeb v0.69.41.35 on PHP v8.5.4 crashed

Fatal error SqlErrorException occured during retrieve:
  22001: 7: ERROR:  value too long for type character varying(255)

... etc ...
 % pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(255),

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
sciurius schreef op dinsdag 18 augustus 2026 @ 20:19:
Als ik de table column aanpas, dan zet de eerstvolgende retrieve dit weer terug en crasht dus weer.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
% pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(255),
% psql spotweb -c 'alter table spotsfull alter column xmlsignature type character varying(512);'
ALTER TABLE
% pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(512),
% ~/wrk/Spotweb/Docker/retrieve.sh 
Last retrieve: 2026-08-13 16:16:06
Retrieving new Spots from server...
Appr. Message count:    4431159
First message number:   2
Last message number:    4431161
Current article number: 4430006

Retrieving 4430006 till 4431162 (parsed: 1137, in DB: 19, signed: 0, invalid: 3, rtntn.skip: 0, mod: 111, full: 1022, total: 1156)

SpotWeb v0.69.41.35 on PHP v8.5.4 crashed

Fatal error SqlErrorException occured during retrieve:
  22001: 7: ERROR:  value too long for type character varying(255)

... etc ...
 % pg_dump -s spotweb | grep xmlsignature
    xmlsignature character varying(255),
Moet je misschien nog een COMMIT tussen voegen? Ik ken postgres helaas niet......

O ja en voer je wijziging door terwijl spotweb NIET actief is.

[ Voor 3% gewijzigd door DjoeC op 18-08-2026 20:49 ]


  • sciurius
  • Registratie: Januari 2014
  • Laatst online: 31-10 10:01
Matched: spotweb
Volgens https://github.com/spotweb/spotweb/issues/937 moet je tegenwoordig geen fullspots en fullcomments meer retrieven. Ik heb dat aangepast en nu loopt het weer. En een stuk sneller.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
sciurius schreef op dinsdag 18 augustus 2026 @ 21:21:
Volgens https://github.com/spotweb/spotweb/issues/937 moet je tegenwoordig geen fullspots en fullcomments meer retrieven. Ik heb dat aangepast en nu loopt het weer. En een stuk sneller.
IK was vandaag mijn container aan het bijwerken (CRON_INTERVAL aanpassen) en kreeg nu inderdaad ook dezelfde crash:
code:
1
2
3
4
5
    Validating spotsfull(xmlsignature)
        Modifying column xmlsignature (type) on spotsfull
SpotWeb crashed
Database schema or settings upgrade failed:
   22001: 1406: Data too long for column 'xmlsignature' at row 2478980
Het grappige is dat Spotweb niet werkelijk crashed maar alleen de rest van de updates (als die er zijn) overslaat. Vervolgens loopt ie gewoon verder. De UI lijkt ook gewoon te werken.

Mocht ie later alsnog vastlopen doe ik wel een reset-db.

  • Nakebod
  • Registratie: Oktober 2000
  • Laatst online: 20:56
Geen matches
Comments ophalen doe ik al vele jaren niet meer, dat vervuilt je database echt enorm. En gok dat je 99.99% nooit bekijkt. Meeste tijd zoek ik gewoon een *kuch* linux iso en gooi de download direct naar SABnzbd, geen comments nodig.

Maar, tenzij ik wat over het hoofd zie, zie je dan ook helemaal geen comments meer, je kan ze afaik ook niet pas ophalen als je een spot bekijkt. Wat heel soms een gemis is.

Blog | PVOutput Zonnig Beuningen


  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
Nakebod schreef op woensdag 19 augustus 2026 @ 15:17:
Comments ophalen doe ik al vele jaren niet meer, dat vervuilt je database echt enorm. En gok dat je 99.99% nooit bekijkt. Meeste tijd zoek ik gewoon een *kuch* linux iso en gooi de download direct naar SABnzbd, geen comments nodig.

Maar, tenzij ik wat over het hoofd zie, zie je dan ook helemaal geen comments meer, je kan ze afaik ook niet pas ophalen als je een spot bekijkt. Wat heel soms een gemis is.
Ik gebruik de comments wel vrij vaak om te zien of de distributie's door anderen "compleet" ervaren zijn, er wil nog wel eens "troep" tussen staan.

Nee, later ophalen lukt niet. Misschien een verzoek aanmaken? Wel de (commentaar) artikel ID's opslaan maar pas ophalen als de spot bekeken wordt? Aan de andere kant: Ik heb geen moeite met de omvang van de database (7-8GB) in MariaDB op een SSD.

  • sciurius
  • Registratie: Januari 2014
  • Laatst online: 31-10 10:01
Geen matches
Ik kom ook soms spots tegen die het nodig vinden te encrypten met de medeling 'password in the comments'.

  • dirks
  • Registratie: December 2006
  • Laatst online: 22:29
Geen matches
Bij mij worden comments alleen opgehaald als ik de spot open, dat gaat al jaren zo.

Instellingen - Ophalen:
  • Spots volledig ophalen: uit
  • Comments ophalen: aan
  • Comments volledig ophalen: uit

  • baba420
  • Registratie: April 2009
  • Laatst online: 31-10 10:09
Geen matches
Ik vind nzbserver dot com prima genoeg. Scheelt weer resources voor je eigen systeem.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
baba420 schreef op donderdag 20 augustus 2026 @ 10:01:
Ik vind nzbserver dot com prima genoeg. Scheelt weer resources voor je eigen systeem.
Spotweb is bij mij 1 van de "goedkoopste" en makkelijkste oplossingen. Weinig resourcebeslag, loopt op een Raspberry waar nog tig andere zaken (zoals onze Google vervanger Nextcloud en Home Assistant) op draaien. Het ding staat dus sowieso altijd aan. Het enige voordeel van andermans website is dat jij er verder geen omkijken naar hebt.

  • jozy
  • Registratie: Juli 2002
  • Laatst online: 25-10 22:31
Matched: spotweb
Venimk1 schreef op dinsdag 9 december 2025 @ 08:08:
the LXC setup installer + spotweb

🚀 Installation
Option 1: Fresh Spotweb Installation (Recommended)
Install Spotweb + themes in one command:

# Download installer
code:
1
2
curl -fsSL https://raw.githubusercontent.com/VenimK/spotweb/themes-only/proxmox-create-and-install-spotweb.sh -o install-spotweb.sh
chmod +x install-spotweb.sh
# Run installer
code:
1
./install-spotweb.sh
During installation, choose:

Option 2: Dark mode only (simple dark theme)
Option 3: Complete theme pack (8 themes + switcher + tools) ⭐ Recommended
Beste @Venimk1 dit is wel heel gaaf, ik zat enorm te hannissen om dit te laten draaien zelf wat uiteindelijk gelukt is maar een scriptje runnen en direct alles goed is wel heel fijn! Zie je misschien de mogelijkheid om het script te actualiseren naar debian 13 met php8.4 als basis?

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Geen matches
jozy schreef op maandag 21 september 2026 @ 21:10:
[...]

Beste @Venimk1 dit is wel heel gaaf, ik zat enorm te hannissen om dit te laten draaien zelf wat uiteindelijk gelukt is maar een scriptje runnen en direct alles goed is wel heel fijn! Zie je misschien de mogelijkheid om het script te actualiseren naar debian 13 met php8.4 als basis?
Sorry, zie nu pas je berichtje maar.
Zal die even bezien, of het doenbaar is
ThX

  • Venimk1
  • Registratie: Maart 2011
  • Laatst online: 14-10 16:43
Matched: spotweb
jozy schreef op maandag 21 september 2026 @ 21:10:
[...]

Beste @Venimk1 dit is wel heel gaaf, ik zat enorm te hannissen om dit te laten draaien zelf wat uiteindelijk gelukt is maar een scriptje runnen en direct alles goed is wel heel fijn! Zie je misschien de mogelijkheid om het script te actualiseren naar debian 13 met php8.4 als basis?
Have Fun
https://github.com/VenimK...te-and-install-spotweb.sh

  • Goeny
  • Registratie: Oktober 2026
  • Laatst online: 30-10 14:14
Matched: spotweb
Jarenlang gebruik gemaakt van Spotweb. En heel eerlijk gezegd is het ook altijd goed bevallen. Op een gegeven moment heb ik een gooi gedaan om het, toch wel ouderwetse, uiterlijk een opfrisbeurt te geven door het allemaal opnieuw te maken met bootstrap. (Bootspot) Maar omdat alles zo enorm in elkaar verweven zit heb ik dat op een gegeven moment opgegeven.

Nu alles met AI zo verschrikkelijk makkelijk wordt gemaakt heb ik een poging gewaagd om een compleet nieuwe applicatie te maken die de spots ophaalt en een mooie, frisse UI biedt.

Wat ik tot nu toe heb:
* Naam voor de applicatie: NNSpotty
* Overzichtpagina
* Users en groepenbeheer
* Filters
* Kan gebruikt worden als Newznab server. Voor handige koppeling naar bijvoorbeeld Prowlarr, Radarr, Sonarr, etc.
* CLI commands - Kunnen gebruikt worden voor diverse zaken, o.a. retreiver in cron zetten.
* SABnzbd koppeling, met live progress
* Mogelijkheid om te koppelen met TVDB, inclusief slimme scanner. (Films en series wordt metadata, cover en fanart aan toegevoegd)
* Mogelijkheid om te koppelen met Musicbrainz, inclusief slimme scanner (Muziek wordt metadata, albumcover en fanart aan toegevoegd) Werkt niet optimaal. Omdat er zoveel muziek releases zijn is matchen moeilijk. Script weet dus niet altijd welk album het echt is.
* Admin beheer
* Auditlog
* Profiel instellingen met mogelijke koppeling naar Gravatar of remote profielfoto's
* Mogelijk om reacties op spots te plaatsen
* Favorieten opslaan
* Thema heeft invloeden van Plex. Er is een Dark en Light thema.

Alles wat tot nu toe gemaakt is functioneert goed maar het is nog verre van gereed. Vooral performance is nog wel een issue. Als alles netjes geladen is werkt het vlot en soepel. Maar zodra ook de retreiver draait wordt het geheel erg zwaar. (Dit kan ook komen omdat ik de initiële run laat teruglopen tot 2009)

Dit is NIET bedoeld om Spotweb te vervangen. Maar het is uit eigen wens ontstaan omdat ik benieuwd was wat mogelijk is, en dat ik de "ouderwetse" spotweb pagina na zoveel jaren een beetje zat was.

Als er animo voor is, ben ik wel bereid om deze beschikbaar te stellen voor anderen die ermee willen spelen.

Hieronder nog een paar screenshots.

Globaal overzicht Overzicht + Mini-details Detail view film Detail view muziek Overzicht + Mini-details

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Matched: spotweb
Goeny schreef op dinsdag 20 oktober 2026 @ 18:24:
Jarenlang gebruik gemaakt van Spotweb. En heel eerlijk gezegd is het ook altijd goed bevallen. Op een gegeven moment heb ik een gooi gedaan om het, toch wel ouderwetse, uiterlijk een opfrisbeurt te geven door het allemaal opnieuw te maken met bootstrap. (Bootspot) Maar omdat alles zo enorm in elkaar verweven zit heb ik dat op een gegeven moment opgegeven.

Nu alles met AI zo verschrikkelijk makkelijk wordt gemaakt heb ik een poging gewaagd om een compleet nieuwe applicatie te maken die de spots ophaalt en een mooie, frisse UI biedt.

Wat ik tot nu toe heb:
* Naam voor de applicatie: NNSpotty
* Overzichtpagina
* Users en groepenbeheer
* Filters
* Kan gebruikt worden als Newznab server. Voor handige koppeling naar bijvoorbeeld Prowlarr, Radarr, Sonarr, etc.
* CLI commands - Kunnen gebruikt worden voor diverse zaken, o.a. retreiver in cron zetten.
* SABnzbd koppeling, met live progress
* Mogelijkheid om te koppelen met TVDB, inclusief slimme scanner. (Films en series wordt metadata, cover en fanart aan toegevoegd)
* Mogelijkheid om te koppelen met Musicbrainz, inclusief slimme scanner (Muziek wordt metadata, albumcover en fanart aan toegevoegd) Werkt niet optimaal. Omdat er zoveel muziek releases zijn is matchen moeilijk. Script weet dus niet altijd welk album het echt is.
* Admin beheer
* Auditlog
* Profiel instellingen met mogelijke koppeling naar Gravatar of remote profielfoto's
* Mogelijk om reacties op spots te plaatsen
* Favorieten opslaan
* Thema heeft invloeden van Plex. Er is een Dark en Light thema.

Alles wat tot nu toe gemaakt is functioneert goed maar het is nog verre van gereed. Vooral performance is nog wel een issue. Als alles netjes geladen is werkt het vlot en soepel. Maar zodra ook de retreiver draait wordt het geheel erg zwaar. (Dit kan ook komen omdat ik de initiële run laat teruglopen tot 2009)

Dit is NIET bedoeld om Spotweb te vervangen. Maar het is uit eigen wens ontstaan omdat ik benieuwd was wat mogelijk is, en dat ik de "ouderwetse" spotweb pagina na zoveel jaren een beetje zat was.

Als er animo voor is, ben ik wel bereid om deze beschikbaar te stellen voor anderen die ermee willen spelen.

Hieronder nog een paar screenshots.

[Afbeelding: Globaal overzicht] [Afbeelding: Overzicht + Mini-details] [Afbeelding: Detail view film] [Afbeelding: Detail view muziek] [Afbeelding: Overzicht + Mini-details]
Ik heb wel interesse.

Waar draait dit programma op?

  • Goeny
  • Registratie: Oktober 2026
  • Laatst online: 30-10 14:14
Geen matches
internetsmurf schreef op dinsdag 20 oktober 2026 @ 18:46:
[...]

Ik heb wel interesse.

Waar draait dit programma op?
Het is een webapplicatie.
PHP8.3, MySQL
Composer is noodzakelijk om dependencies te installeren.

Staat op dit moment op mijn eigen gitlab server. Maar misschien dat ik m binnenkort wel eens op github zet. Dan kan je m clonen of forken.

Eerst nog even wat werken aan de performance van o.a. retreive.

  • internetsmurf
  • Registratie: Juni 2001
  • Laatst online: 20:22
Geen matches
Goeny schreef op dinsdag 20 oktober 2026 @ 19:39:
[...]

Het is een webapplicatie.
PHP8.3, MySQL
Composer is noodzakelijk om dependencies te installeren.

Staat op dit moment op mijn eigen gitlab server. Maar misschien dat ik m binnenkort wel eens op github zet. Dan kan je m clonen of forken.

Eerst nog even wat werken aan de performance van o.a. retreive.
Top! Ben benieuwd!😃

  • Deepvault
  • Registratie: Juli 2025
  • Laatst online: 28-10 18:08
Matched: spotweb
Goeny schreef op dinsdag 20 oktober 2026 @ 18:24:
Jarenlang gebruik gemaakt van Spotweb. En heel eerlijk gezegd is het ook altijd goed bevallen. Op een gegeven moment heb ik een gooi gedaan om het, toch wel ouderwetse, uiterlijk een opfrisbeurt te geven door het allemaal opnieuw te maken met bootstrap. (Bootspot) Maar omdat alles zo enorm in elkaar verweven zit heb ik dat op een gegeven moment opgegeven.

Nu alles met AI zo verschrikkelijk makkelijk wordt gemaakt heb ik een poging gewaagd om een compleet nieuwe applicatie te maken die de spots ophaalt en een mooie, frisse UI biedt.

Wat ik tot nu toe heb:
* Naam voor de applicatie: NNSpotty
* Overzichtpagina
* Users en groepenbeheer
* Filters
* Kan gebruikt worden als Newznab server. Voor handige koppeling naar bijvoorbeeld Prowlarr, Radarr, Sonarr, etc.
* CLI commands - Kunnen gebruikt worden voor diverse zaken, o.a. retreiver in cron zetten.
* SABnzbd koppeling, met live progress
* Mogelijkheid om te koppelen met TVDB, inclusief slimme scanner. (Films en series wordt metadata, cover en fanart aan toegevoegd)
* Mogelijkheid om te koppelen met Musicbrainz, inclusief slimme scanner (Muziek wordt metadata, albumcover en fanart aan toegevoegd) Werkt niet optimaal. Omdat er zoveel muziek releases zijn is matchen moeilijk. Script weet dus niet altijd welk album het echt is.
* Admin beheer
* Auditlog
* Profiel instellingen met mogelijke koppeling naar Gravatar of remote profielfoto's
* Mogelijk om reacties op spots te plaatsen
* Favorieten opslaan
* Thema heeft invloeden van Plex. Er is een Dark en Light thema.

Alles wat tot nu toe gemaakt is functioneert goed maar het is nog verre van gereed. Vooral performance is nog wel een issue. Als alles netjes geladen is werkt het vlot en soepel. Maar zodra ook de retreiver draait wordt het geheel erg zwaar. (Dit kan ook komen omdat ik de initiële run laat teruglopen tot 2009)

Dit is NIET bedoeld om Spotweb te vervangen. Maar het is uit eigen wens ontstaan omdat ik benieuwd was wat mogelijk is, en dat ik de "ouderwetse" spotweb pagina na zoveel jaren een beetje zat was.

Als er animo voor is, ben ik wel bereid om deze beschikbaar te stellen voor anderen die ermee willen spelen.

Hieronder nog een paar screenshots.

[Afbeelding: Globaal overzicht] [Afbeelding: Overzicht + Mini-details] [Afbeelding: Detail view film] [Afbeelding: Detail view muziek] [Afbeelding: Overzicht + Mini-details]
Ziet er goed uit!

  • ginkgo
  • Registratie: Oktober 2000
  • Laatst online: 29-10 15:23
Matched: spotweb
Ik draai al heel lang een oude versie van spotweb op mijn Synology via webstation en heb nooit de moeite genomen om deze de updaten. Vanwege het php2shell lek, heb ik er gisteren eens goed naar gekeken. Mij installatie van spotweb gebruikt momenteel PHP 7.x. Het is me niet gelukt om hem foutloos te laten werken op PHP 8.x, ook niet toen in install.php alles op OK stond.

Dit lijkt een goede aanleiding om eens helemaal op nieuwe te beginnen. Het heeft de voorkeur om spotweb inclusief database via docker compose te draaien. Dat ik dan alle posts eenmalig opnieuw moet binnenhalen neem ik voor lief. Welke docker containers zijn aan te raden? Wat zijn de verschillen?

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
ginkgo schreef op donderdag 22 oktober 2026 @ 10:50:
Ik draai al heel lang een oude versie van spotweb op mijn Synology via webstation en heb nooit de moeite genomen om deze de updaten. Vanwege het php2shell lek, heb ik er gisteren eens goed naar gekeken. Mij installatie van spotweb gebruikt momenteel PHP 7.x. Het is me niet gelukt om hem foutloos te laten werken op PHP 8.x, ook niet toen in install.php alles op OK stond.

Dit lijkt een goede aanleiding om eens helemaal op nieuwe te beginnen. Het heeft de voorkeur om spotweb inclusief database via docker compose te draaien. Dat ik dan alle posts eenmalig opnieuw moet binnenhalen neem ik voor lief. Welke docker containers zijn aan te raden? Wat zijn de verschillen?
Ik gebruik een Raspberry Pi5 met OMV. Daaronder een stuk of 20+ containers met de officieele MariaDB, deze compose voor Spotweb (netwerk aangemaakt dat user_bridge heet):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
name: spotweb
services:
  spotweb:
    restart: unless-stopped
    container_name: spotweb
    environment:
      CRON_INTERVAL: 0 * * * *
      DB_ENGINE: pdo_mysql
      DB_HOST: mariadb
      DB_NAME: spotweb
      DB_PASS: <spotwebdatabasepassword>
      DB_PORT: "3306"
      DB_USER: <spotwebdatabaseuser>
      PGID: "100"
      PUID: "1001"
      TZ: Etc/UTC
    image: erikdevries/spotweb
    networks:
      user_bridge: null
    ports:
      - mode: ingress
        target: 80
        published: "86"
        protocol: tcp
networks:
  user_bridge:
    name: user_bridge
    external: true
Daarnaast sabnzbd in een losse container (alles in losse containers, ik gebruik geen stacks hoewel dat soms makkelijker is):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
name: sabnzbd
services:
  sabnzbd:
    restart: unless-stopped
    container_name: sabnzbd
    environment:
      PGID: "100"
      PUID: "1001"
      TZ: Etc/UTC
    image: lscr.io/linuxserver/sabnzbd:latest
    networks:
      user_bridge: null
    volumes:
      - type: bind
        source: /<sambasharedfolder>/sabnzbd/config
        target: /config
        bind: {}
      - type: bind
        source: /<sambasharedfolder>/sabnzbd
        target: /downloads
        bind: {}
    ports:
      - mode: ingress
        target: 8080
        published: "8083"
        protocol: tcp
networks:
  user_bridge:
    name: user_bridge
    external: true
Ik ben ooit OMV (Openmediavault) gaan gebruiken als NAS met Docker. Een beetje een leercurve maar daarna wordt alles best wel eenvoudig, ook qua beheer (met de correcte plugins). Daar draait ook (o.a.) Homeassistant, Nextcloud (Google foto/agenda vervanger) en nog veel meer - maar dat gaat tever voor dit topic.

  • ginkgo
  • Registratie: Oktober 2000
  • Laatst online: 29-10 15:23
Geen matches
@DjoeC Bedankt voor het delen van je docker compose bestanden. Heb je bewust voor die van Erik de Vries gekozen?

Overigens zijn de afgelopen 24 uur van zowel het de Vries als Geusebroek image updates uitgekomen. Ik heb nog geen changelogs gezien, maar verwacht dat dit de php2shell lekken fixed.

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
ginkgo schreef op donderdag 22 oktober 2026 @ 16:57:
@DjoeC Bedankt voor het delen van je docker compose bestanden. Heb je bewust voor die van Erik de Vries gekozen?

Overigens zijn de afgelopen 24 uur van zowel het de Vries als Geusebroek image updates uitgekomen. Ik heb nog geen changelogs gezien, maar verwacht dat dit de php2shell lekken fixed.
Nee, niet heel bewust, het werkt gewoon. En ja, ik heb de containers (en veel andere) vanochtend opnieuw uitgerold... Overigens hangen deze interfaces alleen intern en zijn ze evt via VPN te benaderen. Wat wel aan internet hangt zit achter Cloudflare en NPM. Dus nog wat extra bescherming......

  • servies
  • Registratie: December 1999
  • Laatst online: 20:34

servies

Veni Vidi Servici

Geen matches
Heeft iemand anders hier last van of ligt het probleem bij mij: ik krijg geen nieuwe spots binnen.
Heb net het retrieve script handmatig op de prompt gedraaid met als uitkomst:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Removing Spot information which is beyond retention period,, done
Last retrieve: 2026-10-23 06:00:08
Retrieving new Spots from server reader.xsnews.nl...
Appr. Message count:    2615762
First message number:   7156827
Last message number:    9772589
Current article number: 9772515

Retrieving 9772515 till 9772590 (parsed: 74, in DB: 1, signed: 0, invalid: 74, rtntn.skip: 0, mod: 0, full: 0, total: 75) in 0.03 seconds
Processed a total of 75 spots
Finished retrieving spots.

Calculating how many spots are new...............................................................
, done.
Last retrieve: 2026-10-23 06:19:42
Retrieving new comments from server reader.xsnews.nl...
Appr. Message count:    16018633
First message number:   11655127
Last message number:    27673760
Current article number: 27673746

Retrieving 27673746 till 27673761, found 15 comments in 0.01 seconds
Processed a total of 15 comments
Finished retrieving comments.

Last retrieve: 2026-10-23 06:19:42
Retrieving new reports from server reader.xsnews.nl...
Appr. Message count:    250551
First message number:   34829
Last message number:    285380
Current article number: 285380

Processed a total of 0 reports
Finished retrieving reports.

Finished updating blacklist. Added 0, removed 0, skipped 7 of 845 lines.
Finished updating whitelist. Added 0, removed 0, skipped 3 of 711 lines.
Starting to create statistics 
Finished creating statistics
Lijkt me redelijk kloppend alleen alle binnengehaalde artikelen zijn invalid???
Ik heb net m'n PHP versie geupdate van 8.2 naar 8.4 maar dat zou geen probleem mogen zijn... met de nadruk op zou...

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
servies schreef op vrijdag 23 oktober 2026 @ 08:27:
Heeft iemand anders hier last van of ligt het probleem bij mij: ik krijg geen nieuwe spots binnen.
Heb net het retrieve script handmatig op de prompt gedraaid met als uitkomst:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Removing Spot information which is beyond retention period,, done
Last retrieve: 2026-10-23 06:00:08
Retrieving new Spots from server reader.xsnews.nl...
Appr. Message count:    2615762
First message number:   7156827
Last message number:    9772589
Current article number: 9772515

Retrieving 9772515 till 9772590 (parsed: 74, in DB: 1, signed: 0, invalid: 74, rtntn.skip: 0, mod: 0, full: 0, total: 75) in 0.03 seconds
Processed a total of 75 spots
Finished retrieving spots.

Calculating how many spots are new...............................................................
, done.
Last retrieve: 2026-10-23 06:19:42
Retrieving new comments from server reader.xsnews.nl...
Appr. Message count:    16018633
First message number:   11655127
Last message number:    27673760
Current article number: 27673746

Retrieving 27673746 till 27673761, found 15 comments in 0.01 seconds
Processed a total of 15 comments
Finished retrieving comments.

Last retrieve: 2026-10-23 06:19:42
Retrieving new reports from server reader.xsnews.nl...
Appr. Message count:    250551
First message number:   34829
Last message number:    285380
Current article number: 285380

Processed a total of 0 reports
Finished retrieving reports.

Finished updating blacklist. Added 0, removed 0, skipped 7 of 845 lines.
Finished updating whitelist. Added 0, removed 0, skipped 3 of 711 lines.
Starting to create statistics 
Finished creating statistics
Lijkt me redelijk kloppend alleen alle binnengehaalde artikelen zijn invalid???
Ik heb net m'n PHP versie geupdate van 8.2 naar 8.4 maar dat zou geen probleem mogen zijn... met de nadruk op zou...
Hier komt alles (docker container) gewoon binnen. Laatste spot van 23/10/2026, 10:57 (UTC).

  • servies
  • Registratie: December 1999
  • Laatst online: 20:34

servies

Veni Vidi Servici

Geen matches
DjoeC schreef op vrijdag 23 oktober 2026 @ 13:27:
[...]

Hier komt alles (docker container) gewoon binnen. Laatste spot van 23/10/2026, 10:57 (UTC).
Heb PHP weer teruggezet naar 8.2 en voila, alles komt weer binnen... Tja...
Er is er geen een meer invalid...

[ Voor 6% gewijzigd door servies op 23-10-2026 13:36 ]


  • Loolladin
  • Registratie: Juli 2023
  • Laatst online: 28-10 11:01
Geen matches
Deze ga ik binnenkort ook even proberen :)

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
servies schreef op vrijdag 23 oktober 2026 @ 13:34:
[...]

Heb PHP weer teruggezet naar 8.2 en voila, alles komt weer binnen... Tja...
Er is er geen een meer invalid...
Hmm, ik denk dat je nog wat meer moet aanpassen. De erikdevries/spotweb container geeft:
PHP 8.5.12 (cli) (built: Oct 21 2026 15:57:41) (NTS)

  • gielie
  • Registratie: September 2005
  • Laatst online: 22:30
Matched: spotweb
servies schreef op vrijdag 23 oktober 2026 @ 08:27:
Heeft iemand anders hier last van of ligt het probleem bij mij: ik krijg geen nieuwe spots binnen.
Heb net het retrieve script handmatig op de prompt gedraaid met als uitkomst:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Removing Spot information which is beyond retention period,, done
Last retrieve: 2026-10-23 06:00:08
Retrieving new Spots from server reader.xsnews.nl...
Appr. Message count:    2615762
First message number:   7156827
Last message number:    9772589
Current article number: 9772515

Retrieving 9772515 till 9772590 (parsed: 74, in DB: 1, signed: 0, invalid: 74, rtntn.skip: 0, mod: 0, full: 0, total: 75) in 0.03 seconds
Processed a total of 75 spots
Finished retrieving spots.

Calculating how many spots are new...............................................................
, done.
Last retrieve: 2026-10-23 06:19:42
Retrieving new comments from server reader.xsnews.nl...
Appr. Message count:    16018633
First message number:   11655127
Last message number:    27673760
Current article number: 27673746

Retrieving 27673746 till 27673761, found 15 comments in 0.01 seconds
Processed a total of 15 comments
Finished retrieving comments.

Last retrieve: 2026-10-23 06:19:42
Retrieving new reports from server reader.xsnews.nl...
Appr. Message count:    250551
First message number:   34829
Last message number:    285380
Current article number: 285380

Processed a total of 0 reports
Finished retrieving reports.

Finished updating blacklist. Added 0, removed 0, skipped 7 of 845 lines.
Finished updating whitelist. Added 0, removed 0, skipped 3 of 711 lines.
Starting to create statistics 
Finished creating statistics
Lijkt me redelijk kloppend alleen alle binnengehaalde artikelen zijn invalid???
Ik heb net m'n PHP versie geupdate van 8.2 naar 8.4 maar dat zou geen probleem mogen zijn... met de nadruk op zou...
Dit is logisch, je retrieve.php verwijst nog naar php8.2 terwijl je php8.4 hebt. Je moet dus je retrieve.php even aanpassen.
Waarschijnlijk is de subfolder verkeerd 8.4 ipv 8.2

ik draai spotweb al een tijdje in een docker container, dit is echt veel makkelijker.

[ Voor 3% gewijzigd door gielie op 23-10-2026 13:51 ]

"Death smiles at us all, all a man can do is smile back." - Maximus Decimus Meridius


  • servies
  • Registratie: December 1999
  • Laatst online: 20:34

servies

Veni Vidi Servici

Matched: spotweb
DjoeC schreef op vrijdag 23 oktober 2026 @ 13:48:
[...]

Hmm, ik denk dat je nog wat meer moet aanpassen. De erikdevries/spotweb container geeft:
PHP 8.5.12 (cli) (built: Oct 21 2026 15:57:41) (NTS)
Ja, maar wat is het? Spotweb zou met PHP 8.4 moeten werken. Maar nadat ik geswitched was van 8.2 naar 8.4 was alles wat binnenkwam invalid.
code:
1
(parsed: 74, in DB: 1, signed: 0, invalid: 74, rtntn.skip: 0, mod: 0, full: 0, total: 75)
terug naar 8.2:
code:
1
(parsed: 5, in DB: 1, signed: 5, invalid: 0, rtntn.skip: 0, mod: 0, full: 0, total: 6)
Mogelijk moet ik nog iets extra doen... Maar wat???

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Matched: spotweb
servies schreef op vrijdag 23 oktober 2026 @ 13:52:
[...]

Ja, maar wat is het? Spotweb zou met PHP 8.4 moeten werken. Maar nadat ik geswitched was van 8.2 naar 8.4 was alles wat binnenkwam invalid.
code:
1
(parsed: 74, in DB: 1, signed: 0, invalid: 74, rtntn.skip: 0, mod: 0, full: 0, total: 75)
terug naar 8.2:
code:
1
(parsed: 5, in DB: 1, signed: 5, invalid: 0, rtntn.skip: 0, mod: 0, full: 0, total: 6)
Mogelijk moet ik nog iets extra doen... Maar wat???
Kan het zijn dat je provider (tijdelijk) niks binnen krijgt? Soewiso is 06:00 als begin tijd een beetje bijzonder.

[ Voor 5% gewijzigd door DjoeC op 23-10-2026 13:55 ]


  • servies
  • Registratie: December 1999
  • Laatst online: 20:34

servies

Veni Vidi Servici

Matched: spotweb
gielie schreef op vrijdag 23 oktober 2026 @ 13:50:
[...]

Dit is logisch, je retrieve.php verwijst nog naar php8.2 terwijl je php8.4 hebt. Je moet dus je retrieve.php even aanpassen.
Waarschijnlijk is de subfolder verkeerd 8.4 ipv 8.2
aanroep:
/usr/bin/php retrieve.php

php --version levert 8.4 op wanneer ik geswitched ben naar 8.4. De scripts doen het en geven geen foutmeldingen: alleen alle spots zijn invalid.
ik draai spotweb al een tijdje in een docker container, dit is echt veel makkelijker.
apache config vrij simpel. en git pull, database server heb ik ook al klaarstaan. Niets moeilijker dan docker normaal gesproken.

  • servies
  • Registratie: December 1999
  • Laatst online: 20:34

servies

Veni Vidi Servici

Geen matches
DjoeC schreef op vrijdag 23 oktober 2026 @ 13:54:
[...]

Kan het zijn dat je provider (tijdelijk) niks binnen krijgt? Soewiso is 06:00 als begin tijd een beetje bijzonder.
Teruggeswitch naar PHP 8.2 en alles komt weer binnen.
retrieve wordt via een crontab ieder uur gedaan.

  • Goeny
  • Registratie: Oktober 2026
  • Laatst online: 30-10 14:14
Geen matches
Voor iedereen vrij om te installeren.
Is uiteraard nog work in progress.

https://github.com/Goeny/NNSpotty/

  • DjoeC
  • Registratie: November 2018
  • Laatst online: 00:44
Geen matches
servies schreef op vrijdag 23 oktober 2026 @ 14:04:
[...]

Teruggeswitch naar PHP 8.2 en alles komt weer binnen.
retrieve wordt via een crontab ieder uur gedaan.
Ik kan je niet verder helpen. Maar dit is juist waarom ik me via Docker laat "ontzorgen". Een container door een ander onderhouden die door anderen ook gebruikt wordt (>1 miljoen downloads) vergt van mij alleen maar het gecontroleerd updaten van de container (en Watchtower vertelt me wanneer er een nieuwe versie is). Op die manier blijft m'n basis machine (raspberry pi) "schoon" en hoef ik niet te rommelen om alle programma's die allemaal verschillende onderliggende versie nodig hebben op orde te houden.

  • Kroonkurk
  • Registratie: December 2015
  • Laatst online: 20:23
Geen matches
Crontab kan een andere user (root ?) gebruiken voor zijn taken.
Dus laat via Crontab de versie opvragen van php en sla het resultaat in een txt bestand op.
Kan je tenminste controleren of de Crontab met de juiste php versie werkt.

  • remcoXP
  • Registratie: Februari 2002
  • Laatst online: 30-10 07:40
Matched: spotweb
Gaaf. niet een pr van te maken om als + op de spotweb repo te krijgen?
als dat niet het geval ik zie ik graag je github een keer voorbij komen :)

heel tof!
Goeny schreef op dinsdag 20 oktober 2026 @ 18:24:
Jarenlang gebruik gemaakt van Spotweb. En heel eerlijk gezegd is het ook altijd goed bevallen. Op een gegeven moment heb ik een gooi gedaan om het, toch wel ouderwetse, uiterlijk een opfrisbeurt te geven door het allemaal opnieuw te maken met bootstrap. (Bootspot) Maar omdat alles zo enorm in elkaar verweven zit heb ik dat op een gegeven moment opgegeven.

Nu alles met AI zo verschrikkelijk makkelijk wordt gemaakt heb ik een poging gewaagd om een compleet nieuwe applicatie te maken die de spots ophaalt en een mooie, frisse UI biedt.

Wat ik tot nu toe heb:
* Naam voor de applicatie: NNSpotty
* Overzichtpagina
* Users en groepenbeheer
* Filters
* Kan gebruikt worden als Newznab server. Voor handige koppeling naar bijvoorbeeld Prowlarr, Radarr, Sonarr, etc.
* CLI commands - Kunnen gebruikt worden voor diverse zaken, o.a. retreiver in cron zetten.
* SABnzbd koppeling, met live progress
* Mogelijkheid om te koppelen met TVDB, inclusief slimme scanner. (Films en series wordt metadata, cover en fanart aan toegevoegd)
* Mogelijkheid om te koppelen met Musicbrainz, inclusief slimme scanner (Muziek wordt metadata, albumcover en fanart aan toegevoegd) Werkt niet optimaal. Omdat er zoveel muziek releases zijn is matchen moeilijk. Script weet dus niet altijd welk album het echt is.
* Admin beheer
* Auditlog
* Profiel instellingen met mogelijke koppeling naar Gravatar of remote profielfoto's
* Mogelijk om reacties op spots te plaatsen
* Favorieten opslaan
* Thema heeft invloeden van Plex. Er is een Dark en Light thema.

Alles wat tot nu toe gemaakt is functioneert goed maar het is nog verre van gereed. Vooral performance is nog wel een issue. Als alles netjes geladen is werkt het vlot en soepel. Maar zodra ook de retreiver draait wordt het geheel erg zwaar. (Dit kan ook komen omdat ik de initiële run laat teruglopen tot 2009)

Dit is NIET bedoeld om Spotweb te vervangen. Maar het is uit eigen wens ontstaan omdat ik benieuwd was wat mogelijk is, en dat ik de "ouderwetse" spotweb pagina na zoveel jaren een beetje zat was.

Als er animo voor is, ben ik wel bereid om deze beschikbaar te stellen voor anderen die ermee willen spelen.

Hieronder nog een paar screenshots.

[Afbeelding: Globaal overzicht] [Afbeelding: Overzicht + Mini-details] [Afbeelding: Detail view film] [Afbeelding: Detail view muziek] [Afbeelding: Overzicht + Mini-details]

Gadget-freakz.com. Feedback en tips zijn welkom.


  • Goeny
  • Registratie: Oktober 2026
  • Laatst online: 30-10 14:14
Matched: spotweb
remcoXP schreef op vrijdag 23 oktober 2026 @ 17:52:
Gaaf. niet een pr van te maken om als + op de spotweb repo te krijgen?
als dat niet het geval ik zie ik graag je github een keer voorbij komen :)

heel tof!


[...]
Nee, een PR zal niet mogelijk zijn. Dit staat volledig los van Spotweb. Is ook compleet nieuwe code.

Sinds mijn laatste comment ook weer wat wijzigingen gedaan.
- Performance is enorm verbeterd d.m.v. indexering.
- Bij films en series kan je nu, bij vergroten van de cover afbeelding (indien geladen van meta source), alle beschikbare cover afbeeldingen van de source bekijken.
- Bij films en series zit nu een extra knop in de hero. Indien meta geladen van een source, kan je door alle fanart bladeren.
- Bij films en series zit nu een extra knop in de hero. Indien meta geladen van een source, en beschikbaar, kan je een trailer afspelen.
- Bij muziek is de matching iets slimmer gemaakt. (Werkt helaas nog steeds niet optimaal... Dit is wel een dingetje)
- Er is nu een updater gemaakt. Deze checkt op Github of er een nieuwe release is. Wanneer dit het geval is kan je deze direct vanuit de browser updaten.

Hier de link naar Github: https://github.com/Goeny/NNSpotty

  • slommer
  • Registratie: April 2010
  • Laatst online: 30-10 16:27
Matched: spotweb
Thanks hiervoor.
Eindelijk wat nieuws voor spotweb gewoon omdat het kan :)

Al even mee aan spelen geweest maar met de migrate kreeg ik nogal wat errors.
Blijkbaar kan mijn sql (Ver 8.0.46) niet over weg met "IF NOT EXISTS" .
Deze verwijdert uit migrator.php en nog 1 file in Usenet folder.
Is nu up and running
En afwachtend op nzbget integratie (is wel gepland zie ik nu)

[ Voor 12% gewijzigd door slommer op 28-10-2026 10:18 ]


  • Goeny
  • Registratie: Oktober 2026
  • Laatst online: 30-10 14:14
Matched: spotweb
slommer schreef op woensdag 28 oktober 2026 @ 09:26:
[...]

Thanks hiervoor.
Eindelijk wat nieuws voor spotweb gewoon omdat het kan :)

Al even mee aan spelen geweest maar met de migrate kreeg ik nogal wat errors.
Blijkbaar kan mijn sql (Ver 8.0.46) niet over weg met "IF NOT EXISTS" .
Deze verwijdert uit migrator.php en nog 1 file in Usenet folder.
Is nu up and running
En afwachtend op nzbget integratie (is wel gepland zie ik nu)
Leuk dat je het probeert.

Ik weet dat niet alles even goed gedocumenteerd is.
Bijvoorbeeld: Dubbelklik op een regel opent direct de detailview. Enkele klik opent alleen de quick-details.
Wanneer de MusicBrainz, TVDB of TMDB meta data voor een regel ingeladen is, wordt deze meta data ook weergegeven in de quick-details. Ook de documentatie over hoe sabnzbd koppeling werkt is niet compleet.

In de basis is het zo dat je als admin alles moet instellen. En vervolgens in je gebruikersprofiel kan aangeven of je er gebruik van wilt maken.
Globaal is dus ingesteld, en ingeschakeld door admin. Maar op gebruiker niveau moet je dan nog even selecteren dat je het ook daadwerkelijk wilt gebruiken.

Ik heb je probleem met IF NOT EXISTS meegenomen in de work items. Zal ik binnenkort naar kijken. Ik zal ergens een besluit moeten maken of er een min. versie SQL vereist is, of als ik een workaround in de migraties moet inbakken.

NZBGet integratie staat inderdaad nog op de planning.
Ik moet nog even bedenken hoe ik dat doe i.c.m. SABnzbD. Ze kunnen naast elkaar draaien met een prioriteit selectie. Of slechts 1 download client toestaan zodat ze elkaar niet in de weg zitten.
Feedback hierop wordt op prijs gesteld.

Ander idee waar ik mee speel is:
Daadwerkelijk posten via de UI. Bijvoorbeeld door een map of bestand te selecteren welke op de achtergrond wordt geRAR'd en gePAR'd, en vervolgens wordt geupload. Met diverse instellingen en rechten zoals hoeveel threads beschikbaar voor uploads, wachtwoorden, groepen, schedules, etc.
Maar dit is behoorlijk complex en niet 1,2,3 uitgedacht. Zelfs met behulp van Claude of Codex is het vrij intensief en kost dus veel tokens.

Mocht je tegen problemen aanlopen, of feature requests hebben, dan wordt feedback op github (issues) op prijs gesteld.
Pagina: 1 ... 50 51 Laatste

Let op:
Houd er rekening mee dat je geen link zet naar content, dat levert je direct een waarschuwing op.
LET OP: Linken naar spotweb sites is dus ook niet de bedoeling..

Lees de topicstart voor je een vraag stelt! Hierin staan meerdere antwoorden voorgekauwd.