If you're fine with the laptop, is there any reason to use the desktop? Why not just keep it as a backup dev environment? That's what I do.
If you're an emacs user, you can put an emacs daemon somewhere accessible and connect emacs clients from both machines. This allows you to continue on your work when switching machines without even saving.
Vim doesn't have the same type of server functionality, but if you open up vim on a file that another vim process has opened, it'll ask you if you want to open it up in the same (maybe unsaved) state the original process has and so continue to work on it.
You can also work from tmux.
There's many ways to go about this depending on what you consider to be the "development state" you want to preserve (like, does it include the graphical windows and optionally their positions?), but the simplest for me still seems to be to avoid the whole issue and work almost exclusively on the laptop.