pgadmin-org / pgadmin-org/pgadmin4

pgadmin4-server 9.17 fails to install on Ubuntu 26.04: non-ASCII filename (U+1D70B) in venv/bin causes EPERM

Open
#10,414 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Bug
Dominant language
Python
Stars
3.8k
Forks
891
Avg merge
4d 7h
Merged PRs (30d)
8

Description

Description

Installing pgadmin4-server 9.17 from the APT repository on Ubuntu 26.04 (resolute) fails during unpack. dpkg cannot create a file in the venv whose name contains a non-ASCII character -- U+1D70B (MATHEMATICAL ITALIC SMALL PI) appears where py would be expected, giving 𝜋thon instead of python.

The package ships a 7,473,032-byte executable under that name, alongside an otherwise normal symlinked venv:

-rwxr-xr-x root/root  7473032 2026-07-30 04:17 ./usr/pgadmin4/venv/bin/𝜋thon
lrwxrwxrwx root/root        0 2026-07-30 04:23 ./usr/pgadmin4/venv/bin/python -> python3
lrwxrwxrwx root/root        0 2026-07-30 04:23 ./usr/pgadmin4/venv/bin/python3 -> /usr/bin/python3.14
lrwxrwxrwx root/root        0 2026-07-30 04:23 ./usr/pgadmin4/venv/bin/python3.14 -> python3

Nothing in the package references it -- all shebangs point to /usr/pgadmin4/venv/bin/python3. The only reference is in sbom-server.json, which records the build path:

/gssame/jenkins/workspace/pgadmin-4-deb-build/label/ubuntu-2604/debian-build/server/usr/pgadmin4/venv/bin/𝜋thon

That suggests the mis-encoded name originates in the 26.04 build job rather than downstream.

To Reproduce

  1. Fresh Ubuntu 26.04 x86_64, APT repository configured per https://www.pgadmin.org/download/pgadmin-4-apt/
  2. Run sudo apt install pgadmin4-desktop
  3. Unpack fails; pgadmin4-desktop is left unconfigured with unmet dependencies

Expected behavior

The package installs cleanly and the venv contains no stray binary.

Error message

Preparing to unpack …/pgadmin4-server_9.17_amd64.deb…
Unpacking pgadmin4-server (9.17)…
dpkg: error processing archive /var/cache/apt/archives/pgadmin4-server_9.17_amd64.deb (--unpack):
 unable to open '/usr/pgadmin4/venv/bin/𝜋thon.dpkg-new': Operation not permitted
Errors were encountered while processing:
 /var/cache/apt/archives/pgadmin4-server_9.17_amd64.deb
Error: Sub-process /usr/bin/dpkg returned an error code (1)

strace of the failing syscall, showing the raw bytes:

openat(AT_FDCWD, "/usr/pgadmin4/venv/bin/\360\235\234\213thon.dpkg-new", O_WRONLY) = -1 EPERM (Operation not permitted)

Screenshots

N/A -- full error text included above.

Desktop:

  • OS: Ubuntu 26.04 (resolute), x86_64
  • pgAdmin version: 9.17
  • Mode: Desktop
  • Browser (if running in server mode): N/A
  • Package type: DEB

Additional context

The same version built for noble is unaffected:

  • pgadmin4-server_9.17-1.noble_amd64.deb -- no non-ASCII filenames
  • pgadmin4-server_9.17-1.resolute_amd64.deb -- contains venv/bin/𝜋thon

This appears specific to the ubuntu-2604 build label.

All three versions currently published for resolute are affected:

Version Build date File
9.17 2026-07-30 venv/bin/𝜋thon, 7473032 bytes
9.16 2026-06-17 venv/bin/𝜋thon, 7473032 bytes
9.15 (from package) venv/bin/𝜋thon, 7473032 bytes

Byte size is identical across all three, suggesting a stable artifact of the build process rather than a per-release fluke. There is no unaffected DEB to fall back to on 26.04.

Package SHA256 is 05841d250eae8cc57745eba08317dd3f2a6d8aac566bf8aee1ee06d1fa4f4e50, matching the repository index, so the file is intact as published.

I have not determined why the write is refused specifically under /usr -- creating the same filename in /tmp and $HOME succeeds. I did not execute the binary.

Contributor guide

Open the contributing guide

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.

Research direction

Start by comparing the unaffected noble package with the resolute package, then inspect the ubuntu-2604 build job and the path recorded in sbom-server.json. Trace how the venv/bin filename becomes 𝜋thon and verify the corrected resolute package installs cleanly without the stray binary.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, ubuntu
Domain
build-system, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.