(command.CommandList children: [ (C {(sudo)} {(apt-get)} {(update)}) (C {(sudo)} {(apt-get)} {(-y)} {(-q)} {(upgrade)}) (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(-q)} {(libboost-all-dev)} {(libusb-1.0.0-dev)} {(libssl-dev)} {(cmake)} {(libprotobuf-dev)} {(protobuf-c-compiler)} {(protobuf-compiler)} {(git)} ) (C {(sudo)} {(apt-get)} {(-y)} {(-q)} {(install)} {(build-essential)} {(libfontconfig1-dev)} {(libdbus-1-dev)} {(libfreetype6-dev)} {(libicu-dev)} {(libsqlite3-dev)} {(libssl-dev)} {(libjpeg9-dev)} {(libglib2.0-dev)} {(bluez)} {(libbluetooth-dev)} {(libasound2-dev)} {(libgstreamer0.10-dev)} {(libgstreamer-plugins-base1.0-dev)} {(libxkbcommon-dev)} {(libwayland-dev)} {(libasound2-dev)} {(libgstreamer0.10-dev)} {(libgstreamer-plugins-base0.10-dev)} {(build-essential)} {(libfontconfig1-dev)} {(libdbus-1-dev)} {(libfreetype6-dev)} {(libicu-dev)} {(libinput-dev)} {(libxkbcommon-dev)} {(libsqlite3-dev)} {(libglib2.0-dev)} {(libraspberrypi-dev)} {(libxcb1-dev)} {(libfontconfig1-dev)} {(libfreetype6-dev)} {(libx11-dev)} {(libxext-dev)} {(libxfixes-dev)} {(libxi-dev)} {(libxrender-dev)} {(libxcb1-dev)} {(libx11-xcb-dev)} {(libxcb-glx0-dev)} {(libts-dev)} {(pulseaudio)} {(libpulse-dev)} {(librtaudio5a)} {(librtaudio-dev)} {(libraspberrypi-bin)} {(libraspberrypi-dev)} ) (C {(sudo)} {(apt-get)} {(-y)} {(-q)} {(install)} {(rpi-update)}) (C {(sudo)} {(apt-get)} {(remove)} {(--purge)} {(-y)} {(-q)} {(libqt5multimedia5)} {(libqt5multimedia5-plugins)} {(libqt5multimediawidgets5)} {(qtmultimedia5-dev)} {(libqt5bluetooth5)} {(libqt5bluetooth5-bin)} {(qtconnectivity5-dev)} ) (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(-q)} {(pulseaudio)} {(librtaudio-dev)} {(librtaudio5a)}) (C {(sudo)} {(apt-get)} {(-y)} {(-q)} {(install)} {(pv)} {(unzip)} {(kpartx)} {(zerofree)} {(qemu-user-static)} {(binfmt-support)} ) (C {(sudo)} {(apt-get)} {(clean)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:updatecheck) op: Equal rhs: { (command_sub left_token: <Left_Backtick '`'> command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(sudo)} {(Lit_VarLike 'JUST_CHECK=') (1)} {(rpi-update)}) (C {(grep)} {(commit)}) ] negated: F ) ] ) ) } ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_LBracket '[')} {($ VSub_DollarName '$updatecheck')} {(KW_Bang '!') (Lit_Equals '=')} {(DQ )} {(Lit_RBracket ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(sudo)} {(rpi-update)}) (C {(echo)} {(DQ ('############################################################################'))} ) (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('Firmware was updated - please reboot now!'))}) (C {(echo)} {(DQ ('You can run next step after reboot.'))}) (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('############################################################################'))} ) ] ) ] else_action: [ (C {(echo)} {(DQ ('############################################################################'))} ) (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('System ready - you can run next step now.'))}) (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('############################################################################'))} ) ] ) ] )