• Support
  • User list missing in Gnome after messing about with shell

I was trying to change my shell to Fish but got an error saying something like 'not allowed for the user'. For whatever reason (probably something I did) my user then dissapeared from Gnome Users. My account is still there because I can log in, but I have to enter the username in GDM now as it's not showing by default.

How can I restore my account so that it's visible again in GDM/Gnome settings?

Cheers!

kyrios It's by following those instructions that things got messed up. Those instructions didn't work and gave me the 'not allowed...' error. I don't know why though. I've used chsh plenty of times and never had an issue like that. I set my shell to Fish in Manjaro earlier and that worked fine.

Install the package and set fish as default

sudo eopkg install fish
sudo chsh -s /bin/fish

Check the content of /etc/shells, if it is not correct execute

echo "/usr/bin/fish" | sudo tee -a /etc/shells

Where exactly did you get the error and what what the message because your feedback is really approximative and it is hard to help with statement "at a time I go an error that was saying something like..."

    kyrios
    I got the error on executing sudo chsh -s /bin/fish
    The shell remained at bash after that, even though Fish was shown in the shells

      ycooreman Well this is because the shell is loaded when the terminal is open. Did you try to launch another terminal instance to see if fish was loaded instead of bash ?

        I suspect there might be a slight error in the documentation here. For me, the fish binary is located at /usr/bin/fish, while some other shells (like bash) are located at /bin/<shell>. Even the doc itself seems to acknowledge (a bit further down in the article) the path where I found fish:

        For Fish: echo "/usr/bin/fish" | sudo tee -a /etc/shells

        Maybe the doc should be updated for fish?

          kyrios I did. It was always using bash. It made me wonder if something was wrong with the Fish install, which could have been why I got the error in the first place. I reverted to a previous snapshot (I have daily snapshots). I'm curious to try again but slightly reluctant as well 🙂 I don't understand why any of those commands would remove my user from Gnome settings/GDM though

          nathanpainchaud I actually figured that one out before running the command. I always check where it's installed before attempting to change any paths/configs/settings

          Does anyone have FISH working as their default shell in Budgie?

          I followed the instructions from the Documentation, as well as the above thread, but no matter what, when I login and use the Terminal, I'm back in BASH instead.

          What am I missing?

            I have als interactive shell only.
            From Arch wiki "Setting fish as interactive shell only

            Not setting fish as system wide or user default allows the current Bash scripts to run on startup. It ensures the current user's environment variables are unchanged and are exported to fish which then runs as a Bash child. Below are several ways of running fish in interactive mode without setting it as the default shell. "

            Modify .bashrc to drop into fish

            "Keep the default shell as Bash and simply add the line exec fish to the appropriate Bash#Configuration files, such as .bashrc. This will allow Bash to properly source /etc/profile and all files in /etc/profile.d. Because fish replaces the Bash process, exiting fish will also exit the terminal. Compared to the following options, this is the most universal solution, since it works both on a local machine and on a SSH server"

            add line in home file .bashrc

            exec fish

            Saijin_Naib To add on to what @kuki said, I know first hand how much of a fool's errand it is to try to set fish as the default shell on a server (running Ubuntu). Because of admins configuring the various scripts that run on a terminal startup and the user accounts being for networks instead of on the specific machine, it was not worthwhile to try and use chsh.

            However, I can confirm that, locally, I have no problem configuring fish as the default shell on my own machine running Solus Budgie. Have you looked at my warning that the doc might not point to the correct path for the fish executable? Because otherwise I don't know what might be the problem.

            P.S. I also assume you logged out and logged back in. Because from what I remember, changing shell requires you to log out and back in to take effect.

              nathanpainchaud yep, noted/followed the instructions including pointing csh at the right location in usr/bin, logged in/out, rebooted, etc. Never changed anything. I'm going to try @kuki 's method now.
              EDIT:
              @kuki 's method did the trick. I get put into FISH when I open Gnome Terminal.