46 Commits

Author SHA1 Message Date
301684886f Fix Transmission remote connection issues
- Prevent remote host from defaulting to localhost
- Preserve remote connection settings during config updates
- Handle empty values correctly to avoid overriding good config

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-07 09:16:28 +00:00
f28d49284e Fix module import issues on fresh installations
- Ensure server.js uses consistent .js extensions for module imports
- Create compatibility symlinks for different module naming styles
- Update file-creator-module.sh to handle module paths correctly
- Bump version to 2.0.8

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-07 09:13:02 +00:00
54871518fc Fix module import issue on fresh installs
- Added create_directories function to properly set up directory structure
- Added copy_module_files function to ensure JS modules are copied correctly
- Updated server.js to handle module imports more resiliently
- Fixed imports to work with both .js and no extension module references

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-07 08:59:01 +00:00
72d230706a Fix log command not found error in main-installer
- Move utils-module.sh sourcing before any log function calls
- Remove duplicate sourcing line

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-07 08:44:00 +00:00
0bce35d899 Fix installation directory handling and clarify defaults
- Fixed bootstrap-installer to prompt for installation directory with /opt/trans-install as default
- Updated main-installer to detect and use existing installation path from service file
- Modified config-module to use installation directory from environment or default to /opt/trans-install
- Updated README with clear information about the default installation path
- Bumped version to 2.0.7

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-07 08:38:55 +00:00
484a021936 Fix version check in server.js template with error handling
Added robust error handling for dynamic version retrieval in the server.js template:
- Added try/catch block around package.json require
- Added fallback version if package.json can't be loaded
- Ensures server will start even if there's an issue loading the version

This prevents connection errors related to the version check functionality.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 10:33:01 +00:00
16a7c0c0b6 Make version number dynamic in server.js template
Instead of hardcoding the version number in the server.js template,
this change reads the version dynamically from package.json.
This ensures that the dashboard always displays the correct version
number without requiring manual updates to the template file.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 10:28:36 +00:00
e7076859b7 Fix version display for fresh installs
The server.js template in file-creator-module.sh had a hardcoded version of 1.2.0,
causing fresh installations to display the wrong version number on the dashboard.
Updated to display 2.0.6.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 10:26:50 +00:00
4196914fbd Update version number to 2.0.6 across codebase
- Fix version inconsistencies in server.js API status endpoint
- Update User-Agent string in RSS feed manager
- Update version in config file templates
- Update dashboard display with version 2.0.6
- Add version 2.0.6 to version history with changelog

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 10:16:48 +00:00
36ac18c998 Update README with known issue about remote config
- Adjust changelog to be more accurate about remote configuration
- Add 'Known Issues' section to README.md
- Document issue with remote settings not being applied in update mode
- Provide workaround by suggesting manual configuration via web interface
2025-03-05 10:03:25 +00:00
626b24d35e Bump version to 2.0.6 and update changelog
- Update version in package.json to 2.0.6
- Add changelog entries for the latest fixes:
  - Remote configuration settings properly collected and applied
  - Remote host and credentials now correctly stored in config
  - Non-interactive mode support for scripted installations
  - Better handling of piped input for remote configuration
  - Added debug output to help troubleshoot configuration issues
2025-03-05 10:02:42 +00:00
a5afa1bb80 Improve environment variable handling in main installer
- Add logic to set input_remote based on TRANSMISSION_REMOTE from environment
- Add detailed debug logging for environment variables
- Ensure consistent behavior between direct mode and piped input
- Fix issue where environment variables weren't correctly propagating

This ensures that when remote mode is selected in install-script.sh, it's correctly respected in the main installer even when running in update mode.
2025-03-05 10:02:23 +00:00
40878c7d3a Fix non-interactive mode for remote Transmission configuration
- Save all piped input to a temporary file for sequential processing
- Read remote mode selection from first line of input
- Use remaining lines for remote Transmission configuration details
- Add proper handling of defaults for empty or missing values
- Improve debug output for configuration parameters

This allows users to pipe all configuration values to the installer in a single command, without requiring interactive prompt responses.
2025-03-05 10:01:27 +00:00
588ba1ea01 Collect Transmission remote details in install-script.sh
- Move Transmission remote details collection to install-script.sh
- Pass all remote details to main-installer.sh via environment file
- Avoid duplicate prompting for remote details
- Improve non-interactive mode with proper default values
- Add check in main-installer.sh to use provided remote details

