My command line gives zshell output but I don't know why

I guess if the user never made any changes to the system files … then it wouldnt trigger a pacnew or anything. and if no local config then no override … ok that makes sense.

Well, that’s because of how Konsole profiles work. It’s meant to increase flexibility.

What I personally disapprove of is that zsh would be the default shell now ─ and Manjaro certainly isn’t the only distribution to be doing that ─ solely because the newbies like the slick zsh themes. And it really is the only reason, because for system initialization, the system still uses good old bash.

As a shell, zsh is not POSIX-compatible ─ it explicitly says so on the developers’ website ─ although it is roughly Bourne-compatible. But the newbies don’t even know POSIX, or for that matter, the Bourne shell. They know nothing about shell scripting, and they rarely use the command line.

Therefore, the choice for zsh is essentially just a matter of choosing cosmetics over actually usable functionality ─ not that zsh wouldn’t be functional, but to the newbies, all of that functionality is basically irrelevant, given that they’re not even familiar with UNIX.

2 Likes

May I just take the mention of functionality as an excuse to draw residual attention to my side quest of this thread (it started this one though, and it’s the main quest here - clicking through is much appreciated!):

Still not sure whether it’s zsh or bash processing my command, because of the above output of echo $SHELL being /bin/bash

About reasons for Manjaro’s choice of zsh as default:

Is that a known fact e.g. from telemetry (which I’m not opposed to btw), or from posts you see arounf the forum, or…?

brscan-skey is neither a bash command nor a zsh command. It’s a binary executable, and either shell will simply tell the kernel to load it into memory and execute it within the shell’s environment.

It is my experience from exclusively running GNU/Linux on my own systems for well over two decades, and spending roughly the same amount of time at helping out newbies, not just here at the forum, but also at other forums, as well as in the various discussion groups on Usenet.

1 Like

I didn’t realize there’s a difference (shell commands are not binary executables?)

No, they are not. There is a set of POSIX utilities in binary form, but the shell also has a number of internal, built-in commands ─ sometimes with the same name as an external utility, but then the internal command takes precedence over the external one.

1 Like

I just had a look at the .rpm package that is used to install brscan-skey.

It is indeed a shell script which starts the actual executable.
But it is located in
/opt/brother/scanner/brscan-skey/brscan-skey
which is probably not in your $PATH - so it will not be found
when you just issue the name brscan-skey

You likely could start it by giving the full path to it - like seen above.

btw - re the birth of your system:
if you use
LANG=C stat / | grep -i birth
it will work regardless of the default language (german in your case)

prepend LANG=C to any command when posting output here
… helpful (for potential helpers) when the output of commands is posted here
so that the messages are not in the native language and are understandable to everyone

4 Likes

If you want to find out whether Bash would run that command, in your terminal type in bash and then hit enter. It will put you into bash and then you can run the command and see if that is the problem.

The profile is set in /etc/xdg, yes. I didn’t realize most people just use default profile and it is changed now.

The problem is that previous default profile was located in /etc/skel and thus was being created per-user and editable. But the config that selects this default profile was in /etc/xdg. The new profile is not editable and system-wide as it should be. But changing /etc/xdg config lead to change it for people who were using old default profile and just edited it (as it was editable).

It won’t be, because the file brscan-skey is itself a shell script and will thus be run in a subshell ─ most likely bash, but that’s irrelevant ─ which in turn calls the binary executable.


The days when GNU/Linux users were seasoned UNIX veterans and/or people interested in operating system technology are already long behind us, my friend. :wink:

In this day and age, computers have become mere consumer-grade appliances anymore, just like smartphones, smart TVs and microwave ovens.

Microsoft and Apple have both turned technical ignorance into a virtue. Not that I’m advocating that everyone using GNU/Linux should be a computer scientist, but you know what I mean. :wink:

Or perhaps otherwise put, the GNU/Linux users of two decades ago were mostly Formula One racing drivers. Today’s GNU/Linux users are Forza players thinking they’re in an actual Grand Prix. :stuck_out_tongue:

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.