I submitted a PR for the Greenery v.0.9.9 update here:
As I have noted in the PR, locally I can not get v0.9.9 to run with flatpak. I have Installed and tested v0.9.8 in the Software app and it runs without issue. There have been Fedora 39 updates to my system that may have caused issues.
I have also tried uninstalling my Flathub environment which includes the Node and Electron configuration. I have tried repairing flatpak and on some local build runs I was getting lib32 errors. So I re-installed it but it did not fix it. I also looked into a symlink but removed it once I tested it and it did not help in getting Greenery to launch.
Below is what I get when trying to run Greenery local with the flatpak command. Also I have tried removing pulse audio and that did not get the app running:
lexton@fedora:~$ flatpak -v run io.greenfire.Greenery
F: No installations directory in /etc/flatpak/installations.d. Skipping
F: Opening system flatpak installation at path /var/lib/flatpak
F: Opening user flatpak installation at path /home/lexton/.local/share/flatpak
F: Opening user flatpak installation at path /home/lexton/.local/share/flatpak
F: Opening user flatpak installation at path /home/lexton/.local/share/flatpak
F: Cleaning up unused container id 1707802895
F: Cleaning up per-app-ID state for io.greenfire.Greenery
F: Cleaning up unused container id 3849305607
F: Cleaning up per-app-ID state for io.greenfire.Greenery
F: Allocated instance id 1626592938
F: Add defaults in dir /io/greenfire/Greenery/
F: Add locks in dir /io/greenfire/Greenery/
F: Allowing dri access
F: Allowing wayland access
F: Allowing pulseaudio access
F: Pulseaudio user configuration file ‘/home/lexton/.config/pulse/client.conf’: Error opening file /home/lexton/.config/pulse/client.conf: No such file or directory
F: Running ‘/usr/bin/bwrap --args 41 – /usr/bin/xdg-dbus-proxy --args=43’
F: Running ‘/usr/bin/bwrap --args 41 – greenery’
How can I get more verbose debugging for this issue so I can track down the issues better? Fedora 39 is not generating any bug reports in the logs or anything, the app just fails to launch silently.
Also my local build does not show up in the Software app, the old version v0.9.8 shows up in the Software app after I build locally. I’m including a Screenshot below of what the drop down looks like. There is now a version labelled User?
Use the debug mechanisms of your application. For example, add an environment variable via --env=VAR=VALUE or add any application related options at the end of flatpak run (these get passed to command inside the sandbox). You can also run any other command with the --command=COMMAND option.
flatpak run --command=/app/bin/some-command --env=YOUR_ENV=ENV_VALUE io.greenfire.Greenery --your-command-options
There’s some documentation about debugging a Flatpak application:
There is also a very verbose mode (-vv) of flatpak but this will only contain more information about how the sandbox is setup & no additional output from your application.
I was able to get Greenery v0.9.9 to launch properly by updating Fedora 39 → 40 and also rebuilding the app and updating the shasum and uploading to github.
However I’d like to get the sandbox debugging to work. I have uninstalled all versions from the Software App and installed a ~/.local build for io.greenfire.Greenery. I get get a flatapk shell with:
$: flatpak run --command=sh --devel io.greenfire.Greenery
Note Greenery is a Node / Electron app and when I do this is the shell:
$: gdb /app/bin/greenery
I get: “/app/bin/greenery”: not in executable format: file format not recognized
Do I need to create Debug extensions for my app and what are things that I should keep in mind with Greenery being a Node / Electron app?
I’m posting the gdb → show configuration output
(gdb) show configuration
This GDB was configured as follows:
configure --host=x86_64-unknown-linux-gnu --target=x86_64-unknown-linux-gnu
–with-auto-load-dir=$debugdir:$datadir/auto-load
–with-auto-load-safe-path=$debugdir:$datadir/auto-load
–with-expat
–with-gdb-datadir=/usr/share/gdb (relocatable)
–with-jit-reader-dir=/usr/lib/x86_64-linux-gnu/gdb (relocatable)
–without-libunwind-ia64
–with-lzma
–without-babeltrace
–without-intel-pt
–with-xxhash
–with-python=/usr (relocatable)
–with-python-libdir=/usr/lib (relocatable)
–with-debuginfod
–with-curses
–without-guile
–without-amd-dbgapi
–disable-source-highlight
–enable-threading
–enable-tui
–with-system-readline
–with-separate-debug-dir=/usr/lib/debug (relocatable)
(“Relocatable” means the directory can be moved with the GDB installation
tree, and GDB will still find it.)
Are you sure that this isn’t simply your timezone? (check ls -l --time-style=full-iso)
Correct me if I’m wrong but I don’t think you can start your debug session from the start script. Unfortunately I won’t be able to help with this since I don’t know much about Electron apps.
Are you sure that this isn’t simply your timezone? (check ls -l --time-style=full-iso)
I will check out timezone and revisit the Epoch issue.
Correct me if I’m wrong but I don’t think you can start your debug session from the start script. Unfortunately I won’t be able to help with this since I don’t know much about Electron apps.
I have to revisit the Node / Electron debugging within the Flathub runtime. Basically I have the shell command working but further debugging needs more configuring.
Do you know if Node / Electron apps are supported for debugging within Flathub runtimes? Do you know of anyone that has done it?