I recently received a Steam Deck and I love it!

I also planning to use it for development. On my PC I get used to Fish shell and usually use it instead of Bash. I can install it on Steam Deck and set it to the default shell, but after a system update it will be wiped. I can create a script and run it after each update, will I be able to login if my user points to /usr/bin/fish that doesn’t exist in the system?..

5 points

Dont own a steam deck, but at a guess you might be able to add the terminal lines to change shells to you bashrc, should load it in on first start and then fish will be default from then on.

permalink
report
reply
5 points

Ah, sorry, I realized that fish is already installed by default. Same about zsh. So no additional steps needed, I just changed my default shell for my user and it works.

permalink
report
reply
3 points

I think you can install fish from the discover store, which will persist between updates. You may need to also update its permissions through flatseal so that it has full file system access.

Some other options for packages are to install them through nix or distrobox. There’s also a set of commands for installing a package locally, but I would have to look it up. It involves setting a temporary cache directory, downloading the package there without installing it, and then installing the contents of cache to a folder in user-space.

permalink
report
reply
2 points
*

It’s not on flathub, so it won’t show up in discover.

Generally, it doesn’t have command line programs, just gui ones

permalink
report
parent
reply
1 point

Ok, I knew I had fish installed on my LCD deck which is why I was thinking it was available through discover. I must have installed it through distrobox instead.

permalink
report
parent
reply
2 points
*

Simplest answer would be to launch Fish as the last step in your bash profile.

I imagine the SteamOS update process probably needs the default system shell to be bash, (if they’re changing it with each update) but that won’t stop you from getting the benefits of Fish during your login terminal sessions.

Source: I don’t like bash much, but have encountered other cases where changing the default shell was too invasive. It’s about an 80% solution, and the next 15% is covered well enough by invoking my preferred shell before invoking my script written for my preferred shell.

permalink
report
reply
1 point

you might have to do https://wiki.archlinux.org/title/Command-line_shell#Changing_your_default_shell after every update. Maybe put it in a shell script and make .bashrc execute it, so that it switches your default to fish, after it has been reset to bash. This script could also be used to reinstall fish after the update.

permalink
report
reply

Steam Deck

!steamdeck@sopuli.xyz

Create post

A place to discuss and support all things Steam Deck.

Replacement for r/steamdeck_linux.

As Lemmy doesn’t have flairs yet, you can use these prefixes to indicate what type of post you have made, eg:
[Flair] My post title

The following is a list of suggested flairs:
[Discussion] - General discussion.
[Help] - A request for help or support.
[News] - News about the deck.
[PSA] - Sharing important information.
[Game] - News / info about a game on the deck.
[Update] - An update to a previous post.
[Meta] - Discussion about this community.

Some more Steam Deck specific flairs:
[Boot Screen] - Custom boot screens/videos.
[Selling] - If you are selling your deck.

These are not enforced, but they are encouraged.

Rules:

  • Follow the rules of Sopuli
  • Posts must be related to the Steam Deck in an obvious way.
  • No piracy, there are other communities for that.
  • Discussion of emulators are allowed, but no discussion on how to illegally acquire ROMs.
  • This is a place of civil discussion, no trolling.
  • Have fun.

Link to our Matrix Space

Community stats

  • 2.9K

    Monthly active users

  • 1.1K

    Posts

  • 20K

    Comments