@tedchoward

jake savin is making good progress on porting frontier to run, headless, on linux and mac os. just wanted to make sure you were in the loop.

hope all is well! been following your work on old PCs, many of which i used "back in the day."

http://scripting.com/2026/01/15.html#a135543

Scripting News: Thursday, January 15, 2026

Dave Winer, OG blogger, podcaster, developed first apps in many categories. Old enough to know better. It's even worse than it appears.

Scripting News

@davew That's exciting! These new "agentic" tools are proving useful for things like this.

Thanks for reaching out. I'm glad to see progress being made here. I have so many aborted attempts to port the kernel littered across my hard drive.

Is there someplace I can go see the work in progress?

@tedchoward @davew You may have noticed some weeks back that I accidentally pushed a PR to your repo! I'm often telling Claude to reference it when investigating what the legacy app did if we get into a tight corner.

It's been going well, and I'm currently working on the low-level guts that would enable POSIX-based networking so that the web client & server will work. It's 100% headless, and my plan is for the UI to be a separate app.

Feel free to reach out if you have any questions! ๐Ÿ™

@jsavin @davew Yes, I did see the PR open and close. It's exciting to see the progress youโ€™ve made. I've pulled your `develop` branch. How do I build? Do I use the makefile in `frontier-cli`? What's the best way to test locally?
@tedchoward @davew I actually never build it by hand, but that is the correct makefile. Develop is pretty broken still at the moment, but should get a lot more stable by the end of today. If you look at CLAUDE.md at the top of the project tree, there's a quick reference with a list of commands for running tests and doing db migrations, but oddly nothing about how to build. Lemme fix that!
@tedchoward @davew I asked Claude to assess the docs gaps and close them. The README.md now has build instructions, and docs/GETTING_STARTED.md is a new "newcomer" guide with: system requirements, prerequisites, step-by-step instructions, UserTalk examples, REPL usage, and troubleshooting guide. Hopefully this is enough to get you started playing around with it. ๐Ÿ™‚
@tedchoward @davew Just pull the latest develop to get the updates. I also have another PR coming in that fixes some eggregious issues in dot-path resolution. That'll take maybe 20 min, so you'll want to pull again and rebuild in just a bit.

@tedchoward @davew Well, I got a little ahead of myself. The REPL should work for some basic stuff, but there are still dot-path search issues I have to track down. This one has been a slog, but making slow and steady progress. Either way it's worthwhile to pull again and rebuild. From the top-level of the project you should be able to run:

./frontier-cli/frontier-cli ./databases/Frontier.root

... to start the REPL.

@jsavin @davew Iโ€™m getting a build error when I run `make -C frontier-cli`

```
โ€บ make -C frontier-cli
../third_party/cmake-install/bin/cmake -S ../third_party/Paige -B ../third_party/Paige/build-headless -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
/bin/sh: ../third_party/cmake-install/bin/cmake: Bad CPU type in executable
make: *** [../third_party/Paige/build-headless/libpaige.a] Error 126
```
It looks like itโ€™s trying to use an embedded version of cmake.

@jsavin @davew
โ€บ file ./third_party/cmake-install/bin/cmake
./third_party/cmake-install/bin/cmake: Mach-O 64-bit executable arm64

Yep, the repo has an arm64 build of cmake, and Iโ€™m on an Intel Mac.

@tedchoward @davew aah. Good to know. I'll have a look later. I've got an Intel machine I can try it on
@jsavin @davew It works! I'm able to evaluate some basic scripts, and look up things in the database.

@tedchoward @jsavin

This is the best thread ever.! ๐Ÿ˜€

@davew @jsavin

This is cool

Frontier REPL - Interactive UserTalk Environment
Type /help for commands, /exit to quit

[root]> clock.now ()
1/26/2026; 6:12:54 PM
[root]> date.dayString (clock.now ())
Tuesday

@tedchoward @davew And around now you're going to start to notice a whole bunch of stuff that's very broken. ๐Ÿ˜‰

For example I just tried parentOf (string.mid) and got system.compiler.["kernel"].string, which is totally wrong. Heheh. (That's the next battle. Then back to networking.)

@tedchoward I fixed the bug that was causing weird dot-path lookups (I think). You should pull latest develop and rebuild to get it. [cc @davew]