[AT&T HTC One (M7)] ixrs:
This is long, but it's nice for noobs because it's detailed. It's honestly kind of fun, I promise. I'm assuming you have WINDOWS. This is based off of the guide by torxx!. It's modified because some of the info is outdated (you don't have to flash the boot.mg separately, for example). If you are NOT a noob you can just look at the "overview" for each step.

UNLOCKING YOUR DEVICE WILL WIPE YOUR DEVICE. THIS IS A SECURITY FEATURE. BACKUP FIRST.

Part 1- gaining unlock token

Overview: go to htcdev.com and unlock bootloader

Be sure you've turned off fast boot option in power menu; usb debugging should be on (settings -> developer options).

Go to http://www.htc.com/www/software/htc-sync-manager/[1] and install HTC SYNC. Alternatively, if you know what you're doing, you can install these drivers:

x86 http://www.mediafire.com/?qabo1tue2v1ky75 x64 http://www.mediafire.com/?8dl8s3l9mr6ggr9

Go on http://www.htcdev.com[4] and create yourself an account on HTCDEV.

Download these adb/fastboot files: http://d-h.st/RvD

Make a new folder anywhere. We'll use C:/fastboot as an example.

Extract the zip downloaded to the new folder

Go Here http://www.htcdev.com/bootloader/[6] and select "All Other Supported Models" and "then begin unlock bootloader" (check the boxes, click proceed, all that good stuff). YOU CAN IGNORE THE DIRECTIONS THAT THEY TELL YOU (and follow this guide instead).

Power off your phone. Power your phone on by holding power and volume down.

Highlight 'Fastboot' the volume buttons then press power to "select".

Plug your phone into your PC and open a Command Prompt. (windows XP - Click Start > Run > type CMD in box then press OK; Windows 7 - Click Start > type CMD in search box then press Enter) Change directory to your folder where we put fastboot files by typing cd c:\fastboot for example.*

*Alternatively, you can just hold down shift and right click in the folder and select "open command window here". Neat huh?

Type this into your command prompt window: fastboot oem get_identifier_token

Select & copy the text as per step 9 on the HTCDev website

Paste your identifier token into the box at the bottom and submit

You Will Very Shortly Receive an email from HTCDev with a link to the second part of the instructions and your "Unlock_code.bin" attached

Download the "Unlock_code.bin" from the email and save it to the same folder that we extracted fastboot files

Type this into your command prompt window: fastboot flash unlocktoken Unlock_code.bin

The Display Will change on your phone, press Vol+ to accept and power to confirm.

Part 2

Overview: flash your recovery. Boot into recovery. Turn phone off if it boots into OS. Boot into back into recovery. You're done!

Download a recovery:

TWRP (the one I use): http://xdaforums.com/showthread.php?t=2173870

CWM 2: http://xdaforums.com/showthread.php?t=2172979

CWM: http://xdaforums.com/showthread.php?t=2173863

Place the Recovery file to the folder where the fastboot.exe is.

Same thing as above- boot (volume down + power) into the bootloader and highlight 'Fastboot' the volume buttons then press power to "select".

Do the same thing as with the command prompt above. This time, however, you'll be typing:

fastboot flash recovery "name_of_the_recovery.img"

For example:

fastboot flash recovery openrecovery-twrp-2.5.0.0-m7.img

then type:

fastboot erase cache

From the menu, boot into recovery (use volume to move up and down, power to select). The phone might boot to the OS instead of recovery, don't worry!

Turn off phone then turn on (while holding volume down) to boot back into the bootloader.

TAMPERED shows up, boot into recovery and now your recovery should be working!

Part 3- obtaining root

Overview: flash a super tool

Download a super user tool for root:

SuperSU (I use this one): http://xdaforums.com/showthread.php?t=1538053

SuperUser: http://download.clockworkmod.com/superuser/superuser.zip

Alternatively, download this: http://xdaforums.com/showthread.php?t=2252959. This is a stock rooted rom for ATT. If you download and flash this instead of the super user tool, you're done. (This rom includes super user) Or you can download a custom rom such as this one: http://xdaforums.com/showthread.php?t=2183023

Turn on your phone again (and disable usb debugging) and connect to computer, copy the .zip super user tool to a location you remember ON the phone.

Flash it with the Recovery: Power off your device and then hold the VOL DOWN + Power to boot into the Bootloader Navigate with VOL and Power to Recovery Now flash the .zip:

- install zip from sdcard

- choose zip from sdcard

- select the downloaded SuperSU/SuperUser zip file and flash it

- Reboot now

You're not out of the woods yet! The stock kernel is system write protected, so you still can't modify it (changes won't "stick"). You'll have to flash a custom rom or a kernel if you want stock instead.

I recommend these kernels: http://xdaforums.com/showthread.php?t=2255900 or http://xdaforums.com/showthread.php?t=2233665&highlight=menu

Download it.

Installing custom rom/kernel ("flashing a rom")

Overview: Download Rom, boot into recovery and wipe and then flash.

According to Shenye, even though your device is s-on, you can still flash boot now. So just do this:

Turn on your phone again (and disable usb debugging) and connect to computer, copy the .zip kernel/cutom rom to a location you remember ON the phone.

Flash it with the Recovery: Power off your device and then hold the VOL DOWN + Power to boot into the Bootloader Navigate with VOL and Power to Recovery Now flash the .zip:

- install zip from sdcard

- choose zip from sdcard

- select the downloaded SuperSU/SuperUser zip file and flash it

- Reboot now