How to migrate accounts and data from one Android phone to another?
If you are rooted, use Titanium Backup.  You won't be able to restore some things, since the Nexus One and HTC Magic have some very different system apps, but most should carry over.  After backing up with TB, copy /mnt/sdcard/titaniumbackup/ to your PC.  Then on the N1: install TB, copy the folder from your PC to the same location on the phone, then run TB and restore.

If you're not rooted, it's difficult to back up most things, especially all at once.  I'd rely on Google's backup for your list of apps and that sort of thing, as the other answer suggests.