!: :: /=main=/bin/update/hoon :: => .(-< `who=@p`-<) |= [est=time eny=@uw] |= gem=$|([germ ~] ~) ^- bowl =+ wen=(scot %da (need (slaw %da +>-:/===))) :: heinous ?: =(~zod who) [~ ~] =+ bos==+(bos=(sein who) ?.(=(bos who) bos ~zod)) =+ ^= syn ^- (list ,@tas) [%main %arvo %try ~] :_ ~ ^- (list gift) :- [%la %leaf "updating..."] %+ turn syn |= des=@tas =+ der=((hard dome) .^(%cv /(scot %p bos)/[des]/[wen])) =+ owr=((hard dome) .^(%cv /(scot %p who)/[des]/[wen])) =+ sab=`saba`[bos des [0 let.der] (flop (turn hit.der |=(a=frog q.a)))] =+ lum=(~(auld ze est owr) ?~(gem %fine -.gem) sab) ?~ lum ^- gift [%la %leaf "{(trip des)} failed to merge, please rerun with a merge option"] ?~ u.lum `gift`[%la %leaf "{(trip des)} is up to date"] `gift`[%ok des u.u.lum]