shell: Disable caching when '-p' is passed.
Fixes <https://issues.guix.gnu.org/53658>. Reported by Guillaume Le Vaillant <glv@posteo.net>. Previously we would wrongfully cache things, by adding a new (profile . _) pair to the option alist, when the user runs: guix shell -p /path/to/profile -q * guix/scripts/shell.scm (profile-cached-gc-root): Add ('profile . _) case.
This commit is contained in:
		
							parent
							
								
									209a3274f8
								
							
						
					
					
						commit
						ee6275c974
					
				
					 1 changed files with 4 additions and 0 deletions
				
			
		|  | @ -372,6 +372,10 @@ return #f and #f." | ||||||
|        ;; least depending on external state (with-source, with-commit, etc.), |        ;; least depending on external state (with-source, with-commit, etc.), | ||||||
|        ;; so do not cache anything when they're used. |        ;; so do not cache anything when they're used. | ||||||
|        (values #f #f)) |        (values #f #f)) | ||||||
|  |       ((('profile . _) . _) | ||||||
|  |        ;; If the user already specified a profile, there's nothing more to | ||||||
|  |        ;; cache. | ||||||
|  |        (values #f #f)) | ||||||
|       ((('system . system) . rest) |       ((('system . system) . rest) | ||||||
|        (loop rest system file specs)) |        (loop rest system file specs)) | ||||||
|       ((_ . rest) (loop rest system file specs))))) |       ((_ . rest) (loop rest system file specs))))) | ||||||
|  |  | ||||||
		Reference in a new issue