From mboxrd@z Thu Jan 1 00:00:00 1970 From: smiley@zenzebra.mv.com To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> References: <864o5ogspr.fsf@cmarib.ramside> <2a1dfb1de5e846fe21335de074595377@ladd.quanstro.net> Date: Sun, 24 Apr 2011 14:11:12 +0000 In-Reply-To: <2a1dfb1de5e846fe21335de074595377@ladd.quanstro.net> (erik quanstrom's message of "Sun, 24 Apr 2011 06:08:01 -0400") Message-ID: <867hajg2nz.fsf_-_@cmarib.ramside> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: [9fans] contrib(1) WAS: Re: wiki... Topicbox-Message-UUID: d32f4dc6-ead6-11e9-9d60-3106f5b1d025 erik quanstrom writes: >> IIRC it's based on replica(1) >> which rather requires ideal circumstances for correct behaviour. > > partial installs are easy to recover from. i just used it friday to sort > out a file system that had a contrib package listed as installed, but it > hadn't been. It *would* be easy if contrib(1) properly indicated the install status of a package. As it is right now, contrib/install marks a package as installed and THEN goes about installing it. If anything fails, the install will still be marked as having been successful. A subsequent contrib/install for the same package will snubly claim that the package has already been installed and refuse to run. You have to supply the '-f' switch to make the install complete. However, doing this requires (1) knowing that the install broke, and (2) that all the packages dependencies have been met (because -f also overrides dependency checking). contrib(1) doesn't provide any way to check if a package is up to date, like replica/changes. Having a contrib(1) wrapper for replica/changes (say, 'contrib/changes') would be very handy. (And simple to write.) As for prematurely marking packages as successfully installed... This: cat > $cfg < $cfg.part <[1=2] rm $cfg.part exit 'oh, crap' } -- +---------------------------------------------------------------+ |E-Mail: smiley@zenzebra.mv.com PGP key ID: BC549F8B| |Fingerprint: 9329 DB4A 30F5 6EDA D2BA 3489 DAB7 555A BC54 9F8B| +---------------------------------------------------------------+