Brew not found in default terminal due to shell PATH issue
kind/bugarea/brew
### Describe the bug
Note the issue of "missing homebrew installation" was reported [here](https://github.com/ublue-os/bluefin/issues/4848). That one got closed a little bit premature..
Verified with Dosu: After a clean install using the image, and updating to stable 20260714, `brew` command isn't available in Gnome terminal. The executable exists:
```
❯ ls -la /var/home/linuxbrew/.linuxbrew/bin/brew
lrwxrwxrwx. 1 zilexa zilexa 20 Jul 15 15:25 /var/home/linuxbrew/.linuxbrew/bin/brew -> ../Homebrew/bin/brew
```
Also it IS set up in `zshrc` as part of the image. Just not in PATH for Ptyxis (Terminal in Gnome), perhaps because there is no zshrc equivalent for bash?:
```
❯ brew --version
bash: brew: command not found
```
See "Extra info" for the conclusions from Dosu.
### What did you expect to happen?
I expect `brew --version` to work on Bluefin out-of-the-box.
Dosu confirmed the PATH issue. Since brew is working, but returning `command not found`, unless:
❯ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
~
❯ brew --version
Homebrew 6.0.11
Note, the feedback [here said that `bluefin-cli` is for "new bluefins only"](https://github.com/ublue-os/bluefin/issues/4848#issuecomment-4994684444), but this page actually starts by [suggesting this command](https://docs.projectbluefin.io/command-line/#bluefin-cli). so I wasn't sure how to interpret that feedback.. Additionally, quoting that same page:
> Bluefin ships [Ptyxis] as the default terminal. It shows up as Terminal in the menu. It is strongly recommended that you change your shell via the terminal emulator instead of system-wide. First install the shell you want with brew install zsh or brew install fish.
But this is not possible in Ptyxis, since you cannot run `brew` yet due to the PATH issue. Also see extra info below.
### Output of `bootc status`
```shell
❯ sudo bootc status
Staged image: ghcr.io/ublue-os/bluefin:stable
Digest: sha256:647bb3602a6b250d10d0142a5d5ff8937557ba1d5dfbcdcc478db68f4388b4e7 (amd64)
Version: 44.20260721 (2026-07-21T01:51:27Z)
● Booted image: ghcr.io/ublue-os/bluefin:stable
Digest: sha256:7dad244ef875a869115ea2760b0bc7fd3c6ffcc268d3d9b99d655171cae167b8 (amd64)
Version: 44.20260714 (2026-07-14T01:55:19Z)
UpdateVersion: 44.20260721 (2026-07-21T01:51:27Z)
UpdateDigest: sha256:647bb3602a6b250d10d0142a5d5ff8937557ba1d5dfbcdcc478db68f4388b4e7
Rollback image: ghcr.io/ublue-os/bluefin:stable
Digest: sha256:a35b37cbd5104d1030e9328719f22546858e92b3294cc78b47ffecced826761e (amd64)
Version: 44.20260511.1 (2026-05-11T18:08:47Z)
```
### Output of `groups`
```shell
❯ groups
zilexa wheel
```
### Extra information or context
I figured this out via DOSU, after my earlier report got closed and no reply followed..
After figuring it out, asked Dosu to look into Bluefin and figure out what is causing this and what a possible solution could look like:
> this does look like a bug, or at least a configuration gap.
> Bluefin stable ships with Ptyxis as the default terminal [[1]](https://app.dosu.dev/e3630b91-3a35-46b9-a8d3-b0c1b3ef6331/documents/cb142f50-0d9d-4a37-9e5c-73b37b974a55) and bash as the default shell. Zsh and fish are opt-in alternatives you can switch to via ujust bluefin-cli [[2]](https://app.dosu.dev/e3630b91-3a35-46b9-a8d3-b0c1b3ef6331/documents/a84e4794-a9c5-4940-99e4-5d9a08bbca2d). So a fresh Bluefin install gives you bash by default.
> The problem is that the system-level Homebrew PATH setup (brew shellenv) is configured in /etc/zsh/zshrc for zsh [[3]](https://github.com/projectbluefin/common/blob/fe7d92f49983ae29cc97cc121af8b7856d1cf2bd/system_files/bluefin/etc/zsh/zshrc), but there's no equivalent system-level configuration for bash. That means every default Bluefin user would hit this — brew is installed but not in their PATH out of the box.
> I'd suggest filing this as a bug on [projectbluefin/common](https://github.com/projectbluefin/common/issues), since that's where the shell configuration lives. The fix would likely be adding a brew shellenv eval to a bash profile script (e.g., /etc/profile.d/ or /etc/bashrc.d/).
> In the meantime, adding eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" to your ~/.bashrc will get you going.
6 条评论