-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fish instead of zsh? #56
Comments
Hi @gabescarbrough thanks for your thoughts. I had ran a survey: https://twitter.com/probonopd/status/1329129763357724673
As someone correctly commented, many in the helloSystem target audience won't ever use a shell, and those who do can probably easily install another one from pkg. |
I guess it depends on how you want it to behave. I find fish's defaults approachable out of the box for interactive use. Sure, it's not POSIX compatible but if I wanted to write a shell script I was expecting to share I would use I do agree most users in the target audience don't use the shell but I also think part of the reason why is because it feels unapproachable as they are trying bash which lacks the level of autocomplete, suggestions, color coding, etc. that fish has out of the box. Thoughts on better defaults for zsh? Such as some of the plugins |
When I experimented with fish I hit backspace and it deleted whole words. Is this how it is intended to be? I am open to experimentation, as long as it doesn't totally break existing habits of someone coming from (unfortunately?) a bash dominated world. |
I've never experiences that particular issue. I just installed fish on hello and got the normal "delete one character" backspace behavior. |
Hi! I’d like to give a bit more insight regrading shells from the FreeBSD project point of view. Currently, FreeBSD ships two shells, sh(1) and tcsh(1). sh is meant to be a scripting shell, however, it has grown various features over the years to make it a bit more friendly for interactive sessions. tcsh on the other hand is the current interactive shell. The idea of importing a new shell into the FreeBSD base pops up on project’s mailing lists regularly (at least once a year I’d say, usually leading to excessive bikeshedding). Although the community generally agrees that it would be nice to have an interactive shell with Bourne-shell-compatible syntax in base (like Bash, Zsh, or mksh), there is no clear consensus on which shell to import (or even whether to do it at all). Especially, when 1. user’s favorite shell is usually just one Personally, I have no preferences whether helloSystem is going to set the default a shell to something else than sh or tcsh. However, I would like to encourage you to give a heads-up to the FreeBSD community if you decide to go for a non-standard shell. It may end up being an important voice in the discussion on a new shell in the base system. Cheers & good luck with helloSystem 👍 |
Hello @0mp and thanks for chiming in.
As for the interactive shell, since helloSystem wants to be "welcoming to switchers from the Mac" and the Mac uses |
Makes perfect sense.
I think that Zsh is perfectly fine. I'll mention helloSystem next time we'll have a discussion about a new shell in the base system. Cheers! |
I understand the appeal of fish, however after being with FreeBSD-CURRENT for so long: I find it slightly weird when (for example) I occasionally dip into NomadBSD or GhostBSD. I know, I can search the Internet to remind myself how to change my default shell, but I never remember such things. I was a Mac user for more than two decades, command line familiarity made it reasonably easy for me to switch (from Mavericks) … I wasn't sure what I used in Mavericks but re: https://en.wikipedia.org/wiki/Z_shell I assume that it was bash. Also re: the Wikipedia page, I wasn't aware of Catalina adopting the Z shell. A fair proportion of Mac users should enjoy finding the same default in helloSystem. I'll install zsh this morning, remind myself what it's like. |
Oh, that's interesting. Thanks. From something that I recently read (in the TrueNAS area?) plus the absence of an ETA (speed reading the foot of https://wiki.freebsd.org/PkgBase) I imagined that interest had waned/stalled. Interesting but OT; I'll be in IRC, for anyone who'd like to discuss. |
What I am missing is a clear description of its advantages. E.g., "Reduce the size of the base system by up to 50%". So far, what I really like about FreeBSD is that it gives you a set of tools that you can assume to be "just there" on every system, and I fear that a packaged base system might water this advantage down? |
Control-R in Four keystrokes later: |
chiming in as the creator of https://alpha.pkgbase.live/ i think the main advantage of PkgBase is the speed of which updates can be installed on a system. since helloSystem is for now primarily a live ISO that's of no concern — to the user. and since it's probably built from the latest patch version of whatever stable and/or current enough to serve the purpose of a desktop system, without causing too much hassle to the helloSystem developers, there's no big wins for this group either aaaaand, finally, it's not really like space is an issue these days. i do indeed like PkgBase for the space compactness and the speed of updates, however, for now i primarily use it to build jails |
Thanks for the explanation @igalic, makes sense to me. |
Home and End keys don't work in |
Neither does the Delete key which I find most annoying. Oh well, Backspace is not working there for me either. Printing |
this sounds like an issue with the terminal (configuration) |
What exactly do you mean with "the terminal" @igalic? I tried both xterm and QTerminal. Same result. |
most terminal emulators interpret backspace, home and end and delete, like the actual terminals from (ca) 63 years ago that's why most terminal emulators have special keyboard configurations for emulating compatibility with something: vt100, xterm, Solaris, or any other thing in between |
So, "accumulated technical debt".
Need to test if this also happens when booting with |
For reference I was mistaken in my belief that Confirmed after booting from the FreeBSD-provided
|
fish isn't much more suitable in that case quoting from https://github.com/fish-shell/fish-shell/blob/master/COPYING
note that freebsd itself still contains some GPL code. for instance, until recently, the default grep was still GNU: |
For now we have settled with If someone can make a strong case that we should switch to the FreeBSD default as described by @grahamperrin directly above, we may consider it for newly created user accounts. |
I'm curious why zsh was chosen as the default shell. Since tcsh is the default for FreeBSD it seems like it was a conscious choice. I was able to track down the commit where you switched from bash but there wasn't any info why in the commit message.
While I really like zsh - it is actually the main shell I use at work - I've grown fond of fish due to how much it gives you out of the box without something like ohmyzsh. When Apple switched their default shell to zsh I couldn't help thinking that fish feels a lot more like "it just works."
If there is an attachment to zsh, for instance to keep more compatible with bash/sh, thoughts on providing better defaults? Features like autocomplete, color coding, etc. are pretty nice and make the terminal feel more approachable.
The text was updated successfully, but these errors were encountered: