@@ -325,7 +325,7 @@ This is a function that takes a command line as an argument."
325
325
:transient transient--do-stay)
326
326
(" c" " flake check" nix3-transient-flake-check
327
327
:transient transient--do-stay)
328
- (" l" " flake lock" nix3-transient-flake-lock
328
+ (" l" " flake lock/update " nix3-transient-flake-lock
329
329
:transient transient--do-stay)
330
330
(" !" " Other commands" nix3-transient-generic-command
331
331
:transient transient--do-stay)]
@@ -681,7 +681,7 @@ will be refreshed."
681
681
(transient-args 'nix3-transient-flake-check )))))
682
682
683
683
(transient-define-prefix nix3-transient-flake-lock ()
684
- [" nix flake lock"
684
+ [" nix flake lock/update "
685
685
(" --" nix3-transient-set-flags)
686
686
(" -u" nix3-transient-set-updated-inputs)]
687
687
nix3-transient-common-options
@@ -697,10 +697,19 @@ will be refreshed."
697
697
(nix3-transient-with-directory
698
698
(compile (nix3-transient--shell-command
699
699
nil
700
- (append (transient-args 'nix3-transient-flake-lock )
701
- (mapcar (lambda (input )
702
- (list " --update-input" input))
703
- nix3-transient-updated-inputs))))))
700
+ (cond
701
+ ((null nix3-transient-updated-inputs)
702
+ (transient-args 'nix3-transient-flake-lock ))
703
+ ((nix3-nix-2-19-p)
704
+ (setq nix3-transient-nix-command '(" flake" " update" ))
705
+ (append (transient-args 'nix3-transient-flake-lock )
706
+ nix3-transient-updated-inputs))
707
+ ((null nix3-transient-updated-inputs)
708
+ (setq nix3-transient-nix-command '(" flake" " lock" ))
709
+ (append (transient-args 'nix3-transient-flake-lock )
710
+ (mapcar (lambda (input )
711
+ (list " --update-input" input))
712
+ nix3-transient-updated-inputs))))))))
704
713
705
714
(defun nix3-transient-input ()
706
715
(interactive )
0 commit comments