[Nexus 6 Android Development] scryan:
It LOOKS like you got this figured out.

But the radio is definitely separate then bootloader.

I like to just download the whole factory image, and use fastboot. Some seem afraid but fastboot is remarkably easy, and will fix almost anything.

If you download the factory image and unzip it, you will find

bootloader-shamu-*more stuff here identifying the version*.img

radio-shamu-*more stuff here identifying the version*.img

and

image-shamu-*version*.zip

And a flashall for windows (.bat file) or linux (.sh file)

These last files are what google tells you to run, but they are plain text, so having a look at them

#!/bin/sh

# Copyright 2012 The Android Open Source Project

#

# Licensed under the Apache License, Version 2.0 (the "License");

# you may not use this file except in compliance with the License.

# You may obtain a copy of the License at

#

# http://www.apache.org/licenses/LICENSE-2.0

#

# Unless required by applicable law or agreed to in writing, software

# distributed under the License is distributed on an "AS IS" BASIS,

# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

# See the License for the specific language governing permissions and

# limitations under the License.

fastboot flash bootloader bootloader-shamu-moto-apq8084-71.10.img

fastboot reboot-bootloader

sleep 5

fastboot flash radio radio-shamu-d4.0-9625-02.101.img

fastboot reboot-bootloader

sleep 5

fastboot -w update image-shamu-lmy48i.zip

is all they say. Note that lines that start with # are "commented out", and are only there for people reading the file, the computer ignores anything on a line following the #

fastboot is basically a way for you to flash different partitions on your phone.

You basically say "fastboot flash <partition> <filename>"

Notice the script google gives flashes the bootloader first, then reboots the bootloader to allow changes to take effect.

then it flashes the radio, and reboot bootloader (I am not sure what they are doing here? someone want to expand.... please inform me.. seems unnecessary, but I guess they might as well, since your just waiting for automatic stuff to happen anyways, an extra step is not a big deal)

It then does an "upgrade" using the zip inside the zip.

Since we are smart, and can do things... Just unzip that zip too.

You now have

Bootloader - responsible for telling your phone how to turn on, and start up.

Radio - the drivers that tell your phone how to use its various modems/cell connections

and inside that other zip...

Cache - to my understanding this is like scratch paper for your phone... not sure why there is a zip as you likely do not want to provide any data here, rather just wipe it clean... Rather then flashing this, just wipe caches using TWRP

Recovery - this... is recovery. But you likely want to not use stock recovery, you want something like TWRP so I would not flash this one either.

Boot - this sets up android to actually boot. This is also where you kernel is stored. If unencrypted it is particularly important that you NOT flash stock then allow it to fully boot. I must say I am unclear on if flashing a kernel overwrites ALL of boot, or just part... Not sure if there is ever an advantage to flashing the stock boot.img then overwriting it with a kernel to update the parts that are not replaced with custom kernel, or if this is redundant. easy version probably just skip it... I tend to flash it, then immediately reboot to recovery and flash a kernel over it. Not sure if this is extra, but it definitely presents the chance to **** up and boot stock kernel, which may prompt you to encrypt/wipe your userdata if you are not encrypted... this is why I say easy/safe just don't flash? anyone want to expand?

userdata - this is mostly what shows up on your /sdcard/. Flashing this WILL wipe all your personal stuff, pictures ECT. ****ed up part is it seems to be only made for 32gig devices, and if you flash it on a 64 gig devices from what I have read you WILL show only 32 gig free. There are a few threads on fixing this, but best to just not mess with this one. I consider it the nuclear option... This is like doing a FULL wipe if going from 5.X to 6.0... I would make backups and try not touching it first... if it does have issues you can also use fastboot format userdata to just reformat it blank instead of flashing a blank partition. This will save you the heartache of reformating to 32gigs if you have a 64 gig device, while still clearing all data. This is also the parition that is encrypted if your phone is encrypted. THIS is the one you need to format to unencrypted, as a freshly formatted partition is not encrypted until your kernel forces you to encrypt it.

system - this is basically your OS. Reflashing this will update your operating system, while leaving your apps and personal data intact. If your stock, and taking updates, this is the main one your looking to flash. It will overwrite root, xposed, and other stuff installed at the system level.... but most normal apps will survive this. if your not stock, and wiping system via twrp its not particularly relevant, but flashing this is similar to the idea of dirty flashing the rom (though the rom contains boot too)

All of the above are img files. You can make your life easier and avoid typos by using tab to autocomplete, it should work in windows and linux... (that is to say, if you type radio-shamu-<press tab> it should completely the file name assuming there is only one option that matches in the folder you are in.

Again, we should all understand and be able to do this. Any other questions, ask... I may not know... but at least this much should be more or less understood, if not... let us fill in the voids.