How to Use the `n` Prefix to Skip Updates When Running osu-winello Commands

Prepend any osu-winello command with the letter n to bypass automatic update checks for the launcher script and Wine components.

The osu-winello script by nellokudo automatically checks for updates to its patched Wine build, launcher script, and optional tools before executing most commands. If you need to run a command without triggering these network checks—whether due to metered connections, avoiding lengthy downloads, or troubleshooting—you can use the n prefix to skip all update logic.

What Is the n Prefix in osu-winello?

The n prefix is a single-letter argument modifier that instructs the launcher to skip its internal Update() routine. When the script parses arguments and detects a leading n, it strips this character and sets the NOLAUNCHERUPDATE environment flag. This flag signals the update mechanism to exit early without contacting remote servers or downloading new components.

According to the source code documentation in osu-winello.sh:

"NOTE: Any command can be prefixed by the letter n to avoid updating when running it." — osu-winello.sh, lines 73–76

How the n Prefix Works Under the Hood

The implementation resides in the main launcher script osu-winello.sh. The script examines the first argument using pattern matching to detect the n prefix:


# Pattern matching logic (simplified from source)

if [[ "$1" =~ ^n$|^n- ]]; then
    export NOLAUNCHERUPDATE=1
    # Remove the leading 'n' from the argument

    set -- "${1#n}" "${@:2}"
fi

The Update() Function Logic

Later in the execution flow, the Update() function checks for the NOLAUNCHERUPDATE flag before proceeding with network operations:

Update() {
    [ -n "$NOLAUNCHERUPDATE" ] && Info "Your osu-wine launcher will be left alone." && return 0
    
    # Normal update logic follows...

    # Checks for new Wine-osu versions, launcher updates, etc.

}

This early return mechanism ensures that when NOLAUNCHERUPDATE is set, the script bypasses both the launcher self-update and the Wine-osu update steps while continuing to process the requested command normally.

Practical Examples of Using the n Prefix

The n prefix works with any sub-command supported by osu-winello. Place the n immediately before the first flag or command argument.

Skip Updates During Maintenance Commands


# Normal behavior: checks for updates before fixing the Wine prefix

osu-wine --fixprefix

# Skip all update checks

osu-wine n --fixprefix

Launch osu! Without Network Checks


# Run the game immediately without checking for Wine or launcher updates

osu-wine n

Update Specific Components Only


# Update the launcher and Wine normally

osu-wine --update

# Check yawl wrapper without updating the launcher

osu-wine n --fixyawl

Run Custom Executables in the Prefix


# Launch a custom tool inside the Wine prefix without update delays

osu-wine n --runinprefix mytool.exe

When combining multiple flags, place n only before the first argument:


# Correct: n precedes the first flag

osu-wine n --fixprefix --some-other-option

# Incorrect: n in the middle

osu-wine --fixprefix n --some-other-option

When to Skip Updates with the n Prefix

Use the n prefix in the following scenarios:

  • Metered connections: Avoid downloading large Wine binaries or launcher updates on limited bandwidth connections.
  • Troubleshooting: Isolate whether an issue stems from recent updates by running commands with the current installed versions.
  • Speed: Execute maintenance commands immediately without waiting for network timeout checks or download verification.
  • Offline usage: Run osu-winello commands when no internet connection is available, provided all components are already cached.

Summary

  • Prepend n to any osu-winello command to skip automatic update checks for the launcher script and Wine components.
  • The feature sets the internal NOLAUNCHERUPDATE flag in osu-winello.sh, causing the Update() function to return early without network operations.
  • This works with all sub-commands including --fixprefix, --fixyawl, --update, and --runinprefix.
  • Documented in the source at osu-winello.sh lines 73–76 and implemented in the Update() function.

Frequently Asked Questions

Can I use the n prefix with any osu-winello command?

Yes. According to the source code comment in osu-winello.sh, any command can be prefixed with the letter n to avoid updating when running it. This includes game launch, maintenance flags like --fixprefix, and utility commands like --runinprefix.

Does the n prefix skip Wine prefix updates or just launcher updates?

The n prefix skips both the launcher self-update and the Wine-osu update steps. When NOLAUNCHERUPDATE is set, the Update() function exits immediately before checking either component, though the rest of your command (such as --fixprefix) still executes using the currently installed versions.

Where is the n prefix documented in the source code?

The feature is explicitly documented in osu-winello.sh at lines 73–76 with the comment: "NOTE: Any command can be prefixed by the letter n to avoid updating when running it." The implementation logic resides in the argument parsing section and the Update() function within the same file.

Can I combine the n prefix with multiple flags?

Yes, but you must place n immediately before the first flag or argument. For example, osu-wine n --fixprefix --some-other-option works correctly, while placing n in the middle of the argument list will not trigger the skip-update behavior. The script only checks the first argument for the n prefix pattern.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →