๐พ Archived View for bbs.geminispace.org โบ u โบ clseibold โบ 6048 captured on 2023-12-28 at 16:31:50. Gemini links have been rewritten to link to archived content
โฌ ๏ธ Previous capture (2023-11-14)
-=-=-=-=-=-=-
Just found this Nushell. This is very close to what I have been wanting modern shells to be! I'm definitely excited to look more into it.
Oct 09 ยท 3 months ago
๐ drh3xx ยท Oct 09 at 10:34:
So it's like Powershell but good? Fish seems really popular at the moment but its size and the fact it has a webui to customise the shell is a huge turn off. How's this compare on those fronts? Since it uses typed data objects and is cross platform I assume there are custom implementations of most/all Posix commands rather than using the native implementations? If so I think it'd have to be a no from me. Looks interesting though.
๐ clseibold ยท Oct 09 at 11:44:
@drh3xx Seems to take some inspiration from Powershell, but yeah, definitely significantly better than powershell, and less object-oriented. I don't care for its greater focus on functional programming though. I haven't used Fish before, so can't say anything about that.
As for the posix commands, I'm not sure I understand. There are no "official" implementations of posix commands, and almost all implementations that I know of are in fact native, both if they are built into the shell and if they are outside (in which case any shell would have access to them).
The shell is definitely not for those who are religious about Posix. The impression I get is that it tries to *restore* the unix methodology to clis by rejecting some of Posix, because let's just be honest here, POSIX is actually the worst thing to ever exist in the *nix ecosystem.
๐ drh3xx ยท Oct 09 at 13:09:
What I was getting at was for example the ls command they showcase on the linked page. Presumably they provide a binary or (I guess more likely a multitarget binary; similar to how busybox operates) common to nushell which is aware of the data types rather than parsing the output of various systems ls command. ls is probably not the best example. Another would be ps on OpenBSD which shows additional attributes regarding pledge etc. My concern was over potential loss of functionality (and possibly security) over using the OS native implementation. Perhaps I should have been clearer regards what I meant by native; sorry if it caused some confusion.
๐ clseibold ยท Oct 09 at 14:04:
@drh3xx Yes, they must reimplement these tools to be able to produce and work on structured data. I think the only way to see if there's loss of functionality is to see if the tools they provide has all the functionality you need. I doubt most of the tools are less secure than the ones provided by the OS (actually, the shell utils are not part of the core OS, they are part of userspace, but of course userspace programs can be packaged with an OS; so really it'd be GNU's implementation, or whatever other unix utils implementation there is).