Short version: run git config --global http.version HTTP/1.1 on your server once, then update as usual.
What you are seeing
Since 2 September 2026, updating stops on its very first step and waits:
[INFO] Pulling latest changes from Git...
Username for 'https://github.com':
This affects mcupdate, a manual git pull, and the Update Now button inside the app. It started on every server at once, without anybody changing anything.
What it is not
Your installation is fine, and this repository is still public. You are not missing an account, a password or a token — and supplying one will not help, which is the confusing part. Press Ctrl+C to get out of the prompt.
What actually happened
A git pull fetches in two steps. GitHub changed how its HTTP/2 front end answers the second one for anonymous clients, and the git that ships with Debian 12 — version 2.39, built against libcurl 7.88 — now gets a 401 Unauthorized back for a request that had always been allowed. Git treats any 401 as "credentials, please", so it asks for a username. Newer git builds are not affected, which is why this hits servers and not, say, a recent desktop machine.
The change is on GitHub's side. Nothing in mc-webui caused it and nothing in mc-webui could have prevented it.
The fix
Run this once on the machine running mc-webui:
git config --global http.version HTTP/1.1
That tells git to talk to GitHub over HTTP/1.1, which is still served anonymously exactly as before. Then update normally:
mcupdate
You only need the command once — it is remembered for that user account.
If it still asks for a username
You are updating with sudo. This is the common one, already confirmed by a user on Raspberry Pi OS. Despite the name, --global is not system-wide — it writes to the configuration of the user who runs it, and sudo runs git as root, who has a separate one. Set it for root as well:
sudo git config --global http.version HTTP/1.1
Alternatively, set it on the repository itself, which does not care who runs the update:
cd ~/mc-webui
git config http.version HTTP/1.1
After updating
Release 2.14.0 carries the same setting inside update.sh, so future updates handle it on their own. It also stops the script from waiting on the keyboard forever when a fetch genuinely fails — it now reports the error and exits instead of leaving an unattended update hanging.
You still need the one-off command above to reach 2.14.0 in the first place.
If it still does not work
Reply here with the output of:
whoami; git --version
git config --get http.version
cd ~/mc-webui
GIT_TERMINAL_PROMPT=0 git ls-remote origin HEAD
GIT_TERMINAL_PROMPT=0 git -c http.version=HTTP/1.1 ls-remote origin HEAD
GIT_TERMINAL_PROMPT=0 git -c protocol.version=0 ls-remote origin HEAD
GIT_TERMINAL_PROMPT=0 only stops the commands hanging on the password prompt; they change nothing. If one of the last two prints a long hash followed by HEAD, that is the route that works on your machine.
**Short version: run `git config --global http.version HTTP/1.1` on your server once, then update as usual.**
## What you are seeing
Since 2 September 2026, updating stops on its very first step and waits:
```
[INFO] Pulling latest changes from Git...
Username for 'https://github.com':
```
This affects `mcupdate`, a manual `git pull`, and the **Update Now** button inside the app. It started on every server at once, without anybody changing anything.
## What it is not
**Your installation is fine, and this repository is still public.** You are not missing an account, a password or a token — and supplying one will not help, which is the confusing part. Press <kbd>Ctrl</kbd>+<kbd>C</kbd> to get out of the prompt.
## What actually happened
A `git pull` fetches in two steps. GitHub changed how its HTTP/2 front end answers the second one for anonymous clients, and the git that ships with Debian 12 — version 2.39, built against libcurl 7.88 — now gets a `401 Unauthorized` back for a request that had always been allowed. Git treats any `401` as "credentials, please", so it asks for a username. Newer git builds are not affected, which is why this hits servers and not, say, a recent desktop machine.
The change is on GitHub's side. Nothing in mc-webui caused it and nothing in mc-webui could have prevented it.
## The fix
Run this once on the machine running mc-webui:
```bash
git config --global http.version HTTP/1.1
```
That tells git to talk to GitHub over HTTP/1.1, which is still served anonymously exactly as before. Then update normally:
```bash
mcupdate
```
You only need the command once — it is remembered for that user account.
## If it still asks for a username
**You are updating with `sudo`.** This is the common one, already confirmed by a user on Raspberry Pi OS. Despite the name, `--global` is not system-wide — it writes to the configuration of the user who runs it, and `sudo` runs git as root, who has a separate one. Set it for root as well:
```bash
sudo git config --global http.version HTTP/1.1
```
Alternatively, set it on the repository itself, which does not care who runs the update:
```bash
cd ~/mc-webui
git config http.version HTTP/1.1
```
## After updating
Release [2.14.0](https://github.com/MarekWo/mc-webui/releases/tag/v2.14.0) carries the same setting inside `update.sh`, so future updates handle it on their own. It also stops the script from waiting on the keyboard forever when a fetch genuinely fails — it now reports the error and exits instead of leaving an unattended update hanging.
You still need the one-off command above to reach 2.14.0 in the first place.
## If it still does not work
Reply here with the output of:
```bash
whoami; git --version
git config --get http.version
cd ~/mc-webui
GIT_TERMINAL_PROMPT=0 git ls-remote origin HEAD
GIT_TERMINAL_PROMPT=0 git -c http.version=HTTP/1.1 ls-remote origin HEAD
GIT_TERMINAL_PROMPT=0 git -c protocol.version=0 ls-remote origin HEAD
```
`GIT_TERMINAL_PROMPT=0` only stops the commands hanging on the password prompt; they change nothing. If one of the last two prints a long hash followed by `HEAD`, that is the route that works on your machine.
Background and diagnosis: [Update asks for a GitHub username](https://github.com/MarekWo/mc-webui/blob/main/docs/troubleshooting.md#update-asks-for-a-github-username)
<!-- github-sync-id:5328239648 -->
If the fix did not work for you: you are updating with sudo.
Despite the name, git config --global is not system-wide — it writes to the configuration of the user who runs it. sudo mcupdate runs git as root, who has a separate configuration, so a setting made as your normal user is never seen and the prompt keeps coming back.
Run it for root as well:
sudo git config --global http.version HTTP/1.1
Or set it on the repository itself, which works no matter who runs the update:
cd ~/mc-webui
git config http.version HTTP/1.1
Reported and confirmed on Raspberry Pi OS. The description above now covers it.
**If the fix did not work for you: you are updating with `sudo`.**
Despite the name, `git config --global` is not system-wide — it writes to the configuration of the user who runs it. `sudo mcupdate` runs git as **root**, who has a separate configuration, so a setting made as your normal user is never seen and the prompt keeps coming back.
Run it for root as well:
```bash
sudo git config --global http.version HTTP/1.1
```
Or set it on the repository itself, which works no matter who runs the update:
```bash
cd ~/mc-webui
git config http.version HTTP/1.1
```
Reported and confirmed on Raspberry Pi OS. The description above now covers it.
<!-- github-comment-id:5515570614 -->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Short version: run
git config --global http.version HTTP/1.1on your server once, then update as usual.What you are seeing
Since 2 September 2026, updating stops on its very first step and waits:
This affects
mcupdate, a manualgit pull, and the Update Now button inside the app. It started on every server at once, without anybody changing anything.What it is not
Your installation is fine, and this repository is still public. You are not missing an account, a password or a token — and supplying one will not help, which is the confusing part. Press Ctrl+C to get out of the prompt.
What actually happened
A
git pullfetches in two steps. GitHub changed how its HTTP/2 front end answers the second one for anonymous clients, and the git that ships with Debian 12 — version 2.39, built against libcurl 7.88 — now gets a401 Unauthorizedback for a request that had always been allowed. Git treats any401as "credentials, please", so it asks for a username. Newer git builds are not affected, which is why this hits servers and not, say, a recent desktop machine.The change is on GitHub's side. Nothing in mc-webui caused it and nothing in mc-webui could have prevented it.
The fix
Run this once on the machine running mc-webui:
That tells git to talk to GitHub over HTTP/1.1, which is still served anonymously exactly as before. Then update normally:
You only need the command once — it is remembered for that user account.
If it still asks for a username
You are updating with
sudo. This is the common one, already confirmed by a user on Raspberry Pi OS. Despite the name,--globalis not system-wide — it writes to the configuration of the user who runs it, andsudoruns git as root, who has a separate one. Set it for root as well:Alternatively, set it on the repository itself, which does not care who runs the update:
After updating
Release 2.14.0 carries the same setting inside
update.sh, so future updates handle it on their own. It also stops the script from waiting on the keyboard forever when a fetch genuinely fails — it now reports the error and exits instead of leaving an unattended update hanging.You still need the one-off command above to reach 2.14.0 in the first place.
If it still does not work
Reply here with the output of:
GIT_TERMINAL_PROMPT=0only stops the commands hanging on the password prompt; they change nothing. If one of the last two prints a long hash followed byHEAD, that is the route that works on your machine.Background and diagnosis: Update asks for a GitHub username
If the fix did not work for you: you are updating with
sudo.Despite the name,
git config --globalis not system-wide — it writes to the configuration of the user who runs it.sudo mcupdateruns git as root, who has a separate configuration, so a setting made as your normal user is never seen and the prompt keeps coming back.Run it for root as well:
Or set it on the repository itself, which works no matter who runs the update:
Reported and confirmed on Raspberry Pi OS. The description above now covers it.