ublue-os / bluefin

The next generation Linux workstation, designed for reliability, performance, and sustainability.
https://projectbluefin.io
Apache License 2.0
852 stars 133 forks source link

Ptyxis profiles not working properly? #1376

Open cyscarinci opened 3 weeks ago

cyscarinci commented 3 weeks ago

Describe the bug

On a fresh install of bluefin, trying to add and edit Ptyxis profiles leads to a blank window.

Screenshot from 2024-06-08 20-40-12

Screenshot from 2024-06-08 20-40-39

Screenshot from 2024-06-08 20-40-47

What did you expect to happen?

I expected to be able to edit the new profile.

Output of rpm-ostree status

~ 
❯ rpm-ostree status
State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: no runs since boot
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:gts
                   Digest: sha256:cd2d1d5bc77e8324dcb5049af3ba87c4c040617e5c253a95ae0397e578cebf6c
                  Version: 39.20240607.0 (2024-06-07T17:27:12Z)
          LayeredPackages: gnome-shell-extension-pop-shell kitty

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:gts
                   Digest: sha256:cd2d1d5bc77e8324dcb5049af3ba87c4c040617e5c253a95ae0397e578cebf6c
                  Version: 39.20240607.0 (2024-06-07T17:27:12Z)

Output of groups

~ 
❯ groups 
caco wheel

Extra information or context

No response

cannibalisticcow commented 2 weeks ago

+1 On this issue.

groovemonkey commented 5 days ago

+1. I just get a blank window when I try to edit a profile (including a new one, duplicated one, etc.). I can exit the settings window entirely with ESC at that point.

Is there any way to launch fresh ptyxis instance in debug mode so I can post some helpful logs here? This is 100% reproducible for me.

castrojo commented 5 days ago

Are you all on gts? Trying to nail down the version.

groovemonkey commented 5 days ago

Sorry, unsure of what gts means in this context. I'm using Bluefin-dx -- running 47.alpha as far as I can tell:

echo $PTYXIS_VERSION
47.alpha
castrojo commented 5 days ago

Ok I'm able to reproduce this on bluefin-dx:gts (Which is what you're running). It's fixed in newer versions.

Current Workarounds:

Long winded excuse:

We needed to add patched vte and other libraries to get ptyxis to work in Fedora 39, a flatpak wasn't available at the time. We dropped those patches in Fedora 40 so we're using the distro libraries with all the right fixes. We're waiting for ptyxis to land in Fedora 40 so we can just use the distro package moving forward.

No need to report this issue to upstream, Christian is aware of our past sins and we're working to move to the tested path as soon as we can. 😄

cannibalisticcow commented 5 days ago

I had this problem when running dx Nvidia gets. I only just recently learned about the latest tag and rebased on Friday. The problem is no longer present in that version

groovemonkey commented 5 days ago

@castrojo Thank you; I'm definitely interested in upgrading!

➜  ~ rpm-ostree status
State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: no runs since boot
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:gts
                   Digest: sha256:8e071aab86cc4696dcf94a583123558392f365f87da19948a719af459790668d
                  Version: 39.20240630.0 (2024-06-30T05:58:24Z)
          LayeredPackages: elixir erlang

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:gts
                   Digest: sha256:3770e8a6a5809d0acef1e6527ddef858836ad3d83c73e512bb2cdb872ba824c1
                  Version: 39.20240627.0 (2024-06-27T15:21:25Z)
          LayeredPackages: elixir erlang

P.S. I realize now that adding elixir and erlang in another layer was probably the wrong idea (I've only been trying Bluefin for a few days), and I should just use a distrobox for my development environments instead.

castrojo commented 5 days ago

Do an rpm-ostree reset, that'll remove those, then:

rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:stable will move you to 40.

Then you can either relayer them again or use a container. I'm not familiar with the erlang ecosystem but this seems like a good place to start: https://adoptingerlang.org/docs/production/docker/

cyscarinci commented 4 days ago

Rebasing worked! Thank you for the great work!

groovemonkey commented 4 days ago

Thanks, this worked for me as well. I don't need to change this again, right? I'm assuming I can just stay on the stable branch.

I've set up an elixir (arch-tools) distrobox via boxbuddy, and another one as a golang development environment. I'm assuming that's the preferred way to do this (as opposed to layering packages onto the core image), but correct me if I'm wrong.

Thanks again!

castrojo commented 4 days ago

Yeah you can stay on stable in perpetuity.

Yeah we don't have strong opinions on how you containerize it (since there's multiple ways) so we instead provide the container runtime and then our job is done. 😄

I'd like to compile a list of "how this language ecosystem uses containers" to give better guidance but that's an ocean to boil for another day, heh.