Commit Graph
17 Commits
Author SHA1 Message Date
thePR0M3TH3AN 74e8524897 Update AGENTS.md to allow direct Odysee CDN download mode
Changes:
- Removed prohibition on Odysee scraping for metadata
- Added explicit section documenting the two download modes (P2P and Direct)
- Explained that direct mode is acceptable when user explicitly requests it
- Added direct_downloader.py to expected architecture
- Documented rationale: better reliability, user choice, same metadata tracking

This allows the tool to work reliably when LBRY P2P network has no peers.
2026-03-15 22:04:10 -04:00
thePR0M3TH3AN dfea928f7e Add proper download waiting and peer connectivity documentation
- Added _wait_for_download method that polls for files to appear
- Waits up to 5 minutes (300s) checking every 5 seconds
- Checks both filesystem and daemon file_list API
- Added comprehensive troubleshooting section about incomplete downloads
- Documents why downloads fail (peer availability)
- Provides solutions: using Odysee web player, LBRY Desktop app, timing
- Explains P2P nature of LBRY network

Downloads now properly wait for content instead of giving up immediately.
2026-03-15 21:52:17 -04:00
thePR0M3TH3AN e6489949db Fix download path extraction and error handling
- Fixed _extract_file_info to handle None download_path values
- Added retry logic with time.sleep() to wait for daemon to complete download
- Added fallback to file_list API when initial result doesn't have path
- Better error handling when file path is not found
- Gracefully handles cases where daemon returns different response formats
- File search fallback: looks in version_dir if expected path not found
- Added time import for retry delays

This fixes the 'argument should be a str or an os.PathLike object' error
that occurred when the daemon returned None for download_path.
2026-03-15 21:44:42 -04:00
thePR0M3TH3AN 3d902208f9 Update documentation: clarify blockchain header sync requirement
Corrected previous misinformation:
- LBRY SDK DOES require blockchain header sync (not full blocks)
- First run: 5-10 minutes to download ~1.7M headers
- Added troubleshooting entry for BlockHeightEvent messages
- Users now understand what the sync process looks like
- Provided commands to stop the daemon

This addresses user concerns about the invasive blockchain sync
and ensures users know what to expect on first run.
2026-03-15 21:36:47 -04:00
thePR0M3TH3AN e218b76f97 Add clarification: LBRY SDK does NOT require blockchain sync
Added FAQ-style notes to both README.md and LINUX_SETUP.md explaining:
- LBRY SDK is a light client, not a full node
- Does NOT download the blockchain
- Only downloads requested content
- Minimal disk space usage

This addresses common concerns about blockchain size and sync time.
2026-03-15 21:33:34 -04:00
thePR0M3TH3AN 411c6f1794 Fix missing print_info function in remote-install.sh
- Added print_info() function for blue info messages
- Added BLUE color code
- Fixes: line 114: print_info: command not found
- Install script now fully functional
2026-03-15 21:29:15 -04:00
thePR0M3TH3AN f4d1a2ad04 Fix lbrynet download URL in remote-install.sh
Changes:
- Fixed download URL: lbrynet-linux.zip (not lbry-sdk-linux.zip)
- Added better error handling and progress display
- Shows download progress with wget progress bar
- Verifies file exists before extraction
- Provides clear error messages if download fails
- Tested: Download and extraction now work correctly

The install script should now successfully download and install lbrynet automatically.
2026-03-15 21:27:10 -04:00
thePR0M3TH3AN 1d5c1db5cd Add automatic lbrynet installation to remote-install.sh
The install script now:
- Checks if lbrynet (LBRY SDK) is installed
- If not, offers to download and install it automatically
- Downloads latest version from GitHub releases
- Extracts to ~/.local/bin
- Adds to PATH if needed
- Shows clear status messages throughout

This means users no longer need to manually install lbrynet.
The script handles Python dependencies AND lbrynet installation.
2026-03-15 21:22:06 -04:00
thePR0M3TH3AN a91e3b2ebc Add automatic daemon startup to launcher scripts
The lbry-downloader and lbry-test scripts now:
- Check if lbrynet daemon is running before executing
- Automatically start daemon if it's not running
- Wait up to 30 seconds for daemon to become available
- Show clear error messages if daemon fails to start
- Check if lbrynet is installed and provide install link if not

