Subject: bug#61864: closed (Re: [bug#61864] [PATCH] scripts: expose 'allow-collisions' for 'guix install')

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 01 Apr 2023 16:55:02 +0000

Your bug report

#61864: [PATCH] scripts: expose 'allow-collisions' for 'guix install'

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
61864: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61864
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#61864] [PATCH] scripts: expose 'allow-collisions' for 'guix install'
From: Leo Famulari <[email-masked]>
To: Andy Tai <[email-masked]>
Cc: [email-masked]
Date: Sat, 1 Apr 2023 12:54:44 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

On Thu, Mar 02, 2023 at 12:38:45PM -0800, Andy Tai wrote:
> I run into collisions in profile from time to time and I can resolve it via
> 
> guix package --allow-collosions -i (or -u)
> 
> so it is useful to make that available in the two "alias" commands as well

I see, that makes sense. Sorry I'm slow to reply, I thought about it for
a while.

Allowing profile collisions is a risky action that can cause subtle and
hard to diagnose bugs, and it often is done without understanding the
consequences. In my experience, collisions are often allowed by people
who don't understand the negative effects of collisions, or how profiles
are constructed.

When reported, the consequent problems can take up a lot of time for the
people trying to help.

Because of those reasons, I prefer to only expose this option in `guix
package`, which is a more advanced interface. My hope is that
segregating the option like this will discourage use of
'--allow-collisions' and prevent an increase in bug reports of the "user
error" type.

If you disagree, please feel free to reopen the bug and optionally CC
some other reviewers, or bring it up on IRC.

Subject: [PATCH] scripts: expose 'allow-collisions' for 'guix install'
From: Andy Tai <[email-masked]>
To: [email-masked]
Cc: Andy Tai <[email-masked]>
Date: Mon, 27 Feb 2023 22:28:46 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

* guix/scripts/install.scm: 'allow-collisions' option of 'package'
exposed for 'install' alias
---
 guix/scripts/install.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/guix/scripts/install.scm b/guix/scripts/install.scm
index 63e625f266..4ab64b5b54 100644
--- a/guix/scripts/install.scm
+++ b/guix/scripts/install.scm
@@ -34,6 +34,8 @@ (define (show-help)
   (display (G_ "
   -p, --profile=PROFILE  use PROFILE instead of the user's default profile"))
   ;; '--bootstrap' not shown here.
+  (display (G_ "
+      --allow-collisions do not treat collisions in the profile as an error"))
   (display (G_ "
   -v, --verbosity=LEVEL  use the given verbosity LEVEL"))
   (newline)
@@ -61,7 +63,8 @@ (define %options
          ;; Preserve some of the 'guix package' options.
          (append (filter (lambda (option)
                            (any (cut member <> (option-names option))
-                                '("profile" "dry-run" "verbosity" "bootstrap")))
+                                '("profile" "dry-run" "verbosity" "bootstrap"
+                                  "allow-collisions")))
                          %package-options)
 
                  %transformation-options

base-commit: cb0d8100b288b5b0d130820207db17764b7d2140
prerequisite-patch-id: 2ab0872d80951bb6f8df7bc8c4211f008a5cc6b8
prerequisite-patch-id: 1fa93a6e05a30a2a3a92d11ff1d7bdf7912e2724
prerequisite-patch-id: 8027f51c310a66f545421b43e1283ed516d41afc
-- 
2.39.1