Commit Graph

33 Commits

Author SHA1 Message Date
Benjamin Summers
b1a9dff197 Fixes live-lock by changing type of Vere.Term.API.Client.give to take [Term.Ev]. 2019-09-18 02:11:18 -07:00
Benjamin Summers
4c3342f9c6 External terminals get added to the demuxed terminal set. 2019-09-17 23:59:07 -07:00
Benjamin Summers
09b30bf169 Collect terminal size. 2019-09-17 23:58:42 -07:00
Benjamin Summers
cd07b10946 Impement basic support for multiple terminals pretending to be one terminal. 2019-09-17 23:17:54 -07:00
Benjamin Summers
ebf3d3e5c6 Move terminal client API into it's own module. 2019-09-17 22:22:19 -07:00
Benjamin Summers
99dd161b86 Simplify term interface. 2019-09-17 22:01:44 -07:00
Benjamin Summers
c4be3e4a19 Terminal loop cleanup. 2019-09-17 21:41:31 -07:00
benjamin-tlon
5939737c43
Merge pull request #1744 from urbit/king-spinner
Terminal spinner implementation in King Haskell.
2019-09-17 19:56:43 -07:00
Elliot Glaysher
efa396ed82 Makes a progress bar on booting a new ship.
Also prints the name of the ship you're trying to boot, along with
whether its a fake or not. Also fixes a regression where we were
trying to acquire a lockfile before the pier directory was created.
2019-09-17 11:56:54 -07:00
Elliot Glaysher
c7945689d2 Terminal spinner implementation in King Haskell.
This gets a terminal spinner to spin after a short delay like in
vere. This also fixes a bug in termRefreshLine which was screwing
up redisplay of the terminal spinner; it hadn't been translated
from C properly.
2019-09-16 16:51:17 -07:00
Elliot Glaysher
9fcbc864b2 WIP for term cleanup 2019-09-13 11:02:52 -07:00
Elliot Glaysher
3927e4d50a Clay syncing.
This performs all normal filesystem operations. We can take
filesystem hash snapshots on startup, write the contents of an
%ergo to disk, send changes to Urbit with an %into, and finally
delete mount points when they are %ogre.

This doesn't deal with updating an initial filesystem on first
run with -A, or with acquiring a lockfile, which should happen
elsewhere.

Can take filesystem hash snapshots on startup, and can write the
contents of an %ergo to disk.
2019-09-11 16:20:05 -07:00
Elliot Glaysher
3ed4683f4b 80 cols + order of operations 2019-09-10 13:34:11 -07:00
Elliot Glaysher
6d2b94ac7b Per review, use separate TMVars to control saving and shutdown. 2019-09-10 13:31:18 -07:00
Elliot Glaysher
5e9822d268 Make the compute thread take a request instead of an event.
The compute thread should take an event or a save request or a
shutdown request. We now take snapshots every 120 seconds like
vere does, and take a snapshot before clean shutdown.

(Also changes the terminal driver so that it doesn't unboundedly
block shutdown.)
2019-09-06 12:59:56 -07:00
Elliot Glaysher
94034503c7 First pass HTTP Client driver completed.
Can run '+http://www.example.com' from the dojo.
2019-09-05 13:09:45 -07:00
Elliot Glaysher
25450d5ac8 Merge remote-tracking branch 'origin/bs/uterm' into eg/uterm 2019-09-03 16:45:45 -07:00
Elliot Glaysher
c635abd58e Hook up ~& to the terminal driver. 2019-09-03 15:17:20 -07:00
Elliot Glaysher
8af0d7bef9 Move all of Term.hs into RIO. 2019-09-03 11:02:54 -07:00
Elliot Glaysher
22647bb91e Rough draft of putfiles. 2019-08-30 13:26:51 -07:00
Benjamin Summers
4903a72682 Various small fixes -- trying to get boot working. 2019-08-29 18:29:55 -07:00
Elliot Glaysher
206230cec6 Get ^D to end your Urbit session.
This also does a bunch of style cleanup and rearranging so that we
can have the reader thread end.
2019-08-29 16:35:52 -07:00
Elliot Glaysher
cdcdc6a59e Merge remote-tracking branch 'origin/bs/king-logging' into eg/uterm 2019-08-29 10:30:53 -07:00
Benjamin Summers
de7a087ef5 Logging everywhere + log to file 2019-08-28 17:26:59 -07:00
Elliot Glaysher
555b9e7dcf Moved terminal initialization up to Pier.
Joe told me to look at the Jaque terminal and I just did. That uses
the Lanterna Java library to handle terminal output. Joe then suggested
that I move the entire system here to curses or another similar library.
2019-08-28 13:17:01 -07:00
Benjamin Summers
062c71b57d Logging in Vere.Serf 2019-08-28 05:22:56 -07:00
Benjamin Summers
c1bb26e628 Logging in Vere.Pier 2019-08-28 04:45:49 -07:00
Elliot Glaysher
5e3e1e7c1a Skeleton terminal implementation.
This sends the right events on startup, and there's a minimal key
reading logic, but not much else works yet.
2019-08-27 15:29:11 -07:00
Benjamin Summers
8ace44adb6 Validate pill files. 2019-08-21 16:49:08 -07:00
Benjamin Summers
e02dd2342c CLI Parsing cleanup. 2019-08-14 19:47:54 -07:00
Benjamin Summers
e640bf505d The HTTP query string wasn't being included in the event. 2019-08-13 17:53:03 -07:00
Benjamin Summers
e6c2d46cd1 Various Fixes and Improvements 2019-08-12 22:56:31 -07:00
Benjamin Summers
55ceffc4c3 CLI parsing. 2019-08-12 21:57:30 -07:00