#!/bin/bash # Generic software installer for Raspbian. Online on a running RPi, or offline with QEMU. # Tested with 2017-03-02-raspbian-jessie-lite.img # # Copyleft 2017 by Ignacio Nunez Hernanz # GPL licensed (see end of file) * Use at your own risk! # # Usage: # # To install to an image using QEMU # # ./installer.sh # # To install directly to a running Raspberry Pi through SSH, omit the image parameter # # ./installer.sh # # In order to skip interactive configuration (you can edit the variables at the top of the scripts) # # NO_CONFIG=1 ./installer.sh () # # In order to use other than default SSH user and/or password, you can specify it in the same way # # PIUSER=nacho PIPASS=ownyourbits ./installer.sh () # # Notes: # Use a Raspbian image to be run on QEMU # Use any script that would run locally on the image # Use the IP of your running QEMU Raspbian image (DHCP should assign always the same) # # More at: https://ownyourbits.com/2017/03/05/generic-software-installer-for-raspbian/ # INSTALL_SCRIPT=$1 # First argument is the script to be run inside Raspbian IP=$2 # Second argument is the QEMU Raspbian IP address IMGFILE=$3 # Third argument is the image file to start from ( empty for online installation ) source etc/library.sh # initializes $IMGNAME config $INSTALL_SCRIPT || exit 1 if [[ "$IMGFILE" != "" ]]; then launch_install_qemu "$IMGFILE" $IP || exit 1 # initializes $IMGOUT pack_image "$IMGOUT" "$IMGNAME" else launch_installation_online $IP fi # License # # This script is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This script is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this script; if not, write to the # Free Software Foundation, Inc., 59 Temple Place, Suite 330, # Boston, MA 02111-1307 USA