muse-sounds-manager on Linux dies saying "Default font family name can't be null or empty."
Both Muse-hub and the renamed version muse-sounds-manager fail on my system (Ubuntu LTS, xhdpi, xfce) with the enigmatic "Default font family name can't be null or empty." I thought the bug might get fixed, but I guess it's "works for me".
I've tried strace, downloading microsoft core fonts, setting those font families as default, LC_ALL=C and LANG=C and the stubborn thing doesn't budge. There's no reason: it simply doesn't work.
Is there a work-around or a fix? Is there source code to implement the fix suggested on the Avalon UI forums?
2024-09-10 22:10:55.0098|INFO|Muse.Common.Services.SettingsService|Reloading settings...
2024-09-10 22:10:55.1154|INFO|Muse.Client.Linux.App|Attempting to set the users language to en-US using file /opt/muse-sounds-manager/Assets/Strings/en-US/Localizable.strings
2024-09-10 22:10:55.1202|INFO|Muse.Client.Linux.App|Setting SSL_CERT_DIR to /usr/lib/ssl/certs
2024-09-10 22:10:55.1202|INFO|Muse.Client.Linux.App|Setting SSL_CERT_FILE to /usr/lib/ssl/cert.pem
2024-09-10 22:10:55.3407|FATAL|Muse.Client.Linux.App|Application has encountered a fatal exception!|System.InvalidOperationException: Default font family name can't be null or empty.
at Avalonia.Media.FontManager..ctor(IFontManagerImpl platformImpl)
at Avalonia.Media.FontManager.get_Current()
at Avalonia.Media.Typeface.get_GlyphTypeface()
at Avalonia.Rendering.Composition.Compositor.get_DiagnosticTextRenderer()
at Avalonia.Rendering.Composition.Compositor.CreateCompositionTarget(Func1 surfaces)
1 surfaces)
at Avalonia.Rendering.Composition.CompositingRenderer..ctor(IRenderRoot root, Compositor compositor, Func
at Avalonia.Controls.TopLevel..ctor(ITopLevelImpl impl, IAvaloniaDependencyResolver dependencyResolver)
at Avalonia.Controls.WindowBase..ctor(IWindowBaseImpl impl, IAvaloniaDependencyResolver dependencyResolver)
at Avalonia.Controls.WindowBase..ctor(IWindowBaseImpl impl)
at Avalonia.Controls.Window..ctor(IWindowImpl impl)
at Avalonia.Controls.Window..ctor()
at Muse.Client.Linux.App.OnFrameworkInitializationCompleted() in /home/runner/work/Muse/Muse/Linux/src/Muse.Client.Linux/App.axaml.cs:line 112
at System.Threading.Tasks.Task.<>c.b__128_0(Object state)
at Avalonia.Threading.SendOrPostCallbackDispatcherOperation.InvokeCore()
at Avalonia.Threading.DispatcherOperation.Execute()
at Avalonia.Threading.Dispatcher.ExecuteJob(DispatcherOperation job)
at Avalonia.Threading.Dispatcher.ExecuteJobsCore(Boolean fromExplicitBackgroundProcessingCallback)
at Avalonia.Threading.Dispatcher.Signaled()
at Avalonia.X11.X11PlatformThreading.CheckSignaled()
at Avalonia.X11.X11PlatformThreading.RunLoop(CancellationToken cancellationToken)
at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)
at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode)
at Muse.Client.Linux.Program.Main(String[] args) in /home/runner/work/Muse/Muse/Linux/src/Muse.Client.Linux/Program.cs:line 21
Comments
This bug has a fix (possibly a poor fix) in the framework code:
https://github.com/AvaloniaUI/Avalonia/pull/12817
It might be better to report this to the Muse Hub team: https://support.musehub.com/hc/en-gb/requests/new
In reply to It might be better to report… by cbjeukendrup
And while you have them, maybe ask when we can expect the updated sounds, sampler and sounds manager.
In my case, I tried the following command and it worked.
LC_ALL=C muse-sounds-manager