First launch takes ~20 s before the window is usable

Open
#4,736 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
csharp

Research direction

Start by profiling Flow Launcher 2.1.4 on Windows from process launch until the search box accepts input, repeating the reported timing and checking whether startup work is repeated on subsequent launches. The issue suggests runtime initialization, indexing, and icon loading as possibilities, but does not identify code files or a confirmed cause. Done means identifying the measured bottleneck and either reducing startup time or documenting the expected delay.

Written by the indexing model from the issue text.

Description

bug
Checks
  • I have checked that this issue has not already been reported.

  • I am using the latest version of Flow Launcher.

  • I am using the prerelease version of Flow Launcher.

Problem Description

First launch takes about 20 s before the search box accepts input.
Three runs on the same machine, timing from launch to usable:

Run Time to stable Peak memory
1 20.23 s 269.0 MB
2 20.49 s 265.9 MB
3 21.05 s 262.8 MB

Version 2.1.4, Windows 10 22H2 (19045.6466), Ryzen 7 5800X,
32 GB RAM, NVMe SSD. Install size 345.7 MB, resident memory
262–297 MB afterwards.

I understand first launch is a one-time cost — after that,
Alt+Space is instant. But 20 s of blank screen reads as a hang,
not a load. I spent the first run assuming it had crashed and
was about to kill the process.

What I think it's spent on (guessing from behaviour, not
profiling):

  • .NET runtime init
  • reading config (only 130 KB / 28 files, so probably not this)
  • indexing the Start Menu and common folders
  • loading icons

If icon loading and index building are the bulk of it, both
could be cached to disk after the first run. Right now it looks
like they're rebuilt every launch — the timing was stable
across three runs (20.23 → 21.05), which matches "same work
every time" rather than "first run only".

If it's already cached and the cost is purely .NET startup,
ignore this — but it'd still be worth a line in the README so
people don't think it's broken.

I haven't benchmarked other launchers on this same machine, so
I can't say how it compares. This is just the number I
measured, and for a launcher it felt long.

To Reproduce
  1. Install Flow Launcher 2.1.4
  2. Fully exit it from the tray icon (right-click → Exit)
  3. Launch it again
  4. Time from double-click until the Alt+Space search box
    accepts typed input
Screenshots

No response

Flow Launcher Version

Version 2.1.4

Windows Build Number

10.0.19045.6466

Error Log

Replace this line with the important log contents.

Dominant language
C#
Stars
16k
Forks
673
Avg merge
2d 5h
Merged PRs (30d)
9

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Flow-Launcher/Flow.Launcher

All issues in Flow-Launcher/Flow.Launcher

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.