Good day! I read the <9front dash1 manual> and fully understood the point <0.1.3 - Plan 9 is not for you>. Still, I was wondering if you could help me with a little advice(s). In particular, while playing with 9front I found myself looking for a two-panel file manager and went on a quest to write one in Go. Now, after having something breathing [1] and achieving cross-compilation with Plan9, I discovered that this is not enough. Current show-stopper is lack of Plan9 support by the underlying library TCELL [2]. Issue is described in some details in [3] and [4]: "...plan9 does not use escape sequences at all, nor does it use ttys. It appears you need to interact directly with libdraw and with the events subsystem..." I am wondering if someone would be interested to contribute time to explain the scope and potentially sketch the solution? Another related question is whether Plan9, 64-bit binaries, compiled by Go will work in 9front? The same question is currently unanswered on Stackoverflow [5]. Sincerely, Bogunix [1] https://github.com/mushkevych/9ofm [2] https://github.com/gdamore/tcell/ [3] https://github.com/gdamore/tcell/issues/402 [4] https://github.com/gdamore/tcell/issues/90 [5] https://stackoverflow.com/questions/65194285
There's a visual file manager by phil9 in C: https://github.com/telephil9/vdir > plan9 does not use escape sequences at all This is because Plan 9 does not attempt to nor intends to attempt to conflate the shell, a window, and a teletype. These are separable concepts. The recommended path as per vdir above is to commit to writing a graphical program ☺ Sean On Wed, Dec 9, 2020 at 10:48 PM Bogunix M <bogunix@gmail.com> wrote: > > Good day! > > I read the <9front dash1 manual> and fully understood the point <0.1.3 > - Plan 9 is not for you>. > > Still, I was wondering if you could help me with a little advice(s). > In particular, while playing with 9front I found myself looking for a > two-panel file manager and went on a quest to write one in Go. > > Now, after having something breathing [1] and achieving > cross-compilation with Plan9, I discovered that this is not enough. > Current show-stopper is lack of Plan9 support by the underlying > library TCELL [2]. Issue is described in some details in [3] and [4]: > > "...plan9 does not use escape sequences at all, nor does it use ttys. > It appears you need to interact directly with libdraw and with the > events subsystem..." > > I am wondering if someone would be interested to contribute time to > explain the scope and potentially sketch the solution? > > Another related question is whether Plan9, 64-bit binaries, compiled > by Go will work in 9front? The same question is currently unanswered > on Stackoverflow [5]. > > Sincerely, > Bogunix > > [1] https://github.com/mushkevych/9ofm > [2] https://github.com/gdamore/tcell/ > [3] https://github.com/gdamore/tcell/issues/402 > [4] https://github.com/gdamore/tcell/issues/90 > [5] https://stackoverflow.com/questions/65194285
And yes, Go compiles things just as fine on 9front as 9legacy or similar. Go has plenty of issues on Plan 9 as a platform, though, you can see this list here: https://github.com/golang/go/issues?q=is%3Aissue+is%3Aopen+label%3AOS-Plan9+ Sean On Wed, Dec 9, 2020 at 11:19 PM Sean Hinchee <henesy.dev@gmail.com> wrote: > > There's a visual file manager by phil9 in C: https://github.com/telephil9/vdir > > > plan9 does not use escape sequences at all > > This is because Plan 9 does not attempt to nor intends to attempt to > conflate the shell, a window, and a teletype. These are separable > concepts. > > The recommended path as per vdir above is to commit to writing a > graphical program > > Sean > > On Wed, Dec 9, 2020 at 10:48 PM Bogunix M <bogunix@gmail.com> wrote: > > > > Good day! > > > > I read the <9front dash1 manual> and fully understood the point <0.1.3 > > - Plan 9 is not for you>. > > > > Still, I was wondering if you could help me with a little advice(s). > > In particular, while playing with 9front I found myself looking for a > > two-panel file manager and went on a quest to write one in Go. > > > > Now, after having something breathing [1] and achieving > > cross-compilation with Plan9, I discovered that this is not enough. > > Current show-stopper is lack of Plan9 support by the underlying > > library TCELL [2]. Issue is described in some details in [3] and [4]: > > > > "...plan9 does not use escape sequences at all, nor does it use ttys. > > It appears you need to interact directly with libdraw and with the > > events subsystem..." > > > > I am wondering if someone would be interested to contribute time to > > explain the scope and potentially sketch the solution? > > > > Another related question is whether Plan9, 64-bit binaries, compiled > > by Go will work in 9front? The same question is currently unanswered > > on Stackoverflow [5]. > > > > Sincerely, > > Bogunix > > > > [1] https://github.com/mushkevych/9ofm > > [2] https://github.com/gdamore/tcell/ > > [3] https://github.com/gdamore/tcell/issues/402 > > [4] https://github.com/gdamore/tcell/issues/90 > > [5] https://stackoverflow.com/questions/65194285
> The recommended path as per vdir above is to commit to writing a
graphical program ☺
Or an Acme one
Quoth Sean Hinchee <henesy.dev@gmail.com>: > There's a visual file manager by phil9 in C: https://github.com/telephil9/vdir > > > plan9 does not use escape sequences at all > > This is because Plan 9 does not attempt to nor intends to attempt to > conflate the shell, a window, and a teletype. These are separable > concepts. > > The recommended path as per vdir above is to commit to writing a > graphical program ☺ > > Sean > If you want to write a graphical program in GO that works on plan9 then you could take a look at duit (https://github.com/mjl-/duit).
On 12/10/20 8:18 AM, telephil9@gmail.com wrote: > > If you want to write a graphical program in GO that works on plan9 > then you could take a look at duit (https://github.com/mjl-/duit). > I was never able to get duit to work completely on 9front, I had some success with a forked version of the p9p go tools that I had hacked on[0] but there seemed to be quite a few little differences to the environment that p9p gives vs what native plan9 gives you in practice. In particular I recall p9p devdraw always had the window top left corner be (0,0), which caused quite a few assumptions in duit. Also some issues on how to treat special characters like tab literals in text display. I could be remembering wrong, it has been a while since I tinkered with it. [0] https://github.com/majiru/go
[-- Attachment #1: Type: text/plain, Size: 270 bytes --] On your last question, any thing that file(1) returns as a `* plan 9 executable` should run as long as the arch is compatable with your kernel. Go (and plan9's linker) ouputs staticly linked executable's so it should be able to run on any plan9/9front machine. - Fulton [-- Attachment #2: Type: message/rfc822, Size: 3627 bytes --] From: Bogunix M <bogunix@gmail.com> To: 9front@9front.org Subject: [9front] Greetings! (and few questions) Date: Wed, 9 Dec 2020 22:43:34 -0800 Message-ID: <CAL7Qv_NifU7Nzh9oOK=DtFr2nZm-tEUnnuE1xcvhf8bQjzRteg@mail.gmail.com> Good day! I read the <9front dash1 manual> and fully understood the point <0.1.3 - Plan 9 is not for you>. Still, I was wondering if you could help me with a little advice(s). In particular, while playing with 9front I found myself looking for a two-panel file manager and went on a quest to write one in Go. Now, after having something breathing [1] and achieving cross-compilation with Plan9, I discovered that this is not enough. Current show-stopper is lack of Plan9 support by the underlying library TCELL [2]. Issue is described in some details in [3] and [4]: "...plan9 does not use escape sequences at all, nor does it use ttys. It appears you need to interact directly with libdraw and with the events subsystem..." I am wondering if someone would be interested to contribute time to explain the scope and potentially sketch the solution? Another related question is whether Plan9, 64-bit binaries, compiled by Go will work in 9front? The same question is currently unanswered on Stackoverflow [5]. Sincerely, Bogunix [1] https://github.com/mushkevych/9ofm [2] https://github.com/gdamore/tcell/ [3] https://github.com/gdamore/tcell/issues/402 [4] https://github.com/gdamore/tcell/issues/90 [5] https://stackoverflow.com/questions/65194285
For anyone interested in duit, I forked it a while back to get it working on 9front: https://github.com/knusbaum/duit I don't remember what all changes I made, but IIRC they weren't too major. > I recall p9p devdraw always had the window top left corner be (0,0), which caused quite a few assumptions in duit That was one thing I "fixed". I ended up having an IRC client and some other small programs working with it. Libdraw is also usable with Go if you care to draw with primitives. On Thu, Dec 10, 2020 at 10:45 AM <fulton@fulton.software> wrote: > > On your last question, any thing that file(1) returns as a `* plan 9 executable` should run as long as the arch is compatable with your kernel. Go (and plan9's linker) ouputs staticly linked executable's so it should be able to run on any plan9/9front machine. > > - Fulton > > > ---------- Forwarded message ---------- > From: Bogunix M <bogunix@gmail.com> > To: 9front@9front.org > Cc: > Bcc: > Date: Wed, 9 Dec 2020 22:43:34 -0800 > Subject: [9front] Greetings! (and few questions) > Good day! > > I read the <9front dash1 manual> and fully understood the point <0.1.3 > - Plan 9 is not for you>. > > Still, I was wondering if you could help me with a little advice(s). > In particular, while playing with 9front I found myself looking for a > two-panel file manager and went on a quest to write one in Go. > > Now, after having something breathing [1] and achieving > cross-compilation with Plan9, I discovered that this is not enough. > Current show-stopper is lack of Plan9 support by the underlying > library TCELL [2]. Issue is described in some details in [3] and [4]: > > "...plan9 does not use escape sequences at all, nor does it use ttys. > It appears you need to interact directly with libdraw and with the > events subsystem..." > > I am wondering if someone would be interested to contribute time to > explain the scope and potentially sketch the solution? > > Another related question is whether Plan9, 64-bit binaries, compiled > by Go will work in 9front? The same question is currently unanswered > on Stackoverflow [5]. > > Sincerely, > Bogunix > > [1] https://github.com/mushkevych/9ofm > [2] https://github.com/gdamore/tcell/ > [3] https://github.com/gdamore/tcell/issues/402 > [4] https://github.com/gdamore/tcell/issues/90 > [5] https://stackoverflow.com/questions/65194285
Quoth Jacob Moody <moody@mail.posixcafe.org>:
> On 12/10/20 8:18 AM, telephil9@gmail.com wrote:
>
> >
>
> > If you want to write a graphical program in GO that works on plan9
>
> > then you could take a look at duit (https://github.com/mjl-/duit).
>
> >
>
> I was never able to get duit to work completely on 9front, I had some
> success with a forked version of the p9p go tools that I had hacked
> on[0] but there seemed to be quite a few little differences to the
> environment that p9p gives vs what native plan9 gives you in practice.
> In particular I recall p9p devdraw always had the window top left corner
> be (0,0), which caused quite a few assumptions in duit. Also some issues
> on how to treat special characters like tab literals in text display. I
> could be remembering wrong, it has been a while since I tinkered with it.
>
> [0] https://github.com/majiru/go
Glad to hear about this. I've been missing acmego since moving to
9front and was planning to start hacking on the p9p Go tools. I'll
just start with this and send PR's your way if I find any issues.
Thank you for your replies. I have updated the Stackoverflow question that Go compilation will work in 9front. Later this month I will look into the `duit` and `Libdraw`, though my preference is to make the `tcell` work in Plan9, given the amount of tools written in it (such as the Micro text editor [1]) Sincerely, Bogunix [1] https://github.com/zyedidia/micro/ On Fri, Dec 11, 2020 at 11:39 AM Daniel Moch <daniel@danielmoch.com> wrote: > > Quoth Jacob Moody <moody@mail.posixcafe.org>: > > On 12/10/20 8:18 AM, telephil9@gmail.com wrote: > > > > > > > > > > If you want to write a graphical program in GO that works on plan9 > > > > > then you could take a look at duit (https://github.com/mjl-/duit). > > > > > > > > > I was never able to get duit to work completely on 9front, I had some > > success with a forked version of the p9p go tools that I had hacked > > on[0] but there seemed to be quite a few little differences to the > > environment that p9p gives vs what native plan9 gives you in practice. > > In particular I recall p9p devdraw always had the window top left corner > > be (0,0), which caused quite a few assumptions in duit. Also some issues > > on how to treat special characters like tab literals in text display. I > > could be remembering wrong, it has been a while since I tinkered with it. > > > > [0] https://github.com/majiru/go > > Glad to hear about this. I've been missing acmego since moving to > 9front and was planning to start hacking on the p9p Go tools. I'll > just start with this and send PR's your way if I find any issues.
On Sat, Dec 12, 2020 at 11:09:32PM -0800, Bogunix M wrote:
> Thank you for your replies.
> I have updated the Stackoverflow question that Go compilation will
> work in 9front.
>
> Later this month I will look into the `duit` and `Libdraw`, though my
> preference is to make the `tcell` work in Plan9, given the amount of
> tools written in it (such as the Micro text editor [1])
There are lots of operating systems that already run all that stuff.
Why are you bothering with Plan 9 if you're just going to drag Unix in
with you?
khm