From f3e15396f3a7d40feedc4d15080a4334f45d2ef9 Mon Sep 17 00:00:00 2001 From: Ted Blackman Date: Thu, 2 Sep 2021 00:37:56 +0300 Subject: [PATCH] %garden-dev desk; also cleaned up %base-dev --- pkg/arvo/lib/docket.hoon | 1 - pkg/arvo/mar/docket.hoon | 1 - pkg/arvo/sur/docket.hoon | 1 - pkg/arvo/sur/hood.hoon | 219 +----------------- pkg/base-dev/sur/hood.hoon | 218 +++++++++++++++++ pkg/{base-dev => garden-dev}/lib/docket.hoon | 0 pkg/{base-dev => garden-dev}/mar/docket.hoon | 0 pkg/{base-dev => garden-dev}/sur/docket.hoon | 0 pkg/garden/lib/agentio.hoon | 1 + pkg/garden/lib/azimuth.hoon | 1 + pkg/garden/lib/azimuthio.hoon | 1 + pkg/garden/lib/bip/b158.hoon | 1 + pkg/garden/lib/bip/b173.hoon | 1 + pkg/garden/lib/bip/b174.hoon | 1 + pkg/garden/lib/bip32.hoon | 1 + pkg/garden/lib/bip39.hoon | 1 + pkg/garden/lib/bip39/english.hoon | 1 + pkg/garden/lib/dbug.hoon | 1 + pkg/garden/lib/default-agent.hoon | 1 + pkg/garden/lib/docket.hoon | 1 + pkg/garden/lib/ethio.hoon | 1 + pkg/garden/lib/language-server/build.hoon | 1 + pkg/garden/lib/language-server/complete.hoon | 1 + .../lib/language-server/easy-print.hoon | 1 + pkg/garden/lib/language-server/json.hoon | 1 + pkg/garden/lib/language-server/parser.hoon | 1 + .../lib/language-server/rune-snippet.hoon | 1 + pkg/garden/lib/server.hoon | 1 + pkg/garden/lib/shoe.hoon | 1 + pkg/garden/lib/skeleton.hoon | 1 + pkg/garden/lib/sole.hoon | 1 + pkg/garden/lib/strand.hoon | 1 + pkg/garden/lib/strandio.hoon | 1 + pkg/garden/lib/treaty.hoon | 1 + pkg/garden/lib/verb.hoon | 1 + pkg/garden/mar/belt.hoon | 1 + pkg/garden/mar/bill.hoon | 1 + pkg/garden/mar/blit.hoon | 1 + pkg/garden/mar/docket.hoon | 26 +-- pkg/garden/mar/hoon.hoon | 1 + pkg/garden/mar/htm.hoon | 1 + pkg/garden/mar/html.hoon | 1 + pkg/garden/mar/httr.hoon | 1 + pkg/garden/mar/hymn.hoon | 1 + pkg/garden/mar/js.hoon | 1 + pkg/garden/mar/json.hoon | 1 + pkg/garden/mar/json/rpc/response.hoon | 1 + pkg/garden/mar/kelvin.hoon | 1 + .../mar/language-server/rpc/notification.hoon | 1 + .../mar/language-server/rpc/request.hoon | 1 + .../mar/language-server/rpc/response.hoon | 1 + pkg/garden/mar/mime.hoon | 1 + pkg/garden/mar/noun.hoon | 1 + pkg/garden/mar/path.hoon | 1 + pkg/garden/mar/png.hoon | 1 + pkg/garden/mar/purl.hoon | 1 + pkg/garden/mar/sole/action.hoon | 1 + pkg/garden/mar/sole/effect.hoon | 1 + pkg/garden/mar/svg.hoon | 1 + pkg/garden/mar/tang.hoon | 1 + pkg/garden/mar/tape.hoon | 1 + pkg/garden/mar/txt-diff.hoon | 1 + pkg/garden/mar/txt.hoon | 1 + pkg/garden/mar/udon.hoon | 1 + pkg/garden/mar/umd.hoon | 1 + pkg/garden/mar/urb.hoon | 1 + pkg/garden/mar/urbit.hoon | 1 + pkg/garden/mar/woff2.hoon | 1 + pkg/garden/mar/xml.hoon | 1 + pkg/garden/sur/bill.hoon | 1 + pkg/garden/sur/docket.hoon | 1 + pkg/garden/sur/hood.hoon | 207 +---------------- pkg/garden/sur/sole.hoon | 1 + pkg/garden/sur/spider.hoon | 1 + pkg/garden/sur/verb.hoon | 1 + 75 files changed, 286 insertions(+), 452 deletions(-) delete mode 120000 pkg/arvo/lib/docket.hoon delete mode 120000 pkg/arvo/mar/docket.hoon delete mode 120000 pkg/arvo/sur/docket.hoon mode change 100644 => 120000 pkg/arvo/sur/hood.hoon create mode 100644 pkg/base-dev/sur/hood.hoon rename pkg/{base-dev => garden-dev}/lib/docket.hoon (100%) rename pkg/{base-dev => garden-dev}/mar/docket.hoon (100%) rename pkg/{base-dev => garden-dev}/sur/docket.hoon (100%) create mode 120000 pkg/garden/lib/agentio.hoon create mode 120000 pkg/garden/lib/azimuth.hoon create mode 120000 pkg/garden/lib/azimuthio.hoon create mode 120000 pkg/garden/lib/bip/b158.hoon create mode 120000 pkg/garden/lib/bip/b173.hoon create mode 120000 pkg/garden/lib/bip/b174.hoon create mode 120000 pkg/garden/lib/bip32.hoon create mode 120000 pkg/garden/lib/bip39.hoon create mode 120000 pkg/garden/lib/bip39/english.hoon create mode 120000 pkg/garden/lib/dbug.hoon create mode 120000 pkg/garden/lib/default-agent.hoon create mode 120000 pkg/garden/lib/docket.hoon create mode 120000 pkg/garden/lib/ethio.hoon create mode 120000 pkg/garden/lib/language-server/build.hoon create mode 120000 pkg/garden/lib/language-server/complete.hoon create mode 120000 pkg/garden/lib/language-server/easy-print.hoon create mode 120000 pkg/garden/lib/language-server/json.hoon create mode 120000 pkg/garden/lib/language-server/parser.hoon create mode 120000 pkg/garden/lib/language-server/rune-snippet.hoon create mode 120000 pkg/garden/lib/server.hoon create mode 120000 pkg/garden/lib/shoe.hoon create mode 120000 pkg/garden/lib/skeleton.hoon create mode 120000 pkg/garden/lib/sole.hoon create mode 120000 pkg/garden/lib/strand.hoon create mode 120000 pkg/garden/lib/strandio.hoon create mode 120000 pkg/garden/lib/treaty.hoon create mode 120000 pkg/garden/lib/verb.hoon create mode 120000 pkg/garden/mar/belt.hoon create mode 120000 pkg/garden/mar/bill.hoon create mode 120000 pkg/garden/mar/blit.hoon mode change 100644 => 120000 pkg/garden/mar/docket.hoon create mode 120000 pkg/garden/mar/hoon.hoon create mode 120000 pkg/garden/mar/htm.hoon create mode 120000 pkg/garden/mar/html.hoon create mode 120000 pkg/garden/mar/httr.hoon create mode 120000 pkg/garden/mar/hymn.hoon create mode 120000 pkg/garden/mar/js.hoon create mode 120000 pkg/garden/mar/json.hoon create mode 120000 pkg/garden/mar/json/rpc/response.hoon create mode 120000 pkg/garden/mar/kelvin.hoon create mode 120000 pkg/garden/mar/language-server/rpc/notification.hoon create mode 120000 pkg/garden/mar/language-server/rpc/request.hoon create mode 120000 pkg/garden/mar/language-server/rpc/response.hoon create mode 120000 pkg/garden/mar/mime.hoon create mode 120000 pkg/garden/mar/noun.hoon create mode 120000 pkg/garden/mar/path.hoon create mode 120000 pkg/garden/mar/png.hoon create mode 120000 pkg/garden/mar/purl.hoon create mode 120000 pkg/garden/mar/sole/action.hoon create mode 120000 pkg/garden/mar/sole/effect.hoon create mode 120000 pkg/garden/mar/svg.hoon create mode 120000 pkg/garden/mar/tang.hoon create mode 120000 pkg/garden/mar/tape.hoon create mode 120000 pkg/garden/mar/txt-diff.hoon create mode 120000 pkg/garden/mar/txt.hoon create mode 120000 pkg/garden/mar/udon.hoon create mode 120000 pkg/garden/mar/umd.hoon create mode 120000 pkg/garden/mar/urb.hoon create mode 120000 pkg/garden/mar/urbit.hoon create mode 120000 pkg/garden/mar/woff2.hoon create mode 120000 pkg/garden/mar/xml.hoon create mode 120000 pkg/garden/sur/bill.hoon create mode 120000 pkg/garden/sur/docket.hoon mode change 100644 => 120000 pkg/garden/sur/hood.hoon create mode 120000 pkg/garden/sur/sole.hoon create mode 120000 pkg/garden/sur/spider.hoon create mode 120000 pkg/garden/sur/verb.hoon diff --git a/pkg/arvo/lib/docket.hoon b/pkg/arvo/lib/docket.hoon deleted file mode 120000 index a40ad35b3..000000000 --- a/pkg/arvo/lib/docket.hoon +++ /dev/null @@ -1 +0,0 @@ -../../base-dev/lib/docket.hoon \ No newline at end of file diff --git a/pkg/arvo/mar/docket.hoon b/pkg/arvo/mar/docket.hoon deleted file mode 120000 index 3425d2206..000000000 --- a/pkg/arvo/mar/docket.hoon +++ /dev/null @@ -1 +0,0 @@ -../../base-dev/mar/docket.hoon \ No newline at end of file diff --git a/pkg/arvo/sur/docket.hoon b/pkg/arvo/sur/docket.hoon deleted file mode 120000 index a34ff1108..000000000 --- a/pkg/arvo/sur/docket.hoon +++ /dev/null @@ -1 +0,0 @@ -../../base-dev/sur/docket.hoon \ No newline at end of file diff --git a/pkg/arvo/sur/hood.hoon b/pkg/arvo/sur/hood.hoon deleted file mode 100644 index 0384fa04c..000000000 --- a/pkg/arvo/sur/hood.hoon +++ /dev/null @@ -1,218 +0,0 @@ -/- *bill -=, clay -=* dude dude:gall -|% -:: $diff: subscription update -:: -+$ diff - $% [%block =desk =arak =weft blockers=(set desk)] - [%reset =desk =arak] - [%merge =desk =arak] - [%merge-sunk =desk =arak =tang] - [%merge-fail =desk =arak =tang] - [%suspend =desk =arak] - [%revive =desk =arak] - == -:: $arak: foreign vat tracker -:: -:: .next is a list of pending commits with future kelvins -:: -+$ arak - $: =ship - =desk - =aeon - next=(list [=aeon =weft]) - =rein - == -:: $rein: diff from desk manifest -:: -:: .liv: suspended? -:: .add: agents not in manifest that should be running -:: .sub: agents in manifest that should not be running -:: -+$ rein - $: liv=_& - add=(set dude) - sub=(set dude) - == -:: -+$ vat [=desk hash=@uv =cass =arak] -:: +report-vats: report on all desk installations -:: -++ report-vats - |= [our=@p now=@da] - ^- tang - =+ .^ raz=(list vat) - %gx /(scot %p our)/hood/(scot %da now)/kiln/vats/noun - == - (turn raz |=(v=vat (report-vat our now v))) -:: +report-vat: report on a single desk installation -:: -++ report-vat - |= [our=ship now=@da vat] - ^- tank - =+ .^(=weft %cx /(scot %p our)/[desk]/(scot %da now)/sys/kelvin) - :+ %rose ["" "{}" "::"] - ^- tang - =- ?: =(~ next.arak) - - %+ snoc - - leaf/"pending: {<(turn next.arak |=([@ lal=@tas num=@] [lal num]))>}" - ^- tang - =/ meb (mergebase-hashes our desk now arak) - =/ sat ?:(liv.rein.arak "running" "suspended") - :~ leaf/"/sys/kelvin: {<[lal num]:weft>}" - leaf/"base hash: {?.(=(1 (lent meb)) <(head meb)>)}" - leaf/"%cz hash: {}" - leaf/"source ship: {}" - leaf/"source desk: {}" - leaf/"source aeon: {}" - leaf/"status: {sat}" - leaf/"force on: {?:(=(~ add.rein.arak) "~" )}" - leaf/"force off: {?:(=(~ sub.rein.arak) "~" )}" - == -:: +read-kelvin-foreign: read /sys/kelvin from a foreign desk -:: -++ read-kelvin-foreign - |= [=ship =desk =aeon] - ^- weft - =/ her (scot %p ship) - =/ syd (scot %tas desk) - =/ yon (scot %ud aeon) - :: - =/ dom .^(dome cv/~[her syd yon]) - =/ tak (scot %uv (~(got by hit.dom) let.dom)) - =/ yak .^(yaki cs/~[her syd yon %yaki tak]) - =/ lob (scot %uv (~(got by q.yak) /sys/kelvin)) - =/ bob .^(blob cs/~[her syd yon %blob lob]) - :: - ;; weft - ?- -.bob - %direct q.q.bob - %delta q.r.bob - == -:: +read-kelvin-local: read /sys/kelvin from a local desk -:: -++ read-kelvin-local - |= [our=ship =desk now=@da] - ^- (unit weft) - =/ pax (en-beam [our desk da+now] /sys/kelvin) - ?~ =<(fil .^(arch cy/pax)) - ~ - [~ .^(weft cx/pax)] -:: +read-bill: read contents of /desk/bill manifest -:: -++ read-bill - |= [our=ship =desk now=@da] - =/ pax (en-beam [our desk da+now] /desk/bill) - ?~ =<(fil .^(arch cy/pax)) - *bill - .^(bill cx/pax) -:: +is-fish: should dill link .dude? -:: -++ is-fish |=([=dude =bill] .?((find ~[dude] (read-fish bill)))) -:: +get-apps-diff: which agents should be started and stopped -:: -++ get-apps-diff - |= [our=ship =desk now=@da =rein] - ^- [liv=(list dude) ded=(list dude)] - =/ =bill (read-bill our desk now) - =/ wan (sy (get-apps-want bill rein)) - =/ hav (sy (get-apps-live our desk now)) - =/ liv ~(tap in (~(dif in wan) hav)) - =/ ded ~(tap in (~(dif in hav) wan)) - [liv ded] -:: -++ get-apps-live - |= [our=ship =desk now=@da] - ^- (list dude) - %+ murn (get-apps-have our desk now) - |=([=dude live=?] ?.(live ~ `dude)) -:: +get-apps-have: find which apps Gall is running on a desk -:: -++ get-apps-have - |= [our=ship =desk now=@da] - ^- (list [=dude live=?]) - %~ tap in - .^((set [=dude live=?]) ge+/(scot %p our)/[desk]/(scot %da now)) -:: +get-apps-want: find which apps should be running on a desk -:: -++ get-apps-want - |= [=bill =rein] - ^- (list dude) - =/ duz (read-apes bill) - =. duz (skip duz ~(has in sub.rein)) - =. duz (weld duz (skip ~(tap in add.rein) ~(has in (sy duz)))) - duz -:: -++ mergebase-hashes - |= [our=@p =desk now=@da =arak] - =/ her (scot %p ship.arak) - =/ ego (scot %p our) - =/ wen (scot %da now) - %+ turn .^((list tako) %cs ~[ego desk wen %base her desk.arak]) - |=(=tako .^(@uv %cs ~[ego desk wen %hash (scot %uv tako)])) -:: -++ enjs - =, enjs:format - |% - ++ vats - |= v=(list ^vat) - ^- json - %- pairs - %+ turn v - |= va=^vat - [desk.va (vat va)] - :: - ++ tim - |= t=@ - ^- json - (numb (fall (mole |.((unm:chrono:userlib t))) 0)) - :: - ++ cass - |= c=^cass - %- pairs - :~ ud+(numb ud.c) - da+(tim da.c) - == - :: - ++ vat - |= v=^vat - %- pairs - :~ desk+s+desk.v - hash+s+(scot %uv hash.v) - cass+(cass cass.v) - arak+(arak arak.v) - == - :: - ++ weft - |= w=^weft - %- pairs - :~ name+s+lal.w - kelvin+(numb num.w) - == - :: - ++ woof - |= w=[=aeon =^weft] - %- pairs - :~ aeon+(numb aeon.w) - weft+(weft weft.w) - == - :: - ++ rein - |= r=^rein - %- pairs - :~ add+a+(turn ~(tap in add.r) (lead %s)) - sub+a+(turn ~(tap in sub.r) (lead %s)) - == - :: - ++ arak - |= a=^arak - %- pairs - :~ ship+s+(scot %p ship.a) - desk+s+desk.a - aeon+(numb aeon.a) - next+a+(turn next.a woof) - rein+(rein rein.a) - == - -- --- diff --git a/pkg/arvo/sur/hood.hoon b/pkg/arvo/sur/hood.hoon new file mode 120000 index 000000000..b212f501e --- /dev/null +++ b/pkg/arvo/sur/hood.hoon @@ -0,0 +1 @@ +../../base-dev/sur/hood.hoon \ No newline at end of file diff --git a/pkg/base-dev/sur/hood.hoon b/pkg/base-dev/sur/hood.hoon new file mode 100644 index 000000000..0384fa04c --- /dev/null +++ b/pkg/base-dev/sur/hood.hoon @@ -0,0 +1,218 @@ +/- *bill +=, clay +=* dude dude:gall +|% +:: $diff: subscription update +:: ++$ diff + $% [%block =desk =arak =weft blockers=(set desk)] + [%reset =desk =arak] + [%merge =desk =arak] + [%merge-sunk =desk =arak =tang] + [%merge-fail =desk =arak =tang] + [%suspend =desk =arak] + [%revive =desk =arak] + == +:: $arak: foreign vat tracker +:: +:: .next is a list of pending commits with future kelvins +:: ++$ arak + $: =ship + =desk + =aeon + next=(list [=aeon =weft]) + =rein + == +:: $rein: diff from desk manifest +:: +:: .liv: suspended? +:: .add: agents not in manifest that should be running +:: .sub: agents in manifest that should not be running +:: ++$ rein + $: liv=_& + add=(set dude) + sub=(set dude) + == +:: ++$ vat [=desk hash=@uv =cass =arak] +:: +report-vats: report on all desk installations +:: +++ report-vats + |= [our=@p now=@da] + ^- tang + =+ .^ raz=(list vat) + %gx /(scot %p our)/hood/(scot %da now)/kiln/vats/noun + == + (turn raz |=(v=vat (report-vat our now v))) +:: +report-vat: report on a single desk installation +:: +++ report-vat + |= [our=ship now=@da vat] + ^- tank + =+ .^(=weft %cx /(scot %p our)/[desk]/(scot %da now)/sys/kelvin) + :+ %rose ["" "{}" "::"] + ^- tang + =- ?: =(~ next.arak) - + %+ snoc - + leaf/"pending: {<(turn next.arak |=([@ lal=@tas num=@] [lal num]))>}" + ^- tang + =/ meb (mergebase-hashes our desk now arak) + =/ sat ?:(liv.rein.arak "running" "suspended") + :~ leaf/"/sys/kelvin: {<[lal num]:weft>}" + leaf/"base hash: {?.(=(1 (lent meb)) <(head meb)>)}" + leaf/"%cz hash: {}" + leaf/"source ship: {}" + leaf/"source desk: {}" + leaf/"source aeon: {}" + leaf/"status: {sat}" + leaf/"force on: {?:(=(~ add.rein.arak) "~" )}" + leaf/"force off: {?:(=(~ sub.rein.arak) "~" )}" + == +:: +read-kelvin-foreign: read /sys/kelvin from a foreign desk +:: +++ read-kelvin-foreign + |= [=ship =desk =aeon] + ^- weft + =/ her (scot %p ship) + =/ syd (scot %tas desk) + =/ yon (scot %ud aeon) + :: + =/ dom .^(dome cv/~[her syd yon]) + =/ tak (scot %uv (~(got by hit.dom) let.dom)) + =/ yak .^(yaki cs/~[her syd yon %yaki tak]) + =/ lob (scot %uv (~(got by q.yak) /sys/kelvin)) + =/ bob .^(blob cs/~[her syd yon %blob lob]) + :: + ;; weft + ?- -.bob + %direct q.q.bob + %delta q.r.bob + == +:: +read-kelvin-local: read /sys/kelvin from a local desk +:: +++ read-kelvin-local + |= [our=ship =desk now=@da] + ^- (unit weft) + =/ pax (en-beam [our desk da+now] /sys/kelvin) + ?~ =<(fil .^(arch cy/pax)) + ~ + [~ .^(weft cx/pax)] +:: +read-bill: read contents of /desk/bill manifest +:: +++ read-bill + |= [our=ship =desk now=@da] + =/ pax (en-beam [our desk da+now] /desk/bill) + ?~ =<(fil .^(arch cy/pax)) + *bill + .^(bill cx/pax) +:: +is-fish: should dill link .dude? +:: +++ is-fish |=([=dude =bill] .?((find ~[dude] (read-fish bill)))) +:: +get-apps-diff: which agents should be started and stopped +:: +++ get-apps-diff + |= [our=ship =desk now=@da =rein] + ^- [liv=(list dude) ded=(list dude)] + =/ =bill (read-bill our desk now) + =/ wan (sy (get-apps-want bill rein)) + =/ hav (sy (get-apps-live our desk now)) + =/ liv ~(tap in (~(dif in wan) hav)) + =/ ded ~(tap in (~(dif in hav) wan)) + [liv ded] +:: +++ get-apps-live + |= [our=ship =desk now=@da] + ^- (list dude) + %+ murn (get-apps-have our desk now) + |=([=dude live=?] ?.(live ~ `dude)) +:: +get-apps-have: find which apps Gall is running on a desk +:: +++ get-apps-have + |= [our=ship =desk now=@da] + ^- (list [=dude live=?]) + %~ tap in + .^((set [=dude live=?]) ge+/(scot %p our)/[desk]/(scot %da now)) +:: +get-apps-want: find which apps should be running on a desk +:: +++ get-apps-want + |= [=bill =rein] + ^- (list dude) + =/ duz (read-apes bill) + =. duz (skip duz ~(has in sub.rein)) + =. duz (weld duz (skip ~(tap in add.rein) ~(has in (sy duz)))) + duz +:: +++ mergebase-hashes + |= [our=@p =desk now=@da =arak] + =/ her (scot %p ship.arak) + =/ ego (scot %p our) + =/ wen (scot %da now) + %+ turn .^((list tako) %cs ~[ego desk wen %base her desk.arak]) + |=(=tako .^(@uv %cs ~[ego desk wen %hash (scot %uv tako)])) +:: +++ enjs + =, enjs:format + |% + ++ vats + |= v=(list ^vat) + ^- json + %- pairs + %+ turn v + |= va=^vat + [desk.va (vat va)] + :: + ++ tim + |= t=@ + ^- json + (numb (fall (mole |.((unm:chrono:userlib t))) 0)) + :: + ++ cass + |= c=^cass + %- pairs + :~ ud+(numb ud.c) + da+(tim da.c) + == + :: + ++ vat + |= v=^vat + %- pairs + :~ desk+s+desk.v + hash+s+(scot %uv hash.v) + cass+(cass cass.v) + arak+(arak arak.v) + == + :: + ++ weft + |= w=^weft + %- pairs + :~ name+s+lal.w + kelvin+(numb num.w) + == + :: + ++ woof + |= w=[=aeon =^weft] + %- pairs + :~ aeon+(numb aeon.w) + weft+(weft weft.w) + == + :: + ++ rein + |= r=^rein + %- pairs + :~ add+a+(turn ~(tap in add.r) (lead %s)) + sub+a+(turn ~(tap in sub.r) (lead %s)) + == + :: + ++ arak + |= a=^arak + %- pairs + :~ ship+s+(scot %p ship.a) + desk+s+desk.a + aeon+(numb aeon.a) + next+a+(turn next.a woof) + rein+(rein rein.a) + == + -- +-- diff --git a/pkg/base-dev/lib/docket.hoon b/pkg/garden-dev/lib/docket.hoon similarity index 100% rename from pkg/base-dev/lib/docket.hoon rename to pkg/garden-dev/lib/docket.hoon diff --git a/pkg/base-dev/mar/docket.hoon b/pkg/garden-dev/mar/docket.hoon similarity index 100% rename from pkg/base-dev/mar/docket.hoon rename to pkg/garden-dev/mar/docket.hoon diff --git a/pkg/base-dev/sur/docket.hoon b/pkg/garden-dev/sur/docket.hoon similarity index 100% rename from pkg/base-dev/sur/docket.hoon rename to pkg/garden-dev/sur/docket.hoon diff --git a/pkg/garden/lib/agentio.hoon b/pkg/garden/lib/agentio.hoon new file mode 120000 index 000000000..959a49843 --- /dev/null +++ b/pkg/garden/lib/agentio.hoon @@ -0,0 +1 @@ +../../base-dev/lib/agentio.hoon \ No newline at end of file diff --git a/pkg/garden/lib/azimuth.hoon b/pkg/garden/lib/azimuth.hoon new file mode 120000 index 000000000..2bacb02b7 --- /dev/null +++ b/pkg/garden/lib/azimuth.hoon @@ -0,0 +1 @@ +../../base-dev/lib/azimuth.hoon \ No newline at end of file diff --git a/pkg/garden/lib/azimuthio.hoon b/pkg/garden/lib/azimuthio.hoon new file mode 120000 index 000000000..0b5df7063 --- /dev/null +++ b/pkg/garden/lib/azimuthio.hoon @@ -0,0 +1 @@ +../../base-dev/lib/azimuthio.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip/b158.hoon b/pkg/garden/lib/bip/b158.hoon new file mode 120000 index 000000000..cba919a85 --- /dev/null +++ b/pkg/garden/lib/bip/b158.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/bip/b158.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip/b173.hoon b/pkg/garden/lib/bip/b173.hoon new file mode 120000 index 000000000..2999150e2 --- /dev/null +++ b/pkg/garden/lib/bip/b173.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/bip/b173.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip/b174.hoon b/pkg/garden/lib/bip/b174.hoon new file mode 120000 index 000000000..bc6cae53b --- /dev/null +++ b/pkg/garden/lib/bip/b174.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/bip/b174.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip32.hoon b/pkg/garden/lib/bip32.hoon new file mode 120000 index 000000000..1cbb7f892 --- /dev/null +++ b/pkg/garden/lib/bip32.hoon @@ -0,0 +1 @@ +../../base-dev/lib/bip32.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip39.hoon b/pkg/garden/lib/bip39.hoon new file mode 120000 index 000000000..36c4b7e83 --- /dev/null +++ b/pkg/garden/lib/bip39.hoon @@ -0,0 +1 @@ +../../base-dev/lib/bip39.hoon \ No newline at end of file diff --git a/pkg/garden/lib/bip39/english.hoon b/pkg/garden/lib/bip39/english.hoon new file mode 120000 index 000000000..f1ea0fe31 --- /dev/null +++ b/pkg/garden/lib/bip39/english.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/bip39/english.hoon \ No newline at end of file diff --git a/pkg/garden/lib/dbug.hoon b/pkg/garden/lib/dbug.hoon new file mode 120000 index 000000000..04f6855f7 --- /dev/null +++ b/pkg/garden/lib/dbug.hoon @@ -0,0 +1 @@ +../../base-dev/lib/dbug.hoon \ No newline at end of file diff --git a/pkg/garden/lib/default-agent.hoon b/pkg/garden/lib/default-agent.hoon new file mode 120000 index 000000000..698f6802d --- /dev/null +++ b/pkg/garden/lib/default-agent.hoon @@ -0,0 +1 @@ +../../base-dev/lib/default-agent.hoon \ No newline at end of file diff --git a/pkg/garden/lib/docket.hoon b/pkg/garden/lib/docket.hoon new file mode 120000 index 000000000..e0f69ee1e --- /dev/null +++ b/pkg/garden/lib/docket.hoon @@ -0,0 +1 @@ +../../garden-dev/lib/docket.hoon \ No newline at end of file diff --git a/pkg/garden/lib/ethio.hoon b/pkg/garden/lib/ethio.hoon new file mode 120000 index 000000000..9c5b58148 --- /dev/null +++ b/pkg/garden/lib/ethio.hoon @@ -0,0 +1 @@ +../../base-dev/lib/ethio.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/build.hoon b/pkg/garden/lib/language-server/build.hoon new file mode 120000 index 000000000..749928056 --- /dev/null +++ b/pkg/garden/lib/language-server/build.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/build.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/complete.hoon b/pkg/garden/lib/language-server/complete.hoon new file mode 120000 index 000000000..219d824c7 --- /dev/null +++ b/pkg/garden/lib/language-server/complete.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/complete.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/easy-print.hoon b/pkg/garden/lib/language-server/easy-print.hoon new file mode 120000 index 000000000..2160e2f5a --- /dev/null +++ b/pkg/garden/lib/language-server/easy-print.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/easy-print.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/json.hoon b/pkg/garden/lib/language-server/json.hoon new file mode 120000 index 000000000..96fe5b516 --- /dev/null +++ b/pkg/garden/lib/language-server/json.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/json.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/parser.hoon b/pkg/garden/lib/language-server/parser.hoon new file mode 120000 index 000000000..327e1a5de --- /dev/null +++ b/pkg/garden/lib/language-server/parser.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/parser.hoon \ No newline at end of file diff --git a/pkg/garden/lib/language-server/rune-snippet.hoon b/pkg/garden/lib/language-server/rune-snippet.hoon new file mode 120000 index 000000000..387505b59 --- /dev/null +++ b/pkg/garden/lib/language-server/rune-snippet.hoon @@ -0,0 +1 @@ +../../../base-dev/lib/language-server/rune-snippet.hoon \ No newline at end of file diff --git a/pkg/garden/lib/server.hoon b/pkg/garden/lib/server.hoon new file mode 120000 index 000000000..6176cfc00 --- /dev/null +++ b/pkg/garden/lib/server.hoon @@ -0,0 +1 @@ +../../base-dev/lib/server.hoon \ No newline at end of file diff --git a/pkg/garden/lib/shoe.hoon b/pkg/garden/lib/shoe.hoon new file mode 120000 index 000000000..a4aab1dd7 --- /dev/null +++ b/pkg/garden/lib/shoe.hoon @@ -0,0 +1 @@ +../../base-dev/lib/shoe.hoon \ No newline at end of file diff --git a/pkg/garden/lib/skeleton.hoon b/pkg/garden/lib/skeleton.hoon new file mode 120000 index 000000000..77626a327 --- /dev/null +++ b/pkg/garden/lib/skeleton.hoon @@ -0,0 +1 @@ +../../base-dev/lib/skeleton.hoon \ No newline at end of file diff --git a/pkg/garden/lib/sole.hoon b/pkg/garden/lib/sole.hoon new file mode 120000 index 000000000..f776890f2 --- /dev/null +++ b/pkg/garden/lib/sole.hoon @@ -0,0 +1 @@ +../../base-dev/lib/sole.hoon \ No newline at end of file diff --git a/pkg/garden/lib/strand.hoon b/pkg/garden/lib/strand.hoon new file mode 120000 index 000000000..d95df7948 --- /dev/null +++ b/pkg/garden/lib/strand.hoon @@ -0,0 +1 @@ +../../base-dev/lib/strand.hoon \ No newline at end of file diff --git a/pkg/garden/lib/strandio.hoon b/pkg/garden/lib/strandio.hoon new file mode 120000 index 000000000..0caebfac1 --- /dev/null +++ b/pkg/garden/lib/strandio.hoon @@ -0,0 +1 @@ +../../base-dev/lib/strandio.hoon \ No newline at end of file diff --git a/pkg/garden/lib/treaty.hoon b/pkg/garden/lib/treaty.hoon new file mode 120000 index 000000000..014f5a1cf --- /dev/null +++ b/pkg/garden/lib/treaty.hoon @@ -0,0 +1 @@ +../../base-dev/lib/treaty.hoon \ No newline at end of file diff --git a/pkg/garden/lib/verb.hoon b/pkg/garden/lib/verb.hoon new file mode 120000 index 000000000..939072347 --- /dev/null +++ b/pkg/garden/lib/verb.hoon @@ -0,0 +1 @@ +../../base-dev/lib/verb.hoon \ No newline at end of file diff --git a/pkg/garden/mar/belt.hoon b/pkg/garden/mar/belt.hoon new file mode 120000 index 000000000..0c8999932 --- /dev/null +++ b/pkg/garden/mar/belt.hoon @@ -0,0 +1 @@ +../../base-dev/mar/belt.hoon \ No newline at end of file diff --git a/pkg/garden/mar/bill.hoon b/pkg/garden/mar/bill.hoon new file mode 120000 index 000000000..801d99730 --- /dev/null +++ b/pkg/garden/mar/bill.hoon @@ -0,0 +1 @@ +../../base-dev/mar/bill.hoon \ No newline at end of file diff --git a/pkg/garden/mar/blit.hoon b/pkg/garden/mar/blit.hoon new file mode 120000 index 000000000..3ea8dc943 --- /dev/null +++ b/pkg/garden/mar/blit.hoon @@ -0,0 +1 @@ +../../base-dev/mar/blit.hoon \ No newline at end of file diff --git a/pkg/garden/mar/docket.hoon b/pkg/garden/mar/docket.hoon deleted file mode 100644 index 911d34c0d..000000000 --- a/pkg/garden/mar/docket.hoon +++ /dev/null @@ -1,25 +0,0 @@ -/+ dock=docket -|_ =docket:dock -++ grow - |% - ++ mime - ^- ^mime - [/text/x-docket (as-octt:mimes:html (spit-docket:mime:dock docket))] - ++ noun docket - ++ json (docket:enjs:dock docket) - -- -++ grab - |% - :: - ++ mime - |= [=mite len=@ud tex=@] - ^- docket:dock - %- need - %- from-clauses:mime:dock - !<((list clause:dock) (slap !>(~) (ream tex))) - - :: - ++ noun docket:dock - -- -++ grad %noun --- diff --git a/pkg/garden/mar/docket.hoon b/pkg/garden/mar/docket.hoon new file mode 120000 index 000000000..c642f467c --- /dev/null +++ b/pkg/garden/mar/docket.hoon @@ -0,0 +1 @@ +../../garden-dev/mar/docket.hoon \ No newline at end of file diff --git a/pkg/garden/mar/hoon.hoon b/pkg/garden/mar/hoon.hoon new file mode 120000 index 000000000..95f8f67f9 --- /dev/null +++ b/pkg/garden/mar/hoon.hoon @@ -0,0 +1 @@ +../../base-dev/mar/hoon.hoon \ No newline at end of file diff --git a/pkg/garden/mar/htm.hoon b/pkg/garden/mar/htm.hoon new file mode 120000 index 000000000..d29e24bac --- /dev/null +++ b/pkg/garden/mar/htm.hoon @@ -0,0 +1 @@ +../../base-dev/mar/htm.hoon \ No newline at end of file diff --git a/pkg/garden/mar/html.hoon b/pkg/garden/mar/html.hoon new file mode 120000 index 000000000..14a5f8f7b --- /dev/null +++ b/pkg/garden/mar/html.hoon @@ -0,0 +1 @@ +../../base-dev/mar/html.hoon \ No newline at end of file diff --git a/pkg/garden/mar/httr.hoon b/pkg/garden/mar/httr.hoon new file mode 120000 index 000000000..572665778 --- /dev/null +++ b/pkg/garden/mar/httr.hoon @@ -0,0 +1 @@ +../../base-dev/mar/httr.hoon \ No newline at end of file diff --git a/pkg/garden/mar/hymn.hoon b/pkg/garden/mar/hymn.hoon new file mode 120000 index 000000000..905156749 --- /dev/null +++ b/pkg/garden/mar/hymn.hoon @@ -0,0 +1 @@ +../../base-dev/mar/hymn.hoon \ No newline at end of file diff --git a/pkg/garden/mar/js.hoon b/pkg/garden/mar/js.hoon new file mode 120000 index 000000000..00189f4c6 --- /dev/null +++ b/pkg/garden/mar/js.hoon @@ -0,0 +1 @@ +../../base-dev/mar/js.hoon \ No newline at end of file diff --git a/pkg/garden/mar/json.hoon b/pkg/garden/mar/json.hoon new file mode 120000 index 000000000..e77f85d05 --- /dev/null +++ b/pkg/garden/mar/json.hoon @@ -0,0 +1 @@ +../../base-dev/mar/json.hoon \ No newline at end of file diff --git a/pkg/garden/mar/json/rpc/response.hoon b/pkg/garden/mar/json/rpc/response.hoon new file mode 120000 index 000000000..52c97c864 --- /dev/null +++ b/pkg/garden/mar/json/rpc/response.hoon @@ -0,0 +1 @@ +../../../../base-dev/mar/json/rpc/response.hoon \ No newline at end of file diff --git a/pkg/garden/mar/kelvin.hoon b/pkg/garden/mar/kelvin.hoon new file mode 120000 index 000000000..195ebe0dc --- /dev/null +++ b/pkg/garden/mar/kelvin.hoon @@ -0,0 +1 @@ +../../base-dev/mar/kelvin.hoon \ No newline at end of file diff --git a/pkg/garden/mar/language-server/rpc/notification.hoon b/pkg/garden/mar/language-server/rpc/notification.hoon new file mode 120000 index 000000000..b95e54c35 --- /dev/null +++ b/pkg/garden/mar/language-server/rpc/notification.hoon @@ -0,0 +1 @@ +../../../../base-dev/mar/language-server/rpc/notification.hoon \ No newline at end of file diff --git a/pkg/garden/mar/language-server/rpc/request.hoon b/pkg/garden/mar/language-server/rpc/request.hoon new file mode 120000 index 000000000..26203cf5b --- /dev/null +++ b/pkg/garden/mar/language-server/rpc/request.hoon @@ -0,0 +1 @@ +../../../../base-dev/mar/language-server/rpc/request.hoon \ No newline at end of file diff --git a/pkg/garden/mar/language-server/rpc/response.hoon b/pkg/garden/mar/language-server/rpc/response.hoon new file mode 120000 index 000000000..9dddb2cef --- /dev/null +++ b/pkg/garden/mar/language-server/rpc/response.hoon @@ -0,0 +1 @@ +../../../../base-dev/mar/language-server/rpc/response.hoon \ No newline at end of file diff --git a/pkg/garden/mar/mime.hoon b/pkg/garden/mar/mime.hoon new file mode 120000 index 000000000..0d85898f3 --- /dev/null +++ b/pkg/garden/mar/mime.hoon @@ -0,0 +1 @@ +../../base-dev/mar/mime.hoon \ No newline at end of file diff --git a/pkg/garden/mar/noun.hoon b/pkg/garden/mar/noun.hoon new file mode 120000 index 000000000..97cc30876 --- /dev/null +++ b/pkg/garden/mar/noun.hoon @@ -0,0 +1 @@ +../../base-dev/mar/noun.hoon \ No newline at end of file diff --git a/pkg/garden/mar/path.hoon b/pkg/garden/mar/path.hoon new file mode 120000 index 000000000..c07b00064 --- /dev/null +++ b/pkg/garden/mar/path.hoon @@ -0,0 +1 @@ +../../base-dev/mar/path.hoon \ No newline at end of file diff --git a/pkg/garden/mar/png.hoon b/pkg/garden/mar/png.hoon new file mode 120000 index 000000000..c2d8cf9fa --- /dev/null +++ b/pkg/garden/mar/png.hoon @@ -0,0 +1 @@ +../../base-dev/mar/png.hoon \ No newline at end of file diff --git a/pkg/garden/mar/purl.hoon b/pkg/garden/mar/purl.hoon new file mode 120000 index 000000000..d0d2cc0de --- /dev/null +++ b/pkg/garden/mar/purl.hoon @@ -0,0 +1 @@ +../../base-dev/mar/purl.hoon \ No newline at end of file diff --git a/pkg/garden/mar/sole/action.hoon b/pkg/garden/mar/sole/action.hoon new file mode 120000 index 000000000..b349bd771 --- /dev/null +++ b/pkg/garden/mar/sole/action.hoon @@ -0,0 +1 @@ +../../../base-dev/mar/sole/action.hoon \ No newline at end of file diff --git a/pkg/garden/mar/sole/effect.hoon b/pkg/garden/mar/sole/effect.hoon new file mode 120000 index 000000000..bc11205c0 --- /dev/null +++ b/pkg/garden/mar/sole/effect.hoon @@ -0,0 +1 @@ +../../../base-dev/mar/sole/effect.hoon \ No newline at end of file diff --git a/pkg/garden/mar/svg.hoon b/pkg/garden/mar/svg.hoon new file mode 120000 index 000000000..2b406c2ac --- /dev/null +++ b/pkg/garden/mar/svg.hoon @@ -0,0 +1 @@ +../../base-dev/mar/svg.hoon \ No newline at end of file diff --git a/pkg/garden/mar/tang.hoon b/pkg/garden/mar/tang.hoon new file mode 120000 index 000000000..9206e52b2 --- /dev/null +++ b/pkg/garden/mar/tang.hoon @@ -0,0 +1 @@ +../../base-dev/mar/tang.hoon \ No newline at end of file diff --git a/pkg/garden/mar/tape.hoon b/pkg/garden/mar/tape.hoon new file mode 120000 index 000000000..be51fcb2d --- /dev/null +++ b/pkg/garden/mar/tape.hoon @@ -0,0 +1 @@ +../../base-dev/mar/tape.hoon \ No newline at end of file diff --git a/pkg/garden/mar/txt-diff.hoon b/pkg/garden/mar/txt-diff.hoon new file mode 120000 index 000000000..1f7c04285 --- /dev/null +++ b/pkg/garden/mar/txt-diff.hoon @@ -0,0 +1 @@ +../../base-dev/mar/txt-diff.hoon \ No newline at end of file diff --git a/pkg/garden/mar/txt.hoon b/pkg/garden/mar/txt.hoon new file mode 120000 index 000000000..432541575 --- /dev/null +++ b/pkg/garden/mar/txt.hoon @@ -0,0 +1 @@ +../../base-dev/mar/txt.hoon \ No newline at end of file diff --git a/pkg/garden/mar/udon.hoon b/pkg/garden/mar/udon.hoon new file mode 120000 index 000000000..215e0ada9 --- /dev/null +++ b/pkg/garden/mar/udon.hoon @@ -0,0 +1 @@ +../../base-dev/mar/udon.hoon \ No newline at end of file diff --git a/pkg/garden/mar/umd.hoon b/pkg/garden/mar/umd.hoon new file mode 120000 index 000000000..9b827a24d --- /dev/null +++ b/pkg/garden/mar/umd.hoon @@ -0,0 +1 @@ +../../base-dev/mar/umd.hoon \ No newline at end of file diff --git a/pkg/garden/mar/urb.hoon b/pkg/garden/mar/urb.hoon new file mode 120000 index 000000000..2d8112d1d --- /dev/null +++ b/pkg/garden/mar/urb.hoon @@ -0,0 +1 @@ +../../base-dev/mar/urb.hoon \ No newline at end of file diff --git a/pkg/garden/mar/urbit.hoon b/pkg/garden/mar/urbit.hoon new file mode 120000 index 000000000..70a62a723 --- /dev/null +++ b/pkg/garden/mar/urbit.hoon @@ -0,0 +1 @@ +../../base-dev/mar/urbit.hoon \ No newline at end of file diff --git a/pkg/garden/mar/woff2.hoon b/pkg/garden/mar/woff2.hoon new file mode 120000 index 000000000..beaf4875c --- /dev/null +++ b/pkg/garden/mar/woff2.hoon @@ -0,0 +1 @@ +../../base-dev/mar/woff2.hoon \ No newline at end of file diff --git a/pkg/garden/mar/xml.hoon b/pkg/garden/mar/xml.hoon new file mode 120000 index 000000000..e6323e215 --- /dev/null +++ b/pkg/garden/mar/xml.hoon @@ -0,0 +1 @@ +../../base-dev/mar/xml.hoon \ No newline at end of file diff --git a/pkg/garden/sur/bill.hoon b/pkg/garden/sur/bill.hoon new file mode 120000 index 000000000..c048171cb --- /dev/null +++ b/pkg/garden/sur/bill.hoon @@ -0,0 +1 @@ +../../base-dev/sur/bill.hoon \ No newline at end of file diff --git a/pkg/garden/sur/docket.hoon b/pkg/garden/sur/docket.hoon new file mode 120000 index 000000000..e13676adb --- /dev/null +++ b/pkg/garden/sur/docket.hoon @@ -0,0 +1 @@ +../../garden-dev/sur/docket.hoon \ No newline at end of file diff --git a/pkg/garden/sur/hood.hoon b/pkg/garden/sur/hood.hoon deleted file mode 100644 index df11949e1..000000000 --- a/pkg/garden/sur/hood.hoon +++ /dev/null @@ -1,206 +0,0 @@ -/- *bill -=, clay -=* dude dude:gall -|% -:: $diff: subscription update -:: -+$ diff - $% [%block =desk =arak =weft blockers=(set desk)] - [%reset =desk =arak] - [%merge =desk =arak] - [%merge-sunk =desk =arak =tang] - [%merge-fail =desk =arak =tang] - [%suspend =desk =arak] - [%revive =desk =arak] - == -:: $arak: foreign vat tracker -:: -:: .next is a list of pending commits with future kelvins -:: -+$ arak - $: =ship - =desk - =aeon - next=(list [=aeon =weft]) - =rein - == -:: $rein: diff from desk manifest -:: -:: .liv: suspended? -:: .add: agents not in manifest that should be running -:: .sub: agents in manifest that should not be running -:: -+$ rein - $: liv=_& - add=(set dude) - sub=(set dude) - == -:: -+$ vat [=desk hash=@uv =cass =arak] -:: +report-vats: report on all desk installations -:: -++ report-vats - |= [our=@p now=@da] - ^- tang - =+ .^ raz=(list vat) - %gx /(scot %p our)/hood/(scot %da now)/kiln/vats/noun - == - (turn raz |=(v=vat (report-vat our now v))) -:: +report-vat: report on a single desk installation -:: -++ report-vat - |= [our=ship now=@da vat] - ^- tank - =+ .^(=weft %cx /(scot %p our)/[desk]/(scot %da now)/sys/kelvin) - :+ %rose ["" "{}" "::"] - ^- tang - =- ?: =(~ next.arak) - - %+ snoc - - leaf/"pending: {<(turn next.arak |=([@ lal=@tas num=@] [lal num]))>}" - ^- tang - =/ meb (mergebase-hashes our desk now arak) - =/ sat ?:(liv.rein.arak "running" "suspended") - :~ leaf/"/sys/kelvin: {<[lal num]:weft>}" - leaf/"base hash: {?.(=(1 (lent meb)) <(head meb)>)}" - leaf/"%cz hash: {}" - leaf/"remote aeon: {}" - leaf/"status: {sat}" - leaf/"force on: {?:(=(~ add.rein.arak) "~" )}" - leaf/"force off: {?:(=(~ sub.rein.arak) "~" )}" - == -:: -++ read-kelvin-foreign - |= [=ship =desk =aeon] - ^- weft - =/ her (scot %p ship) - =/ syd (scot %tas desk) - =/ yon (scot %ud aeon) - :: - =/ dom .^(dome cv/~[her syd yon]) - =/ tak (scot %uv (~(got by hit.dom) let.dom)) - =/ yak .^(yaki cs/~[her syd yon %yaki tak]) - =/ lob (scot %uv (~(got by q.yak) /sys/kelvin)) - =/ bob .^(blob cs/~[her syd yon %blob lob]) - :: - ;; weft - ?- -.bob - %direct q.q.bob - %delta q.r.bob - == -:: +read-bill: read contents of /desk/bill manifest -:: -++ read-bill - |= [our=ship =desk now=@da] - =/ pax (en-beam [our desk da+now] /desk/bill) - ?~ =<(fil .^(arch cy/pax)) - *bill - .^(bill cx/pax) -:: +is-fish: should dill link .dude? -:: -++ is-fish |=([=dude =bill] .?((find ~[dude] (read-fish bill)))) -:: +get-apps-diff: which agents should be started and stopped -:: -++ get-apps-diff - |= [our=ship =desk now=@da =rein] - ^- [liv=(list dude) ded=(list dude)] - =/ =bill (read-bill our desk now) - =/ wan (sy (get-apps-want bill rein)) - =/ hav (sy (get-apps-live our desk now)) - =/ liv ~(tap in (~(dif in wan) hav)) - =/ ded ~(tap in (~(dif in hav) wan)) - [liv ded] -:: -++ get-apps-live - |= [our=ship =desk now=@da] - ^- (list dude) - %+ murn (get-apps-have our desk now) - |=([=dude live=?] ?.(live ~ `dude)) -:: +get-apps-have: find which apps Gall is running on a desk -:: -++ get-apps-have - |= [our=ship =desk now=@da] - ^- (list [=dude live=?]) - %~ tap in - .^((set [=dude live=?]) ge+/(scot %p our)/[desk]/(scot %da now)) -:: +get-apps-want: find which apps should be running on a desk -:: -++ get-apps-want - |= [=bill =rein] - ^- (list dude) - =/ duz (read-apes bill) - =. duz (skip duz ~(has in sub.rein)) - =. duz (weld duz (skip ~(tap in add.rein) ~(has in (sy duz)))) - duz -:: -++ mergebase-hashes - |= [our=@p =desk now=@da =arak] - =/ her (scot %p ship.arak) - =/ ego (scot %p our) - =/ wen (scot %da now) - %+ turn .^((list tako) %cs ~[ego desk wen %base her desk.arak]) - |=(=tako .^(@uv %cs ~[ego desk wen %hash (scot %uv tako)])) -:: -++ enjs - =, enjs:format - |% - ++ vats - |= v=(list ^vat) - ^- json - %- pairs - %+ turn v - |= va=^vat - [desk.va (vat va)] - :: - ++ tim - |= t=@ - ^- json - (numb (fall (mole |.((unm:chrono:userlib t))) 0)) - :: - ++ cass - |= c=^cass - %- pairs - :~ ud+(numb ud.c) - da+(tim da.c) - == - :: - ++ vat - |= v=^vat - %- pairs - :~ desk+s+desk.v - hash+s+(scot %uv hash.v) - cass+(cass cass.v) - arak+(arak arak.v) - == - :: - ++ weft - |= w=^weft - %- pairs - :~ name+s+lal.w - kelvin+(numb num.w) - == - :: - ++ woof - |= w=[=aeon =^weft] - %- pairs - :~ aeon+(numb aeon.w) - weft+(weft weft.w) - == - :: - ++ rein - |= r=^rein - %- pairs - :~ add+a+(turn ~(tap in add.r) (lead %s)) - sub+a+(turn ~(tap in sub.r) (lead %s)) - == - :: - ++ arak - |= a=^arak - %- pairs - :~ ship+s+(scot %p ship.a) - desk+s+desk.a - aeon+(numb aeon.a) - next+a+(turn next.a woof) - rein+(rein rein.a) - == - -- --- diff --git a/pkg/garden/sur/hood.hoon b/pkg/garden/sur/hood.hoon new file mode 120000 index 000000000..b212f501e --- /dev/null +++ b/pkg/garden/sur/hood.hoon @@ -0,0 +1 @@ +../../base-dev/sur/hood.hoon \ No newline at end of file diff --git a/pkg/garden/sur/sole.hoon b/pkg/garden/sur/sole.hoon new file mode 120000 index 000000000..8cac11891 --- /dev/null +++ b/pkg/garden/sur/sole.hoon @@ -0,0 +1 @@ +../../base-dev/sur/sole.hoon \ No newline at end of file diff --git a/pkg/garden/sur/spider.hoon b/pkg/garden/sur/spider.hoon new file mode 120000 index 000000000..12ae2c187 --- /dev/null +++ b/pkg/garden/sur/spider.hoon @@ -0,0 +1 @@ +../../base-dev/sur/spider.hoon \ No newline at end of file diff --git a/pkg/garden/sur/verb.hoon b/pkg/garden/sur/verb.hoon new file mode 120000 index 000000000..1a6100d9c --- /dev/null +++ b/pkg/garden/sur/verb.hoon @@ -0,0 +1 @@ +../../base-dev/sur/verb.hoon \ No newline at end of file