This means users can simply run:
  lbry-downloader

Without needing to manually start lbrynet first. The script handles it automatically.
2026-03-15 21:17:31 -04:00
thePR0M3TH3AN bcf1edca7b Improve install scripts: auto-add to PATH and clear command instructions
setup.py:
- Automatically adds lbry-downloader to PATH in .bashrc/.zshrc
- Shows clear 'QUICK START' section with numbered steps
- Explicitly states the command to run: 'lbry-downloader'
- Shows config and download locations
- Better formatting with emojis and sections

remote-install.sh:
- Instructs user to 'source ~/.bashrc' to reload shell
- Shows numbered next steps clearly
- Explains what to do if command not found
- Shows config file location

Users now get clear instructions:
1. Reload shell: source ~/.bashrc
2. Start daemon: lbrynet start
3. Test: lbry-downloader --dry-run
4. Download: lbry-downloader
2026-03-15 21:04:36 -04:00
thePR0M3TH3AN 3dcb4ddc2a Add comprehensive documentation on finding channel URLs from Odysee
All three main documentation files updated with detailed instructions:

README.md:
- New section 'Finding Channel URLs'
- Method 1: From Odysee website (easiest)
- Method 2: From video page
- Method 3: Using LBRY Desktop app
- All supported URL formats with examples

QUICKSTART.md:
- Added 'Finding Channel URLs' subsection
- Simple 4-step instructions
- Tip about copy-pasting Odysee URLs

LINUX_SETUP.md:
- Expanded 'Add Your Channels' section significantly
- Detailed 3 methods with step-by-step instructions
- Example popular channels
- All URL format examples
- Clear recommendation to use Odysee URLs

Users now have clear guidance on:
- Where to find channels (Odysee.com)
- How to copy channel URLs
- What URL formats work
- Examples of popular channels
2026-03-15 19:52:06 -04:00
thePR0M3TH3AN f5f3a2305d Add comprehensive launch documentation and non-interactive setup option
Documentation updates:
- README.md: Added 'Launching the Application' section with all methods
- QUICKSTART.md: Added launch instructions with PATH setup
- LINUX_SETUP.md: Added detailed launching section to Quick Reference

New file:
- setup-noninteractive.py: Non-interactive setup for automated installs

Features documented:
- Method 1: Using launcher script (recommended)
- Method 2: Adding to PATH for global access
- Method 3: Using virtual environment directly
- Method 4: Quick test script
- Prerequisites: Starting lbrynet daemon

Remote install updated to handle interactive mode better.
2026-03-15 19:09:55 -04:00
thePR0M3TH3AN 0e10af9438 Fix remote-install.sh for interactive mode
Changed from pipe-to-bash to download-and-run approach.
Updated documentation to reflect correct install command.
2026-03-15 18:58:07 -04:00
thePR0M3TH3AN 293da1f643 Add remote install script for one-line curl installation
Added remote-install.sh for easy one-line installation:
  curl -fsSL https://raw.githubusercontent.com/PR0M3TH3AN/LBRY-Downloader/main/remote-install.sh | bash

Updated documentation:
- README.md - Added one-line install command
- QUICKSTART.md - Added one-line install option
- LINUX_SETUP.md - Added one-line install section

Users can now install with a single curl command (requires Git and Python 3.8+)
2026-03-15 18:47:54 -04:00
thePR0M3TH3AN e707400ffd Complete LBRY Downloader implementation v1.0.0
Features:
- Incremental sync with version tracking (sd_hash)
- Per-channel download paths
- Download limit (default: 10 most recent per channel)
- Interactive setup script with user prompts
- Uninstall script for clean removal
- Comprehensive test suite (42 tests)
- Full documentation suite

Files:
- 9 Python core modules (main, models, utils, config, client, state, planner, downloader, init)
- 3 Setup scripts (setup.py, uninstall.py, install.sh)
- 5 Test files (42 tests, all passing)
- 9 Documentation files
- 4 Build/config files

Total: 31 files, ~4,500 lines
2026-03-15 18:10:56 -04:00
thePR0M3TH3AN db4f11ba6d update 2026-03-15 17:12:48 -04:00
thePR0M3TH3AN b97ea97c6e Initial commit 2026-03-15 17:03:18 -04:00