Skip to content

Releases: TheLastDruid/mediaIngest

v3.0.5 - Bug Fixes and Improvements

06 Dec 18:01

Choose a tag to compare

🐛 Bug Fixes

  • Fixed version.json sync issue: Resolved incorrect update notifications appearing after manual updates
  • Client build deployment: Fixed device name feature not appearing after in-place updates
  • Version reporting: Corrected dashboard API version reporting for update checks

🔧 Improvements

  • Streamlined update process: Clear instructions for rebuilding client in existing containers
  • Enhanced deployment docs: Better guidance for in-place updates vs. full recreation
  • Cache handling: Improved service restart and browser cache clearing after updates

🛠️ Technical Changes

  • Updated client build deployment process
  • Fixed version.json generation in container
  • Improved systemd service restart handling
  • Enhanced configuration update workflow

📦 Deployment

For existing v3.0.4 users:
No action needed - this release addresses edge cases from manual updates.

For users experiencing issues with v3.0.4:

  1. Enter container: pct enter <CTID>
  2. Rebuild client: cd /opt/dashboard/client && npm run build
  3. Update version: Edit /opt/dashboard/version.json to show 3.0.5
  4. Restart service: systemctl restart ingest-dashboard
  5. Hard refresh browser: Ctrl+Shift+R

For new installations:
Run the installer as normal - all fixes are included automatically.


Full Changelog: v3.0.4...v3.0.5

v3.0.4 - Dynamic Device Name Display

06 Dec 16:36

Choose a tag to compare

🎯 New Features

  • Display Actual USB Device Names: Dashboard now shows the real name of your connected USB drive instead of hardcoded text
  • Smart Device Detection: Automatically detects and displays:
    • User-set filesystem labels (e.g., 'My Backup Drive', 'Work Files')
    • Device model names (e.g., 'Samsung T7 Shield', 'Kingston DataTraveler')
    • Graceful fallbacks when information unavailable

🔧 Technical Improvements

  • Enhanced ingest script with lsblk device detection (LABEL → MODEL → 'USB Drive')
  • Added deviceName field to status.json for real-time tracking
  • Updated /api/status endpoint to expose device information
  • Frontend automatically refreshes device names via Server-Sent Events

💡 User Experience

  • More informative dashboard reflecting actual hardware
  • Better visual feedback about connected devices
  • Professional appearance with real device information
  • Shows 'No device connected' when idle

📦 Deployment

To update your existing installation:

  1. Destroy current container: pct destroy <CTID>
  2. Run the latest installer script
  3. Reconfigure your settings

The new version will automatically detect and display your USB device names in the dashboard.


Full Changelog: v3.0.3...v3.0.4

v3.0.3 - Simplified Update Process

06 Dec 16:15

Choose a tag to compare

🎉 What's New

Update Process Simplified

  • Removed complex update script - Updates are now done by recreating the LXC container
  • Updated dashboard banner - Shows clear instructions for destroying and recreating container
  • No data loss - All media is stored on NAS, container is stateless

📦 Installation

New Installation

bash -c "$(wget -qLO - https://raw.githubusercontent.com/TheLastDruid/mediaIngest/main/install.sh)"

Update Existing Installation

Since the container is stateless (all data on NAS), updating is simple:

# 1. Find your container ID
pct list | grep media-ingest

# 2. Destroy existing container (replace CTID with your actual container ID)
pct stop CTID && pct destroy CTID

# 3. Run installer to create fresh container
bash -c "$(wget -qLO - https://raw.githubusercontent.com/TheLastDruid/mediaIngest/main/install.sh)"

⚠️ Note: Container ID may change after recreation

Previous Features (still included)

  • ✅ Fixed installer heredoc syntax errors
  • ✅ Automatic update notifications in dashboard
  • ✅ Version tracking and GitHub release comparison
  • ✅ All 12 security risks mitigated (100%)

See SECURITY_HARDENING.md for security details.

v3.0.2 - Installer Fix and Update System

06 Dec 16:05

Choose a tag to compare

🎉 What's New

Critical Fixes

  • Fixed installer heredoc syntax errors - The installer now works correctly without bash syntax errors
  • Resolved nested quote escaping issues - Moved heredoc delimiter outside bash -c command for clean, maintainable code

New Features

  • Automatic Update Notifications - Dashboard now checks for new releases and displays an update banner
  • In-Place Update Script - Update existing installations without destroying the container
  • Version Tracking - System now tracks installed version and compares with GitHub releases
  • Unauthenticated Version API - Version endpoint is publicly accessible for update checks

📦 Installation

New Installation

bash -c "$(wget -qLO - https://raw.githubusercontent.com/TheLastDruid/mediaIngest/main/install.sh)"

Update Existing Installation

bash <(wget -qO- https://raw.githubusercontent.com/TheLastDruid/mediaIngest/main/update.sh)

Run the update command from your Proxmox host, and it will automatically detect and update the container.

🔒 Security

All 12 security risks have been mitigated (100% complete):

  • Filename validation and sanitization
  • Command injection prevention
  • Malware scanning with ClamAV
  • DoS protection (file count/depth limits)
  • Rate limiting on API endpoints
  • Secure file permissions
  • Resource limits via systemd
  • And more...

See SECURITY_HARDENING.md for complete details.

v3.0.1 - Installer Fix and Version Tracking

06 Dec 15:54

Choose a tag to compare

Changes

  • Fixed critical installer heredoc syntax errors
  • Added automatic update notification system
  • Version tracking and comparison with GitHub releases

Installation

Run the installer:

bash -c "$(wget -qLO - https://raw.githubusercontent.com/TheLastDruid/mediaIngest/main/install.sh)"