Hi, On Wed, 01 Jun 2022 15:18:24 +0200 Maxime Devos wrote: > dannym@scratchpost.org schreef op wo 01-06-2022 om 15:00 [+0200]: > > +                             (let ((code (system* "unzip" "--" zip))) > > +                               (write code) > > +                               (newline) > > +                               (when (> (status:exit-val code) 1) ; 1 is just a warning > > What's the warning? Maybe the warning can be addressed or we could ask > unzip to not do warnings and then this could simplified to (invoke > "unzip" ...). In jmod files, there's a weird header in front and the warning is that it's skipping that header. > > > +                                 (raise (condition (&invoke-error > > +                                                    (program "unzip") > > +                                                    (arguments (list "--" zip)) > > +                                                    (exit-status (status:exit-val code)) > > +                                                    (term-signal (status:term-sig code)) > > +                                                    (stop-signal (status:stop-sig code)))))))) > > This block could use a block explaining what it's for. > Likewise for the other undocumented block of code. Sure. I'll add a comment. It's basically just like "invoke" with a change in the exit-val check (1 instead of 0).