Bert is a very simple download manager written for the Raspberry Pi (or any other embedded Linux device).
Use case: I often need to download large files which I don't want to download via my computer since it bothers me having a process which can't interrupted by accident or on purpose. The Raspberry Pi is near the router and can download all the day without disturbing anybody or anything.
wget and some other linux command line tools (e.g.
df) as backend. NodeJS provides the server and application logic and invokes
wget through some wrapper object and parses it output.
- The web interface proivdes an easy way to add or monitor downloads
- Queue behaviour: only one download active download at a time
- Run user script from web interface (very useful to copy the downloaded files from the
downloads/folder to an USB thumb drive without
sshinto the Pi)
- Clear the downloads folder from web interface
- Shutdown server from web interface
- Detection of downloading the same file multiple times
You can run it by simply invoking
I have created a
cron entry in my Pi with
crontab -e by adding the line
@reboot /bin/bash --login /home/pi/script.sh > /home/pi/work.log which will excute a special script on reboot.
/home/pi/script.sh contains the following:
#!/bin/sh sleep 120 (/usr/local/bin/node server.js > out.log) &
I don't know why there is a
sleep 120 anymore. But you all know the rule: never change a running system!
The configuration is done in the first 32 lines of
server.js - each parameter is documented there.
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0). Click here for details. The license applies to the entire source code.
This program is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
I'm a huge fan of NCIS. Guess who Bert is ...