various: can bootstrap off existing ship, but generators are broken

This commit is contained in:
Ted Blackman 2021-07-16 19:01:55 +03:00
parent 99fc7ea5d5
commit a1b82d4b36
7 changed files with 44 additions and 65 deletions

View File

@ -16,7 +16,7 @@
[%10 drum=state-2:drum helm=state:helm kiln=state-0:kiln] [%10 drum=state-2:drum helm=state:helm kiln=state-0:kiln]
[%11 drum=state-2:drum helm=state:helm kiln=state-0:kiln] [%11 drum=state-2:drum helm=state:helm kiln=state-0:kiln]
[%12 drum=state-2:drum helm=state:helm kiln=state-0:kiln] [%12 drum=state-2:drum helm=state:helm kiln=state-0:kiln]
[%13 drum=state-2:drum helm=state:helm kiln=state-0:kiln] [%13 drum=state-2:drum helm=state:helm kiln=state-1:kiln]
[%14 drum=state-3:drum helm=state:helm kiln=state-1:kiln] [%14 drum=state-3:drum helm=state:helm kiln=state-1:kiln]
[%15 drum=state-3:drum helm=state:helm kiln=state-2:kiln] [%15 drum=state-3:drum helm=state:helm kiln=state-2:kiln]
[%16 drum=state-4:drum helm=state:helm kiln=state-3:kiln] [%16 drum=state-4:drum helm=state:helm kiln=state-3:kiln]

View File

@ -4,7 +4,6 @@
%dbug %dbug
%dojo %dojo
%eth-watcher %eth-watcher
%goad
%lens %lens
%ping %ping
%spider %spider

View File

