-
-
Notifications
You must be signed in to change notification settings - Fork 312
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fish shell slow startup #2228
Comments
What method did you use to install fish? Are you using the default terminal emulator (Ptyxis) or a different one? I ran into a similar issue with Starship when I installed it with distrobox, but the fix for me was installing it with homebrew instead of using distrobox. |
Fish is preinstalled, I didn't need to install it I'm using Ptyxis, enabled "Use Custom Command" and set the custom command to |
How long does it take for you to load fish just using the fish command? When I test it on my system, it takes less than a second to load. Whenever I was running into issues with starship, it would take like 3-5 seconds, which is what I consider to be "slow," but my methods of installing starship were different from that of a traditional distro. Yes, running For perspective, here are my system specs: Edit: After digging through some of the files in the repository, it does appear bazzite is running a custom config that adds some functionality for containerization and brew. Learning this however, I don't know how much more optimization the bazzite team can do if all they're adding are two functions that do help the user experience in an atomic distro. If the "slowness" is more than 1 second, that might be a cause for concern. Otherwise, there might not be much that can be done to improve the load times without cutting out features that are core to the project as a whole. |
On my system it also takes less than a second, but it still is slightly annoying to me for two reasons First, I've been using Bazzite for a few months now but only recently switched to fish. After I did, every time I open the terminal, I can't help but notice how slow it is compared to bash Second, sometimes I wanna do something quickly but it doesn't work because fish isn't initialised yet. For example, if I know I have a command in my history that I just wanna grab and execute, I quickly enter Meta+T (open terminal), Ctrl+R (search history), and type the search term. But as fish wasn't initialised, Ctrl+R didn't do anything, so I have to do that again I know these problems are very minor, but they exist and I'd love if this was fixed lol I installed fish in an Ubuntu distrobox ( There's also a user on the ublue forums reporting that fish on Bazzite is a lot slower than on Bluefin So it seems to be because of Bazzite's fish config If you look at the I am not familiar enough with Homebrew or fish to understand what it's doing. But maybe it's not that important and can be removed (if it is, it obviously stays), or can be improved/optimized somehow |
It doesn't appear that Its help page states that it "Control[s] whether Homebrew automatically links external tap shell completion files." It should only need to be run once if not enabled already. Here's the config file that runs the command: /usr/share/fish/vendor_conf.d/brew.fish
Note line 7:
This doesn't seem right. The apparent purpose of this condition is to prevent the command running when completions are already linked. It returns false if a symbolic link with the name
I'm pretty sure this condition is meant to target Using
This prevents the command from running unnecessarily and reduces startup time to near-instant. |
Great find! Thanks for looking into it and submitting a PR 😃 |
Describe the bug
Starting the fish shell, e.g. by typing
fish
, is pretty slow.fish --no-config
is instant.What did you expect to happen?
I expect the startup time to be almost instant.
Output of
rpm-ostree status
Hardware
CPU: AMD Ryzen 7 7800X3D
SSD: Corsair MP600 PRO XT
Extra information or context
Using
fish --profile-startup /tmp/startup.txt
generated the following file:startup.txt
The text was updated successfully, but these errors were encountered: