How do I automatically approve a user account in Drupal 7 based on a rule
I'm pretty sure you can do that with rules in D7:

Event: "After saving a new user account".

Condition: "data comparison" on "account:mail" contains "@email.com".

Actions: "Unblock a user" and "add user role"

I personally like this tutorial by node.se.