This solves the problem where remote Transmission details were collected in install-script.sh but not properly used in the main installer when updating an existing installation.
2025-03-05 10:00:25 +00:00
a3924912f1 Improve handling of non-interactive and piped input
- Add detection for non-interactive terminal (piped input)
- Properly read input from pipe in install-script.sh
- Use pre-set environment variables when available
- Add better fallbacks for script usage
- Fix syntax error in main installer script
- More detailed logging of input handling process

This ensures the installer can be used both interactively and in scripts/automated setups.
2025-03-05 09:59:41 +00:00
4e4fd09811 Fix input handling for remote Transmission selection
- Add debug logging to track input values
- Replace regex matching with direct string comparison for better reliability
- Add explicit checks for 'y' and 'Y' input values
- This fixes an issue where remote mode wasn't correctly detected from user input
2025-03-05 09:58:50 +00:00
8af47ed35c Fix remote transmission configuration in update mode
This commit addresses an issue where the remote Transmission settings weren't properly applied when running in update mode:

1. Add prompt for remote Transmission details in update mode
2. Add code to modify the config.json file directly with the user's remote Transmission settings
3. Set default CONFIG_DIR and USER variables early in the script
4. Add detailed configuration dialog including:
   - Remote host and port
   - Username and password
   - RPC path
   - Directory mapping between remote and local paths

This ensures that users selecting remote Transmission mode will always be prompted for the connection details, even when updating an existing installation.
2025-03-05 09:57:30 +00:00
1c16243a2d Bump version to 2.0.5 and update changelog
- Update version number in package.json to 2.0.5
- Add changelog entry for version 2.0.5 with recent fixes:
  - Config file properly stored in /etc/transmission-rss-manager
  - Fixed remote Transmission detection in install-script.sh
  - Enhanced symlink handling between installation and config directories
  - Better environment variable passing between install scripts
2025-03-05 09:49:30 +00:00
306049abdd Fix config directory handling in install script
- Ensure CONFIG_DIR exists during installation
- Create proper symlink from INSTALL_DIR/config.json to CONFIG_DIR/config.json
- Use CONFIG_DIR instead of INSTALL_DIR for configuration files
- Add code to move existing config file to CONFIG_DIR if needed

This fixes the issue where the config.json file was not being created in /etc/transmission-rss-manager, even though the directory was created.
2025-03-05 09:47:29 +00:00
1d99962024 Remove debug code and fix duplicate lines 2025-03-05 09:40:10 +00:00
95a086dff7 Fix input recognition in remote selection and add debug information 2025-03-05 09:36:48 +00:00
455006992d Fix Transmission remote configuration handling
This commit addresses an issue where the Transmission remote setting wasn't properly preserved between install scripts.
Major changes:

- Fixed environment variable sharing between install-script.sh and main-installer.sh
- Added multiple methods to locate and load the .env.install file
- Removed duplicate log message in dependencies-module.sh
- Improved permission handling for the environment file
- Directly export TRANSMISSION_REMOTE variable before launching main-installer.sh

