Я пытаюсь установить рыбу в качестве оболочки по умолчанию. Он установлен в системе через apt-get и указан в /etc/shells:
> which fish
/usr/bin/fish
> grep fish /etc/shells
/usr/bin/fish
Я использовал chsh для переключения с Bash на fish:
> chsh -s /usr/bin/fish
И моя оболочка по умолчанию была изменена в /etc/passwd:
> grep "myusername" /etc/passwd
myusername:x:1000:1000:Oh Spite,,,:/home/myusername:/usr/bin/fish
Awesome. Затем я вышел из системы и перезагрузился. Плагины входа (например, виртуальные TTY и SSH) теперь начинают рыбу.
И все же, когда я запускаю терминал с помощью gnome-terminal или urxvt, запускается сеанс bash. Кроме того, переменная SHELL по-прежнему установлена на /bin/bash.
Интересно, что Terminator действительно использует рыбу в качестве оболочки по умолчанию. Но даже в этом сеансе SHELL установлено значение /bin/bash. Если я запускаю urxvt из Terminator, urxvt запускает сеанс Bash.
Что еще мне нужно сделать, чтобы изменить мою оболочку по умолчанию, чтобы ловить рыбу?
(См. Также этот вопрос, но это не является дубликатом, потому что я выполнил эти инструкции , перезагружает . Много раз.)
Чтобы установить fish в качестве оболочки по умолчанию для gnome-terminal, из gnome-terminal перейдите к:
Edit > Profile Preferences
, затем перейдите на вкладку Title and Command, вы получите:
Измените его как:
Теперь, когда вы начинаете новый экземпляр gnome-terminal, fish будет запущен вместо bash.