Первое, что пришло в голову — удалённый доступ. Т.е. вы хоть из дома, хоть с работы на самом деле используете один и тот же компьютер, просто в одном случае локально, а в другом — удалённо. Но тут упирается в скорость интернета.
Второй вариант, на самом деле самый простой — физически таскайте с собой комп (разумеется, ноутбук) :)
Пришли на работу, воткнули монитор/мышь/клаву — и вот у вас рабочее место, продолжайте ровно с того момента, на котором закончили дома.
Других вариантов, как синхронизировать всё, я как-то не вижу. Но я, если честно, не вижу и смысла в такой синхронизации, т.к. сомневаюсь, что вы настолько часто ставите/удаляете пакеты или меняете рабочее окружение. А для всего остального есть MasterCard VCS, Dropbox и прочее.