Sorry for the non-descriptive title. It appears that having non-default outputs in the profile always causes a new profile generation even if the package derivations themselves don't change. Here is an example: $ guix package -u The following packages will be upgraded: bind:utils 9.10.4-P4 → 9.10.4-P4 /gnu/store/ypv8jppwn3dvhnkrmibw3p2h35cm30ij-bind-9.10.4-P4-utils git:send-email 2.11.0 → 2.11.0 /gnu/store/xnm8msrlh4ac9bxzvf9pgai8xnjjkvwj-git-2.11.0-send-email transmission:gui 2.92 → 2.92 /gnu/store/x2q22mfakkkf7nr68nfsxcvci4psz0vi-transmission-2.92-gui substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0% The following derivations will be built: /gnu/store/ws9msik5wm3qqzmi6j0ff5qhf8bzhr20-profile.drv /gnu/store/zlxic4wlk32zl2w1mrjx4n8qn0kabsg8-fonts-dir.drv /gnu/store/scap2hk64ly2g1jh00xzxg36w8bp7mih-xdg-mime-database.drv /gnu/store/n5vb0ysg3b3kx62dlszppnz9cp9xc9gr-info-dir.drv /gnu/store/laqlnv1dgf7dsj1kyznbqq7vj306p3xg-gtk-im-modules.drv /gnu/store/d5dr00lcv7f290x59mpbbwxfz6pl75hq-gtk-icon-themes.drv /gnu/store/60r69w2jfq3pwaijwh3qrpwvzfbhg70p-ca-certificate-bundle.drv 49 packages in profile Those packages already were at the latest versions and a new empty generation is created. Running the same command again: $ guix package -u The following packages will be upgraded: transmission:gui 2.92 → 2.92 /gnu/store/x2q22mfakkkf7nr68nfsxcvci4psz0vi-transmission-2.92-gui git:send-email 2.11.0 → 2.11.0 /gnu/store/xnm8msrlh4ac9bxzvf9pgai8xnjjkvwj-git-2.11.0-send-email bind:utils 9.10.4-P4 → 9.10.4-P4 /gnu/store/ypv8jppwn3dvhnkrmibw3p2h35cm30ij-bind-9.10.4-P4-utils substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0% The following derivations will be built: /gnu/store/l0cn4ywl69g05am2qv582l5hxpqa2y2g-profile.drv /gnu/store/qr24xwmp9prqy1yyyp3yha61a7pf2hhw-ca-certificate-bundle.drv /gnu/store/kg0xd3rjjclgiin1dk772svhinzad220-info-dir.drv /gnu/store/hh2477qjgg9kl77c6arnrlrlmkw7nyhb-gtk-im-modules.drv /gnu/store/fwjbhn15g7s56rcpk5afj8a6w4p15wv2-gtk-icon-themes.drv /gnu/store/6ibbk1jags9249lvjpcrlzljvjjzzkvq-fonts-dir.drv /gnu/store/61260hfwwx7wjz140sp280qzmjwxlcfw-xdg-mime-database.drv 49 packages in profile Output of "guix package --list-generations": [...lots of generations...] Generation 71 Dec 02 2016 17:37:47 Generation 72 Dec 02 2016 17:46:21 (current) Diffing the profile derivations only shows changes to ca-certificate-bundle.drv, gtk-icon-themes.drv, fonts-dir.drv, gtk-im-modules.drv, info-dir.drv, xdg-mime-database.drv, the profiles themselves, and the profile-builder. Although the order is different.