Devolutions / Devolutions/UniGetUI

[BUG] Auto-Update to 2026.2.2 kills app

Open
#5,041 2 comments 1 reaction 0 assignees View on GitHub
bug
Dominant language
C#
Stars
26.1k
Forks
924
Avg merge
15h 52m
Merged PRs (30d)
52

Description

### Please confirm these before moving forward

- [x] I have searched for my issue and have not found a work-in-progress/duplicate/resolved issue.
- [x] I have tested that this issue has not been fixed in the latest [(beta or stable) release](https://github.com/Devolutions/UniGetUI/releases/).
- [x] I have checked the [FAQ](https://github.com/Devolutions/UniGetUI#frequently-asked-questions) section for solutions.
- [x] This issue is about a bug (if it is not, please use the [correct template](https://github.com/Devolutions/UniGetUI/issues/new/choose)).

### UniGetUI Version

2026.2.2

### Windows version, edition, and architecture

Windows 10 x64

### Describe your issue

Auto Update installed latest release 2026.2.2. No it is not working anymore.
Uninstalled, rebooted, used old installer 2026.1.0. App is starting again, but is doing Update and then breakds again.

Uninstall, reboot, removed all settings. Downloaded Installer from here, Installation without errors, but no luck, app does not start anymore.

### Steps to reproduce the issue

_No response_

### UniGetUI Log

```text
Log not avail, app does not start
```

### Package Managers Logs

```text
Log not avail, app does not start
```

### Relevant information

_No response_

### Screenshots and videos

_No response_

### UiGetUI_pending_crsh.txt
Environment details:
OS version: Microsoft Windows NT 10.0.19045.0
Language: de
APP Version: 2026.2.2
APP Build number: 107
Executable: C:\Program Files\UniGetUI\UniGetUI.exe
Command-line arguments: "C:\Program Files\UniGetUI\UniGetUI.dll"

Integrity report:
No integrity violations were found.

Exception type: InvalidOperationException (System.InvalidOperationException)
Crash HResult: 0x80131509 (2148734217, -2146233079)
Crash Message: Default font family name can't be null or empty.

Crash Data:
No extra data was provided

Crash Trace:
at Avalonia.Media.FontManager.GetDefaultFontFamilyName(FontManagerOptions options)
at Avalonia.Media.FontManager..ctor(IFontManagerImpl platformImpl)
at Avalonia.Media.FontManager.get_Current()
at Avalonia.Media.TextFormatting.TextFormatterImpl.FormatLine(ITextSource textSource, Int32 firstTextSourceIndex, Double paragraphWidth, TextParagraphProperties paragraphProperties, TextLineBreak previousLineBreak, TextRunCache textRunCache)
at Avalonia.Media.TextFormatting.TextLayout.CreateTextLines()
at Avalonia.Media.TextFormatting.TextLayout..ctor(ITextSource textSource, TextParagraphProperties paragraphProperties, TextTrimming textTrimming, Double maxWidth, Double maxHeight, Int32 maxLines, TextRunCache textRunCache)
at Avalonia.Controls.TextBlock.CreateTextLayout(String text)
at Avalonia.Controls.TextBlock.get_TextLayout()
at Avalonia.Controls.TextBlock.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
at Avalonia.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
at Avalonia.Controls.Grid.MeasureOverride(Size constraint)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.LayoutHelper.MeasureChild(Layoutable control, Size availableSize, Thickness padding, Thickness borderThickness)
at Avalonia.Controls.Border.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.LayoutHelper.MeasureChild(Layoutable control, Size availableSize, Thickness padding, Thickness borderThickness)
at Avalonia.Controls.Presenters.ContentPresenter.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.LayoutHelper.MeasureChild(Layoutable control, Size availableSize, Thickness padding)
at Avalonia.Controls.Primitives.VisualLayerManager.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureOverride(Size availableSize)
at Avalonia.Controls.Window.MeasureOverride(Size availableSize)
at Avalonia.Controls.WindowBase.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Controls.TopLevelHost.MeasureOverride(Size availableSize)
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize)
at Avalonia.Layout.Layoutable.Measure(Size availableSize)
at Avalonia.Layout.LayoutManager.Measure(Layoutable control)
at Avalonia.Layout.LayoutManager.ExecuteInitialLayoutPass()
at Avalonia.Controls.Window.ShowCore[TResult](Window owner, Boolean modal)
at Avalonia.Controls.Window.Show()
at UniGetUI.Avalonia.App.OnFrameworkInitializationCompleted()
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, Action`1 lifetimeBuilder)
at UniGetUI.Avalonia.Infrastructure.AvaloniaAppHost.Run(String[] args)
at UniGetUI.Avalonia.Program.Main(String[] args)

No inner exceptions found

Contributor guide

Open the contributing guide

Research direction

Start with the supplied crash trace at UniGetUI.Avalonia.App.OnFrameworkInitializationCompleted and UniGetUI.Avalonia.Program.Main, then inspect the Avalonia font initialization path implicated by the null default font family. Compare behavior between versions 2026.1.0 and 2026.2.2 on Windows 10 x64. Done means the app launches successfully after the automatic update.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.