Liliana Marie Prikler schreef op vr 29-04-2022 om 06:13 [+0200]: > The extra wrapping isn't cancelled though?  You just append the > definition of $Y to the the already existing definitions, but you don't > move the wrapper to $RAWBIN_DIR, because the actual binary already > exists there. As I understood it, the suggestion was to cancel wrapping if there's already things in $RAWBIN_DIR. > In other words, you have after wrap: > - bin/foo ~> rawbin/foo > and after wrap-again > - bin/foo ~> rawbin/foo > where ~> is the wrapping relation. > > Currently, you have after one wrap > - bin/foo ~> bin/.foo-real > after two > - bin/foo ~> bin/.foo-real > - bin/.foo-real ~> bin/..foo-real-real > after three > - bin/foo ~> bin/.foo-real > - bin/.foo-real ~> bin/..foo-real-real > - bin/..foo-real-real ~> bin/...foo-real-real-real > and so on. > > Is this clearer now? I thought that (if already-wrapped? ;; PROG is already a wrapper: add the new "export VAR=VALUE" ;; lines just before the last line. [...]) in 'wrap-program' would avoid creating ..foo-real-real? Also, doesn't 'wrap-program' refuse to wrap .foo-real: (when (wrapped-program? prog) (error (string-append prog " is a wrapper. Refusing to wrap."))) so ..foo-real-real shouldn't be created in the first place? Do you have a concrete example in which ..foo-real-real happens? That said, the proposed new behaviour seems reasonable to me -- "pidof emacs" would then actually find Emacs. Greetings, Maxime.