l4l/yofi

No allocator thread panicked

cosmoduff opened this issue · 5 comments

I just built yofi from master as well as the 0.1.5 tag and when executing yofi apps I get the following error:

❯ yofi apps
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
[2022-04-27][20:48:47][yofi][ERROR] panic: Must provide allocators in no-stdlib code

I tracked down the crate generating the error. It is a dependency of allsorts_no_std which is a dependency of rust-fontconfig. The allsorts_no_std crate has brotli-decompressor as a dependency with default features off making it no_std and requiring that an allocator be set. It looks like allsorts_no_std may have moved to allsorts and likely might just need to be updated.

Let me know if you have any questions, need additional info, or would like me to assist in troubleshooting further.

l4l commented

That's crate is kinda pain in the ass, huh. allsorts_no_std is a unmaintained fork of allsorts by rust-fontconfig author. So I simply cannot override it without manual patching. As a workaround you may try different backend, fotkit: cargo b --release --no-default-features --features font-fontkit.

I wounder though why it fails for your setup. May you provide output of ldd $(which yofi) and strace -e open,openat $(which yofi)?

Building it without font-config did the tirck. Thanks!

Yeah it seems odd I am the only one hitting this since the lock file is included . I am running on Fedora 35 with rust installed via rustup. I tried setting the global allocator in the main of yofi but that did not seem to work either.

Here are the outputs of the commands you mentioned.

❯ ldd $(which yofi)
	linux-vdso.so.1 (0x00007ffc095cf000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f8014cf0000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f8014c14000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f8014a0a000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f8015229000)
