Raspberry Pi Image Manager
Yeah I know NOOBS solves alot of those problems but I wanted something light weight and with a greater degree of expandabillity...
Problem 1: Progress Bars!
There is nothing that can't be improved by a progress bar.
After a little research I found some ways of getting a progress report out of dd
by calling kill -USR1 {PID}
but it's output isn't ideal and doesn't tell me anything about how long is left just how much data we've moved and you have to call it poll it...
Enter pv
aka Pipe Viewer. pv
is awesome, just awesome. It monitors data as it is piped and outputs a nice progress bar, an ETA, average speed, total data etc. It was used heavly in my Device Benchmarker Project. Great, so I can pipe the raw image through pv
and then into dd
and i've got a progress bar.
Problem 2: Image Locations/Downloads
There are images for the Pi all over the internet, the Raspberry Pi website does a good of collating a number of them in one place and until recently hosted them. If you go looking in thier downloads directory they still do! Though I suspect they are no longer maintained so wouldn't recommend using them...
A comprehensive up to date list is required...
RPi Image Manager Is Born
I built a little tool called RPi Image Manger that takes an image name and a device to write it to. That's all that's needed. It will then handle the rest for you.
Behind the scenes it downloads the latest version of the image, caches it, extracts it and finally writes the image to your device all the while letting you how long it's going to take or if there is a problem.
# Clone the repo git clone https://github.com/moebrowne/RPi-Image-Manager # Change directory cd RPi-Image-Manager # Set the image manager as executable chmod u+x manager.sh # Execute! ./manager.sh {IMAGE_NAME} {DEVICE_PATH}