Hi everybody. I am having some fun with 9front lately, just looking at what it does in a VM and trying to wrap my head around concepts. Besides trying out the native stuff, I have started a personal project to get Tcl to run. This is uncovering bugs in Tcl as well as in 9front's APE library. Are you interested in patches for APE? I notice that voices on the net discourage porting packages to Plan 9 and that "This UNIX compatibility [meaning APE] is old and quite unmaintained" (https://pspodcasting.net/dan/blog/2019/plan9_desktop.html). Let me know, and I can provide patches to individual problems when I have them. so long, benny
Quoth Benjamin Riefenstahl: >Besides trying out the native stuff, I have started a personal project >to get Tcl to run. Isn’t there a Tcl port in fgb’s contrib? (That means you do `9fs 9pio` (read /rc/bin/9fs) and look at /n/9pio/contrib/fgb/root/sys/src/^(lib cmd)/^tcl.) (Also, why?) >This is uncovering bugs in Tcl as well as in >9front's APE library. Are you interested in patches for APE? APE was not yet thrown out of 9front. Generally bugfixes are good. >I notice >that voices on the net discourage porting packages to Plan 9 and that >"This UNIX compatibility [meaning APE] is old and quite unmaintained" >(https://pspodcasting.net/dan/blog/2019/plan9_desktop.html). Yep, APE is old and quite unmaintained. I recommend looking at https://git.sr.ht/~ft/npe . -- Humm
Quoth Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>: > Hi everybody. > > I am having some fun with 9front lately, just looking at what it does in > a VM and trying to wrap my head around concepts. > > Besides trying out the native stuff, I have started a personal project > to get Tcl to run. This is uncovering bugs in Tcl as well as in > 9front's APE library. Are you interested in patches for APE? I notice > that voices on the net discourage porting packages to Plan 9 and that > "This UNIX compatibility [meaning APE] is old and quite unmaintained" > (https://pspodcasting.net/dan/blog/2019/plan9_desktop.html). > > Let me know, and I can provide patches to individual problems when I > have them. > > so long, benny > Hi, you might be interested in fgb's Tcl port: https://9p.io/sources/contrib/fgb/root/sys/src/cmd/tcl/ That being said, I think that patches are always welcome. Cheers, Tobias Heinicke
Quoth Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>:
> Hi everybody.
>
> I am having some fun with 9front lately, just looking at what it does in
> a VM and trying to wrap my head around concepts.
>
> Besides trying out the native stuff, I have started a personal project
> to get Tcl to run. This is uncovering bugs in Tcl as well as in
> 9front's APE library. Are you interested in patches for APE? I notice
> that voices on the net discourage porting packages to Plan 9 and that
> "This UNIX compatibility [meaning APE] is old and quite unmaintained"
> (https://pspodcasting.net/dan/blog/2019/plan9_desktop.html).
>
> Let me know, and I can provide patches to individual problems when I
> have them.
It's old and not particularly loved, but it's only
unmaintained if nobody sends patches to maintain it.
On Thu Dec 30 21:26:13 +0200 2021, b.riefenstahl@turtle-trading.net wrote: > Besides trying out the native stuff, I have started a personal project > to get Tcl to run. This is uncovering bugs in Tcl as well as in > 9front's APE library. [...] You might also be interested in this: https://github.com/opless/jimsh9. Cheers, qwx
Hi Humm, > Quoth Benjamin Riefenstahl: >>Besides trying out the native stuff, I have started a personal project >>to get Tcl to run. Humm writes: > Isn’t there a Tcl port in fgb’s contrib? (That means you do `9fs > 9pio` (read /rc/bin/9fs) and look at > /n/9pio/contrib/fgb/root/sys/src/^(lib cmd)/^tcl.) Right, that is the basis of what I am doing. First there was a problem with the 64 bit version (seems fgb worked on 32 bit at the time), that was a Tcl problem. Than I moved it to a recent version of Tcl and now I am trying to get through the Tcl test suite. And as I said, that turns up some limitations. > (Also, why?) For fun, to learn about Plan 9 and to give back a bit to my favorite programming language. > APE was not yet thrown out of 9front. Generally bugfixes are good. Ok, thanks. > Yep, APE is old and quite unmaintained. I recommend looking at > https://git.sr.ht/~ft/npe . Thinks for that pointer, I have just seen that, too. It looks quite limited, though, even compared to APE. Thanks, benny
Hi qwx,
qwx writes:
> You might also be interested in this: https://github.com/opless/jimsh9.
I had heard about Jim before, but I did not know that it builds on Plan
9. Interesting, thanks.
so long, benny
I created a new user on another system. Its running hjfs I noticed permission had sys? cpu% ls -l d-rwxrwxr-x M 184 glenda glenda 0 Feb 26 14:46 glenda d-rwxrwxr-x M 184 www sys 0 Feb 26 16:08 www This does not seem right?
> I created a new user on another system. Its running hjfs
>
> I noticed permission had sys?
>
> cpu% ls -l
> d-rwxrwxr-x M 184 glenda glenda 0 Feb 26 14:46 glenda
> d-rwxrwxr-x M 184 www sys 0 Feb 26 16:08 www
>
> This does not seem right?
This is a bug in hjfs that has been uncovered by changeset
e1907b41d32441e79e8cc3db26afc5f0c4cdcef9. New directories *are*
supposed to inherit their group from the parent directory. However,
this is not what we want when creating home directories for new users.
I think the following ought to fix it. Can you give this a try?
diff facb0e757ac63f763bd942a2714f979538b99eb0 uncommitted
--- a/sys/src/cmd/hjfs/auth.c
+++ b/sys/src/cmd/hjfs/auth.c
@@ -366,13 +366,18 @@
createuserdir(Fs *fs, char *name, short uid)
{
Chan *ch;
+ Dir di;
ch = chanattach(fs, CHFNOPERM);
if(ch == nil)
return;
ch->uid = uid;
- if(chanwalk(ch, "usr") > 0)
+ if(chanwalk(ch, "usr") > 0){
chancreat(ch, name, DMDIR | 0775, OREAD);
+ nulldir(&di);
+ di.gid = name;
+ chanwstat(ch, &di);
+ }
chanclunk(ch);
}
> I think the following ought to fix it. Can you give this a try?
After backing up your data, of course. This is the filesystem code
you're messing about with after all.
Sorry. I felt something was wrong and purged it then did install with cwfs.
I didn't have any data on it. It was a new install
Thanks!
Quoth Alex Musolino <alex@musolino.id.au>:
> > I created a new user on another system. Its running hjfs
> >
> > I noticed permission had sys?
> >
> > cpu% ls -l
> > d-rwxrwxr-x M 184 glenda glenda 0 Feb 26 14:46 glenda
> > d-rwxrwxr-x M 184 www sys 0 Feb 26 16:08 www
> >
> > This does not seem right?
>
> This is a bug in hjfs that has been uncovered by changeset
> e1907b41d32441e79e8cc3db26afc5f0c4cdcef9. New directories *are*
> supposed to inherit their group from the parent directory. However,
> this is not what we want when creating home directories for new users.
>
> I think the following ought to fix it. Can you give this a try?
>
> diff facb0e757ac63f763bd942a2714f979538b99eb0 uncommitted
> --- a/sys/src/cmd/hjfs/auth.c
> +++ b/sys/src/cmd/hjfs/auth.c
> @@ -366,13 +366,18 @@
> createuserdir(Fs *fs, char *name, short uid)
> {
> Chan *ch;
> + Dir di;
>
> ch = chanattach(fs, CHFNOPERM);
> if(ch == nil)
> return;
> ch->uid = uid;
> - if(chanwalk(ch, "usr") > 0)
> + if(chanwalk(ch, "usr") > 0){
> chancreat(ch, name, DMDIR | 0775, OREAD);
> + nulldir(&di);
> + di.gid = name;
> + chanwstat(ch, &di);
> + }
> chanclunk(ch);
> }
>
>
> This is a bug in hjfs that has been uncovered by changeset
> e1907b41d32441e79e8cc3db26afc5f0c4cdcef9. New directories *are*
> supposed to inherit their group from the parent directory. However,
> this is not what we want when creating home directories for new users.
>
> I think the following ought to fix it. Can you give this a try?
I got around to trying this out on a spare machine/disk tonight.
Worked for me. Committed.
Quoth Alex Musolino <alex@musolino.id.au>:
> > This is a bug in hjfs that has been uncovered by changeset
> > e1907b41d32441e79e8cc3db26afc5f0c4cdcef9. New directories *are*
> > supposed to inherit their group from the parent directory. However,
> > this is not what we want when creating home directories for new users.
> >
> > I think the following ought to fix it. Can you give this a try?
>
> I got around to trying this out on a spare machine/disk tonight.
> Worked for me. Committed.
>
is it worth using hjfs vs cjfs. Not sure of the trade off after I switched?
> is it worth using hjfs vs cjfs. Not sure of the trade off after I
> switched?
The main benefit of hjfs(4) would seem to me to be its ability to work
with small disks. Running cwfs(4) on a 10GB VPS is a non-starter. I
think you can run cwfs(4) in a cache-only mode in such a situation,
but then you lose the dump. With hjfs(4) you can have it both ways.
cwfs has 16k blocks.
hjfs has 4k blocks.
this makes a huge difference if you have a large number of small files.
sl
> On Mar 9, 2022, at 11:16 PM, Alex Musolino <alex@musolino.id.au> wrote:
>
>
>>
>> is it worth using hjfs vs cjfs. Not sure of the trade off after I
>> switched?
>
> The main benefit of hjfs(4) would seem to me to be its ability to work
> with small disks. Running cwfs(4) on a 10GB VPS is a non-starter. I
> think you can run cwfs(4) in a cache-only mode in such a situation,
> but then you lose the dump. With hjfs(4) you can have it both ways.
>
>