I would use an assignment report instead of a task report. A task report won't break it down by user the way assignment reports do.
To get the actual hours of the assignments will require some text mode if you are familiar with that but everything else are native options.
aggregator.displayformat=minutesAsHoursString
aggregator.function=SUM
aggregator.namekey=Actual Hours
aggregator.valuefield=actualWorkCompleted
aggregator.valueformat=compound
displayname=Actual Hours
linkedname=direct
namekey=actualWorkCompleted
querysort=actualWorkCompleted
textmode=true
valuefield=actualWorkCompleted
valueformat=compound
viewalias=actualWorkCompleted