b4 send fails with "no configs found"

Tan Siewert <[email protected]> Fri, 31 Jul 2026 19:50:39 +0200
Newsgroups org.kernel.linux.tools
Message-ID <[email protected]>
Hi Team,

I've been trying to use b4 on my personal system and can't send any 
messages via msmtp / my sendemail identities, because it falls back to 
B4 relay although I haven't set anything for that in this regards.

Version stats:
- b4: commit `1af191c5e` (I'm running on master)
- git: 2.54.0
- Python: 3.14.6
- OS: macOS with nix-darwin

When sending a preview series from branch `ts-x470d4u` (added to 
tracking when I migrated to b4) to myself I get this:
```
((venv-linux) ) linux git:(ts-x470d4u) b4 -d send --preview-to 
[email protected]
Running git --no-pager rev-parse --show-toplevel
Running git --no-pager --git-dir 
/Volumes/Git/git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux/.git 
config -z --get-regexp b4\..*
Running git --no-pager --git-dir 
/Volumes/Git/git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux/.git 
config -z --get-regexp gpg\..*
Running git --no-pager config -z --get-regexp user\..*
Running git --no-pager config -z --get-regexp sendemail\.[^.]+$
Running git --no-pager config -z --get-regexp sendemail\.private\..*
Using values from sendemail.private
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Looking for the cover letter commit with magic marker "--- 
b4-submit-tracking ---"
Running git --no-pager log --no-abbrev-commit --grep --- 
b4-submit-tracking --- -F --pretty=oneline --max-count=1 --since=1.year 
--no-mailmap [email protected] ts-x470d4u --
Cover commit found in cb886acf5915184577aa216d3735731dfb4f8669
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Looking for the cover letter commit with magic marker "--- 
b4-submit-tracking ---"
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager log --no-abbrev-commit --grep --- 
b4-submit-tracking --- -F --pretty=oneline --max-count=1 --since=1.year 
--no-mailmap [email protected] ts-x470d4u --
Cover commit found in cb886acf5915184577aa216d3735731dfb4f8669
Running git --no-pager show -s --format=%B 
cb886acf5915184577aa216d3735731dfb4f8669
tracking data: {'series': {'revision': 3, 'change-id': 
'20251017-ts-x470d4u-54b9e98e4333', 'prefixes': [], 'prerequisites': []}}
Running git --no-pager status --porcelain=v1 --untracked-files=no
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Looking for the cover letter commit with magic marker "--- 
b4-submit-tracking ---"
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager log --no-abbrev-commit --grep --- 
b4-submit-tracking --- -F --pretty=oneline --max-count=1 --since=1.year 
--no-mailmap [email protected] ts-x470d4u --
Cover commit found in cb886acf5915184577aa216d3735731dfb4f8669
Running git --no-pager show -s --format=%B 
cb886acf5915184577aa216d3735731dfb4f8669
tracking data: {'series': {'revision': 3, 'change-id': 
'20251017-ts-x470d4u-54b9e98e4333', 'prefixes': [], 'prerequisites': []}}
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Looking for the cover letter commit with magic marker "--- 
b4-submit-tracking ---"
Running git --no-pager log --no-abbrev-commit --grep --- 
b4-submit-tracking --- -F --pretty=oneline --max-count=1 --since=1.year 
--no-mailmap [email protected] ts-x470d4u --
Cover commit found in cb886acf5915184577aa216d3735731dfb4f8669
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Running git --no-pager rev-parse cb886acf5915184577aa216d3735731dfb4f8669~1
Running git --no-pager rev-parse ts-x470d4u
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Looking for the cover letter commit with magic marker "--- 
b4-submit-tracking ---"
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager log --no-abbrev-commit --grep --- 
b4-submit-tracking --- -F --pretty=oneline --max-count=1 --since=1.year 
--no-mailmap [email protected] ts-x470d4u --
Cover commit found in cb886acf5915184577aa216d3735731dfb4f8669
Running git --no-pager rev-list --no-merges --reverse 
cb886acf5915184577aa216d3735731dfb4f8669..a07407dee77159d6c92881fc225ea8e50c16e5c6
Running git --no-pager version
showargs=['--format=email', '--binary', '--patch-with-stat', 
'--encoding=utf-8', '--find-renames', '--default-prefix', '--no-mailmap']
Running git --no-pager show --format=email --binary --patch-with-stat 
--encoding=utf-8 --find-renames --default-prefix --no-mailmap 
26a5545dae4ef8389d875813d9d1dd1b3993b4f3
Running git --no-pager version
showargs=['--format=email', '--binary', '--patch-with-stat', 
'--encoding=utf-8', '--find-renames', '--default-prefix', '--no-mailmap']
Running git --no-pager show --format=email --binary --patch-with-stat 
--encoding=utf-8 --find-renames --default-prefix --no-mailmap 
a07407dee77159d6c92881fc225ea8e50c16e5c6
Running git --no-pager --version
   [PATCH PREVIEW v3 1/2] dt-bindings: arm: aspeed: add ASRock X470D4U BMC
   [PATCH PREVIEW v3 2/2] ARM: dts: aspeed: add asrock x470d4u bmc
Running git --no-pager symbolic-ref -q HEAD
Running git --no-pager config -z --get-regexp branch\.ts-x470d4u\..*
Got strategy=commit from branch-config
Running git --no-pager rev-parse cb886acf5915184577aa216d3735731dfb4f8669~1
Running git --no-pager rev-parse ts-x470d4u
Running git --no-pager shortlog 
cb886acf5915184577aa216d3735731dfb4f8669..a07407dee77159d6c92881fc225ea8e50c16e5c6
Running git --no-pager diff --stat 
cb886acf5915184577aa216d3735731dfb4f8669..a07407dee77159d6c92881fc225ea8e50c16e5c6
Running git --no-pager log --no-abbrev-commit --oneline 
cb886acf5915184577aa216d3735731dfb4f8669..a07407dee77159d6c92881fc225ea8e50c16e5c6
Converted the branch to 3 messages
Running git --no-pager version
Translating aliases via git send-email
Checking if [email protected] is mailmap-replaced
Running git --no-pager check-mailmap <[email protected]>
allto: [('', '[email protected]')]
alldests: {'[email protected]'}
Endpoint does not start with https, ignoring:
Running git --no-pager rev-parse --show-toplevel
No sendemail configs found, will use the default web endpoint
CRITICAL: cannot use the web endpoint with --preview-to
```

But according to `git config` I do have a profile:
```
((venv-linux) ) linux git:(ts-x470d4u) git config list
credential.helper=osxkeychain
commit.gpgsign=false
core.excludesfile=~/.gitignore
gpg.format=openpgp
gpg.openpgp.program=/nix/store/2yvjfckmvvlmcbq4s54fihhmifadgasv-gnupg-2.4.9/bin/gpg
sendemail.hetzner.envelopesender=auto
sendemail.hetzner.from=Tan Siewert <[email protected]>
sendemail.hetzner.sendmailcmd=/nix/store/ackfnzlkwbxvq5if1mr309hlx5s9gkjd-msmtp-1.8.32/bin/msmtp
sendemail.private.envelopesender=auto
sendemail.private.from=Tan Siewert <[email protected]>
sendemail.private.sendmailcmd=/nix/store/ackfnzlkwbxvq5if1mr309hlx5s9gkjd-msmtp-1.8.32/bin/msmtp
tag.gpgsign=false
[email protected]
user.name=Tan Siewert
core.excludesfile=/Users/toms/.gitignore
diff.ansible-vault.textconv=ansible-vault view
diff.sops.textconv=sops -d
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
init.defaultbranch=main
patatt.signingkey=ed25519:20260731
patatt.selector=20260731
b4.sendemail-identity=private
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.precomposeunicode=true
remote.origin.url=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
remote.origin.fetch=+refs/heads/master:refs/remotes/origin/master
branch.master.remote=origin
branch.master.merge=refs/heads/master
remote.bmc-tree.url=https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git
remote.bmc-tree.fetch=+refs/heads/*:refs/remotes/bmc-tree/*
branch.ts-x470d4u.b4-prep-cover-strategy=commit
branch.bmc-tree/next.remote=bmc-tree
branch.bmc-tree/next.merge=refs/heads/for-next
branch.b4/b650d4u.b4-prep-cover-strategy=commit
[email protected]:openbmc/linux.git
remote.openbmc.fetch=+refs/heads/*:refs/remotes/openbmc/*
branch.dev-6.18.remote=openbmc
branch.dev-6.18.merge=refs/heads/dev-6.18
```

I've also tried to remove `b4.sendemail-identity` and the whole identity 
config, but it always tells me that I don't have any sendemail configs.

Running the commands manually also returns something:
```
((venv-linux) ) linux git:(ts-x470d4u) git --no-pager config -z 
--get-regexp 'sendemail\.private\..*'
sendemail.private.envelopesender
autosendemail.private.from
Tan Siewert <[email protected]>sendemail.private.sendmailcmd
/nix/store/ackfnzlkwbxvq5if1mr309hlx5s9gkjd-msmtp-1.8.32/bin/msmtp%
```

I've also tried to find the issue myself by checking the code, but I 
don't see why apparently `sconfig.get('smtpserver')` fails.

Any advice for debugging the issue is highly appreciated.

Cheers,
Tan (they/she)