This ensures the user's choice of remote or local Transmission is correctly honored throughout the installation process.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 09:35:10 +00:00
b54086cfd0 Add fallback prompt in dependencies module
- Add direct prompt for remote Transmission as fallback in dependencies module
- Save choice to environment file for other scripts
- Add additional logging to show which path was taken
- Ensures remote transmission is always asked about, regardless of execution path

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:59:06 +00:00
aa3978903b Add robust environment sharing for install script
- Create .env.install file to store configuration choices
- Modify main-installer.sh to load environment variables
- Use direct sourcing to ensure environment variables are properly passed
- Add explicit logging of environment variable values
- Implement safer method of handling environment across script execution

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:58:50 +00:00
a1773d0bae Fix install-script.sh handling of remote Transmission
- Add direct remote Transmission prompt in install-script.sh
- Pass TRANSMISSION_REMOTE environment variable to main-installer.sh
- Add clarifying message when asking about installing Transmission daemon
- This fixes execution path when using install-script.sh instead of bootstrap-installer.sh

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:55:11 +00:00
1795373b42 Direct prompt for remote Transmission in main installer
- Move the remote Transmission prompt to main installer before config module is called
- Modify config module to use the already-set TRANSMISSION_REMOTE variable
- Remove existing logic in config module that was causing issues
- Clean up environment variables when invoking installer from bootstrap
- Remove emergency fallback since we now handle it in the right order

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:52:46 +00:00
d2babeba27 Fix configuration gathering and order of operations
- Add emergency fallback to ask about remote Transmission if config step was skipped
- Add CONFIG_GATHERED flag to track if config step was run
- Improve bootstrap installer with clear explanation of what to expect
- Explicitly check for gather_configuration success and output debug info
- Add additional variable initialization to ensure consistent behavior

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:46:06 +00:00
e05c8da811 Fix installation order and properly initialize TRANSMISSION_REMOTE
- Move SCRIPT_DIR initialization before its usage
- Ensure TRANSMISSION_REMOTE is initialized with default value
- Add logging to show whether remote or local Transmission is being used
- Initialize TRANSMISSION_REMOTE at the start of gather_configuration

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:42:55 +00:00
4c68a1ac07 Fix remote Transmission detection and config directory creation
- Fix bug where installer doesn't ask if Transmission is remote
- Fix missing configuration directory in /etc/transmission-rss-manager
- Create symlink between config locations to ensure app always finds config
- Ensure CONFIG_DIR is properly exported in the environment
- Update version to 2.0.4

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 08:39:21 +00:00
c495bce21f Move config file to /etc/transmission-rss-manager
- Changed config location to /etc/transmission-rss-manager/config.json
- Added fallback to maintain backward compatibility
- Updated installers to create and use the new location
- Added installPath property to configuration for updates
- Enhanced documentation with new config location
- Bumped version to 2.0.3

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:48:57 +00:00
3cfc5f3489 Update README.md with v2.0.2 changes and fix documentation 2025-03-05 00:36:29 +00:00
f5404c241d Fix remote transmission detection in installer
- Fix bug in dependencies-module.sh that would prompt to install transmission-daemon for remote installations
- Add checks for TRANSMISSION_REMOTE flag to correctly handle remote vs local installations
- Update version to 2.0.2

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:35:42 +00:00
bd55ef8613 Update version to 2.0.1 and make version reading dynamic 2025-03-05 00:31:42 +00:00
d08820c9c6 Enhance installer to detect existing installations and update seamlessly 2025-03-05 00:30:24 +00:00
d477d65ff5 Implement improved version handling and semantic versioning
- Add semver library for semantic version comparison
- Make package.json the single source of truth for version
- Add version check to only offer updates when remote version is higher
- Use APP_VERSION constant throughout server instead of hardcoded values
- Refactor update checking logic to use semver.gt() for proper comparison

This change improves robustness by ensuring updates are only
offered when a higher semantic version is available in the repository.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:20:50 +00:00
315afea3f4 Update version number to 2.0.0 throughout codebase
- Update version in server.js
- Update version in installer scripts
- Update version in utility modules
- Update version in file creator module
- Ensure consistent 2.0.0 version across codebase

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:18:58 +00:00
c8cf11b073 Update About modal with detailed version history
- Enhance the version history in the About modal to match README.md
- Add categorized changes (Major, New, Improved, Fixed) for each version
- Format version entries for better readability
- Ensure consistency between About modal and README.md

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:16:16 +00:00
d5f00d5abd Add detailed changelog to README.md
- Add v2.0.0 changelog with all new features and improvements
- Include historical entries for v1.2.0 and v1.0.0
- Format changelog with categories (Major, New, Improved, Fixed)
- Add release dates for each version

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:13:24 +00:00
7041d59267 Add update testing functionality
- Add test mode for simulating available updates
- Implement a toggle to enable/disable test mode
- Add test parameter to check-updates endpoint
- Clean up debugging comments
- Create subtle testing UI controls

This enables testing the update functionality without needing
to create a new higher version in the repository.

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:12:17 +00:00
7c7697c2cd Add About Modal with developer information
- Create a comprehensive About modal showcasing features and version history
- Add information about PowerData.dk and Michael Bay-Laursen as the developer
- Include version history section for tracking changes
- Style modal for optimal display on all device sizes

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:08:49 +00:00
57342e0450 Implement system status and update functionality
- Add system status card to dashboard with uptime and version display
- Implement version checking against git repository
- Add one-click update functionality
- Update footer and version references to 2.0.0
- Add server endpoints for status, update checking, and update application

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-05 00:01:09 +00:00
4a7d8336a5 Update to version 2.0.0 with new git-based installation and update system
- Bump version from 1.2.0 to 2.0.0
- Update repository URL
- Update README.md with new features and installation instructions
- Add documentation for web-based update system
- Update file structure documentation

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-04 23:58:56 +00:00
1b97e3ba68 massive improvement 2025-03-04 22:28:11 +00:00
root
d1483ce581 split install up into smaller files due to size of file 2025-02-26 14:15:12 +01:00
root
94eb96008e maybe working release 2025-02-26 13:30:39 +01:00
masterdraco
756c6fdd6f first commit 2025-02-26 08:48:34 +01:00