I can't tell you exactly how the 'buntus are sorting this out, but .. .. .
Some suggestions for further research:
Easy:
- Don't close your laptop ?
- Login before you close it ?
More difficult, but still "easy":
- Read up on the differences between
hibernate and
suspend and
sleep.
- Make the services you require - "other stuff" to be started as your username at boot.
You can call scripts from
/etc/rc.local and have them run them as any non-root user by using the
su command. Read up on that.
Hope this helps.