❯ strace -e open,openat $(which yofi)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/proc/self/maps", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/home/griff/.config/yofi/yofi.config", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/lib64/libwayland-client.so", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/lib64/libffi.so.6", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 11
openat(AT_FDCWD, "/lib64/libxkbcommon.so.0", O_RDONLY|O_CLOEXEC) = 11
openat(AT_FDCWD, "/usr/share/X11/locale/locale.alias", O_RDONLY) = 11
openat(AT_FDCWD, "/home/griff/.config/XCompose", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/griff/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/X11/locale/compose.dir", O_RDONLY) = 11
openat(AT_FDCWD, "/usr/share/X11/locale/en_US.UTF-8/Compose", O_RDONLY) = 11
openat(AT_FDCWD, "/home/griff/.config/yofi/blacklist", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 13
[2022-04-29][06:54:47][yofi][WARN] cannot read blacklist file "/home/griff/.config/yofi/blacklist": No such file or directory (os error 2)
openat(AT_FDCWD, "/home/griff/.local/share/applications", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 14
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 14
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/im.riot.Riot.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/us.zoom.Zoom.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/com.github.tchx84.Flatseal.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/com.slack.Slack.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/com.spotify.Client.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/com.makemkv.MakeMKV.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/com.github.themix_project.Oomox.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/io.gitlab.caveman250.headlines.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/var/lib/flatpak/exports/share/applications/mimeinfo.cache", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/local/share/applications", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 14
openat(AT_FDCWD, "/usr/local/share/applications/mimeinfo.cache", O_RDONLY|O_CLOEXEC) = 15
[2022-04-29][06:54:47][yofi::desktop][WARN] cannot parse DirEntry("/usr/local/share/applications/mimeinfo.cache"): Error parings input: Tag at ``, skipping
openat(AT_FDCWD, "/usr/share/applications", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 14
openat(AT_FDCWD, "/usr/share/applications/bluetooth-sendto.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gcm-import.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gcm-picker.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/geoclue-demo-agent.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gkbd-keyboard-display.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-disk-image-mounter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-disk-image-writer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-system-monitor-kde.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-system-monitor.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-user-share-webdav.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-hangul.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-libbopomofo.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-libpinyin.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-libzhuyin.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/mimeapps.list", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.fedoraproject.MediaWriter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.problems.applet.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Characters.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.ChromeGnomeShell.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.ColorProfileViewer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Contacts.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.DiskUtility.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Logs.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Photos.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Tour.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Weather.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.baobab.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.font-viewer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/xdg-desktop-portal-gnome.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/Alacritty.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/google-maps-geo-handler.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/openstreetmap-geo-handler.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/qwant-maps-geo-handler.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/wheelmap-geo-handler.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/kde", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 15
openat(AT_FDCWD, "/usr/share/applications/kde4", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 15
openat(AT_FDCWD, "/usr/share/applications/kde-mimeapps.list", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kwalletd5.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ktelnetservice5.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect-settings.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect.app.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect.daemon.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect.handler.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect.nonplasma.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect.sms.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.kdeconnect_open.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/nvim.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/rxvt-unicode.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/nm-applet.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/i3.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Evolution-alarm-notify.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Evolution.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.remmina.Remmina-file.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.remmina.Remmina.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/remmina-gnome.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/qemu.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-startcenter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/xdg-desktop-portal-gtk.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-mimeapps.list", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-writer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/nautilus-autorun-software.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Nautilus.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Terminal.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-calc.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/yelp.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/mutter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gcr-prompter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gcr-viewer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.IBus.Setup.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.IBus.Panel.Emojier.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-anthy.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.MalcontentControl.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/rygel-preferences.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/rygel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-applications-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-background-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-bluetooth-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-camera-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-color-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-control-center.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-datetime-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-default-apps-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-diagnostics-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-display-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-info-overview-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-keyboard-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-location-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-lock-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-microphone-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-mouse-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-multitasking-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-network-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-notifications-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-online-accounts-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-power-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-printers-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-region-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-removable-media-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-search-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-sharing-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-sound-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-thunderbolt-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-universal-access-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-usage-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-user-accounts-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-wacom-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-wifi-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-wwan-panel.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/evolution-calendar.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Shell.Extensions.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Shell.PortalHelper.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Shell.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-impress.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-xsltfilter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Evince-previewer.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Evince.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-initial-setup.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.freedesktop.GnomeAbrt.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-m17n.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/ibus-setup-typing-booster.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Totem.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Maps.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Calendar.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/liveinst.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Boxes.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Connections.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/rhythmbox-device.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/rhythmbox.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Cheese.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.eog.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.clocks.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.gedit.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Calculator.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Screenshot.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gnome-software-local-file.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Software.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/simple-scan.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/libreoffice-draw.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_chm.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_comicbook.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_djvu.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_dvi.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_epub.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_fax.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_fb.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_ghostview.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_kimgio.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_md.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_mobi.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_pdf.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_plucker.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_tiff.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_txt.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/okularApplication_xps.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.okular.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/mpv.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/lxsession-default-apps.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/lxappearance.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/selfservice.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/opt/Citrix/ICAClient/icons/manager.png", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/wfica.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/new_store.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/configmgr.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/conncenter.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.zealdocs.zeal.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/steam.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/com.libretro.RetroArch.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/kcm_filetypes.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.keditfiletype.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.kde.plasma.settings.open.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/firefox.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/vlc.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/fr.handbrake.ghb.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/org.gnome.Adwaita1.Demo.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/nl.hjdskes.gcolor3.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gtk3-demo.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gtk3-icon-browser.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/gtk3-widget-factory.desktop", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/usr/share/applications/mimeinfo.cache", O_RDONLY|O_CLOEXEC) = 15
openat(AT_FDCWD, "/home/griff/.cache/yofi.cache", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/fonts/fonts.conf", O_RDONLY|O_CLOEXEC) = 8
openat(AT_FDCWD, "/proc/self/cgroup", O_RDONLY|O_CLOEXEC) = 8
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
thread '<unnamed>' panicked at 'Must provide allocators in no-stdlib code', /home/griff/.cargo/registry/src/github.com-1ecc6299db9ec823/brotli-decompressor-2.3.2/src/ffi/alloc_util.rs:185:13
+++ exited with 101 +++
l4l commented

Hm, I just remembered there's a similar case described at #88. Could you try this patch (i.e just add allsorts = "0.8.0" to Cargo.toml)?

Adding allsorts as a dependency did fix the issue. As you hinted at in 88 the entire all_srts crate is not necessary. It seems because all_sorts declares brotli-decompressor as a dependency with default feautures it is built with std lib support. I tested just adding brotli-decompressor = "2.3" to the dependencies for yofi and that worked as well. I could create a PR for this if you would like me to.

l4l commented

Yeah, sure