4 ms·
> The default FreeBSD shell is tcsh. I was prepared to not have bash, but tcsh is quite alien in its syntax compared to regular POSIX sh. I decided to ignore it
by MuffinFlavored 7y ago
> The default FreeBSD shell is tcsh. I was prepared to not have bash, but tcsh is quite alien in its syntax compared to regular POSIX sh. I decided to ignore it and just use POSIX sh.
Would FreeBSD consider POSIX sh as their default shell instead of tcsh?
- toast0 7y agoYou can easily change your login shell with chsh. If you install bash first, you can change your shell to bash. It's an inconvenience to change it, but changing the default is a major effort.
- JoshTriplett 7y agoFreeBSD wouldn't select a default shell that uses the GPL, but using a simple POSIX shell as the default would make sense.
- toast0 7y agoPOSIX sh is a sensible default; and the technical work to do it would take less time than we've spent writing these comments. However, actually changing the default, would be a major effort; you'd need to form a consensus that the new default is better than the old default, that it's so much better than the old default that invalidating any documentation that relies on the old default is worth it.
- anthk 7y agoksh is not GPL and it's much better than csh.
- pgib 7y agoNote that if you do this, you should either `pkg install bash-static` or build bash from the ports using STATIC option (I don't _believe_ it's the default, though it really should be). Without that static option, you could potentially break your shell by upgrading related packages.
- pgib 7y agoThough one would generally write a shell script starting with: `#!/bin/sh` So it doesn't really matter what the login shell is. (As a long-time FreeBSD user, the first thing I always do is install a different shell; I'm not sure who actually likes tcsh.)
- bakul 7y agoIt is the default for a new user in FreeBSD. The OP seems to be confusing pfsense (which is based on FreeBSD) with FreeBSD itself.
- Arnavion 7y agoAh, I didn't know the default for new users was different. Everything I did for the dashboard was as the root user (some things the dashboard needs to read are ACLed to root). I'll fix the post.