@ -126,12 +126,12 @@
:: ::
++ on-init ++ on-init
=< abet =< abet
~> %slog.0^leaf/"kiln: init" ~> %slog.0^leaf/"kiln: boot"
%- emil %- emil
%+ turn (get-apps-want %base *rein) %+ turn (get-apps-want %base *rein)
|= =dude:gall |= =dude:gall
~> %slog.0^leaf/"kiln: %jolt {<dude>}" ~> %slog.0^leaf/"kiln: %jolt {<dude>}"
[%pass /kiln/jolt/[dude] %arvo %g %jolt %base dude] [%pass /kiln/vats/base/jolt/[dude] %arvo %g %jolt %base dude]
:: ::
++ on-load ++ on-load
|= [hood-version=@ud old=any-state] |= [hood-version=@ud old=any-state]
@ -203,8 +203,9 @@
++ make-wire |=(step=@tas /kiln/vats/[loc]/[step]) ++ make-wire |=(step=@tas /kiln/vats/[loc]/[step])
++ from-wire ++ from-wire
|= =wire |= =wire
?> ?=([%kiln %vats @ @ ~] wire) ~| wire
(abed i.t.t.wire) ?> ?=([@ @ *] wire)
(abed i.wire)
:: ::
++ emit |=(card:agent:gall vats(kiln (^emit +<))) ++ emit |=(card:agent:gall vats(kiln (^emit +<)))
++ emil |=((list card:agent:gall) vats(kiln (^emil +<))) ++ emil |=((list card:agent:gall) vats(kiln (^emil +<)))
@ -238,7 +239,7 @@
%- emil %- emil
%+ turn (get-apps-have lac) %+ turn (get-apps-have lac)
|= =dude:gall |= =dude:gall
[%pass /kiln/vats/uninstall %arvo %g %idle dude] [%pass /kiln/vats/[lac]/uninstall %arvo %g %idle dude]
:: ::
kiln(ark (~(del by ark) lac)) kiln(ark (~(del by ark) lac))
:: +install: set up desk sync to .lac to install all apps from [her rem] :: +install: set up desk sync to .lac to install all apps from [her rem]
@ -285,17 +286,18 @@
++ take ++ take
|= [=wire syn=sign-arvo] |= [=wire syn=sign-arvo]
^+ vats ^+ vats
?> ?=([@ @ *] wire)
?: ?=(%jolt i.t.wire)
(take-onto wire syn)
=. vats (from-wire wire) =. vats (from-wire wire)
?> ?=([%kiln %vats @ @ ~] wire) ?+ i.t.wire
?+ i.t.t.t.wire ~> %slog.0^leaf/"kiln: vats-bad-take {<wire>}"
~> %slog.0^leaf/"kiln: vats-bad-take {<t.t.t.wire>}"
vats vats
%find (take-find syn) %find (take-find syn)
%sync (take-sync syn) %sync (take-sync syn)
%download (take-download syn) %download (take-download syn)
%merge-main (take-merge-main syn) %merge-main (take-merge-main syn)
%merge-kids (take-merge-kids syn) %merge-kids (take-merge-kids syn)
%jolt (take-onto syn)
== ==
:: ::
++ take-find ++ take-find
@ -375,7 +377,7 @@
%- emil %- emil
%+ turn (get-apps-want loc rein.rak) %+ turn (get-apps-want loc rein.rak)
|= =dude:gall |= =dude:gall
[%pass /kiln/jolt/[dude] %arvo %g %jolt loc dude] [%pass /kiln/vats/[loc]/jolt/[dude] %arvo %g %jolt loc dude]
?. =(%base loc) ?. =(%base loc)
vats vats
=. kiln (bump (sy %base %kids ~)) =. kiln (bump (sy %base %kids ~))
@ -401,11 +403,16 @@
(emit %give %fact [/vats]~ %kiln-vats-diff !>(fact)) (emit %give %fact [/vats]~ %kiln-vats-diff !>(fact))
:: ::
++ take-onto ++ take-onto
|= syn=sign-arvo |= [=wire syn=sign-arvo]
^+ vats ^+ vats
=/ onto ?>(?=([%gall %onto *] syn) p.syn) =/ onto ?>(?=([%gall %onto *] syn) p.syn)
?- -.onto ?- -.onto
%& vats %& ?> ?=([@ @ ~] wire)
=+ ;;([=desk =dude:gall] [i i.t]:wire)
?. (is-fish dude desk)
vats
=/ =cage [%drum-link !>([our dude])]
(emit %pass /kiln/link %agent [our %hood] %poke cage)
%| (mean p.onto) :: TODO: kill arvo event on failure %| (mean p.onto) :: TODO: kill arvo event on failure
== ==
-- --
@ -423,13 +430,19 @@
^- (list dude:gall) ^- (list dude:gall)
%~ tap in %~ tap in
.^((set dude:gall) ge+/(scot %p our)/[desk]/(scot %da now)) .^((set dude:gall) ge+/(scot %p our)/[desk]/(scot %da now))
:: +is-fish: should dill link .dude?
::
++ is-fish
|= [=dude:gall =desk]
^- ?
=+ .^(=bill cx+/(scot %p our)/[desk]/(scot %da now)/desk/bill)
.?((find ~[dude] (read-fish bill)))
:: +get-apps-want: find which apps should be running on a desk :: +get-apps-want: find which apps should be running on a desk
:: ::
++ get-apps-want ++ get-apps-want
|= [=desk =rein] |= [=desk =rein]
^- (list dude:gall) ^- (list dude:gall)
=+ .^(=bill cx+/(scot %p our)/[desk]/(scot %da now)/desk/bill) =+ .^(=bill cx+/(scot %p our)/[desk]/(scot %da now)/desk/bill)
~> %slog.0^leaf/"kiln: bill {<bill>}"
=/ duz (read-apes bill) =/ duz (read-apes bill)
=. duz (skip duz ~(has in sub.rein)) =. duz (skip duz ~(has in sub.rein))
=. duz (weld duz ~(tap in add.rein)) =. duz (weld duz ~(tap in add.rein))

View File

@ -47,7 +47,7 @@
/ted :: :spider strands /ted :: :spider strands
/tests :: unit tests /tests :: unit tests
/web :: %eyre web content /web :: %eyre web content
/desk /desk :: desk manifest
== ==
|= bas=path |= bas=path
^- unix-event ^- unix-event
@ -60,8 +60,12 @@
:: hav: all user files :: hav: all user files
:: ::
=; hav ~& user-files+(lent hav) =; hav ~& user-files+(lent hav)
[/c/sync [%into %$ & hav]] =/ =yuki:clay
=| hav=mode:clay :- *(list tako:clay)
%- ~(gas by *(map path (each page:clay lobe:clay)))
(turn hav |=([=path =page:clay] [path &+page]))
[/c/sync [%park %base &+yuki *rang:clay]]
=| hav=(list [path page:clay])
|- ^+ hav |- ^+ hav
?~ sal ~ ?~ sal ~
=. hav $(sal t.sal) =. hav $(sal t.sal)
@ -74,55 +78,13 @@
:: pax: full path at `tyl` :: pax: full path at `tyl`
:: lon: directory at `tyl` :: lon: directory at `tyl`
:: ::
=/ pax (weld bas (flop tyl)) =/ lyt (flop tyl)
=/ pax (weld bas lyt)
=/ lon .^(arch %cy pax) =/ lon .^(arch %cy pax)
:: XX this serialization should use marks
::
=? hav ?=(^ fil.lon) =? hav ?=(^ fil.lon)
:: XX this whitelist needs to be reviewed :_(hav [lyt mark=;;(@tas (head tyl)) noun=.^(* %cx pax)])
::
?. ?= $? %css %hoon %html %js %json %md %png %txt
%udon %umd %kelvin %bill %woff2
==
-.tyl
::
:: install only files with whitelisted marks
::
~& ignoring+pax
hav
::
:: cot: file as plain-text octet-stream
::
=; cot [[(flop `path`tyl) `[/text/plain cot]] hav]
^- octs
?- tyl
[%json *]
=/ dat .^(json %cx pax)
(as-octt:mimes:html (en-json:html dat))
::
[?(%md %txt) *]
=/ dat .^(wain %cx pax)
(as-octs:mimes:html (of-wain:format dat))
::
[%kelvin *]
=/ weft ,[lal=@tas num=@ud] :: TODO remove after merge
=/ dat .^(weft %cx pax)
q:(weft-to-mime dat)
::
[%bill *]
=/ dat .^(bill %cx pax)
q:(bill-to-mime dat)
::
[%woff2 *]
=/ dat .^(octs %cx pax)
dat
::
*
=/ dat .^(@t %cx pax)
[(met 3 dat) dat]
==
=/ all ~(tap by dir.lon) =/ all ~(tap by dir.lon)
|- ^- mode:clay |- ^+ hav
?~ all hav ?~ all hav
$(all t.all, hav ^$(tyl [p.i.all tyl])) $(all t.all, hav ^$(tyl [p.i.all tyl]))
:: ::

View File

@ -2168,6 +2168,11 @@
:: %clay: external edit :: %clay: external edit
:: ::
$>(%into task:clay) $>(%into task:clay)
:: %clay: synchronous commit
::
:: TODO: make $yuki an option for %into?
::
$>(%park task:clay)
:: %eyre: learn ports of live http servers :: %eyre: learn ports of live http servers
:: ::
$>(%live task:eyre) $>(%live task:eyre)

View File

@ -1658,6 +1658,7 @@
|= [=ford-cache deletes=(set path) changes=(set path)] |= [=ford-cache deletes=(set path) changes=(set path)]
^+ ford-cache ^+ ford-cache
?: (~(has in changes) /sys/kelvin) ?: (~(has in changes) /sys/kelvin)
~> %slog.0^'clay: desk kelvin changed, clearing ford cache'
*^ford-cache *^ford-cache
=/ invalid=(set path) (~(uni in deletes) changes) =/ invalid=(set path) (~(uni in deletes) changes)
=. invalid =. invalid

View File

@ -54,7 +54,6 @@
$: %g :: $: %g ::
$> $? %jolt :: $> $? %jolt ::
%deal :: %deal ::
%goad ::
== :: == ::
task:gall :: task:gall ::
== :: == ::